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.
Mega Man: Dr. Wily's Revenge/ROM map: Difference between revisions
Jump to navigation
Jump to search
Line 37: | Line 37: | ||
The initial value of lives is 9. You have more lives. | The initial value of lives is 9. You have more lives. | ||
</pre> | </pre> | ||
*157F-15B8: Joypad subroutine | |||
*15D4-15E1: Put OAM DMA Transfer subroutine in internal RAM: $FF80-$FF89 | |||
<pre> | |||
00:15D4 0E 80 ld c,$80 (c=$80) | |||
00:15D6 06 0A ld b,$0A (b=$0A=10=Size of OAM DMA Transfer Subroutine) | |||
00:15D8 21 E2 15 ld hl,$15E2 (Put in hl the address $00:15E2 where is the OAM DMA Transfer subroutine in ROM) | |||
00:15DB 2A ldi a,[hl] (Put in A the value in address given in hl=Subroutine OAM DMA Transfer in ROM and increases hl) | |||
00:15DC E2 ld [$FF00+c],a (Put the value of A in the Address $FF00+c=Internal RAM) | |||
00:15DD 0C inc c (Increases c) | |||
00:15DE 05 dec b (Decrease b=Bytes to be written in Internal RAM of the OAM DMA Transfer Subroutine) | |||
00:15DF 20 FA jr nz,$15DB (If not zero then jump to address $00:15DB to write other byte of the subroutine in the internal RAM) | |||
00:15E1 C9 ret (Return of the subroutine) | |||
</pre> | |||
*15E2-15EB: OAM DMA Tranfer subrotuine | |||
*0x 3979- 3FFF Unused | *0x 3979- 3FFF Unused | ||
Revision as of 17:36, 18 November 2010
The following article is a ROM map for Mega Man: Dr. Wily's Revenge.
Bank 0: Unknown
- 0x 0000- 3978 ???
- 420- 5BF Alphabet gfx??
- 857-85B Put initial Weapon in RAM Address: DFA1
00:0857 3E 01 ld a,$01 (a=$01=Initial Weapon="P") 00:0859 EA A1 DF ld [$DFA1],a (Put the value $01="P" in $DFA1=Weapon)
- B26-B2A Put initial Energy value in RAM Address: DFA3
00:0B26 3D 98 ld a,$98 (a=$98=Initial energy) 00:0B28 EA A3 DF ld [$DFA3],a (Put the value $98 in $DFA3=Energy)
- BCA-BCF Decrease lives
00:0BCA 21 08 C1 ld hl,$C108 (Load in hl the Address $C108=Lives) 00:0BCD 34 dec [hl] (Decrease the value into the Address $C108=Lives) 00:0BCE 28 23 jr z,$0BF3 (Jump if is zero to the Address 00:0BF3) Note: If you change the instruction in 00:0BC4 you can have infinite lives. 00:0BCD 00 nop (NOt Operation) The value of lives don´t decrease.
- CCE-CD2 Put initial lives of the game
00:0CCE 3E 03 ld a,$03 (a=$03=Initial lives of the game) 00:0CD0 EA 08 C1 ld [$C108],a (Put the value $03 in the Addres $C108=Lives) Notes: You can have mor lives if you change the instruction in 00:0CCE. For example: 00:0CCE 3E 09 ld a,$09 The initial value of lives is 9. You have more lives.
- 157F-15B8: Joypad subroutine
- 15D4-15E1: Put OAM DMA Transfer subroutine in internal RAM: $FF80-$FF89
00:15D4 0E 80 ld c,$80 (c=$80) 00:15D6 06 0A ld b,$0A (b=$0A=10=Size of OAM DMA Transfer Subroutine) 00:15D8 21 E2 15 ld hl,$15E2 (Put in hl the address $00:15E2 where is the OAM DMA Transfer subroutine in ROM) 00:15DB 2A ldi a,[hl] (Put in A the value in address given in hl=Subroutine OAM DMA Transfer in ROM and increases hl) 00:15DC E2 ld [$FF00+c],a (Put the value of A in the Address $FF00+c=Internal RAM) 00:15DD 0C inc c (Increases c) 00:15DE 05 dec b (Decrease b=Bytes to be written in Internal RAM of the OAM DMA Transfer Subroutine) 00:15DF 20 FA jr nz,$15DB (If not zero then jump to address $00:15DB to write other byte of the subroutine in the internal RAM) 00:15E1 C9 ret (Return of the subroutine)
- 15E2-15EB: OAM DMA Tranfer subrotuine
- 0x 3979- 3FFF Unused
Bank 1: Unknown
- 0x 4000- 738C ???
- 0x 738D- 7FFF Unused
Bank 2: Unknown (Music?)
- 0x 8000- BCA1
- 0x BCA2- BFFF Unused
Bank 3: Unknown
- 0x C000- FBE4 ???
- 0x FBE5- FFFF Unused
Bank 4: Main Sprite Graphics
- 10060-123FF Graphics (Mega Man, Status Bar, Enemies)
- 0x12FE0-13FFF Unused
Bank 5: Robot Master Level Data
- 0x14000-14007 - Pointer List
- 0x14008-1492E - Cut Man
- 0x1492F-15259 - Ice Man
- 0x1525A-15F71 - Fire Man
- 0x15F72-16AAC - Elec Man
- 0x16AAD-17FFF - Unused
- 0x17000-17FFF Unused
Bank 6: Static Screen Data
- 0x18000-1BBB6 ??? GFX: Static Screen Data
- 0x1803C-18148 - Menu texts
- 0x1814B-18226 - Title screen data
- 0x1BBB7-1BFFF Unused
Bank 7: Robot Master Graphics
- 0x1C000-1F812 ??? Boss GFX (Cu,Ic,El,Fi,En,Bu,Fl,He,Qu,Wily)
- 0x1F813-20000 Unused
Bank 8: Wily 1 Data
- 0x20001-23828 Wily 1 Level Data?
- 0x2134A-21809 Teleporter area gfx
- 0x23829-23FFF Unused
Bank 9: Unknown
- 0x24000-27D31 ???
- 0x27D32-27FFF Unused
Bank A: Unknown
- 0x28000-2B20C ???
- 0x2B20D-2BFFF Unused
Bank B: Unknown
- 0x2C000-2D5CF ???
- 0x2D5D0-2FFFF Unused
Bank C: Level Graphics
- 0x30000-33395 Level GFX
- 0x33396-33FFF Unused
Bank D: Unknown
- 0x34000-36310 ???
- 0x36311-37FFF Unused
Bank E: Ending Data
- 0x38000-3BBAF ???
- ~39000 Ending GFX
- 0x3BBB0-3BFFF Unused
Bank F: Unused
- 0x3C000-3FFFF Unused