//
// os/x11/keycodes.h: X11 keycode definitions.
//
// CEN64: Cycle-Accurate Nintendo 64 Emulator.
// Copyright (C) 2015, Tyler J. Stachecki.
//
// This file is subject to the terms and conditions defined in
// 'LICENSE', which is part of this source code package.
//

#ifndef CEN64_OS_SDL_KEYCODES
#define CEN64_OS_SDL_KEYCODES
#include <SDL.h>

// Letter keys.
#define CEN64_KEY_A SDLK_a
#define CEN64_KEY_B SDLK_b
#define CEN64_KEY_C SDLK_c
#define CEN64_KEY_D SDLK_d
#define CEN64_KEY_E SDLK_e
#define CEN64_KEY_F SDLK_f
#define CEN64_KEY_G SDLK_g
#define CEN64_KEY_H SDLK_h
#define CEN64_KEY_I SDLK_i
#define CEN64_KEY_J SDLK_j
#define CEN64_KEY_K SDLK_k
#define CEN64_KEY_L SDLK_l
#define CEN64_KEY_M SDLK_m
#define CEN64_KEY_N SDLK_n
#define CEN64_KEY_O SDLK_o
#define CEN64_KEY_P SDLK_p
#define CEN64_KEY_Q SDLK_q
#define CEN64_KEY_R SDLK_r
#define CEN64_KEY_S SDLK_s
#define CEN64_KEY_T SDLK_t
#define CEN64_KEY_U SDLK_u
#define CEN64_KEY_V SDLK_v
#define CEN64_KEY_W SDLK_w
#define CEN64_KEY_X SDLK_x
#define CEN64_KEY_Y SDLK_y
#define CEN64_KEY_Z SDLK_z

// Number keys.
#define CEN64_KEY_0 SDLK_0
#define CEN64_KEY_1 SDLK_1
#define CEN64_KEY_2 SDLK_2
#define CEN64_KEY_3 SDLK_3
#define CEN64_KEY_4 SDLK_4
#define CEN64_KEY_5 SDLK_5
#define CEN64_KEY_6 SDLK_6
#define CEN64_KEY_7 SDLK_7
#define CEN64_KEY_8 SDLK_8
#define CEN64_KEY_9 SDLK_9

// Directional keys.
#define CEN64_KEY_LEFT SDLK_LEFT
#define CEN64_KEY_UP SDLK_UP
#define CEN64_KEY_RIGHT SDLK_RIGHT
#define CEN64_KEY_DOWN SDLK_DOWN

// Other keys.
#define CEN64_KEY_BSLASH SDLK_backslash
#define CEN64_KEY_COMMA SDLK_comma
#define CEN64_KEY_EQUALS SDLK_equal
#define CEN64_KEY_FSLASH SDLK_fslash
#define CEN64_KEY_MINUS SDLK_minus
#define CEN64_KEY_LALT SDLK_Alt_L
#define CEN64_KEY_LBRACKET SDLK_bracketleft
#define CEN64_KEY_LCTRL SDLK_Control_L
#define CEN64_KEY_LSHIFT SDLK_LSHIFT
#define CEN64_KEY_LSUPER SDLK_Super_L
#define CEN64_KEY_PERIOD SDLK_period
#define CEN64_KEY_RALT SDLK_Alt_R
#define CEN64_KEY_RBRACKET SDLK_bracketright
#define CEN64_KEY_RCTRL SDLK_Control_R
#define CEN64_KEY_RETURN SDLK_RETURN
#define CEN64_KEY_RSHIFT SDLK_RSHIFT
#define CEN64_KEY_RSUPER SDLK_Super_R
#define CEN64_KEY_SEMICOLON SDLK_semicolon
#define CEN64_KEY_SLASH SDLK_slash
#define CEN64_KEY_SPACE SDLK_space

#endif

