Types of game buttons.
#include <screen/screen.h>
enum { SCREEN_A_GAME_BUTTON = (1 << 0) SCREEN_B_GAME_BUTTON = (1 << 1) SCREEN_C_GAME_BUTTON = (1 << 2) SCREEN_X_GAME_BUTTON = (1 << 3) SCREEN_Y_GAME_BUTTON = (1 << 4) SCREEN_Z_GAME_BUTTON = (1 << 5) SCREEN_MENU1_GAME_BUTTON = (1 << 6) SCREEN_MENU2_GAME_BUTTON = (1 << 7) SCREEN_MENU3_GAME_BUTTON = (1 << 8) SCREEN_MENU4_GAME_BUTTON = (1 << 9) SCREEN_L1_GAME_BUTTON = (1 << 10) SCREEN_L2_GAME_BUTTON = (1 << 11) SCREEN_L3_GAME_BUTTON = (1 << 12) SCREEN_R1_GAME_BUTTON = (1 << 13) SCREEN_R2_GAME_BUTTON = (1 << 14) SCREEN_R3_GAME_BUTTON = (1 << 15) SCREEN_DPAD_UP_GAME_BUTTON = (1 << 16) SCREEN_DPAD_DOWN_GAME_BUTTON = (1 << 17) SCREEN_DPAD_LEFT_GAME_BUTTON = (1 << 18) SCREEN_DPAD_RIGHT_GAME_BUTTON = (1 << 19) };
These enumerator values are used as constants to map buttons from different controllers to a common game control layout. Typically, you create a structure to represent your game controller and map the buttons to constants in this enumeration.