An emulator for various m68k and z80 based computers, written in Rust. Currently it has support for the Sega Genesis, TRS-80, and Computie (my own project), with Macintosh support in the works
Go to file
transistor f601290771 Fixed bug in MOVEM and added tests for it
It was previously decrementing addresses if the direction was from
registers to memory, but that's incorrect.  It should increment the
address always when using an addressing mode other than the ARecDec
mode.  I also added a memory location to the test cases to test the
MOVEM instruction by comparing what memory was read/written (but it's
only one u32 because that's the minimum we need)
2021-11-19 09:55:31 -08:00
binaries Added TRS-80 simulation to test Z80 impl 2021-11-06 21:46:17 -07:00
frontends Changed msp to ssp to match docs 2021-11-18 12:13:36 -08:00
src Fixed bug in MOVEM and added tests for it 2021-11-19 09:55:31 -08:00
.gitignore Modified to use a common trait to derive other traits 2021-10-17 10:39:43 -07:00
Cargo.toml Added minifb frontend with very WIP genesis peripherals 2021-10-27 21:01:18 -07:00
README.md Updated readme 2021-10-09 20:35:52 -07:00
todo.txt Minor fixes 2021-11-18 08:46:41 -08:00

Moa

Started September 26, 2021

An emulator for m68k CPUs and devices. I originally started this project to distract myself while recovering from a bout of sickness. The idea was to emulate the computer I had built as part of the computie project.

Currently it can run the monitor program and load the kernel across serial (or the kernel can be loaded directly into memory), and it can boot the kernel. It opens two PTYs: one for the serial terminal, and one for the SLIP connection, and launches both pyserial-miniterm automatically connected to the console PTY, and launches slattach with the associated setup commands to create the SLIP device on the host, and set up routing.

There are currently peripheral emulators for the MC68681 dual serial port controller, and the ATA device, which loads the compact flash image on startup, which the OS can read.