ref: 99df5f0fd79f063ee4c7ec364eadd175a3d83c42
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: