If you are still using the old URL (datacrystal.romhacking.net), please update your bookmarks! The old URL may stop working soon.
The current URL is datacrystal.tcrf.net.
The current URL is datacrystal.tcrf.net.
Tetris (NES, Nintendo)/ROM map: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
{{Rommap|game=Tetris}} | {{Rommap|game=Tetris (NES)}} | ||
All addresses are in CPU address space, not iNES file space. Subtract $7FF0 for addresses within the iNES file, or use a more sophisticated algorithm for addresses within the UNIF file. | All addresses are in CPU address space, not iNES file space. Subtract $7FF0 for addresses within the iNES file, or use a more sophisticated algorithm for addresses within the UNIF file. | ||
<pre> | <pre> | ||
Line 20: | Line 20: | ||
initHiScores = $AD67 ; High score table, copied to $0700 on boot | initHiScores = $AD67 ; High score table, copied to $0700 on boot | ||
</pre> | </pre> | ||
Revision as of 22:29, 7 June 2009
The following article is a ROM map for Tetris (NES, Nintendo).
All addresses are in CPU address space, not iNES file space. Subtract $7FF0 for addresses within the iNES file, or use a more sophisticated algorithm for addresses within the UNIF file.
; Code: reset = $FF00 main = $8000 soundWaitVBL = $AA45 ; Run sound code and wait for vblank NMI turnOnNMI = $AA6B ; Turn on interrupt at scanline 241 turnOffNMI = $AA78 ; Turn off interrupt at scanline 241 clearNametable = $AA82 ; Clear nametable whose base address is A clearVRAM = $AC1C ; If A < $1F, clear Y pages of VRAM to X ; Otherwise, clear 4 pages of VRAM to X and clear attribute table to Y clearRAM = $AC6A ; Clear pages X to Y of CPU RAM to value in A switch = $AC82 ; Jumps to the Ath 16-bit address in the following jump table, ; similar to the "magic jump" in Super Mario Bros. playSound = $E000 ; Appears to be sound code, called every frame ; Data: initHiScores = $AD67 ; High score table, copied to $0700 on boot