6 static u16 currentJoyState[2] = {0};
7 static u16 previousJoyState[2] = {0};
8 u16 buttons[] = {BUTTON_UP, BUTTON_DOWN, BUTTON_LEFT, BUTTON_RIGHT, BUTTON_A, BUTTON_B, BUTTON_C, BUTTON_X, BUTTON_Y, BUTTON_Z, BUTTON_START, BUTTON_MODE};
11 for (
int jogador = 0; jogador < 2; jogador++)
13 previousJoyState[jogador] = currentJoyState[jogador];
17 currentJoyState[jogador] = JOY_readJoypad(JOY_1);
19 else if (jogador == 1)
21 currentJoyState[jogador] = JOY_readJoypad(JOY_2);
24 int numButtons =
sizeof(buttons) /
sizeof(buttons[0]);
26 for (
int i = 0; i < numButtons; i++)
28 u16 button = buttons[i];
30 if (!(currentJoyState[jogador] & button))
33 player[jogador].key_JOY_status[i] = 0;
35 else if ((currentJoyState[jogador] & button) && !(previousJoyState[jogador] & button))
38 player[jogador].key_JOY_status[i] = 1;
40 else if (currentJoyState[jogador] & button)
43 player[jogador].key_JOY_status[i] = 2;
45 else if (!(currentJoyState[jogador] & button) && (previousJoyState[jogador] & button))
48 player[jogador].key_JOY_status[i] = 3;
51 if (i == numButtons - 1)
53 player[jogador].key_JOY_UP_status =
player[jogador].key_JOY_status[0];
54 player[jogador].key_JOY_DOWN_status =
player[jogador].key_JOY_status[1];
55 player[jogador].key_JOY_LEFT_status =
player[jogador].key_JOY_status[2];
56 player[jogador].key_JOY_RIGHT_status =
player[jogador].key_JOY_status[3];
57 player[jogador].key_JOY_A_status =
player[jogador].key_JOY_status[4];
58 player[jogador].key_JOY_B_status =
player[jogador].key_JOY_status[5];
59 player[jogador].key_JOY_C_status =
player[jogador].key_JOY_status[6];
60 player[jogador].key_JOY_X_status =
player[jogador].key_JOY_status[7];
61 player[jogador].key_JOY_Y_status =
player[jogador].key_JOY_status[8];
62 player[jogador].key_JOY_Z_status =
player[jogador].key_JOY_status[9];
63 player[jogador].key_JOY_START_status =
player[jogador].key_JOY_status[10];
64 player[jogador].key_JOY_MODE_status =
player[jogador].key_JOY_status[11];