BIOS RAM locations: Difference between revisions
Jump to navigation
Jump to search
mNo edit summary |
mNo edit summary |
||
Line 118: | Line 118: | ||
|byte | |byte | ||
|Game | |Game | ||
|0:Init/Boot animation, 1:Title/Demo, | |0:Init/Boot animation, 1:Title/Demo, 2:Game | ||
Game selection can only be done on MVS systems when this byte is < 2 | |||
|- | |- | ||
|$10FDB0 | |$10FDB0 |
Revision as of 04:27, 11 November 2011
Address | DEF name | Size | Set by | Description |
$10FCEE | ? | byte | GAME | Z80/M ROM check pass |
$10FCEF | ? | byte | BOTH | $FF:Slot_check security pass, set by FIX_CLEAR |
$10FD80 | BIOS_SYSTEM_MODE | byte | BIOS | 0:system mode, $80:game mode |
$10FD82 | BIOS_MVS_FLAG | byte | BIOS | 0:AES, 1:MVS |
$10FD83 | BIOS_COUNTRY_CODE | byte | BIOS | 0:Japan, 1:USA, 2:Europe |
$10FD84~$10FD93 | BIOS_GAME_DIP | 16 bytes | BIOS | Software DIPs values |
$10FD94 | BIOS_P1STATUS | byte | BIOS | 0:no connection, 1:normal joypad, 2:expanded joypad, 3:Mahjong controller, 4:Keyboard |
$10FD95 | BIOS_P1PREVIOUS | byte | BIOS | DCBA Right Left Bottom Top (positive logic) |
$10FD96 | BIOS_P1CURRENT | byte | BIOS | DCBA Right Left Bottom Top (positive logic) |
$10FD97 | BIOS_P1CHANGE | byte | BIOS | Active edge DCBA Right Left Bottom Top (positive logic) |
$10FD98 | BIOS_P1REPEAT | byte | BIOS | Active edge + repeat every 8 frames after 16 frames. DCBA Right Left Bottom Top (positive logic) |
$10FD99 | BIOS_P1TIMER | byte | BIOS | Countdown ? |
$10FD9A~$10FD9F | Same for P2 | 5 bytes | BIOS | See above |
$10FDA0~$10FDA6 | Same for P3 | 5 bytes | BIOS | See above |
$10FDA7~$10FDAB | Same for P4 | 5 bytes | BIOS | See above |
$10FDAC | BIOS_STATCURNT | byte | BIOS | Select P4, Start P4, Select P3, Start P3, Select P2, Start P2, Select P1, Start P1 (positive logic) |
$10FDAD | BIOS_STATCHANGE | byte | BIOS | Select P4, Start P4, Select P3, Start P3, Select P2, Start P2, Select P1, Start P1 (positive logic) |
$10FDAE | BIOS_USER_REQUEST | byte | BIOS | Set by the USER subroutine. 0:Init, 1:Boot animation, 2:Demo, 3:Title |
$10FDAF | BIOS_USER_MODE | byte | Game | 0:Init/Boot animation, 1:Title/Demo, 2:Game
Game selection can only be done on MVS systems when this byte is < 2 |
$10FDB0 | BIOS_CREDIT_DEC | 4 bytes | Game | Credit decrement value for each player when calling CREDIT DOWN. |
$10FDB4 | BIOS_START_FLAG | byte | BIOS | Used when calling the PLAYER START subroutine. Last 4 bits correspond to the player who pushed start. |
$10FDB6 | BIOS_PLAYER_MOD | 4 bytes | Game | Sets player status. 0:Never played, 1:Playing, 2:Continue option being displayed, 3:Game over |
$10FDBE | BIOS_MESS_POINT | longword | Game | MESS_OUT buffer pointer |
$10FDC2 | BIOS_MESS_BUSY | byte | Game | 0:Allow MESS_OUT, 1:Skip MESS_OUT |
$10FEE4 | byte | BIOS | Frame counter (internal) |
- Memory card related
- BIOS_CRDF equ $10FDC4 ;byte: function to perform when calling BIOSF_CRDACCESS, see below table
- BIOS_CRDRESULT equ $10FDC6 ;byte: 00 on success, else 80+ and encodes the error, see below table
- BIOS_CRDPTR equ $10FDC8 ;longword: pointer to read from/write to
- BIOS_CRDSIZE equ $10FDCC ;word: how much data to read/write from/to card
- BIOS_CRDNGH equ $10FDCE ;word: usually game NGH. Unique identifier for the game that 'owns' the save file
- BIOS_CRDFILE equ $10FDD0 ;word: each NGH has up to 16 save 'files' associated with
- Calendar, only on MVS (in BCD)
- BIOS_YEAR equ $10FDD2 ;last 2 digits of year
- BIOS_MONTH equ $10FDD3
- BIOS_DAY equ $10FDD4
- BIOS_WEEKDAY equ $10FDD5 ;Sunday = 00, Monday = 01 ... Saturday = 06
- BIOS_HOUR equ $10FDD6 ;24 hour time
- BIOS_MINUTE equ $10FDD7
- BIOS_SECOND equ $10FDD8
- BIOS_SELECT_TIMER equ $10FDDA ;Byte: game start countdown
- BIOS_DEVMODE equ $10FE80 ;Byte: non-zero for developer mode
- Upload to DRAM
- BIOS_UPDEST equ $10FEF4 ;longword: destination address (!)
- BIOS_UPSRC equ $10FEF8 ;longword: source address
- BIOS_UPSIZE equ $10FEFC ;longword: size
- BIOS_UPZONE equ $10FEDA ;byte: zone (0=PRG, 1=FIX, 2=SPR, 3=Z80, 4=PCM, 5=PAT)
- BIOS_UPBANK equ $10FEDB ;byte: bank