Mario Kart 64
|
Go to the source code of this file.
#define AI_BASE_REG 0x04500000 |
#define AI_BITRATE_REG (AI_BASE_REG+0x14) /* R5: Bit rate 4-lsb */ |
#define AI_CONTROL_REG (AI_BASE_REG+0x08) /* R2: DMA Control */ |
#define AI_DACRATE_REG (AI_BASE_REG+0x10) /* R4: DAC rate 14-lsb*/ |
#define AI_DRAM_ADDR_REG (AI_BASE_REG+0x00) /* R0: DRAM address */ |
#define AI_LEN_REG (AI_BASE_REG+0x04) /* R1: Length */ |
#define AI_MIN_BIT_RATE 2 |
#define AI_MIN_DAC_RATE 132 |
#define AI_STATUS_REG (AI_BASE_REG+0x0C) /* R3: Status */ |
#define DPC_BASE_REG 0x04100000 |
#define DPC_BUFBUSY_REG (DPC_BASE_REG+0x14) |
#define DPC_CLOCK_REG (DPC_BASE_REG+0x10) |
#define DPC_CLR_XBUS_DMEM_DMA 0x0001 /* Bit 0: clear xbus_dmem_dma */ |
#define DPC_CURRENT_REG (DPC_BASE_REG+0x08) |
#define DPC_END_REG (DPC_BASE_REG+0x04) |
#define DPC_PIPEBUSY_REG (DPC_BASE_REG+0x18) |
#define DPC_SET_XBUS_DMEM_DMA 0x0002 /* Bit 1: set xbus_dmem_dma */ |
#define DPC_START_REG (DPC_BASE_REG+0x00) |
#define DPC_STATUS_REG (DPC_BASE_REG+0x0C) |
#define DPC_STATUS_XBUS_DMEM_DMA 0x001 /* Bit 0: xbus_dmem_dma */ |
#define DPC_TMEM_REG (DPC_BASE_REG+0x1C) |
#define DPS_BASE_REG 0x04200000 |
#define DPS_BUFTEST_ADDR_REG (DPS_BASE_REG+0x08) |
#define DPS_BUFTEST_DATA_REG (DPS_BASE_REG+0x0C) |
#define DPS_TBIST_REG (DPS_BASE_REG+0x00) |
#define DPS_TEST_MODE_REG (DPS_BASE_REG+0x04) |
#define GIO_BASE_REG 0x18000000 |
#define GIO_CART_INTR_REG (GIO_BASE_REG+0x800) |
#define GIO_GIO_INTR_REG (GIO_BASE_REG+0x000) |
#define GIO_GIO_SYNC_REG (GIO_BASE_REG+0x400) |
#define MI_BASE_REG 0x04300000 |
#define MI_INIT_MODE_REG (MI_BASE_REG+0x00) |
#define MI_INTR_MASK_REG (MI_BASE_REG+0x0C) |
#define MI_INTR_REG (MI_BASE_REG+0x08) |
#define MI_MODE_REG MI_INIT_MODE_REG |
#define MI_NOOP_REG MI_VERSION_REG |
#define MI_VERSION_REG (MI_BASE_REG+0x04) |
#define PI_BASE_REG 0x04600000 |
#define PI_BSD_DOM1_LAT_REG (PI_BASE_REG+0x14) |
#define PI_BSD_DOM1_PGS_REG (PI_BASE_REG+0x1C) /* page size */ |
#define PI_BSD_DOM1_PWD_REG (PI_BASE_REG+0x18) |
#define PI_BSD_DOM1_RLS_REG (PI_BASE_REG+0x20) |
#define PI_BSD_DOM2_LAT_REG (PI_BASE_REG+0x24) /* Domain 2 latency */ |
#define PI_BSD_DOM2_PGS_REG (PI_BASE_REG+0x2C) /* page size */ |
#define PI_BSD_DOM2_PWD_REG (PI_BASE_REG+0x28) /* pulse width */ |
#define PI_BSD_DOM2_RLS_REG (PI_BASE_REG+0x30) /* release duration */ |
#define PI_CART_ADDR_REG (PI_BASE_REG+0x04) |
#define PI_CLR_INTR PI_STATUS_CLR_INTR |
#define PI_DMA_BUFFER_SIZE 128 |
#define PI_DOM_LAT_OFS 0x00 |
#define PI_DOM_PGS_OFS 0x08 |
#define PI_DOM_PWD_OFS 0x04 |
#define PI_DOM_RLS_OFS 0x0C |
#define PI_DOMAIN1_REG PI_BSD_DOM1_LAT_REG |
#define PI_DOMAIN2_REG PI_BSD_DOM2_LAT_REG |
#define PI_DRAM_ADDR_REG (PI_BASE_REG+0x00) /* DRAM address */ |
#define PI_RD_LEN_REG (PI_BASE_REG+0x08) |
#define PI_SET_RESET PI_STATUS_RESET |
#define PI_STATUS_CLR_INTR 0x02 |
#define PI_STATUS_DMA_BUSY 0x01 |
#define PI_STATUS_ERROR 0x04 |
#define PI_STATUS_IO_BUSY 0x02 |
#define PI_STATUS_REG (PI_BASE_REG+0x10) |
#define PI_STATUS_RESET 0x01 |
#define PI_WR_LEN_REG (PI_BASE_REG+0x0C) |
#define PIF_RAM_END 0x1FC007FF |
#define PIF_RAM_START 0x1FC007C0 |
#define PIF_ROM_END 0x1FC007BF |
#define PIF_ROM_START 0x1FC00000 |
#define RDRAM_0_BASE_ADDRESS (RDRAM_0_DEVICE_ID*RDRAM_LENGTH) |
#define RDRAM_0_CONFIG 0x00000 |
#define RDRAM_0_DEVICE_ID 0 |
#define RDRAM_0_END 0x001FFFFF |
#define RDRAM_0_START 0x00000000 |
#define RDRAM_1_BASE_ADDRESS (RDRAM_1_DEVICE_ID*RDRAM_LENGTH) |
#define RDRAM_1_CONFIG 0x00400 |
#define RDRAM_1_DEVICE_ID 1 |
#define RDRAM_1_END 0x003FFFFF |
#define RDRAM_1_START 0x00200000 |
#define RDRAM_ACTIVE_MODE 1 |
#define RDRAM_ADDR_SELECT_REG (RDRAM_BASE_REG+0x20) |
#define RDRAM_BASE_REG 0x03F00000 |
#define RDRAM_CONFIG_REG (RDRAM_BASE_REG+0x00) |
#define RDRAM_DELAY_REG (RDRAM_BASE_REG+0x08) |
#define RDRAM_DEVICE_ID_REG (RDRAM_BASE_REG+0x04) |
#define RDRAM_DEVICE_MANUF_REG (RDRAM_BASE_REG+0x24) |
#define RDRAM_DEVICE_TYPE_REG (RDRAM_BASE_REG+0x00) |
#define RDRAM_END RDRAM_1_END |
#define RDRAM_GLOBAL_CONFIG 0x80000 |
#define RDRAM_LENGTH (2*512*2048) |
#define RDRAM_MIN_INTERVAL_REG (RDRAM_BASE_REG+0x1c) |
#define RDRAM_MODE_REG (RDRAM_BASE_REG+0x0c) |
#define RDRAM_RAS_INTERVAL_REG (RDRAM_BASE_REG+0x18) |
#define RDRAM_REF_INTERVAL_REG (RDRAM_BASE_REG+0x10) |
#define RDRAM_REF_ROW_REG (RDRAM_BASE_REG+0x14) |
#define RDRAM_RESET_MODE 0 |
#define RDRAM_STANDBY_MODE 2 |
#define RDRAM_START RDRAM_0_START |
#define RI_BASE_REG 0x04700000 |
#define RI_CONFIG_REG (RI_BASE_REG+0x04) |
#define RI_COUNT_REG RI_REFRESH_REG |
#define RI_CURRENT_LOAD_REG (RI_BASE_REG+0x08) |
#define RI_LATENCY_REG (RI_BASE_REG+0x14) |
#define RI_MODE_REG (RI_BASE_REG+0x00) |
#define RI_REFRESH_REG (RI_BASE_REG+0x10) |
#define RI_RERROR_REG (RI_BASE_REG+0x18) |
#define RI_SELECT_REG (RI_BASE_REG+0x0C) |
#define RI_WERROR_REG (RI_BASE_REG+0x1C) |
#define SI_BASE_REG 0x04800000 |
#define SI_DRAM_ADDR_REG (SI_BASE_REG+0x00) /* R0: DRAM address */ |
#define SI_STATUS_DMA_BUSY 0x0001 |
#define SI_STATUS_DMA_ERROR 0x0008 |
#define SI_STATUS_INTERRUPT 0x1000 |
#define SI_STATUS_RD_BUSY 0x0002 |
#define SI_STATUS_REG (SI_BASE_REG+0x18) /* R6: Status */ |
#define SP_BASE_REG 0x04040000 |
#define SP_CLR_CPUSIGNAL SP_CLR_SIG4 |
#define SP_CLR_RSPSIGNAL SP_CLR_SIG3 |
#define SP_CLR_TASKDONE SP_CLR_SIG2 |
#define SP_CLR_YIELD SP_CLR_SIG0 |
#define SP_CLR_YIELDED SP_CLR_SIG1 |
#define SP_DMA_BUSY_REG (SP_BASE_REG+0x18) |
#define SP_DMA_FULL_REG (SP_BASE_REG+0x14) |
#define SP_DMEM_END 0x04000FFF |
#define SP_DRAM_ADDR_REG (SP_BASE_REG+0x04) /* Slave */ |
#define SP_IBIST_REG 0x04080004 |
#define SP_IMEM_END 0x04001FFF |
#define SP_MEM_ADDR_REG (SP_BASE_REG+0x00) /* Master */ |
#define SP_PC_REG 0x04080000 |
#define SP_RD_LEN_REG (SP_BASE_REG+0x08) /* R/W: read len */ |
#define SP_SEMAPHORE_REG (SP_BASE_REG+0x1C) |
#define SP_SET_CPUSIGNAL SP_SET_SIG4 |
#define SP_SET_RSPSIGNAL SP_SET_SIG3 |
#define SP_SET_TASKDONE SP_SET_SIG2 |
#define SP_SET_YIELD SP_SET_SIG0 |
#define SP_SET_YIELDED SP_SET_SIG1 |
#define SP_STATUS_CPUSIGNAL SP_STATUS_SIG4 |
#define SP_STATUS_REG (SP_BASE_REG+0x10) |
#define SP_STATUS_RSPSIGNAL SP_STATUS_SIG3 |
#define SP_STATUS_TASKDONE SP_STATUS_SIG2 |
#define SP_STATUS_YIELD SP_STATUS_SIG0 |
#define SP_STATUS_YIELDED SP_STATUS_SIG1 |
#define SP_WR_LEN_REG (SP_BASE_REG+0x0C) /* R/W: write len */ |
#define VI_BASE_REG 0x04400000 |
#define VI_BURST_REG (VI_BASE_REG+0x14) |
#define VI_CONTROL_REG VI_STATUS_REG |
#define VI_CTRL_SERRATE_ON 0x00040 /* Bit 6: on if interlaced */ |
#define VI_CURRENT_REG (VI_BASE_REG+0x10) |
#define VI_DRAM_ADDR_REG VI_ORIGIN_REG |
#define VI_H_START_REG (VI_BASE_REG+0x24) |
#define VI_H_SYNC_LEAP_REG VI_LEAP_REG |
#define VI_H_SYNC_REG (VI_BASE_REG+0x1C) |
#define VI_H_VIDEO_REG VI_H_START_REG |
#define VI_H_WIDTH_REG VI_WIDTH_REG |
#define VI_INTR_REG (VI_BASE_REG+0x0C) |
#define VI_LEAP_REG (VI_BASE_REG+0x20) |
#define VI_ORIGIN_REG (VI_BASE_REG+0x04) |
#define VI_STATUS_REG (VI_BASE_REG+0x00) |
#define VI_TIMING_REG VI_BURST_REG |
#define VI_V_BURST_REG (VI_BASE_REG+0x2C) |
#define VI_V_CURRENT_LINE_REG VI_CURRENT_REG |
#define VI_V_INTR_REG VI_INTR_REG |
#define VI_V_START_REG (VI_BASE_REG+0x28) |
#define VI_V_SYNC_REG (VI_BASE_REG+0x18) |
#define VI_V_VIDEO_REG VI_V_START_REG |
#define VI_WIDTH_REG (VI_BASE_REG+0x08) |
#define VI_X_SCALE_REG (VI_BASE_REG+0x30) |
#define VI_Y_SCALE_REG (VI_BASE_REG+0x34) |