mirror of
https://github.com/Zenithsiz/dcb.git
synced 2026-02-03 16:16:33 +00:00
501 lines
8.6 KiB
YAML
501 lines
8.6 KiB
YAML
# Expansion region 1
|
|
- name: ExpansionRegion1
|
|
pos: 0x1f00000
|
|
ty:
|
|
Marker:
|
|
len: 0x80000
|
|
kind: Foreign
|
|
- name: ExpansionRegion1Header
|
|
pos: 0x1f00000
|
|
ty:
|
|
Marker:
|
|
len: 0x100
|
|
kind: Foreign
|
|
|
|
# Scratchpad
|
|
- name: Scratchpad
|
|
pos: 0x1f800000
|
|
ty:
|
|
Marker:
|
|
len: 0x400
|
|
kind: Foreign
|
|
|
|
# Memory control 1
|
|
- name: Expansion1BaseAddress
|
|
pos: 0x1f801000
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: Expansion2BaseAddress
|
|
pos: 0x1f801004
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: Expansion1DelaySize
|
|
pos: 0x1f801008
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: Expansion3DelaySize
|
|
pos: 0x1f80100c
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: BIOS_ROM
|
|
pos: 0x1f801010
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: SPU_DELAY
|
|
pos: 0x1f801014
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: CDROM_DELAY
|
|
pos: 0x1f801018
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: Expansion2DelaySize
|
|
pos: 0x1f80101c
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: COM_DELAY
|
|
pos: 0x1f801020
|
|
ty: u32
|
|
kind: Foreign
|
|
|
|
# Peripheral I/O Ports
|
|
- name: JOY_DATA
|
|
desc: "Joypad / Memory card data"
|
|
pos: 0x1f801040
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: JOY_STAT
|
|
desc: "Joypad / Memory card status"
|
|
pos: 0x1f801044
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: JOY_MODE
|
|
desc: "Joypad / Memory card mode"
|
|
pos: 0x1f801048
|
|
ty: u16
|
|
kind: Foreign
|
|
- name: JOY_CTRL
|
|
desc: "Joypad / Memory card control"
|
|
pos: 0x1f80104a
|
|
ty: u16
|
|
kind: Foreign
|
|
- name: JOY_BAUD
|
|
desc: "Joypad / Memory card baud-rate"
|
|
pos: 0x1f80104e
|
|
ty: u16
|
|
kind: Foreign
|
|
|
|
- name: SIO_DATA
|
|
desc: "Serial port data"
|
|
pos: 0x1f801050
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: SIO_STAT
|
|
desc: "Serial port status"
|
|
pos: 0x1f801054
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: SIO_MODE
|
|
desc: "Serial port mode"
|
|
pos: 0x1f801058
|
|
ty: u16
|
|
kind: Foreign
|
|
- name: SIO_CTRL
|
|
desc: "Serial port control"
|
|
pos: 0x1f80105a
|
|
ty: u16
|
|
kind: Foreign
|
|
- name: SIO_MISC
|
|
desc: "Serial port internal register"
|
|
pos: 0x1f80105c
|
|
ty: u16
|
|
kind: Foreign
|
|
- name: SIO_BAUD
|
|
desc: "Serial port internal baud-rate"
|
|
pos: 0x1f80105e
|
|
ty: u16
|
|
kind: Foreign
|
|
|
|
# Memory Control 2
|
|
- name: Ram_SIZE
|
|
pos: 0x1f801060
|
|
ty: u32
|
|
kind: Foreign
|
|
|
|
# Interrupt control
|
|
- name: I_STAT
|
|
desc: Interrupt status register
|
|
pos: 0x1f801070
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: I_MASK
|
|
desc: Interrupt mask register
|
|
pos: 0x1f801074
|
|
ty: u32
|
|
kind: Foreign
|
|
|
|
# DMA Registers
|
|
- name: DMA_Registers
|
|
pos: 0x1f801080
|
|
ty:
|
|
Marker:
|
|
len: 0x80
|
|
kind: Foreign
|
|
- name: DMA_MDECin
|
|
desc: DMA0 channel 0
|
|
pos: 0x1f801080
|
|
ty:
|
|
Array:
|
|
ty: u32
|
|
len: 4
|
|
kind: Foreign
|
|
- name: DMA_MDECout
|
|
desc: DMA1 channel 1
|
|
pos: 0x1f801090
|
|
ty:
|
|
Array:
|
|
ty: u32
|
|
len: 4
|
|
kind: Foreign
|
|
- name: DMA_GPU
|
|
desc: DMA2 channel 2
|
|
pos: 0x1f8010a0
|
|
ty:
|
|
Array:
|
|
ty: u32
|
|
len: 4
|
|
kind: Foreign
|
|
- name: DMA_CDROM
|
|
desc: DMA3 channel 3
|
|
pos: 0x1f8010b0
|
|
ty:
|
|
Array:
|
|
ty: u32
|
|
len: 4
|
|
kind: Foreign
|
|
- name: DMA_SPU
|
|
desc: DMA4 channel 4
|
|
pos: 0x1f8010c0
|
|
ty:
|
|
Array:
|
|
ty: u32
|
|
len: 4
|
|
kind: Foreign
|
|
- name: DMA_PIO
|
|
desc: DMA5 channel 5, Expansion port
|
|
pos: 0x1f8010d0
|
|
ty:
|
|
Array:
|
|
ty: u32
|
|
len: 4
|
|
kind: Foreign
|
|
- name: DMA_OTC
|
|
desc: DMA5 channel 5, Reverse clear OT (GPU)
|
|
pos: 0x1f8010e0
|
|
ty:
|
|
Array:
|
|
ty: u32
|
|
len: 4
|
|
kind: Foreign
|
|
- name: DPCR
|
|
desc: DMA Control register
|
|
pos: 0x1f8010f0
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: DICR
|
|
desc: DMA Interrupt register
|
|
pos: 0x1f8010f4
|
|
ty: u32
|
|
kind: Foreign
|
|
|
|
# Timers / Root counters
|
|
- name: Timer0
|
|
desc: Dotclock
|
|
pos: 0x1f801100
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: Timer1
|
|
desc: Horizontal Retrace
|
|
pos: 0x1f801110
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: Timer2
|
|
desc: 1/8 System clock
|
|
pos: 0x1f801120
|
|
ty: u32
|
|
kind: Foreign
|
|
|
|
# CDRom Registers
|
|
# TODO: Figure out what Index means for these.
|
|
- name: CDROM_Registers
|
|
pos: 0x1F801800
|
|
ty:
|
|
Marker:
|
|
len: 0x4
|
|
kind: Foreign
|
|
|
|
# GPU Registers
|
|
- name: GP0_SEND_OR_GPU_READ
|
|
desc: GP0 Sender / GPU Responses
|
|
pos: 0x1f801810
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: GP1_SEND_OR_GPU_STAT
|
|
desc: GP1 Sender / GPU Status register
|
|
pos: 0x1f801814
|
|
ty: u32
|
|
kind: Foreign
|
|
|
|
# MDEC Registers
|
|
- name: MDEC_CommandParameter_Or_DataResponse_Register
|
|
pos: 0x1f801820
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: MDEC_ControlReset_Or_StatusRegister_Register
|
|
pos: 0x1f801824
|
|
ty: u32
|
|
kind: Foreign
|
|
|
|
# SPU Voice registers
|
|
# TODO: Find a better way of expressing this
|
|
# interleaved memory layout.
|
|
- name: SPU_Voices
|
|
pos: 0x1f801c00
|
|
ty:
|
|
Marker:
|
|
len: 0x180
|
|
kind: Foreign
|
|
|
|
# SPU Control registers
|
|
- name: SPU_Control_Registers
|
|
pos: 0x1f801d80
|
|
ty:
|
|
Marker:
|
|
len: 0x40
|
|
kind: Foreign
|
|
- name: SPU_MainVolumeLR
|
|
pos: 0x1f801d80
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: SPU_ReverbOutputVolumeLR
|
|
pos: 0x1f801d84
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: SPU_VoiceKeyOn
|
|
pos: 0x1f801d88
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: SPU_VoiceKeyOff
|
|
pos: 0x1f801d8c
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: SPU_VoiceChannelFMMode
|
|
pos: 0x1f801d90
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: SPU_VoiceChannelNoiseMode
|
|
pos: 0x1f801d94
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: SPU_VoiceChannelReverbMode
|
|
pos: 0x1f801d98
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: SPU_VoiceChannelOnOffStatus
|
|
pos: 0x1f801d9c
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: SPU_SoundRamReverbWorkAreaStartAddress
|
|
pos: 0x1f801da2
|
|
ty: u16
|
|
kind: Foreign
|
|
- name: SPU_SoundRamIrqAddress
|
|
pos: 0x1f801da4
|
|
ty: u16
|
|
kind: Foreign
|
|
- name: SPU_SoundRamDataTransferAddress
|
|
pos: 0x1f801da6
|
|
ty: u16
|
|
kind: Foreign
|
|
- name: SPU_SoundRamDataTransferFifo
|
|
pos: 0x1f801da8
|
|
ty: u16
|
|
kind: Foreign
|
|
- name: SPU_CNT
|
|
desc: SPU Control Register
|
|
pos: 0x1f801daa
|
|
ty: u16
|
|
kind: Foreign
|
|
- name: SPU_SoundRamDataTransferControl
|
|
pos: 0x1f801dac
|
|
ty: u16
|
|
kind: Foreign
|
|
- name: SPU_STAT
|
|
desc: SPU Status Register
|
|
pos: 0x1f801dae
|
|
ty: u16
|
|
kind: Foreign
|
|
- name: SPU_CDVolumeLR
|
|
pos: 0x1f801db0
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: SPU_ExternVolumeLR
|
|
pos: 0x1f801db4
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: SPU_CurrentMainVolumeLR
|
|
pos: 0x1f801db8
|
|
ty: u32
|
|
kind: Foreign
|
|
|
|
# SPU Reverb configuration area
|
|
- name: SPU_dAPF1
|
|
desc: SPU Reverb APF offset 1
|
|
pos: 0x1f801dc0
|
|
ty: u16
|
|
kind: Foreign
|
|
- name: SPU_dAPF2
|
|
desc: SPU Reverb APF offset 2
|
|
pos: 0x1f801dc2
|
|
ty: u16
|
|
kind: Foreign
|
|
- name: SPU_vIIR
|
|
desc: SPU Reflection volume 1
|
|
pos: 0x1f801dc4
|
|
ty: u16
|
|
kind: Foreign
|
|
- name: SPU_vCOMB1
|
|
desc: SPU Comb volume 1
|
|
pos: 0x1f801dc6
|
|
ty: u16
|
|
kind: Foreign
|
|
- name: SPU_vCOMB2
|
|
desc: SPU Comb volume 2
|
|
pos: 0x1f801dc8
|
|
ty: u16
|
|
kind: Foreign
|
|
- name: SPU_vCOMB3
|
|
desc: SPU Comb volume 3
|
|
pos: 0x1f801dca
|
|
ty: u16
|
|
kind: Foreign
|
|
- name: SPU_vCOMB4
|
|
desc: SPU Comb volume 4
|
|
pos: 0x1f801dcc
|
|
ty: u16
|
|
kind: Foreign
|
|
- name: SPU_vWALL
|
|
desc: SPU Reflection volume 2
|
|
pos: 0x1f801dce
|
|
ty: u16
|
|
kind: Foreign
|
|
- name: SPU_vAPF1
|
|
desc: SPU Reverb APF volume 1
|
|
pos: 0x1f801dd0
|
|
ty: u16
|
|
kind: Foreign
|
|
- name: SPU_vAPF2
|
|
desc: SPU Reverb APF volume 2
|
|
pos: 0x1f801dd2
|
|
ty: u16
|
|
kind: Foreign
|
|
- name: SPU_mSAME
|
|
desc: SPU Reverb same-side reflection address 1 (L/R)
|
|
pos: 0x1f801dd4
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: SPU_mCOMB1
|
|
desc: SPU Comb address 1 (L/R)
|
|
pos: 0x1f801dd8
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: SPU_mCOMB2
|
|
desc: SPU Comb address 2 (L/R)
|
|
pos: 0x1f801ddc
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: SPU_dSAME
|
|
desc: SPU Reverb same-side reflection address 2 (L/R)
|
|
pos: 0x1f801de0
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: SPU_mDIFF
|
|
desc: SPU Reverb different-side reflection address 1 (L/R)
|
|
pos: 0x1f801de4
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: SPU_mCOMB3
|
|
desc: SPU Comb address 3 (L/R)
|
|
pos: 0x1f801de8
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: SPU_mCOMB4
|
|
desc: SPU Comb address 4 (L/R)
|
|
pos: 0x1f801dec
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: SPU_dDIFF
|
|
desc: SPU Reverb different-side reflection address 2 (L/R)
|
|
pos: 0x1f801df0
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: SPU_mAPF1
|
|
desc: SPU Reverb APF address 1 (L/R)
|
|
pos: 0x1f801df4
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: SPU_mAPF2
|
|
desc: SPU Reverb APF address 2 (L/R)
|
|
pos: 0x1f801df8
|
|
ty: u32
|
|
kind: Foreign
|
|
- name: SPU_vIN
|
|
desc: SPU Reverb input volume (L/R)
|
|
pos: 0x1f801dfc
|
|
ty: u32
|
|
kind: Foreign
|
|
|
|
# SPU internal registers
|
|
- name: SPU_VoiceCurrentVolumeLR
|
|
desc: Voices current volume
|
|
pos: 0x1f801e00
|
|
ty:
|
|
Array:
|
|
ty: u32
|
|
len: 24
|
|
kind: Foreign
|
|
- name: SPU_Unknown2
|
|
pos: 0x1f801e60
|
|
ty:
|
|
Marker:
|
|
len: 0x20
|
|
kind: Foreign
|
|
- name: SPU_Unknown3
|
|
pos: 0x1f801e80
|
|
ty:
|
|
Marker:
|
|
len: 0x180
|
|
kind: Foreign
|
|
|
|
# TODO: Expansion region 2
|
|
|
|
# BIOS Region
|
|
- name: BIOS
|
|
pos: 0x1fc00000
|
|
ty:
|
|
Marker:
|
|
len: 0x80000
|
|
kind: Foreign
|
|
|
|
# Others
|
|
- name: cur_prng_value
|
|
desc: Current prng value
|
|
pos: 0x801ddc10
|
|
ty: u32
|
|
kind: Known
|
|
- name: HeapStart
|
|
desc: Start of the heap
|
|
pos: 0x801ddf38
|
|
ty: u32
|
|
kind: Known
|