anchor.diff:    //todo: refactor. Separate folder permissions check and render initialization
     // Locale and texts could be loaded separetely to show proper translated error message
     if not ReinitRender(False) then
  -  begin
  -    SKIP_RENDER := True; // Skip render, since gGameApp will show panels on FullScreen mode
  -    fFormLoading.Hide; //Will close the form on Full Screen mode
  -    fFormMain.Hide;
  -    fFormMain.ShowFolderPermissionError; // Show localized error message
  -    Stop(nil); // Stop the app
       Exit(False);
  -  end;
   
     fFormMain.ControlsRefill; //Refill some of the debug controls from game settings
   
  
positive.code:   {$IFDEF USE_MAD_EXCEPT} KM_Exceptions, {$ENDIF}
    KromUtils, KM_FileIO,
    KM_GameApp, KM_VclHelpers,
    KM_System, KM_ResExporter,
    KM_Log, KM_CommonUtils, KM_Defaults, KM_Points, KM_DevPerfLog,
    KM_CommonExceptions,
    KromShellUtils, KM_MapTypes;
  
negative.code:   // Check is done after gGameApp creating because we want to load texts first to shw traslated error message
    //todo: refactor. Separate folder permissions check and render initialization
    // Locale and texts could be loaded separetely to show proper translated error message
    try
      if (gLog = nil)
        or (not aReturnToOptions and not DoHaveGenericPermission) then
      begin
        ShowPermissionsError;
        Exit(False); // Stop the app
      end;
    except
      // but it seems like Exit alone doesn't work - try-except block does
      ShowPermissionsError;
      Exit(False); // Stop the app
    end;
  
    gGameApp.OnGameSpeedActualChange := GameSpeedChange;
    gGameApp.AfterConstruction(aReturnToOptions);
  