YI Memory Map
Displaying 75 out of 586 addresses.
View: moderated | waiting (30)
ROM Address | Length | Type | Description | Details |
---|---|---|---|---|
$008000 | 85 bytes | ASM | This is the starting address for YI. This takes care of basic initialization such as disabling IRQ, HDMA, DMA, clearing the SPC ports, enabling F-blank, disabling emulation mode, disabling decimal mode, initializing the direct page, and setting up the stack, among other things. | |
$0080F8 | 56 bytes | Debug | Routine used for frame advance debug code. Enabled by tweak at $0080F7. See details for controls. | Controls |
$00816A | 207 bytes | Pointer | Gamemode subroutine table, 3 bytes per entry. | |
$008275 | 2 bytes | Empty | Empty (filled with FF) | |
$008288 | 35 bytes | Subroutine | JSL to copy a block of memory into RAM. Input: A: Size of the block $20-$22: RAM Destination $23-$25: DMA Source |
|
$0082D0 | 19 bytes | ASM | Copies SPC program | |
$0083CD | 34 bytes | Subroutine | Subroutine that handles fading effects. | |
$00841F | 140 bytes | Subroutine | Music uploader subroutine | |
$00851C | 16 bytes | Music | Item-Denial table for each music track: $01-$7F: disable items, $00 and $80-$FF: enable items | |
$008543 | 142 bytes | ASM | Music uploader controller | |
$0085D2 | 10 bytes | Subroutine | Subroutine that plays sound effects | |
$00B039 | 768 bytes | Graphics | List of sprite GFX file numbers (1 byte each) that make up each sprite set (6 files per set). | |
$00BFF6 | 10 bytes | Empty | Empty (filled with FF) | |
$00DE44 | 35 bytes | Super FX | Calls a Super FX routine, Register X = Bank, Register A = Address | |
$00E101 | 37 bytes | Subroutine | Kill Yoshi Subroutine. This one kills Yoshi as he was killed by lava. Note that this routine is copied into RAM so jump to $7EE101 if GSU is active. $00E10F is Yoshi's initial Y speed in the death animation. $00E0FD (4 bytes) is the X speed Yoshi has got in the death animation, for facing right and left. |
|
$00E552 | 1024 bytes | Table | Lookup table for function y = 1/x, copied into $702200-$7025FF (Used by GSU to divide. It does not have a hardware divide so this lookup table is used instead) | |
$00F7A9 | 2039 bytes | Empty | Empty (filled with FF) | |
$00FFA0 | 5 bytes | Misc. | ROM build date and time. On a U 1.0 ROM, it's 11:19 am on July 31st, 1995 | |
$00FFA5 | 11 bytes | Empty | Empty (filled with FF) | |
$00FFB0 | 2 bytes | Misc. | ROM registration: Maker code (ASCII): "01" (Nintendo) | |
$00FFB2 | 4 bytes | Misc. | ROM registration: Game code (ASCII): "YI " | |
$00FFB6 | 6 bytes | Misc. | ROM registration: reserved (all $00) | |
$00FFBC | 1 byte | Misc. | ROM registration: Expansion FLASH Size ($00 = none) | |
$00FFBD | 1 byte | Misc. | ROM registration: Super FX RAM size ($05 = 32KB) | |
$00FFBE | 1 byte | Misc. | ROM registration: Special version ($00 = not special) | |
$00FFBF | 1 byte | Misc. | ROM registration: Chipset sub-type ($00) | |
$00FFC0 | 21 bytes | Misc. | ROM header: Cartridge title (ASCII): "YOSHI'S ISLAND " | |
$00FFD5 | 1 byte | Misc. | ROM header: ROM Makeup ($20 = LoROM) | |
$00FFD6 | 1 byte | Misc. | ROM header: Chipset ($15 = ROM + SuperFX + RAM + SRAM) | |
$00FFD7 | 1 byte | Misc. | ROM header: ROM size ($0B = 2MB) | |
$00FFD8 | 1 byte | Misc. | ROM header: SRAM size | |
$00FFD9 | 1 byte | Misc. | ROM header: Region ($01 = NTSC) | |
$00FFDA | 1 byte | Misc. | ROM header: $33 (fixed value) | |
$00FFDB | 1 byte | Misc. | ROM header: Version ($00 = 1.0) | |
$00FFDC | 2 bytes | Misc. | ROM header: Checksum complement (inverted bits) | |
$00FFDE | 2 bytes | Misc. | ROM header: Checksum | |
$00FFE0 | 4 bytes | Misc. | 2 unused native vectors | |
$00FFE4 | 2 bytes | Misc. | Native COP vector (unused) | |
$00FFE6 | 2 bytes | Misc. | Native BRK vector (unused) | |
$00FFE8 | 2 bytes | Misc. | Native ABORT vector (unused) | |
$00FFEA | 2 bytes | Misc. | Native NMI vector (vblank) | |
$00FFEC | 2 bytes | Misc. | Native RESET vector (unused) | |
$00FFEE | 2 bytes | Misc. | Native IRQ vector | |
$00FFF0 | 4 bytes | Misc. | 2 unused emulation vectors | |
$00FFF4 | 2 bytes | Misc. | Emulation COP vector (unused) | |
$00FFF6 | 2 bytes | Misc. | Emulation BRK vector (unused) | |
$00FFF8 | 2 bytes | Misc. | Emulation ABORT vector (unused) | |
$00FFFA | 2 bytes | Misc. | Emulation NMI vector (unused) | |
$00FFFC | 2 bytes | Misc. | Emulation RESET vector | |
$00FFFE | 2 bytes | Misc. | Emulation IRQ vector (unused) | |
$028000 | 72 bytes | Sprite Palette | Yoshi colors used in-level. Arranged by translevel number. | |
$0280BD | 108 bytes | Sprite Palette | Falling wall palettes. Palettes are stored in individual colours, in the order blue value, green value and red value. It is indexed by the table at $0280B7 which in turn is indexed by the sprite palette and is copied to $70404A. | |
$02FFD7 | 41 bytes | Empty | Empty (filled with FF) | |
$038000 | 1326 bytes | Pointer | Long pointers to sprite init routines in sprite ID order ($000 - $1B9) | |
$03852E | 1326 bytes | Pointer | Long pointers to sprite main routines in sprite ID order ($000 - $1B9) | |
$038A5C | 1326 bytes | Pointer | Long pointers to sprite head bop routines in sprite ID order ($000 - $1B9) | |
$038F8A | 1326 bytes | Pointer | Long pointers to sprite riding Yoshi routines in sprite ID order ($000 - $1B9) | |
$03A364 | 300 bytes | Subroutine | Subroutine that spawns sprites | |
$03FEEE | 274 bytes | Empty | Empty (filled with FF) | |
$0489B8 | 8 bytes | Sprite Palette | Shy Guy Colors (Green, Red, Yellow, Pink) | |
$04AC9C | 29 bytes | Subroutine | Kill Yoshi Subroutine. This one kills Yoshi as he was killed by a spike. | |
$05C6FD | 16 bytes | Misc. | Table of '?' bucket rotation effects | |
$05FFC4 | 60 bytes | Empty | Empty (filled with FF) | |
$06FEAA | 342 bytes | Empty | Empty (filled with FF) | |
$07FF47 | 185 bytes | Empty | Empty (filled with FF) | |
$089FD0 | 48 bytes | Empty | Empty (filled with 01) | |
$09835F | 477 bytes | Super FX | Super FX routine which draws Yoshi (copies tiles to OAM and sets the graphics pointer). It also draws Yoshi's tongue. | |
$09AF70 | 206 bytes | Empty | Empty (filled with 01) | |
$09EDCE | 624 bytes | Empty | Empty (filled with 01) | |
$09F18F | 687 bytes | Empty | Empty (filled with 01) | |
$0AEC2B | 4 bytes | Player Physics | Yoshi max speed for acceleration to apply, for right and left. | |
$0B9787 | 121 bytes | Empty | Empty (filled with 01) | |
$0BF3B7 | 3145 bytes | Empty | Empty (filled with FF) | |
$0CDACA | 24 bytes | Sprite Palette | Color of Kamek's first magic spell; 2 bytes per boss battle. | |
$0CDAE2 | 24 bytes | Sprite Palette | Color of Kamek's second magic spell; 2 bytes per boss battle. | |