DEADSOFTWARE

render: move screen resize handler from io-driver
[d2df-sdl.git] / src / game / stub / g_system.pas
index 84ae12138b5de86079efd98c67a04f8056169049..9d14f24fcaa45a3740b1f74a551b418bcd236c62 100644 (file)
@@ -24,8 +24,8 @@ interface
   procedure sys_Delay (ms: Integer);
 
   (* --- Graphics --- *)
-  function sys_GetDispalyModes (bpp: Integer): SSArray;
-  function sys_SetDisplayMode (w, h, bpp: Integer; fullscreen: Boolean): Boolean;
+  function sys_GetDisplayModes (bpp: Integer): SSArray;
+  function sys_SetDisplayMode (w, h, bpp: Integer; fullscreen, maximized: Boolean): Boolean;
   procedure sys_EnableVSync (yes: Boolean);
   procedure sys_Repaint;
 
@@ -37,17 +37,24 @@ interface
   procedure sys_Init;
   procedure sys_Final;
 
+  var (* hooks *)
+    sys_CharPress: procedure (ch: AnsiChar) = nil;
+    sys_ScreenResize: procedure (w, h: Integer) = nil;
+
 implementation
 
+  uses SysUtils;
+
   (* --------- Utils --------- *)
 
   function sys_GetTicks (): Int64;
   begin
-    Result := 0
+    Result := Round(TimeStampToMSecs(DateTimeToTimeStamp(Now())))
   end;
 
   procedure sys_Delay (ms: Integer);
   begin
+    Sleep(ms)
   end;
 
   (* --------- Graphics --------- *)
@@ -60,14 +67,14 @@ implementation
   begin
   end;
 
-  function sys_GetDispalyModes (bpp: Integer): SSArray;
+  function sys_GetDisplayModes (bpp: Integer): SSArray;
   begin
-    SetLength(result, 0);
+    result := nil
   end;
 
-  function sys_SetDisplayMode (w, h, bpp: Integer; fullscreen: Boolean): Boolean;
+  function sys_SetDisplayMode (w, h, bpp: Integer; fullscreen, maximized: Boolean): Boolean;
   begin
-    result := True
+    result := true
   end;
 
   (* --------- Input --------- *)