Jump to content

ZX Spectrum Emulator??


Guest flip2000b

Recommended Posts

Guest Martin@Home

Dont know what to play first !

3d Ant attack

Dandy

Fairlight

Cybernoid 2

Penetrator

Sabre Wulf

Uridium

TLL

Cant wait much longer !!! How's it coming SpaceMonkey ??? :) :(

Link to comment
Share on other sites

Guest Martin@Home

OMG !!!

I've just remembered.. Turbo esprit !!!!!

I used to sit at the end of dead end streets squishing pedestrians for hours on that one !!!! :twisted: :twisted:

Link to comment
Share on other sites

Guest Martin@Home

10 FOR I=16384 TO 16384+6144

20 POKE I,255

30 NEXT I

40 RANDOMIZE USR 256

50 IF INKEY$="" THEN GOTO 50

60 STOP :wink:

Link to comment
Share on other sites

Guest spacemonkey

Got the graphics all happy enough... Now I just need to make the controls "not a big pain in the arse" and I'll release it :)

Here's a new shot, you'll notice that text is still a bit clipped, this is because to fit it on smartphone I'm dropping 1/7 pixels each way... The fix for this would be to filter it (bicubic) to give it that anti-aliased look, but we don't really have spare clock cycles to do it with... Of course in game, it shouldn't be an issue since they don't have thin fonts, maybe a switch on off filter for use on text screens where speed doesn't matter... I'll think about it. Any coders out there have a good efficient bicubic filter they want to give me?

pcl8.gif

Link to comment
Share on other sites

Spacemonkey, just read your comments on your site, may have a reason why the 128K modes seem slower, the 'silicon disk'.

Even though the spectrum is 128K and working in 128K mode, to keep comatability (And due to limitations on the Z80 itself), it only uses 32K at a time (16K for the ROM and 32K user RAM, just like the 48K spectrum). When it's not running in 128K BASIC mode, the system looks for swap calls to swap memory from the 'silicon disk' to the current user RAM area. In 128K BASIC mode, this is triggered from a user command (swap I think), but with a machine code game, the call may be at any time. As you will have guessed, the silicon disk is a posh name for a RAM disk, the only real way the spectrum could cope with more than 48K of memory (It uses ROM code from the ZX80, ZX81 and the origional Spectrum). Each time a new machine was made, the ROM was added to, rather than re-written.

When you put the machine into 48K mode, the old Spectrum+ ROM is loaded and the machine internally re-set. For all intents and purposes, the machine is a Spectrum, no fancy sound chip, no RAM disks and no swap calls to worry about.

Without altering the ROM, the way the emulator handles memory and the actual memory map itself, there isn't much you can do about it. On a real spectrum, there won't be much difference in operation, but on an emulator, the speed of the machine running the emulator (And efficiency of it's own memory system) may cause problems.

Hope that helps

Link to comment
Share on other sites

Guest spacemonkey

Exactly... that was my understanding also... It's just more complicated due to the extra hardware in memory and sound handling and that slows the emulation (a bit). The main thing I wanted to put forwards was that from my limited playing around (mainly WizBall) the 48k mode runs really nice on SPV where 128k mode may not be quite as nice...

The Z80 thing I already know quite a lot about cos gameboy's do exactly the same thing... Z80 chips can only reference 64k memory total and on the gameboy if you "write" to specific areas of the 64k (areas that you shouldn't write to cos their are ROM images) then it switches memory banks. In a real device this is seamless because the whole memory architecture just does it, in an emulator you have to specifically trap the bank switch calls and then swap memory or pointers around (and additionally your memory structure has to be more generic to handle reads and writes going to different places depending on the current bank etc.

In PocketClive I haven't even touched anything todo with emulation anyway, basically it uses Fuse (which is a Unix speccy emulator), and then the previous developer (Anders) has put a wrapper on this to provide input and output on a CE device using the now defunct easyCE library. Most of what I've done so far is hacking the easyCE library to bits to make it behave how I want under smartphone. It's not a nice generic library like gapidraw, it's very hardcoded... What I've been doing won't help any other easyCE programs (if there are any) as I haven't been doing anything nice or generic, it's mostly a good learning process for me.

All good stuff anyway.

Link to comment
Share on other sites

Guest spacemonkey

status is that i got the mechanism for keyboard and menu use nailed. just need to configure it for a few more screens. then i need to configure mappings for ingame keys.

bit delayed now cos a mate from nz is here. but he's off on wednesday...

Link to comment
Share on other sites

Guest spacemonkey

That's madness... in the spectrum emulation world you can get .tap images (this is what you want). These are like tapes but they run super fast. Or you can get .tzx images for the full authentic feel. Just loaded one on my SPV and it runs real time speed, that's like 10 minutes to load the tape... rock and roll :lol:

Should have a first cut supporting virtual keyboard and "kempston" joystick from direction pad released tonight... just got to configure a couple more option screens for easy navigation.

Link to comment
Share on other sites

Guest akarno
Erm... 3D Ant Attack. Or were you being ironic ?

Now I'm not sure who's being ironic. I'm sure it wasn't called that. It wasn't 3D but not flat either. I remember at the time is was the best graphics for a Spectrum game

Link to comment
Share on other sites

Guest ClintEastman
Or indeed any of the Ultimate games, they were great 3D games!

And of course Ultimate went on to become Rare, and we know how good they are at games!!

Link to comment
Share on other sites

Guest Croccy22

Does this emu play .z80 snapshot files aswell spacemonkey? These files don't have to load like the spectrum at all, they just start instantly.

Also have you got sound working on the emu yet? 48k or 128k??

I would love to hear my spv do that tiny bit of speach at the beginning of slightly magic.

I used to wait 10 minutes for that game to load just to hear it.

Matt

Link to comment
Share on other sites

Guest spacemonkey

OK, first... sorry to get your hopes up... hopefully done soon, but not tonight... I hit some performance issues with how I was handling graphics and I've improved that a lot. Unfortunately this has resulted in a few other issues that I need to sort through before it can be released :lol:

Anyway, aside from that... TZX images take forever to load cos they pretend to be a real tape. TAP images load quick (like instant). It does something todo with snapshots but I'm not sure what, haven't played with that side much. I did turn on sound today and I can definitely say it made a racket and the other people on the tube thought I might be a problem...

So that's the state of play... with luck I will actually get something out in the next day or 2...

Link to comment
Share on other sites

Guest Martin@Home
That's 3D Ant Attack, trust me! It's a classic!!!! :lol:

antatak2.gif

Was that the game you were trying to remember akarno ?

Cos I cant think of what it might be otherwise.

Link to comment
Share on other sites

Guest Martin@Home

How about :-

frlight2.gif

Fairlight

This used to load with no flashing border, music running in the background and a counter running to show load progress.

Bo Jangeborg - True genius.

Does the TZX format load this the way its supposed to SpaceMonkey ? If so, it would be worth keeping this feature just for nostalgia's sake IMHO.

Games like Bobby Bearing and Shadow skimmer also had this

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.