A quick guide to the things I have discovered about Mac emulation and what it means for retro flight sim gaming.
The Mac platform isn't exactly well known for a plethora of flight sims, but there are some retro classics that are worth looking up, the most noteworthy being F/A-18 Hornet Classic (Hornet v1.1.2) and Hornet 2.0 from Graphsim and A-10 Attack the prequel to A-10 Cuba and finally the Mac version of the Microprose classic F-117 Stealth Fighter 2.0. But how to play these classics? Well unless you have any old Mac's lying around the easiest way is probably going to be emulation.
Creating an Emulated Mac
Firstly we need to create an emulated Mac, after a lot of trial and error I've found the following to be a suitable emulated hardware/software combo for running those sims mentioned above:
Quadra 800 ROM
64 or 128MB RAM
200MB - 500MB hard disk
Mac OS 7.5.3 or 7.6.1
This is the emulated Mac I used to compare the various options. Mac OS 7.1.1 worked with some emulators so if you need to use a particular version anything from 7.1.1 to 7.6.1 may be suitable.
Emulation Options
So if we go the emulation route it's worth looking at the pro and cons of the options available. It's worth noting that the simulations were around at the time Apple had both Motorola 680x0 (m68k) and Power PC (PPC) processors and the sims above can run on either platform due to Apple fat binaries which supported either hardware.
Basilisk II
Still considered the gold standard in m68k Mac emulation, it has a lot going for it. A fairly straightforward GUI to setup the Mac, still actively developed with releases, setup guides and forums available through the Emaculation website. On a modern monitor the graphics scale beautifully through Basilisk II.
However it suffers from one serious drawback which makes it problematic for running sims, the lack of any sort of speed control. Basilisk II will run as fast as possible and without any ability to throttle its performance, this results in sims running too fast or with controls too sensitive to be able to fly properly.
Earlier titles which may be speed sensitive such as F-117 Stealth Fighter 2.0 may also suffer from crashes due to the performance. In fact this is very easy to see in Stealth Fighter where switching speed in game to 'realistic' or switching to an outside view in flight will cause an 'Error of type 4' (a divide by zero error).
Sheepshaver
Sheepshaver can be thought of as Basilisk II for the PPC, in fact Basilisk II and Sheepshaver share a lot of source code. Like Basilisk II it has it's own setup GUI and is actively maintained with releases, guides and forums available through the Emaculation website. Like Basilisk the scaling on a modern monitor is good.
However unlike Basilisk II there is an option to throttle performance. It isn't available through the setup GUI, but the preferences file can be edited and a 'cpuclock' parameter added. Defaulting to 100Mhz which is too fast for the sims mentioned, it can be lowered. I've found going as low as 16Mhz, reduces control responsiveness to a good level while maintaining fluid framerates.
In addition it's easy to mount a host folder through the setup GUI allowing files to be transferred to the emulated hard disk easily. In fact Sheepshaver can also mount images created by Qemu m68k making it useful to have around for that reason.
However it's not all good news, F-117 will still experience random lockups, although much less frequent, it still places F-117 in the unplayable category. F/A-18 Hornet 2.0 will run fine until it's time to fly, then lock up as the flight engine initializes.
Qemu m68k
Qemu is a suite of emulation and virtualisation applications but one we are interested in, is Qemu m68k as it supports the Quadra 800 and Mac OS 7. Unfortunately Qemu ppc doesn't support Mac OS 7 at present.
There is no setup application for Win10 so it's command line and batch files to setup and run. Fortunately the guys at the Emaculation website maintain Qemu m68k releases, setup guides and forums. Be warned Qemu is used for serious stuff so it's all too easy to go down a Qemu rabbit hole and get overwhelmed by a daunting array of setup options, so stick to the Emaculation guides and you should be fine.
There is no speed/performance controls but I've found Qemu to emulate at a suitable rate 'out of the box' so sim controls were fine on my pc, but it may depend on your own setup.
There are some downsides along with the Mac setup, it's tricky to get files onto the emulated drive. It's actually easier to mount the Qemu drive image in Sheepshaver to get the files across and then run in Qemu.
Although I haven't got it to crash in F-117 and the cockpit graphics are fine, unfortunately the environmental graphics are pretty messed up right from the start. It's weird to see an airbase cut across your cockpit at a 45 degree angle at 500ft. Hornet 2.0 works without issue, the scaling isn't quite up to Basilisk/Sheepshaver standard but it isn't bad at 1024x768.
Mini vMac
Mini vMac an older emulator but with a Win-64 release available from the project homepage reference on Emaculation website along with guides/forums. There are limited speed controls available. And unlike most of the emulations it supports the Mac specific 512x384 resolution, which is useful for older Mac software.
Unfortunately it does have issues with F-117, which are almost the opposite of Qemu. While the environmental graphics are fine there are graphical issues inside the cockpit and a number of key controls are unresponsive.
MAME (m68k driver)
MAME is the Multiple Arcade Machine Emulator or at least it was some time ago, but it's become far more than that and in the projects own words, it's become 'a multi-purpose emulation framework'. A framework which has grown to encompass Mac emulation. In fact Mame not only emulates the CPU but controllers on the motherboard as well, requiring not just the main Mac rom but roms from other components as well.
When I started writing this article I was prepared to write off MAME as unsuitable due to serious jerky mouse controls that would develop a mind of their own midway through a mission. This seems to be due to the Mac I was emulating, a Mac II ci, a known issue due to the hardware being emulated. However further investigation revealed the Quadra 800 didn't have any of these problems and can run F-117 flawlessly.
Due to the accuracy of emulation the performance initially isn't as smooth as you would like, but MAME has hidden depths and the emulated CPU can be overclocked for better performance. However the performance of the Hornet sims or A-10 Attack still needs to be investigated, my subjective feeling is that it still might struggle with these titles. Controller support is excellent in MAME but again some trial and error configuration is needed.
There's a huge amount that can be configured which can feel a bit daunting at first. Probably the biggest downside is hunting out the roms you need to get the emulated Mac up and running.
The hard disk image is in a chd format, I didn't create this myself but found a suitable Mac 7.6.1 hard disk image for use with MAME. In order to transfer files onto the disk the recommended approach is to place files into a folder and then generate an iso image from the folder, then mount the iso onto the emulated Mac in MAME, which is a bit more involved.
MAME issues a warning about sound not being fully implemented for the some of the emulated Mac machines but I had no issues in F-117 and active development means this may be resolved at some point in the future.
Recommendations
For games compatible with System/Mac OS 7.1 - 7.6 during the m68k/ppc period your first port of call should be sheepshaver. It's fairly easy to setup, the guides are easy to follow and it's simple to transfer files onto the hard disk image and you can throttle performance if things are running too fast or controllers are too sensitive. Make sure to get the latest build or try an experimental one. It may be all you need for a particular game.
If Sheepshaver has issues then give Qemu m68k a try. It's more involved to setup but if you follow the guides it shouldn't be too difficult, and you can use Sheepshaver to mount the Qemu hard disk image to transfer files. Pick one of the latest builds, each release sees bugs fixed and enhancements.
If you have an earlier title which Sheepshaver and/or Qemu has issues with you'll want to try MAME. The accuracy of the hardware emulation means MAME may succeed where others fail. However this accuracy comes with a higher processing overhead so you may want to save MAME for earlier/less demanding sims unless you have a powerhouse of a PC.
Basilisk II and other Mac emulators may be recommended by others but in my opinion they've fallen behind these three when it comes to retro flight sims.
Some final thoughts
When I started looking at Mac emulation for retro flight sims I ran into numerous issues and it was beginning to feel like some of these classic titles would be lost to time. Each sim and emulator had it's issues and difficulties and there didn't seem to be a single all encompassing app that made these sims 'just work'.
However, it's taken a lot of work but it turns out we do have the tools (and more importantly the dedicated volunteers who maintain them) to run these classic sims on modern hardware and these emulators are improving (admittedly some quicker than others) as time goes on.
So on reflection we aren't in such a bad place when it comes to it and these retro classics are still playable, which in my opinion can only be a good thing. It turns out that when it comes to the art of running Mac sims, it's in a pretty decent state.
You can see a quick showcase on my YouTube channel.
Comments