DEADSOFTWARE

move video, sound and language options to dfconfig.cfg
[d2df-sdl.git] / src / game / sdl / g_system.pas
index 4a4a3cb34c92799203e3db627d004a33d2d7769a..01467205ceaf1285f382cbf7ef4be336f6f68289 100644 (file)
@@ -24,7 +24,7 @@ interface
   procedure sys_Delay (ms: Integer);
 
   (* --- Graphics --- *)
-  function sys_GetDispalyModes (bpp: Integer): SSArray;
+  function sys_GetDisplayModes (bpp: Integer): SSArray;
   function sys_SetDisplayMode (w, h, bpp: Integer; fullscreen: Boolean): Boolean;
   procedure sys_EnableVSync (yes: Boolean);
   procedure sys_Repaint;
@@ -43,10 +43,10 @@ implementation
     SysUtils, SDL, Math,
     {$INCLUDE ../nogl/noGLuses.inc}
     e_log, e_graphics, e_input, e_sound,
-    g_options, g_window, g_console, g_game, g_menu, g_gui, g_main;
+    g_options, g_window, g_console, g_game, g_menu, g_gui, g_main, g_basic;
 
   const
-    GameTitle = 'Doom 2D: Forever (SDL 1.2)';
+    GameTitle = 'Doom 2D: Forever (SDL 1.2, %s)';
 
   var
     userResize: Boolean;
@@ -74,8 +74,6 @@ implementation
   begin
     gWinSizeX := w;
     gWinSizeY := h;
-    gWinRealPosX := 0;
-    gWinRealPosY := 0;
     gScreenWidth := w;
     gScreenHeight := h;
     {$IFDEF ENABLE_HOLMES}
@@ -89,6 +87,15 @@ implementation
     g_Game_ClearLoading;
   end;
 
+  function GetTitle (): PChar;
+    var info: AnsiString;
+  begin
+    info := g_GetBuildHash(false);
+    if info = 'custom build' then
+      info := info + ' by ' + g_GetBuilderName() + ' ' + GAME_BUILDDATE + ' ' + GAME_BUILDTIME;
+    result := PChar(Format(GameTitle, [info]))
+  end;
+
   function InitWindow (w, h, bpp: Integer; fullScreen: Boolean): Boolean;
     var flags: Uint32;
   begin
@@ -109,10 +116,10 @@ implementation
       screen := SDL_SetVideoMode(w, h, bpp, flags);
       if screen <> nil then
       begin
-        {$IFDEF USE_NOGL}
+        {$IFDEF NOGL_INIT}
           nogl_Init;
         {$ENDIF}
-        SDL_WM_SetCaption(GameTitle, nil);
+        SDL_WM_SetCaption(GetTitle(), nil);
         UpdateSize(w, h);
         result := True
       end
@@ -133,7 +140,7 @@ implementation
     (* ??? *)
   end;
 
-  function sys_GetDispalyModes (bpp: Integer): SSArray;
+  function sys_GetDisplayModes (bpp: Integer): SSArray;
     var m: PPSDL_Rect; f: TSDL_PixelFormat; i, count: Integer;
   begin
     SetLength(result, 0);
@@ -142,7 +149,7 @@ implementation
     f.BitsPerPixel := bpp;
     f.BytesPerPixel := (bpp + 7) div 8;
     m := SDL_ListModes(@f, SDL_OPENGL or SDL_FULLSCREEN);
-    if (m <> NIL) and (IntPtr(m) <> -1) then
+    if (m <> NIL) and (UIntPtr(m) <> UIntPtr(-1)) then
     begin
       count := 0;
       while m[count] <> nil do inc(count);
@@ -470,7 +477,7 @@ implementation
       RemoveJoystick(i);
     if screen <> nil then
     begin
-      {$IFDEF USE_NOGL}
+      {$IFDEF NOGL_INIT}
         nogl_Quit;
       {$ENDIF}
       SDL_FreeSurface(screen)