X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Fgame%2FDoom2DF.lpr;h=53020f419c5a1886f69eb0167ca032fb43cde9e2;hb=ccbaf6953ba60385f0fd86ec5921c81ecd6fe08b;hp=91fd3a6276cf4a7778f5322d5616a1107ea3124a;hpb=3a2594735abd86e583b35da46526b9d16a9cd0ed;p=d2df-sdl.git diff --git a/src/game/Doom2DF.lpr b/src/game/Doom2DF.lpr index 91fd3a6..53020f4 100644 --- a/src/game/Doom2DF.lpr +++ b/src/game/Doom2DF.lpr @@ -42,20 +42,34 @@ uses conbuf in '../shared/conbuf.pas', geom in '../shared/geom.pas', math, -{$IFDEF USE_NANOGL} - nanoGL in '../lib/nanogl/nanoGL.pas', -{$ELSE} - GL, - GLExt, -{$ENDIF} + +{$INCLUDE ../nogl/noGLuses.inc} + {$IFDEF USE_MINIUPNPC} miniupnpc in '../lib/miniupnpc/miniupnpc.pas', {$ENDIF} +{$IF DEFINED(USE_SDL2STUB) OR DEFINED(USE_SDL2ALLEGRO)} + SDL2 in '../wrappers/sdl2/sdl2.pas', + {$IFDEF USE_SDLMIXER} + SDL2_mixer in '../wrappers/sdl2/SDL2_mixer.pas', + {$ENDIF} +{$ELSE} SDL2 in '../lib/sdl2/sdl2.pas', -{$IFDEF USE_SDLMIXER} - SDL2_mixer in '../lib/sdl2/SDL2_mixer.pas', + {$IFDEF USE_SDLMIXER} + SDL2_mixer in '../lib/sdl2/SDL2_mixer.pas', + {$ENDIF} {$ENDIF} +{$IFDEF USE_ENETWRAP} + ENet in '../wrappers/enet/enet.pas', +{$ELSE} ENet in '../lib/enet/enet.pp', + {$IFDEF GO32V2} + Watt32 in '../lib/watt32/watt32.pp', + {$ENDIF} +{$ENDIF} +{$IFDEF USE_SDL2ALLEGRO} + Allegro in '../lib/allegro4/allegro.pas', +{$ENDIF} e_graphics in '../engine/e_graphics.pas', e_input in '../engine/e_input.pas', e_log in '../engine/e_log.pas', @@ -144,6 +158,9 @@ function SDL_main(argc: CInt; argv: PPChar): CInt; cdecl; var f: Integer; noct: Boolean = false; +{$IFDEF ANDROID} + storage: String; +{$ENDIF} //tfo: Text; begin SetExceptionMask([exInvalidOp, exDenormalized, exZeroDivide, exOverflow, exUnderflow, exPrecision]); //k8: fuck off, that's why @@ -151,17 +168,25 @@ begin {$IFDEF ANDROID} {$I-} e_SetSafeSlowLog(true); - Chdir(SDL_AndroidGetExternalStoragePath()); + if SDL_AndroidGetExternalStorageState() <> 0 then + begin + storage := SDL_AndroidGetExternalStoragePath(); + Chdir(storage); + e_WriteLog('Use external storage: ' + storage, TMsgType.Notify) + end + else + begin + storage := SDL_AndroidGetInternalStoragePath(); + Chdir(storage); + e_WriteLog('Use internal storage: ' + storage, TMsgType.Notify) + end; if IOresult <> 0 then begin - Chdir(SDL_AndroidGetInternalStoragePath()); - if IOresult <> 0 then - begin - e_WriteLog('Fuck! Cant chdir to any game directory :(', TMsgType.Fatal); - result := 1; - exit; - end; + SDL_ShowSimpleMessageBox(SDL_MESSAGEBOX_ERROR, PChar('Invalid path'), PChar('Can''t chdir to ' + storage), nil); + result := 1; + exit end; + SetEnvVar('TIMIDITY_CFG', 'timidity.cfg'); {$ENDIF ANDROID} for f := 1 to ParamCount do @@ -170,6 +195,7 @@ begin else if ParamStr(f) = '--log' then conbufDumpToStdOut := true else if ParamStr(f) = '--safe-log' then e_SetSafeSlowLog(true); end; + if noct then begin Main()