2009-07-17 19:27:04 +02:00
|
|
|
void FCEUPPU_Init(void);
|
|
|
|
void FCEUPPU_Reset(void);
|
|
|
|
void FCEUPPU_Power(void);
|
|
|
|
int FCEUPPU_Loop(int skip);
|
|
|
|
|
|
|
|
void FCEUPPU_LineUpdate();
|
|
|
|
void FCEUPPU_SetVideoSystem(int w);
|
|
|
|
|
|
|
|
extern void (*PPU_hook)(uint32 A);
|
|
|
|
extern void (*GameHBIRQHook)(void), (*GameHBIRQHook2)(void);
|
|
|
|
|
|
|
|
/* For cart.c and banksw.h, mostly */
|
2016-09-18 05:43:24 +02:00
|
|
|
extern uint8 NTARAM[0x800], *vnapage[4];
|
2009-07-17 19:27:04 +02:00
|
|
|
extern uint8 PPUNTARAM;
|
|
|
|
extern uint8 PPUCHRRAM;
|
|
|
|
|
|
|
|
void FCEUPPU_SaveState(void);
|
|
|
|
void FCEUPPU_LoadState(int version);
|
2016-09-18 05:43:24 +02:00
|
|
|
uint32 FCEUPPU_PeekAddress();
|
2009-07-17 19:27:04 +02:00
|
|
|
uint8* FCEUPPU_GetCHR(uint32 vadr, uint32 refreshaddr);
|
2009-12-10 08:03:25 +01:00
|
|
|
void ppu_getScroll(int &xpos, int &ypos);
|
|
|
|
|
2009-07-17 19:27:04 +02:00
|
|
|
|
2016-09-18 05:43:24 +02:00
|
|
|
|
2009-09-15 10:20:48 +02:00
|
|
|
#ifdef _MSC_VER
|
|
|
|
#define FASTCALL __fastcall
|
|
|
|
#else
|
|
|
|
#define FASTCALL
|
|
|
|
#endif
|
|
|
|
|
|
|
|
void PPU_ResetHooks();
|
|
|
|
extern uint8 (FASTCALL *FFCEUX_PPURead)(uint32 A);
|
2009-07-17 19:27:04 +02:00
|
|
|
extern void (*FFCEUX_PPUWrite)(uint32 A, uint8 V);
|
2009-09-15 10:20:48 +02:00
|
|
|
extern uint8 FASTCALL FFCEUX_PPURead_Default(uint32 A);
|
|
|
|
void FFCEUX_PPUWrite_Default(uint32 A, uint8 V);
|
2009-07-17 19:27:04 +02:00
|
|
|
|
|
|
|
extern int scanline;
|
2012-01-09 02:59:06 +01:00
|
|
|
extern int g_rasterpos;
|
2009-07-17 19:27:04 +02:00
|
|
|
extern uint8 PPU[4];
|
|
|
|
|
|
|
|
enum PPUPHASE {
|
|
|
|
PPUPHASE_VBL, PPUPHASE_BG, PPUPHASE_OBJ
|
|
|
|
};
|
|
|
|
|
2009-10-22 04:44:03 +02:00
|
|
|
extern PPUPHASE ppuphase;
|