Why not take a Sega Master System and Game Gear emulator (MASSAGE), recode it so that each hardware component is in an easily reused OBJ, then emulate a bunch of other systems that mostly use the same hardware and stick them all in the same executable?
Or (to put it another way):
Why not take a reasonably compatible emulator, recode it with more generic code so that it's slower, muddle it up a bit so that it's less compatible and add a load of other systems (that nobody wants and have been emulated better elsewhere) resulting in a load of partially emulated systems in an ever increasing size of executable?
"Multi" is effectively Massage V1.2, with a number of extra systems on top.
No version of Multi has ever had a public release...
Most of these are emulated very nicely, except for the NES. The MSX 2 also needs a bit of work.
This means that we have the following CPU cores:
I've not updated this page for a while... Mainly because I've not done that much on it. SVI-318/328 is partially in, but Sega SF-7000 is completely non-functional. I've fixed up a few graphical issues here and there, but not a great deal. Mostly, I merged as much of the code as possible with X128 so that all the emulators would be established on a portable base, with the option to combine them.
These emulators aren't ready for Windows yet. I'd tried to put a proper audio mixer in the base so that a particular emulation core would have the freedom to pick and choose however many soundchips it wants, instead of the current method of having it hardcoded. The problem was that it was much slower, so it's half finished and there's no point merging this lot in until it is.
Progress ends due to forthcoming work commitments. I tried to make screenshots of NES, GB and MSX 2 games, but I hadn't updated the code to allow it! So, I've had to use the Windows grabbing method and there is some degradation where they've been converted and scaled down.
I'm considering adding other Z80 based systems to it, like the SVI-318/328 (very similar to the MSX 1). I'm also investigating the PC88 and Sharp X1 systems (although it's just about impossible to get reliable technical information in English). Naturally, the MSX 2 would be a logical move, although it would require changes that would slow down the Z80A core, the code isn't entirely generic.... I could add checks to the peek routine, but not the instruction fetch. That might be a reasonable compromise.
I spent a whole 10 seconds looking for screenshots.....
1/3rd of a minute passed so far.
Everything after Burger Time has been dithered.
I prefer the MSX-1 version.
Note the NES "auto-squash"!
More Castlevania? I can't take it any more!
(C) James McKay, 2003.