1 #include "system.h"
2 
3 #ifdef USE_MOTION_SENSOR
4 
5 #if VITA
6 
7 #include <psp2/motion.h>
8 
9 //-lSceMotion_stub is required.
10 
11 static SceMotionSensorState state;
12 static bool sensor_state = false;
13 
systemUpdateMotionSensor(void)14 void systemUpdateMotionSensor (void) {
15 	sceMotionGetSensorState(&state, 1);
16 }
17 
systemGetAccelX(void)18 int systemGetAccelX (void) {
19 	return state.accelerometer.x * -0x30000000;
20 }
21 
systemGetAccelY(void)22 int systemGetAccelY (void) {
23 	return state.accelerometer.y * 0x30000000;
24 }
25 
systemGetGyroZ(void)26 int systemGetGyroZ (void) {
27 	return state.gyro.z * -0x10000000;
28 }
29 
systemSetSensorState(bool val)30 void systemSetSensorState(bool val) {
31 	if(val == sensor_state) return;
32 
33 	if(val) {
34 		sceMotionStartSampling();
35 	} else {
36 		sceMotionStopSampling();
37 	}
38 	sensor_state = val;
39 }
40 #endif
41 
42 #endif
43