
void main()
main: scope:[main]  from
  [0] phi()
  to:main::@1
main::@1: scope:[main]  from main main::@3
  [1] idx#31 = phi( main/0, main::@3/idx#11 )
  [1] main::sw#2 = phi( main/-$14, main::@3/main::sw#1 )
  [2] outsw::sw#0 = main::sw#2
  [3] call outsw
  to:main::@3
main::@3: scope:[main]  from main::@1
  [4] main::sw#1 = ++ main::sw#2
  [5] if(main::sw#1!=$14) goto main::@1
  to:main::@2
main::@2: scope:[main]  from main::@3 main::@4
  [6] main::w#2 = phi( main::@3/0, main::@4/main::w#1 )
  [7] outw::w#0 = main::w#2
  [8] call outw
  to:main::@4
main::@4: scope:[main]  from main::@2
  [9] main::w#1 = ++ main::w#2
  [10] if(main::w#1!=$28) goto main::@2
  to:main::@return
main::@return: scope:[main]  from main::@4
  [11] return 
  to:@return

void outsw(int sw)
outsw: scope:[outsw]  from main::@1
  [12] if(outsw::sw#0>=0) goto outsw::@1
  to:outsw::@2
outsw::@2: scope:[outsw]  from outsw
  [13] phi()
  [14] call out
  to:outsw::@3
outsw::@3: scope:[outsw]  from outsw::@2
  [15] outsw::sw#1 = - outsw::sw#0
  to:outsw::@1
outsw::@1: scope:[outsw]  from outsw outsw::@3
  [16] idx#33 = phi( outsw/idx#31, outsw::@3/idx#11 )
  [16] outsw::sw#3 = phi( outsw/outsw::sw#0, outsw::@3/outsw::sw#1 )
  [17] outw::w#1 = (unsigned int)outsw::sw#3
  [18] call outw
  to:outsw::@return
outsw::@return: scope:[outsw]  from outsw::@1
  [19] return 
  to:@return

void outw(unsigned int w)
outw: scope:[outw]  from main::@2 outsw::@1
  [20] idx#35 = phi( main::@2/idx#11, outsw::@1/idx#33 )
  [20] outw::w#2 = phi( main::@2/outw::w#0, outsw::@1/outw::w#1 )
  [21] outw::$0 = byte1  outw::w#2
  [22] outw::$1 = outw::$0 << 4
  [23] out::c#1 = HEXTAB[outw::$1]
  [24] call out
  to:outw::@1
outw::@1: scope:[outw]  from outw
  [25] outw::$3 = byte1  outw::w#2
  [26] outw::$4 = outw::$3 & $f
  [27] out::c#2 = HEXTAB[outw::$4]
  [28] call out
  to:outw::@2
outw::@2: scope:[outw]  from outw::@1
  [29] outw::$6 = byte0  outw::w#2
  [30] outw::$7 = outw::$6 << 4
  [31] out::c#3 = HEXTAB[outw::$7]
  [32] call out
  to:outw::@3
outw::@3: scope:[outw]  from outw::@2
  [33] outw::$9 = byte0  outw::w#2
  [34] outw::$10 = outw::$9 & $f
  [35] out::c#4 = HEXTAB[outw::$10]
  [36] call out
  to:outw::@return
outw::@return: scope:[outw]  from outw::@3
  [37] return 
  to:@return

void out(char c)
out: scope:[out]  from outsw::@2 outw outw::@1 outw::@2 outw::@3
  [38] out::c#5 = phi( outsw::@2/'-', outw/out::c#1, outw::@1/out::c#2, outw::@2/out::c#3, outw::@3/out::c#4 )
  [38] idx#27 = phi( outsw::@2/idx#31, outw/idx#35, outw::@1/idx#11, outw::@2/idx#11, outw::@3/idx#11 )
  [39] idx#11 = ++ idx#27
  [40] SCREEN[idx#11] = out::c#5
  to:out::@return
out::@return: scope:[out]  from out
  [41] return 
  to:@return
