Snow EMU - Emulator for 680x0-based Macintosh computers

eric

Administrator
Staff member
Sep 2, 2021
1,328
2,307
113
MN
bluescsi.com

Snow emulates classic (Motorola 680x0-based) Macintosh computers. It features a graphical user interface to operate the emulated machine and provides extensive debugging capabilities. 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.

It currently emulates the Macintosh 128K, Macintosh 512K, Macintosh Plus, Macintosh SE, Macintosh Classic and Macintosh II.
Snow GUI window



The emulator is written in Rust and released as open source, licensed under the MIT license.

To get set up or for further information, check the online documentation.

Download
 
FWIW this has replaced mini-vmac for almost everything I do with emulators locally. It's very new so lots of features are being added quickly and you might run into the occasional bug.

Emulate a Mac 128k up to a Mac II with 128MB of RAM. '020 is the max 68k supported currently.
 
  • Like
Reactions: JDW
Thank you for this announcement, @eric !

I see from the FAQ that the emulator is called "SNOW" because of the "Snow White" design language Apple used (via Frog Design), starting with the Apple IIc in 1984 and continuing in the Macintosh line until the IIfx in 1990. "Snow White" is a little confusing because some conflate the "design language" with COLOR. Indeed, the Apple IIc was truly "Snow White," not only in terms of its design but in color too. Earlier Apple II machines were beige, and so were the first Macs. The Mac Plus started out as beige, but the plastics later changed to Platinum color. Even so, Macs were never Snow White in color. Macs were only Snow White in terms of their "design language." The Mac Classic, LC, and IIsi were among the first Macs which did not use Snow White fully. And the Quadra 700/900 (1991) & Quadra 950 (1992) are similarly Neo Snow White, carrying over some design elements but not all. The 1993 Color Classic is an example of a machine with a clear departure from Snow White, instead using a "neoclassic" industrial design.

The website says Snow currently emulates these Macs:
  • Macintosh 128K, 512K and 512Ke
  • Macintosh Plus
  • Macintosh SE (non-FDHD and FDHD)
  • Macintosh Classic
  • Macintosh II (non-FDHD and FDHD)
The other Mac II models and the SE/30 (based on the IIx) aren't currently listed. The Macintosh Portable also used Snow White, but is also not currently listed. But I guess they may be added in time.

This new emulator should be interesting to tinker with because it is a departure from Mini vMac in that it strives to do a more perfect emulation of the actual hardware, which is neat. And it's great that Disk Jockey 4 makes it easier to convert disk images, since the images for Mini vMac need to be modified before use.
 
Snow has reached 1.0 https://github.com/twvd/snow/releases

Notable feature for users is the ability to select a set of files and it will create a iso on the fly and mount it to transfer files into a emulated mac.

--

After VCF-MW I'll finish up and add BlueSCSI emulation into Snow. Think "ImportFi/ExportFi" in minivmac. It currently all works, but I've got a lot to clean up.

1757086030880.png
 
SnowEMU v1.1.0
  • I-cache, bus timing accuracy and other improvements to the 68020
  • Use bundled SDL library for MacOS builds
  • Implement save states
  • IWM and floppy fixes to support more copy protections
  • New icon by Andrew Yaros @andrew
  • Implement drag and dropping files into emulator window. Supports workspaces, state files, ROMs, floppies, HDDs and CD-ROM.
  • Emulation accuracy fixes on the compact Macs fixing ChipWits, Animation Toolkit
  • Added icon to the Windows executable
  • Fixed showing some traps mistakenly as unknown in System trap history
  • Work-in-progress PMMU (still very experimental)
 
Some suggestions:
On Windows I would prefer Left ALT as a command key and supporting the international keyboards, I have to be careful when using QWERTY or QWERTZ. And maybe that you do not have to load Workspace setting every time :)
 
  • Like
Reactions: JDW
@slomacuser Please report these on the projects github issues so the maintainer can see them. I'm just an occasional contributor and cheer leader of the project :)
 
So powerful it even emulates an Atari \o/

Copie d'écran_20251103_003851.png



… Kidding, that's my EmuTOS port to Apple just starting up. Not fond of having to download half of Internet, but I guess that's half less with Rust than with Node… At least now i have an emulator that works (couldn't get it to run on BasiliskII or QEMU).
 
I've added Serial port emulation for Linux/Mac (windows users sorry, someone else is going to have to add it, i dont have windows anymore)

So we can do cool things like, get online via PPP:
1765232899490.png


Or use Retro68's LaunchAPPL to directly send and launch apps you compile on a modern computer to a retro emulator:
1765232936635.png


Snow is fast becoming the most full featured, easy to use, Macintosh emulator.
 
The work on Snow is very impressive. Are there any plans to add 68030 and 68040 emulation?
 
  • Like
Reactions: JDW
030 is in the works - there's a branch out there - but still a lot of work to do.
That's incredibly exciting! Thank you and the other contributors for this excellent work. I'm especially happy that it runs on macOS, Linux, and Windows.

EDIT: Just noticed the Github Read Me mentions SE/30, IIcx, and IIci. Yay!
 
I thee there is a PR for LToUDP, this is so cool, I use it with my "wifi" PowerBook 100 + minivmac to sync files on my modern computer, can't wait to test it in Snow too!
 
I thee there is a PR for LToUDP, this is so cool, I use it with my "wifi" PowerBook 100 + minivmac to sync files on my modern computer, can't wait to test it in Snow too!
Do you have a tashtalk to receive the LToUDP and translate it to actual LT for the powerbook or how is that setup?
 
I made a small board with an esp32 + tashtalk, which fits in the modem port and runs an 'integrated' airtalk, so I can bridge it directly to minivmac.
 
Back