They're trickier than I have currently: e.g. if you DMA from VRAM to OAM, it shouldn't block the CPU (read this somewhere, can't remember where...) Also, it should be possible to restart a DMA, so access to FF46 should be legal during DMA.