The Apple Disk II Controller Card (2021)
3 days ago
- #Disk II Controller
- #Floppy Disk Technology
- #Apple II
- The Disk II controller is a dumb hardware design that offloads low-level disk operations to software, unlike other controllers that provide a standard API.
- Steve Wozniak designed the Disk II controller with minimal hardware, using only eight chips and a software-driven approach, enabling cost-effective floppy disk support for the Apple II.
- Key challenges solved include byte framing via a state machine and sync bytes, byte encoding using GCR schemes like 6-and-2, sectoring with software signatures like D5 AA 96, and track locating through stepper motor control.
- The controller's bootstrap code is a 256-byte ROM that performs tasks like finding track 0, reading sectors, and decoding data, all with minimal error handling.
- Copy-protection schemes often exploited the flexibility of the Disk II controller, using non-standard track stepping and encoding methods to prevent duplication.
- The design allowed for evolution, such as transitioning from 13-sector to 16-sector disks via software updates, without hardware changes.
- Wozniak's innovation stemmed from limited resources and lack of prior experience, leading to a highly efficient and influential piece of technology.