Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 503214
Collapse All | Expand All

(-)cwiid-20110107/wminput/conf.c (-6 / +6 lines)
Lines 159-166 Link Here
159
	case CONF_NC_AXIS_STICK_Y:
159
	case CONF_NC_AXIS_STICK_Y:
160
		conf->rpt_mode_flags |= CWIID_RPT_NUNCHUK;
160
		conf->rpt_mode_flags |= CWIID_RPT_NUNCHUK;
161
		if (axis_type == EV_ABS) {
161
		if (axis_type == EV_ABS) {
162
			conf->dev.absmax[action] = 0xFF;
162
			conf->dev.absmax[action] = 0xFF/2.0;
163
			conf->dev.absmin[action] = 0;
163
			conf->dev.absmin[action] = -0xFF/2.0;
164
			conf->dev.absfuzz[action] = 0;
164
			conf->dev.absfuzz[action] = 0;
165
			conf->dev.absflat[action] = 0;
165
			conf->dev.absflat[action] = 0;
166
		}
166
		}
Lines 179-186 Link Here
179
	case CONF_CC_AXIS_L_STICK_Y:
179
	case CONF_CC_AXIS_L_STICK_Y:
180
		conf->rpt_mode_flags |= CWIID_RPT_CLASSIC;
180
		conf->rpt_mode_flags |= CWIID_RPT_CLASSIC;
181
		if (axis_type == EV_ABS) {
181
		if (axis_type == EV_ABS) {
182
			conf->dev.absmax[action] = CWIID_CLASSIC_L_STICK_MAX;
182
			conf->dev.absmax[action] = CWIID_CLASSIC_L_STICK_MAX/2.0;
183
			conf->dev.absmin[action] = 0;
183
			conf->dev.absmin[action] = -CWIID_CLASSIC_L_STICK_MAX/2.0;
184
			conf->dev.absfuzz[action] = 0;
184
			conf->dev.absfuzz[action] = 0;
185
			conf->dev.absflat[action] = 0;
185
			conf->dev.absflat[action] = 0;
186
		}
186
		}
Lines 189-196 Link Here
189
	case CONF_CC_AXIS_R_STICK_Y:
189
	case CONF_CC_AXIS_R_STICK_Y:
190
		conf->rpt_mode_flags |= CWIID_RPT_CLASSIC;
190
		conf->rpt_mode_flags |= CWIID_RPT_CLASSIC;
191
		if (axis_type == EV_ABS) {
191
		if (axis_type == EV_ABS) {
192
			conf->dev.absmax[action] = CWIID_CLASSIC_R_STICK_MAX;
192
			conf->dev.absmax[action] = CWIID_CLASSIC_R_STICK_MAX/2.0;
193
			conf->dev.absmin[action] = 0;
193
			conf->dev.absmin[action] = -CWIID_CLASSIC_R_STICK_MAX/2.0;
194
			conf->dev.absfuzz[action] = 0;
194
			conf->dev.absfuzz[action] = 0;
195
			conf->dev.absflat[action] = 0;
195
			conf->dev.absflat[action] = 0;
196
		}
196
		}
(-)cwiid-20110107/wminput/main.c (-12 / +12 lines)
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);

Return to bug 503214