Plus Too is a working hardware replica of the Macintosh Plus and Macintosh 512Ke computers. The project’s goal is to recreate these classic computers using modern electronic components, producing a stand-alone machine able to run period Macintosh software from the mid-1980′s. It is similar in concept to the Minimig Amiga recreation and the Replica 1 recreation of the Apple I.
Video output is 1024 x 768 VGA. The Mac’s 512 x 342 screen is pixel doubled to fit the VGA width, which leaves some extra space below the Mac screen region to display hardware debugging information. A standard PS/2 mouse and keyboard are used for I/O. Floppy disk images are planned to be loaded from an SD card, and the current implementation stores a single disk image in ROM. The CPU runs at 8.125 MHz, slightly faster than a real Mac. The current implementation has 512K of RAM.
The original Macs contained a Motorolla 68000 CPU and about half a dozen major support chips, with all of the Mac-specific behaviors and OS routines defined in a 128K toolbox ROM. Plus Too uses an FPGA to model the Mac’s IWM (floppy controller), SCC (serial ports), VIA (general purpose I/O), mouse, and keyboard hardware. The toolbox ROM data was copied from my real Mac Plus (nicknamed “Lonely”) for use with Plus Too.
To correctly model a Macintosh floppy disk, the disk image must be encoded into a series of virtual tracks and sectors, with the proper low-level layout, header, footer, checksum, and GCR disk byte format. This encoding is planned to be performed on the fly by a microcontroller. The current implementation performs the encoding offline, using a custom-made utility program, and the encoded result is stored in ROM.
The current implementation of Plus Too is built using a commercial Altera DE1 FPGA development board. The 68000 CPU is a soft-CPU module within the FPGA. This implementation is capable of booting from a single System 6.0.8 floppy disk image stored in ROM, and running programs from the disk. It exhibits some stability problems, and implements only the absolute minimum of hardware necessary to boot the computer. The disk is read-only, and there is no keyboard, sound, SCSI, serial ports, or real-time clock.
The next version of Plus Too will use a custom-designed circuit board instead of the Altera DE1 kit. The revised Plus Too will use a real 68000 CPU, and will add a microcontroller for the floppy disk SD card interface. It will also add the physical connectors necessary to use a real Mac Plus mouse and keyboard if desired, while eliminating all the extra parts from the DE1 board that are unnecessary for Plus Too. RAM will be increased to 4 MB. The goal is to design a board that is as simple and inexpensive as possible, so that other people can build their own if they wish.
Plus Too draws on previous work by many other people. The FPGA models for the Mac Plus mouse and SCC are from an earlier Mac-in-an-FPGA project by Ben Herrenschmidt. Gaining a detailed understanding of the Mac hardware internals was greatly aided by examining the source code for the MESS Mac Plus emulator and Mini vMac emulator. The FDisasm tool was used to generate a commented disassemply of the toolbox ROM routines, which was a tremendous help.
View the detailed build log for Plus Too.