Close
0%
0%

MacintoshPi

A small project that allows running fullscreen versions of Mac OS 7/8/9 with sound, online connection and modem emulation under Raspberry Pi

Public Chat
Similar projects worth following
MacintoshPi is a small project that allows running full-screen versions of Apple's Mac OS 7, Mac OS 8 and Mac OS 9 with sound, active Internet connection and modem emulation under Raspberry Pi. All this without the X.org manager, only a multimedia SDL2 library and from the CLI / Raspberry Pi OS Lite. This lets emulators use full power of Raspberry Pi, making them more stable and useful in combination with additional retro-software. Installation requires running a single script on a clean Raspberry Pi OS Lite and waiting about two hours for the packages to compile and install. In addition, thanks to a document contained in the project, it is possible in dual-boot to place the fastest (bare-metal) Commodore 64/128/PET emulator BMC64, thus building an interesting retro package on a single SD card. The entire MacintoshPi project runs on Raspberry Pi Zero 2 W, 2, 3, 3B, 3B+ (at present, it does not run on version 4).

Below you will find a short clip showing what MacintoshPi can do:

The project consists of the following auto-compiling and installing bash scripts for Raspberry Pi:

  • Macintosh 68K emulator Basilisk II supporting Mac OS 7 (System 7.5.5) and Mac OS 8.
  • PowerPC emulator SheepShaver supporting Mac OS 9.
  • A development library SDL2 designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware.
  • Commodore 64/128/PET emulator VICE.
  • MacintoshPi Virtual Modem using the tty0tty and tcpser projects, running with the two aforementioned emulators for Apple and Commodore products, and on Raspberry Pi OS itself, as well as allowing any original terminal retro-software to connect with modern-day telnet BBSs.
  • CD-ROM, DVD-ROM emulator CDEmu which allows mounting CD images (iso, toast, cue/bin, mds/mdf etc.) under Raspberry Pi OS - runs with BasiliskII and SheepShaver emulators, as well as on Raspberry Pi OS. The emulators are configured automatically to support that virtual CD-ROM drive.
  • A consistent MacintoshPi Launcher that runs all of those systems at different resolutions (after reboot), in different configurations, with autostart support and with various startup chimes.
  • SyncTERM - an application for connecting with BBSs from the Raspberry Pi OS, compiled in combination with the SDL library.
  • Information how to run Raspberry Pi OS in dual-boot with BMC64, the fastest Commodore emulator for Raspberry Pi (bare metal/low latency emulator).

Mac OS images are pre-configured to support online connections.

Detailed descriptions of MacintoshPi project components

Basilisk II (Mac OS 7 and 8) and SheepShaver (Mac OS 9)

The script downloads all files required to start Mac OS - ROMs, system images, and creates configuration files. On installation, directory /home/pi/downloads will be visible on the Apple desktop as a Unix directory - files can be copied both ways between those two resources, but applications cannot be launched directly from that directory. In addition, the so-called NetDriver is also compiled, which allows full online access from virtualised Apple systems. Up till now, Mac OS 9 in the full screen mode (without the unnecessary window manager) has not been available for Raspberry Pi. This is perhaps the first such implementation which allows using Mac OS 9 and SDL2 in the full screen mode with sound and online connection - even on the small Raspberry Pi 2W. Each system must be launched with the appropriate command: mac os7mac os8 or mac os9. The additional file .img or .dsk can be added to the launched system by adding the image file name at the end of the command which invokes the system concerned, e.g.

mac os9 demo.img

Basilisk II and SheepShaver emulators can be stopped by using the key combination CTRL+SHIFT+ESC. This causes an immediate return to the command line. The COMMAND key is acquired with the left ALT key in Mac OS 9, and with the CTRL key in Mac OS 7 and Mac OS 8. For more information about those emulators visit the BasiliskII and SheepShaver websites.

VICE

The script that compiles the VICE Commodore emulator which can be used for connecting an emulated Commodore with modern BBSs. It allows downloading files which can be used on the same Raspberry Pi device, but on the fast BMC64 emulator installed in dual boot. On installing the BMC64 partition to rootfs, data can be downloaded from a BBS directly to the virtual drive that will then be available automatically in BMC64. The VICE emulator for Raspberry...

Read more »

  • 1
    Installation

    The project must be installed on a clean Raspberry Pi OS Lite (Legacy) or the full version of Raspberry Pi OS (Legacy), but in the latter case you must first switch to command line or set system start to CLI. Raspberry Pi OS (Legacy) can be installed from the Raspberry Pi Imager level by selecting: CHOOSE OS -> Raspberry Pi OS (other) -> Raspberry Pi OS (Legacy)CHOOSE STORAGE -> WRITE.

    Installation of the entire MacintoshPi package requires running the single command ./build_all.sh - all dependencies and required packages will be installed automatically:

    git clone https://github.com/jaromaz/MacintoshPi
    cd MacintoshPi
    ./build_all.sh
    # That's it - now you can run, for example, Mac OS 9:
    mac os9
    

    The process of compiling and installing packages can take about two hours.

    Each of these sub-projects can be installed separately by running the corresponding compilation & installation script contained in the directory relevant to the sub-project concerned. The installation scripts must be run from the pi user.

View all instructions

Enjoy this project?

Share

Discussions

drykeallbritten wrote 04/23/2023 at 21:04 point

It was a pleasure to get to know your project. I think it's a great example of what can be achieved with a Raspberry Pi and a little creativity. To me, this is a fun and nostalgic project that brings back the look and feel of the classic Mac OS while using the power of modern hardware. Also, it would be great to explore the possibility of remote access to such devices, and with the right approach and a guide at https://setapp.com/how-to/how-to-access-your-mac-remotely it seems realistic to me. With MacintoshPi's ability to run full-screen versions of Mac OS 7, 8, and 9, active internet connection, and modem emulation, it would be fascinating to see how remote access could enhance its functionality. Thank you for sharing your impressive project with the community.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates