The current URL is datacrystal.tcrf.net.
Mega Man 5/Level Data: Difference between revisions
No edit summary |
m (mmc3 link) |
||
Line 1: | Line 1: | ||
Level Data is logically common level data, but is here used to describe the part of level data which is unique for every level. [[Mega Man 5:Screen Bank Data|Screen Bank Data]] on the other hand, can be used by multiple levels. | Level Data is logically common level data, but is here used to describe the part of level data which is unique for every level. [[Mega Man 5:Screen Bank Data|Screen Bank Data]] on the other hand, can be used by multiple levels. | ||
Mega Man 5 is structured so that each a bank is spent for each level's Level Data. With a bank is meant a $2000-byte bank as the MMC3 Mapper divides them into. The bank is either loaded into memory area $8000-$9FFF or $A000-$BFFF when level data is read. | Mega Man 5 is structured so that each a bank is spent for each level's Level Data. With a bank is meant a $2000-byte bank as the [[MMC3]] Mapper divides them into. The bank is either loaded into memory area $8000-$9FFF or $A000-$BFFF when level data is read. | ||
The different datas are at fixed offsets in the bank. Offsets below have [[NES Header]] added to them. To get the proper ROM address for a [[Mega Man 5:Level ID|Level ID]], one must add an multiplication of $2000 (depending on the [[Mega Man 5:Level ID|Level ID]]) to the offsets below. For example, the [[Mega Man 5:Screen Layout Data|Screen Layout Data]] for Gravityman's Level (ID #0) is at ROM address $910, while the [[Mega Man 5:Screen Layout Data|Screen Layout Data]] for Waveman's Level (ID #1) is at ROM address $2910. | The different datas are at fixed offsets in the bank. Offsets below have [[NES Header]] added to them. To get the proper ROM address for a [[Mega Man 5:Level ID|Level ID]], one must add an multiplication of $2000 (depending on the [[Mega Man 5:Level ID|Level ID]]) to the offsets below. For example, the [[Mega Man 5:Screen Layout Data|Screen Layout Data]] for Gravityman's Level (ID #0) is at ROM address $910, while the [[Mega Man 5:Screen Layout Data|Screen Layout Data]] for Waveman's Level (ID #1) is at ROM address $2910. |
Revision as of 17:46, 9 June 2008
Level Data is logically common level data, but is here used to describe the part of level data which is unique for every level. Screen Bank Data on the other hand, can be used by multiple levels.
Mega Man 5 is structured so that each a bank is spent for each level's Level Data. With a bank is meant a $2000-byte bank as the MMC3 Mapper divides them into. The bank is either loaded into memory area $8000-$9FFF or $A000-$BFFF when level data is read.
The different datas are at fixed offsets in the bank. Offsets below have NES Header added to them. To get the proper ROM address for a Level ID, one must add an multiplication of $2000 (depending on the Level ID) to the offsets below. For example, the Screen Layout Data for Gravityman's Level (ID #0) is at ROM address $910, while the Screen Layout Data for Waveman's Level (ID #1) is at ROM address $2910.
Contents of Level Data Bank
- 0910 to ???? (?) = Screen Layout Data
- 0960 to 0977 (18) = Scroll Map Data: Direction/Length
- 0978 to 098F (18) = Scroll Map Data: Palette Set/Door Bits
- 0990 to ---- (1) = Initial Background-CHR Bank 0
- 0991 to ---- (1) = Initial Background-CHR Bank 1
- 0998 to ???? (?) = Level Palette Data
- 09F0 to 0A0F (?) = Multi-Path Data
- 0A10 to 0A8F (80) = Enemy Data: Screen Position
- 0A90 to 0B0F (80) = Enemy Data: X Coordinate
- 0B10 to 0B8F (80) = Enemy Data: Y Coordinate
- 0B90 to 0C0F (80) = Enemy Data: Enemy ID
- 0C10 to ???? (?) = Screen: Enemy Counter Offset