Mega Man: The Wily Wars/RAM map

From Data Crystal
Jump to navigation Jump to search

Chip tiny.png The following article is a RAM map for Mega Man: The Wily Wars.


Player Variables

Life & Health

RAM Function Details
$A3FE Mega Man Life Bar Value $1C (28) = Full, $00 = Empty. Not yet tested if there's a second part.
$CB38 Lives X Secondary lives byte. Not used in-game, but can be used for much higher amount of lives.
$CB39 Lives Y Primary lives byte. Values $00–$63 normal; > $63 start Hexadecimal (e.g., "A0" for $64).


Weapons & Abilities

Weapon Energy

Mega Man 1

Note: Weapon Energy uses a byte to determine how much ammo is left. The first bit is for whole numbers, the second is for fractions.

RAM Function Details
$CB40 Hyper Bomb energy The Max value is $7F. Any value higher breaks.
$CB42 Hyper Bomb enabled Set to 1 to add it to your menu.
$CB44 Thunder Beam energy
$CB46 Thunder Beam enabled
$CB48 Super Arm energy
$CB4A Super Arm enabled
$CB4C Ice Slasher energy
$CB4E Ice Slasher enabled
$CB50 Rolling Cutter energy
$CB52 Rolling Cutter enabled
$CB54 Fire Storm energy
$CB56 Fire Storm enabled
$CB58 Magnet Beam energy
$CB5A Magnet Beam enabled

Mega Man 2

RAM Function
$CB5C Atomic Fire energy
$CB5E Atomic Fire enable
$CB60 Air Shooter energy
$CB62 Air Shooter enable
$CB64 Leaf Shield energy
$CB66 Leaf Shield enable
$CB68 Bubble Lead energy
$CB6A Bubble Lead enable
$CB6C Quick Boomerang energy
$CB6E Quick Boomerang enable
$CB74 Time Stopper energy
$CB76 Time Stopper enable
$CB78 Metal Blades energy
$CB7A Metal Blades enable
$CB7C Crash Bomber energy
$CB7E Crash Bomber enable
$CB80 Item 1 energy
$CB82 Item 1 enable
$CB84 Item 2 energy
$CB86 Item 2 enable
$CB88 Item 3 energy
$CB8A Item 3 enable

Mega Man 3

RAM Function
$CB8C Needle Cannon energy
$CB8E Needle Cannon enable
$CB90 Magnet Missile energy
$CB92 Magnet Missile enable
$CB94 Gemini Laser energy
$CB96 Gemini Laser enable
$CB98 Hard Knuckle energy
$CB9A Hard Knuckle enable
$CB9C Top Spin energy
$CB9E Top Spin enable
$CBA0 Search Snake energy
$CBA2 Search Snake enable
$CBA4 Spark Shot energy
$CBA6 Spark Shot enable
$CBA8 Shadow Blade energy
$CBAA Shadow Blade enable
$CBAC Rush Coil energy
$CBAE Rush Coil enable
$CBB0 Rush Marine energy
$CBB2 Rush Marine enable
$CBB4 Rush Jet energy
$CBB6 Rush Jet enable


Special Abilities

Mega Man 1

RAM Function Details
$CB5A Magnet Beam Check Odd = True (player has access), Even = False (player cannot use). Default $01/$02. Determines access regardless of ammo.


Current Weapon Equipped

$CB3B is the address that shows what weapon Megaman currently has equipped

Value Weapon
$00 Mega Buster
$01 Hyper Bomb
$02 Thunder Beam
$03 Super Arm
$04 Ice Slasher
$05 Rolling Cutter
$06 Fire Storm
$07 Magnet Beam
$08 Atomic Fire
$09 Air Shooter
$0A Leaf Shield
$0B Bubble Lead
$0C Quick Boomerang
$0E Time Stopper
$0F Metal Blade
$10 Crash Bomber
$11 Item 1
$12 Item 2
$13 Item 3
$14 Needle Cannon
$15 Magnet Missile
$16 Gemini Laser
$17 Hard Knuckle
$18 Top Spin
$19 Search Snake
$1A Spark Shot
$1B Shadow Blade
$1C Rush Coil
$1D Rush Marine
$1E Rush Jet


Stage Data


RAM Function Details
$CA77 Game ID 00 = Megaman, 01= Megaman 2, 02 = Megaman 3, 03 = Wily Tower
$CA79 Stage ID See table below for list of values
$CA7B Checkpoint ID 00 = Beginning, 01 = Midpoint, 02 = Boss Door - Some stages only have 1 checkpoint


Stage ID:
Value Stage
Mega Man
00 Cutman
01 Gutsman
02 Iceman
03 Bombman
04 Fireman
05 Elecman
06 Dr. Wily 1
07 Dr. Wily 2
08 Dr. Wily 3
09 Dr. Wily 4
Mega Man 2
14 Bubbleman
15 Airman
16 Quickman
17 Heatman
18 Woodman
19 Metalman
1A Flashman
1B Crashman
1C Dr. Wily 1
1D Dr. Wily 2
1E Dr. Wily 3
1F Dr. Wily 4
20 Dr. Wily 5
21 Dr. Wily 6
Mega Man 3
28 Sparkman
29 Snakeman
2A Needleman
2B Hardman
2C Topman
2D Geminiman
2E Magnetman
2F Shadowman
30 Sparkman Doc
31 Needleman Doc
32 Geminiman Doc
33 Shadowman Doc
34 Breakman
35 Dr. Wily 1
36 Dr. Wily 2
37 Dr. Wily 3
38 Dr. Wily 4
39 Dr. Wily 5
3A Dr. Wily 6
Wily Tower
3C Buster Rod G
3D Mega Water S
3E Hyper Storm H
3F Dr. Wily 1
40 Dr. Wily 2
41 Dr. Wily 3
42 Dr. Wily 4

SRAM Data

SRAM is pulled to RAM when the game is booted or reset and stored from $CC52-$CCEF.

Wily Wars stores its data based on binary coded hex to determine which bosses have been defeated.

For example, if Bubbleman, Woodman, and Flashman are defeated in Mega Man 2, it stores the value as 01010001 or $51 in RAM/SRAM as it flips the binary bits to 1 to show the boss as defeated.

File Data

File 1 data: $CC52-$CC59
File 2 data: $CC5A-$CC61
File 3 data: $CC62-$CC69

$CC6D: Set to 5 at first but then is used to hold the file number selected for data erase

$CC6E: File selected to load, committed on confirmation screen

File 1 data: $CC80-$CC87
File 2 data: $CC88-$CC8F
File 3 data: $CC90-$CC97

Current File Loaded

When a file is loaded, the contents of that file from RAM are transferred to $CC4A-51

Address Data
$CC4A Megaman bosses defeated
$CC4B Megaman 2 bosses defeated
$CC4C Megaman 3 bosses defeated
$CC4D Wily Tower bosses defeated
$CC4E Megaman 3 Doc Robots defeated
$CC4F Megaman 2 E-Tanks acquired
$CC50 Megaman 3 E-Tanks acquired
$CC51 Wily Tower E-Tanks acquired

Checksums

File Checksums: $CC98-$CC9A

Wily Wars adds all the bits together for a file and stores them as a bit to be used as a checksum. If the checksum fails, the file is considered corrupted and is erased.

CAPCOM: $CC9C-$CCA1

This is another file corruption check where if one of the letters is missing, all data in SRAM is erased.

Unknown or Unused: $CC6A-$CC6C, $CC70-$CC7F, $CC9B, $CCA2-$CCEF

CRAM Data

Each entry is $1F bytes long

Address Data
$9826 Palette #0
$9846 Palette #1
$9866 Palette #2
$9886 Palette #3
$98A6 Palette #0 Mirror
$98C6 Palette #1 Mirror
$98E6 Palette #2 Mirror
$9906 Palette #3 Mirror

The data value for colors are used in multiples of 2,and a value between them doesn't change the color.

Example:

$0C6A = Lavender

$0C6B = No change

$08C6 = Emerald Green

Bit Color
0 Unused
1 Blue Color data
2 Green Color data
3 Red Color data