X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=include%2Fpsemu_plugin_defs.h;h=6136ca7033fdda8e20dbb723db81e120b6131cca;hb=26e9c4f1dbc7b0181cc085247f0ad32de3782402;hp=545cfcab6f7758549d403a88b62561705a901e45;hpb=3918505613cb814f8f5e0e8e0471f7b2a2cd8464;p=pcsx_rearmed.git diff --git a/include/psemu_plugin_defs.h b/include/psemu_plugin_defs.h index 545cfcab..6136ca70 100644 --- a/include/psemu_plugin_defs.h +++ b/include/psemu_plugin_defs.h @@ -5,6 +5,10 @@ extern "C" { #endif +// this can't be __stdcall like it was in PSEmu API as too many functions are mixed up +#undef CALLBACK +#define CALLBACK + // header version #define _PPDK_HEADER_VERSION 3 @@ -137,7 +141,7 @@ typedef struct long PADquery(void); unsigned char PADstartPoll(int); - unsigned char PADpoll(unsigned char); + unsigned char PADpoll(unsigned char, int *); */ @@ -196,9 +200,9 @@ typedef struct // controller type - fill it withe predefined values above unsigned char controllerType; - //0 : no multitap between psx and pad - //1 : multitap between psx and pad on port 1 - //2 : multitap between psx and pad on port 2 + unsigned char padding; + unsigned short saveSize; + int portMultitap; int requestPadIndex; @@ -213,16 +217,26 @@ typedef struct // values are in range -128 - 127 unsigned char moveX, moveY; + // Lightgun values + int absoluteX, absoluteY; + unsigned char Vib[2]; unsigned char VibF[2]; - //configuration mode Request 0x43 - int configMode; - unsigned char reserved[87]; - - //Lightgun values - int absoluteX,absoluteY; - + struct { + unsigned char configMode; + unsigned char padMode; // 0 : digital 1: analog + unsigned char cmd4dConfig[6]; + unsigned int lastUseFrame; + unsigned int unused; + unsigned char configModeUsed; + unsigned char padding[3]; + } ds; + unsigned char multitapLongModeEnabled; + unsigned char padding2; + unsigned char txData[34]; + + unsigned char reserved[22]; } PadDataS; /* NET PlugIn v2 */