X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=libpcsxcore%2Fplugins.h;h=269ef18a5660812f89d07c31d688fb50d657f38c;hb=2f59faba23ff29fd7679d217947d1574d271b5a6;hp=b7af7c3a4f0195fc6332fa8835b78d52ca30c3b7;hpb=f6eb0b1c75fd9103a1ad18aed5d00aa0c41fa24e;p=pcsx_rearmed.git diff --git a/libpcsxcore/plugins.h b/libpcsxcore/plugins.h index b7af7c3a..269ef18a 100644 --- a/libpcsxcore/plugins.h +++ b/libpcsxcore/plugins.h @@ -76,6 +76,7 @@ typedef long (CALLBACK* GPUfreeze)(uint32_t, GPUFreeze_t *); typedef long (CALLBACK* GPUgetScreenPic)(unsigned char *); typedef long (CALLBACK* GPUshowScreenPic)(unsigned char *); typedef void (CALLBACK* GPUvBlank)(int, int); +typedef void (CALLBACK* GPUgetScreenInfo)(int *, int *); // GPU function pointers extern GPUupdateLace GPU_updateLace; @@ -100,6 +101,7 @@ extern GPUfreeze GPU_freeze; extern GPUgetScreenPic GPU_getScreenPic; extern GPUshowScreenPic GPU_showScreenPic; extern GPUvBlank GPU_vBlank; +extern GPUgetScreenInfo GPU_getScreenInfo; // CD-ROM Functions typedef long (CALLBACK* CDRinit)(void); @@ -118,9 +120,9 @@ typedef long (CALLBACK* CDRplay)(unsigned char *); typedef long (CALLBACK* CDRstop)(void); typedef long (CALLBACK* CDRsetfilename)(char *); struct CdrStat { - uint32_t Type; - uint32_t Status; - unsigned char Time[3]; + uint32_t Type; // DATA, CDDA + uint32_t Status; // same as cdr.StatP + unsigned char Time_[3]; // unused }; typedef long (CALLBACK* CDRgetStatus)(struct CdrStat *); typedef char* (CALLBACK* CDRgetDriveLetter)(void); @@ -159,16 +161,18 @@ extern CDRsetfilename CDR_setfilename; extern CDRreadCDDA CDR_readCDDA; extern CDRgetTE CDR_getTE; +long CALLBACK CDR__getStatus(struct CdrStat *stat); + // SPU Functions typedef long (CALLBACK* SPUinit)(void); typedef long (CALLBACK* SPUshutdown)(void); typedef long (CALLBACK* SPUclose)(void); typedef void (CALLBACK* SPUwriteRegister)(unsigned long, unsigned short, unsigned int); -typedef unsigned short (CALLBACK* SPUreadRegister)(unsigned long); +typedef unsigned short (CALLBACK* SPUreadRegister)(unsigned long, unsigned int); typedef void (CALLBACK* SPUwriteDMAMem)(unsigned short *, int, unsigned int); typedef void (CALLBACK* SPUreadDMAMem)(unsigned short *, int, unsigned int); typedef void (CALLBACK* SPUplayADPCMchannel)(xa_decode_t *, unsigned int, int); -typedef void (CALLBACK* SPUregisterCallback)(void (CALLBACK *callback)(void)); +typedef void (CALLBACK* SPUregisterCallback)(void (CALLBACK *callback)(int)); typedef void (CALLBACK* SPUregisterScheduleCb)(void (CALLBACK *callback)(unsigned int cycles_after)); typedef struct { unsigned char PluginName[8]; @@ -182,7 +186,7 @@ typedef struct { unsigned char SPUPorts[0x200]; unsigned char SPURam[0x80000]; xa_decode_t xa; - unsigned char *SPUInfo; + unsigned char *unused; } SPUFreeze_t; typedef long (CALLBACK* SPUfreeze)(uint32_t, SPUFreeze_t *, uint32_t); typedef void (CALLBACK* SPUasync)(uint32_t, uint32_t); @@ -379,6 +383,8 @@ const char *GetIsoFile(void); boolean UsingIso(void); void SetCdOpenCaseTime(s64 time); +int padFreeze(void *f, int Mode); + extern void pl_gun_byte2(int port, unsigned char byte); extern void plat_trigger_vibrate(int pad, int low, int high); extern void plat_get_psx_resolution(int *xres, int *yres);