www.pudn.com > sn068s.zip > PPU.NI
%ifndef SNEeSe_PPU_ni %define SNEeSe_PPU_ni %ifndef SNEeSe_PPU_asm extern _PPU_text_start,_PPU_data_start,_PPU_bss_start extern _Read_Map_20_5F,_Write_Map_20_5F extern _Read_Map_21,_Write_Map_21 extern _Read_Map_40,_Write_Map_40 extern _Read_Map_42,_Write_Map_42 extern _Read_Map_43,_Write_Map_43 extern _WRAM,_VRAM,_VRAM_DI,_SRAM,_SPCRAM,_Blank;,_PortRAM extern Tile_Recache_Set_Begin,Tile_Recache_Set_End extern Mosaic_Size_Select,Mosaic_Size,MOSAIC extern _INIDISP,_BGMODE,_Base_BGMODE extern _BG12NBA,_BG34NBA extern _VMAIN extern _W12SEL,_W34SEL,_WOBJSEL,_WBGLOG,_WOBJLOG,_CGWSEL,_CGADSUB extern _Win1_Count_In,_Win1_Count_Out,_Win1_Bands_In,_Win1_Bands_Out extern _Win2_Count_In,_Win2_Count_Out,_Win2_Bands_In,_Win2_Bands_Out extern _WH0,_WH1,_WH2,_WH3 extern _TM,_TS,_TMW,_TSW extern _COLDATA extern _Current_Line_Timing extern _SETINI,STAT78 extern Redo_BGs,Redo_Offset_Change extern SCR_TM,SCR_TS,_Layer_Disable_Mask,_Layering_Mode extern BGMODE_Allowed_Layer_Mask,BGMODE_Tile_Layer_Mask extern BGMODE_Allowed_Offset_Change %macro EXTERN_BG_DATA 1 extern TableBG%1 extern TileCount1BG%1 extern TileCount2BG%1 extern _BGSC%1 ; SC size extern DepthBG%1 extern Redo_BG%1 extern FirstPixelBG%1 extern FirstTileBG%1 extern VScroll_%1 extern HScroll_%1 extern VLMapAddressBG%1 extern VRMapAddressBG%1 extern LineRenderBG%1 extern SetAddressBG%1 ; Address of BG tileset extern LMapAddressBG%1 extern RMapAddressBG%1 extern MapAddressBG%1 ; Screen address of BG extern TLMapAddressBG%1 extern TRMapAddressBG%1 extern BLMapAddressBG%1 extern BRMapAddressBG%1 extern TileHeightBG%1 extern TileWidthBG%1 extern MosaicBG%1 extern NBABG%1 ; Unused in BG3/4 extern NBATableBG%1 ; Unused in BG3/4 extern M0_Color_BG%1 extern Priority_Used_BG%1 extern Priority_Unused_BG%1 extern OC_Flag_BG%1 ; Unused in BG3/4 %endmacro EXTERN_BG_DATA 1 EXTERN_BG_DATA 2 EXTERN_BG_DATA 3 EXTERN_BG_DATA 4 extern _BG1SC,_BG2SC,_BG3SC,_BG4SC extern _BG1HOFS,_BG2HOFS,_BG3HOFS,_BG4HOFS extern _BG1VOFS,_BG2VOFS,_BG3VOFS,_BG4VOFS extern Reset_Ports extern UPDATE_CONTROLLERS extern _Toggle_Offset_Change extern _Update_Layering extern Redo_8 %endif %define Read_21_Address(reg) (_Read_Map_21+(reg)*4) %define Write_21_Address(reg) (_Write_Map_21+(reg)*4) ;%1 = address, %2 = handler %macro Set_21_Read 2 mov dword [Read_21_Address(%1)],(%2) %endmacro %macro Set_21_Write 2 mov dword [Write_21_Address(%1)],(%2) %endmacro ; Offsets from TableBG# %define TileCount1 0 %define TileCount2 1 %define BGSC 2 %define Depth 3 %define BG_Redo 4 %define FirstPixel 8 %define FirstTile 0x0C %define VScroll 0x10 %define HScroll 0x14 %define VLMapAddress 0x18 %define VRMapAddress 0x1C %define LineRender 0x20 %define SetAddress 0x24 ;%define LMapAddress 0x28 ;%define RMapAddress 0x2C %define MapAddress 0x30 %define TLMapAddress 0x30 %define TRMapAddress 0x34 %define BLMapAddress 0x38 %define BRMapAddress 0x3C %define TileHeight 0x40 %define TileWidth 0x41 %define Mosaic 0x42 %define NBA 0x43 %define NBATable 0x44 %define M0_Color 0x48 %define Priority_Used 0x4C %define Priority_Unused 0x4D %define OC_Flag 0x4E %endif ; SNEeSe_PPU_ni