changeset 2213:59a667370c57

make indent
author Bob Pendleton <bob@pendleton.com>
date Tue, 24 Jul 2007 18:46:45 +0000
parents fdadda42d4d4
children e7164a4dac62
files Xcode/SDLTest/libsdlmain_prefix.h Xcode/TemplatesForProjectBuilder/SDL Application/SDLMain.h Xcode/TemplatesForProjectBuilder/SDL Application/main.c Xcode/TemplatesForProjectBuilder/SDL Cocoa Application/SDLMain.h Xcode/TemplatesForProjectBuilder/SDL Cocoa Application/main.c Xcode/TemplatesForProjectBuilder/SDL Custom Cocoa Application/MyController.h Xcode/TemplatesForProjectBuilder/SDL Custom Cocoa Application/MyCustomView.h Xcode/TemplatesForProjectBuilder/SDL Custom Cocoa Application/MyCustomWindow.h Xcode/TemplatesForProjectBuilder/SDL Custom Cocoa Application/SDLMain.h Xcode/TemplatesForProjectBuilder/SDL Custom Cocoa Application/prefix.h Xcode/TemplatesForProjectBuilder/SDL OpenGL Application/SDLMain.h Xcode/TemplatesForProjectBuilder/SDL OpenGL Application/atlantis/atlantis.c Xcode/TemplatesForProjectBuilder/SDL OpenGL Application/atlantis/atlantis.h Xcode/TemplatesForProjectBuilder/SDL OpenGL Application/atlantis/swim.c Xcode/TemplatesForProjectBuilder/SDL OpenGL Application/main.c Xcode/TemplatesForXcode/SDL Application/SDLMain.h Xcode/TemplatesForXcode/SDL Application/main.c Xcode/TemplatesForXcode/SDL Cocoa Application/SDLMain.h Xcode/TemplatesForXcode/SDL Cocoa Application/main.c Xcode/TemplatesForXcode/SDL Custom Cocoa Application/MyController.h Xcode/TemplatesForXcode/SDL Custom Cocoa Application/MyCustomView.h Xcode/TemplatesForXcode/SDL Custom Cocoa Application/MyCustomWindow.h Xcode/TemplatesForXcode/SDL Custom Cocoa Application/SDLMain.h Xcode/TemplatesForXcode/SDL OpenGL Application/SDLMain.h Xcode/TemplatesForXcode/SDL OpenGL Application/atlantis/atlantis.c Xcode/TemplatesForXcode/SDL OpenGL Application/atlantis/atlantis.h Xcode/TemplatesForXcode/SDL OpenGL Application/atlantis/swim.c Xcode/TemplatesForXcode/SDL OpenGL Application/main.c src/video/x11/SDL_x11gamma.c src/video/x11/SDL_x11gamma.h src/video/x11/SDL_x11window.c
diffstat 31 files changed, 811 insertions(+), 732 deletions(-) [+]
line wrap: on
line diff
--- a/Xcode/SDLTest/libsdlmain_prefix.h	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/SDLTest/libsdlmain_prefix.h	Tue Jul 24 18:46:45 2007 +0000
@@ -10,4 +10,4 @@
 #include <Cocoa/Cocoa.h>
 #include <Carbon/Carbon.h>
 #include "SDL.h"
-#include "SDLMain.h"
\ No newline at end of file
+#include "SDLMain.h"
--- a/Xcode/TemplatesForProjectBuilder/SDL Application/SDLMain.h	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForProjectBuilder/SDL Application/SDLMain.h	Tue Jul 24 18:46:45 2007 +0000
@@ -7,5 +7,4 @@
 
 #import <Cocoa/Cocoa.h>
 
-@interface SDLMain : NSObject
-@end
+@ interface SDLMain:NSObject @ end
--- a/Xcode/TemplatesForProjectBuilder/SDL Application/main.c	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForProjectBuilder/SDL Application/main.c	Tue Jul 24 18:46:45 2007 +0000
@@ -4,7 +4,7 @@
    Please see the SDL documentation for details on using the SDL API:
    /Developer/Documentation/SDL/docs.html
 */
-   
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
@@ -12,54 +12,54 @@
 
 #include "SDL.h"
 
-int main(int argc, char *argv[])
+int
+main(int argc, char *argv[])
 {
-	Uint32 initflags = SDL_INIT_VIDEO;  /* See documentation for details */
-	SDL_Surface *screen;
-	Uint8  video_bpp = 0;
-	Uint32 videoflags = SDL_SWSURFACE;
-	int    done;
-        SDL_Event event;
+    Uint32 initflags = SDL_INIT_VIDEO;  /* See documentation for details */
+    SDL_Surface *screen;
+    Uint8 video_bpp = 0;
+    Uint32 videoflags = SDL_SWSURFACE;
+    int done;
+    SDL_Event event;
 
-	/* Initialize the SDL library */
-	if ( SDL_Init(initflags) < 0 ) {
-		fprintf(stderr, "Couldn't initialize SDL: %s\n",
-			SDL_GetError());
-		exit(1);
-	}
+    /* Initialize the SDL library */
+    if (SDL_Init(initflags) < 0) {
+        fprintf(stderr, "Couldn't initialize SDL: %s\n", SDL_GetError());
+        exit(1);
+    }
 
-	/* Set 640x480 video mode */
-	screen=SDL_SetVideoMode(640,480, video_bpp, videoflags);
-        if (screen == NULL) {
-		fprintf(stderr, "Couldn't set 640x480x%d video mode: %s\n",
-                        video_bpp, SDL_GetError());
-		SDL_Quit();
-		exit(2);
-	}
+    /* Set 640x480 video mode */
+    screen = SDL_SetVideoMode(640, 480, video_bpp, videoflags);
+    if (screen == NULL) {
+        fprintf(stderr, "Couldn't set 640x480x%d video mode: %s\n",
+                video_bpp, SDL_GetError());
+        SDL_Quit();
+        exit(2);
+    }
 
-	done = 0;
-	while ( !done ) {
+    done = 0;
+    while (!done) {
 
-		/* Check for events */
-		while ( SDL_PollEvent(&event) ) {
-			switch (event.type) {
+        /* Check for events */
+        while (SDL_PollEvent(&event)) {
+            switch (event.type) {
 
-				case SDL_MOUSEMOTION:
-					break;
-				case SDL_MOUSEBUTTONDOWN:
-					break;
-				case SDL_KEYDOWN:
-					/* Any keypress quits the app... */
-				case SDL_QUIT:
-					done = 1;
-					break;
-				default:
-					break;
-			}
-		}
-	}
-	
-	/* Clean up the SDL library */
-	SDL_Quit();
-	return(0);
+            case SDL_MOUSEMOTION:
+                break;
+            case SDL_MOUSEBUTTONDOWN:
+                break;
+            case SDL_KEYDOWN:
+                /* Any keypress quits the app... */
+            case SDL_QUIT:
+                done = 1;
+                break;
+            default:
+                break;
+            }
+        }
+    }
+
+    /* Clean up the SDL library */
+    SDL_Quit();
+    return (0);
 }
--- a/Xcode/TemplatesForProjectBuilder/SDL Cocoa Application/SDLMain.h	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForProjectBuilder/SDL Cocoa Application/SDLMain.h	Tue Jul 24 18:46:45 2007 +0000
@@ -7,11 +7,10 @@
 
 #import <Cocoa/Cocoa.h>
 
-@interface SDLMain : NSObject
-- (IBAction)prefsMenu:(id)sender;
-- (IBAction)newGame:(id)sender;
-- (IBAction)openGame:(id)sender;
-- (IBAction)saveGame:(id)sender;
-- (IBAction)saveGameAs:(id)sender;
-- (IBAction)help:(id)sender;
+@ interface SDLMain: NSObject - (IBAction) prefsMenu:(id) sender;
+-(IBAction) newGame:(id) sender;
+-(IBAction) openGame:(id) sender;
+-(IBAction) saveGame:(id) sender;
+-(IBAction) saveGameAs:(id) sender;
+-(IBAction) help:(id) sender;
 @end
--- a/Xcode/TemplatesForProjectBuilder/SDL Cocoa Application/main.c	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForProjectBuilder/SDL Cocoa Application/main.c	Tue Jul 24 18:46:45 2007 +0000
@@ -4,7 +4,7 @@
    Please see the SDL documentation for details on using the SDL API:
    /Developer/Documentation/SDL/docs.html
 */
-   
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
@@ -12,54 +12,54 @@
 
 #include "SDL.h"
 
-int main(int argc, char *argv[])
+int
+main(int argc, char *argv[])
 {
-	Uint32 initflags = SDL_INIT_VIDEO;  /* See documentation for details */
-	SDL_Surface *screen;
-	Uint8  video_bpp = 0;
-	Uint32 videoflags = SDL_SWSURFACE;
-	int    done;
-        SDL_Event event;
+    Uint32 initflags = SDL_INIT_VIDEO;  /* See documentation for details */
+    SDL_Surface *screen;
+    Uint8 video_bpp = 0;
+    Uint32 videoflags = SDL_SWSURFACE;
+    int done;
+    SDL_Event event;
 
-	/* Initialize the SDL library */
-	if ( SDL_Init(initflags) < 0 ) {
-		fprintf(stderr, "Couldn't initialize SDL: %s\n",
-			SDL_GetError());
-		exit(1);
-	}
+    /* Initialize the SDL library */
+    if (SDL_Init(initflags) < 0) {
+        fprintf(stderr, "Couldn't initialize SDL: %s\n", SDL_GetError());
+        exit(1);
+    }
 
-	/* Set 640x480 video mode */
-	screen=SDL_SetVideoMode(640,480, video_bpp, videoflags);
-        if (screen == NULL) {
-		fprintf(stderr, "Couldn't set 640x480x%d video mode: %s\n",
-                        video_bpp, SDL_GetError());
-		SDL_Quit();
-		exit(2);
-	}
+    /* Set 640x480 video mode */
+    screen = SDL_SetVideoMode(640, 480, video_bpp, videoflags);
+    if (screen == NULL) {
+        fprintf(stderr, "Couldn't set 640x480x%d video mode: %s\n",
+                video_bpp, SDL_GetError());
+        SDL_Quit();
+        exit(2);
+    }
 
-	done = 0;
-	while ( !done ) {
+    done = 0;
+    while (!done) {
 
-		/* Check for events */
-		while ( SDL_PollEvent(&event) ) {
-			switch (event.type) {
+        /* Check for events */
+        while (SDL_PollEvent(&event)) {
+            switch (event.type) {
 
-				case SDL_MOUSEMOTION:
-					break;
-				case SDL_MOUSEBUTTONDOWN:
-					break;
-				case SDL_KEYDOWN:
-					/* Any keypress quits the app... */
-				case SDL_QUIT:
-					done = 1;
-					break;
-				default:
-					break;
-			}
-		}
-	}
-	
-	/* Clean up the SDL library */
-	SDL_Quit();
-	return(0);
+            case SDL_MOUSEMOTION:
+                break;
+            case SDL_MOUSEBUTTONDOWN:
+                break;
+            case SDL_KEYDOWN:
+                /* Any keypress quits the app... */
+            case SDL_QUIT:
+                done = 1;
+                break;
+            default:
+                break;
+            }
+        }
+    }
+
+    /* Clean up the SDL library */
+    SDL_Quit();
+    return (0);
 }
--- a/Xcode/TemplatesForProjectBuilder/SDL Custom Cocoa Application/MyController.h	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForProjectBuilder/SDL Custom Cocoa Application/MyController.h	Tue Jul 24 18:46:45 2007 +0000
@@ -9,38 +9,34 @@
 #import <Cocoa/Cocoa.h>
 #import "SDL.h"
 
-extern id gController; // instance of this class from nib
+extern id gController;          // instance of this class from nib
 
 // Declare SDL_QuartzWindowDelegate (defined in SDL.framework)
-@interface SDL_QuartzWindowDelegate : NSObject
-@end
-
-@interface MyController : NSObject
-{
+@interface SDL_QuartzWindowDelegate: NSObject @ end @ interface MyController:NSObject {
     // Interface Builder Outlets
-    IBOutlet id 	_framesPerSecond;
-    IBOutlet id 	_numSprites;
-    IBOutlet id 	_window;
-    IBOutlet id 	_view;
-    
+    IBOutlet id _framesPerSecond;
+    IBOutlet id _numSprites;
+    IBOutlet id _window;
+    IBOutlet id _view;
+
     // Private instance variables
-    int          _nSprites;
-    int          _max_speed;
-    int          _doFlip;
-    Uint8*       _mem;
-    
-    SDL_Surface* _screen;
-    SDL_Surface* _sprite;
-    SDL_Rect*    _sprite_rects;
-    SDL_Rect*    _positions;
-    SDL_Rect*    _velocities;
-    int          _sprites_visible;
-    Uint16       _sprite_w, _sprite_h;
-    
-    int 		 _mouse_x, _mouse_y;
+    int _nSprites;
+    int _max_speed;
+    int _doFlip;
+    Uint8 *_mem;
+
+    SDL_Surface *_screen;
+    SDL_Surface *_sprite;
+    SDL_Rect *_sprite_rects;
+    SDL_Rect *_positions;
+    SDL_Rect *_velocities;
+    int _sprites_visible;
+    Uint16 _sprite_w, _sprite_h;
+
+    int _mouse_x, _mouse_y;
 }
+
 // Interface Builder Actions
-- (IBAction)changeNumberOfSprites:(id)sender;
-- (IBAction)selectUpdateMode:(id)sender;
+-(IBAction) changeNumberOfSprites:(id) sender;
+-(IBAction) selectUpdateMode:(id) sender;
 @end
-
--- a/Xcode/TemplatesForProjectBuilder/SDL Custom Cocoa Application/MyCustomView.h	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForProjectBuilder/SDL Custom Cocoa Application/MyCustomView.h	Tue Jul 24 18:46:45 2007 +0000
@@ -9,8 +9,7 @@
 #import <AppKit/AppKit.h>
 
 
-@interface MyCustomView : NSQuickDrawView
-{
+@ interface MyCustomView:NSQuickDrawView {
 }
 
 @end
--- a/Xcode/TemplatesForProjectBuilder/SDL Custom Cocoa Application/MyCustomWindow.h	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForProjectBuilder/SDL Custom Cocoa Application/MyCustomWindow.h	Tue Jul 24 18:46:45 2007 +0000
@@ -11,17 +11,11 @@
 // Be a subclass of SDL_QuartzWindow so SDL will
 // handle the redraw problems when minimizing the window
 // This class is defined in SDL.framework
-@interface SDL_QuartzWindow : NSWindow
-@end
-
+@ interface SDL_QuartzWindow:NSWindow @ end
 // Also assign SDL_QuartzWindowDelegate to the window
 // to perform other tasks. You can subclass this delegate
 // if you want to add your own delegation methods
 // This class is defined in SDL.framework
-@interface SDL_QuartzWindowDelegate : NSObject
-@end
-
+@ interface SDL_QuartzWindowDelegate:NSObject @ end
 // Declare our custom class
-@interface MyCustomWindow : SDL_QuartzWindow
-@end
-
+@ interface MyCustomWindow:SDL_QuartzWindow @ end
--- a/Xcode/TemplatesForProjectBuilder/SDL Custom Cocoa Application/SDLMain.h	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForProjectBuilder/SDL Custom Cocoa Application/SDLMain.h	Tue Jul 24 18:46:45 2007 +0000
@@ -7,8 +7,8 @@
 
 #import <Cocoa/Cocoa.h>
 
-@interface SDLMain : NSObject
-{
+@ interface SDLMain:NSObject {
     IBOutlet id _controller;
 }
+
 @end
--- a/Xcode/TemplatesForProjectBuilder/SDL Custom Cocoa Application/prefix.h	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForProjectBuilder/SDL Custom Cocoa Application/prefix.h	Tue Jul 24 18:46:45 2007 +0000
@@ -9,4 +9,3 @@
 
 #include <Foundation/Foundation.h>
 #include <Cocoa/Cocoa.h>
-
--- a/Xcode/TemplatesForProjectBuilder/SDL OpenGL Application/SDLMain.h	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForProjectBuilder/SDL OpenGL Application/SDLMain.h	Tue Jul 24 18:46:45 2007 +0000
@@ -7,5 +7,4 @@
 
 #import <Cocoa/Cocoa.h>
 
-@interface SDLMain : NSObject
-@end
+@ interface SDLMain:NSObject @ end
--- a/Xcode/TemplatesForProjectBuilder/SDL OpenGL Application/atlantis/atlantis.c	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForProjectBuilder/SDL OpenGL Application/atlantis/atlantis.c	Tue Jul 24 18:46:45 2007 +0000
@@ -54,46 +54,49 @@
 
 int w_win = 640;
 int h_win = 480;
-GLint count  = 0;
+GLint count = 0;
 GLenum StrMode = GL_VENDOR;
 
 GLboolean moving;
 
-static double mtime(void)
+static double
+mtime(void)
 {
-   struct timeval tk_time;
-   struct timezone tz;
-   
-   gettimeofday(&tk_time, &tz);
-   
-   return 4294.967296 * tk_time.tv_sec + 0.000001 * tk_time.tv_usec;
+    struct timeval tk_time;
+    struct timezone tz;
+
+    gettimeofday(&tk_time, &tz);
+
+    return 4294.967296 * tk_time.tv_sec + 0.000001 * tk_time.tv_usec;
 }
 
-static double filter(double in, double *save)
+static double
+filter(double in, double *save)
 {
-	static double k1 = 0.9;
-	static double k2 = 0.05;
+    static double k1 = 0.9;
+    static double k2 = 0.05;
 
-	save[3] = in;
-	save[1] = save[0]*k1 + k2*(save[3] + save[2]);
+    save[3] = in;
+    save[1] = save[0] * k1 + k2 * (save[3] + save[2]);
 
-	save[0]=save[1];
-	save[2]=save[3];
+    save[0] = save[1];
+    save[2] = save[3];
 
-	return(save[1]);
+    return (save[1]);
 }
 
-void DrawStr(const char *str)
+void
+DrawStr(const char *str)
 {
-	GLint i = 0;
-	
-	if(!str) return;
-        
-	while(str[i])
-	{
-		glutBitmapCharacter(GLUT_BITMAP_HELVETICA_12, str[i]);
-		i++;
-	}
+    GLint i = 0;
+
+    if (!str)
+        return;
+
+    while (str[i]) {
+        glutBitmapCharacter(GLUT_BITMAP_HELVETICA_12, str[i]);
+        i++;
+    }
 }
 
 void
@@ -134,18 +137,18 @@
 void
 Atlantis_Init(void)
 {
-    static float ambient[] = {0.2, 0.2, 0.2, 1.0};
-    static float diffuse[] = {1.0, 1.0, 1.0, 1.0};
-    static float position[] = {0.0, 1.0, 0.0, 0.0};
-    static float mat_shininess[] = {90.0};
-    static float mat_specular[] = {0.8, 0.8, 0.8, 1.0};
-    static float mat_diffuse[] = {0.46, 0.66, 0.795, 1.0};
-    static float mat_ambient[] = {0.3, 0.4, 0.5, 1.0};
-    static float lmodel_ambient[] = {0.4, 0.4, 0.4, 1.0};
-    static float lmodel_localviewer[] = {0.0};
+    static float ambient[] = { 0.2, 0.2, 0.2, 1.0 };
+    static float diffuse[] = { 1.0, 1.0, 1.0, 1.0 };
+    static float position[] = { 0.0, 1.0, 0.0, 0.0 };
+    static float mat_shininess[] = { 90.0 };
+    static float mat_specular[] = { 0.8, 0.8, 0.8, 1.0 };
+    static float mat_diffuse[] = { 0.46, 0.66, 0.795, 1.0 };
+    static float mat_ambient[] = { 0.3, 0.4, 0.5, 1.0 };
+    static float lmodel_ambient[] = { 0.4, 0.4, 0.4, 1.0 };
+    static float lmodel_localviewer[] = { 0.0 };
     //GLfloat map1[4] = {0.0, 0.0, 0.0, 0.0};
     //GLfloat map2[4] = {0.0, 0.0, 0.0, 0.0};
-    static float fog_color[] = {0.0, 0.5, 0.9, 1.0};
+    static float fog_color[] = { 0.0, 0.5, 0.9, 1.0 };
 
     glFrontFace(GL_CCW);
 
@@ -168,9 +171,9 @@
     InitFishs();
 
     glEnable(GL_FOG);
-	glFogi(GL_FOG_MODE, GL_EXP);
-	glFogf(GL_FOG_DENSITY, 0.0000025);
-	glFogfv(GL_FOG_COLOR, fog_color);
+    glFogi(GL_FOG_MODE, GL_EXP);
+    glFogf(GL_FOG_DENSITY, 0.0000025);
+    glFogfv(GL_FOG_COLOR, fog_color);
 
     glClearColor(0.0, 0.5, 0.9, 1.0);
 }
@@ -178,14 +181,15 @@
 void
 Atlantis_Reshape(int width, int height)
 {
-	w_win = width;
-	h_win = height;
-	
+    w_win = width;
+    h_win = height;
+
     glViewport(0, 0, width, height);
 
     glMatrixMode(GL_PROJECTION);
     glLoadIdentity();
-    gluPerspective(60.0, (GLfloat) width / (GLfloat) height, 20000.0, 300000.0);
+    gluPerspective(60.0, (GLfloat) width / (GLfloat) height, 20000.0,
+                   300000.0);
     glMatrixMode(GL_MODELVIEW);
 }
 
@@ -212,42 +216,42 @@
 {
     switch (key) {
     case 't':
-    	Timing = !Timing;
-    break;
+        Timing = !Timing;
+        break;
     case ' ':
-    	switch(StrMode)
-    	{
-		    case GL_EXTENSIONS:
-    			StrMode = GL_VENDOR;
-		    break;
-		    case GL_VENDOR:
-		    	StrMode = GL_RENDERER;
-		    break;
-		    case GL_RENDERER:
-		    	StrMode = GL_VERSION;
-		    break;
-		    case GL_VERSION:
-		    	StrMode = GL_EXTENSIONS;
-		    break;
-		}
-	break;
-    case 27:           /* Esc will quit */
+        switch (StrMode) {
+        case GL_EXTENSIONS:
+            StrMode = GL_VENDOR;
+            break;
+        case GL_VENDOR:
+            StrMode = GL_RENDERER;
+            break;
+        case GL_RENDERER:
+            StrMode = GL_VERSION;
+            break;
+        case GL_VERSION:
+            StrMode = GL_EXTENSIONS;
+            break;
+        }
+        break;
+    case 27:                   /* Esc will quit */
         exit(1);
-    break;
-    case 's':             		/* "s" start animation */
+        break;
+    case 's':                  /* "s" start animation */
         moving = GL_TRUE;
         //glutIdleFunc(Animate);
-    break;
-    case 'a':          			/* "a" stop animation */
+        break;
+    case 'a':                  /* "a" stop animation */
         moving = GL_FALSE;
         //glutIdleFunc(NULL);
-    break;
-    case '.':          			/* "." will advance frame */
+        break;
+    case '.':                  /* "." will advance frame */
         if (!moving) {
             Atlantis_Animate();
         }
     }
 }
+
 /*
 void Display(void)
 {
@@ -273,10 +277,10 @@
 Atlantis_Display(void)
 {
     int i;
-    static double th[4] = {0.0, 0.0, 0.0, 0.0};
-	static double t1 = 0.0, t2 = 0.0, t;
-	char num_str[128];
-    
+    static double th[4] = { 0.0, 0.0, 0.0, 0.0 };
+    static double t1 = 0.0, t2 = 0.0, t;
+    char num_str[128];
+
     t1 = t2;
 
     glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
@@ -303,56 +307,59 @@
     glScalef(0.45, 0.45, 0.3);
     DrawWhale(&babyWhale);
     glPopMatrix();
-    
-    if(Timing)
-    {
-		t2 = mtime();
-		t = t2 - t1;
-		if(t > 0.0001) t = 1.0 / t;
-		
-		glDisable(GL_LIGHTING);
-		//glDisable(GL_DEPTH_TEST);
-		
-		glColor3f(1.0, 0.0, 0.0);
-		
-		glMatrixMode (GL_PROJECTION);
-		glPushMatrix();
-		glLoadIdentity();
-		glOrtho(0, w_win, 0, h_win, -10.0, 10.0);
-		
-		glRasterPos2f(5.0, 5.0);
-		
-		switch(StrMode)
-		{
-			case GL_VENDOR:
-				sprintf(num_str, "%0.2f Hz, %dx%d, VENDOR: ", filter(t, th), w_win, h_win);
-				DrawStr(num_str);
-				DrawStr(glGetString(GL_VENDOR));
-			break;
-			case GL_RENDERER:
-				sprintf(num_str, "%0.2f Hz, %dx%d, RENDERER: ", filter(t, th), w_win, h_win);
-				DrawStr(num_str);
-				DrawStr(glGetString(GL_RENDERER));
-			break;
-			case GL_VERSION:
-				sprintf(num_str, "%0.2f Hz, %dx%d, VERSION: ", filter(t, th), w_win, h_win);
-				DrawStr(num_str);
-				DrawStr(glGetString(GL_VERSION));
-			break;
-			case GL_EXTENSIONS:
-				sprintf(num_str, "%0.2f Hz, %dx%d, EXTENSIONS: ", filter(t, th), w_win, h_win);
-				DrawStr(num_str);
-				DrawStr(glGetString(GL_EXTENSIONS));
-			break;
-		}
-		
-		glPopMatrix();
-		glMatrixMode(GL_MODELVIEW);
-		
-		glEnable(GL_LIGHTING);
-		//glEnable(GL_DEPTH_TEST);
-	}
-	
+
+    if (Timing) {
+        t2 = mtime();
+        t = t2 - t1;
+        if (t > 0.0001)
+            t = 1.0 / t;
+
+        glDisable(GL_LIGHTING);
+        //glDisable(GL_DEPTH_TEST);
+
+        glColor3f(1.0, 0.0, 0.0);
+
+        glMatrixMode(GL_PROJECTION);
+        glPushMatrix();
+        glLoadIdentity();
+        glOrtho(0, w_win, 0, h_win, -10.0, 10.0);
+
+        glRasterPos2f(5.0, 5.0);
+
+        switch (StrMode) {
+        case GL_VENDOR:
+            sprintf(num_str, "%0.2f Hz, %dx%d, VENDOR: ", filter(t, th),
+                    w_win, h_win);
+            DrawStr(num_str);
+            DrawStr(glGetString(GL_VENDOR));
+            break;
+        case GL_RENDERER:
+            sprintf(num_str, "%0.2f Hz, %dx%d, RENDERER: ", filter(t, th),
+                    w_win, h_win);
+            DrawStr(num_str);
+            DrawStr(glGetString(GL_RENDERER));
+            break;
+        case GL_VERSION:
+            sprintf(num_str, "%0.2f Hz, %dx%d, VERSION: ", filter(t, th),
+                    w_win, h_win);
+            DrawStr(num_str);
+            DrawStr(glGetString(GL_VERSION));
+            break;
+        case GL_EXTENSIONS:
+            sprintf(num_str, "%0.2f Hz, %dx%d, EXTENSIONS: ", filter(t, th),
+                    w_win, h_win);
+            DrawStr(num_str);
+            DrawStr(glGetString(GL_EXTENSIONS));
+            break;
+        }
+
+        glPopMatrix();
+        glMatrixMode(GL_MODELVIEW);
+
+        glEnable(GL_LIGHTING);
+        //glEnable(GL_DEPTH_TEST);
+    }
+
     count++;
 
     glutSwapBuffers();
@@ -456,4 +463,4 @@
     glutMainLoop();
     return 0;             // ANSI C requires main to return int.
 }
-*/
\ No newline at end of file
+*/
--- a/Xcode/TemplatesForProjectBuilder/SDL OpenGL Application/atlantis/atlantis.h	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForProjectBuilder/SDL OpenGL Application/atlantis/atlantis.h	Tue Jul 24 18:46:45 2007 +0000
@@ -43,7 +43,8 @@
 
 #define WHALESPEED 250.0
 
-typedef struct _fishRec {
+typedef struct _fishRec
+{
     float x, y, z, phi, theta, psi, v;
     float xt, yt, zt;
     float htail, vtail;
--- a/Xcode/TemplatesForProjectBuilder/SDL OpenGL Application/atlantis/swim.c	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForProjectBuilder/SDL OpenGL Application/atlantis/swim.c	Tue Jul 24 18:46:45 2007 +0000
@@ -35,7 +35,7 @@
  * OpenGL(TM) is a trademark of Silicon Graphics, Inc.
  */
 #include <math.h>
-#include <stdlib.h>  /* For rand(). */
+#include <stdlib.h>             /* For rand(). */
 #include <GLUT/glut.h>
 #include "atlantis.h"
 
@@ -57,8 +57,10 @@
     fish->theta = 0.0;
     fish->psi -= 0.5;
 
-    fish->x += WHALESPEED * fish->v * cos(fish->psi / RAD) * cos(fish->theta / RAD);
-    fish->y += WHALESPEED * fish->v * sin(fish->psi / RAD) * cos(fish->theta / RAD);
+    fish->x +=
+        WHALESPEED * fish->v * cos(fish->psi / RAD) * cos(fish->theta / RAD);
+    fish->y +=
+        WHALESPEED * fish->v * sin(fish->psi / RAD) * cos(fish->theta / RAD);
     fish->z += WHALESPEED * fish->v * sin(fish->theta / RAD);
 }
 
@@ -152,8 +154,10 @@
         }
     }
 
-    fish->x += SHARKSPEED * fish->v * cos(fish->psi / RAD) * cos(fish->theta / RAD);
-    fish->y += SHARKSPEED * fish->v * sin(fish->psi / RAD) * cos(fish->theta / RAD);
+    fish->x +=
+        SHARKSPEED * fish->v * cos(fish->psi / RAD) * cos(fish->theta / RAD);
+    fish->y +=
+        SHARKSPEED * fish->v * sin(fish->psi / RAD) * cos(fish->theta / RAD);
     fish->z += SHARKSPEED * fish->v * sin(fish->theta / RAD);
 }
 
--- a/Xcode/TemplatesForProjectBuilder/SDL OpenGL Application/main.c	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForProjectBuilder/SDL OpenGL Application/main.c	Tue Jul 24 18:46:45 2007 +0000
@@ -4,7 +4,7 @@
    Please see the SDL documentation for details on using the SDL API:
    /Developer/Documentation/SDL/docs.html
 */
-   
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
@@ -12,168 +12,176 @@
 
 #include "SDL.h"
 
-extern void Atlantis_Init ();
-extern void Atlantis_Reshape (int w, int h);
-extern void Atlantis_Animate ();
-extern void Atlantis_Display ();
+extern void Atlantis_Init();
+extern void Atlantis_Reshape(int w, int h);
+extern void Atlantis_Animate();
+extern void Atlantis_Display();
 
 static SDL_Surface *gScreen;
 
-static void initAttributes ()
+static void
+initAttributes()
 {
     // Setup attributes we want for the OpenGL context
-    
+
     int value;
-    
+
     // Don't set color bit sizes (SDL_GL_RED_SIZE, etc)
     //    Mac OS X will always use 8-8-8-8 ARGB for 32-bit screens and
     //    5-5-5 RGB for 16-bit screens
-    
+
     // Request a 16-bit depth buffer (without this, there is no depth buffer)
     value = 16;
-    SDL_GL_SetAttribute (SDL_GL_DEPTH_SIZE, value);
-    
-    
+    SDL_GL_SetAttribute(SDL_GL_DEPTH_SIZE, value);
+
+
     // Request double-buffered OpenGL
     //     The fact that windows are double-buffered on Mac OS X has no effect
     //     on OpenGL double buffering.
     value = 1;
-    SDL_GL_SetAttribute (SDL_GL_DOUBLEBUFFER, value);
+    SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, value);
 }
 
-static void printAttributes ()
+static void
+printAttributes()
 {
     // Print out attributes of the context we created
     int nAttr;
     int i;
-    
-    int  attr[] = { SDL_GL_RED_SIZE, SDL_GL_BLUE_SIZE, SDL_GL_GREEN_SIZE,
-                    SDL_GL_ALPHA_SIZE, SDL_GL_BUFFER_SIZE, SDL_GL_DEPTH_SIZE };
-                    
-    char *desc[] = { "Red size: %d bits\n", "Blue size: %d bits\n", "Green size: %d bits\n",
-                     "Alpha size: %d bits\n", "Color buffer size: %d bits\n", 
-                     "Depth bufer size: %d bits\n" };
+
+    int attr[] = { SDL_GL_RED_SIZE, SDL_GL_BLUE_SIZE, SDL_GL_GREEN_SIZE,
+        SDL_GL_ALPHA_SIZE, SDL_GL_BUFFER_SIZE, SDL_GL_DEPTH_SIZE
+    };
+
+    char *desc[] =
+        { "Red size: %d bits\n", "Blue size: %d bits\n",
+ "Green size: %d bits\n",
+        "Alpha size: %d bits\n", "Color buffer size: %d bits\n",
+        "Depth bufer size: %d bits\n"
+    };
 
     nAttr = sizeof(attr) / sizeof(int);
-    
+
     for (i = 0; i < nAttr; i++) {
-    
+
         int value;
-        SDL_GL_GetAttribute (attr[i], &value);
-        printf (desc[i], value);
-    } 
+        SDL_GL_GetAttribute(attr[i], &value);
+        printf(desc[i], value);
+    }
 }
 
-static void createSurface (int fullscreen)
+static void
+createSurface(int fullscreen)
 {
     Uint32 flags = 0;
-    
+
     flags = SDL_OPENGL;
     if (fullscreen)
         flags |= SDL_FULLSCREEN;
-    
+
     // Create window
-    gScreen = SDL_SetVideoMode (640, 480, 0, flags);
+    gScreen = SDL_SetVideoMode(640, 480, 0, flags);
     if (gScreen == NULL) {
-		
-        fprintf (stderr, "Couldn't set 640x480 OpenGL video mode: %s\n",
-                 SDL_GetError());
-		SDL_Quit();
-		exit(2);
-	}
+
+        fprintf(stderr, "Couldn't set 640x480 OpenGL video mode: %s\n",
+                SDL_GetError());
+        SDL_Quit();
+        exit(2);
+    }
 }
 
-static void initGL ()
+static void
+initGL()
 {
-    Atlantis_Init ();
-    Atlantis_Reshape (gScreen->w, gScreen->h);
+    Atlantis_Init();
+    Atlantis_Reshape(gScreen->w, gScreen->h);
 }
 
-static void drawGL ()
+static void
+drawGL()
 {
-    Atlantis_Animate ();
-    Atlantis_Display ();
+    Atlantis_Animate();
+    Atlantis_Display();
 }
 
-static void mainLoop ()
+static void
+mainLoop()
 {
     SDL_Event event;
     int done = 0;
     int fps = 24;
-	int delay = 1000/fps;
+    int delay = 1000 / fps;
     int thenTicks = -1;
     int nowTicks;
-    
-    while ( !done ) {
+
+    while (!done) {
 
-		/* Check for events */
-		while ( SDL_PollEvent (&event) ) {
-			switch (event.type) {
+        /* Check for events */
+        while (SDL_PollEvent(&event)) {
+            switch (event.type) {
 
-				case SDL_MOUSEMOTION:
-					break;
-				case SDL_MOUSEBUTTONDOWN:
-					break;
-				case SDL_KEYDOWN:
-					/* Any keypress quits the app... */
-				case SDL_QUIT:
-					done = 1;
-					break;
-				default:
-					break;
-			}
-		}
-    
+            case SDL_MOUSEMOTION:
+                break;
+            case SDL_MOUSEBUTTONDOWN:
+                break;
+            case SDL_KEYDOWN:
+                /* Any keypress quits the app... */
+            case SDL_QUIT:
+                done = 1;
+                break;
+            default:
+                break;
+            }
+        }
+
         // Draw at 24 hz
         //     This approach is not normally recommended - it is better to
         //     use time-based animation and run as fast as possible
-        drawGL ();
-        SDL_GL_SwapBuffers ();
+        drawGL();
+        SDL_GL_SwapBuffers();
 
         // Time how long each draw-swap-delay cycle takes
         // and adjust delay to get closer to target framerate
         if (thenTicks > 0) {
-            nowTicks = SDL_GetTicks ();
-            delay += (1000/fps - (nowTicks-thenTicks));
+            nowTicks = SDL_GetTicks();
+            delay += (1000 / fps - (nowTicks - thenTicks));
             thenTicks = nowTicks;
             if (delay < 0)
-                delay = 1000/fps;
-        }
-        else {
-            thenTicks = SDL_GetTicks ();
+                delay = 1000 / fps;
+        } else {
+            thenTicks = SDL_GetTicks();
         }
 
-        SDL_Delay (delay);
-	}
+        SDL_Delay(delay);
+    }
 }
 
-int main(int argc, char *argv[])
+int
+main(int argc, char *argv[])
 {
-	// Init SDL video subsystem
-	if ( SDL_Init (SDL_INIT_VIDEO) < 0 ) {
-		
-        fprintf(stderr, "Couldn't initialize SDL: %s\n",
-			SDL_GetError());
-		exit(1);
-	}
+    // Init SDL video subsystem
+    if (SDL_Init(SDL_INIT_VIDEO) < 0) {
 
+        fprintf(stderr, "Couldn't initialize SDL: %s\n", SDL_GetError());
+        exit(1);
+    }
     // Set GL context attributes
-    initAttributes ();
-    
+    initAttributes();
+
     // Create GL context
-    createSurface (0);
-    
+    createSurface(0);
+
     // Get GL context attributes
-    printAttributes ();
-    
+    printAttributes();
+
     // Init GL state
-    initGL ();
-    
+    initGL();
+
     // Draw, get events...
-    mainLoop ();
-    
+    mainLoop();
+
     // Cleanup
-	SDL_Quit();
-	
+    SDL_Quit();
+
     return 0;
 }
--- a/Xcode/TemplatesForXcode/SDL Application/SDLMain.h	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForXcode/SDL Application/SDLMain.h	Tue Jul 24 18:46:45 2007 +0000
@@ -7,5 +7,4 @@
 
 #import <Cocoa/Cocoa.h>
 
-@interface SDLMain : NSObject
-@end
+@ interface SDLMain:NSObject @ end
--- a/Xcode/TemplatesForXcode/SDL Application/main.c	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForXcode/SDL Application/main.c	Tue Jul 24 18:46:45 2007 +0000
@@ -4,7 +4,7 @@
    Please see the SDL documentation for details on using the SDL API:
    /Developer/Documentation/SDL/docs.html
 */
-   
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
@@ -12,54 +12,54 @@
 
 #include "SDL.h"
 
-int main(int argc, char *argv[])
+int
+main(int argc, char *argv[])
 {
-	Uint32 initflags = SDL_INIT_VIDEO;  /* See documentation for details */
-	SDL_Surface *screen;
-	Uint8  video_bpp = 0;
-	Uint32 videoflags = SDL_SWSURFACE;
-	int    done;
-        SDL_Event event;
+    Uint32 initflags = SDL_INIT_VIDEO;  /* See documentation for details */
+    SDL_Surface *screen;
+    Uint8 video_bpp = 0;
+    Uint32 videoflags = SDL_SWSURFACE;
+    int done;
+    SDL_Event event;
 
-	/* Initialize the SDL library */
-	if ( SDL_Init(initflags) < 0 ) {
-		fprintf(stderr, "Couldn't initialize SDL: %s\n",
-			SDL_GetError());
-		exit(1);
-	}
+    /* Initialize the SDL library */
+    if (SDL_Init(initflags) < 0) {
+        fprintf(stderr, "Couldn't initialize SDL: %s\n", SDL_GetError());
+        exit(1);
+    }
 
-	/* Set 640x480 video mode */
-	screen=SDL_SetVideoMode(640,480, video_bpp, videoflags);
-        if (screen == NULL) {
-		fprintf(stderr, "Couldn't set 640x480x%d video mode: %s\n",
-                        video_bpp, SDL_GetError());
-		SDL_Quit();
-		exit(2);
-	}
+    /* Set 640x480 video mode */
+    screen = SDL_SetVideoMode(640, 480, video_bpp, videoflags);
+    if (screen == NULL) {
+        fprintf(stderr, "Couldn't set 640x480x%d video mode: %s\n",
+                video_bpp, SDL_GetError());
+        SDL_Quit();
+        exit(2);
+    }
 
-	done = 0;
-	while ( !done ) {
+    done = 0;
+    while (!done) {
 
-		/* Check for events */
-		while ( SDL_PollEvent(&event) ) {
-			switch (event.type) {
+        /* Check for events */
+        while (SDL_PollEvent(&event)) {
+            switch (event.type) {
 
-				case SDL_MOUSEMOTION:
-					break;
-				case SDL_MOUSEBUTTONDOWN:
-					break;
-				case SDL_KEYDOWN:
-					/* Any keypress quits the app... */
-				case SDL_QUIT:
-					done = 1;
-					break;
-				default:
-					break;
-			}
-		}
-	}
-	
-	/* Clean up the SDL library */
-	SDL_Quit();
-	return(0);
+            case SDL_MOUSEMOTION:
+                break;
+            case SDL_MOUSEBUTTONDOWN:
+                break;
+            case SDL_KEYDOWN:
+                /* Any keypress quits the app... */
+            case SDL_QUIT:
+                done = 1;
+                break;
+            default:
+                break;
+            }
+        }
+    }
+
+    /* Clean up the SDL library */
+    SDL_Quit();
+    return (0);
 }
--- a/Xcode/TemplatesForXcode/SDL Cocoa Application/SDLMain.h	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForXcode/SDL Cocoa Application/SDLMain.h	Tue Jul 24 18:46:45 2007 +0000
@@ -7,11 +7,10 @@
 
 #import <Cocoa/Cocoa.h>
 
-@interface SDLMain : NSObject
-- (IBAction)prefsMenu:(id)sender;
-- (IBAction)newGame:(id)sender;
-- (IBAction)openGame:(id)sender;
-- (IBAction)saveGame:(id)sender;
-- (IBAction)saveGameAs:(id)sender;
-- (IBAction)help:(id)sender;
+@ interface SDLMain: NSObject - (IBAction) prefsMenu:(id) sender;
+-(IBAction) newGame:(id) sender;
+-(IBAction) openGame:(id) sender;
+-(IBAction) saveGame:(id) sender;
+-(IBAction) saveGameAs:(id) sender;
+-(IBAction) help:(id) sender;
 @end
--- a/Xcode/TemplatesForXcode/SDL Cocoa Application/main.c	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForXcode/SDL Cocoa Application/main.c	Tue Jul 24 18:46:45 2007 +0000
@@ -4,7 +4,7 @@
    Please see the SDL documentation for details on using the SDL API:
    /Developer/Documentation/SDL/docs.html
 */
-   
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
@@ -12,54 +12,54 @@
 
 #include "SDL.h"
 
-int main(int argc, char *argv[])
+int
+main(int argc, char *argv[])
 {
-	Uint32 initflags = SDL_INIT_VIDEO;  /* See documentation for details */
-	SDL_Surface *screen;
-	Uint8  video_bpp = 0;
-	Uint32 videoflags = SDL_SWSURFACE;
-	int    done;
-        SDL_Event event;
+    Uint32 initflags = SDL_INIT_VIDEO;  /* See documentation for details */
+    SDL_Surface *screen;
+    Uint8 video_bpp = 0;
+    Uint32 videoflags = SDL_SWSURFACE;
+    int done;
+    SDL_Event event;
 
-	/* Initialize the SDL library */
-	if ( SDL_Init(initflags) < 0 ) {
-		fprintf(stderr, "Couldn't initialize SDL: %s\n",
-			SDL_GetError());
-		exit(1);
-	}
+    /* Initialize the SDL library */
+    if (SDL_Init(initflags) < 0) {
+        fprintf(stderr, "Couldn't initialize SDL: %s\n", SDL_GetError());
+        exit(1);
+    }
 
-	/* Set 640x480 video mode */
-	screen=SDL_SetVideoMode(640,480, video_bpp, videoflags);
-        if (screen == NULL) {
-		fprintf(stderr, "Couldn't set 640x480x%d video mode: %s\n",
-                        video_bpp, SDL_GetError());
-		SDL_Quit();
-		exit(2);
-	}
+    /* Set 640x480 video mode */
+    screen = SDL_SetVideoMode(640, 480, video_bpp, videoflags);
+    if (screen == NULL) {
+        fprintf(stderr, "Couldn't set 640x480x%d video mode: %s\n",
+                video_bpp, SDL_GetError());
+        SDL_Quit();
+        exit(2);
+    }
 
-	done = 0;
-	while ( !done ) {
+    done = 0;
+    while (!done) {
 
-		/* Check for events */
-		while ( SDL_PollEvent(&event) ) {
-			switch (event.type) {
+        /* Check for events */
+        while (SDL_PollEvent(&event)) {
+            switch (event.type) {
 
-				case SDL_MOUSEMOTION:
-					break;
-				case SDL_MOUSEBUTTONDOWN:
-					break;
-				case SDL_KEYDOWN:
-					/* Any keypress quits the app... */
-				case SDL_QUIT:
-					done = 1;
-					break;
-				default:
-					break;
-			}
-		}
-	}
-	
-	/* Clean up the SDL library */
-	SDL_Quit();
-	return(0);
+            case SDL_MOUSEMOTION:
+                break;
+            case SDL_MOUSEBUTTONDOWN:
+                break;
+            case SDL_KEYDOWN:
+                /* Any keypress quits the app... */
+            case SDL_QUIT:
+                done = 1;
+                break;
+            default:
+                break;
+            }
+        }
+    }
+
+    /* Clean up the SDL library */
+    SDL_Quit();
+    return (0);
 }
--- a/Xcode/TemplatesForXcode/SDL Custom Cocoa Application/MyController.h	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForXcode/SDL Custom Cocoa Application/MyController.h	Tue Jul 24 18:46:45 2007 +0000
@@ -9,38 +9,34 @@
 #import <Cocoa/Cocoa.h>
 #import "SDL.h"
 
-extern id gController; // instance of this class from nib
+extern id gController;          // instance of this class from nib
 
 // Declare SDL_QuartzWindowDelegate (defined in SDL.framework)
-@interface SDL_QuartzWindowDelegate : NSObject
-@end
-
-@interface MyController : NSObject
-{
+@interface SDL_QuartzWindowDelegate: NSObject @ end @ interface MyController:NSObject {
     // Interface Builder Outlets
-    IBOutlet id 	_framesPerSecond;
-    IBOutlet id 	_numSprites;
-    IBOutlet id 	_window;
-    IBOutlet id 	_view;
-    
+    IBOutlet id _framesPerSecond;
+    IBOutlet id _numSprites;
+    IBOutlet id _window;
+    IBOutlet id _view;
+
     // Private instance variables
-    int          _nSprites;
-    int          _max_speed;
-    int          _doFlip;
-    Uint8*       _mem;
-    
-    SDL_Surface* _screen;
-    SDL_Surface* _sprite;
-    SDL_Rect*    _sprite_rects;
-    SDL_Rect*    _positions;
-    SDL_Rect*    _velocities;
-    int          _sprites_visible;
-    Uint16       _sprite_w, _sprite_h;
-    
-    int 		 _mouse_x, _mouse_y;
+    int _nSprites;
+    int _max_speed;
+    int _doFlip;
+    Uint8 *_mem;
+
+    SDL_Surface *_screen;
+    SDL_Surface *_sprite;
+    SDL_Rect *_sprite_rects;
+    SDL_Rect *_positions;
+    SDL_Rect *_velocities;
+    int _sprites_visible;
+    Uint16 _sprite_w, _sprite_h;
+
+    int _mouse_x, _mouse_y;
 }
+
 // Interface Builder Actions
-- (IBAction)changeNumberOfSprites:(id)sender;
-- (IBAction)selectUpdateMode:(id)sender;
+-(IBAction) changeNumberOfSprites:(id) sender;
+-(IBAction) selectUpdateMode:(id) sender;
 @end
-
--- a/Xcode/TemplatesForXcode/SDL Custom Cocoa Application/MyCustomView.h	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForXcode/SDL Custom Cocoa Application/MyCustomView.h	Tue Jul 24 18:46:45 2007 +0000
@@ -9,8 +9,7 @@
 #import <AppKit/AppKit.h>
 
 
-@interface MyCustomView : NSQuickDrawView
-{
+@ interface MyCustomView:NSQuickDrawView {
 }
 
 @end
--- a/Xcode/TemplatesForXcode/SDL Custom Cocoa Application/MyCustomWindow.h	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForXcode/SDL Custom Cocoa Application/MyCustomWindow.h	Tue Jul 24 18:46:45 2007 +0000
@@ -11,17 +11,11 @@
 // Be a subclass of SDL_QuartzWindow so SDL will
 // handle the redraw problems when minimizing the window
 // This class is defined in SDL.framework
-@interface SDL_QuartzWindow : NSWindow
-@end
-
+@ interface SDL_QuartzWindow:NSWindow @ end
 // Also assign SDL_QuartzWindowDelegate to the window
 // to perform other tasks. You can subclass this delegate
 // if you want to add your own delegation methods
 // This class is defined in SDL.framework
-@interface SDL_QuartzWindowDelegate : NSObject
-@end
-
+@ interface SDL_QuartzWindowDelegate:NSObject @ end
 // Declare our custom class
-@interface MyCustomWindow : SDL_QuartzWindow
-@end
-
+@ interface MyCustomWindow:SDL_QuartzWindow @ end
--- a/Xcode/TemplatesForXcode/SDL Custom Cocoa Application/SDLMain.h	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForXcode/SDL Custom Cocoa Application/SDLMain.h	Tue Jul 24 18:46:45 2007 +0000
@@ -7,8 +7,8 @@
 
 #import <Cocoa/Cocoa.h>
 
-@interface SDLMain : NSObject
-{
+@ interface SDLMain:NSObject {
     IBOutlet id _controller;
 }
+
 @end
--- a/Xcode/TemplatesForXcode/SDL OpenGL Application/SDLMain.h	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForXcode/SDL OpenGL Application/SDLMain.h	Tue Jul 24 18:46:45 2007 +0000
@@ -7,5 +7,4 @@
 
 #import <Cocoa/Cocoa.h>
 
-@interface SDLMain : NSObject
-@end
+@ interface SDLMain:NSObject @ end
--- a/Xcode/TemplatesForXcode/SDL OpenGL Application/atlantis/atlantis.c	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForXcode/SDL OpenGL Application/atlantis/atlantis.c	Tue Jul 24 18:46:45 2007 +0000
@@ -54,46 +54,49 @@
 
 int w_win = 640;
 int h_win = 480;
-GLint count  = 0;
+GLint count = 0;
 GLenum StrMode = GL_VENDOR;
 
 GLboolean moving;
 
-static double mtime(void)
+static double
+mtime(void)
 {
-   struct timeval tk_time;
-   struct timezone tz;
-   
-   gettimeofday(&tk_time, &tz);
-   
-   return 4294.967296 * tk_time.tv_sec + 0.000001 * tk_time.tv_usec;
+    struct timeval tk_time;
+    struct timezone tz;
+
+    gettimeofday(&tk_time, &tz);
+
+    return 4294.967296 * tk_time.tv_sec + 0.000001 * tk_time.tv_usec;
 }
 
-static double filter(double in, double *save)
+static double
+filter(double in, double *save)
 {
-	static double k1 = 0.9;
-	static double k2 = 0.05;
+    static double k1 = 0.9;
+    static double k2 = 0.05;
 
-	save[3] = in;
-	save[1] = save[0]*k1 + k2*(save[3] + save[2]);
+    save[3] = in;
+    save[1] = save[0] * k1 + k2 * (save[3] + save[2]);
 
-	save[0]=save[1];
-	save[2]=save[3];
+    save[0] = save[1];
+    save[2] = save[3];
 
-	return(save[1]);
+    return (save[1]);
 }
 
-void DrawStr(const char *str)
+void
+DrawStr(const char *str)
 {
-	GLint i = 0;
-	
-	if(!str) return;
-        
-	while(str[i])
-	{
-		glutBitmapCharacter(GLUT_BITMAP_HELVETICA_12, str[i]);
-		i++;
-	}
+    GLint i = 0;
+
+    if (!str)
+        return;
+
+    while (str[i]) {
+        glutBitmapCharacter(GLUT_BITMAP_HELVETICA_12, str[i]);
+        i++;
+    }
 }
 
 void
@@ -134,18 +137,18 @@
 void
 Atlantis_Init(void)
 {
-    static float ambient[] = {0.2, 0.2, 0.2, 1.0};
-    static float diffuse[] = {1.0, 1.0, 1.0, 1.0};
-    static float position[] = {0.0, 1.0, 0.0, 0.0};
-    static float mat_shininess[] = {90.0};
-    static float mat_specular[] = {0.8, 0.8, 0.8, 1.0};
-    static float mat_diffuse[] = {0.46, 0.66, 0.795, 1.0};
-    static float mat_ambient[] = {0.3, 0.4, 0.5, 1.0};
-    static float lmodel_ambient[] = {0.4, 0.4, 0.4, 1.0};
-    static float lmodel_localviewer[] = {0.0};
+    static float ambient[] = { 0.2, 0.2, 0.2, 1.0 };
+    static float diffuse[] = { 1.0, 1.0, 1.0, 1.0 };
+    static float position[] = { 0.0, 1.0, 0.0, 0.0 };
+    static float mat_shininess[] = { 90.0 };
+    static float mat_specular[] = { 0.8, 0.8, 0.8, 1.0 };
+    static float mat_diffuse[] = { 0.46, 0.66, 0.795, 1.0 };
+    static float mat_ambient[] = { 0.3, 0.4, 0.5, 1.0 };
+    static float lmodel_ambient[] = { 0.4, 0.4, 0.4, 1.0 };
+    static float lmodel_localviewer[] = { 0.0 };
     //GLfloat map1[4] = {0.0, 0.0, 0.0, 0.0};
     //GLfloat map2[4] = {0.0, 0.0, 0.0, 0.0};
-    static float fog_color[] = {0.0, 0.5, 0.9, 1.0};
+    static float fog_color[] = { 0.0, 0.5, 0.9, 1.0 };
 
     glFrontFace(GL_CCW);
 
@@ -168,9 +171,9 @@
     InitFishs();
 
     glEnable(GL_FOG);
-	glFogi(GL_FOG_MODE, GL_EXP);
-	glFogf(GL_FOG_DENSITY, 0.0000025);
-	glFogfv(GL_FOG_COLOR, fog_color);
+    glFogi(GL_FOG_MODE, GL_EXP);
+    glFogf(GL_FOG_DENSITY, 0.0000025);
+    glFogfv(GL_FOG_COLOR, fog_color);
 
     glClearColor(0.0, 0.5, 0.9, 1.0);
 }
@@ -178,14 +181,15 @@
 void
 Atlantis_Reshape(int width, int height)
 {
-	w_win = width;
-	h_win = height;
-	
+    w_win = width;
+    h_win = height;
+
     glViewport(0, 0, width, height);
 
     glMatrixMode(GL_PROJECTION);
     glLoadIdentity();
-    gluPerspective(60.0, (GLfloat) width / (GLfloat) height, 20000.0, 300000.0);
+    gluPerspective(60.0, (GLfloat) width / (GLfloat) height, 20000.0,
+                   300000.0);
     glMatrixMode(GL_MODELVIEW);
 }
 
@@ -212,42 +216,42 @@
 {
     switch (key) {
     case 't':
-    	Timing = !Timing;
-    break;
+        Timing = !Timing;
+        break;
     case ' ':
-    	switch(StrMode)
-    	{
-		    case GL_EXTENSIONS:
-    			StrMode = GL_VENDOR;
-		    break;
-		    case GL_VENDOR:
-		    	StrMode = GL_RENDERER;
-		    break;
-		    case GL_RENDERER:
-		    	StrMode = GL_VERSION;
-		    break;
-		    case GL_VERSION:
-		    	StrMode = GL_EXTENSIONS;
-		    break;
-		}
-	break;
-    case 27:           /* Esc will quit */
+        switch (StrMode) {
+        case GL_EXTENSIONS:
+            StrMode = GL_VENDOR;
+            break;
+        case GL_VENDOR:
+            StrMode = GL_RENDERER;
+            break;
+        case GL_RENDERER:
+            StrMode = GL_VERSION;
+            break;
+        case GL_VERSION:
+            StrMode = GL_EXTENSIONS;
+            break;
+        }
+        break;
+    case 27:                   /* Esc will quit */
         exit(1);
-    break;
-    case 's':             		/* "s" start animation */
+        break;
+    case 's':                  /* "s" start animation */
         moving = GL_TRUE;
         //glutIdleFunc(Animate);
-    break;
-    case 'a':          			/* "a" stop animation */
+        break;
+    case 'a':                  /* "a" stop animation */
         moving = GL_FALSE;
         //glutIdleFunc(NULL);
-    break;
-    case '.':          			/* "." will advance frame */
+        break;
+    case '.':                  /* "." will advance frame */
         if (!moving) {
             Atlantis_Animate();
         }
     }
 }
+
 /*
 void Display(void)
 {
@@ -273,10 +277,10 @@
 Atlantis_Display(void)
 {
     int i;
-    static double th[4] = {0.0, 0.0, 0.0, 0.0};
-	static double t1 = 0.0, t2 = 0.0, t;
-	char num_str[128];
-    
+    static double th[4] = { 0.0, 0.0, 0.0, 0.0 };
+    static double t1 = 0.0, t2 = 0.0, t;
+    char num_str[128];
+
     t1 = t2;
 
     glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
@@ -303,56 +307,59 @@
     glScalef(0.45, 0.45, 0.3);
     DrawWhale(&babyWhale);
     glPopMatrix();
-    
-    if(Timing)
-    {
-		t2 = mtime();
-		t = t2 - t1;
-		if(t > 0.0001) t = 1.0 / t;
-		
-		glDisable(GL_LIGHTING);
-		//glDisable(GL_DEPTH_TEST);
-		
-		glColor3f(1.0, 0.0, 0.0);
-		
-		glMatrixMode (GL_PROJECTION);
-		glPushMatrix();
-		glLoadIdentity();
-		glOrtho(0, w_win, 0, h_win, -10.0, 10.0);
-		
-		glRasterPos2f(5.0, 5.0);
-		
-		switch(StrMode)
-		{
-			case GL_VENDOR:
-				sprintf(num_str, "%0.2f Hz, %dx%d, VENDOR: ", filter(t, th), w_win, h_win);
-				DrawStr(num_str);
-				DrawStr(glGetString(GL_VENDOR));
-			break;
-			case GL_RENDERER:
-				sprintf(num_str, "%0.2f Hz, %dx%d, RENDERER: ", filter(t, th), w_win, h_win);
-				DrawStr(num_str);
-				DrawStr(glGetString(GL_RENDERER));
-			break;
-			case GL_VERSION:
-				sprintf(num_str, "%0.2f Hz, %dx%d, VERSION: ", filter(t, th), w_win, h_win);
-				DrawStr(num_str);
-				DrawStr(glGetString(GL_VERSION));
-			break;
-			case GL_EXTENSIONS:
-				sprintf(num_str, "%0.2f Hz, %dx%d, EXTENSIONS: ", filter(t, th), w_win, h_win);
-				DrawStr(num_str);
-				DrawStr(glGetString(GL_EXTENSIONS));
-			break;
-		}
-		
-		glPopMatrix();
-		glMatrixMode(GL_MODELVIEW);
-		
-		glEnable(GL_LIGHTING);
-		//glEnable(GL_DEPTH_TEST);
-	}
-	
+
+    if (Timing) {
+        t2 = mtime();
+        t = t2 - t1;
+        if (t > 0.0001)
+            t = 1.0 / t;
+
+        glDisable(GL_LIGHTING);
+        //glDisable(GL_DEPTH_TEST);
+
+        glColor3f(1.0, 0.0, 0.0);
+
+        glMatrixMode(GL_PROJECTION);
+        glPushMatrix();
+        glLoadIdentity();
+        glOrtho(0, w_win, 0, h_win, -10.0, 10.0);
+
+        glRasterPos2f(5.0, 5.0);
+
+        switch (StrMode) {
+        case GL_VENDOR:
+            sprintf(num_str, "%0.2f Hz, %dx%d, VENDOR: ", filter(t, th),
+                    w_win, h_win);
+            DrawStr(num_str);
+            DrawStr(glGetString(GL_VENDOR));
+            break;
+        case GL_RENDERER:
+            sprintf(num_str, "%0.2f Hz, %dx%d, RENDERER: ", filter(t, th),
+                    w_win, h_win);
+            DrawStr(num_str);
+            DrawStr(glGetString(GL_RENDERER));
+            break;
+        case GL_VERSION:
+            sprintf(num_str, "%0.2f Hz, %dx%d, VERSION: ", filter(t, th),
+                    w_win, h_win);
+            DrawStr(num_str);
+            DrawStr(glGetString(GL_VERSION));
+            break;
+        case GL_EXTENSIONS:
+            sprintf(num_str, "%0.2f Hz, %dx%d, EXTENSIONS: ", filter(t, th),
+                    w_win, h_win);
+            DrawStr(num_str);
+            DrawStr(glGetString(GL_EXTENSIONS));
+            break;
+        }
+
+        glPopMatrix();
+        glMatrixMode(GL_MODELVIEW);
+
+        glEnable(GL_LIGHTING);
+        //glEnable(GL_DEPTH_TEST);
+    }
+
     count++;
 
     glutSwapBuffers();
@@ -456,4 +463,4 @@
     glutMainLoop();
     return 0;             // ANSI C requires main to return int.
 }
-*/
\ No newline at end of file
+*/
--- a/Xcode/TemplatesForXcode/SDL OpenGL Application/atlantis/atlantis.h	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForXcode/SDL OpenGL Application/atlantis/atlantis.h	Tue Jul 24 18:46:45 2007 +0000
@@ -43,7 +43,8 @@
 
 #define WHALESPEED 250.0
 
-typedef struct _fishRec {
+typedef struct _fishRec
+{
     float x, y, z, phi, theta, psi, v;
     float xt, yt, zt;
     float htail, vtail;
--- a/Xcode/TemplatesForXcode/SDL OpenGL Application/atlantis/swim.c	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForXcode/SDL OpenGL Application/atlantis/swim.c	Tue Jul 24 18:46:45 2007 +0000
@@ -35,7 +35,7 @@
  * OpenGL(TM) is a trademark of Silicon Graphics, Inc.
  */
 #include <math.h>
-#include <stdlib.h>  /* For rand(). */
+#include <stdlib.h>             /* For rand(). */
 #include <GLUT/glut.h>
 #include "atlantis.h"
 
@@ -57,8 +57,10 @@
     fish->theta = 0.0;
     fish->psi -= 0.5;
 
-    fish->x += WHALESPEED * fish->v * cos(fish->psi / RAD) * cos(fish->theta / RAD);
-    fish->y += WHALESPEED * fish->v * sin(fish->psi / RAD) * cos(fish->theta / RAD);
+    fish->x +=
+        WHALESPEED * fish->v * cos(fish->psi / RAD) * cos(fish->theta / RAD);
+    fish->y +=
+        WHALESPEED * fish->v * sin(fish->psi / RAD) * cos(fish->theta / RAD);
     fish->z += WHALESPEED * fish->v * sin(fish->theta / RAD);
 }
 
@@ -152,8 +154,10 @@
         }
     }
 
-    fish->x += SHARKSPEED * fish->v * cos(fish->psi / RAD) * cos(fish->theta / RAD);
-    fish->y += SHARKSPEED * fish->v * sin(fish->psi / RAD) * cos(fish->theta / RAD);
+    fish->x +=
+        SHARKSPEED * fish->v * cos(fish->psi / RAD) * cos(fish->theta / RAD);
+    fish->y +=
+        SHARKSPEED * fish->v * sin(fish->psi / RAD) * cos(fish->theta / RAD);
     fish->z += SHARKSPEED * fish->v * sin(fish->theta / RAD);
 }
 
--- a/Xcode/TemplatesForXcode/SDL OpenGL Application/main.c	Mon Jul 23 18:46:09 2007 +0000
+++ b/Xcode/TemplatesForXcode/SDL OpenGL Application/main.c	Tue Jul 24 18:46:45 2007 +0000
@@ -4,7 +4,7 @@
    Please see the SDL documentation for details on using the SDL API:
    /Developer/Documentation/SDL/docs.html
 */
-   
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
@@ -12,168 +12,176 @@
 
 #include "SDL.h"
 
-extern void Atlantis_Init ();
-extern void Atlantis_Reshape (int w, int h);
-extern void Atlantis_Animate ();
-extern void Atlantis_Display ();
+extern void Atlantis_Init();
+extern void Atlantis_Reshape(int w, int h);
+extern void Atlantis_Animate();
+extern void Atlantis_Display();
 
 static SDL_Surface *gScreen;
 
-static void initAttributes ()
+static void
+initAttributes()
 {
     // Setup attributes we want for the OpenGL context
-    
+
     int value;
-    
+
     // Don't set color bit sizes (SDL_GL_RED_SIZE, etc)
     //    Mac OS X will always use 8-8-8-8 ARGB for 32-bit screens and
     //    5-5-5 RGB for 16-bit screens
-    
+
     // Request a 16-bit depth buffer (without this, there is no depth buffer)
     value = 16;
-    SDL_GL_SetAttribute (SDL_GL_DEPTH_SIZE, value);
-    
-    
+    SDL_GL_SetAttribute(SDL_GL_DEPTH_SIZE, value);
+
+
     // Request double-buffered OpenGL
     //     The fact that windows are double-buffered on Mac OS X has no effect
     //     on OpenGL double buffering.
     value = 1;
-    SDL_GL_SetAttribute (SDL_GL_DOUBLEBUFFER, value);
+    SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, value);
 }
 
-static void printAttributes ()
+static void
+printAttributes()
 {
     // Print out attributes of the context we created
     int nAttr;
     int i;
-    
-    int  attr[] = { SDL_GL_RED_SIZE, SDL_GL_BLUE_SIZE, SDL_GL_GREEN_SIZE,
-                    SDL_GL_ALPHA_SIZE, SDL_GL_BUFFER_SIZE, SDL_GL_DEPTH_SIZE };
-                    
-    char *desc[] = { "Red size: %d bits\n", "Blue size: %d bits\n", "Green size: %d bits\n",
-                     "Alpha size: %d bits\n", "Color buffer size: %d bits\n", 
-                     "Depth bufer size: %d bits\n" };
+
+    int attr[] = { SDL_GL_RED_SIZE, SDL_GL_BLUE_SIZE, SDL_GL_GREEN_SIZE,
+        SDL_GL_ALPHA_SIZE, SDL_GL_BUFFER_SIZE, SDL_GL_DEPTH_SIZE
+    };
+
+    char *desc[] =
+        { "Red size: %d bits\n", "Blue size: %d bits\n",
+ "Green size: %d bits\n",
+        "Alpha size: %d bits\n", "Color buffer size: %d bits\n",
+        "Depth bufer size: %d bits\n"
+    };
 
     nAttr = sizeof(attr) / sizeof(int);
-    
+
     for (i = 0; i < nAttr; i++) {
-    
+
         int value;
-        SDL_GL_GetAttribute (attr[i], &value);
-        printf (desc[i], value);
-    } 
+        SDL_GL_GetAttribute(attr[i], &value);
+        printf(desc[i], value);
+    }
 }
 
-static void createSurface (int fullscreen)
+static void
+createSurface(int fullscreen)
 {
     Uint32 flags = 0;
-    
+
     flags = SDL_OPENGL;
     if (fullscreen)
         flags |= SDL_FULLSCREEN;
-    
+
     // Create window
-    gScreen = SDL_SetVideoMode (640, 480, 0, flags);
+    gScreen = SDL_SetVideoMode(640, 480, 0, flags);
     if (gScreen == NULL) {
-		
-        fprintf (stderr, "Couldn't set 640x480 OpenGL video mode: %s\n",
-                 SDL_GetError());
-		SDL_Quit();
-		exit(2);
-	}
+
+        fprintf(stderr, "Couldn't set 640x480 OpenGL video mode: %s\n",
+                SDL_GetError());
+        SDL_Quit();
+        exit(2);
+    }
 }
 
-static void initGL ()
+static void
+initGL()
 {
-    Atlantis_Init ();
-    Atlantis_Reshape (gScreen->w, gScreen->h);
+    Atlantis_Init();
+    Atlantis_Reshape(gScreen->w, gScreen->h);
 }
 
-static void drawGL ()
+static void
+drawGL()
 {
-    Atlantis_Animate ();
-    Atlantis_Display ();
+    Atlantis_Animate();
+    Atlantis_Display();
 }
 
-static void mainLoop ()
+static void
+mainLoop()
 {
     SDL_Event event;
     int done = 0;
     int fps = 24;
-	int delay = 1000/fps;
+    int delay = 1000 / fps;
     int thenTicks = -1;
     int nowTicks;
-    
-    while ( !done ) {
+
+    while (!done) {
 
-		/* Check for events */
-		while ( SDL_PollEvent (&event) ) {
-			switch (event.type) {
+        /* Check for events */
+        while (SDL_PollEvent(&event)) {
+            switch (event.type) {
 
-				case SDL_MOUSEMOTION:
-					break;
-				case SDL_MOUSEBUTTONDOWN:
-					break;
-				case SDL_KEYDOWN:
-					/* Any keypress quits the app... */
-				case SDL_QUIT:
-					done = 1;
-					break;
-				default:
-					break;
-			}
-		}
-    
+            case SDL_MOUSEMOTION:
+                break;
+            case SDL_MOUSEBUTTONDOWN:
+                break;
+            case SDL_KEYDOWN:
+                /* Any keypress quits the app... */
+            case SDL_QUIT:
+                done = 1;
+                break;
+            default:
+                break;
+            }
+        }
+
         // Draw at 24 hz
         //     This approach is not normally recommended - it is better to
         //     use time-based animation and run as fast as possible
-        drawGL ();
-        SDL_GL_SwapBuffers ();
+        drawGL();
+        SDL_GL_SwapBuffers();
 
         // Time how long each draw-swap-delay cycle takes
         // and adjust delay to get closer to target framerate
         if (thenTicks > 0) {
-            nowTicks = SDL_GetTicks ();
-            delay += (1000/fps - (nowTicks-thenTicks));
+            nowTicks = SDL_GetTicks();
+            delay += (1000 / fps - (nowTicks - thenTicks));
             thenTicks = nowTicks;
             if (delay < 0)
-                delay = 1000/fps;
-        }
-        else {
-            thenTicks = SDL_GetTicks ();
+                delay = 1000 / fps;
+        } else {
+            thenTicks = SDL_GetTicks();
         }
 
-        SDL_Delay (delay);
-	}
+        SDL_Delay(delay);
+    }
 }
 
-int main(int argc, char *argv[])
+int
+main(int argc, char *argv[])
 {
-	// Init SDL video subsystem
-	if ( SDL_Init (SDL_INIT_VIDEO) < 0 ) {
-		
-        fprintf(stderr, "Couldn't initialize SDL: %s\n",
-			SDL_GetError());
-		exit(1);
-	}
+    // Init SDL video subsystem
+    if (SDL_Init(SDL_INIT_VIDEO) < 0) {
 
+        fprintf(stderr, "Couldn't initialize SDL: %s\n", SDL_GetError());
+        exit(1);
+    }
     // Set GL context attributes
-    initAttributes ();
-    
+    initAttributes();
+
     // Create GL context
-    createSurface (0);
-    
+    createSurface(0);
+
     // Get GL context attributes
-    printAttributes ();
-    
+    printAttributes();
+
     // Init GL state
-    initGL ();
-    
+    initGL();
+
     // Draw, get events...
-    mainLoop ();
-    
+    mainLoop();
+
     // Cleanup
-	SDL_Quit();
-	
+    SDL_Quit();
+
     return 0;
 }
--- a/src/video/x11/SDL_x11gamma.c	Mon Jul 23 18:46:09 2007 +0000
+++ b/src/video/x11/SDL_x11gamma.c	Tue Jul 24 18:46:45 2007 +0000
@@ -23,6 +23,64 @@
 #include "../SDL_sysvideo.h"
 #include "SDL_x11video.h"
 
+static int numCmaps = 0;
+
+typedef struct
+{
+    Display *display;
+    int scrNum;
+    XStandardColormap cmap;
+    Visual visual;
+} cmapTableEntry;
+
+cmapTableEntry *cmapTable = NULL;
+
+void
+X11_TrackColormap(Display * display, int scrNum,
+                  XStandardColormap * cmap, Visual * visual)
+{
+    int i;
+    cmapTableEntry *newTable = NULL;
+
+    /* only tracking DirectColor colormaps because they're the only ones
+       with gamma ramps */
+    if (DirectColor != visual->class) {
+        return;
+    }
+
+    /* search the table to find out if we already have this one. We only
+       want one entry for each display, screen number, visualid
+       combination */
+    for (i = 0; i < numCmaps; i++) {
+        if (cmapTable[i].display == display &&
+            cmapTable[i].scrNum == scrNum &&
+            cmapTable[i].cmap.visualid == cmap->visualid) {
+            return;
+        }
+    }
+
+    /* increase the table by one entry. If the table is NULL create the
+       first entrty */
+    newTable = SDL_malloc((numCmaps + 1) * sizeof(cmapTableEntry));
+    if (NULL == newTable) {
+        SDL_SetError("Out of memory in X11_TrackColormap()");
+        return;
+    }
+
+    if (NULL != cmapTable) {
+        SDL_memcpy(newTable, cmapTable, numCmaps * sizeof(cmapTableEntry));
+        SDL_free(cmapTable);
+    }
+    cmapTable = newTable;
+
+    cmapTable[numCmaps].display = display;
+    cmapTable[numCmaps].scrNum = scrNum;
+    SDL_memcpy(&cmapTable[numCmaps].cmap, cmap, sizeof(XStandardColormap));
+    SDL_memcpy(&cmapTable[numCmaps].visual, visual, sizeof(Visual));
+
+    numCmaps++;
+}
+
 int
 X11_SetDisplayGammaRamp(_THIS, Uint16 * ramp)
 {
--- a/src/video/x11/SDL_x11gamma.h	Mon Jul 23 18:46:09 2007 +0000
+++ b/src/video/x11/SDL_x11gamma.h	Tue Jul 24 18:46:45 2007 +0000
@@ -24,6 +24,9 @@
 #ifndef _SDL_x11gamma_h
 #define _SDL_x11gamma_h
 
+extern void X11_TrackColormap(Display * display, int scrNum,
+                              XStandardColormap * cmap, Visual * visual);
+
 extern int X11_SetDisplayGammaRamp(_THIS, Uint16 * ramp);
 extern int X11_GetDisplayGammaRamp(_THIS, Uint16 * ramp);
 
--- a/src/video/x11/SDL_x11window.c	Mon Jul 23 18:46:09 2007 +0000
+++ b/src/video/x11/SDL_x11window.c	Tue Jul 24 18:46:45 2007 +0000
@@ -184,22 +184,27 @@
     if (visual->class == DirectColor || visual->class == PseudoColor) {
         int nmaps;
         XStandardColormap *stdmaps;
-        int i;
         Bool found = False;
 
+        /* check to see if the colormap we need already exists */
         if (0 != XGetRGBColormaps(data->display,
                                   RootWindow(data->display,
                                              displaydata->screen), &stdmaps,
                                   &nmaps, XA_RGB_BEST_MAP)) {
+            int i;
             for (i = 0; i < nmaps; i++) {
                 if (stdmaps[i].visualid == visual->visualid) {
                     xattr.colormap = stdmaps[i].colormap;
+                    X11_TrackColormap(data->display, displaydata->screen,
+                                      &stdmaps[i], visual);
                     found = True;
                     break;
                 }
             }
             XFree(stdmaps);
         }
+
+        /* it doesn't exist, so create it */
         if (!found) {
             int max = visual->map_entries - 1;
             XStandardColormap *cmap =
@@ -207,8 +212,10 @@
                                     visual->visualid, depth,
                                     XA_RGB_BEST_MAP, None,
                                     max, max, max);
-            if (cmap->visualid = visual->visualid) {
+            if (NULL != cmap && cmap->visualid == visual->visualid) {
                 xattr.colormap = cmap->colormap;
+                X11_TrackColormap(data->display, displaydata->screen, cmap,
+                                  visual);
             } else {
                 SDL_SetError
                     ("Couldn't create window:XA_RGB_BEST_MAP not found");