Added ATA/ATAPI article - dramatic story as always

This commit is contained in:
Ilia Sharin 2026-06-02 23:48:29 -04:00
parent b915524667
commit aa72007e48
10 changed files with 1056 additions and 0 deletions

View file

@ -384,3 +384,6 @@ BOOL is_cd32(void)
- [AGA Chipset Internals](chipset_aga.md) — Alice and Lisa (shared with CD32)
- [Memory Types](../common/memory_types.md) — CD32 memory configuration
- [Address Space](../common/address_space.md) — CD32 address map with Akiko region
- [scsi.device](../../10_devices/scsi.md) — AmigaOS device driver API shared with CDTV SCSI and IDE hard drives
- [ATA/ATAPI Protocol](../../10_devices/atapi.md) — IDE/ATAPI wire protocol (CD32 uses Akiko, not ATAPI, but SX-1/SX-32 IDE uses ATA)
- [CD-ROM Filesystems](../../07_dos/cdfs.md) — ISO 9660, Rock Ridge, Joliet, handler comparison

View file

@ -861,6 +861,7 @@ For 68040/060 systems:
| [Gary (OCS)](../ocs_a500/gary_system_controller.md) | Detailed address decode logic and bus timeout |
| [Fat Gary (ECS)](../ecs_a600_a3000/gary_system_controller.md) | 32-bit decode, SCSI, Zorro III glue |
| [cia_chips.md](cia_chips.md) | CIA register semantics, timer programming |
| [ATA/ATAPI Protocol](../../10_devices/atapi.md) | IDE register access at `$DA0000` (Gayle), task file operations, PIO transfer mechanics |
### Primary Sources

View file

@ -218,3 +218,4 @@ The A600 uses `scsi.device` from Kickstart ROM. The A1200 uses `ata.device` (als
- [Gary — A3000 System Controller](../ecs_a600_a3000/gary_system_controller.md) — A3000 bus controller (no IDE)
- [CIA Chips](cia_chips.md) — Gayle routes interrupts through CIA-A
- [Memory Types](memory_types.md) — IDE storage as expansion path
- [ATA/ATAPI Protocol](../../10_devices/atapi.md) — ATA task file registers, ATAPI packet commands, driver ecosystem, CompactFlash

View file

@ -575,3 +575,4 @@ No. The FPU chip select is hard-wired to decode $E80000$EFFFFF. There is no G
- [CPU 030/040](../aga_a1200_a4000/cpu_030_040.md) — Accelerators that must interoperate with Gary's bus arbitration
- [SCSI Device](../../10_devices/scsi.md) — Software interface to the SCSI hardware Gary enables
- [Bus Architecture](../common/bus_architecture.md) — Bus hierarchy, register access patterns, accelerator bridge, cache coherency
- [ATA/ATAPI Protocol](../../10_devices/atapi.md) — ATA wire protocol for IDE drives; Gayle's successor role to Gary's SCSI integration

View file

@ -281,3 +281,6 @@ The CDTV runs standard AmigaOS 1.3 software from CD or external floppy. The Exte
- [Memory Types](../common/memory_types.md) — CDTV memory configuration
- [Address Space](../common/address_space.md) — CDTV address map with Extended ROM and NVRAM regions
- [CIA Chips](../common/cia_chips.md) — CIA A/B (shared across all models)
- [scsi.device](../../10_devices/scsi.md) — AmigaOS device driver API used by CDTV's DMAC/WD33C93 SCSI controller
- [ATA/ATAPI Protocol](../../10_devices/atapi.md) — ATA/ATAPI wire protocol (CDTV uses SCSI, not ATAPI, but shares the SCSI command vocabulary via ATAPI tunneling)
- [CD-ROM Filesystems](../../07_dos/cdfs.md) — ISO 9660, Rock Ridge, Joliet, CDTV CD filesystem internals

View file

@ -883,3 +883,4 @@ No — each mount entry (`CD0:`, `CD1:`, etc.) uses one handler. You can have di
- [Locks & Examine](locks_examine.md) — lock semantics used by CDFS handlers for directory traversal
- [File I/O](file_io.md) — Open/Read/Write/Seek used by applications to access CD-ROM files
- [DOS Boot](../02_boot_sequence/dos_boot.md) — boot device selection, BootPri, filesystem loading from RDB
- [ATA/ATAPI Protocol](../10_devices/atapi.md) — ATAPI packet commands used by CD-ROM drives, SFF-8020i/MMC command reference, IDE driver ecosystem

View file

@ -10,6 +10,7 @@ Amiga devices are shared libraries with an exec I/O request interface. They prov
|---|---|
| [trackdisk.md](trackdisk.md) | Floppy disk DMA: MFM encoding, track format, disk geometry, track caching, direct HW access, 16-command reference, antipatterns, FPGA/MiSTer impact, 6 FAQ |
| [scsi.md](scsi.md) | Hard disk/CD-ROM I/O: per-model interfaces, Gayle bandwidth limits, native vs vendor drivers, HD_SCSICMD, CD-ROM commands, TD64/NSD 64-bit. See also: [CD-ROM Filesystems](../07_dos/cdfs.md) |
| [atapi.md](atapi.md) | ATA/ATAPI wire protocol: task file registers, PIO/DMA transfer mechanics, ATAPI packet commands, driver ecosystem (IDE-fix, Buddha, FastATA), CompactFlash setup, removable media (Zip, MO), standards reference (ATA-1 through ATA/ATAPI-7, SFF-8020i/8070i) |
| [serial.md](serial.md) | UART/RS-232: CIA registers, baud rate calculation, serial debugging (KPrintF) |
| [parallel.md](parallel.md) | Centronics parallel port: CIA-A Port B mapping, hardware pinout, direct register access |
| [timer.md](timer.md) | Virtualised timing service: named antipatterns, use-case cookbook (blocking delay, UI timeout, game frame sync, audio refill, benchmarking, system time), decision flowchart, FPGA/MiSTer impact, 1985 competitive landscape, modern analogies, FAQ |

1043
10_devices/atapi.md Normal file

File diff suppressed because it is too large Load diff

View file

@ -290,3 +290,4 @@ DoIO((struct IORequest *)diskReq);
- See also: [Gayle IDE & PCMCIA](../01_hardware/common/gayle_ide_pcmcia.md) — A600/A1200 IDE controller
- See also: [Gary — A3000](../01_hardware/ecs_a600_a3000/gary_system_controller.md) — A3000 SDMAC/WD33C93 SCSI integration
- See also: [CD-ROM Filesystems](../07_dos/cdfs.md) — CDFS handler deep-dive: ISO 9660, Rock Ridge, Joliet, UDF, handler comparison
- See also: [ATA/ATAPI Protocol](atapi.md) — ATA task file registers, ATAPI packet commands, driver ecosystem (IDE-fix, Buddha, FastATA), CompactFlash, removable media

View file

@ -244,6 +244,7 @@ The Amiga's documentation was scattered across out-of-print manuals, Usenet post
|---|---|
| [trackdisk.md](10_devices/trackdisk.md) | Floppy I/O, geometry |
| [scsi.md](10_devices/scsi.md) | Hard disk, HD_SCSICMD |
| [atapi.md](10_devices/atapi.md) | ATA/ATAPI wire protocol, packet commands, CF, removable media |
| [serial.md](10_devices/serial.md) | RS-232 serial |
| [parallel.md](10_devices/parallel.md) | Centronics parallel |
| [timer.md](10_devices/timer.md) | Timing, delays, E-clock |