5 ms·
Very firsts Philips/DEC LMSI controller did DMA https://github.com/AkBKukU/CM153-Repro https://github.com/AkBKukU/CM153-Repro https://github.com/AkBKukU/CM153-R
by rasz 28d ago
Very firsts Philips/DEC LMSI controller did DMA https://github.com/AkBKukU/CM153-Repro https://github.com/AkBKukU/CM153-Repro https://github.com/AkBKukU/CM153-Repro/blob/main/EDA/ISA-Card/ISA-Card.pdf https://github.com/AkBKukU/CM153-Repro/blob/main/EDA/ISA-Car...
Panasonic (MKE) was pure pooled PIO and didnt even support Interrupts. Sony and Mitsumi do have DREQ/DACK pins so most likely did ISA 8bit DMA. ISA DMA is pretty terrible and slow (4.7MHz clock, steals CPU cycles for the duration of the byte transfer), barely enough for 2x CDROM. IDE PIO is better on 286 and up than ISA DMA thanks to nice dedicated REP INSW. Taking into account ISA limits transferring one CD sector should take no less than ~700-1000us.
While ISA SCSI and VLB controllers could do DMA, they rarely did with ISA 16MB memory limit and VLB compatibility worries. The one VLB IDE controller dlaiming to do DMA, Promise PDC20630, does MWDMA2 to the drive but with CPU manually pooling IO pins on the other side, total waste https://www.vogons.org/viewtopic.php?p=1323789 https://www.vogons.org/viewtopic.php?p=1323789
TLDR: Talk of enabling DMA for your HDD and maybe even CDROM became common only somewhere around 1996, a good year into Intel shipping busmastering IDE controller in PIIX on Pentium boards (430FX and up). You had to put devices on separate IDE channels and hope everything is compatible and works.