Lines 510-518
Link Here
|
510 |
|
510 |
|
511 |
/* Nunchuk.Stick.X */ |
511 |
/* Nunchuk.Stick.X */ |
512 |
if (conf.amap[CONF_NC_AXIS_STICK_X].active) { |
512 |
if (conf.amap[CONF_NC_AXIS_STICK_X].active) { |
513 |
axis_value = mesg->stick[CWIID_X]; |
513 |
axis_value = mesg->stick[CWIID_X]-0xFF/2.0; |
514 |
if (conf.amap[CONF_NC_AXIS_STICK_X].flags & CONF_INVERT) { |
514 |
if (conf.amap[CONF_NC_AXIS_STICK_X].flags & CONF_INVERT) { |
515 |
axis_value = 0xFF - axis_value; |
515 |
axis_value = -axis_value; |
516 |
} |
516 |
} |
517 |
send_event(&conf, conf.amap[CONF_NC_AXIS_STICK_X].axis_type, |
517 |
send_event(&conf, conf.amap[CONF_NC_AXIS_STICK_X].axis_type, |
518 |
conf.amap[CONF_NC_AXIS_STICK_X].action, axis_value); |
518 |
conf.amap[CONF_NC_AXIS_STICK_X].action, axis_value); |
Lines 520-528
Link Here
|
520 |
|
520 |
|
521 |
/* Nunchuk.Stick.Y */ |
521 |
/* Nunchuk.Stick.Y */ |
522 |
if (conf.amap[CONF_NC_AXIS_STICK_Y].active) { |
522 |
if (conf.amap[CONF_NC_AXIS_STICK_Y].active) { |
523 |
axis_value = mesg->stick[CWIID_Y]; |
523 |
axis_value = mesg->stick[CWIID_Y]-0xFF/2.0; |
524 |
if (conf.amap[CONF_NC_AXIS_STICK_Y].flags & CONF_INVERT) { |
524 |
if (conf.amap[CONF_NC_AXIS_STICK_Y].flags & CONF_INVERT) { |
525 |
axis_value = 0xFF - axis_value; |
525 |
axis_value = axis_value; |
526 |
} |
526 |
} |
527 |
send_event(&conf, conf.amap[CONF_NC_AXIS_STICK_Y].axis_type, |
527 |
send_event(&conf, conf.amap[CONF_NC_AXIS_STICK_Y].axis_type, |
528 |
conf.amap[CONF_NC_AXIS_STICK_Y].action, axis_value); |
528 |
conf.amap[CONF_NC_AXIS_STICK_Y].action, axis_value); |
Lines 585-593
Link Here
|
585 |
|
585 |
|
586 |
/* Classic.LStick.X */ |
586 |
/* Classic.LStick.X */ |
587 |
if (conf.amap[CONF_CC_AXIS_L_STICK_X].active) { |
587 |
if (conf.amap[CONF_CC_AXIS_L_STICK_X].active) { |
588 |
axis_value = mesg->l_stick[CWIID_X]; |
588 |
axis_value = mesg->l_stick[CWIID_X]-CWIID_CLASSIC_L_STICK_MAX/2.0; |
589 |
if (conf.amap[CONF_CC_AXIS_L_STICK_X].flags & CONF_INVERT) { |
589 |
if (conf.amap[CONF_CC_AXIS_L_STICK_X].flags & CONF_INVERT) { |
590 |
axis_value = CWIID_CLASSIC_L_STICK_MAX - axis_value; |
590 |
axis_value = -axis_value; |
591 |
} |
591 |
} |
592 |
send_event(&conf, conf.amap[CONF_CC_AXIS_L_STICK_X].axis_type, |
592 |
send_event(&conf, conf.amap[CONF_CC_AXIS_L_STICK_X].axis_type, |
593 |
conf.amap[CONF_CC_AXIS_L_STICK_X].action, axis_value); |
593 |
conf.amap[CONF_CC_AXIS_L_STICK_X].action, axis_value); |
Lines 595-603
Link Here
|
595 |
|
595 |
|
596 |
/* Classic.LStick.Y */ |
596 |
/* Classic.LStick.Y */ |
597 |
if (conf.amap[CONF_CC_AXIS_L_STICK_Y].active) { |
597 |
if (conf.amap[CONF_CC_AXIS_L_STICK_Y].active) { |
598 |
axis_value = mesg->l_stick[CWIID_Y]; |
598 |
axis_value = mesg->l_stick[CWIID_Y]-CWIID_CLASSIC_L_STICK_MAX/2.0; |
599 |
if (conf.amap[CONF_CC_AXIS_L_STICK_Y].flags & CONF_INVERT) { |
599 |
if (conf.amap[CONF_CC_AXIS_L_STICK_Y].flags & CONF_INVERT) { |
600 |
axis_value = CWIID_CLASSIC_L_STICK_MAX - axis_value; |
600 |
axis_value = -axis_value; |
601 |
} |
601 |
} |
602 |
send_event(&conf, conf.amap[CONF_CC_AXIS_L_STICK_Y].axis_type, |
602 |
send_event(&conf, conf.amap[CONF_CC_AXIS_L_STICK_Y].axis_type, |
603 |
conf.amap[CONF_CC_AXIS_L_STICK_Y].action, axis_value); |
603 |
conf.amap[CONF_CC_AXIS_L_STICK_Y].action, axis_value); |
Lines 605-613
Link Here
|
605 |
|
605 |
|
606 |
/* Classic.RStick.X */ |
606 |
/* Classic.RStick.X */ |
607 |
if (conf.amap[CONF_CC_AXIS_R_STICK_X].active) { |
607 |
if (conf.amap[CONF_CC_AXIS_R_STICK_X].active) { |
608 |
axis_value = mesg->r_stick[CWIID_X]; |
608 |
axis_value = mesg->r_stick[CWIID_X]-CWIID_CLASSIC_R_STICK_MAX/2.0; |
609 |
if (conf.amap[CONF_CC_AXIS_R_STICK_X].flags & CONF_INVERT) { |
609 |
if (conf.amap[CONF_CC_AXIS_R_STICK_X].flags & CONF_INVERT) { |
610 |
axis_value = CWIID_CLASSIC_R_STICK_MAX - axis_value; |
610 |
axis_value = -axis_value; |
611 |
} |
611 |
} |
612 |
send_event(&conf, conf.amap[CONF_CC_AXIS_R_STICK_X].axis_type, |
612 |
send_event(&conf, conf.amap[CONF_CC_AXIS_R_STICK_X].axis_type, |
613 |
conf.amap[CONF_CC_AXIS_R_STICK_X].action, axis_value); |
613 |
conf.amap[CONF_CC_AXIS_R_STICK_X].action, axis_value); |
Lines 615-623
Link Here
|
615 |
|
615 |
|
616 |
/* Classic.RStick.Y */ |
616 |
/* Classic.RStick.Y */ |
617 |
if (conf.amap[CONF_CC_AXIS_R_STICK_Y].active) { |
617 |
if (conf.amap[CONF_CC_AXIS_R_STICK_Y].active) { |
618 |
axis_value = mesg->r_stick[CWIID_Y]; |
618 |
axis_value = mesg->r_stick[CWIID_Y]-CWIID_CLASSIC_R_STICK_MAX/2.0; |
619 |
if (conf.amap[CONF_CC_AXIS_R_STICK_Y].flags & CONF_INVERT) { |
619 |
if (conf.amap[CONF_CC_AXIS_R_STICK_Y].flags & CONF_INVERT) { |
620 |
axis_value = CWIID_CLASSIC_R_STICK_MAX - axis_value; |
620 |
axis_value = -axis_value; |
621 |
} |
621 |
} |
622 |
send_event(&conf, conf.amap[CONF_CC_AXIS_R_STICK_Y].axis_type, |
622 |
send_event(&conf, conf.amap[CONF_CC_AXIS_R_STICK_Y].axis_type, |
623 |
conf.amap[CONF_CC_AXIS_R_STICK_Y].action, axis_value); |
623 |
conf.amap[CONF_CC_AXIS_R_STICK_Y].action, axis_value); |