Skip to content

Emulation Tips and Tricks

Charlotte Koch edited this page Jul 2, 2020 · 4 revisions

If you have an old Windows machine or Macintosh computer that can still run and handle the old Purple Moon games, that's great! But most of us aren't so lucky, and we depend on an emulated environment in order to verify how the games "should" work.

VirtualBox

Notes on Setting up VirtualBox

Set up a Windows XP VM. Don't even think about Windows 95 or Windows 98, even though the Rockett games and the Secret Paths games work there in principle. That's because VirtualBox has infinitely better support for Windows XP in general.

Skip this section if you don't care to hear the gory details.

  • All my current computers do not contain an internal CD-ROM drive, so I need to use a USB-powered external one. But Windows 95 and Windows 98 barely understand what an external CD-ROM drive even is, let alone a USB one. Furtherore, getting the drivers properly installed in the guest and/or the USB passthrough working correctly on the host is a complete nightmare.

  • The other difficulty relates to displays. The games require a display resolution of (at least) 640x480 and >= 256 colors. It turns out this is super difficult to get working in an emulated Windows 95/98! That's because the emulated display device provided by VirtualBox is too new, containing all sorts of high-tech features that simply did not exist in 1998. There is a project or two on the internet which try to give 95 and 98 new drivers for newer displays (I should link them here at some point), but, meh.

  • Sound doesn't work out of the (Virtual) box, either. That's because Windows 95/98 don't natively come with a driver for the emulated sound card provided by VirtualBox. You gotta hunt around for Realtek's "AC'97" driver and you also have to futz with lots of settings on the host side, too.

  • Oh yeah, you have to come up with a way to transfer files from your host to the guest even though you probably don't have such things as proper networking set up. I ended up creating ISO disk images on my Mac (hdiutil makehybrid [options...])and "inserting" them into the guest's CD-ROM drive. Blehhhh

TL;DR stick to Windows XP, please. It Just Works. I seriously went down that 95/98 rabbit hole already, it was horrible, and it still doesn't work reliably.

Compatibility mode required

The downside to using Windows XP instead of 95 or 98 is that the games will refuse to run unless they are executed in an older compatibility mode. Just right-click on the main executable, navigate to Properties, and then turn on Windows 98 compatibility. I highly recommend forcing the resolution to be 640x480 -- that's because the games aren't capable of rescaling themselves at all, so having a display that is exactly 640x480 is nice. 256 colors is also helpful.

  • You might have to apply this trick to the installer program (Setup.exe), too.

Take a proper screenshot

This command dumps a pixel-perfect PNG image of the emulated display. It's more reliable than scaling the emulated display up, because that can engage fancy scaling algorithms and make things "pretty" (i.e., blurry).

$ VBoxManage controlvm <VM name or UUID> screenshotpng </path/to/somewhere>.png

I used this command extensively while decoding the XPK format for the first time.