From ca4066b2fb81c66a1a478b3c24ef463b6107cefe Mon Sep 17 00:00:00 2001 From: "SND\\edgbla_cp" Date: Wed, 30 Nov 2011 15:46:36 +0000 Subject: git-svn-id: https://pcsxr.svn.codeplex.com/svn/pcsxr@72730 e17a0e51-4ae3-4d35-97c3-1a29b211df97 --- libpcsxcore/plugins.c | 19 +++---------------- libpcsxcore/plugins.h | 10 +++------- libpcsxcore/psxcounters.c | 2 ++ libpcsxcore/r3000a.c | 8 -------- 4 files changed, 8 insertions(+), 31 deletions(-) (limited to 'libpcsxcore') diff --git a/libpcsxcore/plugins.c b/libpcsxcore/plugins.c index 28c9c327..9db5421b 100644 --- a/libpcsxcore/plugins.c +++ b/libpcsxcore/plugins.c @@ -49,9 +49,8 @@ GPUfreeze GPU_freeze; GPUgetScreenPic GPU_getScreenPic; GPUshowScreenPic GPU_showScreenPic; GPUclearDynarec GPU_clearDynarec; +GPUhSync GPU_hSync; GPUvBlank GPU_vBlank; -GPUregisterCallback GPU_registerCallback; -GPUidle GPU_idle; GPUvisualVibration GPU_visualVibration; GPUcursor GPU_cursor; GPUaddVertex GPU_addVertex; @@ -201,16 +200,6 @@ void CALLBACK GPU__displayText(char *pText) { SysPrintf("%s\n", pText); } -void CALLBACK GPUbusy( int ticks ) -{ - //printf( "GPUbusy( %i )\n", ticks ); - //fflush( 0 ); - - psxRegs.interrupt |= (1 << PSXINT_GPUBUSY); - psxRegs.intCycle[PSXINT_GPUBUSY].cycle = ticks; - psxRegs.intCycle[PSXINT_GPUBUSY].sCycle = psxRegs.cycle; -} - long CALLBACK GPU__configure(void) { return 0; } long CALLBACK GPU__test(void) { return 0; } void CALLBACK GPU__about(void) {} @@ -219,9 +208,8 @@ void CALLBACK GPU__keypressed(int key) {} long CALLBACK GPU__getScreenPic(unsigned char *pMem) { return -1; } long CALLBACK GPU__showScreenPic(unsigned char *pMem) { return -1; } void CALLBACK GPU__clearDynarec(void (CALLBACK *callback)(void)) {} +void CALLBACK GPU__hSync(int val) {} void CALLBACK GPU__vBlank(int val) {} -void CALLBACK GPU__registerCallback(void (CALLBACK *callback)(int)) {} -void CALLBACK GPU__idle(void) {} void CALLBACK GPU__visualVibration(unsigned long iSmall, unsigned long iBig) {} void CALLBACK GPU__cursor(int player, int x, int y) {} void CALLBACK GPU__addVertex(short sx,short sy,s64 fx,s64 fy,s64 fz) {} @@ -264,9 +252,8 @@ static int LoadGPUplugin(const char *GPUdll) { LoadGpuSym0(getScreenPic, "GPUgetScreenPic"); LoadGpuSym0(showScreenPic, "GPUshowScreenPic"); LoadGpuSym0(clearDynarec, "GPUclearDynarec"); + LoadGpuSym0(hSync, "GPUhSync"); LoadGpuSym0(vBlank, "GPUvBlank"); - LoadGpuSym0(registerCallback, "GPUregisterCallback"); - LoadGpuSym0(idle, "GPUidle"); LoadGpuSym0(visualVibration, "GPUvisualVibration"); LoadGpuSym0(cursor, "GPUcursor"); LoadGpuSym0(addVertex, "GPUaddVertex"); diff --git a/libpcsxcore/plugins.h b/libpcsxcore/plugins.h index cf2dbdff..bf55e65f 100644 --- a/libpcsxcore/plugins.h +++ b/libpcsxcore/plugins.h @@ -93,12 +93,11 @@ typedef long (CALLBACK* GPUfreeze)(uint32_t, GPUFreeze_t *); typedef long (CALLBACK* GPUgetScreenPic)(unsigned char *); typedef long (CALLBACK* GPUshowScreenPic)(unsigned char *); typedef void (CALLBACK* GPUclearDynarec)(void (CALLBACK *callback)(void)); +typedef void (CALLBACK* GPUhSync)(int); typedef void (CALLBACK* GPUvBlank)(int); -typedef void (CALLBACK* GPUregisterCallback)(void (CALLBACK *callback)(int)); -typedef void (CALLBACK* GPUidle)(void); typedef void (CALLBACK* GPUvisualVibration)(uint32_t, uint32_t); typedef void (CALLBACK* GPUcursor)(int, int, int); - typedef void (CALLBACK* GPUaddVertex)(short,short,s64,s64,s64); +typedef void (CALLBACK* GPUaddVertex)(short,short,s64,s64,s64); // GPU function pointers extern GPUupdateLace GPU_updateLace; @@ -123,9 +122,8 @@ extern GPUfreeze GPU_freeze; extern GPUgetScreenPic GPU_getScreenPic; extern GPUshowScreenPic GPU_showScreenPic; extern GPUclearDynarec GPU_clearDynarec; +extern GPUhSync GPU_hSync; extern GPUvBlank GPU_vBlank; -extern GPUregisterCallback GPU_registerCallback; -extern GPUidle GPU_idle; extern GPUvisualVibration GPU_visualVibration; extern GPUcursor GPU_cursor; extern GPUaddVertex GPU_addVertex; @@ -415,8 +413,6 @@ extern SIO1registerCallback SIO1_registerCallback; void CALLBACK clearDynarec(void); -void CALLBACK GPUbusy( int ticks ); - void SetIsoFile(const char *filename); const char *GetIsoFile(void); boolean UsingIso(void); diff --git a/libpcsxcore/psxcounters.c b/libpcsxcore/psxcounters.c index 51694aa4..8ecb629f 100644 --- a/libpcsxcore/psxcounters.c +++ b/libpcsxcore/psxcounters.c @@ -270,6 +270,8 @@ void psxRcntUpdate() { psxRcntReset( 3 ); + GPU_hSync(hSyncCount); + spuSyncCount++; hSyncCount++; diff --git a/libpcsxcore/r3000a.c b/libpcsxcore/r3000a.c index a44bc369..9a37abe6 100644 --- a/libpcsxcore/r3000a.c +++ b/libpcsxcore/r3000a.c @@ -186,13 +186,6 @@ void psxBranchTest() { spuInterrupt(); } } - if (psxRegs.interrupt & (1 << PSXINT_GPUBUSY)) { // gpu busy - if ((psxRegs.cycle - psxRegs.intCycle[PSXINT_GPUBUSY].sCycle) >= psxRegs.intCycle[PSXINT_GPUBUSY].cycle) { - psxRegs.interrupt &= ~(1 << PSXINT_GPUBUSY); - GPU_idle(); - } - } - if (psxRegs.interrupt & (1 << PSXINT_MDECINDMA)) { // mdec in if ((psxRegs.cycle - psxRegs.intCycle[PSXINT_MDECINDMA].sCycle) >= psxRegs.intCycle[PSXINT_MDECINDMA].cycle) { psxRegs.interrupt &= ~(1 << PSXINT_MDECINDMA); @@ -272,4 +265,3 @@ void psxExecuteBios() { while (psxRegs.pc != 0x80030000) psxCpu->ExecuteBlock(); } - -- cgit v1.2.3