Have been talking to The Hive - author of another GBA Spectrum emulator -
ZX-Advance. It's really interesting
to see the similarities and differences in the approaches we've taken.
We're comparing notes, and I think we'll both benefit.|
Anyway, what have I been doing recently? Well, I pulled back some IRAM -
reworked the screen copyup - fairly cool performance boost. I implemented the
infamous undocumented sign-bit behaviour that prevents the rhino in Sabre Wulf
from running backwards or in circles!
More significantly, I've also hacked up
a quick Windows-based ROM injector. A few things to remember, however:
This is still early code. Don't be surprised if certain ROMs break the
There is no throttling yet. Some games will play slower than 100%, some
will play much faster. Most games that I've tested are playable, though!
I'm aware of compatibility issues with some games - in particular those that
really push the limits of what a Spectrum can do. If you find any glaring
problems with simple (and popular) games, drop me a line at:
the problem. If possible, send me a URL for the original Spectrum image
that's causing problems.
Keyboard/Joystick mappings are done in the Injector program. You can map
any GBA button to any Spectrum key or Kempston joystick movement. The
START button is, however, reserved. In the future, it will bring up
a flashy menu system on the GBA, allowing various option adjustments,
etc... etc... For now, it just cycles on to the next ROM.
You will get a warning from the Flash Advance Writer. This is because I
don't fix up the header information. Just allow FAW to perform the fix
for you, and you should be fine. If you're using some other tool, you may
need to fix up the header manually using one of the utilities out there.
I will fix this soon, I promise :)
To use the injector, simply run the executable. From Explorer windows, drag
.Z80 files (I don't support .SNA, .TAP or .TZX yet) into the big white space
at the top of the dialog. They will be added to the ROM list. Double click
on a list entry to edit the key mappings for that particular ROM.
When you're ready, choose and output filename, and create the binary image.
This will generate a .BIN file that you can burn onto your flash cart.
When up and running, hit START to cycle through ROMs. I've disabled
the snapshot feature in the previous build - eventually it will be accessible
from the menu system (that I have yet to write!).