changed DMA to write to XBUF from DMA port (not peripheral port)