Skip to main content

Module dma

Module dma 

Source
Expand description

Implements dual 8237 ISA DMA controllers.

Tested working with Floppy, but may require additional improvements to work properly with other legacy hardware (e.g: Sound Blaster)

Rather than having the DMA controller device be some big, complicated behemoth that asynchronously resolves DMA requests itself (i.e: how the DMA controller works in actual hardware), our virtual DMA controller takes a simpler approach.

This device is essentially just a big bundle-of-registers, which DMA capable devices can query via the specialized [vmcore::isa_dma_channel::IsaDmaChannel] trait in order to get the info they need to fulfil DMA requests themselves.

Structsยง

DmaController
Dual 8237 DMA controllers.