Snow emulates classic (Motorola 68k-based) Macintosh computers. It features a graphical user interface operate and debug the emulated machine. The aim of this project is to emulate the Macintosh on a hardware-level as much as possible, as opposed to emulators that patch the ROM or intercept system calls.
For more information and downloads, go to the website. You can view a limited online demo here
It currently supports the following models:
- Macintosh 128K/512K
- Macintosh Plus
- Macintosh SE (both non-FDHD and FDHD)
- Macintosh Classic
- Macintosh II (both non-FDHD and FDHD) (experimental)
Currently supported hardware:
- Motorola 68000 and 68020 CPUs
- IWM and SWIM floppy controllers
- GCR 400K/800K floppy disk drives (up to 3 on SE)
- GCR/MFM 1.44MB 'SuperDrive' floppy disk drive (currently read-only)
- SCSI hard disk drives (up to 7)
- Macintosh Real-Time Clock
- Macintosh keyboard/mouse
- ADB keyboard/mouse
- Audio output (PWM-based models)
- Macintosh Display Card 8-24 with the 640x480 RGB monitor (Mac II)
Supported floppy image formats:
- Apple DiskCopy 4.2 (sector-based)
- Applesauce A2R 2.x and 3.x (flux)
- Applesauce MOOF (bitstream and flux)
- PCE Flux Image (PFI, flux)
- PCE Raw Image (PRI, bitstream)
- Raw images (sector-based)
- Any format (Mac 1.44MB or PC) supported by Fluxfox
Emulator and debugging features:
- Breakpoints (execution, bus access, system trap, exception, interrupt level)
- Watchpoints with editing
- Single step, step over, step out
- Disassembly view
- Register view with editing
- Memory viewer with editing
- Instruction history view with export functionality
- System trap history viewer
- Peripheral debug view
- Terminal for the serial ports
See the BUILDING.md file for instructions on building.
- Thanks to raddad772 for the excellent 68000 JSON test suite
- Thanks to Rubix for the ASCII Mac
- Thanks to Daniel Balsom for the Fluxfox library
- Thanks to the people of the Emudev and Applesauce communities for their infinite wisdom
- The Musashi (by Karl Stenerud) and MAME ( many authors) projects have been used as a reference for poorly documented components