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.
Karnov (NES)/ROM map: Difference between revisions
Jump to navigation
Jump to search
m (Xkeeper moved page Karnov:ROM map to Karnov/ROM map: normalize subpages and titles) |
No edit summary |
||
Line 22: | Line 22: | ||
$AF3C - "no bombs" routine (stages 0,1,2,4,6) | $AF3C - "no bombs" routine (stages 0,1,2,4,6) | ||
$AEA5 - stage 3 routine: table of 17 X,Y pairs at $AEC2 | $AEA5 - stage 3 routine: table of 17 X,Y pairs at $AEC2 | ||
$AEE4 - stage 5 routine: 3 bombs at ($ | $AEE4 - stage 5 routine: 3 bombs at ($35–37,$23) | ||
$AEF5 - stage 7 routine: table of 5 X,Y pairs at $AF12 | $AEF5 - stage 7 routine: table of 5 X,Y pairs at $AF12 | ||
$AF1C - stage 8 routine: 1 bomb at ($5F,$0C) | $AF1C - stage 8 routine: 1 bomb at ($5F,$0C) | ||
Line 52: | Line 52: | ||
$CDAD - Enemy hitpoints (32? bytes) | $CDAD - Enemy hitpoints (32? bytes) | ||
== See | == See also == | ||
*[[Karnov:RAM map]] | *[[Karnov:RAM map]] | ||
{{Internal Data}} |
Revision as of 14:27, 24 January 2024
The following article is a ROM map for Karnov (NES).
Banking
Karnov uses a variant subset of MMC3 which provides two 8k PRG banks at $8000 and $A000, with a fixed 16k bank at $C000.
Level data is placed in banks 0-8 at $8000.
Various code and data is switched into $A000 as needed.
Bank numbers given here indicate pages of 8k, as used with the mapper's registers.
CHR is banked with 2 x 2k pages at PPU $0000 and $0800 (background), and 4 x 1k pages at $1000, $1400, $1800, $1C00 (sprites).
PRG Bank $B
$AD61 - Powerup orb hitbox test to be collected by player
Bomb location checking:
$AE90 - jsr to jump table routine followed by 8 x 2 byte pointers to bomb location check routines $AF3C - "no bombs" routine (stages 0,1,2,4,6) $AEA5 - stage 3 routine: table of 17 X,Y pairs at $AEC2 $AEE4 - stage 5 routine: 3 bombs at ($35–37,$23) $AEF5 - stage 7 routine: table of 5 X,Y pairs at $AF12 $AF1C - stage 8 routine: 1 bomb at ($5F,$0C)
$AF6F - Dragon hitbox test routine to damage player $AFA6 - End boss hitbox test to be damaged by player shot
PRG Bank $C
$A1BC - Tile bank 0 (PPU $0000) to use for stage (9 bytes) $A1C5 - Tile bank 1 (PPU $0800) to use for stage (9 bytes)
$A97D - End boss hitbox test routine to damage player $ACE2 - End boss fireball hitbox test routine to damage player
$ACB3 - End boss sequence = 0,1,2,0,2,0,1,2 (starts at 1 rather than 0)
PRG Fixed Bank
$C969 - Enemy hitbox test routine to damage player $CC85 - Enemy hitbox test to be damaged by player shot
Enemy hitbox structure 32? x 4 bytes:
$CA50 - Y size $CA51 - X offset facing right $CA52 - X offset facing left $CA53 - X size
$CDAD - Enemy hitpoints (32? bytes)
See also
Internal Data for Karnov (NES)
| |
---|---|