Welcome to Data Crystal's new home! Data Crystal is now part of the TCRF family (sort of).
The wiki has recently moved; please report any issues in Discord. Pardon the dust.

BS-X BIOS/RAM map

From Data Crystal
< BS-X BIOS
Revision as of 12:59, 1 March 2017 by Lytron (talk | contribs)
Jump to navigation Jump to search

Chip tiny.png The following article is a RAM map for BS-X BIOS.

$7E0020-$7E0022 - 24-bit-address storage (for SPC stuff?)
$7E0100         - Value to store in $2100 (FBLANK / Brightness)
$7E0101         - $2101 buffer - Object Size and Object Base
$7E0104         - $2105 buffer - BG Mode
$7E0105         - $2106 buffer - Mosaic
$7E0106         - $2107 buffer - BG1 Tilemap Address and Mirroring
$7E0107         - $2108 buffer - BG2 Tilemap Address and Mirroring
$7E0108         - $2109 buffer - BG3 Tilemap Address and Mirroring
$7E0109         - $210A buffer - BG4 Tilemap Address and Mirroring
$7E010A         - $210B buffer - BG1/2 Tileset Address
$7E010B         - $210C buffer - BG3/4 Tileset Address
$7E010C         - $211A buffer - Mode 7 Rotation/Scaling Mode Settings
$7E010D         - $2123 buffer - Window BG1/BG2 Mask Settings
$7E010E         - $2124 buffer - Window BG3/BG4 Mask Settings
$7E010F         - $210D buffer - BG1 H-Scroll Low Byte
$7E0110         - $210D buffer - BG1 H-Scroll High Byte
$7E0111         - $210E buffer - BG1 V-Scroll Low Byte
$7E0112         - $210E buffer - BG1 V-Scroll High Byte
$7E0113         - $210F buffer - BG2 H-Scroll Low Byte
$7E0114         - $210F buffer - BG2 H-Scroll High Byte
$7E0115         - $2110 buffer - BG2 V-Scroll Low Byte
$7E0116         - $2110 buffer - BG2 V-Scroll High Byte
$7E0117         - $2111 buffer - BG3 H-Scroll Low Byte
$7E0118         - $2111 buffer - BG3 H-Scroll High Byte
$7E0119         - $2112 buffer - BG3 V-Scroll Low Byte
$7E011A         - $2112 buffer - BG3 V-Scroll High Byte
$7E011B         - $2113 buffer - BG4 H-Scroll Low Byte
$7E011C         - $2113 buffer - BG4 H-Scroll High Byte
$7E011D         - $2114 buffer - BG4 V-Scroll Low Byte
$7E011E         - $2114 buffer - BG4 V-Scroll High Byte
$7E011F         - $2125 buffer - Window OBJ/MATH Mask Settings
$7E0120         - $2126 buffer - Window 1 Left Position (X1)
$7E0121         - $2127 buffer - Window 1 Right Position (X2)
$7E0122         - $2128 buffer - Window 2 Left Position (X1)
$7E0123         - $2129 buffer - Window 2 Right Position (X2)
$7E0124         - $212A buffer - Window 1/2 Mask Logic (BG1-BG4)
$7E0125         - $212B buffer - Window 1/2 Mask Logic (OBJ/MATH)
$7E0126         - $212C buffer - Main Screen Designation
$7E0127         - $212E buffer - Window Area Main Screen Disable
$7E0128         - $212D buffer - Sub Screen Designation
$7E0129         - $212F buffer - Window Area Sub Screen Disable
$7E012A         - $2130 buffer - Color Math Control Register A
$7E012B         - $2131 buffer - Color Math Control Register B
$7E012D         - $2132 buffer - Color Math Sub Screen Backdrop Color RED (without #$20)
$7E012E         - $2132 buffer - Color Math Sub Screen Backdrop Color GREEN (without #$40)
$7E012F         - $2132 buffer - Color Math Sub Screen Backdrop Color BLUE (without #$80)
$7E0130         - $2133 buffer - Display Control 2
$7E0135         - $4200 buffer - NMI/VIRQ/HIRQ/Auto Joypad
$7E013A         - $420C buffer - HDMA Flags
$7E0150-$7E0151 - Joypad 1 Input of this frame
$7E0152-$7E0153 - Joypad 2 Input of this frame
$7E0154-$7E0155 - Joypad 1 buttons pushed in this frame
$7E0156-$7E0157 - Joypad 2 buttons pushed in this frame
$7E015C-$7E015D - Joypad 1 Input of last frame
$7E0164-$7E0165 - Joypad 2 Input of last frame
$7E020E         - Mouse related, Seems to be: #$00 = No Mouse #$01 Mouse in Port 1, #$02 Mouse in Port 2
$7E0211         - Mouse Input, Port 1 - Low Byte
$7E0212         - Mouse Input, Port 2 - Low Byte
$7E0213         - Mouse Input, Port 1 - High Byte
$7E0214         - Mouse Input, Port 2 - High Byte
$7E021B         - Value stored in $2100 (FBLANK / Brightness)
$7E0627-$7E0628 - (Frame Counter?)
$7E0629-$7E062A - (Frame Counter?) / 60^1 (Second Counter?)
$7E062B-$7E062C - (Frame Counter?) / 60^2 (Minute Counter?)
$7E062D-$7E062E - (Frame Counter?) / 60^3 (60 Hour Counter?)
$7E062F-$7E0631 - 24-bit-address of a subroutine that gets executed during NMI
$7E0637-$7E0639 - Buffer for $7E062F-31
$7E063A         - If MSB is set, the address in $7E0637-9 is not used
$7E0643         - Register that gets cleared at one end of the NMI Handler
$7E0650-$7E065F - ??? (seem to be 4 byte units; gets cleared at $80/9225)

$7E0661-$7E0662 - ??? (used at $80/8F9D)
$7E0663-$7E0664 - ??? (used at $80/8FA3)
$7E0665-$7E0666 - Buffer for Direct Page (at Program Start)
$7E06CA-$7E06D9?- Sound related - Store Index for value in $7E/06EA
$7E06DA-$7E06E9?- Sound related - gets stored in $2140/$070E at $80/9835
$7E06EA-$7E06F9?- Sound related
$7E06FA-$7E0709?- Sound related - gets stored in $2143/$0711 at $80/97FF
$7E070A         - Sound related
$7E070B         - Sound related
$7E070C         - Sound related
$7E070D         - Sound related
$7E070E         - Sound related - value currently in $2140(?)
$7E070F         - Sound related - value currently in $2141(?)
$7E0710         - Sound related - value currently in $2142(?)
$7E0711         - Sound related - value currently in $2143(?)
$7E0718         - Sound related - flag? see $80/97D5 / $80/97F1
$7E0719         - Sound related
$7E0729         - VRAM Address for DMA at $80/9C4E
$7E0735-$7E0736 - ? (Used at $80/A605)
$7E0737-$7E0738 - ? (Used at $80/A605 ; compare value for $0735/6)
$7E0742-$7E0743 - Flag for VRAM DMA at $80/9C4E
$7E13D1         - Some Download(!?!) related flag?
$7E143F         - Error Counter at Program Start Up?
$7E1440         - FLASHCART related - (See $80/C177)
$7E1441         - FLASHCART related - (See $80/C177) Index for Jump Table at $80/BD79, gets executed at $80/BD6C
$7E1C00-$7E1E1F - OAM buffer
$7E1E20         - Counter of sprites in use?
$7E1E21         - Jump Table Index at $80/8A14
$7E1E22-$7E1EFF - Stack
$7E7600-$7E7DFF - Buffer for VRAM data, see $80/9C4E