1 /* 2 * OpenBOR - http://www.chronocrash.com 3 * ----------------------------------------------------------------------- 4 * Licensed under a BSD-style license, see LICENSE in OpenBOR root for details. 5 * 6 * Copyright (c) 2004 - 2017 OpenBOR Team 7 */ 8 9 #ifndef CONTROL_H 10 #define CONTROL_H 11 12 #include <stdint.h> 13 14 #define VITA_DPAD_UP 0x00000001 15 #define VITA_DPAD_RIGHT 0x00000002 16 #define VITA_DPAD_DOWN 0x00000004 17 #define VITA_DPAD_LEFT 0x00000008 18 #define VITA_CROSS 0x00000010 19 #define VITA_CIRCLE 0x00000020 20 #define VITA_SQUARE 0x00000040 21 #define VITA_TRIANGLE 0x00000080 22 #define VITA_LEFT_TRIGGER 0x00000100 23 #define VITA_RIGHT_TRIGGER 0x00000200 24 #define VITA_START 0x00000400 25 #define VITA_SELECT 0x00000800 26 #define VITA_L1 0x00001000 27 #define VITA_R1 0x00002000 28 #define VITA_L3 0x00004000 29 #define VITA_R3 0x00008000 30 31 #define CONTROL_ESC 14 32 33 #define CONTROL_DEFAULT1_UP 1 34 #define CONTROL_DEFAULT1_RIGHT 2 35 #define CONTROL_DEFAULT1_DOWN 3 36 #define CONTROL_DEFAULT1_LEFT 4 37 #define CONTROL_DEFAULT1_FIRE1 7 38 #define CONTROL_DEFAULT1_FIRE2 6 39 #define CONTROL_DEFAULT1_FIRE3 9 40 #define CONTROL_DEFAULT1_FIRE4 10 41 #define CONTROL_DEFAULT1_FIRE5 5 42 #define CONTROL_DEFAULT1_FIRE6 8 43 #define CONTROL_DEFAULT1_START 11 44 #define CONTROL_DEFAULT1_SCREENSHOT 12 45 46 #define CONTROL_DEFAULT2_UP (1+18) 47 #define CONTROL_DEFAULT2_RIGHT (2+18) 48 #define CONTROL_DEFAULT2_DOWN (3+18) 49 #define CONTROL_DEFAULT2_LEFT (4+18) 50 #define CONTROL_DEFAULT2_FIRE1 (7+18) 51 #define CONTROL_DEFAULT2_FIRE2 (6+18) 52 #define CONTROL_DEFAULT2_FIRE3 (9+18) 53 #define CONTROL_DEFAULT2_FIRE4 (10+18) 54 #define CONTROL_DEFAULT2_FIRE5 (5+18) 55 #define CONTROL_DEFAULT2_FIRE6 (8+18) 56 #define CONTROL_DEFAULT2_START (11+18) 57 #define CONTROL_DEFAULT2_SCREENSHOT (12+18) 58 59 #define CONTROL_DEFAULT3_UP (1+(18*2)) 60 #define CONTROL_DEFAULT3_RIGHT (2+(18*2)) 61 #define CONTROL_DEFAULT3_DOWN (3+(18*2)) 62 #define CONTROL_DEFAULT3_LEFT (4+(18*2)) 63 #define CONTROL_DEFAULT3_FIRE1 (7+(18*2)) 64 #define CONTROL_DEFAULT3_FIRE2 (6+(18*2)) 65 #define CONTROL_DEFAULT3_FIRE3 (9+(18*2)) 66 #define CONTROL_DEFAULT3_FIRE4 (10+(18*2)) 67 #define CONTROL_DEFAULT3_FIRE5 (5+(18*2)) 68 #define CONTROL_DEFAULT3_FIRE6 (8+(18*2)) 69 #define CONTROL_DEFAULT3_START (11+(18*2)) 70 #define CONTROL_DEFAULT3_SCREENSHOT (12+(18*2)) 71 72 #define CONTROL_DEFAULT4_UP (1+(18*3)) 73 #define CONTROL_DEFAULT4_RIGHT (2+(18*3)) 74 #define CONTROL_DEFAULT4_DOWN (3+(18*3)) 75 #define CONTROL_DEFAULT4_LEFT (4+(18*3)) 76 #define CONTROL_DEFAULT4_FIRE1 (7+(18*3)) 77 #define CONTROL_DEFAULT4_FIRE2 (6+(18*3)) 78 #define CONTROL_DEFAULT4_FIRE3 (9+(18*3)) 79 #define CONTROL_DEFAULT4_FIRE4 (10+(18*3)) 80 #define CONTROL_DEFAULT4_FIRE5 (5+(18*3)) 81 #define CONTROL_DEFAULT4_FIRE6 (8+(18*3)) 82 #define CONTROL_DEFAULT4_START (11+(18*3)) 83 #define CONTROL_DEFAULT4_SCREENSHOT (12+(18*3)) 84 85 #define CONTROL_NONE (1+(18*99)) //Kratus (20-04-21) value used to clear all keys 86 87 typedef struct 88 { 89 int settings[32]; 90 unsigned int keyflags, newkeyflags; 91 int kb_break; 92 } 93 s_playercontrols; 94 95 void control_exit(); 96 void control_init(int joy_enable); 97 int control_usejoy(int enable); 98 int control_getjoyenabled(); 99 int keyboard_getlastkey(); 100 void control_setkey(s_playercontrols * pcontrols, unsigned int flag, int key); 101 int control_scankey(); 102 char* control_getkeyname(unsigned int keycode); 103 void control_update(s_playercontrols ** playercontrols, int numplayers); 104 void control_rumble(int port, int ratio, int msec); 105 106 #endif 107 108