About four and a half years ago, Paul Weinstein wrote up a blog post on setting up a serial console with an Apple IIc. I finally got around to duplicating his efforts this weekend after I got sniped on an eBay auction for a Lantronix serial concentrator.
I’m not going to duplicate Paul’s excellent write-up here, but I will fill in a few areas that I stumbled over.
In order to do this, you’ll need:
- An Apple II with a serial port. The IIc has two serial ports built-in.
- At least 3 floppy disks.
- A serial cable to connect your Apple II to some other computer. I bought my cable and a pack of blank disks from the excellent fellow over at RetroFloppy. You could also make a cable, but in the case of the IIc, I didn’t have any DIN-5 connectors, so it was easier just to buy someone else’s properly-made cable.
- The Apple Disk Transfer host program and disk image to move to the Apple II. You’ll dump a copy of the Apple II side software onto a floppy disk.
- The Modem.MGR program disk images, which are available as a .zip file download here. You’ll need two floppy disks to write these onto; one is a configuration tool for the other disk, which contains the application.
I had a lot of issues with higher baud rates; I ended up settling on 9600 baud for most things.
The other gotcha I ran into was forgetting to format floppies with ADT prior to moving the disk image over. It sounds semi-obvious, but two things got in my way. One is that the Apple II reports “I/O error” when reading an unformatted floppy; the scope of what the Apple II considers an I/O error and what I consider an I/O error are different. Also, when this happens, the Apple II disk drive makes a horrible noise that “sounds like” a serious I/O error. So, when ADT starts up on the Apple II, be sure to configure the settings you want (baud rate) and format yourself some floppies. Both of these are in the “splash screen” when the program launches.
I pushed all the Apple II images over with the ADT Pro program on my Mac and a Keyspan serial adapter. Paul’s post mentions using A2V2 that comes with Virtual ][. I could never get A2V2 to work but I was successful with ADT.
I am using the Apple II with my new network management box. I currently have an old Athlon with 1gb of RAM doing this today, and I want to get rid of both the physical and electrical footprint of that machine. One of my previous companies I started was building network security hardware and we built prototypes using boards from PCEngines, among others. The new system I am using for my network manager is a newer board from PCEngines called the Alix2d13. It has 256 MB of RAM, a header for a second serial port (which I plan to add for X10 control), and I’ve added a 16 GB CF card to mine. I’m running Ubuntu 10 on it, which is a happy change from the bad old days of setting up an environment (we were using OpenWRT buildroot… it’s not bad, but it’s a pain when using uclibc, because you’ll need a cross compile environment. Having the space and RAM for the full glibc, python, etc. is wonderful). But this is a topic for another post!
There are more pictures here.
By the way, though I knew how to get around them, there are at least two other small things that might frustrate folks trying to do this themselves. One was that I had to manually start the getty on the Linux machine (something like /sbin/getty -8 9600 -L ttyS0
gets you there). However, it seems that the getty is properly restarting from init scripts on reboot, so I’m not sure why the getty had gone away the first time. The other is that a TERM=linux in your environment with Modem.MGR will mess up a lot of paging apps, such as top or lynx. You can fix this with export TERM=vt100
or similar.