pikhq's site 'n things

Apple II without tape I/O? Whatever shall I do?

There’s a wonderful resource floating around that’s wonderful for Apple II users who just want to load things onto their system, the Apple Game Server. The README describes how you use it, but the basic idea is you just plug the headphone jack of a modern system into your Apple II, hit LOAD, and wait a little. They’ve got a lot of software available, and you could have a lot of fun exploring.

Unfortunately, there is one limitation that impacts me: you need to have the tape I/O ports on your Apple II! Every single model of the original Apple II could do this… except for the IIc and IIc+. And my poor IIc is feeling left out. Sure, I can use a Smartport hard drive to boot up Total Replay, and I can use my Floppy Emu, and I can even use the serial cable I have, some floppy disks, and ADT Pro to write a disk image to a real floppy drive. I’ve got plenty of choices… But what if I want to run the exact games off the Apple Game Server?

Well, as it turns out, I’m not completely left out. There’s ways I can make all of these work and get them into my lovely IIc and get them to boot. Some of them aren’t even 100% silly, shockingly enough!

Type into monitor over serial

A keen eye may have noticed a .mon file associated with all of the games on the Game Server. If you download one of these, it resembles the language for the Woz monitor in the Apple II’s firmware. That’s no mere resemblance, they can be typed in just fine. If you were dedicated enough, you could in fact treat these as type-in programs as though they came from a magazine.

I don’t have that much dedication, though. I’d be much happier letting a computer do that for me. Thankfully, I can. I’ll just need a few parts first: a USB serial adapter, and an Apple IIc serial adapter. The IIc serial adapter might be hard to find; you can make your own by referencing documentation, but a much easier way is to purchase the cable from RetroFloppy, who simply sells them premade.

With the serial configuration of your choice, we can have the Apple II just start accepting input from the serial port, and get all the typing done for us. In the following I’ll be describing how I’ve done it, but the modern computer steps will vary based on your OS and preferred terminal emulator. The Apple II side, though, should be the same as it ever was, and I’ll only be replicating and pulling out details from the old documentation for the Super Serial Card from the 1980s.

Hardware prereqs

Software Prereqs

Process

And now, we are gaming! Check out what it looks like on my IIc:

A screenshot of Xevious, which shows a small ship on a green background

Wasn’t this worth it? … No? Well, okay, I have a couple faster ways, too.

Fancy ROMs and xmodem

This might have seemed slow and inconvenient. And of course, it is. But, incredibly enough, there is a faster way! .. At least, if you have an Apple IIc, and have already installed an upgraded ROM in the machine. ROM4x is an enhanced ROM for the Apple IIc, and one of its many features re-adds the tape loading functions in BASIC and the monitor. It does this with XModem over the serial port, at 115kbps. This actually works well, but is a little non-obvious. In fact, I haven’t seen any evidence anywhere on the Internet of this feature being used.

As before, I’m going to just be describing how I did it. You could use your own terminal emulator of choice, your own OS, etc. for much of this. Additionally, I am not going to describe how to install ROM4x on your machine. Perhaps I will in a future post, but it’s a bit of a tangent from what I’m trying to do. I will note briefly, however, that there is no difference between installing ROM4x and any other ROM upgrade on a IIc – flashing an EEPROM and installing it, and possibly cutting the jumper to enable a larger ROM, works exactly the same as with any other upgrade.

So without further ado, let’s go ahead, and try out a feature in an after-market ROM that hardly anyone has, for perhaps the first time!

Hardware prereqs

Software Prereqs

Process

First, let’s get the actual binaries to upload. I could write up some process to turn those .mon files into binary files to load. Fortunately, all of them have the underlying binaries too, ready for me to load. Just strip the .mon suffix, and we can grab them. Unfortunately, these files aren’t in the format ROM4x wants. The file format it wants has a 4-byte header. This header consists of:

This is not too complex, so let’s convert them:

I am confident this could be automated into a fancy script, but I have not as yet bothered.

Now, let’s load it up.

After a few seconds, we are gaming:

The first screen of Apple Invaders, describing the controls and saying “Press Space to start”

This may have taken a little bit to set up, but after the setup, this sure was quick!

Oh, what’s that, you want something even easier? Something you can use on an emulator, even? Well, okay, I have something for that too.

… Just use a floppy disk, silly

The binary file we grabbed previously can also be put into a floppy disk image, and then even written onto a floppy, if you’re a more sensible sort. To do this, I used AppleCommander, an Apple II disk image utility, and a copy of DOS 3.3. As a bonus, this should work well on any Apple II emulator, and not just real hardware.

Hardware prereqs

Software Prereqs

Process

In the following, I’ll be using Galaxian, just for illustrative purposes:

… And tada, galaxian.do is a bootable floppy disk image with the game on it. We can load it right in an emulator, and we will see:

The splash screen of Atarisoft Galaxian on the Apple II, with a crack screen from The Apple Addict

Was any of this worth it?

No, probably not! Most all of these exist in a wide variety of more convenient forms, such as Total Replay, or disk images you can find on the Internet Archive, or other Apple II archives. But we got to have a good time doing things with computers in a roundabout way, and isn’t that what it’s all about?