diff src/video/ataricommon/SDL_gemdosevents.c @ 1662:782fd950bd46 SDL-1.3

Revamp of the video system in progress - adding support for multiple displays, multiple windows, and a full video mode selection API. WARNING: None of the video drivers have been updated for the new API yet! The API is still under design and very fluid. The code is now run through a consistent indent format: indent -i4 -nut -nsc -br -ce The headers are being converted to automatically generate doxygen documentation.
author Sam Lantinga <slouken@libsdl.org>
date Sun, 28 May 2006 13:04:16 +0000
parents 2405517b5eab
children 4da1ee79c9af
line wrap: on
line diff
--- a/src/video/ataricommon/SDL_gemdosevents.c	Sun May 21 17:27:13 2006 +0000
+++ b/src/video/ataricommon/SDL_gemdosevents.c	Sun May 28 13:04:16 2006 +0000
@@ -48,126 +48,134 @@
 static SDL_bool use_dev_mouse = SDL_FALSE;
 
 /* Special keys state */
-enum {
-	K_RSHIFT=0,
-	K_LSHIFT,
-	K_CTRL,
-	K_ALT,
-	K_CAPSLOCK,
-	K_CLRHOME,
-	K_INSERT
+enum
+{
+    K_RSHIFT = 0,
+    K_LSHIFT,
+    K_CTRL,
+    K_ALT,
+    K_CAPSLOCK,
+    K_CLRHOME,
+    K_INSERT
 };
 
-enum {
-	DEV_BUSY=0,
-	DEV_READY
+enum
+{
+    DEV_BUSY = 0,
+    DEV_READY
 };
 
 /* The translation tables from a console scancode to a SDL keysym */
 static SDLKey keymap[ATARIBIOS_MAXKEYS];
 
-static SDL_keysym *TranslateKey(int scancode, int asciicode, SDL_keysym *keysym,
-	SDL_bool pressed);
-static void UpdateSpecialKeys(int special_keys_state);
+static SDL_keysym *TranslateKey (int scancode, int asciicode,
+                                 SDL_keysym * keysym, SDL_bool pressed);
+static void UpdateSpecialKeys (int special_keys_state);
 
-void AtariGemdos_InitOSKeymap(_THIS)
+void
+AtariGemdos_InitOSKeymap (_THIS)
 {
-	int i, vectors_mask;
-	unsigned long dummy;
+    int i, vectors_mask;
+    unsigned long dummy;
 
-	SDL_memset(gemdos_currentkeyboard, 0, sizeof(gemdos_currentkeyboard));
-	SDL_memset(gemdos_previouskeyboard, 0, sizeof(gemdos_previouskeyboard));
+    SDL_memset (gemdos_currentkeyboard, 0, sizeof (gemdos_currentkeyboard));
+    SDL_memset (gemdos_previouskeyboard, 0, sizeof (gemdos_previouskeyboard));
 
-	/* Initialize keymap */
-	for ( i=0; i<sizeof(keymap); i++ )
-		keymap[i] = SDLK_UNKNOWN;
+    /* Initialize keymap */
+    for (i = 0; i < sizeof (keymap); i++)
+        keymap[i] = SDLK_UNKNOWN;
 
-	/* Functions keys */
-	for ( i = 0; i<10; i++ )
-		keymap[SCANCODE_F1 + i] = SDLK_F1+i;
+    /* Functions keys */
+    for (i = 0; i < 10; i++)
+        keymap[SCANCODE_F1 + i] = SDLK_F1 + i;
 
-	/* Cursor keypad */
-	keymap[SCANCODE_HELP] = SDLK_HELP;
-	keymap[SCANCODE_UNDO] = SDLK_UNDO;
-	keymap[SCANCODE_INSERT] = SDLK_INSERT;
-	keymap[SCANCODE_CLRHOME] = SDLK_HOME;
-	keymap[SCANCODE_UP] = SDLK_UP;
-	keymap[SCANCODE_DOWN] = SDLK_DOWN;
-	keymap[SCANCODE_RIGHT] = SDLK_RIGHT;
-	keymap[SCANCODE_LEFT] = SDLK_LEFT;
+    /* Cursor keypad */
+    keymap[SCANCODE_HELP] = SDLK_HELP;
+    keymap[SCANCODE_UNDO] = SDLK_UNDO;
+    keymap[SCANCODE_INSERT] = SDLK_INSERT;
+    keymap[SCANCODE_CLRHOME] = SDLK_HOME;
+    keymap[SCANCODE_UP] = SDLK_UP;
+    keymap[SCANCODE_DOWN] = SDLK_DOWN;
+    keymap[SCANCODE_RIGHT] = SDLK_RIGHT;
+    keymap[SCANCODE_LEFT] = SDLK_LEFT;
 
-	/* Special keys */
-	keymap[SCANCODE_ESCAPE] = SDLK_ESCAPE;
-	keymap[SCANCODE_BACKSPACE] = SDLK_BACKSPACE;
-	keymap[SCANCODE_TAB] = SDLK_TAB;
-	keymap[SCANCODE_ENTER] = SDLK_RETURN;
-	keymap[SCANCODE_DELETE] = SDLK_DELETE;
-	keymap[SCANCODE_LEFTCONTROL] = SDLK_LCTRL;
-	keymap[SCANCODE_LEFTSHIFT] = SDLK_LSHIFT;
-	keymap[SCANCODE_RIGHTSHIFT] = SDLK_RSHIFT;
-	keymap[SCANCODE_LEFTALT] = SDLK_LALT;
-	keymap[SCANCODE_CAPSLOCK] = SDLK_CAPSLOCK;
+    /* Special keys */
+    keymap[SCANCODE_ESCAPE] = SDLK_ESCAPE;
+    keymap[SCANCODE_BACKSPACE] = SDLK_BACKSPACE;
+    keymap[SCANCODE_TAB] = SDLK_TAB;
+    keymap[SCANCODE_ENTER] = SDLK_RETURN;
+    keymap[SCANCODE_DELETE] = SDLK_DELETE;
+    keymap[SCANCODE_LEFTCONTROL] = SDLK_LCTRL;
+    keymap[SCANCODE_LEFTSHIFT] = SDLK_LSHIFT;
+    keymap[SCANCODE_RIGHTSHIFT] = SDLK_RSHIFT;
+    keymap[SCANCODE_LEFTALT] = SDLK_LALT;
+    keymap[SCANCODE_CAPSLOCK] = SDLK_CAPSLOCK;
 
-	use_dev_mouse = (SDL_AtariDevMouse_Open()!=0) ? SDL_TRUE : SDL_FALSE;
+    use_dev_mouse = (SDL_AtariDevMouse_Open () != 0) ? SDL_TRUE : SDL_FALSE;
 
-	vectors_mask = ATARI_XBIOS_JOYSTICKEVENTS;	/* XBIOS joystick events */
-	if (!use_dev_mouse) {
-		vectors_mask |= ATARI_XBIOS_MOUSEEVENTS;	/* XBIOS mouse events */
-	}
-	if (Getcookie(C_MiNT, &dummy)==C_FOUND) {
-		vectors_mask = 0;
-	}
-	SDL_AtariXbios_InstallVectors(vectors_mask);
+    vectors_mask = ATARI_XBIOS_JOYSTICKEVENTS;  /* XBIOS joystick events */
+    if (!use_dev_mouse) {
+        vectors_mask |= ATARI_XBIOS_MOUSEEVENTS;        /* XBIOS mouse events */
+    }
+    if (Getcookie (C_MiNT, &dummy) == C_FOUND) {
+        vectors_mask = 0;
+    }
+    SDL_AtariXbios_InstallVectors (vectors_mask);
 }
 
-void AtariGemdos_PumpEvents(_THIS)
+void
+AtariGemdos_PumpEvents (_THIS)
 {
-	int i;
-	SDL_keysym keysym;
+    int i;
+    SDL_keysym keysym;
 
-	/* Update pressed keys */
-	SDL_memset(gemdos_currentkeyboard, 0, ATARIBIOS_MAXKEYS);
+    /* Update pressed keys */
+    SDL_memset (gemdos_currentkeyboard, 0, ATARIBIOS_MAXKEYS);
 
-	while (Cconis()!=DEV_BUSY) {
-		unsigned long key_pressed;
-		unsigned char scancode, asciicode;
+    while (Cconis () != DEV_BUSY) {
+        unsigned long key_pressed;
+        unsigned char scancode, asciicode;
 
-		key_pressed=Cnecin();
+        key_pressed = Cnecin ();
 
-		asciicode = key_pressed;
-		scancode = key_pressed >> 16;
+        asciicode = key_pressed;
+        scancode = key_pressed >> 16;
 
-		gemdos_currentkeyboard[scancode]=0xFF;
-		gemdos_currentascii[scancode]=asciicode;
-	}
+        gemdos_currentkeyboard[scancode] = 0xFF;
+        gemdos_currentascii[scancode] = asciicode;
+    }
+
+    /* Read special keys */
+    UpdateSpecialKeys (Kbshift (-1));
 
-	/* Read special keys */
-	UpdateSpecialKeys(Kbshift(-1));
+    /* Now generate events */
+    for (i = 0; i < ATARIBIOS_MAXKEYS; i++) {
+        /* Key pressed ? */
+        if (gemdos_currentkeyboard[i] && !gemdos_previouskeyboard[i])
+            SDL_PrivateKeyboard (SDL_PRESSED,
+                                 TranslateKey (i, gemdos_currentascii[i],
+                                               &keysym, SDL_TRUE));
 
-	/* Now generate events */
-	for (i=0; i<ATARIBIOS_MAXKEYS; i++) {
-		/* Key pressed ? */
-		if (gemdos_currentkeyboard[i] && !gemdos_previouskeyboard[i])
-			SDL_PrivateKeyboard(SDL_PRESSED,
-				TranslateKey(i, gemdos_currentascii[i], &keysym, SDL_TRUE));
-			
-		/* Key unpressed ? */
-		if (gemdos_previouskeyboard[i] && !gemdos_currentkeyboard[i])
-			SDL_PrivateKeyboard(SDL_RELEASED,
-				TranslateKey(i, gemdos_currentascii[i], &keysym, SDL_FALSE));
-	}
+        /* Key unpressed ? */
+        if (gemdos_previouskeyboard[i] && !gemdos_currentkeyboard[i])
+            SDL_PrivateKeyboard (SDL_RELEASED,
+                                 TranslateKey (i, gemdos_currentascii[i],
+                                               &keysym, SDL_FALSE));
+    }
 
-	if (use_dev_mouse) {
-		SDL_AtariDevMouse_PostMouseEvents(this, SDL_TRUE);
-	} else {
-		SDL_AtariXbios_PostMouseEvents(this, SDL_TRUE);
-	}
+    if (use_dev_mouse) {
+        SDL_AtariDevMouse_PostMouseEvents (this, SDL_TRUE);
+    } else {
+        SDL_AtariXbios_PostMouseEvents (this, SDL_TRUE);
+    }
 
-	/* Will be previous table */
-	SDL_memcpy(gemdos_previouskeyboard, gemdos_currentkeyboard, ATARIBIOS_MAXKEYS);
+    /* Will be previous table */
+    SDL_memcpy (gemdos_previouskeyboard, gemdos_currentkeyboard,
+                ATARIBIOS_MAXKEYS);
 }
 
-static void UpdateSpecialKeys(int special_keys_state)
+static void
+UpdateSpecialKeys (int special_keys_state)
 {
 #define UPDATE_SPECIAL_KEYS(numbit,scancode) \
 	{	\
@@ -177,37 +185,41 @@
 		}	\
 	}
 
-	UPDATE_SPECIAL_KEYS(K_RSHIFT, SCANCODE_RIGHTSHIFT);
-	UPDATE_SPECIAL_KEYS(K_LSHIFT, SCANCODE_LEFTSHIFT);
-	UPDATE_SPECIAL_KEYS(K_CTRL, SCANCODE_LEFTCONTROL);
-	UPDATE_SPECIAL_KEYS(K_ALT, SCANCODE_LEFTALT);
-	UPDATE_SPECIAL_KEYS(K_CAPSLOCK, SCANCODE_CAPSLOCK);
+    UPDATE_SPECIAL_KEYS (K_RSHIFT, SCANCODE_RIGHTSHIFT);
+    UPDATE_SPECIAL_KEYS (K_LSHIFT, SCANCODE_LEFTSHIFT);
+    UPDATE_SPECIAL_KEYS (K_CTRL, SCANCODE_LEFTCONTROL);
+    UPDATE_SPECIAL_KEYS (K_ALT, SCANCODE_LEFTALT);
+    UPDATE_SPECIAL_KEYS (K_CAPSLOCK, SCANCODE_CAPSLOCK);
 }
 
-static SDL_keysym *TranslateKey(int scancode, int asciicode, SDL_keysym *keysym,
-	SDL_bool pressed)
+static SDL_keysym *
+TranslateKey (int scancode, int asciicode, SDL_keysym * keysym,
+              SDL_bool pressed)
 {
-	/* Set the keysym information */
-	keysym->scancode = scancode;
+    /* Set the keysym information */
+    keysym->scancode = scancode;
 
-	if (asciicode)
-		keysym->sym = asciicode;		
-	else
-		keysym->sym = keymap[scancode];
+    if (asciicode)
+        keysym->sym = asciicode;
+    else
+        keysym->sym = keymap[scancode];
 
-	keysym->mod = KMOD_NONE;
-	keysym->unicode = 0;
-	if (SDL_TranslateUNICODE && pressed) {
-		keysym->unicode = SDL_AtariToUnicodeTable[asciicode];
-	}
+    keysym->mod = KMOD_NONE;
+    keysym->unicode = 0;
+    if (SDL_TranslateUNICODE && pressed) {
+        keysym->unicode = SDL_AtariToUnicodeTable[asciicode];
+    }
 
-	return(keysym);
+    return (keysym);
 }
 
-void AtariGemdos_ShutdownEvents(void)
+void
+AtariGemdos_ShutdownEvents (void)
 {
-	SDL_AtariXbios_RestoreVectors();
-	if (use_dev_mouse) {
-		SDL_AtariDevMouse_Close();
-	}
+    SDL_AtariXbios_RestoreVectors ();
+    if (use_dev_mouse) {
+        SDL_AtariDevMouse_Close ();
+    }
 }
+
+/* vi: set ts=4 sw=4 expandtab: */