| 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) |