mirror of
https://github.com/ZDoom/raze-gles.git
synced 2024-12-25 03:00:46 +00:00
SDL 1.3 support... install SDL 1.3 to /usr/local or edit Makefile and build/Makefile.shared to point to your copy of sdl-config
git-svn-id: https://svn.eduke32.com/eduke32@1109 1a8010ca-5511-0410-912e-c29ae57300e0
This commit is contained in:
parent
dfdd9af1ca
commit
21fef3e053
3 changed files with 244 additions and 10 deletions
|
@ -11,8 +11,9 @@ PRETTY_OUTPUT = 1
|
||||||
DXROOT=../sdk/dx
|
DXROOT=../sdk/dx
|
||||||
|
|
||||||
ALROOT = AL
|
ALROOT = AL
|
||||||
SDLROOT =
|
SDLROOT = /usr/local
|
||||||
SDLCONFIG = sdl-config
|
SDLCONFIG = /usr/local/bin/sdl-config
|
||||||
|
# SDLCONFIG = sdl-config
|
||||||
|
|
||||||
# Engine options
|
# Engine options
|
||||||
SUPERBUILD = 1
|
SUPERBUILD = 1
|
||||||
|
@ -53,8 +54,8 @@ GCC_MAJOR := $(shell $(CC) -dumpversion 2>&1 | cut -d'.' -f1)
|
||||||
GCC_MINOR := $(shell $(CC) -dumpversion 2>&1 | cut -d'.' -f2)
|
GCC_MINOR := $(shell $(CC) -dumpversion 2>&1 | cut -d'.' -f2)
|
||||||
|
|
||||||
ifeq (4,$(GCC_MAJOR))
|
ifeq (4,$(GCC_MAJOR))
|
||||||
debug += -ftree-vectorize
|
|
||||||
ifneq (0,$(GCC_MINOR))
|
ifneq (0,$(GCC_MINOR))
|
||||||
|
debug += -ftree-vectorize
|
||||||
ifneq (1,$(GCC_MINOR))
|
ifneq (1,$(GCC_MINOR))
|
||||||
ifneq (2,$(GCC_MINOR))
|
ifneq (2,$(GCC_MINOR))
|
||||||
debug += -finline-small-functions -fpredictive-commoning
|
debug += -finline-small-functions -fpredictive-commoning
|
||||||
|
@ -280,12 +281,16 @@ include Makefile.deps
|
||||||
.PHONY: enginelib editorlib
|
.PHONY: enginelib editorlib
|
||||||
enginelib editorlib:
|
enginelib editorlib:
|
||||||
-mkdir -p $(EOBJ)
|
-mkdir -p $(EOBJ)
|
||||||
|
ifeq ($(PRETTY_OUTPUT),1)
|
||||||
printf "\033[K\033[0;35mChanging dir to \033[1;35m$(CURDIR)/$(EROOT)\033[0;35m.\033[0m\n"
|
printf "\033[K\033[0;35mChanging dir to \033[1;35m$(CURDIR)/$(EROOT)\033[0;35m.\033[0m\n"
|
||||||
|
endif
|
||||||
$(MAKE) -C $(EROOT)/ "OBJ=../$(EOBJ)" \
|
$(MAKE) -C $(EROOT)/ "OBJ=../$(EOBJ)" \
|
||||||
SUPERBUILD=$(SUPERBUILD) POLYMOST=$(POLYMOST) \
|
SUPERBUILD=$(SUPERBUILD) POLYMOST=$(POLYMOST) \
|
||||||
USE_OPENGL=$(USE_OPENGL) BUILD32_ON_64=$(BUILD32_ON_64) \
|
USE_OPENGL=$(USE_OPENGL) BUILD32_ON_64=$(BUILD32_ON_64) \
|
||||||
NOASM=$(NOASM) RELEASE=$(RELEASE) OPTLEVEL=$(OPTLEVEL) $@
|
NOASM=$(NOASM) RELEASE=$(RELEASE) OPTLEVEL=$(OPTLEVEL) $@
|
||||||
|
ifeq ($(PRETTY_OUTPUT),1)
|
||||||
printf "\033[K\033[0;35mChanging dir to \033[1;35m$(CURDIR)\033[0;35m.\033[0m\n"
|
printf "\033[K\033[0;35mChanging dir to \033[1;35m$(CURDIR)\033[0;35m.\033[0m\n"
|
||||||
|
endif
|
||||||
|
|
||||||
$(EOBJ)/$(ENGINELIB): enginelib
|
$(EOBJ)/$(ENGINELIB): enginelib
|
||||||
$(EOBJ)/$(EDITORLIB): editorlib
|
$(EOBJ)/$(EDITORLIB): editorlib
|
||||||
|
|
|
@ -3,7 +3,8 @@
|
||||||
ENGINELIB=libengine.a
|
ENGINELIB=libengine.a
|
||||||
EDITORLIB=libbuild.a
|
EDITORLIB=libbuild.a
|
||||||
|
|
||||||
SDLCONFIG=sdl-config
|
SDLCONFIG=/usr/local/bin/sdl-config
|
||||||
|
# SDLCONFIG=sdl-config
|
||||||
SDL_FRAMEWORK = 0
|
SDL_FRAMEWORK = 0
|
||||||
|
|
||||||
# Overridden for OSes that don't have the cutdown stdc++ that is supc++
|
# Overridden for OSes that don't have the cutdown stdc++ that is supc++
|
||||||
|
|
|
@ -80,7 +80,11 @@ void(*keypresscallback)(int,int) = 0;
|
||||||
void(*mousepresscallback)(int,int) = 0;
|
void(*mousepresscallback)(int,int) = 0;
|
||||||
void(*joypresscallback)(int,int) = 0;
|
void(*joypresscallback)(int,int) = 0;
|
||||||
|
|
||||||
|
#if (SDL_MAJOR_VERSION == 1 && SDL_MINOR_VERSION < 3)
|
||||||
static unsigned char keytranslation[SDLK_LAST];
|
static unsigned char keytranslation[SDLK_LAST];
|
||||||
|
#else
|
||||||
|
static unsigned char keytranslation[SDL_NUM_SCANCODES];
|
||||||
|
#endif
|
||||||
static int buildkeytranslationtable(void);
|
static int buildkeytranslationtable(void);
|
||||||
|
|
||||||
//static SDL_Surface * loadtarga(const char *fn); // for loading the icon
|
//static SDL_Surface * loadtarga(const char *fn); // for loading the icon
|
||||||
|
@ -395,11 +399,19 @@ int initinput(void)
|
||||||
SDL_EnableUNICODE(1); // let's hope this doesn't hit us too hard
|
SDL_EnableUNICODE(1); // let's hope this doesn't hit us too hard
|
||||||
|
|
||||||
memset(keynames,0,sizeof(keynames));
|
memset(keynames,0,sizeof(keynames));
|
||||||
|
#if (SDL_MAJOR_VERSION == 1 && SDL_MINOR_VERSION < 3)
|
||||||
for (i=0; i<SDLK_LAST; i++)
|
for (i=0; i<SDLK_LAST; i++)
|
||||||
{
|
{
|
||||||
if (!keytranslation[i]) continue;
|
if (!keytranslation[i]) continue;
|
||||||
strncpy((char *)keynames[ keytranslation[i] ], SDL_GetKeyName(i), sizeof(keynames[i])-1);
|
strncpy((char *)keynames[ keytranslation[i] ], SDL_GetKeyName(i), sizeof(keynames[i])-1);
|
||||||
}
|
}
|
||||||
|
#else
|
||||||
|
for (i=0; i<SDL_NUM_SCANCODES; i++)
|
||||||
|
{
|
||||||
|
if (!keytranslation[i]) continue;
|
||||||
|
strncpy((char *)keynames[ keytranslation[i] ], SDL_GetKeyName(SDL_SCANCODE_TO_KEYCODE(i)), sizeof(keynames[i])-1);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
if (!SDL_InitSubSystem(SDL_INIT_JOYSTICK))
|
if (!SDL_InitSubSystem(SDL_INIT_JOYSTICK))
|
||||||
{
|
{
|
||||||
|
@ -741,7 +753,11 @@ void getvalidmodes(void)
|
||||||
{640,400},{512,384},{480,360},{400,300},{320,240},{320,200},{0,0}
|
{640,400},{512,384},{480,360},{400,300},{320,240},{320,200},{0,0}
|
||||||
};
|
};
|
||||||
SDL_Rect **modes;
|
SDL_Rect **modes;
|
||||||
|
#if (SDL_MAJOR_VERSION > 1 || SDL_MINOR_VERSION > 2)
|
||||||
|
SDL_PixelFormat pf = { NULL, 8, 1, 0,0,0,0, 0,0,0,0, 0,0,0,0 };
|
||||||
|
#else
|
||||||
SDL_PixelFormat pf = { NULL, 8, 1, 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0 };
|
SDL_PixelFormat pf = { NULL, 8, 1, 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0 };
|
||||||
|
#endif
|
||||||
int i, j, maxx=0, maxy=0;
|
int i, j, maxx=0, maxy=0;
|
||||||
|
|
||||||
if (modeschecked) return;
|
if (modeschecked) return;
|
||||||
|
@ -775,7 +791,11 @@ void getvalidmodes(void)
|
||||||
pf.BitsPerPixel = cdepths[j];
|
pf.BitsPerPixel = cdepths[j];
|
||||||
pf.BytesPerPixel = cdepths[j] >> 3;
|
pf.BytesPerPixel = cdepths[j] >> 3;
|
||||||
|
|
||||||
|
#if (SDL_MAJOR_VERSION == 1 && SDL_MINOR_VERSION < 3)
|
||||||
modes = SDL_ListModes(&pf, SURFACE_FLAGS | SDL_FULLSCREEN);
|
modes = SDL_ListModes(&pf, SURFACE_FLAGS | SDL_FULLSCREEN);
|
||||||
|
#else
|
||||||
|
modes = SDL_ListModes(&pf, SURFACE_FLAGS);
|
||||||
|
#endif
|
||||||
if (modes == (SDL_Rect **)0)
|
if (modes == (SDL_Rect **)0)
|
||||||
{
|
{
|
||||||
if (cdepths[j] > 8) cdepths[j] = -1;
|
if (cdepths[j] > 8) cdepths[j] = -1;
|
||||||
|
@ -958,7 +978,9 @@ int setvideomode(int x, int y, int c, int fs)
|
||||||
{ SDL_GL_MULTISAMPLEBUFFERS, glmultisample > 0 },
|
{ SDL_GL_MULTISAMPLEBUFFERS, glmultisample > 0 },
|
||||||
{ SDL_GL_MULTISAMPLESAMPLES, glmultisample },
|
{ SDL_GL_MULTISAMPLESAMPLES, glmultisample },
|
||||||
{ SDL_GL_STENCIL_SIZE, 1 },
|
{ SDL_GL_STENCIL_SIZE, 1 },
|
||||||
|
#if (SDL_MAJOR_VERSION == 1 && SDL_MINOR_VERSION < 3)
|
||||||
{ SDL_GL_SWAP_CONTROL, vsync },
|
{ SDL_GL_SWAP_CONTROL, vsync },
|
||||||
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
if (nogl) return -1;
|
if (nogl) return -1;
|
||||||
|
@ -983,7 +1005,7 @@ int setvideomode(int x, int y, int c, int fs)
|
||||||
/* HACK: changing SDL GL attribs only works before surface creation,
|
/* HACK: changing SDL GL attribs only works before surface creation,
|
||||||
so we have to create a new surface in a different format first
|
so we have to create a new surface in a different format first
|
||||||
to force the surface we WANT to be recreated instead of reused. */
|
to force the surface we WANT to be recreated instead of reused. */
|
||||||
|
#if (SDL_MAJOR_VERSION == 1 && SDL_MINOR_VERSION < 3)
|
||||||
if (vsync != ovsync)
|
if (vsync != ovsync)
|
||||||
{
|
{
|
||||||
if (sdl_surface)
|
if (sdl_surface)
|
||||||
|
@ -994,6 +1016,7 @@ int setvideomode(int x, int y, int c, int fs)
|
||||||
}
|
}
|
||||||
ovsync = vsync;
|
ovsync = vsync;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
sdl_surface = SDL_SetVideoMode(x, y, c, SDL_OPENGL | ((fs&1)?SDL_FULLSCREEN:0));
|
sdl_surface = SDL_SetVideoMode(x, y, c, SDL_OPENGL | ((fs&1)?SDL_FULLSCREEN:0));
|
||||||
if (!sdl_surface)
|
if (!sdl_surface)
|
||||||
{
|
{
|
||||||
|
@ -1452,6 +1475,95 @@ int handleevents(void)
|
||||||
{
|
{
|
||||||
switch (ev.type)
|
switch (ev.type)
|
||||||
{
|
{
|
||||||
|
#if (SDL_MAJOR_VERSION > 1 || SDL_MINOR_VERSION > 2)
|
||||||
|
case SDL_TEXTINPUT:
|
||||||
|
j = 0;
|
||||||
|
do
|
||||||
|
{
|
||||||
|
code = ev.text.text[j];
|
||||||
|
|
||||||
|
if (code != scantoasc[OSD_OSDKey()] && ((keyasciififoend+1)&(KEYFIFOSIZ-1)) != keyasciififoplc)
|
||||||
|
{
|
||||||
|
if (OSD_HandleChar(code))
|
||||||
|
{
|
||||||
|
keyasciififo[keyasciififoend] = code;
|
||||||
|
keyasciififoend = ((keyasciififoend+1)&(KEYFIFOSIZ-1));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
while (j < SDL_TEXTINPUTEVENT_TEXT_SIZE && ev.text.text[++j]);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case SDL_KEYDOWN:
|
||||||
|
case SDL_KEYUP:
|
||||||
|
code = keytranslation[ev.key.keysym.scancode];
|
||||||
|
// initprintf("got key %d, %d\n",ev.key.keysym.scancode,code);
|
||||||
|
|
||||||
|
// hook in the osd
|
||||||
|
if (OSD_HandleScanCode(code, (ev.key.type == SDL_KEYDOWN)) == 0)
|
||||||
|
break;
|
||||||
|
|
||||||
|
if (ev.key.type == SDL_KEYDOWN)
|
||||||
|
{
|
||||||
|
if (!keystatus[code])
|
||||||
|
{
|
||||||
|
SetKey(code, 1);
|
||||||
|
if (keypresscallback)
|
||||||
|
keypresscallback(remap[code], 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
SetKey(code, 0);
|
||||||
|
if (keypresscallback)
|
||||||
|
keypresscallback(remap[code], 0);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case SDL_WINDOWEVENT:
|
||||||
|
switch (ev.window.event)
|
||||||
|
{
|
||||||
|
case SDL_WINDOWEVENT_FOCUS_GAINED:
|
||||||
|
appactive = 1;
|
||||||
|
#ifndef DEBUGGINGAIDS
|
||||||
|
if (mouseacquired && moustat)
|
||||||
|
{
|
||||||
|
SDL_WM_GrabInput(SDL_GRAB_ON);
|
||||||
|
SDL_ShowCursor(SDL_DISABLE);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
case SDL_WINDOWEVENT_FOCUS_LOST:
|
||||||
|
appactive = 0;
|
||||||
|
#ifndef DEBUGGINGAIDS
|
||||||
|
if (mouseacquired && moustat)
|
||||||
|
{
|
||||||
|
SDL_WM_GrabInput(SDL_GRAB_OFF);
|
||||||
|
SDL_ShowCursor(SDL_ENABLE);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
/*
|
||||||
|
case SDL_MOUSEWHEEL:
|
||||||
|
initprintf("wheel y %d\n",ev.wheel.y);
|
||||||
|
if (ev.wheel.y > 0)
|
||||||
|
{
|
||||||
|
mwheelup = totalclock;
|
||||||
|
mouseb |= 16;
|
||||||
|
if (mousepresscallback)
|
||||||
|
mousepresscallback(5, 1);
|
||||||
|
}
|
||||||
|
if (ev.button.y < 0)
|
||||||
|
{
|
||||||
|
mwheeldown = totalclock;
|
||||||
|
mouseb |= 32;
|
||||||
|
if (mousepresscallback)
|
||||||
|
mousepresscallback(6, 1);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
*/
|
||||||
|
#else
|
||||||
case SDL_KEYDOWN:
|
case SDL_KEYDOWN:
|
||||||
case SDL_KEYUP:
|
case SDL_KEYUP:
|
||||||
code = keytranslation[ev.key.keysym.sym];
|
code = keytranslation[ev.key.keysym.sym];
|
||||||
|
@ -1510,6 +1622,7 @@ int handleevents(void)
|
||||||
rv=-1;
|
rv=-1;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
#endif
|
||||||
|
|
||||||
case SDL_MOUSEBUTTONDOWN:
|
case SDL_MOUSEBUTTONDOWN:
|
||||||
case SDL_MOUSEBUTTONUP:
|
case SDL_MOUSEBUTTONUP:
|
||||||
|
@ -1517,16 +1630,13 @@ int handleevents(void)
|
||||||
{
|
{
|
||||||
// some of these get reordered to match winlayer
|
// some of these get reordered to match winlayer
|
||||||
default:
|
default:
|
||||||
|
j = -1; break;
|
||||||
case SDL_BUTTON_LEFT:
|
case SDL_BUTTON_LEFT:
|
||||||
j = 0; break;
|
j = 0; break;
|
||||||
case SDL_BUTTON_RIGHT:
|
case SDL_BUTTON_RIGHT:
|
||||||
j = 1; break;
|
j = 1; break;
|
||||||
case SDL_BUTTON_MIDDLE:
|
case SDL_BUTTON_MIDDLE:
|
||||||
j = 2; break;
|
j = 2; break;
|
||||||
case SDL_BUTTON_X1:
|
|
||||||
j = 3; break;
|
|
||||||
case SDL_BUTTON_X2:
|
|
||||||
j = 6; break;
|
|
||||||
case SDL_BUTTON_WHEELUP:
|
case SDL_BUTTON_WHEELUP:
|
||||||
case SDL_BUTTON_WHEELDOWN:
|
case SDL_BUTTON_WHEELDOWN:
|
||||||
j = ev.button.button; break;
|
j = ev.button.button; break;
|
||||||
|
@ -1644,6 +1754,7 @@ inline void idle(void)
|
||||||
usleep(1);
|
usleep(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if (SDL_MAJOR_VERSION == 1 && SDL_MINOR_VERSION < 3)
|
||||||
static int buildkeytranslationtable(void)
|
static int buildkeytranslationtable(void)
|
||||||
{
|
{
|
||||||
memset(keytranslation,0,sizeof(keytranslation));
|
memset(keytranslation,0,sizeof(keytranslation));
|
||||||
|
@ -1777,7 +1888,124 @@ static int buildkeytranslationtable(void)
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
#else // SDL 1.3
|
||||||
|
static int buildkeytranslationtable(void)
|
||||||
|
{
|
||||||
|
memset(keytranslation,0,sizeof(keytranslation));
|
||||||
|
|
||||||
|
#define MAP(x,y) keytranslation[x] = y
|
||||||
|
printf("%d\n",SDL_SCANCODE_BACKSPACE);
|
||||||
|
MAP(SDL_SCANCODE_BACKSPACE, 0xe);
|
||||||
|
MAP(SDL_SCANCODE_TAB, 0xf);
|
||||||
|
MAP(SDL_SCANCODE_RETURN, 0x1c);
|
||||||
|
MAP(SDL_SCANCODE_PAUSE, 0x59); // 0x1d + 0x45 + 0x9d + 0xc5
|
||||||
|
MAP(SDL_SCANCODE_ESCAPE, 0x1);
|
||||||
|
MAP(SDL_SCANCODE_SPACE, 0x39);
|
||||||
|
MAP(SDL_SCANCODE_COMMA, 0x33);
|
||||||
|
MAP(SDL_SCANCODE_MINUS, 0xc);
|
||||||
|
MAP(SDL_SCANCODE_PERIOD, 0x34);
|
||||||
|
MAP(SDL_SCANCODE_SLASH, 0x35);
|
||||||
|
MAP(SDL_SCANCODE_0, 0xb);
|
||||||
|
MAP(SDL_SCANCODE_1, 0x2);
|
||||||
|
MAP(SDL_SCANCODE_2, 0x3);
|
||||||
|
MAP(SDL_SCANCODE_3, 0x4);
|
||||||
|
MAP(SDL_SCANCODE_4, 0x5);
|
||||||
|
MAP(SDL_SCANCODE_5, 0x6);
|
||||||
|
MAP(SDL_SCANCODE_6, 0x7);
|
||||||
|
MAP(SDL_SCANCODE_7, 0x8);
|
||||||
|
MAP(SDL_SCANCODE_8, 0x9);
|
||||||
|
MAP(SDL_SCANCODE_9, 0xa);
|
||||||
|
MAP(SDL_SCANCODE_SEMICOLON, 0x27);
|
||||||
|
MAP(SDL_SCANCODE_EQUALS, 0xd);
|
||||||
|
MAP(SDL_SCANCODE_LEFTBRACKET, 0x1a);
|
||||||
|
MAP(SDL_SCANCODE_BACKSLASH, 0x2b);
|
||||||
|
MAP(SDL_SCANCODE_RIGHTBRACKET, 0x1b);
|
||||||
|
MAP(SDL_SCANCODE_A, 0x1e);
|
||||||
|
MAP(SDL_SCANCODE_B, 0x30);
|
||||||
|
MAP(SDL_SCANCODE_C, 0x2e);
|
||||||
|
MAP(SDL_SCANCODE_D, 0x20);
|
||||||
|
MAP(SDL_SCANCODE_E, 0x12);
|
||||||
|
MAP(SDL_SCANCODE_F, 0x21);
|
||||||
|
MAP(SDL_SCANCODE_G, 0x22);
|
||||||
|
MAP(SDL_SCANCODE_H, 0x23);
|
||||||
|
MAP(SDL_SCANCODE_I, 0x17);
|
||||||
|
MAP(SDL_SCANCODE_J, 0x24);
|
||||||
|
MAP(SDL_SCANCODE_K, 0x25);
|
||||||
|
MAP(SDL_SCANCODE_L, 0x26);
|
||||||
|
MAP(SDL_SCANCODE_M, 0x32);
|
||||||
|
MAP(SDL_SCANCODE_N, 0x31);
|
||||||
|
MAP(SDL_SCANCODE_O, 0x18);
|
||||||
|
MAP(SDL_SCANCODE_P, 0x19);
|
||||||
|
MAP(SDL_SCANCODE_Q, 0x10);
|
||||||
|
MAP(SDL_SCANCODE_R, 0x13);
|
||||||
|
MAP(SDL_SCANCODE_S, 0x1f);
|
||||||
|
MAP(SDL_SCANCODE_T, 0x14);
|
||||||
|
MAP(SDL_SCANCODE_U, 0x16);
|
||||||
|
MAP(SDL_SCANCODE_V, 0x2f);
|
||||||
|
MAP(SDL_SCANCODE_W, 0x11);
|
||||||
|
MAP(SDL_SCANCODE_X, 0x2d);
|
||||||
|
MAP(SDL_SCANCODE_Y, 0x15);
|
||||||
|
MAP(SDL_SCANCODE_Z, 0x2c);
|
||||||
|
MAP(SDL_SCANCODE_DELETE, 0xd3);
|
||||||
|
MAP(SDL_SCANCODE_KP_0, 0x52);
|
||||||
|
MAP(SDL_SCANCODE_KP_1, 0x4f);
|
||||||
|
MAP(SDL_SCANCODE_KP_2, 0x50);
|
||||||
|
MAP(SDL_SCANCODE_KP_3, 0x51);
|
||||||
|
MAP(SDL_SCANCODE_KP_4, 0x4b);
|
||||||
|
MAP(SDL_SCANCODE_KP_5, 0x4c);
|
||||||
|
MAP(SDL_SCANCODE_KP_6, 0x4d);
|
||||||
|
MAP(SDL_SCANCODE_KP_7, 0x47);
|
||||||
|
MAP(SDL_SCANCODE_KP_8, 0x48);
|
||||||
|
MAP(SDL_SCANCODE_KP_9, 0x49);
|
||||||
|
MAP(SDL_SCANCODE_KP_PERIOD, 0x53);
|
||||||
|
MAP(SDL_SCANCODE_KP_DIVIDE, 0xb5);
|
||||||
|
MAP(SDL_SCANCODE_KP_MULTIPLY, 0x37);
|
||||||
|
MAP(SDL_SCANCODE_KP_MINUS, 0x4a);
|
||||||
|
MAP(SDL_SCANCODE_KP_PLUS, 0x4e);
|
||||||
|
MAP(SDL_SCANCODE_KP_ENTER, 0x9c);
|
||||||
|
//MAP(SDL_SCANCODE_KP_EQUALS, );
|
||||||
|
MAP(SDL_SCANCODE_UP, 0xc8);
|
||||||
|
MAP(SDL_SCANCODE_DOWN, 0xd0);
|
||||||
|
MAP(SDL_SCANCODE_RIGHT, 0xcd);
|
||||||
|
MAP(SDL_SCANCODE_LEFT, 0xcb);
|
||||||
|
MAP(SDL_SCANCODE_INSERT, 0xd2);
|
||||||
|
MAP(SDL_SCANCODE_HOME, 0xc7);
|
||||||
|
MAP(SDL_SCANCODE_END, 0xcf);
|
||||||
|
MAP(SDL_SCANCODE_PAGEUP, 0xc9);
|
||||||
|
MAP(SDL_SCANCODE_PAGEDOWN, 0xd1);
|
||||||
|
MAP(SDL_SCANCODE_F1, 0x3b);
|
||||||
|
MAP(SDL_SCANCODE_F2, 0x3c);
|
||||||
|
MAP(SDL_SCANCODE_F3, 0x3d);
|
||||||
|
MAP(SDL_SCANCODE_F4, 0x3e);
|
||||||
|
MAP(SDL_SCANCODE_F5, 0x3f);
|
||||||
|
MAP(SDL_SCANCODE_F6, 0x40);
|
||||||
|
MAP(SDL_SCANCODE_F7, 0x41);
|
||||||
|
MAP(SDL_SCANCODE_F8, 0x42);
|
||||||
|
MAP(SDL_SCANCODE_F9, 0x43);
|
||||||
|
MAP(SDL_SCANCODE_F10, 0x44);
|
||||||
|
MAP(SDL_SCANCODE_F11, 0x57);
|
||||||
|
MAP(SDL_SCANCODE_F12, 0x58);
|
||||||
|
MAP(SDL_SCANCODE_NUMLOCKCLEAR, 0x45);
|
||||||
|
MAP(SDL_SCANCODE_CAPSLOCK, 0x3a);
|
||||||
|
MAP(SDL_SCANCODE_SCROLLLOCK, 0x46);
|
||||||
|
MAP(SDL_SCANCODE_RSHIFT, 0x36);
|
||||||
|
MAP(SDL_SCANCODE_LSHIFT, 0x2a);
|
||||||
|
MAP(SDL_SCANCODE_RCTRL, 0x9d);
|
||||||
|
MAP(SDL_SCANCODE_LCTRL, 0x1d);
|
||||||
|
MAP(SDL_SCANCODE_RALT, 0xb8);
|
||||||
|
MAP(SDL_SCANCODE_LALT, 0x38);
|
||||||
|
MAP(SDL_SCANCODE_LGUI, 0xdb); // win l
|
||||||
|
MAP(SDL_SCANCODE_RGUI, 0xdc); // win r
|
||||||
|
MAP(SDL_SCANCODE_PRINTSCREEN, -2); // 0xaa + 0xb7
|
||||||
|
MAP(SDL_SCANCODE_SYSREQ, 0x54); // alt+printscr
|
||||||
|
MAP(SDL_SCANCODE_PAUSE, 0xb7); // ctrl+pause
|
||||||
|
MAP(SDL_SCANCODE_MENU, 0xdd); // win menu?
|
||||||
|
MAP(SDL_SCANCODE_GRAVE, 0x29); // tilde
|
||||||
|
#undef MAP
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
#if defined _WIN32
|
#if defined _WIN32
|
||||||
# define WIN32_LEAN_AND_MEAN
|
# define WIN32_LEAN_AND_MEAN
|
||||||
# include <windows.h>
|
# include <windows.h>
|
||||||
|
|
Loading…
Reference in a new issue