📄 gba.h
字号:
#define REG_BG3VOFS *(u16*)0x400001E //Background 3 Vertical Offset
#define REG_BG2PA *(u16*)0x4000020 //Background 2 PA Rotation (pa = x_scale * cos(angle);)
#define REG_BG2PB *(u16*)0x4000022 //Background 2 PB Rotation (pb = y_scale * sin(angle);)
#define REG_BG2PC *(u16*)0x4000024 //Background 2 PC Rotation (pc = x_scale * -sin(angle);)
#define REG_BG2PD *(u16*)0x4000026 //Background 2 PD Rotation (pd = y_scale * cos(angle);)
#define REG_BG2X *(u32*)0x4000028 //Background 2 X Location
#define REG_BG2X_L *(u16*)0x4000028 //???
#define REG_BG2X_H *(u16*)0x400002A //???
#define REG_BG2Y *(u32*)0x400002C //Background 2 Y Location
#define REG_BG2Y_L *(u16*)0x400002C //???
#define REG_BG2Y_H *(u16*)0x400002E //???
#define REG_BG3PA *(u16*)0x4000030 //Background 3 PA Rotation (pa = x_scale * cos(angle);)
#define REG_BG3PB *(u16*)0x4000032 //Background 3 PB Rotation (pb = y_scale * sin(angle);)
#define REG_BG3PC *(u16*)0x4000034 //Background 3 PC Rotation (pc = x_scale * -sin(angle);)
#define REG_BG3PD *(u16*)0x4000036 //Background 3 PD Rotation (pd = y_scale * cos(angle);)
#define REG_BG3X *(u32*)0x4000038 //Background 3 X Location
#define REG_BG3X_L *(u16*)0x4000038 //???
#define REG_BG3X_H *(u16*)0x400003A //???
#define REG_BG3Y *(u32*)0x400003C //Background 3 Y Location
#define REG_BG3Y_L *(u16*)0x400003C //???
#define REG_BG3Y_H *(u16*)0x400003E //???
#define REG_WIN0H *(u16*)0x4000040 //Window 0 X coords (bits 0-7 right, bits 8-16 left)
#define REG_WIN1H *(u16*)0x4000042 //Window 1 X coords (bits 0-7 right, bits 8-16 left)
#define REG_WIN0V *(u16*)0x4000044 //Window 0 Y coords (bits 0-7 bottom, bits 8-16 top)
#define REG_WIN1V *(u16*)0x4000046 //Window 1 Y coords (bits 0-7 bottom, bits 8-16 top)
#define REG_WININ *(u16*)0x4000048 //Inside Window Settings
#define REG_WINOUT *(u16*)0x400004A //Outside Window Settings
#define REG_MOSAIC *(u32*)0x400004C //Mosaic Mode
#define REG_MOSAIC_L *(u32*)0x400004C //???
#define REG_MOSAIC_H *(u32*)0x400004E //???
#define REG_BLDMOD *(u16*)0x4000050 //Blend Mode
#define REG_COLEV *(u16*)0x4000052 //???
#define REG_COLEY *(u16*)0x4000054 //???
#define REG_SOUND1CNT *(vu32*)0x4000060 //sound 1
#define REG_SOUND1CNT_L *(vu16*)0x4000060 //
#define REG_SOUND1CNT_H *(vu16*)0x4000062 //
#define REG_SOUND1CNT_X *(vu16*)0x4000064 //
#define REG_SOUND2CNT_L *(vu16*)0x4000068 //sound 2 lenght & wave duty
#define REG_SOUND2CNT_H *(vu16*)0x400006C //sound 2 frequency+loop+reset
#define REG_SG30 *(vu32*)0x4000070 //???
#define REG_SOUND3CNT *(vu32*)0x4000070 //???
#define REG_SG30_L *(vu16*)0x4000070 //???
#define REG_SOUND3CNT_L *(vu16*)0x4000070 //???
#define REG_SG30_H *(vu16*)0x4000072 //???
#define REG_SOUND3CNT_H *(vu16*)0x4000072 //???
#define REG_SG31 *(vu16*)0x4000074 //???
#define REG_SOUND3CNT_X *(vu16*)0x4000074 //???
#define REG_SOUND4CNT_L *(vu16*)0x4000078 //???
#define REG_SOUND4CNT_H *(vu16*)0x400007C //???
#define REG_SGCNT0 *(vu32*)0x4000080
#define REG_SGCNT0_L *(vu16*)0x4000080
#define REG_SOUNDCNT *(vu32*)0x4000080
#define REG_SOUNDCNT_L *(vu16*)0x4000080 //DMG sound control
#define REG_SGCNT0_H *(vu16*)0x4000082
#define REG_SOUNDCNT_H *(vu16*)0x4000082 //Direct sound control
#define REG_SGCNT1 *(vu16*)0x4000084
#define REG_SOUNDCNT_X *(vu16*)0x4000084 //Extended sound control
#define REG_SGBIAS *(vu16*)0x4000088
#define REG_SOUNDBIAS *(vu16*)0x4000088 //bit rate+sound bias
#define REG_WAVE_RAM0 *(vu32*)0x4000090 //???
#define REG_SGWR0_L *(vu16*)0x4000090 //???
#define REG_SGWR0_H *(vu16*)0x4000092 //???
#define REG_WAVE_RAM1 *(vu32*)0x4000094 //???
#define REG_SGWR1_L *(vu16*)0x4000094 //???
#define REG_SGWR1_H *(vu16*)0x4000096 //???
#define REG_WAVE_RAM2 *(vu32*)0x4000098 //???
#define REG_SGWR2_L *(vu16*)0x4000098 //???
#define REG_SGWR2_H *(vu16*)0x400009A //???
#define REG_WAVE_RAM3 *(vu32*)0x400009C //???
#define REG_SGWR3_L *(vu16*)0x400009C //???
#define REG_SGWR3_H *(vu16*)0x400009E //???
#define REG_SGFIFOA *(vu32*)0x40000A0 //???
#define REG_SGFIFOA_L *(vu16*)0x40000A0 //???
#define REG_SGFIFOA_H *(vu16*)0x40000A2 //???
#define REG_SGFIFOB *(vu32*)0x40000A4 //???
#define REG_SGFIFOB_L *(vu16*)0x40000A4 //???
#define REG_SGFIFOB_H *(vu16*)0x40000A6 //???
#define REG_DMA0SAD *(u32*)0x40000B0 //DMA0 Source Address
#define REG_DMA0SAD_L *(u16*)0x40000B0 //DMA0 Source Address Low Value
#define REG_DMA0SAD_H *(u16*)0x40000B2 //DMA0 Source Address High Value
#define REG_DMA0DAD *(u32*)0x40000B4 //DMA0 Destination Address
#define REG_DMA0DAD_L *(u16*)0x40000B4 //DMA0 Destination Address Low Value
#define REG_DMA0DAD_H *(u16*)0x40000B6 //DMA0 Destination Address High Value
#define REG_DMA0CNT *(u32*)0x40000B8 //DMA0 Control (Amount)
#define REG_DMA0CNT_L *(u16*)0x40000B8 //DMA0 Control Low Value
#define REG_DMA0CNT_H *(u16*)0x40000BA //DMA0 Control High Value
#define REG_DMA1SAD *(u32*)0x40000BC //DMA1 Source Address
#define REG_DMA1SAD_L *(u16*)0x40000BC //DMA1 Source Address Low Value
#define REG_DMA1SAD_H *(u16*)0x40000BE //DMA1 Source Address High Value
#define REG_DMA1DAD *(u32*)0x40000C0 //DMA1 Desination Address
#define REG_DMA1DAD_L *(u16*)0x40000C0 //DMA1 Destination Address Low Value
#define REG_DMA1DAD_H *(u16*)0x40000C2 //DMA1 Destination Address High Value
#define REG_DMA1CNT *(u32*)0x40000C4 //DMA1 Control (Amount)
#define REG_DMA1CNT_L *(u16*)0x40000C4 //DMA1 Control Low Value
#define REG_DMA1CNT_H *(u16*)0x40000C6 //DMA1 Control High Value
#define REG_DMA2SAD *(u32*)0x40000C8 //DMA2 Source Address
#define REG_DMA2SAD_L *(u16*)0x40000C8 //DMA2 Source Address Low Value
#define REG_DMA2SAD_H *(u16*)0x40000CA //DMA2 Source Address High Value
#define REG_DMA2DAD *(u32*)0x40000CC //DMA2 Destination Address
#define REG_DMA2DAD_L *(u16*)0x40000CC //DMA2 Destination Address Low Value
#define REG_DMA2DAD_H *(u16*)0x40000CE //DMA2 Destination Address High Value
#define REG_DMA2CNT *(u32*)0x40000D0 //DMA2 Control (Amount)
#define REG_DMA2CNT_L *(u16*)0x40000D0 //DMA2 Control Low Value
#define REG_DMA2CNT_H *(u16*)0x40000D2 //DMA2 Control High Value
#define REG_DMA3SAD *(u32*)0x40000D4 //DMA3 Source Address
#define REG_DMA3SAD_L *(u16*)0x40000D4 //DMA3 Source Address Low Value
#define REG_DMA3SAD_H *(u16*)0x40000D6 //DMA3 Source Address High Value
#define REG_DMA3DAD *(u32*)0x40000D8 //DMA3 Destination Address
#define REG_DMA3DAD_L *(u16*)0x40000D8 //DMA3 Destination Address Low Value
#define REG_DMA3DAD_H *(u16*)0x40000DA //DMA3 Destination Address High Value
#define REG_DMA3CNT *(u32*)0x40000DC //DMA3 Control (Amount)
#define REG_DMA3CNT_L *(u16*)0x40000DC //DMA3 Control Low Value
#define REG_DMA3CNT_H *(u16*)0x40000DE //DMA3 Control High Value
#define REG_TM0CNT *(u32*)0x4000100 //Timer 0
#define REG_TM0CNT_L *(u16*)0x4000100 //Timer 0 count value
#define REG_TM0CNT_H *(u16*)0x4000102 //Timer 0 Control
#define REG_TM1CNT *(u32*)0x4000104 //Timer 2
#define REG_TM1CNT_L *(u16*)0x4000104 //Timer 2 count value
#define REG_TM1CNT_H *(u16*)0x4000106 //Timer 2 control
#define REG_TM2D *(u16*)0x4000108 //Timer 3?
#define REG_TM2CNT *(u16*)0x400010A //Timer 3 Control
#define REG_TM3D *(u16*)0x400010C //Timer 4?
#define REG_TM3CNT *(u16*)0x400010E //Timer 4 Control
#define REG_SCD0 *(u16*)0x4000120 //32-bit Normal Serial Communication Data 0 / Multi-play
#define REG_SCD1 *(u16*)0x4000122 //32-bit Normal Serial Communication Data 1 /Multi-play
#define REG_SCD2 *(u16*)0x4000124 //Multi-play Communication Data 2
#define REG_SCD3 *(u16*)0x4000126 //Multi-play Communication Data 3
#define REG_SCCNT *(u32*)0x4000128 //???
#define REG_SCCNT_L *(u16*)0x4000128 //???
#define REG_SCCNT_H *(u16*)0x400012A //???
#define REG_P1 *(vu16*)0x4000130 //Player 1 Input
#define REG_KEYPAD *(vu16*)0x4000130 //Player 1 Input
#define REG_P1CNT *(vu16*)0x4000132 //Player 1 Input Interrupt Status
#define REG_R *(u16*)0x4000134 //???
#define REG_HS_CTRL *(u16*)0x4000140 //???
#define REG_JOYRE *(u32*)0x4000150 //???
#define REG_JOYRE_L *(u16*)0x4000150 //???
#define REG_JOYRE_H *(u16*)0x4000152 //???
#define REG_JOYTR *(u32*)0x4000154 //???
#define REG_JOYTR_L *(u16*)0x4000154 //???
#define REG_JOYTR_H *(u16*)0x4000156 //???
#define REG_JSTAT *(u32*)0x4000158 //???
#define REG_JSTAT_L *(u16*)0x4000158 //???
#define REG_JSTAT_H *(u16*)0x400015A //???
#define REG_IE *(u16*)0x4000200 //Interrupt Enable
#define REG_IF *(vu16*)0x4000202 //Interrupt Flags
#define REG_WSCNT *(u16*)0x4000204 //???
#define REG_IME *(u16*)0x4000208 //Interrupt Master Enable
#define REG_PAUSE *(u16*)0x4000300 //Pause
//#ifdef __cplusplus
//} /* extern "C" */
//#endif
#endif // _GBA_H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -