diff src/joystick/riscos/SDL_sysjoystick.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 92947e3a18db
children 4da1ee79c9af
line wrap: on
line diff
--- a/src/joystick/riscos/SDL_sysjoystick.c	Sun May 21 17:27:13 2006 +0000
+++ b/src/joystick/riscos/SDL_sysjoystick.c	Sun May 28 13:04:16 2006 +0000
@@ -41,9 +41,9 @@
 
 #define JOYSTICK_READ 0x43F40
 
-struct joystick_hwdata 
+struct joystick_hwdata
 {
-	int joystate;
+    int joystate;
 };
 
 
@@ -52,32 +52,32 @@
  * joysticks.  Joystick 0 should be the system default joystick.
  * It should return number of joysticks, or -1 on an unrecoverable fatal error.
  */
-int SDL_SYS_JoystickInit(void)
+int
+SDL_SYS_JoystickInit (void)
 {
-	_kernel_swi_regs regs;
+    _kernel_swi_regs regs;
 
-	 /* Try to read joystick 0 */
-	regs.r[0] = 0;
-	if (_kernel_swi(JOYSTICK_READ, &regs, &regs) == NULL)
-	{
-		/* Switch works so assume we've got a joystick */
-		return 1;
-	}
-	/* Switch fails so it looks like there's no joystick here */
+    /* Try to read joystick 0 */
+    regs.r[0] = 0;
+    if (_kernel_swi (JOYSTICK_READ, &regs, &regs) == NULL) {
+        /* Switch works so assume we've got a joystick */
+        return 1;
+    }
+    /* Switch fails so it looks like there's no joystick here */
 
-	return(0);
+    return (0);
 }
 
 /* Function to get the device-dependent name of a joystick */
-const char *SDL_SYS_JoystickName(int index)
+const char *
+SDL_SYS_JoystickName (int index)
 {
-	if (index == 0)
-	{
-		return "RISC OS Joystick 0";
-	}
+    if (index == 0) {
+        return "RISC OS Joystick 0";
+    }
 
-	SDL_SetError("No joystick available with that index");
-	return(NULL);
+    SDL_SetError ("No joystick available with that index");
+    return (NULL);
 }
 
 /* Function to open a joystick for use.
@@ -85,24 +85,25 @@
    This should fill the nbuttons and naxes fields of the joystick structure.
    It returns 0, or -1 if there is an error.
  */
-int SDL_SYS_JoystickOpen(SDL_Joystick *joystick)
+int
+SDL_SYS_JoystickOpen (SDL_Joystick * joystick)
 {
-	_kernel_swi_regs regs;
+    _kernel_swi_regs regs;
 
-	if(!(joystick->hwdata=SDL_malloc(sizeof(struct joystick_hwdata))))
-		return -1;
+    if (!(joystick->hwdata = SDL_malloc (sizeof (struct joystick_hwdata))))
+        return -1;
 
-	regs.r[0] = joystick->index;
+    regs.r[0] = joystick->index;
 
-	/* Don't know how to get exact count of buttons so assume max of 4 for now */
-	joystick->nbuttons=4;
+    /* Don't know how to get exact count of buttons so assume max of 4 for now */
+    joystick->nbuttons = 4;
 
-	joystick->nhats=0;
-	joystick->nballs=0;
-	joystick->naxes=2;
-	joystick->hwdata->joystate=0;
+    joystick->nhats = 0;
+    joystick->nballs = 0;
+    joystick->naxes = 2;
+    joystick->hwdata->joystate = 0;
 
-	return 0;
+    return 0;
 
 }
 
@@ -111,66 +112,69 @@
  * but instead should call SDL_PrivateJoystick*() to deliver events
  * and update joystick device state.
  */
-void SDL_SYS_JoystickUpdate(SDL_Joystick *joystick)
+void
+SDL_SYS_JoystickUpdate (SDL_Joystick * joystick)
 {
-	_kernel_swi_regs regs;
-	regs.r[0] = joystick->index;
+    _kernel_swi_regs regs;
+    regs.r[0] = joystick->index;
 
-	if (_kernel_swi(JOYSTICK_READ, &regs, &regs) == NULL)
-	{
-		int newstate = regs.r[0];
-		int oldstate = joystick->hwdata->joystate;
-		if (newstate != oldstate)
-		{
-			if ((newstate & 0xFF) != (oldstate & 0xFF))
-			{
-				int y = regs.r[0] & 0xFF;
-				/* Convert to signed values */
-				if (y >= 128) y -= 256;
-				SDL_PrivateJoystickAxis(joystick,1,-y * 256); /* Up and down opposite to result in SDL */
-			}
-			if ((newstate & 0xFF00) != (oldstate & 0xFF00))
-			{
-				int x = (regs.r[0] & 0xFF00) >> 8;
-				if (x >= 128) x -= 256;
-				SDL_PrivateJoystickAxis(joystick,0,x * 256);
-			}
+    if (_kernel_swi (JOYSTICK_READ, &regs, &regs) == NULL) {
+        int newstate = regs.r[0];
+        int oldstate = joystick->hwdata->joystate;
+        if (newstate != oldstate) {
+            if ((newstate & 0xFF) != (oldstate & 0xFF)) {
+                int y = regs.r[0] & 0xFF;
+                /* Convert to signed values */
+                if (y >= 128)
+                    y -= 256;
+                SDL_PrivateJoystickAxis (joystick, 1, -y * 256);        /* Up and down opposite to result in SDL */
+            }
+            if ((newstate & 0xFF00) != (oldstate & 0xFF00)) {
+                int x = (regs.r[0] & 0xFF00) >> 8;
+                if (x >= 128)
+                    x -= 256;
+                SDL_PrivateJoystickAxis (joystick, 0, x * 256);
+            }
 
-			if ((newstate & 0xFF0000) != (oldstate & 0xFF0000))
-			{
-				int buttons = (regs.r[0] & 0xFF0000) >> 16;
-				int oldbuttons = (oldstate & 0xFF0000) >> 16;
-				int i;
-				for (i = 0; i < joystick->nbuttons; i++)
-				{
-					if ((buttons & (1<<i)) != (oldbuttons & (1<<i)))
-					{
-						if (buttons & (1<<i)) SDL_PrivateJoystickButton(joystick,i,SDL_PRESSED);
-						else SDL_PrivateJoystickButton(joystick,i,SDL_RELEASED);
-					}
-				}
-			}
-			joystick->hwdata->joystate = newstate;
-		}		
-	}
+            if ((newstate & 0xFF0000) != (oldstate & 0xFF0000)) {
+                int buttons = (regs.r[0] & 0xFF0000) >> 16;
+                int oldbuttons = (oldstate & 0xFF0000) >> 16;
+                int i;
+                for (i = 0; i < joystick->nbuttons; i++) {
+                    if ((buttons & (1 << i)) != (oldbuttons & (1 << i))) {
+                        if (buttons & (1 << i))
+                            SDL_PrivateJoystickButton (joystick, i,
+                                                       SDL_PRESSED);
+                        else
+                            SDL_PrivateJoystickButton (joystick, i,
+                                                       SDL_RELEASED);
+                    }
+                }
+            }
+            joystick->hwdata->joystate = newstate;
+        }
+    }
 
-	return;
+    return;
 }
 
 /* Function to close a joystick after use */
-void SDL_SYS_JoystickClose(SDL_Joystick *joystick)
+void
+SDL_SYS_JoystickClose (SDL_Joystick * joystick)
 {
-	if(joystick->hwdata)
-		SDL_free(joystick->hwdata);
-	return;
+    if (joystick->hwdata)
+        SDL_free (joystick->hwdata);
+    return;
 }
 
 /* Function to perform any system-specific joystick related cleanup */
-void SDL_SYS_JoystickQuit(void)
+void
+SDL_SYS_JoystickQuit (void)
 {
-	SDL_numjoysticks=0;
+    SDL_numjoysticks = 0;
 
-	return;
+    return;
 }
 
 #endif /* SDL_JOYSTICK_RISCOS */
+/* vi: set ts=4 sw=4 expandtab: */