CFFA Background, Jan 2002:
Every once in a while, I find myself reminiscing about the good
old days of personal computing. The good old days for me were high
school, circa 1981, when the Apple II+ was the computer to have and the
computer I wanted. Unashamedly I begged my mother until she got one for
me. It was not until years later that I found out she had taken a
loan to do so. Bless her heart! It was a good investment, if I do
say so myself.
Sometime in October, 2001 I found myself in one of those moods and
pulled out my Apple II+ to play with. It had been many years since I
used it last. I found a note taped to the computer, which stated that it
didn't work and that I believed there was a problem with the language
card. The computer would boot, most of the time, but would crash,
breaking into monitor at seemingly random locations. Sometimes it
would just hang. This was disheartening, and I decided that I was
going to fix it no matter what, even if it meant buying another one,
which wouldn't be much of a fix.
I located an Apple II diagnostic disk, that was used by Apple
service centers, and it immediately found the root of the problem. I
had a bad D8 ROM chip. I was able to replace this chip with a
standard 2716 EPROM and a simple converter socket. To save money, I
am sure, Apple used 9316B ROM chips instead of the industry
standard pinout chips. This means that you cannot just plug a 2716
EPROM into an Apple ROM socket, but must fashion a converter
socket first. See the section called "ROM MEMORY" in the Apple II
Reference Manual, pg. 94 for 9316B pinouts.
After borrowing someone else's Apple II+ I was able to copy his D8
ROM and copy its data into a 2716. I put the EPROM into my Apple II+
presto, it was again working fine! As it turned out the language
card was never the source of the problem, it worked fine.
Great, I had my Apple working again, so it was time to reminisce
about the good old days. I wanted to show my wife Sherry some of the
programs my friends and I had written so many years ago. She had saved
one of her Apple diskettes from her high schools days as an Apple
II hacker. Things were going along great when one of the programs I
had written, tried to write a file to the diskette, and TRASHED it.
Because of an unfortunate mix up years earlier, I had thrown away
most of my Apple II diskettes by accident. It was not until recently
that I had found a friend who had copied about 10 of them to use with
an Apple II+ he had found in the garbage. Thanks Mike!
So it was one of these very precious diskettes that Mike had saved
for me, that I had just scrambled while trying to check out one of
my old programs. I soon realized that my floppy drive, made by
RANA, was scrambling data on the diskettes every time it wrote to
them. I don't know what is wrong with it yet, and I switched to
another set of drives from the same Apple II+ I had copied the D8
I spent the next three days trying to recover that scrambled
diskette. After download several Apple II emulators and disk transfer
utilities, I was able to make a disk with the "Bag of Tricks" utilities
by Quality Software. These are the utilities that were describe
in the Book Beneath Apple DOS by Don Worth and Pieter Lechner. Since
the damage to the diskette's data was limited to the catalog track:$11,
I was able to recover the disk. The reason it took so long was
mainly in finding all of the necessary tools to get software downloads
off the Internet onto my PC and then onto an Apple II diskette.
It was after this episode that I realized that the reliability of
diskettes might become a serious impediment to future reminiscing
sessions years down the road. The first thing I did was create
image files for every diskette that I could and store on my PC. I
made copies of the disks that could not be read by the ADT transfer
software. These were mainly games. I realized that I could simply
use an Apple emulator for my retreats into computer history, but I
feel it is just not the same, and if I ever have children*, I would
want them to see and touch one of the very first "real" personal
computers, not some simulation of an Apple in a window on a Pentium
VIII running Windows 2012. It would be meaningless. So I decided I wanted a
hard drive for my Apple, and started looking for one the old SCSI
solutions for the Apple II. They did exist, but were pretty rare, and
even if I could find one I figured it would also be unreliable. In my
search I stumbled on several web pages where someone had interfaced an
IDE hard drive with an Apple II and other old 8 bit machines. Struck by
the relative simplicity of the project I figured it would take two
weekends to build one. The project I used as a model most closely was
Stéphane Guillard - Apple II IDE/ATA interface project . His
project was unique in that he wrote code for the Apple II that
understands the FAT16 format, or at least is headed in that direction.
The problems started very soon. I was not using the LSI chips that
Stéphane had used, but instead an Altera EPM7064S series CPLD. I
discovered several things about these chips that proved to be a
problem. Mainly the problem was my lack of experience with this CPLD. Between
hardware and software, my two weekends had turned into two months.
During that time though, several good changes to the project's
design resulted. The main change being the use of CompactFlash cards
instead from IDE hard drives.
Realizing that it may be some time before Stéphane was able
to integrate his OSS code into either ProDOS or DOS 3.3, I decided to
abandon building a duplicate of his project and set off in another
direction. I wanted only ProDOS support. ProDOS is the DOS that Apple
released around the time of the introduction of the Apple IIe. Then
after the release of the 16 bit Apple IIgs, they renamed the 8 bit
version of ProDOS to ProDOS 8 to differentiate it from the new 16
bit version. Because ProDOS 8 only supports two 32 Mbytes drives
per device, I decided that an IDE hard drive would be a waste, in
many ways. Instead I changed the project to support CompactFlash
cards in "true IDE" mode. Although an IDE hard drive would still work.
I ask a friend and ProDOS hacker from way back, Chris Schumann, to
help me develop a ProDOS 8 driver that would work with ATA devices,
specifically the SanDisk 64 Meg CompactFlash Memory Card. We spent
several days coding with marginally working hardware and roughed
out the ProDOS driver, complete with debug code which would output
via an Apple Super Serial card back to my PC. He had written ProDOS
drivers in the past that allowed a file on a PC to appear as a hard
drive on the Apple linked via a RS232 serial connection.
After much struggling with a glitch in my Apple II+ that made my
hardware work unreliably, and nearly ready to give up, I tried the card
in the Apple IIe platinum I purchased via Ebay, and it worked
great. Special Thanks to Jeff Pagel for his help and the loan of test
equipment. "...it's probably a timing issue..."
Let the reminiscing begin...
Now if I could only get RobotWar to run off a ProDOS disk??? hmm..
Update: I have found that DOS.MASTER by the late Glen Bredon,
allows me to run RobotWar and other DOS3.3 software from any ProDOS disk!
* Update: My son Nathan Thomas Dreher was born August 24th, 2002.
* Update: My son Michael James Dreher was born February 16th, 2005.