
void main()
main: scope:[main]  from
  [0] phi()
  [1] call setFAC
  to:main::@2
main::@2: scope:[main]  from main
  [2] phi()
  [3] call divFACby10
  to:main::@3
main::@3: scope:[main]  from main::@2
  [4] phi()
  [5] call setMEMtoFAC
  to:main::@1
main::@1: scope:[main]  from main::@15 main::@3
  [6] print_line_cursor#15 = phi( main::@15/print_line_cursor#0, main::@3/print_screen#0 )
  [6] print_char_cursor#34 = phi( main::@15/print_char_cursor#53, main::@3/print_screen#0 )
  [6] main::i#10 = phi( main::@15/main::i#1, main::@3/1 )
  [7] setFAC::w#1 = (unsigned int)main::i#10
  [8] call setFAC
  to:main::@4
main::@4: scope:[main]  from main::@1
  [9] phi()
  [10] call mulFACbyMEM
  to:main::@5
main::@5: scope:[main]  from main::@4
  [11] phi()
  [12] call setMEMtoFAC
  to:main::@6
main::@6: scope:[main]  from main::@5
  [13] phi()
  [14] call setFAC
  to:main::@7
main::@7: scope:[main]  from main::@6
  [15] phi()
  [16] call divMEMbyFAC
  to:main::@8
main::@8: scope:[main]  from main::@7
  [17] phi()
  [18] call sinFAC
  to:main::@9
main::@9: scope:[main]  from main::@8
  [19] phi()
  [20] call mulFACbyMEM
  to:main::@10
main::@10: scope:[main]  from main::@9
  [21] phi()
  [22] call addMEMtoFAC
  to:main::@11
main::@11: scope:[main]  from main::@10
  [23] phi()
  [24] call getFAC
  [25] getFAC::return#2 = getFAC::return#0
  to:main::@12
main::@12: scope:[main]  from main::@11
  [26] print_uint::w#0 = getFAC::return#2
  [27] call print_uint
  to:main::@13
main::@13: scope:[main]  from main::@12
  [28] phi()
  [29] call print_ln
  to:main::@14
main::@14: scope:[main]  from main::@13
  [30] main::i#1 = ++ main::i#10
  [31] if(main::i#1!=$1a) goto main::@15
  to:main::@return
main::@return: scope:[main]  from main::@14
  [32] return 
  to:@return
main::@15: scope:[main]  from main::@14
  [33] print_char_cursor#53 = print_line_cursor#0
  to:main::@1

void setFAC(unsigned int w)
setFAC: scope:[setFAC]  from main main::@1 main::@6
  [34] setFAC::prepareMEM1_mem#0 = phi( main/$4fb, main::@1/setFAC::w#1, main::@6/$19 )
  to:setFAC::prepareMEM1
setFAC::prepareMEM1: scope:[setFAC]  from setFAC
  [35] setFAC::prepareMEM1_$0 = byte0  setFAC::prepareMEM1_mem#0
  [36] *memLo = setFAC::prepareMEM1_$0
  [37] setFAC::prepareMEM1_$1 = byte1  setFAC::prepareMEM1_mem#0
  [38] *memHi = setFAC::prepareMEM1_$1
  to:setFAC::@1
setFAC::@1: scope:[setFAC]  from setFAC::prepareMEM1
  asm { ldymemLo ldamemHi jsr$b391  }
  to:setFAC::@return
setFAC::@return: scope:[setFAC]  from setFAC::@1
  [40] return 
  to:@return

void divFACby10()
divFACby10: scope:[divFACby10]  from main::@2
  asm { jsr$bafe  }
  to:divFACby10::@return
divFACby10::@return: scope:[divFACby10]  from divFACby10
  [42] return 
  to:@return

void setMEMtoFAC(char *mem)
setMEMtoFAC: scope:[setMEMtoFAC]  from main::@3 main::@5
  [43] setMEMtoFAC::mem#2 = phi( main::@3/main::f_127, main::@5/main::f_i )
  to:setMEMtoFAC::prepareMEM1
setMEMtoFAC::prepareMEM1: scope:[setMEMtoFAC]  from setMEMtoFAC
  [44] setMEMtoFAC::prepareMEM1_$0 = byte0  (unsigned int)setMEMtoFAC::mem#2
  [45] *memLo = setMEMtoFAC::prepareMEM1_$0
  [46] setMEMtoFAC::prepareMEM1_$1 = byte1  (unsigned int)setMEMtoFAC::mem#2
  [47] *memHi = setMEMtoFAC::prepareMEM1_$1
  to:setMEMtoFAC::@1
setMEMtoFAC::@1: scope:[setMEMtoFAC]  from setMEMtoFAC::prepareMEM1
  asm { ldxmemLo ldymemHi jsr$bbd4  }
  to:setMEMtoFAC::@return
setMEMtoFAC::@return: scope:[setMEMtoFAC]  from setMEMtoFAC::@1
  [49] return 
  to:@return

void mulFACbyMEM(char *mem)
mulFACbyMEM: scope:[mulFACbyMEM]  from main::@4 main::@9
  [50] mulFACbyMEM::mem#2 = phi( main::@9/main::f_127, main::@4/main::f_2pi )
  to:mulFACbyMEM::prepareMEM1
mulFACbyMEM::prepareMEM1: scope:[mulFACbyMEM]  from mulFACbyMEM
  [51] mulFACbyMEM::prepareMEM1_$0 = byte0  (unsigned int)mulFACbyMEM::mem#2
  [52] *memLo = mulFACbyMEM::prepareMEM1_$0
  [53] mulFACbyMEM::prepareMEM1_$1 = byte1  (unsigned int)mulFACbyMEM::mem#2
  [54] *memHi = mulFACbyMEM::prepareMEM1_$1
  to:mulFACbyMEM::@1
mulFACbyMEM::@1: scope:[mulFACbyMEM]  from mulFACbyMEM::prepareMEM1
  asm { ldamemLo ldymemHi jsr$ba28  }
  to:mulFACbyMEM::@return
mulFACbyMEM::@return: scope:[mulFACbyMEM]  from mulFACbyMEM::@1
  [56] return 
  to:@return

void divMEMbyFAC(char *mem)
divMEMbyFAC: scope:[divMEMbyFAC]  from main::@7
  [57] phi()
  to:divMEMbyFAC::prepareMEM1
divMEMbyFAC::prepareMEM1: scope:[divMEMbyFAC]  from divMEMbyFAC
  [58] *memLo = byte0 divMEMbyFAC::prepareMEM1_mem#0
  [59] *memHi = byte1 divMEMbyFAC::prepareMEM1_mem#0
  to:divMEMbyFAC::@1
divMEMbyFAC::@1: scope:[divMEMbyFAC]  from divMEMbyFAC::prepareMEM1
  asm { ldamemLo ldymemHi jsr$bb0f  }
  to:divMEMbyFAC::@return
divMEMbyFAC::@return: scope:[divMEMbyFAC]  from divMEMbyFAC::@1
  [61] return 
  to:@return

void sinFAC()
sinFAC: scope:[sinFAC]  from main::@8
  asm { jsr$e26b  }
  to:sinFAC::@return
sinFAC::@return: scope:[sinFAC]  from sinFAC
  [63] return 
  to:@return

void addMEMtoFAC(char *mem)
addMEMtoFAC: scope:[addMEMtoFAC]  from main::@10
  [64] phi()
  to:addMEMtoFAC::prepareMEM1
addMEMtoFAC::prepareMEM1: scope:[addMEMtoFAC]  from addMEMtoFAC
  [65] *memLo = byte0 addMEMtoFAC::prepareMEM1_mem#0
  [66] *memHi = byte1 addMEMtoFAC::prepareMEM1_mem#0
  to:addMEMtoFAC::@1
addMEMtoFAC::@1: scope:[addMEMtoFAC]  from addMEMtoFAC::prepareMEM1
  asm { ldamemLo ldymemHi jsr$b867  }
  to:addMEMtoFAC::@return
addMEMtoFAC::@return: scope:[addMEMtoFAC]  from addMEMtoFAC::@1
  [68] return 
  to:@return

unsigned int getFAC()
getFAC: scope:[getFAC]  from main::@11
  asm { jsr$b1aa stymemLo stamemHi  }
  [70] getFAC::return#0 = *memHi w= *memLo
  to:getFAC::@return
getFAC::@return: scope:[getFAC]  from getFAC
  [71] return 
  to:@return

void print_uint(unsigned int w)
print_uint: scope:[print_uint]  from main::@12
  [72] print_uchar::b#0 = byte1  print_uint::w#0
  [73] call print_uchar
  to:print_uint::@1
print_uint::@1: scope:[print_uint]  from print_uint
  [74] print_uchar::b#1 = byte0  print_uint::w#0
  [75] call print_uchar
  to:print_uint::@return
print_uint::@return: scope:[print_uint]  from print_uint::@1
  [76] return 
  to:@return

void print_ln()
print_ln: scope:[print_ln]  from main::@13
  [77] phi()
  to:print_ln::@1
print_ln::@1: scope:[print_ln]  from print_ln print_ln::@1
  [78] print_line_cursor#7 = phi( print_ln/print_line_cursor#15, print_ln::@1/print_line_cursor#0 )
  [79] print_line_cursor#0 = print_line_cursor#7 + $28
  [80] if(print_line_cursor#0<print_char_cursor#25) goto print_ln::@1
  to:print_ln::@return
print_ln::@return: scope:[print_ln]  from print_ln::@1
  [81] return 
  to:@return

void print_uchar(char b)
print_uchar: scope:[print_uchar]  from print_uint print_uint::@1
  [82] print_char_cursor#33 = phi( print_uint/print_char_cursor#34, print_uint::@1/print_char_cursor#25 )
  [82] print_uchar::b#2 = phi( print_uint/print_uchar::b#0, print_uint::@1/print_uchar::b#1 )
  [83] print_uchar::$0 = print_uchar::b#2 >> 4
  [84] print_char::ch#0 = print_hextab[print_uchar::$0]
  [85] call print_char
  to:print_uchar::@1
print_uchar::@1: scope:[print_uchar]  from print_uchar
  [86] print_uchar::$2 = print_uchar::b#2 & $f
  [87] print_char::ch#1 = print_hextab[print_uchar::$2]
  [88] call print_char
  to:print_uchar::@return
print_uchar::@return: scope:[print_uchar]  from print_uchar::@1
  [89] return 
  to:@return

void print_char(char ch)
print_char: scope:[print_char]  from print_uchar print_uchar::@1
  [90] print_char_cursor#24 = phi( print_uchar/print_char_cursor#33, print_uchar::@1/print_char_cursor#25 )
  [90] print_char::ch#2 = phi( print_uchar/print_char::ch#0, print_uchar::@1/print_char::ch#1 )
  [91] *print_char_cursor#24 = print_char::ch#2
  [92] print_char_cursor#25 = ++ print_char_cursor#24
  to:print_char::@return
print_char::@return: scope:[print_char]  from print_char
  [93] return 
  to:@return
