\r
void emu_update_input(void)\r
{\r
- unsigned int allActions[2] = { 0, 0 }, events;\r
- static unsigned int prevEvents = 0;\r
+ static int prev_events = 0;\r
+ int actions[IN_BINDTYPE_COUNT] = { 0, };\r
+ int pl_actions[2];\r
+ int events;\r
\r
- /* FIXME: player2 */\r
- allActions[0] = in_update();\r
+ in_update(actions);\r
\r
- PicoPad[0] = allActions[0] & 0xfff;\r
- PicoPad[1] = allActions[1] & 0xfff;\r
+ pl_actions[0] = actions[IN_BINDTYPE_PLAYER12];\r
+ pl_actions[1] = actions[IN_BINDTYPE_PLAYER12] >> 16;\r
\r
- if (allActions[0] & 0x7000) do_turbo(&PicoPad[0], allActions[0]);\r
- if (allActions[1] & 0x7000) do_turbo(&PicoPad[1], allActions[1]);\r
+ PicoPad[0] = pl_actions[0] & 0xfff;\r
+ PicoPad[1] = pl_actions[1] & 0xfff;\r
\r
- events = (allActions[0] | allActions[1]) & PEV_MASK;\r
+ if (pl_actions[0] & 0x7000)\r
+ do_turbo(&PicoPad[0], pl_actions[0]);\r
+ if (pl_actions[1] & 0x7000)\r
+ do_turbo(&PicoPad[1], pl_actions[1]);\r
+\r
+ events = actions[IN_BINDTYPE_EMU] & PEV_MASK;\r
\r
// volume is treated in special way and triggered every frame\r
if (events & (PEV_VOL_DOWN|PEV_VOL_UP))\r
plat_update_volume(1, events & PEV_VOL_UP);\r
\r
- if ((events ^ prevEvents) & PEV_FF) {\r
+ if ((events ^ prev_events) & PEV_FF) {\r
emu_set_fastforward(events & PEV_FF);\r
plat_update_volume(0, 0);\r
reset_timing = 1;\r
}\r
\r
- events &= ~prevEvents;\r
+ events &= ~prev_events;\r
\r
if (PicoAHW == PAHW_PICO)\r
run_events_pico(events);\r
if (movie_data)\r
update_movie();\r
\r
- prevEvents = (allActions[0] | allActions[1]) & PEV_MASK;\r
+ prev_events = actions[IN_BINDTYPE_EMU] & PEV_MASK;\r
}\r
\r
static void mkdir_path(char *path_with_reserve, int pos, const char *name)\r