YI Memory Map
Displaying 100 out of 305 addresses.
View: moderated | waiting (27)
RAM Address | Length | Type | Description | Details |
---|---|---|---|---|
$7E0372 | 2 bytes | Misc. | Tutorial message bitflags for 1-1 & 1-2: bfm00000 00000000, b=first loss of Baby Mario in 1-1, f=first Flower received in 1-1, m=first Middle Ring in 1-2 |
|
$7E0379 | 2 bytes | Misc. | Current number of lives, 999 maximum | |
$7E037B | 2 bytes | Misc. | Current number of coins | |
$7E037D | 2 bytes | Misc. | Number of deaths in the current level (not translevel), 999 maximum | |
$7E037F | 2 bytes | Misc. | Number of 1up's collected in the current level (not translevel), 999 maximum | |
$7E0383 | 2 bytes | Sprite Palette | Current Yoshi color, set on level select (goal Yoshi reads this as well): $0000: Green $0001: Pink $0002: Yellow $0003: Light Blue $0004: Purple $0005: Brown $0006: Red $0007: Dark Blue |
|
$7E0385 | 2 bytes | Bonus Challenge | Flag for bonus challenge for end of level. $0001 for no bonus. $FFFF for bonus. |
|
$7E038C | 2 bytes | Misc. | Flag: warp to a different screen rather than start of stage | |
$7E038E | 2 bytes | Misc. | Current screen exit (index into screen exit data) | |
$7E0394 | 2 bytes | Timer | Counter between ticks for star increase when stars are under 10 | |
$7E0396 | 2 bytes | Misc. | Star count (*10) remaining to be auto-increased by (used by middle ring & items) | |
$7E0398 | 1 byte | Pause Screen | Item currently being used; same item indices as $7E0357 | |
$7E039A | 2 bytes | Pause Screen | Pause Item in continuous use. Set by items such as star counter and egg fill to act as a pause until item finished use. Cleared on item use. |
|
$7E039C | 1 byte | Timer | Frame counter during item use (after unpause) | |
$7E03A1 | 2 bytes | Misc. | first digit of star counter | |
$7E03A3 | 2 bytes | Misc. | second digit of star counter | |
$7E03A9 | 2 bytes | Timer | Frame counter for game modes $0D, $0E (during black cover sliding out), $0F, $10 (inside level, not score screen), and $11. Is paused during pause screen, and is reset upon entering stage and also upon star auto-increase (middle rings & +10 & +20 items). | |
$7E03AB | 1 byte | Misc. | Flag: Star counter is below 9 (beeping/alarm sounds begin) | |
$7E03AC | 2 bytes | Misc. | Flag: At least one middle ring has been used in current level (value will be number of middle rings used) | |
$7E03AE | 2 bytes | Misc. | Flag: Boss has been visited before in current level, used to skip Kamek dialogue | |
$7E03B0 | 2 bytes | Misc. | Flag: Baby Bowser boss has been visited before in current level, used to skip Kamek introduction | |
$7E03B4 | 2 bytes | Misc. | Current number of red coins collected | |
$7E03B6 | 2 bytes | Misc. | Current star count * 10 | |
$7E03B8 | 2 bytes | Misc. | Current number of flowers collected | |
$7E03BE | 2 bytes | Level Data | Current Item Memory page (0-3) | |
$7E03C0 | 128 bytes | Level Data | Item Memory Page 0: Vertical bitplane, each word represents a horizontal line (0 = not collected, 1 = collected) |
|
$7E0440 | 128 bytes | Level Data | Item Memory Page 1: Vertical bitplane, each word represents a horizontal line (0 = not collected, 1 = collected) |
|
$7E04C0 | 128 bytes | Level Data | Item Memory Page 2: Vertical bitplane, each word represents a horizontal line (0 = not collected, 1 = collected) |
|
$7E0540 | 128 bytes | Level Data | Item Memory Page 3: Vertical bitplane, each word represents a horizontal line (0 = not collected, 1 = collected) |
|
$7E05C0 | 2 bytes | Player Physics | Current index into Yoshi delay buffers | |
$7E05C2 | 296 bytes | Player Physics | Yoshi X Coordinate delay buffer (2 bytes each): last 148 frames of where Yoshi's X was, used by egg inventory items to follow Yoshi | |
$7E06EA | 296 bytes | Player Physics | Yoshi Y Coordinate delay buffer (2 bytes each): last 148 frames of where Yoshi's Y was, used by egg inventory items to follow Yoshi | |
$7E093C | 1 byte | Controller | Controller 1 Data 1 (global): AXLR---- A = A; X = X; L = L; R = R |
|
$7E093D | 1 byte | Controller | Controller 1 Data 2 (global): byetUDLR b = B; y = Y; e = Select; t = Start; U = up; D = down; L = left, R = right |
|
$7E093E | 1 byte | Controller | Controller 1 Data 1, on press/first frame (global): AXLR---- A = A; X = X; L = L; R = R |
|
$7E093F | 1 byte | Controller | Controller 1 Data 2, on press/first frame (global): byetUDLR b = B; y = Y; e = Select; t = Start; U = up; D = down; L = left, R = right |
|
$7E0940 | 1 byte | Controller | Controller 2 Data 1 (global): AXLR---- A = A; X = X; L = L; R = R |
|
$7E0941 | 1 byte | Controller | Controller 2 Data 2 (global): byetUDLR b = B; y = Y; e = Select; t = Start; U = up; D = down; L = left, R = right |
|
$7E0942 | 1 byte | Controller | Controller 2 Data 1, on press/first frame (global): AXLR---- A = A; X = X; L = L; R = R |
|
$7E0943 | 1 byte | Controller | Controller 2 Data 2, on press/first frame (global): byetUDLR b = B; y = Y; e = Select; t = Start; U = up; D = down; L = left, R = right |
|
$7E0944 | 1 byte | Controller | Previous frame controller 1 data 1 (what was previously in $7E093C), used for next frame's on press | |
$7E0945 | 1 byte | Controller | Previous frame controller 1 data 2 (what was previously in $7E093D), used for next frame's on press | |
$7E0946 | 1 byte | Controller | Previous frame controller 2 data 1 (what was previously in $7E0940), used for next frame's on press | |
$7E0947 | 1 byte | Controller | Previous frame controller 2 data 2 (what was previously in $7E0941), used for next frame's on press | |
$7E0948 | 2 bytes | Misc. | Word that stores each color channel's fixed color data intensity (mirror of $2132 for each channel): 0bbbbbgg gggrrrrr b = blue channel intensity g = green channel intensity r = red channel intensity |
|
$7E094A | 1 byte | Misc. | Mirror of hardware register $420C | |
$7E094B | 1 byte | Misc. | Mirror of hardware register $2101 | |
$7E094C | 1 byte | Misc. | Mirror of hardware register $212A | |
$7E094D | 1 byte | Misc. | Mirror of hardware register $212B | |
$7E094E | 1 byte | Misc. | Mirror of hardware register M7SEL ($211A) | |
$7E094F | 2 bytes | Misc. | Mirror of hardware register M7A ($211B) | |
$7E0951 | 2 bytes | Misc. | Mirror of hardware register M7B ($211C) | |
$7E0953 | 2 bytes | Misc. | Mirror of hardware register M7C ($211D) | |
$7E0955 | 2 bytes | Misc. | Mirror of hardware register M7D ($211E) | |
$7E0957 | 2 bytes | Misc. | Mirror of hardware register M7X ($211F) | |
$7E0959 | 2 bytes | Misc. | Mirror of hardware register M7Y ($2120) | |
$7E095B | 1 byte | Misc. | Mirror of hardware register $2106 | |
$7E095E | 1 byte | Misc. | Mirror of hardware register $2105 | |
$7E095F | 1 byte | Misc. | Mirror of hardware register $2107 | |
$7E0960 | 1 byte | Misc. | Mirror of hardware register $2108 | |
$7E0961 | 1 byte | Misc. | Mirror of hardware register $2109 | |
$7E0962 | 1 byte | Misc. | Mirror of hardware register $210B | |
$7E0963 | 1 byte | Misc. | Mirror of hardware register $210C | |
$7E0964 | 1 byte | Misc. | Mirror of hardware register $2123 | |
$7E0965 | 1 byte | Misc. | Mirror of hardware register $2124 | |
$7E0966 | 1 byte | Misc. | Mirror of hardware register $2125 | |
$7E0967 | 1 byte | Misc. | Mirror of hardware register $212C | |
$7E0968 | 1 byte | Misc. | Mirror of hardware register $212D | |
$7E0969 | 1 byte | Misc. | Mirror of hardware register $212E | |
$7E096A | 1 byte | Misc. | Mirror of hardware register $212F | |
$7E096B | 1 byte | Misc. | Mirror of hardware register $2130 | |
$7E096C | 1 byte | Misc. | Mirror of hardware register $2131 | |
$7E0980 | 1 byte | Timer | Timer for updating Title Screen animation frames (title wavy effect, island rotating, sprite moving, etc). Each animation frame takes 4 frames to update. | |
$7E0B0F | 1 byte | Pause Screen | Pause state: $00: unpaused $01-12: pause transition states $13: in pause menu $14: begin unpausing |
|
$7E0B10 | 1 byte | Pause Screen | Flag for pause screen active - instantly turns on when pause pressed, instantly turns off when unpause pressed | |
$7E0B48 | 2 bytes | Pause Screen | Flag that indicates whether or not menu items are disabled. | |
$7E0B4C | 2 bytes | Misc. | Screen X position of black curtain during player death scene; when it reaches $0400, it resets to $0000 and the Retry screen appears | |
$7E0B55 | 2 bytes | Timer | Mosaic Timer, and one of the many "game frozen" flags: gets set to $10 when touching a fuzzy and counts down once per frame. Controls the mosaic effect (mirrors $7E095B) | |
$7E0B67 | 2 bytes | Timer | Tileset Animation Timer Different usage per mode |
|
$7E0B7D | 2 bytes | Timer | Idle frame counter; on >= $60 star counter is displayed | |
$7E0B7F | 2 bytes | Misc. | Frame counter for how long to display the star counter (right after counter changes) | |
$7E0B81 | 1 byte | Misc. | Star counter position: $00 = left side, $01 = right side | |
$7E0B91 | 96 bytes | Sprite Number | 24 2-word entries, one sprite per: Word 1: Sprite ID for sprite to turn into when sprite state is $0006 Word 2: Unused Special Case: Goal Ring uses Word 1 and 2 as a timer |
|
$7E0C04 | 8 bytes | Sprite Number | Table of all current special sprites' ID's, 4 word-sized entries. $0000 is used as "none"; anything else is assumed to be an ID. Special sprite ID is a relative ID computed by: (sprite ID) - $01B9 |
|
$7E0C1C | 2 bytes | Misc. | Current autoscroll special sprite ID, 0 means no autoscroll active | |
$7E0C1E | 2 bytes | Misc. | Flag: Autoscrolling currently active for camera X | |
$7E0C20 | 2 bytes | Misc. | Flag: Autoscrolling currently active for camera Y (1-E and 6-8 flag this off) | |
$7E0C22 | 4 bytes | Misc. | Current autoscroll camera X value | |
$7E0C26 | 4 bytes | Misc. | Current autoscroll camera Y value | |
$7E0C2A | 2 bytes | Misc. | Current autoscroll X velocity | |
$7E0C2C | 2 bytes | Misc. | Current autoscroll Y velocity | |
$7E0C2E | 2 bytes | Misc. | Current autoscroll checkpoint (index into autoscroller_values table) | |
$7E0C30 | 2 bytes | Misc. | Next autoscroll checkpoint X value | |
$7E0C32 | 2 bytes | Misc. | Next autoscroll checkpoint Y value | |
$7E0C34 | 2 bytes | Misc. | Next autoscroll checkpoint speed value | |
$7E0C36 | 2 bytes | Misc. | Autoscroll: next checkpoint X - current camera X (how much is left to go) | |
$7E0C38 | 2 bytes | Misc. | Autoscroll: next checkpoint Y - current camera Y (how much is left to go) | |
$7E0C3A | 2 bytes | Misc. | Flag: Currently active gusty generation | |
$7E0C3C | 2 bytes | Misc. | Flag: Currently active Lakitu (at least 1) | |
$7E0C3E | 2 bytes | Misc. | Flag: Currently active fuzzy generation | |