uwick. W
/
MameController
Mamecontroller/joystick device wrapper library
serial_joystick.cpp
- Committer:
- uswickra
- Date:
- 2014-12-10
- Revision:
- 4:4f6e38b6c07e
- Parent:
- 1:89c1c7f9245a
File content as of revision 4:4f6e38b6c07e:
#include "joystick.h" //#define DELAY_ENABLED 1 SerialJoystick::SerialJoystick() { } void SerialJoystick::init() { bool quit = false ; while(1) { char ch = uart.getc(); switch(ch) { case 'a': pressLeft(); break; case 's': pressDown(); break; case 'd': pressRight(); break; case 'w': pressUp(); break; case ' ': pressJump(); break; case 'n': pressFire1(); break; case 'm': pressFire2(); break; case '\n': pressMenuSelect1(); break; case '\r': pressMenuSelect1(); break; case '1': pressMenuSelect2(); break; case 0x1b: pressMenuSelect3(); break; case 'u': uart.printf("pi\r\n"); router.sendEvent(USER); break; case 'p': uart.printf("raspberry\r\n"); router.sendEvent(PASS); break; case 'k': uart.printf("/home/pi/mame/mame4all_comp/mame_run/mame \r\n"); router.sendEvent(RUN); break; case 'q': uart.printf("Quitting now !! \r\n"); quit = true ; break; } if(quit) break; } } void SerialJoystick::pressMenuSelect1() { uart.printf("Pressed Select Coins \r\n"); #ifdef DELAY_ENABLED wait(5); #endif router.sendEvent(COIN1); } void SerialJoystick::pressMenuSelect2() { uart.printf("Pressed Start \r\n"); #ifdef DELAY_ENABLED wait(5); #endif router.sendEvent(START); } void SerialJoystick::pressMenuSelect3() { uart.printf("Pressed Back \r\n"); #ifdef DELAY_ENABLED wait(5); #endif router.sendEvent(BACK); } void SerialJoystick::pressUp() { uart.printf("Pressed Up \r\n"); #ifdef DELAY_ENABLED wait(5); #endif router.sendEvent(MOVE_UP); } void SerialJoystick::pressDown() { uart.printf("Pressed Down \r\n"); #ifdef DELAY_ENABLED wait(5); #endif router.sendEvent(MOVE_DOWN); } void SerialJoystick::pressLeft() { uart.printf("Pressed Left \r\n"); #ifdef DELAY_ENABLED wait(5); #endif router.sendEvent(MOVE_LEFT); } void SerialJoystick::pressRight() { uart.printf("Pressed Right \r\n"); #ifdef DELAY_ENABLED wait(5); #endif router.sendEvent(MOVE_RIGHT); } void SerialJoystick::pressJump() { uart.printf("Pressed Jump \r\n"); #ifdef DELAY_ENABLED wait(5); #endif router.sendEvent(JUMP); } void SerialJoystick::pressFire1() { uart.printf("Pressed Fire1 \r\n"); #ifdef DELAY_ENABLED wait(5); #endif router.sendEvent(FIRE1); } void SerialJoystick::pressFire2() { uart.printf("Pressed Fire2 \r\n"); }