Home Links

CFFA for Apple II

  • Home
  • Background
  • Project Specifications
  • CPLD Logic
  • Prototype
  • Downloads
  • Reference Materials
  • Project Status History
  • Shop
  • Order Status
  • CF Compatibility List
  • F.A.Q.
  • CFFA Forum
  • Apple Web Ring
CFFA Project Background

CFFA Project Background

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+ and 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. Ouch!

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 ROM from.

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.

Printer Friendly Version R & D Automation © 2003 - 2024