
void __start()
__start: scope:[__start]  from
  [0] phi()
  to:__start::__init1
__start::__init1: scope:[__start]  from __start
  [1] pacman_ch1_enabled = 0
  [2] pacman_ch1_idx = 0
  [3] logic_tile_ptr = (volatile char *) 0
  [4] logic_tile_xcol = 0
  [5] logic_tile_yfine = 0
  [6] logic_tile_left_idx = 0
  [7] logic_tile_right_idx = 0
  [8] left_render_index_xcol = (char *) 0
  [9] left_canvas = (char *) 0
  [10] left_ypos_inc_offset = 0
  [11] rigt_render_index_xcol = (char *) 0
  [12] rigt_canvas = (char *) 0
  [13] rigt_ypos_inc_offset = 0
  [14] canvas_base_hi = 0
  [15] bobs_restore_base = 0
  [16] top_sprites_color = 0
  [17] top_sprites_mc = 0
  [18] side_sprites_color = 0
  [19] side_sprites_mc = 0
  [20] bottom_sprites_color = 0
  [21] bottom_sprites_mc = 0
  [22] pill_count = 0
  [23] pacman_wins = 0
  [24] pacman_lives = 3
  [25] music_play_next = 0
  [26] phase = 0
  [27] frame = 0
  [28] anim_frame_idx = 0
  [29] pacman_xfine = $2d
  [30] pacman_yfine = $23
  [31] pacman_direction = STOP
  [32] pacman_substep = 0
  [33] ghosts_mode = 1
  [34] ghosts_mode_count = 0
  [35] ghost1_xfine = $2d
  [36] ghost1_yfine = $23
  [37] ghost1_direction = STOP
  [38] ghost1_substep = 0
  [39] ghost1_reverse = 0
  [40] ghost1_respawn = 0
  [41] ghost2_xfine = $2d
  [42] ghost2_yfine = $23
  [43] ghost2_direction = STOP
  [44] ghost2_substep = 0
  [45] ghost2_reverse = 0
  [46] ghost2_respawn = 0
  [47] ghost3_xfine = $2d
  [48] ghost3_yfine = $23
  [49] ghost3_direction = STOP
  [50] ghost3_substep = 0
  [51] ghost3_reverse = 0
  [52] ghost3_respawn = 0
  [53] ghost4_xfine = $2d
  [54] ghost4_yfine = $23
  [55] ghost4_direction = STOP
  [56] ghost4_substep = 0
  [57] ghost4_reverse = 0
  [58] ghost4_respawn = 0
  [59] game_logic_substep = 0
  [60] game_playable = 0
  to:__start::@1
__start::@1: scope:[__start]  from __start::__init1
  [61] phi()
  [62] call main
  to:__start::@return
__start::@return: scope:[__start]  from __start::@1
  [63] return 
  to:@return

__interrupt(hardware_clobber) void irq_screen_top()
irq_screen_top: scope:[irq_screen_top]  from
  kickasm( uses HARDWARE_IRQ uses RASTER uses IRQ_STATUS uses IRQ_RASTER uses VICII_CONTROL1 uses VICII_RSEL uses VICII_MEMORY) {{ // Stabilize the raster by using the double IRQ method
        // Acknowledge the IRQ
        lda #IRQ_RASTER
        sta IRQ_STATUS
        // Set-up IRQ for the next line
        inc RASTER
        // Point IRQ to almost stable code
        lda #<stable
        sta HARDWARE_IRQ
        lda #>stable
        sta HARDWARE_IRQ+1
        tsx       // Save stack pointer
        cli       // Reenable interrupts
        // Wait for new IRQ using NOP's to ensure minimal jitter when it hits
        .fill 15, NOP
        .align $20
    stable:
        txs             // Restore stack pointer
        ldx #9          // Wait till the raster has almost crossed to the next line (48 cycles)
        !: dex
        bne !-
        nop
        lda RASTER
        cmp RASTER
        bne !+          // And correct the last cycle of potential jitter
        !:
        // Raster is now completely stable! (Line 0x007 cycle 7)
     }}
  asm { jsrRASTER_CODE  }
  [66] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_SPRITE0_Y) = 7
  [67] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_SPRITE1_Y) = 7
  [68] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_SPRITE2_Y) = 7
  [69] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_SPRITE3_Y) = 7
  [70] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_SPRITE4_Y) = 7
  [71] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_SPRITE5_Y) = 7
  [72] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_SPRITE6_Y) = 7
  [73] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_SPRITE7_Y) = 7
  to:irq_screen_top::toD0181
irq_screen_top::toD0181: scope:[irq_screen_top]  from irq_screen_top
  [74] phi()
  to:irq_screen_top::@5
irq_screen_top::@5: scope:[irq_screen_top]  from irq_screen_top::toD0181
  [75] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_MEMORY) = irq_screen_top::toD0181_return#0
  [76] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_SPRITES_MC) = top_sprites_mc
  [77] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_SPRITE0_COLOR) = top_sprites_color
  [78] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_SPRITE1_COLOR) = top_sprites_color
  [79] irq_screen_top::$1 = frame + 1
  [80] irq_screen_top::$2 = irq_screen_top::$1 & 1
  [81] frame = irq_screen_top::$2
  [82] if(0!=frame) goto irq_screen_top::toDd001
  to:irq_screen_top::toDd002
irq_screen_top::toDd002: scope:[irq_screen_top]  from irq_screen_top::@5
  [83] phi()
  to:irq_screen_top::@7
irq_screen_top::@7: scope:[irq_screen_top]  from irq_screen_top::toDd002
  [84] *((char *)CIA2) = irq_screen_top::toDd002_return#0
  [85] canvas_base_hi = byte1 SPRITES_2
  [86] bobs_restore_base = NUM_BOBS*SIZE_BOB_RESTORE
  to:irq_screen_top::@1
irq_screen_top::@1: scope:[irq_screen_top]  from irq_screen_top::@6 irq_screen_top::@7
  [87] if(phase==0) goto irq_screen_top::@2
  to:irq_screen_top::@4
irq_screen_top::@4: scope:[irq_screen_top]  from irq_screen_top::@1
  [88] phi()
  [89] call game_logic
  to:irq_screen_top::@8
irq_screen_top::@8: scope:[irq_screen_top]  from irq_screen_top::@4
  [90] phi()
  [91] call pacman_sound_play
  to:irq_screen_top::@3
irq_screen_top::@3: scope:[irq_screen_top]  from irq_screen_top::@2 irq_screen_top::@8
  [92] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_IRQ_STATUS) = IRQ_RASTER
  [93] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_RASTER) = IRQ_SCREEN_TOP_LINE
  [94] *HARDWARE_IRQ = &irq_screen_top
  to:irq_screen_top::@return
irq_screen_top::@return: scope:[irq_screen_top]  from irq_screen_top::@3
  [95] return 
  to:@return
irq_screen_top::@2: scope:[irq_screen_top]  from irq_screen_top::@1
  [96] music_play_next = 1
  to:irq_screen_top::@3
irq_screen_top::toDd001: scope:[irq_screen_top]  from irq_screen_top::@5
  [97] phi()
  to:irq_screen_top::@6
irq_screen_top::@6: scope:[irq_screen_top]  from irq_screen_top::toDd001
  [98] *((char *)CIA2) = irq_screen_top::toDd001_return#0
  [99] canvas_base_hi = byte1 SPRITES_1
  [100] bobs_restore_base = 0
  to:irq_screen_top::@1

void main()
main: scope:[main]  from __start::@1
  [101] phi()
  [102] call splash_run
  to:main::@1
main::@1: scope:[main]  from main main::@2
  [103] phi()
  [104] call gameplay_run
  to:main::@2
main::@2: scope:[main]  from main::@1
  [105] phi()
  [106] call done_run
  to:main::@1

void game_logic()
game_logic: scope:[game_logic]  from irq_screen_top::@4
  [107] if(game_playable!=0) goto game_logic::@1
  to:game_logic::@return
game_logic::@return: scope:[game_logic]  from game_logic game_logic::@103 game_logic::@104 game_logic::@105 game_logic::@106 game_logic::@112 game_logic::@113 game_logic::@115 game_logic::@120 game_logic::@121 game_logic::@122 game_logic::@123 game_logic::@129 game_logic::@130 game_logic::@132 game_logic::@137 game_logic::@138 game_logic::@139 game_logic::@145 game_logic::@146 game_logic::@150 game_logic::@151 game_logic::@153 game_logic::@155 game_logic::@157 game_logic::@159 game_logic::@161 game_logic::@165 game_logic::@44 game_logic::@54 game_logic::@55 game_logic::@56 game_logic::@57 game_logic::@66 game_logic::@68 game_logic::@69 game_logic::@70 game_logic::@71 game_logic::@72 game_logic::@78 game_logic::@79 game_logic::@81 game_logic::@86 game_logic::@87 game_logic::@88 game_logic::@89 game_logic::@95 game_logic::@96 game_logic::@98
  [108] return 
  to:@return
game_logic::@1: scope:[game_logic]  from game_logic
  [109] game_logic::$2 = game_logic_substep + 1
  [110] game_logic::$3 = game_logic::$2 & 7
  [111] game_logic_substep = game_logic::$3
  [112] if(game_logic_substep==0) goto game_logic::@2
  to:game_logic::@8
game_logic::@8: scope:[game_logic]  from game_logic::@1
  [113] if(game_logic_substep==1) goto game_logic::@3
  to:game_logic::@9
game_logic::@9: scope:[game_logic]  from game_logic::@8
  [114] if(game_logic_substep==2) goto game_logic::@4
  to:game_logic::@10
game_logic::@10: scope:[game_logic]  from game_logic::@9
  [115] if(game_logic_substep==4) goto game_logic::@5
  to:game_logic::@11
game_logic::@11: scope:[game_logic]  from game_logic::@10
  [116] if(game_logic_substep==5) goto game_logic::@6
  to:game_logic::@12
game_logic::@12: scope:[game_logic]  from game_logic::@11
  [117] if(game_logic_substep==6) goto game_logic::@7
  to:game_logic::@13
game_logic::@13: scope:[game_logic]  from game_logic::@12
  [118] if(game_logic_substep==3) goto game_logic::@14
  to:game_logic::@161
game_logic::@161: scope:[game_logic]  from game_logic::@13
  [119] if(game_logic_substep==7) goto game_logic::@14
  to:game_logic::@return
game_logic::@14: scope:[game_logic]  from game_logic::@13 game_logic::@161
  [120] game_logic::$14 = anim_frame_idx + 1
  [121] game_logic::$15 = game_logic::$14 & 3
  [122] anim_frame_idx = game_logic::$15
  [123] game_logic::pacman_bob_xfine#0 = pacman_xfine - 1
  [124] game_logic::$17 = game_logic::pacman_bob_xfine#0 >> 2
  [125] *bobs_xcol = game_logic::$17
  [126] game_logic::$18 = pacman_yfine - 1
  [127] *bobs_yfine = game_logic::$18
  [128] game_logic::$19 = pacman_direction | anim_frame_idx
  [129] game_logic::$20 = game_logic::pacman_bob_xfine#0 & 3
  [130] game_logic::$21 = pacman_frames[game_logic::$19] + game_logic::$20
  [131] *bobs_bob_id = game_logic::$21
  [132] game_logic::ghost_frame_idx#0 = anim_frame_idx
  [133] if(ghosts_mode!=FRIGHTENED) goto game_logic::@44
  to:game_logic::@15
game_logic::@15: scope:[game_logic]  from game_logic::@14
  [134] game_logic::ghost_frame_idx#1 = game_logic::ghost_frame_idx#0 | $40
  to:game_logic::@44
game_logic::@44: scope:[game_logic]  from game_logic::@14 game_logic::@15
  [135] game_logic::ghost_frame_idx#2 = phi( game_logic::@14/game_logic::ghost_frame_idx#0, game_logic::@15/game_logic::ghost_frame_idx#1 )
  [136] game_logic::ghost1_bob_xfine#0 = ghost1_xfine - 1
  [137] game_logic::$25 = game_logic::ghost1_bob_xfine#0 >> 2
  [138] *(bobs_xcol+1) = game_logic::$25
  [139] game_logic::$26 = ghost1_yfine - 1
  [140] *(bobs_yfine+1) = game_logic::$26
  [141] game_logic::$27 = ghost1_direction | game_logic::ghost_frame_idx#2
  [142] game_logic::$28 = game_logic::ghost1_bob_xfine#0 & 3
  [143] game_logic::$29 = ghost_frames[game_logic::$27] + game_logic::$28
  [144] *(bobs_bob_id+1) = game_logic::$29
  [145] game_logic::ghost2_bob_xfine#0 = ghost2_xfine - 1
  [146] game_logic::$31 = game_logic::ghost2_bob_xfine#0 >> 2
  [147] *(bobs_xcol+2) = game_logic::$31
  [148] game_logic::$32 = ghost2_yfine - 1
  [149] *(bobs_yfine+2) = game_logic::$32
  [150] game_logic::$33 = ghost2_direction | game_logic::ghost_frame_idx#2
  [151] game_logic::$34 = game_logic::ghost2_bob_xfine#0 & 3
  [152] game_logic::$35 = ghost_frames[game_logic::$33] + game_logic::$34
  [153] *(bobs_bob_id+2) = game_logic::$35
  [154] game_logic::ghost3_bob_xfine#0 = ghost3_xfine - 1
  [155] game_logic::$37 = game_logic::ghost3_bob_xfine#0 >> 2
  [156] *(bobs_xcol+3) = game_logic::$37
  [157] game_logic::$38 = ghost3_yfine - 1
  [158] *(bobs_yfine+3) = game_logic::$38
  [159] game_logic::$39 = ghost3_direction | game_logic::ghost_frame_idx#2
  [160] game_logic::$40 = game_logic::ghost3_bob_xfine#0 & 3
  [161] game_logic::$41 = ghost_frames[game_logic::$39] + game_logic::$40
  [162] *(bobs_bob_id+3) = game_logic::$41
  [163] game_logic::ghost4_bob_xfine#0 = ghost4_xfine - 1
  [164] game_logic::$43 = game_logic::ghost4_bob_xfine#0 >> 2
  [165] *(bobs_xcol+4) = game_logic::$43
  [166] game_logic::$44 = ghost4_yfine - 1
  [167] *(bobs_yfine+4) = game_logic::$44
  [168] game_logic::$45 = ghost4_direction | game_logic::ghost_frame_idx#2
  [169] game_logic::$46 = game_logic::ghost4_bob_xfine#0 & 3
  [170] game_logic::$47 = ghost_frames[game_logic::$45] + game_logic::$46
  [171] *(bobs_bob_id+4) = game_logic::$47
  to:game_logic::@return
game_logic::@7: scope:[game_logic]  from game_logic::@12
  [172] ghosts_mode_count = ++ ghosts_mode_count
  [173] if(ghosts_mode==SCATTER) goto game_logic::@45
  to:game_logic::@16
game_logic::@16: scope:[game_logic]  from game_logic::@7
  [174] if(ghosts_mode==CHASE) goto game_logic::@46
  to:game_logic::@17
game_logic::@17: scope:[game_logic]  from game_logic::@16
  [175] if(ghosts_mode!=FRIGHTENED) goto game_logic::@47
  to:game_logic::@18
game_logic::@18: scope:[game_logic]  from game_logic::@17
  [176] if(ghosts_mode_count<$32+1) goto game_logic::@47
  to:game_logic::@19
game_logic::@19: scope:[game_logic]  from game_logic::@18
  [177] ghosts_mode = CHASE
  [178] ghosts_mode_count = 0
  to:game_logic::@47
game_logic::@47: scope:[game_logic]  from game_logic::@17 game_logic::@18 game_logic::@19 game_logic::@45 game_logic::@46 game_logic::@58 game_logic::@59
  [179] game_logic::do_reverse#4 = phi( game_logic::@17/0, game_logic::@18/0, game_logic::@19/1, game_logic::@45/0, game_logic::@46/0, game_logic::@58/1, game_logic::@59/1 )
  [180] if(0==game_logic::do_reverse#4) goto game_logic::@48
  to:game_logic::@60
game_logic::@60: scope:[game_logic]  from game_logic::@47
  [181] ghost1_reverse = 1
  [182] ghost2_reverse = 1
  [183] ghost3_reverse = 1
  [184] ghost4_reverse = 1
  to:game_logic::@48
game_logic::@48: scope:[game_logic]  from game_logic::@47 game_logic::@60
  [185] game_logic::pacman_xtile#0 = pacman_xfine >> 1
  [186] game_logic::pacman_ytile#0 = pacman_yfine >> 1
  [187] game_logic::$210 = game_logic::pacman_ytile#0 << 1
  [188] game_logic::ytiles#0 = LEVEL_TILES + LEVEL_YTILE_OFFSET[game_logic::$210]
  [189] game_logic::tile_id#0 = game_logic::ytiles#0[game_logic::pacman_xtile#0]
  [190] if(TILES_TYPE[game_logic::tile_id#0]==PILL) goto game_logic::@49
  to:game_logic::@61
game_logic::@61: scope:[game_logic]  from game_logic::@48
  [191] if(TILES_TYPE[game_logic::tile_id#0]!=POWERUP) goto game_logic::@50
  to:game_logic::@62
game_logic::@62: scope:[game_logic]  from game_logic::@61
  [192] game_logic::ytiles#0[game_logic::pacman_xtile#0] = EMPTY
  [193] game_logic::$65 = game_logic::pacman_xtile#0 >> 1
  [194] logic_tile_xcol = game_logic::$65
  [195] game_logic::$66 = game_logic::pacman_xtile#0 & $fe
  [196] game_logic::$67 = game_logic::ytiles#0 + game_logic::$66
  [197] logic_tile_ptr = game_logic::$67
  [198] game_logic::$68 = game_logic::$210
  [199] logic_tile_yfine = game_logic::$68
  [200] ghosts_mode = FRIGHTENED
  [201] ghosts_mode_count = 0
  to:game_logic::@50
game_logic::@50: scope:[game_logic]  from game_logic::@49 game_logic::@61 game_logic::@62 game_logic::@63
  [202] game_logic::$75 = pacman_xfine - ghost1_xfine
  [203] game_logic::$77 = pacman_yfine - ghost1_yfine
  [204] if(ABS[game_logic::$75]>=2) goto game_logic::@64
  to:game_logic::@162
game_logic::@162: scope:[game_logic]  from game_logic::@50
  [205] if(ABS[game_logic::$77]<2) goto game_logic::@51
  to:game_logic::@64
game_logic::@64: scope:[game_logic]  from game_logic::@162 game_logic::@50
  [206] game_logic::$80 = pacman_xfine - ghost2_xfine
  [207] game_logic::$82 = pacman_yfine - ghost2_yfine
  [208] if(ABS[game_logic::$80]>=2) goto game_logic::@65
  to:game_logic::@163
game_logic::@163: scope:[game_logic]  from game_logic::@64
  [209] if(ABS[game_logic::$82]<2) goto game_logic::@52
  to:game_logic::@65
game_logic::@65: scope:[game_logic]  from game_logic::@163 game_logic::@64
  [210] game_logic::$85 = pacman_xfine - ghost3_xfine
  [211] game_logic::$87 = pacman_yfine - ghost3_yfine
  [212] if(ABS[game_logic::$85]>=2) goto game_logic::@66
  to:game_logic::@164
game_logic::@164: scope:[game_logic]  from game_logic::@65
  [213] if(ABS[game_logic::$87]<2) goto game_logic::@53
  to:game_logic::@66
game_logic::@66: scope:[game_logic]  from game_logic::@164 game_logic::@65
  [214] game_logic::$90 = pacman_xfine - ghost4_xfine
  [215] game_logic::$92 = pacman_yfine - ghost4_yfine
  [216] if(ABS[game_logic::$90]>=2) goto game_logic::@return
  to:game_logic::@165
game_logic::@165: scope:[game_logic]  from game_logic::@66
  [217] if(ABS[game_logic::$92]<2) goto game_logic::@67
  to:game_logic::@return
game_logic::@67: scope:[game_logic]  from game_logic::@165
  [218] if(ghosts_mode==FRIGHTENED) goto game_logic::@54
  to:game_logic::@68
game_logic::@68: scope:[game_logic]  from game_logic::@67
  [219] pacman_lives = -- pacman_lives
  [220] call spawn_all
  to:game_logic::@return
game_logic::@54: scope:[game_logic]  from game_logic::@67
  [221] ghost4_direction = STOP
  [222] ghost4_xfine = $32
  [223] ghost4_yfine = $23
  [224] ghost4_substep = 0
  [225] ghost4_respawn = $32
  to:game_logic::@return
game_logic::@53: scope:[game_logic]  from game_logic::@164
  [226] if(ghosts_mode==FRIGHTENED) goto game_logic::@55
  to:game_logic::@69
game_logic::@69: scope:[game_logic]  from game_logic::@53
  [227] pacman_lives = -- pacman_lives
  [228] call spawn_all
  to:game_logic::@return
game_logic::@55: scope:[game_logic]  from game_logic::@53
  [229] ghost3_direction = STOP
  [230] ghost3_xfine = $32
  [231] ghost3_yfine = $23
  [232] ghost3_substep = 0
  [233] ghost3_respawn = $32
  to:game_logic::@return
game_logic::@52: scope:[game_logic]  from game_logic::@163
  [234] if(ghosts_mode==FRIGHTENED) goto game_logic::@56
  to:game_logic::@70
game_logic::@70: scope:[game_logic]  from game_logic::@52
  [235] pacman_lives = -- pacman_lives
  [236] call spawn_all
  to:game_logic::@return
game_logic::@56: scope:[game_logic]  from game_logic::@52
  [237] ghost2_direction = STOP
  [238] ghost2_xfine = $32
  [239] ghost2_yfine = $23
  [240] ghost2_substep = 0
  [241] ghost2_respawn = $32
  to:game_logic::@return
game_logic::@51: scope:[game_logic]  from game_logic::@162
  [242] if(ghosts_mode==FRIGHTENED) goto game_logic::@57
  to:game_logic::@71
game_logic::@71: scope:[game_logic]  from game_logic::@51
  [243] pacman_lives = -- pacman_lives
  [244] call spawn_all
  to:game_logic::@return
game_logic::@57: scope:[game_logic]  from game_logic::@51
  [245] ghost1_direction = STOP
  [246] ghost1_xfine = $32
  [247] ghost1_yfine = $23
  [248] ghost1_substep = 0
  [249] ghost1_respawn = $32
  to:game_logic::@return
game_logic::@49: scope:[game_logic]  from game_logic::@48
  [250] game_logic::ytiles#0[game_logic::pacman_xtile#0] = EMPTY
  [251] game_logic::$69 = game_logic::pacman_xtile#0 >> 1
  [252] logic_tile_xcol = game_logic::$69
  [253] game_logic::$70 = game_logic::pacman_xtile#0 & $fe
  [254] game_logic::$71 = game_logic::ytiles#0 + game_logic::$70
  [255] logic_tile_ptr = game_logic::$71
  [256] game_logic::$72 = game_logic::$210
  [257] logic_tile_yfine = game_logic::$72
  [258] pill_count = -- pill_count
  [259] if(pill_count!=0) goto game_logic::@50
  to:game_logic::@63
game_logic::@63: scope:[game_logic]  from game_logic::@49
  [260] pacman_wins = 1
  to:game_logic::@50
game_logic::@46: scope:[game_logic]  from game_logic::@16
  [261] if(ghosts_mode_count<$96+1) goto game_logic::@47
  to:game_logic::@58
game_logic::@58: scope:[game_logic]  from game_logic::@46
  [262] ghosts_mode = SCATTER
  [263] ghosts_mode_count = 0
  to:game_logic::@47
game_logic::@45: scope:[game_logic]  from game_logic::@7
  [264] if(ghosts_mode_count<$32+1) goto game_logic::@47
  to:game_logic::@59
game_logic::@59: scope:[game_logic]  from game_logic::@45
  [265] ghosts_mode = CHASE
  [266] ghosts_mode_count = 0
  to:game_logic::@47
game_logic::@6: scope:[game_logic]  from game_logic::@11
  [267] if(0!=ghost4_respawn) goto game_logic::@72
  to:game_logic::@20
game_logic::@20: scope:[game_logic]  from game_logic::@6
  [268] if(ghost4_direction==RIGHT) goto game_logic::@73
  to:game_logic::@21
game_logic::@21: scope:[game_logic]  from game_logic::@20
  [269] if(ghost4_direction==DOWN) goto game_logic::@74
  to:game_logic::@22
game_logic::@22: scope:[game_logic]  from game_logic::@21
  [270] if(ghost4_direction==LEFT) goto game_logic::@75
  to:game_logic::@23
game_logic::@23: scope:[game_logic]  from game_logic::@22
  [271] if(ghost4_direction!=UP) goto game_logic::@76
  to:game_logic::@24
game_logic::@24: scope:[game_logic]  from game_logic::@23
  [272] ghost4_yfine = -- ghost4_yfine
  to:game_logic::@76
game_logic::@76: scope:[game_logic]  from game_logic::@23 game_logic::@24 game_logic::@73 game_logic::@74 game_logic::@75
  [273] game_logic::$220 = ghost4_direction
  [274] if(ghost4_substep!=0) goto game_logic::@82
  to:game_logic::@166
game_logic::@166: scope:[game_logic]  from game_logic::@76
  [275] if(game_logic::$220!=STOP) goto game_logic::@77
  to:game_logic::@82
game_logic::@82: scope:[game_logic]  from game_logic::@166 game_logic::@76
  [276] ghost4_substep = 0
  [277] if(0!=ghost4_reverse) goto game_logic::@78
  to:game_logic::@83
game_logic::@83: scope:[game_logic]  from game_logic::@82
  [278] game_logic::ghost4_xtile#0 = ghost4_xfine >> 1
  [279] game_logic::ghost4_ytile#0 = ghost4_yfine >> 1
  [280] level_tile_directions::xtile#0 = game_logic::ghost4_xtile#0
  [281] level_tile_directions::ytile#0 = game_logic::ghost4_ytile#0
  [282] call level_tile_directions
  [283] level_tile_directions::return#3 = level_tile_directions::return#2
  to:game_logic::@152
game_logic::@152: scope:[game_logic]  from game_logic::@83
  [284] game_logic::open_directions#0 = level_tile_directions::return#3
  [285] game_logic::open_directions#1 = game_logic::open_directions#0 & DIRECTION_ELIMINATE[ghost4_direction]
  [286] if(ghosts_mode==FRIGHTENED) goto game_logic::@79
  to:game_logic::@84
game_logic::@84: scope:[game_logic]  from game_logic::@152
  [287] if(ghosts_mode==SCATTER) goto game_logic::@80
  to:game_logic::@85
game_logic::@85: scope:[game_logic]  from game_logic::@84
  [288] game_logic::target_xtile#2 = pacman_xfine >> 1
  [289] game_logic::target_ytile#2 = pacman_yfine >> 1
  to:game_logic::@80
game_logic::@80: scope:[game_logic]  from game_logic::@84 game_logic::@85
  [290] game_logic::target_ytile#3 = phi( game_logic::@84/2, game_logic::@85/game_logic::target_ytile#2 )
  [290] game_logic::target_xtile#3 = phi( game_logic::@84/2, game_logic::@85/game_logic::target_xtile#2 )
  [291] choose_direction::open_directions#0 = game_logic::open_directions#1
  [292] choose_direction::ghost_xtile#0 = game_logic::ghost4_xtile#0
  [293] choose_direction::ghost_ytile#0 = game_logic::ghost4_ytile#0
  [294] choose_direction::target_xtile#0 = game_logic::target_xtile#3
  [295] choose_direction::target_ytile#0 = game_logic::target_ytile#3
  [296] call choose_direction
  [297] choose_direction::return#0 = choose_direction::return#10
  to:game_logic::@153
game_logic::@153: scope:[game_logic]  from game_logic::@80
  [298] game_logic::$119 = choose_direction::return#0
  [299] ghost4_direction = game_logic::$119
  to:game_logic::@return
game_logic::@79: scope:[game_logic]  from game_logic::@152
  [300] ghost4_direction = DIRECTION_SINGLE[game_logic::open_directions#1]
  to:game_logic::@return
game_logic::@78: scope:[game_logic]  from game_logic::@82
  [301] ghost4_direction = DIRECTION_REVERSE[ghost4_direction]
  [302] ghost4_reverse = 0
  to:game_logic::@return
game_logic::@77: scope:[game_logic]  from game_logic::@166
  [303] ghost4_substep = 1
  [304] if(ghost4_xfine==1) goto game_logic::@81
  to:game_logic::@86
game_logic::@86: scope:[game_logic]  from game_logic::@77
  [305] if(ghost4_xfine!=$61) goto game_logic::@return
  to:game_logic::@87
game_logic::@87: scope:[game_logic]  from game_logic::@86
  [306] ghost4_xfine = 1
  to:game_logic::@return
game_logic::@81: scope:[game_logic]  from game_logic::@77
  [307] ghost4_xfine = $61
  to:game_logic::@return
game_logic::@75: scope:[game_logic]  from game_logic::@22
  [308] ghost4_xfine = -- ghost4_xfine
  to:game_logic::@76
game_logic::@74: scope:[game_logic]  from game_logic::@21
  [309] ghost4_yfine = ++ ghost4_yfine
  to:game_logic::@76
game_logic::@73: scope:[game_logic]  from game_logic::@20
  [310] ghost4_xfine = ++ ghost4_xfine
  to:game_logic::@76
game_logic::@72: scope:[game_logic]  from game_logic::@6
  [311] ghost4_respawn = -- ghost4_respawn
  [312] if(ghost4_respawn!=0) goto game_logic::@return
  to:game_logic::@88
game_logic::@88: scope:[game_logic]  from game_logic::@72
  [313] ghost4_direction = RIGHT
  [314] ghost4_xfine = 2
  [315] ghost4_yfine = 2
  [316] ghost4_substep = 0
  to:game_logic::@return
game_logic::@5: scope:[game_logic]  from game_logic::@10
  [317] if(0!=ghost3_respawn) goto game_logic::@89
  to:game_logic::@25
game_logic::@25: scope:[game_logic]  from game_logic::@5
  [318] if(ghost3_direction==RIGHT) goto game_logic::@90
  to:game_logic::@26
game_logic::@26: scope:[game_logic]  from game_logic::@25
  [319] if(ghost3_direction==DOWN) goto game_logic::@91
  to:game_logic::@27
game_logic::@27: scope:[game_logic]  from game_logic::@26
  [320] if(ghost3_direction==LEFT) goto game_logic::@92
  to:game_logic::@28
game_logic::@28: scope:[game_logic]  from game_logic::@27
  [321] if(ghost3_direction!=UP) goto game_logic::@93
  to:game_logic::@29
game_logic::@29: scope:[game_logic]  from game_logic::@28
  [322] ghost3_yfine = -- ghost3_yfine
  to:game_logic::@93
game_logic::@93: scope:[game_logic]  from game_logic::@28 game_logic::@29 game_logic::@90 game_logic::@91 game_logic::@92
  [323] game_logic::$223 = ghost3_direction
  [324] if(ghost3_substep!=0) goto game_logic::@99
  to:game_logic::@167
game_logic::@167: scope:[game_logic]  from game_logic::@93
  [325] if(game_logic::$223!=STOP) goto game_logic::@94
  to:game_logic::@99
game_logic::@99: scope:[game_logic]  from game_logic::@167 game_logic::@93
  [326] ghost3_substep = 0
  [327] if(0!=ghost3_reverse) goto game_logic::@95
  to:game_logic::@100
game_logic::@100: scope:[game_logic]  from game_logic::@99
  [328] game_logic::ghost3_xtile#0 = ghost3_xfine >> 1
  [329] game_logic::ghost3_ytile#0 = ghost3_yfine >> 1
  [330] level_tile_directions::xtile#1 = game_logic::ghost3_xtile#0
  [331] level_tile_directions::ytile#1 = game_logic::ghost3_ytile#0
  [332] call level_tile_directions
  [333] level_tile_directions::return#10 = level_tile_directions::return#2
  to:game_logic::@154
game_logic::@154: scope:[game_logic]  from game_logic::@100
  [334] game_logic::open_directions1#0 = level_tile_directions::return#10
  [335] game_logic::open_directions1#1 = game_logic::open_directions1#0 & DIRECTION_ELIMINATE[ghost3_direction]
  [336] if(ghosts_mode==FRIGHTENED) goto game_logic::@96
  to:game_logic::@101
game_logic::@101: scope:[game_logic]  from game_logic::@154
  [337] if(ghosts_mode==SCATTER) goto game_logic::@97
  to:game_logic::@102
game_logic::@102: scope:[game_logic]  from game_logic::@101
  [338] game_logic::target_xtile1#2 = pacman_xfine >> 1
  [339] game_logic::target_ytile1#2 = pacman_yfine >> 1
  to:game_logic::@97
game_logic::@97: scope:[game_logic]  from game_logic::@101 game_logic::@102
  [340] game_logic::target_ytile1#3 = phi( game_logic::@102/game_logic::target_ytile1#2, game_logic::@101/2 )
  [340] game_logic::target_xtile1#3 = phi( game_logic::@102/game_logic::target_xtile1#2, game_logic::@101/2 )
  [341] choose_direction::open_directions#1 = game_logic::open_directions1#1
  [342] choose_direction::ghost_xtile#1 = game_logic::ghost3_xtile#0
  [343] choose_direction::ghost_ytile#1 = game_logic::ghost3_ytile#0
  [344] choose_direction::target_xtile#1 = game_logic::target_xtile1#3
  [345] choose_direction::target_ytile#1 = game_logic::target_ytile1#3
  [346] call choose_direction
  [347] choose_direction::return#1 = choose_direction::return#10
  to:game_logic::@155
game_logic::@155: scope:[game_logic]  from game_logic::@97
  [348] game_logic::$140 = choose_direction::return#1
  [349] ghost3_direction = game_logic::$140
  to:game_logic::@return
game_logic::@96: scope:[game_logic]  from game_logic::@154
  [350] ghost3_direction = DIRECTION_SINGLE[game_logic::open_directions1#1]
  to:game_logic::@return
game_logic::@95: scope:[game_logic]  from game_logic::@99
  [351] ghost3_direction = DIRECTION_REVERSE[ghost3_direction]
  [352] ghost3_reverse = 0
  to:game_logic::@return
game_logic::@94: scope:[game_logic]  from game_logic::@167
  [353] ghost3_substep = 1
  [354] if(ghost3_xfine==1) goto game_logic::@98
  to:game_logic::@103
game_logic::@103: scope:[game_logic]  from game_logic::@94
  [355] if(ghost3_xfine!=$61) goto game_logic::@return
  to:game_logic::@104
game_logic::@104: scope:[game_logic]  from game_logic::@103
  [356] ghost3_xfine = 1
  to:game_logic::@return
game_logic::@98: scope:[game_logic]  from game_logic::@94
  [357] ghost3_xfine = $61
  to:game_logic::@return
game_logic::@92: scope:[game_logic]  from game_logic::@27
  [358] ghost3_xfine = -- ghost3_xfine
  to:game_logic::@93
game_logic::@91: scope:[game_logic]  from game_logic::@26
  [359] ghost3_yfine = ++ ghost3_yfine
  to:game_logic::@93
game_logic::@90: scope:[game_logic]  from game_logic::@25
  [360] ghost3_xfine = ++ ghost3_xfine
  to:game_logic::@93
game_logic::@89: scope:[game_logic]  from game_logic::@5
  [361] ghost3_respawn = -- ghost3_respawn
  [362] if(ghost3_respawn!=0) goto game_logic::@return
  to:game_logic::@105
game_logic::@105: scope:[game_logic]  from game_logic::@89
  [363] ghost3_direction = UP
  [364] ghost3_xfine = 2
  [365] ghost3_yfine = $46
  [366] ghost3_substep = 0
  to:game_logic::@return
game_logic::@4: scope:[game_logic]  from game_logic::@9
  [367] if(0!=ghost2_respawn) goto game_logic::@106
  to:game_logic::@30
game_logic::@30: scope:[game_logic]  from game_logic::@4
  [368] if(ghost2_direction==RIGHT) goto game_logic::@107
  to:game_logic::@31
game_logic::@31: scope:[game_logic]  from game_logic::@30
  [369] if(ghost2_direction==DOWN) goto game_logic::@108
  to:game_logic::@32
game_logic::@32: scope:[game_logic]  from game_logic::@31
  [370] if(ghost2_direction==LEFT) goto game_logic::@109
  to:game_logic::@33
game_logic::@33: scope:[game_logic]  from game_logic::@32
  [371] if(ghost2_direction!=UP) goto game_logic::@110
  to:game_logic::@34
game_logic::@34: scope:[game_logic]  from game_logic::@33
  [372] ghost2_yfine = -- ghost2_yfine
  to:game_logic::@110
game_logic::@110: scope:[game_logic]  from game_logic::@107 game_logic::@108 game_logic::@109 game_logic::@33 game_logic::@34
  [373] game_logic::$226 = ghost2_direction
  [374] if(ghost2_substep!=0) goto game_logic::@116
  to:game_logic::@168
game_logic::@168: scope:[game_logic]  from game_logic::@110
  [375] if(game_logic::$226!=STOP) goto game_logic::@111
  to:game_logic::@116
game_logic::@116: scope:[game_logic]  from game_logic::@110 game_logic::@168
  [376] ghost2_substep = 0
  [377] if(0!=ghost2_reverse) goto game_logic::@112
  to:game_logic::@117
game_logic::@117: scope:[game_logic]  from game_logic::@116
  [378] game_logic::ghost2_xtile#0 = ghost2_xfine >> 1
  [379] game_logic::ghost2_ytile#0 = ghost2_yfine >> 1
  [380] level_tile_directions::xtile#2 = game_logic::ghost2_xtile#0
  [381] level_tile_directions::ytile#2 = game_logic::ghost2_ytile#0
  [382] call level_tile_directions
  [383] level_tile_directions::return#11 = level_tile_directions::return#2
  to:game_logic::@156
game_logic::@156: scope:[game_logic]  from game_logic::@117
  [384] game_logic::open_directions2#0 = level_tile_directions::return#11
  [385] game_logic::open_directions2#1 = game_logic::open_directions2#0 & DIRECTION_ELIMINATE[ghost2_direction]
  [386] if(ghosts_mode==FRIGHTENED) goto game_logic::@113
  to:game_logic::@118
game_logic::@118: scope:[game_logic]  from game_logic::@156
  [387] if(ghosts_mode==SCATTER) goto game_logic::@114
  to:game_logic::@119
game_logic::@119: scope:[game_logic]  from game_logic::@118
  [388] game_logic::target_xtile2#2 = pacman_xfine >> 1
  [389] game_logic::target_ytile2#2 = pacman_yfine >> 1
  to:game_logic::@114
game_logic::@114: scope:[game_logic]  from game_logic::@118 game_logic::@119
  [390] game_logic::target_ytile2#3 = phi( game_logic::@118/2, game_logic::@119/game_logic::target_ytile2#2 )
  [390] game_logic::target_xtile2#3 = phi( game_logic::@118/2, game_logic::@119/game_logic::target_xtile2#2 )
  [391] choose_direction::open_directions#2 = game_logic::open_directions2#1
  [392] choose_direction::ghost_xtile#2 = game_logic::ghost2_xtile#0
  [393] choose_direction::ghost_ytile#2 = game_logic::ghost2_ytile#0
  [394] choose_direction::target_xtile#2 = game_logic::target_xtile2#3
  [395] choose_direction::target_ytile#2 = game_logic::target_ytile2#3
  [396] call choose_direction
  [397] choose_direction::return#2 = choose_direction::return#10
  to:game_logic::@157
game_logic::@157: scope:[game_logic]  from game_logic::@114
  [398] game_logic::$161 = choose_direction::return#2
  [399] ghost2_direction = game_logic::$161
  to:game_logic::@return
game_logic::@113: scope:[game_logic]  from game_logic::@156
  [400] ghost2_direction = DIRECTION_SINGLE[game_logic::open_directions2#1]
  to:game_logic::@return
game_logic::@112: scope:[game_logic]  from game_logic::@116
  [401] ghost2_direction = DIRECTION_REVERSE[ghost2_direction]
  [402] ghost2_reverse = 0
  to:game_logic::@return
game_logic::@111: scope:[game_logic]  from game_logic::@168
  [403] ghost2_substep = 1
  [404] if(ghost2_xfine==1) goto game_logic::@115
  to:game_logic::@120
game_logic::@120: scope:[game_logic]  from game_logic::@111
  [405] if(ghost2_xfine!=$61) goto game_logic::@return
  to:game_logic::@121
game_logic::@121: scope:[game_logic]  from game_logic::@120
  [406] ghost2_xfine = 1
  to:game_logic::@return
game_logic::@115: scope:[game_logic]  from game_logic::@111
  [407] ghost2_xfine = $61
  to:game_logic::@return
game_logic::@109: scope:[game_logic]  from game_logic::@32
  [408] ghost2_xfine = -- ghost2_xfine
  to:game_logic::@110
game_logic::@108: scope:[game_logic]  from game_logic::@31
  [409] ghost2_yfine = ++ ghost2_yfine
  to:game_logic::@110
game_logic::@107: scope:[game_logic]  from game_logic::@30
  [410] ghost2_xfine = ++ ghost2_xfine
  to:game_logic::@110
game_logic::@106: scope:[game_logic]  from game_logic::@4
  [411] ghost2_respawn = -- ghost2_respawn
  [412] if(ghost2_respawn!=0) goto game_logic::@return
  to:game_logic::@122
game_logic::@122: scope:[game_logic]  from game_logic::@106
  [413] ghost2_direction = LEFT
  [414] ghost2_xfine = $60
  [415] ghost2_yfine = $46
  [416] ghost2_substep = 0
  to:game_logic::@return
game_logic::@3: scope:[game_logic]  from game_logic::@8
  [417] if(0!=ghost1_respawn) goto game_logic::@123
  to:game_logic::@35
game_logic::@35: scope:[game_logic]  from game_logic::@3
  [418] if(ghost1_direction==RIGHT) goto game_logic::@124
  to:game_logic::@36
game_logic::@36: scope:[game_logic]  from game_logic::@35
  [419] if(ghost1_direction==DOWN) goto game_logic::@125
  to:game_logic::@37
game_logic::@37: scope:[game_logic]  from game_logic::@36
  [420] if(ghost1_direction==LEFT) goto game_logic::@126
  to:game_logic::@38
game_logic::@38: scope:[game_logic]  from game_logic::@37
  [421] if(ghost1_direction!=UP) goto game_logic::@127
  to:game_logic::@39
game_logic::@39: scope:[game_logic]  from game_logic::@38
  [422] ghost1_yfine = -- ghost1_yfine
  to:game_logic::@127
game_logic::@127: scope:[game_logic]  from game_logic::@124 game_logic::@125 game_logic::@126 game_logic::@38 game_logic::@39
  [423] game_logic::$229 = ghost1_direction
  [424] if(ghost1_substep!=0) goto game_logic::@133
  to:game_logic::@169
game_logic::@169: scope:[game_logic]  from game_logic::@127
  [425] if(game_logic::$229!=STOP) goto game_logic::@128
  to:game_logic::@133
game_logic::@133: scope:[game_logic]  from game_logic::@127 game_logic::@169
  [426] ghost1_substep = 0
  [427] if(0!=ghost1_reverse) goto game_logic::@129
  to:game_logic::@134
game_logic::@134: scope:[game_logic]  from game_logic::@133
  [428] game_logic::ghost1_xtile#0 = ghost1_xfine >> 1
  [429] game_logic::ghost1_ytile#0 = ghost1_yfine >> 1
  [430] level_tile_directions::xtile#3 = game_logic::ghost1_xtile#0
  [431] level_tile_directions::ytile#3 = game_logic::ghost1_ytile#0
  [432] call level_tile_directions
  [433] level_tile_directions::return#12 = level_tile_directions::return#2
  to:game_logic::@158
game_logic::@158: scope:[game_logic]  from game_logic::@134
  [434] game_logic::open_directions3#0 = level_tile_directions::return#12
  [435] game_logic::open_directions3#1 = game_logic::open_directions3#0 & DIRECTION_ELIMINATE[ghost1_direction]
  [436] if(ghosts_mode==FRIGHTENED) goto game_logic::@130
  to:game_logic::@135
game_logic::@135: scope:[game_logic]  from game_logic::@158
  [437] if(ghosts_mode==SCATTER) goto game_logic::@131
  to:game_logic::@136
game_logic::@136: scope:[game_logic]  from game_logic::@135
  [438] game_logic::target_xtile3#2 = pacman_xfine >> 1
  [439] game_logic::target_ytile3#2 = pacman_yfine >> 1
  to:game_logic::@131
game_logic::@131: scope:[game_logic]  from game_logic::@135 game_logic::@136
  [440] game_logic::target_ytile3#3 = phi( game_logic::@135/2, game_logic::@136/game_logic::target_ytile3#2 )
  [440] game_logic::target_xtile3#3 = phi( game_logic::@135/2, game_logic::@136/game_logic::target_xtile3#2 )
  [441] choose_direction::open_directions#3 = game_logic::open_directions3#1
  [442] choose_direction::ghost_xtile#3 = game_logic::ghost1_xtile#0
  [443] choose_direction::ghost_ytile#3 = game_logic::ghost1_ytile#0
  [444] choose_direction::target_xtile#3 = game_logic::target_xtile3#3
  [445] choose_direction::target_ytile#3 = game_logic::target_ytile3#3
  [446] call choose_direction
  [447] choose_direction::return#3 = choose_direction::return#10
  to:game_logic::@159
game_logic::@159: scope:[game_logic]  from game_logic::@131
  [448] game_logic::$182 = choose_direction::return#3
  [449] ghost1_direction = game_logic::$182
  to:game_logic::@return
game_logic::@130: scope:[game_logic]  from game_logic::@158
  [450] ghost1_direction = DIRECTION_SINGLE[game_logic::open_directions3#1]
  to:game_logic::@return
game_logic::@129: scope:[game_logic]  from game_logic::@133
  [451] ghost1_direction = DIRECTION_REVERSE[ghost1_direction]
  [452] ghost1_reverse = 0
  to:game_logic::@return
game_logic::@128: scope:[game_logic]  from game_logic::@169
  [453] ghost1_substep = 1
  [454] if(ghost1_xfine==1) goto game_logic::@132
  to:game_logic::@137
game_logic::@137: scope:[game_logic]  from game_logic::@128
  [455] if(ghost1_xfine!=$61) goto game_logic::@return
  to:game_logic::@138
game_logic::@138: scope:[game_logic]  from game_logic::@137
  [456] ghost1_xfine = 1
  to:game_logic::@return
game_logic::@132: scope:[game_logic]  from game_logic::@128
  [457] ghost1_xfine = $61
  to:game_logic::@return
game_logic::@126: scope:[game_logic]  from game_logic::@37
  [458] ghost1_xfine = -- ghost1_xfine
  to:game_logic::@127
game_logic::@125: scope:[game_logic]  from game_logic::@36
  [459] ghost1_yfine = ++ ghost1_yfine
  to:game_logic::@127
game_logic::@124: scope:[game_logic]  from game_logic::@35
  [460] ghost1_xfine = ++ ghost1_xfine
  to:game_logic::@127
game_logic::@123: scope:[game_logic]  from game_logic::@3
  [461] ghost1_respawn = -- ghost1_respawn
  [462] if(ghost1_respawn!=0) goto game_logic::@return
  to:game_logic::@139
game_logic::@139: scope:[game_logic]  from game_logic::@123
  [463] ghost1_direction = DOWN
  [464] ghost1_xfine = $60
  [465] ghost1_yfine = 2
  [466] ghost1_substep = 0
  to:game_logic::@return
game_logic::@2: scope:[game_logic]  from game_logic::@1
  [467] if(pacman_direction==RIGHT) goto game_logic::@140
  to:game_logic::@40
game_logic::@40: scope:[game_logic]  from game_logic::@2
  [468] if(pacman_direction==DOWN) goto game_logic::@141
  to:game_logic::@41
game_logic::@41: scope:[game_logic]  from game_logic::@40
  [469] if(pacman_direction==LEFT) goto game_logic::@142
  to:game_logic::@42
game_logic::@42: scope:[game_logic]  from game_logic::@41
  [470] if(pacman_direction!=UP) goto game_logic::@143
  to:game_logic::@43
game_logic::@43: scope:[game_logic]  from game_logic::@42
  [471] pacman_yfine = -- pacman_yfine
  to:game_logic::@143
game_logic::@143: scope:[game_logic]  from game_logic::@140 game_logic::@141 game_logic::@142 game_logic::@42 game_logic::@43
  [472] game_logic::$232 = pacman_direction
  [473] if(pacman_substep!=0) goto game_logic::@147
  to:game_logic::@170
game_logic::@170: scope:[game_logic]  from game_logic::@143
  [474] if(game_logic::$232!=STOP) goto game_logic::@144
  to:game_logic::@147
game_logic::@147: scope:[game_logic]  from game_logic::@143 game_logic::@170
  [475] pacman_substep = 0
  [476] game_logic::pacman_xtile1#0 = pacman_xfine >> 1
  [477] game_logic::pacman_ytile1#0 = pacman_yfine >> 1
  [478] level_tile_directions::xtile#4 = game_logic::pacman_xtile1#0
  [479] level_tile_directions::ytile#4 = game_logic::pacman_ytile1#0
  [480] call level_tile_directions
  [481] level_tile_directions::return#13 = level_tile_directions::return#2
  to:game_logic::@160
game_logic::@160: scope:[game_logic]  from game_logic::@147
  [482] game_logic::open_directions4#0 = level_tile_directions::return#13
  [483] game_logic::$199 = *((char *)CIA1) & $f
  [484] game_logic::$200 = game_logic::$199 ^ $f
  [485] game_logic::joy_directions#0 = game_logic::$200 << 2
  [486] if(game_logic::joy_directions#0==0) goto game_logic::@145
  to:game_logic::@148
game_logic::@148: scope:[game_logic]  from game_logic::@160
  [487] game_logic::$204 = game_logic::joy_directions#0 & game_logic::open_directions4#0
  [488] game_logic::new_direction#0 = DIRECTION_SINGLE[game_logic::$204]
  [489] if(game_logic::new_direction#0==0) goto game_logic::@145
  to:game_logic::@149
game_logic::@149: scope:[game_logic]  from game_logic::@148
  [490] pacman_direction = game_logic::new_direction#0
  to:game_logic::@145
game_logic::@145: scope:[game_logic]  from game_logic::@148 game_logic::@149 game_logic::@160
  [491] pacman_direction = pacman_direction & game_logic::open_directions4#0
  to:game_logic::@return
game_logic::@144: scope:[game_logic]  from game_logic::@170
  [492] pacman_substep = 1
  [493] pacman_ch1_enabled = 1
  [494] if(pacman_xfine==1) goto game_logic::@146
  to:game_logic::@150
game_logic::@150: scope:[game_logic]  from game_logic::@144
  [495] if(pacman_xfine!=$61) goto game_logic::@return
  to:game_logic::@151
game_logic::@151: scope:[game_logic]  from game_logic::@150
  [496] pacman_xfine = 1
  to:game_logic::@return
game_logic::@146: scope:[game_logic]  from game_logic::@144
  [497] pacman_xfine = $61
  to:game_logic::@return
game_logic::@142: scope:[game_logic]  from game_logic::@41
  [498] pacman_xfine = -- pacman_xfine
  to:game_logic::@143
game_logic::@141: scope:[game_logic]  from game_logic::@40
  [499] pacman_yfine = ++ pacman_yfine
  to:game_logic::@143
game_logic::@140: scope:[game_logic]  from game_logic::@2
  [500] pacman_xfine = ++ pacman_xfine
  to:game_logic::@143

void pacman_sound_play()
pacman_sound_play: scope:[pacman_sound_play]  from irq_screen_top::@8
  [501] if(0==pacman_ch1_enabled) goto pacman_sound_play::@return
  to:pacman_sound_play::@1
pacman_sound_play::@1: scope:[pacman_sound_play]  from pacman_sound_play
  [502] *SID_CH1_FREQ_HI = PACMAN_CH1_FREQ_HI[pacman_ch1_idx]
  [503] *((char *)SID+OFFSET_STRUCT_MOS6581_SID_CH1_CONTROL) = PACMAN_CH1_CONTROL[pacman_ch1_idx]
  [504] pacman_ch1_idx = ++ pacman_ch1_idx
  [505] if(pacman_ch1_idx!=$16*SIZEOF_CHAR) goto pacman_sound_play::@return
  to:pacman_sound_play::@2
pacman_sound_play::@2: scope:[pacman_sound_play]  from pacman_sound_play::@1
  [506] pacman_ch1_idx = 0
  [507] pacman_ch1_enabled = 0
  to:pacman_sound_play::@return
pacman_sound_play::@return: scope:[pacman_sound_play]  from pacman_sound_play pacman_sound_play::@1 pacman_sound_play::@2
  [508] return 
  to:@return

void splash_run()
splash_run: scope:[splash_run]  from main
  [509] phi()
  to:splash_run::SEI1
splash_run::SEI1: scope:[splash_run]  from splash_run
  asm { sei  }
  to:splash_run::@18
splash_run::@18: scope:[splash_run]  from splash_run::SEI1
  [511] *((char *)CIA1+OFFSET_STRUCT_MOS6526_CIA_INTERRUPT) = CIA_INTERRUPT_CLEAR
  [512] *PROCPORT_DDR = PROCPORT_DDR_MEMORY_MASK
  [513] *PROCPORT = PROCPORT_RAM_ALL
  [514] call memset
  to:splash_run::@22
splash_run::@22: scope:[splash_run]  from splash_run::@18
  [515] byteboozer_decrunch::crunched = RASTER_CODE_CRUNCHED
  [516] call byteboozer_decrunch
  to:splash_run::@23
splash_run::@23: scope:[splash_run]  from splash_run::@22
  [517] byteboozer_decrunch::crunched = LOGIC_CODE_CRUNCHED
  [518] call byteboozer_decrunch
  to:splash_run::@24
splash_run::@24: scope:[splash_run]  from splash_run::@23
  [519] phi()
  [520] call merge_code
  to:splash_run::@25
splash_run::@25: scope:[splash_run]  from splash_run::@24
  [521] phi()
  [522] call memset
  to:splash_run::@26
splash_run::@26: scope:[splash_run]  from splash_run::@25
  [523] phi()
  [524] call memset
  to:splash_run::@27
splash_run::@27: scope:[splash_run]  from splash_run::@26
  [525] phi()
  [526] call init_render_index
  to:splash_run::@28
splash_run::@28: scope:[splash_run]  from splash_run::@27
  [527] byteboozer_decrunch::crunched = SPLASH_CRUNCHED
  [528] call byteboozer_decrunch
  to:splash_run::@29
splash_run::@29: scope:[splash_run]  from splash_run::@28
  [529] phi()
  [530] call splash_show
  to:splash_run::@30
splash_run::@30: scope:[splash_run]  from splash_run::@29
  [531] phi()
  [532] call memset
  to:splash_run::@31
splash_run::@31: scope:[splash_run]  from splash_run::@30
  [533] phi()
  [534] call init_bobs_restore
  to:splash_run::@32
splash_run::@32: scope:[splash_run]  from splash_run::@31
  [535] byteboozer_decrunch::crunched = BOB_GRAPHICS_CRUNCHED
  [536] call byteboozer_decrunch
  to:splash_run::@33
splash_run::@33: scope:[splash_run]  from splash_run::@32
  [537] phi()
  [538] call init_sprite_pointers
  to:splash_run::@34
splash_run::@34: scope:[splash_run]  from splash_run::@33
  [539] phi()
  [540] call memcpy
  to:splash_run::@35
splash_run::@35: scope:[splash_run]  from splash_run::@34
  [541] byteboozer_decrunch::crunched = INTRO_MUSIC_CRUNCHED_UPPER
  [542] call byteboozer_decrunch
  to:splash_run::@36
splash_run::@36: scope:[splash_run]  from splash_run::@35
  [543] phi()
  [544] call memset
  to:splash_run::@37
splash_run::@37: scope:[splash_run]  from splash_run::@36
  [545] *PROCPORT_DDR = PROCPORT_DDR_MEMORY_MASK
  [546] *PROCPORT = PROCPORT_RAM_IO
  to:splash_run::@2
splash_run::@2: scope:[splash_run]  from splash_run::@37 splash_run::@4
  [547] splash_run::msb#10 = phi( splash_run::@37/0, splash_run::@4/splash_run::msb#8 )
  [547] splash_run::i#2 = phi( splash_run::@37/0, splash_run::@4/splash_run::i#1 )
  [548] if(splash_run::i#2<8) goto splash_run::@3
  to:splash_run::toDd001
splash_run::toDd001: scope:[splash_run]  from splash_run::@2
  [549] phi()
  to:splash_run::@19
splash_run::@19: scope:[splash_run]  from splash_run::toDd001
  [550] *((char *)CIA2) = splash_run::toDd001_return#0
  [551] canvas_base_hi = byte1 SPRITES_2
  [552] bobs_restore_base = NUM_BOBS*SIZE_BOB_RESTORE
  to:splash_run::toD0181
splash_run::toD0181: scope:[splash_run]  from splash_run::@19
  [553] phi()
  to:splash_run::@20
splash_run::@20: scope:[splash_run]  from splash_run::toD0181
  [554] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_MEMORY) = splash_run::toD0181_return#0
  [555] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_SPRITES_XMSB) = splash_run::msb#10
  [556] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_SPRITES_ENABLE) = $ff
  [557] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_SPRITES_EXPAND_X) = $ff
  [558] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_BORDER_COLOR) = BLACK
  [559] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_BG_COLOR) = BLACK
  [560] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_SPRITES_MCOLOR1) = BLUE
  [561] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_SPRITES_MCOLOR2) = RED
  [562] top_sprites_mc = 3
  [563] side_sprites_mc = 0
  [564] bottom_sprites_mc = 3
  [565] top_sprites_color = YELLOW
  [566] side_sprites_color = BLUE
  [567] bottom_sprites_color = YELLOW
  [568] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_SPRITES_MC) = top_sprites_mc
  to:splash_run::@6
splash_run::@6: scope:[splash_run]  from splash_run::@20 splash_run::@7
  [569] splash_run::i1#2 = phi( splash_run::@20/0, splash_run::@7/splash_run::i1#1 )
  [570] if(splash_run::i1#2<8) goto splash_run::@7
  to:splash_run::@8
splash_run::@8: scope:[splash_run]  from splash_run::@6
  [571] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_CONTROL2) = 8
  to:splash_run::@9
splash_run::@9: scope:[splash_run]  from splash_run::@10 splash_run::@8
  [572] splash_run::i2#2 = phi( splash_run::@10/splash_run::i2#1, splash_run::@8/0 )
  [573] if(splash_run::i2#2<4) goto splash_run::@10
  to:splash_run::@11
splash_run::@11: scope:[splash_run]  from splash_run::@9
  asm { lda#1 staINTRO_MUSIC+$69  }
  asm { lda#0  }
  [576] callexecute *musicInit 
  to:splash_run::@1
splash_run::@1: scope:[splash_run]  from splash_run::@11
  [577] phase = 0
  [578] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_CONTROL1) = VICII_RSEL|VICII_DEN|VICII_ECM|VICII_BMM
  to:splash_run::@12
splash_run::@12: scope:[splash_run]  from splash_run::@1 splash_run::@12
  [579] if(*((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_RASTER)!=$fa) goto splash_run::@12
  to:splash_run::@13
splash_run::@13: scope:[splash_run]  from splash_run::@12
  [580] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_CONTROL1) = *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_CONTROL1) & ~VICII_RST8|VICII_RSEL|VICII_DEN
  [581] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_RASTER) = IRQ_SCREEN_TOP_LINE
  [582] *HARDWARE_IRQ = &irq_screen_top
  [583] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_IRQ_ENABLE) = IRQ_RASTER
  asm { ldaCIA1_INTERRUPT  }
  [585] *IRQ_STATUS = $f
  to:splash_run::CLI1
splash_run::CLI1: scope:[splash_run]  from splash_run::@13
  asm { cli  }
  to:splash_run::@21
splash_run::@21: scope:[splash_run]  from splash_run::CLI1
  [587] phi()
  [588] call joyinit
  to:splash_run::@38
splash_run::@38: scope:[splash_run]  from splash_run::@21
  [589] music_play_next = 0
  to:splash_run::@14
splash_run::@14: scope:[splash_run]  from splash_run::@15 splash_run::@16 splash_run::@38
  [590] phi()
  [591] call joyfire
  [592] joyfire::return#1 = joyfire::return#4
  to:splash_run::@39
splash_run::@39: scope:[splash_run]  from splash_run::@14
  [593] splash_run::$30 = joyfire::return#1
  [594] if(0==splash_run::$30) goto splash_run::@15
  to:splash_run::@return
splash_run::@return: scope:[splash_run]  from splash_run::@39
  [595] return 
  to:@return
splash_run::@15: scope:[splash_run]  from splash_run::@39
  [596] if(0==music_play_next) goto splash_run::@14
  to:splash_run::@17
splash_run::@17: scope:[splash_run]  from splash_run::@15
  [597] phi()
  [598] callexecute *musicPlay 
  to:splash_run::@16
splash_run::@16: scope:[splash_run]  from splash_run::@17
  [599] music_play_next = 0
  to:splash_run::@14
splash_run::@10: scope:[splash_run]  from splash_run::@9
  [600] bobs_xcol[splash_run::i2#2] = $a
  [601] bobs_yfine[splash_run::i2#2] = $2d
  [602] bobs_bob_id[splash_run::i2#2] = 0
  [603] splash_run::i2#1 = ++ splash_run::i2#2
  to:splash_run::@9
splash_run::@7: scope:[splash_run]  from splash_run::@6
  [604] SPRITES_COLOR[splash_run::i1#2] = top_sprites_color
  [605] splash_run::i1#1 = ++ splash_run::i1#2
  to:splash_run::@6
splash_run::@3: scope:[splash_run]  from splash_run::@2
  [606] splash_run::$34 = splash_run::i#2 << 1
  [607] SPRITES_YPOS[splash_run::$34] = 7
  [608] splash_run::xpos#0 = splash_run::sprites_xpos[splash_run::$34]
  [609] SPRITES_XPOS[splash_run::$34] = (char)splash_run::xpos#0
  [610] splash_run::msb#1 = splash_run::msb#10 >> 1
  [611] splash_run::$25 = byte1  splash_run::xpos#0
  [612] if(0==splash_run::$25) goto splash_run::@4
  to:splash_run::@5
splash_run::@5: scope:[splash_run]  from splash_run::@3
  [613] splash_run::msb#2 = splash_run::msb#1 | $80
  to:splash_run::@4
splash_run::@4: scope:[splash_run]  from splash_run::@3 splash_run::@5
  [614] splash_run::msb#8 = phi( splash_run::@3/splash_run::msb#1, splash_run::@5/splash_run::msb#2 )
  [615] splash_run::i#1 = ++ splash_run::i#2
  to:splash_run::@2

void gameplay_run()
gameplay_run: scope:[gameplay_run]  from main::@1
  [616] phi()
  to:gameplay_run::SEI1
gameplay_run::SEI1: scope:[gameplay_run]  from gameplay_run
  asm { sei  }
  to:gameplay_run::@1
gameplay_run::@1: scope:[gameplay_run]  from gameplay_run::@2 gameplay_run::SEI1
  [618] gameplay_run::i#2 = phi( gameplay_run::SEI1/0, gameplay_run::@2/gameplay_run::i#1 )
  [619] if(gameplay_run::i#2<$2f) goto gameplay_run::@2
  to:gameplay_run::@3
gameplay_run::@3: scope:[gameplay_run]  from gameplay_run::@1
  [620] pacman_wins = 0
  [621] pacman_lives = 3
  [622] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_SPRITES_MCOLOR1) = BLACK
  [623] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_SPRITES_MCOLOR2) = BLACK
  to:gameplay_run::@4
gameplay_run::@4: scope:[gameplay_run]  from gameplay_run::@3 gameplay_run::@5
  [624] gameplay_run::i1#2 = phi( gameplay_run::@3/0, gameplay_run::@5/gameplay_run::i1#1 )
  [625] if(gameplay_run::i1#2<8) goto gameplay_run::@5
  to:gameplay_run::@6
gameplay_run::@6: scope:[gameplay_run]  from gameplay_run::@4
  [626] byteboozer_decrunch::crunched = LEVEL_TILES_CRUNCHED
  [627] call byteboozer_decrunch
  to:gameplay_run::@14
gameplay_run::@14: scope:[gameplay_run]  from gameplay_run::@6
  [628] phi()
  [629] call init_level_tile_directions
  to:gameplay_run::@15
gameplay_run::@15: scope:[gameplay_run]  from gameplay_run::@14
  [630] phi()
  [631] call init_sprite_pointers
  to:gameplay_run::@16
gameplay_run::@16: scope:[gameplay_run]  from gameplay_run::@15
  [632] phi()
  [633] call level_show
  [634] level_show::return#0 = level_show::count#12
  to:gameplay_run::@17
gameplay_run::@17: scope:[gameplay_run]  from gameplay_run::@16
  [635] gameplay_run::$4 = level_show::return#0
  [636] pill_count = gameplay_run::$4
  [637] top_sprites_mc = $ff
  [638] side_sprites_mc = $ff
  [639] bottom_sprites_mc = $ff
  [640] top_sprites_color = YELLOW
  [641] side_sprites_color = YELLOW
  [642] bottom_sprites_color = YELLOW
  [643] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_SPRITES_MC) = top_sprites_mc
  to:gameplay_run::@7
gameplay_run::@7: scope:[gameplay_run]  from gameplay_run::@17 gameplay_run::@8
  [644] gameplay_run::i2#2 = phi( gameplay_run::@17/0, gameplay_run::@8/gameplay_run::i2#1 )
  [645] if(gameplay_run::i2#2<8) goto gameplay_run::@8
  to:gameplay_run::@9
gameplay_run::@9: scope:[gameplay_run]  from gameplay_run::@7
  [646] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_SPRITES_MCOLOR1) = BLUE
  [647] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_SPRITES_MCOLOR2) = RED
  [648] phase = 1
  [649] call spawn_all
  to:gameplay_run::@18
gameplay_run::@18: scope:[gameplay_run]  from gameplay_run::@9
  [650] phi()
  [651] call pacman_sound_init
  to:gameplay_run::@19
gameplay_run::@19: scope:[gameplay_run]  from gameplay_run::@18
  [652] game_playable = 1
  [653] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_CONTROL1) = VICII_RSEL|VICII_DEN|VICII_ECM|VICII_BMM
  to:gameplay_run::@10
gameplay_run::@10: scope:[gameplay_run]  from gameplay_run::@10 gameplay_run::@19
  [654] if(*((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_RASTER)!=$fb) goto gameplay_run::@10
  to:gameplay_run::@11
gameplay_run::@11: scope:[gameplay_run]  from gameplay_run::@10 gameplay_run::@11
  [655] if(*((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_RASTER)!=$fa) goto gameplay_run::@11
  to:gameplay_run::@12
gameplay_run::@12: scope:[gameplay_run]  from gameplay_run::@11
  [656] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_CONTROL1) = *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_CONTROL1) & ~VICII_RST8|VICII_RSEL|VICII_DEN
  [657] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_RASTER) = IRQ_SCREEN_TOP_LINE
  [658] *HARDWARE_IRQ = &irq_screen_top
  [659] *((char *)VICII+OFFSET_STRUCT_MOS6569_VICII_IRQ_ENABLE) = IRQ_RASTER
  asm { ldaCIA1_INTERRUPT  }
  [661] *IRQ_STATUS = $f
  to:gameplay_run::CLI1
gameplay_run::CLI1: scope:[gameplay_run]  from gameplay_run::@12
  asm { cli  }
  to:gameplay_run::@13
gameplay_run::@13: scope:[gameplay_run]  from gameplay_run::@20 gameplay_run::CLI1
  [663] if(0!=pacman_wins) goto gameplay_run::@return
  to:gameplay_run::@20
gameplay_run::@20: scope:[gameplay_run]  from gameplay_run::@13
  [664] if(pacman_lives==0) goto gameplay_run::@return
  to:gameplay_run::@13
gameplay_run::@return: scope:[gameplay_run]  from gameplay_run::@13 gameplay_run::@20
  [665] return 
  to:@return
gameplay_run::@8: scope:[gameplay_run]  from gameplay_run::@7
  [666] SPRITES_COLOR[gameplay_run::i2#2] = top_sprites_color
  [667] gameplay_run::i2#1 = ++ gameplay_run::i2#2
  to:gameplay_run::@7
gameplay_run::@5: scope:[gameplay_run]  from gameplay_run::@4
  [668] SPRITES_COLOR[gameplay_run::i1#2] = BLACK
  [669] gameplay_run::i1#1 = ++ gameplay_run::i1#2
  to:gameplay_run::@4
gameplay_run::@2: scope:[gameplay_run]  from gameplay_run::@1
  [670] ((char *)SID)[gameplay_run::i#2] = 0
  [671] gameplay_run::i#1 = ++ gameplay_run::i#2
  to:gameplay_run::@1

void done_run()
done_run: scope:[done_run]  from main::@2
  [672] game_playable = 0
  [673] phase = 0
  to:done_run::@4
done_run::@4: scope:[done_run]  from done_run done_run::@5
  [674] done_run::i#2 = phi( done_run/0, done_run::@5/done_run::i#1 )
  [675] if(done_run::i#2<$2f) goto done_run::@5
  to:done_run::@6
done_run::@6: scope:[done_run]  from done_run::@4 done_run::@7
  [676] done_run::i1#2 = phi( done_run::@4/0, done_run::@7/done_run::i1#1 )
  [677] if(done_run::i1#2<4) goto done_run::@7
  to:done_run::@8
done_run::@8: scope:[done_run]  from done_run::@6
  asm { lda#0  }
  [679] callexecute *musicInit 
  to:done_run::@1
done_run::@1: scope:[done_run]  from done_run::@8
  [680] if(0!=pacman_wins) goto done_run::@2
  to:done_run::@3
done_run::@3: scope:[done_run]  from done_run::@1
  [681] byteboozer_decrunch::crunched = GAMEOVER_GFX_CRUNCHED
  [682] call byteboozer_decrunch
  to:done_run::@9
done_run::@9: scope:[done_run]  from done_run::@13 done_run::@2 done_run::@3
  [683] done_run::gfx#4 = phi( done_run::@13/done_run::gfx#2, done_run::@2/WIN_GFX, done_run::@3/WIN_GFX )
  [683] done_run::xcol#2 = phi( done_run::@13/done_run::xcol#1, done_run::@2/0, done_run::@3/0 )
  [684] if(done_run::xcol#2<$19) goto done_run::@11
  to:done_run::@10
done_run::@10: scope:[done_run]  from done_run::@9
  [685] music_play_next = 0
  to:done_run::@14
done_run::@14: scope:[done_run]  from done_run::@10 done_run::@15 done_run::@16
  [686] phi()
  [687] call joyfire
  [688] joyfire::return#0 = joyfire::return#4
  to:done_run::@19
done_run::@19: scope:[done_run]  from done_run::@14
  [689] done_run::$8 = joyfire::return#0
  [690] if(0==done_run::$8) goto done_run::@15
  to:done_run::@return
done_run::@return: scope:[done_run]  from done_run::@19
  [691] return 
  to:@return
done_run::@15: scope:[done_run]  from done_run::@19
  [692] if(0==music_play_next) goto done_run::@14
  to:done_run::@17
done_run::@17: scope:[done_run]  from done_run::@15
  [693] phi()
  [694] callexecute *musicPlay 
  to:done_run::@16
done_run::@16: scope:[done_run]  from done_run::@17
  [695] music_play_next = 0
  to:done_run::@14
done_run::@11: scope:[done_run]  from done_run::@18 done_run::@9
  [696] done_run::gfx#2 = phi( done_run::@9/done_run::gfx#4, done_run::@18/done_run::gfx#1 )
  [696] done_run::ypos#2 = phi( done_run::@9/0, done_run::@18/done_run::ypos#1 )
  [697] if(done_run::ypos#2<$19) goto done_run::@12
  to:done_run::@13
done_run::@13: scope:[done_run]  from done_run::@11
  [698] done_run::xcol#1 = ++ done_run::xcol#2
  to:done_run::@9
done_run::@12: scope:[done_run]  from done_run::@11
  [699] done_run::pixels#0 = *done_run::gfx#2
  [700] done_run::gfx#1 = ++ done_run::gfx#2
  [701] render::xcol#0 = done_run::xcol#2
  [702] render::ypos#0 = done_run::ypos#2
  [703] render::pixels#0 = done_run::pixels#0
  [704] call render
  to:done_run::@18
done_run::@18: scope:[done_run]  from done_run::@12
  [705] done_run::ypos#1 = ++ done_run::ypos#2
  to:done_run::@11
done_run::@2: scope:[done_run]  from done_run::@1
  [706] byteboozer_decrunch::crunched = WIN_GFX_CRUNCHED
  [707] call byteboozer_decrunch
  to:done_run::@9
done_run::@7: scope:[done_run]  from done_run::@6
  [708] bobs_xcol[done_run::i1#2] = $a
  [709] bobs_yfine[done_run::i1#2] = $2d
  [710] bobs_bob_id[done_run::i1#2] = 0
  [711] done_run::i1#1 = ++ done_run::i1#2
  to:done_run::@6
done_run::@5: scope:[done_run]  from done_run::@4
  [712] ((char *)SID)[done_run::i#2] = 0
  [713] done_run::i#1 = ++ done_run::i#2
  to:done_run::@4

void spawn_all()
spawn_all: scope:[spawn_all]  from game_logic::@68 game_logic::@69 game_logic::@70 game_logic::@71 gameplay_run::@9
  [714] ghosts_mode_count = 0
  [715] pacman_substep = 0
  [716] ghost1_substep = 0
  [717] ghost2_substep = 0
  [718] ghost3_substep = 0
  [719] ghost4_substep = 0
  [720] pacman_direction = STOP
  [721] ghost1_direction = STOP
  [722] ghost2_direction = STOP
  [723] ghost3_direction = STOP
  [724] ghost4_direction = STOP
  [725] pacman_xfine = $32
  [726] ghost1_xfine = $32
  [727] ghost2_xfine = $32
  [728] ghost3_xfine = $32
  [729] ghost4_xfine = $32
  [730] ghost1_yfine = $23
  [731] ghost2_yfine = $23
  [732] ghost3_yfine = $23
  [733] ghost4_yfine = $23
  [734] pacman_yfine = $3e
  [735] ghost1_respawn = $a
  [736] ghost2_respawn = $14
  [737] ghost3_respawn = $1e
  [738] ghost4_respawn = $28
  to:spawn_all::@return
spawn_all::@return: scope:[spawn_all]  from spawn_all
  [739] return 
  to:@return

char level_tile_directions(char xtile , char ytile)
level_tile_directions: scope:[level_tile_directions]  from game_logic::@100 game_logic::@117 game_logic::@134 game_logic::@147 game_logic::@83
  [740] level_tile_directions::ytile#5 = phi( game_logic::@100/level_tile_directions::ytile#1, game_logic::@117/level_tile_directions::ytile#2, game_logic::@134/level_tile_directions::ytile#3, game_logic::@147/level_tile_directions::ytile#4, game_logic::@83/level_tile_directions::ytile#0 )
  [740] level_tile_directions::xtile#5 = phi( game_logic::@100/level_tile_directions::xtile#1, game_logic::@117/level_tile_directions::xtile#2, game_logic::@134/level_tile_directions::xtile#3, game_logic::@147/level_tile_directions::xtile#4, game_logic::@83/level_tile_directions::xtile#0 )
  [741] if(level_tile_directions::xtile#5>=$31+1) goto level_tile_directions::@return
  to:level_tile_directions::@2
level_tile_directions::@2: scope:[level_tile_directions]  from level_tile_directions
  [742] if(level_tile_directions::ytile#5>=$24+1) goto level_tile_directions::@return
  to:level_tile_directions::@1
level_tile_directions::@1: scope:[level_tile_directions]  from level_tile_directions::@2
  [743] level_tile_directions::$5 = level_tile_directions::ytile#5 << 1
  [744] level_tile_directions::ytiles#0 = LEVEL_TILES_DIRECTIONS + LEVEL_YTILE_OFFSET[level_tile_directions::$5]
  [745] level_tile_directions::return#0 = level_tile_directions::ytiles#0[level_tile_directions::xtile#5]
  to:level_tile_directions::@return
level_tile_directions::@return: scope:[level_tile_directions]  from level_tile_directions level_tile_directions::@1 level_tile_directions::@2
  [746] level_tile_directions::return#2 = phi( level_tile_directions::@1/level_tile_directions::return#0, level_tile_directions/0, level_tile_directions::@2/0 )
  [747] return 
  to:@return

char choose_direction(char open_directions , char ghost_xtile , char ghost_ytile , char target_xtile , char target_ytile)
choose_direction: scope:[choose_direction]  from game_logic::@114 game_logic::@131 game_logic::@80 game_logic::@97
  [748] choose_direction::open_directions#10 = phi( game_logic::@114/choose_direction::open_directions#2, game_logic::@131/choose_direction::open_directions#3, game_logic::@80/choose_direction::open_directions#0, game_logic::@97/choose_direction::open_directions#1 )
  [748] choose_direction::target_ytile#4 = phi( game_logic::@114/choose_direction::target_ytile#2, game_logic::@131/choose_direction::target_ytile#3, game_logic::@80/choose_direction::target_ytile#0, game_logic::@97/choose_direction::target_ytile#1 )
  [748] choose_direction::ghost_ytile#4 = phi( game_logic::@114/choose_direction::ghost_ytile#2, game_logic::@131/choose_direction::ghost_ytile#3, game_logic::@80/choose_direction::ghost_ytile#0, game_logic::@97/choose_direction::ghost_ytile#1 )
  [748] choose_direction::target_xtile#4 = phi( game_logic::@114/choose_direction::target_xtile#2, game_logic::@131/choose_direction::target_xtile#3, game_logic::@80/choose_direction::target_xtile#0, game_logic::@97/choose_direction::target_xtile#1 )
  [748] choose_direction::ghost_xtile#4 = phi( game_logic::@114/choose_direction::ghost_xtile#2, game_logic::@131/choose_direction::ghost_xtile#3, game_logic::@80/choose_direction::ghost_xtile#0, game_logic::@97/choose_direction::ghost_xtile#1 )
  [749] choose_direction::xdiff#0 = choose_direction::ghost_xtile#4 - choose_direction::target_xtile#4
  [750] choose_direction::ydiff#0 = choose_direction::ghost_ytile#4 - choose_direction::target_ytile#4
  [751] choose_direction::$2 = choose_direction::open_directions#10 & UP
  [752] if(0==choose_direction::$2) goto choose_direction::@1
  to:choose_direction::@5
choose_direction::@5: scope:[choose_direction]  from choose_direction
  [753] choose_direction::dist_up#0 = ABS[choose_direction::xdiff#0] + (ABS+-1)[choose_direction::ydiff#0]
  [754] if(choose_direction::dist_up#0>=$ff) goto choose_direction::@1
  to:choose_direction::@6
choose_direction::@6: scope:[choose_direction]  from choose_direction::@5
  [755] phi()
  to:choose_direction::@1
choose_direction::@1: scope:[choose_direction]  from choose_direction choose_direction::@5 choose_direction::@6
  [756] choose_direction::direction#10 = phi( choose_direction/STOP, choose_direction::@5/STOP, choose_direction::@6/UP )
  [756] choose_direction::dist_min#6 = phi( choose_direction/$ff, choose_direction::@5/$ff, choose_direction::@6/choose_direction::dist_up#0 )
  [757] choose_direction::$4 = choose_direction::open_directions#10 & DOWN
  [758] if(0==choose_direction::$4) goto choose_direction::@10
  to:choose_direction::@7
choose_direction::@7: scope:[choose_direction]  from choose_direction::@1
  [759] choose_direction::dist_down#0 = ABS[choose_direction::xdiff#0] + (ABS+1)[choose_direction::ydiff#0]
  [760] if(choose_direction::dist_down#0>=choose_direction::dist_min#6) goto choose_direction::@11
  to:choose_direction::@2
choose_direction::@11: scope:[choose_direction]  from choose_direction::@7
  [761] choose_direction::dist_min#14 = choose_direction::dist_min#6
  to:choose_direction::@2
choose_direction::@2: scope:[choose_direction]  from choose_direction::@10 choose_direction::@11 choose_direction::@7
  [762] choose_direction::direction#8 = phi( choose_direction::@10/choose_direction::direction#10, choose_direction::@11/choose_direction::direction#10, choose_direction::@7/DOWN )
  [762] choose_direction::dist_min#10 = phi( choose_direction::@10/choose_direction::dist_min#13, choose_direction::@11/choose_direction::dist_min#14, choose_direction::@7/choose_direction::dist_down#0 )
  [763] choose_direction::$6 = choose_direction::open_directions#10 & LEFT
  [764] if(0==choose_direction::$6) goto choose_direction::@12
  to:choose_direction::@8
choose_direction::@8: scope:[choose_direction]  from choose_direction::@2
  [765] choose_direction::dist_left#0 = (ABS+-1)[choose_direction::xdiff#0] + ABS[choose_direction::ydiff#0]
  [766] if(choose_direction::dist_left#0>=choose_direction::dist_min#10) goto choose_direction::@13
  to:choose_direction::@3
choose_direction::@13: scope:[choose_direction]  from choose_direction::@8
  [767] choose_direction::dist_min#18 = choose_direction::dist_min#10
  to:choose_direction::@3
choose_direction::@3: scope:[choose_direction]  from choose_direction::@12 choose_direction::@13 choose_direction::@8
  [768] choose_direction::dist_min#11 = phi( choose_direction::@8/choose_direction::dist_left#0, choose_direction::@12/choose_direction::dist_min#17, choose_direction::@13/choose_direction::dist_min#18 )
  [768] choose_direction::direction#6 = phi( choose_direction::@8/LEFT, choose_direction::@12/choose_direction::direction#8, choose_direction::@13/choose_direction::direction#8 )
  [769] choose_direction::$8 = choose_direction::open_directions#10 & RIGHT
  [770] if(0==choose_direction::$8) goto choose_direction::@4
  to:choose_direction::@9
choose_direction::@9: scope:[choose_direction]  from choose_direction::@3
  [771] choose_direction::dist_right#0 = (ABS+1)[choose_direction::xdiff#0] + ABS[choose_direction::ydiff#0]
  [772] if(choose_direction::dist_right#0>=choose_direction::dist_min#11) goto choose_direction::@14
  to:choose_direction::@4
choose_direction::@14: scope:[choose_direction]  from choose_direction::@9
  [773] phi()
  to:choose_direction::@4
choose_direction::@4: scope:[choose_direction]  from choose_direction::@14 choose_direction::@3 choose_direction::@9
  [774] choose_direction::return#10 = phi( choose_direction::@14/choose_direction::direction#6, choose_direction::@9/RIGHT, choose_direction::@3/choose_direction::direction#6 )
  to:choose_direction::@return
choose_direction::@return: scope:[choose_direction]  from choose_direction::@4
  [775] return 
  to:@return
choose_direction::@12: scope:[choose_direction]  from choose_direction::@2
  [776] choose_direction::dist_min#17 = choose_direction::dist_min#10
  to:choose_direction::@3
choose_direction::@10: scope:[choose_direction]  from choose_direction::@1
  [777] choose_direction::dist_min#13 = choose_direction::dist_min#6
  to:choose_direction::@2

void * memset(void *str , char c , unsigned int num)
memset: scope:[memset]  from splash_run::@18 splash_run::@25 splash_run::@26 splash_run::@30 splash_run::@36
  [778] memset::str#6 = phi( splash_run::@18/(void *)(char *) 16384, splash_run::@25/(void *)BANK_1+$2000, splash_run::@26/(void *)BANK_2, splash_run::@30/(void *)BANK_1, splash_run::@36/(void *)INTRO_MUSIC_CRUNCHED_UPPER )
  [778] memset::num#5 = phi( splash_run::@18/$c00, splash_run::@25/$1fff, splash_run::@26/$3fff, splash_run::@30/$1fff, splash_run::@36/INTRO_MUSIC_CRUNCHED_SIZE )
  [779] if(memset::num#5<=0) goto memset::@return
  to:memset::@1
memset::@1: scope:[memset]  from memset
  [780] memset::end#0 = (char *)memset::str#6 + memset::num#5
  [781] memset::dst#4 = (char *)memset::str#6
  to:memset::@2
memset::@2: scope:[memset]  from memset::@1 memset::@3
  [782] memset::dst#2 = phi( memset::@1/memset::dst#4, memset::@3/memset::dst#1 )
  [783] if(memset::dst#2!=memset::end#0) goto memset::@3
  to:memset::@return
memset::@return: scope:[memset]  from memset memset::@2
  [784] return 
  to:@return
memset::@3: scope:[memset]  from memset::@2
  [785] *memset::dst#2 = 0
  [786] memset::dst#1 = ++ memset::dst#2
  to:memset::@2

void byteboozer_decrunch(char * volatile crunched)
byteboozer_decrunch: scope:[byteboozer_decrunch]  from done_run::@2 done_run::@3 gameplay_run::@6 splash_run::@22 splash_run::@23 splash_run::@28 splash_run::@32 splash_run::@35
  asm { ldycrunched ldxcrunched+1 jsrb2.Decrunch  }
  to:byteboozer_decrunch::@return
byteboozer_decrunch::@return: scope:[byteboozer_decrunch]  from byteboozer_decrunch
  [788] return 
  to:@return

void merge_code(char *dest_code , char *raster_code , char *logic_code)
merge_code: scope:[merge_code]  from splash_run::@24
  [789] phi()
  to:merge_code::@1
merge_code::@1: scope:[merge_code]  from merge_code merge_code::@10 merge_code::@2
  [790] merge_code::logic_code#18 = phi( merge_code/LOGIC_CODE_UNMERGED, merge_code::@10/merge_code::logic_code#17, merge_code::@2/merge_code::logic_code#18 )
  [790] merge_code::dest_code#14 = phi( merge_code/RASTER_CODE, merge_code::@10/merge_code::dest_code#10, merge_code::@2/merge_code::dest_code#0 )
  [790] merge_code::raster_code#4 = phi( merge_code/RASTER_CODE_UNMERGED, merge_code::@10/merge_code::raster_code#2, merge_code::@2/merge_code::raster_code#0 )
  [791] if(*merge_code::raster_code#4!=merge_code::RASTER_END) goto merge_code::@2
  to:merge_code::@3
merge_code::@3: scope:[merge_code]  from merge_code::@1
  [792] merge_code::raster_code#1 = ++ merge_code::raster_code#4
  [793] merge_code::cycle_budget#0 = *merge_code::raster_code#1
  [794] merge_code::raster_code#2 = ++ merge_code::raster_code#1
  [795] if(merge_code::cycle_budget#0!=merge_code::RASTER_EXIT) goto merge_code::@4
  to:merge_code::@14
merge_code::@14: scope:[merge_code]  from merge_code::@19 merge_code::@3
  [796] merge_code::dest_code#12 = phi( merge_code::@19/merge_code::dest_code#13, merge_code::@3/merge_code::dest_code#14 )
  [796] merge_code::logic_code#12 = phi( merge_code::@19/merge_code::logic_code#5, merge_code::@3/merge_code::logic_code#18 )
  [797] if(*merge_code::logic_code#12!=merge_code::LOGIC_EXIT) goto merge_code::@15
  to:merge_code::@16
merge_code::@16: scope:[merge_code]  from merge_code::@14
  [798] *merge_code::dest_code#12 = $60
  to:merge_code::@return
merge_code::@return: scope:[merge_code]  from merge_code::@16
  [799] return 
  to:@return
merge_code::@15: scope:[merge_code]  from merge_code::@14
  [800] merge_code::logic_code#3 = ++ merge_code::logic_code#12
  to:merge_code::@17
merge_code::@17: scope:[merge_code]  from merge_code::@15 merge_code::@18
  [801] merge_code::dest_code#13 = phi( merge_code::@15/merge_code::dest_code#12, merge_code::@18/merge_code::dest_code#6 )
  [801] merge_code::logic_code#14 = phi( merge_code::@15/merge_code::logic_code#3, merge_code::@18/merge_code::logic_code#4 )
  [802] if(*merge_code::logic_code#14!=merge_code::LOGIC_END) goto merge_code::@18
  to:merge_code::@19
merge_code::@19: scope:[merge_code]  from merge_code::@17
  [803] merge_code::logic_code#5 = ++ merge_code::logic_code#14
  to:merge_code::@14
merge_code::@18: scope:[merge_code]  from merge_code::@17
  [804] *merge_code::dest_code#13 = *merge_code::logic_code#14
  [805] merge_code::dest_code#6 = ++ merge_code::dest_code#13
  [806] merge_code::logic_code#4 = ++ merge_code::logic_code#14
  to:merge_code::@17
merge_code::@4: scope:[merge_code]  from merge_code::@3 merge_code::@8
  [807] merge_code::dest_code#21 = phi( merge_code::@3/merge_code::dest_code#14, merge_code::@8/merge_code::dest_code#15 )
  [807] merge_code::logic_code#17 = phi( merge_code::@3/merge_code::logic_code#18, merge_code::@8/merge_code::logic_code#2 )
  [807] merge_code::cycle_budget#13 = phi( merge_code::@3/merge_code::cycle_budget#0, merge_code::@8/merge_code::cycle_budget#1 )
  [808] if(merge_code::cycle_budget#13<=0) goto merge_code::@10
  to:merge_code::@5
merge_code::@5: scope:[merge_code]  from merge_code::@4
  [809] merge_code::logic_cycles#0 = *merge_code::logic_code#17
  [810] merge_code::$5 = merge_code::cycle_budget#13 - 1
  [811] if(merge_code::logic_cycles#0!=merge_code::LOGIC_EXIT) goto merge_code::@20
  to:merge_code::@10
merge_code::@10: scope:[merge_code]  from merge_code::@12 merge_code::@13 merge_code::@21 merge_code::@4 merge_code::@5
  [812] merge_code::dest_code#10 = phi( merge_code::@12/merge_code::dest_code#3, merge_code::@13/merge_code::dest_code#4, merge_code::@4/merge_code::dest_code#21, merge_code::@5/merge_code::dest_code#21 )
  [812] merge_code::cycle_budget#10 = phi( merge_code::@12/merge_code::cycle_budget#2, merge_code::@13/merge_code::cycle_budget#3, merge_code::@4/merge_code::cycle_budget#13, merge_code::@5/merge_code::cycle_budget#13 )
  [813] if(merge_code::cycle_budget#10>0) goto merge_code::@11
  to:merge_code::@1
merge_code::@11: scope:[merge_code]  from merge_code::@10
  [814] if(merge_code::cycle_budget#10==3) goto merge_code::@12
  to:merge_code::@13
merge_code::@13: scope:[merge_code]  from merge_code::@11
  [815] *merge_code::dest_code#10 = $ea
  [816] merge_code::dest_code#4 = ++ merge_code::dest_code#10
  [817] merge_code::cycle_budget#3 = merge_code::cycle_budget#10 - 2
  to:merge_code::@10
merge_code::@12: scope:[merge_code]  from merge_code::@11
  [818] *merge_code::dest_code#10 = $24
  [819] merge_code::dest_code#2 = ++ merge_code::dest_code#10
  [820] *merge_code::dest_code#2 = $ea
  [821] merge_code::dest_code#3 = ++ merge_code::dest_code#2
  [822] merge_code::cycle_budget#2 = merge_code::cycle_budget#10 - 3
  to:merge_code::@10
merge_code::@20: scope:[merge_code]  from merge_code::@5
  [823] if(merge_code::logic_cycles#0<merge_code::$5) goto merge_code::@9
  to:merge_code::@21
merge_code::@21: scope:[merge_code]  from merge_code::@20
  [824] if(merge_code::logic_cycles#0==merge_code::cycle_budget#13) goto merge_code::@9
  to:merge_code::@10
merge_code::@9: scope:[merge_code]  from merge_code::@20 merge_code::@21
  [825] merge_code::logic_code#0 = ++ merge_code::logic_code#17
  to:merge_code::@6
merge_code::@6: scope:[merge_code]  from merge_code::@7 merge_code::@9
  [826] merge_code::dest_code#15 = phi( merge_code::@7/merge_code::dest_code#1, merge_code::@9/merge_code::dest_code#21 )
  [826] merge_code::logic_code#10 = phi( merge_code::@7/merge_code::logic_code#1, merge_code::@9/merge_code::logic_code#0 )
  [827] if(*merge_code::logic_code#10!=merge_code::LOGIC_END) goto merge_code::@7
  to:merge_code::@8
merge_code::@8: scope:[merge_code]  from merge_code::@6
  [828] merge_code::logic_code#2 = ++ merge_code::logic_code#10
  [829] merge_code::cycle_budget#1 = merge_code::cycle_budget#13 - merge_code::logic_cycles#0
  to:merge_code::@4
merge_code::@7: scope:[merge_code]  from merge_code::@6
  [830] *merge_code::dest_code#15 = *merge_code::logic_code#10
  [831] merge_code::dest_code#1 = ++ merge_code::dest_code#15
  [832] merge_code::logic_code#1 = ++ merge_code::logic_code#10
  to:merge_code::@6
merge_code::@2: scope:[merge_code]  from merge_code::@1
  [833] *merge_code::dest_code#14 = *merge_code::raster_code#4
  [834] merge_code::dest_code#0 = ++ merge_code::dest_code#14
  [835] merge_code::raster_code#0 = ++ merge_code::raster_code#4
  to:merge_code::@1

void init_render_index()
init_render_index: scope:[init_render_index]  from splash_run::@27
  [836] phi()
  to:init_render_index::@1
init_render_index::@1: scope:[init_render_index]  from init_render_index init_render_index::@7
  [837] init_render_index::render_index_xcol#0 = phi( init_render_index/RENDER_INDEX, init_render_index::@7/init_render_index::render_index#1 )
  [837] init_render_index::x_col#2 = phi( init_render_index/0, init_render_index::@7/init_render_index::x_col#1 )
  [838] if(init_render_index::x_col#2<$1a) goto init_render_index::@2
  to:init_render_index::@3
init_render_index::@3: scope:[init_render_index]  from init_render_index::@1
  [839] *(RENDER_INDEX+$18*$100+RENDER_OFFSET_YPOS_INC) = 0
  [840] *(RENDER_INDEX+$19*$100+RENDER_OFFSET_YPOS_INC) = 0
  to:init_render_index::@return
init_render_index::@return: scope:[init_render_index]  from init_render_index::@3
  [841] return 
  to:@return
init_render_index::@2: scope:[init_render_index]  from init_render_index::@1
  [842] if(init_render_index::x_col#2<$18) goto init_render_index::@4
  to:init_render_index::@10
init_render_index::@10: scope:[init_render_index]  from init_render_index::@2
  [843] phi()
  to:init_render_index::@4
init_render_index::@4: scope:[init_render_index]  from init_render_index::@10 init_render_index::@2
  [844] init_render_index::ypos_inc_offset#7 = phi( init_render_index::@10/$b, init_render_index::@2/0 )
  [844] init_render_index::render_ypos_table#4 = phi( init_render_index::@10/RENDER_YPOS_9TH, init_render_index::@2/RENDER_YPOS )
  [845] init_render_index::$9 = init_render_index::x_col#2 << 1
  [846] init_render_index::canvas_xcol#0 = RENDER_XCOLS[init_render_index::$9]
  [847] init_render_index::render_index_xcol#7 = init_render_index::render_index_xcol#0
  to:init_render_index::@5
init_render_index::@5: scope:[init_render_index]  from init_render_index::@4 init_render_index::@8
  [848] init_render_index::ypos_inc_offset#4 = phi( init_render_index::@4/init_render_index::ypos_inc_offset#7, init_render_index::@8/init_render_index::ypos_inc_offset#8 )
  [848] init_render_index::render_index_xcol#2 = phi( init_render_index::@4/init_render_index::render_index_xcol#7, init_render_index::@8/init_render_index::render_index_xcol#1 )
  [848] init_render_index::y_pos#2 = phi( init_render_index::@4/0, init_render_index::@8/init_render_index::y_pos#1 )
  [849] if(init_render_index::y_pos#2<$94) goto init_render_index::@6
  to:init_render_index::@7
init_render_index::@7: scope:[init_render_index]  from init_render_index::@5
  [850] init_render_index::render_index#1 = init_render_index::render_index_xcol#0 + $100
  [851] init_render_index::x_col#1 = ++ init_render_index::x_col#2
  to:init_render_index::@1
init_render_index::@6: scope:[init_render_index]  from init_render_index::@5
  [852] init_render_index::$11 = (unsigned int)init_render_index::y_pos#2
  [853] init_render_index::$10 = init_render_index::$11 << 1
  [854] init_render_index::$12 = init_render_index::render_ypos_table#4 + init_render_index::$10
  [855] init_render_index::canvas#0 = init_render_index::canvas_xcol#0 + *init_render_index::$12
  [856] init_render_index::$5 = byte0  init_render_index::canvas#0
  [857] *init_render_index::render_index_xcol#2 = init_render_index::$5
  [858] init_render_index::$6 = byte1  init_render_index::canvas#0
  [859] init_render_index::render_index_xcol#2[RENDER_OFFSET_CANVAS_HI] = init_render_index::$6
  [860] init_render_index::render_index_xcol#2[RENDER_OFFSET_YPOS_INC] = init_render_index::ypos_inc_offset#4
  [861] init_render_index::ypos_inc_offset#2 = init_render_index::ypos_inc_offset#4 + 2
  [862] if(init_render_index::ypos_inc_offset#2<$17) goto init_render_index::@8
  to:init_render_index::@9
init_render_index::@9: scope:[init_render_index]  from init_render_index::@6
  [863] init_render_index::ypos_inc_offset#3 = init_render_index::ypos_inc_offset#2 - $15
  to:init_render_index::@8
init_render_index::@8: scope:[init_render_index]  from init_render_index::@6 init_render_index::@9
  [864] init_render_index::ypos_inc_offset#8 = phi( init_render_index::@6/init_render_index::ypos_inc_offset#2, init_render_index::@9/init_render_index::ypos_inc_offset#3 )
  [865] init_render_index::render_index_xcol#1 = ++ init_render_index::render_index_xcol#2
  [866] init_render_index::y_pos#1 = init_render_index::y_pos#2 + 2
  to:init_render_index::@5

void splash_show()
splash_show: scope:[splash_show]  from splash_run::@29
  [867] phi()
  to:splash_show::@1
splash_show::@1: scope:[splash_show]  from splash_show splash_show::@4
  [868] splash_show::splash#4 = phi( splash_show/SPLASH, splash_show::@4/splash_show::splash#2 )
  [868] splash_show::xcol#2 = phi( splash_show/0, splash_show::@4/splash_show::xcol#1 )
  [869] if(splash_show::xcol#2<$19) goto splash_show::@2
  to:splash_show::@return
splash_show::@return: scope:[splash_show]  from splash_show::@1
  [870] return 
  to:@return
splash_show::@2: scope:[splash_show]  from splash_show::@1 splash_show::@5
  [871] splash_show::splash#2 = phi( splash_show::@1/splash_show::splash#4, splash_show::@5/splash_show::splash#1 )
  [871] splash_show::ypos#2 = phi( splash_show::@1/0, splash_show::@5/splash_show::ypos#1 )
  [872] if(splash_show::ypos#2<$93) goto splash_show::@3
  to:splash_show::@4
splash_show::@4: scope:[splash_show]  from splash_show::@2
  [873] splash_show::xcol#1 = ++ splash_show::xcol#2
  to:splash_show::@1
splash_show::@3: scope:[splash_show]  from splash_show::@2
  [874] splash_show::pixels#0 = *splash_show::splash#2
  [875] splash_show::splash#1 = ++ splash_show::splash#2
  [876] render::xcol#1 = splash_show::xcol#2
  [877] render::ypos#1 = splash_show::ypos#2
  [878] render::pixels#1 = splash_show::pixels#0
  [879] call render
  to:splash_show::@5
splash_show::@5: scope:[splash_show]  from splash_show::@3
  [880] splash_show::ypos#1 = ++ splash_show::ypos#2
  to:splash_show::@2

void init_bobs_restore()
init_bobs_restore: scope:[init_bobs_restore]  from splash_run::@31
  [881] phi()
  to:init_bobs_restore::@1
init_bobs_restore::@1: scope:[init_bobs_restore]  from init_bobs_restore init_bobs_restore::@5
  [882] init_bobs_restore::bob_restore#5 = phi( init_bobs_restore/bobs_restore, init_bobs_restore::@5/init_bobs_restore::bob_restore#1 )
  [882] init_bobs_restore::bob#2 = phi( init_bobs_restore/0, init_bobs_restore::@5/init_bobs_restore::bob#1 )
  [883] if(init_bobs_restore::bob#2<NUM_BOBS*2) goto init_bobs_restore::@3
  to:init_bobs_restore::@2
init_bobs_restore::@2: scope:[init_bobs_restore]  from init_bobs_restore::@1
  [884] logic_tile_ptr = LEVEL_TILES+(unsigned int)$40*$12+$c
  [885] logic_tile_xcol = $c
  [886] logic_tile_yfine = $23
  to:init_bobs_restore::@return
init_bobs_restore::@return: scope:[init_bobs_restore]  from init_bobs_restore::@2
  [887] return 
  to:@return
init_bobs_restore::@3: scope:[init_bobs_restore]  from init_bobs_restore::@1 init_bobs_restore::@4
  [888] init_bobs_restore::i#2 = phi( init_bobs_restore::@1/0, init_bobs_restore::@4/init_bobs_restore::i#1 )
  [889] if(init_bobs_restore::i#2<SIZE_BOB_RESTORE) goto init_bobs_restore::@4
  to:init_bobs_restore::@5
init_bobs_restore::@5: scope:[init_bobs_restore]  from init_bobs_restore::@3
  [890] *init_bobs_restore::bob_restore#5 = 0
  [891] init_bobs_restore::bob_restore#5[1] = byte1 init_bobs_restore::CANVAS_HIDDEN
  [892] init_bobs_restore::bob_restore#5[3] = 0
  [893] init_bobs_restore::bob_restore#5[4] = byte1 init_bobs_restore::CANVAS_HIDDEN
  [894] init_bobs_restore::bob_restore#1 = init_bobs_restore::bob_restore#5 + SIZE_BOB_RESTORE
  [895] init_bobs_restore::bob#1 = ++ init_bobs_restore::bob#2
  to:init_bobs_restore::@1
init_bobs_restore::@4: scope:[init_bobs_restore]  from init_bobs_restore::@3
  [896] init_bobs_restore::bob_restore#5[init_bobs_restore::i#2] = 0
  [897] init_bobs_restore::i#1 = ++ init_bobs_restore::i#2
  to:init_bobs_restore::@3

void init_sprite_pointers()
init_sprite_pointers: scope:[init_sprite_pointers]  from gameplay_run::@15 splash_run::@33
  [898] phi()
  to:init_sprite_pointers::@1
init_sprite_pointers::@1: scope:[init_sprite_pointers]  from init_sprite_pointers init_sprite_pointers::@4
  [899] init_sprite_pointers::sprites_ptr_2#5 = phi( init_sprite_pointers/SCREENS_2+OFFSET_SPRITE_PTRS, init_sprite_pointers::@4/init_sprite_pointers::sprites_ptr_2#1 )
  [899] init_sprite_pointers::sprites_ptr_1#5 = phi( init_sprite_pointers/SCREENS_1+OFFSET_SPRITE_PTRS, init_sprite_pointers::@4/init_sprite_pointers::sprites_ptr_1#1 )
  [899] init_sprite_pointers::screen#2 = phi( init_sprite_pointers/0, init_sprite_pointers::@4/init_sprite_pointers::screen#1 )
  [900] if(init_sprite_pointers::screen#2<$e) goto init_sprite_pointers::@2
  to:init_sprite_pointers::@return
init_sprite_pointers::@return: scope:[init_sprite_pointers]  from init_sprite_pointers::@1
  [901] return 
  to:@return
init_sprite_pointers::@2: scope:[init_sprite_pointers]  from init_sprite_pointers::@1 init_sprite_pointers::@3
  [902] init_sprite_pointers::sprite#2 = phi( init_sprite_pointers::@1/0, init_sprite_pointers::@3/init_sprite_pointers::sprite#1 )
  [903] if(init_sprite_pointers::sprite#2<8) goto init_sprite_pointers::@3
  to:init_sprite_pointers::@4
init_sprite_pointers::@4: scope:[init_sprite_pointers]  from init_sprite_pointers::@2
  [904] init_sprite_pointers::sprites_ptr_1#1 = init_sprite_pointers::sprites_ptr_1#5 + $400
  [905] init_sprite_pointers::sprites_ptr_2#1 = init_sprite_pointers::sprites_ptr_2#5 + $400
  [906] init_sprite_pointers::screen#1 = ++ init_sprite_pointers::screen#2
  to:init_sprite_pointers::@1
init_sprite_pointers::@3: scope:[init_sprite_pointers]  from init_sprite_pointers::@2
  [907] init_sprite_pointers::$2 = init_sprite_pointers::SPRITE_ID_0 + init_sprite_pointers::screen#2
  [908] init_sprite_pointers::sprite_id#0 = init_sprite_pointers::$2 + init_sprite_pointers::sprites_id[init_sprite_pointers::sprite#2]
  [909] init_sprite_pointers::sprites_ptr_1#5[init_sprite_pointers::sprite#2] = init_sprite_pointers::sprite_id#0
  [910] init_sprite_pointers::sprites_ptr_2#5[init_sprite_pointers::sprite#2] = init_sprite_pointers::sprite_id#0
  [911] init_sprite_pointers::sprite#1 = ++ init_sprite_pointers::sprite#2
  to:init_sprite_pointers::@2

void * memcpy(void *destination , void *source , unsigned int num)
memcpy: scope:[memcpy]  from splash_run::@34
  [912] phi()
  to:memcpy::@1
memcpy::@1: scope:[memcpy]  from memcpy memcpy::@2
  [913] memcpy::dst#2 = phi( memcpy/(char *)memcpy::destination#0, memcpy::@2/memcpy::dst#1 )
  [913] memcpy::src#2 = phi( memcpy/(char *)memcpy::source#0, memcpy::@2/memcpy::src#1 )
  [914] if(memcpy::src#2!=memcpy::src_end#0) goto memcpy::@2
  to:memcpy::@return
memcpy::@return: scope:[memcpy]  from memcpy::@1
  [915] return 
  to:@return
memcpy::@2: scope:[memcpy]  from memcpy::@1
  [916] *memcpy::dst#2 = *memcpy::src#2
  [917] memcpy::dst#1 = ++ memcpy::dst#2
  [918] memcpy::src#1 = ++ memcpy::src#2
  to:memcpy::@1

void joyinit()
joyinit: scope:[joyinit]  from splash_run::@21
  [919] *((char *)CIA1+OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) = 0
  to:joyinit::@return
joyinit::@return: scope:[joyinit]  from joyinit
  [920] return 
  to:@return

char joyfire()
joyfire: scope:[joyfire]  from done_run::@14 splash_run::@14
  [921] joyfire::$0 = *((char *)CIA1) & $10
  [922] if(joyfire::$0==0) goto joyfire::@1
  to:joyfire::@return
joyfire::@1: scope:[joyfire]  from joyfire
  [923] phi()
  to:joyfire::@return
joyfire::@return: scope:[joyfire]  from joyfire joyfire::@1
  [924] joyfire::return#4 = phi( joyfire::@1/1, joyfire/0 )
  [925] return 
  to:@return

void init_level_tile_directions()
init_level_tile_directions: scope:[init_level_tile_directions]  from gameplay_run::@14
  [926] phi()
  to:init_level_tile_directions::@1
init_level_tile_directions::@1: scope:[init_level_tile_directions]  from init_level_tile_directions init_level_tile_directions::@4
  [927] init_level_tile_directions::directions#7 = phi( init_level_tile_directions/LEVEL_TILES_DIRECTIONS, init_level_tile_directions::@4/init_level_tile_directions::directions#1 )
  [927] init_level_tile_directions::ytile#15 = phi( init_level_tile_directions/0, init_level_tile_directions::@4/init_level_tile_directions::ytile#1 )
  [928] if(init_level_tile_directions::ytile#15<$25) goto init_level_tile_directions::@2
  to:init_level_tile_directions::@return
init_level_tile_directions::@return: scope:[init_level_tile_directions]  from init_level_tile_directions::@1
  [929] return 
  to:@return
init_level_tile_directions::@2: scope:[init_level_tile_directions]  from init_level_tile_directions::@1 init_level_tile_directions::@8
  [930] init_level_tile_directions::xtile#10 = phi( init_level_tile_directions::@1/0, init_level_tile_directions::@8/init_level_tile_directions::xtile#1 )
  [931] if(init_level_tile_directions::xtile#10<$32) goto init_level_tile_directions::@3
  to:init_level_tile_directions::@4
init_level_tile_directions::@4: scope:[init_level_tile_directions]  from init_level_tile_directions::@2
  [932] init_level_tile_directions::directions#1 = init_level_tile_directions::directions#7 + $40
  [933] init_level_tile_directions::ytile#1 = ++ init_level_tile_directions::ytile#15
  to:init_level_tile_directions::@1
init_level_tile_directions::@3: scope:[init_level_tile_directions]  from init_level_tile_directions::@2
  [934] level_tile_get::xtile#0 = init_level_tile_directions::xtile#10 - 1
  [935] level_tile_get::ytile#0 = init_level_tile_directions::ytile#15
  [936] call level_tile_get
  [937] level_tile_get::return#3 = level_tile_get::return#2
  to:init_level_tile_directions::@13
init_level_tile_directions::@13: scope:[init_level_tile_directions]  from init_level_tile_directions::@3
  [938] init_level_tile_directions::$3 = level_tile_get::return#3
  [939] if(TILES_TYPE[init_level_tile_directions::$3]==WALL) goto init_level_tile_directions::@5
  to:init_level_tile_directions::@9
init_level_tile_directions::@9: scope:[init_level_tile_directions]  from init_level_tile_directions::@13
  [940] phi()
  to:init_level_tile_directions::@5
init_level_tile_directions::@5: scope:[init_level_tile_directions]  from init_level_tile_directions::@13 init_level_tile_directions::@9
  [941] init_level_tile_directions::open_directions#11 = phi( init_level_tile_directions::@9/LEFT, init_level_tile_directions::@13/0 )
  [942] level_tile_get::xtile#1 = init_level_tile_directions::xtile#10 + 1
  [943] level_tile_get::ytile#1 = init_level_tile_directions::ytile#15
  [944] call level_tile_get
  [945] level_tile_get::return#4 = level_tile_get::return#2
  to:init_level_tile_directions::@14
init_level_tile_directions::@14: scope:[init_level_tile_directions]  from init_level_tile_directions::@5
  [946] init_level_tile_directions::$7 = level_tile_get::return#4
  [947] if(TILES_TYPE[init_level_tile_directions::$7]==WALL) goto init_level_tile_directions::@6
  to:init_level_tile_directions::@10
init_level_tile_directions::@10: scope:[init_level_tile_directions]  from init_level_tile_directions::@14
  [948] init_level_tile_directions::open_directions#2 = init_level_tile_directions::open_directions#11 | RIGHT
  to:init_level_tile_directions::@6
init_level_tile_directions::@6: scope:[init_level_tile_directions]  from init_level_tile_directions::@10 init_level_tile_directions::@14
  [949] init_level_tile_directions::open_directions#12 = phi( init_level_tile_directions::@10/init_level_tile_directions::open_directions#2, init_level_tile_directions::@14/init_level_tile_directions::open_directions#11 )
  [950] level_tile_get::ytile#2 = init_level_tile_directions::ytile#15 - 1
  [951] level_tile_get::xtile#2 = init_level_tile_directions::xtile#10
  [952] call level_tile_get
  [953] level_tile_get::return#10 = level_tile_get::return#2
  to:init_level_tile_directions::@15
init_level_tile_directions::@15: scope:[init_level_tile_directions]  from init_level_tile_directions::@6
  [954] init_level_tile_directions::$11 = level_tile_get::return#10
  [955] if(TILES_TYPE[init_level_tile_directions::$11]==WALL) goto init_level_tile_directions::@7
  to:init_level_tile_directions::@11
init_level_tile_directions::@11: scope:[init_level_tile_directions]  from init_level_tile_directions::@15
  [956] init_level_tile_directions::open_directions#3 = init_level_tile_directions::open_directions#12 | UP
  to:init_level_tile_directions::@7
init_level_tile_directions::@7: scope:[init_level_tile_directions]  from init_level_tile_directions::@11 init_level_tile_directions::@15
  [957] init_level_tile_directions::open_directions#13 = phi( init_level_tile_directions::@11/init_level_tile_directions::open_directions#3, init_level_tile_directions::@15/init_level_tile_directions::open_directions#12 )
  [958] level_tile_get::ytile#3 = init_level_tile_directions::ytile#15 + 1
  [959] level_tile_get::xtile#3 = init_level_tile_directions::xtile#10
  [960] call level_tile_get
  [961] level_tile_get::return#11 = level_tile_get::return#2
  to:init_level_tile_directions::@16
init_level_tile_directions::@16: scope:[init_level_tile_directions]  from init_level_tile_directions::@7
  [962] init_level_tile_directions::$15 = level_tile_get::return#11
  [963] if(TILES_TYPE[init_level_tile_directions::$15]==WALL) goto init_level_tile_directions::@8
  to:init_level_tile_directions::@12
init_level_tile_directions::@12: scope:[init_level_tile_directions]  from init_level_tile_directions::@16
  [964] init_level_tile_directions::open_directions#4 = init_level_tile_directions::open_directions#13 | DOWN
  to:init_level_tile_directions::@8
init_level_tile_directions::@8: scope:[init_level_tile_directions]  from init_level_tile_directions::@12 init_level_tile_directions::@16
  [965] init_level_tile_directions::open_directions#8 = phi( init_level_tile_directions::@12/init_level_tile_directions::open_directions#4, init_level_tile_directions::@16/init_level_tile_directions::open_directions#13 )
  [966] init_level_tile_directions::directions#7[init_level_tile_directions::xtile#10] = init_level_tile_directions::open_directions#8
  [967] init_level_tile_directions::xtile#1 = ++ init_level_tile_directions::xtile#10
  to:init_level_tile_directions::@2

unsigned int level_show()
level_show: scope:[level_show]  from gameplay_run::@16
  [968] phi()
  to:level_show::@1
level_show::@1: scope:[level_show]  from level_show level_show::@4
  [969] level_show::level#8 = phi( level_show/LEVEL_TILES, level_show::@4/level_show::level#1 )
  [969] level_show::count#12 = phi( level_show/0, level_show::@4/level_show::count#10 )
  [969] level_show::ytile#2 = phi( level_show/0, level_show::@4/level_show::ytile#1 )
  [970] if(level_show::ytile#2<$25) goto level_show::@2
  to:level_show::@return
level_show::@return: scope:[level_show]  from level_show::@1
  [971] return 
  to:@return
level_show::@2: scope:[level_show]  from level_show::@1 level_show::@9
  [972] level_show::count#10 = phi( level_show::@9/level_show::count#11, level_show::@1/level_show::count#12 )
  [972] level_show::xtile#3 = phi( level_show::@9/level_show::xtile#2, level_show::@1/0 )
  [972] level_show::xcol#2 = phi( level_show::@9/level_show::xcol#1, level_show::@1/0 )
  [973] if(level_show::xcol#2<$19) goto level_show::@3
  to:level_show::@4
level_show::@4: scope:[level_show]  from level_show::@2
  [974] level_show::level#1 = level_show::level#8 + $40
  [975] level_show::ytile#1 = ++ level_show::ytile#2
  to:level_show::@1
level_show::@3: scope:[level_show]  from level_show::@2
  [976] level_show::tile_left#0 = level_show::level#8[level_show::xtile#3]
  [977] level_show::xtile#1 = ++ level_show::xtile#3
  [978] if(TILES_TYPE[level_show::tile_left#0]!=PILL) goto level_show::@5
  to:level_show::@7
level_show::@7: scope:[level_show]  from level_show::@3
  [979] level_show::count#1 = ++ level_show::count#10
  to:level_show::@5
level_show::@5: scope:[level_show]  from level_show::@3 level_show::@7
  [980] level_show::count#5 = phi( level_show::@3/level_show::count#10, level_show::@7/level_show::count#1 )
  [981] level_show::tile_right#0 = level_show::level#8[level_show::xtile#1]
  [982] level_show::xtile#2 = ++ level_show::xtile#1
  [983] if(TILES_TYPE[level_show::tile_right#0]!=PILL) goto level_show::@6
  to:level_show::@8
level_show::@8: scope:[level_show]  from level_show::@5
  [984] level_show::count#2 = ++ level_show::count#5
  to:level_show::@6
level_show::@6: scope:[level_show]  from level_show::@5 level_show::@8
  [985] level_show::count#11 = phi( level_show::@8/level_show::count#2, level_show::@5/level_show::count#5 )
  [986] render_tiles::xcol#0 = level_show::xcol#2
  [987] render_tiles::ytile#0 = level_show::ytile#2
  [988] render_tiles::tile_left#0 = level_show::tile_left#0
  [989] render_tiles::tile_right#0 = level_show::tile_right#0
  [990] call render_tiles
  to:level_show::@9
level_show::@9: scope:[level_show]  from level_show::@6
  [991] level_show::xcol#1 = ++ level_show::xcol#2
  to:level_show::@2

void pacman_sound_init()
pacman_sound_init: scope:[pacman_sound_init]  from gameplay_run::@18
  [992] *((char *)SID+OFFSET_STRUCT_MOS6581_SID_VOLUME_FILTER_MODE) = $f
  [993] *((unsigned int *)SID) = 0
  [994] *((unsigned int *)SID+OFFSET_STRUCT_MOS6581_SID_CH1_PULSE_WIDTH) = 0
  [995] *((char *)SID+OFFSET_STRUCT_MOS6581_SID_CH1_CONTROL) = 0
  [996] *((char *)SID+OFFSET_STRUCT_MOS6581_SID_CH1_ATTACK_DECAY) = 0
  [997] *((char *)SID+OFFSET_STRUCT_MOS6581_SID_CH1_SUSTAIN_RELEASE) = $f0
  to:pacman_sound_init::@return
pacman_sound_init::@return: scope:[pacman_sound_init]  from pacman_sound_init
  [998] return 
  to:@return

void render(char xcol , char ypos , char pixels)
render: scope:[render]  from done_run::@12 splash_show::@3
  [999] render::pixels#4 = phi( done_run::@12/render::pixels#0, splash_show::@3/render::pixels#1 )
  [999] render::xcol#2 = phi( done_run::@12/render::xcol#0, splash_show::@3/render::xcol#1 )
  [999] render::ypos#2 = phi( done_run::@12/render::ypos#0, splash_show::@3/render::ypos#1 )
  [1000] render::ytile#0 = render::ypos#2 >> 2
  [1001] render::$1 = byte1 RENDER_INDEX + render::xcol#2
  [1002] render::$2 = render::ytile#0 << 1
  [1003] render::render_index_xcol#0 = render::$1 w= render::$2
  [1004] render::canvas_offset#0 = ((char *)render::render_index_xcol#0)[RENDER_OFFSET_CANVAS_HI] w= *((char *)render::render_index_xcol#0)
  [1005] render::canvas1#0 = SPRITES_1 + render::canvas_offset#0
  [1006] render::canvas2#0 = SPRITES_2 + render::canvas_offset#0
  [1007] render::ypos_inc_offset#0 = ((char *)render::render_index_xcol#0)[RENDER_OFFSET_YPOS_INC]
  [1008] render::ypix#0 = render::ypos#2 & 3
  to:render::@1
render::@1: scope:[render]  from render render::@2
  [1009] render::canvas2#2 = phi( render/render::canvas2#0, render::@2/render::canvas2#1 )
  [1009] render::ypos_inc_offset#2 = phi( render/render::ypos_inc_offset#0, render::@2/render::ypos_inc_offset#1 )
  [1009] render::canvas1#2 = phi( render/render::canvas1#0, render::@2/render::canvas1#1 )
  [1009] render::i#2 = phi( render/0, render::@2/render::i#1 )
  [1010] if(render::i#2<render::ypix#0) goto render::@2
  to:render::@3
render::@3: scope:[render]  from render::@1
  [1011] *render::canvas1#2 = render::pixels#4
  [1012] *render::canvas2#2 = render::pixels#4
  to:render::@return
render::@return: scope:[render]  from render::@3
  [1013] return 
  to:@return
render::@2: scope:[render]  from render::@1
  [1014] render::canvas1#1 = render::canvas1#2 + RENDER_YPOS_INC[render::ypos_inc_offset#2]
  [1015] render::canvas2#1 = render::canvas2#2 + RENDER_YPOS_INC[render::ypos_inc_offset#2]
  [1016] render::ypos_inc_offset#1 = ++ render::ypos_inc_offset#2
  [1017] render::i#1 = ++ render::i#2
  to:render::@1

char level_tile_get(char xtile , char ytile)
level_tile_get: scope:[level_tile_get]  from init_level_tile_directions::@3 init_level_tile_directions::@5 init_level_tile_directions::@6 init_level_tile_directions::@7
  [1018] level_tile_get::ytile#4 = phi( init_level_tile_directions::@3/level_tile_get::ytile#0, init_level_tile_directions::@5/level_tile_get::ytile#1, init_level_tile_directions::@6/level_tile_get::ytile#2, init_level_tile_directions::@7/level_tile_get::ytile#3 )
  [1018] level_tile_get::xtile#4 = phi( init_level_tile_directions::@3/level_tile_get::xtile#0, init_level_tile_directions::@5/level_tile_get::xtile#1, init_level_tile_directions::@6/level_tile_get::xtile#2, init_level_tile_directions::@7/level_tile_get::xtile#3 )
  [1019] if(level_tile_get::xtile#4>=$31+1) goto level_tile_get::@return
  to:level_tile_get::@2
level_tile_get::@2: scope:[level_tile_get]  from level_tile_get
  [1020] if(level_tile_get::ytile#4>=$24+1) goto level_tile_get::@return
  to:level_tile_get::@1
level_tile_get::@1: scope:[level_tile_get]  from level_tile_get::@2
  [1021] level_tile_get::$5 = level_tile_get::ytile#4 << 1
  [1022] level_tile_get::ytiles#0 = LEVEL_TILES + LEVEL_YTILE_OFFSET[level_tile_get::$5]
  [1023] level_tile_get::return#0 = level_tile_get::ytiles#0[level_tile_get::xtile#4]
  to:level_tile_get::@return
level_tile_get::@return: scope:[level_tile_get]  from level_tile_get level_tile_get::@1 level_tile_get::@2
  [1024] level_tile_get::return#2 = phi( level_tile_get::@1/level_tile_get::return#0, level_tile_get/0, level_tile_get::@2/0 )
  [1025] return 
  to:@return

void render_tiles(char xcol , char ytile , char tile_left , char tile_right)
render_tiles: scope:[render_tiles]  from level_show::@6
  [1026] render_tiles::$0 = render_tiles::tile_left#0 << 2
  [1027] render_tiles::tile_left_pixels#0 = TILES_LEFT + render_tiles::$0
  [1028] render_tiles::$2 = render_tiles::tile_right#0 << 2
  [1029] render_tiles::tile_right_pixels#0 = TILES_RIGHT + render_tiles::$2
  [1030] render_tiles::$4 = byte1 RENDER_INDEX + render_tiles::xcol#0
  [1031] render_tiles::$5 = render_tiles::ytile#0 << 1
  [1032] render_tiles::render_index_xcol#0 = render_tiles::$4 w= render_tiles::$5
  [1033] render_tiles::canvas_offset#0 = ((char *)render_tiles::render_index_xcol#0)[RENDER_OFFSET_CANVAS_HI] w= *((char *)render_tiles::render_index_xcol#0)
  [1034] render_tiles::canvas1#0 = SPRITES_1 + render_tiles::canvas_offset#0
  [1035] render_tiles::canvas2#0 = SPRITES_2 + render_tiles::canvas_offset#0
  [1036] render_tiles::ypos_inc_offset#0 = ((char *)render_tiles::render_index_xcol#0)[RENDER_OFFSET_YPOS_INC]
  to:render_tiles::@1
render_tiles::@1: scope:[render_tiles]  from render_tiles render_tiles::@2
  [1037] render_tiles::ypos_inc_offset#2 = phi( render_tiles/render_tiles::ypos_inc_offset#0, render_tiles::@2/render_tiles::ypos_inc_offset#1 )
  [1037] render_tiles::canvas2#2 = phi( render_tiles/render_tiles::canvas2#0, render_tiles::@2/render_tiles::canvas2#1 )
  [1037] render_tiles::canvas1#2 = phi( render_tiles/render_tiles::canvas1#0, render_tiles::@2/render_tiles::canvas1#1 )
  [1037] render_tiles::y#2 = phi( render_tiles/0, render_tiles::@2/render_tiles::y#1 )
  [1038] if(render_tiles::y#2<4) goto render_tiles::@2
  to:render_tiles::@return
render_tiles::@return: scope:[render_tiles]  from render_tiles::@1
  [1039] return 
  to:@return
render_tiles::@2: scope:[render_tiles]  from render_tiles::@1
  [1040] render_tiles::pixels#0 = render_tiles::tile_left_pixels#0[render_tiles::y#2] | render_tiles::tile_right_pixels#0[render_tiles::y#2]
  [1041] *render_tiles::canvas1#2 = render_tiles::pixels#0
  [1042] *render_tiles::canvas2#2 = render_tiles::pixels#0
  [1043] render_tiles::canvas1#1 = render_tiles::canvas1#2 + RENDER_YPOS_INC[render_tiles::ypos_inc_offset#2]
  [1044] render_tiles::canvas2#1 = render_tiles::canvas2#2 + RENDER_YPOS_INC[render_tiles::ypos_inc_offset#2]
  [1045] render_tiles::ypos_inc_offset#1 = ++ render_tiles::ypos_inc_offset#2
  [1046] render_tiles::y#1 = ++ render_tiles::y#2
  to:render_tiles::@1
