fMSX Amiga 2.0
Hans Guijt (hgu…@inter.nl.net)
fMSX Amiga emulates an MSX computer on an Amiga. Features include:
– Full emulation of the MSX1 system.
– Full emulation of the MSX2 system.
– Support for reading/writing MSX disks and disk images.
– Can play all types of MSX ROMs, including ROMs bigger than 32KB.
– Support for the PSG, SCC, and FM-Pac sound chips (through AHI or native).
– Support for MSX memory sizes of up to 4Mb.
– Can be controlled through ARexx.
‘MSX’ is an 8-bit computer system with surprisingly good graphics and
sound capabilities. How does graphic resolutions of up to 512 * 424, up
to 256 colors on screen, and 9 channel music sound?
To demonstrate, several MSX pictures (taken from fMSX while running)
have been uploaded to aminet (pix/illu/msx_emu.lha).
Software is not included with the package, but many packages (mostly
games) can be found on FTP sites:
Hundreds of games are available from these sites, and some form a
worthy addition to the Amiga software collection.
Of course fMSX Amiga is fully multitasking, runs in an intuition
screen, and has a font-sensitive, resizable user interface.
A year and a half in the making, you might expect a few changes. Well,
nothing is further from the truth!
This version of fMSX is almost a new program. Entire modules were
written from scratch, most notably the video and CPU emulations.
Most spectacular from a code point of view is the Dynamic Recompiler.
This is a complicated piece of software that turns Z80 instructions
into 680×0 instructions on the fly, before executing them. Translated
instructions are cached and reused when needed. The net result? More
configurability and more speed. Unfortunately, it is not yet as
compatible as the old Z80 emulator, so some games will not run on it.
68060 owners will love it though, as it can run at very precise
speeds (previous versions could be astonishingly fast on 68060).
Also rewritten from scratch were the display routines. Two complete
sets of routines are now available, one for native screens (taking
a few shortcuts here and there for extra speed) and one for CyberGfx
mode. All MSX2 screenmodes are supported now, and every sprite
resolution is available. The new routines are a lot faster than before
Something that is _very_ useful for gamers: fMSX can now turn a
directory filled with MSX software into a temporary disk on the fly.
Just enter the name of a directory into one of the "drive" gadgets,
and the contents of that directory are written onto a temporary disk,
ready for your use. fMSX will even detect if you need any system
files, and add these automatically if required!
The GUI was completely changed. Many gadgets were given places that
are more logical (I have had quite a few complaints about this, let me
tell you). The new GUI uses the BOOPSI gadgets which are in development
for Merapi, the Java system by Haage&Partner. I consider fMSX a sort
of field-test, a useful testbench while Merapi is still waiting off
Add in support for an MSX mouse, and (very preliminary) support for
the FM-Pac. Add in some nifty configuration options (such as custom
interrupt speeds for the ultimate in speed control), and a cheat
finder. Add in the fact that nothing of note seems to get uploaded
to Aminet recently. All in all, it should be clear that you simply
have no choice other than to get this emulator!
All this power does, unfortunately, not come without a price. Memory
usage has skyrocketed, don’t bother to apply with less than 3MB.
A hefty processor was always useful, and that is still true although
it should run a bit better on slower systems as well.
fMSX now once again requires AmigaOS 3.0. It could never have worked
on AmigaOS 2.0, but since I didn’t receive a single bug report I
can only assume that nobody was using it. Don’t bother complaining,
there is a lot of 3.0 stuff in there now and I won’t be taking it out.
AHI is required for some of the sound modes.
fMSX Amiga 2.0 is available from any aminet site, such as:
All this, for free!
fMSX Amiga 2.0 is publically supported freeware.
Source for previous versions was available on request. However,
this version contains some code for Merapi which I am not willing
to share at this point in time. You can get the source, but without
the BOOPSI gadgets.
Depending on how things go with Merapi this may change in the future.