• Please review our updated Terms and Rules here

48 Hours of Apple IIe Hacking

glitch

Veteran Member
Joined
Feb 1, 2010
Messages
5,051
Location
Central VA
For the last 48 hours I've been hacking away at my Apple IIe. I needed to test some CP/M 8080 assembly code on a different machine, so I decided it was time to get the machine up and running, and find out if the Microsoft SoftCard clone I'd bought actually worked:

DSC02263.jpg

I picked the card up months ago from another forum member in untested condition. At first, the card locked the system up when I powered on...I assume this was due to dirty connectors, as I polished the card edge with fine Scotch-Brite and wiped it down with alcohol and the problem went away. I was able to find several versions of CP/M in the Asimov archive that would boot with the card; however, the DATASOFT 63K version seemed to be the quickest, and has the obvious advantage of a larger TPA.

Aside from getting the card working, this was also the first time I'd really done anything with the Apple IIe that it was plugged in to. I picked the machine up off eBay cheaply due to low shipping costs: it came with everything but the case top and the 6 key!

DSC02266.jpg

I got the IIe, a DuoDisk and the Apple green phosphor composite monitor, along with a load of boards. The set included two Super Serial cards, a 64K 80-column card, the DuoDisk controller board, a Grappler+ printer board, and some sort of Analog/Digital interface board with an external breakout box. After unpacking, I removed all of the cards except for the 80-column card and DuoDisk controller to confirm it would boot into BASIC. After that, a Super Serial Card was re-jumpered and installed so that I could bootstrap ADT Pro over the serial port. Once that was working, I added the Z80 card:

DSC02262.jpg

The D-SUB connectors for the disk controller and SSC were bolted to the back of the case.

ADT Pro had no problem working with Apple CP/M floppy images, so through trial-and-error I ended up with the DATASOFT 63K CP/M distribution. The only problem was there didn't seem to be a way to move files onto CP/M readable floppies, since I had no terminal software and CiderPress et al can't edit CP/M floppy images. I gave Bill Buckels' guide for copying files from Apple DOS 3.3 formatted floppies a go:

http://www.aztecmuseum.ca/applecpm/AztecCPMToApple.pdf

DSC02268.JPG

This sort of worked. My end goal was to get Kermit-80 transferred to the IIe, since overlays for the Super Serial Card exist for Kermit-80. MLOAD.HEX and the overlay transferred fine, but the Microsoft-supplied program for moving files from DOS 3.3 choked on the much larger Kermit generic binary. Even under the A2 Oasis emulator (which emulates a Z80 card) I couldn't get it working. It was around 2 AM and I was about ready to give up when I accidentally stumbled across an Apple CP/M disk image on some-or-the-other server containing Modem740 with overlays for the Apple IIe!

Of course, this didn't work immediately. Even after installing the overlay with the provided Modem7 linker, Modem7 crashed after trying to declare a baud rate for the Super Serial Card. I finally decided to take a look at the overlay file using the TYPE command, and found the problem...there were several equates for three different types of Z80 cards. The Microsoft SoftCard, naturally, wasn't the one that was chosen.

Being as how I couldn't edit CP/M disk images, I had no way of getting a new overlay over (too large for the DOS 3.3 -> CP/M utility again). That meant editing the current overlay. Except I didn't have an editor either...except for ED. Anyone who's been forced to use CP/M's ED knows how painful that is!

By this time, it's around 3:30 AM, and I've pulled out the CP/M 2.2 manual that came with the Ohio Scientific Challenger III. There's a fairly thick chapter on getting started with and using ED. After discovering that ED didn't load files into its buffer on default and that I needed to do that (200A to add 200 source file lines!) I was able to display the overlay source and figure out which lines needed edited. Of course with ED this doesn't mean you just select the line and edit it...I found it easier to insert a line below the ones that needed changed and then delete the old lines. After a while I managed to get the overlay looking like it should, and finally got to leave the horror that is ED. The overlay assembled and installed just fine! Modem7 now runs, and can transfer files to my Windows 2000 machine over XMODEM! But it's 4 AM and time for bed.

DSC02269.JPG

With Modem7 working, I was now able to transfer the Kermit-80 files I wanted to a new floppy and link the generic Kermit HEX file with the overlay through MLOAD. After a few minutes of linking, I got a working Kermit binary!

So the Assembly code I wanted to test finally got copied over to the IIe, assembled, and executed just fine. Quite a lot of work to get CP/M up and running, but it was fun! And I'll definitely be uploading an image of the floppy with Kermit-80 for the Apple II somewhere!
 
Last edited:
Ah, to be young again and able to make it until 4am hacking ... :)

A few nights ago I had a bug in an FTP server that was leading to seemingly random crashes when more than one client was in use. It drove me so nuts that I stayed up until 1am, tried to sleep, and decided that I could not sleep until the demon was gone from the code. Luckily for me that only lasted until 2am.

Congratulations on getting it running. Nothing beats the 'It works!' moment.
 
Back
Top