diff --git a/src/game/Doom2DF.dpr b/src/game/Doom2DF.dpr
index 8b2ec19d63b1b45171056b45cf53aa07d2fd5556..ac174d86c59a4e1139f7d18bd9a984b6e9376c87 100644 (file)
--- a/src/game/Doom2DF.dpr
+++ b/src/game/Doom2DF.dpr
+{$MODE DELPHI}
program Doom2DF;
-{$IFDEF WIN32}
- {$APPTYPE GUI}
+{$IFNDEF HEADLESS}
+ {$IFDEF WINDOWS}
+ {$APPTYPE GUI}
+ {$ENDIF}
{$ENDIF}
{$HINTS OFF}
e_sound in '../engine/e_sound.pas',
e_textures in '../engine/e_textures.pas',
e_fixedbuffer in '../engine/e_fixedbuffer.pas',
- WADEDITOR in '../shared/WADEDITOR.pas',
- WADSTRUCT in '../shared/WADSTRUCT.pas',
+ utils in '../shared/utils.pas',
+ xstreams in '../shared/xstreams.pas',
+ sfs in '../sfs/sfs.pas',
+ sfsPlainFS in '../sfs/sfsPlainFS.pas',
+ sfsZipFS in '../sfs/sfsZipFS.pas',
+ wadreader in '../shared/wadreader.pas',
MAPSTRUCT in '../shared/MAPSTRUCT.pas',
MAPREADER in '../shared/MAPREADER.pas',
MAPDEF in '../shared/MAPDEF.pas',
g_triggers in 'g_triggers.pas',
g_weapons in 'g_weapons.pas',
g_window in 'g_window.pas',
- sysutils,
+ SysUtils,
{$IFDEF USE_FMOD}
fmod in '../lib/FMOD/fmod.pas',
fmoderrors in '../lib/FMOD/fmoderrors.pas',
g_panel in 'g_panel.pas',
g_language in 'g_language.pas';
-{$IFDEF WIN32}
+{$IFDEF WINDOWS}
{$R *.res}
{$R CustomRes.res}
{$ENDIF}
+var
+ f: Integer;
+ noct: Boolean = false;
begin
- try
- Main();
- e_WriteLog('Shutdown with no errors.', MSG_NOTIFY);
- except
- on E: Exception do
- e_WriteLog(Format(_lc[I_SYSTEM_ERROR_MSG], [E.Message]), MSG_FATALERROR);
- else
- e_WriteLog(Format(_lc[I_SYSTEM_ERROR_UNKNOWN], [LongWord(ExceptAddr())]), MSG_FATALERROR);
- end;
+ for f := 1 to ParamCount do if ParamStr(f) = '--gdb' then noct := true;
+ if noct then
+ Main()
+ else
+ try
+ Main();
+ e_WriteLog('Shutdown with no errors.', MSG_NOTIFY);
+ except
+ on E: Exception do
+ e_WriteLog(Format(_lc[I_SYSTEM_ERROR_MSG], [E.Message]), MSG_FATALERROR);
+ else
+ e_WriteLog(Format(_lc[I_SYSTEM_ERROR_UNKNOWN], [LongWord(ExceptAddr())]), MSG_FATALERROR);
+ end;
end.