X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=include%2Fpsemu_plugin_defs.h;h=2d688f207ded1041fbef9bcf3a43405761cfbab9;hb=2db412ade2b09ca04da81d91b75bbf6475dbde5a;hp=0805f4ae39e8d8b28a98ab2f6d69375859fe3981;hpb=4e47706596441172d1cc3f203b8baa398cea3023;p=pcsx_rearmed.git diff --git a/include/psemu_plugin_defs.h b/include/psemu_plugin_defs.h index 0805f4ae..2d688f20 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 *); */ @@ -153,6 +157,8 @@ typedef struct +// No controller +#define PSE_PAD_TYPE_NONE 0 // MOUSE SCPH-1030 #define PSE_PAD_TYPE_MOUSE 1 // NEGCON - 16 button analog controller SLPH-00001 @@ -191,9 +197,15 @@ typedef struct typedef struct { - // controler type - fill it withe predefined values above + // 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 + int portMultitap; + int requestPadIndex; + // status of buttons - every controller fills this field unsigned short buttonStatus; @@ -205,11 +217,17 @@ typedef struct // values are in range -128 - 127 unsigned char moveX, moveY; - uint8_t Vib[2]; - - volatile uint8_t VibF[2]; - - unsigned char reserved[87]; + unsigned char Vib[2]; + unsigned char VibF[2]; + + //configuration mode Request 0x43 + int configMode; + + unsigned char txData[32]; + unsigned char reserved[56]; + + //Lightgun values + int absoluteX,absoluteY; } PadDataS;