Remember MacOS 9, or Classic as Apple named it once Mac OS X was released? On PowerPC Macintosh machines, you can install a Classic environment which launches a virtualised instance of MacOS 9 whenever you launch a Classic application. This environment has been dropped from Intel releases of Mac OS X, but thanks to SheepShaver, you can still set it up yourself on Mac OS X, Linux, Windows, and even BeOS if you want to. I decided to try SheepShaver on my Ubuntu machine, and discovered just how easy it really is.
SheepShaver is basically a PowerPC emulator that fakes an entire PowerPC-based Macintosh in software so that you can run MacOS 7.5.2 through 9.0.4 on Windows, Mac OS X, Linux, and BeOS. As of late, development has been focussed on Windows and Mac OS X, but pre-built Debian packages have appeared for 64bit and 32bit Ubuntu installations too. I grabbed one of these, and got going. Even though SheepShaver can run earlier versions, I’m focussing on MacOS 9.0.4.
You’ll need a few things before you can get going. Obviously, you’ll need SheepShaver. You can build it yourself, or grab a binary; binaries for Windows and Mac OS X are easy to get, but for Ubuntu, you’ll have to try a little harder. I used the 64bit build found here, and it works fine on Ubuntu Lucid Lynx.
Of course, you’ll also need a copy of MacOS 9.0.4. Since I have two Macs capable of running classic versions, that was no problem for me. Believe it or not, genuine and new copies of MacOS 9 can still be found in online stores today, but even if you can’t find one online, your local Apple retailer might still have a few copies lying around (at least, that’s how I got two free copies). Of course, there’s always the option of going the way of the pirate, but this is most likely illegal in your country of residence.
The third thing you’ll need is a little trickier to come by: you’re going to need the ROM image of a new world Mac, like a PowerMac G4. Again, I’m lucky in that I have two of these, so I didn’t have to jump through a lot of hoops. You can find these ROMs online too, but again, that is most likely illegal.
Once you have all these, it’s pretty darn easy to get going. Before we start, on my machine, SheepShaver had to be run as root, or else I’d get a “Cannot map Low Memory Globals: Operation not permitted” error. In other words, be careful, and don’t run it on a production machine – your SheepShaver environment has root access. I’m sure there’s a more clever way to work around this problem, but I haven’t really looked into this yet.
Update: Thanks to OSAlert reader nalf38, there’s a solution. Edit your /etc/sysctl.conf
, and add vm.mmap_min_addr = 0
. Then execute service procps start
. Now you can run SheepShaver without root privileges.
After launching SheepShaver (I simply use a terminal to execute sudo SheepShaver
), you’ll be confronted with the settings window which also happens to act as the launcher for your MacOS 9 environment. The steps to set up this environment will look remarkably familiar to anyone with experience in running virtual machines.
First, we need to create an image file to act as a hard drive for MacOS 9. I know from experience that this operating system requires very little hard drive space, so I went with 2GB. You obviously need to tell SheepShaver where to store this file; I stored mine on my free-for-all Data partition, and called it MacOS.
Now it’s time to correctly set everything up. Since you first need to install MacOS 9, insert your MacOS 9.0.4 disk, enable the CD-ROM driver, and set the “Boot from” drop-down to “CD-ROM”. It is important to set the “UNIX root” field to a safe directory, like your home directory or a specially created share directory. This directory will be mounted as a drive inside the virtual environment, and since SheepShaver runs as root, it will have full read/write access to this directory and all subdirectories. Note that if you used the solution detailed in the update above, you can discard this warning.
You can play with the graphics/sound tab to find the settings that fit you – I have MacOS 9 running in a 1024×768 window. I didn’t change anything in the keyboard/mouse tab, since it all seems to work just fine with the default settings. In the serial/network tabs, be sure to set the Ethernet interface drop-down to slirp (we’ll set up networking within MacOS 9 later), and I guess memory/misc is pretty much self-explanatory. I allocated 256MB of RAM to the virtual machine, which is more than enough for MacOS 9. You might want to set this value a little lower if you have less RAM to play with (I have 4GB). I didn’t touch the JIT compiler tab at all.
Now you can press “Start” to launch the virtual machine, and if all goes correctly, you’ll be asked to initialise the hard drive image you made. Once this is done, you’ll be running MacOS 9 as a live CD; you can proceed to install from there. The installation routine is fairly straightforward. Once complete, shut the live CD down, and change the appropriate settings in the SheepShaver window so you’ll boot from the hard drive image (I disabled the CD-ROM driver altogether). You now have your own working MacOS 9 environment.
To set up networking, you have to go to the TCP/IP preferences panel, and set the values exactly as pointed out below in the screenshot. Note, however, that the browsers which ship with MacOS 9 (Internet Explorer, Netscape) will crash your virtual machine, so you’ll have to either use Classilla or iCab. I was really looking forward to trying out the new Classilla browser, but sadly, I get a very weird memory error when trying to launch it, so it was back to iCab for me. iCab is a decent enough browser though, but it won’t blow your socks off or anything on MacOS 9.
I’ve made a short video showing SheepShaver in action (4.7MB, Ogg Theora).
Now you can play around with MacOS 9. While this guide was written for Ubuntu, the same settings will probably work just fine on other operating systems. It won’t give you the full experience, but it’s a nice and fun way to get to know an older operating system that has been pretty much obsoleted. While MacOS 9 is absolutely terrible from a technical point of view, Platinum still kicks everybody else’s bum when it comes to consistency and nice usability touches.
Have fun.
Dropped from Intel releases? I thought it was only not installed by default, but still on the dvd or are you not referring to Rosetta (which I had to install to play Diablo 2)?
Rosette is something else – Rosetta allows PowerPC code to be run on Intel machines. Classic allows you to use MacOS 9 applications on Mac OS X (but only on PowerPC Macs).
SheepShaver also runs on Windows, OSX (both PPC and Intel) and others, emulating a G4 processor, capable of running Mac OS 7.5.3 up to 9.0.4. It also offers a (rather crude) solution to the loss of Appletalk in Snow Leopard, through the use of tap/tun driver for OSX and IPNetrouterX software. SheepShaver shares a lot of code with BasiliskII, which can be used to cater for your 68xxx emulation needs.
As the main developer abandoned ship some time ago, problems are starting to arise when running on newer host OS’. Some blatant self-interest-driven request: If anyone is interested, we over at emaculation.com could do with an 64-bit update to the cdrom and ethernet drivers for windows and a better (native) routing solution for appletalk in OSX…
Should be “kleine moeite, grote vreugd” (a Dutch expression, meaning “a small effort, resulting in great joy”) for some of us OSAlert readers
Man, I wish I could get a PowerPC emulator for my Amiga 500. Until I do, I’ll just have to make do with MacOS 8.1 on my A500:
http://www.amiga.org/gallery/index.php?n=1393
Emulating a dead OS, on an even deader OS… that sounds interesting
Oh it is… it is. Especially when the even deader OS is emulating the… less dead one. An equivalent would be Windows 3.1 emulating OSX. (not that OSX is dead… but it’s getting there )
Something is wrong with the video file. Mplayer doesn’t show video.
I recently came into possession of a g4 Mac which has OS9 and Panther installed.
Its interesting to compare the two OS… In particular the lack of a command line. Back in the ‘Classic’ days I used to tease my windows using friends that Windows was little more than DOS with a colour palette while Mac was had ‘real’ GUI. Now OSX is doing just the same
I think the thing that surprised me most about going back to OS9 was it works… yes, daft as it sounds, I was surprised how much I could do. It could play my DVDs (ok it was a tower so it played them with a windfarm in the background, but we will ignore that) play music, happily handle osnews, facebook, gmail etc.
Another thing, the OS was FAST even on an old G4, it was quick. I wonder how much of the bloat now in OSX could be stripped/disabled on an ad-hoc basis to speed things up…
Technically, I would not consider a kernel with real memory protection, multitasking, and multiuser capabilities, a real networking stack, great frameworks and programming environment, etc… to be “bloat”
But to each their own I guess.
I loved classic MacOS, and I truly always found its looks far more agreeable than the Windows version (or even things like CDE/motif) of the time. But its actual OS foundation was utter shite… I still remember having to play with the correct extension mix (and in some cases starting order) in order to get a stable system. Or having to manage the memory almost manually in some cases. I still miss CodeWarrior as my C IDE though.
I appreciate that OSX has some very very nice features. But there is no denying that it is also vastly slower on the same hardware. A simple example of what I consider bloat is dashboard retaining large chunks of memory while the feature is not in use.
Mac OS X as a whole is remarkably inefficient and heavy. Memory requirements to run OS X acceptably are absolutely insane, and no matter how powerful your Mac, responsiveness is always sticky and syrupy.
Windows 7 is far lighter on resources and much more responsive than Mac OS X. No surprise, seeing how Apple’s focus is on the iPhone and iPad, and not the Mac.
Wow… you are a funny fellow indeed.
I have a 6+ yr old powerbook with 1.5 GB running OSX 10.5 like a champ. I also have a similar vintage thinkpad, with a faster Pentium M processor vs. the G4 of the PB, running Windows 7 on a similar memory configuration. The OSX machine is as responsive as the Wintel one.
You can turn off dashboard.
And my point was that OSX does a heck of a lot more than System 8/9 ever did. It is like claiming how DOS on a Pentium would be faster than Windows NT on the same processor. Well, d’uh.
There are SheepShaver packages in my PPA here:
https://launchpad.net/~mdeslaur/+archive/ppa
No seriously! A member of my family has a business he’s looking to migrate from Classic Mac to current Windows or Linux, but some of the applications he uses are tied to Classic, with proprietary file formats. Looks like this might be a ticket into modern times (or halfway there anyway).
It seems like you have to jump through alot of hoops here, really.
Why not PearPC and OpenHackWare?
That covers the ROM problem, and apparently doesn’t have the weird errors. I think this is how someone got OS X to start booting on an 68k Mac with Debian. They may have been using QEMU, though.
Granted, it would have taken weeks to boot, but it would have happened…
EDIT: Ah, PearPC doesn’t run Classic, sorry. It’s possible, just not ready.
Edited 2010-05-19 19:32 UTC
I got it working just fine in Sheepshaver (As pictured here -> http://yfrog.com/j8screenshotppp ). I don’t think my install is much different than yours, apart from some extra MacOS 9 games I installed on it. Maybe it could be due to differing ROMs? Or it could just be pure luck… I’ll go with that.
In any case, when compared to iCab, Classilla renders pages a bit faster. However, being based off of Mozilla, Classilla seems to have all the same bloat. Really, while it’s nice to see that there are ways to have modern web browsing on an old platform like MacOS 9, it’s not really practical.
I just simply love the looks of classic, that is why i compiled this GTK package for gnome so i can still feel like using OS9 with no of its technical limitations.
http://gnome-look.org/content/show.php/Classic+Platinum+OS9?content…
It’s interesting playing around with Mac OS 8 now.
I found it highly underwhelming at the time. I couldn’t understand why Mac fans thought it was so wonderful.
That’s mainly because I’d been using RISC OS for years, and took niceties like anti-aliased text and live dragging/resizing of windows for granted. It seemed strange that a much hyped new OS on such fast hardware wouldn’t offer that kind of thing.
Trying it now I really appreciate the consistency and aesthetics. Nothing distracting, nothing that wastes loads of space or damages usability purely to look cool. All the applications fit together consistently without them all having their own ugly skins. It may look boring at a glance, but it’s lovely to use.
Of course there’s in option of skins in modern operating systems, but it’s harder to fix every application. In Windows I’ve generally stuck with the good old grey and blue Windows Classic theme, and chosen applications that fit in with that rather than using non-standard skins, but that’s harder and harder to accomplish.
For example Opera (with its Windows Native theme) used to be nice and simple and consistent, but with 10.5 that’s now designed for the flashy, standards free world of Windows Vista/7. Slathered with utterly moronic transparency effects (e.g. a pop-up tab switcher that often gives you transparent text over the top of web site text), and lots of weird and inconsistent behaviour. It’s the way everything seems to be going, but that doesn’t mean that I have to like it.
Actually, there is a way to extract a Mac OS ROM file that works with Sheepshaver from a Mac OS ROM update. You need a program called TomeViewer. TomeViewer only runs on classic Mac OS or in the classic environment on Mac OS X.
TomeViewer: http://www.versiontracker.com/dyn/moreinfo/mac/4561
Mac OS ROM Update 1.0: http://docs.info.apple.com/article.html?artnum=60408
Edit: You may break some license by doing this, do this at your own risk.
Edited 2010-05-19 20:58 UTC
If you need a running OS9/Classic environment in order to run this program, then surely you already have access to the roms…
As far as I know, not all ROMs work with Sheepshaver and TomeViewer runs on 68k Macs. 68k Macs are not emulated by Sheepshaver. You do need to have a running classic environment to extract the file, but this can also be done on an even older 68k Mac, emulated 68k Mac(also needs a ROM file) or possibly (not tested by me) on Executor, which doesn’t need a ROM file to run.
Edited 2010-05-20 09:16 UTC
I remember reading about sheepshaver a few years back. Somebody created a pre-packaged version of sheepshaver with Mac OS 9.0.4 called COI(Classic on Intel) for Mac OS X. I believe the latest version is 4.01 “Chubby Bunny.”
I first tried Sheepshaver back when I was new to Linux, and I couldn’t get anything working.
Recently I was thinking about those classic Mac OS games that I can no longer play because my Mac is gone; now I have some hope of playing them again thanks to your article.
Add this to your /etc/sysctl.conf file:
vm.mmap_min_addr = 0
That will fix the “Cannot map low mem globals” error that you’re getting, and you won’t have to run SheepShaver with root permissions.
Totally off topic, but I can’t help but notice your gnome fonts look way nicer than the Ubuntu defaults. What’s your secret? Are they the OSX fonts or what?
I use Trebuchet MS for everything (it’s in the Core Fonts for the Web package), 8 point, bold for window titles. My fixed width font is much harder to come by, as it ships with Windows 7: it’s called Consolas.
Subpixel smoothing, set to slight.
i have a mac that got mac os 9.2.2 on it and a few games
Edited 2010-05-20 22:56 UTC
I picked up a G4 Mini on CL for about $100, and can easily run the classic environment. You can also find older G4s that run OS 9 quite well natively.
I actually liked OS 9 and the “classic” os days are what got me into Macs to start with. Going from Amiga to Windows then to Mac in the early 90’s was a fun time. OS 7.5.x had it’s issues though and it was an art to make it stable so that it would not crash, of course depending on your Mac model. But everything was cool and unique and a lot more flash compared to windows of the time (3.1 or 95, take your pick).
I have to agree with the others too that OS X is now officially bloatware^a"c and had hoped that Snow leopard would be to leopard what Windows 7 was to Vista but alas, it is not and it is still bloated. Oh you have more disk space when you are done upgrading but that is probably because of the way they now calculate a MB and GB in OS X.
Ah well I guess I need to upgrade to a newer MacBook Pro…
Hi All —
You can download 7.0.1 (for 68K emulation) and 7.5.3 (for PPC) directly from Apple at:
http://www.info.apple.com/support/oldersoftwarelist.html
You can also get the 7.5.5 update from there.
The 7.5.3 (and 7.5.5) can also be used for 68K.
(used it on my Amiga 500 – in fact, I downloaded it using the Amiga 500)
Edited 2010-05-21 12:20 UTC
I loved OS9 in those days. My last machine was a Umax tower with a G4 CPU upgrade and loads of RAM. Everything was really snappy. But OS9 reached its limits and I guess it was ok that Apple decided to go for a totally new designed OS. Two great games I loved where Prime Target and Damage Inc. as well as those Ambrosia Software games.