Marble Madness

From NES Hacker Wiki
Jump to: navigation, search

Marble Madness is a unique action puzzle game based on the arcade game. You control a marble and you must roll yourself to the end of several labyrinths. Aside from having to beat the clock, you also have to avoid falling down pits, evil steelies, marble munchers, acid puddles, and numerous other hazards. The game starts out pretty easy, but the later levels are extremely difficult.

Easy Cheats

Icon Addr Val Cmp Description
Icon-Time.png A32E 5A 3C Start With 90 Seconds (Both players)
Icon-Time.png 0044 63 - P1 Infinite Time
Icon-Time.png 0045 63 - P2 Infinite Time
Icon-Time.png 0043 01 - Infinite Time (Both players)
Icon-Time.png A2D2
A2DE
70
70
46
46
Slower Timer (1/2)
Slower Timer (2/2)
Icon-Time.png A2D2
A2DE
F0
F0
46
46
Super Slow Timer (1/2)
Super Slow Timer (2/2)
Icon-Challenge.png A32E 2 3C Start With 40 Seconds (Both players)
Icon-Challenge.png A2D2
A2DE
36
36
46
46
Faster Timer (1/2)
Faster Timer (2/2)
How do I use these?

North America

Marble Madness.png

Memory Addresses

0012 - Number of Players Flag (00 - 1, 01 - 2)
001C - Letter value in name entry
001E - Character position in name entry
0022 - Controller 1 Poll
0023 - Controller 2 Poll
002E - Marble Position X in name entry
002F - Marble Position Y in name entry
0041 - P1 Angle (00 - 90, 01 - 45)
0042 - P2 Angle (00 - 90, 01 - 45)
0043 - Timer Delay
0044 - P1 Time
0045 - P2 Time
004A - P1 Score: 99xxxx (Numbers are in hex)
004B - P1 Score: xx99xx
004C - P1 Score: xxxx99
0050 - Time added at the beginning on each race
005D - P2 Score: 99xxxx
005E - P2 Score: xx99xx
005F - P2 Score: xxxx99

0200-02FF - Sprite Memory

0390-0397 - Objects X Pos (Players are the first 2 objects)
0398-039F - Objects ? Flags
03A0-03A7 - Objects Movement Value ?
03A8-03AF - Objects Y Pos
03B0-03B7 - Objects Alive Flag
03B8-03BF - Objects ? Flag
03C0-03C7 - Objects Z Pos
03C8-03CF - Objects ? Pos
03D0-03D7 - Objects Velocity
03D8-03DF - Objects ? Flag
03E0-03E7 - Objects Velocity (Doesn't change when moving diagonally)
03E8-03EF - Objects ? Flag
03F0-03F7 - 
03F8-03FF - 
0400-0407 - Objects Direction (NPCs only)
0408-040F - Objects Type (See Object Type Table)

0600-0605 - P1 Name
0606-060B - P2 Name
060C-0665 - High Score List

07CC-07C? - P1 Display Score
07D8-07D? - P2 Display Score

Tables

Object Type Table

01 - Player
02 - Crashes
03 - Flag
04 - Crashes
05 - Crashes
06 - Crashes
07 - Player Breaking
08 - Player Being Swept Up
09 - Player Dying
0A - Acid Puddles
0B - Player Reforming
0C - Player Melting in Acid
0D - Crashes
0E - Crashes
0F - Crashes
10 - Muncher
11 - Muncher In Air
12 - Muncher Landing
13 - Muncher Eating
14 - Goal
15 - Crashes
16 - Rail Left to Right
17 - Rail Right to Left
18 - Black Steelie
19 - Crashes
1A - Unknown (Has movement code, but no graphics)
1B - Player About to Go Through Pipe
1C - Player Going Through Pipe
1D - Acid Melting Player
1E - Player Dying For Unknown Reason
1F - Mini Steelie
20 - Mini Acid
21 - Mini Muncher
22 - Bird Forming
23 - Bird Flying
24 - Bird Crashing
25 - Bird Dissolving
26 - Player Exploding
27 - Piston
28 - Hammer
29 - Vacuum
2A - Unknown player death
2B - Player Slowly Cracking 1 (Unused)
2C - Player Slowly Cracking 2 (Unused)
2D - Player Instant Death
2E - Crashes
2F - Crashes

Code

Starting Time

A32E:3C                          ; Starting time.

Text

This game's text is kind of funny. The letters and numbers are ASCII, but there is a bunch of letters and numbers in the unused portions of the CHR graphics as well. It's almost as if they started with one character set, and then switched later on, but forgot to remove the old one. The forgotten set is not used anywhere in the game.

20= 
23=#
25=©
2C=,
2E=.
30=0
31=1
32=2
33=3
34=4
35=5
36=6
37=7
38=8
39=9
41=A
42=B
43=C
44=D
45=E
46=F
47=G
48=H
49=I
4A=J
4B=K
4C=L
4D=M
4E=N
4F=O
50=P
51=Q
52=R
53=S
54=T
55=U
56=V
57=W
58=X
59=Y
5A=Z


Europe

Marble Madness (E).png