X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=plugins%2Fdfinput%2Fmain.c;h=974c4dddac819721a7eb5fb7213a032bfdca2c68;hb=7254d73772d63a5babe4061cba61ffa3e4a9e1b6;hp=73b2bda9d59ca885af2684927658dbb24fc897dc;hpb=4c08b9e7dd350a48fc3e0515913d6ccc8b15e5ae;p=pcsx_rearmed.git diff --git a/plugins/dfinput/main.c b/plugins/dfinput/main.c index 73b2bda9..974c4ddd 100644 --- a/plugins/dfinput/main.c +++ b/plugins/dfinput/main.c @@ -1,5 +1,5 @@ /* - * (C) Gražvydas "notaz" Ignotas, 2011 + * (C) Gražvydas "notaz" Ignotas, 2011 * * This work is licensed under the terms of any of these licenses * (at your option): @@ -15,10 +15,12 @@ unsigned char CurPad, CurByte, CurCmd, CmdLen; /* since this is not a proper plugin, so we'll hook emu internals in a hackish way like this */ extern void *PAD1_startPoll, *PAD1_poll; extern void *PAD2_startPoll, *PAD2_poll; -extern unsigned char PAD1__startPoll(int pad); -extern unsigned char PAD2__startPoll(int pad); -extern unsigned char PAD1__poll(unsigned char value); -extern unsigned char PAD2__poll(unsigned char value); +extern unsigned char CALLBACK PAD1__startPoll(int pad); +extern unsigned char CALLBACK PAD2__startPoll(int pad); +extern unsigned char CALLBACK PAD1__poll(unsigned char value); +extern unsigned char CALLBACK PAD2__poll(unsigned char value); + +#ifndef HAVE_LIBRETRO static int old_controller_type1 = -1, old_controller_type2 = -1; @@ -33,10 +35,12 @@ static int old_controller_type1 = -1, old_controller_type2 = -1; pad_init(); \ break; \ case PSE_PAD_TYPE_GUNCON: \ - PAD##n##_startPoll = PADstartPoll_guncon; \ - PAD##n##_poll = PADpoll_guncon; \ - guncon_init(); \ - break; \ + /* Removed for new Guncon functionality, may have been required for very old touchscreen support */ \ + /* PAD##n##_startPoll = PADstartPoll_guncon; */ \ + /* PAD##n##_poll = PADpoll_guncon; */ \ + /* guncon_init(); */ \ + /* break; */ \ + case PSE_PAD_TYPE_NEGCON: \ case PSE_PAD_TYPE_GUN: \ default: \ PAD##n##_startPoll = PAD##n##__startPoll; \ @@ -44,14 +48,21 @@ static int old_controller_type1 = -1, old_controller_type2 = -1; break; \ } \ } +#endif /* HAVE_LIBRETRO */ + void dfinput_activate(void) { + #ifndef HAVE_LIBRETRO PadDataS pad; + pad.portMultitap = -1; + pad.requestPadIndex = 0; PAD1_readPort1(&pad); select_pad(1); + pad.requestPadIndex = 1; PAD2_readPort2(&pad); select_pad(2); + #endif }