mirror of
https://github.com/libretro/RetroArch
synced 2025-03-02 19:13:34 +00:00
Simplify input_get_state_for_port for analogs
This commit is contained in:
parent
0ed69fd170
commit
30090db941
@ -1128,7 +1128,6 @@ void input_keys_pressed(void *data, input_bits_t *p_new_state)
|
|||||||
void input_get_state_for_port(void *data, unsigned port, input_bits_t *p_new_state)
|
void input_get_state_for_port(void *data, unsigned port, input_bits_t *p_new_state)
|
||||||
{
|
{
|
||||||
unsigned i, j;
|
unsigned i, j;
|
||||||
int16_t val;
|
|
||||||
rarch_joypad_info_t joypad_info;
|
rarch_joypad_info_t joypad_info;
|
||||||
settings_t *settings = (settings_t*)data;
|
settings_t *settings = (settings_t*)data;
|
||||||
BIT256_CLEAR_ALL_PTR(p_new_state);
|
BIT256_CLEAR_ALL_PTR(p_new_state);
|
||||||
@ -1148,34 +1147,20 @@ void input_get_state_for_port(void *data, unsigned port, input_bits_t *p_new_sta
|
|||||||
BIT256_SET_PTR(p_new_state, i);
|
BIT256_SET_PTR(p_new_state, i);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* left-stick x */
|
for (i = 0; i < 2; i++)
|
||||||
val = input_joypad_analog(input_driver_get_joypad_driver(), joypad_info, port, 0, 0, libretro_input_binds[port]);
|
{
|
||||||
if (val >= 0)
|
for (j = 0; j < 2; j++)
|
||||||
p_new_state->analogs[0] = val;
|
{
|
||||||
else
|
unsigned offset = 0 + (i * 4) + (j * 2);
|
||||||
p_new_state->analogs[1] = val;
|
int16_t val = input_joypad_analog(input_driver_get_joypad_driver(),
|
||||||
|
joypad_info, port, i, j, libretro_input_binds[port]);
|
||||||
|
|
||||||
/* left-stick y */
|
|
||||||
val = input_joypad_analog(input_driver_get_joypad_driver(), joypad_info, port, 0, 1, libretro_input_binds[port]);
|
|
||||||
if (val >= 0)
|
if (val >= 0)
|
||||||
p_new_state->analogs[2] = val;
|
p_new_state->analogs[offset] = val;
|
||||||
else
|
else
|
||||||
p_new_state->analogs[3] = val;
|
p_new_state->analogs[offset+1] = val;
|
||||||
|
}
|
||||||
/* right-stick x */
|
}
|
||||||
val = input_joypad_analog(input_driver_get_joypad_driver(), joypad_info, port, 1, 0, libretro_input_binds[port]);
|
|
||||||
if (val >= 0)
|
|
||||||
p_new_state->analogs[4] = val;
|
|
||||||
else
|
|
||||||
p_new_state->analogs[5] = val;
|
|
||||||
|
|
||||||
/* right-stick y */
|
|
||||||
val = input_joypad_analog(input_driver_get_joypad_driver(), joypad_info, port, 1, 1, libretro_input_binds[port]);
|
|
||||||
if (val >= 0)
|
|
||||||
p_new_state->analogs[6] = val;
|
|
||||||
else
|
|
||||||
p_new_state->analogs[7] = val;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void *input_driver_get_data(void)
|
void *input_driver_get_data(void)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user