works without dma