I hope any of you can help me to fix this error.
The pistol's tiles are DMAed to VRAM. The text tiles are filled to the VRAM by writting them using data port using a MOVE loop.
I tried to transfer the pistol's tiles using DMA and tested the rom on the consoles that i got access.
This is a pic testing the rom on my own console. It works fine and i dont get any glitches. Tested on MegaEverdrive.
This is what i get on my friend's console. Tested on Everdrive.
This is the fragment of my code that i use to fill the VRAM using DMA
Code: Select all
DMATOVRAM equ $40000080 ******** Entrada: D0 number of bytes/words ******** D1 = 3 bytes DMA source ******** D2 = 2 bytes DMA destination DMAGEN: MOVE.W #$8F02,$00C00004 * increment 2 bytes MOVE.W #$8174,$00C00004 activate dma MOVE.W #$9300,D4 * Low Counter OR.B D0,D4 MOVE.W D4,$00C00004 ASR.W #8,D0 MOVE.W #$9400,D4 * High Counter OR.B D0,D4 MOVE.W D4,$00C00004 LSR.L #1,D1 MOVE.W #$9500,D4 * Low source adress OR.B D1,D4 LSR.L #8,D1 MOVE.W D4,$00C00004 MOVE.W #$9600,D4 * MID source adress OR.B D1,D4 LSR.L #8,D1 MOVE.W D4,$00C00004 MOVE.W #$9700,D4 * High source adress AND.B #%01111111,D1 OR.B D1,D4 MOVE.W D4,$00C00004 ASL.L #2,D2 * Destination address and operation LSR.W #2,D2 SWAP D2 OR.L #DMATOVRAM,D2 MOVE.L D2,$00C00004 RTS
What can be causing this DMA failure?
Really thank you for your help.