1 Generator is an open source emulator designed to emulate the Sega
2 Genesis / Mega Drive console, a popular games machine produced in the
3 early 1990s. It is a portable program written in C and has been
4 ported to the Amiga, Macintosh, Windows and even pocket PCs such as
5 the iPAQ and Cassiopeia. Natively it compiles under unix for X
6 Windows with either tcl/tk or gtk/SDL, for svgalib and even
7 cross-compiles to DOS with djgpp/allegro.
9 Generator uses its own custom 68000 processor emulation which is
10 designed for dynamic recompilation, and uses techniques from this such
11 as block-marking, flag calculation removal, operand pre-calculation,
12 endian pre-conversion etc. There are approximately 1600 C routines
13 generated by the first stage of compilation to cope with the 67
14 instruction families. These routines are used as a 'backup' when
15 dynamic recompilation isn't supported on your platform or the
16 recompiler doesn't support a particular instruction. The CPU engine
17 is by all accounts very fast, whatever the mode.
19 There is a 'test' recompiler written for the ARM processor, but it is
20 no longer supported. If someone with assembler knowledge wants to put
21 the effort into writing a recompiling back-end for a processor (and it
22 really is major effort), let me know - particularly if you know i386.