
void main()
main: scope:[main]  from
  [0] phi()
  [1] call init_screen
  to:main::@1
main::@1: scope:[main]  from main main::@5
  [2] main::at#4 = phi( main/(char *) 1024+4, main::@5/main::at#1 )
  [2] main::k#2 = phi( main/0, main::@5/main::k#1 )
  [3] print_schar_at::b#1 = vals[main::k#2]
  [4] print_schar_at::at#0 = main::at#4
  [5] call print_schar_at
  to:main::@5
main::@5: scope:[main]  from main::@1
  [6] main::at#1 = main::at#4 + 4
  [7] main::k#1 = ++ main::k#2
  [8] if(main::k#1!=9) goto main::@1
  to:main::@2
main::@2: scope:[main]  from main::@4 main::@5
  [9] main::i#2 = phi( main::@5/0, main::@4/main::i#1 )
  [9] main::at_line#2 = phi( main::@5/(char *) 1024, main::@4/main::at#2 )
  [10] main::at#2 = main::at_line#2 + $28
  [11] print_schar_at::b#2 = vals[main::i#2]
  [12] print_schar_at::at#1 = main::at#2
  [13] call print_schar_at
  to:main::@6
main::@6: scope:[main]  from main::@2
  [14] main::at#12 = main::at#2
  to:main::@3
main::@3: scope:[main]  from main::@6 main::@8
  [15] main::j#2 = phi( main::@8/main::j#1, main::@6/0 )
  [15] main::at#6 = phi( main::@8/main::at#3, main::@6/main::at#12 )
  [16] main::at#3 = main::at#6 + 4
  [17] fmul8::aa = vals[main::i#2]
  [18] fmul8::bb = vals[main::j#2]
  [19] call fmul8
  [20] fmul8::return#0 = fmul8::return#2
  to:main::@7
main::@7: scope:[main]  from main::@3
  [21] main::r#0 = fmul8::return#0
  [22] print_schar_at::b#3 = main::r#0
  [23] print_schar_at::at#2 = main::at#3
  [24] call print_schar_at
  to:main::@8
main::@8: scope:[main]  from main::@7
  [25] main::j#1 = ++ main::j#2
  [26] if(main::j#1!=9) goto main::@3
  to:main::@4
main::@4: scope:[main]  from main::@8
  [27] main::i#1 = ++ main::i#2
  [28] if(main::i#1!=9) goto main::@2
  to:main::@return
main::@return: scope:[main]  from main::@4
  [29] return 
  to:@return

void init_screen()
init_screen: scope:[init_screen]  from main
  [30] phi()
  [31] call print_cls
  to:init_screen::@1
init_screen::@1: scope:[init_screen]  from init_screen init_screen::@1
  [32] init_screen::l#2 = phi( init_screen::@1/init_screen::l#1, init_screen/0 )
  [33] ((char *) 55296)[init_screen::l#2] = init_screen::WHITE
  [34] init_screen::l#1 = ++ init_screen::l#2
  [35] if(init_screen::l#1!=$28) goto init_screen::@1
  to:init_screen::@2
init_screen::@2: scope:[init_screen]  from init_screen::@1 init_screen::@2
  [36] init_screen::m#2 = phi( init_screen::@1/0, init_screen::@2/init_screen::m#1 )
  [36] init_screen::COLS#3 = phi( init_screen::@1/(char *) 55296, init_screen::@2/init_screen::COLS#1 )
  [37] *init_screen::COLS#3 = init_screen::WHITE
  [38] init_screen::COLS#3[1] = init_screen::WHITE
  [39] init_screen::COLS#3[2] = init_screen::WHITE
  [40] init_screen::COLS#3[3] = init_screen::WHITE
  [41] init_screen::COLS#1 = init_screen::COLS#3 + $28
  [42] init_screen::m#1 = ++ init_screen::m#2
  [43] if(init_screen::m#1!=$19) goto init_screen::@2
  to:init_screen::@return
init_screen::@return: scope:[init_screen]  from init_screen::@2
  [44] return 
  to:@return

void print_schar_at(signed char b , char *at)
print_schar_at: scope:[print_schar_at]  from main::@1 main::@2 main::@7
  [45] print_schar_at::at#3 = phi( main::@1/print_schar_at::at#0, main::@2/print_schar_at::at#1, main::@7/print_schar_at::at#2 )
  [45] print_schar_at::b#4 = phi( main::@1/print_schar_at::b#1, main::@2/print_schar_at::b#2, main::@7/print_schar_at::b#3 )
  [46] if(print_schar_at::b#4<0) goto print_schar_at::@1
  to:print_schar_at::@3
print_schar_at::@3: scope:[print_schar_at]  from print_schar_at
  [47] print_char_at::at#1 = print_schar_at::at#3
  [48] call print_char_at
  to:print_schar_at::@2
print_schar_at::@2: scope:[print_schar_at]  from print_schar_at::@3 print_schar_at::@4
  [49] print_schar_at::b#6 = phi( print_schar_at::@4/print_schar_at::b#0, print_schar_at::@3/print_schar_at::b#4 )
  [50] print_uchar_at::at#0 = print_schar_at::at#3 + 1
  [51] print_uchar_at::b#0 = (char)print_schar_at::b#6
  [52] call print_uchar_at
  to:print_schar_at::@return
print_schar_at::@return: scope:[print_schar_at]  from print_schar_at::@2
  [53] return 
  to:@return
print_schar_at::@1: scope:[print_schar_at]  from print_schar_at
  [54] print_char_at::at#0 = print_schar_at::at#3
  [55] call print_char_at
  to:print_schar_at::@4
print_schar_at::@4: scope:[print_schar_at]  from print_schar_at::@1
  [56] print_schar_at::b#0 = - print_schar_at::b#4
  to:print_schar_at::@2

signed char fmul8(volatile signed char aa , volatile signed char bb)
fmul8: scope:[fmul8]  from main::@3
  [57] fmul8::cc = 0
  asm { ldaaa staA1+1 eor#$ff staA2+1 ldxbb sec A1: ldamulf_sqr1,x A2: sbcmulf_sqr2,x stacc  }
  [59] fmul8::return#1 = fmul8::cc
  to:fmul8::@return
fmul8::@return: scope:[fmul8]  from fmul8
  [60] fmul8::return#2 = fmul8::return#1
  [61] return 
  to:@return

void print_cls()
print_cls: scope:[print_cls]  from init_screen
  [62] phi()
  [63] call memset
  to:print_cls::@return
print_cls::@return: scope:[print_cls]  from print_cls
  [64] return 
  to:@return

void print_char_at(char ch , char *at)
print_char_at: scope:[print_char_at]  from print_schar_at::@1 print_schar_at::@3 print_uchar_at print_uchar_at::@1
  [65] print_char_at::at#4 = phi( print_schar_at::@1/print_char_at::at#0, print_schar_at::@3/print_char_at::at#1, print_uchar_at/print_char_at::at#2, print_uchar_at::@1/print_char_at::at#3 )
  [65] print_char_at::ch#4 = phi( print_schar_at::@1/'-', print_schar_at::@3/' ', print_uchar_at/print_char_at::ch#2, print_uchar_at::@1/print_char_at::ch#3 )
  [66] *print_char_at::at#4 = print_char_at::ch#4
  to:print_char_at::@return
print_char_at::@return: scope:[print_char_at]  from print_char_at
  [67] return 
  to:@return

void print_uchar_at(char b , char *at)
print_uchar_at: scope:[print_uchar_at]  from print_schar_at::@2
  [68] print_uchar_at::$0 = print_uchar_at::b#0 >> 4
  [69] print_char_at::ch#2 = print_hextab[print_uchar_at::$0]
  [70] print_char_at::at#2 = print_uchar_at::at#0
  [71] call print_char_at
  to:print_uchar_at::@1
print_uchar_at::@1: scope:[print_uchar_at]  from print_uchar_at
  [72] print_uchar_at::$2 = print_uchar_at::b#0 & $f
  [73] print_char_at::at#3 = print_uchar_at::at#0 + 1
  [74] print_char_at::ch#3 = print_hextab[print_uchar_at::$2]
  [75] call print_char_at
  to:print_uchar_at::@return
print_uchar_at::@return: scope:[print_uchar_at]  from print_uchar_at::@1
  [76] return 
  to:@return

void * memset(void *str , char c , unsigned int num)
memset: scope:[memset]  from print_cls
  [77] phi()
  to:memset::@1
memset::@1: scope:[memset]  from memset memset::@2
  [78] memset::dst#2 = phi( memset/(char *)memset::str#0, memset::@2/memset::dst#1 )
  [79] if(memset::dst#2!=memset::end#0) goto memset::@2
  to:memset::@return
memset::@return: scope:[memset]  from memset::@1
  [80] return 
  to:@return
memset::@2: scope:[memset]  from memset::@1
  [81] *memset::dst#2 = memset::c#0
  [82] memset::dst#1 = ++ memset::dst#2
  to:memset::@1
