The original The Digital Systems disk drive controller did DMA. In fact,
one didn't even need any ROM in the system. On reset it would load
track0 into RAM and that would have a bootstrap to bring the rest of the
code for something like CP/M. I use it this way myself. It didn't use
any special DMA controller. It worked all off the state machine in the
controller ( all TTL with PROM control of the state engine ).
The S100 memory is 100% RAM.