ref: 60bc4b9b9b9ed7c03e549a39d4f29998e951b01f
dir: /engine/oam_dma.asm/
WriteDMACodeToHRAM: ; Since no other memory is available during OAM DMA, ; DMARoutine is copied to HRAM and executed there. ld c, $ff80 % $100 ld b, DMARoutineEnd - DMARoutine ld hl, DMARoutine .copy ld a, [hli] ld [$ff00+c], a inc c dec b jr nz, .copy ret DMARoutine: ; initiate DMA ld a, wOAMBuffer / $100 ld [$ff46], a ; wait for DMA to finish ld a, $28 .wait dec a jr nz, .wait ret DMARoutineEnd: