Largely because I think it is unnecessary to compile a FitzQuake SDL for Windows, but I also think you still want to have that build available.
System Differences - Itemized
1. SDL FitzQuake doesn't handle application the focus the same (window activation/deactivation). Maybe Quakespasm is more similar. FitzQuake SDL has IN_Activate and IN_Deactivate in several different places. GLQuake would check at the end of each frame and I believe it checks a Windows message to detect when it receives or loses focus, all of that stuff is in gl_vidnt.c
2. vid.h - Window state has been moved here and made part of viddef_t
3. console.c --- see #1
4. quakedef.h -- just includes
Code: Select all
#include "platform.h"
#include "SDL/include/SDL.h"
#include "SDL/include/SDL_opengl.h"
6. glquake.h --- Gah!
7. hosts.c -- Input initialization and key event differencesInclude differences, of course:
FitzQuake Win32
FitzQuake Win32Code: Select all
#pragma warning(disable : 4244) // MIPS #pragma warning(disable : 4136) // X86 #pragma warning(disable : 4051) // ALPHA #ifdef _WIN32 #include <windows.h> #endif #include <GL/gl.h> #include <GL/glu.h>
FitzQuake SDL comments this outCode: Select all
#ifdef _WIN32 extern PROC glArrayElementEXT; extern PROC glColorPointerEXT; extern PROC glTexturePointerEXT; extern PROC glVertexPointerEXT; #endif
Adds this ...Code: Select all
//#define APIENTRY /* */ //johnfitz -- modified multitexture support /* typedef void (APIENTRY *SELECTTEXFUNC) (GLenum); typedef void (APIENTRY *MTEXCOORDFUNC) (GLenum, GLfloat, GLfloat); extern MTEXCOORDFUNC GL_MTexCoord2fFunc; extern SELECTTEXFUNC GL_SelectTextureFunc; #define GL_TEXTURE0_ARB 0x84C0 #define GL_TEXTURE1_ARB 0x84C1 */ //johnfitz
Code: Select all
extern PFNGLMULTITEXCOORD2FARBPROC GL_MTexCoord2fFunc; extern PFNGLACTIVETEXTUREARBPROC GL_SelectTextureFunc;
8. snd_dma.c and snd_mix.c -- many changes._Host_Frame (FitzQuake SDL)
And the location of IN_INIT is moved.Code: Select all
// get new key events //Sys_SendKeyEvents (); not needed for SDL
9. keys.c --- SDL version removes the Windows clipboard code and adds in some keymaps
10. host_cmd.c --- change from Windows proprietary directory searching to using dirent.h
11. menu.c - the inclusion of "winquake.h" obviously is no more in the SDL version.