@begin: scope:[]  from
  [0] phi()
  to:@1
@1: scope:[]  from @begin
  [1] phi()
  [2] call main 
  to:@end
@end: scope:[]  from @1
  [3] phi()

(void()) main()
main: scope:[main]  from @1
  [4] phi()
  [5] call mulf_init 
  to:main::@8
main::@8: scope:[main]  from main
  [6] phi()
  [7] call bitmap_init 
  to:main::@9
main::@9: scope:[main]  from main::@8
  [8] phi()
  [9] call bitmap_clear 
  to:main::vicSelectGfxBank1
main::vicSelectGfxBank1: scope:[main]  from main::@9
  [10] *((const byte*) CIA2_PORT_A_DDR) ← (byte) 3
  to:main::vicSelectGfxBank1_toDd001
main::vicSelectGfxBank1_toDd001: scope:[main]  from main::vicSelectGfxBank1
  [11] phi()
  to:main::vicSelectGfxBank1_@1
main::vicSelectGfxBank1_@1: scope:[main]  from main::vicSelectGfxBank1_toDd001
  [12] *((const byte*) CIA2_PORT_A) ← (const byte) main::vicSelectGfxBank1_toDd001_return#0
  to:main::toD0181
main::toD0181: scope:[main]  from main::vicSelectGfxBank1_@1
  [13] phi()
  to:main::@7
main::@7: scope:[main]  from main::toD0181
  [14] *((const byte*) D018) ← (const byte) main::toD0181_return#0
  [15] *((const byte*) D011) ← (const byte) VIC_BMM|(const byte) VIC_DEN|(const byte) VIC_RSEL|(byte) 3
  to:main::@1
main::@1: scope:[main]  from main::@6 main::@7
  [16] (byte) main::angle#2 ← phi( main::@7/(byte) 0 main::@6/(byte) main::angle#1 )
  to:main::@2
main::@2: scope:[main]  from main::@1
  [17] phi()
  [18] call bitmap_clear 
  to:main::@10
main::@10: scope:[main]  from main::@2
  [19] (byte) show_letter::angle#0 ← (byte) main::angle#2
  [20] call show_letter 
  to:main::@3
main::@3: scope:[main]  from main::@10 main::@3 main::@5
  [21] (byte) main::w#4 ← phi( main::@10/(byte) 0 main::@3/(byte) main::w#4 main::@5/(byte) main::w#1 )
  [22] if(*((const byte*) RASTER)!=(byte) $fe) goto main::@3
  to:main::@4
main::@4: scope:[main]  from main::@3 main::@4
  [23] if(*((const byte*) RASTER)!=(byte) $ff) goto main::@4
  to:main::@5
main::@5: scope:[main]  from main::@4
  [24] (byte) main::w#1 ← ++ (byte) main::w#4
  [25] if((byte) main::w#1!=(byte) $3d) goto main::@3
  to:main::@6
main::@6: scope:[main]  from main::@5
  [26] (byte) main::angle#1 ← (byte) main::angle#2 + (byte) 9
  to:main::@1

(void()) show_letter((byte) show_letter::angle)
show_letter: scope:[show_letter]  from main::@10
  [27] phi()
  to:show_letter::@1
show_letter::@1: scope:[show_letter]  from show_letter show_letter::@9
  [28] (signed word) show_letter::current_y#4 ← phi( show_letter/(signed word) 0 show_letter::@9/(signed word) show_letter::current_y#11 )
  [28] (signed word) show_letter::current_x#4 ← phi( show_letter/(signed word) 0 show_letter::@9/(signed word) show_letter::current_x#11 )
  [28] (byte) show_letter::i#10 ← phi( show_letter/(byte) 0 show_letter::@9/(byte) show_letter::i#1 )
  [29] (byte~) show_letter::$23 ← (byte) show_letter::i#10 << (byte) 3
  [30] (byte~) show_letter::$20 ← (byte~) show_letter::$23 + (byte) show_letter::i#10
  [31] (signed word) show_letter::to_x#0 ← *((signed word*)(struct SplineVector16*)(const struct Segment*) letter_c+(const byte) OFFSET_STRUCT_SEGMENT_TO + (byte~) show_letter::$20)
  [32] (signed word) show_letter::to_y#0 ← *((signed word*)(struct SplineVector16*)(const struct Segment*) letter_c+(const byte) OFFSET_STRUCT_SEGMENT_TO+(const byte) OFFSET_STRUCT_SPLINEVECTOR16_Y + (byte~) show_letter::$20)
  [33] (signed word) show_letter::to_x#1 ← (signed word) show_letter::to_x#0 - (signed byte) $32
  [34] (signed word) show_letter::to_y#1 ← (signed word) show_letter::to_y#0 - (signed word) $96
  [35] (signed word) rotate::vector_x#0 ← (signed word) show_letter::to_x#1
  [36] (signed word) rotate::vector_y#0 ← (signed word) show_letter::to_y#1
  [37] (byte) rotate::angle#0 ← (byte) show_letter::angle#0
  [38] call rotate 
  [39] (signed word) rotate::return_x#0 ← (signed word) rotate::return_x#2
  [40] (signed word) rotate::return_y#0 ← (signed word) rotate::return_y#2
  to:show_letter::@6
show_letter::@6: scope:[show_letter]  from show_letter::@1
  [41] (signed word) show_letter::to_x#2 ← (signed word) rotate::return_x#0
  [42] (signed word) show_letter::to_y#2 ← (signed word) rotate::return_y#0
  [43] (signed word) show_letter::current_x#10 ← (signed word) show_letter::to_x#2 + (signed byte) $64
  [44] (signed word) show_letter::current_y#10 ← (signed word) show_letter::to_y#2 + (signed byte) $64
  [45] (byte~) show_letter::$25 ← (byte) show_letter::i#10 << (byte) 3
  [46] (byte~) show_letter::$21 ← (byte~) show_letter::$25 + (byte) show_letter::i#10
  [47] (signed word) show_letter::via_x#0 ← *((signed word*)(struct SplineVector16*)(const struct Segment*) letter_c+(const byte) OFFSET_STRUCT_SEGMENT_VIA + (byte~) show_letter::$21)
  [48] (signed word) show_letter::via_y#0 ← *((signed word*)(struct SplineVector16*)(const struct Segment*) letter_c+(const byte) OFFSET_STRUCT_SEGMENT_VIA+(const byte) OFFSET_STRUCT_SPLINEVECTOR16_Y + (byte~) show_letter::$21)
  [49] (signed word) show_letter::via_x#1 ← (signed word) show_letter::via_x#0 - (signed byte) $32
  [50] (signed word) show_letter::via_y#1 ← (signed word) show_letter::via_y#0 - (signed word) $96
  [51] (signed word) rotate::vector_x#1 ← (signed word) show_letter::via_x#1
  [52] (signed word) rotate::vector_y#1 ← (signed word) show_letter::via_y#1
  [53] (byte) rotate::angle#1 ← (byte) show_letter::angle#0
  [54] call rotate 
  [55] (signed word) rotate::return_x#1 ← (signed word) rotate::return_x#2
  [56] (signed word) rotate::return_y#1 ← (signed word) rotate::return_y#2
  to:show_letter::@7
show_letter::@7: scope:[show_letter]  from show_letter::@6
  [57] (signed word) show_letter::via_x#2 ← (signed word) rotate::return_x#1
  [58] (signed word) show_letter::via_y#2 ← (signed word) rotate::return_y#1
  [59] (signed word) show_letter::segment_via_x#0 ← (signed word) show_letter::via_x#2 + (signed byte) $64
  [60] (signed word) show_letter::segment_via_y#0 ← (signed word) show_letter::via_y#2 + (signed byte) $64
  [61] (byte~) show_letter::$27 ← (byte) show_letter::i#10 << (byte) 3
  [62] (byte~) show_letter::$22 ← (byte~) show_letter::$27 + (byte) show_letter::i#10
  [63] (byte) show_letter::segment_type#0 ← *((byte*)(const struct Segment*) letter_c + (byte~) show_letter::$22)
  [64] if((byte) show_letter::segment_type#0==(const byte) MOVE_TO) goto show_letter::@3
  to:show_letter::@4
show_letter::@4: scope:[show_letter]  from show_letter::@7
  [65] if((byte) show_letter::segment_type#0==(const byte) SPLINE_TO) goto show_letter::@2
  to:show_letter::@5
show_letter::@5: scope:[show_letter]  from show_letter::@4
  [66] (word) bitmap_line::x1#0 ← (word)(signed word) show_letter::current_x#4
  [67] (word) bitmap_line::y1#0 ← (word)(signed word) show_letter::current_y#4
  [68] (word) bitmap_line::x2#0 ← (word)(signed word) show_letter::current_x#10
  [69] (word) bitmap_line::y2#0 ← (word)(signed word) show_letter::current_y#10
  [70] call bitmap_line 
  to:show_letter::@3
show_letter::@3: scope:[show_letter]  from show_letter::@5 show_letter::@7 show_letter::@8
  [71] (byte) show_letter::i#1 ← ++ (byte) show_letter::i#10
  [72] if((byte) show_letter::i#1!=(byte) $16) goto show_letter::@9
  to:show_letter::@return
show_letter::@return: scope:[show_letter]  from show_letter::@3
  [73] return 
  to:@return
show_letter::@9: scope:[show_letter]  from show_letter::@3
  [74] (signed word) show_letter::current_x#11 ← (signed word) show_letter::current_x#10
  [75] (signed word) show_letter::current_y#11 ← (signed word) show_letter::current_y#10
  to:show_letter::@1
show_letter::@2: scope:[show_letter]  from show_letter::@4
  [76] (signed word) spline_8segB::p0_x#0 ← (signed word) show_letter::current_x#4
  [77] (signed word) spline_8segB::p0_y#0 ← (signed word) show_letter::current_y#4
  [78] (signed word) spline_8segB::p1_x#0 ← (signed word) show_letter::segment_via_x#0
  [79] (signed word) spline_8segB::p1_y#0 ← (signed word) show_letter::segment_via_y#0
  [80] (signed word) spline_8segB::p2_x#0 ← (signed word) show_letter::current_x#10
  [81] (signed word) spline_8segB::p2_y#0 ← (signed word) show_letter::current_y#10
  [82] call spline_8segB 
  to:show_letter::@8
show_letter::@8: scope:[show_letter]  from show_letter::@2
  [83] phi()
  [84] call bitmap_plot_spline_8seg 
  to:show_letter::@3

(void()) bitmap_plot_spline_8seg()
bitmap_plot_spline_8seg: scope:[bitmap_plot_spline_8seg]  from show_letter::@8
  [85] (signed word) bitmap_plot_spline_8seg::current_x#0 ← *((signed word*)(const struct SplineVector16*) SPLINE_8SEG)
  [86] (signed word) bitmap_plot_spline_8seg::current_y#0 ← *((signed word*)(const struct SplineVector16*) SPLINE_8SEG+(const byte) OFFSET_STRUCT_SPLINEVECTOR16_Y)
  to:bitmap_plot_spline_8seg::@1
bitmap_plot_spline_8seg::@1: scope:[bitmap_plot_spline_8seg]  from bitmap_plot_spline_8seg bitmap_plot_spline_8seg::@2
  [87] (byte) bitmap_plot_spline_8seg::n#2 ← phi( bitmap_plot_spline_8seg/(byte) 1 bitmap_plot_spline_8seg::@2/(byte) bitmap_plot_spline_8seg::n#1 )
  [87] (signed word) bitmap_plot_spline_8seg::current_y#2 ← phi( bitmap_plot_spline_8seg/(signed word) bitmap_plot_spline_8seg::current_y#0 bitmap_plot_spline_8seg::@2/(signed word) bitmap_plot_spline_8seg::current_y#1 )
  [87] (signed word) bitmap_plot_spline_8seg::current_x#2 ← phi( bitmap_plot_spline_8seg/(signed word) bitmap_plot_spline_8seg::current_x#0 bitmap_plot_spline_8seg::@2/(signed word) bitmap_plot_spline_8seg::current_x#1 )
  [88] (word) bitmap_line::x1#1 ← (word)(signed word) bitmap_plot_spline_8seg::current_x#2
  [89] (word) bitmap_line::y1#1 ← (word)(signed word) bitmap_plot_spline_8seg::current_y#2
  [90] (byte~) bitmap_plot_spline_8seg::$8 ← (byte) bitmap_plot_spline_8seg::n#2 << (byte) 2
  [91] (word) bitmap_line::x2#13 ← (word)*((signed word*)(const struct SplineVector16*) SPLINE_8SEG + (byte~) bitmap_plot_spline_8seg::$8)
  [92] (word) bitmap_line::y2#13 ← (word)*((signed word*)(const struct SplineVector16*) SPLINE_8SEG+(const byte) OFFSET_STRUCT_SPLINEVECTOR16_Y + (byte~) bitmap_plot_spline_8seg::$8)
  [93] call bitmap_line 
  to:bitmap_plot_spline_8seg::@2
bitmap_plot_spline_8seg::@2: scope:[bitmap_plot_spline_8seg]  from bitmap_plot_spline_8seg::@1
  [94] (byte~) bitmap_plot_spline_8seg::$9 ← (byte) bitmap_plot_spline_8seg::n#2 << (byte) 2
  [95] (signed word) bitmap_plot_spline_8seg::current_x#1 ← *((signed word*)(const struct SplineVector16*) SPLINE_8SEG + (byte~) bitmap_plot_spline_8seg::$9)
  [96] (signed word) bitmap_plot_spline_8seg::current_y#1 ← *((signed word*)(const struct SplineVector16*) SPLINE_8SEG+(const byte) OFFSET_STRUCT_SPLINEVECTOR16_Y + (byte~) bitmap_plot_spline_8seg::$9)
  [97] (byte) bitmap_plot_spline_8seg::n#1 ← ++ (byte) bitmap_plot_spline_8seg::n#2
  [98] if((byte) bitmap_plot_spline_8seg::n#1!=(byte) 9) goto bitmap_plot_spline_8seg::@1
  to:bitmap_plot_spline_8seg::@return
bitmap_plot_spline_8seg::@return: scope:[bitmap_plot_spline_8seg]  from bitmap_plot_spline_8seg::@2
  [99] return 
  to:@return

(void()) bitmap_line((word) bitmap_line::x1 , (word) bitmap_line::y1 , (word) bitmap_line::x2 , (word) bitmap_line::y2)
bitmap_line: scope:[bitmap_line]  from bitmap_plot_spline_8seg::@1 show_letter::@5
  [100] (word) bitmap_line::y2#11 ← phi( bitmap_plot_spline_8seg::@1/(word) bitmap_line::y2#13 show_letter::@5/(word) bitmap_line::y2#0 )
  [100] (word) bitmap_line::x2#10 ← phi( bitmap_plot_spline_8seg::@1/(word) bitmap_line::x2#13 show_letter::@5/(word) bitmap_line::x2#0 )
  [100] (word) bitmap_line::y#0 ← phi( bitmap_plot_spline_8seg::@1/(word) bitmap_line::y1#1 show_letter::@5/(word) bitmap_line::y1#0 )
  [100] (word) bitmap_line::x#0 ← phi( bitmap_plot_spline_8seg::@1/(word) bitmap_line::x1#1 show_letter::@5/(word) bitmap_line::x1#0 )
  [101] (word) abs_u16::w#0 ← (word) bitmap_line::x2#10 - (word) bitmap_line::x#0
  [102] call abs_u16 
  [103] (word) abs_u16::return#0 ← (word) abs_u16::return#4
  to:bitmap_line::@12
bitmap_line::@12: scope:[bitmap_line]  from bitmap_line
  [104] (word) bitmap_line::dx#0 ← (word) abs_u16::return#0
  [105] (word) abs_u16::w#1 ← (word) bitmap_line::y2#11 - (word) bitmap_line::y#0
  [106] call abs_u16 
  [107] (word) abs_u16::return#1 ← (word) abs_u16::return#4
  to:bitmap_line::@13
bitmap_line::@13: scope:[bitmap_line]  from bitmap_line::@12
  [108] (word) bitmap_line::dy#0 ← (word) abs_u16::return#1
  [109] if((word) bitmap_line::dx#0!=(byte) 0) goto bitmap_line::@1
  to:bitmap_line::@18
bitmap_line::@18: scope:[bitmap_line]  from bitmap_line::@13
  [110] if((word) bitmap_line::dy#0==(byte) 0) goto bitmap_line::@4
  to:bitmap_line::@1
bitmap_line::@1: scope:[bitmap_line]  from bitmap_line::@13 bitmap_line::@18
  [111] (word) sgn_u16::w#0 ← (word) bitmap_line::x2#10 - (word) bitmap_line::x#0
  [112] call sgn_u16 
  [113] (word) sgn_u16::return#0 ← (word) sgn_u16::return#4
  to:bitmap_line::@14
bitmap_line::@14: scope:[bitmap_line]  from bitmap_line::@1
  [114] (word) bitmap_line::sx#0 ← (word) sgn_u16::return#0
  [115] (word) sgn_u16::w#1 ← (word) bitmap_line::y2#11 - (word) bitmap_line::y#0
  [116] call sgn_u16 
  [117] (word) sgn_u16::return#1 ← (word) sgn_u16::return#4
  to:bitmap_line::@15
bitmap_line::@15: scope:[bitmap_line]  from bitmap_line::@14
  [118] (word) bitmap_line::sy#0 ← (word) sgn_u16::return#1
  [119] if((word) bitmap_line::dx#0>(word) bitmap_line::dy#0) goto bitmap_line::@2
  to:bitmap_line::@5
bitmap_line::@5: scope:[bitmap_line]  from bitmap_line::@15
  [120] (word) bitmap_line::e#0 ← (word) bitmap_line::dx#0 >> (byte) 1
  to:bitmap_line::@6
bitmap_line::@6: scope:[bitmap_line]  from bitmap_line::@5 bitmap_line::@7
  [121] (word) bitmap_line::e#3 ← phi( bitmap_line::@5/(word) bitmap_line::e#0 bitmap_line::@7/(word) bitmap_line::e#6 )
  [121] (word) bitmap_line::x#13 ← phi( bitmap_line::@5/(word) bitmap_line::x#0 bitmap_line::@7/(word) bitmap_line::x#12 )
  [121] (word) bitmap_line::y#4 ← phi( bitmap_line::@5/(word) bitmap_line::y#0 bitmap_line::@7/(word) bitmap_line::y#1 )
  [122] (byte) bitmap_plot::y#1 ← (byte)(word) bitmap_line::y#4
  [123] (word) bitmap_plot::x#1 ← (word) bitmap_line::x#13
  [124] call bitmap_plot 
  to:bitmap_line::@16
bitmap_line::@16: scope:[bitmap_line]  from bitmap_line::@6
  [125] (word) bitmap_line::y#1 ← (word) bitmap_line::y#4 + (word) bitmap_line::sy#0
  [126] (word) bitmap_line::e#1 ← (word) bitmap_line::e#3 + (word) bitmap_line::dx#0
  [127] if((word) bitmap_line::dy#0>=(word) bitmap_line::e#1) goto bitmap_line::@7
  to:bitmap_line::@8
bitmap_line::@8: scope:[bitmap_line]  from bitmap_line::@16
  [128] (word) bitmap_line::x#1 ← (word) bitmap_line::x#13 + (word) bitmap_line::sx#0
  [129] (word) bitmap_line::e#2 ← (word) bitmap_line::e#1 - (word) bitmap_line::dy#0
  to:bitmap_line::@7
bitmap_line::@7: scope:[bitmap_line]  from bitmap_line::@16 bitmap_line::@8
  [130] (word) bitmap_line::e#6 ← phi( bitmap_line::@16/(word) bitmap_line::e#1 bitmap_line::@8/(word) bitmap_line::e#2 )
  [130] (word) bitmap_line::x#12 ← phi( bitmap_line::@16/(word) bitmap_line::x#13 bitmap_line::@8/(word) bitmap_line::x#1 )
  [131] if((word) bitmap_line::y#1!=(word) bitmap_line::y2#11) goto bitmap_line::@6
  to:bitmap_line::@3
bitmap_line::@3: scope:[bitmap_line]  from bitmap_line::@10 bitmap_line::@7
  [132] (word) bitmap_line::x#6 ← phi( bitmap_line::@10/(word) bitmap_line::x#15 bitmap_line::@7/(word) bitmap_line::x#12 )
  [132] (word) bitmap_line::y#7 ← phi( bitmap_line::@10/(word) bitmap_line::y#13 bitmap_line::@7/(word) bitmap_line::y#1 )
  [133] (byte) bitmap_plot::y#2 ← (byte)(word) bitmap_line::y#7
  [134] (word) bitmap_plot::x#2 ← (word) bitmap_line::x#6
  [135] call bitmap_plot 
  to:bitmap_line::@return
bitmap_line::@return: scope:[bitmap_line]  from bitmap_line::@3 bitmap_line::@4
  [136] return 
  to:@return
bitmap_line::@2: scope:[bitmap_line]  from bitmap_line::@15
  [137] (word) bitmap_line::e1#0 ← (word) bitmap_line::dy#0 >> (byte) 1
  to:bitmap_line::@9
bitmap_line::@9: scope:[bitmap_line]  from bitmap_line::@10 bitmap_line::@2
  [138] (word) bitmap_line::e1#3 ← phi( bitmap_line::@10/(word) bitmap_line::e1#6 bitmap_line::@2/(word) bitmap_line::e1#0 )
  [138] (word) bitmap_line::x#7 ← phi( bitmap_line::@10/(word) bitmap_line::x#15 bitmap_line::@2/(word) bitmap_line::x#0 )
  [138] (word) bitmap_line::y#15 ← phi( bitmap_line::@10/(word) bitmap_line::y#13 bitmap_line::@2/(word) bitmap_line::y#0 )
  [139] (byte) bitmap_plot::y#3 ← (byte)(word) bitmap_line::y#15
  [140] (word) bitmap_plot::x#3 ← (word) bitmap_line::x#7
  [141] call bitmap_plot 
  to:bitmap_line::@17
bitmap_line::@17: scope:[bitmap_line]  from bitmap_line::@9
  [142] (word) bitmap_line::x#15 ← (word) bitmap_line::x#7 + (word) bitmap_line::sx#0
  [143] (word) bitmap_line::e1#1 ← (word) bitmap_line::e1#3 + (word) bitmap_line::dy#0
  [144] if((word) bitmap_line::dx#0>=(word) bitmap_line::e1#1) goto bitmap_line::@10
  to:bitmap_line::@11
bitmap_line::@11: scope:[bitmap_line]  from bitmap_line::@17
  [145] (word) bitmap_line::y#2 ← (word) bitmap_line::y#15 + (word) bitmap_line::sy#0
  [146] (word) bitmap_line::e1#2 ← (word) bitmap_line::e1#1 - (word) bitmap_line::dx#0
  to:bitmap_line::@10
bitmap_line::@10: scope:[bitmap_line]  from bitmap_line::@11 bitmap_line::@17
  [147] (word) bitmap_line::e1#6 ← phi( bitmap_line::@11/(word) bitmap_line::e1#2 bitmap_line::@17/(word) bitmap_line::e1#1 )
  [147] (word) bitmap_line::y#13 ← phi( bitmap_line::@11/(word) bitmap_line::y#2 bitmap_line::@17/(word) bitmap_line::y#15 )
  [148] if((word) bitmap_line::x#15!=(word) bitmap_line::x2#10) goto bitmap_line::@9
  to:bitmap_line::@3
bitmap_line::@4: scope:[bitmap_line]  from bitmap_line::@18
  [149] (byte) bitmap_plot::y#0 ← (byte)(word) bitmap_line::y#0
  [150] (word) bitmap_plot::x#0 ← (word) bitmap_line::x#0
  [151] call bitmap_plot 
  to:bitmap_line::@return

(void()) bitmap_plot((word) bitmap_plot::x , (byte) bitmap_plot::y)
bitmap_plot: scope:[bitmap_plot]  from bitmap_line::@3 bitmap_line::@4 bitmap_line::@6 bitmap_line::@9
  [152] (word) bitmap_plot::x#4 ← phi( bitmap_line::@9/(word) bitmap_plot::x#3 bitmap_line::@3/(word) bitmap_plot::x#2 bitmap_line::@4/(word) bitmap_plot::x#0 bitmap_line::@6/(word) bitmap_plot::x#1 )
  [152] (byte) bitmap_plot::y#4 ← phi( bitmap_line::@9/(byte) bitmap_plot::y#3 bitmap_line::@3/(byte) bitmap_plot::y#2 bitmap_line::@4/(byte) bitmap_plot::y#0 bitmap_line::@6/(byte) bitmap_plot::y#1 )
  [153] (word) bitmap_plot::plotter#0 ← *((const byte*) bitmap_plot_yhi + (byte) bitmap_plot::y#4) w= *((const byte*) bitmap_plot_ylo + (byte) bitmap_plot::y#4)
  [154] (word~) bitmap_plot::$1 ← (word) bitmap_plot::x#4 & (word) $fff8
  [155] (byte*) bitmap_plot::plotter#1 ← (byte*)(word) bitmap_plot::plotter#0 + (word~) bitmap_plot::$1
  [156] (byte~) bitmap_plot::$2 ← < (word) bitmap_plot::x#4
  [157] *((byte*) bitmap_plot::plotter#1) ← *((byte*) bitmap_plot::plotter#1) | *((const byte*) bitmap_plot_bit + (byte~) bitmap_plot::$2)
  to:bitmap_plot::@return
bitmap_plot::@return: scope:[bitmap_plot]  from bitmap_plot
  [158] return 
  to:@return

(word()) sgn_u16((word) sgn_u16::w)
sgn_u16: scope:[sgn_u16]  from bitmap_line::@1 bitmap_line::@14
  [159] (word) sgn_u16::w#2 ← phi( bitmap_line::@1/(word) sgn_u16::w#0 bitmap_line::@14/(word) sgn_u16::w#1 )
  [160] (byte~) sgn_u16::$0 ← > (word) sgn_u16::w#2
  [161] (byte~) sgn_u16::$1 ← (byte~) sgn_u16::$0 & (byte) $80
  [162] if((byte) 0!=(byte~) sgn_u16::$1) goto sgn_u16::@1
  to:sgn_u16::@return
sgn_u16::@1: scope:[sgn_u16]  from sgn_u16
  [163] phi()
  to:sgn_u16::@return
sgn_u16::@return: scope:[sgn_u16]  from sgn_u16 sgn_u16::@1
  [164] (word) sgn_u16::return#4 ← phi( sgn_u16::@1/(byte) -1 sgn_u16/(byte) 1 )
  [165] return 
  to:@return

(word()) abs_u16((word) abs_u16::w)
abs_u16: scope:[abs_u16]  from bitmap_line bitmap_line::@12
  [166] (word) abs_u16::w#2 ← phi( bitmap_line/(word) abs_u16::w#0 bitmap_line::@12/(word) abs_u16::w#1 )
  [167] (byte~) abs_u16::$0 ← > (word) abs_u16::w#2
  [168] (byte~) abs_u16::$1 ← (byte~) abs_u16::$0 & (byte) $80
  [169] if((byte) 0!=(byte~) abs_u16::$1) goto abs_u16::@1
  to:abs_u16::@return
abs_u16::@1: scope:[abs_u16]  from abs_u16
  [170] (word) abs_u16::return#2 ← - (word) abs_u16::w#2
  to:abs_u16::@return
abs_u16::@return: scope:[abs_u16]  from abs_u16 abs_u16::@1
  [171] (word) abs_u16::return#4 ← phi( abs_u16::@1/(word) abs_u16::return#2 abs_u16/(word) abs_u16::w#2 )
  [172] return 
  to:@return

(void()) spline_8segB((signed word) spline_8segB::p0_x , (signed word) spline_8segB::p0_y , (signed word) spline_8segB::p1_x , (signed word) spline_8segB::p1_y , (signed word) spline_8segB::p2_x , (signed word) spline_8segB::p2_y)
spline_8segB: scope:[spline_8segB]  from show_letter::@2
  [173] (signed word~) spline_8segB::$0 ← (signed word) spline_8segB::p1_x#0 << (byte) 1
  [174] (signed word~) spline_8segB::$1 ← (signed word) spline_8segB::p2_x#0 - (signed word~) spline_8segB::$0
  [175] (signed word) spline_8segB::a_x#0 ← (signed word~) spline_8segB::$1 + (signed word) spline_8segB::p0_x#0
  [176] (signed word~) spline_8segB::$3 ← (signed word) spline_8segB::p1_y#0 << (byte) 1
  [177] (signed word~) spline_8segB::$4 ← (signed word) spline_8segB::p2_y#0 - (signed word~) spline_8segB::$3
  [178] (signed word) spline_8segB::a_y#0 ← (signed word~) spline_8segB::$4 + (signed word) spline_8segB::p0_y#0
  [179] (signed word~) spline_8segB::$6 ← (signed word) spline_8segB::p1_x#0 - (signed word) spline_8segB::p0_x#0
  [180] (signed word) spline_8segB::b_x#0 ← (signed word~) spline_8segB::$6 << (byte) 1
  [181] (signed word~) spline_8segB::$8 ← (signed word) spline_8segB::p1_y#0 - (signed word) spline_8segB::p0_y#0
  [182] (signed word) spline_8segB::b_y#0 ← (signed word~) spline_8segB::$8 << (byte) 1
  [183] (signed word~) spline_8segB::$10 ← (signed word) spline_8segB::b_x#0 << (byte) 3
  [184] (signed word) spline_8segB::i_x#0 ← (signed word) spline_8segB::a_x#0 + (signed word~) spline_8segB::$10
  [185] (signed word~) spline_8segB::$12 ← (signed word) spline_8segB::b_y#0 << (byte) 3
  [186] (signed word) spline_8segB::i_y#0 ← (signed word) spline_8segB::a_y#0 + (signed word~) spline_8segB::$12
  [187] (signed word) spline_8segB::j_x#0 ← (signed word) spline_8segB::a_x#0 << (byte) 1
  [188] (signed word) spline_8segB::j_y#0 ← (signed word) spline_8segB::a_y#0 << (byte) 1
  [189] (signed word) spline_8segB::p_x#0 ← (signed word) spline_8segB::p0_x#0 << (byte) 6
  [190] (signed word) spline_8segB::p_y#0 ← (signed word) spline_8segB::p0_y#0 << (byte) 6
  to:spline_8segB::@1
spline_8segB::@1: scope:[spline_8segB]  from spline_8segB spline_8segB::@1
  [191] (signed word) spline_8segB::i_y#2 ← phi( spline_8segB/(signed word) spline_8segB::i_y#0 spline_8segB::@1/(signed word) spline_8segB::i_y#1 )
  [191] (signed word) spline_8segB::i_x#2 ← phi( spline_8segB/(signed word) spline_8segB::i_x#0 spline_8segB::@1/(signed word) spline_8segB::i_x#1 )
  [191] (byte) spline_8segB::n#2 ← phi( spline_8segB/(byte) 0 spline_8segB::@1/(byte) spline_8segB::n#1 )
  [191] (signed word) spline_8segB::p_y#2 ← phi( spline_8segB/(signed word) spline_8segB::p_y#0 spline_8segB::@1/(signed word) spline_8segB::p_y#1 )
  [191] (signed word) spline_8segB::p_x#2 ← phi( spline_8segB/(signed word) spline_8segB::p_x#0 spline_8segB::@1/(signed word) spline_8segB::p_x#1 )
  [192] (signed word~) spline_8segB::$22 ← (signed word) spline_8segB::p_x#2 + (signed byte) $20
  [193] (signed word~) spline_8segB::$23 ← (signed word~) spline_8segB::$22 >> (byte) 6
  [194] (signed word~) spline_8segB::$24 ← (signed word) spline_8segB::p_y#2 + (signed byte) $20
  [195] (signed word~) spline_8segB::$25 ← (signed word~) spline_8segB::$24 >> (byte) 6
  [196] (byte~) spline_8segB::$31 ← (byte) spline_8segB::n#2 << (byte) 2
  [197] *((signed word*)(const struct SplineVector16*) SPLINE_8SEG + (byte~) spline_8segB::$31) ← (signed word~) spline_8segB::$23
  [198] *((signed word*)(const struct SplineVector16*) SPLINE_8SEG+(const byte) OFFSET_STRUCT_SPLINEVECTOR16_Y + (byte~) spline_8segB::$31) ← (signed word~) spline_8segB::$25
  [199] (signed word) spline_8segB::p_x#1 ← (signed word) spline_8segB::p_x#2 + (signed word) spline_8segB::i_x#2
  [200] (signed word) spline_8segB::p_y#1 ← (signed word) spline_8segB::p_y#2 + (signed word) spline_8segB::i_y#2
  [201] (signed word) spline_8segB::i_x#1 ← (signed word) spline_8segB::i_x#2 + (signed word) spline_8segB::j_x#0
  [202] (signed word) spline_8segB::i_y#1 ← (signed word) spline_8segB::i_y#2 + (signed word) spline_8segB::j_y#0
  [203] (byte) spline_8segB::n#1 ← ++ (byte) spline_8segB::n#2
  [204] if((byte) spline_8segB::n#1!=(byte) 8) goto spline_8segB::@1
  to:spline_8segB::@2
spline_8segB::@2: scope:[spline_8segB]  from spline_8segB::@1
  [205] (signed word~) spline_8segB::$18 ← (signed word) spline_8segB::p_x#1 + (signed byte) $20
  [206] (signed word~) spline_8segB::$19 ← (signed word~) spline_8segB::$18 >> (byte) 6
  [207] (signed word~) spline_8segB::$20 ← (signed word) spline_8segB::p_y#1 + (signed byte) $20
  [208] (signed word~) spline_8segB::$21 ← (signed word~) spline_8segB::$20 >> (byte) 6
  [209] *((signed word*)(const struct SplineVector16*) SPLINE_8SEG+(byte) 8*(const byte) SIZEOF_STRUCT_SPLINEVECTOR16) ← (signed word~) spline_8segB::$19
  [210] *((signed word*)(const struct SplineVector16*) SPLINE_8SEG+(const byte) OFFSET_STRUCT_SPLINEVECTOR16_Y+(byte) 8*(const byte) SIZEOF_STRUCT_SPLINEVECTOR16) ← (signed word~) spline_8segB::$21
  to:spline_8segB::@return
spline_8segB::@return: scope:[spline_8segB]  from spline_8segB::@2
  [211] return 
  to:@return

(struct SplineVector16()) rotate((signed word) rotate::vector_x , (signed word) rotate::vector_y , (byte) rotate::angle)
rotate: scope:[rotate]  from show_letter::@1 show_letter::@6
  [212] (signed word) rotate::vector_y#2 ← phi( show_letter::@1/(signed word) rotate::vector_y#0 show_letter::@6/(signed word) rotate::vector_y#1 )
  [212] (signed word) rotate::vector_x#2 ← phi( show_letter::@1/(signed word) rotate::vector_x#0 show_letter::@6/(signed word) rotate::vector_x#1 )
  [212] (byte) rotate::angle#2 ← phi( show_letter::@1/(byte) rotate::angle#0 show_letter::@6/(byte) rotate::angle#1 )
  [213] (signed word) rotate::cos_a#0 ← (signed word)*((const signed byte*) COS + (byte) rotate::angle#2)
  [214] (signed word) mulf16s::a#0 ← (signed word) rotate::cos_a#0
  [215] (signed word) mulf16s::b#0 ← (signed word) rotate::vector_x#2
  [216] call mulf16s 
  [217] (signed dword) mulf16s::return#2 ← (signed dword) mulf16s::return#0
  to:rotate::@1
rotate::@1: scope:[rotate]  from rotate
  [218] (signed dword~) rotate::$1 ← (signed dword) mulf16s::return#2
  [219] (signed word~) rotate::$2 ← (signed word)(signed dword~) rotate::$1
  [220] (signed word) rotate::xr#0 ← (signed word~) rotate::$2 << (byte) 1
  [221] (signed word) mulf16s::a#1 ← (signed word) rotate::cos_a#0
  [222] (signed word) mulf16s::b#1 ← (signed word) rotate::vector_y#2
  [223] call mulf16s 
  [224] (signed dword) mulf16s::return#3 ← (signed dword) mulf16s::return#0
  to:rotate::@2
rotate::@2: scope:[rotate]  from rotate::@1
  [225] (signed dword~) rotate::$4 ← (signed dword) mulf16s::return#3
  [226] (signed word~) rotate::$5 ← (signed word)(signed dword~) rotate::$4
  [227] (signed word) rotate::yr#0 ← (signed word~) rotate::$5 << (byte) 1
  [228] (signed word) rotate::sin_a#0 ← (signed word)*((const signed byte*) SIN + (byte) rotate::angle#2)
  [229] (signed word) mulf16s::a#2 ← (signed word) rotate::sin_a#0
  [230] (signed word) mulf16s::b#2 ← (signed word) rotate::vector_y#2
  [231] call mulf16s 
  [232] (signed dword) mulf16s::return#4 ← (signed dword) mulf16s::return#0
  to:rotate::@3
rotate::@3: scope:[rotate]  from rotate::@2
  [233] (signed dword~) rotate::$8 ← (signed dword) mulf16s::return#4
  [234] (signed word~) rotate::$9 ← (signed word)(signed dword~) rotate::$8
  [235] (signed word~) rotate::$10 ← (signed word~) rotate::$9 << (byte) 1
  [236] (signed word) rotate::xr#1 ← (signed word) rotate::xr#0 - (signed word~) rotate::$10
  [237] (signed word) mulf16s::a#3 ← (signed word) rotate::sin_a#0
  [238] (signed word) mulf16s::b#3 ← (signed word) rotate::vector_x#2
  [239] call mulf16s 
  [240] (signed dword) mulf16s::return#10 ← (signed dword) mulf16s::return#0
  to:rotate::@4
rotate::@4: scope:[rotate]  from rotate::@3
  [241] (signed dword~) rotate::$11 ← (signed dword) mulf16s::return#10
  [242] (signed word~) rotate::$12 ← (signed word)(signed dword~) rotate::$11
  [243] (signed word~) rotate::$13 ← (signed word~) rotate::$12 << (byte) 1
  [244] (signed word) rotate::yr#1 ← (signed word) rotate::yr#0 + (signed word~) rotate::$13
  [245] (byte~) rotate::$15 ← > (signed word) rotate::xr#1
  [246] (signed word) rotate::return_x#2 ← (signed word)(signed byte)(byte~) rotate::$15
  [247] (byte~) rotate::$18 ← > (signed word) rotate::yr#1
  [248] (signed word) rotate::return_y#2 ← (signed word)(signed byte)(byte~) rotate::$18
  to:rotate::@return
rotate::@return: scope:[rotate]  from rotate::@4
  [249] return 
  to:@return

(signed dword()) mulf16s((signed word) mulf16s::a , (signed word) mulf16s::b)
mulf16s: scope:[mulf16s]  from rotate rotate::@1 rotate::@2 rotate::@3
  [250] (signed word) mulf16s::b#4 ← phi( rotate/(signed word) mulf16s::b#0 rotate::@1/(signed word) mulf16s::b#1 rotate::@2/(signed word) mulf16s::b#2 rotate::@3/(signed word) mulf16s::b#3 )
  [250] (signed word) mulf16s::a#4 ← phi( rotate/(signed word) mulf16s::a#0 rotate::@1/(signed word) mulf16s::a#1 rotate::@2/(signed word) mulf16s::a#2 rotate::@3/(signed word) mulf16s::a#3 )
  [251] (word) mulf16u::a#0 ← (word)(signed word) mulf16s::a#4
  [252] (word) mulf16u::b#0 ← (word)(signed word) mulf16s::b#4
  [253] call mulf16u 
  [254] (dword) mulf16u::return#2 ← (dword) mulf16u::return#0
  to:mulf16s::@5
mulf16s::@5: scope:[mulf16s]  from mulf16s
  [255] (dword) mulf16s::m#0 ← (dword) mulf16u::return#2
  [256] if((signed word) mulf16s::a#4>=(signed byte) 0) goto mulf16s::@1
  to:mulf16s::@3
mulf16s::@3: scope:[mulf16s]  from mulf16s::@5
  [257] (word~) mulf16s::$9 ← > (dword) mulf16s::m#0
  [258] (word~) mulf16s::$16 ← (word~) mulf16s::$9 - (word)(signed word) mulf16s::b#4
  [259] (dword) mulf16s::m#1 ← (dword) mulf16s::m#0 hi= (word~) mulf16s::$16
  to:mulf16s::@1
mulf16s::@1: scope:[mulf16s]  from mulf16s::@3 mulf16s::@5
  [260] (dword) mulf16s::m#5 ← phi( mulf16s::@3/(dword) mulf16s::m#1 mulf16s::@5/(dword) mulf16s::m#0 )
  [261] if((signed word) mulf16s::b#4>=(signed byte) 0) goto mulf16s::@2
  to:mulf16s::@4
mulf16s::@4: scope:[mulf16s]  from mulf16s::@1
  [262] (word~) mulf16s::$13 ← > (dword) mulf16s::m#5
  [263] (word~) mulf16s::$17 ← (word~) mulf16s::$13 - (word)(signed word) mulf16s::a#4
  [264] (dword) mulf16s::m#2 ← (dword) mulf16s::m#5 hi= (word~) mulf16s::$17
  to:mulf16s::@2
mulf16s::@2: scope:[mulf16s]  from mulf16s::@1 mulf16s::@4
  [265] (dword) mulf16s::m#4 ← phi( mulf16s::@1/(dword) mulf16s::m#5 mulf16s::@4/(dword) mulf16s::m#2 )
  [266] (signed dword) mulf16s::return#0 ← (signed dword)(dword) mulf16s::m#4
  to:mulf16s::@return
mulf16s::@return: scope:[mulf16s]  from mulf16s::@2
  [267] return 
  to:@return

(dword()) mulf16u((word) mulf16u::a , (word) mulf16u::b)
mulf16u: scope:[mulf16u]  from mulf16s
  [268] *((const word*) mulf16u::memA) ← (word) mulf16u::a#0
  [269] *((const word*) mulf16u::memB) ← (word) mulf16u::b#0
  asm { ldamemA stasm1a+1 stasm3a+1 stasm5a+1 stasm7a+1 eor#$ff stasm2a+1 stasm4a+1 stasm6a+1 stasm8a+1 ldamemA+1 stasm1b+1 stasm3b+1 stasm5b+1 stasm7b+1 eor#$ff stasm2b+1 stasm4b+1 stasm6b+1 stasm8b+1 ldxmemB sec sm1a: ldamulf_sqr1_lo,x sm2a: sbcmulf_sqr2_lo,x stamemR+0 sm3a: ldamulf_sqr1_hi,x sm4a: sbcmulf_sqr2_hi,x sta_AA+1 sec sm1b: ldamulf_sqr1_lo,x sm2b: sbcmulf_sqr2_lo,x sta_cc+1 sm3b: ldamulf_sqr1_hi,x sm4b: sbcmulf_sqr2_hi,x sta_CC+1 ldxmemB+1 sec sm5a: ldamulf_sqr1_lo,x sm6a: sbcmulf_sqr2_lo,x sta_bb+1 sm7a: ldamulf_sqr1_hi,x sm8a: sbcmulf_sqr2_hi,x sta_BB+1 sec sm5b: ldamulf_sqr1_lo,x sm6b: sbcmulf_sqr2_lo,x sta_dd+1 sm7b: ldamulf_sqr1_hi,x sm8b: sbcmulf_sqr2_hi,x stamemR+3 clc _AA: lda#0 _bb: adc#0 stamemR+1 _BB: lda#0 _CC: adc#0 stamemR+2 bcc!+ incmemR+3 clc !: _cc: lda#0 adcmemR+1 stamemR+1 _dd: lda#0 adcmemR+2 stamemR+2 bcc!+ incmemR+3 !:  }
  [271] (dword) mulf16u::return#0 ← *((const dword*) mulf16u::memR)
  to:mulf16u::@return
mulf16u::@return: scope:[mulf16u]  from mulf16u
  [272] return 
  to:@return

(void()) bitmap_clear((byte) bitmap_clear::bgcol , (byte) bitmap_clear::fgcol)
bitmap_clear: scope:[bitmap_clear]  from main::@2 main::@9
  [273] phi()
  [274] call memset 
  to:bitmap_clear::@1
bitmap_clear::@1: scope:[bitmap_clear]  from bitmap_clear
  [275] phi()
  [276] call memset 
  to:bitmap_clear::@return
bitmap_clear::@return: scope:[bitmap_clear]  from bitmap_clear::@1
  [277] return 
  to:@return

(void*()) memset((void*) memset::str , (byte) memset::c , (word) memset::num)
memset: scope:[memset]  from bitmap_clear bitmap_clear::@1
  [278] (byte) memset::c#4 ← phi( bitmap_clear/(const byte) bitmap_clear::col#0 bitmap_clear::@1/(byte) 0 )
  [278] (void*) memset::str#3 ← phi( bitmap_clear/(void*)(const byte*) BITMAP_SCREEN bitmap_clear::@1/(void*)(const byte*) BITMAP_GRAPHICS )
  [278] (word) memset::num#2 ← phi( bitmap_clear/(word) $3e8 bitmap_clear::@1/(word) $1f40 )
  [279] if((word) memset::num#2<=(byte) 0) goto memset::@return
  to:memset::@1
memset::@1: scope:[memset]  from memset
  [280] (byte*) memset::end#0 ← (byte*)(void*) memset::str#3 + (word) memset::num#2
  [281] (byte*) memset::dst#4 ← (byte*)(void*) memset::str#3
  to:memset::@2
memset::@2: scope:[memset]  from memset::@1 memset::@3
  [282] (byte*) memset::dst#2 ← phi( memset::@1/(byte*) memset::dst#4 memset::@3/(byte*) memset::dst#1 )
  [283] if((byte*) memset::dst#2!=(byte*) memset::end#0) goto memset::@3
  to:memset::@return
memset::@return: scope:[memset]  from memset memset::@2
  [284] return 
  to:@return
memset::@3: scope:[memset]  from memset::@2
  [285] *((byte*) memset::dst#2) ← (byte) memset::c#4
  [286] (byte*) memset::dst#1 ← ++ (byte*) memset::dst#2
  to:memset::@2

(void()) bitmap_init((byte*) bitmap_init::gfx , (byte*) bitmap_init::screen)
bitmap_init: scope:[bitmap_init]  from main::@8
  [287] phi()
  to:bitmap_init::@1
bitmap_init::@1: scope:[bitmap_init]  from bitmap_init bitmap_init::@2
  [288] (byte) bitmap_init::x#2 ← phi( bitmap_init/(byte) 0 bitmap_init::@2/(byte) bitmap_init::x#1 )
  [288] (byte) bitmap_init::bits#3 ← phi( bitmap_init/(byte) $80 bitmap_init::@2/(byte) bitmap_init::bits#4 )
  [289] *((const byte*) bitmap_plot_bit + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3
  [290] (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte) 1
  [291] if((byte) bitmap_init::bits#1!=(byte) 0) goto bitmap_init::@6
  to:bitmap_init::@2
bitmap_init::@6: scope:[bitmap_init]  from bitmap_init::@1
  [292] phi()
  to:bitmap_init::@2
bitmap_init::@2: scope:[bitmap_init]  from bitmap_init::@1 bitmap_init::@6
  [293] (byte) bitmap_init::bits#4 ← phi( bitmap_init::@6/(byte) bitmap_init::bits#1 bitmap_init::@1/(byte) $80 )
  [294] (byte) bitmap_init::x#1 ← ++ (byte) bitmap_init::x#2
  [295] if((byte) bitmap_init::x#1!=(byte) 0) goto bitmap_init::@1
  to:bitmap_init::@3
bitmap_init::@3: scope:[bitmap_init]  from bitmap_init::@2 bitmap_init::@4
  [296] (byte*) bitmap_init::yoffs#2 ← phi( bitmap_init::@2/(const byte*) BITMAP_GRAPHICS bitmap_init::@4/(byte*) bitmap_init::yoffs#4 )
  [296] (byte) bitmap_init::y#2 ← phi( bitmap_init::@2/(byte) 0 bitmap_init::@4/(byte) bitmap_init::y#1 )
  [297] (byte~) bitmap_init::$7 ← (byte) bitmap_init::y#2 & (byte) 7
  [298] (byte~) bitmap_init::$4 ← < (byte*) bitmap_init::yoffs#2
  [299] (byte~) bitmap_init::$5 ← (byte~) bitmap_init::$7 | (byte~) bitmap_init::$4
  [300] *((const byte*) bitmap_plot_ylo + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$5
  [301] (byte~) bitmap_init::$6 ← > (byte*) bitmap_init::yoffs#2
  [302] *((const byte*) bitmap_plot_yhi + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$6
  [303] if((byte~) bitmap_init::$7!=(byte) 7) goto bitmap_init::@4
  to:bitmap_init::@5
bitmap_init::@5: scope:[bitmap_init]  from bitmap_init::@3
  [304] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (word)(number) $28*(number) 8
  to:bitmap_init::@4
bitmap_init::@4: scope:[bitmap_init]  from bitmap_init::@3 bitmap_init::@5
  [305] (byte*) bitmap_init::yoffs#4 ← phi( bitmap_init::@3/(byte*) bitmap_init::yoffs#2 bitmap_init::@5/(byte*) bitmap_init::yoffs#1 )
  [306] (byte) bitmap_init::y#1 ← ++ (byte) bitmap_init::y#2
  [307] if((byte) bitmap_init::y#1!=(byte) 0) goto bitmap_init::@3
  to:bitmap_init::@return
bitmap_init::@return: scope:[bitmap_init]  from bitmap_init::@4
  [308] return 
  to:@return

(void()) mulf_init()
mulf_init: scope:[mulf_init]  from main
  [309] phi()
  to:mulf_init::@1
mulf_init::@1: scope:[mulf_init]  from mulf_init mulf_init::@3
  [310] (byte) mulf_init::x_2#3 ← phi( mulf_init/(byte) 0 mulf_init::@3/(byte) mulf_init::x_2#2 )
  [310] (byte*) mulf_init::sqr1_hi#2 ← phi( mulf_init/(const byte*) mulf_sqr1_hi+(byte) 1 mulf_init::@3/(byte*) mulf_init::sqr1_hi#1 )
  [310] (word) mulf_init::sqr#4 ← phi( mulf_init/(word) 0 mulf_init::@3/(word) mulf_init::sqr#1 )
  [310] (byte) mulf_init::c#2 ← phi( mulf_init/(byte) 0 mulf_init::@3/(byte) mulf_init::c#1 )
  [310] (byte*) mulf_init::sqr1_lo#2 ← phi( mulf_init/(const byte*) mulf_sqr1_lo+(byte) 1 mulf_init::@3/(byte*) mulf_init::sqr1_lo#1 )
  [311] if((byte*) mulf_init::sqr1_lo#2!=(const byte*) mulf_sqr1_lo+(word) $200) goto mulf_init::@2
  to:mulf_init::@5
mulf_init::@5: scope:[mulf_init]  from mulf_init::@1 mulf_init::@8
  [312] (byte) mulf_init::dir#2 ← phi( mulf_init::@8/(byte) mulf_init::dir#4 mulf_init::@1/(byte) $ff )
  [312] (byte*) mulf_init::sqr2_hi#2 ← phi( mulf_init::@8/(byte*) mulf_init::sqr2_hi#1 mulf_init::@1/(const byte*) mulf_sqr2_hi )
  [312] (byte) mulf_init::x_255#2 ← phi( mulf_init::@8/(byte) mulf_init::x_255#1 mulf_init::@1/(byte) -1 )
  [312] (byte*) mulf_init::sqr2_lo#2 ← phi( mulf_init::@8/(byte*) mulf_init::sqr2_lo#1 mulf_init::@1/(const byte*) mulf_sqr2_lo )
  [313] if((byte*) mulf_init::sqr2_lo#2!=(const byte*) mulf_sqr2_lo+(word) $1ff) goto mulf_init::@6
  to:mulf_init::@7
mulf_init::@7: scope:[mulf_init]  from mulf_init::@5
  [314] *((const byte*) mulf_sqr2_lo+(word) $1ff) ← *((const byte*) mulf_sqr1_lo+(word) $100)
  [315] *((const byte*) mulf_sqr2_hi+(word) $1ff) ← *((const byte*) mulf_sqr1_hi+(word) $100)
  to:mulf_init::@return
mulf_init::@return: scope:[mulf_init]  from mulf_init::@7
  [316] return 
  to:@return
mulf_init::@6: scope:[mulf_init]  from mulf_init::@5
  [317] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte*) mulf_sqr1_lo + (byte) mulf_init::x_255#2)
  [318] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte*) mulf_sqr1_hi + (byte) mulf_init::x_255#2)
  [319] (byte*) mulf_init::sqr2_hi#1 ← ++ (byte*) mulf_init::sqr2_hi#2
  [320] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2
  [321] if((byte) mulf_init::x_255#1!=(byte) 0) goto mulf_init::@9
  to:mulf_init::@8
mulf_init::@9: scope:[mulf_init]  from mulf_init::@6
  [322] phi()
  to:mulf_init::@8
mulf_init::@8: scope:[mulf_init]  from mulf_init::@6 mulf_init::@9
  [323] (byte) mulf_init::dir#4 ← phi( mulf_init::@9/(byte) mulf_init::dir#2 mulf_init::@6/(byte) 1 )
  [324] (byte*) mulf_init::sqr2_lo#1 ← ++ (byte*) mulf_init::sqr2_lo#2
  to:mulf_init::@5
mulf_init::@2: scope:[mulf_init]  from mulf_init::@1
  [325] (byte) mulf_init::c#1 ← ++ (byte) mulf_init::c#2
  [326] (byte~) mulf_init::$1 ← (byte) mulf_init::c#1 & (byte) 1
  [327] if((byte~) mulf_init::$1!=(byte) 0) goto mulf_init::@3
  to:mulf_init::@4
mulf_init::@4: scope:[mulf_init]  from mulf_init::@2
  [328] (byte) mulf_init::x_2#1 ← ++ (byte) mulf_init::x_2#3
  [329] (word) mulf_init::sqr#2 ← ++ (word) mulf_init::sqr#4
  to:mulf_init::@3
mulf_init::@3: scope:[mulf_init]  from mulf_init::@2 mulf_init::@4
  [330] (byte) mulf_init::x_2#2 ← phi( mulf_init::@2/(byte) mulf_init::x_2#3 mulf_init::@4/(byte) mulf_init::x_2#1 )
  [330] (word) mulf_init::sqr#3 ← phi( mulf_init::@2/(word) mulf_init::sqr#4 mulf_init::@4/(word) mulf_init::sqr#2 )
  [331] (byte~) mulf_init::$4 ← < (word) mulf_init::sqr#3
  [332] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$4
  [333] (byte~) mulf_init::$5 ← > (word) mulf_init::sqr#3
  [334] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$5
  [335] (byte*) mulf_init::sqr1_hi#1 ← ++ (byte*) mulf_init::sqr1_hi#2
  [336] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2
  [337] (byte*) mulf_init::sqr1_lo#1 ← ++ (byte*) mulf_init::sqr1_lo#2
  to:mulf_init::@1
