Emulate the Apple ][

Emulate the Apple ][

Play old Apple games on modern hardware.

The old equipment is great, but it's difficult to lug an Apple II (or even a //c) with you when you just want to play old Apple games on your laptop. Fortunately, you have lots of options. While I can't find an Apple II emulator for a cell phone, there are emulators that run under both the Macintosh and Windows platforms and even Windows CE. The best list of emulators I've found is at http://dmoz.org/Computers/Emulators/Apple/Apple_II/, but in practice I tend to stick with a very few emulators. You can also find an old but interesting Apple ][ Emulators Resource Guide FAQ at http://www.faqs.org/faqs/apple2/emulators-faq/part1/.

For all of the emulators, you'll want to download some disk images before getting started. You can find lots of images at ftp://ftp.apple.asimov.net/pub/apple_II/images/. You'll need to download the image (a .DSK file), and probably decompress it. Once you have a .DSK file, you can use it with most emulators. For convenience, I'm going to demonstrate emulators with ftp://ftp.apple.asimov.net/pub/apple_II/images/masters/dos33_with_adt.dsk, a dull but occasionally useful disk.

Many emulators require you to provide your own images of the ROMs from the Apple computer you're emulating. You can create your own images from Apples you have around, though transferring them to a PC or Mac is inconvenient. There are downloadable ROMs available, but their legal status is uncertain.


On Windows, AppleWin is extremely convenient and free. You download it from http://www.tomcharlesworth.pwp.blueyonder.co.uk/, unzip it, and then double-click the AppleWin.exe file. When you first open AppleWin, you'll see the screen shown in Figure.

The AppleWin emulator at startup

The interface is extremely simple. The buttons along the right are the only interface beyond the Apple //e which will appear in the screen at left. The top button (or the F1 key) brings up the simple help file. The Apple logo button (or F2) restarts the emulator, rebooting the system. The next two buttons (or F3 and F4) represent the first and second disk drives. If you click them, you'll have a standard file dialog box to find the disk image you want that disk drive to containor, well, emulate containing. There's a button right below them (or F5), which lets you swap the disks in the two drives conveniently. The next button will switch between a partial window and fullscreen view. For this one, you definitely want to remember the key-strokeF6so you can switch back.

The buttons below that give you access to more advanced options. The magnifying glass (F7) will let you look at the assembly language the Apple is executing when you press it. Click it again to return to the normal screen. The joystick/speaker button (F8) gives you access to configuration. AppleWin lets you adjust the type of computer (][+ or //e), the speed of the processor, the video, the sound (AppleWin emulates the Mockingbird card), serial connections, the speed of the disk drives, and a hard drive. Below the configuration button is a pair of disk activity lights and an indicator for caps lock.

When you select a disk image for drive 1 and click the run button, the emulator will boot the disk. If the boot is successful, you'll see results much like those you'd see on an Apple //e booting a real copy of that disk, as shown in Figure.

The AppleWin emulator after booting the DOS master disk

The emulated Apple is pretty much separate from the rest of your computer, but as a game-playing console, it works very nicely. The only limitation seems to be your ability to find Apple software for it. If you're feeling especially brave, source code is also available for AppleWin.

Mac OS X

Emulators are also available for the Macintosh. A good list, complete with contact information, is available at http://emulation.net/apple2/. As my current primary Mac is running OS X, I tend to do most of my emulation there. I've used and liked the free OSXII, but more recent versions don't run on my OS X 10.2 Mac, and the older version I downloaded won't boot. You'll need to have both an Apple ][ ROM and a Disk ][ controller ROM to use OSXII.

The other emulator I've used on OS X, Virtual ][, has been my main Apple ][ playground for a while. It emulates the Apple ][, ][+, and //e. Its web site at http://www.xs4all.nl/~gp/VirtualII/ plays a cheery "Apple ][ forever" song when you load it, and is worth a visit just for that if you're into that kind of thing. Virtual ][ has been shareware, but now comes in three versions, from free to $49. You can find details on the variations at: http://www.xs4all.nl/~gp/VirtualII/VirtualIIHelp/virtual_II_help.html #EvalVersion.

Like OSXII, you'll need to download an Apple ][, ][+, or //e ROM as part of your installation, but you don't need the Disk ][ controller ROM. When you download Virtual ][, it comes as a disk image, so you can just open and copy the files to wherever you need. Add the ROM image to the directory containing the program, and you're ready to go. When you first boot Virtual ][, you'll see something like Figure. You'll also hear a whirring noise, meant to sound like a Disk ][ waiting for a floppy disk. (The activity lights on the drive pictures also work.)

The Virtual ][ emulator on startup

Virtual ][ offers both menus and buttons for common tasks. To get the system started, you'll need to feed it a disk image. To do so, click on the floppy disk icon in the top row of the four icons at the bottom left. A standard file dialog will come up to let you find the disk image, and you can also specify the slot and drive number to use. The defaults of slot 6 and drive 1 will work fine for the initial boot. If you use the dos33_with_adt.dsk image, you'll hear some noise as the disk image loads and then see a screen similar to the AppleWin screen shown back in Figure.

You can boot any disk image the same way, and can change disks while you're running. Just click the disk drive you want to eject, and then select a new disk. If you want to get adventurously retro, you can even use virtual tape cassettes.

Virtual ][ has a lot of options, many of them exposed in the top line of buttons. You can choose between a color monitor or a monochrome one, and the tint button lets you choose what color phosphors your pseudo-monitor should have. If you're switching among programs and don't feel like using your caps lock key, the Caps button will capitalize everything you type into Virtual ][.

The Setup button and the Configure option of the Machine menu let you get into the computer, changing fundamental parts. Figure shows the options available in this area, including which computer is being emulated, what components are in which slots, the processor speed, the video refresh rate, how much memory is available, and much more.

As you can see, the Virtual ][ comes with plenty of cards, including a Z80 emulator that will let you run CP/M if you're that kind of diehard. You can print to text files if you like, and Virtual ][ will let you mount parts of your hard drive to be accessible to the Apple ][ as well. If you want to run the Apple ][ in fullscreen mode, just hit Cmd-Enter, and Cmd-Enter again to get back.

Going back to the main window in Figure, the Pad button lets you treat a USB controller as a joystick or paddles. The Disks button lets you manage a library of disks. The Freeze button pauses the emulator, so you can halt your game and come back later. (If you close the emulator and have a paid version, you can save state and return later.) The Mon shows a monitor graph of how fast the Apple ][ is running, and the Sound slider lets you set volume. Reset is a soft reset, like hitting the Reset button on a real machine, while Restart is the equivalent of turning the machine off and on.

Modern hardware is fast enough compared to the 1MHz 6502 that you don't have to give up much in using an emulator. Unless you need direct access to real Apple ][ floppy disks or hardware, emulators let you combine the best of the Apple ][ with the best of modern equipment.

Options for the Virtual ][ emulator

If you'd rather emulate a IIgs, you may want to explore KEGS (http://kegs.sourceforge.net/), a free IIgs emulator for Mac OS X, Linux, and Windows, or Bernie ][ the Rescue (http://www.bernie.gs/), a $15 IIgs emulator for the older MacOS. Sweet 16 for Carbon, a version of Bernie built for OS X, is under development.

Simon St.Laurent

 Python   SQL   Java   php   Perl 
 game development   web development   internet   *nix   graphics   hardware 
 telecommunications   C++ 
 Flash   Active Directory   Windows