diff --git a/source/hid/hid.c b/source/hid/hid.c index f709919..83fc7d4 100644 --- a/source/hid/hid.c +++ b/source/hid/hid.c @@ -50,8 +50,8 @@ Input_t *hidRead(){ LbaseY = controller->lstick_y; } - inputs.up = (controller->up || (controller->lstick_y > LbaseY + 500)) ? 1 : 0; - inputs.down = (controller->down || (controller->lstick_y < LbaseY - 500)) ? 1 : 0; + inputs.up = (controller->up || inputs.volp || (controller->lstick_y > LbaseY + 500)) ? 1 : 0; + inputs.down = (controller->down || inputs.volm || (controller->lstick_y < LbaseY - 500)) ? 1 : 0; inputs.left = (controller->left || (controller->lstick_x < LbaseX - 500)) ? 1 : 0; inputs.right = (controller->right || (controller->lstick_x > LbaseX + 500)) ? 1 : 0; } @@ -71,8 +71,7 @@ Input_t *hidRead(){ inputs.rLeft = (controller->rstick_x < RbaseX - 500) ? 1 : 0; inputs.rRight = (controller->rstick_x > RbaseX + 500) ? 1 : 0; } - else - inputs.a = inputs.power; + inputs.a = inputs.a || inputs.power; return &inputs; } @@ -104,4 +103,4 @@ Input_t *hidWait(){ bool hidConnected(){ jc_gamepad_rpt_t *controller = joycon_poll(); return (controller->conn_l && controller->conn_r) ? 1 : 0; -} \ No newline at end of file +}