I'm not sure I can lay hands on the original Apple DOS manual right away, but I
do have a digital simulator that's capable of simulating a PROM, though I've
never used that feature, and perhaps I can whip up a simulation that will
properly illustrate how the prom map and external hardware interact with a data
stream. Presumably if I can get the matter to work on writes, I can then
reverse the process.
Having once done that, I should be able to regenerate the state machine in a PAL
or other device, including, perahaps, some 'C' code to interpret the modulation
into raw data under PC control. A detailed simulation is a pretty good way to
examine the behavior of a circuit, and certainly easier than doing the same
thing with a 'scope and/or logic analyzer.
At the time that WOZ designed this piece of hardware, registered proms were much
less costly than equivalent PALs, and PALs had, associated with them, a
considerable failure rate in testing. Apple did, after all, expect to inspect
their parts as they came in and before they went out.
Dick
----- Original Message -----
From: "Tony Duell" <ard(a)p850ug1.demon.co.uk>
To: <classiccmp(a)classiccmp.org>
Sent: Wednesday, September 05, 2001 3:48 PM
Subject: Re: Apple ][ disk controller state machine
Until I get my hands on a copy of the venerable "Beneath Apple Dos"
is there anyone who can point me to an online resource describing the
Apple ][ disk controller P6 ROM state machine? The exact uses
for the Q6 and Q7 switches ($C0EC-$C0EF)? Or would be willing to
summarize from the mighty tome for me?
I've just pulled out my copy of 'Beneath Apple DOS', and the information
you need doesn't seem to be in there. There's very little about the disk
hardware at all -- it assumes you'll at least use the standard routines
to read/write bytes on the disk.
From the schematics in the Apple DOS manual, it appears that Q7 is
inverted and turned into the write gate/ line to the disk drive. So
presumanly Q7 is a write enable input (it does also go to the state
machine PROM and I guess it sets up the state machine for writing).
Q6 only goes to the state machine, so I have no idea what it's for (I've
not analysed the state machine -- yet!)
-tony