X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Fgame%2Fg_main.pas;h=222002baa53a1a312be411a51bcc1a3f6253431a;hb=724d5405f0f3fe166b931b1b8b5745b2eb340651;hp=3b84f30eb820982eae315c8147e4eccdfdc9458a;hpb=f9af3a48743f80e9095082f9d8156d60b62f6b29;p=d2df-sdl.git diff --git a/src/game/g_main.pas b/src/game/g_main.pas index 3b84f30..222002b 100644 --- a/src/game/g_main.pas +++ b/src/game/g_main.pas @@ -40,11 +40,11 @@ uses {$IFDEF ENABLE_HOLMES} g_holmes, fui_wadread, fui_style, fui_gfx_gl, {$ENDIF} - SDL2, wadreader, e_log, g_window, + wadreader, e_log, g_window, e_graphics, e_input, g_game, g_console, g_gui, e_sound, g_options, g_sound, g_player, g_basic, g_weapons, SysUtils, g_triggers, MAPDEF, g_map, - g_menu, g_language, g_net, g_touch, g_res_downloader, + g_menu, g_language, g_net, g_touch, g_system, g_res_downloader, utils, conbuf, envvars, xparser; @@ -84,30 +84,12 @@ begin {$ENDIF} e_WriteToStdOut := False; //{$IFDEF HEADLESS}True;{$ELSE}False;{$ENDIF} -{$IFDEF HEADLESS} - {$IFDEF USE_SDLMIXER} - sdlflags := SDL_INIT_TIMER or SDL_INIT_AUDIO or $00004000; - // HACK: shit this into env and hope for the best - SetEnvVar('SDL_AUDIODRIVER', 'dummy'); - {$ELSE} - sdlflags := SDL_INIT_TIMER or $00004000; - {$ENDIF} -{$ELSE} - {$IFDEF USE_SDLMIXER} - {*sdlflags := SDL_INIT_EVERYTHING;*} - sdlflags := SDL_INIT_JOYSTICK or SDL_INIT_TIMER or SDL_INIT_VIDEO; - {$ELSE} - sdlflags := SDL_INIT_JOYSTICK or SDL_INIT_TIMER or SDL_INIT_VIDEO; - {$ENDIF} -{$ENDIF} - - SDL_SetHint(SDL_HINT_ACCELEROMETER_AS_JOYSTICK, '0'); - - if SDL_Init(sdlflags) < 0 then - raise Exception.Create('SDL: Init failed: ' + SDL_GetError()); + e_WriteLog('Init Input', TMsgType.Notify); + e_InitInput; e_WriteLog('Read config file', TMsgType.Notify); g_Options_Read(GameDir + '/' + CONFIG_FILENAME); + g_Console_SysInit; //GetSystemDefaultLCID() @@ -116,6 +98,8 @@ begin e_WriteLog(gLanguage, TMsgType.Notify); g_Language_Set(gLanguage); + sys_Init; + {$IF not DEFINED(HEADLESS) and DEFINED(ENABLE_HOLMES)} flexloaded := true; if not fuiAddWad('flexui.wad') then @@ -169,8 +153,7 @@ begin SDLMain(); {$WARNINGS ON} - e_WriteLog('Releasing SDL', TMsgType.Notify); - SDL_Quit(); + sys_Final; end; procedure Init(); @@ -189,8 +172,6 @@ begin NoSound := False; {$ENDIF} - e_WriteLog('Init Input', TMsgType.Notify); - e_InitInput(); g_Touch_Init; (*