
void main()
main: scope:[main]  from
  asm { sei  }
  [1] *PROCPORT_DDR = PROCPORT_DDR_MEMORY_MASK
  [2] *PROCPORT = PROCPORT_RAM_ALL
  [3] *BASIC_ROM = $a0
  [4] *KERNAL_ROM = $e0
  [5] *IO_RAM = $d0
  [6] *PROCPORT_DDR = PROCPORT_DDR_MEMORY_MASK
  [7] *PROCPORT = PROCPORT_BASIC_KERNEL_IO
  [8] *IO_RAM = $dd
  [9] call print_cls
  to:main::@2
main::@2: scope:[main]  from main
  [10] phi()
  [11] call print_str
  to:main::@3
main::@3: scope:[main]  from main::@2
  [12] phi()
  [13] call print_ln
  to:main::@4
main::@4: scope:[main]  from main::@3
  [14] phi()
  [15] call testProcport
  to:main::@5
main::@5: scope:[main]  from main::@4
  [16] phi()
  [17] call testProcport
  to:main::@6
main::@6: scope:[main]  from main::@5
  [18] phi()
  [19] call testProcport
  to:main::@7
main::@7: scope:[main]  from main::@6
  [20] phi()
  [21] call testProcport
  to:main::@8
main::@8: scope:[main]  from main::@7
  [22] phi()
  [23] call testProcport
  to:main::@9
main::@9: scope:[main]  from main::@8
  [24] phi()
  [25] call testProcport
  to:main::@10
main::@10: scope:[main]  from main::@9
  [26] phi()
  [27] call testProcport
  to:main::@11
main::@11: scope:[main]  from main::@10
  [28] phi()
  [29] call testProcport
  to:main::@12
main::@12: scope:[main]  from main::@11
  [30] phi()
  [31] call testProcport
  to:main::@13
main::@13: scope:[main]  from main::@12
  [32] phi()
  [33] call testProcport
  to:main::@14
main::@14: scope:[main]  from main::@13
  [34] phi()
  [35] call testProcport
  to:main::@15
main::@15: scope:[main]  from main::@14
  [36] phi()
  [37] call testProcport
  to:main::@16
main::@16: scope:[main]  from main::@15
  [38] phi()
  [39] call testProcport
  to:main::@17
main::@17: scope:[main]  from main::@16
  [40] phi()
  [41] call testProcport
  to:main::@18
main::@18: scope:[main]  from main::@17
  [42] phi()
  [43] call testProcport
  to:main::@19
main::@19: scope:[main]  from main::@18
  [44] phi()
  [45] call testProcport
  to:main::@20
main::@20: scope:[main]  from main::@19
  [46] phi()
  [47] call testProcport
  to:main::@21
main::@21: scope:[main]  from main::@20
  [48] phi()
  [49] call testProcport
  to:main::@22
main::@22: scope:[main]  from main::@21
  [50] phi()
  [51] call testProcport
  to:main::@23
main::@23: scope:[main]  from main::@22
  [52] phi()
  [53] call testProcport
  to:main::@24
main::@24: scope:[main]  from main::@23
  [54] phi()
  [55] call testProcport
  to:main::@25
main::@25: scope:[main]  from main::@24
  [56] phi()
  [57] call testProcport
  to:main::@26
main::@26: scope:[main]  from main::@25
  [58] phi()
  [59] call testProcport
  to:main::@27
main::@27: scope:[main]  from main::@26
  asm { cli  }
  [61] *PROCPORT_DDR = PROCPORT_DDR_MEMORY_MASK
  [62] *PROCPORT = PROCPORT_BASIC_KERNEL_IO
  to:main::@1
main::@1: scope:[main]  from main::@1 main::@27
  [63] *(SCREEN+$3e7) = ++ *(SCREEN+$3e7)
  to:main::@1

void print_cls()
print_cls: scope:[print_cls]  from main
  [64] phi()
  [65] call memset
  to:print_cls::@return
print_cls::@return: scope:[print_cls]  from print_cls
  [66] return 
  to:@return

void print_str(char *str)
print_str: scope:[print_str]  from main::@2 testProcport testProcport::@10 testProcport::@12 testProcport::@14 testProcport::@2 testProcport::@4 testProcport::@6 testProcport::@8
  [67] print_char_cursor#124 = phi( main::@2/print_screen#0, testProcport/print_char_cursor#126, testProcport::@10/print_char_cursor#67, testProcport::@12/print_char_cursor#67, testProcport::@14/print_char_cursor#67, testProcport::@2/print_char_cursor#67, testProcport::@4/print_char_cursor#67, testProcport::@6/print_char_cursor#67, testProcport::@8/print_char_cursor#67 )
  [67] print_str::str#13 = phi( main::@2/main::str, testProcport/testProcport::str, testProcport::@10/testProcport::str5, testProcport::@12/testProcport::str5, testProcport::@14/testProcport::str5, testProcport::@2/testProcport::str1, testProcport::@4/testProcport::str1, testProcport::@6/testProcport::str3, testProcport::@8/testProcport::str3 )
  to:print_str::@1
print_str::@1: scope:[print_str]  from print_str print_str::@3
  [68] print_char_cursor#1 = phi( print_str/print_char_cursor#124, print_str::@3/print_char_cursor#67 )
  [68] print_str::str#10 = phi( print_str/print_str::str#13, print_str::@3/print_str::str#0 )
  [69] if(0!=*print_str::str#10) goto print_str::@2
  to:print_str::@return
print_str::@return: scope:[print_str]  from print_str::@1
  [70] return 
  to:@return
print_str::@2: scope:[print_str]  from print_str::@1
  [71] print_char::ch#0 = *print_str::str#10
  [72] call print_char
  to:print_str::@3
print_str::@3: scope:[print_str]  from print_str::@2
  [73] print_str::str#0 = ++ print_str::str#10
  to:print_str::@1

void print_ln()
print_ln: scope:[print_ln]  from main::@3 testProcport::@16
  [74] print_char_cursor#118 = phi( main::@3/print_char_cursor#1, testProcport::@16/print_char_cursor#67 )
  [74] print_line_cursor#69 = phi( main::@3/print_screen#0, testProcport::@16/print_line_cursor#0 )
  to:print_ln::@1
print_ln::@1: scope:[print_ln]  from print_ln print_ln::@1
  [75] print_line_cursor#35 = phi( print_ln/print_line_cursor#69, print_ln::@1/print_line_cursor#0 )
  [76] print_line_cursor#0 = print_line_cursor#35 + $28
  [77] if(print_line_cursor#0<print_char_cursor#118) goto print_ln::@1
  to:print_ln::@return
print_ln::@return: scope:[print_ln]  from print_ln::@1
  [78] return 
  to:@return

void testProcport(char ddr , char port , char ddr2)
testProcport: scope:[testProcport]  from main::@10 main::@11 main::@12 main::@13 main::@14 main::@15 main::@16 main::@17 main::@18 main::@19 main::@20 main::@21 main::@22 main::@23 main::@24 main::@25 main::@26 main::@4 main::@5 main::@6 main::@7 main::@8 main::@9
  [79] testProcport::ddr2#23 = phi( main::@9/0, main::@10/0, main::@11/0, main::@12/$ff, main::@13/$ff, main::@14/$ff, main::@15/$ff, main::@16/$55, main::@17/$55, main::@18/$55, main::@19/$aa, main::@20/$aa, main::@21/$aa, main::@22/0, main::@23/$55, main::@24/$15, main::@25/$17, main::@26/$17, main::@4/PROCPORT_DDR_MEMORY_MASK, main::@5/PROCPORT_DDR_MEMORY_MASK, main::@6/PROCPORT_DDR_MEMORY_MASK, main::@7/PROCPORT_DDR_MEMORY_MASK, main::@8/PROCPORT_DDR_MEMORY_MASK )
  [79] testProcport::port#23 = phi( main::@9/0, main::@10/0, main::@11/$ff, main::@12/0, main::@13/$55, main::@14/$aa, main::@15/$ff, main::@16/0, main::@17/$55, main::@18/$ff, main::@19/0, main::@20/$ff, main::@21/$aa, main::@22/$d0, main::@23/$55, main::@24/$15, main::@25/$15, main::@26/$17, main::@4/PROCPORT_RAM_ALL, main::@5/PROCPORT_RAM_IO, main::@6/PROCPORT_RAM_CHARROM, main::@7/PROCPORT_KERNEL_IO, main::@8/PROCPORT_BASIC_KERNEL_IO )
  [79] testProcport::ddr#23 = phi( main::@9/0, main::@10/$ff, main::@11/$ff, main::@12/$ff, main::@13/$ff, main::@14/$ff, main::@15/$ff, main::@16/$55, main::@17/$55, main::@18/$55, main::@19/$aa, main::@20/$aa, main::@21/$aa, main::@22/$ff, main::@23/$ff, main::@24/$17, main::@25/$17, main::@26/$17, main::@4/PROCPORT_DDR_MEMORY_MASK, main::@5/PROCPORT_DDR_MEMORY_MASK, main::@6/PROCPORT_DDR_MEMORY_MASK, main::@7/PROCPORT_DDR_MEMORY_MASK, main::@8/PROCPORT_DDR_MEMORY_MASK )
  [80] *PROCPORT_DDR = $ff
  [81] *PROCPORT = 0
  [82] *PROCPORT_DDR = testProcport::ddr#23
  [83] *PROCPORT = testProcport::port#23
  [84] *PROCPORT_DDR = testProcport::ddr2#23
  [85] print_char_cursor#126 = print_line_cursor#0
  [86] call print_str
  to:testProcport::@1
testProcport::@1: scope:[testProcport]  from testProcport
  [87] print_uchar::b#0 = testProcport::ddr#23
  [88] call print_uchar
  to:testProcport::@2
testProcport::@2: scope:[testProcport]  from testProcport::@1
  [89] phi()
  [90] call print_str
  to:testProcport::@3
testProcport::@3: scope:[testProcport]  from testProcport::@2
  [91] print_uchar::b#1 = testProcport::port#23
  [92] call print_uchar
  to:testProcport::@4
testProcport::@4: scope:[testProcport]  from testProcport::@3
  [93] phi()
  [94] call print_str
  to:testProcport::@5
testProcport::@5: scope:[testProcport]  from testProcport::@4
  [95] print_uchar::b#2 = testProcport::ddr2#23
  [96] call print_uchar
  to:testProcport::@6
testProcport::@6: scope:[testProcport]  from testProcport::@5
  [97] phi()
  [98] call print_str
  to:testProcport::@7
testProcport::@7: scope:[testProcport]  from testProcport::@6
  [99] print_uchar::b#3 = *PROCPORT_DDR
  [100] call print_uchar
  to:testProcport::@8
testProcport::@8: scope:[testProcport]  from testProcport::@7
  [101] phi()
  [102] call print_str
  to:testProcport::@9
testProcport::@9: scope:[testProcport]  from testProcport::@8
  [103] print_uchar::b#4 = *PROCPORT
  [104] call print_uchar
  to:testProcport::@10
testProcport::@10: scope:[testProcport]  from testProcport::@9
  [105] phi()
  [106] call print_str
  to:testProcport::@11
testProcport::@11: scope:[testProcport]  from testProcport::@10
  [107] print_uchar::b#5 = *BASIC_ROM
  [108] call print_uchar
  to:testProcport::@12
testProcport::@12: scope:[testProcport]  from testProcport::@11
  [109] phi()
  [110] call print_str
  to:testProcport::@13
testProcport::@13: scope:[testProcport]  from testProcport::@12
  [111] print_uchar::b#6 = *IO_RAM
  [112] call print_uchar
  to:testProcport::@14
testProcport::@14: scope:[testProcport]  from testProcport::@13
  [113] phi()
  [114] call print_str
  to:testProcport::@15
testProcport::@15: scope:[testProcport]  from testProcport::@14
  [115] print_uchar::b#7 = *KERNAL_ROM
  [116] call print_uchar
  to:testProcport::@16
testProcport::@16: scope:[testProcport]  from testProcport::@15
  [117] phi()
  [118] call print_ln
  to:testProcport::@return
testProcport::@return: scope:[testProcport]  from testProcport::@16
  [119] return 
  to:@return

void * memset(void *str , char c , unsigned int num)
memset: scope:[memset]  from print_cls
  [120] phi()
  to:memset::@1
memset::@1: scope:[memset]  from memset memset::@2
  [121] memset::dst#2 = phi( memset/(char *)memset::str#0, memset::@2/memset::dst#1 )
  [122] if(memset::dst#2!=memset::end#0) goto memset::@2
  to:memset::@return
memset::@return: scope:[memset]  from memset::@1
  [123] return 
  to:@return
memset::@2: scope:[memset]  from memset::@1
  [124] *memset::dst#2 = memset::c#0
  [125] memset::dst#1 = ++ memset::dst#2
  to:memset::@1

void print_char(char ch)
print_char: scope:[print_char]  from print_str::@2 print_uchar print_uchar::@1
  [126] print_char_cursor#66 = phi( print_str::@2/print_char_cursor#1, print_uchar/print_char_cursor#1, print_uchar::@1/print_char_cursor#67 )
  [126] print_char::ch#3 = phi( print_str::@2/print_char::ch#0, print_uchar/print_char::ch#1, print_uchar::@1/print_char::ch#2 )
  [127] *print_char_cursor#66 = print_char::ch#3
  [128] print_char_cursor#67 = ++ print_char_cursor#66
  to:print_char::@return
print_char::@return: scope:[print_char]  from print_char
  [129] return 
  to:@return

void print_uchar(char b)
print_uchar: scope:[print_uchar]  from testProcport::@1 testProcport::@11 testProcport::@13 testProcport::@15 testProcport::@3 testProcport::@5 testProcport::@7 testProcport::@9
  [130] print_uchar::b#8 = phi( testProcport::@1/print_uchar::b#0, testProcport::@11/print_uchar::b#5, testProcport::@13/print_uchar::b#6, testProcport::@15/print_uchar::b#7, testProcport::@3/print_uchar::b#1, testProcport::@5/print_uchar::b#2, testProcport::@7/print_uchar::b#3, testProcport::@9/print_uchar::b#4 )
  [131] print_uchar::$0 = print_uchar::b#8 >> 4
  [132] print_char::ch#1 = print_hextab[print_uchar::$0]
  [133] call print_char
  to:print_uchar::@1
print_uchar::@1: scope:[print_uchar]  from print_uchar
  [134] print_uchar::$2 = print_uchar::b#8 & $f
  [135] print_char::ch#2 = print_hextab[print_uchar::$2]
  [136] call print_char
  to:print_uchar::@return
print_uchar::@return: scope:[print_uchar]  from print_uchar::@1
  [137] return 
  to:@return
