text: #ifndef MAIN_H
  #define MAIN_H
  
  extern int game_over;
  extern int gDemoLevel;
  
  extern XZPAIR gStartPos;
  
  extern int xa_timeout;
  extern int FrameCnt;
  extern int CurrentPlayerView;
  extern char CameraChanged;
  extern int FrAng;
  extern int gStopPadReads;
  extern int num_active_cars;
  extern int numInactiveCars;
  
  extern int gLightsOn;
  extern int NightAmbient;
  extern int wetness;
  
  extern int scr_z;
  
  extern int DawnCount;
  
  extern int ObjectDrawnValue;
  extern int ObjectDrawnCounter;
  
  extern int Havana3DLevelDraw;
  
  extern void SsSetSerialVol(short s_num, short voll, short volr);		// TEMPORARY
  
  extern void State_GameInit(void* param); // 0x00059330
  extern void State_GameLoop(void* param); // 0x0005A8DC
  
  extern int FilterFrameTime();
  
  extern void DrawGame(); // 0x0005C458
  
  extern void EndGame(GAMEMODE mode); // 0x0005C574
  extern void EnablePause(PAUSEMODE mode); // 0x0005C590
  
  extern int redriver2_main(int argc, char** argv); // 0x0005B384
  
  extern void FadeScreen(int end_value); // 0x0005C668
  
  extern void UpdatePlayerInformation(); // 0x0005B54C
  
  extern void RenderGame2(int view); // 0x0005B888
  extern void RenderGame(); // 0x0005C6E0
  
  extern void InitGameVariables(); // 0x0005BCE4
  
  extern void DealWithHorn(char *hr, int i); // 0x0005BF74
  
  typedef void(*occlFunc)(int* comp_val);
  extern int Havana3DOcclusion(occlFunc func, int *param); // 0x0005C16C
  
  #endif
  