For those who don't know, the Disk II Controller Card is considered by some to be the invention that best demonstrates Woz's genius.
It's also a great early example of the massive win you can get by replacing hardware with software (and "software" -- in the form of a state transition table encoded in a small ROM).
It's also one of the reasons there were so many fascinating and weird copy protections for Apple II software: since so much of the behavior was in software on the computer, it was malleable. (Since it uses the CPU for tight timing loops, the Apple II couldn't really do much else while using the disk.) The write-ups by 4am on IA are fun reading if you're into this kind of thing: https://archive.org/details/apple_ii_library_4am
There are some fun projects to record disks at the level of magnetic flux transitions. I'm mostly familiar with https://applesaucefdc.com by the amazing John Keoni Morris, which came with a new file format too, and some lovely UI software.
As zellyn said, Disk II is pure genius writ large.
It's flabbergasting how good Woz's designs were. Almost on a whim, he with the Disk II did something no one anywhere in Silicon Valley—anywhere in the world—was doing. Forget about IBM, HP, Shugart, Tandon. Just within Commodore and Tandy, Apple's direct 1977 competitors, there were abundant human and engineering resources to come up with a fast, inexpensive, and reliable floppy drive and controller; Chuck Peddle at Commodore was certainly no average engineer. And yet, Commodore was still unable to do this in 1984.
Whether one believes in the reality of the existence of the "10X developer", it's hard not to see what Woz did between 1976 and 1978—Integer BASIC, Apple II color graphics, and Disk II—as proof that such a being can exist, even if (as I have written elsewhere) that brilliance straddled the line between optimized and overoptimized. <https://news.ycombinator.com/item?id=41685888>
I mean, in 1978 Tandy used standard drives and a disk controller IC, and still managed to sell a whole 16K TRS-80 system with disk drive for the same price (TRS-80 Level II 16K + Expansion Interface + disk drive = $1786 [0]) as Apple (Apple II + Disk II + drive = $1790 [1]). Plus, the TRS-80 came with a video monitor wheras Apple did not. But the Disk II could hold more data per disk, and I'm sure Apple's margins were better.
> I mean, in 1978 Tandy used standard drives and a disk controller IC, and still managed to sell a whole 16K TRS-80 system with disk drive for the same price
The Tandy products were utter garbage.
Controller = Unreliable. Expansion Interface required for the controller = So unreliable that a robust third-party alternative market developed, including Steve Ciarcia's version. TRSDOS = So unreliable that Tandy has the dubious distinction of being the 8-bit system with the most third-party operating systems.
Reliability greatly improved from the Model III onward, but by then it was too late: Tandy had a) destroyed its reputation (the "Trash-80" nickname did not come out of nowhere) and b) surrendered its colossal market lead to the tiny startup founded by two California college dropouts.
If you don't want to believe me that Apple's drives worked and Tandy's didn't, consider why VisiCalc launched on the Apple II in 1979 despite Bricklin and Frankston intending to do so on the Model I,[1] because of the latter's far greater market share.
[1] Not only that, Dan Fylstra (founder of VisiCalc publisher Personal Software) was among the first people in the world to own the Commodore PET and the Model I, having reviewed both for BYTE
If this kind of stuff interests you, you might want to check into the upcoming “Designed in California” podcast about Apple’s history (still on kickstarter but I think the campaign is over): http://designed.fm. I’ve listened to a few of their preview episodes already, here’s the first one: https://www.youtube.com/watch?v=OsOVyuc1v_w&t=4s
The great thing about the whole Apple ][ system was that it was sophisticated enough to actually do stuff but simple enough that a single person could understand it (largely because it was mostly the work of a single person). To this day, my mental model of how a computer works is the Apple ][.
Great read. The section about copy protection and being able to step the head motor half tracks and do things like store tracks at half positions, or even store 180 degrees at one position and another for the rest, was very interesting. The disk copiers at the time always seemed pretty sophisticated, but I didn't realize they had to deal with things like this. I bet those were fun to write (and be part of the arms race).
Lots of people are commenting on how unique it was to have a software based disk interface instead of stand alone hardware. And in a sense that is true, but also not.
Around that time there were various iterations of floppy controllers, each having a small microprocessor at their core. Just before the Apple Disk II, NEC released the uPD765 which is contains everything needed in one chip, but actually it's mostly just a small microprocessor taking a very similar approach under the hood in terms of track decoding. In fact the uPD in the part name is a giveaway that the implementation is a microprocessor instead of logic gates (and the command and reply interface). That operates a lot more like the Commodore drive, except it has a parallel interface with the host processor instead of a serial interface.
Sadly, I don't know anybody who's attempted to extract the ROM out of that microprocessor and reverse engineer it, but I'd definitely be fascinated to see that for faithful emulation purposes (at least for my emulator, I just implemented the interface as described in the datasheet).
I think the point here is that the Disk II controller did _not_ have a microprocessor or microcontroller. Rather, it was driven by software that ran on the system CPU, requiring minimal additional hardware
13 comments
[ 1.7 ms ] story [ 34.6 ms ] threadIt's also a great early example of the massive win you can get by replacing hardware with software (and "software" -- in the form of a state transition table encoded in a small ROM).
It's also one of the reasons there were so many fascinating and weird copy protections for Apple II software: since so much of the behavior was in software on the computer, it was malleable. (Since it uses the CPU for tight timing loops, the Apple II couldn't really do much else while using the disk.) The write-ups by 4am on IA are fun reading if you're into this kind of thing: https://archive.org/details/apple_ii_library_4am
There are some fun projects to record disks at the level of magnetic flux transitions. I'm mostly familiar with https://applesaucefdc.com by the amazing John Keoni Morris, which came with a new file format too, and some lovely UI software.
It's flabbergasting how good Woz's designs were. Almost on a whim, he with the Disk II did something no one anywhere in Silicon Valley—anywhere in the world—was doing. Forget about IBM, HP, Shugart, Tandon. Just within Commodore and Tandy, Apple's direct 1977 competitors, there were abundant human and engineering resources to come up with a fast, inexpensive, and reliable floppy drive and controller; Chuck Peddle at Commodore was certainly no average engineer. And yet, Commodore was still unable to do this in 1984.
Whether one believes in the reality of the existence of the "10X developer", it's hard not to see what Woz did between 1976 and 1978—Integer BASIC, Apple II color graphics, and Disk II—as proof that such a being can exist, even if (as I have written elsewhere) that brilliance straddled the line between optimized and overoptimized. <https://news.ycombinator.com/item?id=41685888>
0 - https://ia803203.us.archive.org/9/items/Radio_Shack_TRS-80_S...
1 - http://www.apple-iigs.info/doc/fichiers/Apple%20Price%20List...
The Tandy products were utter garbage.
Controller = Unreliable. Expansion Interface required for the controller = So unreliable that a robust third-party alternative market developed, including Steve Ciarcia's version. TRSDOS = So unreliable that Tandy has the dubious distinction of being the 8-bit system with the most third-party operating systems.
Reliability greatly improved from the Model III onward, but by then it was too late: Tandy had a) destroyed its reputation (the "Trash-80" nickname did not come out of nowhere) and b) surrendered its colossal market lead to the tiny startup founded by two California college dropouts.
More at <https://news.ycombinator.com/item?id=44352856>
[1] Not only that, Dan Fylstra (founder of VisiCalc publisher Personal Software) was among the first people in the world to own the Commodore PET and the Model I, having reviewed both for BYTE
https://josephoswald.nfshost.com/circuit-sim/woz-machine-hw-...
Also Magic-1, another homebrew CPU, also made out of 74LS TTL chips from the 1970s.
Fantastic trend, really.
https://www.bigmessowires.com/bmow1/
https://homebrewcpu.com
(Of course it's a lot easier [but still quite fun] to make your own homebrew CPU/system on an FPGA.)
Around that time there were various iterations of floppy controllers, each having a small microprocessor at their core. Just before the Apple Disk II, NEC released the uPD765 which is contains everything needed in one chip, but actually it's mostly just a small microprocessor taking a very similar approach under the hood in terms of track decoding. In fact the uPD in the part name is a giveaway that the implementation is a microprocessor instead of logic gates (and the command and reply interface). That operates a lot more like the Commodore drive, except it has a parallel interface with the host processor instead of a serial interface.
Sadly, I don't know anybody who's attempted to extract the ROM out of that microprocessor and reverse engineer it, but I'd definitely be fascinated to see that for faithful emulation purposes (at least for my emulator, I just implemented the interface as described in the datasheet).