MCPcopy Create free account
hub / github.com/Santroller/Santroller / readAxis

Method readAxis

lib/psx_controller/psx_controller.cpp:350–473  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

348}
349
350uint16_t PSXController::readAxis(PS2AxisType axisType)
351{
352 switch (type)
353 {
354 case PS2ControllerTypeDigital:
355 case PS2ControllerTypeUnknown:
356 break;
357 case PS2ControllerTypeDualshock2:
358 switch (axisType)
359 {
360 case PS2AxisLeftStickX:
361 return lastInputs[7] << 8;
362 case PS2AxisLeftStickY:
363 return (255 - lastInputs[8]) << 8;
364 case PS2AxisRightStickX:
365 return (lastInputs[5]) << 8;
366 case PS2AxisRightStickY:
367 return (255 - lastInputs[6]) << 8;
368 case PS2AxisDualshock2RightButton:
369 return lastInputs[9] << 8;
370 case PS2AxisDualshock2LeftButton:
371 return lastInputs[10] << 8;
372 case PS2AxisDualshock2UpButton:
373 return lastInputs[11] << 8;
374 case PS2AxisDualshock2DownButton:
375 return lastInputs[12] << 8;
376 case PS2AxisDualshock2Triangle:
377 return lastInputs[13] << 8;
378 case PS2AxisDualshock2Circle:
379 return lastInputs[14] << 8;
380 case PS2AxisDualshock2Cross:
381 return lastInputs[15] << 8;
382 case PS2AxisDualshock2Square:
383 return lastInputs[16] << 8;
384 case PS2AxisDualshock2L1:
385 return lastInputs[17] << 8;
386 case PS2AxisDualshock2R1:
387 return lastInputs[18] << 8;
388 case PS2AxisDualshock2L2:
389 return lastInputs[19] << 8;
390 case PS2AxisDualshock2R2:
391 return lastInputs[20] << 8;
392 default:
393 return 0;
394 }
395 case PS2ControllerTypeDualshock:
396 case PS2ControllerTypeFlightStick:
397 switch (axisType)
398 {
399 case PS2AxisLeftStickX:
400 return lastInputs[7] << 8;
401 case PS2AxisLeftStickY:
402 return (255 - lastInputs[8]) << 8;
403 case PS2AxisRightStickX:
404 return (lastInputs[5]) << 8;
405 case PS2AxisRightStickY:
406 return (255 - lastInputs[6]) << 8;
407 default:

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected