notaz.gp2x.de
/
pcsx_rearmed.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
plugins: expand GPUvBlank to pass hcounter pointer
[pcsx_rearmed.git]
/
frontend
/
plugin.c
diff --git
a/frontend/plugin.c
b/frontend/plugin.c
index
83eb140
..
0d244fa
100644
(file)
--- a/
frontend/plugin.c
+++ b/
frontend/plugin.c
@@
-12,17
+12,13
@@
#include "plugin_lib.h"
#include "plugin.h"
#include "../libpcsxcore/psemu_plugin_defs.h"
#include "plugin_lib.h"
#include "plugin.h"
#include "../libpcsxcore/psemu_plugin_defs.h"
+#include "../libpcsxcore/system.h"
#include "../plugins/cdrcimg/cdrcimg.h"
static int dummy_func() {
return 0;
}
#include "../plugins/cdrcimg/cdrcimg.h"
static int dummy_func() {
return 0;
}
-static long CDRreadTrack(unsigned char *time) {
- fprintf(stderr, "CDRreadTrack\n");
- return -1;
-}
-
/* SPU */
extern long SPUopen(void);
extern long SPUinit(void);
/* SPU */
extern long SPUopen(void);
extern long SPUinit(void);
@@
-47,15
+43,21
@@
extern void SPUplayCDDAchannel(short *, int);
/* PAD */
static long PADreadPort1(PadDataS *pad)
{
/* PAD */
static long PADreadPort1(PadDataS *pad)
{
- pad->controllerType = PSE_PAD_TYPE_STANDARD;
- pad->buttonStatus = ~keystate;
+ pad->controllerType = in_type;
+ pad->buttonStatus = ~in_keystate;
+ if (in_type == PSE_PAD_TYPE_ANALOGPAD) {
+ pad->leftJoyX = in_a1[0];
+ pad->leftJoyY = in_a1[1];
+ pad->rightJoyX = in_a2[0];
+ pad->rightJoyY = in_a2[1];
+ }
return 0;
}
static long PADreadPort2(PadDataS *pad)
{
pad->controllerType = PSE_PAD_TYPE_STANDARD;
return 0;
}
static long PADreadPort2(PadDataS *pad)
{
pad->controllerType = PSE_PAD_TYPE_STANDARD;
- pad->buttonStatus = ~keystate >> 16;
+ pad->buttonStatus = ~
in_
keystate >> 16;
return 0;
}
return 0;
}
@@
-72,17
+74,8
@@
extern uint32_t GPUreadData(void);
extern void GPUreadDataMem(uint32_t *, int);
extern long GPUdmaChain(uint32_t *,uint32_t);
extern void GPUupdateLace(void);
extern void GPUreadDataMem(uint32_t *, int);
extern long GPUdmaChain(uint32_t *,uint32_t);
extern void GPUupdateLace(void);
-extern long GPUconfigure(void);
-extern long GPUtest(void);
-extern void GPUabout(void);
-extern void GPUmakeSnapshot(void);
-extern void GPUkeypressed(int);
-extern void GPUdisplayText(char *);
extern long GPUfreeze(uint32_t, void *);
extern long GPUfreeze(uint32_t, void *);
-extern long GPUgetScreenPic(unsigned char *);
-extern long GPUshowScreenPic(unsigned char *);
-extern void GPUclearDynarec(void (*callback)(void));
-extern void GPUvBlank(int);
+extern void GPUvBlank(int, uint32_t *);
#define DUMMY(id, name) \
#define DUMMY(id, name) \
@@
-91,6
+84,7
@@
extern void GPUvBlank(int);
#define DIRECT(id, name) \
{ id, #name, name }
#define DIRECT(id, name) \
{ id, #name, name }
+#define DUMMY_GPU(name) DUMMY(PLUGIN_GPU, name)
#define DUMMY_CDR(name) DUMMY(PLUGIN_CDR, name)
#define DUMMY_PAD(name) DUMMY(PLUGIN_PAD, name)
#define DIRECT_SPU(name) DIRECT(PLUGIN_SPU, name)
#define DUMMY_CDR(name) DUMMY(PLUGIN_CDR, name)
#define DUMMY_PAD(name) DUMMY(PLUGIN_PAD, name)
#define DIRECT_SPU(name) DIRECT(PLUGIN_SPU, name)
@@
-122,7
+116,6
@@
static const struct {
DUMMY_CDR(CDRsetfilename),
DUMMY_CDR(CDRreadCDDA),
DUMMY_CDR(CDRgetTE),
DUMMY_CDR(CDRsetfilename),
DUMMY_CDR(CDRreadCDDA),
DUMMY_CDR(CDRgetTE),
- DIRECT(PLUGIN_CDR, CDRreadTrack),
/* SPU */
DIRECT_SPU(SPUconfigure),
DIRECT_SPU(SPUabout),
/* SPU */
DIRECT_SPU(SPUconfigure),
DIRECT_SPU(SPUabout),
@@
-164,9
+157,6
@@
static const struct {
DIRECT_GPU(GPUupdateLace),
DIRECT_GPU(GPUinit),
DIRECT_GPU(GPUshutdown),
DIRECT_GPU(GPUupdateLace),
DIRECT_GPU(GPUinit),
DIRECT_GPU(GPUshutdown),
- DIRECT_GPU(GPUconfigure),
- DIRECT_GPU(GPUtest),
- DIRECT_GPU(GPUabout),
DIRECT_GPU(GPUopen),
DIRECT_GPU(GPUclose),
DIRECT_GPU(GPUreadStatus),
DIRECT_GPU(GPUopen),
DIRECT_GPU(GPUclose),
DIRECT_GPU(GPUreadStatus),
@@
-176,14
+166,20
@@
static const struct {
DIRECT_GPU(GPUwriteData),
DIRECT_GPU(GPUwriteDataMem),
DIRECT_GPU(GPUdmaChain),
DIRECT_GPU(GPUwriteData),
DIRECT_GPU(GPUwriteDataMem),
DIRECT_GPU(GPUdmaChain),
+ DIRECT_GPU(GPUfreeze),
+ DIRECT_GPU(GPUvBlank),
+
+ DUMMY_GPU(GPUdisplayText),
+/*
DIRECT_GPU(GPUkeypressed),
DIRECT_GPU(GPUkeypressed),
- DIRECT_GPU(GPUdisplayText),
DIRECT_GPU(GPUmakeSnapshot),
DIRECT_GPU(GPUmakeSnapshot),
- DIRECT_GPU(GPUfreeze),
+ DIRECT_GPU(GPUconfigure),
+ DIRECT_GPU(GPUtest),
+ DIRECT_GPU(GPUabout),
DIRECT_GPU(GPUgetScreenPic),
DIRECT_GPU(GPUshowScreenPic),
DIRECT_GPU(GPUgetScreenPic),
DIRECT_GPU(GPUshowScreenPic),
+*/
// DIRECT_GPU(GPUclearDynarec),
// DIRECT_GPU(GPUclearDynarec),
-// DIRECT_GPU(GPUvBlank),
};
void *plugin_link(enum builtint_plugins_e id, const char *sym)
};
void *plugin_link(enum builtint_plugins_e id, const char *sym)
@@
-207,6
+203,16
@@
void *plugin_link(enum builtint_plugins_e id, const char *sym)
return NULL;
}
return NULL;
}
+void plugin_call_rearmed_cbs(void)
+{
+ extern void *hGPUDriver;
+ void (*rearmed_set_cbs)(const struct rearmed_cbs *cbs);
+
+ rearmed_set_cbs = SysLoadSym(hGPUDriver, "GPUrearmedCallbacks");
+ if (rearmed_set_cbs != NULL)
+ rearmed_set_cbs(&pl_rearmed_cbs);
+}
+
#ifdef PCNT
/* basic profile stuff */
#ifdef PCNT
/* basic profile stuff */