#ifndef _MAINLOOP_H_
#define _MAINLOOP_H_
#include "brender/br_types.h"
#include "dr_types.h"
extern int gNasty_kludgey_cockpit_variable;
extern tInfo_mode gInfo_mode;
extern tU32 gLast_tick_count;
extern tU32 gActual_last_tick_count;
extern tU32 gAverage_frame_period;
extern tU32 gOld_camera_time;
extern tU32 gLast_wasted_massage_start;
extern float gMr_odo;
extern tU32 gWasted_last_flash;
extern tTime_bonus_state gTime_bonus_state;
extern int gQueued_wasted_massages_count;
extern int gTime_bonus;
extern int gRace_bonus_headup;
extern int gWasted_flash_state;
extern int gLast_time_headup;
extern int gTime_bonus_headup;
extern int gQueued_wasted_massages[5];
extern tU32 gTime_bonus_start;
extern int gLast_credit_headup__mainloop; // suffix added to avoid duplicate symbol
void ToggleInfo(void);
void CalculateFrameRate(void);
void LoseOldestWastedMassage(void);
void QueueWastedMassage(int pIndex);
void MungeHeadups(void);
void UpdateFramePeriod(tU32* pCamera_period);
tU32 GetLastTickCount(void);
void CheckTimer(void);
int MungeRaceFinished(void);
tRace_result MainGameLoop(void);
tRace_result DoRace(void);
#endif