top of page
Search
  • jimht3

Run Mac OS 9 on Your Raspberry Pi

Updated: Jan 8, 2022

There is a great video and associated blog post by Novaspirit Tech that shows how to get Mac OS 9.0.4 running on a Raspberry Pi. This post of mine is not a substitute for his work—I'm just documenting here some of the steps I did on my own Pi400 to get this working as smoothly as possible. I performed these actions on Twister OS version 2.0.2. This isn't to say that you cannot install this on a standard Raspbian setup, as I imagine most of what I mention here will translate over. Don't be daunted by the length of this guide - the steps here are relatively easy to do and the only reason the guide looks lengthy is because I included all the details that a linux novice might require. This whole process will likely take less than 15 minutes to perform.


Steps

  1. Download the ARM version of SheepShaver from Novaspirit, and extract to the downloads folder. You'll end up with a folder named MacArm which contains 2 files: ppc and SheepShaver. Move this folder to the /home/pi folder, and rename it SheepShaver.

  2. Enter the SheepShaver folder, right click in the folder and select Open Terminal Here from the context menu. In the terminal window type the following: sudo chmod a+x SheepShaver This will give the application permission to execute. Leave the terminal window open for now - we will be using it again later.

  3. Download the New World PPC ROM. Unzip it, rename the file newworld86.rom to Mac OS ROM (just exactly like that - same capitalization, spaces, no file extension) and move it to the /home/pi/SheepShaver folder.

  4. Open the Add/Remove Software application from the Twister OS Menu (it is under System I believe) and install the following two packages: osspd and qjoypad). Osspd will provide a means for older softer that expects to find a /dev/dsp audio device to work with newer linux setups--translation: this lets your Mac have sound! QJoypad is a small utility that will convert gamepad axis commands to keystrokes. This is really only needed if you intend to play games on your emulated Mac.

  5. Download the Apple Mac OS 9.0.4.7z archive, extract it, and you'll end up with a folder named Apple Mac OS 9.0.4. Open that folder, and you'll find a file called Apple MacOS 9.0.4.iso. Move this to the /home/pi/SheepShaver folder.

  6. At this point we have most of the ingredients we need to successfully set up SheepShaver, create a drive file to contain our Mac files, and install Mac OS 9. But first I am going to provide some advice that will get things running as smoothly as possible.

    1. Disable your screensaver if you have one set up, or set a time out value of at least an hour. Might be superstition but I found in my experience that the screensaver caused SheepShaver to quit unexpectedly. I had more stable usage after I disabled it, but honestly it might also have to do with a few other tweaks I made to the setup while I was smoothing things out, so who knows. Your mileage may vary.

    2. Under the System menu in Twister OS, select the Performance option. This will run the CPU clockspeed in the Pi400 at a steady pace instead of scaling up and down as it does on the default On Demand setting.

  7. Return to the Terminal window we had opened in step 2, and enter the following command: sudo padsp ./SheepShaver This will run SheepShaver with admin permissions and connect it to the translation interface between the newer Pulse Audio sound framework, and the older oss framework. I am unclear as to why this is necessary, but the program seems much more stable when run with admin permissions. It is also important at this stage to be running it from a Terminal window so that the program can be exited if things go wrong (which they definitely will in the next couple of steps).

  8. SheepShaver's GUI will open, and in here we can set up a drive file to hold our Macintosh files and operating system, and adjust the various options of the emulation. The settings suggested here are the ones that worked best for me. Leave everything at the defaults unless mentioned otherwise below.

    1. Volumes tab: click the Create... button and a new Create Hardfile dialog box will open. In the Size text box type in a reasonable size in megabytes (anything over 200 MB seems reasonable to me - I went with 500 Mb) and give it a name (I used MacHD)

    2. Still in the Volumes tab: click the Add... button and select the Apple Mac OS 9.0.4.iso file.

    3. Still in the Volumes tab: set the Unix Root value to /home/pi/Downloads (or somewhere else you might prefer but I found this location the most useful).

    4. In the Graphics/Sound tab: set the Window Refresh Rate to 30 Hz, Width to 1024, and Height to 768.

    5. In the Memory/Misc tab: set MacOS RAM Size (MB) to 512. You can experiment with other values later. Click the Browse... button and select the Mac OS ROM file saved in Step 3.

    6. In the JIT Compiler tab: Leave the built-in 68K DR Emulator option disabled.

  9. Now, prepare for disappointment... Press the Start button in the SheepShaver GUI. The Mac will start up, and then display this error message: "The system software on the startup disk only functions on the original media, not if copied to another drive" and an option to Restart. Unfortunately this results in a loop that you can't easily escape. Return to the Terminal window and type CTRL-c to break the program and close the emulator window. The reason we had to perform this step was to get SheepShaver to write out a prefs file which we can then edit manually to improve this state of affairs.

  10. Still in the Terminal window, type the following command to edit this prefs file: sudo -i (You will get a message about the default password for the 'pi' user (if you have not changed it) which you can ignore.) cd /root nano .sheepshaver_prefs The first couple of lines in the prefs file will look like this: disk /home/pi/Sheepshaver/MacHD disk /home/pi/Sheepshaver/Apple MacOS 9.0.4.iso Change the second line to read: cdrom /home/pi/Sheepshaver/Apple MacOS 9.0.4.iso Scroll down further in the file and verify that both JIT options are set to false. jit false jit68k false Press CTRL-x then Y and then RETURN to save the file. Then type: exit to return to the normal terminal prompt. Now type: sudo padsp ./SheepShaver to rerun the program.

  11. SheepShaver's GUI will open again. You'll notice that the Apple MacOS 9.0,4.iso disk has disappeared from the Volumes tab, but it is still in the prefs and will be used as if it were a CD (which gets rid of the previous error message). Press the Start.. button. The Mac will now boot from the 'CD' and once the Finder loads, will offer to format your 'hard drive'. Give it a name like 'MacHD'. This will happen very quickly, and you can then proceed to install OS 9 on the drive. I left everything at the defaults. The installation will take around 7 or 8 minutes. When it completes, be sure to also install the 9.0.4 Update. When the installations are complete, go to the Special menu and select Restart. The Mac will now restart but will instead boot from the hard disk image instead of the CD image.

  12. The Mac OS Assistant will pop up at this point to "help" you complete the OS installation. My recommendation is to quit the Assistant before it gets going. It does not do anything important, and I believe it will hang up when it reaches the network portion of the setup.

  13. Open Apple/Control Panels/Sound, and verify that you can hear the Volume control slider and select various Alert Sounds. At this point, you might still not have sound. If so there is one remaining tweak you can perform inside the Mac OS itself. Launch Apple/Control Panels/Extensions Manager. Scroll down to the Extensions section, and uncheck Apple Audio Extension. Close this, and under the Special menu select Restart.

  14. Congratulations - you have a functional Macintosh running on your Raspberry Pi! It is beyond the intent of this guide to show you how to use a Macintosh, but likely the first thing you should install is Stuffit Expander 5.5 to ease your way with everything else. We just have a little bit of clean up to do. Under the Special menu select Shut Down. Back in the Terminal window, perform the commands in Step 10 to re-open the prefs file in the nano editor as root. Delete the 2nd line (cdrom /home/pi/Sheepshaver/Apple MacOS 9.0.4.iso) and save the file (CTRL X, Y, return) and exit su mode. This will remove the CD from showing up every time you boot up the Mac.

  15. One last thing you might want to do is to create a launcher for SheepShaver. Right click on the linux desktop and select Create Launcher.. Set up a launcher with the following properties: Name: Macintosh Comment: Mac OS 9.0.4 Emulator Command: sudo padsd /home/pi/SheepShaver/SheepShaver Working Directory: /home/pi/Sheepshaver If you want a custom icon for the launcher, try this one:

January 8, 2022 Edits:

This tutorial used to use oss-compat as a solution for making the sound work with Sheepshaver. I have updated the tutorial to use the more recent osspd solution. This requires a slightly modified command line and launcher setup. I found that sound worked with this newer setup, even without disabling the Apple Audio Extension in the Extensions Manager, but I've left the earlier step in the tutorial as an option in case it is required in the future for some reason. Some typos and spelling errors were also corrected. A new link to a quality version of the icon file is included, as I became aware that the Wix web app I am using converts everything to webp.

5,755 views1 comment

Recent Posts

See All

Latest FS-UAE on Pi 4

FS-UAE is an Amiga emulator aimed directly at creating a simple interface for playing Amiga games in as straightforward way as possible. It will use WHDLoad images as well as direct ADF images of most

Amiga on the Raspberry Pi Part 5: extra credit

This is a really short post. I came across this terrific article and file download about how to tune up the Workbench 1.3 to be as pretty as the OS versions to follow. Includes lots of custom icons, c

Post: Blog2_Post
bottom of page