//Compiler initializes globals in AOT bin modules to zero.
//Globals Set to Zero Here.

CJob     sys_macro_head;
CTask   *sys_macro_task;
CDoc    *sys_clip_doc;

CTask   *sys_task;
I64              sys_num_spawned_tasks;

CTask   *sys_winmgr_task,
                *sys_task_being_screen_updated;
U8              *rev_bits_table; //Table with U8 bits reversed
CDate    local_time_offset;
F64             *pow10_I64,
                 sys_os_version = 0.05;

CAutoCompleteDictGlobals acd;
CAutoCompleteGlobals     ac;
CBlkDevGlobals                   blkdev;
CCountsGlobals                   counts = {1, 0, 2676302000, 2676302, 2676302000, FALSE};
CDebugGlobals                    debug;
CDevGlobals                      dev;
CGridGlobals                     mouse_grid; //See ::/Demo/Graphics/Grid.CC.
CMouseStateGlobals               mouse, mouse_last;
CKbdStateGlobals                 kbd;
CKeyDevGlobals                   keydev;
CMouseHardStateGlobals   mouse_hard, mouse_hard_last;
CScreenCastGlobals               screencast;
CTextGlobals                     text;

U8              *(*fp_getstr2)(I64 flags=0);
U0               (*fp_update_ctrls)(CTask *task);
CDoc    *(*fp_doc_put)(CTask *task=NULL);
U0               (*fp_set_std_palette)();