ABCDEFGHIJKLMNOPQRSTUVW
1
IDSprite Name$C2 - Phase Pointer$1504$1510$151C$1528$1534$1540 - Stun Timer *ᵀ$154C - Disable Player Contact *ᵀ$1558 - Dying in Lava *ᵀ$1564 - Disable Sprite Contact ᵀ$1570 - Animation Timer$157C - Horizontal Direction$1594$15AC - Turn Timer ᵀ$1602 - Animation Frame$160E$1626$163E ᵀ$187B$1FE2 - Disable Quake Interaction *ᵀOther Tables
2
00Shell-less Koopa (green)Timer for kicking/flipping a shell.Sliding flag. Set when knocked out of a shell;
setting this flag causes the sprite to be kick-killable.
Set when killed by a block, cape spin, cape quake, or Yoshi quake.Timer for jumping in or kicking a shell; setting it manually will prevent the Koopa from interacting with shells.Timer to disable contact with sprites. Set when jumping out of a shell.
Blue Koopas also use this when waiting to kick a shell.
Frame counter for animation.

Yellow Koopas additionally use it as a timer for when to face Mario.
Horizontal direction the sprite is facing.Sprite slot of shell being jumped into.Timer for turning around.Animation frame.
0/1 = walking, 2 = turning
4 = kicking, 5/6 = stunned
When 80-FF: stun timer for a Koopa after being knocked out of a shell.
When 80-01: timer for blue Koopas kicking a shell.
3
01Shell-less Koopa (red)Flag to indicate it's walked off a ledge.
4
02Shell-less Koopa (blue)Flag for being pushed by a shell.Sprite slot of shell being kicked.
5
03Shell-less Koopa (yellow)Sprite slot of shell being jumped into.
6
04Koopa / Shell (green)Result of $1540|$1558, to indicate a Koopa is currently inside the shell (but not emerged).
Cleared when spit out by Yoshi.
Flag for the red/blue Koopas to indicate it's walked off a ledge.
Shell: Flag for the disco shell state that stops the shell from following Mario (unused?).
Shell: Flag set when caught by a blue Koopa and waiting to be kicked.
When in a normal status, setting this will also cause the sprite to be kick-killable.
Shell: Stun timer for a Koopa hiding inside. Additionally set for a frame after a Koopa enters.Shell: Set when spawned from a block, picked up, dropped, or thrown. Shell: Timer used when entered by a Koopa.Shell: Timer to disable sprite contact after being kicked by a blue Koopa or flipped right-side up.Frame counter for animation.

Yellow Koopas additionally use it as a timer for when to face Mario.
Horizontal direction the sprite is facing.Shell: Sprite slot of the shell-less Koopa jumping into it.Timer for turning around.

Also a timer to briefly disable block interaction for shells when spawned from a block.
Animation frame.
0/1 = walking, 2 = turning
6/7/8 = shell (spinning)
Shell: Sprite ID of the Koopa jumping into the shell.Shell: Number of consecutive enemies killed.Flag to turn the shell into a disco shell.Timer set after hitting a block while stunned, to prevent being hit by its quake sprite.
7
05Koopa / Shell (red)
8
06Koopa / Shell (blue)
9
07Koopa / Shell (yellow)
10
08Green Parakoopa (fly)Frame counter for animation.

Yellow Koopas additionally use it as a timer for when to face Mario.
Horizontal direction the sprite is facing.Timer for turning around.Animation frame.
0/1 = walking, 2 = turning
11
09*Green Parakoopa (bounce)Bounce height. 00 = high, 10 = low
12
0ARed Parakoopa (V)Timer incremented while accelerating.Direction of acceleration.
Even = -, odd = +
Timer for waiting between accelerations.
13
0BRed Parakoopa (H)
14
0CYellow ParakoopaUnused, but would cause the sprite to be kick-killable if set.
15
0DBob-OmbSet equal to $1540 when capespinned or kicked.Flag set when exploding.Timer both for waiting to explode, and for the actual explosion.Set when popped out of a bubble.Timer to disable contact with sprites.
Set when kicked by a blue Koopa.
Frame counter for animation.Horizontal direction the sprite is facing.Timer for turning around.Animation frame.
0/1 = walking, 2 = turning
Timer set after hitting a block while stunned, to prevent being hit by its quake sprite.
16
0EKeyholeHighest sprite slot containing a key.Flag for activating the keyhole animation.
17
0FGoombaMirror of $1540.Stun timer for how long until it flips back over.
Also set when spawned from a para-Goomba, though unused.
Carryable: Set when picked up, dropped, kicked, or thrown.
Also set when popped out of a bubble.
Timer to disable contact with sprites.
Set when kicked by a blue Koopa.
Frame counter for animation.Horizontal direction the sprite is facing.Timer for turning around.Animation frame.
0/1 = walking, 2 = turning
Timer set after hitting a block while stunned, to prevent being hit by its quake sprite.
18
10ParagoombaTimer for when to face Mario.Hop counter. Large jump occurs at #$03, after which it's cleared.Timer to wait after a large jump before hopping again.
19
11Buzzy BeetleMirror of $1540. Never gets cleared.Flag set when caught by a blue Koopa and waiting to be kicked.
When in normal status, setting this will also cause the sprite to be kick-killable.
Stun timer for the shell state.Shell: Set when picked up, dropped, or thrown.Frame counter for animation.Horizontal direction the sprite is facing.Timer for turning around.Animation frame.
0/1 = walking, 2 = turning
6/7/8 = shell (spinning)
Shell: Number of consecutive enemies killed.Timer set after hitting a block while stunned, to prevent being hit by its quake sprite.
20
12[Unused]
21
13SpinyFrame counter for animation.Horizontal direction the sprite is facing.Timer for turning around.Animation frame.
0/1 = walking, 2 = turning
22
14Spiny (falling)Animation frame.
0/1 = spinning
23
15Fish (H)Direction of movement.
Even = +, odd = -
Which way the fish moves.
0 = horizontally, 1 = vertically
Timer for automatically turning around.Set when popped out of a bubble.Frame counter for animation.Horizontal direction the sprite is facing.Animation frame.
0/1 = swimming, 2/3 = flopping
24
16Fish (V)
25
17Fish (generated)
26
18Fish (surface jumping)
27
19Display Level Message 1Timer to wait before showing the message.
28
1AClassic Piranha PlantCurrent phase. 00 = in pipe; 01 = exiting
02 = out of pipe; 03 = entering
Timer for how long each phase lasts.Flag for whether Mario is close enough to the plant to make it hide in the pipe.Animation frame.
0/1 = biting
29
1BFootballTimer when spawned by a Chuck for waiting to actually be kicked.Horizontal direction the sprite is facing.
Always 0.
Animation frame.
0 = normal
30
1CBullet BillDirection being fired in.
L, R, U, D, UR, DR, DL, UL
Timer to send behind objects; set on spawn.Horizontal direction the sprite is facing.
Always set to 1 though, regardless of direction.
Animation frame.
0 = horz, 1 = vert, 2 = diag up, 3 = diag down
31
1DHopping FlameTimer for waiting to hop.Set when sinking in lava but not really used since it disappears in a smoke cloud.Horizontal direction the sprite is facing.Animation frame.
0/1 = fire
$176F - Timers for the small flame remnants.
32
1ELakitu (cloud)Flag set if the Lakitu is fishing.Timer for the smoke cloud. Also set when knocked out of the cloud.Timer for how long to show the throwing animation.Horizontal direction the sprite is facing.Animation frame.
0 = normal, 1 = killed/falling, 2 = throwing
33
1FMagikoopaCurrent phase. 0 = find spot, 1 = fade in
2 = shooting magic, 3 = fade out
Timer for animation. Used both when fading and when shooting magic.Index of the current fade palette to use.
#$09 is the max.
Horizontal direction the sprite is facing.Animation frame.
0 = fading in, 2/3 = wand raised, 4/5 wand out
34
20Magikoopa Magic(no misc ram used)
35
21Moving CoinFlag to indicate the sprite is on the ground and shouldn't move.Unused (?) timer to disable interaction with the sides of blocks.Frame counter for animation.Horizontal direction the sprite is facing.Berry flag. If set, it'll be a berry sprite instead.
36
22Green Net Koopa (V)Flag for whether the Koopa is moving horizontally or vertically.Timer for turning to the other side of the net.Frame counter for animation.Direction of movement.
0 = right/up, 1 = left/down
Timer for turning around.Animation frame.
0 = in front of net, 1 = behind net
2 = turning horizontally
3/4 = turning vertically
37
23Red Net Koopa (V)
38
24Green Net Koopa (H)
39
25Red Net Koopa (H)
40
26ThwompCurrent phase. 0 = waiting for Mario
1 = falling, 2 = on ground/rising
Spawn height, low byte.Animation frame for the Thwomp's face.
0 = normal, 1 = glaring, 2 = angry
Timer for waiting to rise up again after smashing the ground.Side of the sprite that Mario is on.
Not actually used for anything, though.
41
27ThwimpWhich direction to jump.
Even = right, odd = left
Horizontal direction the sprite is facing.
Only updates when Mario takes damage from it; the sprite itself doesn't use it.
42
28Big BooFlag for being stationary (1)
or following Mario (0).
Timer until the next check of whether Mario is facing the Boo.Timer for the peeking idle animation.Frame timer for animation. Mainly used to wait before showing the peeking animation.Horizontal direction the sprite is facing.Timer for turning around.Animation frame.
0 = moving, 1/2 = turning, 3 = stationary
43
29Koopa Kid - MortonWhich boss is currently running.

0 = Morton, 1 = Roy, 2 = Ludwig
3 = Iggy, 4 = Larry
5 = Lemmy, 6 = Wendy
Main routine pointer.
0 = spawn (Ludwig waiting)
1 = initialization (Morton/Roy walls drop)
2 = normal, 3 = hurt, 4 = dying, 5 = dead
Attack routine pointer.
0 = walking, 1 = dropping
X position of the left wall.Various phase timers. Set when smashing the ground, taking damage, and dying.Rotational direction of movement.
0 = counterclockwise, 1 = clockwise
Relative direction of movement.
0 = left, 1 = up, 2 = right, 3 = down
Timer for turning around.Animation frame.
0/1/2 = walking
3/4 = firing (unused in Morton/Roy)
5 = turning, 6 = falling/jumping
6/7 = hurt, 8 = unused hurt frame
1B/1C/1D = Ludwig's shell
X position of the right wall.Number of hits the boss has taken.
Dies at 3+, or 12+ with fireballs.
Timer to disable contact with Mario.$164A - Timer for moving the walls inwards.
44
29Koopa Kid - Roy
45
29Koopa Kid - LudwigAttack routine pointer.
0 = firing, 1 = shell, 2 = jumping
Jumping X speed.Timer for shooting a fireball.Mode 7 room to load.
0 = Ludwig, 1 = Morton/Roy
46
29Koopa Kid - IggyFrame counter for waiting to throw a ball.Timer for the hurt animation.Timer for disabling interaction with Mario.Timer for the ball throw animation.Frame counter for animation.Horizontal direction the sprite is facing.Timer for turning around.Animation frame.
0/1/2 = walking, 3 = hurt,
4/5/7/8/9/A/B = throwing, 6 = turning
Flag for falling off the platform.Timer for sinking in the lava.
47
29Koopa Kid - Larry
48
29Koopa Kid - LemmyCurrent phase.
0 = in pipe, 1 = rising, 2 = out of pipe
3 = descending, 4 = hit, 5 = falling
6 = sinking in lava
Emerged animation pointer.
0 = looking at camera, 1 = waving hands A,
2 = opening mouth, 3 = looking side to side
4 = weird face A, 5 = legs, 6 = weird face B
7 = waving hands B, 8 = dummy
Phase timer.Flag for being a dummy.
00 = Wendy/Lemmy
10 = dummy 1, 20 = dummy 2
Animation frame.
0/1 = hurt, 2/3 = looking at camera
4/5 = waving hands A, 6/7 = opening mouth,
8/9 = look side to side, A/B = weird face A
C/D = legs, E/F = weird face B
10/11/12 = waving hands B
13 = dummy, 14/15/16 = dummy hurt
Spawn position index, for deciding which pipes to emerge each sprite from.
49
29Koopa Kid - Wendy
50
2AUpside-Down Piranha PlantCurrent phase. 0 = in pipe; 1 = exiting
2 = out of pipe; 3 = entering
Timer for how long each phase lasts.
Also a timer for the smoke cloud.
Flag for whether Mario is close enough to the plant to make it hide in the pipe.Animation frame.
0/1 = biting
51
2BSumo Bros. LightningTimer to handle spawning the flame columns.Counter for the number of flames spawned.Timer to disable block interaction
after being spawned.
$0F4A - Timer for each flame column.
52
2CYoshi EggSprite ID of the sprite contained inside.Timer for the hatching animation.Horizontal direction the sprite is facing.
Always 0.
Flag to prevent hatching until Mario gets close.$1850 - Timer for the egg shards. High two bits are used as Y/X flip.
53
2DBaby YoshiSet when spawned, picked up, dropped, kicked, or thrown.Counter for how many sprites have been eaten.Horizontal direction the sprite is facing.Unused, but affects the value of the 1up spawned from hitting a goal tape;
0 = 1up, 1 = 2up, 2 = 3up (3+ = glitched).
Animation frame.
0 = normal, 1 = eating
2 = swallowing, 3 = gulping/idle
Sprite slot being eaten.
Set to #$FF when null.
Timer for eating.
54
2ESpike TopIndicates what side of a block the sprite is on, and what direction it's moving in.
0-3 = clockwise, 4-7 = counter
Starts on top with 0/4, then increments in the direction of rotation.
Direction of rotation.
00 = clockwise, 10 = counter
Timer for turning corners.Unused timer that randomly gets set.Timer used for showing the diagonal animation frames when turning a corner.Horizontal direction the sprite is facing.
Always 0; writes directly to $15F6 instead used to manage its facing direction.
Animation frame.
0/1/2/3 = walking, 4/5/6 = turning
55
2FSpringboardUnused, but cleared when spit out by Yoshi.Timer for the spring animation.Set when dropped, kicked, or thrown, but cleared whenever Mario touches the sprite, making its original purpose rather useless.Horizontal direction the sprite is facing.Animation frame.
0 = normal, 1/2 = springing
56
30Dry Bones (throws)Flag for the sprite being collapsed.Used as a timer for the sprite being collapsed.
Dry Bones also use it as a timer for throwing bones, and Bony Beetles use it as a timer for hiding in their shell.
Frame counter for animation.Horizontal direction the sprite is facing.Animation frame.
0/1 = walking
2 = Dry Bones throwing
2/3 = Bony Beetle hiding
Seems unused, but freezes the sprite in place and prevents attacking if set.
Interaction with Mario and collapsing functionality are unaffected.
57
31Bony BeetleTimer for determining when to hide in its shell.
58
32Dry Bones (ledge)Flag to indicate it just walked off a ledge.Timer for turning around.
59
33Podoboo / Bowser fireFlag for which kind of sprite it is.
0 = Podoboo, 1 = Bowser fire
Spawn Y position (high).Spawn Y position (low).Timer for waiting to jump out of the lava.Timer for making the Bowser fire disappear.Timer to retain Y speed after jumping if a height can't normally be reached.
(however, doesn't work due to poor coding)
Frame counter for animation.Animation frame.
0/1 = facing up, 2/3 = facing down
$15D0 - Mirror of $1540. Seems to be unused.
60
34Boss FireballTimer for waiting to fire from Ludwig's mouth. Disables interaction while set.Horizontal direction the sprite is facing.Animation frame.
0/1 = fire
61
35YoshiCurrent state.
0 = normal, 1 = riding, 2 = running
Distance of Yoshi's tongue from his mouth.Various timers. Used to wait before retracting his tongue, and to prevent him from sticking his tongue out after spitting something.Timer for the swallowing animation.
01-1B will perform a normal swallow.
1C+ will swallow as if it's a berry.
Timer for how long each of Yoshi's animation frames last.Horizontal direction the sprite is facing.Mouth routine pointer.
0 = normal, 1 = extending tongue
2 = retracting tongue, 3 = spitting
Timer for turning around.

Notably, Mario's direction will automatically be set to Yoshi's direction when this gets set to 08, regardless of whether Mario is actually riding him.
Animation frame.
0/1/2 = walking, 2 = falling, 3 = turning
4 = crouching, 5 = jumping, 6 = tongue out (up)
7 = tongue out (down), 8/9 = entering horz pipe
A/B/C = growing
Sprite slot on Yoshi's tongue or in his mouth.
Set to #$FF when null.
Timer to disable damage from other sprites.
Set when mounting and when knocked off.
Timer used to prevent a water splash from spawning when dismounting in water.$15F6 - Palette; determines the type of Yoshi.
$1747 - Unused timer set for Yoshi's fireballs.
62
36[Unused]
63
37BooFlag for being stationary (1)
or following Mario (0).
Timer until the next check of whether Mario is facing the Boo.Timer for the 'tongue waggle' idle animation.Frame timer for animation. Mainly used to wait before showing the tongue animation.Horizontal direction the sprite is facing.Timer for turning around.Animation frame.
0 = moving, 2/3 = tongue waggle, 6 = stationary
64
38Eerie (straight)Frame counter for animation.Horizontal direction the sprite is facing.Animation frame.
0/1 = normal
65
39Eerie (wave)Direction of vertical acceleration.
Even = down, odd = up
66
3AUrchin (fixed)Sprite phase.
Even = waiting to move, odd = moving
Counter used for determining the current animation frame.Phase timer.Timer for the blinking animation.
Randomly set.
Unused timer set when turning.Animation frame.
0/1/2 = normal
Timer for the Urchin's animation.
67
3BUrchin (wall-detect)
68
3CUrchin (wall-following)Indicates what side of a block the sprite is on, and what direction it's moving in.
0-3 = clockwise, 4-7 = counter
Starts on top with 0/4, then increments in the direction of rotation.
Direction of rotation.
00 = clockwise, 10 = counter
Timer for turning corners.
69
3DRip Van FishSprite phase.
0 = sleeping, 1 = swimming
Timer for the swimming phase.Timer for spawning Zs while asleep.Frame counter for animation.Horizontal direction the sprite is facing.Animation frame.
0/1 = swimming, 2/3 = sleeping
70
3EP-switchUnused, but cleared when spit out by Yoshi.Switch type.
0 = blue, 1 = silver
Timer for the smoke cloud.Set when spawned, picked up, dropped, thrown, or pressed.Horizontal direction the sprite is facing.
Always 1.
Timer to briefly disable block interaction when spawned from a block.Timer to wait before erasing a pressed P-switch.Timer set after hitting a block.
71
3FPara-GoombaSwing direction.
Odd = left, even = right.
Flag for having hit the side of a block.
When set, falls straight down.
Timer after landing to wait for the parachute to descend.Current "angle", from #$00-#$0F.Horizontal direction the sprite is facing.Animation frame.
0 = normal, 1 = tilt left, 2 = tilt right
C = normal parachute, D = tilted parachute
72
40Para-Bomb
73
41Dolphin (long)Horizontal direction to accelerate in next.
Even = left, odd = right.
Still used by the vertical dolphin despite not moving horizontally.
Flag to stop the dolphin from turning around (for the generated ones).Number of pixels the platform has moved in the frame, for moving Mario.
74
42Dolphin (short)
75
43Dolphin (V)Horizontal direction the sprite is facing.Animation frame. 0 = normal.
76
44Torpedo TedTimer for the releasing animation.Horizontal direction the sprite is facing.
77
45Directional CoinsCurrent direction of movement.
0 = up, 1 = down, 2 = left, 3 = right
Direction of movement to travel next.
0 = up, 1 = down, 2 = left, 3 = right
Timer to hide the sprite behind Layer 1 objects during spawn.Unused timer set on spawn.
78
46Chuck (diggin')Value to indicate the type of Chuck.
Diggin' Chuck uses 4.
(see sprite 91 for the full list)
Animation frame for the Chuck's head.
(see sprite 91 for the list of values)
Counter for the number of times Mario has bounced on the Chuck. Killed when it hits 3.Counter for the animation frames in the digging animation, for determining when to stop digging.Timer for the digging animation.
Hurt: Animation timer for each piece of the hurt animation.
Timer for the head-turn animation prior to starting to dig.Timer to disable contact with Mario.Animation frame for the shovel.
Hurt: Counter for the current phase of the hurt animation.
Horizontal direction the sprite is facing.Animation frame.
(see sprite 91 for the list of values)
79
47Fish (swimming/jumping)Sprite phase.
Even = swimming, odd = jumping
Timer for waiting to turn in phase 0,
and for timing the jump in phase 1.
Counter for the number of times the sprite has turned around.Horizontal direction the sprite is facing.Animation frame.
0/1 = swimming
80
48Diggin' Chuck's RockTimer for the 'digging out' animation after being spawned by a Chuck.Horizontal direciton the sprtie is facing.
Always 0.
Animation frame.
0/1 = normal
81
49Growing/Shrinking PipeCurrent phase of movement. Mod 4:
0 = waiting at bottom, 1 = growing
2 = waiting at top, 3 = shrinking
Unused. Would cause Mario to move horizontally while on the pipe if non-zero.Used as vertical tile offsets to clear out the space above the pipe on spawn.Movement phase timer.
82
4AGoal Sphere(no misc ram used)
83
4BLakitu (pipe-dwelling)Current phase.
0 = hiding in pipe, 1 = peeking out, 2 = rising up
3 = throwing Spiny, 4 = descending
Phase timerHorizontal direction the sprite is facing.Animation frame.
0 = normal, 1 = throwing, 2 = killed
84
4CExploding BlockID of the sprite contained inside the block.Frame counter for the block's shaking animation.Horizontal direction the sprite is facing.
Always 0.
Animation frame.
0 = normal
85
4DMonty Mole (ground)Current phase.
0 = invisible, 1 = dirt animation
2 = jumping out, 3 = walking
Flag for how the mole moves.
Clear = follow Mario, set = walk with a hop
Timer for waiting in the ground before jumping out.Timer for the hopping mole's hops.Frame counter for animation.Horizontal direction the sprite is facing.Animation frame.
In dirt: 0 = invisible, 1/2 = ground, 3 = ledge
As mole: 0/1 = walking, 2 = jumping out
$15D0 - Prevents the mole from jumping out of the dirt if set.
86
4EMonty Mole (ledge)
87
4FJumping Piranha Plant (std)Current phase.
0 = waiting in the ground, 1 = jumping
2 = descending (shoot fire)
Frame counter for the propeller's animation.Timer for waiting to jump in phase 0,
and for shooting fire in phase 2.
Frame counter for the plant's mouth animation.Horizontal direction the sprite is facing.
Always 0.
Animation frame, used seperately by both the mouth and propeller.
1/2 = normal
88
50Jumping Piranha Plant (fire)
89
51NinjiCounter for the number of times the Ninji has jumped.Timer for waiting between jumps.Horizontal direction the sprite is facing.Animation frame.
0 = normal, 1 = jumping
90
52Moving Ghost House HoleFrame counter for deciding which direction to move.
91
53ThrowblockMirror of $1540.Timer for how long the block lasts.
Also a timer for the smoke cloud.
Set when picked up, dropping, or throwing.Set when sinking in lava but not really used since it disappears in a smoke cloud.Timer to disable contact with sprites.
Set when kicked by a blue Koopa.
Horizontal direction the sprite is facing.
This only can become non-zero after kicking.
Animation frame.
0 = normal
Number of consecutive enemies killed.Timer set after hitting a block.
92
54Climbing Net doorTimer for the turning animation.Timer for waiting briefly after being hit before actually turning.
93
55Checker Platform (H)Frame counter for acceleration.Next direction of acceleration.
Even = -, odd = +
Number of pixels moved horizontally in the frame frame, for moving Mario.Timer to pause before applying acceleration again.Flag for whether the platform is a normal platform (0) or checkerboard (1). Always 1.
94
56Rock Platform (H)
95
57Checker Platform (V)Flag for whether the platform is a normal platform (0) or checkerboard (1). Always 1.
96
58Rock Platform (V)
97
59Turnblock Bridge (H+V)Movement phase. Mod 4:
0 = extend horizontally, 1 = retract horizontally
2 = extend vertically, 3 = retract vertically
Distance currently extended.Timer to wait before extending/retracting.
98
5ATurnblock Bridge (H)
99
5BBrown Platform (float)Flag that Mario is on the platform.
Also used during initialization to divide finding a water tile over multiple frames.
(not used for the orange platform when flying)
Flag for the type of platform.
Doesn't affect interaction.
0 = brown, 1 = checkered
100
5CChecker Platform (float)Flag set if sprite buoyancy isn't enabled.