diff -upr --exclude=configure --exclude=Makefile --exclude=Makefile.in libsdl1.2-1.2.4/include/SDL_keysym.h libsdl1.2-1.2.4-arm/include/SDL_keysym.h
--- libsdl1.2-1.2.4/include/SDL_keysym.h	2002-03-06 11:23:01.000000000 +0000
+++ libsdl1.2-1.2.4-arm/include/SDL_keysym.h	2002-11-08 20:43:09.000000000 +0000
@@ -286,6 +286,12 @@ typedef enum {
 	SDLK_EURO		= 321,		/* Some european keyboards */
 	SDLK_UNDO		= 322,		/* Atari keyboard has Undo */
 
+	SDLK_RECORD		= 322,
+	SDLK_CALENDAR		= 323,
+	SDLK_TELEPHONE		= 324,
+	SDLK_MAIL		= 325,
+	SDLK_START		= 326,
+
 	/* Add any other keys here */
 
 	SDLK_LAST
diff -upr --exclude=configure --exclude=Makefile --exclude=Makefile.in libsdl1.2-1.2.4/src/video/x11/SDL_x11events.c libsdl1.2-1.2.4-arm/src/video/x11/SDL_x11events.c
--- libsdl1.2-1.2.4/src/video/x11/SDL_x11events.c	2002-03-06 11:23:08.000000000 +0000
+++ libsdl1.2-1.2.4-arm/src/video/x11/SDL_x11events.c	2002-11-08 21:01:41.000000000 +0000
@@ -34,6 +34,7 @@ static char rcsid =
 #include <X11/Xlib.h>
 #include <X11/Xutil.h>
 #include <X11/keysym.h>
+#include <X11/XF86keysym.h>
 #ifdef __SVR4
 #include <X11/Sunkeysym.h>
 #endif
@@ -655,6 +656,25 @@ SDL_keysym *X11_TranslateKey(Display *di
 			case 0xFF:
 				keysym->sym = MISC_keymap[xsym&0xFF];
 				break;
+			case 0x1008ff:
+				switch (xsym) {
+				case XF86XK_AudioRecord:
+					keysym->sym = SDLK_RECORD;
+					break;
+				case XF86XK_PowerDown:
+					keysym->sym = SDLK_POWER;
+					break;
+				case XF86XK_Calendar:
+					keysym->sym = SDLK_CALENDAR;
+					break;
+				case XF86XK_Mail:
+					keysym->sym = SDLK_MAIL;
+					break;
+				case XF86XK_Start:
+					keysym->sym = SDLK_START;
+					break;
+				}
+				break;
 			default:
 				fprintf(stderr,
 					"X11: Unknown xsym, sym = 0x%04x\n",
