µvMac

µvMac

Mockup of the config manager's initial screen

µvMac (micro vMac) is a simple, configurable emulator for early Motorola 68000 based Macintoshes. It was forked from Mini vMac v36.4 by Paul C. Pratt, which was forked from vMac by Philip "PC" Cummins.

This fork was created to clean up and modernize the code base, make the project easier to compile and hack on, and allow for much easier user configuration. The intent of Mini vMac was to create a "emulator collection" of many very optimized "variations" of the same codebase. (See this article I wrote for more information.) I consider this much more trouble than it's worth, and intend to focus more on maintainability and accuracy.

Download

µvMac is currently very early in development and is not ready for release, but its source code is publicly developed on Github.

Screenshots

Here's µvMac running on Linux with the default palette, emulating a CRT's natural colors. (This may be tweaked some.)

System 7.1 About box, colored like an actual CRT with a slight hint of blue

Here's some screenshots showing the configuration file modifying the system palette.

A very red startup screen, with a text editor controlling which shades of red to use "It is now safe to turn off your Macintosh" in pink and blue vaporwave-seque colors System 6 About box, in amber

The below image, as well as the very first image on this page, are mockups of a possible upcoming feature, the configuration manager. This would replace Control Mode in Mini vMac, and would also appear when you start the emulator.

Mockup of the config manager's device selection screen

The configuration manager will require resources from a ROM. Here's the screen you get when you start up for the first time, without a ROM.

Flashing ? on a ROM chip, and a message asking you to find a ROM

Supported Macintosh models

Currently, µvMac is very early in development, so only the Macintosh Plus is officially supported. Soon, the following systems are expected to be emulated:

After that, µvMac will attempt to support these systems:

Supported Platforms

µvMac absolutely requires SDL2. There are no plans to support platforms that SDL2 does not target. For 99% of users, this should not be a concern. Dropping support for esoteric platforms and exclusively using SDL2 vastly simplifies the complexity of the code. (If there is enough demand, I may re-implement SDL1 support as well.)

Here's an incomplete list of platforms that can, in theory, be targeted. These are listed in order of support.

Development occurs exclusively on Linux and Windows, so those two operating systems are the only officially supported ones.

Legal info

You can redistribute µvMac and/or modify it under the terms of version 2 of the GNU General Public License as published by the Free Software Foundation. See the included file COPYING.txt

µvMac is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the license for more details.