From 72e39f7cc482b3e2055c391007613d5eb4d1899a Mon Sep 17 00:00:00 2001 From: jespergravgaard Date: Sat, 7 Apr 2018 16:01:35 +0200 Subject: [PATCH] Form and GFX are now two separate modes --- .../dk/camelot64/kickc/test/TestPrograms.java | 19 +- .../kickc/test/kc/c64dtv-gfxexplorer.kc | 76 +- .../kickc/test/kc/var-forward-problem.kc | 8 + .../kickc/test/ref/c64dtv-gfxexplorer.asm | 421 +- .../kickc/test/ref/c64dtv-gfxexplorer.cfg | 990 +- .../kickc/test/ref/c64dtv-gfxexplorer.log | 15323 +++++++++------- .../kickc/test/ref/c64dtv-gfxexplorer.sym | 259 +- 7 files changed, 9888 insertions(+), 7208 deletions(-) create mode 100644 src/test/java/dk/camelot64/kickc/test/kc/var-forward-problem.kc diff --git a/src/test/java/dk/camelot64/kickc/test/TestPrograms.java b/src/test/java/dk/camelot64/kickc/test/TestPrograms.java index e2af7f14b..ccf61ad3c 100644 --- a/src/test/java/dk/camelot64/kickc/test/TestPrograms.java +++ b/src/test/java/dk/camelot64/kickc/test/TestPrograms.java @@ -46,13 +46,24 @@ public class TestPrograms { } @Test - public void testLoopProblem2() throws IOException, URISyntaxException { - compileAndCompare("loop-problem2"); + public void testC64DtvGfxExplorer() throws IOException, URISyntaxException { + compileAndCompare("c64dtv-gfxexplorer"); } @Test - public void testC64DtvGfxExplorer() throws IOException, URISyntaxException { - compileAndCompare("c64dtv-gfxexplorer"); + public void testVarForwardProblem() throws IOException, URISyntaxException { + try { + compileAndCompare("var-forward-problem"); + } catch(CompileError e) { + // ignore & return + return; + } + fail("Expected compile error."); + } + + @Test + public void testLoopProblem2() throws IOException, URISyntaxException { + compileAndCompare("loop-problem2"); } @Test diff --git a/src/test/java/dk/camelot64/kickc/test/kc/c64dtv-gfxexplorer.kc b/src/test/java/dk/camelot64/kickc/test/kc/c64dtv-gfxexplorer.kc index d6bd89b9b..48bebc68f 100644 --- a/src/test/java/dk/camelot64/kickc/test/kc/c64dtv-gfxexplorer.kc +++ b/src/test/java/dk/camelot64/kickc/test/kc/c64dtv-gfxexplorer.kc @@ -10,17 +10,16 @@ void main() { gfx_init(); form_init(); while(true) { - // Render form at the bottom 9 lines of the screen - while(*RASTER != $30+8*16) {} + // Let the user change the GFX configuration form_mode(); - // Allow user to control the graphics through the form - while(*RASTER!=$ff) {} - form_control(); - // Render graphics mode at the top 16 lines of the screen + // Show the GFX configuration gfx_mode(); } } +// Standard charset screen +const byte* VIC_SCREEN_STDCHAR = $8400; + // 8BPP Chunky Bitmap (contains 8bpp pixels) const dword PLANE_8BPP_CHUNKY = $20000; @@ -28,8 +27,6 @@ const dword PLANE_8BPP_CHUNKY = $20000; const byte* FORM_SCREEN = $8000; // Charset used for the FORM const byte* FORM_CHARSET = $9800; // Charset ROM -// Offset of the FORM from the top of the screen -const word FORM_OFFSET = 16*40; byte[] FORM_COLS = @@ -104,7 +101,7 @@ const byte* form_vic_bg3_lo = form_fields_val+34; // Change graphics mode to show the selected graphics mode void gfx_mode() { - + // Show the GFX configuration // DTV Graphics Mode byte dtv_control = 0; if(*form_ctrl_line!=0) { @@ -162,7 +159,7 @@ void gfx_mode() { *DTV_PLANEB_MODULO_LO = *form_b_mod_hi<<4|*form_b_mod_lo; *DTV_PLANEB_MODULO_HI = 0; - // Border colors + // Bakground colors *BGCOL1 = *form_vic_bg0_hi<<4|*form_vic_bg0_lo; *BGCOL2 = *form_vic_bg1_hi<<4|*form_vic_bg1_lo; *BGCOL3 = *form_vic_bg2_hi<<4|*form_vic_bg2_lo; @@ -172,14 +169,37 @@ void gfx_mode() { for(byte i : 0..$f) { DTV_PALETTE[i] = i; } + + // Wait for the user to press space + while(true) { + while(*RASTER!=$ff) {} + keyboard_event_scan(); + byte keyboard_event = keyboard_event_get(); + if(keyboard_event==KEY_SPACE) { + // If space pressed - change to form mode + return; + } + } + } // Initialize the different graphics in the memory void gfx_init() { + gfx_init_screen_stdchar(); gfx_init_plane_8bppchunky(); } +// Initialize std char screen +void gfx_init_screen_stdchar() { + byte* ch=VIC_SCREEN_STDCHAR; + for(byte cy: 0..24 ) { + for(byte cx: 0..39) { + *ch++ = (cy&$f)<<4|(cx&$f); + } + } +} + // Initialize 8BPP Chunky Bitmap (contains 8bpp pixels) void gfx_init_plane_8bppchunky() { // 320x200 8bpp pixels for Plane @@ -203,18 +223,22 @@ void gfx_init_plane_8bppchunky() { // Initialize the form colors, screen & form void form_init() { // Form Colors - print_set_screen(COLS+FORM_OFFSET); + print_set_screen(COLS); + print_cls(); print_str_lines(FORM_COLS); // Form Text - print_set_screen(FORM_SCREEN+FORM_OFFSET); + print_set_screen(FORM_SCREEN); + print_cls(); print_str_lines(FORM_TEXT); // Form Fields - form_set_screen(FORM_SCREEN+FORM_OFFSET); + form_set_screen(FORM_SCREEN); form_render_values(); } -// Change graphics mode to show the form +// Show the form - and let the user change values void form_mode() { + // Show the form + // DTV Graphics Bank *DTV_GRAPHICS_VIC_BANK = (byte)((dword)FORM_CHARSET/$10000); // DTV Color Bank @@ -235,8 +259,17 @@ void form_mode() { DTV_PALETTE[i] = DTV_PALETTE_DEFAULT[i]; } // Screen colors - *BORDERCOL = 0; *BGCOL = 0; + + // Let the user change values in the form + while(true) { + while(*RASTER!=$ff) {} + if(form_control()!=0) { + // Space pressed - change to GFX mode + return; + } + } + return; } // Table with addresses of the y-lines of the form. The first line contains the address of the form screen. @@ -281,7 +314,8 @@ void form_render_values() { } // Reads keyboard and allows the user to navigate and change the fields of the form -void form_control() { +// Returns 0 if space is not pressed, non-0 if space is pressed +byte form_control() { byte* field = form_field_ptr(form_field_idx); // Blinking cursor @@ -316,7 +350,7 @@ void form_control() { // Always blink cursor in new field form_cursor_count = FORM_CURSOR_BLINK/2; // Return to refresh - return; + return 0; } // Change value with cursor left/right @@ -334,7 +368,13 @@ void form_control() { } // Render field value *field = print_hextab[form_fields_val[form_field_idx]]; - return; + return 0; } + // Check for space press + if(key_event==KEY_SPACE) { + return $ff; + } + return 0; + } diff --git a/src/test/java/dk/camelot64/kickc/test/kc/var-forward-problem.kc b/src/test/java/dk/camelot64/kickc/test/kc/var-forward-problem.kc new file mode 100644 index 000000000..6b3782051 --- /dev/null +++ b/src/test/java/dk/camelot64/kickc/test/kc/var-forward-problem.kc @@ -0,0 +1,8 @@ +// Illustrates the problem with variable forward references not working + +void main() { + *screen = b; +} + +const byte* screen = $400; +const byte b = 'a'; \ No newline at end of file diff --git a/src/test/java/dk/camelot64/kickc/test/ref/c64dtv-gfxexplorer.asm b/src/test/java/dk/camelot64/kickc/test/ref/c64dtv-gfxexplorer.asm index 800fe9e52..57f00cfff 100644 --- a/src/test/java/dk/camelot64/kickc/test/ref/c64dtv-gfxexplorer.asm +++ b/src/test/java/dk/camelot64/kickc/test/ref/c64dtv-gfxexplorer.asm @@ -2,7 +2,6 @@ :BasicUpstart(main) .pc = $80d "Program" .label RASTER = $d012 - .label BORDERCOL = $d020 .label BGCOL = $d021 .label BGCOL1 = $d021 .label BGCOL2 = $d022 @@ -55,15 +54,16 @@ .const KEY_LSHIFT = $f .const KEY_RSHIFT = $34 .const KEY_CTRL = $3a + .const KEY_SPACE = $3c .const KEY_COMMODORE = $3d .const KEY_MODIFIER_LSHIFT = 1 .const KEY_MODIFIER_RSHIFT = 2 .const KEY_MODIFIER_CTRL = 4 .const KEY_MODIFIER_COMMODORE = 8 + .label VIC_SCREEN_STDCHAR = $8400 .const PLANE_8BPP_CHUNKY = $20000 .label FORM_SCREEN = $8000 .label FORM_CHARSET = $9800 - .const FORM_OFFSET = $10*$28 .const form_fields_cnt = $23 .const FORM_CURSOR_BLINK = $28 .const KEY_MODIFIER_SHIFT = KEY_MODIFIER_LSHIFT|KEY_MODIFIER_RSHIFT @@ -97,10 +97,11 @@ .label form_vic_bg3_hi = form_fields_val+$21 .label form_vic_bg3_lo = form_fields_val+$22 .label print_char_cursor = 9 - .label keyboard_events_size = 6 - .label form_cursor_count = 2 - .label form_field_idx = 3 .label print_line_cursor = $b + .label keyboard_events_size = 4 + .label keyboard_modifiers = 3 + .label form_cursor_count = 5 + .label form_field_idx = 6 jsr main main: { sei @@ -111,21 +112,14 @@ main: { jsr form_init lda #0 sta form_field_idx + sta keyboard_modifiers sta keyboard_events_size lda #FORM_CURSOR_BLINK/2 sta form_cursor_count - b4: - lda RASTER - cmp #$30+8*$10 - bne b4 + b2: jsr form_mode - b7: - lda RASTER - cmp #$ff - bne b7 - jsr form_control jsr gfx_mode - jmp b4 + jmp b2 } gfx_mode: { .label _33 = 7 @@ -138,10 +132,10 @@ gfx_mode: { .label plane_b = $d lda form_ctrl_line cmp #0 - beq b11 + beq b12 ldx #0|DTV_LINEAR jmp b1 - b11: + b12: ldx #0 b1: lda form_ctrl_borof @@ -182,10 +176,10 @@ gfx_mode: { stx DTV_CONTROL lda form_ctrl_ecm cmp #0 - beq b12 + beq b13 ldx #VIC_DEN|VIC_RSEL|3|VIC_ECM jmp b7 - b12: + b13: ldx #VIC_DEN|VIC_RSEL|3 b7: lda form_ctrl_bmm @@ -198,10 +192,10 @@ gfx_mode: { stx VIC_CONTROL lda form_ctrl_mcm cmp #0 - beq b13 + beq b15 lda #VIC_CSEL|VIC_MCM jmp b9 - b13: + b15: lda #VIC_CSEL b9: sta VIC_CONTROL2 @@ -341,107 +335,18 @@ gfx_mode: { inx cpx #$10 bne b10 - rts -} -form_control: { - .label field = 7 - ldx form_field_idx - jsr form_field_ptr - dec form_cursor_count - lda form_cursor_count - cmp #0 - bpl b1 - lda #FORM_CURSOR_BLINK - sta form_cursor_count - b1: - lda form_cursor_count - sec - sbc #FORM_CURSOR_BLINK/2 - bvc !+ - eor #$80 - !: - bmi !b2+ - jmp b2 - !b2: - lda #$80 - ldy #0 - ora (field),y - sta (field),y - b3: - jsr keyboard_event_scan - jsr keyboard_event_get - cmp #KEY_CRSR_DOWN - bne b4 - lda #$7f - ldy #0 - and (field),y - sta (field),y - txa - and #KEY_MODIFIER_SHIFT - cmp #0 - bne b5 - inc form_field_idx - lda form_field_idx - cmp #form_fields_cnt - bne b7 - tya - sta form_field_idx - b7: - lda #FORM_CURSOR_BLINK/2 - sta form_cursor_count + jmp b14 breturn: rts - b5: - dec form_field_idx - lda form_field_idx + b14: + lda RASTER cmp #$ff - bne b7 - lda #form_fields_cnt-1 - sta form_field_idx - jmp b7 - b4: - cmp #KEY_CRSR_RIGHT - bne breturn - txa - and #KEY_MODIFIER_SHIFT - cmp #0 - bne b10 - ldx form_field_idx - inc form_fields_val,x - ldy form_field_idx - lda form_fields_val,y - cmp form_fields_max,y - bcc b12 - beq b12 - lda #0 - sta form_fields_val,y - b12: - ldy form_field_idx - lda form_fields_val,y - tay - lda print_hextab,y - ldy #0 - sta (field),y + bne b14 + jsr keyboard_event_scan + jsr keyboard_event_get + cmp #KEY_SPACE + bne b14 jmp breturn - b10: - ldx form_field_idx - lda form_fields_val,x - sec - sbc #1 - sta form_fields_val,x - ldy form_field_idx - lda form_fields_val,y - cmp #$ff - bne b12 - lda form_fields_max,y - sta form_fields_val,y - jmp b12 - b2: - lda #$7f - ldy #0 - and (field),y - sta (field),y - jmp b3 } keyboard_event_get: { lda keyboard_events_size @@ -457,8 +362,8 @@ keyboard_event_get: { } keyboard_event_scan: { .label row_scan = $11 - .label keycode = 5 - .label row = 4 + .label keycode = 3 + .label row = 2 lda #0 sta keycode sta row @@ -510,37 +415,39 @@ keyboard_event_scan: { jsr keyboard_event_pressed cmp #0 beq b5 - ldx #0|KEY_MODIFIER_LSHIFT + lda #0|KEY_MODIFIER_LSHIFT + sta keyboard_modifiers jmp b9 b5: - ldx #0 + lda #0 + sta keyboard_modifiers b9: lda #KEY_RSHIFT sta keyboard_event_pressed.keycode jsr keyboard_event_pressed cmp #0 beq b10 - txa - ora #KEY_MODIFIER_RSHIFT - tax + lda #KEY_MODIFIER_RSHIFT + ora keyboard_modifiers + sta keyboard_modifiers b10: lda #KEY_CTRL sta keyboard_event_pressed.keycode jsr keyboard_event_pressed cmp #0 beq b11 - txa - ora #KEY_MODIFIER_CTRL - tax + lda #KEY_MODIFIER_CTRL + ora keyboard_modifiers + sta keyboard_modifiers b11: lda #KEY_COMMODORE sta keyboard_event_pressed.keycode jsr keyboard_event_pressed cmp #0 beq breturn - txa - ora #KEY_MODIFIER_COMMODORE - tax + lda #KEY_MODIFIER_COMMODORE + ora keyboard_modifiers + sta keyboard_modifiers breturn: rts b6: @@ -557,20 +464,18 @@ keyboard_event_scan: { jmp b8 } keyboard_event_pressed: { - .label row_bits = 5 - .label keycode = 4 + .label keycode = 2 lda keycode lsr lsr lsr - tay - lda keyboard_scan_values,y - sta row_bits + tax + ldy keyboard_scan_values,x lda #7 and keycode - tay - lda keyboard_matrix_col_bitmask,y - and row_bits + tax + tya + and keyboard_matrix_col_bitmask,x rts } keyboard_matrix_read: { @@ -580,23 +485,6 @@ keyboard_matrix_read: { eor #$ff rts } -form_field_ptr: { - .label return = 7 - .label _2 = 7 - ldy form_fields_y,x - lda form_line_hi,y - sta _2+1 - lda form_line_lo,y - sta _2 - lda form_fields_x,x - clc - adc return - sta return - lda #0 - adc return+1 - sta return+1 - rts -} form_mode: { lda #($ffffffff&FORM_CHARSET)/$10000 sta DTV_GRAPHICS_VIC_BANK @@ -624,26 +512,163 @@ form_mode: { cpx #$10 bne b1 lda #0 - sta BORDERCOL sta BGCOL + jmp b5 + breturn: + rts + b5: + lda RASTER + cmp #$ff + bne b5 + jsr form_control + txa + cmp #0 + beq b5 + jmp breturn +} +form_control: { + .label field = 7 + ldx form_field_idx + jsr form_field_ptr + dec form_cursor_count + lda form_cursor_count + cmp #0 + bpl b1 + lda #FORM_CURSOR_BLINK + sta form_cursor_count + b1: + lda form_cursor_count + sec + sbc #FORM_CURSOR_BLINK/2 + bvc !+ + eor #$80 + !: + bmi !b2+ + jmp b2 + !b2: + lda #$80 + ldy #0 + ora (field),y + sta (field),y + b3: + jsr keyboard_event_scan + jsr keyboard_event_get + cmp #KEY_CRSR_DOWN + bne b4 + lda #$7f + ldy #0 + and (field),y + sta (field),y + lda #KEY_MODIFIER_SHIFT + and keyboard_modifiers + cmp #0 + bne b5 + inc form_field_idx + lda form_field_idx + cmp #form_fields_cnt + bne b7 + tya + sta form_field_idx + b7: + lda #FORM_CURSOR_BLINK/2 + sta form_cursor_count + ldx #0 + breturn: + rts + b5: + dec form_field_idx + lda form_field_idx + cmp #$ff + bne b7 + lda #form_fields_cnt-1 + sta form_field_idx + jmp b7 + b4: + cmp #KEY_CRSR_RIGHT + bne b9 + lda #KEY_MODIFIER_SHIFT + and keyboard_modifiers + cmp #0 + bne b10 + ldx form_field_idx + inc form_fields_val,x + ldy form_field_idx + lda form_fields_val,y + cmp form_fields_max,y + bcc b12 + beq b12 + lda #0 + sta form_fields_val,y + b12: + ldy form_field_idx + lda form_fields_val,y + tay + lda print_hextab,y + ldy #0 + sta (field),y + b6: + ldx #0 + jmp breturn + b10: + ldx form_field_idx + lda form_fields_val,x + sec + sbc #1 + sta form_fields_val,x + ldy form_field_idx + lda form_fields_val,y + cmp #$ff + bne b12 + lda form_fields_max,y + sta form_fields_val,y + jmp b12 + b9: + cmp #KEY_SPACE + bne b6 + ldx #$ff + jmp breturn + b2: + lda #$7f + ldy #0 + and (field),y + sta (field),y + jmp b3 +} +form_field_ptr: { + .label return = 7 + .label _2 = 7 + ldy form_fields_y,x + lda form_line_hi,y + sta _2+1 + lda form_line_lo,y + sta _2 + lda form_fields_x,x + clc + adc return + sta return + lda #0 + adc return+1 + sta return+1 rts } form_init: { - lda #COLS+FORM_OFFSET + lda #>COLS sta print_set_screen.screen+1 jsr print_set_screen + jsr print_cls lda #FORM_COLS sta print_str_lines.str+1 jsr print_str_lines - lda #FORM_SCREEN+FORM_OFFSET + lda #>FORM_SCREEN sta print_set_screen.screen+1 jsr print_set_screen + jsr print_cls lda #FORM_TEXT @@ -669,12 +694,11 @@ form_render_values: { rts } form_set_screen: { - .label screen = FORM_SCREEN+FORM_OFFSET .label line = 7 ldx #0 - lda #screen + lda #>FORM_SCREEN sta line+1 b1: lda line @@ -749,11 +773,42 @@ print_ln: { !: rts } +print_cls: { + .label _0 = 9 + .label sc = 7 + lda print_set_screen.screen + sta sc + lda print_set_screen.screen+1 + sta sc+1 + b1: + lda #' ' + ldy #0 + sta (sc),y + inc sc + bne !+ + inc sc+1 + !: + lda print_set_screen.screen + clc + adc #<$3e8 + sta _0 + lda print_set_screen.screen+1 + adc #>$3e8 + sta _0+1 + lda sc+1 + cmp _0+1 + bne b1 + lda sc + cmp _0 + bne b1 + rts +} print_set_screen: { .label screen = $b rts } gfx_init: { + jsr gfx_init_screen_stdchar jsr gfx_init_plane_8bppchunky rts } @@ -830,6 +885,44 @@ dtvSetCpuBankSegment1: { .byte $32, $00 rts } +gfx_init_screen_stdchar: { + .label _1 = 3 + .label ch = 7 + .label cy = 2 + lda #VIC_SCREEN_STDCHAR + sta ch+1 + lda #0 + sta cy + b1: + ldx #0 + b2: + lda #$f + and cy + asl + asl + asl + asl + sta _1 + txa + and #$f + ora _1 + ldy #0 + sta (ch),y + inc ch + bne !+ + inc ch+1 + !: + inx + cpx #$28 + bne b2 + inc cy + lda cy + cmp #$19 + bne b1 + rts +} keyboard_init: { lda #$ff sta CIA1_PORT_A_DDR diff --git a/src/test/java/dk/camelot64/kickc/test/ref/c64dtv-gfxexplorer.cfg b/src/test/java/dk/camelot64/kickc/test/ref/c64dtv-gfxexplorer.cfg index 2114abc6d..f787074b3 100644 --- a/src/test/java/dk/camelot64/kickc/test/ref/c64dtv-gfxexplorer.cfg +++ b/src/test/java/dk/camelot64/kickc/test/ref/c64dtv-gfxexplorer.cfg @@ -1,615 +1,709 @@ @begin: scope:[] from [0] phi() [ ] ( ) - to:@32 -@32: scope:[] from @begin + to:@33 +@33: scope:[] from @begin [1] phi() [ ] ( ) [2] call main param-assignment [ ] ( ) to:@end -@end: scope:[] from @32 +@end: scope:[] from @33 [3] phi() [ ] ( ) -main: scope:[main] from @32 +main: scope:[main] from @33 asm { sei } [5] *((const byte*) DTV_FEATURE#0) ← (const byte) DTV_FEATURE_ENABLE#0 [ ] ( main:2 [ ] ) [6] call keyboard_init param-assignment [ ] ( main:2 [ ] ) - to:main::@19 -main::@19: scope:[main] from main + to:main::@7 +main::@7: scope:[main] from main [7] phi() [ ] ( main:2 [ ] ) [8] call gfx_init param-assignment [ ] ( main:2 [ ] ) - to:main::@20 -main::@20: scope:[main] from main::@19 + to:main::@8 +main::@8: scope:[main] from main::@7 [9] phi() [ ] ( main:2 [ ] ) [10] call form_init param-assignment [ ] ( main:2 [ ] ) to:main::@1 -main::@1: scope:[main] from main::@20 main::@23 - [11] (byte) form_field_idx#1 ← phi( main::@20/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@23/(byte) form_field_idx#14 ) [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [11] (byte) keyboard_events_size#20 ← phi( main::@20/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@23/(byte) keyboard_events_size#18 ) [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [11] (signed byte) form_cursor_count#1 ← phi( main::@20/(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 main::@23/(signed byte) form_cursor_count#12 ) [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [12] if(true) goto main::@4 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) +main::@1: scope:[main] from main::@10 main::@8 + [11] (byte) form_field_idx#1 ← phi( main::@10/(byte) form_field_idx#14 main::@8/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [11] (byte) keyboard_modifiers#24 ← phi( main::@10/(byte) keyboard_modifiers#11 main::@8/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [11] (byte) keyboard_events_size#27 ← phi( main::@10/(byte) keyboard_events_size#11 main::@8/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [11] (signed byte) form_cursor_count#1 ← phi( main::@10/(signed byte) form_cursor_count#13 main::@8/(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 ) [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [12] if(true) goto main::@2 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) to:main::@return main::@return: scope:[main] from main::@1 [13] return [ ] ( main:2 [ ] ) to:@return -main::@4: scope:[main] from main::@1 main::@4 - [14] if(*((const byte*) RASTER#0)!=(byte/signed byte/word/signed word/dword/signed dword) 48+(byte/signed byte/word/signed word/dword/signed dword) 8*(byte/signed byte/word/signed word/dword/signed dword) 16) goto main::@4 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - to:main::@6 -main::@6: scope:[main] from main::@4 - [15] phi() [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [16] call form_mode param-assignment [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - to:main::@7 -main::@7: scope:[main] from main::@6 main::@7 - [17] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto main::@7 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - to:main::@9 -main::@9: scope:[main] from main::@7 - [18] phi() [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [19] call form_control param-assignment [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ( main:2 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - to:main::@23 -main::@23: scope:[main] from main::@9 - [20] phi() [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ( main:2 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [21] call gfx_mode param-assignment [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ( main:2 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) +main::@2: scope:[main] from main::@1 + [14] phi() [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [15] call form_mode param-assignment [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:main::@10 +main::@10: scope:[main] from main::@2 + [16] phi() [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [17] call gfx_mode param-assignment [ form_cursor_count#13 keyboard_events_size#11 keyboard_modifiers#11 form_field_idx#14 ] ( main:2 [ form_cursor_count#13 keyboard_events_size#11 keyboard_modifiers#11 form_field_idx#14 ] ) to:main::@1 -gfx_mode: scope:[gfx_mode] from main::@23 - [22] if(*((const byte*) form_ctrl_line#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@1 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - to:gfx_mode::@11 -gfx_mode::@11: scope:[gfx_mode] from gfx_mode - [23] phi() [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - to:gfx_mode::@1 -gfx_mode::@1: scope:[gfx_mode] from gfx_mode gfx_mode::@11 - [24] (byte) gfx_mode::dtv_control#14 ← phi( gfx_mode/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_mode::@11/(byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) DTV_LINEAR#0 ) [ gfx_mode::dtv_control#14 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#14 ] ) - [25] if(*((const byte*) form_ctrl_borof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@2 [ gfx_mode::dtv_control#14 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#14 ] ) - to:gfx_mode::@12 -gfx_mode::@12: scope:[gfx_mode] from gfx_mode::@1 - [26] (byte) gfx_mode::dtv_control#2 ← (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 [ gfx_mode::dtv_control#2 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#2 ] ) - to:gfx_mode::@2 -gfx_mode::@2: scope:[gfx_mode] from gfx_mode::@1 gfx_mode::@12 - [27] (byte) gfx_mode::dtv_control#15 ← phi( gfx_mode::@1/(byte) gfx_mode::dtv_control#14 gfx_mode::@12/(byte) gfx_mode::dtv_control#2 ) [ gfx_mode::dtv_control#15 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#15 ] ) - [28] if(*((const byte*) form_ctrl_hicol#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@3 [ gfx_mode::dtv_control#15 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#15 ] ) - to:gfx_mode::@13 -gfx_mode::@13: scope:[gfx_mode] from gfx_mode::@2 - [29] (byte) gfx_mode::dtv_control#3 ← (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 [ gfx_mode::dtv_control#3 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#3 ] ) - to:gfx_mode::@3 -gfx_mode::@3: scope:[gfx_mode] from gfx_mode::@13 gfx_mode::@2 - [30] (byte) gfx_mode::dtv_control#10 ← phi( gfx_mode::@13/(byte) gfx_mode::dtv_control#3 gfx_mode::@2/(byte) gfx_mode::dtv_control#15 ) [ gfx_mode::dtv_control#10 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#10 ] ) - [31] if(*((const byte*) form_ctrl_overs#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@4 [ gfx_mode::dtv_control#10 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#10 ] ) - to:gfx_mode::@14 -gfx_mode::@14: scope:[gfx_mode] from gfx_mode::@3 - [32] (byte) gfx_mode::dtv_control#4 ← (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 [ gfx_mode::dtv_control#4 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#4 ] ) - to:gfx_mode::@4 -gfx_mode::@4: scope:[gfx_mode] from gfx_mode::@14 gfx_mode::@3 - [33] (byte) gfx_mode::dtv_control#11 ← phi( gfx_mode::@14/(byte) gfx_mode::dtv_control#4 gfx_mode::@3/(byte) gfx_mode::dtv_control#10 ) [ gfx_mode::dtv_control#11 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#11 ] ) - [34] if(*((const byte*) form_ctrl_colof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@5 [ gfx_mode::dtv_control#11 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#11 ] ) - to:gfx_mode::@15 -gfx_mode::@15: scope:[gfx_mode] from gfx_mode::@4 - [35] (byte) gfx_mode::dtv_control#5 ← (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 [ gfx_mode::dtv_control#5 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#5 ] ) - to:gfx_mode::@5 -gfx_mode::@5: scope:[gfx_mode] from gfx_mode::@15 gfx_mode::@4 - [36] (byte) gfx_mode::dtv_control#13 ← phi( gfx_mode::@15/(byte) gfx_mode::dtv_control#5 gfx_mode::@4/(byte) gfx_mode::dtv_control#11 ) [ gfx_mode::dtv_control#13 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#13 ] ) - [37] if(*((const byte*) form_ctrl_chunk#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@6 [ gfx_mode::dtv_control#13 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#13 ] ) - to:gfx_mode::@16 -gfx_mode::@16: scope:[gfx_mode] from gfx_mode::@5 - [38] (byte) gfx_mode::dtv_control#6 ← (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 [ gfx_mode::dtv_control#6 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#6 ] ) - to:gfx_mode::@6 -gfx_mode::@6: scope:[gfx_mode] from gfx_mode::@16 gfx_mode::@5 - [39] (byte) gfx_mode::dtv_control#12 ← phi( gfx_mode::@16/(byte) gfx_mode::dtv_control#6 gfx_mode::@5/(byte) gfx_mode::dtv_control#13 ) [ gfx_mode::dtv_control#12 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#12 ] ) - [40] *((const byte*) DTV_CONTROL#0) ← (byte) gfx_mode::dtv_control#12 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [41] if(*((const byte*) form_ctrl_ecm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@7 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - to:gfx_mode::@17 -gfx_mode::@17: scope:[gfx_mode] from gfx_mode::@6 - [42] phi() [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - to:gfx_mode::@7 -gfx_mode::@7: scope:[gfx_mode] from gfx_mode::@17 gfx_mode::@6 - [43] (byte) gfx_mode::vic_control#5 ← phi( gfx_mode::@17/(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3|(const byte) VIC_ECM#0 gfx_mode::@6/(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 ) [ gfx_mode::vic_control#5 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::vic_control#5 ] ) - [44] if(*((const byte*) form_ctrl_bmm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@8 [ gfx_mode::vic_control#5 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::vic_control#5 ] ) +gfx_mode: scope:[gfx_mode] from main::@10 + [18] if(*((const byte*) form_ctrl_line#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@1 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) to:gfx_mode::@18 -gfx_mode::@18: scope:[gfx_mode] from gfx_mode::@7 - [45] (byte) gfx_mode::vic_control#2 ← (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 [ gfx_mode::vic_control#2 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::vic_control#2 ] ) - to:gfx_mode::@8 -gfx_mode::@8: scope:[gfx_mode] from gfx_mode::@18 gfx_mode::@7 - [46] (byte) gfx_mode::vic_control#4 ← phi( gfx_mode::@18/(byte) gfx_mode::vic_control#2 gfx_mode::@7/(byte) gfx_mode::vic_control#5 ) [ gfx_mode::vic_control#4 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::vic_control#4 ] ) - [47] *((const byte*) VIC_CONTROL#0) ← (byte) gfx_mode::vic_control#4 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [48] if(*((const byte*) form_ctrl_mcm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@9 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) +gfx_mode::@18: scope:[gfx_mode] from gfx_mode + [19] phi() [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@1 +gfx_mode::@1: scope:[gfx_mode] from gfx_mode gfx_mode::@18 + [20] (byte) gfx_mode::dtv_control#14 ← phi( gfx_mode/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_mode::@18/(byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) DTV_LINEAR#0 ) [ gfx_mode::dtv_control#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [21] if(*((const byte*) form_ctrl_borof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@2 [ gfx_mode::dtv_control#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) to:gfx_mode::@19 -gfx_mode::@19: scope:[gfx_mode] from gfx_mode::@8 - [49] phi() [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) +gfx_mode::@19: scope:[gfx_mode] from gfx_mode::@1 + [22] (byte) gfx_mode::dtv_control#2 ← (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 [ gfx_mode::dtv_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@2 +gfx_mode::@2: scope:[gfx_mode] from gfx_mode::@1 gfx_mode::@19 + [23] (byte) gfx_mode::dtv_control#15 ← phi( gfx_mode::@1/(byte) gfx_mode::dtv_control#14 gfx_mode::@19/(byte) gfx_mode::dtv_control#2 ) [ gfx_mode::dtv_control#15 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#15 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [24] if(*((const byte*) form_ctrl_hicol#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@3 [ gfx_mode::dtv_control#15 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#15 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@20 +gfx_mode::@20: scope:[gfx_mode] from gfx_mode::@2 + [25] (byte) gfx_mode::dtv_control#3 ← (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 [ gfx_mode::dtv_control#3 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#3 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@3 +gfx_mode::@3: scope:[gfx_mode] from gfx_mode::@2 gfx_mode::@20 + [26] (byte) gfx_mode::dtv_control#10 ← phi( gfx_mode::@2/(byte) gfx_mode::dtv_control#15 gfx_mode::@20/(byte) gfx_mode::dtv_control#3 ) [ gfx_mode::dtv_control#10 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#10 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [27] if(*((const byte*) form_ctrl_overs#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@4 [ gfx_mode::dtv_control#10 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#10 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@21 +gfx_mode::@21: scope:[gfx_mode] from gfx_mode::@3 + [28] (byte) gfx_mode::dtv_control#4 ← (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 [ gfx_mode::dtv_control#4 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#4 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@4 +gfx_mode::@4: scope:[gfx_mode] from gfx_mode::@21 gfx_mode::@3 + [29] (byte) gfx_mode::dtv_control#11 ← phi( gfx_mode::@21/(byte) gfx_mode::dtv_control#4 gfx_mode::@3/(byte) gfx_mode::dtv_control#10 ) [ gfx_mode::dtv_control#11 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#11 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [30] if(*((const byte*) form_ctrl_colof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@5 [ gfx_mode::dtv_control#11 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#11 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@22 +gfx_mode::@22: scope:[gfx_mode] from gfx_mode::@4 + [31] (byte) gfx_mode::dtv_control#5 ← (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 [ gfx_mode::dtv_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@5 +gfx_mode::@5: scope:[gfx_mode] from gfx_mode::@22 gfx_mode::@4 + [32] (byte) gfx_mode::dtv_control#13 ← phi( gfx_mode::@22/(byte) gfx_mode::dtv_control#5 gfx_mode::@4/(byte) gfx_mode::dtv_control#11 ) [ gfx_mode::dtv_control#13 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#13 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [33] if(*((const byte*) form_ctrl_chunk#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@6 [ gfx_mode::dtv_control#13 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#13 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@23 +gfx_mode::@23: scope:[gfx_mode] from gfx_mode::@5 + [34] (byte) gfx_mode::dtv_control#6 ← (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 [ gfx_mode::dtv_control#6 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#6 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@6 +gfx_mode::@6: scope:[gfx_mode] from gfx_mode::@23 gfx_mode::@5 + [35] (byte) gfx_mode::dtv_control#12 ← phi( gfx_mode::@23/(byte) gfx_mode::dtv_control#6 gfx_mode::@5/(byte) gfx_mode::dtv_control#13 ) [ gfx_mode::dtv_control#12 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#12 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [36] *((const byte*) DTV_CONTROL#0) ← (byte) gfx_mode::dtv_control#12 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [37] if(*((const byte*) form_ctrl_ecm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@7 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@24 +gfx_mode::@24: scope:[gfx_mode] from gfx_mode::@6 + [38] phi() [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@7 +gfx_mode::@7: scope:[gfx_mode] from gfx_mode::@24 gfx_mode::@6 + [39] (byte) gfx_mode::vic_control#5 ← phi( gfx_mode::@24/(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3|(const byte) VIC_ECM#0 gfx_mode::@6/(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 ) [ gfx_mode::vic_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::vic_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [40] if(*((const byte*) form_ctrl_bmm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@8 [ gfx_mode::vic_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::vic_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@25 +gfx_mode::@25: scope:[gfx_mode] from gfx_mode::@7 + [41] (byte) gfx_mode::vic_control#2 ← (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 [ gfx_mode::vic_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::vic_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@8 +gfx_mode::@8: scope:[gfx_mode] from gfx_mode::@25 gfx_mode::@7 + [42] (byte) gfx_mode::vic_control#4 ← phi( gfx_mode::@25/(byte) gfx_mode::vic_control#2 gfx_mode::@7/(byte) gfx_mode::vic_control#5 ) [ gfx_mode::vic_control#4 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::vic_control#4 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [43] *((const byte*) VIC_CONTROL#0) ← (byte) gfx_mode::vic_control#4 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [44] if(*((const byte*) form_ctrl_mcm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@9 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@26 +gfx_mode::@26: scope:[gfx_mode] from gfx_mode::@8 + [45] phi() [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) to:gfx_mode::@9 -gfx_mode::@9: scope:[gfx_mode] from gfx_mode::@19 gfx_mode::@8 - [50] (byte) gfx_mode::vic_control2#2 ← phi( gfx_mode::@19/(const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 gfx_mode::@8/(const byte) VIC_CSEL#0 ) [ gfx_mode::vic_control2#2 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::vic_control2#2 ] ) - [51] *((const byte*) VIC_CONTROL2#0) ← (byte) gfx_mode::vic_control2#2 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [52] (byte~) gfx_mode::$29 ← *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$29 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$29 ] ) - [53] (byte) gfx_mode::plane_a_offs#0 ← (byte~) gfx_mode::$29 | *((const byte*) form_a_start_lo#0) [ gfx_mode::plane_a_offs#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a_offs#0 ] ) - [54] (dword) gfx_mode::plane_a#0 ← ((dword))(const byte*) FORM_SCREEN#0 + (byte) gfx_mode::plane_a_offs#0 [ gfx_mode::plane_a#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 ] ) - [55] (word~) gfx_mode::$33 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$33 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$33 ] ) - [56] (byte~) gfx_mode::$34 ← < (word~) gfx_mode::$33 [ gfx_mode::plane_a#0 gfx_mode::$34 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$34 ] ) - [57] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte~) gfx_mode::$34 [ gfx_mode::plane_a#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 ] ) - [58] (word~) gfx_mode::$35 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$35 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$35 ] ) - [59] (byte~) gfx_mode::$36 ← > (word~) gfx_mode::$35 [ gfx_mode::plane_a#0 gfx_mode::$36 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$36 ] ) - [60] *((const byte*) DTV_PLANEA_START_MI#0) ← (byte~) gfx_mode::$36 [ gfx_mode::plane_a#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 ] ) - [61] (word~) gfx_mode::$37 ← > (dword) gfx_mode::plane_a#0 [ gfx_mode::$37 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$37 ] ) - [62] (byte~) gfx_mode::$38 ← < (word~) gfx_mode::$37 [ gfx_mode::$38 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$38 ] ) - [63] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte~) gfx_mode::$38 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [64] (byte~) gfx_mode::$39 ← *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$39 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$39 ] ) - [65] (byte~) gfx_mode::$40 ← (byte~) gfx_mode::$39 | *((const byte*) form_a_step_lo#0) [ gfx_mode::$40 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$40 ] ) - [66] *((const byte*) DTV_PLANEA_STEP#0) ← (byte~) gfx_mode::$40 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [67] (byte~) gfx_mode::$41 ← *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$41 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$41 ] ) - [68] (byte~) gfx_mode::$42 ← (byte~) gfx_mode::$41 | *((const byte*) form_a_mod_lo#0) [ gfx_mode::$42 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$42 ] ) - [69] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte~) gfx_mode::$42 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [70] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [71] (byte~) gfx_mode::$43 ← *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$43 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$43 ] ) - [72] (byte) gfx_mode::plane_b_offs#0 ← (byte~) gfx_mode::$43 | *((const byte*) form_b_start_lo#0) [ gfx_mode::plane_b_offs#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b_offs#0 ] ) - [73] (dword) gfx_mode::plane_b#0 ← (const dword) PLANE_8BPP_CHUNKY#0 + (byte) gfx_mode::plane_b_offs#0 [ gfx_mode::plane_b#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 ] ) - [74] (word~) gfx_mode::$46 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$46 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$46 ] ) - [75] (byte~) gfx_mode::$47 ← < (word~) gfx_mode::$46 [ gfx_mode::plane_b#0 gfx_mode::$47 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$47 ] ) - [76] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte~) gfx_mode::$47 [ gfx_mode::plane_b#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 ] ) - [77] (word~) gfx_mode::$48 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$48 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$48 ] ) - [78] (byte~) gfx_mode::$49 ← > (word~) gfx_mode::$48 [ gfx_mode::plane_b#0 gfx_mode::$49 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$49 ] ) - [79] *((const byte*) DTV_PLANEB_START_MI#0) ← (byte~) gfx_mode::$49 [ gfx_mode::plane_b#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 ] ) - [80] (word~) gfx_mode::$50 ← > (dword) gfx_mode::plane_b#0 [ gfx_mode::$50 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$50 ] ) - [81] (byte~) gfx_mode::$51 ← < (word~) gfx_mode::$50 [ gfx_mode::$51 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$51 ] ) - [82] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte~) gfx_mode::$51 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [83] (byte~) gfx_mode::$52 ← *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$52 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$52 ] ) - [84] (byte~) gfx_mode::$53 ← (byte~) gfx_mode::$52 | *((const byte*) form_b_step_lo#0) [ gfx_mode::$53 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$53 ] ) - [85] *((const byte*) DTV_PLANEB_STEP#0) ← (byte~) gfx_mode::$53 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [86] (byte~) gfx_mode::$54 ← *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$54 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$54 ] ) - [87] (byte~) gfx_mode::$55 ← (byte~) gfx_mode::$54 | *((const byte*) form_b_mod_lo#0) [ gfx_mode::$55 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$55 ] ) - [88] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte~) gfx_mode::$55 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [89] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [90] (byte~) gfx_mode::$56 ← *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$56 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$56 ] ) - [91] (byte~) gfx_mode::$57 ← (byte~) gfx_mode::$56 | *((const byte*) form_vic_bg0_lo#0) [ gfx_mode::$57 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$57 ] ) - [92] *((const byte*) BGCOL1#0) ← (byte~) gfx_mode::$57 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [93] (byte~) gfx_mode::$58 ← *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$58 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$58 ] ) - [94] (byte~) gfx_mode::$59 ← (byte~) gfx_mode::$58 | *((const byte*) form_vic_bg1_lo#0) [ gfx_mode::$59 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$59 ] ) - [95] *((const byte*) BGCOL2#0) ← (byte~) gfx_mode::$59 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [96] (byte~) gfx_mode::$60 ← *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$60 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$60 ] ) - [97] (byte~) gfx_mode::$61 ← (byte~) gfx_mode::$60 | *((const byte*) form_vic_bg2_lo#0) [ gfx_mode::$61 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$61 ] ) - [98] *((const byte*) BGCOL3#0) ← (byte~) gfx_mode::$61 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [99] (byte~) gfx_mode::$62 ← *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$62 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$62 ] ) - [100] (byte~) gfx_mode::$63 ← (byte~) gfx_mode::$62 | *((const byte*) form_vic_bg3_lo#0) [ gfx_mode::$63 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$63 ] ) - [101] *((const byte*) BGCOL4#0) ← (byte~) gfx_mode::$63 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) +gfx_mode::@9: scope:[gfx_mode] from gfx_mode::@26 gfx_mode::@8 + [46] (byte) gfx_mode::vic_control2#2 ← phi( gfx_mode::@26/(const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 gfx_mode::@8/(const byte) VIC_CSEL#0 ) [ gfx_mode::vic_control2#2 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::vic_control2#2 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [47] *((const byte*) VIC_CONTROL2#0) ← (byte) gfx_mode::vic_control2#2 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [48] (byte~) gfx_mode::$29 ← *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$29 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$29 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [49] (byte) gfx_mode::plane_a_offs#0 ← (byte~) gfx_mode::$29 | *((const byte*) form_a_start_lo#0) [ gfx_mode::plane_a_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [50] (dword) gfx_mode::plane_a#0 ← ((dword))(const byte*) FORM_SCREEN#0 + (byte) gfx_mode::plane_a_offs#0 [ gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [51] (word~) gfx_mode::$33 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$33 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$33 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [52] (byte~) gfx_mode::$34 ← < (word~) gfx_mode::$33 [ gfx_mode::plane_a#0 gfx_mode::$34 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$34 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [53] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte~) gfx_mode::$34 [ gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [54] (word~) gfx_mode::$35 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$35 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$35 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [55] (byte~) gfx_mode::$36 ← > (word~) gfx_mode::$35 [ gfx_mode::plane_a#0 gfx_mode::$36 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$36 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [56] *((const byte*) DTV_PLANEA_START_MI#0) ← (byte~) gfx_mode::$36 [ gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [57] (word~) gfx_mode::$37 ← > (dword) gfx_mode::plane_a#0 [ gfx_mode::$37 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$37 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [58] (byte~) gfx_mode::$38 ← < (word~) gfx_mode::$37 [ gfx_mode::$38 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$38 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [59] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte~) gfx_mode::$38 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [60] (byte~) gfx_mode::$39 ← *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$39 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$39 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [61] (byte~) gfx_mode::$40 ← (byte~) gfx_mode::$39 | *((const byte*) form_a_step_lo#0) [ gfx_mode::$40 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$40 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [62] *((const byte*) DTV_PLANEA_STEP#0) ← (byte~) gfx_mode::$40 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [63] (byte~) gfx_mode::$41 ← *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$41 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$41 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [64] (byte~) gfx_mode::$42 ← (byte~) gfx_mode::$41 | *((const byte*) form_a_mod_lo#0) [ gfx_mode::$42 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$42 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [65] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte~) gfx_mode::$42 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [66] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [67] (byte~) gfx_mode::$43 ← *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$43 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$43 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [68] (byte) gfx_mode::plane_b_offs#0 ← (byte~) gfx_mode::$43 | *((const byte*) form_b_start_lo#0) [ gfx_mode::plane_b_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [69] (dword) gfx_mode::plane_b#0 ← (const dword) PLANE_8BPP_CHUNKY#0 + (byte) gfx_mode::plane_b_offs#0 [ gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [70] (word~) gfx_mode::$46 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$46 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$46 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [71] (byte~) gfx_mode::$47 ← < (word~) gfx_mode::$46 [ gfx_mode::plane_b#0 gfx_mode::$47 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$47 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [72] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte~) gfx_mode::$47 [ gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [73] (word~) gfx_mode::$48 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$48 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$48 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [74] (byte~) gfx_mode::$49 ← > (word~) gfx_mode::$48 [ gfx_mode::plane_b#0 gfx_mode::$49 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$49 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [75] *((const byte*) DTV_PLANEB_START_MI#0) ← (byte~) gfx_mode::$49 [ gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [76] (word~) gfx_mode::$50 ← > (dword) gfx_mode::plane_b#0 [ gfx_mode::$50 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$50 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [77] (byte~) gfx_mode::$51 ← < (word~) gfx_mode::$50 [ gfx_mode::$51 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$51 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [78] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte~) gfx_mode::$51 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [79] (byte~) gfx_mode::$52 ← *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$52 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$52 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [80] (byte~) gfx_mode::$53 ← (byte~) gfx_mode::$52 | *((const byte*) form_b_step_lo#0) [ gfx_mode::$53 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$53 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [81] *((const byte*) DTV_PLANEB_STEP#0) ← (byte~) gfx_mode::$53 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [82] (byte~) gfx_mode::$54 ← *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$54 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$54 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [83] (byte~) gfx_mode::$55 ← (byte~) gfx_mode::$54 | *((const byte*) form_b_mod_lo#0) [ gfx_mode::$55 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$55 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [84] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte~) gfx_mode::$55 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [85] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [86] (byte~) gfx_mode::$56 ← *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$56 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$56 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [87] (byte~) gfx_mode::$57 ← (byte~) gfx_mode::$56 | *((const byte*) form_vic_bg0_lo#0) [ gfx_mode::$57 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$57 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [88] *((const byte*) BGCOL1#0) ← (byte~) gfx_mode::$57 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [89] (byte~) gfx_mode::$58 ← *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$58 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$58 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [90] (byte~) gfx_mode::$59 ← (byte~) gfx_mode::$58 | *((const byte*) form_vic_bg1_lo#0) [ gfx_mode::$59 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$59 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [91] *((const byte*) BGCOL2#0) ← (byte~) gfx_mode::$59 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [92] (byte~) gfx_mode::$60 ← *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$60 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$60 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [93] (byte~) gfx_mode::$61 ← (byte~) gfx_mode::$60 | *((const byte*) form_vic_bg2_lo#0) [ gfx_mode::$61 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$61 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [94] *((const byte*) BGCOL3#0) ← (byte~) gfx_mode::$61 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [95] (byte~) gfx_mode::$62 ← *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$62 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$62 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [96] (byte~) gfx_mode::$63 ← (byte~) gfx_mode::$62 | *((const byte*) form_vic_bg3_lo#0) [ gfx_mode::$63 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$63 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [97] *((const byte*) BGCOL4#0) ← (byte~) gfx_mode::$63 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) to:gfx_mode::@10 gfx_mode::@10: scope:[gfx_mode] from gfx_mode::@10 gfx_mode::@9 - [102] (byte) gfx_mode::i#2 ← phi( gfx_mode::@10/(byte) gfx_mode::i#1 gfx_mode::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ gfx_mode::i#2 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::i#2 ] ) - [103] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::i#2) ← (byte) gfx_mode::i#2 [ gfx_mode::i#2 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::i#2 ] ) - [104] (byte) gfx_mode::i#1 ← ++ (byte) gfx_mode::i#2 [ gfx_mode::i#1 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::i#1 ] ) - [105] if((byte) gfx_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto gfx_mode::@10 [ gfx_mode::i#1 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::i#1 ] ) + [98] (byte) gfx_mode::i#2 ← phi( gfx_mode::@10/(byte) gfx_mode::i#1 gfx_mode::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ gfx_mode::i#2 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::i#2 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [99] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::i#2) ← (byte) gfx_mode::i#2 [ gfx_mode::i#2 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::i#2 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [100] (byte) gfx_mode::i#1 ← ++ (byte) gfx_mode::i#2 [ gfx_mode::i#1 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::i#1 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [101] if((byte) gfx_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto gfx_mode::@10 [ gfx_mode::i#1 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::i#1 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@11 +gfx_mode::@11: scope:[gfx_mode] from gfx_mode::@10 gfx_mode::@37 + [102] (byte) keyboard_modifiers#42 ← phi( gfx_mode::@10/(byte) keyboard_modifiers#13 gfx_mode::@37/(byte) keyboard_modifiers#21 ) [ keyboard_events_size#45 keyboard_modifiers#42 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#45 keyboard_modifiers#42 ] ) + [102] (byte) keyboard_events_size#45 ← phi( gfx_mode::@10/(byte) keyboard_events_size#13 gfx_mode::@37/(byte) keyboard_events_size#24 ) [ keyboard_events_size#45 keyboard_modifiers#42 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#45 keyboard_modifiers#42 ] ) + [103] if(true) goto gfx_mode::@14 [ keyboard_events_size#45 keyboard_modifiers#42 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#45 keyboard_modifiers#42 ] ) to:gfx_mode::@return -gfx_mode::@return: scope:[gfx_mode] from gfx_mode::@10 - [106] return [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) +gfx_mode::@return: scope:[gfx_mode] from gfx_mode::@11 gfx_mode::@37 + [104] (byte) keyboard_modifiers#11 ← phi( gfx_mode::@11/(byte) keyboard_modifiers#42 gfx_mode::@37/(byte) keyboard_modifiers#21 ) [ keyboard_events_size#11 keyboard_modifiers#11 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#11 keyboard_modifiers#11 ] ) + [104] (byte) keyboard_events_size#11 ← phi( gfx_mode::@11/(byte) keyboard_events_size#45 gfx_mode::@37/(byte) keyboard_events_size#24 ) [ keyboard_events_size#11 keyboard_modifiers#11 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#11 keyboard_modifiers#11 ] ) + [105] return [ keyboard_events_size#11 keyboard_modifiers#11 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#11 keyboard_modifiers#11 ] ) to:@return -form_control: scope:[form_control] from main::@9 - [107] (byte) form_field_ptr::field_idx#1 ← (byte) form_field_idx#1 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::field_idx#1 ] ( main:2::form_control:19 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::field_idx#1 ] ) - [108] call form_field_ptr param-assignment [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#0 ] ( main:2::form_control:19 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#0 ] ) - [109] (byte*) form_field_ptr::return#3 ← (byte*) form_field_ptr::return#0 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#3 ] ( main:2::form_control:19 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#3 ] ) - to:form_control::@29 -form_control::@29: scope:[form_control] from form_control - [110] (byte*) form_control::field#0 ← (byte*) form_field_ptr::return#3 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_control::field#0 ] ( main:2::form_control:19 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_control::field#0 ] ) - [111] (signed byte) form_cursor_count#3 ← -- (signed byte) form_cursor_count#1 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ) - [112] if((signed byte) form_cursor_count#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@32 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ) - to:form_control::@1 -form_control::@1: scope:[form_control] from form_control::@29 form_control::@32 - [113] (signed byte) form_cursor_count#11 ← phi( form_control::@29/(const signed byte) FORM_CURSOR_BLINK#0 form_control::@32/(signed byte) form_cursor_count#3 ) [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ) - [114] if((signed byte) form_cursor_count#11>=(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2) goto form_control::@2 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ) - to:form_control::@15 -form_control::@15: scope:[form_control] from form_control::@1 - [115] (byte/word/dword~) form_control::$6 ← *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) 128 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$6 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$6 ] ) - [116] *((byte*) form_control::field#0) ← (byte/word/dword~) form_control::$6 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ) - to:form_control::@3 -form_control::@3: scope:[form_control] from form_control::@15 form_control::@2 - [117] phi() [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ) - [118] call keyboard_event_scan param-assignment [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ( main:2::form_control:19 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ) - to:form_control::@30 -form_control::@30: scope:[form_control] from form_control::@3 - [119] phi() [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ( main:2::form_control:19 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ) - [120] call keyboard_event_get param-assignment [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_event_get::return#2 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_event_get::return#2 keyboard_modifiers#16 ] ) - [121] (byte) keyboard_event_get::return#3 ← (byte) keyboard_event_get::return#2 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_event_get::return#3 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_event_get::return#3 keyboard_modifiers#16 ] ) - to:form_control::@31 -form_control::@31: scope:[form_control] from form_control::@30 - [122] (byte) form_control::key_event#0 ← (byte) keyboard_event_get::return#3 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::key_event#0 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::key_event#0 keyboard_modifiers#16 ] ) - [123] if((byte) form_control::key_event#0!=(const byte) KEY_CRSR_DOWN#0) goto form_control::@4 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::key_event#0 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::key_event#0 keyboard_modifiers#16 ] ) - to:form_control::@17 -form_control::@17: scope:[form_control] from form_control::@31 - [124] (byte~) form_control::$12 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_control::$12 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_control::$12 keyboard_modifiers#16 ] ) - [125] *((byte*) form_control::field#0) ← (byte~) form_control::$12 [ form_field_idx#1 keyboard_events_size#18 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 keyboard_modifiers#16 ] ) - [126] (byte~) form_control::$13 ← (byte) keyboard_modifiers#16 & (const byte) KEY_MODIFIER_SHIFT#0 [ form_field_idx#1 keyboard_events_size#18 form_control::$13 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::$13 ] ) - [127] if((byte~) form_control::$13!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@5 [ form_field_idx#1 keyboard_events_size#18 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 ] ) - to:form_control::@18 -form_control::@18: scope:[form_control] from form_control::@17 - [128] (byte) form_field_idx#34 ← ++ (byte) form_field_idx#1 [ keyboard_events_size#18 form_field_idx#34 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#34 ] ) - [129] if((byte) form_field_idx#34!=(const byte) form_fields_cnt#0) goto form_control::@33 [ keyboard_events_size#18 form_field_idx#34 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#34 ] ) - to:form_control::@7 -form_control::@7: scope:[form_control] from form_control::@18 form_control::@33 form_control::@34 form_control::@5 - [130] (byte) form_field_idx#24 ← phi( form_control::@18/(byte/signed byte/word/signed word/dword/signed dword) 0 form_control::@5/(const byte) form_fields_cnt#0-(byte/signed byte/word/signed word/dword/signed dword) 1 form_control::@33/(byte) form_field_idx#34 form_control::@34/(byte) form_field_idx#3 ) [ keyboard_events_size#18 form_field_idx#24 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#24 ] ) - to:form_control::@return -form_control::@return: scope:[form_control] from form_control::@12 form_control::@4 form_control::@7 - [131] (byte) form_field_idx#14 ← phi( form_control::@12/(byte) form_field_idx#1 form_control::@7/(byte) form_field_idx#24 form_control::@4/(byte) form_field_idx#1 ) [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ( main:2::form_control:19 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [131] (signed byte) form_cursor_count#12 ← phi( form_control::@12/(signed byte) form_cursor_count#11 form_control::@7/(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 form_control::@4/(signed byte) form_cursor_count#11 ) [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ( main:2::form_control:19 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [132] return [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ( main:2::form_control:19 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - to:@return -form_control::@33: scope:[form_control] from form_control::@18 - [133] phi() [ keyboard_events_size#18 form_field_idx#34 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#34 ] ) - to:form_control::@7 -form_control::@5: scope:[form_control] from form_control::@17 - [134] (byte) form_field_idx#3 ← -- (byte) form_field_idx#1 [ keyboard_events_size#18 form_field_idx#3 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#3 ] ) - [135] if((byte) form_field_idx#3!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@34 [ keyboard_events_size#18 form_field_idx#3 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#3 ] ) - to:form_control::@7 -form_control::@34: scope:[form_control] from form_control::@5 - [136] phi() [ keyboard_events_size#18 form_field_idx#3 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#3 ] ) - to:form_control::@7 -form_control::@4: scope:[form_control] from form_control::@31 - [137] if((byte) form_control::key_event#0!=(const byte) KEY_CRSR_RIGHT#0) goto form_control::@return [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 ] ) - to:form_control::@23 -form_control::@23: scope:[form_control] from form_control::@4 - [138] (byte~) form_control::$24 ← (byte) keyboard_modifiers#16 & (const byte) KEY_MODIFIER_SHIFT#0 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::$24 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::$24 ] ) - [139] if((byte~) form_control::$24!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@10 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) - to:form_control::@24 -form_control::@24: scope:[form_control] from form_control::@23 - [140] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← ++ *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) - [141] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#1)<=*((const byte[]) form_fields_max#0 + (byte) form_field_idx#1)) goto form_control::@12 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) - to:form_control::@25 -form_control::@25: scope:[form_control] from form_control::@24 - [142] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) - to:form_control::@12 -form_control::@12: scope:[form_control] from form_control::@10 form_control::@24 form_control::@25 form_control::@27 - [143] *((byte*) form_control::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1)) [ form_field_idx#1 keyboard_events_size#18 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_cursor_count#11 ] ) - to:form_control::@return -form_control::@10: scope:[form_control] from form_control::@23 - [144] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← -- *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) - [145] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#1)!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@12 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) - to:form_control::@27 -form_control::@27: scope:[form_control] from form_control::@10 - [146] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← *((const byte[]) form_fields_max#0 + (byte) form_field_idx#1) [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) - to:form_control::@12 -form_control::@2: scope:[form_control] from form_control::@1 - [147] (byte~) form_control::$7 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$7 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$7 ] ) - [148] *((byte*) form_control::field#0) ← (byte~) form_control::$7 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ) - to:form_control::@3 -form_control::@32: scope:[form_control] from form_control::@29 - [149] phi() [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ) - to:form_control::@1 -keyboard_event_get: scope:[keyboard_event_get] from form_control::@30 - [150] if((byte) keyboard_events_size#15!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_get::@1 [ keyboard_events_size#15 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ) +gfx_mode::@14: scope:[gfx_mode] from gfx_mode::@11 gfx_mode::@14 + [106] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto gfx_mode::@14 [ keyboard_events_size#45 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#45 ] ) + to:gfx_mode::@16 +gfx_mode::@16: scope:[gfx_mode] from gfx_mode::@14 + [107] phi() [ keyboard_events_size#45 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#45 ] ) + [108] call keyboard_event_scan param-assignment [ keyboard_modifiers#21 keyboard_events_size#105 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#105 ] ) + to:gfx_mode::@36 +gfx_mode::@36: scope:[gfx_mode] from gfx_mode::@16 + [109] phi() [ keyboard_modifiers#21 keyboard_events_size#105 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#105 ] ) + [110] call keyboard_event_get param-assignment [ keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#2 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#2 ] ) + [111] (byte) keyboard_event_get::return#3 ← (byte) keyboard_event_get::return#2 [ keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#3 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#3 ] ) + to:gfx_mode::@37 +gfx_mode::@37: scope:[gfx_mode] from gfx_mode::@36 + [112] (byte) gfx_mode::keyboard_event#0 ← (byte) keyboard_event_get::return#3 [ keyboard_events_size#24 keyboard_modifiers#21 gfx_mode::keyboard_event#0 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#24 keyboard_modifiers#21 gfx_mode::keyboard_event#0 ] ) + [113] if((byte) gfx_mode::keyboard_event#0!=(const byte) KEY_SPACE#0) goto gfx_mode::@11 [ keyboard_events_size#24 keyboard_modifiers#21 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#24 keyboard_modifiers#21 ] ) + to:gfx_mode::@return +keyboard_event_get: scope:[keyboard_event_get] from form_control::@34 gfx_mode::@36 + [114] if((byte) keyboard_events_size#105!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_get::@1 [ keyboard_events_size#105 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#105 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 ] ) to:keyboard_event_get::@return keyboard_event_get::@return: scope:[keyboard_event_get] from keyboard_event_get keyboard_event_get::@1 - [151] (byte) keyboard_events_size#18 ← phi( keyboard_event_get::@1/(byte) keyboard_events_size#4 keyboard_event_get/(byte) keyboard_events_size#15 ) [ keyboard_events_size#18 keyboard_event_get::return#2 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#18 keyboard_event_get::return#2 ] ) - [151] (byte) keyboard_event_get::return#2 ← phi( keyboard_event_get::@1/(byte) keyboard_event_get::return#0 keyboard_event_get/(byte/word/signed word/dword/signed dword) 255 ) [ keyboard_events_size#18 keyboard_event_get::return#2 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#18 keyboard_event_get::return#2 ] ) - [152] return [ keyboard_events_size#18 keyboard_event_get::return#2 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#18 keyboard_event_get::return#2 ] ) + [115] (byte) keyboard_events_size#24 ← phi( keyboard_event_get::@1/(byte) keyboard_events_size#4 keyboard_event_get/(byte) keyboard_events_size#105 ) [ keyboard_events_size#24 keyboard_event_get::return#2 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#24 keyboard_event_get::return#2 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#24 keyboard_event_get::return#2 ] ) + [115] (byte) keyboard_event_get::return#2 ← phi( keyboard_event_get::@1/(byte) keyboard_event_get::return#0 keyboard_event_get/(byte/word/signed word/dword/signed dword) 255 ) [ keyboard_events_size#24 keyboard_event_get::return#2 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#24 keyboard_event_get::return#2 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#24 keyboard_event_get::return#2 ] ) + [116] return [ keyboard_events_size#24 keyboard_event_get::return#2 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#24 keyboard_event_get::return#2 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#24 keyboard_event_get::return#2 ] ) to:@return keyboard_event_get::@1: scope:[keyboard_event_get] from keyboard_event_get - [153] (byte) keyboard_events_size#4 ← -- (byte) keyboard_events_size#15 [ keyboard_events_size#4 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#4 ] ) - [154] (byte) keyboard_event_get::return#0 ← *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) [ keyboard_event_get::return#0 keyboard_events_size#4 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_event_get::return#0 keyboard_events_size#4 ] ) + [117] (byte) keyboard_events_size#4 ← -- (byte) keyboard_events_size#105 [ keyboard_events_size#4 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#4 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#4 ] ) + [118] (byte) keyboard_event_get::return#0 ← *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) [ keyboard_event_get::return#0 keyboard_events_size#4 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_event_get::return#0 keyboard_events_size#4 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_get::return#0 keyboard_events_size#4 ] ) to:keyboard_event_get::@return -keyboard_event_scan: scope:[keyboard_event_scan] from form_control::@3 - [155] phi() [ keyboard_events_size#20 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#20 ] ) +keyboard_event_scan: scope:[keyboard_event_scan] from form_control::@3 gfx_mode::@16 + [119] (byte) keyboard_events_size#104 ← phi( form_control::@3/(byte) keyboard_events_size#47 gfx_mode::@16/(byte) keyboard_events_size#45 ) [ keyboard_events_size#104 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#104 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#104 ] ) to:keyboard_event_scan::@1 keyboard_event_scan::@1: scope:[keyboard_event_scan] from keyboard_event_scan keyboard_event_scan::@8 - [156] (byte) keyboard_events_size#37 ← phi( keyboard_event_scan/(byte) keyboard_events_size#20 keyboard_event_scan::@8/(byte) keyboard_events_size#15 ) [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 ] ) - [156] (byte) keyboard_event_scan::keycode#11 ← phi( keyboard_event_scan/(byte/signed byte/word/signed word/dword/signed dword) 0 keyboard_event_scan::@8/(byte) keyboard_event_scan::keycode#14 ) [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 ] ) - [156] (byte) keyboard_event_scan::row#2 ← phi( keyboard_event_scan/(byte/signed byte/word/signed word/dword/signed dword) 0 keyboard_event_scan::@8/(byte) keyboard_event_scan::row#1 ) [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 ] ) - [157] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_event_scan::row#2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::rowid#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::rowid#0 ] ) - [158] call keyboard_matrix_read param-assignment [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#0 ] ) - [159] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#2 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#2 ] ) + [120] (byte) keyboard_events_size#112 ← phi( keyboard_event_scan/(byte) keyboard_events_size#104 keyboard_event_scan::@8/(byte) keyboard_events_size#105 ) [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] ) + [120] (byte) keyboard_event_scan::keycode#11 ← phi( keyboard_event_scan/(byte/signed byte/word/signed word/dword/signed dword) 0 keyboard_event_scan::@8/(byte) keyboard_event_scan::keycode#14 ) [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] ) + [120] (byte) keyboard_event_scan::row#2 ← phi( keyboard_event_scan/(byte/signed byte/word/signed word/dword/signed dword) 0 keyboard_event_scan::@8/(byte) keyboard_event_scan::row#1 ) [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] ) + [121] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_event_scan::row#2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::rowid#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::rowid#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::rowid#0 ] ) + [122] call keyboard_matrix_read param-assignment [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] ) + [123] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#2 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#2 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#2 ] ) to:keyboard_event_scan::@25 keyboard_event_scan::@25: scope:[keyboard_event_scan] from keyboard_event_scan::@1 - [160] (byte) keyboard_event_scan::row_scan#0 ← (byte) keyboard_matrix_read::return#2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_event_scan::row_scan#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_event_scan::row_scan#0 ] ) - [161] if((byte) keyboard_event_scan::row_scan#0==*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_event_scan::row_scan#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_event_scan::row_scan#0 ] ) + [124] (byte) keyboard_event_scan::row_scan#0 ← (byte) keyboard_matrix_read::return#2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ) + [125] if((byte) keyboard_event_scan::row_scan#0==*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ) to:keyboard_event_scan::@3 keyboard_event_scan::@3: scope:[keyboard_event_scan] from keyboard_event_scan::@25 keyboard_event_scan::@4 - [162] (byte) keyboard_events_size#12 ← phi( keyboard_event_scan::@25/(byte) keyboard_events_size#37 keyboard_event_scan::@4/(byte) keyboard_events_size#38 ) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) - [162] (byte) keyboard_event_scan::keycode#10 ← phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::keycode#11 keyboard_event_scan::@4/(byte) keyboard_event_scan::keycode#15 ) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) - [162] (byte) keyboard_event_scan::col#2 ← phi( keyboard_event_scan::@25/(byte/signed byte/word/signed word/dword/signed dword) 0 keyboard_event_scan::@4/(byte) keyboard_event_scan::col#1 ) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) - [163] (byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$3 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$3 ] ) - [164] (byte~) keyboard_event_scan::$4 ← (byte~) keyboard_event_scan::$3 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$4 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$4 ] ) - [165] if((byte~) keyboard_event_scan::$4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@4 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) + [126] (byte) keyboard_events_size#18 ← phi( keyboard_event_scan::@25/(byte) keyboard_events_size#112 keyboard_event_scan::@4/(byte) keyboard_events_size#111 ) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) + [126] (byte) keyboard_event_scan::keycode#10 ← phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::keycode#11 keyboard_event_scan::@4/(byte) keyboard_event_scan::keycode#15 ) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) + [126] (byte) keyboard_event_scan::col#2 ← phi( keyboard_event_scan::@25/(byte/signed byte/word/signed word/dword/signed dword) 0 keyboard_event_scan::@4/(byte) keyboard_event_scan::col#1 ) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) + [127] (byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$3 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$3 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$3 ] ) + [128] (byte~) keyboard_event_scan::$4 ← (byte~) keyboard_event_scan::$3 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$4 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$4 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$4 ] ) + [129] if((byte~) keyboard_event_scan::$4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@4 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) to:keyboard_event_scan::@14 keyboard_event_scan::@14: scope:[keyboard_event_scan] from keyboard_event_scan::@3 - [166] if((byte) keyboard_events_size#12==(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@4 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) + [130] if((byte) keyboard_events_size#18==(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@4 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) to:keyboard_event_scan::@15 keyboard_event_scan::@15: scope:[keyboard_event_scan] from keyboard_event_scan::@14 - [167] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::event_type#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::event_type#0 ] ) - [168] if((byte) keyboard_event_scan::event_type#0!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@6 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) + [131] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] ) + [132] if((byte) keyboard_event_scan::event_type#0!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@6 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) to:keyboard_event_scan::@16 keyboard_event_scan::@16: scope:[keyboard_event_scan] from keyboard_event_scan::@15 - [169] (byte/word/dword~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) 64 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$12 ] ) - [170] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#12) ← (byte/word/dword~) keyboard_event_scan::$12 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) - [171] (byte) keyboard_events_size#2 ← ++ (byte) keyboard_events_size#12 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#2 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#2 ] ) + [133] (byte/word/dword~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) 64 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$12 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$12 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$12 ] ) + [134] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ← (byte/word/dword~) keyboard_event_scan::$12 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) + [135] (byte) keyboard_events_size#2 ← ++ (byte) keyboard_events_size#18 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#2 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#2 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#2 ] ) to:keyboard_event_scan::@4 keyboard_event_scan::@4: scope:[keyboard_event_scan] from keyboard_event_scan::@14 keyboard_event_scan::@16 keyboard_event_scan::@3 keyboard_event_scan::@6 - [172] (byte) keyboard_events_size#38 ← phi( keyboard_event_scan::@16/(byte) keyboard_events_size#2 keyboard_event_scan::@3/(byte) keyboard_events_size#12 keyboard_event_scan::@14/(byte) keyboard_events_size#12 keyboard_event_scan::@6/(byte) keyboard_events_size#1 ) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#38 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#38 ] ) - [173] (byte) keyboard_event_scan::keycode#15 ← ++ (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ) - [174] (byte) keyboard_event_scan::col#1 ← ++ (byte) keyboard_event_scan::col#2 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ) - [175] if((byte) keyboard_event_scan::col#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@3 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ) + [136] (byte) keyboard_events_size#111 ← phi( keyboard_event_scan::@16/(byte) keyboard_events_size#2 keyboard_event_scan::@3/(byte) keyboard_events_size#18 keyboard_event_scan::@14/(byte) keyboard_events_size#18 keyboard_event_scan::@6/(byte) keyboard_events_size#1 ) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#111 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#111 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#111 ] ) + [137] (byte) keyboard_event_scan::keycode#15 ← ++ (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ) + [138] (byte) keyboard_event_scan::col#1 ← ++ (byte) keyboard_event_scan::col#2 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ) + [139] if((byte) keyboard_event_scan::col#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@3 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ) to:keyboard_event_scan::@18 keyboard_event_scan::@18: scope:[keyboard_event_scan] from keyboard_event_scan::@4 - [176] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ) + [140] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ) to:keyboard_event_scan::@8 keyboard_event_scan::@8: scope:[keyboard_event_scan] from keyboard_event_scan::@18 keyboard_event_scan::@2 - [177] (byte) keyboard_events_size#15 ← phi( keyboard_event_scan::@18/(byte) keyboard_events_size#38 keyboard_event_scan::@2/(byte) keyboard_events_size#37 ) [ keyboard_events_size#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#14 ] ) - [177] (byte) keyboard_event_scan::keycode#14 ← phi( keyboard_event_scan::@18/(byte) keyboard_event_scan::keycode#15 keyboard_event_scan::@2/(byte) keyboard_event_scan::keycode#1 ) [ keyboard_events_size#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#14 ] ) - [178] (byte) keyboard_event_scan::row#1 ← ++ (byte) keyboard_event_scan::row#2 [ keyboard_events_size#15 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ) - [179] if((byte) keyboard_event_scan::row#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@1 [ keyboard_events_size#15 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ) + [141] (byte) keyboard_events_size#105 ← phi( keyboard_event_scan::@18/(byte) keyboard_events_size#111 keyboard_event_scan::@2/(byte) keyboard_events_size#112 ) [ keyboard_events_size#105 keyboard_event_scan::row#2 keyboard_event_scan::keycode#14 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_scan::row#2 keyboard_event_scan::keycode#14 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_scan::row#2 keyboard_event_scan::keycode#14 ] ) + [141] (byte) keyboard_event_scan::keycode#14 ← phi( keyboard_event_scan::@18/(byte) keyboard_event_scan::keycode#15 keyboard_event_scan::@2/(byte) keyboard_event_scan::keycode#1 ) [ keyboard_events_size#105 keyboard_event_scan::row#2 keyboard_event_scan::keycode#14 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_scan::row#2 keyboard_event_scan::keycode#14 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_scan::row#2 keyboard_event_scan::keycode#14 ] ) + [142] (byte) keyboard_event_scan::row#1 ← ++ (byte) keyboard_event_scan::row#2 [ keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ) + [143] if((byte) keyboard_event_scan::row#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@1 [ keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ) to:keyboard_event_scan::@20 keyboard_event_scan::@20: scope:[keyboard_event_scan] from keyboard_event_scan::@8 - [180] phi() [ keyboard_events_size#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 ] ) - [181] call keyboard_event_pressed param-assignment [ keyboard_events_size#15 keyboard_event_pressed::return#10 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 ] ) - [182] (byte) keyboard_event_pressed::return#0 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#15 keyboard_event_pressed::return#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#0 ] ) + [144] phi() [ keyboard_events_size#105 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 ] ) + [145] call keyboard_event_pressed param-assignment [ keyboard_events_size#105 keyboard_event_pressed::return#10 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 ] ) + [146] (byte) keyboard_event_pressed::return#0 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#105 keyboard_event_pressed::return#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#0 ] ) to:keyboard_event_scan::@26 keyboard_event_scan::@26: scope:[keyboard_event_scan] from keyboard_event_scan::@20 - [183] (byte~) keyboard_event_scan::$16 ← (byte) keyboard_event_pressed::return#0 [ keyboard_events_size#15 keyboard_event_scan::$16 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_scan::$16 ] ) - [184] if((byte~) keyboard_event_scan::$16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@9 [ keyboard_events_size#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 ] ) + [147] (byte~) keyboard_event_scan::$16 ← (byte) keyboard_event_pressed::return#0 [ keyboard_events_size#105 keyboard_event_scan::$16 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_scan::$16 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_scan::$16 ] ) + [148] if((byte~) keyboard_event_scan::$16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@9 [ keyboard_events_size#105 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 ] ) to:keyboard_event_scan::@21 keyboard_event_scan::@21: scope:[keyboard_event_scan] from keyboard_event_scan::@26 - [185] phi() [ keyboard_events_size#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 ] ) + [149] phi() [ keyboard_events_size#105 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 ] ) to:keyboard_event_scan::@9 keyboard_event_scan::@9: scope:[keyboard_event_scan] from keyboard_event_scan::@21 keyboard_event_scan::@26 - [186] (byte) keyboard_modifiers#13 ← phi( keyboard_event_scan::@21/(byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) KEY_MODIFIER_LSHIFT#0 keyboard_event_scan::@26/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ keyboard_events_size#15 keyboard_modifiers#13 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 ] ) - [187] call keyboard_event_pressed param-assignment [ keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#13 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#13 ] ) - [188] (byte) keyboard_event_pressed::return#1 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::return#1 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::return#1 ] ) + [150] (byte) keyboard_modifiers#18 ← phi( keyboard_event_scan::@21/(byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) KEY_MODIFIER_LSHIFT#0 keyboard_event_scan::@26/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ keyboard_events_size#105 keyboard_modifiers#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 ] ) + [151] call keyboard_event_pressed param-assignment [ keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#18 ] ) + [152] (byte) keyboard_event_pressed::return#1 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#1 ] ) to:keyboard_event_scan::@27 keyboard_event_scan::@27: scope:[keyboard_event_scan] from keyboard_event_scan::@9 - [189] (byte~) keyboard_event_scan::$20 ← (byte) keyboard_event_pressed::return#1 [ keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_scan::$20 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_scan::$20 ] ) - [190] if((byte~) keyboard_event_scan::$20==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@10 [ keyboard_events_size#15 keyboard_modifiers#13 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 ] ) + [153] (byte~) keyboard_event_scan::$20 ← (byte) keyboard_event_pressed::return#1 [ keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_scan::$20 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_scan::$20 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_scan::$20 ] ) + [154] if((byte~) keyboard_event_scan::$20==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@10 [ keyboard_events_size#105 keyboard_modifiers#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 ] ) to:keyboard_event_scan::@22 keyboard_event_scan::@22: scope:[keyboard_event_scan] from keyboard_event_scan::@27 - [191] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#13 | (const byte) KEY_MODIFIER_RSHIFT#0 [ keyboard_events_size#15 keyboard_modifiers#3 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#3 ] ) + [155] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#18 | (const byte) KEY_MODIFIER_RSHIFT#0 [ keyboard_events_size#105 keyboard_modifiers#3 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#3 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#3 ] ) to:keyboard_event_scan::@10 keyboard_event_scan::@10: scope:[keyboard_event_scan] from keyboard_event_scan::@22 keyboard_event_scan::@27 - [192] (byte) keyboard_modifiers#14 ← phi( keyboard_event_scan::@22/(byte) keyboard_modifiers#3 keyboard_event_scan::@27/(byte) keyboard_modifiers#13 ) [ keyboard_events_size#15 keyboard_modifiers#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 ] ) - [193] call keyboard_event_pressed param-assignment [ keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#14 ] ) - [194] (byte) keyboard_event_pressed::return#2 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::return#2 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::return#2 ] ) + [156] (byte) keyboard_modifiers#19 ← phi( keyboard_event_scan::@22/(byte) keyboard_modifiers#3 keyboard_event_scan::@27/(byte) keyboard_modifiers#18 ) [ keyboard_events_size#105 keyboard_modifiers#19 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 ] ) + [157] call keyboard_event_pressed param-assignment [ keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#19 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#19 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#19 ] ) + [158] (byte) keyboard_event_pressed::return#2 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#2 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#2 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#2 ] ) to:keyboard_event_scan::@28 keyboard_event_scan::@28: scope:[keyboard_event_scan] from keyboard_event_scan::@10 - [195] (byte~) keyboard_event_scan::$24 ← (byte) keyboard_event_pressed::return#2 [ keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_scan::$24 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_scan::$24 ] ) - [196] if((byte~) keyboard_event_scan::$24==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@11 [ keyboard_events_size#15 keyboard_modifiers#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 ] ) + [159] (byte~) keyboard_event_scan::$24 ← (byte) keyboard_event_pressed::return#2 [ keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_scan::$24 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_scan::$24 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_scan::$24 ] ) + [160] if((byte~) keyboard_event_scan::$24==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@11 [ keyboard_events_size#105 keyboard_modifiers#19 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 ] ) to:keyboard_event_scan::@23 keyboard_event_scan::@23: scope:[keyboard_event_scan] from keyboard_event_scan::@28 - [197] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#14 | (const byte) KEY_MODIFIER_CTRL#0 [ keyboard_events_size#15 keyboard_modifiers#4 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#4 ] ) + [161] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#19 | (const byte) KEY_MODIFIER_CTRL#0 [ keyboard_events_size#105 keyboard_modifiers#4 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#4 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#4 ] ) to:keyboard_event_scan::@11 keyboard_event_scan::@11: scope:[keyboard_event_scan] from keyboard_event_scan::@23 keyboard_event_scan::@28 - [198] (byte) keyboard_modifiers#15 ← phi( keyboard_event_scan::@23/(byte) keyboard_modifiers#4 keyboard_event_scan::@28/(byte) keyboard_modifiers#14 ) [ keyboard_events_size#15 keyboard_modifiers#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 ] ) - [199] call keyboard_event_pressed param-assignment [ keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#15 ] ) - [200] (byte) keyboard_event_pressed::return#3 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::return#3 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::return#3 ] ) + [162] (byte) keyboard_modifiers#20 ← phi( keyboard_event_scan::@23/(byte) keyboard_modifiers#4 keyboard_event_scan::@28/(byte) keyboard_modifiers#19 ) [ keyboard_events_size#105 keyboard_modifiers#20 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 ] ) + [163] call keyboard_event_pressed param-assignment [ keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#20 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#20 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#20 ] ) + [164] (byte) keyboard_event_pressed::return#3 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#3 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#3 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#3 ] ) to:keyboard_event_scan::@29 keyboard_event_scan::@29: scope:[keyboard_event_scan] from keyboard_event_scan::@11 - [201] (byte~) keyboard_event_scan::$28 ← (byte) keyboard_event_pressed::return#3 [ keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_scan::$28 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_scan::$28 ] ) - [202] if((byte~) keyboard_event_scan::$28==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@return [ keyboard_events_size#15 keyboard_modifiers#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 ] ) + [165] (byte~) keyboard_event_scan::$28 ← (byte) keyboard_event_pressed::return#3 [ keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_scan::$28 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_scan::$28 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_scan::$28 ] ) + [166] if((byte~) keyboard_event_scan::$28==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@return [ keyboard_events_size#105 keyboard_modifiers#20 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 ] ) to:keyboard_event_scan::@24 keyboard_event_scan::@24: scope:[keyboard_event_scan] from keyboard_event_scan::@29 - [203] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#15 | (const byte) KEY_MODIFIER_COMMODORE#0 [ keyboard_events_size#15 keyboard_modifiers#5 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#5 ] ) + [167] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#20 | (const byte) KEY_MODIFIER_COMMODORE#0 [ keyboard_events_size#105 keyboard_modifiers#5 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#5 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#5 ] ) to:keyboard_event_scan::@return keyboard_event_scan::@return: scope:[keyboard_event_scan] from keyboard_event_scan::@24 keyboard_event_scan::@29 - [204] (byte) keyboard_modifiers#16 ← phi( keyboard_event_scan::@29/(byte) keyboard_modifiers#15 keyboard_event_scan::@24/(byte) keyboard_modifiers#5 ) [ keyboard_modifiers#16 keyboard_events_size#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ) - [205] return [ keyboard_modifiers#16 keyboard_events_size#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ) + [168] (byte) keyboard_modifiers#21 ← phi( keyboard_event_scan::@29/(byte) keyboard_modifiers#20 keyboard_event_scan::@24/(byte) keyboard_modifiers#5 ) [ keyboard_modifiers#21 keyboard_events_size#105 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#105 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_modifiers#21 keyboard_events_size#105 ] ) + [169] return [ keyboard_modifiers#21 keyboard_events_size#105 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#105 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_modifiers#21 keyboard_events_size#105 ] ) to:@return keyboard_event_scan::@6: scope:[keyboard_event_scan] from keyboard_event_scan::@15 - [206] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#12) ← (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) - [207] (byte) keyboard_events_size#1 ← ++ (byte) keyboard_events_size#12 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#1 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#1 ] ) + [170] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ← (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) + [171] (byte) keyboard_events_size#1 ← ++ (byte) keyboard_events_size#18 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#1 ] ) to:keyboard_event_scan::@4 keyboard_event_scan::@2: scope:[keyboard_event_scan] from keyboard_event_scan::@25 - [208] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ keyboard_event_scan::row#2 keyboard_events_size#37 keyboard_event_scan::keycode#1 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_events_size#37 keyboard_event_scan::keycode#1 ] ) + [172] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ keyboard_event_scan::row#2 keyboard_events_size#112 keyboard_event_scan::keycode#1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_events_size#112 keyboard_event_scan::keycode#1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_events_size#112 keyboard_event_scan::keycode#1 ] ) to:keyboard_event_scan::@8 keyboard_event_pressed: scope:[keyboard_event_pressed] from keyboard_event_scan::@10 keyboard_event_scan::@11 keyboard_event_scan::@20 keyboard_event_scan::@9 - [209] (byte) keyboard_event_pressed::keycode#4 ← phi( keyboard_event_scan::@10/(const byte) KEY_CTRL#0 keyboard_event_scan::@11/(const byte) KEY_COMMODORE#0 keyboard_event_scan::@20/(const byte) KEY_LSHIFT#0 keyboard_event_scan::@9/(const byte) KEY_RSHIFT#0 ) [ keyboard_event_pressed::keycode#4 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::keycode#4 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::keycode#4 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::keycode#4 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::keycode#4 ] ) - [210] (byte~) keyboard_event_pressed::$0 ← (byte) keyboard_event_pressed::keycode#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ) - [211] (byte) keyboard_event_pressed::row_bits#0 ← *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) [ keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] ) - [212] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ) - [213] (byte) keyboard_event_pressed::return#10 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) [ keyboard_event_pressed::return#10 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::return#10 ] ) + [173] (byte) keyboard_event_pressed::keycode#4 ← phi( keyboard_event_scan::@10/(const byte) KEY_CTRL#0 keyboard_event_scan::@11/(const byte) KEY_COMMODORE#0 keyboard_event_scan::@20/(const byte) KEY_LSHIFT#0 keyboard_event_scan::@9/(const byte) KEY_RSHIFT#0 ) [ keyboard_event_pressed::keycode#4 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::keycode#4 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::keycode#4 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 ] ) + [174] (byte~) keyboard_event_pressed::$0 ← (byte) keyboard_event_pressed::keycode#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ) + [175] (byte) keyboard_event_pressed::row_bits#0 ← *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) [ keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] ) + [176] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ) + [177] (byte) keyboard_event_pressed::return#10 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) [ keyboard_event_pressed::return#10 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] ) to:keyboard_event_pressed::@return keyboard_event_pressed::@return: scope:[keyboard_event_pressed] from keyboard_event_pressed - [214] return [ keyboard_event_pressed::return#10 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::return#10 ] ) + [178] return [ keyboard_event_pressed::return#10 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] ) to:@return keyboard_matrix_read: scope:[keyboard_matrix_read] from keyboard_event_scan::@1 - [215] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_matrix_read:158 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 ] ) - [216] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_matrix_read:158 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#0 ] ) + [179] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_matrix_read:122 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_matrix_read:122 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] ) + [180] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_matrix_read:122 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_matrix_read:122 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] ) to:keyboard_matrix_read::@return keyboard_matrix_read::@return: scope:[keyboard_matrix_read] from keyboard_matrix_read - [217] return [ keyboard_matrix_read::return#0 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_matrix_read:158 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#0 ] ) + [181] return [ keyboard_matrix_read::return#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_matrix_read:122 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_matrix_read:122 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] ) to:@return -form_field_ptr: scope:[form_field_ptr] from form_control form_render_values::@1 - [218] (byte) form_field_ptr::field_idx#2 ← phi( form_control/(byte) form_field_ptr::field_idx#1 form_render_values::@1/(byte) form_field_ptr::field_idx#0 ) [ form_field_ptr::field_idx#2 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::field_idx#2 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::field_idx#2 ] ) - [219] (byte) form_field_ptr::y#0 ← *((const byte[]) form_fields_y#0 + (byte) form_field_ptr::field_idx#2) [ form_field_ptr::field_idx#2 form_field_ptr::y#0 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::field_idx#2 form_field_ptr::y#0 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::y#0 ] ) - [220] (word~) form_field_ptr::$2 ← *((const byte[25]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[25]) form_line_lo#0 + (byte) form_field_ptr::y#0) [ form_field_ptr::field_idx#2 form_field_ptr::$2 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::field_idx#2 form_field_ptr::$2 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::$2 ] ) - [221] (byte) form_field_ptr::x#0 ← *((const byte[]) form_fields_x#0 + (byte) form_field_ptr::field_idx#2) [ form_field_ptr::$2 form_field_ptr::x#0 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::$2 form_field_ptr::x#0 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::$2 form_field_ptr::x#0 ] ) - [222] (byte*) form_field_ptr::return#0 ← (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 [ form_field_ptr::return#0 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#0 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::return#0 ] ) - to:form_field_ptr::@return -form_field_ptr::@return: scope:[form_field_ptr] from form_field_ptr - [223] return [ form_field_ptr::return#0 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#0 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::return#0 ] ) - to:@return -form_mode: scope:[form_mode] from main::@6 - [224] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) 65536 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [225] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [226] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [227] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [228] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) 16384 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [229] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [230] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [231] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [232] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) 16383/(byte/signed byte/word/signed word/dword/signed dword) 64|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) 16383/(word/signed word/dword/signed dword) 1024 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) +form_mode: scope:[form_mode] from main::@2 + [182] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) 65536 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [183] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [184] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [185] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [186] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) 16384 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [187] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [188] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [189] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [190] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) 16383/(byte/signed byte/word/signed word/dword/signed dword) 64|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) 16383/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) to:form_mode::@1 form_mode::@1: scope:[form_mode] from form_mode form_mode::@1 - [233] (byte) form_mode::i#2 ← phi( form_mode/(byte/signed byte/word/signed word/dword/signed dword) 0 form_mode::@1/(byte) form_mode::i#1 ) [ form_mode::i#2 ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_mode::i#2 ] ) - [234] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ← *((const byte[16]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) [ form_mode::i#2 ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_mode::i#2 ] ) - [235] (byte) form_mode::i#1 ← ++ (byte) form_mode::i#2 [ form_mode::i#1 ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_mode::i#1 ] ) - [236] if((byte) form_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto form_mode::@1 [ form_mode::i#1 ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_mode::i#1 ] ) + [191] (byte) form_mode::i#2 ← phi( form_mode/(byte/signed byte/word/signed word/dword/signed dword) 0 form_mode::@1/(byte) form_mode::i#1 ) [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#2 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#2 ] ) + [192] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ← *((const byte[16]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#2 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#2 ] ) + [193] (byte) form_mode::i#1 ← ++ (byte) form_mode::i#2 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#1 ] ) + [194] if((byte) form_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto form_mode::@1 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#1 ] ) + to:form_mode::@9 +form_mode::@9: scope:[form_mode] from form_mode::@1 + [195] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) to:form_mode::@2 -form_mode::@2: scope:[form_mode] from form_mode::@1 - [237] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [238] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) +form_mode::@2: scope:[form_mode] from form_mode::@19 form_mode::@9 + [196] (byte) form_field_idx#28 ← phi( form_mode::@19/(byte) form_field_idx#18 form_mode::@9/(byte) form_field_idx#1 ) [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ( main:2::form_mode:15 [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ) + [196] (byte) keyboard_modifiers#45 ← phi( form_mode::@19/(byte) keyboard_modifiers#21 form_mode::@9/(byte) keyboard_modifiers#24 ) [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ( main:2::form_mode:15 [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ) + [196] (byte) keyboard_events_size#47 ← phi( form_mode::@19/(byte) keyboard_events_size#24 form_mode::@9/(byte) keyboard_events_size#27 ) [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ( main:2::form_mode:15 [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ) + [196] (signed byte) form_cursor_count#21 ← phi( form_mode::@19/(signed byte) form_cursor_count#16 form_mode::@9/(signed byte) form_cursor_count#1 ) [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ( main:2::form_mode:15 [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ) + [197] if(true) goto form_mode::@5 [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ( main:2::form_mode:15 [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ) to:form_mode::@return -form_mode::@return: scope:[form_mode] from form_mode::@2 - [239] return [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) +form_mode::@return: scope:[form_mode] from form_mode::@19 form_mode::@2 + [198] (byte) form_field_idx#14 ← phi( form_mode::@19/(byte) form_field_idx#18 form_mode::@2/(byte) form_field_idx#28 ) [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::form_mode:15 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [198] (byte) keyboard_modifiers#13 ← phi( form_mode::@19/(byte) keyboard_modifiers#21 form_mode::@2/(byte) keyboard_modifiers#45 ) [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::form_mode:15 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [198] (byte) keyboard_events_size#13 ← phi( form_mode::@19/(byte) keyboard_events_size#24 form_mode::@2/(byte) keyboard_events_size#47 ) [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::form_mode:15 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [198] (signed byte) form_cursor_count#13 ← phi( form_mode::@19/(signed byte) form_cursor_count#16 form_mode::@2/(signed byte) form_cursor_count#21 ) [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::form_mode:15 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [199] return [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::form_mode:15 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) to:@return -form_init: scope:[form_init] from main::@20 - [240] phi() [ ] ( main:2::form_init:10 [ ] ) - [241] call print_set_screen param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) +form_mode::@5: scope:[form_mode] from form_mode::@2 form_mode::@5 + [200] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto form_mode::@5 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 ] ( main:2::form_mode:15 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 ] ) + to:form_mode::@7 +form_mode::@7: scope:[form_mode] from form_mode::@5 + [201] phi() [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 ] ( main:2::form_mode:15 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 ] ) + [202] call form_control param-assignment [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ( main:2::form_mode:15 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ) + [203] (byte) form_control::return#0 ← (byte) form_control::return#2 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#0 ] ( main:2::form_mode:15 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#0 ] ) + to:form_mode::@19 +form_mode::@19: scope:[form_mode] from form_mode::@7 + [204] (byte~) form_mode::$25 ← (byte) form_control::return#0 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_mode::$25 ] ( main:2::form_mode:15 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_mode::$25 ] ) + [205] if((byte~) form_mode::$25==(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_mode::@2 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 ] ( main:2::form_mode:15 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 ] ) + to:form_mode::@return +form_control: scope:[form_control] from form_mode::@7 + [206] (byte) form_field_ptr::field_idx#1 ← (byte) form_field_idx#28 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#1 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#1 ] ) + [207] call form_field_ptr param-assignment [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] ) + [208] (byte*) form_field_ptr::return#3 ← (byte*) form_field_ptr::return#0 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#3 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#3 ] ) + to:form_control::@33 +form_control::@33: scope:[form_control] from form_control + [209] (byte*) form_control::field#0 ← (byte*) form_field_ptr::return#3 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_control::field#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_control::field#0 ] ) + [210] (signed byte) form_cursor_count#5 ← -- (signed byte) form_cursor_count#21 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ) + [211] if((signed byte) form_cursor_count#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@36 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ) + to:form_control::@1 +form_control::@1: scope:[form_control] from form_control::@33 form_control::@36 + [212] (signed byte) form_cursor_count#15 ← phi( form_control::@33/(const signed byte) FORM_CURSOR_BLINK#0 form_control::@36/(signed byte) form_cursor_count#5 ) [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + [213] if((signed byte) form_cursor_count#15>=(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2) goto form_control::@2 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + to:form_control::@16 +form_control::@16: scope:[form_control] from form_control::@1 + [214] (byte/word/dword~) form_control::$6 ← *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) 128 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$6 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$6 ] ) + [215] *((byte*) form_control::field#0) ← (byte/word/dword~) form_control::$6 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + to:form_control::@3 +form_control::@3: scope:[form_control] from form_control::@16 form_control::@2 + [216] phi() [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + [217] call keyboard_event_scan param-assignment [ keyboard_modifiers#21 keyboard_events_size#105 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_modifiers#21 keyboard_events_size#105 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + to:form_control::@34 +form_control::@34: scope:[form_control] from form_control::@3 + [218] phi() [ keyboard_modifiers#21 keyboard_events_size#105 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_modifiers#21 keyboard_events_size#105 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + [219] call keyboard_event_get param-assignment [ keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#2 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#2 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + [220] (byte) keyboard_event_get::return#4 ← (byte) keyboard_event_get::return#2 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_get::return#4 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_get::return#4 ] ) + to:form_control::@35 +form_control::@35: scope:[form_control] from form_control::@34 + [221] (byte) form_control::key_event#0 ← (byte) keyboard_event_get::return#4 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ) + [222] if((byte) form_control::key_event#0!=(const byte) KEY_CRSR_DOWN#0) goto form_control::@4 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ) + to:form_control::@18 +form_control::@18: scope:[form_control] from form_control::@35 + [223] (byte~) form_control::$12 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_control::$12 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_control::$12 ] ) + [224] *((byte*) form_control::field#0) ← (byte~) form_control::$12 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ) + [225] (byte~) form_control::$13 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::$13 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::$13 ] ) + [226] if((byte~) form_control::$13!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@5 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ) + to:form_control::@19 +form_control::@19: scope:[form_control] from form_control::@18 + [227] (byte) form_field_idx#43 ← ++ (byte) form_field_idx#28 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ) + [228] if((byte) form_field_idx#43!=(const byte) form_fields_cnt#0) goto form_control::@37 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ) + to:form_control::@7 +form_control::@7: scope:[form_control] from form_control::@19 form_control::@37 form_control::@38 form_control::@5 + [229] (byte) form_field_idx#32 ← phi( form_control::@19/(byte/signed byte/word/signed word/dword/signed dword) 0 form_control::@5/(const byte) form_fields_cnt#0-(byte/signed byte/word/signed word/dword/signed dword) 1 form_control::@37/(byte) form_field_idx#43 form_control::@38/(byte) form_field_idx#44 ) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#32 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#32 ] ) + to:form_control::@return +form_control::@return: scope:[form_control] from form_control::@12 form_control::@39 form_control::@7 form_control::@9 + [230] (byte) form_field_idx#18 ← phi( form_control::@12/(byte) form_field_idx#28 form_control::@39/(byte) form_field_idx#28 form_control::@9/(byte) form_field_idx#28 form_control::@7/(byte) form_field_idx#32 ) [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ) + [230] (signed byte) form_cursor_count#16 ← phi( form_control::@12/(signed byte) form_cursor_count#15 form_control::@39/(signed byte) form_cursor_count#15 form_control::@9/(signed byte) form_cursor_count#15 form_control::@7/(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 ) [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ) + [230] (byte) form_control::return#2 ← phi( form_control::@12/(byte/signed byte/word/signed word/dword/signed dword) 0 form_control::@39/(byte/signed byte/word/signed word/dword/signed dword) 0 form_control::@9/(byte/word/signed word/dword/signed dword) 255 form_control::@7/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ) + [231] return [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ) + to:@return +form_control::@37: scope:[form_control] from form_control::@19 + [232] phi() [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ) + to:form_control::@7 +form_control::@5: scope:[form_control] from form_control::@18 + [233] (byte) form_field_idx#44 ← -- (byte) form_field_idx#28 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ) + [234] if((byte) form_field_idx#44!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@38 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ) + to:form_control::@7 +form_control::@38: scope:[form_control] from form_control::@5 + [235] phi() [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ) + to:form_control::@7 +form_control::@4: scope:[form_control] from form_control::@35 + [236] if((byte) form_control::key_event#0!=(const byte) KEY_CRSR_RIGHT#0) goto form_control::@9 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ) + to:form_control::@24 +form_control::@24: scope:[form_control] from form_control::@4 + [237] (byte~) form_control::$24 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$24 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$24 ] ) + [238] if((byte~) form_control::$24!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@10 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + to:form_control::@25 +form_control::@25: scope:[form_control] from form_control::@24 + [239] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← ++ *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + [240] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)<=*((const byte[]) form_fields_max#0 + (byte) form_field_idx#28)) goto form_control::@12 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + to:form_control::@26 +form_control::@26: scope:[form_control] from form_control::@25 + [241] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + to:form_control::@12 +form_control::@12: scope:[form_control] from form_control::@10 form_control::@25 form_control::@26 form_control::@28 + [242] *((byte*) form_control::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ) + to:form_control::@return +form_control::@10: scope:[form_control] from form_control::@24 + [243] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← -- *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + [244] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@12 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + to:form_control::@28 +form_control::@28: scope:[form_control] from form_control::@10 + [245] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← *((const byte[]) form_fields_max#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + to:form_control::@12 +form_control::@9: scope:[form_control] from form_control::@4 + [246] if((byte) form_control::key_event#0!=(const byte) KEY_SPACE#0) goto form_control::@39 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ) + to:form_control::@return +form_control::@39: scope:[form_control] from form_control::@9 + [247] phi() [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ) + to:form_control::@return +form_control::@2: scope:[form_control] from form_control::@1 + [248] (byte~) form_control::$7 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$7 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$7 ] ) + [249] *((byte*) form_control::field#0) ← (byte~) form_control::$7 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + to:form_control::@3 +form_control::@36: scope:[form_control] from form_control::@33 + [250] phi() [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ) + to:form_control::@1 +form_field_ptr: scope:[form_field_ptr] from form_control form_render_values::@1 + [251] (byte) form_field_ptr::field_idx#2 ← phi( form_control/(byte) form_field_ptr::field_idx#1 form_render_values::@1/(byte) form_field_ptr::field_idx#0 ) [ form_field_ptr::field_idx#2 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#2 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::field_idx#2 ] ) + [252] (byte) form_field_ptr::y#0 ← *((const byte[]) form_fields_y#0 + (byte) form_field_ptr::field_idx#2) [ form_field_ptr::field_idx#2 form_field_ptr::y#0 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#2 form_field_ptr::y#0 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::y#0 ] ) + [253] (word~) form_field_ptr::$2 ← *((const byte[25]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[25]) form_line_lo#0 + (byte) form_field_ptr::y#0) [ form_field_ptr::field_idx#2 form_field_ptr::$2 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#2 form_field_ptr::$2 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::$2 ] ) + [254] (byte) form_field_ptr::x#0 ← *((const byte[]) form_fields_x#0 + (byte) form_field_ptr::field_idx#2) [ form_field_ptr::$2 form_field_ptr::x#0 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::$2 form_field_ptr::x#0 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::$2 form_field_ptr::x#0 ] ) + [255] (byte*) form_field_ptr::return#0 ← (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 [ form_field_ptr::return#0 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::return#0 ] ) + to:form_field_ptr::@return +form_field_ptr::@return: scope:[form_field_ptr] from form_field_ptr + [256] return [ form_field_ptr::return#0 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::return#0 ] ) + to:@return +form_init: scope:[form_init] from main::@8 + [257] phi() [ ] ( main:2::form_init:10 [ ] ) + [258] call print_set_screen param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) to:form_init::@1 form_init::@1: scope:[form_init] from form_init - [242] phi() [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) - [243] call print_str_lines param-assignment [ ] ( main:2::form_init:10 [ ] ) + [259] phi() [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) + [260] call print_cls param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) to:form_init::@2 form_init::@2: scope:[form_init] from form_init::@1 - [244] phi() [ ] ( main:2::form_init:10 [ ] ) - [245] call print_set_screen param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) + [261] phi() [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) + [262] call print_str_lines param-assignment [ ] ( main:2::form_init:10 [ ] ) to:form_init::@3 form_init::@3: scope:[form_init] from form_init::@2 - [246] phi() [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) - [247] call print_str_lines param-assignment [ ] ( main:2::form_init:10 [ ] ) + [263] phi() [ ] ( main:2::form_init:10 [ ] ) + [264] call print_set_screen param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) to:form_init::@4 form_init::@4: scope:[form_init] from form_init::@3 - [248] phi() [ ] ( main:2::form_init:10 [ ] ) - [249] call form_set_screen param-assignment [ ] ( main:2::form_init:10 [ ] ) + [265] phi() [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) + [266] call print_cls param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) to:form_init::@5 form_init::@5: scope:[form_init] from form_init::@4 - [250] phi() [ ] ( main:2::form_init:10 [ ] ) - [251] call form_render_values param-assignment [ ] ( main:2::form_init:10 [ ] ) + [267] phi() [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) + [268] call print_str_lines param-assignment [ ] ( main:2::form_init:10 [ ] ) + to:form_init::@6 +form_init::@6: scope:[form_init] from form_init::@5 + [269] phi() [ ] ( main:2::form_init:10 [ ] ) + [270] call form_set_screen param-assignment [ ] ( main:2::form_init:10 [ ] ) + to:form_init::@7 +form_init::@7: scope:[form_init] from form_init::@6 + [271] phi() [ ] ( main:2::form_init:10 [ ] ) + [272] call form_render_values param-assignment [ ] ( main:2::form_init:10 [ ] ) to:form_init::@return -form_init::@return: scope:[form_init] from form_init::@5 - [252] return [ ] ( main:2::form_init:10 [ ] ) +form_init::@return: scope:[form_init] from form_init::@7 + [273] return [ ] ( main:2::form_init:10 [ ] ) to:@return -form_render_values: scope:[form_render_values] from form_init::@5 - [253] phi() [ ] ( main:2::form_init:10::form_render_values:251 [ ] ) +form_render_values: scope:[form_render_values] from form_init::@7 + [274] phi() [ ] ( main:2::form_init:10::form_render_values:272 [ ] ) to:form_render_values::@1 form_render_values::@1: scope:[form_render_values] from form_render_values form_render_values::@3 - [254] (byte) form_render_values::idx#2 ← phi( form_render_values/(byte/signed byte/word/signed word/dword/signed dword) 0 form_render_values::@3/(byte) form_render_values::idx#1 ) [ form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#2 ] ) - [255] (byte) form_field_ptr::field_idx#0 ← (byte) form_render_values::idx#2 [ form_field_ptr::field_idx#0 form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:251 [ form_field_ptr::field_idx#0 form_render_values::idx#2 ] ) - [256] call form_field_ptr param-assignment [ form_field_ptr::return#0 form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:251 [ form_field_ptr::return#0 form_render_values::idx#2 ] ) - [257] (byte*) form_field_ptr::return#2 ← (byte*) form_field_ptr::return#0 [ form_render_values::idx#2 form_field_ptr::return#2 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#2 form_field_ptr::return#2 ] ) + [275] (byte) form_render_values::idx#2 ← phi( form_render_values/(byte/signed byte/word/signed word/dword/signed dword) 0 form_render_values::@3/(byte) form_render_values::idx#1 ) [ form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 ] ) + [276] (byte) form_field_ptr::field_idx#0 ← (byte) form_render_values::idx#2 [ form_field_ptr::field_idx#0 form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:272 [ form_field_ptr::field_idx#0 form_render_values::idx#2 ] ) + [277] call form_field_ptr param-assignment [ form_field_ptr::return#0 form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:272 [ form_field_ptr::return#0 form_render_values::idx#2 ] ) + [278] (byte*) form_field_ptr::return#2 ← (byte*) form_field_ptr::return#0 [ form_render_values::idx#2 form_field_ptr::return#2 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 form_field_ptr::return#2 ] ) to:form_render_values::@3 form_render_values::@3: scope:[form_render_values] from form_render_values::@1 - [258] (byte*) form_render_values::field#0 ← (byte*) form_field_ptr::return#2 [ form_render_values::idx#2 form_render_values::field#0 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#2 form_render_values::field#0 ] ) - [259] *((byte*) form_render_values::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) [ form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#2 ] ) - [260] (byte) form_render_values::idx#1 ← ++ (byte) form_render_values::idx#2 [ form_render_values::idx#1 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#1 ] ) - [261] if((byte) form_render_values::idx#1<(const byte) form_fields_cnt#0) goto form_render_values::@1 [ form_render_values::idx#1 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#1 ] ) + [279] (byte*) form_render_values::field#0 ← (byte*) form_field_ptr::return#2 [ form_render_values::idx#2 form_render_values::field#0 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 form_render_values::field#0 ] ) + [280] *((byte*) form_render_values::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) [ form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 ] ) + [281] (byte) form_render_values::idx#1 ← ++ (byte) form_render_values::idx#2 [ form_render_values::idx#1 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#1 ] ) + [282] if((byte) form_render_values::idx#1<(const byte) form_fields_cnt#0) goto form_render_values::@1 [ form_render_values::idx#1 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#1 ] ) to:form_render_values::@return form_render_values::@return: scope:[form_render_values] from form_render_values::@3 - [262] return [ ] ( main:2::form_init:10::form_render_values:251 [ ] ) + [283] return [ ] ( main:2::form_init:10::form_render_values:272 [ ] ) to:@return -form_set_screen: scope:[form_set_screen] from form_init::@4 - [263] phi() [ ] ( main:2::form_init:10::form_set_screen:249 [ ] ) +form_set_screen: scope:[form_set_screen] from form_init::@6 + [284] phi() [ ] ( main:2::form_init:10::form_set_screen:270 [ ] ) to:form_set_screen::@1 form_set_screen::@1: scope:[form_set_screen] from form_set_screen form_set_screen::@1 - [264] (byte) form_set_screen::y#2 ← phi( form_set_screen/(byte/signed byte/word/signed word/dword/signed dword) 0 form_set_screen::@1/(byte) form_set_screen::y#1 ) [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#2 form_set_screen::y#2 ] ) - [264] (byte*) form_set_screen::line#2 ← phi( form_set_screen/(const byte*) form_set_screen::screen#0 form_set_screen::@1/(byte*) form_set_screen::line#1 ) [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#2 form_set_screen::y#2 ] ) - [265] (byte~) form_set_screen::$0 ← < (byte*) form_set_screen::line#2 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$0 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$0 ] ) - [266] *((const byte[25]) form_line_lo#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$0 [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#2 form_set_screen::y#2 ] ) - [267] (byte~) form_set_screen::$1 ← > (byte*) form_set_screen::line#2 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$1 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$1 ] ) - [268] *((const byte[25]) form_line_hi#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$1 [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#2 form_set_screen::y#2 ] ) - [269] (byte*) form_set_screen::line#1 ← (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ form_set_screen::y#2 form_set_screen::line#1 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::y#2 form_set_screen::line#1 ] ) - [270] (byte) form_set_screen::y#1 ← ++ (byte) form_set_screen::y#2 [ form_set_screen::line#1 form_set_screen::y#1 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#1 form_set_screen::y#1 ] ) - [271] if((byte) form_set_screen::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 25) goto form_set_screen::@1 [ form_set_screen::line#1 form_set_screen::y#1 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#1 form_set_screen::y#1 ] ) + [285] (byte) form_set_screen::y#2 ← phi( form_set_screen/(byte/signed byte/word/signed word/dword/signed dword) 0 form_set_screen::@1/(byte) form_set_screen::y#1 ) [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#2 form_set_screen::y#2 ] ) + [285] (byte*) form_set_screen::line#2 ← phi( form_set_screen/(const byte*) FORM_SCREEN#0 form_set_screen::@1/(byte*) form_set_screen::line#1 ) [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#2 form_set_screen::y#2 ] ) + [286] (byte~) form_set_screen::$0 ← < (byte*) form_set_screen::line#2 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$0 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$0 ] ) + [287] *((const byte[25]) form_line_lo#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$0 [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#2 form_set_screen::y#2 ] ) + [288] (byte~) form_set_screen::$1 ← > (byte*) form_set_screen::line#2 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$1 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$1 ] ) + [289] *((const byte[25]) form_line_hi#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$1 [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#2 form_set_screen::y#2 ] ) + [290] (byte*) form_set_screen::line#1 ← (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ form_set_screen::y#2 form_set_screen::line#1 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::y#2 form_set_screen::line#1 ] ) + [291] (byte) form_set_screen::y#1 ← ++ (byte) form_set_screen::y#2 [ form_set_screen::line#1 form_set_screen::y#1 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#1 form_set_screen::y#1 ] ) + [292] if((byte) form_set_screen::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 25) goto form_set_screen::@1 [ form_set_screen::line#1 form_set_screen::y#1 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#1 form_set_screen::y#1 ] ) to:form_set_screen::@return form_set_screen::@return: scope:[form_set_screen] from form_set_screen::@1 - [272] return [ ] ( main:2::form_init:10::form_set_screen:249 [ ] ) + [293] return [ ] ( main:2::form_init:10::form_set_screen:270 [ ] ) to:@return -print_str_lines: scope:[print_str_lines] from form_init::@1 form_init::@3 - [273] (byte*) print_str_lines::str#5 ← phi( form_init::@1/(const string) FORM_COLS#0 form_init::@3/(const string) FORM_TEXT#0 ) [ print_str_lines::str#5 print_set_screen::screen#2 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#5 print_set_screen::screen#2 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#5 print_set_screen::screen#2 ] ) - [274] (byte*~) print_char_cursor#60 ← (byte*) print_set_screen::screen#2 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ) +print_str_lines: scope:[print_str_lines] from form_init::@2 form_init::@5 + [294] (byte*) print_str_lines::str#5 ← phi( form_init::@2/(const string) FORM_COLS#0 form_init::@5/(const string) FORM_TEXT#0 ) [ print_str_lines::str#5 print_set_screen::screen#2 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#5 print_set_screen::screen#2 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#5 print_set_screen::screen#2 ] ) + [295] (byte*~) print_char_cursor#60 ← (byte*) print_set_screen::screen#2 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ) to:print_str_lines::@1 print_str_lines::@1: scope:[print_str_lines] from print_str_lines print_str_lines::@9 - [275] (byte*) print_line_cursor#16 ← phi( print_str_lines/(byte*) print_set_screen::screen#2 print_str_lines::@9/(byte*) print_line_cursor#18 ) [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ) - [275] (byte*) print_char_cursor#18 ← phi( print_str_lines/(byte*~) print_char_cursor#60 print_str_lines::@9/(byte*~) print_char_cursor#61 ) [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ) - [275] (byte*) print_str_lines::str#3 ← phi( print_str_lines/(byte*) print_str_lines::str#5 print_str_lines::@9/(byte*) print_str_lines::str#0 ) [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ) - [276] if(*((byte*) print_str_lines::str#3)!=(byte) '@') goto print_str_lines::@4 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ) + [296] (byte*) print_line_cursor#2 ← phi( print_str_lines/(byte*) print_set_screen::screen#2 print_str_lines::@9/(byte*) print_line_cursor#22 ) [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ) + [296] (byte*) print_char_cursor#22 ← phi( print_str_lines/(byte*~) print_char_cursor#60 print_str_lines::@9/(byte*~) print_char_cursor#61 ) [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ) + [296] (byte*) print_str_lines::str#3 ← phi( print_str_lines/(byte*) print_str_lines::str#5 print_str_lines::@9/(byte*) print_str_lines::str#0 ) [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ) + [297] if(*((byte*) print_str_lines::str#3)!=(byte) '@') goto print_str_lines::@4 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ) to:print_str_lines::@return print_str_lines::@return: scope:[print_str_lines] from print_str_lines::@1 - [277] return [ ] ( main:2::form_init:10::print_str_lines:243 [ ] main:2::form_init:10::print_str_lines:247 [ ] ) + [298] return [ ] ( main:2::form_init:10::print_str_lines:262 [ ] main:2::form_init:10::print_str_lines:268 [ ] ) to:@return print_str_lines::@4: scope:[print_str_lines] from print_str_lines::@1 print_str_lines::@5 - [278] (byte*) print_char_cursor#16 ← phi( print_str_lines::@1/(byte*) print_char_cursor#18 print_str_lines::@5/(byte*) print_char_cursor#31 ) [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 ] ) - [278] (byte*) print_str_lines::str#4 ← phi( print_str_lines::@1/(byte*) print_str_lines::str#3 print_str_lines::@5/(byte*) print_str_lines::str#0 ) [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 ] ) - [279] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#4) [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 print_str_lines::ch#0 ] ) - [280] (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#4 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ) - [281] if((byte) print_str_lines::ch#0==(byte) '@') goto print_str_lines::@5 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ) + [299] (byte*) print_char_cursor#20 ← phi( print_str_lines::@1/(byte*) print_char_cursor#22 print_str_lines::@5/(byte*) print_char_cursor#38 ) [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 ] ) + [299] (byte*) print_str_lines::str#4 ← phi( print_str_lines::@1/(byte*) print_str_lines::str#3 print_str_lines::@5/(byte*) print_str_lines::str#0 ) [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 ] ) + [300] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#4) [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] ) + [301] (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#4 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ) + [302] if((byte) print_str_lines::ch#0==(byte) '@') goto print_str_lines::@5 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ) to:print_str_lines::@8 print_str_lines::@8: scope:[print_str_lines] from print_str_lines::@4 - [282] *((byte*) print_char_cursor#16) ← (byte) print_str_lines::ch#0 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ) - [283] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#16 [ print_line_cursor#16 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] ) + [303] *((byte*) print_char_cursor#20) ← (byte) print_str_lines::ch#0 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ) + [304] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#20 [ print_line_cursor#2 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] ) to:print_str_lines::@5 print_str_lines::@5: scope:[print_str_lines] from print_str_lines::@4 print_str_lines::@8 - [284] (byte*) print_char_cursor#31 ← phi( print_str_lines::@4/(byte*) print_char_cursor#16 print_str_lines::@8/(byte*) print_char_cursor#1 ) [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 print_str_lines::ch#0 ] ) - [285] if((byte) print_str_lines::ch#0!=(byte) '@') goto print_str_lines::@4 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 ] ) + [305] (byte*) print_char_cursor#38 ← phi( print_str_lines::@4/(byte*) print_char_cursor#20 print_str_lines::@8/(byte*) print_char_cursor#1 ) [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 print_str_lines::ch#0 ] ) + [306] if((byte) print_str_lines::ch#0!=(byte) '@') goto print_str_lines::@4 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 ] ) to:print_str_lines::@9 print_str_lines::@9: scope:[print_str_lines] from print_str_lines::@5 - [286] phi() [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 ] ) - [287] call print_ln param-assignment [ print_str_lines::str#0 print_line_cursor#18 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#0 print_line_cursor#18 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#0 print_line_cursor#18 ] ) - [288] (byte*~) print_char_cursor#61 ← (byte*) print_line_cursor#18 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#18 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#18 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#18 ] ) + [307] phi() [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 ] ) + [308] call print_ln param-assignment [ print_str_lines::str#0 print_line_cursor#22 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#0 print_line_cursor#22 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#0 print_line_cursor#22 ] ) + [309] (byte*~) print_char_cursor#61 ← (byte*) print_line_cursor#22 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#22 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#22 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#22 ] ) to:print_str_lines::@1 print_ln: scope:[print_ln] from print_str_lines::@9 - [289] phi() [ print_line_cursor#16 print_char_cursor#31 ] ( main:2::form_init:10::print_str_lines:243::print_ln:287 [ print_str_lines::str#0 print_line_cursor#16 print_char_cursor#31 ] main:2::form_init:10::print_str_lines:247::print_ln:287 [ print_str_lines::str#0 print_line_cursor#16 print_char_cursor#31 ] ) + [310] phi() [ print_line_cursor#2 print_char_cursor#38 ] ( main:2::form_init:10::print_str_lines:262::print_ln:308 [ print_str_lines::str#0 print_line_cursor#2 print_char_cursor#38 ] main:2::form_init:10::print_str_lines:268::print_ln:308 [ print_str_lines::str#0 print_line_cursor#2 print_char_cursor#38 ] ) to:print_ln::@1 print_ln::@1: scope:[print_ln] from print_ln print_ln::@1 - [290] (byte*) print_line_cursor#17 ← phi( print_ln/(byte*) print_line_cursor#16 print_ln::@1/(byte*) print_line_cursor#18 ) [ print_char_cursor#31 print_line_cursor#17 ] ( main:2::form_init:10::print_str_lines:243::print_ln:287 [ print_str_lines::str#0 print_char_cursor#31 print_line_cursor#17 ] main:2::form_init:10::print_str_lines:247::print_ln:287 [ print_str_lines::str#0 print_char_cursor#31 print_line_cursor#17 ] ) - [291] (byte*) print_line_cursor#18 ← (byte*) print_line_cursor#17 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ print_line_cursor#18 print_char_cursor#31 ] ( main:2::form_init:10::print_str_lines:243::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] main:2::form_init:10::print_str_lines:247::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] ) - [292] if((byte*) print_line_cursor#18<(byte*) print_char_cursor#31) goto print_ln::@1 [ print_line_cursor#18 print_char_cursor#31 ] ( main:2::form_init:10::print_str_lines:243::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] main:2::form_init:10::print_str_lines:247::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] ) + [311] (byte*) print_line_cursor#21 ← phi( print_ln/(byte*) print_line_cursor#2 print_ln::@1/(byte*) print_line_cursor#22 ) [ print_char_cursor#38 print_line_cursor#21 ] ( main:2::form_init:10::print_str_lines:262::print_ln:308 [ print_str_lines::str#0 print_char_cursor#38 print_line_cursor#21 ] main:2::form_init:10::print_str_lines:268::print_ln:308 [ print_str_lines::str#0 print_char_cursor#38 print_line_cursor#21 ] ) + [312] (byte*) print_line_cursor#22 ← (byte*) print_line_cursor#21 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ print_line_cursor#22 print_char_cursor#38 ] ( main:2::form_init:10::print_str_lines:262::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] main:2::form_init:10::print_str_lines:268::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] ) + [313] if((byte*) print_line_cursor#22<(byte*) print_char_cursor#38) goto print_ln::@1 [ print_line_cursor#22 print_char_cursor#38 ] ( main:2::form_init:10::print_str_lines:262::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] main:2::form_init:10::print_str_lines:268::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] ) to:print_ln::@return print_ln::@return: scope:[print_ln] from print_ln::@1 - [293] return [ print_line_cursor#18 ] ( main:2::form_init:10::print_str_lines:243::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 ] main:2::form_init:10::print_str_lines:247::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 ] ) + [314] return [ print_line_cursor#22 ] ( main:2::form_init:10::print_str_lines:262::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 ] main:2::form_init:10::print_str_lines:268::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 ] ) to:@return -print_set_screen: scope:[print_set_screen] from form_init form_init::@2 - [294] (byte*) print_set_screen::screen#2 ← phi( form_init/(const byte*) COLS#0+(const word) FORM_OFFSET#0 form_init::@2/(const byte*) FORM_SCREEN#0+(const word) FORM_OFFSET#0 ) [ print_set_screen::screen#2 ] ( main:2::form_init:10::print_set_screen:241 [ print_set_screen::screen#2 ] main:2::form_init:10::print_set_screen:245 [ print_set_screen::screen#2 ] ) +print_cls: scope:[print_cls] from form_init::@1 form_init::@4 + [315] (byte*) print_cls::sc#0 ← (byte*) print_set_screen::screen#2 [ print_set_screen::screen#2 print_cls::sc#0 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#0 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#0 ] ) + to:print_cls::@1 +print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 + [316] (byte*) print_cls::sc#2 ← phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) [ print_set_screen::screen#2 print_cls::sc#2 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#2 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#2 ] ) + [317] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_set_screen::screen#2 print_cls::sc#2 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#2 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#2 ] ) + [318] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_set_screen::screen#2 print_cls::sc#1 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#1 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#1 ] ) + [319] (byte*~) print_cls::$0 ← (byte*) print_set_screen::screen#2 + (word/signed word/dword/signed dword) 1000 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] ) + [320] if((byte*) print_cls::sc#1!=(byte*~) print_cls::$0) goto print_cls::@1 [ print_set_screen::screen#2 print_cls::sc#1 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#1 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#1 ] ) + to:print_cls::@return +print_cls::@return: scope:[print_cls] from print_cls::@1 + [321] return [ print_set_screen::screen#2 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 ] ) + to:@return +print_set_screen: scope:[print_set_screen] from form_init form_init::@3 + [322] (byte*) print_set_screen::screen#2 ← phi( form_init/(const byte*) COLS#0 form_init::@3/(const byte*) FORM_SCREEN#0 ) [ print_set_screen::screen#2 ] ( main:2::form_init:10::print_set_screen:258 [ print_set_screen::screen#2 ] main:2::form_init:10::print_set_screen:264 [ print_set_screen::screen#2 ] ) to:print_set_screen::@return print_set_screen::@return: scope:[print_set_screen] from print_set_screen - [295] return [ print_set_screen::screen#2 ] ( main:2::form_init:10::print_set_screen:241 [ print_set_screen::screen#2 ] main:2::form_init:10::print_set_screen:245 [ print_set_screen::screen#2 ] ) + [323] return [ print_set_screen::screen#2 ] ( main:2::form_init:10::print_set_screen:258 [ print_set_screen::screen#2 ] main:2::form_init:10::print_set_screen:264 [ print_set_screen::screen#2 ] ) to:@return -gfx_init: scope:[gfx_init] from main::@19 - [296] phi() [ ] ( main:2::gfx_init:8 [ ] ) - [297] call gfx_init_plane_8bppchunky param-assignment [ ] ( main:2::gfx_init:8 [ ] ) +gfx_init: scope:[gfx_init] from main::@7 + [324] phi() [ ] ( main:2::gfx_init:8 [ ] ) + [325] call gfx_init_screen_stdchar param-assignment [ ] ( main:2::gfx_init:8 [ ] ) + to:gfx_init::@1 +gfx_init::@1: scope:[gfx_init] from gfx_init + [326] phi() [ ] ( main:2::gfx_init:8 [ ] ) + [327] call gfx_init_plane_8bppchunky param-assignment [ ] ( main:2::gfx_init:8 [ ] ) to:gfx_init::@return -gfx_init::@return: scope:[gfx_init] from gfx_init - [298] return [ ] ( main:2::gfx_init:8 [ ] ) +gfx_init::@return: scope:[gfx_init] from gfx_init::@1 + [328] return [ ] ( main:2::gfx_init:8 [ ] ) to:@return -gfx_init_plane_8bppchunky: scope:[gfx_init_plane_8bppchunky] from gfx_init - [299] phi() [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ ] ) - [300] call dtvSetCpuBankSegment1 param-assignment [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ ] ) +gfx_init_plane_8bppchunky: scope:[gfx_init_plane_8bppchunky] from gfx_init::@1 + [329] phi() [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ ] ) + [330] call dtvSetCpuBankSegment1 param-assignment [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ ] ) to:gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky::@1: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky gfx_init_plane_8bppchunky::@5 - [301] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 ← phi( gfx_init_plane_8bppchunky::@5/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky/++((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) 16384 ) [ gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#7 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#7 ] ) - [301] (byte) gfx_init_plane_8bppchunky::y#6 ← phi( gfx_init_plane_8bppchunky::@5/(byte) gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#7 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#7 ] ) - [301] (byte*) gfx_init_plane_8bppchunky::gfxb#5 ← phi( gfx_init_plane_8bppchunky::@5/(byte*) gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky/((byte*))(word/signed word/dword/signed dword) 16384 ) [ gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#7 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#7 ] ) + [331] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 ← phi( gfx_init_plane_8bppchunky::@5/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky/++((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) 16384 ) [ gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#7 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#7 ] ) + [331] (byte) gfx_init_plane_8bppchunky::y#6 ← phi( gfx_init_plane_8bppchunky::@5/(byte) gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#7 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#7 ] ) + [331] (byte*) gfx_init_plane_8bppchunky::gfxb#5 ← phi( gfx_init_plane_8bppchunky::@5/(byte*) gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky/((byte*))(word/signed word/dword/signed dword) 16384 ) [ gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#7 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#7 ] ) to:gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@2: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky::@3 - [302] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 ← phi( gfx_init_plane_8bppchunky::@1/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::@3/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 ) [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) - [302] (word) gfx_init_plane_8bppchunky::x#2 ← phi( gfx_init_plane_8bppchunky::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_plane_8bppchunky::@3/(word) gfx_init_plane_8bppchunky::x#1 ) [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) - [302] (byte*) gfx_init_plane_8bppchunky::gfxb#3 ← phi( gfx_init_plane_8bppchunky::@1/(byte*) gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::@3/(byte*) gfx_init_plane_8bppchunky::gfxb#1 ) [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) - [303] if((byte*) gfx_init_plane_8bppchunky::gfxb#3!=(word/dword/signed dword) 32768) goto gfx_init_plane_8bppchunky::@3 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) + [332] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 ← phi( gfx_init_plane_8bppchunky::@1/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::@3/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 ) [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) + [332] (word) gfx_init_plane_8bppchunky::x#2 ← phi( gfx_init_plane_8bppchunky::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_plane_8bppchunky::@3/(word) gfx_init_plane_8bppchunky::x#1 ) [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) + [332] (byte*) gfx_init_plane_8bppchunky::gfxb#3 ← phi( gfx_init_plane_8bppchunky::@1/(byte*) gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::@3/(byte*) gfx_init_plane_8bppchunky::gfxb#1 ) [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) + [333] if((byte*) gfx_init_plane_8bppchunky::gfxb#3!=(word/dword/signed dword) 32768) goto gfx_init_plane_8bppchunky::@3 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) to:gfx_init_plane_8bppchunky::@4 gfx_init_plane_8bppchunky::@4: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@2 - [304] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ← (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 dtvSetCpuBankSegment1::cpuBankIdx#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 dtvSetCpuBankSegment1::cpuBankIdx#1 ] ) - [305] call dtvSetCpuBankSegment1 param-assignment [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) + [334] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ← (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 dtvSetCpuBankSegment1::cpuBankIdx#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 dtvSetCpuBankSegment1::cpuBankIdx#1 ] ) + [335] call dtvSetCpuBankSegment1 param-assignment [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) to:gfx_init_plane_8bppchunky::@8 gfx_init_plane_8bppchunky::@8: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@4 - [306] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ← ++ (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] ) + [336] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ← ++ (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] ) to:gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@3: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@8 - [307] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 ← phi( gfx_init_plane_8bppchunky::@2/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::@8/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ) [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) - [307] (byte*) gfx_init_plane_8bppchunky::gfxb#4 ← phi( gfx_init_plane_8bppchunky::@2/(byte*) gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::@8/((byte*))(word/signed word/dword/signed dword) 16384 ) [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) - [308] (word~) gfx_init_plane_8bppchunky::$6 ← (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ) - [309] (byte) gfx_init_plane_8bppchunky::c#0 ← ((byte)) (word~) gfx_init_plane_8bppchunky::$6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ) - [310] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ← (byte) gfx_init_plane_8bppchunky::c#0 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) - [311] (byte*) gfx_init_plane_8bppchunky::gfxb#1 ← ++ (byte*) gfx_init_plane_8bppchunky::gfxb#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 ] ) - [312] (word) gfx_init_plane_8bppchunky::x#1 ← ++ (word) gfx_init_plane_8bppchunky::x#2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) - [313] if((word) gfx_init_plane_8bppchunky::x#1!=(word/signed word/dword/signed dword) 320) goto gfx_init_plane_8bppchunky::@2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) + [337] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 ← phi( gfx_init_plane_8bppchunky::@2/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::@8/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ) [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) + [337] (byte*) gfx_init_plane_8bppchunky::gfxb#4 ← phi( gfx_init_plane_8bppchunky::@2/(byte*) gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::@8/((byte*))(word/signed word/dword/signed dword) 16384 ) [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) + [338] (word~) gfx_init_plane_8bppchunky::$6 ← (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ) + [339] (byte) gfx_init_plane_8bppchunky::c#0 ← ((byte)) (word~) gfx_init_plane_8bppchunky::$6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ) + [340] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ← (byte) gfx_init_plane_8bppchunky::c#0 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) + [341] (byte*) gfx_init_plane_8bppchunky::gfxb#1 ← ++ (byte*) gfx_init_plane_8bppchunky::gfxb#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 ] ) + [342] (word) gfx_init_plane_8bppchunky::x#1 ← ++ (word) gfx_init_plane_8bppchunky::x#2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) + [343] if((word) gfx_init_plane_8bppchunky::x#1!=(word/signed word/dword/signed dword) 320) goto gfx_init_plane_8bppchunky::@2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) to:gfx_init_plane_8bppchunky::@5 gfx_init_plane_8bppchunky::@5: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@3 - [314] (byte) gfx_init_plane_8bppchunky::y#1 ← ++ (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ) - [315] if((byte) gfx_init_plane_8bppchunky::y#1!=(byte/word/signed word/dword/signed dword) 200) goto gfx_init_plane_8bppchunky::@1 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ) + [344] (byte) gfx_init_plane_8bppchunky::y#1 ← ++ (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ) + [345] if((byte) gfx_init_plane_8bppchunky::y#1!=(byte/word/signed word/dword/signed dword) 200) goto gfx_init_plane_8bppchunky::@1 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ) to:gfx_init_plane_8bppchunky::@6 gfx_init_plane_8bppchunky::@6: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@5 - [316] phi() [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ ] ) - [317] call dtvSetCpuBankSegment1 param-assignment [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ ] ) + [346] phi() [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ ] ) + [347] call dtvSetCpuBankSegment1 param-assignment [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ ] ) to:gfx_init_plane_8bppchunky::@return gfx_init_plane_8bppchunky::@return: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@6 - [318] return [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ ] ) + [348] return [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ ] ) to:@return dtvSetCpuBankSegment1: scope:[dtvSetCpuBankSegment1] from gfx_init_plane_8bppchunky gfx_init_plane_8bppchunky::@4 gfx_init_plane_8bppchunky::@6 - [319] (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 ← phi( gfx_init_plane_8bppchunky/((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) 16384 gfx_init_plane_8bppchunky::@4/(byte) dtvSetCpuBankSegment1::cpuBankIdx#1 gfx_init_plane_8bppchunky::@6/((byte))(word/signed word/dword/signed dword) 16384/(word/signed word/dword/signed dword) 16384 ) [ dtvSetCpuBankSegment1::cpuBankIdx#3 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:300 [ dtvSetCpuBankSegment1::cpuBankIdx#3 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:305 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 dtvSetCpuBankSegment1::cpuBankIdx#3 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:317 [ dtvSetCpuBankSegment1::cpuBankIdx#3 ] ) - [320] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ← (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:300 [ ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:305 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:317 [ ] ) + [349] (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 ← phi( gfx_init_plane_8bppchunky/((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) 16384 gfx_init_plane_8bppchunky::@4/(byte) dtvSetCpuBankSegment1::cpuBankIdx#1 gfx_init_plane_8bppchunky::@6/((byte))(word/signed word/dword/signed dword) 16384/(word/signed word/dword/signed dword) 16384 ) [ dtvSetCpuBankSegment1::cpuBankIdx#3 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:330 [ dtvSetCpuBankSegment1::cpuBankIdx#3 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:335 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 dtvSetCpuBankSegment1::cpuBankIdx#3 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:347 [ dtvSetCpuBankSegment1::cpuBankIdx#3 ] ) + [350] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ← (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:330 [ ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:335 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:347 [ ] ) asm { .byte$32,$dd lda$ff .byte$32,$00 } to:dtvSetCpuBankSegment1::@return dtvSetCpuBankSegment1::@return: scope:[dtvSetCpuBankSegment1] from dtvSetCpuBankSegment1 - [322] return [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:300 [ ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:305 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:317 [ ] ) + [352] return [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:330 [ ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:335 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:347 [ ] ) + to:@return +gfx_init_screen_stdchar: scope:[gfx_init_screen_stdchar] from gfx_init + [353] phi() [ ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ ] ) + to:gfx_init_screen_stdchar::@1 +gfx_init_screen_stdchar::@1: scope:[gfx_init_screen_stdchar] from gfx_init_screen_stdchar gfx_init_screen_stdchar::@3 + [354] (byte*) gfx_init_screen_stdchar::ch#3 ← phi( gfx_init_screen_stdchar/(const byte*) VIC_SCREEN_STDCHAR#0 gfx_init_screen_stdchar::@3/(byte*) gfx_init_screen_stdchar::ch#1 ) [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#3 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#3 ] ) + [354] (byte) gfx_init_screen_stdchar::cy#4 ← phi( gfx_init_screen_stdchar/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_screen_stdchar::@3/(byte) gfx_init_screen_stdchar::cy#1 ) [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#3 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#3 ] ) + to:gfx_init_screen_stdchar::@2 +gfx_init_screen_stdchar::@2: scope:[gfx_init_screen_stdchar] from gfx_init_screen_stdchar::@1 gfx_init_screen_stdchar::@2 + [355] (byte*) gfx_init_screen_stdchar::ch#2 ← phi( gfx_init_screen_stdchar::@1/(byte*) gfx_init_screen_stdchar::ch#3 gfx_init_screen_stdchar::@2/(byte*) gfx_init_screen_stdchar::ch#1 ) [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 ] ) + [355] (byte) gfx_init_screen_stdchar::cx#2 ← phi( gfx_init_screen_stdchar::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_screen_stdchar::@2/(byte) gfx_init_screen_stdchar::cx#1 ) [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 ] ) + [356] (byte~) gfx_init_screen_stdchar::$0 ← (byte) gfx_init_screen_stdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$0 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$0 ] ) + [357] (byte~) gfx_init_screen_stdchar::$1 ← (byte~) gfx_init_screen_stdchar::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 ] ) + [358] (byte~) gfx_init_screen_stdchar::$2 ← (byte) gfx_init_screen_stdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 gfx_init_screen_stdchar::$2 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 gfx_init_screen_stdchar::$2 ] ) + [359] (byte~) gfx_init_screen_stdchar::$3 ← (byte~) gfx_init_screen_stdchar::$1 | (byte~) gfx_init_screen_stdchar::$2 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$3 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$3 ] ) + [360] *((byte*) gfx_init_screen_stdchar::ch#2) ← (byte~) gfx_init_screen_stdchar::$3 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 ] ) + [361] (byte*) gfx_init_screen_stdchar::ch#1 ← ++ (byte*) gfx_init_screen_stdchar::ch#2 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#2 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#2 ] ) + [362] (byte) gfx_init_screen_stdchar::cx#1 ← ++ (byte) gfx_init_screen_stdchar::cx#2 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#1 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#1 ] ) + [363] if((byte) gfx_init_screen_stdchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) 40) goto gfx_init_screen_stdchar::@2 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#1 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#1 ] ) + to:gfx_init_screen_stdchar::@3 +gfx_init_screen_stdchar::@3: scope:[gfx_init_screen_stdchar] from gfx_init_screen_stdchar::@2 + [364] (byte) gfx_init_screen_stdchar::cy#1 ← ++ (byte) gfx_init_screen_stdchar::cy#4 [ gfx_init_screen_stdchar::cy#1 gfx_init_screen_stdchar::ch#1 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#1 gfx_init_screen_stdchar::ch#1 ] ) + [365] if((byte) gfx_init_screen_stdchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) 25) goto gfx_init_screen_stdchar::@1 [ gfx_init_screen_stdchar::cy#1 gfx_init_screen_stdchar::ch#1 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#1 gfx_init_screen_stdchar::ch#1 ] ) + to:gfx_init_screen_stdchar::@return +gfx_init_screen_stdchar::@return: scope:[gfx_init_screen_stdchar] from gfx_init_screen_stdchar::@3 + [366] return [ ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ ] ) to:@return keyboard_init: scope:[keyboard_init] from main - [323] *((const byte*) CIA1_PORT_A_DDR#0) ← (byte/word/signed word/dword/signed dword) 255 [ ] ( main:2::keyboard_init:6 [ ] ) - [324] *((const byte*) CIA1_PORT_B_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::keyboard_init:6 [ ] ) + [367] *((const byte*) CIA1_PORT_A_DDR#0) ← (byte/word/signed word/dword/signed dword) 255 [ ] ( main:2::keyboard_init:6 [ ] ) + [368] *((const byte*) CIA1_PORT_B_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::keyboard_init:6 [ ] ) to:keyboard_init::@return keyboard_init::@return: scope:[keyboard_init] from keyboard_init - [325] return [ ] ( main:2::keyboard_init:6 [ ] ) + [369] return [ ] ( main:2::keyboard_init:6 [ ] ) to:@return diff --git a/src/test/java/dk/camelot64/kickc/test/ref/c64dtv-gfxexplorer.log b/src/test/java/dk/camelot64/kickc/test/ref/c64dtv-gfxexplorer.log index 99eb22968..1dc452e01 100644 --- a/src/test/java/dk/camelot64/kickc/test/ref/c64dtv-gfxexplorer.log +++ b/src/test/java/dk/camelot64/kickc/test/ref/c64dtv-gfxexplorer.log @@ -11,17 +11,16 @@ void main() { gfx_init(); form_init(); while(true) { - // Render form at the bottom 9 lines of the screen - while(*RASTER != $30+8*16) {} + // Let the user change the GFX configuration form_mode(); - // Allow user to control the graphics through the form - while(*RASTER!=$ff) {} - form_control(); - // Render graphics mode at the top 16 lines of the screen + // Show the GFX configuration gfx_mode(); } } +// Standard charset screen +const byte* VIC_SCREEN_STDCHAR = $8400; + // 8BPP Chunky Bitmap (contains 8bpp pixels) const dword PLANE_8BPP_CHUNKY = $20000; @@ -29,8 +28,6 @@ const dword PLANE_8BPP_CHUNKY = $20000; const byte* FORM_SCREEN = $8000; // Charset used for the FORM const byte* FORM_CHARSET = $9800; // Charset ROM -// Offset of the FORM from the top of the screen -const word FORM_OFFSET = 16*40; byte[] FORM_COLS = @@ -105,7 +102,7 @@ const byte* form_vic_bg3_lo = form_fields_val+34; // Change graphics mode to show the selected graphics mode void gfx_mode() { - + // Show the GFX configuration // DTV Graphics Mode byte dtv_control = 0; if(*form_ctrl_line!=0) { @@ -163,7 +160,7 @@ void gfx_mode() { *DTV_PLANEB_MODULO_LO = *form_b_mod_hi<<4|*form_b_mod_lo; *DTV_PLANEB_MODULO_HI = 0; - // Border colors + // Bakground colors *BGCOL1 = *form_vic_bg0_hi<<4|*form_vic_bg0_lo; *BGCOL2 = *form_vic_bg1_hi<<4|*form_vic_bg1_lo; *BGCOL3 = *form_vic_bg2_hi<<4|*form_vic_bg2_lo; @@ -173,14 +170,37 @@ void gfx_mode() { for(byte i : 0..$f) { DTV_PALETTE[i] = i; } + + // Wait for the user to press space + while(true) { + while(*RASTER!=$ff) {} + keyboard_event_scan(); + byte keyboard_event = keyboard_event_get(); + if(keyboard_event==KEY_SPACE) { + // If space pressed - change to form mode + return; + } + } + } // Initialize the different graphics in the memory void gfx_init() { + gfx_init_screen_stdchar(); gfx_init_plane_8bppchunky(); } +// Initialize std char screen +void gfx_init_screen_stdchar() { + byte* ch=VIC_SCREEN_STDCHAR; + for(byte cy: 0..24 ) { + for(byte cx: 0..39) { + *ch++ = (cy&$f)<<4|(cx&$f); + } + } +} + // Initialize 8BPP Chunky Bitmap (contains 8bpp pixels) void gfx_init_plane_8bppchunky() { // 320x200 8bpp pixels for Plane @@ -204,18 +224,22 @@ void gfx_init_plane_8bppchunky() { // Initialize the form colors, screen & form void form_init() { // Form Colors - print_set_screen(COLS+FORM_OFFSET); + print_set_screen(COLS); + print_cls(); print_str_lines(FORM_COLS); // Form Text - print_set_screen(FORM_SCREEN+FORM_OFFSET); + print_set_screen(FORM_SCREEN); + print_cls(); print_str_lines(FORM_TEXT); // Form Fields - form_set_screen(FORM_SCREEN+FORM_OFFSET); + form_set_screen(FORM_SCREEN); form_render_values(); } -// Change graphics mode to show the form +// Show the form - and let the user change values void form_mode() { + // Show the form + // DTV Graphics Bank *DTV_GRAPHICS_VIC_BANK = (byte)((dword)FORM_CHARSET/$10000); // DTV Color Bank @@ -236,8 +260,17 @@ void form_mode() { DTV_PALETTE[i] = DTV_PALETTE_DEFAULT[i]; } // Screen colors - *BORDERCOL = 0; *BGCOL = 0; + + // Let the user change values in the form + while(true) { + while(*RASTER!=$ff) {} + if(form_control()!=0) { + // Space pressed - change to GFX mode + return; + } + } + return; } // Table with addresses of the y-lines of the form. The first line contains the address of the form screen. @@ -282,7 +315,8 @@ void form_render_values() { } // Reads keyboard and allows the user to navigate and change the fields of the form -void form_control() { +// Returns 0 if space is not pressed, non-0 if space is pressed +byte form_control() { byte* field = form_field_ptr(form_field_idx); // Blinking cursor @@ -317,7 +351,7 @@ void form_control() { // Always blink cursor in new field form_cursor_count = FORM_CURSOR_BLINK/2; // Return to refresh - return; + return 0; } // Change value with cursor left/right @@ -335,9 +369,15 @@ void form_control() { } // Render field value *field = print_hextab[form_fields_val[form_field_idx]]; - return; + return 0; } + // Check for space press + if(key_event==KEY_SPACE) { + return $ff; + } + return 0; + } Importing c64dtv.kc @@ -883,6 +923,7 @@ Adding pre/post-modifier (byte) keyboard_events_size ← ++ (byte) keyboard_even Adding pre/post-modifier (byte) keyboard_events_size ← ++ (byte) keyboard_events_size Adding pre/post-modifier (byte) keyboard_event_scan::keycode ← ++ (byte) keyboard_event_scan::keycode Adding pre/post-modifier (byte) keyboard_events_size ← -- (byte) keyboard_events_size +Adding pre/post-modifier (byte*) gfx_init_screen_stdchar::ch ← ++ (byte*) gfx_init_screen_stdchar::ch Adding pre/post-modifier (byte) gfx_init_plane_8bppchunky::gfxbCpuBank ← ++ (byte) gfx_init_plane_8bppchunky::gfxbCpuBank Adding pre/post-modifier (byte) gfx_init_plane_8bppchunky::gfxbCpuBank ← ++ (byte) gfx_init_plane_8bppchunky::gfxbCpuBank Adding pre/post-modifier (byte*) gfx_init_plane_8bppchunky::gfxb ← ++ (byte*) gfx_init_plane_8bppchunky::gfxb @@ -1386,130 +1427,112 @@ main::@1: if(true) goto main::@2 goto main::@3 main::@2: -main::@4: - (byte/word/signed word/dword/signed dword~) main::$3 ← (byte/signed byte/word/signed word/dword/signed dword) 8 * (byte/signed byte/word/signed word/dword/signed dword) 16 - (byte/word/signed word/dword/signed dword~) main::$4 ← (byte/signed byte/word/signed word/dword/signed dword) 48 + (byte/word/signed word/dword/signed dword~) main::$3 - (boolean~) main::$5 ← *((byte*) RASTER) != (byte/word/signed word/dword/signed dword~) main::$4 - if((boolean~) main::$5) goto main::@5 - goto main::@6 -main::@5: - goto main::@4 -main::@6: - (void~) main::$6 ← call form_mode -main::@7: - (boolean~) main::$7 ← *((byte*) RASTER) != (byte/word/signed word/dword/signed dword) 255 - if((boolean~) main::$7) goto main::@8 - goto main::@9 -main::@8: - goto main::@7 -main::@9: - (void~) main::$8 ← call form_control - (void~) main::$9 ← call gfx_mode + (void~) main::$3 ← call form_mode + (void~) main::$4 ← call gfx_mode goto main::@1 main::@3: main::@return: return endproc // main() + (byte*) VIC_SCREEN_STDCHAR ← (word/dword/signed dword) 33792 (dword) PLANE_8BPP_CHUNKY ← (dword/signed dword) 131072 (byte*) FORM_SCREEN ← (word/dword/signed dword) 32768 (byte*) FORM_CHARSET ← (word/dword/signed dword) 38912 - (word/signed word/dword/signed dword~) $1 ← (byte/signed byte/word/signed word/dword/signed dword) 16 * (byte/signed byte/word/signed word/dword/signed dword) 40 - (word) FORM_OFFSET ← (word/signed word/dword/signed dword~) $1 - (string~) $2 ← (string) "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@" + (string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" + (string~) $1 ← (string) "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@" + (string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" + (string~) $2 ← (string~) $1 + (string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" (string~) $3 ← (string~) $2 + (string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" (string~) $4 ← (string~) $3 + (string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" (string~) $5 ← (string~) $4 + (string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" - (string~) $6 ← (string~) $5 + (string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" - (string~) $7 ← (string~) $6 + (string) " nnnnnnn ooooooooo @" + (string~) $6 ← (string~) $5 + (string) " nnnnnnn ooooooooo @" + (string~) $7 ← (string~) $6 + (string) " nnnnnnn nnnnnnnn ooooooooo @" (string~) $8 ← (string~) $7 + (string) " nnnnnnn nnnnnnnn ooooooooo @" - (string~) $9 ← (string~) $8 + (string) " nnnnnnn nnnnnnnn ooooooooo @" - (string~) $10 ← (string~) $9 + (string) "@" - (byte[]) FORM_COLS ← (string~) $10 - (string~) $11 ← (string) " DTV GfxExplorer MODE 0 8bpp pixel cell @" + (string) " CONTROL PLANE A PLANE B VIC II @" - (string~) $12 ← (string~) $11 + (string) " bmm 0 patt p0 patt p0 screen s0 @" - (string~) $13 ← (string~) $12 + (string) " mcm 0 start 00 start 00 gfx g0 @" - (string~) $14 ← (string~) $13 + (string) " ecm 0 step 00 step 00 colors c0 @" - (string~) $15 ← (string~) $14 + (string) " hicol 0 mod 00 mod 00 bgcol0 00 @" - (string~) $16 ← (string~) $15 + (string) " line 0 bgcol1 00 @" - (string~) $17 ← (string~) $16 + (string) " colof 0 borof 0 bgcol2 00 @" - (string~) $18 ← (string~) $17 + (string) " chunk 0 overs 0 bgcol3 00 @" - (string~) $19 ← (string~) $18 + (string) "@" - (byte[]) FORM_TEXT ← (string~) $19 + (string~) $9 ← (string~) $8 + (string) "@" + (byte[]) FORM_COLS ← (string~) $9 + (string~) $10 ← (string) " DTV GfxExplorer MODE 0 8bpp pixel cell @" + (string) " CONTROL PLANE A PLANE B VIC II @" + (string~) $11 ← (string~) $10 + (string) " bmm 0 patt p0 patt p0 screen s0 @" + (string~) $12 ← (string~) $11 + (string) " mcm 0 start 00 start 00 gfx g0 @" + (string~) $13 ← (string~) $12 + (string) " ecm 0 step 00 step 00 colors c0 @" + (string~) $14 ← (string~) $13 + (string) " hicol 0 mod 00 mod 00 bgcol0 00 @" + (string~) $15 ← (string~) $14 + (string) " line 0 bgcol1 00 @" + (string~) $16 ← (string~) $15 + (string) " colof 0 borof 0 bgcol2 00 @" + (string~) $17 ← (string~) $16 + (string) " chunk 0 overs 0 bgcol3 00 @" + (string~) $18 ← (string~) $17 + (string) "@" + (byte[]) FORM_TEXT ← (string~) $18 (byte) form_fields_cnt ← (byte/signed byte/word/signed word/dword/signed dword) 35 (byte[]) form_fields_x ← { (byte/signed byte/word/signed word/dword/signed dword) 22, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 17, (byte/signed byte/word/signed word/dword/signed dword) 17, (byte/signed byte/word/signed word/dword/signed dword) 17, (byte/signed byte/word/signed word/dword/signed dword) 16, (byte/signed byte/word/signed word/dword/signed dword) 17, (byte/signed byte/word/signed word/dword/signed dword) 16, (byte/signed byte/word/signed word/dword/signed dword) 17, (byte/signed byte/word/signed word/dword/signed dword) 16, (byte/signed byte/word/signed word/dword/signed dword) 17, (byte/signed byte/word/signed word/dword/signed dword) 27, (byte/signed byte/word/signed word/dword/signed dword) 26, (byte/signed byte/word/signed word/dword/signed dword) 27, (byte/signed byte/word/signed word/dword/signed dword) 26, (byte/signed byte/word/signed word/dword/signed dword) 27, (byte/signed byte/word/signed word/dword/signed dword) 26, (byte/signed byte/word/signed word/dword/signed dword) 27, (byte/signed byte/word/signed word/dword/signed dword) 38, (byte/signed byte/word/signed word/dword/signed dword) 38, (byte/signed byte/word/signed word/dword/signed dword) 38, (byte/signed byte/word/signed word/dword/signed dword) 37, (byte/signed byte/word/signed word/dword/signed dword) 38, (byte/signed byte/word/signed word/dword/signed dword) 37, (byte/signed byte/word/signed word/dword/signed dword) 38, (byte/signed byte/word/signed word/dword/signed dword) 37, (byte/signed byte/word/signed word/dword/signed dword) 38, (byte/signed byte/word/signed word/dword/signed dword) 37, (byte/signed byte/word/signed word/dword/signed dword) 38 } (byte[]) form_fields_y ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 8 } (byte[]) form_fields_max ← { (byte/signed byte/word/signed word/dword/signed dword) 13, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15 } (byte[]) form_fields_val ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } - (byte*~) $20 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*) form_ctrl_mode ← (byte*~) $20 - (byte*~) $21 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte*) form_ctrl_bmm ← (byte*~) $21 - (byte*~) $22 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte*) form_ctrl_mcm ← (byte*~) $22 - (byte*~) $23 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte*) form_ctrl_ecm ← (byte*~) $23 - (byte*~) $24 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte*) form_ctrl_hicol ← (byte*~) $24 - (byte*~) $25 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte*) form_ctrl_line ← (byte*~) $25 - (byte*~) $26 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte*) form_ctrl_colof ← (byte*~) $26 - (byte*~) $27 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte*) form_ctrl_chunk ← (byte*~) $27 - (byte*~) $28 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) form_ctrl_borof ← (byte*~) $28 - (byte*~) $29 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 9 - (byte*) form_ctrl_overs ← (byte*~) $29 - (byte*~) $30 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 10 - (byte*) form_a_pattern ← (byte*~) $30 - (byte*~) $31 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 11 - (byte*) form_a_start_hi ← (byte*~) $31 - (byte*~) $32 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 12 - (byte*) form_a_start_lo ← (byte*~) $32 - (byte*~) $33 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 13 - (byte*) form_a_step_hi ← (byte*~) $33 - (byte*~) $34 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 14 - (byte*) form_a_step_lo ← (byte*~) $34 - (byte*~) $35 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 15 - (byte*) form_a_mod_hi ← (byte*~) $35 - (byte*~) $36 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 16 - (byte*) form_a_mod_lo ← (byte*~) $36 - (byte*~) $37 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 17 - (byte*) form_b_pattern ← (byte*~) $37 - (byte*~) $38 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 18 - (byte*) form_b_start_hi ← (byte*~) $38 - (byte*~) $39 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 19 - (byte*) form_b_start_lo ← (byte*~) $39 - (byte*~) $40 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 20 - (byte*) form_b_step_hi ← (byte*~) $40 - (byte*~) $41 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 21 - (byte*) form_b_step_lo ← (byte*~) $41 - (byte*~) $42 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 22 - (byte*) form_b_mod_hi ← (byte*~) $42 - (byte*~) $43 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 23 - (byte*) form_b_mod_lo ← (byte*~) $43 - (byte*~) $44 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 24 - (byte*) form_vic_screen ← (byte*~) $44 - (byte*~) $45 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 25 - (byte*) form_vic_gfx ← (byte*~) $45 - (byte*~) $46 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 26 - (byte*) form_vic_cols ← (byte*~) $46 - (byte*~) $47 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 27 - (byte*) form_vic_bg0_hi ← (byte*~) $47 - (byte*~) $48 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 28 - (byte*) form_vic_bg0_lo ← (byte*~) $48 - (byte*~) $49 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 29 - (byte*) form_vic_bg1_hi ← (byte*~) $49 - (byte*~) $50 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 30 - (byte*) form_vic_bg1_lo ← (byte*~) $50 - (byte*~) $51 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 31 - (byte*) form_vic_bg2_hi ← (byte*~) $51 - (byte*~) $52 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 32 - (byte*) form_vic_bg2_lo ← (byte*~) $52 - (byte*~) $53 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 33 - (byte*) form_vic_bg3_hi ← (byte*~) $53 - (byte*~) $54 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 34 - (byte*) form_vic_bg3_lo ← (byte*~) $54 + (byte*~) $19 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) form_ctrl_mode ← (byte*~) $19 + (byte*~) $20 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte*) form_ctrl_bmm ← (byte*~) $20 + (byte*~) $21 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte*) form_ctrl_mcm ← (byte*~) $21 + (byte*~) $22 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte*) form_ctrl_ecm ← (byte*~) $22 + (byte*~) $23 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte*) form_ctrl_hicol ← (byte*~) $23 + (byte*~) $24 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte*) form_ctrl_line ← (byte*~) $24 + (byte*~) $25 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte*) form_ctrl_colof ← (byte*~) $25 + (byte*~) $26 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte*) form_ctrl_chunk ← (byte*~) $26 + (byte*~) $27 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) form_ctrl_borof ← (byte*~) $27 + (byte*~) $28 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 9 + (byte*) form_ctrl_overs ← (byte*~) $28 + (byte*~) $29 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 10 + (byte*) form_a_pattern ← (byte*~) $29 + (byte*~) $30 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 11 + (byte*) form_a_start_hi ← (byte*~) $30 + (byte*~) $31 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 12 + (byte*) form_a_start_lo ← (byte*~) $31 + (byte*~) $32 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 13 + (byte*) form_a_step_hi ← (byte*~) $32 + (byte*~) $33 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 14 + (byte*) form_a_step_lo ← (byte*~) $33 + (byte*~) $34 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 15 + (byte*) form_a_mod_hi ← (byte*~) $34 + (byte*~) $35 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 16 + (byte*) form_a_mod_lo ← (byte*~) $35 + (byte*~) $36 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 17 + (byte*) form_b_pattern ← (byte*~) $36 + (byte*~) $37 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 18 + (byte*) form_b_start_hi ← (byte*~) $37 + (byte*~) $38 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 19 + (byte*) form_b_start_lo ← (byte*~) $38 + (byte*~) $39 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 20 + (byte*) form_b_step_hi ← (byte*~) $39 + (byte*~) $40 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 21 + (byte*) form_b_step_lo ← (byte*~) $40 + (byte*~) $41 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 22 + (byte*) form_b_mod_hi ← (byte*~) $41 + (byte*~) $42 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 23 + (byte*) form_b_mod_lo ← (byte*~) $42 + (byte*~) $43 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 24 + (byte*) form_vic_screen ← (byte*~) $43 + (byte*~) $44 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 25 + (byte*) form_vic_gfx ← (byte*~) $44 + (byte*~) $45 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 26 + (byte*) form_vic_cols ← (byte*~) $45 + (byte*~) $46 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 27 + (byte*) form_vic_bg0_hi ← (byte*~) $46 + (byte*~) $47 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 28 + (byte*) form_vic_bg0_lo ← (byte*~) $47 + (byte*~) $48 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 29 + (byte*) form_vic_bg1_hi ← (byte*~) $48 + (byte*~) $49 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 30 + (byte*) form_vic_bg1_lo ← (byte*~) $49 + (byte*~) $50 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 31 + (byte*) form_vic_bg2_hi ← (byte*~) $50 + (byte*~) $51 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 32 + (byte*) form_vic_bg2_lo ← (byte*~) $51 + (byte*~) $52 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 33 + (byte*) form_vic_bg3_hi ← (byte*~) $52 + (byte*~) $53 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 34 + (byte*) form_vic_bg3_lo ← (byte*~) $53 proc (void()) gfx_mode() (byte) gfx_mode::dtv_control ← (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) gfx_mode::$0 ← *((byte*) form_ctrl_line) != (byte/signed byte/word/signed word/dword/signed dword) 0 @@ -1634,14 +1657,57 @@ gfx_mode::@10: (byte) gfx_mode::i ← ++ (byte) gfx_mode::i (boolean~) gfx_mode::$64 ← (byte) gfx_mode::i != (byte/signed byte/word/signed word/dword/signed dword) 16 if((boolean~) gfx_mode::$64) goto gfx_mode::@10 +gfx_mode::@11: + if(true) goto gfx_mode::@12 + goto gfx_mode::@13 +gfx_mode::@12: +gfx_mode::@14: + (boolean~) gfx_mode::$65 ← *((byte*) RASTER) != (byte/word/signed word/dword/signed dword) 255 + if((boolean~) gfx_mode::$65) goto gfx_mode::@15 + goto gfx_mode::@16 +gfx_mode::@15: + goto gfx_mode::@14 +gfx_mode::@16: + (void~) gfx_mode::$66 ← call keyboard_event_scan + (byte~) gfx_mode::$67 ← call keyboard_event_get + (byte) gfx_mode::keyboard_event ← (byte~) gfx_mode::$67 + (boolean~) gfx_mode::$68 ← (byte) gfx_mode::keyboard_event == (byte) KEY_SPACE + (boolean~) gfx_mode::$69 ← ! (boolean~) gfx_mode::$68 + if((boolean~) gfx_mode::$69) goto gfx_mode::@17 + goto gfx_mode::@return +gfx_mode::@17: + goto gfx_mode::@11 +gfx_mode::@13: gfx_mode::@return: return endproc // gfx_mode() proc (void()) gfx_init() - (void~) gfx_init::$0 ← call gfx_init_plane_8bppchunky + (void~) gfx_init::$0 ← call gfx_init_screen_stdchar + (void~) gfx_init::$1 ← call gfx_init_plane_8bppchunky gfx_init::@return: return endproc // gfx_init() +proc (void()) gfx_init_screen_stdchar() + (byte*) gfx_init_screen_stdchar::ch ← (byte*) VIC_SCREEN_STDCHAR + (byte) gfx_init_screen_stdchar::cy ← (byte/signed byte/word/signed word/dword/signed dword) 0 +gfx_init_screen_stdchar::@1: + (byte) gfx_init_screen_stdchar::cx ← (byte/signed byte/word/signed word/dword/signed dword) 0 +gfx_init_screen_stdchar::@2: + (byte~) gfx_init_screen_stdchar::$0 ← (byte) gfx_init_screen_stdchar::cy & (byte/signed byte/word/signed word/dword/signed dword) 15 + (byte~) gfx_init_screen_stdchar::$1 ← (byte~) gfx_init_screen_stdchar::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) gfx_init_screen_stdchar::$2 ← (byte) gfx_init_screen_stdchar::cx & (byte/signed byte/word/signed word/dword/signed dword) 15 + (byte~) gfx_init_screen_stdchar::$3 ← (byte~) gfx_init_screen_stdchar::$1 | (byte~) gfx_init_screen_stdchar::$2 + *((byte*) gfx_init_screen_stdchar::ch) ← (byte~) gfx_init_screen_stdchar::$3 + (byte*) gfx_init_screen_stdchar::ch ← ++ (byte*) gfx_init_screen_stdchar::ch + (byte) gfx_init_screen_stdchar::cx ← ++ (byte) gfx_init_screen_stdchar::cx + (boolean~) gfx_init_screen_stdchar::$4 ← (byte) gfx_init_screen_stdchar::cx != (byte/signed byte/word/signed word/dword/signed dword) 40 + if((boolean~) gfx_init_screen_stdchar::$4) goto gfx_init_screen_stdchar::@2 + (byte) gfx_init_screen_stdchar::cy ← ++ (byte) gfx_init_screen_stdchar::cy + (boolean~) gfx_init_screen_stdchar::$5 ← (byte) gfx_init_screen_stdchar::cy != (byte/signed byte/word/signed word/dword/signed dword) 25 + if((boolean~) gfx_init_screen_stdchar::$5) goto gfx_init_screen_stdchar::@1 +gfx_init_screen_stdchar::@return: + return +endproc // gfx_init_screen_stdchar() proc (void()) gfx_init_plane_8bppchunky() (dword~) gfx_init_plane_8bppchunky::$0 ← (dword) PLANE_8BPP_CHUNKY / (word/signed word/dword/signed dword) 16384 (byte~) gfx_init_plane_8bppchunky::$1 ← ((byte)) (dword~) gfx_init_plane_8bppchunky::$0 @@ -1678,15 +1744,14 @@ gfx_init_plane_8bppchunky::@return: return endproc // gfx_init_plane_8bppchunky() proc (void()) form_init() - (byte*~) form_init::$0 ← (byte*) COLS + (word) FORM_OFFSET - (void~) form_init::$1 ← call print_set_screen (byte*~) form_init::$0 + (void~) form_init::$0 ← call print_set_screen (byte*) COLS + (void~) form_init::$1 ← call print_cls (void~) form_init::$2 ← call print_str_lines (byte[]) FORM_COLS - (byte*~) form_init::$3 ← (byte*) FORM_SCREEN + (word) FORM_OFFSET - (void~) form_init::$4 ← call print_set_screen (byte*~) form_init::$3 + (void~) form_init::$3 ← call print_set_screen (byte*) FORM_SCREEN + (void~) form_init::$4 ← call print_cls (void~) form_init::$5 ← call print_str_lines (byte[]) FORM_TEXT - (byte*~) form_init::$6 ← (byte*) FORM_SCREEN + (word) FORM_OFFSET - (void~) form_init::$7 ← call form_set_screen (byte*~) form_init::$6 - (void~) form_init::$8 ← call form_render_values + (void~) form_init::$6 ← call form_set_screen (byte*) FORM_SCREEN + (void~) form_init::$7 ← call form_render_values form_init::@return: return endproc // form_init() @@ -1729,8 +1794,27 @@ form_mode::@1: (byte) form_mode::i ← ++ (byte) form_mode::i (boolean~) form_mode::$23 ← (byte) form_mode::i != (byte/signed byte/word/signed word/dword/signed dword) 16 if((boolean~) form_mode::$23) goto form_mode::@1 - *((byte*) BORDERCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 0 *((byte*) BGCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 0 +form_mode::@2: + if(true) goto form_mode::@3 + goto form_mode::@4 +form_mode::@3: +form_mode::@5: + (boolean~) form_mode::$24 ← *((byte*) RASTER) != (byte/word/signed word/dword/signed dword) 255 + if((boolean~) form_mode::$24) goto form_mode::@6 + goto form_mode::@7 +form_mode::@6: + goto form_mode::@5 +form_mode::@7: + (byte~) form_mode::$25 ← call form_control + (boolean~) form_mode::$26 ← (byte~) form_mode::$25 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (boolean~) form_mode::$27 ← ! (boolean~) form_mode::$26 + if((boolean~) form_mode::$27) goto form_mode::@8 + goto form_mode::@return +form_mode::@8: + goto form_mode::@2 +form_mode::@4: + goto form_mode::@return form_mode::@return: return endproc // form_mode() @@ -1738,8 +1822,8 @@ endproc // form_mode() (byte[25]) form_line_hi ← { fill( 25, 0) } (byte) form_field_idx ← (byte/signed byte/word/signed word/dword/signed dword) 0 (signed byte) FORM_CURSOR_BLINK ← (byte/signed byte/word/signed word/dword/signed dword) 40 - (signed word/signed byte/signed dword~) $55 ← (signed byte) FORM_CURSOR_BLINK / (byte/signed byte/word/signed word/dword/signed dword) 2 - (signed byte) form_cursor_count ← (signed word/signed byte/signed dword~) $55 + (signed word/signed byte/signed dword~) $54 ← (signed byte) FORM_CURSOR_BLINK / (byte/signed byte/word/signed word/dword/signed dword) 2 + (signed byte) form_cursor_count ← (signed word/signed byte/signed dword~) $54 proc (void()) form_set_screen((byte*) form_set_screen::screen) (byte*) form_set_screen::line ← (byte*) form_set_screen::screen (byte) form_set_screen::y ← (byte/signed byte/word/signed word/dword/signed dword) 0 @@ -1781,7 +1865,7 @@ form_render_values::@1: form_render_values::@return: return endproc // form_render_values() -proc (void()) form_control() +proc (byte()) form_control() (byte*~) form_control::$0 ← call form_field_ptr (byte) form_field_idx (byte*) form_control::field ← (byte*~) form_control::$0 (signed byte) form_cursor_count ← -- (signed byte) form_cursor_count @@ -1831,6 +1915,7 @@ form_control::@8: form_control::@7: (signed word/signed byte/signed dword~) form_control::$21 ← (signed byte) FORM_CURSOR_BLINK / (byte/signed byte/word/signed word/dword/signed dword) 2 (signed byte) form_cursor_count ← (signed word/signed byte/signed dword~) form_control::$21 + (byte) form_control::return ← (byte/signed byte/word/signed word/dword/signed dword) 0 goto form_control::@return form_control::@4: (boolean~) form_control::$22 ← (byte) form_control::key_event == (byte) KEY_CRSR_RIGHT @@ -1856,16 +1941,26 @@ form_control::@10: form_control::@13: form_control::@12: *((byte*) form_control::field) ← *((byte[]) print_hextab + *((byte[]) form_fields_val + (byte) form_field_idx)) + (byte) form_control::return ← (byte/signed byte/word/signed word/dword/signed dword) 0 goto form_control::@return form_control::@9: + (boolean~) form_control::$31 ← (byte) form_control::key_event == (byte) KEY_SPACE + (boolean~) form_control::$32 ← ! (boolean~) form_control::$31 + if((boolean~) form_control::$32) goto form_control::@14 + (byte) form_control::return ← (byte/word/signed word/dword/signed dword) 255 + goto form_control::@return +form_control::@14: + (byte) form_control::return ← (byte/signed byte/word/signed word/dword/signed dword) 0 + goto form_control::@return form_control::@return: - return + (byte) form_control::return ← (byte) form_control::return + return (byte) form_control::return endproc // form_control() call main SYMBOLS (byte~) $0 -(word/signed word/dword/signed dword~) $1 +(string~) $1 (string~) $10 (string~) $11 (string~) $12 @@ -1875,7 +1970,7 @@ SYMBOLS (string~) $16 (string~) $17 (string~) $18 -(string~) $19 +(byte*~) $19 (string~) $2 (byte*~) $20 (byte*~) $21 @@ -1914,8 +2009,7 @@ SYMBOLS (byte*~) $51 (byte*~) $52 (byte*~) $53 -(byte*~) $54 -(signed word/signed byte/signed dword~) $55 +(signed word/signed byte/signed dword~) $54 (string~) $6 (string~) $7 (string~) $8 @@ -1978,7 +2072,6 @@ SYMBOLS (byte*) FORM_CHARSET (byte[]) FORM_COLS (signed byte) FORM_CURSOR_BLINK -(word) FORM_OFFSET (byte*) FORM_SCREEN (byte[]) FORM_TEXT (byte) GREEN @@ -2090,6 +2183,7 @@ SYMBOLS (byte*) VIC_MEMORY (byte) VIC_RSEL (byte) VIC_RST8 +(byte*) VIC_SCREEN_STDCHAR (byte) WHITE (byte) YELLOW (void()) dtvSetCpuBankSegment1((byte) dtvSetCpuBankSegment1::cpuBankIdx) @@ -2110,7 +2204,7 @@ SYMBOLS (byte*) form_b_start_lo (byte*) form_b_step_hi (byte*) form_b_step_lo -(void()) form_control() +(byte()) form_control() (byte*~) form_control::$0 (boolean~) form_control::$1 (boolean~) form_control::$10 @@ -2136,6 +2230,8 @@ SYMBOLS (boolean~) form_control::$29 (signed word/signed byte/signed dword~) form_control::$3 (boolean~) form_control::$30 +(boolean~) form_control::$31 +(boolean~) form_control::$32 (boolean~) form_control::$4 (boolean~) form_control::$5 (byte/word/dword~) form_control::$6 @@ -2147,6 +2243,7 @@ SYMBOLS (label) form_control::@11 (label) form_control::@12 (label) form_control::@13 +(label) form_control::@14 (label) form_control::@2 (label) form_control::@3 (label) form_control::@4 @@ -2158,6 +2255,7 @@ SYMBOLS (label) form_control::@return (byte*) form_control::field (byte) form_control::key_event +(byte) form_control::return (byte*) form_ctrl_bmm (byte*) form_ctrl_borof (byte*) form_ctrl_chunk @@ -2186,15 +2284,14 @@ SYMBOLS (byte[]) form_fields_x (byte[]) form_fields_y (void()) form_init() -(byte*~) form_init::$0 +(void~) form_init::$0 (void~) form_init::$1 (void~) form_init::$2 -(byte*~) form_init::$3 +(void~) form_init::$3 (void~) form_init::$4 (void~) form_init::$5 -(byte*~) form_init::$6 +(void~) form_init::$6 (void~) form_init::$7 -(void~) form_init::$8 (label) form_init::@return (byte[25]) form_line_hi (byte[25]) form_line_lo @@ -2216,6 +2313,10 @@ SYMBOLS (word/dword~) form_mode::$21 (byte~) form_mode::$22 (boolean~) form_mode::$23 +(boolean~) form_mode::$24 +(byte~) form_mode::$25 +(boolean~) form_mode::$26 +(boolean~) form_mode::$27 (dword~) form_mode::$3 (word~) form_mode::$4 (byte~) form_mode::$5 @@ -2224,6 +2325,13 @@ SYMBOLS (byte~) form_mode::$8 (word~) form_mode::$9 (label) form_mode::@1 +(label) form_mode::@2 +(label) form_mode::@3 +(label) form_mode::@4 +(label) form_mode::@5 +(label) form_mode::@6 +(label) form_mode::@7 +(label) form_mode::@8 (label) form_mode::@return (byte) form_mode::i (void()) form_render_values() @@ -2256,6 +2364,7 @@ SYMBOLS (byte*) form_vic_screen (void()) gfx_init() (void~) gfx_init::$0 +(void~) gfx_init::$1 (label) gfx_init::@return (void()) gfx_init_plane_8bppchunky() (dword~) gfx_init_plane_8bppchunky::$0 @@ -2280,6 +2389,19 @@ SYMBOLS (byte) gfx_init_plane_8bppchunky::gfxbCpuBank (word) gfx_init_plane_8bppchunky::x (byte) gfx_init_plane_8bppchunky::y +(void()) gfx_init_screen_stdchar() +(byte~) gfx_init_screen_stdchar::$0 +(byte~) gfx_init_screen_stdchar::$1 +(byte~) gfx_init_screen_stdchar::$2 +(byte~) gfx_init_screen_stdchar::$3 +(boolean~) gfx_init_screen_stdchar::$4 +(boolean~) gfx_init_screen_stdchar::$5 +(label) gfx_init_screen_stdchar::@1 +(label) gfx_init_screen_stdchar::@2 +(label) gfx_init_screen_stdchar::@return +(byte*) gfx_init_screen_stdchar::ch +(byte) gfx_init_screen_stdchar::cx +(byte) gfx_init_screen_stdchar::cy (void()) gfx_mode() (boolean~) gfx_mode::$0 (boolean~) gfx_mode::$1 @@ -2343,11 +2465,23 @@ SYMBOLS (byte~) gfx_mode::$62 (byte~) gfx_mode::$63 (boolean~) gfx_mode::$64 +(boolean~) gfx_mode::$65 +(void~) gfx_mode::$66 +(byte~) gfx_mode::$67 +(boolean~) gfx_mode::$68 +(boolean~) gfx_mode::$69 (boolean~) gfx_mode::$7 (byte~) gfx_mode::$8 (boolean~) gfx_mode::$9 (label) gfx_mode::@1 (label) gfx_mode::@10 +(label) gfx_mode::@11 +(label) gfx_mode::@12 +(label) gfx_mode::@13 +(label) gfx_mode::@14 +(label) gfx_mode::@15 +(label) gfx_mode::@16 +(label) gfx_mode::@17 (label) gfx_mode::@2 (label) gfx_mode::@3 (label) gfx_mode::@4 @@ -2359,6 +2493,7 @@ SYMBOLS (label) gfx_mode::@return (byte) gfx_mode::dtv_control (byte) gfx_mode::i +(byte) gfx_mode::keyboard_event (dword) gfx_mode::plane_a (byte) gfx_mode::plane_a_offs (dword) gfx_mode::plane_b @@ -2464,22 +2599,11 @@ SYMBOLS (void~) main::$0 (void~) main::$1 (void~) main::$2 -(byte/word/signed word/dword/signed dword~) main::$3 -(byte/word/signed word/dword/signed dword~) main::$4 -(boolean~) main::$5 -(void~) main::$6 -(boolean~) main::$7 -(void~) main::$8 -(void~) main::$9 +(void~) main::$3 +(void~) main::$4 (label) main::@1 (label) main::@2 (label) main::@3 -(label) main::@4 -(label) main::@5 -(label) main::@6 -(label) main::@7 -(label) main::@8 -(label) main::@9 (label) main::@return (void()) print_byte((byte) print_byte::b) (byte~) print_byte::$0 @@ -2646,6 +2770,7 @@ Promoting word/dword/signed dword to byte* in DTV_GRAPHICS_VIC_BANK ← ((byte*) Promoting word/dword/signed dword to byte* in DTV_GRAPHICS_HICOL_BANK ← ((byte*)) 53310 Promoting byte/word/signed word/dword/signed dword to byte* in dtvSetCpuBankSegment1::cpuBank ← ((byte*)) 255 Promoting word/signed word/dword/signed dword to byte* in print_screen ← ((byte*)) 1024 +Promoting word/dword/signed dword to byte* in VIC_SCREEN_STDCHAR ← ((byte*)) 33792 Promoting word/dword/signed dword to byte* in FORM_SCREEN ← ((byte*)) 32768 Promoting word/dword/signed dword to byte* in FORM_CHARSET ← ((byte*)) 38912 Promoting word/signed word/dword/signed dword to byte* in gfx_init_plane_8bppchunky::gfxb ← ((byte*)) 16384 @@ -3295,209 +3420,177 @@ main: scope:[main] from (void~) main::$1 ← call gfx_init (void~) main::$2 ← call form_init to:main::@1 -main::@1: scope:[main] from main main::@9 +main::@1: scope:[main] from main main::@2 if(true) goto main::@2 - to:main::@10 -main::@2: scope:[main] from main::@1 main::@11 to:main::@4 -main::@10: scope:[main] from main::@1 - to:main::@3 -main::@3: scope:[main] from main::@10 main::@18 - to:main::@return -main::@11: scope:[main] from - to:main::@2 -main::@4: scope:[main] from main::@2 main::@5 - (byte/word/signed word/dword/signed dword~) main::$3 ← (byte/signed byte/word/signed word/dword/signed dword) 8 * (byte/signed byte/word/signed word/dword/signed dword) 16 - (byte/word/signed word/dword/signed dword~) main::$4 ← (byte/signed byte/word/signed word/dword/signed dword) 48 + (byte/word/signed word/dword/signed dword~) main::$3 - (boolean~) main::$5 ← *((byte*) RASTER) != (byte/word/signed word/dword/signed dword~) main::$4 - if((boolean~) main::$5) goto main::@5 - to:main::@12 -main::@5: scope:[main] from main::@13 main::@4 - to:main::@4 -main::@12: scope:[main] from main::@4 - to:main::@6 -main::@6: scope:[main] from main::@12 main::@14 - (void~) main::$6 ← call form_mode - to:main::@7 -main::@13: scope:[main] from - to:main::@5 -main::@14: scope:[main] from - to:main::@6 -main::@7: scope:[main] from main::@6 main::@8 - (boolean~) main::$7 ← *((byte*) RASTER) != (byte/word/signed word/dword/signed dword) 255 - if((boolean~) main::$7) goto main::@8 - to:main::@15 -main::@8: scope:[main] from main::@16 main::@7 - to:main::@7 -main::@15: scope:[main] from main::@7 - to:main::@9 -main::@9: scope:[main] from main::@15 main::@17 - (void~) main::$8 ← call form_control - (void~) main::$9 ← call gfx_mode +main::@2: scope:[main] from main::@1 main::@5 + (void~) main::$3 ← call form_mode + (void~) main::$4 ← call gfx_mode to:main::@1 -main::@16: scope:[main] from - to:main::@8 -main::@17: scope:[main] from - to:main::@9 -main::@18: scope:[main] from +main::@4: scope:[main] from main::@1 + to:main::@3 +main::@3: scope:[main] from main::@4 main::@6 + to:main::@return +main::@5: scope:[main] from + to:main::@2 +main::@6: scope:[main] from to:main::@3 main::@return: scope:[main] from main::@3 return to:@return @23: scope:[] from @22 + (byte*) VIC_SCREEN_STDCHAR ← ((byte*)) (word/dword/signed dword) 33792 (dword) PLANE_8BPP_CHUNKY ← (dword/signed dword) 131072 (byte*) FORM_SCREEN ← ((byte*)) (word/dword/signed dword) 32768 (byte*) FORM_CHARSET ← ((byte*)) (word/dword/signed dword) 38912 - (word/signed word/dword/signed dword~) $1 ← (byte/signed byte/word/signed word/dword/signed dword) 16 * (byte/signed byte/word/signed word/dword/signed dword) 40 - (word) FORM_OFFSET ← (word/signed word/dword/signed dword~) $1 - (string~) $2 ← (string) "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@" + (string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" + (string~) $1 ← (string) "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@" + (string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" + (string~) $2 ← (string~) $1 + (string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" (string~) $3 ← (string~) $2 + (string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" (string~) $4 ← (string~) $3 + (string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" (string~) $5 ← (string~) $4 + (string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" - (string~) $6 ← (string~) $5 + (string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" - (string~) $7 ← (string~) $6 + (string) " nnnnnnn ooooooooo @" + (string~) $6 ← (string~) $5 + (string) " nnnnnnn ooooooooo @" + (string~) $7 ← (string~) $6 + (string) " nnnnnnn nnnnnnnn ooooooooo @" (string~) $8 ← (string~) $7 + (string) " nnnnnnn nnnnnnnn ooooooooo @" - (string~) $9 ← (string~) $8 + (string) " nnnnnnn nnnnnnnn ooooooooo @" - (string~) $10 ← (string~) $9 + (string) "@" - (byte[]) FORM_COLS ← (string~) $10 - (string~) $11 ← (string) " DTV GfxExplorer MODE 0 8bpp pixel cell @" + (string) " CONTROL PLANE A PLANE B VIC II @" - (string~) $12 ← (string~) $11 + (string) " bmm 0 patt p0 patt p0 screen s0 @" - (string~) $13 ← (string~) $12 + (string) " mcm 0 start 00 start 00 gfx g0 @" - (string~) $14 ← (string~) $13 + (string) " ecm 0 step 00 step 00 colors c0 @" - (string~) $15 ← (string~) $14 + (string) " hicol 0 mod 00 mod 00 bgcol0 00 @" - (string~) $16 ← (string~) $15 + (string) " line 0 bgcol1 00 @" - (string~) $17 ← (string~) $16 + (string) " colof 0 borof 0 bgcol2 00 @" - (string~) $18 ← (string~) $17 + (string) " chunk 0 overs 0 bgcol3 00 @" - (string~) $19 ← (string~) $18 + (string) "@" - (byte[]) FORM_TEXT ← (string~) $19 + (string~) $9 ← (string~) $8 + (string) "@" + (byte[]) FORM_COLS ← (string~) $9 + (string~) $10 ← (string) " DTV GfxExplorer MODE 0 8bpp pixel cell @" + (string) " CONTROL PLANE A PLANE B VIC II @" + (string~) $11 ← (string~) $10 + (string) " bmm 0 patt p0 patt p0 screen s0 @" + (string~) $12 ← (string~) $11 + (string) " mcm 0 start 00 start 00 gfx g0 @" + (string~) $13 ← (string~) $12 + (string) " ecm 0 step 00 step 00 colors c0 @" + (string~) $14 ← (string~) $13 + (string) " hicol 0 mod 00 mod 00 bgcol0 00 @" + (string~) $15 ← (string~) $14 + (string) " line 0 bgcol1 00 @" + (string~) $16 ← (string~) $15 + (string) " colof 0 borof 0 bgcol2 00 @" + (string~) $17 ← (string~) $16 + (string) " chunk 0 overs 0 bgcol3 00 @" + (string~) $18 ← (string~) $17 + (string) "@" + (byte[]) FORM_TEXT ← (string~) $18 (byte) form_fields_cnt ← (byte/signed byte/word/signed word/dword/signed dword) 35 (byte[]) form_fields_x ← { (byte/signed byte/word/signed word/dword/signed dword) 22, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 17, (byte/signed byte/word/signed word/dword/signed dword) 17, (byte/signed byte/word/signed word/dword/signed dword) 17, (byte/signed byte/word/signed word/dword/signed dword) 16, (byte/signed byte/word/signed word/dword/signed dword) 17, (byte/signed byte/word/signed word/dword/signed dword) 16, (byte/signed byte/word/signed word/dword/signed dword) 17, (byte/signed byte/word/signed word/dword/signed dword) 16, (byte/signed byte/word/signed word/dword/signed dword) 17, (byte/signed byte/word/signed word/dword/signed dword) 27, (byte/signed byte/word/signed word/dword/signed dword) 26, (byte/signed byte/word/signed word/dword/signed dword) 27, (byte/signed byte/word/signed word/dword/signed dword) 26, (byte/signed byte/word/signed word/dword/signed dword) 27, (byte/signed byte/word/signed word/dword/signed dword) 26, (byte/signed byte/word/signed word/dword/signed dword) 27, (byte/signed byte/word/signed word/dword/signed dword) 38, (byte/signed byte/word/signed word/dword/signed dword) 38, (byte/signed byte/word/signed word/dword/signed dword) 38, (byte/signed byte/word/signed word/dword/signed dword) 37, (byte/signed byte/word/signed word/dword/signed dword) 38, (byte/signed byte/word/signed word/dword/signed dword) 37, (byte/signed byte/word/signed word/dword/signed dword) 38, (byte/signed byte/word/signed word/dword/signed dword) 37, (byte/signed byte/word/signed word/dword/signed dword) 38, (byte/signed byte/word/signed word/dword/signed dword) 37, (byte/signed byte/word/signed word/dword/signed dword) 38 } (byte[]) form_fields_y ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 8 } (byte[]) form_fields_max ← { (byte/signed byte/word/signed word/dword/signed dword) 13, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15 } (byte[]) form_fields_val ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } - (byte*~) $20 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*) form_ctrl_mode ← (byte*~) $20 - (byte*~) $21 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte*) form_ctrl_bmm ← (byte*~) $21 - (byte*~) $22 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte*) form_ctrl_mcm ← (byte*~) $22 - (byte*~) $23 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte*) form_ctrl_ecm ← (byte*~) $23 - (byte*~) $24 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte*) form_ctrl_hicol ← (byte*~) $24 - (byte*~) $25 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte*) form_ctrl_line ← (byte*~) $25 - (byte*~) $26 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte*) form_ctrl_colof ← (byte*~) $26 - (byte*~) $27 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte*) form_ctrl_chunk ← (byte*~) $27 - (byte*~) $28 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) form_ctrl_borof ← (byte*~) $28 - (byte*~) $29 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 9 - (byte*) form_ctrl_overs ← (byte*~) $29 - (byte*~) $30 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 10 - (byte*) form_a_pattern ← (byte*~) $30 - (byte*~) $31 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 11 - (byte*) form_a_start_hi ← (byte*~) $31 - (byte*~) $32 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 12 - (byte*) form_a_start_lo ← (byte*~) $32 - (byte*~) $33 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 13 - (byte*) form_a_step_hi ← (byte*~) $33 - (byte*~) $34 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 14 - (byte*) form_a_step_lo ← (byte*~) $34 - (byte*~) $35 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 15 - (byte*) form_a_mod_hi ← (byte*~) $35 - (byte*~) $36 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 16 - (byte*) form_a_mod_lo ← (byte*~) $36 - (byte*~) $37 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 17 - (byte*) form_b_pattern ← (byte*~) $37 - (byte*~) $38 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 18 - (byte*) form_b_start_hi ← (byte*~) $38 - (byte*~) $39 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 19 - (byte*) form_b_start_lo ← (byte*~) $39 - (byte*~) $40 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 20 - (byte*) form_b_step_hi ← (byte*~) $40 - (byte*~) $41 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 21 - (byte*) form_b_step_lo ← (byte*~) $41 - (byte*~) $42 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 22 - (byte*) form_b_mod_hi ← (byte*~) $42 - (byte*~) $43 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 23 - (byte*) form_b_mod_lo ← (byte*~) $43 - (byte*~) $44 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 24 - (byte*) form_vic_screen ← (byte*~) $44 - (byte*~) $45 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 25 - (byte*) form_vic_gfx ← (byte*~) $45 - (byte*~) $46 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 26 - (byte*) form_vic_cols ← (byte*~) $46 - (byte*~) $47 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 27 - (byte*) form_vic_bg0_hi ← (byte*~) $47 - (byte*~) $48 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 28 - (byte*) form_vic_bg0_lo ← (byte*~) $48 - (byte*~) $49 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 29 - (byte*) form_vic_bg1_hi ← (byte*~) $49 - (byte*~) $50 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 30 - (byte*) form_vic_bg1_lo ← (byte*~) $50 - (byte*~) $51 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 31 - (byte*) form_vic_bg2_hi ← (byte*~) $51 - (byte*~) $52 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 32 - (byte*) form_vic_bg2_lo ← (byte*~) $52 - (byte*~) $53 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 33 - (byte*) form_vic_bg3_hi ← (byte*~) $53 - (byte*~) $54 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 34 - (byte*) form_vic_bg3_lo ← (byte*~) $54 + (byte*~) $19 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) form_ctrl_mode ← (byte*~) $19 + (byte*~) $20 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte*) form_ctrl_bmm ← (byte*~) $20 + (byte*~) $21 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte*) form_ctrl_mcm ← (byte*~) $21 + (byte*~) $22 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte*) form_ctrl_ecm ← (byte*~) $22 + (byte*~) $23 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte*) form_ctrl_hicol ← (byte*~) $23 + (byte*~) $24 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte*) form_ctrl_line ← (byte*~) $24 + (byte*~) $25 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte*) form_ctrl_colof ← (byte*~) $25 + (byte*~) $26 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte*) form_ctrl_chunk ← (byte*~) $26 + (byte*~) $27 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) form_ctrl_borof ← (byte*~) $27 + (byte*~) $28 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 9 + (byte*) form_ctrl_overs ← (byte*~) $28 + (byte*~) $29 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 10 + (byte*) form_a_pattern ← (byte*~) $29 + (byte*~) $30 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 11 + (byte*) form_a_start_hi ← (byte*~) $30 + (byte*~) $31 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 12 + (byte*) form_a_start_lo ← (byte*~) $31 + (byte*~) $32 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 13 + (byte*) form_a_step_hi ← (byte*~) $32 + (byte*~) $33 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 14 + (byte*) form_a_step_lo ← (byte*~) $33 + (byte*~) $34 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 15 + (byte*) form_a_mod_hi ← (byte*~) $34 + (byte*~) $35 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 16 + (byte*) form_a_mod_lo ← (byte*~) $35 + (byte*~) $36 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 17 + (byte*) form_b_pattern ← (byte*~) $36 + (byte*~) $37 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 18 + (byte*) form_b_start_hi ← (byte*~) $37 + (byte*~) $38 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 19 + (byte*) form_b_start_lo ← (byte*~) $38 + (byte*~) $39 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 20 + (byte*) form_b_step_hi ← (byte*~) $39 + (byte*~) $40 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 21 + (byte*) form_b_step_lo ← (byte*~) $40 + (byte*~) $41 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 22 + (byte*) form_b_mod_hi ← (byte*~) $41 + (byte*~) $42 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 23 + (byte*) form_b_mod_lo ← (byte*~) $42 + (byte*~) $43 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 24 + (byte*) form_vic_screen ← (byte*~) $43 + (byte*~) $44 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 25 + (byte*) form_vic_gfx ← (byte*~) $44 + (byte*~) $45 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 26 + (byte*) form_vic_cols ← (byte*~) $45 + (byte*~) $46 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 27 + (byte*) form_vic_bg0_hi ← (byte*~) $46 + (byte*~) $47 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 28 + (byte*) form_vic_bg0_lo ← (byte*~) $47 + (byte*~) $48 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 29 + (byte*) form_vic_bg1_hi ← (byte*~) $48 + (byte*~) $49 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 30 + (byte*) form_vic_bg1_lo ← (byte*~) $49 + (byte*~) $50 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 31 + (byte*) form_vic_bg2_hi ← (byte*~) $50 + (byte*~) $51 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 32 + (byte*) form_vic_bg2_lo ← (byte*~) $51 + (byte*~) $52 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 33 + (byte*) form_vic_bg3_hi ← (byte*~) $52 + (byte*~) $53 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 34 + (byte*) form_vic_bg3_lo ← (byte*~) $53 to:@24 gfx_mode: scope:[gfx_mode] from (byte) gfx_mode::dtv_control ← (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) gfx_mode::$0 ← *((byte*) form_ctrl_line) != (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) gfx_mode::$1 ← ! (boolean~) gfx_mode::$0 if((boolean~) gfx_mode::$1) goto gfx_mode::@1 - to:gfx_mode::@11 -gfx_mode::@1: scope:[gfx_mode] from gfx_mode gfx_mode::@11 + to:gfx_mode::@18 +gfx_mode::@1: scope:[gfx_mode] from gfx_mode gfx_mode::@18 (boolean~) gfx_mode::$3 ← *((byte*) form_ctrl_borof) != (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) gfx_mode::$4 ← ! (boolean~) gfx_mode::$3 if((boolean~) gfx_mode::$4) goto gfx_mode::@2 - to:gfx_mode::@12 -gfx_mode::@11: scope:[gfx_mode] from gfx_mode + to:gfx_mode::@19 +gfx_mode::@18: scope:[gfx_mode] from gfx_mode (byte~) gfx_mode::$2 ← (byte) gfx_mode::dtv_control | (byte) DTV_LINEAR (byte) gfx_mode::dtv_control ← (byte~) gfx_mode::$2 to:gfx_mode::@1 -gfx_mode::@2: scope:[gfx_mode] from gfx_mode::@1 gfx_mode::@12 +gfx_mode::@2: scope:[gfx_mode] from gfx_mode::@1 gfx_mode::@19 (boolean~) gfx_mode::$6 ← *((byte*) form_ctrl_hicol) != (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) gfx_mode::$7 ← ! (boolean~) gfx_mode::$6 if((boolean~) gfx_mode::$7) goto gfx_mode::@3 - to:gfx_mode::@13 -gfx_mode::@12: scope:[gfx_mode] from gfx_mode::@1 + to:gfx_mode::@20 +gfx_mode::@19: scope:[gfx_mode] from gfx_mode::@1 (byte~) gfx_mode::$5 ← (byte) gfx_mode::dtv_control | (byte) DTV_BORDER_OFF (byte) gfx_mode::dtv_control ← (byte~) gfx_mode::$5 to:gfx_mode::@2 -gfx_mode::@3: scope:[gfx_mode] from gfx_mode::@13 gfx_mode::@2 +gfx_mode::@3: scope:[gfx_mode] from gfx_mode::@2 gfx_mode::@20 (boolean~) gfx_mode::$9 ← *((byte*) form_ctrl_overs) != (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) gfx_mode::$10 ← ! (boolean~) gfx_mode::$9 if((boolean~) gfx_mode::$10) goto gfx_mode::@4 - to:gfx_mode::@14 -gfx_mode::@13: scope:[gfx_mode] from gfx_mode::@2 + to:gfx_mode::@21 +gfx_mode::@20: scope:[gfx_mode] from gfx_mode::@2 (byte~) gfx_mode::$8 ← (byte) gfx_mode::dtv_control | (byte) DTV_HIGHCOLOR (byte) gfx_mode::dtv_control ← (byte~) gfx_mode::$8 to:gfx_mode::@3 -gfx_mode::@4: scope:[gfx_mode] from gfx_mode::@14 gfx_mode::@3 +gfx_mode::@4: scope:[gfx_mode] from gfx_mode::@21 gfx_mode::@3 (boolean~) gfx_mode::$12 ← *((byte*) form_ctrl_colof) != (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) gfx_mode::$13 ← ! (boolean~) gfx_mode::$12 if((boolean~) gfx_mode::$13) goto gfx_mode::@5 - to:gfx_mode::@15 -gfx_mode::@14: scope:[gfx_mode] from gfx_mode::@3 + to:gfx_mode::@22 +gfx_mode::@21: scope:[gfx_mode] from gfx_mode::@3 (byte~) gfx_mode::$11 ← (byte) gfx_mode::dtv_control | (byte) DTV_OVERSCAN (byte) gfx_mode::dtv_control ← (byte~) gfx_mode::$11 to:gfx_mode::@4 -gfx_mode::@5: scope:[gfx_mode] from gfx_mode::@15 gfx_mode::@4 +gfx_mode::@5: scope:[gfx_mode] from gfx_mode::@22 gfx_mode::@4 (boolean~) gfx_mode::$15 ← *((byte*) form_ctrl_chunk) != (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) gfx_mode::$16 ← ! (boolean~) gfx_mode::$15 if((boolean~) gfx_mode::$16) goto gfx_mode::@6 - to:gfx_mode::@16 -gfx_mode::@15: scope:[gfx_mode] from gfx_mode::@4 + to:gfx_mode::@23 +gfx_mode::@22: scope:[gfx_mode] from gfx_mode::@4 (byte~) gfx_mode::$14 ← (byte) gfx_mode::dtv_control | (byte) DTV_COLORRAM_OFF (byte) gfx_mode::dtv_control ← (byte~) gfx_mode::$14 to:gfx_mode::@5 -gfx_mode::@6: scope:[gfx_mode] from gfx_mode::@16 gfx_mode::@5 +gfx_mode::@6: scope:[gfx_mode] from gfx_mode::@23 gfx_mode::@5 *((byte*) DTV_CONTROL) ← (byte) gfx_mode::dtv_control (byte~) gfx_mode::$18 ← (byte) VIC_DEN | (byte) VIC_RSEL (byte/word/dword~) gfx_mode::$19 ← (byte~) gfx_mode::$18 | (byte/signed byte/word/signed word/dword/signed dword) 3 @@ -3505,32 +3598,32 @@ gfx_mode::@6: scope:[gfx_mode] from gfx_mode::@16 gfx_mode::@5 (boolean~) gfx_mode::$20 ← *((byte*) form_ctrl_ecm) != (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) gfx_mode::$21 ← ! (boolean~) gfx_mode::$20 if((boolean~) gfx_mode::$21) goto gfx_mode::@7 - to:gfx_mode::@17 -gfx_mode::@16: scope:[gfx_mode] from gfx_mode::@5 + to:gfx_mode::@24 +gfx_mode::@23: scope:[gfx_mode] from gfx_mode::@5 (byte~) gfx_mode::$17 ← (byte) gfx_mode::dtv_control | (byte) DTV_CHUNKY (byte) gfx_mode::dtv_control ← (byte~) gfx_mode::$17 to:gfx_mode::@6 -gfx_mode::@7: scope:[gfx_mode] from gfx_mode::@17 gfx_mode::@6 +gfx_mode::@7: scope:[gfx_mode] from gfx_mode::@24 gfx_mode::@6 (boolean~) gfx_mode::$23 ← *((byte*) form_ctrl_bmm) != (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) gfx_mode::$24 ← ! (boolean~) gfx_mode::$23 if((boolean~) gfx_mode::$24) goto gfx_mode::@8 - to:gfx_mode::@18 -gfx_mode::@17: scope:[gfx_mode] from gfx_mode::@6 + to:gfx_mode::@25 +gfx_mode::@24: scope:[gfx_mode] from gfx_mode::@6 (byte~) gfx_mode::$22 ← (byte) gfx_mode::vic_control | (byte) VIC_ECM (byte) gfx_mode::vic_control ← (byte~) gfx_mode::$22 to:gfx_mode::@7 -gfx_mode::@8: scope:[gfx_mode] from gfx_mode::@18 gfx_mode::@7 +gfx_mode::@8: scope:[gfx_mode] from gfx_mode::@25 gfx_mode::@7 *((byte*) VIC_CONTROL) ← (byte) gfx_mode::vic_control (byte) gfx_mode::vic_control2 ← (byte) VIC_CSEL (boolean~) gfx_mode::$26 ← *((byte*) form_ctrl_mcm) != (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) gfx_mode::$27 ← ! (boolean~) gfx_mode::$26 if((boolean~) gfx_mode::$27) goto gfx_mode::@9 - to:gfx_mode::@19 -gfx_mode::@18: scope:[gfx_mode] from gfx_mode::@7 + to:gfx_mode::@26 +gfx_mode::@25: scope:[gfx_mode] from gfx_mode::@7 (byte~) gfx_mode::$25 ← (byte) gfx_mode::vic_control | (byte) VIC_BMM (byte) gfx_mode::vic_control ← (byte~) gfx_mode::$25 to:gfx_mode::@8 -gfx_mode::@9: scope:[gfx_mode] from gfx_mode::@19 gfx_mode::@8 +gfx_mode::@9: scope:[gfx_mode] from gfx_mode::@26 gfx_mode::@8 *((byte*) VIC_CONTROL2) ← (byte) gfx_mode::vic_control2 (byte~) gfx_mode::$29 ← *((byte*) form_a_start_hi) << (byte/signed byte/word/signed word/dword/signed dword) 4 (byte~) gfx_mode::$30 ← (byte~) gfx_mode::$29 | *((byte*) form_a_start_lo) @@ -3589,7 +3682,7 @@ gfx_mode::@9: scope:[gfx_mode] from gfx_mode::@19 gfx_mode::@8 *((byte*) BGCOL4) ← (byte~) gfx_mode::$63 (byte) gfx_mode::i ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_mode::@10 -gfx_mode::@19: scope:[gfx_mode] from gfx_mode::@8 +gfx_mode::@26: scope:[gfx_mode] from gfx_mode::@8 (byte~) gfx_mode::$28 ← (byte) gfx_mode::vic_control2 | (byte) VIC_MCM (byte) gfx_mode::vic_control2 ← (byte~) gfx_mode::$28 to:gfx_mode::@9 @@ -3598,22 +3691,92 @@ gfx_mode::@10: scope:[gfx_mode] from gfx_mode::@10 gfx_mode::@9 (byte) gfx_mode::i ← ++ (byte) gfx_mode::i (boolean~) gfx_mode::$64 ← (byte) gfx_mode::i != (byte/signed byte/word/signed word/dword/signed dword) 16 if((boolean~) gfx_mode::$64) goto gfx_mode::@10 - to:gfx_mode::@20 -gfx_mode::@20: scope:[gfx_mode] from gfx_mode::@10 + to:gfx_mode::@27 +gfx_mode::@27: scope:[gfx_mode] from gfx_mode::@10 + to:gfx_mode::@11 +gfx_mode::@11: scope:[gfx_mode] from gfx_mode::@17 gfx_mode::@27 + if(true) goto gfx_mode::@12 + to:gfx_mode::@28 +gfx_mode::@12: scope:[gfx_mode] from gfx_mode::@11 gfx_mode::@29 + to:gfx_mode::@14 +gfx_mode::@28: scope:[gfx_mode] from gfx_mode::@11 + to:gfx_mode::@13 +gfx_mode::@13: scope:[gfx_mode] from gfx_mode::@28 gfx_mode::@35 to:gfx_mode::@return -gfx_mode::@return: scope:[gfx_mode] from gfx_mode::@20 +gfx_mode::@29: scope:[gfx_mode] from + to:gfx_mode::@12 +gfx_mode::@14: scope:[gfx_mode] from gfx_mode::@12 gfx_mode::@15 + (boolean~) gfx_mode::$65 ← *((byte*) RASTER) != (byte/word/signed word/dword/signed dword) 255 + if((boolean~) gfx_mode::$65) goto gfx_mode::@15 + to:gfx_mode::@30 +gfx_mode::@15: scope:[gfx_mode] from gfx_mode::@14 gfx_mode::@31 + to:gfx_mode::@14 +gfx_mode::@30: scope:[gfx_mode] from gfx_mode::@14 + to:gfx_mode::@16 +gfx_mode::@16: scope:[gfx_mode] from gfx_mode::@30 gfx_mode::@32 + (void~) gfx_mode::$66 ← call keyboard_event_scan + (byte~) gfx_mode::$67 ← call keyboard_event_get + (byte) gfx_mode::keyboard_event ← (byte~) gfx_mode::$67 + (boolean~) gfx_mode::$68 ← (byte) gfx_mode::keyboard_event == (byte) KEY_SPACE + (boolean~) gfx_mode::$69 ← ! (boolean~) gfx_mode::$68 + if((boolean~) gfx_mode::$69) goto gfx_mode::@17 + to:gfx_mode::@33 +gfx_mode::@31: scope:[gfx_mode] from + to:gfx_mode::@15 +gfx_mode::@32: scope:[gfx_mode] from + to:gfx_mode::@16 +gfx_mode::@17: scope:[gfx_mode] from gfx_mode::@16 gfx_mode::@34 + to:gfx_mode::@11 +gfx_mode::@33: scope:[gfx_mode] from gfx_mode::@16 + to:gfx_mode::@return +gfx_mode::@return: scope:[gfx_mode] from gfx_mode::@13 gfx_mode::@33 return to:@return +gfx_mode::@34: scope:[gfx_mode] from + to:gfx_mode::@17 +gfx_mode::@35: scope:[gfx_mode] from + to:gfx_mode::@13 @24: scope:[] from @23 to:@25 gfx_init: scope:[gfx_init] from - (void~) gfx_init::$0 ← call gfx_init_plane_8bppchunky + (void~) gfx_init::$0 ← call gfx_init_screen_stdchar + (void~) gfx_init::$1 ← call gfx_init_plane_8bppchunky to:gfx_init::@return gfx_init::@return: scope:[gfx_init] from gfx_init return to:@return @25: scope:[] from @24 to:@26 +gfx_init_screen_stdchar: scope:[gfx_init_screen_stdchar] from + (byte*) gfx_init_screen_stdchar::ch ← (byte*) VIC_SCREEN_STDCHAR + (byte) gfx_init_screen_stdchar::cy ← (byte/signed byte/word/signed word/dword/signed dword) 0 + to:gfx_init_screen_stdchar::@1 +gfx_init_screen_stdchar::@1: scope:[gfx_init_screen_stdchar] from gfx_init_screen_stdchar gfx_init_screen_stdchar::@3 + (byte) gfx_init_screen_stdchar::cx ← (byte/signed byte/word/signed word/dword/signed dword) 0 + to:gfx_init_screen_stdchar::@2 +gfx_init_screen_stdchar::@2: scope:[gfx_init_screen_stdchar] from gfx_init_screen_stdchar::@1 gfx_init_screen_stdchar::@2 + (byte~) gfx_init_screen_stdchar::$0 ← (byte) gfx_init_screen_stdchar::cy & (byte/signed byte/word/signed word/dword/signed dword) 15 + (byte~) gfx_init_screen_stdchar::$1 ← (byte~) gfx_init_screen_stdchar::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) gfx_init_screen_stdchar::$2 ← (byte) gfx_init_screen_stdchar::cx & (byte/signed byte/word/signed word/dword/signed dword) 15 + (byte~) gfx_init_screen_stdchar::$3 ← (byte~) gfx_init_screen_stdchar::$1 | (byte~) gfx_init_screen_stdchar::$2 + *((byte*) gfx_init_screen_stdchar::ch) ← (byte~) gfx_init_screen_stdchar::$3 + (byte*) gfx_init_screen_stdchar::ch ← ++ (byte*) gfx_init_screen_stdchar::ch + (byte) gfx_init_screen_stdchar::cx ← ++ (byte) gfx_init_screen_stdchar::cx + (boolean~) gfx_init_screen_stdchar::$4 ← (byte) gfx_init_screen_stdchar::cx != (byte/signed byte/word/signed word/dword/signed dword) 40 + if((boolean~) gfx_init_screen_stdchar::$4) goto gfx_init_screen_stdchar::@2 + to:gfx_init_screen_stdchar::@3 +gfx_init_screen_stdchar::@3: scope:[gfx_init_screen_stdchar] from gfx_init_screen_stdchar::@2 + (byte) gfx_init_screen_stdchar::cy ← ++ (byte) gfx_init_screen_stdchar::cy + (boolean~) gfx_init_screen_stdchar::$5 ← (byte) gfx_init_screen_stdchar::cy != (byte/signed byte/word/signed word/dword/signed dword) 25 + if((boolean~) gfx_init_screen_stdchar::$5) goto gfx_init_screen_stdchar::@1 + to:gfx_init_screen_stdchar::@4 +gfx_init_screen_stdchar::@4: scope:[gfx_init_screen_stdchar] from gfx_init_screen_stdchar::@3 + to:gfx_init_screen_stdchar::@return +gfx_init_screen_stdchar::@return: scope:[gfx_init_screen_stdchar] from gfx_init_screen_stdchar::@4 + return + to:@return +@26: scope:[] from @25 + to:@27 gfx_init_plane_8bppchunky: scope:[gfx_init_plane_8bppchunky] from (dword~) gfx_init_plane_8bppchunky::$0 ← (dword) PLANE_8BPP_CHUNKY / (word/signed word/dword/signed dword) 16384 (byte~) gfx_init_plane_8bppchunky::$1 ← ((byte)) (dword~) gfx_init_plane_8bppchunky::$0 @@ -3659,24 +3822,23 @@ gfx_init_plane_8bppchunky::@6: scope:[gfx_init_plane_8bppchunky] from gfx_init_ gfx_init_plane_8bppchunky::@return: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@6 return to:@return -@26: scope:[] from @25 - to:@27 +@27: scope:[] from @26 + to:@28 form_init: scope:[form_init] from - (byte*~) form_init::$0 ← (byte*) COLS + (word) FORM_OFFSET - (void~) form_init::$1 ← call print_set_screen (byte*~) form_init::$0 + (void~) form_init::$0 ← call print_set_screen (byte*) COLS + (void~) form_init::$1 ← call print_cls (void~) form_init::$2 ← call print_str_lines (byte[]) FORM_COLS - (byte*~) form_init::$3 ← (byte*) FORM_SCREEN + (word) FORM_OFFSET - (void~) form_init::$4 ← call print_set_screen (byte*~) form_init::$3 + (void~) form_init::$3 ← call print_set_screen (byte*) FORM_SCREEN + (void~) form_init::$4 ← call print_cls (void~) form_init::$5 ← call print_str_lines (byte[]) FORM_TEXT - (byte*~) form_init::$6 ← (byte*) FORM_SCREEN + (word) FORM_OFFSET - (void~) form_init::$7 ← call form_set_screen (byte*~) form_init::$6 - (void~) form_init::$8 ← call form_render_values + (void~) form_init::$6 ← call form_set_screen (byte*) FORM_SCREEN + (void~) form_init::$7 ← call form_render_values to:form_init::@return form_init::@return: scope:[form_init] from form_init return to:@return -@27: scope:[] from @26 - to:@28 +@28: scope:[] from @27 + to:@29 form_mode: scope:[form_mode] from (dword~) form_mode::$0 ← ((dword)) (byte*) FORM_CHARSET (dword~) form_mode::$1 ← (dword~) form_mode::$0 / (dword/signed dword) 65536 @@ -3717,22 +3879,60 @@ form_mode::@1: scope:[form_mode] from form_mode form_mode::@1 (byte) form_mode::i ← ++ (byte) form_mode::i (boolean~) form_mode::$23 ← (byte) form_mode::i != (byte/signed byte/word/signed word/dword/signed dword) 16 if((boolean~) form_mode::$23) goto form_mode::@1 - to:form_mode::@2 -form_mode::@2: scope:[form_mode] from form_mode::@1 - *((byte*) BORDERCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + to:form_mode::@9 +form_mode::@9: scope:[form_mode] from form_mode::@1 *((byte*) BGCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + to:form_mode::@2 +form_mode::@2: scope:[form_mode] from form_mode::@8 form_mode::@9 + if(true) goto form_mode::@3 + to:form_mode::@10 +form_mode::@3: scope:[form_mode] from form_mode::@11 form_mode::@2 + to:form_mode::@5 +form_mode::@10: scope:[form_mode] from form_mode::@2 + to:form_mode::@4 +form_mode::@4: scope:[form_mode] from form_mode::@10 form_mode::@17 to:form_mode::@return -form_mode::@return: scope:[form_mode] from form_mode::@2 +form_mode::@11: scope:[form_mode] from + to:form_mode::@3 +form_mode::@5: scope:[form_mode] from form_mode::@3 form_mode::@6 + (boolean~) form_mode::$24 ← *((byte*) RASTER) != (byte/word/signed word/dword/signed dword) 255 + if((boolean~) form_mode::$24) goto form_mode::@6 + to:form_mode::@12 +form_mode::@6: scope:[form_mode] from form_mode::@13 form_mode::@5 + to:form_mode::@5 +form_mode::@12: scope:[form_mode] from form_mode::@5 + to:form_mode::@7 +form_mode::@7: scope:[form_mode] from form_mode::@12 form_mode::@14 + (byte~) form_mode::$25 ← call form_control + (boolean~) form_mode::$26 ← (byte~) form_mode::$25 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (boolean~) form_mode::$27 ← ! (boolean~) form_mode::$26 + if((boolean~) form_mode::$27) goto form_mode::@8 + to:form_mode::@15 +form_mode::@13: scope:[form_mode] from + to:form_mode::@6 +form_mode::@14: scope:[form_mode] from + to:form_mode::@7 +form_mode::@8: scope:[form_mode] from form_mode::@16 form_mode::@7 + to:form_mode::@2 +form_mode::@15: scope:[form_mode] from form_mode::@7 + to:form_mode::@return +form_mode::@return: scope:[form_mode] from form_mode::@15 form_mode::@18 form_mode::@4 return to:@return -@28: scope:[] from @27 +form_mode::@16: scope:[form_mode] from + to:form_mode::@8 +form_mode::@17: scope:[form_mode] from + to:form_mode::@4 +form_mode::@18: scope:[form_mode] from + to:form_mode::@return +@29: scope:[] from @28 (byte[25]) form_line_lo ← { fill( 25, 0) } (byte[25]) form_line_hi ← { fill( 25, 0) } (byte) form_field_idx ← (byte/signed byte/word/signed word/dword/signed dword) 0 (signed byte) FORM_CURSOR_BLINK ← (byte/signed byte/word/signed word/dword/signed dword) 40 - (signed word/signed byte/signed dword~) $55 ← (signed byte) FORM_CURSOR_BLINK / (byte/signed byte/word/signed word/dword/signed dword) 2 - (signed byte) form_cursor_count ← (signed word/signed byte/signed dword~) $55 - to:@29 + (signed word/signed byte/signed dword~) $54 ← (signed byte) FORM_CURSOR_BLINK / (byte/signed byte/word/signed word/dword/signed dword) 2 + (signed byte) form_cursor_count ← (signed word/signed byte/signed dword~) $54 + to:@30 form_set_screen: scope:[form_set_screen] from (byte*) form_set_screen::line ← (byte*) form_set_screen::screen (byte) form_set_screen::y ← (byte/signed byte/word/signed word/dword/signed dword) 0 @@ -3753,8 +3953,8 @@ form_set_screen::@2: scope:[form_set_screen] from form_set_screen::@1 form_set_screen::@return: scope:[form_set_screen] from form_set_screen::@2 return to:@return -@29: scope:[] from @28 - to:@30 +@30: scope:[] from @29 + to:@31 form_field_ptr: scope:[form_field_ptr] from (byte) form_field_ptr::y ← *((byte[]) form_fields_y + (byte) form_field_ptr::field_idx) (byte*~) form_field_ptr::$0 ← ((byte*)) { *((byte[25]) form_line_hi + (byte) form_field_ptr::y), *((byte[25]) form_line_lo + (byte) form_field_ptr::y) } @@ -3770,8 +3970,8 @@ form_field_ptr::@return: scope:[form_field_ptr] from form_field_ptr form_field_ to:@return form_field_ptr::@1: scope:[form_field_ptr] from to:form_field_ptr::@return -@30: scope:[] from @29 - to:@31 +@31: scope:[] from @30 + to:@32 form_render_values: scope:[form_render_values] from (byte) form_render_values::idx ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:form_render_values::@1 @@ -3788,8 +3988,8 @@ form_render_values::@2: scope:[form_render_values] from form_render_values::@1 form_render_values::@return: scope:[form_render_values] from form_render_values::@2 return to:@return -@31: scope:[] from @30 - to:@32 +@32: scope:[] from @31 + to:@33 form_control: scope:[form_control] from (byte*~) form_control::$0 ← call form_field_ptr (byte) form_field_idx (byte*) form_control::field ← (byte*~) form_control::$0 @@ -3797,129 +3997,144 @@ form_control: scope:[form_control] from (boolean~) form_control::$1 ← (signed byte) form_cursor_count < (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) form_control::$2 ← ! (boolean~) form_control::$1 if((boolean~) form_control::$2) goto form_control::@1 - to:form_control::@14 -form_control::@1: scope:[form_control] from form_control form_control::@14 + to:form_control::@15 +form_control::@1: scope:[form_control] from form_control form_control::@15 (signed word/signed byte/signed dword~) form_control::$3 ← (signed byte) FORM_CURSOR_BLINK / (byte/signed byte/word/signed word/dword/signed dword) 2 (boolean~) form_control::$4 ← (signed byte) form_cursor_count < (signed word/signed byte/signed dword~) form_control::$3 (boolean~) form_control::$5 ← ! (boolean~) form_control::$4 if((boolean~) form_control::$5) goto form_control::@2 - to:form_control::@15 -form_control::@14: scope:[form_control] from form_control + to:form_control::@16 +form_control::@15: scope:[form_control] from form_control (signed byte) form_cursor_count ← (signed byte) FORM_CURSOR_BLINK to:form_control::@1 -form_control::@2: scope:[form_control] from form_control::@1 form_control::@16 +form_control::@2: scope:[form_control] from form_control::@1 form_control::@17 (byte~) form_control::$7 ← *((byte*) form_control::field) & (byte/signed byte/word/signed word/dword/signed dword) 127 *((byte*) form_control::field) ← (byte~) form_control::$7 to:form_control::@3 -form_control::@15: scope:[form_control] from form_control::@1 +form_control::@16: scope:[form_control] from form_control::@1 (byte/word/dword~) form_control::$6 ← *((byte*) form_control::field) | (byte/word/signed word/dword/signed dword) 128 *((byte*) form_control::field) ← (byte/word/dword~) form_control::$6 to:form_control::@3 -form_control::@3: scope:[form_control] from form_control::@15 form_control::@2 +form_control::@3: scope:[form_control] from form_control::@16 form_control::@2 (void~) form_control::$8 ← call keyboard_event_scan (byte~) form_control::$9 ← call keyboard_event_get (byte) form_control::key_event ← (byte~) form_control::$9 (boolean~) form_control::$10 ← (byte) form_control::key_event == (byte) KEY_CRSR_DOWN (boolean~) form_control::$11 ← ! (boolean~) form_control::$10 if((boolean~) form_control::$11) goto form_control::@4 - to:form_control::@17 -form_control::@16: scope:[form_control] from + to:form_control::@18 +form_control::@17: scope:[form_control] from to:form_control::@2 -form_control::@4: scope:[form_control] from form_control::@22 form_control::@3 +form_control::@4: scope:[form_control] from form_control::@23 form_control::@3 (boolean~) form_control::$22 ← (byte) form_control::key_event == (byte) KEY_CRSR_RIGHT (boolean~) form_control::$23 ← ! (boolean~) form_control::$22 if((boolean~) form_control::$23) goto form_control::@9 - to:form_control::@23 -form_control::@17: scope:[form_control] from form_control::@3 + to:form_control::@24 +form_control::@18: scope:[form_control] from form_control::@3 (byte~) form_control::$12 ← *((byte*) form_control::field) & (byte/signed byte/word/signed word/dword/signed dword) 127 *((byte*) form_control::field) ← (byte~) form_control::$12 (byte~) form_control::$13 ← (byte) keyboard_modifiers & (byte) KEY_MODIFIER_SHIFT (boolean~) form_control::$14 ← (byte~) form_control::$13 == (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) form_control::$15 ← ! (boolean~) form_control::$14 if((boolean~) form_control::$15) goto form_control::@5 - to:form_control::@18 -form_control::@5: scope:[form_control] from form_control::@17 form_control::@20 + to:form_control::@19 +form_control::@5: scope:[form_control] from form_control::@18 form_control::@21 (byte) form_field_idx ← -- (byte) form_field_idx (boolean~) form_control::$18 ← (byte) form_field_idx == (byte/word/signed word/dword/signed dword) 255 (boolean~) form_control::$19 ← ! (boolean~) form_control::$18 if((boolean~) form_control::$19) goto form_control::@8 - to:form_control::@21 -form_control::@18: scope:[form_control] from form_control::@17 + to:form_control::@22 +form_control::@19: scope:[form_control] from form_control::@18 (byte) form_field_idx ← ++ (byte) form_field_idx (boolean~) form_control::$16 ← (byte) form_field_idx == (byte) form_fields_cnt (boolean~) form_control::$17 ← ! (boolean~) form_control::$16 if((boolean~) form_control::$17) goto form_control::@6 - to:form_control::@19 -form_control::@6: scope:[form_control] from form_control::@18 form_control::@19 + to:form_control::@20 +form_control::@6: scope:[form_control] from form_control::@19 form_control::@20 to:form_control::@7 -form_control::@19: scope:[form_control] from form_control::@18 +form_control::@20: scope:[form_control] from form_control::@19 (byte) form_field_idx ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:form_control::@6 form_control::@7: scope:[form_control] from form_control::@6 form_control::@8 (signed word/signed byte/signed dword~) form_control::$21 ← (signed byte) FORM_CURSOR_BLINK / (byte/signed byte/word/signed word/dword/signed dword) 2 (signed byte) form_cursor_count ← (signed word/signed byte/signed dword~) form_control::$21 + (byte) form_control::return ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:form_control::@return -form_control::@20: scope:[form_control] from +form_control::@21: scope:[form_control] from to:form_control::@5 -form_control::@8: scope:[form_control] from form_control::@21 form_control::@5 +form_control::@8: scope:[form_control] from form_control::@22 form_control::@5 to:form_control::@7 -form_control::@21: scope:[form_control] from form_control::@5 +form_control::@22: scope:[form_control] from form_control::@5 (byte/signed word/word/dword/signed dword~) form_control::$20 ← (byte) form_fields_cnt - (byte/signed byte/word/signed word/dword/signed dword) 1 (byte) form_field_idx ← (byte/signed word/word/dword/signed dword~) form_control::$20 to:form_control::@8 -form_control::@return: scope:[form_control] from form_control::@12 form_control::@7 form_control::@9 - return +form_control::@return: scope:[form_control] from form_control::@12 form_control::@14 form_control::@30 form_control::@32 form_control::@7 + (byte) form_control::return ← (byte) form_control::return + return (byte) form_control::return to:@return -form_control::@22: scope:[form_control] from +form_control::@23: scope:[form_control] from to:form_control::@4 -form_control::@9: scope:[form_control] from form_control::@28 form_control::@4 - to:form_control::@return -form_control::@23: scope:[form_control] from form_control::@4 +form_control::@9: scope:[form_control] from form_control::@29 form_control::@4 + (boolean~) form_control::$31 ← (byte) form_control::key_event == (byte) KEY_SPACE + (boolean~) form_control::$32 ← ! (boolean~) form_control::$31 + if((boolean~) form_control::$32) goto form_control::@14 + to:form_control::@30 +form_control::@24: scope:[form_control] from form_control::@4 (byte~) form_control::$24 ← (byte) keyboard_modifiers & (byte) KEY_MODIFIER_SHIFT (boolean~) form_control::$25 ← (byte~) form_control::$24 == (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) form_control::$26 ← ! (boolean~) form_control::$25 if((boolean~) form_control::$26) goto form_control::@10 - to:form_control::@24 -form_control::@10: scope:[form_control] from form_control::@23 form_control::@26 + to:form_control::@25 +form_control::@10: scope:[form_control] from form_control::@24 form_control::@27 *((byte[]) form_fields_val + (byte) form_field_idx) ← -- *((byte[]) form_fields_val + (byte) form_field_idx) (boolean~) form_control::$29 ← *((byte[]) form_fields_val + (byte) form_field_idx) == (byte/word/signed word/dword/signed dword) 255 (boolean~) form_control::$30 ← ! (boolean~) form_control::$29 if((boolean~) form_control::$30) goto form_control::@13 - to:form_control::@27 -form_control::@24: scope:[form_control] from form_control::@23 + to:form_control::@28 +form_control::@25: scope:[form_control] from form_control::@24 *((byte[]) form_fields_val + (byte) form_field_idx) ← ++ *((byte[]) form_fields_val + (byte) form_field_idx) (boolean~) form_control::$27 ← *((byte[]) form_fields_val + (byte) form_field_idx) > *((byte[]) form_fields_max + (byte) form_field_idx) (boolean~) form_control::$28 ← ! (boolean~) form_control::$27 if((boolean~) form_control::$28) goto form_control::@11 - to:form_control::@25 -form_control::@11: scope:[form_control] from form_control::@24 form_control::@25 + to:form_control::@26 +form_control::@11: scope:[form_control] from form_control::@25 form_control::@26 to:form_control::@12 -form_control::@25: scope:[form_control] from form_control::@24 +form_control::@26: scope:[form_control] from form_control::@25 *((byte[]) form_fields_val + (byte) form_field_idx) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:form_control::@11 form_control::@12: scope:[form_control] from form_control::@11 form_control::@13 *((byte*) form_control::field) ← *((byte[]) print_hextab + *((byte[]) form_fields_val + (byte) form_field_idx)) + (byte) form_control::return ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:form_control::@return -form_control::@26: scope:[form_control] from +form_control::@27: scope:[form_control] from to:form_control::@10 -form_control::@13: scope:[form_control] from form_control::@10 form_control::@27 +form_control::@13: scope:[form_control] from form_control::@10 form_control::@28 to:form_control::@12 -form_control::@27: scope:[form_control] from form_control::@10 +form_control::@28: scope:[form_control] from form_control::@10 *((byte[]) form_fields_val + (byte) form_field_idx) ← *((byte[]) form_fields_max + (byte) form_field_idx) to:form_control::@13 -form_control::@28: scope:[form_control] from +form_control::@29: scope:[form_control] from to:form_control::@9 -@32: scope:[] from @31 +form_control::@14: scope:[form_control] from form_control::@31 form_control::@9 + (byte) form_control::return ← (byte/signed byte/word/signed word/dword/signed dword) 0 + to:form_control::@return +form_control::@30: scope:[form_control] from form_control::@9 + (byte) form_control::return ← (byte/word/signed word/dword/signed dword) 255 + to:form_control::@return +form_control::@31: scope:[form_control] from + to:form_control::@14 +form_control::@32: scope:[form_control] from + to:form_control::@return +@33: scope:[] from @32 call main to:@end -@end: scope:[] from @32 +@end: scope:[] from @33 Removing unused procedure print_str_ln Removing unused procedure print_str_at Removing unused procedure print_sword Removing unused procedure print_sbyte Removing unused procedure print_sdword -Removing unused procedure print_cls Removing unused procedure keyboard_key_pressed Removing unused procedure keyboard_get_keycode Removing unused procedure print_str @@ -3944,6 +4159,7 @@ Eliminating unused variable (byte*) SPRITES_EXPAND_Y and assignment [14] (byte*) Eliminating unused variable (byte*) SPRITES_PRIORITY and assignment [15] (byte*) SPRITES_PRIORITY ← ((byte*)) (word/dword/signed dword) 53275 Eliminating unused variable (byte*) SPRITES_MC and assignment [16] (byte*) SPRITES_MC ← ((byte*)) (word/dword/signed dword) 53276 Eliminating unused variable (byte*) SPRITES_EXPAND_X and assignment [17] (byte*) SPRITES_EXPAND_X ← ((byte*)) (word/dword/signed dword) 53277 +Eliminating unused variable (byte*) BORDERCOL and assignment [18] (byte*) BORDERCOL ← ((byte*)) (word/dword/signed dword) 53280 Eliminating unused variable (byte*) SPRITES_MC1 and assignment [24] (byte*) SPRITES_MC1 ← ((byte*)) (word/dword/signed dword) 53285 Eliminating unused variable (byte*) SPRITES_MC2 and assignment [25] (byte*) SPRITES_MC2 ← ((byte*)) (word/dword/signed dword) 53286 Eliminating unused variable (byte*) SPRITES_COLS and assignment [26] (byte*) SPRITES_COLS ← ((byte*)) (word/dword/signed dword) 53287 @@ -3974,115 +4190,117 @@ Eliminating unused variable (byte) DTV_BADLINE_OFF and assignment [74] (byte) DT Eliminating unused variable (byte*) DTV_SPRITE_BANK and assignment [90] (byte*) DTV_SPRITE_BANK ← ((byte*)) (word/dword/signed dword) 53325 Eliminating unused variable (byte*) DTV_GRAPHICS_HICOL_BANK and assignment [95] (byte*) DTV_GRAPHICS_HICOL_BANK ← ((byte*)) (word/dword/signed dword) 53310 Eliminating unused variable - keeping the call (void~) print_str_lines::$4 -Eliminating unused variable (byte) KEY_DEL and assignment [127] (byte) KEY_DEL ← (byte/signed byte/word/signed word/dword/signed dword) 0 -Eliminating unused variable (byte) KEY_RETURN and assignment [128] (byte) KEY_RETURN ← (byte/signed byte/word/signed word/dword/signed dword) 1 -Eliminating unused variable (byte) KEY_F7 and assignment [130] (byte) KEY_F7 ← (byte/signed byte/word/signed word/dword/signed dword) 3 -Eliminating unused variable (byte) KEY_F1 and assignment [131] (byte) KEY_F1 ← (byte/signed byte/word/signed word/dword/signed dword) 4 -Eliminating unused variable (byte) KEY_F3 and assignment [132] (byte) KEY_F3 ← (byte/signed byte/word/signed word/dword/signed dword) 5 -Eliminating unused variable (byte) KEY_F5 and assignment [133] (byte) KEY_F5 ← (byte/signed byte/word/signed word/dword/signed dword) 6 -Eliminating unused variable (byte) KEY_HOME and assignment [178] (byte) KEY_HOME ← (byte/signed byte/word/signed word/dword/signed dword) 51 -Eliminating unused variable (byte) KEY_RUNSTOP and assignment [190] (byte) KEY_RUNSTOP ← (byte/signed byte/word/signed word/dword/signed dword) 63 -Eliminating unused variable (byte[]) keyboard_char_keycodes and assignment [191] (byte[]) keyboard_char_keycodes ← { (byte) KEY_AT, (byte) KEY_A, (byte) KEY_B, (byte) KEY_C, (byte) KEY_D, (byte) KEY_E, (byte) KEY_F, (byte) KEY_G, (byte) KEY_H, (byte) KEY_I, (byte) KEY_J, (byte) KEY_K, (byte) KEY_L, (byte) KEY_M, (byte) KEY_N, (byte) KEY_O, (byte) KEY_P, (byte) KEY_Q, (byte) KEY_R, (byte) KEY_S, (byte) KEY_T, (byte) KEY_U, (byte) KEY_V, (byte) KEY_W, (byte) KEY_X, (byte) KEY_Y, (byte) KEY_Z, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte) KEY_POUND, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte) KEY_ARROW_UP, (byte) KEY_ARROW_LEFT, (byte) KEY_SPACE, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte) KEY_ASTERISK, (byte) KEY_PLUS, (byte) KEY_COMMA, (byte) KEY_MINUS, (byte) KEY_DOT, (byte) KEY_SLASH, (byte) KEY_0, (byte) KEY_1, (byte) KEY_2, (byte) KEY_3, (byte) KEY_4, (byte) KEY_5, (byte) KEY_6, (byte) KEY_7, (byte) KEY_8, (byte) KEY_9, (byte) KEY_COLON, (byte) KEY_SEMICOLON, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte) KEY_EQUALS, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63 } +Eliminating unused variable (byte) KEY_DEL and assignment [136] (byte) KEY_DEL ← (byte/signed byte/word/signed word/dword/signed dword) 0 +Eliminating unused variable (byte) KEY_RETURN and assignment [137] (byte) KEY_RETURN ← (byte/signed byte/word/signed word/dword/signed dword) 1 +Eliminating unused variable (byte) KEY_F7 and assignment [139] (byte) KEY_F7 ← (byte/signed byte/word/signed word/dword/signed dword) 3 +Eliminating unused variable (byte) KEY_F1 and assignment [140] (byte) KEY_F1 ← (byte/signed byte/word/signed word/dword/signed dword) 4 +Eliminating unused variable (byte) KEY_F3 and assignment [141] (byte) KEY_F3 ← (byte/signed byte/word/signed word/dword/signed dword) 5 +Eliminating unused variable (byte) KEY_F5 and assignment [142] (byte) KEY_F5 ← (byte/signed byte/word/signed word/dword/signed dword) 6 +Eliminating unused variable (byte) KEY_HOME and assignment [187] (byte) KEY_HOME ← (byte/signed byte/word/signed word/dword/signed dword) 51 +Eliminating unused variable (byte) KEY_RUNSTOP and assignment [199] (byte) KEY_RUNSTOP ← (byte/signed byte/word/signed word/dword/signed dword) 63 +Eliminating unused variable (byte[]) keyboard_char_keycodes and assignment [200] (byte[]) keyboard_char_keycodes ← { (byte) KEY_AT, (byte) KEY_A, (byte) KEY_B, (byte) KEY_C, (byte) KEY_D, (byte) KEY_E, (byte) KEY_F, (byte) KEY_G, (byte) KEY_H, (byte) KEY_I, (byte) KEY_J, (byte) KEY_K, (byte) KEY_L, (byte) KEY_M, (byte) KEY_N, (byte) KEY_O, (byte) KEY_P, (byte) KEY_Q, (byte) KEY_R, (byte) KEY_S, (byte) KEY_T, (byte) KEY_U, (byte) KEY_V, (byte) KEY_W, (byte) KEY_X, (byte) KEY_Y, (byte) KEY_Z, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte) KEY_POUND, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte) KEY_ARROW_UP, (byte) KEY_ARROW_LEFT, (byte) KEY_SPACE, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte) KEY_ASTERISK, (byte) KEY_PLUS, (byte) KEY_COMMA, (byte) KEY_MINUS, (byte) KEY_DOT, (byte) KEY_SLASH, (byte) KEY_0, (byte) KEY_1, (byte) KEY_2, (byte) KEY_3, (byte) KEY_4, (byte) KEY_5, (byte) KEY_6, (byte) KEY_7, (byte) KEY_8, (byte) KEY_9, (byte) KEY_COLON, (byte) KEY_SEMICOLON, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte) KEY_EQUALS, (byte/signed byte/word/signed word/dword/signed dword) 63, (byte/signed byte/word/signed word/dword/signed dword) 63 } Eliminating unused variable - keeping the call (void~) main::$0 Eliminating unused variable - keeping the call (void~) main::$1 Eliminating unused variable - keeping the call (void~) main::$2 -Eliminating unused variable - keeping the call (void~) main::$6 -Eliminating unused variable - keeping the call (void~) main::$8 -Eliminating unused variable - keeping the call (void~) main::$9 -Eliminating unused variable (byte*) form_ctrl_mode and assignment [337] (byte*) form_ctrl_mode ← (byte*~) $20 -Eliminating unused variable (byte*) form_a_pattern and assignment [357] (byte*) form_a_pattern ← (byte*~) $30 -Eliminating unused variable (byte*) form_b_pattern and assignment [371] (byte*) form_b_pattern ← (byte*~) $37 -Eliminating unused variable (byte*) form_vic_screen and assignment [385] (byte*) form_vic_screen ← (byte*~) $44 -Eliminating unused variable (byte*) form_vic_gfx and assignment [387] (byte*) form_vic_gfx ← (byte*~) $45 -Eliminating unused variable (byte*) form_vic_cols and assignment [389] (byte*) form_vic_cols ← (byte*~) $46 +Eliminating unused variable - keeping the call (void~) main::$3 +Eliminating unused variable - keeping the call (void~) main::$4 +Eliminating unused variable (byte*) form_ctrl_mode and assignment [338] (byte*) form_ctrl_mode ← (byte*~) $19 +Eliminating unused variable (byte*) form_a_pattern and assignment [358] (byte*) form_a_pattern ← (byte*~) $29 +Eliminating unused variable (byte*) form_b_pattern and assignment [372] (byte*) form_b_pattern ← (byte*~) $36 +Eliminating unused variable (byte*) form_vic_screen and assignment [386] (byte*) form_vic_screen ← (byte*~) $43 +Eliminating unused variable (byte*) form_vic_gfx and assignment [388] (byte*) form_vic_gfx ← (byte*~) $44 +Eliminating unused variable (byte*) form_vic_cols and assignment [390] (byte*) form_vic_cols ← (byte*~) $45 +Eliminating unused variable - keeping the call (void~) gfx_mode::$66 Eliminating unused variable - keeping the call (void~) gfx_init::$0 +Eliminating unused variable - keeping the call (void~) gfx_init::$1 Eliminating unused variable - keeping the call (void~) gfx_init_plane_8bppchunky::$2 Eliminating unused variable - keeping the call (void~) gfx_init_plane_8bppchunky::$5 Eliminating unused variable - keeping the call (void~) gfx_init_plane_8bppchunky::$12 +Eliminating unused variable - keeping the call (void~) form_init::$0 Eliminating unused variable - keeping the call (void~) form_init::$1 Eliminating unused variable - keeping the call (void~) form_init::$2 +Eliminating unused variable - keeping the call (void~) form_init::$3 Eliminating unused variable - keeping the call (void~) form_init::$4 Eliminating unused variable - keeping the call (void~) form_init::$5 +Eliminating unused variable - keeping the call (void~) form_init::$6 Eliminating unused variable - keeping the call (void~) form_init::$7 -Eliminating unused variable - keeping the call (void~) form_init::$8 Eliminating unused variable - keeping the call (void~) form_control::$8 -Eliminating unused variable (byte) KEY_3 and assignment [83] (byte) KEY_3 ← (byte/signed byte/word/signed word/dword/signed dword) 8 -Eliminating unused variable (byte) KEY_W and assignment [84] (byte) KEY_W ← (byte/signed byte/word/signed word/dword/signed dword) 9 -Eliminating unused variable (byte) KEY_A and assignment [85] (byte) KEY_A ← (byte/signed byte/word/signed word/dword/signed dword) 10 -Eliminating unused variable (byte) KEY_4 and assignment [86] (byte) KEY_4 ← (byte/signed byte/word/signed word/dword/signed dword) 11 -Eliminating unused variable (byte) KEY_Z and assignment [87] (byte) KEY_Z ← (byte/signed byte/word/signed word/dword/signed dword) 12 -Eliminating unused variable (byte) KEY_S and assignment [88] (byte) KEY_S ← (byte/signed byte/word/signed word/dword/signed dword) 13 -Eliminating unused variable (byte) KEY_E and assignment [89] (byte) KEY_E ← (byte/signed byte/word/signed word/dword/signed dword) 14 -Eliminating unused variable (byte) KEY_5 and assignment [91] (byte) KEY_5 ← (byte/signed byte/word/signed word/dword/signed dword) 16 -Eliminating unused variable (byte) KEY_R and assignment [92] (byte) KEY_R ← (byte/signed byte/word/signed word/dword/signed dword) 17 -Eliminating unused variable (byte) KEY_D and assignment [93] (byte) KEY_D ← (byte/signed byte/word/signed word/dword/signed dword) 18 -Eliminating unused variable (byte) KEY_6 and assignment [94] (byte) KEY_6 ← (byte/signed byte/word/signed word/dword/signed dword) 19 -Eliminating unused variable (byte) KEY_C and assignment [95] (byte) KEY_C ← (byte/signed byte/word/signed word/dword/signed dword) 20 -Eliminating unused variable (byte) KEY_F and assignment [96] (byte) KEY_F ← (byte/signed byte/word/signed word/dword/signed dword) 21 -Eliminating unused variable (byte) KEY_T and assignment [97] (byte) KEY_T ← (byte/signed byte/word/signed word/dword/signed dword) 22 -Eliminating unused variable (byte) KEY_X and assignment [98] (byte) KEY_X ← (byte/signed byte/word/signed word/dword/signed dword) 23 -Eliminating unused variable (byte) KEY_7 and assignment [99] (byte) KEY_7 ← (byte/signed byte/word/signed word/dword/signed dword) 24 -Eliminating unused variable (byte) KEY_Y and assignment [100] (byte) KEY_Y ← (byte/signed byte/word/signed word/dword/signed dword) 25 -Eliminating unused variable (byte) KEY_G and assignment [101] (byte) KEY_G ← (byte/signed byte/word/signed word/dword/signed dword) 26 -Eliminating unused variable (byte) KEY_8 and assignment [102] (byte) KEY_8 ← (byte/signed byte/word/signed word/dword/signed dword) 27 -Eliminating unused variable (byte) KEY_B and assignment [103] (byte) KEY_B ← (byte/signed byte/word/signed word/dword/signed dword) 28 -Eliminating unused variable (byte) KEY_H and assignment [104] (byte) KEY_H ← (byte/signed byte/word/signed word/dword/signed dword) 29 -Eliminating unused variable (byte) KEY_U and assignment [105] (byte) KEY_U ← (byte/signed byte/word/signed word/dword/signed dword) 30 -Eliminating unused variable (byte) KEY_V and assignment [106] (byte) KEY_V ← (byte/signed byte/word/signed word/dword/signed dword) 31 -Eliminating unused variable (byte) KEY_9 and assignment [107] (byte) KEY_9 ← (byte/signed byte/word/signed word/dword/signed dword) 32 -Eliminating unused variable (byte) KEY_I and assignment [108] (byte) KEY_I ← (byte/signed byte/word/signed word/dword/signed dword) 33 -Eliminating unused variable (byte) KEY_J and assignment [109] (byte) KEY_J ← (byte/signed byte/word/signed word/dword/signed dword) 34 -Eliminating unused variable (byte) KEY_0 and assignment [110] (byte) KEY_0 ← (byte/signed byte/word/signed word/dword/signed dword) 35 -Eliminating unused variable (byte) KEY_M and assignment [111] (byte) KEY_M ← (byte/signed byte/word/signed word/dword/signed dword) 36 -Eliminating unused variable (byte) KEY_K and assignment [112] (byte) KEY_K ← (byte/signed byte/word/signed word/dword/signed dword) 37 -Eliminating unused variable (byte) KEY_O and assignment [113] (byte) KEY_O ← (byte/signed byte/word/signed word/dword/signed dword) 38 -Eliminating unused variable (byte) KEY_N and assignment [114] (byte) KEY_N ← (byte/signed byte/word/signed word/dword/signed dword) 39 -Eliminating unused variable (byte) KEY_PLUS and assignment [115] (byte) KEY_PLUS ← (byte/signed byte/word/signed word/dword/signed dword) 40 -Eliminating unused variable (byte) KEY_P and assignment [116] (byte) KEY_P ← (byte/signed byte/word/signed word/dword/signed dword) 41 -Eliminating unused variable (byte) KEY_L and assignment [117] (byte) KEY_L ← (byte/signed byte/word/signed word/dword/signed dword) 42 -Eliminating unused variable (byte) KEY_MINUS and assignment [118] (byte) KEY_MINUS ← (byte/signed byte/word/signed word/dword/signed dword) 43 -Eliminating unused variable (byte) KEY_DOT and assignment [119] (byte) KEY_DOT ← (byte/signed byte/word/signed word/dword/signed dword) 44 -Eliminating unused variable (byte) KEY_COLON and assignment [120] (byte) KEY_COLON ← (byte/signed byte/word/signed word/dword/signed dword) 45 -Eliminating unused variable (byte) KEY_AT and assignment [121] (byte) KEY_AT ← (byte/signed byte/word/signed word/dword/signed dword) 46 -Eliminating unused variable (byte) KEY_COMMA and assignment [122] (byte) KEY_COMMA ← (byte/signed byte/word/signed word/dword/signed dword) 47 -Eliminating unused variable (byte) KEY_POUND and assignment [123] (byte) KEY_POUND ← (byte/signed byte/word/signed word/dword/signed dword) 48 -Eliminating unused variable (byte) KEY_ASTERISK and assignment [124] (byte) KEY_ASTERISK ← (byte/signed byte/word/signed word/dword/signed dword) 49 -Eliminating unused variable (byte) KEY_SEMICOLON and assignment [125] (byte) KEY_SEMICOLON ← (byte/signed byte/word/signed word/dword/signed dword) 50 -Eliminating unused variable (byte) KEY_EQUALS and assignment [127] (byte) KEY_EQUALS ← (byte/signed byte/word/signed word/dword/signed dword) 53 -Eliminating unused variable (byte) KEY_ARROW_UP and assignment [128] (byte) KEY_ARROW_UP ← (byte/signed byte/word/signed word/dword/signed dword) 54 -Eliminating unused variable (byte) KEY_SLASH and assignment [129] (byte) KEY_SLASH ← (byte/signed byte/word/signed word/dword/signed dword) 55 -Eliminating unused variable (byte) KEY_1 and assignment [130] (byte) KEY_1 ← (byte/signed byte/word/signed word/dword/signed dword) 56 -Eliminating unused variable (byte) KEY_ARROW_LEFT and assignment [131] (byte) KEY_ARROW_LEFT ← (byte/signed byte/word/signed word/dword/signed dword) 57 -Eliminating unused variable (byte) KEY_2 and assignment [133] (byte) KEY_2 ← (byte/signed byte/word/signed word/dword/signed dword) 59 -Eliminating unused variable (byte) KEY_SPACE and assignment [134] (byte) KEY_SPACE ← (byte/signed byte/word/signed word/dword/signed dword) 60 -Eliminating unused variable (byte) KEY_Q and assignment [136] (byte) KEY_Q ← (byte/signed byte/word/signed word/dword/signed dword) 62 -Eliminating unused variable (byte*~) $20 and assignment [281] (byte*~) $20 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 0 -Eliminating unused variable (byte*~) $30 and assignment [300] (byte*~) $30 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 10 -Eliminating unused variable (byte*~) $37 and assignment [313] (byte*~) $37 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 17 -Eliminating unused variable (byte*~) $44 and assignment [326] (byte*~) $44 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 24 -Eliminating unused variable (byte*~) $45 and assignment [327] (byte*~) $45 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 25 -Eliminating unused variable (byte*~) $46 and assignment [328] (byte*~) $46 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 26 -Creating constant string variable for inline (const string) $56 "0123456789abcdef" -Creating constant string variable for inline (const string) $57 "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@" +Eliminating unused variable (byte) KEY_3 and assignment [91] (byte) KEY_3 ← (byte/signed byte/word/signed word/dword/signed dword) 8 +Eliminating unused variable (byte) KEY_W and assignment [92] (byte) KEY_W ← (byte/signed byte/word/signed word/dword/signed dword) 9 +Eliminating unused variable (byte) KEY_A and assignment [93] (byte) KEY_A ← (byte/signed byte/word/signed word/dword/signed dword) 10 +Eliminating unused variable (byte) KEY_4 and assignment [94] (byte) KEY_4 ← (byte/signed byte/word/signed word/dword/signed dword) 11 +Eliminating unused variable (byte) KEY_Z and assignment [95] (byte) KEY_Z ← (byte/signed byte/word/signed word/dword/signed dword) 12 +Eliminating unused variable (byte) KEY_S and assignment [96] (byte) KEY_S ← (byte/signed byte/word/signed word/dword/signed dword) 13 +Eliminating unused variable (byte) KEY_E and assignment [97] (byte) KEY_E ← (byte/signed byte/word/signed word/dword/signed dword) 14 +Eliminating unused variable (byte) KEY_5 and assignment [99] (byte) KEY_5 ← (byte/signed byte/word/signed word/dword/signed dword) 16 +Eliminating unused variable (byte) KEY_R and assignment [100] (byte) KEY_R ← (byte/signed byte/word/signed word/dword/signed dword) 17 +Eliminating unused variable (byte) KEY_D and assignment [101] (byte) KEY_D ← (byte/signed byte/word/signed word/dword/signed dword) 18 +Eliminating unused variable (byte) KEY_6 and assignment [102] (byte) KEY_6 ← (byte/signed byte/word/signed word/dword/signed dword) 19 +Eliminating unused variable (byte) KEY_C and assignment [103] (byte) KEY_C ← (byte/signed byte/word/signed word/dword/signed dword) 20 +Eliminating unused variable (byte) KEY_F and assignment [104] (byte) KEY_F ← (byte/signed byte/word/signed word/dword/signed dword) 21 +Eliminating unused variable (byte) KEY_T and assignment [105] (byte) KEY_T ← (byte/signed byte/word/signed word/dword/signed dword) 22 +Eliminating unused variable (byte) KEY_X and assignment [106] (byte) KEY_X ← (byte/signed byte/word/signed word/dword/signed dword) 23 +Eliminating unused variable (byte) KEY_7 and assignment [107] (byte) KEY_7 ← (byte/signed byte/word/signed word/dword/signed dword) 24 +Eliminating unused variable (byte) KEY_Y and assignment [108] (byte) KEY_Y ← (byte/signed byte/word/signed word/dword/signed dword) 25 +Eliminating unused variable (byte) KEY_G and assignment [109] (byte) KEY_G ← (byte/signed byte/word/signed word/dword/signed dword) 26 +Eliminating unused variable (byte) KEY_8 and assignment [110] (byte) KEY_8 ← (byte/signed byte/word/signed word/dword/signed dword) 27 +Eliminating unused variable (byte) KEY_B and assignment [111] (byte) KEY_B ← (byte/signed byte/word/signed word/dword/signed dword) 28 +Eliminating unused variable (byte) KEY_H and assignment [112] (byte) KEY_H ← (byte/signed byte/word/signed word/dword/signed dword) 29 +Eliminating unused variable (byte) KEY_U and assignment [113] (byte) KEY_U ← (byte/signed byte/word/signed word/dword/signed dword) 30 +Eliminating unused variable (byte) KEY_V and assignment [114] (byte) KEY_V ← (byte/signed byte/word/signed word/dword/signed dword) 31 +Eliminating unused variable (byte) KEY_9 and assignment [115] (byte) KEY_9 ← (byte/signed byte/word/signed word/dword/signed dword) 32 +Eliminating unused variable (byte) KEY_I and assignment [116] (byte) KEY_I ← (byte/signed byte/word/signed word/dword/signed dword) 33 +Eliminating unused variable (byte) KEY_J and assignment [117] (byte) KEY_J ← (byte/signed byte/word/signed word/dword/signed dword) 34 +Eliminating unused variable (byte) KEY_0 and assignment [118] (byte) KEY_0 ← (byte/signed byte/word/signed word/dword/signed dword) 35 +Eliminating unused variable (byte) KEY_M and assignment [119] (byte) KEY_M ← (byte/signed byte/word/signed word/dword/signed dword) 36 +Eliminating unused variable (byte) KEY_K and assignment [120] (byte) KEY_K ← (byte/signed byte/word/signed word/dword/signed dword) 37 +Eliminating unused variable (byte) KEY_O and assignment [121] (byte) KEY_O ← (byte/signed byte/word/signed word/dword/signed dword) 38 +Eliminating unused variable (byte) KEY_N and assignment [122] (byte) KEY_N ← (byte/signed byte/word/signed word/dword/signed dword) 39 +Eliminating unused variable (byte) KEY_PLUS and assignment [123] (byte) KEY_PLUS ← (byte/signed byte/word/signed word/dword/signed dword) 40 +Eliminating unused variable (byte) KEY_P and assignment [124] (byte) KEY_P ← (byte/signed byte/word/signed word/dword/signed dword) 41 +Eliminating unused variable (byte) KEY_L and assignment [125] (byte) KEY_L ← (byte/signed byte/word/signed word/dword/signed dword) 42 +Eliminating unused variable (byte) KEY_MINUS and assignment [126] (byte) KEY_MINUS ← (byte/signed byte/word/signed word/dword/signed dword) 43 +Eliminating unused variable (byte) KEY_DOT and assignment [127] (byte) KEY_DOT ← (byte/signed byte/word/signed word/dword/signed dword) 44 +Eliminating unused variable (byte) KEY_COLON and assignment [128] (byte) KEY_COLON ← (byte/signed byte/word/signed word/dword/signed dword) 45 +Eliminating unused variable (byte) KEY_AT and assignment [129] (byte) KEY_AT ← (byte/signed byte/word/signed word/dword/signed dword) 46 +Eliminating unused variable (byte) KEY_COMMA and assignment [130] (byte) KEY_COMMA ← (byte/signed byte/word/signed word/dword/signed dword) 47 +Eliminating unused variable (byte) KEY_POUND and assignment [131] (byte) KEY_POUND ← (byte/signed byte/word/signed word/dword/signed dword) 48 +Eliminating unused variable (byte) KEY_ASTERISK and assignment [132] (byte) KEY_ASTERISK ← (byte/signed byte/word/signed word/dword/signed dword) 49 +Eliminating unused variable (byte) KEY_SEMICOLON and assignment [133] (byte) KEY_SEMICOLON ← (byte/signed byte/word/signed word/dword/signed dword) 50 +Eliminating unused variable (byte) KEY_EQUALS and assignment [135] (byte) KEY_EQUALS ← (byte/signed byte/word/signed word/dword/signed dword) 53 +Eliminating unused variable (byte) KEY_ARROW_UP and assignment [136] (byte) KEY_ARROW_UP ← (byte/signed byte/word/signed word/dword/signed dword) 54 +Eliminating unused variable (byte) KEY_SLASH and assignment [137] (byte) KEY_SLASH ← (byte/signed byte/word/signed word/dword/signed dword) 55 +Eliminating unused variable (byte) KEY_1 and assignment [138] (byte) KEY_1 ← (byte/signed byte/word/signed word/dword/signed dword) 56 +Eliminating unused variable (byte) KEY_ARROW_LEFT and assignment [139] (byte) KEY_ARROW_LEFT ← (byte/signed byte/word/signed word/dword/signed dword) 57 +Eliminating unused variable (byte) KEY_2 and assignment [141] (byte) KEY_2 ← (byte/signed byte/word/signed word/dword/signed dword) 59 +Eliminating unused variable (byte) KEY_Q and assignment [144] (byte) KEY_Q ← (byte/signed byte/word/signed word/dword/signed dword) 62 +Eliminating unused variable (byte*~) $19 and assignment [281] (byte*~) $19 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 0 +Eliminating unused variable (byte*~) $29 and assignment [300] (byte*~) $29 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 10 +Eliminating unused variable (byte*~) $36 and assignment [313] (byte*~) $36 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 17 +Eliminating unused variable (byte*~) $43 and assignment [326] (byte*~) $43 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 24 +Eliminating unused variable (byte*~) $44 and assignment [327] (byte*~) $44 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 25 +Eliminating unused variable (byte*~) $45 and assignment [328] (byte*~) $45 ← (byte[]) form_fields_val + (byte/signed byte/word/signed word/dword/signed dword) 26 +Creating constant string variable for inline (const string) $55 "0123456789abcdef" +Creating constant string variable for inline (const string) $56 "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@" +Creating constant string variable for inline (const string) $57 " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" Creating constant string variable for inline (const string) $58 " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" Creating constant string variable for inline (const string) $59 " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" Creating constant string variable for inline (const string) $60 " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" Creating constant string variable for inline (const string) $61 " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" -Creating constant string variable for inline (const string) $62 " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" -Creating constant string variable for inline (const string) $63 " nnnnnnn ooooooooo @" +Creating constant string variable for inline (const string) $62 " nnnnnnn ooooooooo @" +Creating constant string variable for inline (const string) $63 " nnnnnnn nnnnnnnn ooooooooo @" Creating constant string variable for inline (const string) $64 " nnnnnnn nnnnnnnn ooooooooo @" -Creating constant string variable for inline (const string) $65 " nnnnnnn nnnnnnnn ooooooooo @" -Creating constant string variable for inline (const string) $66 "@" -Creating constant string variable for inline (const string) $67 " DTV GfxExplorer MODE 0 8bpp pixel cell @" -Creating constant string variable for inline (const string) $68 " CONTROL PLANE A PLANE B VIC II @" -Creating constant string variable for inline (const string) $69 " bmm 0 patt p0 patt p0 screen s0 @" -Creating constant string variable for inline (const string) $70 " mcm 0 start 00 start 00 gfx g0 @" -Creating constant string variable for inline (const string) $71 " ecm 0 step 00 step 00 colors c0 @" -Creating constant string variable for inline (const string) $72 " hicol 0 mod 00 mod 00 bgcol0 00 @" -Creating constant string variable for inline (const string) $73 " line 0 bgcol1 00 @" -Creating constant string variable for inline (const string) $74 " colof 0 borof 0 bgcol2 00 @" -Creating constant string variable for inline (const string) $75 " chunk 0 overs 0 bgcol3 00 @" -Creating constant string variable for inline (const string) $76 "@" +Creating constant string variable for inline (const string) $65 "@" +Creating constant string variable for inline (const string) $66 " DTV GfxExplorer MODE 0 8bpp pixel cell @" +Creating constant string variable for inline (const string) $67 " CONTROL PLANE A PLANE B VIC II @" +Creating constant string variable for inline (const string) $68 " bmm 0 patt p0 patt p0 screen s0 @" +Creating constant string variable for inline (const string) $69 " mcm 0 start 00 start 00 gfx g0 @" +Creating constant string variable for inline (const string) $70 " ecm 0 step 00 step 00 colors c0 @" +Creating constant string variable for inline (const string) $71 " hicol 0 mod 00 mod 00 bgcol0 00 @" +Creating constant string variable for inline (const string) $72 " line 0 bgcol1 00 @" +Creating constant string variable for inline (const string) $73 " colof 0 borof 0 bgcol2 00 @" +Creating constant string variable for inline (const string) $74 " chunk 0 overs 0 bgcol3 00 @" +Creating constant string variable for inline (const string) $75 "@" Removing empty block print_str_lines::@6 Removing empty block print_str_lines::@3 Removing empty block print_str_lines::@7 @@ -4114,37 +4332,56 @@ Removing empty block keyboard_event_get::@2 Removing empty block keyboard_event_get::@5 Removing empty block keyboard_event_get::@6 Removing empty block @22 -Removing empty block main::@10 +Removing empty block main::@4 Removing empty block main::@3 -Removing empty block main::@11 -Removing empty block main::@12 -Removing empty block main::@13 -Removing empty block main::@14 -Removing empty block main::@15 -Removing empty block main::@16 -Removing empty block main::@17 -Removing empty block main::@18 -Removing empty block gfx_mode::@20 +Removing empty block main::@5 +Removing empty block main::@6 +Removing empty block gfx_mode::@27 +Removing empty block gfx_mode::@28 +Removing empty block gfx_mode::@13 +Removing empty block gfx_mode::@29 +Removing empty block gfx_mode::@30 +Removing empty block gfx_mode::@31 +Removing empty block gfx_mode::@32 +Removing empty block gfx_mode::@33 +Removing empty block gfx_mode::@34 +Removing empty block gfx_mode::@35 Removing empty block @24 Removing empty block @25 +Removing empty block gfx_init_screen_stdchar::@4 Removing empty block @26 Removing empty block @27 +Removing empty block @28 +Removing empty block form_mode::@10 +Removing empty block form_mode::@4 +Removing empty block form_mode::@11 +Removing empty block form_mode::@12 +Removing empty block form_mode::@13 +Removing empty block form_mode::@14 +Removing empty block form_mode::@15 +Removing empty block form_mode::@16 +Removing empty block form_mode::@17 +Removing empty block form_mode::@18 Removing empty block form_set_screen::@2 -Removing empty block @29 -Removing empty block form_field_ptr::@1 Removing empty block @30 -Removing empty block form_render_values::@2 +Removing empty block form_field_ptr::@1 Removing empty block @31 -Removing empty block form_control::@16 -Removing empty block form_control::@20 -Removing empty block form_control::@22 -Removing empty block form_control::@26 -Removing empty block form_control::@28 +Removing empty block form_render_values::@2 +Removing empty block @32 +Removing empty block form_control::@17 +Removing empty block form_control::@21 +Removing empty block form_control::@23 +Removing empty block form_control::@27 +Removing empty block form_control::@29 +Removing empty block form_control::@31 +Removing empty block form_control::@32 PROCEDURE MODIFY VARIABLE ANALYSIS print_str_lines modifies print_char_cursor print_str_lines modifies print_line_cursor print_ln modifies print_line_cursor print_ln modifies print_char_cursor +print_cls modifies print_line_cursor +print_cls modifies print_char_cursor print_set_screen modifies print_screen print_set_screen modifies print_line_cursor print_set_screen modifies print_char_cursor @@ -4158,9 +4395,15 @@ main modifies form_cursor_count main modifies keyboard_events_size main modifies keyboard_modifiers main modifies form_field_idx +gfx_mode modifies keyboard_events_size +gfx_mode modifies keyboard_modifiers form_init modifies print_screen form_init modifies print_line_cursor form_init modifies print_char_cursor +form_mode modifies form_cursor_count +form_mode modifies keyboard_events_size +form_mode modifies keyboard_modifiers +form_mode modifies form_field_idx form_control modifies form_cursor_count form_control modifies keyboard_events_size form_control modifies keyboard_modifiers @@ -4184,11 +4427,12 @@ Completing Phi functions... Completing Phi functions... Completing Phi functions... Completing Phi functions... +Completing Phi functions... +Completing Phi functions... CONTROL FLOW GRAPH SSA WITH ASSIGNMENT CALL & RETURN @begin: scope:[] from (byte*) RASTER#0 ← ((byte*)) (word/dword/signed dword) 53266 - (byte*) BORDERCOL#0 ← ((byte*)) (word/dword/signed dword) 53280 (byte*) BGCOL#0 ← ((byte*)) (word/dword/signed dword) 53281 (byte*) BGCOL1#0 ← ((byte*)) (word/dword/signed dword) 53281 (byte*) BGCOL2#0 ← ((byte*)) (word/dword/signed dword) 53282 @@ -4252,26 +4496,26 @@ dtvSetCpuBankSegment1::@return: scope:[dtvSetCpuBankSegment1] from dtvSetCpuBan (byte*) print_line_cursor#0 ← (byte*) print_screen#0 (byte*) print_char_cursor#0 ← (byte*) print_line_cursor#0 to:@11 -print_str_lines: scope:[print_str_lines] from form_init::@1 form_init::@3 - (byte*) print_line_cursor#37 ← phi( form_init::@1/(byte*) print_line_cursor#9 form_init::@3/(byte*) print_line_cursor#11 ) - (byte*) print_char_cursor#39 ← phi( form_init::@1/(byte*) print_char_cursor#10 form_init::@3/(byte*) print_char_cursor#12 ) - (byte*) print_str_lines::str#5 ← phi( form_init::@1/(byte*) print_str_lines::str#1 form_init::@3/(byte*) print_str_lines::str#2 ) +print_str_lines: scope:[print_str_lines] from form_init::@2 form_init::@5 + (byte*) print_line_cursor#44 ← phi( form_init::@2/(byte*) print_line_cursor#12 form_init::@5/(byte*) print_line_cursor#15 ) + (byte*) print_char_cursor#46 ← phi( form_init::@2/(byte*) print_char_cursor#13 form_init::@5/(byte*) print_char_cursor#16 ) + (byte*) print_str_lines::str#5 ← phi( form_init::@2/(byte*) print_str_lines::str#1 form_init::@5/(byte*) print_str_lines::str#2 ) to:print_str_lines::@1 print_str_lines::@1: scope:[print_str_lines] from print_str_lines print_str_lines::@11 - (byte*) print_line_cursor#30 ← phi( print_str_lines/(byte*) print_line_cursor#37 print_str_lines::@11/(byte*) print_line_cursor#1 ) - (byte*) print_char_cursor#32 ← phi( print_str_lines/(byte*) print_char_cursor#39 print_str_lines::@11/(byte*) print_char_cursor#2 ) + (byte*) print_line_cursor#37 ← phi( print_str_lines/(byte*) print_line_cursor#44 print_str_lines::@11/(byte*) print_line_cursor#1 ) + (byte*) print_char_cursor#39 ← phi( print_str_lines/(byte*) print_char_cursor#46 print_str_lines::@11/(byte*) print_char_cursor#2 ) (byte*) print_str_lines::str#3 ← phi( print_str_lines/(byte*) print_str_lines::str#5 print_str_lines::@11/(byte*) print_str_lines::str#6 ) (boolean~) print_str_lines::$0 ← *((byte*) print_str_lines::str#3) != (byte) '@' if((boolean~) print_str_lines::$0) goto print_str_lines::@2 to:print_str_lines::@return print_str_lines::@2: scope:[print_str_lines] from print_str_lines::@1 - (byte*) print_line_cursor#48 ← phi( print_str_lines::@1/(byte*) print_line_cursor#30 ) - (byte*) print_char_cursor#40 ← phi( print_str_lines::@1/(byte*) print_char_cursor#32 ) + (byte*) print_line_cursor#55 ← phi( print_str_lines::@1/(byte*) print_line_cursor#37 ) + (byte*) print_char_cursor#47 ← phi( print_str_lines::@1/(byte*) print_char_cursor#39 ) (byte*) print_str_lines::str#7 ← phi( print_str_lines::@1/(byte*) print_str_lines::str#3 ) to:print_str_lines::@4 print_str_lines::@4: scope:[print_str_lines] from print_str_lines::@2 print_str_lines::@5 - (byte*) print_line_cursor#43 ← phi( print_str_lines::@2/(byte*) print_line_cursor#48 print_str_lines::@5/(byte*) print_line_cursor#38 ) - (byte*) print_char_cursor#30 ← phi( print_str_lines::@2/(byte*) print_char_cursor#40 print_str_lines::@5/(byte*) print_char_cursor#41 ) + (byte*) print_line_cursor#50 ← phi( print_str_lines::@2/(byte*) print_line_cursor#55 print_str_lines::@5/(byte*) print_line_cursor#45 ) + (byte*) print_char_cursor#37 ← phi( print_str_lines::@2/(byte*) print_char_cursor#47 print_str_lines::@5/(byte*) print_char_cursor#48 ) (byte*) print_str_lines::str#4 ← phi( print_str_lines::@2/(byte*) print_str_lines::str#7 print_str_lines::@5/(byte*) print_str_lines::str#8 ) (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#4) (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#4 @@ -4280,94 +4524,120 @@ print_str_lines::@4: scope:[print_str_lines] from print_str_lines::@2 print_str if((boolean~) print_str_lines::$2) goto print_str_lines::@5 to:print_str_lines::@8 print_str_lines::@5: scope:[print_str_lines] from print_str_lines::@4 print_str_lines::@8 - (byte*) print_line_cursor#38 ← phi( print_str_lines::@4/(byte*) print_line_cursor#43 print_str_lines::@8/(byte*) print_line_cursor#44 ) - (byte*) print_char_cursor#41 ← phi( print_str_lines::@4/(byte*) print_char_cursor#30 print_str_lines::@8/(byte*) print_char_cursor#1 ) + (byte*) print_line_cursor#45 ← phi( print_str_lines::@4/(byte*) print_line_cursor#50 print_str_lines::@8/(byte*) print_line_cursor#51 ) + (byte*) print_char_cursor#48 ← phi( print_str_lines::@4/(byte*) print_char_cursor#37 print_str_lines::@8/(byte*) print_char_cursor#1 ) (byte*) print_str_lines::str#8 ← phi( print_str_lines::@4/(byte*) print_str_lines::str#0 print_str_lines::@8/(byte*) print_str_lines::str#9 ) (byte) print_str_lines::ch#1 ← phi( print_str_lines::@4/(byte) print_str_lines::ch#0 print_str_lines::@8/(byte) print_str_lines::ch#2 ) (boolean~) print_str_lines::$3 ← (byte) print_str_lines::ch#1 != (byte) '@' if((boolean~) print_str_lines::$3) goto print_str_lines::@4 to:print_str_lines::@9 print_str_lines::@8: scope:[print_str_lines] from print_str_lines::@4 - (byte*) print_line_cursor#44 ← phi( print_str_lines::@4/(byte*) print_line_cursor#43 ) + (byte*) print_line_cursor#51 ← phi( print_str_lines::@4/(byte*) print_line_cursor#50 ) (byte*) print_str_lines::str#9 ← phi( print_str_lines::@4/(byte*) print_str_lines::str#0 ) - (byte*) print_char_cursor#16 ← phi( print_str_lines::@4/(byte*) print_char_cursor#30 ) + (byte*) print_char_cursor#20 ← phi( print_str_lines::@4/(byte*) print_char_cursor#37 ) (byte) print_str_lines::ch#2 ← phi( print_str_lines::@4/(byte) print_str_lines::ch#0 ) - *((byte*) print_char_cursor#16) ← (byte) print_str_lines::ch#2 - (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#16 + *((byte*) print_char_cursor#20) ← (byte) print_str_lines::ch#2 + (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#20 to:print_str_lines::@5 print_str_lines::@9: scope:[print_str_lines] from print_str_lines::@5 (byte*) print_str_lines::str#10 ← phi( print_str_lines::@5/(byte*) print_str_lines::str#8 ) - (byte*) print_char_cursor#31 ← phi( print_str_lines::@5/(byte*) print_char_cursor#41 ) - (byte*) print_line_cursor#29 ← phi( print_str_lines::@5/(byte*) print_line_cursor#38 ) + (byte*) print_char_cursor#38 ← phi( print_str_lines::@5/(byte*) print_char_cursor#48 ) + (byte*) print_line_cursor#36 ← phi( print_str_lines::@5/(byte*) print_line_cursor#45 ) call print_ln param-assignment to:print_str_lines::@11 print_str_lines::@11: scope:[print_str_lines] from print_str_lines::@9 (byte*) print_str_lines::str#6 ← phi( print_str_lines::@9/(byte*) print_str_lines::str#10 ) - (byte*) print_char_cursor#17 ← phi( print_str_lines::@9/(byte*) print_char_cursor#5 ) - (byte*) print_line_cursor#15 ← phi( print_str_lines::@9/(byte*) print_line_cursor#4 ) - (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#15 - (byte*) print_char_cursor#2 ← (byte*) print_char_cursor#17 + (byte*) print_char_cursor#21 ← phi( print_str_lines::@9/(byte*) print_char_cursor#5 ) + (byte*) print_line_cursor#19 ← phi( print_str_lines::@9/(byte*) print_line_cursor#4 ) + (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#19 + (byte*) print_char_cursor#2 ← (byte*) print_char_cursor#21 to:print_str_lines::@1 print_str_lines::@return: scope:[print_str_lines] from print_str_lines::@1 - (byte*) print_line_cursor#16 ← phi( print_str_lines::@1/(byte*) print_line_cursor#30 ) - (byte*) print_char_cursor#18 ← phi( print_str_lines::@1/(byte*) print_char_cursor#32 ) - (byte*) print_char_cursor#3 ← (byte*) print_char_cursor#18 - (byte*) print_line_cursor#2 ← (byte*) print_line_cursor#16 + (byte*) print_line_cursor#20 ← phi( print_str_lines::@1/(byte*) print_line_cursor#37 ) + (byte*) print_char_cursor#22 ← phi( print_str_lines::@1/(byte*) print_char_cursor#39 ) + (byte*) print_char_cursor#3 ← (byte*) print_char_cursor#22 + (byte*) print_line_cursor#2 ← (byte*) print_line_cursor#20 return to:@return print_ln: scope:[print_ln] from print_str_lines::@9 - (byte*) print_char_cursor#33 ← phi( print_str_lines::@9/(byte*) print_char_cursor#31 ) - (byte*) print_line_cursor#31 ← phi( print_str_lines::@9/(byte*) print_line_cursor#29 ) + (byte*) print_char_cursor#40 ← phi( print_str_lines::@9/(byte*) print_char_cursor#38 ) + (byte*) print_line_cursor#38 ← phi( print_str_lines::@9/(byte*) print_line_cursor#36 ) to:print_ln::@1 print_ln::@1: scope:[print_ln] from print_ln print_ln::@1 - (byte*) print_char_cursor#19 ← phi( print_ln/(byte*) print_char_cursor#33 print_ln::@1/(byte*) print_char_cursor#19 ) - (byte*) print_line_cursor#17 ← phi( print_ln/(byte*) print_line_cursor#31 print_ln::@1/(byte*) print_line_cursor#3 ) - (byte*~) print_ln::$0 ← (byte*) print_line_cursor#17 + (byte/signed byte/word/signed word/dword/signed dword) 40 + (byte*) print_char_cursor#23 ← phi( print_ln/(byte*) print_char_cursor#40 print_ln::@1/(byte*) print_char_cursor#23 ) + (byte*) print_line_cursor#21 ← phi( print_ln/(byte*) print_line_cursor#38 print_ln::@1/(byte*) print_line_cursor#3 ) + (byte*~) print_ln::$0 ← (byte*) print_line_cursor#21 + (byte/signed byte/word/signed word/dword/signed dword) 40 (byte*) print_line_cursor#3 ← (byte*~) print_ln::$0 - (boolean~) print_ln::$1 ← (byte*) print_line_cursor#3 < (byte*) print_char_cursor#19 + (boolean~) print_ln::$1 ← (byte*) print_line_cursor#3 < (byte*) print_char_cursor#23 if((boolean~) print_ln::$1) goto print_ln::@1 to:print_ln::@2 print_ln::@2: scope:[print_ln] from print_ln::@1 - (byte*) print_line_cursor#18 ← phi( print_ln::@1/(byte*) print_line_cursor#3 ) - (byte*) print_char_cursor#4 ← (byte*) print_line_cursor#18 + (byte*) print_line_cursor#22 ← phi( print_ln::@1/(byte*) print_line_cursor#3 ) + (byte*) print_char_cursor#4 ← (byte*) print_line_cursor#22 to:print_ln::@return print_ln::@return: scope:[print_ln] from print_ln::@2 - (byte*) print_char_cursor#20 ← phi( print_ln::@2/(byte*) print_char_cursor#4 ) - (byte*) print_line_cursor#19 ← phi( print_ln::@2/(byte*) print_line_cursor#18 ) - (byte*) print_line_cursor#4 ← (byte*) print_line_cursor#19 - (byte*) print_char_cursor#5 ← (byte*) print_char_cursor#20 + (byte*) print_char_cursor#24 ← phi( print_ln::@2/(byte*) print_char_cursor#4 ) + (byte*) print_line_cursor#23 ← phi( print_ln::@2/(byte*) print_line_cursor#22 ) + (byte*) print_line_cursor#4 ← (byte*) print_line_cursor#23 + (byte*) print_char_cursor#5 ← (byte*) print_char_cursor#24 return to:@return @11: scope:[] from @1 - (byte*) print_char_cursor#53 ← phi( @1/(byte*) print_char_cursor#0 ) - (byte*) print_line_cursor#53 ← phi( @1/(byte*) print_line_cursor#0 ) - (byte*) print_screen#34 ← phi( @1/(byte*) print_screen#0 ) - (byte[]) print_hextab#0 ← (const string) $56 + (byte*) print_char_cursor#59 ← phi( @1/(byte*) print_char_cursor#0 ) + (byte*) print_line_cursor#59 ← phi( @1/(byte*) print_line_cursor#0 ) + (byte*) print_screen#38 ← phi( @1/(byte*) print_screen#0 ) + (byte[]) print_hextab#0 ← (const string) $55 to:@15 -print_set_screen: scope:[print_set_screen] from form_init form_init::@2 - (byte*) print_set_screen::screen#2 ← phi( form_init/(byte*) print_set_screen::screen#0 form_init::@2/(byte*) print_set_screen::screen#1 ) - (byte*) print_screen#1 ← (byte*) print_set_screen::screen#2 - (byte*) print_line_cursor#5 ← (byte*) print_screen#1 +print_cls: scope:[print_cls] from form_init::@1 form_init::@4 + (byte*) print_screen#9 ← phi( form_init::@1/(byte*) print_screen#5 form_init::@4/(byte*) print_screen#6 ) + (byte*) print_cls::sc#0 ← (byte*) print_screen#9 + to:print_cls::@1 +print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 + (byte*) print_screen#10 ← phi( print_cls/(byte*) print_screen#9 print_cls::@1/(byte*) print_screen#10 ) + (byte*) print_cls::sc#2 ← phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) + *((byte*) print_cls::sc#2) ← (byte) ' ' + (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 + (byte*~) print_cls::$0 ← (byte*) print_screen#10 + (word/signed word/dword/signed dword) 1000 + (boolean~) print_cls::$1 ← (byte*) print_cls::sc#1 != (byte*~) print_cls::$0 + if((boolean~) print_cls::$1) goto print_cls::@1 + to:print_cls::@2 +print_cls::@2: scope:[print_cls] from print_cls::@1 + (byte*) print_screen#11 ← phi( print_cls::@1/(byte*) print_screen#10 ) + (byte*) print_line_cursor#5 ← (byte*) print_screen#11 (byte*) print_char_cursor#6 ← (byte*) print_line_cursor#5 + to:print_cls::@return +print_cls::@return: scope:[print_cls] from print_cls::@2 + (byte*) print_char_cursor#25 ← phi( print_cls::@2/(byte*) print_char_cursor#6 ) + (byte*) print_line_cursor#24 ← phi( print_cls::@2/(byte*) print_line_cursor#5 ) + (byte*) print_line_cursor#6 ← (byte*) print_line_cursor#24 + (byte*) print_char_cursor#7 ← (byte*) print_char_cursor#25 + return + to:@return +print_set_screen: scope:[print_set_screen] from form_init form_init::@3 + (byte*) print_set_screen::screen#2 ← phi( form_init/(byte*) print_set_screen::screen#0 form_init::@3/(byte*) print_set_screen::screen#1 ) + (byte*) print_screen#1 ← (byte*) print_set_screen::screen#2 + (byte*) print_line_cursor#7 ← (byte*) print_screen#1 + (byte*) print_char_cursor#8 ← (byte*) print_line_cursor#7 to:print_set_screen::@return print_set_screen::@return: scope:[print_set_screen] from print_set_screen - (byte*) print_char_cursor#21 ← phi( print_set_screen/(byte*) print_char_cursor#6 ) - (byte*) print_line_cursor#20 ← phi( print_set_screen/(byte*) print_line_cursor#5 ) - (byte*) print_screen#9 ← phi( print_set_screen/(byte*) print_screen#1 ) - (byte*) print_screen#2 ← (byte*) print_screen#9 - (byte*) print_line_cursor#6 ← (byte*) print_line_cursor#20 - (byte*) print_char_cursor#7 ← (byte*) print_char_cursor#21 + (byte*) print_char_cursor#26 ← phi( print_set_screen/(byte*) print_char_cursor#8 ) + (byte*) print_line_cursor#25 ← phi( print_set_screen/(byte*) print_line_cursor#7 ) + (byte*) print_screen#12 ← phi( print_set_screen/(byte*) print_screen#1 ) + (byte*) print_screen#2 ← (byte*) print_screen#12 + (byte*) print_line_cursor#8 ← (byte*) print_line_cursor#25 + (byte*) print_char_cursor#9 ← (byte*) print_char_cursor#26 return to:@return @15: scope:[] from @11 - (byte*) print_char_cursor#51 ← phi( @11/(byte*) print_char_cursor#53 ) - (byte*) print_line_cursor#51 ← phi( @11/(byte*) print_line_cursor#53 ) - (byte*) print_screen#32 ← phi( @11/(byte*) print_screen#34 ) + (byte*) print_char_cursor#58 ← phi( @11/(byte*) print_char_cursor#59 ) + (byte*) print_line_cursor#58 ← phi( @11/(byte*) print_line_cursor#59 ) + (byte*) print_screen#37 ← phi( @11/(byte*) print_screen#38 ) (byte) KEY_CRSR_RIGHT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 (byte) KEY_CRSR_DOWN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 (byte) KEY_LSHIFT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 15 (byte) KEY_RSHIFT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 52 (byte) KEY_CTRL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 58 + (byte) KEY_SPACE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 60 (byte) KEY_COMMODORE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 61 (byte[8]) keyboard_matrix_row_bitmask#0 ← { (byte/word/signed word/dword/signed dword) 254, (byte/word/signed word/dword/signed dword) 253, (byte/word/signed word/dword/signed dword) 251, (byte/word/signed word/dword/signed dword) 247, (byte/word/signed word/dword/signed dword) 239, (byte/word/signed word/dword/signed dword) 223, (byte/word/signed word/dword/signed dword) 191, (byte/signed byte/word/signed word/dword/signed dword) 127 } (byte[8]) keyboard_matrix_col_bitmask#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 16, (byte/signed byte/word/signed word/dword/signed dword) 32, (byte/signed byte/word/signed word/dword/signed dword) 64, (byte/word/signed word/dword/signed dword) 128 } @@ -4392,9 +4662,9 @@ keyboard_matrix_read::@return: scope:[keyboard_matrix_read] from keyboard_matri return to:@return @19: scope:[] from @15 - (byte*) print_char_cursor#50 ← phi( @15/(byte*) print_char_cursor#51 ) - (byte*) print_line_cursor#50 ← phi( @15/(byte*) print_line_cursor#51 ) - (byte*) print_screen#31 ← phi( @15/(byte*) print_screen#32 ) + (byte*) print_char_cursor#57 ← phi( @15/(byte*) print_char_cursor#58 ) + (byte*) print_line_cursor#57 ← phi( @15/(byte*) print_line_cursor#58 ) + (byte*) print_screen#35 ← phi( @15/(byte*) print_screen#37 ) (byte[8]) keyboard_events#0 ← { fill( 8, 0) } (byte) keyboard_events_size#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 (byte) keyboard_modifiers#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 @@ -4406,13 +4676,13 @@ keyboard_matrix_read::@return: scope:[keyboard_matrix_read] from keyboard_matri (byte) KEY_MODIFIER_SHIFT#0 ← (byte~) $0 (byte[8]) keyboard_scan_values#0 ← { fill( 8, 0) } to:@23 -keyboard_event_scan: scope:[keyboard_event_scan] from form_control::@3 - (byte) keyboard_events_size#76 ← phi( form_control::@3/(byte) keyboard_events_size#32 ) +keyboard_event_scan: scope:[keyboard_event_scan] from form_control::@3 gfx_mode::@16 + (byte) keyboard_events_size#104 ← phi( form_control::@3/(byte) keyboard_events_size#48 gfx_mode::@16/(byte) keyboard_events_size#44 ) (byte) keyboard_event_scan::keycode#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 (byte) keyboard_event_scan::row#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:keyboard_event_scan::@1 keyboard_event_scan::@1: scope:[keyboard_event_scan] from keyboard_event_scan keyboard_event_scan::@8 - (byte) keyboard_events_size#67 ← phi( keyboard_event_scan/(byte) keyboard_events_size#76 keyboard_event_scan::@8/(byte) keyboard_events_size#77 ) + (byte) keyboard_events_size#93 ← phi( keyboard_event_scan/(byte) keyboard_events_size#104 keyboard_event_scan::@8/(byte) keyboard_events_size#105 ) (byte) keyboard_event_scan::keycode#11 ← phi( keyboard_event_scan/(byte) keyboard_event_scan::keycode#0 keyboard_event_scan::@8/(byte) keyboard_event_scan::keycode#14 ) (byte) keyboard_event_scan::row#2 ← phi( keyboard_event_scan/(byte) keyboard_event_scan::row#0 keyboard_event_scan::@8/(byte) keyboard_event_scan::row#1 ) (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_event_scan::row#2 @@ -4420,7 +4690,7 @@ keyboard_event_scan::@1: scope:[keyboard_event_scan] from keyboard_event_scan k (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#1 to:keyboard_event_scan::@25 keyboard_event_scan::@25: scope:[keyboard_event_scan] from keyboard_event_scan::@1 - (byte) keyboard_events_size#55 ← phi( keyboard_event_scan::@1/(byte) keyboard_events_size#67 ) + (byte) keyboard_events_size#76 ← phi( keyboard_event_scan::@1/(byte) keyboard_events_size#93 ) (byte) keyboard_event_scan::keycode#7 ← phi( keyboard_event_scan::@1/(byte) keyboard_event_scan::keycode#11 ) (byte) keyboard_event_scan::row#3 ← phi( keyboard_event_scan::@1/(byte) keyboard_event_scan::row#2 ) (byte) keyboard_matrix_read::return#4 ← phi( keyboard_event_scan::@1/(byte) keyboard_matrix_read::return#2 ) @@ -4431,21 +4701,21 @@ keyboard_event_scan::@25: scope:[keyboard_event_scan] from keyboard_event_scan: if((boolean~) keyboard_event_scan::$2) goto keyboard_event_scan::@2 to:keyboard_event_scan::@13 keyboard_event_scan::@2: scope:[keyboard_event_scan] from keyboard_event_scan::@25 - (byte) keyboard_events_size#83 ← phi( keyboard_event_scan::@25/(byte) keyboard_events_size#55 ) + (byte) keyboard_events_size#112 ← phi( keyboard_event_scan::@25/(byte) keyboard_events_size#76 ) (byte) keyboard_event_scan::row#9 ← phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::row#3 ) (byte) keyboard_event_scan::keycode#3 ← phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::keycode#7 ) (byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14 ← (byte) keyboard_event_scan::keycode#3 + (byte/signed byte/word/signed word/dword/signed dword) 8 (byte) keyboard_event_scan::keycode#1 ← (byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14 to:keyboard_event_scan::@8 keyboard_event_scan::@13: scope:[keyboard_event_scan] from keyboard_event_scan::@25 - (byte) keyboard_events_size#37 ← phi( keyboard_event_scan::@25/(byte) keyboard_events_size#55 ) + (byte) keyboard_events_size#54 ← phi( keyboard_event_scan::@25/(byte) keyboard_events_size#76 ) (byte) keyboard_event_scan::keycode#12 ← phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::keycode#7 ) (byte) keyboard_event_scan::row#7 ← phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::row#3 ) (byte) keyboard_event_scan::row_scan#4 ← phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::row_scan#0 ) (byte) keyboard_event_scan::col#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:keyboard_event_scan::@3 keyboard_event_scan::@3: scope:[keyboard_event_scan] from keyboard_event_scan::@13 keyboard_event_scan::@4 - (byte) keyboard_events_size#25 ← phi( keyboard_event_scan::@13/(byte) keyboard_events_size#37 keyboard_event_scan::@4/(byte) keyboard_events_size#38 ) + (byte) keyboard_events_size#37 ← phi( keyboard_event_scan::@13/(byte) keyboard_events_size#54 keyboard_event_scan::@4/(byte) keyboard_events_size#55 ) (byte) keyboard_event_scan::keycode#8 ← phi( keyboard_event_scan::@13/(byte) keyboard_event_scan::keycode#12 keyboard_event_scan::@4/(byte) keyboard_event_scan::keycode#2 ) (byte) keyboard_event_scan::col#2 ← phi( keyboard_event_scan::@13/(byte) keyboard_event_scan::col#0 keyboard_event_scan::@4/(byte) keyboard_event_scan::col#1 ) (byte) keyboard_event_scan::row#4 ← phi( keyboard_event_scan::@13/(byte) keyboard_event_scan::row#7 keyboard_event_scan::@4/(byte) keyboard_event_scan::row#8 ) @@ -4457,7 +4727,7 @@ keyboard_event_scan::@3: scope:[keyboard_event_scan] from keyboard_event_scan:: if((boolean~) keyboard_event_scan::$6) goto keyboard_event_scan::@4 to:keyboard_event_scan::@14 keyboard_event_scan::@4: scope:[keyboard_event_scan] from keyboard_event_scan::@16 keyboard_event_scan::@3 keyboard_event_scan::@5 keyboard_event_scan::@6 - (byte) keyboard_events_size#38 ← phi( keyboard_event_scan::@16/(byte) keyboard_events_size#2 keyboard_event_scan::@3/(byte) keyboard_events_size#25 keyboard_event_scan::@5/(byte) keyboard_events_size#56 keyboard_event_scan::@6/(byte) keyboard_events_size#1 ) + (byte) keyboard_events_size#55 ← phi( keyboard_event_scan::@16/(byte) keyboard_events_size#2 keyboard_event_scan::@3/(byte) keyboard_events_size#37 keyboard_event_scan::@5/(byte) keyboard_events_size#77 keyboard_event_scan::@6/(byte) keyboard_events_size#1 ) (byte) keyboard_event_scan::row#8 ← phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::row#10 keyboard_event_scan::@3/(byte) keyboard_event_scan::row#4 keyboard_event_scan::@5/(byte) keyboard_event_scan::row#11 keyboard_event_scan::@6/(byte) keyboard_event_scan::row#12 ) (byte) keyboard_event_scan::row_scan#5 ← phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::row_scan#7 keyboard_event_scan::@3/(byte) keyboard_event_scan::row_scan#1 keyboard_event_scan::@5/(byte) keyboard_event_scan::row_scan#8 keyboard_event_scan::@6/(byte) keyboard_event_scan::row_scan#9 ) (byte) keyboard_event_scan::col#3 ← phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::col#5 keyboard_event_scan::@3/(byte) keyboard_event_scan::col#2 keyboard_event_scan::@5/(byte) keyboard_event_scan::col#6 keyboard_event_scan::@6/(byte) keyboard_event_scan::col#7 ) @@ -4472,13 +4742,13 @@ keyboard_event_scan::@14: scope:[keyboard_event_scan] from keyboard_event_scan: (byte) keyboard_event_scan::keycode#13 ← phi( keyboard_event_scan::@3/(byte) keyboard_event_scan::keycode#8 ) (byte) keyboard_event_scan::col#8 ← phi( keyboard_event_scan::@3/(byte) keyboard_event_scan::col#2 ) (byte) keyboard_event_scan::row_scan#6 ← phi( keyboard_event_scan::@3/(byte) keyboard_event_scan::row_scan#1 ) - (byte) keyboard_events_size#12 ← phi( keyboard_event_scan::@3/(byte) keyboard_events_size#25 ) - (boolean~) keyboard_event_scan::$7 ← (byte) keyboard_events_size#12 != (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) keyboard_events_size#18 ← phi( keyboard_event_scan::@3/(byte) keyboard_events_size#37 ) + (boolean~) keyboard_event_scan::$7 ← (byte) keyboard_events_size#18 != (byte/signed byte/word/signed word/dword/signed dword) 8 (boolean~) keyboard_event_scan::$8 ← ! (boolean~) keyboard_event_scan::$7 if((boolean~) keyboard_event_scan::$8) goto keyboard_event_scan::@5 to:keyboard_event_scan::@15 keyboard_event_scan::@5: scope:[keyboard_event_scan] from keyboard_event_scan::@14 - (byte) keyboard_events_size#56 ← phi( keyboard_event_scan::@14/(byte) keyboard_events_size#12 ) + (byte) keyboard_events_size#77 ← phi( keyboard_event_scan::@14/(byte) keyboard_events_size#18 ) (byte) keyboard_event_scan::row#11 ← phi( keyboard_event_scan::@14/(byte) keyboard_event_scan::row#13 ) (byte) keyboard_event_scan::row_scan#8 ← phi( keyboard_event_scan::@14/(byte) keyboard_event_scan::row_scan#6 ) (byte) keyboard_event_scan::col#6 ← phi( keyboard_event_scan::@14/(byte) keyboard_event_scan::col#8 ) @@ -4486,7 +4756,7 @@ keyboard_event_scan::@5: scope:[keyboard_event_scan] from keyboard_event_scan:: to:keyboard_event_scan::@4 keyboard_event_scan::@15: scope:[keyboard_event_scan] from keyboard_event_scan::@14 (byte) keyboard_event_scan::row#14 ← phi( keyboard_event_scan::@14/(byte) keyboard_event_scan::row#13 ) - (byte) keyboard_events_size#26 ← phi( keyboard_event_scan::@14/(byte) keyboard_events_size#12 ) + (byte) keyboard_events_size#38 ← phi( keyboard_event_scan::@14/(byte) keyboard_events_size#18 ) (byte) keyboard_event_scan::keycode#10 ← phi( keyboard_event_scan::@14/(byte) keyboard_event_scan::keycode#13 ) (byte) keyboard_event_scan::col#4 ← phi( keyboard_event_scan::@14/(byte) keyboard_event_scan::col#8 ) (byte) keyboard_event_scan::row_scan#2 ← phi( keyboard_event_scan::@14/(byte) keyboard_event_scan::row_scan#6 ) @@ -4500,30 +4770,30 @@ keyboard_event_scan::@6: scope:[keyboard_event_scan] from keyboard_event_scan:: (byte) keyboard_event_scan::row#12 ← phi( keyboard_event_scan::@15/(byte) keyboard_event_scan::row#14 ) (byte) keyboard_event_scan::row_scan#9 ← phi( keyboard_event_scan::@15/(byte) keyboard_event_scan::row_scan#2 ) (byte) keyboard_event_scan::col#7 ← phi( keyboard_event_scan::@15/(byte) keyboard_event_scan::col#4 ) - (byte) keyboard_events_size#13 ← phi( keyboard_event_scan::@15/(byte) keyboard_events_size#26 ) + (byte) keyboard_events_size#19 ← phi( keyboard_event_scan::@15/(byte) keyboard_events_size#38 ) (byte) keyboard_event_scan::keycode#5 ← phi( keyboard_event_scan::@15/(byte) keyboard_event_scan::keycode#10 ) - *((byte[8]) keyboard_events#0 + (byte) keyboard_events_size#13) ← (byte) keyboard_event_scan::keycode#5 - (byte) keyboard_events_size#1 ← ++ (byte) keyboard_events_size#13 + *((byte[8]) keyboard_events#0 + (byte) keyboard_events_size#19) ← (byte) keyboard_event_scan::keycode#5 + (byte) keyboard_events_size#1 ← ++ (byte) keyboard_events_size#19 to:keyboard_event_scan::@4 keyboard_event_scan::@16: scope:[keyboard_event_scan] from keyboard_event_scan::@15 (byte) keyboard_event_scan::row#10 ← phi( keyboard_event_scan::@15/(byte) keyboard_event_scan::row#14 ) (byte) keyboard_event_scan::row_scan#7 ← phi( keyboard_event_scan::@15/(byte) keyboard_event_scan::row_scan#2 ) (byte) keyboard_event_scan::col#5 ← phi( keyboard_event_scan::@15/(byte) keyboard_event_scan::col#4 ) - (byte) keyboard_events_size#14 ← phi( keyboard_event_scan::@15/(byte) keyboard_events_size#26 ) + (byte) keyboard_events_size#20 ← phi( keyboard_event_scan::@15/(byte) keyboard_events_size#38 ) (byte) keyboard_event_scan::keycode#6 ← phi( keyboard_event_scan::@15/(byte) keyboard_event_scan::keycode#10 ) (byte/word/dword~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::keycode#6 | (byte/signed byte/word/signed word/dword/signed dword) 64 - *((byte[8]) keyboard_events#0 + (byte) keyboard_events_size#14) ← (byte/word/dword~) keyboard_event_scan::$12 - (byte) keyboard_events_size#2 ← ++ (byte) keyboard_events_size#14 + *((byte[8]) keyboard_events#0 + (byte) keyboard_events_size#20) ← (byte/word/dword~) keyboard_event_scan::$12 + (byte) keyboard_events_size#2 ← ++ (byte) keyboard_events_size#20 to:keyboard_event_scan::@4 keyboard_event_scan::@18: scope:[keyboard_event_scan] from keyboard_event_scan::@4 - (byte) keyboard_events_size#82 ← phi( keyboard_event_scan::@4/(byte) keyboard_events_size#38 ) + (byte) keyboard_events_size#111 ← phi( keyboard_event_scan::@4/(byte) keyboard_events_size#55 ) (byte) keyboard_event_scan::keycode#15 ← phi( keyboard_event_scan::@4/(byte) keyboard_event_scan::keycode#2 ) (byte) keyboard_event_scan::row#5 ← phi( keyboard_event_scan::@4/(byte) keyboard_event_scan::row#8 ) (byte) keyboard_event_scan::row_scan#3 ← phi( keyboard_event_scan::@4/(byte) keyboard_event_scan::row_scan#5 ) *((byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#5) ← (byte) keyboard_event_scan::row_scan#3 to:keyboard_event_scan::@8 keyboard_event_scan::@8: scope:[keyboard_event_scan] from keyboard_event_scan::@18 keyboard_event_scan::@2 - (byte) keyboard_events_size#77 ← phi( keyboard_event_scan::@18/(byte) keyboard_events_size#82 keyboard_event_scan::@2/(byte) keyboard_events_size#83 ) + (byte) keyboard_events_size#105 ← phi( keyboard_event_scan::@18/(byte) keyboard_events_size#111 keyboard_event_scan::@2/(byte) keyboard_events_size#112 ) (byte) keyboard_event_scan::keycode#14 ← phi( keyboard_event_scan::@18/(byte) keyboard_event_scan::keycode#15 keyboard_event_scan::@2/(byte) keyboard_event_scan::keycode#1 ) (byte) keyboard_event_scan::row#6 ← phi( keyboard_event_scan::@18/(byte) keyboard_event_scan::row#5 keyboard_event_scan::@2/(byte) keyboard_event_scan::row#9 ) (byte) keyboard_event_scan::row#1 ← ++ (byte) keyboard_event_scan::row#6 @@ -4531,15 +4801,15 @@ keyboard_event_scan::@8: scope:[keyboard_event_scan] from keyboard_event_scan:: if((boolean~) keyboard_event_scan::$15) goto keyboard_event_scan::@1 to:keyboard_event_scan::@20 keyboard_event_scan::@20: scope:[keyboard_event_scan] from keyboard_event_scan::@8 - (byte) keyboard_events_size#91 ← phi( keyboard_event_scan::@8/(byte) keyboard_events_size#77 ) + (byte) keyboard_events_size#124 ← phi( keyboard_event_scan::@8/(byte) keyboard_events_size#105 ) (byte) keyboard_modifiers#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0 (byte) keyboard_event_pressed::keycode#0 ← (byte) KEY_LSHIFT#0 call keyboard_event_pressed param-assignment (byte) keyboard_event_pressed::return#0 ← (byte) keyboard_event_pressed::return#5 to:keyboard_event_scan::@26 keyboard_event_scan::@26: scope:[keyboard_event_scan] from keyboard_event_scan::@20 - (byte) keyboard_events_size#90 ← phi( keyboard_event_scan::@20/(byte) keyboard_events_size#91 ) - (byte) keyboard_modifiers#24 ← phi( keyboard_event_scan::@20/(byte) keyboard_modifiers#1 ) + (byte) keyboard_events_size#121 ← phi( keyboard_event_scan::@20/(byte) keyboard_events_size#124 ) + (byte) keyboard_modifiers#34 ← phi( keyboard_event_scan::@20/(byte) keyboard_modifiers#1 ) (byte) keyboard_event_pressed::return#6 ← phi( keyboard_event_scan::@20/(byte) keyboard_event_pressed::return#0 ) (byte~) keyboard_event_scan::$16 ← (byte) keyboard_event_pressed::return#6 (boolean~) keyboard_event_scan::$17 ← (byte~) keyboard_event_scan::$16 != (byte/signed byte/word/signed word/dword/signed dword) 0 @@ -4547,15 +4817,15 @@ keyboard_event_scan::@26: scope:[keyboard_event_scan] from keyboard_event_scan: if((boolean~) keyboard_event_scan::$18) goto keyboard_event_scan::@9 to:keyboard_event_scan::@21 keyboard_event_scan::@9: scope:[keyboard_event_scan] from keyboard_event_scan::@21 keyboard_event_scan::@26 - (byte) keyboard_events_size#88 ← phi( keyboard_event_scan::@21/(byte) keyboard_events_size#89 keyboard_event_scan::@26/(byte) keyboard_events_size#90 ) - (byte) keyboard_modifiers#38 ← phi( keyboard_event_scan::@21/(byte) keyboard_modifiers#2 keyboard_event_scan::@26/(byte) keyboard_modifiers#24 ) + (byte) keyboard_events_size#117 ← phi( keyboard_event_scan::@21/(byte) keyboard_events_size#120 keyboard_event_scan::@26/(byte) keyboard_events_size#121 ) + (byte) keyboard_modifiers#54 ← phi( keyboard_event_scan::@21/(byte) keyboard_modifiers#2 keyboard_event_scan::@26/(byte) keyboard_modifiers#34 ) (byte) keyboard_event_pressed::keycode#1 ← (byte) KEY_RSHIFT#0 call keyboard_event_pressed param-assignment (byte) keyboard_event_pressed::return#1 ← (byte) keyboard_event_pressed::return#5 to:keyboard_event_scan::@27 keyboard_event_scan::@27: scope:[keyboard_event_scan] from keyboard_event_scan::@9 - (byte) keyboard_events_size#85 ← phi( keyboard_event_scan::@9/(byte) keyboard_events_size#88 ) - (byte) keyboard_modifiers#25 ← phi( keyboard_event_scan::@9/(byte) keyboard_modifiers#38 ) + (byte) keyboard_events_size#114 ← phi( keyboard_event_scan::@9/(byte) keyboard_events_size#117 ) + (byte) keyboard_modifiers#35 ← phi( keyboard_event_scan::@9/(byte) keyboard_modifiers#54 ) (byte) keyboard_event_pressed::return#7 ← phi( keyboard_event_scan::@9/(byte) keyboard_event_pressed::return#1 ) (byte~) keyboard_event_scan::$20 ← (byte) keyboard_event_pressed::return#7 (boolean~) keyboard_event_scan::$21 ← (byte~) keyboard_event_scan::$20 != (byte/signed byte/word/signed word/dword/signed dword) 0 @@ -4563,21 +4833,21 @@ keyboard_event_scan::@27: scope:[keyboard_event_scan] from keyboard_event_scan: if((boolean~) keyboard_event_scan::$22) goto keyboard_event_scan::@10 to:keyboard_event_scan::@22 keyboard_event_scan::@21: scope:[keyboard_event_scan] from keyboard_event_scan::@26 - (byte) keyboard_events_size#89 ← phi( keyboard_event_scan::@26/(byte) keyboard_events_size#90 ) - (byte) keyboard_modifiers#12 ← phi( keyboard_event_scan::@26/(byte) keyboard_modifiers#24 ) - (byte~) keyboard_event_scan::$19 ← (byte) keyboard_modifiers#12 | (byte) KEY_MODIFIER_LSHIFT#0 + (byte) keyboard_events_size#120 ← phi( keyboard_event_scan::@26/(byte) keyboard_events_size#121 ) + (byte) keyboard_modifiers#17 ← phi( keyboard_event_scan::@26/(byte) keyboard_modifiers#34 ) + (byte~) keyboard_event_scan::$19 ← (byte) keyboard_modifiers#17 | (byte) KEY_MODIFIER_LSHIFT#0 (byte) keyboard_modifiers#2 ← (byte~) keyboard_event_scan::$19 to:keyboard_event_scan::@9 keyboard_event_scan::@10: scope:[keyboard_event_scan] from keyboard_event_scan::@22 keyboard_event_scan::@27 - (byte) keyboard_events_size#78 ← phi( keyboard_event_scan::@22/(byte) keyboard_events_size#84 keyboard_event_scan::@27/(byte) keyboard_events_size#85 ) - (byte) keyboard_modifiers#39 ← phi( keyboard_event_scan::@22/(byte) keyboard_modifiers#3 keyboard_event_scan::@27/(byte) keyboard_modifiers#25 ) + (byte) keyboard_events_size#106 ← phi( keyboard_event_scan::@22/(byte) keyboard_events_size#113 keyboard_event_scan::@27/(byte) keyboard_events_size#114 ) + (byte) keyboard_modifiers#55 ← phi( keyboard_event_scan::@22/(byte) keyboard_modifiers#3 keyboard_event_scan::@27/(byte) keyboard_modifiers#35 ) (byte) keyboard_event_pressed::keycode#2 ← (byte) KEY_CTRL#0 call keyboard_event_pressed param-assignment (byte) keyboard_event_pressed::return#2 ← (byte) keyboard_event_pressed::return#5 to:keyboard_event_scan::@28 keyboard_event_scan::@28: scope:[keyboard_event_scan] from keyboard_event_scan::@10 - (byte) keyboard_events_size#69 ← phi( keyboard_event_scan::@10/(byte) keyboard_events_size#78 ) - (byte) keyboard_modifiers#26 ← phi( keyboard_event_scan::@10/(byte) keyboard_modifiers#39 ) + (byte) keyboard_events_size#95 ← phi( keyboard_event_scan::@10/(byte) keyboard_events_size#106 ) + (byte) keyboard_modifiers#36 ← phi( keyboard_event_scan::@10/(byte) keyboard_modifiers#55 ) (byte) keyboard_event_pressed::return#8 ← phi( keyboard_event_scan::@10/(byte) keyboard_event_pressed::return#2 ) (byte~) keyboard_event_scan::$24 ← (byte) keyboard_event_pressed::return#8 (boolean~) keyboard_event_scan::$25 ← (byte~) keyboard_event_scan::$24 != (byte/signed byte/word/signed word/dword/signed dword) 0 @@ -4585,21 +4855,21 @@ keyboard_event_scan::@28: scope:[keyboard_event_scan] from keyboard_event_scan: if((boolean~) keyboard_event_scan::$26) goto keyboard_event_scan::@11 to:keyboard_event_scan::@23 keyboard_event_scan::@22: scope:[keyboard_event_scan] from keyboard_event_scan::@27 - (byte) keyboard_events_size#84 ← phi( keyboard_event_scan::@27/(byte) keyboard_events_size#85 ) - (byte) keyboard_modifiers#13 ← phi( keyboard_event_scan::@27/(byte) keyboard_modifiers#25 ) - (byte~) keyboard_event_scan::$23 ← (byte) keyboard_modifiers#13 | (byte) KEY_MODIFIER_RSHIFT#0 + (byte) keyboard_events_size#113 ← phi( keyboard_event_scan::@27/(byte) keyboard_events_size#114 ) + (byte) keyboard_modifiers#18 ← phi( keyboard_event_scan::@27/(byte) keyboard_modifiers#35 ) + (byte~) keyboard_event_scan::$23 ← (byte) keyboard_modifiers#18 | (byte) KEY_MODIFIER_RSHIFT#0 (byte) keyboard_modifiers#3 ← (byte~) keyboard_event_scan::$23 to:keyboard_event_scan::@10 keyboard_event_scan::@11: scope:[keyboard_event_scan] from keyboard_event_scan::@23 keyboard_event_scan::@28 - (byte) keyboard_events_size#57 ← phi( keyboard_event_scan::@23/(byte) keyboard_events_size#68 keyboard_event_scan::@28/(byte) keyboard_events_size#69 ) - (byte) keyboard_modifiers#40 ← phi( keyboard_event_scan::@23/(byte) keyboard_modifiers#4 keyboard_event_scan::@28/(byte) keyboard_modifiers#26 ) + (byte) keyboard_events_size#78 ← phi( keyboard_event_scan::@23/(byte) keyboard_events_size#94 keyboard_event_scan::@28/(byte) keyboard_events_size#95 ) + (byte) keyboard_modifiers#56 ← phi( keyboard_event_scan::@23/(byte) keyboard_modifiers#4 keyboard_event_scan::@28/(byte) keyboard_modifiers#36 ) (byte) keyboard_event_pressed::keycode#3 ← (byte) KEY_COMMODORE#0 call keyboard_event_pressed param-assignment (byte) keyboard_event_pressed::return#3 ← (byte) keyboard_event_pressed::return#5 to:keyboard_event_scan::@29 keyboard_event_scan::@29: scope:[keyboard_event_scan] from keyboard_event_scan::@11 - (byte) keyboard_events_size#39 ← phi( keyboard_event_scan::@11/(byte) keyboard_events_size#57 ) - (byte) keyboard_modifiers#27 ← phi( keyboard_event_scan::@11/(byte) keyboard_modifiers#40 ) + (byte) keyboard_events_size#56 ← phi( keyboard_event_scan::@11/(byte) keyboard_events_size#78 ) + (byte) keyboard_modifiers#37 ← phi( keyboard_event_scan::@11/(byte) keyboard_modifiers#56 ) (byte) keyboard_event_pressed::return#9 ← phi( keyboard_event_scan::@11/(byte) keyboard_event_pressed::return#3 ) (byte~) keyboard_event_scan::$28 ← (byte) keyboard_event_pressed::return#9 (boolean~) keyboard_event_scan::$29 ← (byte~) keyboard_event_scan::$28 != (byte/signed byte/word/signed word/dword/signed dword) 0 @@ -4607,26 +4877,26 @@ keyboard_event_scan::@29: scope:[keyboard_event_scan] from keyboard_event_scan: if((boolean~) keyboard_event_scan::$30) goto keyboard_event_scan::@12 to:keyboard_event_scan::@24 keyboard_event_scan::@23: scope:[keyboard_event_scan] from keyboard_event_scan::@28 - (byte) keyboard_events_size#68 ← phi( keyboard_event_scan::@28/(byte) keyboard_events_size#69 ) - (byte) keyboard_modifiers#14 ← phi( keyboard_event_scan::@28/(byte) keyboard_modifiers#26 ) - (byte~) keyboard_event_scan::$27 ← (byte) keyboard_modifiers#14 | (byte) KEY_MODIFIER_CTRL#0 + (byte) keyboard_events_size#94 ← phi( keyboard_event_scan::@28/(byte) keyboard_events_size#95 ) + (byte) keyboard_modifiers#19 ← phi( keyboard_event_scan::@28/(byte) keyboard_modifiers#36 ) + (byte~) keyboard_event_scan::$27 ← (byte) keyboard_modifiers#19 | (byte) KEY_MODIFIER_CTRL#0 (byte) keyboard_modifiers#4 ← (byte~) keyboard_event_scan::$27 to:keyboard_event_scan::@11 keyboard_event_scan::@12: scope:[keyboard_event_scan] from keyboard_event_scan::@29 - (byte) keyboard_modifiers#28 ← phi( keyboard_event_scan::@29/(byte) keyboard_modifiers#27 ) - (byte) keyboard_events_size#27 ← phi( keyboard_event_scan::@29/(byte) keyboard_events_size#39 ) + (byte) keyboard_modifiers#38 ← phi( keyboard_event_scan::@29/(byte) keyboard_modifiers#37 ) + (byte) keyboard_events_size#39 ← phi( keyboard_event_scan::@29/(byte) keyboard_events_size#56 ) to:keyboard_event_scan::@return keyboard_event_scan::@24: scope:[keyboard_event_scan] from keyboard_event_scan::@29 - (byte) keyboard_events_size#28 ← phi( keyboard_event_scan::@29/(byte) keyboard_events_size#39 ) - (byte) keyboard_modifiers#15 ← phi( keyboard_event_scan::@29/(byte) keyboard_modifiers#27 ) - (byte~) keyboard_event_scan::$31 ← (byte) keyboard_modifiers#15 | (byte) KEY_MODIFIER_COMMODORE#0 + (byte) keyboard_events_size#40 ← phi( keyboard_event_scan::@29/(byte) keyboard_events_size#56 ) + (byte) keyboard_modifiers#20 ← phi( keyboard_event_scan::@29/(byte) keyboard_modifiers#37 ) + (byte~) keyboard_event_scan::$31 ← (byte) keyboard_modifiers#20 | (byte) KEY_MODIFIER_COMMODORE#0 (byte) keyboard_modifiers#5 ← (byte~) keyboard_event_scan::$31 to:keyboard_event_scan::@return keyboard_event_scan::@return: scope:[keyboard_event_scan] from keyboard_event_scan::@12 keyboard_event_scan::@24 - (byte) keyboard_modifiers#16 ← phi( keyboard_event_scan::@12/(byte) keyboard_modifiers#28 keyboard_event_scan::@24/(byte) keyboard_modifiers#5 ) - (byte) keyboard_events_size#15 ← phi( keyboard_event_scan::@12/(byte) keyboard_events_size#27 keyboard_event_scan::@24/(byte) keyboard_events_size#28 ) - (byte) keyboard_events_size#3 ← (byte) keyboard_events_size#15 - (byte) keyboard_modifiers#6 ← (byte) keyboard_modifiers#16 + (byte) keyboard_modifiers#21 ← phi( keyboard_event_scan::@12/(byte) keyboard_modifiers#38 keyboard_event_scan::@24/(byte) keyboard_modifiers#5 ) + (byte) keyboard_events_size#21 ← phi( keyboard_event_scan::@12/(byte) keyboard_events_size#39 keyboard_event_scan::@24/(byte) keyboard_events_size#40 ) + (byte) keyboard_events_size#3 ← (byte) keyboard_events_size#21 + (byte) keyboard_modifiers#6 ← (byte) keyboard_modifiers#21 return to:@return keyboard_event_pressed: scope:[keyboard_event_pressed] from keyboard_event_scan::@10 keyboard_event_scan::@11 keyboard_event_scan::@20 keyboard_event_scan::@9 @@ -4642,229 +4912,154 @@ keyboard_event_pressed::@return: scope:[keyboard_event_pressed] from keyboard_e (byte) keyboard_event_pressed::return#5 ← (byte) keyboard_event_pressed::return#10 return to:@return -keyboard_event_get: scope:[keyboard_event_get] from form_control::@30 - (byte) keyboard_events_size#16 ← phi( form_control::@30/(byte) keyboard_events_size#8 ) - (boolean~) keyboard_event_get::$0 ← (byte) keyboard_events_size#16 == (byte/signed byte/word/signed word/dword/signed dword) 0 +keyboard_event_get: scope:[keyboard_event_get] from form_control::@34 gfx_mode::@36 + (byte) keyboard_events_size#22 ← phi( form_control::@34/(byte) keyboard_events_size#14 gfx_mode::@36/(byte) keyboard_events_size#9 ) + (boolean~) keyboard_event_get::$0 ← (byte) keyboard_events_size#22 == (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) keyboard_event_get::$1 ← ! (boolean~) keyboard_event_get::$0 if((boolean~) keyboard_event_get::$1) goto keyboard_event_get::@1 to:keyboard_event_get::@3 keyboard_event_get::@1: scope:[keyboard_event_get] from keyboard_event_get - (byte) keyboard_events_size#17 ← phi( keyboard_event_get/(byte) keyboard_events_size#16 ) - (byte) keyboard_events_size#4 ← -- (byte) keyboard_events_size#17 + (byte) keyboard_events_size#23 ← phi( keyboard_event_get/(byte) keyboard_events_size#22 ) + (byte) keyboard_events_size#4 ← -- (byte) keyboard_events_size#23 (byte) keyboard_event_get::return#0 ← *((byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) to:keyboard_event_get::@return keyboard_event_get::@3: scope:[keyboard_event_get] from keyboard_event_get - (byte) keyboard_events_size#29 ← phi( keyboard_event_get/(byte) keyboard_events_size#16 ) + (byte) keyboard_events_size#41 ← phi( keyboard_event_get/(byte) keyboard_events_size#22 ) (byte) keyboard_event_get::return#1 ← (byte/word/signed word/dword/signed dword) 255 to:keyboard_event_get::@return keyboard_event_get::@return: scope:[keyboard_event_get] from keyboard_event_get::@1 keyboard_event_get::@3 - (byte) keyboard_events_size#18 ← phi( keyboard_event_get::@1/(byte) keyboard_events_size#4 keyboard_event_get::@3/(byte) keyboard_events_size#29 ) - (byte) keyboard_event_get::return#4 ← phi( keyboard_event_get::@1/(byte) keyboard_event_get::return#0 keyboard_event_get::@3/(byte) keyboard_event_get::return#1 ) - (byte) keyboard_event_get::return#2 ← (byte) keyboard_event_get::return#4 - (byte) keyboard_events_size#5 ← (byte) keyboard_events_size#18 + (byte) keyboard_events_size#24 ← phi( keyboard_event_get::@1/(byte) keyboard_events_size#4 keyboard_event_get::@3/(byte) keyboard_events_size#41 ) + (byte) keyboard_event_get::return#5 ← phi( keyboard_event_get::@1/(byte) keyboard_event_get::return#0 keyboard_event_get::@3/(byte) keyboard_event_get::return#1 ) + (byte) keyboard_event_get::return#2 ← (byte) keyboard_event_get::return#5 + (byte) keyboard_events_size#5 ← (byte) keyboard_events_size#24 return to:@return -main: scope:[main] from @32 - (byte) form_fields_cnt#27 ← phi( @32/(byte) form_fields_cnt#30 ) - (byte) form_field_idx#44 ← phi( @32/(byte) form_field_idx#29 ) - (byte) keyboard_modifiers#68 ← phi( @32/(byte) keyboard_modifiers#37 ) - (byte) keyboard_events_size#79 ← phi( @32/(byte) keyboard_events_size#36 ) - (signed byte) form_cursor_count#38 ← phi( @32/(signed byte) form_cursor_count#19 ) - (byte*) print_char_cursor#46 ← phi( @32/(byte*) print_char_cursor#38 ) - (byte*) print_line_cursor#45 ← phi( @32/(byte*) print_line_cursor#36 ) - (byte*) print_screen#26 ← phi( @32/(byte*) print_screen#21 ) +main: scope:[main] from @33 + (byte) form_fields_cnt#32 ← phi( @33/(byte) form_fields_cnt#35 ) + (byte) form_field_idx#55 ← phi( @33/(byte) form_field_idx#36 ) + (byte) keyboard_modifiers#95 ← phi( @33/(byte) keyboard_modifiers#53 ) + (byte) keyboard_events_size#107 ← phi( @33/(byte) keyboard_events_size#53 ) + (signed byte) form_cursor_count#48 ← phi( @33/(signed byte) form_cursor_count#26 ) + (byte*) print_char_cursor#53 ← phi( @33/(byte*) print_char_cursor#45 ) + (byte*) print_line_cursor#52 ← phi( @33/(byte*) print_line_cursor#43 ) + (byte*) print_screen#30 ← phi( @33/(byte*) print_screen#24 ) asm { sei } *((byte*) DTV_FEATURE#0) ← (byte) DTV_FEATURE_ENABLE#0 call keyboard_init param-assignment - to:main::@19 -main::@19: scope:[main] from main - (byte) form_fields_cnt#25 ← phi( main/(byte) form_fields_cnt#27 ) - (byte) form_field_idx#41 ← phi( main/(byte) form_field_idx#44 ) - (byte) keyboard_modifiers#64 ← phi( main/(byte) keyboard_modifiers#68 ) - (byte) keyboard_events_size#70 ← phi( main/(byte) keyboard_events_size#79 ) - (signed byte) form_cursor_count#34 ← phi( main/(signed byte) form_cursor_count#38 ) - (byte*) print_char_cursor#42 ← phi( main/(byte*) print_char_cursor#46 ) - (byte*) print_line_cursor#39 ← phi( main/(byte*) print_line_cursor#45 ) - (byte*) print_screen#22 ← phi( main/(byte*) print_screen#26 ) + to:main::@7 +main::@7: scope:[main] from main + (byte) form_fields_cnt#30 ← phi( main/(byte) form_fields_cnt#32 ) + (byte) form_field_idx#52 ← phi( main/(byte) form_field_idx#55 ) + (byte) keyboard_modifiers#89 ← phi( main/(byte) keyboard_modifiers#95 ) + (byte) keyboard_events_size#96 ← phi( main/(byte) keyboard_events_size#107 ) + (signed byte) form_cursor_count#44 ← phi( main/(signed byte) form_cursor_count#48 ) + (byte*) print_char_cursor#49 ← phi( main/(byte*) print_char_cursor#53 ) + (byte*) print_line_cursor#46 ← phi( main/(byte*) print_line_cursor#52 ) + (byte*) print_screen#25 ← phi( main/(byte*) print_screen#30 ) call gfx_init param-assignment - to:main::@20 -main::@20: scope:[main] from main::@19 - (byte) form_fields_cnt#23 ← phi( main::@19/(byte) form_fields_cnt#25 ) - (byte) form_field_idx#37 ← phi( main::@19/(byte) form_field_idx#41 ) - (byte) keyboard_modifiers#55 ← phi( main::@19/(byte) keyboard_modifiers#64 ) - (byte) keyboard_events_size#58 ← phi( main::@19/(byte) keyboard_events_size#70 ) - (signed byte) form_cursor_count#28 ← phi( main::@19/(signed byte) form_cursor_count#34 ) - (byte*) print_char_cursor#34 ← phi( main::@19/(byte*) print_char_cursor#42 ) - (byte*) print_line_cursor#32 ← phi( main::@19/(byte*) print_line_cursor#39 ) - (byte*) print_screen#16 ← phi( main::@19/(byte*) print_screen#22 ) + to:main::@8 +main::@8: scope:[main] from main::@7 + (byte) form_fields_cnt#27 ← phi( main::@7/(byte) form_fields_cnt#30 ) + (byte) form_field_idx#47 ← phi( main::@7/(byte) form_field_idx#52 ) + (byte) keyboard_modifiers#76 ← phi( main::@7/(byte) keyboard_modifiers#89 ) + (byte) keyboard_events_size#79 ← phi( main::@7/(byte) keyboard_events_size#96 ) + (signed byte) form_cursor_count#37 ← phi( main::@7/(signed byte) form_cursor_count#44 ) + (byte*) print_char_cursor#41 ← phi( main::@7/(byte*) print_char_cursor#49 ) + (byte*) print_line_cursor#39 ← phi( main::@7/(byte*) print_line_cursor#46 ) + (byte*) print_screen#19 ← phi( main::@7/(byte*) print_screen#25 ) call form_init param-assignment - to:main::@21 -main::@21: scope:[main] from main::@20 - (byte) form_fields_cnt#37 ← phi( main::@20/(byte) form_fields_cnt#23 ) - (byte) form_field_idx#30 ← phi( main::@20/(byte) form_field_idx#37 ) - (byte) keyboard_modifiers#41 ← phi( main::@20/(byte) keyboard_modifiers#55 ) - (byte) keyboard_events_size#40 ← phi( main::@20/(byte) keyboard_events_size#58 ) - (signed byte) form_cursor_count#20 ← phi( main::@20/(signed byte) form_cursor_count#28 ) - (byte*) print_char_cursor#22 ← phi( main::@20/(byte*) print_char_cursor#14 ) - (byte*) print_line_cursor#21 ← phi( main::@20/(byte*) print_line_cursor#13 ) - (byte*) print_screen#10 ← phi( main::@20/(byte*) print_screen#7 ) - (byte*) print_screen#3 ← (byte*) print_screen#10 - (byte*) print_line_cursor#7 ← (byte*) print_line_cursor#21 - (byte*) print_char_cursor#8 ← (byte*) print_char_cursor#22 + to:main::@9 +main::@9: scope:[main] from main::@8 + (byte) form_fields_cnt#43 ← phi( main::@8/(byte) form_fields_cnt#27 ) + (byte) form_field_idx#38 ← phi( main::@8/(byte) form_field_idx#47 ) + (byte) keyboard_modifiers#57 ← phi( main::@8/(byte) keyboard_modifiers#76 ) + (byte) keyboard_events_size#57 ← phi( main::@8/(byte) keyboard_events_size#79 ) + (signed byte) form_cursor_count#28 ← phi( main::@8/(signed byte) form_cursor_count#37 ) + (byte*) print_char_cursor#27 ← phi( main::@8/(byte*) print_char_cursor#18 ) + (byte*) print_line_cursor#26 ← phi( main::@8/(byte*) print_line_cursor#17 ) + (byte*) print_screen#13 ← phi( main::@8/(byte*) print_screen#7 ) + (byte*) print_screen#3 ← (byte*) print_screen#13 + (byte*) print_line_cursor#9 ← (byte*) print_line_cursor#26 + (byte*) print_char_cursor#10 ← (byte*) print_char_cursor#27 to:main::@1 -main::@1: scope:[main] from main::@21 main::@24 - (byte) form_fields_cnt#36 ← phi( main::@21/(byte) form_fields_cnt#37 main::@24/(byte) form_fields_cnt#38 ) - (byte) form_field_idx#22 ← phi( main::@21/(byte) form_field_idx#30 main::@24/(byte) form_field_idx#31 ) - (byte) keyboard_modifiers#30 ← phi( main::@21/(byte) keyboard_modifiers#41 main::@24/(byte) keyboard_modifiers#42 ) - (byte) keyboard_events_size#31 ← phi( main::@21/(byte) keyboard_events_size#40 main::@24/(byte) keyboard_events_size#41 ) - (signed byte) form_cursor_count#15 ← phi( main::@21/(signed byte) form_cursor_count#20 main::@24/(signed byte) form_cursor_count#21 ) - (byte*) print_char_cursor#35 ← phi( main::@21/(byte*) print_char_cursor#8 main::@24/(byte*) print_char_cursor#43 ) - (byte*) print_line_cursor#33 ← phi( main::@21/(byte*) print_line_cursor#7 main::@24/(byte*) print_line_cursor#40 ) - (byte*) print_screen#17 ← phi( main::@21/(byte*) print_screen#3 main::@24/(byte*) print_screen#23 ) +main::@1: scope:[main] from main::@11 main::@9 + (byte) form_fields_cnt#41 ← phi( main::@11/(byte) form_fields_cnt#42 main::@9/(byte) form_fields_cnt#43 ) + (byte) form_field_idx#26 ← phi( main::@11/(byte) form_field_idx#37 main::@9/(byte) form_field_idx#38 ) + (byte) keyboard_modifiers#40 ← phi( main::@11/(byte) keyboard_modifiers#8 main::@9/(byte) keyboard_modifiers#57 ) + (byte) keyboard_events_size#43 ← phi( main::@11/(byte) keyboard_events_size#7 main::@9/(byte) keyboard_events_size#57 ) + (signed byte) form_cursor_count#19 ← phi( main::@11/(signed byte) form_cursor_count#27 main::@9/(signed byte) form_cursor_count#28 ) + (byte*) print_char_cursor#42 ← phi( main::@11/(byte*) print_char_cursor#50 main::@9/(byte*) print_char_cursor#10 ) + (byte*) print_line_cursor#40 ← phi( main::@11/(byte*) print_line_cursor#47 main::@9/(byte*) print_line_cursor#9 ) + (byte*) print_screen#20 ← phi( main::@11/(byte*) print_screen#26 main::@9/(byte*) print_screen#3 ) if(true) goto main::@2 to:main::@return main::@2: scope:[main] from main::@1 - (byte) form_fields_cnt#34 ← phi( main::@1/(byte) form_fields_cnt#36 ) - (byte*) print_char_cursor#58 ← phi( main::@1/(byte*) print_char_cursor#35 ) - (byte*) print_line_cursor#58 ← phi( main::@1/(byte*) print_line_cursor#33 ) - (byte*) print_screen#39 ← phi( main::@1/(byte*) print_screen#17 ) - (byte) form_field_idx#48 ← phi( main::@1/(byte) form_field_idx#22 ) - (byte) keyboard_modifiers#71 ← phi( main::@1/(byte) keyboard_modifiers#30 ) - (byte) keyboard_events_size#86 ← phi( main::@1/(byte) keyboard_events_size#31 ) - (signed byte) form_cursor_count#41 ← phi( main::@1/(signed byte) form_cursor_count#15 ) - to:main::@4 -main::@4: scope:[main] from main::@2 main::@5 - (byte) form_fields_cnt#32 ← phi( main::@2/(byte) form_fields_cnt#34 main::@5/(byte) form_fields_cnt#35 ) - (byte*) print_char_cursor#57 ← phi( main::@2/(byte*) print_char_cursor#58 main::@5/(byte*) print_char_cursor#59 ) - (byte*) print_line_cursor#57 ← phi( main::@2/(byte*) print_line_cursor#58 main::@5/(byte*) print_line_cursor#59 ) - (byte*) print_screen#38 ← phi( main::@2/(byte*) print_screen#39 main::@5/(byte*) print_screen#40 ) - (byte) form_field_idx#45 ← phi( main::@2/(byte) form_field_idx#48 main::@5/(byte) form_field_idx#49 ) - (byte) keyboard_modifiers#69 ← phi( main::@2/(byte) keyboard_modifiers#71 main::@5/(byte) keyboard_modifiers#72 ) - (byte) keyboard_events_size#80 ← phi( main::@2/(byte) keyboard_events_size#86 main::@5/(byte) keyboard_events_size#87 ) - (signed byte) form_cursor_count#39 ← phi( main::@2/(signed byte) form_cursor_count#41 main::@5/(signed byte) form_cursor_count#42 ) - (byte/word/signed word/dword/signed dword~) main::$3 ← (byte/signed byte/word/signed word/dword/signed dword) 8 * (byte/signed byte/word/signed word/dword/signed dword) 16 - (byte/word/signed word/dword/signed dword~) main::$4 ← (byte/signed byte/word/signed word/dword/signed dword) 48 + (byte/word/signed word/dword/signed dword~) main::$3 - (boolean~) main::$5 ← *((byte*) RASTER#0) != (byte/word/signed word/dword/signed dword~) main::$4 - if((boolean~) main::$5) goto main::@5 - to:main::@6 -main::@5: scope:[main] from main::@4 - (byte) form_fields_cnt#35 ← phi( main::@4/(byte) form_fields_cnt#32 ) - (byte*) print_char_cursor#59 ← phi( main::@4/(byte*) print_char_cursor#57 ) - (byte*) print_line_cursor#59 ← phi( main::@4/(byte*) print_line_cursor#57 ) - (byte*) print_screen#40 ← phi( main::@4/(byte*) print_screen#38 ) - (byte) form_field_idx#49 ← phi( main::@4/(byte) form_field_idx#45 ) - (byte) keyboard_modifiers#72 ← phi( main::@4/(byte) keyboard_modifiers#69 ) - (byte) keyboard_events_size#87 ← phi( main::@4/(byte) keyboard_events_size#80 ) - (signed byte) form_cursor_count#42 ← phi( main::@4/(signed byte) form_cursor_count#39 ) - to:main::@4 -main::@6: scope:[main] from main::@4 - (byte) form_fields_cnt#31 ← phi( main::@4/(byte) form_fields_cnt#32 ) - (byte*) print_char_cursor#56 ← phi( main::@4/(byte*) print_char_cursor#57 ) - (byte*) print_line_cursor#56 ← phi( main::@4/(byte*) print_line_cursor#57 ) - (byte*) print_screen#37 ← phi( main::@4/(byte*) print_screen#38 ) - (byte) form_field_idx#42 ← phi( main::@4/(byte) form_field_idx#45 ) - (byte) keyboard_modifiers#65 ← phi( main::@4/(byte) keyboard_modifiers#69 ) - (byte) keyboard_events_size#71 ← phi( main::@4/(byte) keyboard_events_size#80 ) - (signed byte) form_cursor_count#35 ← phi( main::@4/(signed byte) form_cursor_count#39 ) + (byte) form_fields_cnt#40 ← phi( main::@1/(byte) form_fields_cnt#41 ) + (byte*) print_char_cursor#56 ← phi( main::@1/(byte*) print_char_cursor#42 ) + (byte*) print_line_cursor#56 ← phi( main::@1/(byte*) print_line_cursor#40 ) + (byte*) print_screen#34 ← phi( main::@1/(byte*) print_screen#20 ) + (byte) form_field_idx#25 ← phi( main::@1/(byte) form_field_idx#26 ) + (byte) keyboard_modifiers#39 ← phi( main::@1/(byte) keyboard_modifiers#40 ) + (byte) keyboard_events_size#42 ← phi( main::@1/(byte) keyboard_events_size#43 ) + (signed byte) form_cursor_count#18 ← phi( main::@1/(signed byte) form_cursor_count#19 ) call form_mode param-assignment - to:main::@22 -main::@22: scope:[main] from main::@6 - (byte) form_fields_cnt#28 ← phi( main::@6/(byte) form_fields_cnt#31 ) - (byte*) print_char_cursor#54 ← phi( main::@6/(byte*) print_char_cursor#56 ) - (byte*) print_line_cursor#54 ← phi( main::@6/(byte*) print_line_cursor#56 ) - (byte*) print_screen#35 ← phi( main::@6/(byte*) print_screen#37 ) - (byte) form_field_idx#38 ← phi( main::@6/(byte) form_field_idx#42 ) - (byte) keyboard_modifiers#56 ← phi( main::@6/(byte) keyboard_modifiers#65 ) - (byte) keyboard_events_size#59 ← phi( main::@6/(byte) keyboard_events_size#71 ) - (signed byte) form_cursor_count#29 ← phi( main::@6/(signed byte) form_cursor_count#35 ) - to:main::@7 -main::@7: scope:[main] from main::@22 main::@8 - (byte) form_fields_cnt#26 ← phi( main::@22/(byte) form_fields_cnt#28 main::@8/(byte) form_fields_cnt#29 ) - (byte*) print_char_cursor#52 ← phi( main::@22/(byte*) print_char_cursor#54 main::@8/(byte*) print_char_cursor#55 ) - (byte*) print_line_cursor#52 ← phi( main::@22/(byte*) print_line_cursor#54 main::@8/(byte*) print_line_cursor#55 ) - (byte*) print_screen#33 ← phi( main::@22/(byte*) print_screen#35 main::@8/(byte*) print_screen#36 ) - (byte) form_field_idx#32 ← phi( main::@22/(byte) form_field_idx#38 main::@8/(byte) form_field_idx#39 ) - (byte) keyboard_modifiers#43 ← phi( main::@22/(byte) keyboard_modifiers#56 main::@8/(byte) keyboard_modifiers#57 ) - (byte) keyboard_events_size#42 ← phi( main::@22/(byte) keyboard_events_size#59 main::@8/(byte) keyboard_events_size#60 ) - (signed byte) form_cursor_count#22 ← phi( main::@22/(signed byte) form_cursor_count#29 main::@8/(signed byte) form_cursor_count#30 ) - (boolean~) main::$7 ← *((byte*) RASTER#0) != (byte/word/signed word/dword/signed dword) 255 - if((boolean~) main::$7) goto main::@8 - to:main::@9 -main::@8: scope:[main] from main::@7 - (byte) form_fields_cnt#29 ← phi( main::@7/(byte) form_fields_cnt#26 ) - (byte*) print_char_cursor#55 ← phi( main::@7/(byte*) print_char_cursor#52 ) - (byte*) print_line_cursor#55 ← phi( main::@7/(byte*) print_line_cursor#52 ) - (byte*) print_screen#36 ← phi( main::@7/(byte*) print_screen#33 ) - (byte) form_field_idx#39 ← phi( main::@7/(byte) form_field_idx#32 ) - (byte) keyboard_modifiers#57 ← phi( main::@7/(byte) keyboard_modifiers#43 ) - (byte) keyboard_events_size#60 ← phi( main::@7/(byte) keyboard_events_size#42 ) - (signed byte) form_cursor_count#30 ← phi( main::@7/(signed byte) form_cursor_count#22 ) - to:main::@7 -main::@9: scope:[main] from main::@7 - (byte) form_fields_cnt#24 ← phi( main::@7/(byte) form_fields_cnt#26 ) - (byte*) print_char_cursor#49 ← phi( main::@7/(byte*) print_char_cursor#52 ) - (byte*) print_line_cursor#49 ← phi( main::@7/(byte*) print_line_cursor#52 ) - (byte*) print_screen#30 ← phi( main::@7/(byte*) print_screen#33 ) - (byte) form_field_idx#21 ← phi( main::@7/(byte) form_field_idx#32 ) - (byte) keyboard_modifiers#29 ← phi( main::@7/(byte) keyboard_modifiers#43 ) - (byte) keyboard_events_size#30 ← phi( main::@7/(byte) keyboard_events_size#42 ) - (signed byte) form_cursor_count#14 ← phi( main::@7/(signed byte) form_cursor_count#22 ) - call form_control param-assignment - to:main::@23 -main::@23: scope:[main] from main::@9 - (byte) form_fields_cnt#39 ← phi( main::@9/(byte) form_fields_cnt#24 ) - (byte*) print_char_cursor#47 ← phi( main::@9/(byte*) print_char_cursor#49 ) - (byte*) print_line_cursor#46 ← phi( main::@9/(byte*) print_line_cursor#49 ) - (byte*) print_screen#27 ← phi( main::@9/(byte*) print_screen#30 ) - (byte) form_field_idx#9 ← phi( main::@9/(byte) form_field_idx#7 ) - (byte) keyboard_modifiers#17 ← phi( main::@9/(byte) keyboard_modifiers#10 ) - (byte) keyboard_events_size#19 ← phi( main::@9/(byte) keyboard_events_size#10 ) - (signed byte) form_cursor_count#8 ← phi( main::@9/(signed byte) form_cursor_count#6 ) - (signed byte) form_cursor_count#0 ← (signed byte) form_cursor_count#8 - (byte) keyboard_events_size#6 ← (byte) keyboard_events_size#19 - (byte) keyboard_modifiers#7 ← (byte) keyboard_modifiers#17 - (byte) form_field_idx#0 ← (byte) form_field_idx#9 + to:main::@10 +main::@10: scope:[main] from main::@2 + (byte) form_fields_cnt#44 ← phi( main::@2/(byte) form_fields_cnt#40 ) + (byte*) print_char_cursor#54 ← phi( main::@2/(byte*) print_char_cursor#56 ) + (byte*) print_line_cursor#53 ← phi( main::@2/(byte*) print_line_cursor#56 ) + (byte*) print_screen#31 ← phi( main::@2/(byte*) print_screen#34 ) + (byte) form_field_idx#11 ← phi( main::@2/(byte) form_field_idx#3 ) + (byte) keyboard_modifiers#22 ← phi( main::@2/(byte) keyboard_modifiers#13 ) + (byte) keyboard_events_size#25 ← phi( main::@2/(byte) keyboard_events_size#13 ) + (signed byte) form_cursor_count#10 ← phi( main::@2/(signed byte) form_cursor_count#3 ) + (signed byte) form_cursor_count#0 ← (signed byte) form_cursor_count#10 + (byte) keyboard_events_size#6 ← (byte) keyboard_events_size#25 + (byte) keyboard_modifiers#7 ← (byte) keyboard_modifiers#22 + (byte) form_field_idx#0 ← (byte) form_field_idx#11 call gfx_mode param-assignment - to:main::@24 -main::@24: scope:[main] from main::@23 - (byte) form_fields_cnt#38 ← phi( main::@23/(byte) form_fields_cnt#39 ) - (byte) form_field_idx#31 ← phi( main::@23/(byte) form_field_idx#0 ) - (byte) keyboard_modifiers#42 ← phi( main::@23/(byte) keyboard_modifiers#7 ) - (byte) keyboard_events_size#41 ← phi( main::@23/(byte) keyboard_events_size#6 ) - (signed byte) form_cursor_count#21 ← phi( main::@23/(signed byte) form_cursor_count#0 ) - (byte*) print_char_cursor#43 ← phi( main::@23/(byte*) print_char_cursor#47 ) - (byte*) print_line_cursor#40 ← phi( main::@23/(byte*) print_line_cursor#46 ) - (byte*) print_screen#23 ← phi( main::@23/(byte*) print_screen#27 ) + to:main::@11 +main::@11: scope:[main] from main::@10 + (byte) form_fields_cnt#42 ← phi( main::@10/(byte) form_fields_cnt#44 ) + (byte) form_field_idx#37 ← phi( main::@10/(byte) form_field_idx#0 ) + (signed byte) form_cursor_count#27 ← phi( main::@10/(signed byte) form_cursor_count#0 ) + (byte*) print_char_cursor#50 ← phi( main::@10/(byte*) print_char_cursor#54 ) + (byte*) print_line_cursor#47 ← phi( main::@10/(byte*) print_line_cursor#53 ) + (byte*) print_screen#26 ← phi( main::@10/(byte*) print_screen#31 ) + (byte) keyboard_modifiers#23 ← phi( main::@10/(byte) keyboard_modifiers#11 ) + (byte) keyboard_events_size#26 ← phi( main::@10/(byte) keyboard_events_size#11 ) + (byte) keyboard_events_size#7 ← (byte) keyboard_events_size#26 + (byte) keyboard_modifiers#8 ← (byte) keyboard_modifiers#23 to:main::@1 main::@return: scope:[main] from main::@1 - (byte) form_field_idx#10 ← phi( main::@1/(byte) form_field_idx#22 ) - (byte) keyboard_modifiers#18 ← phi( main::@1/(byte) keyboard_modifiers#30 ) - (byte) keyboard_events_size#20 ← phi( main::@1/(byte) keyboard_events_size#31 ) - (signed byte) form_cursor_count#9 ← phi( main::@1/(signed byte) form_cursor_count#15 ) - (byte*) print_char_cursor#23 ← phi( main::@1/(byte*) print_char_cursor#35 ) - (byte*) print_line_cursor#22 ← phi( main::@1/(byte*) print_line_cursor#33 ) - (byte*) print_screen#11 ← phi( main::@1/(byte*) print_screen#17 ) - (byte*) print_screen#4 ← (byte*) print_screen#11 - (byte*) print_line_cursor#8 ← (byte*) print_line_cursor#22 - (byte*) print_char_cursor#9 ← (byte*) print_char_cursor#23 - (signed byte) form_cursor_count#1 ← (signed byte) form_cursor_count#9 - (byte) keyboard_events_size#7 ← (byte) keyboard_events_size#20 - (byte) keyboard_modifiers#8 ← (byte) keyboard_modifiers#18 - (byte) form_field_idx#1 ← (byte) form_field_idx#10 + (byte) form_field_idx#12 ← phi( main::@1/(byte) form_field_idx#26 ) + (byte) keyboard_modifiers#24 ← phi( main::@1/(byte) keyboard_modifiers#40 ) + (byte) keyboard_events_size#27 ← phi( main::@1/(byte) keyboard_events_size#43 ) + (signed byte) form_cursor_count#11 ← phi( main::@1/(signed byte) form_cursor_count#19 ) + (byte*) print_char_cursor#28 ← phi( main::@1/(byte*) print_char_cursor#42 ) + (byte*) print_line_cursor#27 ← phi( main::@1/(byte*) print_line_cursor#40 ) + (byte*) print_screen#14 ← phi( main::@1/(byte*) print_screen#20 ) + (byte*) print_screen#4 ← (byte*) print_screen#14 + (byte*) print_line_cursor#10 ← (byte*) print_line_cursor#27 + (byte*) print_char_cursor#11 ← (byte*) print_char_cursor#28 + (signed byte) form_cursor_count#1 ← (signed byte) form_cursor_count#11 + (byte) keyboard_events_size#8 ← (byte) keyboard_events_size#27 + (byte) keyboard_modifiers#9 ← (byte) keyboard_modifiers#24 + (byte) form_field_idx#1 ← (byte) form_field_idx#12 return to:@return @23: scope:[] from @19 - (byte) keyboard_modifiers#58 ← phi( @19/(byte) keyboard_modifiers#0 ) - (byte) keyboard_events_size#61 ← phi( @19/(byte) keyboard_events_size#0 ) - (byte*) print_char_cursor#48 ← phi( @19/(byte*) print_char_cursor#50 ) - (byte*) print_line_cursor#47 ← phi( @19/(byte*) print_line_cursor#50 ) - (byte*) print_screen#29 ← phi( @19/(byte*) print_screen#31 ) + (byte) keyboard_modifiers#83 ← phi( @19/(byte) keyboard_modifiers#0 ) + (byte) keyboard_events_size#86 ← phi( @19/(byte) keyboard_events_size#0 ) + (byte*) print_char_cursor#55 ← phi( @19/(byte*) print_char_cursor#57 ) + (byte*) print_line_cursor#54 ← phi( @19/(byte*) print_line_cursor#57 ) + (byte*) print_screen#33 ← phi( @19/(byte*) print_screen#35 ) + (byte*) VIC_SCREEN_STDCHAR#0 ← ((byte*)) (word/dword/signed dword) 33792 (dword) PLANE_8BPP_CHUNKY#0 ← (dword/signed dword) 131072 (byte*) FORM_SCREEN#0 ← ((byte*)) (word/dword/signed dword) 32768 (byte*) FORM_CHARSET#0 ← ((byte*)) (word/dword/signed dword) 38912 - (word/signed word/dword/signed dword~) $1 ← (byte/signed byte/word/signed word/dword/signed dword) 16 * (byte/signed byte/word/signed word/dword/signed dword) 40 - (word) FORM_OFFSET#0 ← (word/signed word/dword/signed dword~) $1 - (string~) $2 ← (const string) $57 + (const string) $58 + (string~) $1 ← (const string) $56 + (const string) $57 + (string~) $2 ← (string~) $1 + (const string) $58 (string~) $3 ← (string~) $2 + (const string) $59 (string~) $4 ← (string~) $3 + (const string) $60 (string~) $5 ← (string~) $4 + (const string) $61 @@ -4872,9 +5067,9 @@ main::@return: scope:[main] from main::@1 (string~) $7 ← (string~) $6 + (const string) $63 (string~) $8 ← (string~) $7 + (const string) $64 (string~) $9 ← (string~) $8 + (const string) $65 - (string~) $10 ← (string~) $9 + (const string) $66 - (byte[]) FORM_COLS#0 ← (string~) $10 - (string~) $11 ← (const string) $67 + (const string) $68 + (byte[]) FORM_COLS#0 ← (string~) $9 + (string~) $10 ← (const string) $66 + (const string) $67 + (string~) $11 ← (string~) $10 + (const string) $68 (string~) $12 ← (string~) $11 + (const string) $69 (string~) $13 ← (string~) $12 + (const string) $70 (string~) $14 ← (string~) $13 + (const string) $71 @@ -4882,135 +5077,158 @@ main::@return: scope:[main] from main::@1 (string~) $16 ← (string~) $15 + (const string) $73 (string~) $17 ← (string~) $16 + (const string) $74 (string~) $18 ← (string~) $17 + (const string) $75 - (string~) $19 ← (string~) $18 + (const string) $76 - (byte[]) FORM_TEXT#0 ← (string~) $19 + (byte[]) FORM_TEXT#0 ← (string~) $18 (byte) form_fields_cnt#0 ← (byte/signed byte/word/signed word/dword/signed dword) 35 (byte[]) form_fields_x#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 22, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 17, (byte/signed byte/word/signed word/dword/signed dword) 17, (byte/signed byte/word/signed word/dword/signed dword) 17, (byte/signed byte/word/signed word/dword/signed dword) 16, (byte/signed byte/word/signed word/dword/signed dword) 17, (byte/signed byte/word/signed word/dword/signed dword) 16, (byte/signed byte/word/signed word/dword/signed dword) 17, (byte/signed byte/word/signed word/dword/signed dword) 16, (byte/signed byte/word/signed word/dword/signed dword) 17, (byte/signed byte/word/signed word/dword/signed dword) 27, (byte/signed byte/word/signed word/dword/signed dword) 26, (byte/signed byte/word/signed word/dword/signed dword) 27, (byte/signed byte/word/signed word/dword/signed dword) 26, (byte/signed byte/word/signed word/dword/signed dword) 27, (byte/signed byte/word/signed word/dword/signed dword) 26, (byte/signed byte/word/signed word/dword/signed dword) 27, (byte/signed byte/word/signed word/dword/signed dword) 38, (byte/signed byte/word/signed word/dword/signed dword) 38, (byte/signed byte/word/signed word/dword/signed dword) 38, (byte/signed byte/word/signed word/dword/signed dword) 37, (byte/signed byte/word/signed word/dword/signed dword) 38, (byte/signed byte/word/signed word/dword/signed dword) 37, (byte/signed byte/word/signed word/dword/signed dword) 38, (byte/signed byte/word/signed word/dword/signed dword) 37, (byte/signed byte/word/signed word/dword/signed dword) 38, (byte/signed byte/word/signed word/dword/signed dword) 37, (byte/signed byte/word/signed word/dword/signed dword) 38 } (byte[]) form_fields_y#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 8 } (byte[]) form_fields_max#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 13, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15, (byte/signed byte/word/signed word/dword/signed dword) 15 } (byte[]) form_fields_val#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } - (byte*~) $21 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte*) form_ctrl_bmm#0 ← (byte*~) $21 - (byte*~) $22 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte*) form_ctrl_mcm#0 ← (byte*~) $22 - (byte*~) $23 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte*) form_ctrl_ecm#0 ← (byte*~) $23 - (byte*~) $24 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte*) form_ctrl_hicol#0 ← (byte*~) $24 - (byte*~) $25 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte*) form_ctrl_line#0 ← (byte*~) $25 - (byte*~) $26 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte*) form_ctrl_colof#0 ← (byte*~) $26 - (byte*~) $27 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte*) form_ctrl_chunk#0 ← (byte*~) $27 - (byte*~) $28 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) form_ctrl_borof#0 ← (byte*~) $28 - (byte*~) $29 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 9 - (byte*) form_ctrl_overs#0 ← (byte*~) $29 - (byte*~) $31 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 11 - (byte*) form_a_start_hi#0 ← (byte*~) $31 - (byte*~) $32 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 12 - (byte*) form_a_start_lo#0 ← (byte*~) $32 - (byte*~) $33 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 13 - (byte*) form_a_step_hi#0 ← (byte*~) $33 - (byte*~) $34 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 14 - (byte*) form_a_step_lo#0 ← (byte*~) $34 - (byte*~) $35 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 15 - (byte*) form_a_mod_hi#0 ← (byte*~) $35 - (byte*~) $36 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 16 - (byte*) form_a_mod_lo#0 ← (byte*~) $36 - (byte*~) $38 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 18 - (byte*) form_b_start_hi#0 ← (byte*~) $38 - (byte*~) $39 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 19 - (byte*) form_b_start_lo#0 ← (byte*~) $39 - (byte*~) $40 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 20 - (byte*) form_b_step_hi#0 ← (byte*~) $40 - (byte*~) $41 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 21 - (byte*) form_b_step_lo#0 ← (byte*~) $41 - (byte*~) $42 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 22 - (byte*) form_b_mod_hi#0 ← (byte*~) $42 - (byte*~) $43 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 23 - (byte*) form_b_mod_lo#0 ← (byte*~) $43 - (byte*~) $47 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 27 - (byte*) form_vic_bg0_hi#0 ← (byte*~) $47 - (byte*~) $48 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 28 - (byte*) form_vic_bg0_lo#0 ← (byte*~) $48 - (byte*~) $49 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 29 - (byte*) form_vic_bg1_hi#0 ← (byte*~) $49 - (byte*~) $50 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 30 - (byte*) form_vic_bg1_lo#0 ← (byte*~) $50 - (byte*~) $51 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 31 - (byte*) form_vic_bg2_hi#0 ← (byte*~) $51 - (byte*~) $52 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 32 - (byte*) form_vic_bg2_lo#0 ← (byte*~) $52 - (byte*~) $53 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 33 - (byte*) form_vic_bg3_hi#0 ← (byte*~) $53 - (byte*~) $54 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 34 - (byte*) form_vic_bg3_lo#0 ← (byte*~) $54 - to:@28 -gfx_mode: scope:[gfx_mode] from main::@23 + (byte*~) $20 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte*) form_ctrl_bmm#0 ← (byte*~) $20 + (byte*~) $21 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte*) form_ctrl_mcm#0 ← (byte*~) $21 + (byte*~) $22 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte*) form_ctrl_ecm#0 ← (byte*~) $22 + (byte*~) $23 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte*) form_ctrl_hicol#0 ← (byte*~) $23 + (byte*~) $24 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte*) form_ctrl_line#0 ← (byte*~) $24 + (byte*~) $25 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte*) form_ctrl_colof#0 ← (byte*~) $25 + (byte*~) $26 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte*) form_ctrl_chunk#0 ← (byte*~) $26 + (byte*~) $27 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) form_ctrl_borof#0 ← (byte*~) $27 + (byte*~) $28 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 9 + (byte*) form_ctrl_overs#0 ← (byte*~) $28 + (byte*~) $30 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 11 + (byte*) form_a_start_hi#0 ← (byte*~) $30 + (byte*~) $31 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 12 + (byte*) form_a_start_lo#0 ← (byte*~) $31 + (byte*~) $32 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 13 + (byte*) form_a_step_hi#0 ← (byte*~) $32 + (byte*~) $33 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 14 + (byte*) form_a_step_lo#0 ← (byte*~) $33 + (byte*~) $34 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 15 + (byte*) form_a_mod_hi#0 ← (byte*~) $34 + (byte*~) $35 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 16 + (byte*) form_a_mod_lo#0 ← (byte*~) $35 + (byte*~) $37 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 18 + (byte*) form_b_start_hi#0 ← (byte*~) $37 + (byte*~) $38 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 19 + (byte*) form_b_start_lo#0 ← (byte*~) $38 + (byte*~) $39 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 20 + (byte*) form_b_step_hi#0 ← (byte*~) $39 + (byte*~) $40 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 21 + (byte*) form_b_step_lo#0 ← (byte*~) $40 + (byte*~) $41 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 22 + (byte*) form_b_mod_hi#0 ← (byte*~) $41 + (byte*~) $42 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 23 + (byte*) form_b_mod_lo#0 ← (byte*~) $42 + (byte*~) $46 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 27 + (byte*) form_vic_bg0_hi#0 ← (byte*~) $46 + (byte*~) $47 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 28 + (byte*) form_vic_bg0_lo#0 ← (byte*~) $47 + (byte*~) $48 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 29 + (byte*) form_vic_bg1_hi#0 ← (byte*~) $48 + (byte*~) $49 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 30 + (byte*) form_vic_bg1_lo#0 ← (byte*~) $49 + (byte*~) $50 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 31 + (byte*) form_vic_bg2_hi#0 ← (byte*~) $50 + (byte*~) $51 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 32 + (byte*) form_vic_bg2_lo#0 ← (byte*~) $51 + (byte*~) $52 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 33 + (byte*) form_vic_bg3_hi#0 ← (byte*~) $52 + (byte*~) $53 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 34 + (byte*) form_vic_bg3_lo#0 ← (byte*~) $53 + to:@29 +gfx_mode: scope:[gfx_mode] from main::@10 + (byte) keyboard_modifiers#111 ← phi( main::@10/(byte) keyboard_modifiers#7 ) + (byte) keyboard_events_size#131 ← phi( main::@10/(byte) keyboard_events_size#6 ) (byte) gfx_mode::dtv_control#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) gfx_mode::$0 ← *((byte*) form_ctrl_line#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) gfx_mode::$1 ← ! (boolean~) gfx_mode::$0 if((boolean~) gfx_mode::$1) goto gfx_mode::@1 - to:gfx_mode::@11 -gfx_mode::@1: scope:[gfx_mode] from gfx_mode gfx_mode::@11 - (byte) gfx_mode::dtv_control#14 ← phi( gfx_mode/(byte) gfx_mode::dtv_control#0 gfx_mode::@11/(byte) gfx_mode::dtv_control#1 ) + to:gfx_mode::@18 +gfx_mode::@1: scope:[gfx_mode] from gfx_mode gfx_mode::@18 + (byte) keyboard_modifiers#109 ← phi( gfx_mode/(byte) keyboard_modifiers#111 gfx_mode::@18/(byte) keyboard_modifiers#112 ) + (byte) keyboard_events_size#129 ← phi( gfx_mode/(byte) keyboard_events_size#131 gfx_mode::@18/(byte) keyboard_events_size#132 ) + (byte) gfx_mode::dtv_control#14 ← phi( gfx_mode/(byte) gfx_mode::dtv_control#0 gfx_mode::@18/(byte) gfx_mode::dtv_control#1 ) (boolean~) gfx_mode::$3 ← *((byte*) form_ctrl_borof#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) gfx_mode::$4 ← ! (boolean~) gfx_mode::$3 if((boolean~) gfx_mode::$4) goto gfx_mode::@2 - to:gfx_mode::@12 -gfx_mode::@11: scope:[gfx_mode] from gfx_mode + to:gfx_mode::@19 +gfx_mode::@18: scope:[gfx_mode] from gfx_mode + (byte) keyboard_modifiers#112 ← phi( gfx_mode/(byte) keyboard_modifiers#111 ) + (byte) keyboard_events_size#132 ← phi( gfx_mode/(byte) keyboard_events_size#131 ) (byte) gfx_mode::dtv_control#7 ← phi( gfx_mode/(byte) gfx_mode::dtv_control#0 ) (byte~) gfx_mode::$2 ← (byte) gfx_mode::dtv_control#7 | (byte) DTV_LINEAR#0 (byte) gfx_mode::dtv_control#1 ← (byte~) gfx_mode::$2 to:gfx_mode::@1 -gfx_mode::@2: scope:[gfx_mode] from gfx_mode::@1 gfx_mode::@12 - (byte) gfx_mode::dtv_control#15 ← phi( gfx_mode::@1/(byte) gfx_mode::dtv_control#14 gfx_mode::@12/(byte) gfx_mode::dtv_control#2 ) +gfx_mode::@2: scope:[gfx_mode] from gfx_mode::@1 gfx_mode::@19 + (byte) keyboard_modifiers#107 ← phi( gfx_mode::@1/(byte) keyboard_modifiers#109 gfx_mode::@19/(byte) keyboard_modifiers#110 ) + (byte) keyboard_events_size#127 ← phi( gfx_mode::@1/(byte) keyboard_events_size#129 gfx_mode::@19/(byte) keyboard_events_size#130 ) + (byte) gfx_mode::dtv_control#15 ← phi( gfx_mode::@1/(byte) gfx_mode::dtv_control#14 gfx_mode::@19/(byte) gfx_mode::dtv_control#2 ) (boolean~) gfx_mode::$6 ← *((byte*) form_ctrl_hicol#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) gfx_mode::$7 ← ! (boolean~) gfx_mode::$6 if((boolean~) gfx_mode::$7) goto gfx_mode::@3 - to:gfx_mode::@13 -gfx_mode::@12: scope:[gfx_mode] from gfx_mode::@1 + to:gfx_mode::@20 +gfx_mode::@19: scope:[gfx_mode] from gfx_mode::@1 + (byte) keyboard_modifiers#110 ← phi( gfx_mode::@1/(byte) keyboard_modifiers#109 ) + (byte) keyboard_events_size#130 ← phi( gfx_mode::@1/(byte) keyboard_events_size#129 ) (byte) gfx_mode::dtv_control#8 ← phi( gfx_mode::@1/(byte) gfx_mode::dtv_control#14 ) (byte~) gfx_mode::$5 ← (byte) gfx_mode::dtv_control#8 | (byte) DTV_BORDER_OFF#0 (byte) gfx_mode::dtv_control#2 ← (byte~) gfx_mode::$5 to:gfx_mode::@2 -gfx_mode::@3: scope:[gfx_mode] from gfx_mode::@13 gfx_mode::@2 - (byte) gfx_mode::dtv_control#16 ← phi( gfx_mode::@13/(byte) gfx_mode::dtv_control#3 gfx_mode::@2/(byte) gfx_mode::dtv_control#15 ) +gfx_mode::@3: scope:[gfx_mode] from gfx_mode::@2 gfx_mode::@20 + (byte) keyboard_modifiers#106 ← phi( gfx_mode::@2/(byte) keyboard_modifiers#107 gfx_mode::@20/(byte) keyboard_modifiers#108 ) + (byte) keyboard_events_size#126 ← phi( gfx_mode::@2/(byte) keyboard_events_size#127 gfx_mode::@20/(byte) keyboard_events_size#128 ) + (byte) gfx_mode::dtv_control#16 ← phi( gfx_mode::@2/(byte) gfx_mode::dtv_control#15 gfx_mode::@20/(byte) gfx_mode::dtv_control#3 ) (boolean~) gfx_mode::$9 ← *((byte*) form_ctrl_overs#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) gfx_mode::$10 ← ! (boolean~) gfx_mode::$9 if((boolean~) gfx_mode::$10) goto gfx_mode::@4 - to:gfx_mode::@14 -gfx_mode::@13: scope:[gfx_mode] from gfx_mode::@2 + to:gfx_mode::@21 +gfx_mode::@20: scope:[gfx_mode] from gfx_mode::@2 + (byte) keyboard_modifiers#108 ← phi( gfx_mode::@2/(byte) keyboard_modifiers#107 ) + (byte) keyboard_events_size#128 ← phi( gfx_mode::@2/(byte) keyboard_events_size#127 ) (byte) gfx_mode::dtv_control#9 ← phi( gfx_mode::@2/(byte) gfx_mode::dtv_control#15 ) (byte~) gfx_mode::$8 ← (byte) gfx_mode::dtv_control#9 | (byte) DTV_HIGHCOLOR#0 (byte) gfx_mode::dtv_control#3 ← (byte~) gfx_mode::$8 to:gfx_mode::@3 -gfx_mode::@4: scope:[gfx_mode] from gfx_mode::@14 gfx_mode::@3 - (byte) gfx_mode::dtv_control#17 ← phi( gfx_mode::@14/(byte) gfx_mode::dtv_control#4 gfx_mode::@3/(byte) gfx_mode::dtv_control#16 ) +gfx_mode::@4: scope:[gfx_mode] from gfx_mode::@21 gfx_mode::@3 + (byte) keyboard_modifiers#104 ← phi( gfx_mode::@21/(byte) keyboard_modifiers#105 gfx_mode::@3/(byte) keyboard_modifiers#106 ) + (byte) keyboard_events_size#123 ← phi( gfx_mode::@21/(byte) keyboard_events_size#125 gfx_mode::@3/(byte) keyboard_events_size#126 ) + (byte) gfx_mode::dtv_control#17 ← phi( gfx_mode::@21/(byte) gfx_mode::dtv_control#4 gfx_mode::@3/(byte) gfx_mode::dtv_control#16 ) (boolean~) gfx_mode::$12 ← *((byte*) form_ctrl_colof#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) gfx_mode::$13 ← ! (boolean~) gfx_mode::$12 if((boolean~) gfx_mode::$13) goto gfx_mode::@5 - to:gfx_mode::@15 -gfx_mode::@14: scope:[gfx_mode] from gfx_mode::@3 + to:gfx_mode::@22 +gfx_mode::@21: scope:[gfx_mode] from gfx_mode::@3 + (byte) keyboard_modifiers#105 ← phi( gfx_mode::@3/(byte) keyboard_modifiers#106 ) + (byte) keyboard_events_size#125 ← phi( gfx_mode::@3/(byte) keyboard_events_size#126 ) (byte) gfx_mode::dtv_control#10 ← phi( gfx_mode::@3/(byte) gfx_mode::dtv_control#16 ) (byte~) gfx_mode::$11 ← (byte) gfx_mode::dtv_control#10 | (byte) DTV_OVERSCAN#0 (byte) gfx_mode::dtv_control#4 ← (byte~) gfx_mode::$11 to:gfx_mode::@4 -gfx_mode::@5: scope:[gfx_mode] from gfx_mode::@15 gfx_mode::@4 - (byte) gfx_mode::dtv_control#18 ← phi( gfx_mode::@15/(byte) gfx_mode::dtv_control#5 gfx_mode::@4/(byte) gfx_mode::dtv_control#17 ) +gfx_mode::@5: scope:[gfx_mode] from gfx_mode::@22 gfx_mode::@4 + (byte) keyboard_modifiers#102 ← phi( gfx_mode::@22/(byte) keyboard_modifiers#103 gfx_mode::@4/(byte) keyboard_modifiers#104 ) + (byte) keyboard_events_size#119 ← phi( gfx_mode::@22/(byte) keyboard_events_size#122 gfx_mode::@4/(byte) keyboard_events_size#123 ) + (byte) gfx_mode::dtv_control#18 ← phi( gfx_mode::@22/(byte) gfx_mode::dtv_control#5 gfx_mode::@4/(byte) gfx_mode::dtv_control#17 ) (boolean~) gfx_mode::$15 ← *((byte*) form_ctrl_chunk#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) gfx_mode::$16 ← ! (boolean~) gfx_mode::$15 if((boolean~) gfx_mode::$16) goto gfx_mode::@6 - to:gfx_mode::@16 -gfx_mode::@15: scope:[gfx_mode] from gfx_mode::@4 + to:gfx_mode::@23 +gfx_mode::@22: scope:[gfx_mode] from gfx_mode::@4 + (byte) keyboard_modifiers#103 ← phi( gfx_mode::@4/(byte) keyboard_modifiers#104 ) + (byte) keyboard_events_size#122 ← phi( gfx_mode::@4/(byte) keyboard_events_size#123 ) (byte) gfx_mode::dtv_control#11 ← phi( gfx_mode::@4/(byte) gfx_mode::dtv_control#17 ) (byte~) gfx_mode::$14 ← (byte) gfx_mode::dtv_control#11 | (byte) DTV_COLORRAM_OFF#0 (byte) gfx_mode::dtv_control#5 ← (byte~) gfx_mode::$14 to:gfx_mode::@5 -gfx_mode::@6: scope:[gfx_mode] from gfx_mode::@16 gfx_mode::@5 - (byte) gfx_mode::dtv_control#12 ← phi( gfx_mode::@16/(byte) gfx_mode::dtv_control#6 gfx_mode::@5/(byte) gfx_mode::dtv_control#18 ) +gfx_mode::@6: scope:[gfx_mode] from gfx_mode::@23 gfx_mode::@5 + (byte) keyboard_modifiers#100 ← phi( gfx_mode::@23/(byte) keyboard_modifiers#101 gfx_mode::@5/(byte) keyboard_modifiers#102 ) + (byte) keyboard_events_size#116 ← phi( gfx_mode::@23/(byte) keyboard_events_size#118 gfx_mode::@5/(byte) keyboard_events_size#119 ) + (byte) gfx_mode::dtv_control#12 ← phi( gfx_mode::@23/(byte) gfx_mode::dtv_control#6 gfx_mode::@5/(byte) gfx_mode::dtv_control#18 ) *((byte*) DTV_CONTROL#0) ← (byte) gfx_mode::dtv_control#12 (byte~) gfx_mode::$18 ← (byte) VIC_DEN#0 | (byte) VIC_RSEL#0 (byte/word/dword~) gfx_mode::$19 ← (byte~) gfx_mode::$18 | (byte/signed byte/word/signed word/dword/signed dword) 3 @@ -5018,38 +5236,50 @@ gfx_mode::@6: scope:[gfx_mode] from gfx_mode::@16 gfx_mode::@5 (boolean~) gfx_mode::$20 ← *((byte*) form_ctrl_ecm#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) gfx_mode::$21 ← ! (boolean~) gfx_mode::$20 if((boolean~) gfx_mode::$21) goto gfx_mode::@7 - to:gfx_mode::@17 -gfx_mode::@16: scope:[gfx_mode] from gfx_mode::@5 + to:gfx_mode::@24 +gfx_mode::@23: scope:[gfx_mode] from gfx_mode::@5 + (byte) keyboard_modifiers#101 ← phi( gfx_mode::@5/(byte) keyboard_modifiers#102 ) + (byte) keyboard_events_size#118 ← phi( gfx_mode::@5/(byte) keyboard_events_size#119 ) (byte) gfx_mode::dtv_control#13 ← phi( gfx_mode::@5/(byte) gfx_mode::dtv_control#18 ) (byte~) gfx_mode::$17 ← (byte) gfx_mode::dtv_control#13 | (byte) DTV_CHUNKY#0 (byte) gfx_mode::dtv_control#6 ← (byte~) gfx_mode::$17 to:gfx_mode::@6 -gfx_mode::@7: scope:[gfx_mode] from gfx_mode::@17 gfx_mode::@6 - (byte) gfx_mode::vic_control#6 ← phi( gfx_mode::@17/(byte) gfx_mode::vic_control#1 gfx_mode::@6/(byte) gfx_mode::vic_control#0 ) +gfx_mode::@7: scope:[gfx_mode] from gfx_mode::@24 gfx_mode::@6 + (byte) keyboard_modifiers#97 ← phi( gfx_mode::@24/(byte) keyboard_modifiers#99 gfx_mode::@6/(byte) keyboard_modifiers#100 ) + (byte) keyboard_events_size#109 ← phi( gfx_mode::@24/(byte) keyboard_events_size#115 gfx_mode::@6/(byte) keyboard_events_size#116 ) + (byte) gfx_mode::vic_control#6 ← phi( gfx_mode::@24/(byte) gfx_mode::vic_control#1 gfx_mode::@6/(byte) gfx_mode::vic_control#0 ) (boolean~) gfx_mode::$23 ← *((byte*) form_ctrl_bmm#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) gfx_mode::$24 ← ! (boolean~) gfx_mode::$23 if((boolean~) gfx_mode::$24) goto gfx_mode::@8 - to:gfx_mode::@18 -gfx_mode::@17: scope:[gfx_mode] from gfx_mode::@6 + to:gfx_mode::@25 +gfx_mode::@24: scope:[gfx_mode] from gfx_mode::@6 + (byte) keyboard_modifiers#99 ← phi( gfx_mode::@6/(byte) keyboard_modifiers#100 ) + (byte) keyboard_events_size#115 ← phi( gfx_mode::@6/(byte) keyboard_events_size#116 ) (byte) gfx_mode::vic_control#3 ← phi( gfx_mode::@6/(byte) gfx_mode::vic_control#0 ) (byte~) gfx_mode::$22 ← (byte) gfx_mode::vic_control#3 | (byte) VIC_ECM#0 (byte) gfx_mode::vic_control#1 ← (byte~) gfx_mode::$22 to:gfx_mode::@7 -gfx_mode::@8: scope:[gfx_mode] from gfx_mode::@18 gfx_mode::@7 - (byte) gfx_mode::vic_control#4 ← phi( gfx_mode::@18/(byte) gfx_mode::vic_control#2 gfx_mode::@7/(byte) gfx_mode::vic_control#6 ) +gfx_mode::@8: scope:[gfx_mode] from gfx_mode::@25 gfx_mode::@7 + (byte) keyboard_modifiers#91 ← phi( gfx_mode::@25/(byte) keyboard_modifiers#96 gfx_mode::@7/(byte) keyboard_modifiers#97 ) + (byte) keyboard_events_size#98 ← phi( gfx_mode::@25/(byte) keyboard_events_size#108 gfx_mode::@7/(byte) keyboard_events_size#109 ) + (byte) gfx_mode::vic_control#4 ← phi( gfx_mode::@25/(byte) gfx_mode::vic_control#2 gfx_mode::@7/(byte) gfx_mode::vic_control#6 ) *((byte*) VIC_CONTROL#0) ← (byte) gfx_mode::vic_control#4 (byte) gfx_mode::vic_control2#0 ← (byte) VIC_CSEL#0 (boolean~) gfx_mode::$26 ← *((byte*) form_ctrl_mcm#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) gfx_mode::$27 ← ! (boolean~) gfx_mode::$26 if((boolean~) gfx_mode::$27) goto gfx_mode::@9 - to:gfx_mode::@19 -gfx_mode::@18: scope:[gfx_mode] from gfx_mode::@7 + to:gfx_mode::@26 +gfx_mode::@25: scope:[gfx_mode] from gfx_mode::@7 + (byte) keyboard_modifiers#96 ← phi( gfx_mode::@7/(byte) keyboard_modifiers#97 ) + (byte) keyboard_events_size#108 ← phi( gfx_mode::@7/(byte) keyboard_events_size#109 ) (byte) gfx_mode::vic_control#5 ← phi( gfx_mode::@7/(byte) gfx_mode::vic_control#6 ) (byte~) gfx_mode::$25 ← (byte) gfx_mode::vic_control#5 | (byte) VIC_BMM#0 (byte) gfx_mode::vic_control#2 ← (byte~) gfx_mode::$25 to:gfx_mode::@8 -gfx_mode::@9: scope:[gfx_mode] from gfx_mode::@19 gfx_mode::@8 - (byte) gfx_mode::vic_control2#2 ← phi( gfx_mode::@19/(byte) gfx_mode::vic_control2#1 gfx_mode::@8/(byte) gfx_mode::vic_control2#0 ) +gfx_mode::@9: scope:[gfx_mode] from gfx_mode::@26 gfx_mode::@8 + (byte) keyboard_modifiers#77 ← phi( gfx_mode::@26/(byte) keyboard_modifiers#90 gfx_mode::@8/(byte) keyboard_modifiers#91 ) + (byte) keyboard_events_size#80 ← phi( gfx_mode::@26/(byte) keyboard_events_size#97 gfx_mode::@8/(byte) keyboard_events_size#98 ) + (byte) gfx_mode::vic_control2#2 ← phi( gfx_mode::@26/(byte) gfx_mode::vic_control2#1 gfx_mode::@8/(byte) gfx_mode::vic_control2#0 ) *((byte*) VIC_CONTROL2#0) ← (byte) gfx_mode::vic_control2#2 (byte~) gfx_mode::$29 ← *((byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 (byte~) gfx_mode::$30 ← (byte~) gfx_mode::$29 | *((byte*) form_a_start_lo#0) @@ -5108,30 +5338,121 @@ gfx_mode::@9: scope:[gfx_mode] from gfx_mode::@19 gfx_mode::@8 *((byte*) BGCOL4#0) ← (byte~) gfx_mode::$63 (byte) gfx_mode::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_mode::@10 -gfx_mode::@19: scope:[gfx_mode] from gfx_mode::@8 +gfx_mode::@26: scope:[gfx_mode] from gfx_mode::@8 + (byte) keyboard_modifiers#90 ← phi( gfx_mode::@8/(byte) keyboard_modifiers#91 ) + (byte) keyboard_events_size#97 ← phi( gfx_mode::@8/(byte) keyboard_events_size#98 ) (byte) gfx_mode::vic_control2#3 ← phi( gfx_mode::@8/(byte) gfx_mode::vic_control2#0 ) (byte~) gfx_mode::$28 ← (byte) gfx_mode::vic_control2#3 | (byte) VIC_MCM#0 (byte) gfx_mode::vic_control2#1 ← (byte~) gfx_mode::$28 to:gfx_mode::@9 gfx_mode::@10: scope:[gfx_mode] from gfx_mode::@10 gfx_mode::@9 + (byte) keyboard_modifiers#58 ← phi( gfx_mode::@10/(byte) keyboard_modifiers#58 gfx_mode::@9/(byte) keyboard_modifiers#77 ) + (byte) keyboard_events_size#58 ← phi( gfx_mode::@10/(byte) keyboard_events_size#58 gfx_mode::@9/(byte) keyboard_events_size#80 ) (byte) gfx_mode::i#2 ← phi( gfx_mode::@10/(byte) gfx_mode::i#1 gfx_mode::@9/(byte) gfx_mode::i#0 ) *((byte*) DTV_PALETTE#0 + (byte) gfx_mode::i#2) ← (byte) gfx_mode::i#2 (byte) gfx_mode::i#1 ← ++ (byte) gfx_mode::i#2 (boolean~) gfx_mode::$64 ← (byte) gfx_mode::i#1 != (byte/signed byte/word/signed word/dword/signed dword) 16 if((boolean~) gfx_mode::$64) goto gfx_mode::@10 + to:gfx_mode::@11 +gfx_mode::@11: scope:[gfx_mode] from gfx_mode::@10 gfx_mode::@17 + (byte) keyboard_modifiers#42 ← phi( gfx_mode::@10/(byte) keyboard_modifiers#58 gfx_mode::@17/(byte) keyboard_modifiers#59 ) + (byte) keyboard_events_size#45 ← phi( gfx_mode::@10/(byte) keyboard_events_size#58 gfx_mode::@17/(byte) keyboard_events_size#59 ) + if(true) goto gfx_mode::@12 to:gfx_mode::@return -gfx_mode::@return: scope:[gfx_mode] from gfx_mode::@10 +gfx_mode::@12: scope:[gfx_mode] from gfx_mode::@11 + (byte) keyboard_modifiers#78 ← phi( gfx_mode::@11/(byte) keyboard_modifiers#42 ) + (byte) keyboard_events_size#81 ← phi( gfx_mode::@11/(byte) keyboard_events_size#45 ) + to:gfx_mode::@14 +gfx_mode::@14: scope:[gfx_mode] from gfx_mode::@12 gfx_mode::@15 + (byte) keyboard_modifiers#60 ← phi( gfx_mode::@12/(byte) keyboard_modifiers#78 gfx_mode::@15/(byte) keyboard_modifiers#79 ) + (byte) keyboard_events_size#60 ← phi( gfx_mode::@12/(byte) keyboard_events_size#81 gfx_mode::@15/(byte) keyboard_events_size#82 ) + (boolean~) gfx_mode::$65 ← *((byte*) RASTER#0) != (byte/word/signed word/dword/signed dword) 255 + if((boolean~) gfx_mode::$65) goto gfx_mode::@15 + to:gfx_mode::@16 +gfx_mode::@15: scope:[gfx_mode] from gfx_mode::@14 + (byte) keyboard_modifiers#79 ← phi( gfx_mode::@14/(byte) keyboard_modifiers#60 ) + (byte) keyboard_events_size#82 ← phi( gfx_mode::@14/(byte) keyboard_events_size#60 ) + to:gfx_mode::@14 +gfx_mode::@16: scope:[gfx_mode] from gfx_mode::@14 + (byte) keyboard_modifiers#41 ← phi( gfx_mode::@14/(byte) keyboard_modifiers#60 ) + (byte) keyboard_events_size#44 ← phi( gfx_mode::@14/(byte) keyboard_events_size#60 ) + call keyboard_event_scan param-assignment + to:gfx_mode::@36 +gfx_mode::@36: scope:[gfx_mode] from gfx_mode::@16 + (byte) keyboard_modifiers#25 ← phi( gfx_mode::@16/(byte) keyboard_modifiers#6 ) + (byte) keyboard_events_size#28 ← phi( gfx_mode::@16/(byte) keyboard_events_size#3 ) + (byte) keyboard_events_size#9 ← (byte) keyboard_events_size#28 + (byte) keyboard_modifiers#10 ← (byte) keyboard_modifiers#25 + call keyboard_event_get param-assignment + (byte) keyboard_event_get::return#3 ← (byte) keyboard_event_get::return#2 + to:gfx_mode::@37 +gfx_mode::@37: scope:[gfx_mode] from gfx_mode::@36 + (byte) keyboard_modifiers#43 ← phi( gfx_mode::@36/(byte) keyboard_modifiers#10 ) + (byte) keyboard_events_size#29 ← phi( gfx_mode::@36/(byte) keyboard_events_size#5 ) + (byte) keyboard_event_get::return#6 ← phi( gfx_mode::@36/(byte) keyboard_event_get::return#3 ) + (byte~) gfx_mode::$67 ← (byte) keyboard_event_get::return#6 + (byte) keyboard_events_size#10 ← (byte) keyboard_events_size#29 + (byte) gfx_mode::keyboard_event#0 ← (byte~) gfx_mode::$67 + (boolean~) gfx_mode::$68 ← (byte) gfx_mode::keyboard_event#0 == (byte) KEY_SPACE#0 + (boolean~) gfx_mode::$69 ← ! (boolean~) gfx_mode::$68 + if((boolean~) gfx_mode::$69) goto gfx_mode::@17 + to:gfx_mode::@return +gfx_mode::@17: scope:[gfx_mode] from gfx_mode::@37 + (byte) keyboard_modifiers#59 ← phi( gfx_mode::@37/(byte) keyboard_modifiers#43 ) + (byte) keyboard_events_size#59 ← phi( gfx_mode::@37/(byte) keyboard_events_size#10 ) + to:gfx_mode::@11 +gfx_mode::@return: scope:[gfx_mode] from gfx_mode::@11 gfx_mode::@37 + (byte) keyboard_modifiers#26 ← phi( gfx_mode::@11/(byte) keyboard_modifiers#42 gfx_mode::@37/(byte) keyboard_modifiers#43 ) + (byte) keyboard_events_size#30 ← phi( gfx_mode::@11/(byte) keyboard_events_size#45 gfx_mode::@37/(byte) keyboard_events_size#10 ) + (byte) keyboard_events_size#11 ← (byte) keyboard_events_size#30 + (byte) keyboard_modifiers#11 ← (byte) keyboard_modifiers#26 return to:@return -gfx_init: scope:[gfx_init] from main::@19 - call gfx_init_plane_8bppchunky param-assignment +gfx_init: scope:[gfx_init] from main::@7 + call gfx_init_screen_stdchar param-assignment to:gfx_init::@1 gfx_init::@1: scope:[gfx_init] from gfx_init + call gfx_init_plane_8bppchunky param-assignment + to:gfx_init::@2 +gfx_init::@2: scope:[gfx_init] from gfx_init::@1 to:gfx_init::@return -gfx_init::@return: scope:[gfx_init] from gfx_init::@1 +gfx_init::@return: scope:[gfx_init] from gfx_init::@2 return to:@return -gfx_init_plane_8bppchunky: scope:[gfx_init_plane_8bppchunky] from gfx_init +gfx_init_screen_stdchar: scope:[gfx_init_screen_stdchar] from gfx_init + (byte*) gfx_init_screen_stdchar::ch#0 ← (byte*) VIC_SCREEN_STDCHAR#0 + (byte) gfx_init_screen_stdchar::cy#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + to:gfx_init_screen_stdchar::@1 +gfx_init_screen_stdchar::@1: scope:[gfx_init_screen_stdchar] from gfx_init_screen_stdchar gfx_init_screen_stdchar::@3 + (byte*) gfx_init_screen_stdchar::ch#3 ← phi( gfx_init_screen_stdchar/(byte*) gfx_init_screen_stdchar::ch#0 gfx_init_screen_stdchar::@3/(byte*) gfx_init_screen_stdchar::ch#4 ) + (byte) gfx_init_screen_stdchar::cy#4 ← phi( gfx_init_screen_stdchar/(byte) gfx_init_screen_stdchar::cy#0 gfx_init_screen_stdchar::@3/(byte) gfx_init_screen_stdchar::cy#1 ) + (byte) gfx_init_screen_stdchar::cx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + to:gfx_init_screen_stdchar::@2 +gfx_init_screen_stdchar::@2: scope:[gfx_init_screen_stdchar] from gfx_init_screen_stdchar::@1 gfx_init_screen_stdchar::@2 + (byte*) gfx_init_screen_stdchar::ch#2 ← phi( gfx_init_screen_stdchar::@1/(byte*) gfx_init_screen_stdchar::ch#3 gfx_init_screen_stdchar::@2/(byte*) gfx_init_screen_stdchar::ch#1 ) + (byte) gfx_init_screen_stdchar::cx#2 ← phi( gfx_init_screen_stdchar::@1/(byte) gfx_init_screen_stdchar::cx#0 gfx_init_screen_stdchar::@2/(byte) gfx_init_screen_stdchar::cx#1 ) + (byte) gfx_init_screen_stdchar::cy#2 ← phi( gfx_init_screen_stdchar::@1/(byte) gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::@2/(byte) gfx_init_screen_stdchar::cy#2 ) + (byte~) gfx_init_screen_stdchar::$0 ← (byte) gfx_init_screen_stdchar::cy#2 & (byte/signed byte/word/signed word/dword/signed dword) 15 + (byte~) gfx_init_screen_stdchar::$1 ← (byte~) gfx_init_screen_stdchar::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) gfx_init_screen_stdchar::$2 ← (byte) gfx_init_screen_stdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 15 + (byte~) gfx_init_screen_stdchar::$3 ← (byte~) gfx_init_screen_stdchar::$1 | (byte~) gfx_init_screen_stdchar::$2 + *((byte*) gfx_init_screen_stdchar::ch#2) ← (byte~) gfx_init_screen_stdchar::$3 + (byte*) gfx_init_screen_stdchar::ch#1 ← ++ (byte*) gfx_init_screen_stdchar::ch#2 + (byte) gfx_init_screen_stdchar::cx#1 ← ++ (byte) gfx_init_screen_stdchar::cx#2 + (boolean~) gfx_init_screen_stdchar::$4 ← (byte) gfx_init_screen_stdchar::cx#1 != (byte/signed byte/word/signed word/dword/signed dword) 40 + if((boolean~) gfx_init_screen_stdchar::$4) goto gfx_init_screen_stdchar::@2 + to:gfx_init_screen_stdchar::@3 +gfx_init_screen_stdchar::@3: scope:[gfx_init_screen_stdchar] from gfx_init_screen_stdchar::@2 + (byte*) gfx_init_screen_stdchar::ch#4 ← phi( gfx_init_screen_stdchar::@2/(byte*) gfx_init_screen_stdchar::ch#1 ) + (byte) gfx_init_screen_stdchar::cy#3 ← phi( gfx_init_screen_stdchar::@2/(byte) gfx_init_screen_stdchar::cy#2 ) + (byte) gfx_init_screen_stdchar::cy#1 ← ++ (byte) gfx_init_screen_stdchar::cy#3 + (boolean~) gfx_init_screen_stdchar::$5 ← (byte) gfx_init_screen_stdchar::cy#1 != (byte/signed byte/word/signed word/dword/signed dword) 25 + if((boolean~) gfx_init_screen_stdchar::$5) goto gfx_init_screen_stdchar::@1 + to:gfx_init_screen_stdchar::@return +gfx_init_screen_stdchar::@return: scope:[gfx_init_screen_stdchar] from gfx_init_screen_stdchar::@3 + return + to:@return +gfx_init_plane_8bppchunky: scope:[gfx_init_plane_8bppchunky] from gfx_init::@1 (dword~) gfx_init_plane_8bppchunky::$0 ← (dword) PLANE_8BPP_CHUNKY#0 / (word/signed word/dword/signed dword) 16384 (byte~) gfx_init_plane_8bppchunky::$1 ← ((byte)) (dword~) gfx_init_plane_8bppchunky::$0 (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#0 ← (byte~) gfx_init_plane_8bppchunky::$1 @@ -5206,81 +5527,101 @@ gfx_init_plane_8bppchunky::@9: scope:[gfx_init_plane_8bppchunky] from gfx_init_ gfx_init_plane_8bppchunky::@return: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@9 return to:@return -form_init: scope:[form_init] from main::@20 - (byte) form_fields_cnt#21 ← phi( main::@20/(byte) form_fields_cnt#23 ) - (byte*) print_char_cursor#36 ← phi( main::@20/(byte*) print_char_cursor#34 ) - (byte*) print_line_cursor#34 ← phi( main::@20/(byte*) print_line_cursor#32 ) - (byte*) print_screen#18 ← phi( main::@20/(byte*) print_screen#16 ) - (byte*~) form_init::$0 ← (byte*) COLS#0 + (word) FORM_OFFSET#0 - (byte*) print_set_screen::screen#0 ← (byte*~) form_init::$0 +form_init: scope:[form_init] from main::@8 + (byte) form_fields_cnt#25 ← phi( main::@8/(byte) form_fields_cnt#27 ) + (byte*) print_char_cursor#43 ← phi( main::@8/(byte*) print_char_cursor#41 ) + (byte*) print_line_cursor#41 ← phi( main::@8/(byte*) print_line_cursor#39 ) + (byte*) print_screen#21 ← phi( main::@8/(byte*) print_screen#19 ) + (byte*) print_set_screen::screen#0 ← (byte*) COLS#0 call print_set_screen param-assignment to:form_init::@1 form_init::@1: scope:[form_init] from form_init - (byte) form_fields_cnt#18 ← phi( form_init/(byte) form_fields_cnt#21 ) - (byte*) print_char_cursor#24 ← phi( form_init/(byte*) print_char_cursor#7 ) - (byte*) print_line_cursor#23 ← phi( form_init/(byte*) print_line_cursor#6 ) - (byte*) print_screen#12 ← phi( form_init/(byte*) print_screen#2 ) - (byte*) print_screen#5 ← (byte*) print_screen#12 - (byte*) print_line_cursor#9 ← (byte*) print_line_cursor#23 - (byte*) print_char_cursor#10 ← (byte*) print_char_cursor#24 - (byte*) print_str_lines::str#1 ← (byte[]) FORM_COLS#0 - call print_str_lines param-assignment + (byte) form_fields_cnt#23 ← phi( form_init/(byte) form_fields_cnt#25 ) + (byte*) print_char_cursor#29 ← phi( form_init/(byte*) print_char_cursor#9 ) + (byte*) print_line_cursor#28 ← phi( form_init/(byte*) print_line_cursor#8 ) + (byte*) print_screen#15 ← phi( form_init/(byte*) print_screen#2 ) + (byte*) print_screen#5 ← (byte*) print_screen#15 + (byte*) print_line_cursor#11 ← (byte*) print_line_cursor#28 + (byte*) print_char_cursor#12 ← (byte*) print_char_cursor#29 + call print_cls param-assignment to:form_init::@2 form_init::@2: scope:[form_init] from form_init::@1 - (byte) form_fields_cnt#16 ← phi( form_init::@1/(byte) form_fields_cnt#18 ) - (byte*) print_screen#19 ← phi( form_init::@1/(byte*) print_screen#5 ) - (byte*) print_line_cursor#24 ← phi( form_init::@1/(byte*) print_line_cursor#2 ) - (byte*) print_char_cursor#25 ← phi( form_init::@1/(byte*) print_char_cursor#3 ) - (byte*) print_char_cursor#11 ← (byte*) print_char_cursor#25 - (byte*) print_line_cursor#10 ← (byte*) print_line_cursor#24 - (byte*~) form_init::$3 ← (byte*) FORM_SCREEN#0 + (word) FORM_OFFSET#0 - (byte*) print_set_screen::screen#1 ← (byte*~) form_init::$3 - call print_set_screen param-assignment + (byte) form_fields_cnt#21 ← phi( form_init::@1/(byte) form_fields_cnt#23 ) + (byte*) print_screen#27 ← phi( form_init::@1/(byte*) print_screen#5 ) + (byte*) print_char_cursor#30 ← phi( form_init::@1/(byte*) print_char_cursor#7 ) + (byte*) print_line_cursor#29 ← phi( form_init::@1/(byte*) print_line_cursor#6 ) + (byte*) print_line_cursor#12 ← (byte*) print_line_cursor#29 + (byte*) print_char_cursor#13 ← (byte*) print_char_cursor#30 + (byte*) print_str_lines::str#1 ← (byte[]) FORM_COLS#0 + call print_str_lines param-assignment to:form_init::@3 form_init::@3: scope:[form_init] from form_init::@2 - (byte) form_fields_cnt#13 ← phi( form_init::@2/(byte) form_fields_cnt#16 ) - (byte*) print_char_cursor#26 ← phi( form_init::@2/(byte*) print_char_cursor#7 ) - (byte*) print_line_cursor#25 ← phi( form_init::@2/(byte*) print_line_cursor#6 ) - (byte*) print_screen#13 ← phi( form_init::@2/(byte*) print_screen#2 ) - (byte*) print_screen#6 ← (byte*) print_screen#13 - (byte*) print_line_cursor#11 ← (byte*) print_line_cursor#25 - (byte*) print_char_cursor#12 ← (byte*) print_char_cursor#26 - (byte*) print_str_lines::str#2 ← (byte[]) FORM_TEXT#0 - call print_str_lines param-assignment + (byte) form_fields_cnt#18 ← phi( form_init::@2/(byte) form_fields_cnt#21 ) + (byte*) print_screen#22 ← phi( form_init::@2/(byte*) print_screen#27 ) + (byte*) print_line_cursor#30 ← phi( form_init::@2/(byte*) print_line_cursor#2 ) + (byte*) print_char_cursor#31 ← phi( form_init::@2/(byte*) print_char_cursor#3 ) + (byte*) print_char_cursor#14 ← (byte*) print_char_cursor#31 + (byte*) print_line_cursor#13 ← (byte*) print_line_cursor#30 + (byte*) print_set_screen::screen#1 ← (byte*) FORM_SCREEN#0 + call print_set_screen param-assignment to:form_init::@4 form_init::@4: scope:[form_init] from form_init::@3 - (byte) form_fields_cnt#11 ← phi( form_init::@3/(byte) form_fields_cnt#13 ) - (byte*) print_screen#28 ← phi( form_init::@3/(byte*) print_screen#6 ) - (byte*) print_line_cursor#26 ← phi( form_init::@3/(byte*) print_line_cursor#2 ) - (byte*) print_char_cursor#27 ← phi( form_init::@3/(byte*) print_char_cursor#3 ) - (byte*) print_char_cursor#13 ← (byte*) print_char_cursor#27 - (byte*) print_line_cursor#12 ← (byte*) print_line_cursor#26 - (byte*~) form_init::$6 ← (byte*) FORM_SCREEN#0 + (word) FORM_OFFSET#0 - (byte*) form_set_screen::screen#0 ← (byte*~) form_init::$6 - call form_set_screen param-assignment + (byte) form_fields_cnt#16 ← phi( form_init::@3/(byte) form_fields_cnt#18 ) + (byte*) print_char_cursor#32 ← phi( form_init::@3/(byte*) print_char_cursor#9 ) + (byte*) print_line_cursor#31 ← phi( form_init::@3/(byte*) print_line_cursor#8 ) + (byte*) print_screen#16 ← phi( form_init::@3/(byte*) print_screen#2 ) + (byte*) print_screen#6 ← (byte*) print_screen#16 + (byte*) print_line_cursor#14 ← (byte*) print_line_cursor#31 + (byte*) print_char_cursor#15 ← (byte*) print_char_cursor#32 + call print_cls param-assignment to:form_init::@5 form_init::@5: scope:[form_init] from form_init::@4 - (byte) form_fields_cnt#9 ← phi( form_init::@4/(byte) form_fields_cnt#11 ) - (byte*) print_char_cursor#44 ← phi( form_init::@4/(byte*) print_char_cursor#13 ) - (byte*) print_line_cursor#41 ← phi( form_init::@4/(byte*) print_line_cursor#12 ) - (byte*) print_screen#24 ← phi( form_init::@4/(byte*) print_screen#28 ) - call form_render_values param-assignment + (byte) form_fields_cnt#13 ← phi( form_init::@4/(byte) form_fields_cnt#16 ) + (byte*) print_screen#36 ← phi( form_init::@4/(byte*) print_screen#6 ) + (byte*) print_char_cursor#33 ← phi( form_init::@4/(byte*) print_char_cursor#7 ) + (byte*) print_line_cursor#32 ← phi( form_init::@4/(byte*) print_line_cursor#6 ) + (byte*) print_line_cursor#15 ← (byte*) print_line_cursor#32 + (byte*) print_char_cursor#16 ← (byte*) print_char_cursor#33 + (byte*) print_str_lines::str#2 ← (byte[]) FORM_TEXT#0 + call print_str_lines param-assignment to:form_init::@6 form_init::@6: scope:[form_init] from form_init::@5 - (byte*) print_char_cursor#37 ← phi( form_init::@5/(byte*) print_char_cursor#44 ) - (byte*) print_line_cursor#35 ← phi( form_init::@5/(byte*) print_line_cursor#41 ) - (byte*) print_screen#20 ← phi( form_init::@5/(byte*) print_screen#24 ) + (byte) form_fields_cnt#11 ← phi( form_init::@5/(byte) form_fields_cnt#13 ) + (byte*) print_screen#32 ← phi( form_init::@5/(byte*) print_screen#36 ) + (byte*) print_line_cursor#33 ← phi( form_init::@5/(byte*) print_line_cursor#2 ) + (byte*) print_char_cursor#34 ← phi( form_init::@5/(byte*) print_char_cursor#3 ) + (byte*) print_char_cursor#17 ← (byte*) print_char_cursor#34 + (byte*) print_line_cursor#16 ← (byte*) print_line_cursor#33 + (byte*) form_set_screen::screen#0 ← (byte*) FORM_SCREEN#0 + call form_set_screen param-assignment + to:form_init::@7 +form_init::@7: scope:[form_init] from form_init::@6 + (byte) form_fields_cnt#9 ← phi( form_init::@6/(byte) form_fields_cnt#11 ) + (byte*) print_char_cursor#51 ← phi( form_init::@6/(byte*) print_char_cursor#17 ) + (byte*) print_line_cursor#48 ← phi( form_init::@6/(byte*) print_line_cursor#16 ) + (byte*) print_screen#28 ← phi( form_init::@6/(byte*) print_screen#32 ) + call form_render_values param-assignment + to:form_init::@8 +form_init::@8: scope:[form_init] from form_init::@7 + (byte*) print_char_cursor#44 ← phi( form_init::@7/(byte*) print_char_cursor#51 ) + (byte*) print_line_cursor#42 ← phi( form_init::@7/(byte*) print_line_cursor#48 ) + (byte*) print_screen#23 ← phi( form_init::@7/(byte*) print_screen#28 ) to:form_init::@return -form_init::@return: scope:[form_init] from form_init::@6 - (byte*) print_char_cursor#28 ← phi( form_init::@6/(byte*) print_char_cursor#37 ) - (byte*) print_line_cursor#27 ← phi( form_init::@6/(byte*) print_line_cursor#35 ) - (byte*) print_screen#14 ← phi( form_init::@6/(byte*) print_screen#20 ) - (byte*) print_screen#7 ← (byte*) print_screen#14 - (byte*) print_line_cursor#13 ← (byte*) print_line_cursor#27 - (byte*) print_char_cursor#14 ← (byte*) print_char_cursor#28 +form_init::@return: scope:[form_init] from form_init::@8 + (byte*) print_char_cursor#35 ← phi( form_init::@8/(byte*) print_char_cursor#44 ) + (byte*) print_line_cursor#34 ← phi( form_init::@8/(byte*) print_line_cursor#42 ) + (byte*) print_screen#17 ← phi( form_init::@8/(byte*) print_screen#23 ) + (byte*) print_screen#7 ← (byte*) print_screen#17 + (byte*) print_line_cursor#17 ← (byte*) print_line_cursor#34 + (byte*) print_char_cursor#18 ← (byte*) print_char_cursor#35 return to:@return -form_mode: scope:[form_mode] from main::@6 +form_mode: scope:[form_mode] from main::@2 + (byte) form_fields_cnt#38 ← phi( main::@2/(byte) form_fields_cnt#40 ) + (byte) form_field_idx#53 ← phi( main::@2/(byte) form_field_idx#25 ) + (byte) keyboard_modifiers#92 ← phi( main::@2/(byte) keyboard_modifiers#39 ) + (byte) keyboard_events_size#99 ← phi( main::@2/(byte) keyboard_events_size#42 ) + (signed byte) form_cursor_count#45 ← phi( main::@2/(signed byte) form_cursor_count#18 ) (dword~) form_mode::$0 ← ((dword)) (byte*) FORM_CHARSET#0 (dword~) form_mode::$1 ← (dword~) form_mode::$0 / (dword/signed dword) 65536 (byte~) form_mode::$2 ← ((byte)) (dword~) form_mode::$1 @@ -5316,35 +5657,115 @@ form_mode: scope:[form_mode] from main::@6 (byte) form_mode::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:form_mode::@1 form_mode::@1: scope:[form_mode] from form_mode form_mode::@1 + (byte) form_fields_cnt#36 ← phi( form_mode/(byte) form_fields_cnt#38 form_mode::@1/(byte) form_fields_cnt#36 ) + (byte) form_field_idx#48 ← phi( form_mode/(byte) form_field_idx#53 form_mode::@1/(byte) form_field_idx#48 ) + (byte) keyboard_modifiers#80 ← phi( form_mode/(byte) keyboard_modifiers#92 form_mode::@1/(byte) keyboard_modifiers#80 ) + (byte) keyboard_events_size#83 ← phi( form_mode/(byte) keyboard_events_size#99 form_mode::@1/(byte) keyboard_events_size#83 ) + (signed byte) form_cursor_count#38 ← phi( form_mode/(signed byte) form_cursor_count#45 form_mode::@1/(signed byte) form_cursor_count#38 ) (byte) form_mode::i#2 ← phi( form_mode/(byte) form_mode::i#0 form_mode::@1/(byte) form_mode::i#1 ) *((byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ← *((byte[16]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) (byte) form_mode::i#1 ← ++ (byte) form_mode::i#2 (boolean~) form_mode::$23 ← (byte) form_mode::i#1 != (byte/signed byte/word/signed word/dword/signed dword) 16 if((boolean~) form_mode::$23) goto form_mode::@1 - to:form_mode::@2 -form_mode::@2: scope:[form_mode] from form_mode::@1 - *((byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + to:form_mode::@9 +form_mode::@9: scope:[form_mode] from form_mode::@1 + (byte) form_fields_cnt#34 ← phi( form_mode::@1/(byte) form_fields_cnt#36 ) + (byte) form_field_idx#40 ← phi( form_mode::@1/(byte) form_field_idx#48 ) + (byte) keyboard_modifiers#62 ← phi( form_mode::@1/(byte) keyboard_modifiers#80 ) + (byte) keyboard_events_size#62 ← phi( form_mode::@1/(byte) keyboard_events_size#83 ) + (signed byte) form_cursor_count#30 ← phi( form_mode::@1/(signed byte) form_cursor_count#38 ) *((byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + to:form_mode::@2 +form_mode::@2: scope:[form_mode] from form_mode::@8 form_mode::@9 + (byte) form_fields_cnt#31 ← phi( form_mode::@8/(byte) form_fields_cnt#33 form_mode::@9/(byte) form_fields_cnt#34 ) + (byte) form_field_idx#28 ← phi( form_mode::@8/(byte) form_field_idx#39 form_mode::@9/(byte) form_field_idx#40 ) + (byte) keyboard_modifiers#45 ← phi( form_mode::@8/(byte) keyboard_modifiers#61 form_mode::@9/(byte) keyboard_modifiers#62 ) + (byte) keyboard_events_size#47 ← phi( form_mode::@8/(byte) keyboard_events_size#61 form_mode::@9/(byte) keyboard_events_size#62 ) + (signed byte) form_cursor_count#21 ← phi( form_mode::@8/(signed byte) form_cursor_count#29 form_mode::@9/(signed byte) form_cursor_count#30 ) + if(true) goto form_mode::@3 to:form_mode::@return -form_mode::@return: scope:[form_mode] from form_mode::@2 +form_mode::@3: scope:[form_mode] from form_mode::@2 + (byte) form_fields_cnt#28 ← phi( form_mode::@2/(byte) form_fields_cnt#31 ) + (byte) form_field_idx#49 ← phi( form_mode::@2/(byte) form_field_idx#28 ) + (byte) keyboard_modifiers#81 ← phi( form_mode::@2/(byte) keyboard_modifiers#45 ) + (byte) keyboard_events_size#84 ← phi( form_mode::@2/(byte) keyboard_events_size#47 ) + (signed byte) form_cursor_count#39 ← phi( form_mode::@2/(signed byte) form_cursor_count#21 ) + to:form_mode::@5 +form_mode::@5: scope:[form_mode] from form_mode::@3 form_mode::@6 + (byte) form_fields_cnt#26 ← phi( form_mode::@3/(byte) form_fields_cnt#28 form_mode::@6/(byte) form_fields_cnt#29 ) + (byte) form_field_idx#41 ← phi( form_mode::@3/(byte) form_field_idx#49 form_mode::@6/(byte) form_field_idx#50 ) + (byte) keyboard_modifiers#63 ← phi( form_mode::@3/(byte) keyboard_modifiers#81 form_mode::@6/(byte) keyboard_modifiers#82 ) + (byte) keyboard_events_size#63 ← phi( form_mode::@3/(byte) keyboard_events_size#84 form_mode::@6/(byte) keyboard_events_size#85 ) + (signed byte) form_cursor_count#31 ← phi( form_mode::@3/(signed byte) form_cursor_count#39 form_mode::@6/(signed byte) form_cursor_count#40 ) + (boolean~) form_mode::$24 ← *((byte*) RASTER#0) != (byte/word/signed word/dword/signed dword) 255 + if((boolean~) form_mode::$24) goto form_mode::@6 + to:form_mode::@7 +form_mode::@6: scope:[form_mode] from form_mode::@5 + (byte) form_fields_cnt#29 ← phi( form_mode::@5/(byte) form_fields_cnt#26 ) + (byte) form_field_idx#50 ← phi( form_mode::@5/(byte) form_field_idx#41 ) + (byte) keyboard_modifiers#82 ← phi( form_mode::@5/(byte) keyboard_modifiers#63 ) + (byte) keyboard_events_size#85 ← phi( form_mode::@5/(byte) keyboard_events_size#63 ) + (signed byte) form_cursor_count#40 ← phi( form_mode::@5/(signed byte) form_cursor_count#31 ) + to:form_mode::@5 +form_mode::@7: scope:[form_mode] from form_mode::@5 + (byte) form_fields_cnt#24 ← phi( form_mode::@5/(byte) form_fields_cnt#26 ) + (byte) form_field_idx#27 ← phi( form_mode::@5/(byte) form_field_idx#41 ) + (byte) keyboard_modifiers#44 ← phi( form_mode::@5/(byte) keyboard_modifiers#63 ) + (byte) keyboard_events_size#46 ← phi( form_mode::@5/(byte) keyboard_events_size#63 ) + (signed byte) form_cursor_count#20 ← phi( form_mode::@5/(signed byte) form_cursor_count#31 ) + call form_control param-assignment + (byte) form_control::return#0 ← (byte) form_control::return#2 + to:form_mode::@19 +form_mode::@19: scope:[form_mode] from form_mode::@7 + (byte) form_fields_cnt#37 ← phi( form_mode::@7/(byte) form_fields_cnt#24 ) + (byte) form_field_idx#13 ← phi( form_mode::@7/(byte) form_field_idx#9 ) + (byte) keyboard_modifiers#27 ← phi( form_mode::@7/(byte) keyboard_modifiers#15 ) + (byte) keyboard_events_size#31 ← phi( form_mode::@7/(byte) keyboard_events_size#16 ) + (signed byte) form_cursor_count#12 ← phi( form_mode::@7/(signed byte) form_cursor_count#8 ) + (byte) form_control::return#6 ← phi( form_mode::@7/(byte) form_control::return#0 ) + (byte~) form_mode::$25 ← (byte) form_control::return#6 + (signed byte) form_cursor_count#2 ← (signed byte) form_cursor_count#12 + (byte) keyboard_events_size#12 ← (byte) keyboard_events_size#31 + (byte) keyboard_modifiers#12 ← (byte) keyboard_modifiers#27 + (byte) form_field_idx#2 ← (byte) form_field_idx#13 + (boolean~) form_mode::$26 ← (byte~) form_mode::$25 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (boolean~) form_mode::$27 ← ! (boolean~) form_mode::$26 + if((boolean~) form_mode::$27) goto form_mode::@8 + to:form_mode::@return +form_mode::@8: scope:[form_mode] from form_mode::@19 + (byte) form_fields_cnt#33 ← phi( form_mode::@19/(byte) form_fields_cnt#37 ) + (byte) form_field_idx#39 ← phi( form_mode::@19/(byte) form_field_idx#2 ) + (byte) keyboard_modifiers#61 ← phi( form_mode::@19/(byte) keyboard_modifiers#12 ) + (byte) keyboard_events_size#61 ← phi( form_mode::@19/(byte) keyboard_events_size#12 ) + (signed byte) form_cursor_count#29 ← phi( form_mode::@19/(signed byte) form_cursor_count#2 ) + to:form_mode::@2 +form_mode::@return: scope:[form_mode] from form_mode::@19 form_mode::@2 + (byte) form_field_idx#14 ← phi( form_mode::@19/(byte) form_field_idx#2 form_mode::@2/(byte) form_field_idx#28 ) + (byte) keyboard_modifiers#28 ← phi( form_mode::@19/(byte) keyboard_modifiers#12 form_mode::@2/(byte) keyboard_modifiers#45 ) + (byte) keyboard_events_size#32 ← phi( form_mode::@19/(byte) keyboard_events_size#12 form_mode::@2/(byte) keyboard_events_size#47 ) + (signed byte) form_cursor_count#13 ← phi( form_mode::@19/(signed byte) form_cursor_count#2 form_mode::@2/(signed byte) form_cursor_count#21 ) + (signed byte) form_cursor_count#3 ← (signed byte) form_cursor_count#13 + (byte) keyboard_events_size#13 ← (byte) keyboard_events_size#32 + (byte) keyboard_modifiers#13 ← (byte) keyboard_modifiers#28 + (byte) form_field_idx#3 ← (byte) form_field_idx#14 return to:@return -@28: scope:[] from @23 - (byte) form_fields_cnt#33 ← phi( @23/(byte) form_fields_cnt#0 ) - (byte) keyboard_modifiers#54 ← phi( @23/(byte) keyboard_modifiers#58 ) - (byte) keyboard_events_size#54 ← phi( @23/(byte) keyboard_events_size#61 ) - (byte*) print_char_cursor#45 ← phi( @23/(byte*) print_char_cursor#48 ) - (byte*) print_line_cursor#42 ← phi( @23/(byte*) print_line_cursor#47 ) - (byte*) print_screen#25 ← phi( @23/(byte*) print_screen#29 ) +@29: scope:[] from @23 + (byte) form_fields_cnt#39 ← phi( @23/(byte) form_fields_cnt#0 ) + (byte) keyboard_modifiers#75 ← phi( @23/(byte) keyboard_modifiers#83 ) + (byte) keyboard_events_size#75 ← phi( @23/(byte) keyboard_events_size#86 ) + (byte*) print_char_cursor#52 ← phi( @23/(byte*) print_char_cursor#55 ) + (byte*) print_line_cursor#49 ← phi( @23/(byte*) print_line_cursor#54 ) + (byte*) print_screen#29 ← phi( @23/(byte*) print_screen#33 ) (byte[25]) form_line_lo#0 ← { fill( 25, 0) } (byte[25]) form_line_hi#0 ← { fill( 25, 0) } - (byte) form_field_idx#2 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) form_field_idx#4 ← (byte/signed byte/word/signed word/dword/signed dword) 0 (signed byte) FORM_CURSOR_BLINK#0 ← (byte/signed byte/word/signed word/dword/signed dword) 40 - (signed word/signed byte/signed dword~) $55 ← (signed byte) FORM_CURSOR_BLINK#0 / (byte/signed byte/word/signed word/dword/signed dword) 2 - (signed byte) form_cursor_count#2 ← (signed word/signed byte/signed dword~) $55 - to:@32 -form_set_screen: scope:[form_set_screen] from form_init::@4 - (byte*) form_set_screen::screen#1 ← phi( form_init::@4/(byte*) form_set_screen::screen#0 ) + (signed word/signed byte/signed dword~) $54 ← (signed byte) FORM_CURSOR_BLINK#0 / (byte/signed byte/word/signed word/dword/signed dword) 2 + (signed byte) form_cursor_count#4 ← (signed word/signed byte/signed dword~) $54 + to:@33 +form_set_screen: scope:[form_set_screen] from form_init::@6 + (byte*) form_set_screen::screen#1 ← phi( form_init::@6/(byte*) form_set_screen::screen#0 ) (byte*) form_set_screen::line#0 ← (byte*) form_set_screen::screen#1 (byte) form_set_screen::y#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:form_set_screen::@1 @@ -5379,8 +5800,8 @@ form_field_ptr::@return: scope:[form_field_ptr] from form_field_ptr (byte*) form_field_ptr::return#1 ← (byte*) form_field_ptr::return#4 return to:@return -form_render_values: scope:[form_render_values] from form_init::@5 - (byte) form_fields_cnt#7 ← phi( form_init::@5/(byte) form_fields_cnt#9 ) +form_render_values: scope:[form_render_values] from form_init::@7 + (byte) form_fields_cnt#7 ← phi( form_init::@7/(byte) form_fields_cnt#9 ) (byte) form_render_values::idx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:form_render_values::@1 form_render_values::@1: scope:[form_render_values] from form_render_values form_render_values::@3 @@ -5404,299 +5825,321 @@ form_render_values::@3: scope:[form_render_values] from form_render_values::@1 form_render_values::@return: scope:[form_render_values] from form_render_values::@3 return to:@return -form_control: scope:[form_control] from main::@9 - (byte) form_fields_cnt#22 ← phi( main::@9/(byte) form_fields_cnt#24 ) - (byte) keyboard_modifiers#70 ← phi( main::@9/(byte) keyboard_modifiers#29 ) - (byte) keyboard_events_size#81 ← phi( main::@9/(byte) keyboard_events_size#30 ) - (signed byte) form_cursor_count#16 ← phi( main::@9/(signed byte) form_cursor_count#14 ) - (byte) form_field_idx#11 ← phi( main::@9/(byte) form_field_idx#21 ) - (byte) form_field_ptr::field_idx#1 ← (byte) form_field_idx#11 +form_control: scope:[form_control] from form_mode::@7 + (byte) form_fields_cnt#22 ← phi( form_mode::@7/(byte) form_fields_cnt#24 ) + (byte) keyboard_modifiers#98 ← phi( form_mode::@7/(byte) keyboard_modifiers#44 ) + (byte) keyboard_events_size#110 ← phi( form_mode::@7/(byte) keyboard_events_size#46 ) + (signed byte) form_cursor_count#22 ← phi( form_mode::@7/(signed byte) form_cursor_count#20 ) + (byte) form_field_idx#15 ← phi( form_mode::@7/(byte) form_field_idx#27 ) + (byte) form_field_ptr::field_idx#1 ← (byte) form_field_idx#15 call form_field_ptr param-assignment (byte*) form_field_ptr::return#3 ← (byte*) form_field_ptr::return#1 - to:form_control::@29 -form_control::@29: scope:[form_control] from form_control + to:form_control::@33 +form_control::@33: scope:[form_control] from form_control (byte) form_fields_cnt#20 ← phi( form_control/(byte) form_fields_cnt#22 ) - (byte) form_field_idx#52 ← phi( form_control/(byte) form_field_idx#11 ) - (byte) keyboard_modifiers#67 ← phi( form_control/(byte) keyboard_modifiers#70 ) - (byte) keyboard_events_size#73 ← phi( form_control/(byte) keyboard_events_size#81 ) - (signed byte) form_cursor_count#10 ← phi( form_control/(signed byte) form_cursor_count#16 ) + (byte) form_field_idx#60 ← phi( form_control/(byte) form_field_idx#15 ) + (byte) keyboard_modifiers#94 ← phi( form_control/(byte) keyboard_modifiers#98 ) + (byte) keyboard_events_size#101 ← phi( form_control/(byte) keyboard_events_size#110 ) + (signed byte) form_cursor_count#14 ← phi( form_control/(signed byte) form_cursor_count#22 ) (byte*) form_field_ptr::return#6 ← phi( form_control/(byte*) form_field_ptr::return#3 ) (byte*~) form_control::$0 ← (byte*) form_field_ptr::return#6 (byte*) form_control::field#0 ← (byte*~) form_control::$0 - (signed byte) form_cursor_count#3 ← -- (signed byte) form_cursor_count#10 - (boolean~) form_control::$1 ← (signed byte) form_cursor_count#3 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (signed byte) form_cursor_count#5 ← -- (signed byte) form_cursor_count#14 + (boolean~) form_control::$1 ← (signed byte) form_cursor_count#5 < (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) form_control::$2 ← ! (boolean~) form_control::$1 if((boolean~) form_control::$2) goto form_control::@1 - to:form_control::@14 -form_control::@1: scope:[form_control] from form_control::@14 form_control::@29 - (byte) form_fields_cnt#17 ← phi( form_control::@14/(byte) form_fields_cnt#19 form_control::@29/(byte) form_fields_cnt#20 ) - (byte) form_field_idx#50 ← phi( form_control::@14/(byte) form_field_idx#51 form_control::@29/(byte) form_field_idx#52 ) - (byte) keyboard_modifiers#59 ← phi( form_control::@14/(byte) keyboard_modifiers#66 form_control::@29/(byte) keyboard_modifiers#67 ) - (byte) keyboard_events_size#62 ← phi( form_control::@14/(byte) keyboard_events_size#72 form_control::@29/(byte) keyboard_events_size#73 ) - (byte*) form_control::field#5 ← phi( form_control::@14/(byte*) form_control::field#11 form_control::@29/(byte*) form_control::field#0 ) - (signed byte) form_cursor_count#11 ← phi( form_control::@14/(signed byte) form_cursor_count#4 form_control::@29/(signed byte) form_cursor_count#3 ) + to:form_control::@15 +form_control::@1: scope:[form_control] from form_control::@15 form_control::@33 + (byte) form_fields_cnt#17 ← phi( form_control::@15/(byte) form_fields_cnt#19 form_control::@33/(byte) form_fields_cnt#20 ) + (byte) form_field_idx#58 ← phi( form_control::@15/(byte) form_field_idx#59 form_control::@33/(byte) form_field_idx#60 ) + (byte) keyboard_modifiers#84 ← phi( form_control::@15/(byte) keyboard_modifiers#93 form_control::@33/(byte) keyboard_modifiers#94 ) + (byte) keyboard_events_size#87 ← phi( form_control::@15/(byte) keyboard_events_size#100 form_control::@33/(byte) keyboard_events_size#101 ) + (byte*) form_control::field#5 ← phi( form_control::@15/(byte*) form_control::field#11 form_control::@33/(byte*) form_control::field#0 ) + (signed byte) form_cursor_count#15 ← phi( form_control::@15/(signed byte) form_cursor_count#6 form_control::@33/(signed byte) form_cursor_count#5 ) (signed word/signed byte/signed dword~) form_control::$3 ← (signed byte) FORM_CURSOR_BLINK#0 / (byte/signed byte/word/signed word/dword/signed dword) 2 - (boolean~) form_control::$4 ← (signed byte) form_cursor_count#11 < (signed word/signed byte/signed dword~) form_control::$3 + (boolean~) form_control::$4 ← (signed byte) form_cursor_count#15 < (signed word/signed byte/signed dword~) form_control::$3 (boolean~) form_control::$5 ← ! (boolean~) form_control::$4 if((boolean~) form_control::$5) goto form_control::@2 - to:form_control::@15 -form_control::@14: scope:[form_control] from form_control::@29 - (byte) form_fields_cnt#19 ← phi( form_control::@29/(byte) form_fields_cnt#20 ) - (byte) form_field_idx#51 ← phi( form_control::@29/(byte) form_field_idx#52 ) - (byte) keyboard_modifiers#66 ← phi( form_control::@29/(byte) keyboard_modifiers#67 ) - (byte) keyboard_events_size#72 ← phi( form_control::@29/(byte) keyboard_events_size#73 ) - (byte*) form_control::field#11 ← phi( form_control::@29/(byte*) form_control::field#0 ) - (signed byte) form_cursor_count#4 ← (signed byte) FORM_CURSOR_BLINK#0 + to:form_control::@16 +form_control::@15: scope:[form_control] from form_control::@33 + (byte) form_fields_cnt#19 ← phi( form_control::@33/(byte) form_fields_cnt#20 ) + (byte) form_field_idx#59 ← phi( form_control::@33/(byte) form_field_idx#60 ) + (byte) keyboard_modifiers#93 ← phi( form_control::@33/(byte) keyboard_modifiers#94 ) + (byte) keyboard_events_size#100 ← phi( form_control::@33/(byte) keyboard_events_size#101 ) + (byte*) form_control::field#11 ← phi( form_control::@33/(byte*) form_control::field#0 ) + (signed byte) form_cursor_count#6 ← (signed byte) FORM_CURSOR_BLINK#0 to:form_control::@1 form_control::@2: scope:[form_control] from form_control::@1 - (signed byte) form_cursor_count#44 ← phi( form_control::@1/(signed byte) form_cursor_count#11 ) + (signed byte) form_cursor_count#52 ← phi( form_control::@1/(signed byte) form_cursor_count#15 ) (byte) form_fields_cnt#15 ← phi( form_control::@1/(byte) form_fields_cnt#17 ) - (byte) form_field_idx#47 ← phi( form_control::@1/(byte) form_field_idx#50 ) - (byte) keyboard_modifiers#45 ← phi( form_control::@1/(byte) keyboard_modifiers#59 ) - (byte) keyboard_events_size#44 ← phi( form_control::@1/(byte) keyboard_events_size#62 ) + (byte) form_field_idx#57 ← phi( form_control::@1/(byte) form_field_idx#58 ) + (byte) keyboard_modifiers#65 ← phi( form_control::@1/(byte) keyboard_modifiers#84 ) + (byte) keyboard_events_size#65 ← phi( form_control::@1/(byte) keyboard_events_size#87 ) (byte*) form_control::field#1 ← phi( form_control::@1/(byte*) form_control::field#5 ) (byte~) form_control::$7 ← *((byte*) form_control::field#1) & (byte/signed byte/word/signed word/dword/signed dword) 127 *((byte*) form_control::field#1) ← (byte~) form_control::$7 to:form_control::@3 -form_control::@15: scope:[form_control] from form_control::@1 - (signed byte) form_cursor_count#43 ← phi( form_control::@1/(signed byte) form_cursor_count#11 ) +form_control::@16: scope:[form_control] from form_control::@1 + (signed byte) form_cursor_count#51 ← phi( form_control::@1/(signed byte) form_cursor_count#15 ) (byte) form_fields_cnt#14 ← phi( form_control::@1/(byte) form_fields_cnt#17 ) - (byte) form_field_idx#46 ← phi( form_control::@1/(byte) form_field_idx#50 ) - (byte) keyboard_modifiers#44 ← phi( form_control::@1/(byte) keyboard_modifiers#59 ) - (byte) keyboard_events_size#43 ← phi( form_control::@1/(byte) keyboard_events_size#62 ) + (byte) form_field_idx#56 ← phi( form_control::@1/(byte) form_field_idx#58 ) + (byte) keyboard_modifiers#64 ← phi( form_control::@1/(byte) keyboard_modifiers#84 ) + (byte) keyboard_events_size#64 ← phi( form_control::@1/(byte) keyboard_events_size#87 ) (byte*) form_control::field#2 ← phi( form_control::@1/(byte*) form_control::field#5 ) (byte/word/dword~) form_control::$6 ← *((byte*) form_control::field#2) | (byte/word/signed word/dword/signed dword) 128 *((byte*) form_control::field#2) ← (byte/word/dword~) form_control::$6 to:form_control::@3 -form_control::@3: scope:[form_control] from form_control::@15 form_control::@2 - (signed byte) form_cursor_count#40 ← phi( form_control::@15/(signed byte) form_cursor_count#43 form_control::@2/(signed byte) form_cursor_count#44 ) - (byte) form_fields_cnt#12 ← phi( form_control::@15/(byte) form_fields_cnt#14 form_control::@2/(byte) form_fields_cnt#15 ) - (byte) form_field_idx#43 ← phi( form_control::@15/(byte) form_field_idx#46 form_control::@2/(byte) form_field_idx#47 ) - (byte*) form_control::field#15 ← phi( form_control::@15/(byte*) form_control::field#2 form_control::@2/(byte*) form_control::field#1 ) - (byte) keyboard_modifiers#31 ← phi( form_control::@15/(byte) keyboard_modifiers#44 form_control::@2/(byte) keyboard_modifiers#45 ) - (byte) keyboard_events_size#32 ← phi( form_control::@15/(byte) keyboard_events_size#43 form_control::@2/(byte) keyboard_events_size#44 ) +form_control::@3: scope:[form_control] from form_control::@16 form_control::@2 + (signed byte) form_cursor_count#50 ← phi( form_control::@16/(signed byte) form_cursor_count#51 form_control::@2/(signed byte) form_cursor_count#52 ) + (byte) form_fields_cnt#12 ← phi( form_control::@16/(byte) form_fields_cnt#14 form_control::@2/(byte) form_fields_cnt#15 ) + (byte) form_field_idx#54 ← phi( form_control::@16/(byte) form_field_idx#56 form_control::@2/(byte) form_field_idx#57 ) + (byte*) form_control::field#15 ← phi( form_control::@16/(byte*) form_control::field#2 form_control::@2/(byte*) form_control::field#1 ) + (byte) keyboard_modifiers#46 ← phi( form_control::@16/(byte) keyboard_modifiers#64 form_control::@2/(byte) keyboard_modifiers#65 ) + (byte) keyboard_events_size#48 ← phi( form_control::@16/(byte) keyboard_events_size#64 form_control::@2/(byte) keyboard_events_size#65 ) call keyboard_event_scan param-assignment - to:form_control::@30 -form_control::@30: scope:[form_control] from form_control::@3 - (signed byte) form_cursor_count#36 ← phi( form_control::@3/(signed byte) form_cursor_count#40 ) + to:form_control::@34 +form_control::@34: scope:[form_control] from form_control::@3 + (signed byte) form_cursor_count#49 ← phi( form_control::@3/(signed byte) form_cursor_count#50 ) (byte) form_fields_cnt#10 ← phi( form_control::@3/(byte) form_fields_cnt#12 ) - (byte) form_field_idx#40 ← phi( form_control::@3/(byte) form_field_idx#43 ) + (byte) form_field_idx#51 ← phi( form_control::@3/(byte) form_field_idx#54 ) (byte*) form_control::field#12 ← phi( form_control::@3/(byte*) form_control::field#15 ) - (byte) keyboard_modifiers#19 ← phi( form_control::@3/(byte) keyboard_modifiers#6 ) - (byte) keyboard_events_size#21 ← phi( form_control::@3/(byte) keyboard_events_size#3 ) - (byte) keyboard_events_size#8 ← (byte) keyboard_events_size#21 - (byte) keyboard_modifiers#9 ← (byte) keyboard_modifiers#19 + (byte) keyboard_modifiers#29 ← phi( form_control::@3/(byte) keyboard_modifiers#6 ) + (byte) keyboard_events_size#33 ← phi( form_control::@3/(byte) keyboard_events_size#3 ) + (byte) keyboard_events_size#14 ← (byte) keyboard_events_size#33 + (byte) keyboard_modifiers#14 ← (byte) keyboard_modifiers#29 call keyboard_event_get param-assignment - (byte) keyboard_event_get::return#3 ← (byte) keyboard_event_get::return#2 - to:form_control::@31 -form_control::@31: scope:[form_control] from form_control::@30 - (signed byte) form_cursor_count#31 ← phi( form_control::@30/(signed byte) form_cursor_count#36 ) - (byte) form_fields_cnt#8 ← phi( form_control::@30/(byte) form_fields_cnt#10 ) - (byte) form_field_idx#33 ← phi( form_control::@30/(byte) form_field_idx#40 ) - (byte) keyboard_modifiers#32 ← phi( form_control::@30/(byte) keyboard_modifiers#9 ) - (byte*) form_control::field#6 ← phi( form_control::@30/(byte*) form_control::field#12 ) - (byte) keyboard_events_size#22 ← phi( form_control::@30/(byte) keyboard_events_size#5 ) - (byte) keyboard_event_get::return#5 ← phi( form_control::@30/(byte) keyboard_event_get::return#3 ) - (byte~) form_control::$9 ← (byte) keyboard_event_get::return#5 - (byte) keyboard_events_size#9 ← (byte) keyboard_events_size#22 + (byte) keyboard_event_get::return#4 ← (byte) keyboard_event_get::return#2 + to:form_control::@35 +form_control::@35: scope:[form_control] from form_control::@34 + (signed byte) form_cursor_count#46 ← phi( form_control::@34/(signed byte) form_cursor_count#49 ) + (byte) form_fields_cnt#8 ← phi( form_control::@34/(byte) form_fields_cnt#10 ) + (byte) form_field_idx#42 ← phi( form_control::@34/(byte) form_field_idx#51 ) + (byte) keyboard_modifiers#47 ← phi( form_control::@34/(byte) keyboard_modifiers#14 ) + (byte*) form_control::field#6 ← phi( form_control::@34/(byte*) form_control::field#12 ) + (byte) keyboard_events_size#34 ← phi( form_control::@34/(byte) keyboard_events_size#5 ) + (byte) keyboard_event_get::return#7 ← phi( form_control::@34/(byte) keyboard_event_get::return#4 ) + (byte~) form_control::$9 ← (byte) keyboard_event_get::return#7 + (byte) keyboard_events_size#15 ← (byte) keyboard_events_size#34 (byte) form_control::key_event#0 ← (byte~) form_control::$9 (boolean~) form_control::$10 ← (byte) form_control::key_event#0 == (byte) KEY_CRSR_DOWN#0 (boolean~) form_control::$11 ← ! (boolean~) form_control::$10 if((boolean~) form_control::$11) goto form_control::@4 - to:form_control::@17 -form_control::@4: scope:[form_control] from form_control::@31 - (byte*) form_control::field#17 ← phi( form_control::@31/(byte*) form_control::field#6 ) - (byte) form_field_idx#36 ← phi( form_control::@31/(byte) form_field_idx#33 ) - (byte) keyboard_events_size#49 ← phi( form_control::@31/(byte) keyboard_events_size#9 ) - (signed byte) form_cursor_count#23 ← phi( form_control::@31/(signed byte) form_cursor_count#31 ) - (byte) keyboard_modifiers#36 ← phi( form_control::@31/(byte) keyboard_modifiers#32 ) - (byte) form_control::key_event#1 ← phi( form_control::@31/(byte) form_control::key_event#0 ) + to:form_control::@18 +form_control::@4: scope:[form_control] from form_control::@35 + (byte*) form_control::field#17 ← phi( form_control::@35/(byte*) form_control::field#6 ) + (byte) keyboard_events_size#90 ← phi( form_control::@35/(byte) keyboard_events_size#15 ) + (signed byte) form_cursor_count#41 ← phi( form_control::@35/(signed byte) form_cursor_count#46 ) + (byte) form_field_idx#45 ← phi( form_control::@35/(byte) form_field_idx#42 ) + (byte) keyboard_modifiers#52 ← phi( form_control::@35/(byte) keyboard_modifiers#47 ) + (byte) form_control::key_event#1 ← phi( form_control::@35/(byte) form_control::key_event#0 ) (boolean~) form_control::$22 ← (byte) form_control::key_event#1 == (byte) KEY_CRSR_RIGHT#0 (boolean~) form_control::$23 ← ! (boolean~) form_control::$22 if((boolean~) form_control::$23) goto form_control::@9 - to:form_control::@23 -form_control::@17: scope:[form_control] from form_control::@31 - (byte) keyboard_events_size#74 ← phi( form_control::@31/(byte) keyboard_events_size#9 ) - (byte) form_fields_cnt#5 ← phi( form_control::@31/(byte) form_fields_cnt#8 ) - (byte) form_field_idx#23 ← phi( form_control::@31/(byte) form_field_idx#33 ) - (byte) keyboard_modifiers#20 ← phi( form_control::@31/(byte) keyboard_modifiers#32 ) - (byte*) form_control::field#3 ← phi( form_control::@31/(byte*) form_control::field#6 ) + to:form_control::@24 +form_control::@18: scope:[form_control] from form_control::@35 + (byte) keyboard_events_size#102 ← phi( form_control::@35/(byte) keyboard_events_size#15 ) + (byte) form_fields_cnt#5 ← phi( form_control::@35/(byte) form_fields_cnt#8 ) + (byte) form_field_idx#29 ← phi( form_control::@35/(byte) form_field_idx#42 ) + (byte) keyboard_modifiers#30 ← phi( form_control::@35/(byte) keyboard_modifiers#47 ) + (byte*) form_control::field#3 ← phi( form_control::@35/(byte*) form_control::field#6 ) (byte~) form_control::$12 ← *((byte*) form_control::field#3) & (byte/signed byte/word/signed word/dword/signed dword) 127 *((byte*) form_control::field#3) ← (byte~) form_control::$12 - (byte~) form_control::$13 ← (byte) keyboard_modifiers#20 & (byte) KEY_MODIFIER_SHIFT#0 + (byte~) form_control::$13 ← (byte) keyboard_modifiers#30 & (byte) KEY_MODIFIER_SHIFT#0 (boolean~) form_control::$14 ← (byte~) form_control::$13 == (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) form_control::$15 ← ! (boolean~) form_control::$14 if((boolean~) form_control::$15) goto form_control::@5 - to:form_control::@18 -form_control::@5: scope:[form_control] from form_control::@17 - (byte) keyboard_modifiers#61 ← phi( form_control::@17/(byte) keyboard_modifiers#20 ) - (byte) keyboard_events_size#64 ← phi( form_control::@17/(byte) keyboard_events_size#74 ) - (byte) form_fields_cnt#6 ← phi( form_control::@17/(byte) form_fields_cnt#5 ) - (byte) form_field_idx#12 ← phi( form_control::@17/(byte) form_field_idx#23 ) - (byte) form_field_idx#3 ← -- (byte) form_field_idx#12 - (boolean~) form_control::$18 ← (byte) form_field_idx#3 == (byte/word/signed word/dword/signed dword) 255 + to:form_control::@19 +form_control::@5: scope:[form_control] from form_control::@18 + (byte) keyboard_modifiers#86 ← phi( form_control::@18/(byte) keyboard_modifiers#30 ) + (byte) keyboard_events_size#89 ← phi( form_control::@18/(byte) keyboard_events_size#102 ) + (byte) form_fields_cnt#6 ← phi( form_control::@18/(byte) form_fields_cnt#5 ) + (byte) form_field_idx#16 ← phi( form_control::@18/(byte) form_field_idx#29 ) + (byte) form_field_idx#5 ← -- (byte) form_field_idx#16 + (boolean~) form_control::$18 ← (byte) form_field_idx#5 == (byte/word/signed word/dword/signed dword) 255 (boolean~) form_control::$19 ← ! (boolean~) form_control::$18 if((boolean~) form_control::$19) goto form_control::@8 - to:form_control::@21 -form_control::@18: scope:[form_control] from form_control::@17 - (byte) keyboard_modifiers#60 ← phi( form_control::@17/(byte) keyboard_modifiers#20 ) - (byte) keyboard_events_size#63 ← phi( form_control::@17/(byte) keyboard_events_size#74 ) - (byte) form_fields_cnt#2 ← phi( form_control::@17/(byte) form_fields_cnt#5 ) - (byte) form_field_idx#13 ← phi( form_control::@17/(byte) form_field_idx#23 ) - (byte) form_field_idx#4 ← ++ (byte) form_field_idx#13 - (boolean~) form_control::$16 ← (byte) form_field_idx#4 == (byte) form_fields_cnt#2 + to:form_control::@22 +form_control::@19: scope:[form_control] from form_control::@18 + (byte) keyboard_modifiers#85 ← phi( form_control::@18/(byte) keyboard_modifiers#30 ) + (byte) keyboard_events_size#88 ← phi( form_control::@18/(byte) keyboard_events_size#102 ) + (byte) form_fields_cnt#2 ← phi( form_control::@18/(byte) form_fields_cnt#5 ) + (byte) form_field_idx#17 ← phi( form_control::@18/(byte) form_field_idx#29 ) + (byte) form_field_idx#6 ← ++ (byte) form_field_idx#17 + (boolean~) form_control::$16 ← (byte) form_field_idx#6 == (byte) form_fields_cnt#2 (boolean~) form_control::$17 ← ! (boolean~) form_control::$16 if((boolean~) form_control::$17) goto form_control::@6 - to:form_control::@19 -form_control::@6: scope:[form_control] from form_control::@18 - (byte) form_field_idx#34 ← phi( form_control::@18/(byte) form_field_idx#4 ) - (byte) keyboard_modifiers#48 ← phi( form_control::@18/(byte) keyboard_modifiers#60 ) - (byte) keyboard_events_size#47 ← phi( form_control::@18/(byte) keyboard_events_size#63 ) + to:form_control::@20 +form_control::@6: scope:[form_control] from form_control::@19 + (byte) form_field_idx#43 ← phi( form_control::@19/(byte) form_field_idx#6 ) + (byte) keyboard_modifiers#68 ← phi( form_control::@19/(byte) keyboard_modifiers#85 ) + (byte) keyboard_events_size#68 ← phi( form_control::@19/(byte) keyboard_events_size#88 ) to:form_control::@7 -form_control::@19: scope:[form_control] from form_control::@18 - (byte) keyboard_modifiers#46 ← phi( form_control::@18/(byte) keyboard_modifiers#60 ) - (byte) keyboard_events_size#45 ← phi( form_control::@18/(byte) keyboard_events_size#63 ) - (byte) form_field_idx#5 ← (byte/signed byte/word/signed word/dword/signed dword) 0 +form_control::@20: scope:[form_control] from form_control::@19 + (byte) keyboard_modifiers#66 ← phi( form_control::@19/(byte) keyboard_modifiers#85 ) + (byte) keyboard_events_size#66 ← phi( form_control::@19/(byte) keyboard_events_size#88 ) + (byte) form_field_idx#7 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:form_control::@7 -form_control::@7: scope:[form_control] from form_control::@19 form_control::@21 form_control::@6 form_control::@8 - (byte) form_field_idx#24 ← phi( form_control::@19/(byte) form_field_idx#5 form_control::@21/(byte) form_field_idx#6 form_control::@6/(byte) form_field_idx#34 form_control::@8/(byte) form_field_idx#35 ) - (byte) keyboard_modifiers#34 ← phi( form_control::@19/(byte) keyboard_modifiers#46 form_control::@21/(byte) keyboard_modifiers#47 form_control::@6/(byte) keyboard_modifiers#48 form_control::@8/(byte) keyboard_modifiers#49 ) - (byte) keyboard_events_size#34 ← phi( form_control::@19/(byte) keyboard_events_size#45 form_control::@21/(byte) keyboard_events_size#46 form_control::@6/(byte) keyboard_events_size#47 form_control::@8/(byte) keyboard_events_size#48 ) +form_control::@7: scope:[form_control] from form_control::@20 form_control::@22 form_control::@6 form_control::@8 + (byte) form_field_idx#32 ← phi( form_control::@20/(byte) form_field_idx#7 form_control::@22/(byte) form_field_idx#8 form_control::@6/(byte) form_field_idx#43 form_control::@8/(byte) form_field_idx#44 ) + (byte) keyboard_modifiers#51 ← phi( form_control::@20/(byte) keyboard_modifiers#66 form_control::@22/(byte) keyboard_modifiers#67 form_control::@6/(byte) keyboard_modifiers#68 form_control::@8/(byte) keyboard_modifiers#69 ) + (byte) keyboard_events_size#52 ← phi( form_control::@20/(byte) keyboard_events_size#66 form_control::@22/(byte) keyboard_events_size#67 form_control::@6/(byte) keyboard_events_size#68 form_control::@8/(byte) keyboard_events_size#69 ) (signed word/signed byte/signed dword~) form_control::$21 ← (signed byte) FORM_CURSOR_BLINK#0 / (byte/signed byte/word/signed word/dword/signed dword) 2 - (signed byte) form_cursor_count#5 ← (signed word/signed byte/signed dword~) form_control::$21 + (signed byte) form_cursor_count#7 ← (signed word/signed byte/signed dword~) form_control::$21 + (byte) form_control::return#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:form_control::@return form_control::@8: scope:[form_control] from form_control::@5 - (byte) form_field_idx#35 ← phi( form_control::@5/(byte) form_field_idx#3 ) - (byte) keyboard_modifiers#49 ← phi( form_control::@5/(byte) keyboard_modifiers#61 ) - (byte) keyboard_events_size#48 ← phi( form_control::@5/(byte) keyboard_events_size#64 ) + (byte) form_field_idx#44 ← phi( form_control::@5/(byte) form_field_idx#5 ) + (byte) keyboard_modifiers#69 ← phi( form_control::@5/(byte) keyboard_modifiers#86 ) + (byte) keyboard_events_size#69 ← phi( form_control::@5/(byte) keyboard_events_size#89 ) to:form_control::@7 -form_control::@21: scope:[form_control] from form_control::@5 - (byte) keyboard_modifiers#47 ← phi( form_control::@5/(byte) keyboard_modifiers#61 ) - (byte) keyboard_events_size#46 ← phi( form_control::@5/(byte) keyboard_events_size#64 ) +form_control::@22: scope:[form_control] from form_control::@5 + (byte) keyboard_modifiers#67 ← phi( form_control::@5/(byte) keyboard_modifiers#86 ) + (byte) keyboard_events_size#67 ← phi( form_control::@5/(byte) keyboard_events_size#89 ) (byte) form_fields_cnt#3 ← phi( form_control::@5/(byte) form_fields_cnt#6 ) (byte/signed word/word/dword/signed dword~) form_control::$20 ← (byte) form_fields_cnt#3 - (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) form_field_idx#6 ← (byte/signed word/word/dword/signed dword~) form_control::$20 + (byte) form_field_idx#8 ← (byte/signed word/word/dword/signed dword~) form_control::$20 to:form_control::@7 -form_control::@return: scope:[form_control] from form_control::@12 form_control::@7 form_control::@9 - (byte) form_field_idx#14 ← phi( form_control::@12/(byte) form_field_idx#18 form_control::@7/(byte) form_field_idx#24 form_control::@9/(byte) form_field_idx#25 ) - (byte) keyboard_modifiers#21 ← phi( form_control::@12/(byte) keyboard_modifiers#33 form_control::@7/(byte) keyboard_modifiers#34 form_control::@9/(byte) keyboard_modifiers#35 ) - (byte) keyboard_events_size#23 ← phi( form_control::@12/(byte) keyboard_events_size#33 form_control::@7/(byte) keyboard_events_size#34 form_control::@9/(byte) keyboard_events_size#35 ) - (signed byte) form_cursor_count#12 ← phi( form_control::@12/(signed byte) form_cursor_count#17 form_control::@7/(signed byte) form_cursor_count#5 form_control::@9/(signed byte) form_cursor_count#18 ) - (signed byte) form_cursor_count#6 ← (signed byte) form_cursor_count#12 - (byte) keyboard_events_size#10 ← (byte) keyboard_events_size#23 - (byte) keyboard_modifiers#10 ← (byte) keyboard_modifiers#21 - (byte) form_field_idx#7 ← (byte) form_field_idx#14 +form_control::@return: scope:[form_control] from form_control::@12 form_control::@14 form_control::@30 form_control::@7 + (byte) form_field_idx#18 ← phi( form_control::@12/(byte) form_field_idx#22 form_control::@14/(byte) form_field_idx#30 form_control::@30/(byte) form_field_idx#31 form_control::@7/(byte) form_field_idx#32 ) + (byte) keyboard_modifiers#31 ← phi( form_control::@12/(byte) keyboard_modifiers#48 form_control::@14/(byte) keyboard_modifiers#49 form_control::@30/(byte) keyboard_modifiers#50 form_control::@7/(byte) keyboard_modifiers#51 ) + (byte) keyboard_events_size#35 ← phi( form_control::@12/(byte) keyboard_events_size#49 form_control::@14/(byte) keyboard_events_size#50 form_control::@30/(byte) keyboard_events_size#51 form_control::@7/(byte) keyboard_events_size#52 ) + (signed byte) form_cursor_count#16 ← phi( form_control::@12/(signed byte) form_cursor_count#23 form_control::@14/(signed byte) form_cursor_count#24 form_control::@30/(signed byte) form_cursor_count#25 form_control::@7/(signed byte) form_cursor_count#7 ) + (byte) form_control::return#7 ← phi( form_control::@12/(byte) form_control::return#3 form_control::@14/(byte) form_control::return#4 form_control::@30/(byte) form_control::return#5 form_control::@7/(byte) form_control::return#1 ) + (byte) form_control::return#2 ← (byte) form_control::return#7 + (signed byte) form_cursor_count#8 ← (signed byte) form_cursor_count#16 + (byte) keyboard_events_size#16 ← (byte) keyboard_events_size#35 + (byte) keyboard_modifiers#15 ← (byte) keyboard_modifiers#31 + (byte) form_field_idx#9 ← (byte) form_field_idx#18 return to:@return form_control::@9: scope:[form_control] from form_control::@4 - (byte) form_field_idx#25 ← phi( form_control::@4/(byte) form_field_idx#36 ) - (byte) keyboard_modifiers#35 ← phi( form_control::@4/(byte) keyboard_modifiers#36 ) - (byte) keyboard_events_size#35 ← phi( form_control::@4/(byte) keyboard_events_size#49 ) - (signed byte) form_cursor_count#18 ← phi( form_control::@4/(signed byte) form_cursor_count#23 ) - to:form_control::@return -form_control::@23: scope:[form_control] from form_control::@4 - (byte) keyboard_events_size#75 ← phi( form_control::@4/(byte) keyboard_events_size#49 ) - (signed byte) form_cursor_count#37 ← phi( form_control::@4/(signed byte) form_cursor_count#23 ) + (byte) form_field_idx#46 ← phi( form_control::@4/(byte) form_field_idx#45 ) + (byte) keyboard_modifiers#74 ← phi( form_control::@4/(byte) keyboard_modifiers#52 ) + (byte) keyboard_events_size#74 ← phi( form_control::@4/(byte) keyboard_events_size#90 ) + (signed byte) form_cursor_count#36 ← phi( form_control::@4/(signed byte) form_cursor_count#41 ) + (byte) form_control::key_event#2 ← phi( form_control::@4/(byte) form_control::key_event#1 ) + (boolean~) form_control::$31 ← (byte) form_control::key_event#2 == (byte) KEY_SPACE#0 + (boolean~) form_control::$32 ← ! (boolean~) form_control::$31 + if((boolean~) form_control::$32) goto form_control::@14 + to:form_control::@30 +form_control::@24: scope:[form_control] from form_control::@4 + (byte) keyboard_events_size#103 ← phi( form_control::@4/(byte) keyboard_events_size#90 ) + (signed byte) form_cursor_count#47 ← phi( form_control::@4/(signed byte) form_cursor_count#41 ) (byte*) form_control::field#16 ← phi( form_control::@4/(byte*) form_control::field#17 ) - (byte) form_field_idx#26 ← phi( form_control::@4/(byte) form_field_idx#36 ) - (byte) keyboard_modifiers#22 ← phi( form_control::@4/(byte) keyboard_modifiers#36 ) - (byte~) form_control::$24 ← (byte) keyboard_modifiers#22 & (byte) KEY_MODIFIER_SHIFT#0 + (byte) form_field_idx#33 ← phi( form_control::@4/(byte) form_field_idx#45 ) + (byte) keyboard_modifiers#32 ← phi( form_control::@4/(byte) keyboard_modifiers#52 ) + (byte~) form_control::$24 ← (byte) keyboard_modifiers#32 & (byte) KEY_MODIFIER_SHIFT#0 (boolean~) form_control::$25 ← (byte~) form_control::$24 == (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) form_control::$26 ← ! (boolean~) form_control::$25 if((boolean~) form_control::$26) goto form_control::@10 - to:form_control::@24 -form_control::@10: scope:[form_control] from form_control::@23 - (byte) keyboard_modifiers#63 ← phi( form_control::@23/(byte) keyboard_modifiers#22 ) - (byte) keyboard_events_size#66 ← phi( form_control::@23/(byte) keyboard_events_size#75 ) - (signed byte) form_cursor_count#33 ← phi( form_control::@23/(signed byte) form_cursor_count#37 ) - (byte*) form_control::field#14 ← phi( form_control::@23/(byte*) form_control::field#16 ) - (byte) form_field_idx#15 ← phi( form_control::@23/(byte) form_field_idx#26 ) - *((byte[]) form_fields_val#0 + (byte) form_field_idx#15) ← -- *((byte[]) form_fields_val#0 + (byte) form_field_idx#15) - (boolean~) form_control::$29 ← *((byte[]) form_fields_val#0 + (byte) form_field_idx#15) == (byte/word/signed word/dword/signed dword) 255 + to:form_control::@25 +form_control::@10: scope:[form_control] from form_control::@24 + (byte) keyboard_modifiers#88 ← phi( form_control::@24/(byte) keyboard_modifiers#32 ) + (byte) keyboard_events_size#92 ← phi( form_control::@24/(byte) keyboard_events_size#103 ) + (signed byte) form_cursor_count#43 ← phi( form_control::@24/(signed byte) form_cursor_count#47 ) + (byte*) form_control::field#14 ← phi( form_control::@24/(byte*) form_control::field#16 ) + (byte) form_field_idx#19 ← phi( form_control::@24/(byte) form_field_idx#33 ) + *((byte[]) form_fields_val#0 + (byte) form_field_idx#19) ← -- *((byte[]) form_fields_val#0 + (byte) form_field_idx#19) + (boolean~) form_control::$29 ← *((byte[]) form_fields_val#0 + (byte) form_field_idx#19) == (byte/word/signed word/dword/signed dword) 255 (boolean~) form_control::$30 ← ! (boolean~) form_control::$29 if((boolean~) form_control::$30) goto form_control::@13 - to:form_control::@27 -form_control::@24: scope:[form_control] from form_control::@23 - (byte) keyboard_modifiers#62 ← phi( form_control::@23/(byte) keyboard_modifiers#22 ) - (byte) keyboard_events_size#65 ← phi( form_control::@23/(byte) keyboard_events_size#75 ) - (signed byte) form_cursor_count#32 ← phi( form_control::@23/(signed byte) form_cursor_count#37 ) - (byte*) form_control::field#13 ← phi( form_control::@23/(byte*) form_control::field#16 ) - (byte) form_field_idx#16 ← phi( form_control::@23/(byte) form_field_idx#26 ) - *((byte[]) form_fields_val#0 + (byte) form_field_idx#16) ← ++ *((byte[]) form_fields_val#0 + (byte) form_field_idx#16) - (boolean~) form_control::$27 ← *((byte[]) form_fields_val#0 + (byte) form_field_idx#16) > *((byte[]) form_fields_max#0 + (byte) form_field_idx#16) + to:form_control::@28 +form_control::@25: scope:[form_control] from form_control::@24 + (byte) keyboard_modifiers#87 ← phi( form_control::@24/(byte) keyboard_modifiers#32 ) + (byte) keyboard_events_size#91 ← phi( form_control::@24/(byte) keyboard_events_size#103 ) + (signed byte) form_cursor_count#42 ← phi( form_control::@24/(signed byte) form_cursor_count#47 ) + (byte*) form_control::field#13 ← phi( form_control::@24/(byte*) form_control::field#16 ) + (byte) form_field_idx#20 ← phi( form_control::@24/(byte) form_field_idx#33 ) + *((byte[]) form_fields_val#0 + (byte) form_field_idx#20) ← ++ *((byte[]) form_fields_val#0 + (byte) form_field_idx#20) + (boolean~) form_control::$27 ← *((byte[]) form_fields_val#0 + (byte) form_field_idx#20) > *((byte[]) form_fields_max#0 + (byte) form_field_idx#20) (boolean~) form_control::$28 ← ! (boolean~) form_control::$27 if((boolean~) form_control::$28) goto form_control::@11 - to:form_control::@25 -form_control::@11: scope:[form_control] from form_control::@24 - (byte) keyboard_modifiers#50 ← phi( form_control::@24/(byte) keyboard_modifiers#62 ) - (byte) keyboard_events_size#50 ← phi( form_control::@24/(byte) keyboard_events_size#65 ) - (signed byte) form_cursor_count#24 ← phi( form_control::@24/(signed byte) form_cursor_count#32 ) - (byte*) form_control::field#7 ← phi( form_control::@24/(byte*) form_control::field#13 ) - (byte) form_field_idx#27 ← phi( form_control::@24/(byte) form_field_idx#16 ) + to:form_control::@26 +form_control::@11: scope:[form_control] from form_control::@25 + (byte) keyboard_modifiers#70 ← phi( form_control::@25/(byte) keyboard_modifiers#87 ) + (byte) keyboard_events_size#70 ← phi( form_control::@25/(byte) keyboard_events_size#91 ) + (signed byte) form_cursor_count#32 ← phi( form_control::@25/(signed byte) form_cursor_count#42 ) + (byte*) form_control::field#7 ← phi( form_control::@25/(byte*) form_control::field#13 ) + (byte) form_field_idx#34 ← phi( form_control::@25/(byte) form_field_idx#20 ) to:form_control::@12 -form_control::@25: scope:[form_control] from form_control::@24 - (byte) keyboard_modifiers#52 ← phi( form_control::@24/(byte) keyboard_modifiers#62 ) - (byte) keyboard_events_size#52 ← phi( form_control::@24/(byte) keyboard_events_size#65 ) - (signed byte) form_cursor_count#26 ← phi( form_control::@24/(signed byte) form_cursor_count#32 ) - (byte*) form_control::field#9 ← phi( form_control::@24/(byte*) form_control::field#13 ) - (byte) form_field_idx#17 ← phi( form_control::@24/(byte) form_field_idx#16 ) - *((byte[]) form_fields_val#0 + (byte) form_field_idx#17) ← (byte/signed byte/word/signed word/dword/signed dword) 0 +form_control::@26: scope:[form_control] from form_control::@25 + (byte) keyboard_modifiers#72 ← phi( form_control::@25/(byte) keyboard_modifiers#87 ) + (byte) keyboard_events_size#72 ← phi( form_control::@25/(byte) keyboard_events_size#91 ) + (signed byte) form_cursor_count#34 ← phi( form_control::@25/(signed byte) form_cursor_count#42 ) + (byte*) form_control::field#9 ← phi( form_control::@25/(byte*) form_control::field#13 ) + (byte) form_field_idx#21 ← phi( form_control::@25/(byte) form_field_idx#20 ) + *((byte[]) form_fields_val#0 + (byte) form_field_idx#21) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:form_control::@12 -form_control::@12: scope:[form_control] from form_control::@11 form_control::@13 form_control::@25 form_control::@27 - (byte) keyboard_modifiers#33 ← phi( form_control::@11/(byte) keyboard_modifiers#50 form_control::@13/(byte) keyboard_modifiers#51 form_control::@25/(byte) keyboard_modifiers#52 form_control::@27/(byte) keyboard_modifiers#53 ) - (byte) keyboard_events_size#33 ← phi( form_control::@11/(byte) keyboard_events_size#50 form_control::@13/(byte) keyboard_events_size#51 form_control::@25/(byte) keyboard_events_size#52 form_control::@27/(byte) keyboard_events_size#53 ) - (signed byte) form_cursor_count#17 ← phi( form_control::@11/(signed byte) form_cursor_count#24 form_control::@13/(signed byte) form_cursor_count#25 form_control::@25/(signed byte) form_cursor_count#26 form_control::@27/(signed byte) form_cursor_count#27 ) - (byte*) form_control::field#4 ← phi( form_control::@11/(byte*) form_control::field#7 form_control::@13/(byte*) form_control::field#8 form_control::@25/(byte*) form_control::field#9 form_control::@27/(byte*) form_control::field#10 ) - (byte) form_field_idx#18 ← phi( form_control::@11/(byte) form_field_idx#27 form_control::@13/(byte) form_field_idx#28 form_control::@25/(byte) form_field_idx#17 form_control::@27/(byte) form_field_idx#19 ) - *((byte*) form_control::field#4) ← *((byte[]) print_hextab#0 + *((byte[]) form_fields_val#0 + (byte) form_field_idx#18)) +form_control::@12: scope:[form_control] from form_control::@11 form_control::@13 form_control::@26 form_control::@28 + (byte) keyboard_modifiers#48 ← phi( form_control::@11/(byte) keyboard_modifiers#70 form_control::@13/(byte) keyboard_modifiers#71 form_control::@26/(byte) keyboard_modifiers#72 form_control::@28/(byte) keyboard_modifiers#73 ) + (byte) keyboard_events_size#49 ← phi( form_control::@11/(byte) keyboard_events_size#70 form_control::@13/(byte) keyboard_events_size#71 form_control::@26/(byte) keyboard_events_size#72 form_control::@28/(byte) keyboard_events_size#73 ) + (signed byte) form_cursor_count#23 ← phi( form_control::@11/(signed byte) form_cursor_count#32 form_control::@13/(signed byte) form_cursor_count#33 form_control::@26/(signed byte) form_cursor_count#34 form_control::@28/(signed byte) form_cursor_count#35 ) + (byte*) form_control::field#4 ← phi( form_control::@11/(byte*) form_control::field#7 form_control::@13/(byte*) form_control::field#8 form_control::@26/(byte*) form_control::field#9 form_control::@28/(byte*) form_control::field#10 ) + (byte) form_field_idx#22 ← phi( form_control::@11/(byte) form_field_idx#34 form_control::@13/(byte) form_field_idx#35 form_control::@26/(byte) form_field_idx#21 form_control::@28/(byte) form_field_idx#23 ) + *((byte*) form_control::field#4) ← *((byte[]) print_hextab#0 + *((byte[]) form_fields_val#0 + (byte) form_field_idx#22)) + (byte) form_control::return#3 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:form_control::@return form_control::@13: scope:[form_control] from form_control::@10 - (byte) keyboard_modifiers#51 ← phi( form_control::@10/(byte) keyboard_modifiers#63 ) - (byte) keyboard_events_size#51 ← phi( form_control::@10/(byte) keyboard_events_size#66 ) - (signed byte) form_cursor_count#25 ← phi( form_control::@10/(signed byte) form_cursor_count#33 ) + (byte) keyboard_modifiers#71 ← phi( form_control::@10/(byte) keyboard_modifiers#88 ) + (byte) keyboard_events_size#71 ← phi( form_control::@10/(byte) keyboard_events_size#92 ) + (signed byte) form_cursor_count#33 ← phi( form_control::@10/(signed byte) form_cursor_count#43 ) (byte*) form_control::field#8 ← phi( form_control::@10/(byte*) form_control::field#14 ) - (byte) form_field_idx#28 ← phi( form_control::@10/(byte) form_field_idx#15 ) + (byte) form_field_idx#35 ← phi( form_control::@10/(byte) form_field_idx#19 ) to:form_control::@12 -form_control::@27: scope:[form_control] from form_control::@10 - (byte) keyboard_modifiers#53 ← phi( form_control::@10/(byte) keyboard_modifiers#63 ) - (byte) keyboard_events_size#53 ← phi( form_control::@10/(byte) keyboard_events_size#66 ) - (signed byte) form_cursor_count#27 ← phi( form_control::@10/(signed byte) form_cursor_count#33 ) +form_control::@28: scope:[form_control] from form_control::@10 + (byte) keyboard_modifiers#73 ← phi( form_control::@10/(byte) keyboard_modifiers#88 ) + (byte) keyboard_events_size#73 ← phi( form_control::@10/(byte) keyboard_events_size#92 ) + (signed byte) form_cursor_count#35 ← phi( form_control::@10/(signed byte) form_cursor_count#43 ) (byte*) form_control::field#10 ← phi( form_control::@10/(byte*) form_control::field#14 ) - (byte) form_field_idx#19 ← phi( form_control::@10/(byte) form_field_idx#15 ) - *((byte[]) form_fields_val#0 + (byte) form_field_idx#19) ← *((byte[]) form_fields_max#0 + (byte) form_field_idx#19) + (byte) form_field_idx#23 ← phi( form_control::@10/(byte) form_field_idx#19 ) + *((byte[]) form_fields_val#0 + (byte) form_field_idx#23) ← *((byte[]) form_fields_max#0 + (byte) form_field_idx#23) to:form_control::@12 -@32: scope:[] from @28 - (byte) form_fields_cnt#30 ← phi( @28/(byte) form_fields_cnt#33 ) - (byte) form_field_idx#29 ← phi( @28/(byte) form_field_idx#2 ) - (byte) keyboard_modifiers#37 ← phi( @28/(byte) keyboard_modifiers#54 ) - (byte) keyboard_events_size#36 ← phi( @28/(byte) keyboard_events_size#54 ) - (signed byte) form_cursor_count#19 ← phi( @28/(signed byte) form_cursor_count#2 ) - (byte*) print_char_cursor#38 ← phi( @28/(byte*) print_char_cursor#45 ) - (byte*) print_line_cursor#36 ← phi( @28/(byte*) print_line_cursor#42 ) - (byte*) print_screen#21 ← phi( @28/(byte*) print_screen#25 ) +form_control::@14: scope:[form_control] from form_control::@9 + (byte) form_field_idx#30 ← phi( form_control::@9/(byte) form_field_idx#46 ) + (byte) keyboard_modifiers#49 ← phi( form_control::@9/(byte) keyboard_modifiers#74 ) + (byte) keyboard_events_size#50 ← phi( form_control::@9/(byte) keyboard_events_size#74 ) + (signed byte) form_cursor_count#24 ← phi( form_control::@9/(signed byte) form_cursor_count#36 ) + (byte) form_control::return#4 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + to:form_control::@return +form_control::@30: scope:[form_control] from form_control::@9 + (byte) form_field_idx#31 ← phi( form_control::@9/(byte) form_field_idx#46 ) + (byte) keyboard_modifiers#50 ← phi( form_control::@9/(byte) keyboard_modifiers#74 ) + (byte) keyboard_events_size#51 ← phi( form_control::@9/(byte) keyboard_events_size#74 ) + (signed byte) form_cursor_count#25 ← phi( form_control::@9/(signed byte) form_cursor_count#36 ) + (byte) form_control::return#5 ← (byte/word/signed word/dword/signed dword) 255 + to:form_control::@return +@33: scope:[] from @29 + (byte) form_fields_cnt#35 ← phi( @29/(byte) form_fields_cnt#39 ) + (byte) form_field_idx#36 ← phi( @29/(byte) form_field_idx#4 ) + (byte) keyboard_modifiers#53 ← phi( @29/(byte) keyboard_modifiers#75 ) + (byte) keyboard_events_size#53 ← phi( @29/(byte) keyboard_events_size#75 ) + (signed byte) form_cursor_count#26 ← phi( @29/(signed byte) form_cursor_count#4 ) + (byte*) print_char_cursor#45 ← phi( @29/(byte*) print_char_cursor#52 ) + (byte*) print_line_cursor#43 ← phi( @29/(byte*) print_line_cursor#49 ) + (byte*) print_screen#24 ← phi( @29/(byte*) print_screen#29 ) call main param-assignment - to:@33 -@33: scope:[] from @32 - (byte) form_field_idx#20 ← phi( @32/(byte) form_field_idx#1 ) - (byte) keyboard_modifiers#23 ← phi( @32/(byte) keyboard_modifiers#8 ) - (byte) keyboard_events_size#24 ← phi( @32/(byte) keyboard_events_size#7 ) - (signed byte) form_cursor_count#13 ← phi( @32/(signed byte) form_cursor_count#1 ) - (byte*) print_char_cursor#29 ← phi( @32/(byte*) print_char_cursor#9 ) - (byte*) print_line_cursor#28 ← phi( @32/(byte*) print_line_cursor#8 ) - (byte*) print_screen#15 ← phi( @32/(byte*) print_screen#4 ) - (byte*) print_screen#8 ← (byte*) print_screen#15 - (byte*) print_line_cursor#14 ← (byte*) print_line_cursor#28 - (byte*) print_char_cursor#15 ← (byte*) print_char_cursor#29 - (signed byte) form_cursor_count#7 ← (signed byte) form_cursor_count#13 - (byte) keyboard_events_size#11 ← (byte) keyboard_events_size#24 - (byte) keyboard_modifiers#11 ← (byte) keyboard_modifiers#23 - (byte) form_field_idx#8 ← (byte) form_field_idx#20 + to:@34 +@34: scope:[] from @33 + (byte) form_field_idx#24 ← phi( @33/(byte) form_field_idx#1 ) + (byte) keyboard_modifiers#33 ← phi( @33/(byte) keyboard_modifiers#9 ) + (byte) keyboard_events_size#36 ← phi( @33/(byte) keyboard_events_size#8 ) + (signed byte) form_cursor_count#17 ← phi( @33/(signed byte) form_cursor_count#1 ) + (byte*) print_char_cursor#36 ← phi( @33/(byte*) print_char_cursor#11 ) + (byte*) print_line_cursor#35 ← phi( @33/(byte*) print_line_cursor#10 ) + (byte*) print_screen#18 ← phi( @33/(byte*) print_screen#4 ) + (byte*) print_screen#8 ← (byte*) print_screen#18 + (byte*) print_line_cursor#18 ← (byte*) print_line_cursor#35 + (byte*) print_char_cursor#19 ← (byte*) print_char_cursor#36 + (signed byte) form_cursor_count#9 ← (signed byte) form_cursor_count#17 + (byte) keyboard_events_size#17 ← (byte) keyboard_events_size#36 + (byte) keyboard_modifiers#16 ← (byte) keyboard_modifiers#33 + (byte) form_field_idx#10 ← (byte) form_field_idx#24 to:@end -@end: scope:[] from @33 +@end: scope:[] from @34 SYMBOL TABLE SSA (byte~) $0 -(word/signed word/dword/signed dword~) $1 +(string~) $1 (string~) $10 (string~) $11 (string~) $12 @@ -5706,8 +6149,8 @@ SYMBOL TABLE SSA (string~) $16 (string~) $17 (string~) $18 -(string~) $19 (string~) $2 +(byte*~) $20 (byte*~) $21 (byte*~) $22 (byte*~) $23 @@ -5716,21 +6159,21 @@ SYMBOL TABLE SSA (byte*~) $26 (byte*~) $27 (byte*~) $28 -(byte*~) $29 (string~) $3 +(byte*~) $30 (byte*~) $31 (byte*~) $32 (byte*~) $33 (byte*~) $34 (byte*~) $35 -(byte*~) $36 +(byte*~) $37 (byte*~) $38 (byte*~) $39 (string~) $4 (byte*~) $40 (byte*~) $41 (byte*~) $42 -(byte*~) $43 +(byte*~) $46 (byte*~) $47 (byte*~) $48 (byte*~) $49 @@ -5739,31 +6182,30 @@ SYMBOL TABLE SSA (byte*~) $51 (byte*~) $52 (byte*~) $53 -(byte*~) $54 -(signed word/signed byte/signed dword~) $55 -(const string) $56 = (string) "0123456789abcdef" -(const string) $57 = (string) "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@" +(signed word/signed byte/signed dword~) $54 +(const string) $55 = (string) "0123456789abcdef" +(const string) $56 = (string) "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@" +(const string) $57 = (string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" (const string) $58 = (string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" (const string) $59 = (string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" (string~) $6 (const string) $60 = (string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" (const string) $61 = (string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" -(const string) $62 = (string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" -(const string) $63 = (string) " nnnnnnn ooooooooo @" +(const string) $62 = (string) " nnnnnnn ooooooooo @" +(const string) $63 = (string) " nnnnnnn nnnnnnnn ooooooooo @" (const string) $64 = (string) " nnnnnnn nnnnnnnn ooooooooo @" -(const string) $65 = (string) " nnnnnnn nnnnnnnn ooooooooo @" -(const string) $66 = (string) "@" -(const string) $67 = (string) " DTV GfxExplorer MODE 0 8bpp pixel cell @" -(const string) $68 = (string) " CONTROL PLANE A PLANE B VIC II @" -(const string) $69 = (string) " bmm 0 patt p0 patt p0 screen s0 @" +(const string) $65 = (string) "@" +(const string) $66 = (string) " DTV GfxExplorer MODE 0 8bpp pixel cell @" +(const string) $67 = (string) " CONTROL PLANE A PLANE B VIC II @" +(const string) $68 = (string) " bmm 0 patt p0 patt p0 screen s0 @" +(const string) $69 = (string) " mcm 0 start 00 start 00 gfx g0 @" (string~) $7 -(const string) $70 = (string) " mcm 0 start 00 start 00 gfx g0 @" -(const string) $71 = (string) " ecm 0 step 00 step 00 colors c0 @" -(const string) $72 = (string) " hicol 0 mod 00 mod 00 bgcol0 00 @" -(const string) $73 = (string) " line 0 bgcol1 00 @" -(const string) $74 = (string) " colof 0 borof 0 bgcol2 00 @" -(const string) $75 = (string) " chunk 0 overs 0 bgcol3 00 @" -(const string) $76 = (string) "@" +(const string) $70 = (string) " ecm 0 step 00 step 00 colors c0 @" +(const string) $71 = (string) " hicol 0 mod 00 mod 00 bgcol0 00 @" +(const string) $72 = (string) " line 0 bgcol1 00 @" +(const string) $73 = (string) " colof 0 borof 0 bgcol2 00 @" +(const string) $74 = (string) " chunk 0 overs 0 bgcol3 00 @" +(const string) $75 = (string) "@" (string~) $8 (string~) $9 (label) @1 @@ -5771,9 +6213,9 @@ SYMBOL TABLE SSA (label) @15 (label) @19 (label) @23 -(label) @28 -(label) @32 +(label) @29 (label) @33 +(label) @34 (label) @begin (label) @end (byte*) BGCOL @@ -5786,8 +6228,6 @@ SYMBOL TABLE SSA (byte*) BGCOL3#0 (byte*) BGCOL4 (byte*) BGCOL4#0 -(byte*) BORDERCOL -(byte*) BORDERCOL#0 (byte*) CIA1_PORT_A (byte*) CIA1_PORT_A#0 (byte*) CIA1_PORT_A_DDR @@ -5862,8 +6302,6 @@ SYMBOL TABLE SSA (byte[]) FORM_COLS#0 (signed byte) FORM_CURSOR_BLINK (signed byte) FORM_CURSOR_BLINK#0 -(word) FORM_OFFSET -(word) FORM_OFFSET#0 (byte*) FORM_SCREEN (byte*) FORM_SCREEN#0 (byte[]) FORM_TEXT @@ -5890,6 +6328,8 @@ SYMBOL TABLE SSA (byte) KEY_MODIFIER_SHIFT#0 (byte) KEY_RSHIFT (byte) KEY_RSHIFT#0 +(byte) KEY_SPACE +(byte) KEY_SPACE#0 (dword) PLANE_8BPP_CHUNKY (dword) PLANE_8BPP_CHUNKY#0 (byte*) RASTER @@ -5912,6 +6352,8 @@ SYMBOL TABLE SSA (byte*) VIC_MEMORY#0 (byte) VIC_RSEL (byte) VIC_RSEL#0 +(byte*) VIC_SCREEN_STDCHAR +(byte*) VIC_SCREEN_STDCHAR#0 (void()) dtvSetCpuBankSegment1((byte) dtvSetCpuBankSegment1::cpuBankIdx) (label) dtvSetCpuBankSegment1::@return (byte*) dtvSetCpuBankSegment1::cpuBank @@ -5945,7 +6387,7 @@ SYMBOL TABLE SSA (byte*) form_b_step_hi#0 (byte*) form_b_step_lo (byte*) form_b_step_lo#0 -(void()) form_control() +(byte()) form_control() (byte*~) form_control::$0 (boolean~) form_control::$1 (boolean~) form_control::$10 @@ -5971,6 +6413,8 @@ SYMBOL TABLE SSA (boolean~) form_control::$29 (signed word/signed byte/signed dword~) form_control::$3 (boolean~) form_control::$30 +(boolean~) form_control::$31 +(boolean~) form_control::$32 (boolean~) form_control::$4 (boolean~) form_control::$5 (byte/word/dword~) form_control::$6 @@ -5983,19 +6427,21 @@ SYMBOL TABLE SSA (label) form_control::@13 (label) form_control::@14 (label) form_control::@15 -(label) form_control::@17 +(label) form_control::@16 (label) form_control::@18 (label) form_control::@19 (label) form_control::@2 -(label) form_control::@21 -(label) form_control::@23 +(label) form_control::@20 +(label) form_control::@22 (label) form_control::@24 (label) form_control::@25 -(label) form_control::@27 -(label) form_control::@29 +(label) form_control::@26 +(label) form_control::@28 (label) form_control::@3 (label) form_control::@30 -(label) form_control::@31 +(label) form_control::@33 +(label) form_control::@34 +(label) form_control::@35 (label) form_control::@4 (label) form_control::@5 (label) form_control::@6 @@ -6025,6 +6471,16 @@ SYMBOL TABLE SSA (byte) form_control::key_event (byte) form_control::key_event#0 (byte) form_control::key_event#1 +(byte) form_control::key_event#2 +(byte) form_control::return +(byte) form_control::return#0 +(byte) form_control::return#1 +(byte) form_control::return#2 +(byte) form_control::return#3 +(byte) form_control::return#4 +(byte) form_control::return#5 +(byte) form_control::return#6 +(byte) form_control::return#7 (byte*) form_ctrl_bmm (byte*) form_ctrl_bmm#0 (byte*) form_ctrl_borof @@ -6084,7 +6540,15 @@ SYMBOL TABLE SSA (signed byte) form_cursor_count#42 (signed byte) form_cursor_count#43 (signed byte) form_cursor_count#44 +(signed byte) form_cursor_count#45 +(signed byte) form_cursor_count#46 +(signed byte) form_cursor_count#47 +(signed byte) form_cursor_count#48 +(signed byte) form_cursor_count#49 (signed byte) form_cursor_count#5 +(signed byte) form_cursor_count#50 +(signed byte) form_cursor_count#51 +(signed byte) form_cursor_count#52 (signed byte) form_cursor_count#6 (signed byte) form_cursor_count#7 (signed byte) form_cursor_count#8 @@ -6139,7 +6603,15 @@ SYMBOL TABLE SSA (byte) form_field_idx#50 (byte) form_field_idx#51 (byte) form_field_idx#52 +(byte) form_field_idx#53 +(byte) form_field_idx#54 +(byte) form_field_idx#55 +(byte) form_field_idx#56 +(byte) form_field_idx#57 +(byte) form_field_idx#58 +(byte) form_field_idx#59 (byte) form_field_idx#6 +(byte) form_field_idx#60 (byte) form_field_idx#7 (byte) form_field_idx#8 (byte) form_field_idx#9 @@ -6203,6 +6675,11 @@ SYMBOL TABLE SSA (byte) form_fields_cnt#38 (byte) form_fields_cnt#39 (byte) form_fields_cnt#4 +(byte) form_fields_cnt#40 +(byte) form_fields_cnt#41 +(byte) form_fields_cnt#42 +(byte) form_fields_cnt#43 +(byte) form_fields_cnt#44 (byte) form_fields_cnt#5 (byte) form_fields_cnt#6 (byte) form_fields_cnt#7 @@ -6217,15 +6694,14 @@ SYMBOL TABLE SSA (byte[]) form_fields_y (byte[]) form_fields_y#0 (void()) form_init() -(byte*~) form_init::$0 -(byte*~) form_init::$3 -(byte*~) form_init::$6 (label) form_init::@1 (label) form_init::@2 (label) form_init::@3 (label) form_init::@4 (label) form_init::@5 (label) form_init::@6 +(label) form_init::@7 +(label) form_init::@8 (label) form_init::@return (byte[25]) form_line_hi (byte[25]) form_line_hi#0 @@ -6249,6 +6725,10 @@ SYMBOL TABLE SSA (word/dword~) form_mode::$21 (byte~) form_mode::$22 (boolean~) form_mode::$23 +(boolean~) form_mode::$24 +(byte~) form_mode::$25 +(boolean~) form_mode::$26 +(boolean~) form_mode::$27 (dword~) form_mode::$3 (word~) form_mode::$4 (byte~) form_mode::$5 @@ -6257,7 +6737,14 @@ SYMBOL TABLE SSA (byte~) form_mode::$8 (word~) form_mode::$9 (label) form_mode::@1 +(label) form_mode::@19 (label) form_mode::@2 +(label) form_mode::@3 +(label) form_mode::@5 +(label) form_mode::@6 +(label) form_mode::@7 +(label) form_mode::@8 +(label) form_mode::@9 (label) form_mode::@return (byte) form_mode::i (byte) form_mode::i#0 @@ -6312,6 +6799,7 @@ SYMBOL TABLE SSA (byte*) form_vic_bg3_lo#0 (void()) gfx_init() (label) gfx_init::@1 +(label) gfx_init::@2 (label) gfx_init::@return (void()) gfx_init_plane_8bppchunky() (dword~) gfx_init_plane_8bppchunky::$0 @@ -6371,6 +6859,33 @@ SYMBOL TABLE SSA (byte) gfx_init_plane_8bppchunky::y#5 (byte) gfx_init_plane_8bppchunky::y#6 (byte) gfx_init_plane_8bppchunky::y#7 +(void()) gfx_init_screen_stdchar() +(byte~) gfx_init_screen_stdchar::$0 +(byte~) gfx_init_screen_stdchar::$1 +(byte~) gfx_init_screen_stdchar::$2 +(byte~) gfx_init_screen_stdchar::$3 +(boolean~) gfx_init_screen_stdchar::$4 +(boolean~) gfx_init_screen_stdchar::$5 +(label) gfx_init_screen_stdchar::@1 +(label) gfx_init_screen_stdchar::@2 +(label) gfx_init_screen_stdchar::@3 +(label) gfx_init_screen_stdchar::@return +(byte*) gfx_init_screen_stdchar::ch +(byte*) gfx_init_screen_stdchar::ch#0 +(byte*) gfx_init_screen_stdchar::ch#1 +(byte*) gfx_init_screen_stdchar::ch#2 +(byte*) gfx_init_screen_stdchar::ch#3 +(byte*) gfx_init_screen_stdchar::ch#4 +(byte) gfx_init_screen_stdchar::cx +(byte) gfx_init_screen_stdchar::cx#0 +(byte) gfx_init_screen_stdchar::cx#1 +(byte) gfx_init_screen_stdchar::cx#2 +(byte) gfx_init_screen_stdchar::cy +(byte) gfx_init_screen_stdchar::cy#0 +(byte) gfx_init_screen_stdchar::cy#1 +(byte) gfx_init_screen_stdchar::cy#2 +(byte) gfx_init_screen_stdchar::cy#3 +(byte) gfx_init_screen_stdchar::cy#4 (void()) gfx_mode() (boolean~) gfx_mode::$0 (boolean~) gfx_mode::$1 @@ -6434,6 +6949,10 @@ SYMBOL TABLE SSA (byte~) gfx_mode::$62 (byte~) gfx_mode::$63 (boolean~) gfx_mode::$64 +(boolean~) gfx_mode::$65 +(byte~) gfx_mode::$67 +(boolean~) gfx_mode::$68 +(boolean~) gfx_mode::$69 (boolean~) gfx_mode::$7 (byte~) gfx_mode::$8 (boolean~) gfx_mode::$9 @@ -6441,7 +6960,6 @@ SYMBOL TABLE SSA (label) gfx_mode::@10 (label) gfx_mode::@11 (label) gfx_mode::@12 -(label) gfx_mode::@13 (label) gfx_mode::@14 (label) gfx_mode::@15 (label) gfx_mode::@16 @@ -6449,7 +6967,16 @@ SYMBOL TABLE SSA (label) gfx_mode::@18 (label) gfx_mode::@19 (label) gfx_mode::@2 +(label) gfx_mode::@20 +(label) gfx_mode::@21 +(label) gfx_mode::@22 +(label) gfx_mode::@23 +(label) gfx_mode::@24 +(label) gfx_mode::@25 +(label) gfx_mode::@26 (label) gfx_mode::@3 +(label) gfx_mode::@36 +(label) gfx_mode::@37 (label) gfx_mode::@4 (label) gfx_mode::@5 (label) gfx_mode::@6 @@ -6481,6 +7008,8 @@ SYMBOL TABLE SSA (byte) gfx_mode::i#0 (byte) gfx_mode::i#1 (byte) gfx_mode::i#2 +(byte) gfx_mode::keyboard_event +(byte) gfx_mode::keyboard_event#0 (dword) gfx_mode::plane_a (dword) gfx_mode::plane_a#0 (byte) gfx_mode::plane_a_offs @@ -6515,6 +7044,8 @@ SYMBOL TABLE SSA (byte) keyboard_event_get::return#3 (byte) keyboard_event_get::return#4 (byte) keyboard_event_get::return#5 +(byte) keyboard_event_get::return#6 +(byte) keyboard_event_get::return#7 (byte()) keyboard_event_pressed((byte) keyboard_event_pressed::keycode) (byte~) keyboard_event_pressed::$0 (byte~) keyboard_event_pressed::$1 @@ -6662,9 +7193,42 @@ SYMBOL TABLE SSA (byte) keyboard_events_size#0 (byte) keyboard_events_size#1 (byte) keyboard_events_size#10 +(byte) keyboard_events_size#100 +(byte) keyboard_events_size#101 +(byte) keyboard_events_size#102 +(byte) keyboard_events_size#103 +(byte) keyboard_events_size#104 +(byte) keyboard_events_size#105 +(byte) keyboard_events_size#106 +(byte) keyboard_events_size#107 +(byte) keyboard_events_size#108 +(byte) keyboard_events_size#109 (byte) keyboard_events_size#11 +(byte) keyboard_events_size#110 +(byte) keyboard_events_size#111 +(byte) keyboard_events_size#112 +(byte) keyboard_events_size#113 +(byte) keyboard_events_size#114 +(byte) keyboard_events_size#115 +(byte) keyboard_events_size#116 +(byte) keyboard_events_size#117 +(byte) keyboard_events_size#118 +(byte) keyboard_events_size#119 (byte) keyboard_events_size#12 +(byte) keyboard_events_size#120 +(byte) keyboard_events_size#121 +(byte) keyboard_events_size#122 +(byte) keyboard_events_size#123 +(byte) keyboard_events_size#124 +(byte) keyboard_events_size#125 +(byte) keyboard_events_size#126 +(byte) keyboard_events_size#127 +(byte) keyboard_events_size#128 +(byte) keyboard_events_size#129 (byte) keyboard_events_size#13 +(byte) keyboard_events_size#130 +(byte) keyboard_events_size#131 +(byte) keyboard_events_size#132 (byte) keyboard_events_size#14 (byte) keyboard_events_size#15 (byte) keyboard_events_size#16 @@ -6751,6 +7315,14 @@ SYMBOL TABLE SSA (byte) keyboard_events_size#9 (byte) keyboard_events_size#90 (byte) keyboard_events_size#91 +(byte) keyboard_events_size#92 +(byte) keyboard_events_size#93 +(byte) keyboard_events_size#94 +(byte) keyboard_events_size#95 +(byte) keyboard_events_size#96 +(byte) keyboard_events_size#97 +(byte) keyboard_events_size#98 +(byte) keyboard_events_size#99 (void()) keyboard_init() (label) keyboard_init::@return (byte[8]) keyboard_matrix_col_bitmask @@ -6775,7 +7347,20 @@ SYMBOL TABLE SSA (byte) keyboard_modifiers#0 (byte) keyboard_modifiers#1 (byte) keyboard_modifiers#10 +(byte) keyboard_modifiers#100 +(byte) keyboard_modifiers#101 +(byte) keyboard_modifiers#102 +(byte) keyboard_modifiers#103 +(byte) keyboard_modifiers#104 +(byte) keyboard_modifiers#105 +(byte) keyboard_modifiers#106 +(byte) keyboard_modifiers#107 +(byte) keyboard_modifiers#108 +(byte) keyboard_modifiers#109 (byte) keyboard_modifiers#11 +(byte) keyboard_modifiers#110 +(byte) keyboard_modifiers#111 +(byte) keyboard_modifiers#112 (byte) keyboard_modifiers#12 (byte) keyboard_modifiers#13 (byte) keyboard_modifiers#14 @@ -6843,26 +7428,42 @@ SYMBOL TABLE SSA (byte) keyboard_modifiers#70 (byte) keyboard_modifiers#71 (byte) keyboard_modifiers#72 +(byte) keyboard_modifiers#73 +(byte) keyboard_modifiers#74 +(byte) keyboard_modifiers#75 +(byte) keyboard_modifiers#76 +(byte) keyboard_modifiers#77 +(byte) keyboard_modifiers#78 +(byte) keyboard_modifiers#79 (byte) keyboard_modifiers#8 +(byte) keyboard_modifiers#80 +(byte) keyboard_modifiers#81 +(byte) keyboard_modifiers#82 +(byte) keyboard_modifiers#83 +(byte) keyboard_modifiers#84 +(byte) keyboard_modifiers#85 +(byte) keyboard_modifiers#86 +(byte) keyboard_modifiers#87 +(byte) keyboard_modifiers#88 +(byte) keyboard_modifiers#89 (byte) keyboard_modifiers#9 +(byte) keyboard_modifiers#90 +(byte) keyboard_modifiers#91 +(byte) keyboard_modifiers#92 +(byte) keyboard_modifiers#93 +(byte) keyboard_modifiers#94 +(byte) keyboard_modifiers#95 +(byte) keyboard_modifiers#96 +(byte) keyboard_modifiers#97 +(byte) keyboard_modifiers#98 +(byte) keyboard_modifiers#99 (byte[8]) keyboard_scan_values (byte[8]) keyboard_scan_values#0 (void()) main() -(byte/word/signed word/dword/signed dword~) main::$3 -(byte/word/signed word/dword/signed dword~) main::$4 -(boolean~) main::$5 -(boolean~) main::$7 (label) main::@1 -(label) main::@19 +(label) main::@10 +(label) main::@11 (label) main::@2 -(label) main::@20 -(label) main::@21 -(label) main::@22 -(label) main::@23 -(label) main::@24 -(label) main::@4 -(label) main::@5 -(label) main::@6 (label) main::@7 (label) main::@8 (label) main::@9 @@ -6928,6 +7529,16 @@ SYMBOL TABLE SSA (byte*) print_char_cursor#7 (byte*) print_char_cursor#8 (byte*) print_char_cursor#9 +(void()) print_cls() +(byte*~) print_cls::$0 +(boolean~) print_cls::$1 +(label) print_cls::@1 +(label) print_cls::@2 +(label) print_cls::@return +(byte*) print_cls::sc +(byte*) print_cls::sc#0 +(byte*) print_cls::sc#1 +(byte*) print_cls::sc#2 (byte[]) print_hextab (byte[]) print_hextab#0 (byte*) print_line_cursor @@ -7031,9 +7642,7 @@ SYMBOL TABLE SSA (byte*) print_screen#36 (byte*) print_screen#37 (byte*) print_screen#38 -(byte*) print_screen#39 (byte*) print_screen#4 -(byte*) print_screen#40 (byte*) print_screen#5 (byte*) print_screen#6 (byte*) print_screen#7 @@ -7076,19 +7685,19 @@ SYMBOL TABLE SSA (byte*) print_str_lines::str#9 OPTIMIZING CONTROL FLOW GRAPH -Culled Empty Block (label) gfx_init::@1 +Culled Empty Block (label) gfx_init::@2 Culled Empty Block (label) gfx_init_plane_8bppchunky::@9 Succesful SSA optimization Pass2CullEmptyBlocks Inversing boolean not (boolean~) print_str_lines::$2 ← (byte) print_str_lines::ch#0 == (byte) '@' from (boolean~) print_str_lines::$1 ← (byte) print_str_lines::ch#0 != (byte) '@' Inversing boolean not (boolean~) keyboard_event_scan::$2 ← (byte) keyboard_event_scan::row_scan#0 == *((byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#3) from (boolean~) keyboard_event_scan::$1 ← (byte) keyboard_event_scan::row_scan#0 != *((byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#3) Inversing boolean not (boolean~) keyboard_event_scan::$6 ← (byte~) keyboard_event_scan::$4 == (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) keyboard_event_scan::$5 ← (byte~) keyboard_event_scan::$4 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not (boolean~) keyboard_event_scan::$8 ← (byte) keyboard_events_size#12 == (byte/signed byte/word/signed word/dword/signed dword) 8 from (boolean~) keyboard_event_scan::$7 ← (byte) keyboard_events_size#12 != (byte/signed byte/word/signed word/dword/signed dword) 8 +Inversing boolean not (boolean~) keyboard_event_scan::$8 ← (byte) keyboard_events_size#18 == (byte/signed byte/word/signed word/dword/signed dword) 8 from (boolean~) keyboard_event_scan::$7 ← (byte) keyboard_events_size#18 != (byte/signed byte/word/signed word/dword/signed dword) 8 Inversing boolean not (boolean~) keyboard_event_scan::$11 ← (byte) keyboard_event_scan::event_type#0 != (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) keyboard_event_scan::$10 ← (byte) keyboard_event_scan::event_type#0 == (byte/signed byte/word/signed word/dword/signed dword) 0 Inversing boolean not (boolean~) keyboard_event_scan::$18 ← (byte~) keyboard_event_scan::$16 == (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) keyboard_event_scan::$17 ← (byte~) keyboard_event_scan::$16 != (byte/signed byte/word/signed word/dword/signed dword) 0 Inversing boolean not (boolean~) keyboard_event_scan::$22 ← (byte~) keyboard_event_scan::$20 == (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) keyboard_event_scan::$21 ← (byte~) keyboard_event_scan::$20 != (byte/signed byte/word/signed word/dword/signed dword) 0 Inversing boolean not (boolean~) keyboard_event_scan::$26 ← (byte~) keyboard_event_scan::$24 == (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) keyboard_event_scan::$25 ← (byte~) keyboard_event_scan::$24 != (byte/signed byte/word/signed word/dword/signed dword) 0 Inversing boolean not (boolean~) keyboard_event_scan::$30 ← (byte~) keyboard_event_scan::$28 == (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) keyboard_event_scan::$29 ← (byte~) keyboard_event_scan::$28 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not (boolean~) keyboard_event_get::$1 ← (byte) keyboard_events_size#16 != (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) keyboard_event_get::$0 ← (byte) keyboard_events_size#16 == (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not (boolean~) keyboard_event_get::$1 ← (byte) keyboard_events_size#22 != (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) keyboard_event_get::$0 ← (byte) keyboard_events_size#22 == (byte/signed byte/word/signed word/dword/signed dword) 0 Inversing boolean not (boolean~) gfx_mode::$1 ← *((byte*) form_ctrl_line#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) gfx_mode::$0 ← *((byte*) form_ctrl_line#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 Inversing boolean not (boolean~) gfx_mode::$4 ← *((byte*) form_ctrl_borof#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) gfx_mode::$3 ← *((byte*) form_ctrl_borof#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 Inversing boolean not (boolean~) gfx_mode::$7 ← *((byte*) form_ctrl_hicol#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) gfx_mode::$6 ← *((byte*) form_ctrl_hicol#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 @@ -7098,30 +7707,35 @@ Inversing boolean not (boolean~) gfx_mode::$16 ← *((byte*) form_ctrl_chunk#0) Inversing boolean not (boolean~) gfx_mode::$21 ← *((byte*) form_ctrl_ecm#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) gfx_mode::$20 ← *((byte*) form_ctrl_ecm#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 Inversing boolean not (boolean~) gfx_mode::$24 ← *((byte*) form_ctrl_bmm#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) gfx_mode::$23 ← *((byte*) form_ctrl_bmm#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 Inversing boolean not (boolean~) gfx_mode::$27 ← *((byte*) form_ctrl_mcm#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) gfx_mode::$26 ← *((byte*) form_ctrl_mcm#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not (boolean~) gfx_mode::$69 ← (byte) gfx_mode::keyboard_event#0 != (byte) KEY_SPACE#0 from (boolean~) gfx_mode::$68 ← (byte) gfx_mode::keyboard_event#0 == (byte) KEY_SPACE#0 Inversing boolean not (boolean~) gfx_init_plane_8bppchunky::$4 ← (byte*) gfx_init_plane_8bppchunky::gfxb#3 != (word/dword/signed dword) 32768 from (boolean~) gfx_init_plane_8bppchunky::$3 ← (byte*) gfx_init_plane_8bppchunky::gfxb#3 == (word/dword/signed dword) 32768 -Inversing boolean not (boolean~) form_control::$2 ← (signed byte) form_cursor_count#3 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) form_control::$1 ← (signed byte) form_cursor_count#3 < (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not (boolean~) form_control::$5 ← (signed byte) form_cursor_count#11 >= (signed word/signed byte/signed dword~) form_control::$3 from (boolean~) form_control::$4 ← (signed byte) form_cursor_count#11 < (signed word/signed byte/signed dword~) form_control::$3 +Inversing boolean not (boolean~) form_mode::$27 ← (byte~) form_mode::$25 == (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) form_mode::$26 ← (byte~) form_mode::$25 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not (boolean~) form_control::$2 ← (signed byte) form_cursor_count#5 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) form_control::$1 ← (signed byte) form_cursor_count#5 < (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not (boolean~) form_control::$5 ← (signed byte) form_cursor_count#15 >= (signed word/signed byte/signed dword~) form_control::$3 from (boolean~) form_control::$4 ← (signed byte) form_cursor_count#15 < (signed word/signed byte/signed dword~) form_control::$3 Inversing boolean not (boolean~) form_control::$11 ← (byte) form_control::key_event#0 != (byte) KEY_CRSR_DOWN#0 from (boolean~) form_control::$10 ← (byte) form_control::key_event#0 == (byte) KEY_CRSR_DOWN#0 Inversing boolean not (boolean~) form_control::$23 ← (byte) form_control::key_event#1 != (byte) KEY_CRSR_RIGHT#0 from (boolean~) form_control::$22 ← (byte) form_control::key_event#1 == (byte) KEY_CRSR_RIGHT#0 Inversing boolean not (boolean~) form_control::$15 ← (byte~) form_control::$13 != (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) form_control::$14 ← (byte~) form_control::$13 == (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not (boolean~) form_control::$19 ← (byte) form_field_idx#3 != (byte/word/signed word/dword/signed dword) 255 from (boolean~) form_control::$18 ← (byte) form_field_idx#3 == (byte/word/signed word/dword/signed dword) 255 -Inversing boolean not (boolean~) form_control::$17 ← (byte) form_field_idx#4 != (byte) form_fields_cnt#2 from (boolean~) form_control::$16 ← (byte) form_field_idx#4 == (byte) form_fields_cnt#2 +Inversing boolean not (boolean~) form_control::$19 ← (byte) form_field_idx#5 != (byte/word/signed word/dword/signed dword) 255 from (boolean~) form_control::$18 ← (byte) form_field_idx#5 == (byte/word/signed word/dword/signed dword) 255 +Inversing boolean not (boolean~) form_control::$17 ← (byte) form_field_idx#6 != (byte) form_fields_cnt#2 from (boolean~) form_control::$16 ← (byte) form_field_idx#6 == (byte) form_fields_cnt#2 +Inversing boolean not (boolean~) form_control::$32 ← (byte) form_control::key_event#2 != (byte) KEY_SPACE#0 from (boolean~) form_control::$31 ← (byte) form_control::key_event#2 == (byte) KEY_SPACE#0 Inversing boolean not (boolean~) form_control::$26 ← (byte~) form_control::$24 != (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) form_control::$25 ← (byte~) form_control::$24 == (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not (boolean~) form_control::$30 ← *((byte[]) form_fields_val#0 + (byte) form_field_idx#15) != (byte/word/signed word/dword/signed dword) 255 from (boolean~) form_control::$29 ← *((byte[]) form_fields_val#0 + (byte) form_field_idx#15) == (byte/word/signed word/dword/signed dword) 255 -Inversing boolean not (boolean~) form_control::$28 ← *((byte[]) form_fields_val#0 + (byte) form_field_idx#16) <= *((byte[]) form_fields_max#0 + (byte) form_field_idx#16) from (boolean~) form_control::$27 ← *((byte[]) form_fields_val#0 + (byte) form_field_idx#16) > *((byte[]) form_fields_max#0 + (byte) form_field_idx#16) +Inversing boolean not (boolean~) form_control::$30 ← *((byte[]) form_fields_val#0 + (byte) form_field_idx#19) != (byte/word/signed word/dword/signed dword) 255 from (boolean~) form_control::$29 ← *((byte[]) form_fields_val#0 + (byte) form_field_idx#19) == (byte/word/signed word/dword/signed dword) 255 +Inversing boolean not (boolean~) form_control::$28 ← *((byte[]) form_fields_val#0 + (byte) form_field_idx#20) <= *((byte[]) form_fields_max#0 + (byte) form_field_idx#20) from (boolean~) form_control::$27 ← *((byte[]) form_fields_val#0 + (byte) form_field_idx#20) > *((byte[]) form_fields_max#0 + (byte) form_field_idx#20) Succesful SSA optimization Pass2UnaryNotSimplification Not aliassing across scopes: dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#0 Not aliassing across scopes: print_str_lines::str#5 print_str_lines::str#1 -Not aliassing across scopes: print_char_cursor#39 print_char_cursor#10 -Not aliassing across scopes: print_line_cursor#37 print_line_cursor#9 -Not aliassing across scopes: print_line_cursor#15 print_line_cursor#4 -Not aliassing across scopes: print_char_cursor#17 print_char_cursor#5 -Not aliassing across scopes: print_line_cursor#31 print_line_cursor#29 -Not aliassing across scopes: print_char_cursor#33 print_char_cursor#31 +Not aliassing across scopes: print_char_cursor#46 print_char_cursor#13 +Not aliassing across scopes: print_line_cursor#44 print_line_cursor#12 +Not aliassing across scopes: print_line_cursor#19 print_line_cursor#4 +Not aliassing across scopes: print_char_cursor#21 print_char_cursor#5 +Not aliassing across scopes: print_line_cursor#38 print_line_cursor#36 +Not aliassing across scopes: print_char_cursor#40 print_char_cursor#38 +Not aliassing across scopes: print_screen#9 print_screen#5 +Not aliassing across scopes: print_cls::sc#0 print_screen#9 Not aliassing across scopes: print_set_screen::screen#2 print_set_screen::screen#0 Not aliassing across scopes: print_screen#1 print_set_screen::screen#2 Not aliassing across scopes: keyboard_matrix_read::rowid#1 keyboard_matrix_read::rowid#0 -Not aliassing across scopes: keyboard_events_size#76 keyboard_events_size#32 +Not aliassing across scopes: keyboard_events_size#104 keyboard_events_size#48 Not aliassing across scopes: keyboard_matrix_read::rowid#0 keyboard_event_scan::row#2 Not aliassing across scopes: keyboard_matrix_read::return#2 keyboard_matrix_read::return#1 Not aliassing across scopes: keyboard_event_scan::$0 keyboard_matrix_read::return#4 @@ -7138,92 +7752,123 @@ Not aliassing across scopes: keyboard_event_pressed::keycode#3 KEY_COMMODORE#0 Not aliassing across scopes: keyboard_event_pressed::return#3 keyboard_event_pressed::return#5 Not aliassing across scopes: keyboard_event_scan::$28 keyboard_event_pressed::return#9 Not aliassing across scopes: keyboard_event_pressed::keycode#4 keyboard_event_pressed::keycode#2 -Not aliassing across scopes: keyboard_events_size#16 keyboard_events_size#8 -Not aliassing across scopes: print_screen#26 print_screen#21 -Not aliassing across scopes: print_line_cursor#45 print_line_cursor#36 -Not aliassing across scopes: print_char_cursor#46 print_char_cursor#38 -Not aliassing across scopes: form_cursor_count#38 form_cursor_count#19 -Not aliassing across scopes: keyboard_events_size#79 keyboard_events_size#36 -Not aliassing across scopes: keyboard_modifiers#68 keyboard_modifiers#37 -Not aliassing across scopes: form_field_idx#44 form_field_idx#29 -Not aliassing across scopes: form_fields_cnt#27 form_fields_cnt#30 -Not aliassing across scopes: print_screen#10 print_screen#7 -Not aliassing across scopes: print_line_cursor#21 print_line_cursor#13 -Not aliassing across scopes: print_char_cursor#22 print_char_cursor#14 -Not aliassing across scopes: form_cursor_count#8 form_cursor_count#6 -Not aliassing across scopes: keyboard_events_size#19 keyboard_events_size#10 -Not aliassing across scopes: keyboard_modifiers#17 keyboard_modifiers#10 -Not aliassing across scopes: form_field_idx#9 form_field_idx#7 +Not aliassing across scopes: keyboard_events_size#22 keyboard_events_size#14 +Not aliassing across scopes: print_screen#30 print_screen#24 +Not aliassing across scopes: print_line_cursor#52 print_line_cursor#43 +Not aliassing across scopes: print_char_cursor#53 print_char_cursor#45 +Not aliassing across scopes: form_cursor_count#48 form_cursor_count#26 +Not aliassing across scopes: keyboard_events_size#107 keyboard_events_size#53 +Not aliassing across scopes: keyboard_modifiers#95 keyboard_modifiers#53 +Not aliassing across scopes: form_field_idx#55 form_field_idx#36 +Not aliassing across scopes: form_fields_cnt#32 form_fields_cnt#35 +Not aliassing across scopes: print_screen#13 print_screen#7 +Not aliassing across scopes: print_line_cursor#26 print_line_cursor#17 +Not aliassing across scopes: print_char_cursor#27 print_char_cursor#18 +Not aliassing across scopes: form_cursor_count#10 form_cursor_count#3 +Not aliassing across scopes: keyboard_events_size#25 keyboard_events_size#13 +Not aliassing across scopes: keyboard_modifiers#22 keyboard_modifiers#13 +Not aliassing across scopes: form_field_idx#11 form_field_idx#3 +Not aliassing across scopes: keyboard_events_size#26 keyboard_events_size#11 +Not aliassing across scopes: keyboard_modifiers#23 keyboard_modifiers#11 +Not aliassing across scopes: keyboard_events_size#131 keyboard_events_size#6 +Not aliassing across scopes: keyboard_modifiers#111 keyboard_modifiers#7 Not aliassing across scopes: gfx_mode::vic_control2#0 VIC_CSEL#0 +Not aliassing identity: keyboard_events_size#58 keyboard_events_size#58 +Not aliassing identity: keyboard_modifiers#58 keyboard_modifiers#58 +Not aliassing across scopes: keyboard_events_size#28 keyboard_events_size#3 +Not aliassing across scopes: keyboard_modifiers#25 keyboard_modifiers#6 +Not aliassing across scopes: keyboard_event_get::return#3 keyboard_event_get::return#2 +Not aliassing across scopes: keyboard_events_size#29 keyboard_events_size#5 +Not aliassing across scopes: gfx_mode::$67 keyboard_event_get::return#6 +Not aliassing across scopes: gfx_init_screen_stdchar::ch#0 VIC_SCREEN_STDCHAR#0 Not aliassing across scopes: dtvSetCpuBankSegment1::cpuBankIdx#0 gfx_init_plane_8bppchunky::gfxbCpuBank#0 Not aliassing across scopes: dtvSetCpuBankSegment1::cpuBankIdx#1 gfx_init_plane_8bppchunky::gfxbCpuBank#4 -Not aliassing across scopes: print_screen#18 print_screen#16 -Not aliassing across scopes: print_line_cursor#34 print_line_cursor#32 -Not aliassing across scopes: print_char_cursor#36 print_char_cursor#34 -Not aliassing across scopes: form_fields_cnt#21 form_fields_cnt#23 -Not aliassing across scopes: print_screen#12 print_screen#2 -Not aliassing across scopes: print_line_cursor#23 print_line_cursor#6 -Not aliassing across scopes: print_char_cursor#24 print_char_cursor#7 +Not aliassing across scopes: print_screen#21 print_screen#19 +Not aliassing across scopes: print_line_cursor#41 print_line_cursor#39 +Not aliassing across scopes: print_char_cursor#43 print_char_cursor#41 +Not aliassing across scopes: form_fields_cnt#25 form_fields_cnt#27 +Not aliassing across scopes: print_set_screen::screen#0 COLS#0 +Not aliassing across scopes: print_screen#15 print_screen#2 +Not aliassing across scopes: print_line_cursor#28 print_line_cursor#8 +Not aliassing across scopes: print_char_cursor#29 print_char_cursor#9 +Not aliassing across scopes: print_line_cursor#29 print_line_cursor#6 +Not aliassing across scopes: print_char_cursor#30 print_char_cursor#7 Not aliassing across scopes: print_str_lines::str#1 FORM_COLS#0 -Not aliassing across scopes: print_char_cursor#25 print_char_cursor#3 -Not aliassing across scopes: print_line_cursor#24 print_line_cursor#2 -Not aliassing across scopes: print_screen#13 print_screen#2 -Not aliassing across scopes: print_line_cursor#25 print_line_cursor#6 -Not aliassing across scopes: print_char_cursor#26 print_char_cursor#7 +Not aliassing across scopes: print_char_cursor#31 print_char_cursor#3 +Not aliassing across scopes: print_line_cursor#30 print_line_cursor#2 +Not aliassing across scopes: print_set_screen::screen#1 FORM_SCREEN#0 +Not aliassing across scopes: print_screen#16 print_screen#2 +Not aliassing across scopes: print_line_cursor#31 print_line_cursor#8 +Not aliassing across scopes: print_char_cursor#32 print_char_cursor#9 +Not aliassing across scopes: print_line_cursor#32 print_line_cursor#6 +Not aliassing across scopes: print_char_cursor#33 print_char_cursor#7 Not aliassing across scopes: print_str_lines::str#2 FORM_TEXT#0 -Not aliassing across scopes: print_char_cursor#27 print_char_cursor#3 -Not aliassing across scopes: print_line_cursor#26 print_line_cursor#2 +Not aliassing across scopes: print_char_cursor#34 print_char_cursor#3 +Not aliassing across scopes: print_line_cursor#33 print_line_cursor#2 +Not aliassing across scopes: form_set_screen::screen#0 FORM_SCREEN#0 +Not aliassing across scopes: form_cursor_count#45 form_cursor_count#18 +Not aliassing across scopes: keyboard_events_size#99 keyboard_events_size#42 +Not aliassing across scopes: keyboard_modifiers#92 keyboard_modifiers#39 +Not aliassing across scopes: form_field_idx#53 form_field_idx#25 +Not aliassing across scopes: form_fields_cnt#38 form_fields_cnt#40 +Not aliassing across scopes: form_control::return#0 form_control::return#2 +Not aliassing across scopes: form_cursor_count#12 form_cursor_count#8 +Not aliassing across scopes: keyboard_events_size#31 keyboard_events_size#16 +Not aliassing across scopes: keyboard_modifiers#27 keyboard_modifiers#15 +Not aliassing across scopes: form_field_idx#13 form_field_idx#9 +Not aliassing across scopes: form_mode::$25 form_control::return#6 Not aliassing across scopes: form_set_screen::screen#1 form_set_screen::screen#0 Not aliassing across scopes: form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 Not aliassing across scopes: form_fields_cnt#7 form_fields_cnt#9 Not aliassing across scopes: form_field_ptr::field_idx#0 form_render_values::idx#2 Not aliassing across scopes: form_field_ptr::return#2 form_field_ptr::return#1 Not aliassing across scopes: form_render_values::$0 form_field_ptr::return#5 -Not aliassing across scopes: form_field_idx#11 form_field_idx#21 -Not aliassing across scopes: form_cursor_count#16 form_cursor_count#14 -Not aliassing across scopes: keyboard_events_size#81 keyboard_events_size#30 -Not aliassing across scopes: keyboard_modifiers#70 keyboard_modifiers#29 +Not aliassing across scopes: form_field_idx#15 form_field_idx#27 +Not aliassing across scopes: form_cursor_count#22 form_cursor_count#20 +Not aliassing across scopes: keyboard_events_size#110 keyboard_events_size#46 +Not aliassing across scopes: keyboard_modifiers#98 keyboard_modifiers#44 Not aliassing across scopes: form_fields_cnt#22 form_fields_cnt#24 -Not aliassing across scopes: form_field_ptr::field_idx#1 form_field_idx#11 +Not aliassing across scopes: form_field_ptr::field_idx#1 form_field_idx#15 Not aliassing across scopes: form_field_ptr::return#3 form_field_ptr::return#1 Not aliassing across scopes: form_control::$0 form_field_ptr::return#6 -Not aliassing across scopes: form_cursor_count#4 FORM_CURSOR_BLINK#0 -Not aliassing across scopes: keyboard_events_size#21 keyboard_events_size#3 -Not aliassing across scopes: keyboard_modifiers#19 keyboard_modifiers#6 -Not aliassing across scopes: keyboard_event_get::return#3 keyboard_event_get::return#2 -Not aliassing across scopes: keyboard_events_size#22 keyboard_events_size#5 -Not aliassing across scopes: form_control::$9 keyboard_event_get::return#5 -Not aliassing across scopes: print_screen#15 print_screen#4 -Not aliassing across scopes: print_line_cursor#28 print_line_cursor#8 -Not aliassing across scopes: print_char_cursor#29 print_char_cursor#9 -Not aliassing across scopes: form_cursor_count#13 form_cursor_count#1 -Not aliassing across scopes: keyboard_events_size#24 keyboard_events_size#7 -Not aliassing across scopes: keyboard_modifiers#23 keyboard_modifiers#8 -Not aliassing across scopes: form_field_idx#20 form_field_idx#1 -Alias (byte*) print_screen#0 = (byte*) print_line_cursor#0 (byte*) print_char_cursor#0 (byte*) print_screen#34 (byte*) print_line_cursor#53 (byte*) print_char_cursor#53 (byte*) print_screen#32 (byte*) print_line_cursor#51 (byte*) print_char_cursor#51 (byte*) print_screen#31 (byte*) print_line_cursor#50 (byte*) print_char_cursor#50 (byte*) print_screen#29 (byte*) print_line_cursor#47 (byte*) print_char_cursor#48 (byte*) print_screen#25 (byte*) print_line_cursor#42 (byte*) print_char_cursor#45 (byte*) print_screen#21 (byte*) print_line_cursor#36 (byte*) print_char_cursor#38 +Not aliassing across scopes: form_cursor_count#6 FORM_CURSOR_BLINK#0 +Not aliassing across scopes: keyboard_events_size#33 keyboard_events_size#3 +Not aliassing across scopes: keyboard_modifiers#29 keyboard_modifiers#6 +Not aliassing across scopes: keyboard_event_get::return#4 keyboard_event_get::return#2 +Not aliassing across scopes: keyboard_events_size#34 keyboard_events_size#5 +Not aliassing across scopes: form_control::$9 keyboard_event_get::return#7 +Not aliassing across scopes: print_screen#18 print_screen#4 +Not aliassing across scopes: print_line_cursor#35 print_line_cursor#10 +Not aliassing across scopes: print_char_cursor#36 print_char_cursor#11 +Not aliassing across scopes: form_cursor_count#17 form_cursor_count#1 +Not aliassing across scopes: keyboard_events_size#36 keyboard_events_size#8 +Not aliassing across scopes: keyboard_modifiers#33 keyboard_modifiers#9 +Not aliassing across scopes: form_field_idx#24 form_field_idx#1 +Alias (byte*) print_screen#0 = (byte*) print_line_cursor#0 (byte*) print_char_cursor#0 (byte*) print_screen#38 (byte*) print_line_cursor#59 (byte*) print_char_cursor#59 (byte*) print_screen#37 (byte*) print_line_cursor#58 (byte*) print_char_cursor#58 (byte*) print_screen#35 (byte*) print_line_cursor#57 (byte*) print_char_cursor#57 (byte*) print_screen#33 (byte*) print_line_cursor#54 (byte*) print_char_cursor#55 (byte*) print_screen#29 (byte*) print_line_cursor#49 (byte*) print_char_cursor#52 (byte*) print_screen#24 (byte*) print_line_cursor#43 (byte*) print_char_cursor#45 Alias (byte*) print_str_lines::str#3 = (byte*) print_str_lines::str#7 -Alias (byte*) print_char_cursor#18 = (byte*) print_char_cursor#40 (byte*) print_char_cursor#32 (byte*) print_char_cursor#3 -Alias (byte*) print_line_cursor#16 = (byte*) print_line_cursor#48 (byte*) print_line_cursor#30 (byte*) print_line_cursor#2 +Alias (byte*) print_char_cursor#22 = (byte*) print_char_cursor#47 (byte*) print_char_cursor#39 (byte*) print_char_cursor#3 +Alias (byte*) print_line_cursor#2 = (byte*) print_line_cursor#55 (byte*) print_line_cursor#37 (byte*) print_line_cursor#20 Alias (byte) print_str_lines::ch#0 = (byte) print_str_lines::ch#2 -Alias (byte*) print_char_cursor#16 = (byte*) print_char_cursor#30 +Alias (byte*) print_char_cursor#20 = (byte*) print_char_cursor#37 Alias (byte*) print_str_lines::str#0 = (byte*) print_str_lines::str#9 -Alias (byte*) print_line_cursor#43 = (byte*) print_line_cursor#44 -Alias (byte*) print_line_cursor#29 = (byte*) print_line_cursor#38 -Alias (byte*) print_char_cursor#31 = (byte*) print_char_cursor#41 +Alias (byte*) print_line_cursor#50 = (byte*) print_line_cursor#51 +Alias (byte*) print_line_cursor#36 = (byte*) print_line_cursor#45 +Alias (byte*) print_char_cursor#38 = (byte*) print_char_cursor#48 Alias (byte*) print_str_lines::str#10 = (byte*) print_str_lines::str#8 (byte*) print_str_lines::str#6 -Alias (byte*) print_line_cursor#1 = (byte*) print_line_cursor#15 -Alias (byte*) print_char_cursor#17 = (byte*) print_char_cursor#2 -Alias (byte*) print_line_cursor#18 = (byte*) print_line_cursor#3 (byte*~) print_ln::$0 (byte*) print_char_cursor#4 (byte*) print_line_cursor#19 (byte*) print_char_cursor#20 (byte*) print_line_cursor#4 (byte*) print_char_cursor#5 -Alias (byte*) print_screen#1 = (byte*) print_line_cursor#5 (byte*) print_char_cursor#6 (byte*) print_screen#9 (byte*) print_line_cursor#20 (byte*) print_char_cursor#21 (byte*) print_screen#2 (byte*) print_line_cursor#6 (byte*) print_char_cursor#7 +Alias (byte*) print_line_cursor#1 = (byte*) print_line_cursor#19 +Alias (byte*) print_char_cursor#2 = (byte*) print_char_cursor#21 +Alias (byte*) print_line_cursor#22 = (byte*) print_line_cursor#3 (byte*~) print_ln::$0 (byte*) print_char_cursor#4 (byte*) print_line_cursor#23 (byte*) print_char_cursor#24 (byte*) print_line_cursor#4 (byte*) print_char_cursor#5 +Alias (byte*) print_line_cursor#24 = (byte*) print_screen#11 (byte*) print_screen#10 (byte*) print_line_cursor#5 (byte*) print_char_cursor#6 (byte*) print_char_cursor#25 (byte*) print_line_cursor#6 (byte*) print_char_cursor#7 +Alias (byte*) print_screen#1 = (byte*) print_line_cursor#7 (byte*) print_char_cursor#8 (byte*) print_screen#12 (byte*) print_line_cursor#25 (byte*) print_char_cursor#26 (byte*) print_screen#2 (byte*) print_line_cursor#8 (byte*) print_char_cursor#9 Alias (byte) keyboard_matrix_read::return#0 = (byte) keyboard_matrix_read::row_pressed_bits#0 (byte~) keyboard_matrix_read::$0 (byte) keyboard_matrix_read::return#3 (byte) keyboard_matrix_read::return#1 Alias (byte) KEY_MODIFIER_SHIFT#0 = (byte~) $0 Alias (byte) keyboard_matrix_read::return#2 = (byte) keyboard_matrix_read::return#4 Alias (byte) keyboard_event_scan::row#2 = (byte) keyboard_event_scan::row#3 (byte) keyboard_event_scan::row#9 (byte) keyboard_event_scan::row#7 Alias (byte) keyboard_event_scan::keycode#11 = (byte) keyboard_event_scan::keycode#7 (byte) keyboard_event_scan::keycode#3 (byte) keyboard_event_scan::keycode#12 -Alias (byte) keyboard_events_size#37 = (byte) keyboard_events_size#55 (byte) keyboard_events_size#67 (byte) keyboard_events_size#83 +Alias (byte) keyboard_events_size#112 = (byte) keyboard_events_size#76 (byte) keyboard_events_size#93 (byte) keyboard_events_size#54 Alias (byte) keyboard_event_scan::row_scan#0 = (byte~) keyboard_event_scan::$0 (byte) keyboard_event_scan::row_scan#4 Alias (byte) keyboard_event_scan::keycode#1 = (byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14 -Alias (byte) keyboard_events_size#12 = (byte) keyboard_events_size#25 (byte) keyboard_events_size#56 (byte) keyboard_events_size#26 (byte) keyboard_events_size#13 (byte) keyboard_events_size#14 +Alias (byte) keyboard_events_size#18 = (byte) keyboard_events_size#37 (byte) keyboard_events_size#77 (byte) keyboard_events_size#38 (byte) keyboard_events_size#19 (byte) keyboard_events_size#20 Alias (byte) keyboard_event_scan::row_scan#1 = (byte) keyboard_event_scan::row_scan#6 (byte) keyboard_event_scan::row_scan#8 (byte) keyboard_event_scan::row_scan#2 (byte) keyboard_event_scan::row_scan#9 (byte) keyboard_event_scan::row_scan#7 Alias (byte) keyboard_event_scan::col#2 = (byte) keyboard_event_scan::col#8 (byte) keyboard_event_scan::col#6 (byte) keyboard_event_scan::col#4 (byte) keyboard_event_scan::col#7 (byte) keyboard_event_scan::col#5 Alias (byte) keyboard_event_scan::keycode#10 = (byte) keyboard_event_scan::keycode#13 (byte) keyboard_event_scan::keycode#8 (byte) keyboard_event_scan::keycode#9 (byte) keyboard_event_scan::keycode#5 (byte) keyboard_event_scan::keycode#6 @@ -7232,124 +7877,140 @@ Alias (byte) keyboard_event_scan::event_type#0 = (byte~) keyboard_event_scan::$9 Alias (byte) keyboard_event_scan::row_scan#3 = (byte) keyboard_event_scan::row_scan#5 Alias (byte) keyboard_event_scan::row#5 = (byte) keyboard_event_scan::row#8 Alias (byte) keyboard_event_scan::keycode#15 = (byte) keyboard_event_scan::keycode#2 -Alias (byte) keyboard_events_size#38 = (byte) keyboard_events_size#82 -Alias (byte) keyboard_events_size#77 = (byte) keyboard_events_size#91 (byte) keyboard_events_size#90 (byte) keyboard_events_size#89 +Alias (byte) keyboard_events_size#111 = (byte) keyboard_events_size#55 +Alias (byte) keyboard_events_size#105 = (byte) keyboard_events_size#124 (byte) keyboard_events_size#121 (byte) keyboard_events_size#120 Alias (byte) keyboard_event_pressed::return#0 = (byte) keyboard_event_pressed::return#6 -Alias (byte) keyboard_modifiers#1 = (byte) keyboard_modifiers#24 (byte) keyboard_modifiers#12 +Alias (byte) keyboard_modifiers#1 = (byte) keyboard_modifiers#34 (byte) keyboard_modifiers#17 Alias (byte) keyboard_event_pressed::return#1 = (byte) keyboard_event_pressed::return#7 -Alias (byte) keyboard_modifiers#13 = (byte) keyboard_modifiers#25 (byte) keyboard_modifiers#38 -Alias (byte) keyboard_events_size#84 = (byte) keyboard_events_size#85 (byte) keyboard_events_size#88 +Alias (byte) keyboard_modifiers#18 = (byte) keyboard_modifiers#35 (byte) keyboard_modifiers#54 +Alias (byte) keyboard_events_size#113 = (byte) keyboard_events_size#114 (byte) keyboard_events_size#117 Alias (byte) keyboard_modifiers#2 = (byte~) keyboard_event_scan::$19 Alias (byte) keyboard_event_pressed::return#2 = (byte) keyboard_event_pressed::return#8 -Alias (byte) keyboard_modifiers#14 = (byte) keyboard_modifiers#26 (byte) keyboard_modifiers#39 -Alias (byte) keyboard_events_size#68 = (byte) keyboard_events_size#69 (byte) keyboard_events_size#78 +Alias (byte) keyboard_modifiers#19 = (byte) keyboard_modifiers#36 (byte) keyboard_modifiers#55 +Alias (byte) keyboard_events_size#106 = (byte) keyboard_events_size#95 (byte) keyboard_events_size#94 Alias (byte) keyboard_modifiers#3 = (byte~) keyboard_event_scan::$23 Alias (byte) keyboard_event_pressed::return#3 = (byte) keyboard_event_pressed::return#9 -Alias (byte) keyboard_modifiers#15 = (byte) keyboard_modifiers#27 (byte) keyboard_modifiers#40 (byte) keyboard_modifiers#28 -Alias (byte) keyboard_events_size#27 = (byte) keyboard_events_size#39 (byte) keyboard_events_size#57 (byte) keyboard_events_size#28 +Alias (byte) keyboard_modifiers#20 = (byte) keyboard_modifiers#37 (byte) keyboard_modifiers#56 (byte) keyboard_modifiers#38 +Alias (byte) keyboard_events_size#39 = (byte) keyboard_events_size#56 (byte) keyboard_events_size#78 (byte) keyboard_events_size#40 Alias (byte) keyboard_modifiers#4 = (byte~) keyboard_event_scan::$27 Alias (byte) keyboard_modifiers#5 = (byte~) keyboard_event_scan::$31 -Alias (byte) keyboard_events_size#15 = (byte) keyboard_events_size#3 -Alias (byte) keyboard_modifiers#16 = (byte) keyboard_modifiers#6 +Alias (byte) keyboard_events_size#21 = (byte) keyboard_events_size#3 +Alias (byte) keyboard_modifiers#21 = (byte) keyboard_modifiers#6 Alias (byte) keyboard_event_pressed::return#10 = (byte) keyboard_event_pressed::return#4 (byte~) keyboard_event_pressed::$2 (byte) keyboard_event_pressed::return#5 -Alias (byte) keyboard_events_size#16 = (byte) keyboard_events_size#17 (byte) keyboard_events_size#29 -Alias (byte) keyboard_event_get::return#2 = (byte) keyboard_event_get::return#4 -Alias (byte) keyboard_events_size#18 = (byte) keyboard_events_size#5 -Alias (byte*) print_screen#16 = (byte*) print_screen#22 (byte*) print_screen#26 -Alias (byte*) print_line_cursor#32 = (byte*) print_line_cursor#39 (byte*) print_line_cursor#45 -Alias (byte*) print_char_cursor#34 = (byte*) print_char_cursor#42 (byte*) print_char_cursor#46 -Alias (signed byte) form_cursor_count#20 = (signed byte) form_cursor_count#34 (signed byte) form_cursor_count#38 (signed byte) form_cursor_count#28 -Alias (byte) keyboard_events_size#40 = (byte) keyboard_events_size#70 (byte) keyboard_events_size#79 (byte) keyboard_events_size#58 -Alias (byte) keyboard_modifiers#41 = (byte) keyboard_modifiers#64 (byte) keyboard_modifiers#68 (byte) keyboard_modifiers#55 -Alias (byte) form_field_idx#30 = (byte) form_field_idx#41 (byte) form_field_idx#44 (byte) form_field_idx#37 -Alias (byte) form_fields_cnt#23 = (byte) form_fields_cnt#25 (byte) form_fields_cnt#27 (byte) form_fields_cnt#37 -Alias (byte*) print_screen#10 = (byte*) print_screen#3 -Alias (byte*) print_line_cursor#21 = (byte*) print_line_cursor#7 -Alias (byte*) print_char_cursor#22 = (byte*) print_char_cursor#8 -Alias (signed byte) form_cursor_count#1 = (signed byte) form_cursor_count#41 (signed byte) form_cursor_count#15 (signed byte) form_cursor_count#9 -Alias (byte) keyboard_events_size#20 = (byte) keyboard_events_size#86 (byte) keyboard_events_size#31 (byte) keyboard_events_size#7 -Alias (byte) keyboard_modifiers#18 = (byte) keyboard_modifiers#71 (byte) keyboard_modifiers#30 (byte) keyboard_modifiers#8 -Alias (byte) form_field_idx#1 = (byte) form_field_idx#48 (byte) form_field_idx#22 (byte) form_field_idx#10 -Alias (byte*) print_screen#11 = (byte*) print_screen#39 (byte*) print_screen#17 (byte*) print_screen#4 -Alias (byte*) print_line_cursor#22 = (byte*) print_line_cursor#58 (byte*) print_line_cursor#33 (byte*) print_line_cursor#8 -Alias (byte*) print_char_cursor#23 = (byte*) print_char_cursor#58 (byte*) print_char_cursor#35 (byte*) print_char_cursor#9 -Alias (byte) form_fields_cnt#34 = (byte) form_fields_cnt#36 -Alias (signed byte) form_cursor_count#29 = (signed byte) form_cursor_count#42 (signed byte) form_cursor_count#39 (signed byte) form_cursor_count#35 -Alias (byte) keyboard_events_size#59 = (byte) keyboard_events_size#87 (byte) keyboard_events_size#80 (byte) keyboard_events_size#71 -Alias (byte) keyboard_modifiers#56 = (byte) keyboard_modifiers#72 (byte) keyboard_modifiers#69 (byte) keyboard_modifiers#65 -Alias (byte) form_field_idx#38 = (byte) form_field_idx#49 (byte) form_field_idx#45 (byte) form_field_idx#42 -Alias (byte*) print_screen#35 = (byte*) print_screen#40 (byte*) print_screen#38 (byte*) print_screen#37 -Alias (byte*) print_line_cursor#54 = (byte*) print_line_cursor#59 (byte*) print_line_cursor#57 (byte*) print_line_cursor#56 -Alias (byte*) print_char_cursor#54 = (byte*) print_char_cursor#59 (byte*) print_char_cursor#57 (byte*) print_char_cursor#56 -Alias (byte) form_fields_cnt#28 = (byte) form_fields_cnt#35 (byte) form_fields_cnt#32 (byte) form_fields_cnt#31 -Alias (signed byte) form_cursor_count#14 = (signed byte) form_cursor_count#30 (signed byte) form_cursor_count#22 -Alias (byte) keyboard_events_size#30 = (byte) keyboard_events_size#60 (byte) keyboard_events_size#42 -Alias (byte) keyboard_modifiers#29 = (byte) keyboard_modifiers#57 (byte) keyboard_modifiers#43 -Alias (byte) form_field_idx#21 = (byte) form_field_idx#39 (byte) form_field_idx#32 -Alias (byte*) print_screen#23 = (byte*) print_screen#36 (byte*) print_screen#33 (byte*) print_screen#30 (byte*) print_screen#27 -Alias (byte*) print_line_cursor#40 = (byte*) print_line_cursor#55 (byte*) print_line_cursor#52 (byte*) print_line_cursor#49 (byte*) print_line_cursor#46 -Alias (byte*) print_char_cursor#43 = (byte*) print_char_cursor#55 (byte*) print_char_cursor#52 (byte*) print_char_cursor#49 (byte*) print_char_cursor#47 -Alias (byte) form_fields_cnt#24 = (byte) form_fields_cnt#29 (byte) form_fields_cnt#26 (byte) form_fields_cnt#39 (byte) form_fields_cnt#38 -Alias (signed byte) form_cursor_count#0 = (signed byte) form_cursor_count#8 (signed byte) form_cursor_count#21 -Alias (byte) keyboard_events_size#19 = (byte) keyboard_events_size#6 (byte) keyboard_events_size#41 -Alias (byte) keyboard_modifiers#17 = (byte) keyboard_modifiers#7 (byte) keyboard_modifiers#42 -Alias (byte) form_field_idx#0 = (byte) form_field_idx#9 (byte) form_field_idx#31 -Alias (byte) keyboard_events_size#0 = (byte) keyboard_events_size#61 (byte) keyboard_events_size#54 (byte) keyboard_events_size#36 -Alias (byte) keyboard_modifiers#0 = (byte) keyboard_modifiers#58 (byte) keyboard_modifiers#54 (byte) keyboard_modifiers#37 -Alias (word) FORM_OFFSET#0 = (word/signed word/dword/signed dword~) $1 -Alias (byte[]) FORM_COLS#0 = (string~) $10 -Alias (byte[]) FORM_TEXT#0 = (string~) $19 -Alias (byte*) form_ctrl_bmm#0 = (byte*~) $21 -Alias (byte*) form_ctrl_mcm#0 = (byte*~) $22 -Alias (byte*) form_ctrl_ecm#0 = (byte*~) $23 -Alias (byte*) form_ctrl_hicol#0 = (byte*~) $24 -Alias (byte*) form_ctrl_line#0 = (byte*~) $25 -Alias (byte*) form_ctrl_colof#0 = (byte*~) $26 -Alias (byte*) form_ctrl_chunk#0 = (byte*~) $27 -Alias (byte*) form_ctrl_borof#0 = (byte*~) $28 -Alias (byte*) form_ctrl_overs#0 = (byte*~) $29 -Alias (byte*) form_a_start_hi#0 = (byte*~) $31 -Alias (byte*) form_a_start_lo#0 = (byte*~) $32 -Alias (byte*) form_a_step_hi#0 = (byte*~) $33 -Alias (byte*) form_a_step_lo#0 = (byte*~) $34 -Alias (byte*) form_a_mod_hi#0 = (byte*~) $35 -Alias (byte*) form_a_mod_lo#0 = (byte*~) $36 -Alias (byte*) form_b_start_hi#0 = (byte*~) $38 -Alias (byte*) form_b_start_lo#0 = (byte*~) $39 -Alias (byte*) form_b_step_hi#0 = (byte*~) $40 -Alias (byte*) form_b_step_lo#0 = (byte*~) $41 -Alias (byte*) form_b_mod_hi#0 = (byte*~) $42 -Alias (byte*) form_b_mod_lo#0 = (byte*~) $43 -Alias (byte*) form_vic_bg0_hi#0 = (byte*~) $47 -Alias (byte*) form_vic_bg0_lo#0 = (byte*~) $48 -Alias (byte*) form_vic_bg1_hi#0 = (byte*~) $49 -Alias (byte*) form_vic_bg1_lo#0 = (byte*~) $50 -Alias (byte*) form_vic_bg2_hi#0 = (byte*~) $51 -Alias (byte*) form_vic_bg2_lo#0 = (byte*~) $52 -Alias (byte*) form_vic_bg3_hi#0 = (byte*~) $53 -Alias (byte*) form_vic_bg3_lo#0 = (byte*~) $54 +Alias (byte) keyboard_events_size#22 = (byte) keyboard_events_size#23 (byte) keyboard_events_size#41 +Alias (byte) keyboard_event_get::return#2 = (byte) keyboard_event_get::return#5 +Alias (byte) keyboard_events_size#24 = (byte) keyboard_events_size#5 +Alias (byte*) print_screen#19 = (byte*) print_screen#25 (byte*) print_screen#30 +Alias (byte*) print_line_cursor#39 = (byte*) print_line_cursor#46 (byte*) print_line_cursor#52 +Alias (byte*) print_char_cursor#41 = (byte*) print_char_cursor#49 (byte*) print_char_cursor#53 +Alias (signed byte) form_cursor_count#28 = (signed byte) form_cursor_count#44 (signed byte) form_cursor_count#48 (signed byte) form_cursor_count#37 +Alias (byte) keyboard_events_size#107 = (byte) keyboard_events_size#96 (byte) keyboard_events_size#79 (byte) keyboard_events_size#57 +Alias (byte) keyboard_modifiers#57 = (byte) keyboard_modifiers#89 (byte) keyboard_modifiers#95 (byte) keyboard_modifiers#76 +Alias (byte) form_field_idx#38 = (byte) form_field_idx#52 (byte) form_field_idx#55 (byte) form_field_idx#47 +Alias (byte) form_fields_cnt#27 = (byte) form_fields_cnt#30 (byte) form_fields_cnt#32 (byte) form_fields_cnt#43 +Alias (byte*) print_screen#13 = (byte*) print_screen#3 +Alias (byte*) print_line_cursor#26 = (byte*) print_line_cursor#9 +Alias (byte*) print_char_cursor#10 = (byte*) print_char_cursor#27 +Alias (signed byte) form_cursor_count#1 = (signed byte) form_cursor_count#18 (signed byte) form_cursor_count#19 (signed byte) form_cursor_count#11 +Alias (byte) keyboard_events_size#27 = (byte) keyboard_events_size#42 (byte) keyboard_events_size#43 (byte) keyboard_events_size#8 +Alias (byte) keyboard_modifiers#24 = (byte) keyboard_modifiers#39 (byte) keyboard_modifiers#40 (byte) keyboard_modifiers#9 +Alias (byte) form_field_idx#1 = (byte) form_field_idx#25 (byte) form_field_idx#26 (byte) form_field_idx#12 +Alias (byte*) print_screen#14 = (byte*) print_screen#34 (byte*) print_screen#20 (byte*) print_screen#31 (byte*) print_screen#26 (byte*) print_screen#4 +Alias (byte*) print_line_cursor#10 = (byte*) print_line_cursor#56 (byte*) print_line_cursor#40 (byte*) print_line_cursor#53 (byte*) print_line_cursor#47 (byte*) print_line_cursor#27 +Alias (byte*) print_char_cursor#11 = (byte*) print_char_cursor#56 (byte*) print_char_cursor#42 (byte*) print_char_cursor#54 (byte*) print_char_cursor#50 (byte*) print_char_cursor#28 +Alias (byte) form_fields_cnt#40 = (byte) form_fields_cnt#41 (byte) form_fields_cnt#44 (byte) form_fields_cnt#42 +Alias (signed byte) form_cursor_count#0 = (signed byte) form_cursor_count#10 (signed byte) form_cursor_count#27 +Alias (byte) keyboard_events_size#25 = (byte) keyboard_events_size#6 +Alias (byte) keyboard_modifiers#22 = (byte) keyboard_modifiers#7 +Alias (byte) form_field_idx#0 = (byte) form_field_idx#11 (byte) form_field_idx#37 +Alias (byte) keyboard_events_size#26 = (byte) keyboard_events_size#7 +Alias (byte) keyboard_modifiers#23 = (byte) keyboard_modifiers#8 +Alias (byte) keyboard_events_size#0 = (byte) keyboard_events_size#86 (byte) keyboard_events_size#75 (byte) keyboard_events_size#53 +Alias (byte) keyboard_modifiers#0 = (byte) keyboard_modifiers#83 (byte) keyboard_modifiers#75 (byte) keyboard_modifiers#53 +Alias (byte[]) FORM_COLS#0 = (string~) $9 +Alias (byte[]) FORM_TEXT#0 = (string~) $18 +Alias (byte*) form_ctrl_bmm#0 = (byte*~) $20 +Alias (byte*) form_ctrl_mcm#0 = (byte*~) $21 +Alias (byte*) form_ctrl_ecm#0 = (byte*~) $22 +Alias (byte*) form_ctrl_hicol#0 = (byte*~) $23 +Alias (byte*) form_ctrl_line#0 = (byte*~) $24 +Alias (byte*) form_ctrl_colof#0 = (byte*~) $25 +Alias (byte*) form_ctrl_chunk#0 = (byte*~) $26 +Alias (byte*) form_ctrl_borof#0 = (byte*~) $27 +Alias (byte*) form_ctrl_overs#0 = (byte*~) $28 +Alias (byte*) form_a_start_hi#0 = (byte*~) $30 +Alias (byte*) form_a_start_lo#0 = (byte*~) $31 +Alias (byte*) form_a_step_hi#0 = (byte*~) $32 +Alias (byte*) form_a_step_lo#0 = (byte*~) $33 +Alias (byte*) form_a_mod_hi#0 = (byte*~) $34 +Alias (byte*) form_a_mod_lo#0 = (byte*~) $35 +Alias (byte*) form_b_start_hi#0 = (byte*~) $37 +Alias (byte*) form_b_start_lo#0 = (byte*~) $38 +Alias (byte*) form_b_step_hi#0 = (byte*~) $39 +Alias (byte*) form_b_step_lo#0 = (byte*~) $40 +Alias (byte*) form_b_mod_hi#0 = (byte*~) $41 +Alias (byte*) form_b_mod_lo#0 = (byte*~) $42 +Alias (byte*) form_vic_bg0_hi#0 = (byte*~) $46 +Alias (byte*) form_vic_bg0_lo#0 = (byte*~) $47 +Alias (byte*) form_vic_bg1_hi#0 = (byte*~) $48 +Alias (byte*) form_vic_bg1_lo#0 = (byte*~) $49 +Alias (byte*) form_vic_bg2_hi#0 = (byte*~) $50 +Alias (byte*) form_vic_bg2_lo#0 = (byte*~) $51 +Alias (byte*) form_vic_bg3_hi#0 = (byte*~) $52 +Alias (byte*) form_vic_bg3_lo#0 = (byte*~) $53 Alias (byte) gfx_mode::dtv_control#0 = (byte) gfx_mode::dtv_control#7 +Alias (byte) keyboard_events_size#131 = (byte) keyboard_events_size#132 +Alias (byte) keyboard_modifiers#111 = (byte) keyboard_modifiers#112 Alias (byte) gfx_mode::dtv_control#1 = (byte~) gfx_mode::$2 Alias (byte) gfx_mode::dtv_control#14 = (byte) gfx_mode::dtv_control#8 +Alias (byte) keyboard_events_size#129 = (byte) keyboard_events_size#130 +Alias (byte) keyboard_modifiers#109 = (byte) keyboard_modifiers#110 Alias (byte) gfx_mode::dtv_control#2 = (byte~) gfx_mode::$5 Alias (byte) gfx_mode::dtv_control#15 = (byte) gfx_mode::dtv_control#9 +Alias (byte) keyboard_events_size#127 = (byte) keyboard_events_size#128 +Alias (byte) keyboard_modifiers#107 = (byte) keyboard_modifiers#108 Alias (byte) gfx_mode::dtv_control#3 = (byte~) gfx_mode::$8 Alias (byte) gfx_mode::dtv_control#10 = (byte) gfx_mode::dtv_control#16 +Alias (byte) keyboard_events_size#125 = (byte) keyboard_events_size#126 +Alias (byte) keyboard_modifiers#105 = (byte) keyboard_modifiers#106 Alias (byte) gfx_mode::dtv_control#4 = (byte~) gfx_mode::$11 Alias (byte) gfx_mode::dtv_control#11 = (byte) gfx_mode::dtv_control#17 +Alias (byte) keyboard_events_size#122 = (byte) keyboard_events_size#123 +Alias (byte) keyboard_modifiers#103 = (byte) keyboard_modifiers#104 Alias (byte) gfx_mode::dtv_control#5 = (byte~) gfx_mode::$14 Alias (byte) gfx_mode::vic_control#0 = (byte/word/dword~) gfx_mode::$19 (byte) gfx_mode::vic_control#3 Alias (byte) gfx_mode::dtv_control#13 = (byte) gfx_mode::dtv_control#18 +Alias (byte) keyboard_events_size#118 = (byte) keyboard_events_size#119 +Alias (byte) keyboard_modifiers#101 = (byte) keyboard_modifiers#102 Alias (byte) gfx_mode::dtv_control#6 = (byte~) gfx_mode::$17 +Alias (byte) keyboard_events_size#115 = (byte) keyboard_events_size#116 +Alias (byte) keyboard_modifiers#100 = (byte) keyboard_modifiers#99 Alias (byte) gfx_mode::vic_control#1 = (byte~) gfx_mode::$22 Alias (byte) gfx_mode::vic_control#5 = (byte) gfx_mode::vic_control#6 +Alias (byte) keyboard_events_size#108 = (byte) keyboard_events_size#109 +Alias (byte) keyboard_modifiers#96 = (byte) keyboard_modifiers#97 Alias (byte) gfx_mode::vic_control#2 = (byte~) gfx_mode::$25 Alias (byte) gfx_mode::plane_a_offs#0 = (byte~) gfx_mode::$30 Alias (dword) gfx_mode::plane_a#0 = (dword~) gfx_mode::$32 Alias (byte) gfx_mode::plane_b_offs#0 = (byte~) gfx_mode::$44 Alias (dword) gfx_mode::plane_b#0 = (dword~) gfx_mode::$45 Alias (byte) gfx_mode::vic_control2#0 = (byte) gfx_mode::vic_control2#3 +Alias (byte) keyboard_events_size#97 = (byte) keyboard_events_size#98 +Alias (byte) keyboard_modifiers#90 = (byte) keyboard_modifiers#91 Alias (byte) gfx_mode::vic_control2#1 = (byte~) gfx_mode::$28 +Alias (byte) keyboard_events_size#45 = (byte) keyboard_events_size#81 +Alias (byte) keyboard_modifiers#42 = (byte) keyboard_modifiers#78 +Alias (byte) keyboard_events_size#44 = (byte) keyboard_events_size#82 (byte) keyboard_events_size#60 +Alias (byte) keyboard_modifiers#41 = (byte) keyboard_modifiers#79 (byte) keyboard_modifiers#60 +Alias (byte) keyboard_events_size#28 = (byte) keyboard_events_size#9 +Alias (byte) keyboard_modifiers#10 = (byte) keyboard_modifiers#25 (byte) keyboard_modifiers#43 (byte) keyboard_modifiers#59 +Alias (byte) keyboard_event_get::return#3 = (byte) keyboard_event_get::return#6 +Alias (byte) keyboard_events_size#10 = (byte) keyboard_events_size#29 (byte) keyboard_events_size#59 +Alias (byte) gfx_mode::keyboard_event#0 = (byte~) gfx_mode::$67 +Alias (byte) keyboard_events_size#11 = (byte) keyboard_events_size#30 +Alias (byte) keyboard_modifiers#11 = (byte) keyboard_modifiers#26 +Alias (byte) gfx_init_screen_stdchar::cy#2 = (byte) gfx_init_screen_stdchar::cy#3 +Alias (byte*) gfx_init_screen_stdchar::ch#1 = (byte*) gfx_init_screen_stdchar::ch#4 Alias (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#0 = (byte~) gfx_init_plane_8bppchunky::$1 (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#3 Alias (byte) gfx_init_plane_8bppchunky::c#0 = (byte~) gfx_init_plane_8bppchunky::$7 Alias (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#6 (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#5 @@ -7359,22 +8020,47 @@ Alias (byte) gfx_init_plane_8bppchunky::y#2 = (byte) gfx_init_plane_8bppchunky:: Alias (byte*) gfx_init_plane_8bppchunky::gfxb#1 = (byte*) gfx_init_plane_8bppchunky::gfxb#6 Alias (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#9 Alias (byte) dtvSetCpuBankSegment1::cpuBankIdx#2 = (byte~) gfx_init_plane_8bppchunky::$11 -Alias (byte*) print_set_screen::screen#0 = (byte*~) form_init::$0 -Alias (byte) form_fields_cnt#11 = (byte) form_fields_cnt#18 (byte) form_fields_cnt#21 (byte) form_fields_cnt#16 (byte) form_fields_cnt#13 (byte) form_fields_cnt#9 -Alias (byte*) print_screen#12 = (byte*) print_screen#5 (byte*) print_screen#19 -Alias (byte*) print_line_cursor#23 = (byte*) print_line_cursor#9 -Alias (byte*) print_char_cursor#10 = (byte*) print_char_cursor#24 -Alias (byte*) print_char_cursor#11 = (byte*) print_char_cursor#25 -Alias (byte*) print_line_cursor#10 = (byte*) print_line_cursor#24 -Alias (byte*) print_set_screen::screen#1 = (byte*~) form_init::$3 -Alias (byte*) print_screen#13 = (byte*) print_screen#6 (byte*) print_screen#28 (byte*) print_screen#24 (byte*) print_screen#20 (byte*) print_screen#14 (byte*) print_screen#7 -Alias (byte*) print_line_cursor#11 = (byte*) print_line_cursor#25 -Alias (byte*) print_char_cursor#12 = (byte*) print_char_cursor#26 -Alias (byte*) print_char_cursor#13 = (byte*) print_char_cursor#27 (byte*) print_char_cursor#44 (byte*) print_char_cursor#37 (byte*) print_char_cursor#28 (byte*) print_char_cursor#14 -Alias (byte*) print_line_cursor#12 = (byte*) print_line_cursor#26 (byte*) print_line_cursor#41 (byte*) print_line_cursor#35 (byte*) print_line_cursor#27 (byte*) print_line_cursor#13 -Alias (byte*) form_set_screen::screen#0 = (byte*~) form_init::$6 -Alias (byte) form_fields_cnt#0 = (byte) form_fields_cnt#33 (byte) form_fields_cnt#30 -Alias (signed byte) form_cursor_count#19 = (signed byte) form_cursor_count#2 (signed word/signed byte/signed dword~) $55 +Alias (byte) form_fields_cnt#11 = (byte) form_fields_cnt#23 (byte) form_fields_cnt#25 (byte) form_fields_cnt#21 (byte) form_fields_cnt#18 (byte) form_fields_cnt#16 (byte) form_fields_cnt#13 (byte) form_fields_cnt#9 +Alias (byte*) print_screen#15 = (byte*) print_screen#5 (byte*) print_screen#27 (byte*) print_screen#22 +Alias (byte*) print_line_cursor#11 = (byte*) print_line_cursor#28 +Alias (byte*) print_char_cursor#12 = (byte*) print_char_cursor#29 +Alias (byte*) print_line_cursor#12 = (byte*) print_line_cursor#29 +Alias (byte*) print_char_cursor#13 = (byte*) print_char_cursor#30 +Alias (byte*) print_char_cursor#14 = (byte*) print_char_cursor#31 +Alias (byte*) print_line_cursor#13 = (byte*) print_line_cursor#30 +Alias (byte*) print_screen#16 = (byte*) print_screen#6 (byte*) print_screen#36 (byte*) print_screen#32 (byte*) print_screen#28 (byte*) print_screen#23 (byte*) print_screen#17 (byte*) print_screen#7 +Alias (byte*) print_line_cursor#14 = (byte*) print_line_cursor#31 +Alias (byte*) print_char_cursor#15 = (byte*) print_char_cursor#32 +Alias (byte*) print_line_cursor#15 = (byte*) print_line_cursor#32 +Alias (byte*) print_char_cursor#16 = (byte*) print_char_cursor#33 +Alias (byte*) print_char_cursor#17 = (byte*) print_char_cursor#34 (byte*) print_char_cursor#51 (byte*) print_char_cursor#44 (byte*) print_char_cursor#35 (byte*) print_char_cursor#18 +Alias (byte*) print_line_cursor#16 = (byte*) print_line_cursor#33 (byte*) print_line_cursor#48 (byte*) print_line_cursor#42 (byte*) print_line_cursor#34 (byte*) print_line_cursor#17 +Alias (signed byte) form_cursor_count#30 = (signed byte) form_cursor_count#38 +Alias (byte) keyboard_events_size#62 = (byte) keyboard_events_size#83 +Alias (byte) keyboard_modifiers#62 = (byte) keyboard_modifiers#80 +Alias (byte) form_field_idx#40 = (byte) form_field_idx#48 +Alias (byte) form_fields_cnt#34 = (byte) form_fields_cnt#36 +Alias (signed byte) form_cursor_count#21 = (signed byte) form_cursor_count#39 +Alias (byte) keyboard_events_size#47 = (byte) keyboard_events_size#84 +Alias (byte) keyboard_modifiers#45 = (byte) keyboard_modifiers#81 +Alias (byte) form_field_idx#28 = (byte) form_field_idx#49 +Alias (byte) form_fields_cnt#28 = (byte) form_fields_cnt#31 +Alias (signed byte) form_cursor_count#20 = (signed byte) form_cursor_count#40 (signed byte) form_cursor_count#31 +Alias (byte) keyboard_events_size#46 = (byte) keyboard_events_size#85 (byte) keyboard_events_size#63 +Alias (byte) keyboard_modifiers#44 = (byte) keyboard_modifiers#82 (byte) keyboard_modifiers#63 +Alias (byte) form_field_idx#27 = (byte) form_field_idx#50 (byte) form_field_idx#41 +Alias (byte) form_fields_cnt#24 = (byte) form_fields_cnt#29 (byte) form_fields_cnt#26 (byte) form_fields_cnt#37 (byte) form_fields_cnt#33 +Alias (byte) form_control::return#0 = (byte) form_control::return#6 +Alias (signed byte) form_cursor_count#12 = (signed byte) form_cursor_count#2 (signed byte) form_cursor_count#29 +Alias (byte) keyboard_events_size#12 = (byte) keyboard_events_size#31 (byte) keyboard_events_size#61 +Alias (byte) keyboard_modifiers#12 = (byte) keyboard_modifiers#27 (byte) keyboard_modifiers#61 +Alias (byte) form_field_idx#13 = (byte) form_field_idx#2 (byte) form_field_idx#39 +Alias (signed byte) form_cursor_count#13 = (signed byte) form_cursor_count#3 +Alias (byte) keyboard_events_size#13 = (byte) keyboard_events_size#32 +Alias (byte) keyboard_modifiers#13 = (byte) keyboard_modifiers#28 +Alias (byte) form_field_idx#14 = (byte) form_field_idx#3 +Alias (byte) form_fields_cnt#0 = (byte) form_fields_cnt#39 (byte) form_fields_cnt#35 +Alias (signed byte) form_cursor_count#26 = (signed byte) form_cursor_count#4 (signed word/signed byte/signed dword~) $54 Alias (byte*) form_set_screen::line#0 = (byte*) form_set_screen::screen#1 Alias (byte*) form_set_screen::line#1 = (byte*~) form_set_screen::$2 Alias (byte*) form_field_ptr::line#0 = (byte*~) form_field_ptr::$0 @@ -7384,56 +8070,59 @@ Alias (byte) form_render_values::idx#2 = (byte) form_render_values::idx#3 Alias (byte) form_fields_cnt#1 = (byte) form_fields_cnt#4 Alias (byte*) form_render_values::field#0 = (byte*~) form_render_values::$0 Alias (byte*) form_field_ptr::return#3 = (byte*) form_field_ptr::return#6 -Alias (signed byte) form_cursor_count#10 = (signed byte) form_cursor_count#16 -Alias (byte) keyboard_events_size#72 = (byte) keyboard_events_size#73 (byte) keyboard_events_size#81 -Alias (byte) keyboard_modifiers#66 = (byte) keyboard_modifiers#67 (byte) keyboard_modifiers#70 -Alias (byte) form_field_idx#11 = (byte) form_field_idx#52 (byte) form_field_idx#51 +Alias (signed byte) form_cursor_count#14 = (signed byte) form_cursor_count#22 +Alias (byte) keyboard_events_size#100 = (byte) keyboard_events_size#101 (byte) keyboard_events_size#110 +Alias (byte) keyboard_modifiers#93 = (byte) keyboard_modifiers#94 (byte) keyboard_modifiers#98 +Alias (byte) form_field_idx#15 = (byte) form_field_idx#60 (byte) form_field_idx#59 Alias (byte) form_fields_cnt#19 = (byte) form_fields_cnt#20 (byte) form_fields_cnt#22 Alias (byte*) form_control::field#0 = (byte*~) form_control::$0 (byte*) form_control::field#11 Alias (byte*) form_control::field#1 = (byte*) form_control::field#5 (byte*) form_control::field#2 -Alias (byte) keyboard_events_size#43 = (byte) keyboard_events_size#44 (byte) keyboard_events_size#62 -Alias (byte) keyboard_modifiers#44 = (byte) keyboard_modifiers#45 (byte) keyboard_modifiers#59 -Alias (byte) form_field_idx#46 = (byte) form_field_idx#47 (byte) form_field_idx#50 +Alias (byte) keyboard_events_size#64 = (byte) keyboard_events_size#65 (byte) keyboard_events_size#87 +Alias (byte) keyboard_modifiers#64 = (byte) keyboard_modifiers#65 (byte) keyboard_modifiers#84 +Alias (byte) form_field_idx#56 = (byte) form_field_idx#57 (byte) form_field_idx#58 Alias (byte) form_fields_cnt#14 = (byte) form_fields_cnt#15 (byte) form_fields_cnt#17 -Alias (signed byte) form_cursor_count#11 = (signed byte) form_cursor_count#44 (signed byte) form_cursor_count#43 +Alias (signed byte) form_cursor_count#15 = (signed byte) form_cursor_count#52 (signed byte) form_cursor_count#51 Alias (byte*) form_control::field#10 = (byte*) form_control::field#12 (byte*) form_control::field#15 (byte*) form_control::field#6 (byte*) form_control::field#17 (byte*) form_control::field#3 (byte*) form_control::field#16 (byte*) form_control::field#14 (byte*) form_control::field#13 (byte*) form_control::field#7 (byte*) form_control::field#9 (byte*) form_control::field#8 -Alias (byte) form_field_idx#12 = (byte) form_field_idx#40 (byte) form_field_idx#43 (byte) form_field_idx#33 (byte) form_field_idx#36 (byte) form_field_idx#23 (byte) form_field_idx#13 (byte) form_field_idx#25 (byte) form_field_idx#26 (byte) form_field_idx#15 (byte) form_field_idx#16 (byte) form_field_idx#27 (byte) form_field_idx#17 (byte) form_field_idx#28 (byte) form_field_idx#19 +Alias (byte) form_field_idx#16 = (byte) form_field_idx#51 (byte) form_field_idx#54 (byte) form_field_idx#42 (byte) form_field_idx#45 (byte) form_field_idx#29 (byte) form_field_idx#17 (byte) form_field_idx#46 (byte) form_field_idx#33 (byte) form_field_idx#19 (byte) form_field_idx#20 (byte) form_field_idx#34 (byte) form_field_idx#21 (byte) form_field_idx#35 (byte) form_field_idx#23 (byte) form_field_idx#30 (byte) form_field_idx#31 Alias (byte) form_fields_cnt#10 = (byte) form_fields_cnt#12 (byte) form_fields_cnt#8 (byte) form_fields_cnt#5 (byte) form_fields_cnt#6 (byte) form_fields_cnt#2 (byte) form_fields_cnt#3 -Alias (signed byte) form_cursor_count#18 = (signed byte) form_cursor_count#36 (signed byte) form_cursor_count#40 (signed byte) form_cursor_count#31 (signed byte) form_cursor_count#23 (signed byte) form_cursor_count#37 (signed byte) form_cursor_count#33 (signed byte) form_cursor_count#32 (signed byte) form_cursor_count#24 (signed byte) form_cursor_count#26 (signed byte) form_cursor_count#25 (signed byte) form_cursor_count#27 -Alias (byte) keyboard_events_size#21 = (byte) keyboard_events_size#8 -Alias (byte) keyboard_modifiers#19 = (byte) keyboard_modifiers#9 (byte) keyboard_modifiers#32 (byte) keyboard_modifiers#36 (byte) keyboard_modifiers#20 (byte) keyboard_modifiers#61 (byte) keyboard_modifiers#60 (byte) keyboard_modifiers#48 (byte) keyboard_modifiers#46 (byte) keyboard_modifiers#49 (byte) keyboard_modifiers#47 (byte) keyboard_modifiers#35 (byte) keyboard_modifiers#22 (byte) keyboard_modifiers#63 (byte) keyboard_modifiers#62 (byte) keyboard_modifiers#50 (byte) keyboard_modifiers#52 (byte) keyboard_modifiers#51 (byte) keyboard_modifiers#53 -Alias (byte) keyboard_event_get::return#3 = (byte) keyboard_event_get::return#5 -Alias (byte) keyboard_events_size#22 = (byte) keyboard_events_size#9 (byte) keyboard_events_size#49 (byte) keyboard_events_size#74 (byte) keyboard_events_size#64 (byte) keyboard_events_size#63 (byte) keyboard_events_size#47 (byte) keyboard_events_size#45 (byte) keyboard_events_size#48 (byte) keyboard_events_size#46 (byte) keyboard_events_size#35 (byte) keyboard_events_size#75 (byte) keyboard_events_size#66 (byte) keyboard_events_size#65 (byte) keyboard_events_size#50 (byte) keyboard_events_size#52 (byte) keyboard_events_size#51 (byte) keyboard_events_size#53 -Alias (byte) form_control::key_event#0 = (byte~) form_control::$9 (byte) form_control::key_event#1 -Alias (byte) form_field_idx#34 = (byte) form_field_idx#4 -Alias (signed byte) form_cursor_count#5 = (signed word/signed byte/signed dword~) form_control::$21 -Alias (byte) form_field_idx#3 = (byte) form_field_idx#35 -Alias (byte) form_field_idx#6 = (byte/signed word/word/dword/signed dword~) form_control::$20 -Alias (signed byte) form_cursor_count#12 = (signed byte) form_cursor_count#6 -Alias (byte) keyboard_events_size#10 = (byte) keyboard_events_size#23 -Alias (byte) keyboard_modifiers#10 = (byte) keyboard_modifiers#21 -Alias (byte) form_field_idx#14 = (byte) form_field_idx#7 -Alias (byte) form_field_idx#2 = (byte) form_field_idx#29 -Alias (byte*) print_screen#15 = (byte*) print_screen#8 -Alias (byte*) print_line_cursor#14 = (byte*) print_line_cursor#28 -Alias (byte*) print_char_cursor#15 = (byte*) print_char_cursor#29 -Alias (signed byte) form_cursor_count#13 = (signed byte) form_cursor_count#7 -Alias (byte) keyboard_events_size#11 = (byte) keyboard_events_size#24 -Alias (byte) keyboard_modifiers#11 = (byte) keyboard_modifiers#23 -Alias (byte) form_field_idx#20 = (byte) form_field_idx#8 +Alias (signed byte) form_cursor_count#24 = (signed byte) form_cursor_count#49 (signed byte) form_cursor_count#50 (signed byte) form_cursor_count#46 (signed byte) form_cursor_count#41 (signed byte) form_cursor_count#36 (signed byte) form_cursor_count#47 (signed byte) form_cursor_count#43 (signed byte) form_cursor_count#42 (signed byte) form_cursor_count#32 (signed byte) form_cursor_count#34 (signed byte) form_cursor_count#33 (signed byte) form_cursor_count#35 (signed byte) form_cursor_count#25 +Alias (byte) keyboard_events_size#14 = (byte) keyboard_events_size#33 +Alias (byte) keyboard_modifiers#14 = (byte) keyboard_modifiers#29 (byte) keyboard_modifiers#47 (byte) keyboard_modifiers#52 (byte) keyboard_modifiers#30 (byte) keyboard_modifiers#86 (byte) keyboard_modifiers#85 (byte) keyboard_modifiers#68 (byte) keyboard_modifiers#66 (byte) keyboard_modifiers#69 (byte) keyboard_modifiers#67 (byte) keyboard_modifiers#74 (byte) keyboard_modifiers#32 (byte) keyboard_modifiers#88 (byte) keyboard_modifiers#87 (byte) keyboard_modifiers#70 (byte) keyboard_modifiers#72 (byte) keyboard_modifiers#71 (byte) keyboard_modifiers#73 (byte) keyboard_modifiers#49 (byte) keyboard_modifiers#50 +Alias (byte) keyboard_event_get::return#4 = (byte) keyboard_event_get::return#7 +Alias (byte) keyboard_events_size#102 = (byte) keyboard_events_size#15 (byte) keyboard_events_size#34 (byte) keyboard_events_size#90 (byte) keyboard_events_size#89 (byte) keyboard_events_size#88 (byte) keyboard_events_size#68 (byte) keyboard_events_size#66 (byte) keyboard_events_size#69 (byte) keyboard_events_size#67 (byte) keyboard_events_size#74 (byte) keyboard_events_size#103 (byte) keyboard_events_size#92 (byte) keyboard_events_size#91 (byte) keyboard_events_size#70 (byte) keyboard_events_size#72 (byte) keyboard_events_size#71 (byte) keyboard_events_size#73 (byte) keyboard_events_size#50 (byte) keyboard_events_size#51 +Alias (byte) form_control::key_event#0 = (byte~) form_control::$9 (byte) form_control::key_event#1 (byte) form_control::key_event#2 +Alias (byte) form_field_idx#43 = (byte) form_field_idx#6 +Alias (signed byte) form_cursor_count#7 = (signed word/signed byte/signed dword~) form_control::$21 +Alias (byte) form_field_idx#44 = (byte) form_field_idx#5 +Alias (byte) form_field_idx#8 = (byte/signed word/word/dword/signed dword~) form_control::$20 +Alias (byte) form_control::return#2 = (byte) form_control::return#7 +Alias (signed byte) form_cursor_count#16 = (signed byte) form_cursor_count#8 +Alias (byte) keyboard_events_size#16 = (byte) keyboard_events_size#35 +Alias (byte) keyboard_modifiers#15 = (byte) keyboard_modifiers#31 +Alias (byte) form_field_idx#18 = (byte) form_field_idx#9 +Alias (byte) form_field_idx#36 = (byte) form_field_idx#4 +Alias (byte*) print_screen#18 = (byte*) print_screen#8 +Alias (byte*) print_line_cursor#18 = (byte*) print_line_cursor#35 +Alias (byte*) print_char_cursor#19 = (byte*) print_char_cursor#36 +Alias (signed byte) form_cursor_count#17 = (signed byte) form_cursor_count#9 +Alias (byte) keyboard_events_size#17 = (byte) keyboard_events_size#36 +Alias (byte) keyboard_modifiers#16 = (byte) keyboard_modifiers#33 +Alias (byte) form_field_idx#10 = (byte) form_field_idx#24 Succesful SSA optimization Pass2AliasElimination Not aliassing across scopes: dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#0 Not aliassing across scopes: print_str_lines::str#5 print_str_lines::str#1 -Not aliassing across scopes: print_char_cursor#39 print_char_cursor#10 -Not aliassing across scopes: print_line_cursor#37 print_line_cursor#23 -Not aliassing across scopes: print_line_cursor#1 print_line_cursor#18 -Not aliassing across scopes: print_char_cursor#17 print_line_cursor#18 -Not aliassing across scopes: print_line_cursor#31 print_line_cursor#29 -Not aliassing across scopes: print_char_cursor#33 print_char_cursor#31 +Not aliassing across scopes: print_char_cursor#46 print_char_cursor#13 +Not aliassing across scopes: print_line_cursor#44 print_line_cursor#12 +Not aliassing across scopes: print_line_cursor#1 print_line_cursor#22 +Not aliassing across scopes: print_char_cursor#2 print_line_cursor#22 +Not aliassing across scopes: print_line_cursor#38 print_line_cursor#36 +Not aliassing across scopes: print_char_cursor#40 print_char_cursor#38 +Not aliassing across scopes: print_screen#9 print_screen#15 +Not aliassing across scopes: print_cls::sc#0 print_screen#9 Not aliassing across scopes: print_set_screen::screen#2 print_set_screen::screen#0 Not aliassing across scopes: print_screen#1 print_set_screen::screen#2 Not aliassing across scopes: keyboard_matrix_read::rowid#1 keyboard_matrix_read::rowid#0 -Not aliassing across scopes: keyboard_events_size#76 keyboard_events_size#32 +Not aliassing across scopes: keyboard_events_size#104 keyboard_events_size#48 Not aliassing across scopes: keyboard_matrix_read::rowid#0 keyboard_event_scan::row#2 Not aliassing across scopes: keyboard_matrix_read::return#2 keyboard_matrix_read::return#0 Not aliassing across scopes: keyboard_event_scan::row_scan#0 keyboard_matrix_read::return#2 @@ -7450,99 +8139,137 @@ Not aliassing across scopes: keyboard_event_pressed::keycode#3 KEY_COMMODORE#0 Not aliassing across scopes: keyboard_event_pressed::return#3 keyboard_event_pressed::return#10 Not aliassing across scopes: keyboard_event_scan::$28 keyboard_event_pressed::return#3 Not aliassing across scopes: keyboard_event_pressed::keycode#4 keyboard_event_pressed::keycode#2 -Not aliassing across scopes: keyboard_events_size#16 keyboard_events_size#21 -Not aliassing across scopes: print_screen#16 print_screen#0 -Not aliassing across scopes: print_line_cursor#32 print_screen#0 -Not aliassing across scopes: print_char_cursor#34 print_screen#0 -Not aliassing across scopes: form_cursor_count#20 form_cursor_count#19 -Not aliassing across scopes: keyboard_events_size#40 keyboard_events_size#0 -Not aliassing across scopes: keyboard_modifiers#41 keyboard_modifiers#0 -Not aliassing across scopes: form_field_idx#30 form_field_idx#2 -Not aliassing across scopes: form_fields_cnt#23 form_fields_cnt#0 -Not aliassing across scopes: print_screen#10 print_screen#13 -Not aliassing across scopes: print_line_cursor#21 print_line_cursor#12 -Not aliassing across scopes: print_char_cursor#22 print_char_cursor#13 -Not aliassing across scopes: form_cursor_count#0 form_cursor_count#12 -Not aliassing across scopes: keyboard_events_size#19 keyboard_events_size#10 -Not aliassing across scopes: keyboard_modifiers#17 keyboard_modifiers#10 +Not aliassing across scopes: keyboard_events_size#22 keyboard_events_size#14 +Not aliassing across scopes: print_screen#19 print_screen#0 +Not aliassing across scopes: print_line_cursor#39 print_screen#0 +Not aliassing across scopes: print_char_cursor#41 print_screen#0 +Not aliassing across scopes: form_cursor_count#28 form_cursor_count#26 +Not aliassing across scopes: keyboard_events_size#107 keyboard_events_size#0 +Not aliassing across scopes: keyboard_modifiers#57 keyboard_modifiers#0 +Not aliassing across scopes: form_field_idx#38 form_field_idx#36 +Not aliassing across scopes: form_fields_cnt#27 form_fields_cnt#0 +Not aliassing across scopes: print_screen#13 print_screen#16 +Not aliassing across scopes: print_line_cursor#26 print_line_cursor#16 +Not aliassing across scopes: print_char_cursor#10 print_char_cursor#17 +Not aliassing identity: print_screen#14 print_screen#14 +Not aliassing identity: print_line_cursor#10 print_line_cursor#10 +Not aliassing identity: print_char_cursor#11 print_char_cursor#11 +Not aliassing identity: form_fields_cnt#40 form_fields_cnt#40 +Not aliassing across scopes: form_cursor_count#0 form_cursor_count#13 +Not aliassing across scopes: keyboard_events_size#25 keyboard_events_size#13 +Not aliassing across scopes: keyboard_modifiers#22 keyboard_modifiers#13 Not aliassing across scopes: form_field_idx#0 form_field_idx#14 +Not aliassing across scopes: keyboard_events_size#26 keyboard_events_size#11 +Not aliassing across scopes: keyboard_modifiers#23 keyboard_modifiers#11 +Not aliassing across scopes: keyboard_events_size#131 keyboard_events_size#25 +Not aliassing across scopes: keyboard_modifiers#111 keyboard_modifiers#22 Not aliassing across scopes: gfx_mode::vic_control2#0 VIC_CSEL#0 +Not aliassing identity: keyboard_events_size#58 keyboard_events_size#58 +Not aliassing identity: keyboard_modifiers#58 keyboard_modifiers#58 +Not aliassing across scopes: keyboard_events_size#28 keyboard_events_size#21 +Not aliassing across scopes: keyboard_modifiers#10 keyboard_modifiers#21 +Not aliassing across scopes: keyboard_event_get::return#3 keyboard_event_get::return#2 +Not aliassing across scopes: keyboard_events_size#10 keyboard_events_size#24 +Not aliassing across scopes: gfx_mode::keyboard_event#0 keyboard_event_get::return#3 +Not aliassing across scopes: gfx_init_screen_stdchar::ch#0 VIC_SCREEN_STDCHAR#0 Not aliassing across scopes: dtvSetCpuBankSegment1::cpuBankIdx#0 gfx_init_plane_8bppchunky::gfxbCpuBank#0 Not aliassing across scopes: dtvSetCpuBankSegment1::cpuBankIdx#1 gfx_init_plane_8bppchunky::gfxbCpuBank#4 -Not aliassing across scopes: print_screen#18 print_screen#16 -Not aliassing across scopes: print_line_cursor#34 print_line_cursor#32 -Not aliassing across scopes: print_char_cursor#36 print_char_cursor#34 -Not aliassing across scopes: form_fields_cnt#11 form_fields_cnt#23 -Not aliassing across scopes: print_screen#12 print_screen#1 -Not aliassing across scopes: print_line_cursor#23 print_screen#1 -Not aliassing across scopes: print_char_cursor#10 print_screen#1 -Not aliassing across scopes: print_str_lines::str#1 FORM_COLS#0 -Not aliassing across scopes: print_char_cursor#11 print_char_cursor#18 -Not aliassing across scopes: print_line_cursor#10 print_line_cursor#16 -Not aliassing across scopes: print_screen#13 print_screen#1 +Not aliassing across scopes: print_screen#21 print_screen#19 +Not aliassing across scopes: print_line_cursor#41 print_line_cursor#39 +Not aliassing across scopes: print_char_cursor#43 print_char_cursor#41 +Not aliassing across scopes: form_fields_cnt#11 form_fields_cnt#27 +Not aliassing across scopes: print_set_screen::screen#0 COLS#0 +Not aliassing across scopes: print_screen#15 print_screen#1 Not aliassing across scopes: print_line_cursor#11 print_screen#1 Not aliassing across scopes: print_char_cursor#12 print_screen#1 +Not aliassing across scopes: print_line_cursor#12 print_line_cursor#24 +Not aliassing across scopes: print_char_cursor#13 print_line_cursor#24 +Not aliassing across scopes: print_str_lines::str#1 FORM_COLS#0 +Not aliassing across scopes: print_char_cursor#14 print_char_cursor#22 +Not aliassing across scopes: print_line_cursor#13 print_line_cursor#2 +Not aliassing across scopes: print_set_screen::screen#1 FORM_SCREEN#0 +Not aliassing across scopes: print_screen#16 print_screen#1 +Not aliassing across scopes: print_line_cursor#14 print_screen#1 +Not aliassing across scopes: print_char_cursor#15 print_screen#1 +Not aliassing across scopes: print_line_cursor#15 print_line_cursor#24 +Not aliassing across scopes: print_char_cursor#16 print_line_cursor#24 Not aliassing across scopes: print_str_lines::str#2 FORM_TEXT#0 -Not aliassing across scopes: print_char_cursor#13 print_char_cursor#18 -Not aliassing across scopes: print_line_cursor#12 print_line_cursor#16 +Not aliassing across scopes: print_char_cursor#17 print_char_cursor#22 +Not aliassing across scopes: print_line_cursor#16 print_line_cursor#2 +Not aliassing across scopes: form_set_screen::screen#0 FORM_SCREEN#0 +Not aliassing across scopes: form_cursor_count#45 form_cursor_count#1 +Not aliassing across scopes: keyboard_events_size#99 keyboard_events_size#27 +Not aliassing across scopes: keyboard_modifiers#92 keyboard_modifiers#24 +Not aliassing across scopes: form_field_idx#53 form_field_idx#1 +Not aliassing across scopes: form_fields_cnt#38 form_fields_cnt#40 +Not aliassing across scopes: form_control::return#0 form_control::return#2 +Not aliassing across scopes: form_cursor_count#12 form_cursor_count#16 +Not aliassing across scopes: keyboard_events_size#12 keyboard_events_size#16 +Not aliassing across scopes: keyboard_modifiers#12 keyboard_modifiers#15 +Not aliassing across scopes: form_field_idx#13 form_field_idx#18 +Not aliassing across scopes: form_mode::$25 form_control::return#0 Not aliassing across scopes: form_set_screen::line#0 form_set_screen::screen#0 Not aliassing across scopes: form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 Not aliassing across scopes: form_fields_cnt#7 form_fields_cnt#11 Not aliassing across scopes: form_field_ptr::field_idx#0 form_render_values::idx#2 Not aliassing across scopes: form_field_ptr::return#2 form_field_ptr::return#0 Not aliassing across scopes: form_render_values::field#0 form_field_ptr::return#2 -Not aliassing across scopes: form_field_idx#11 form_field_idx#21 -Not aliassing across scopes: form_cursor_count#10 form_cursor_count#14 -Not aliassing across scopes: keyboard_events_size#72 keyboard_events_size#30 -Not aliassing across scopes: keyboard_modifiers#66 keyboard_modifiers#29 +Not aliassing across scopes: form_field_idx#15 form_field_idx#27 +Not aliassing across scopes: form_cursor_count#14 form_cursor_count#20 +Not aliassing across scopes: keyboard_events_size#100 keyboard_events_size#46 +Not aliassing across scopes: keyboard_modifiers#93 keyboard_modifiers#44 Not aliassing across scopes: form_fields_cnt#19 form_fields_cnt#24 -Not aliassing across scopes: form_field_ptr::field_idx#1 form_field_idx#11 +Not aliassing across scopes: form_field_ptr::field_idx#1 form_field_idx#15 Not aliassing across scopes: form_field_ptr::return#3 form_field_ptr::return#0 Not aliassing across scopes: form_control::field#0 form_field_ptr::return#3 -Not aliassing across scopes: form_cursor_count#4 FORM_CURSOR_BLINK#0 -Not aliassing across scopes: keyboard_events_size#21 keyboard_events_size#15 -Not aliassing across scopes: keyboard_modifiers#19 keyboard_modifiers#16 -Not aliassing across scopes: keyboard_event_get::return#3 keyboard_event_get::return#2 -Not aliassing across scopes: keyboard_events_size#22 keyboard_events_size#18 -Not aliassing across scopes: form_control::key_event#0 keyboard_event_get::return#3 -Not aliassing across scopes: print_screen#15 print_screen#11 -Not aliassing across scopes: print_line_cursor#14 print_line_cursor#22 -Not aliassing across scopes: print_char_cursor#15 print_char_cursor#23 -Not aliassing across scopes: form_cursor_count#13 form_cursor_count#1 -Not aliassing across scopes: keyboard_events_size#11 keyboard_events_size#20 -Not aliassing across scopes: keyboard_modifiers#11 keyboard_modifiers#18 -Not aliassing across scopes: form_field_idx#20 form_field_idx#1 +Not aliassing across scopes: form_cursor_count#6 FORM_CURSOR_BLINK#0 +Not aliassing across scopes: keyboard_events_size#14 keyboard_events_size#21 +Not aliassing across scopes: keyboard_modifiers#14 keyboard_modifiers#21 +Not aliassing across scopes: keyboard_event_get::return#4 keyboard_event_get::return#2 +Not aliassing across scopes: keyboard_events_size#102 keyboard_events_size#24 +Not aliassing across scopes: form_control::key_event#0 keyboard_event_get::return#4 +Not aliassing across scopes: print_screen#18 print_screen#14 +Not aliassing across scopes: print_line_cursor#18 print_line_cursor#10 +Not aliassing across scopes: print_char_cursor#19 print_char_cursor#11 +Not aliassing across scopes: form_cursor_count#17 form_cursor_count#1 +Not aliassing across scopes: keyboard_events_size#17 keyboard_events_size#27 +Not aliassing across scopes: keyboard_modifiers#16 keyboard_modifiers#24 +Not aliassing across scopes: form_field_idx#10 form_field_idx#1 Alias (byte) print_str_lines::ch#0 = (byte) print_str_lines::ch#1 Alias (byte*) print_str_lines::str#0 = (byte*) print_str_lines::str#10 -Alias (byte*) print_line_cursor#29 = (byte*) print_line_cursor#43 +Alias (byte*) print_line_cursor#36 = (byte*) print_line_cursor#50 Alias (byte) keyboard_event_scan::keycode#10 = (byte) keyboard_event_scan::keycode#4 Alias (byte) keyboard_event_scan::col#2 = (byte) keyboard_event_scan::col#3 Alias (byte) keyboard_event_scan::row_scan#1 = (byte) keyboard_event_scan::row_scan#3 Alias (byte) keyboard_event_scan::row#10 = (byte) keyboard_event_scan::row#5 -Alias (byte) keyboard_events_size#15 = (byte) keyboard_events_size#84 (byte) keyboard_events_size#77 (byte) keyboard_events_size#68 (byte) keyboard_events_size#27 +Alias (byte) keyboard_events_size#105 = (byte) keyboard_events_size#113 (byte) keyboard_events_size#106 (byte) keyboard_events_size#39 (byte) keyboard_events_size#21 +Alias (byte) keyboard_events_size#108 = (byte) keyboard_events_size#129 (byte) keyboard_events_size#131 (byte) keyboard_events_size#127 (byte) keyboard_events_size#125 (byte) keyboard_events_size#122 (byte) keyboard_events_size#118 (byte) keyboard_events_size#115 (byte) keyboard_events_size#97 (byte) keyboard_events_size#80 +Alias (byte) keyboard_modifiers#100 = (byte) keyboard_modifiers#109 (byte) keyboard_modifiers#111 (byte) keyboard_modifiers#107 (byte) keyboard_modifiers#105 (byte) keyboard_modifiers#103 (byte) keyboard_modifiers#101 (byte) keyboard_modifiers#96 (byte) keyboard_modifiers#90 (byte) keyboard_modifiers#77 Alias (word) gfx_init_plane_8bppchunky::x#2 = (word) gfx_init_plane_8bppchunky::x#3 Alias (byte) gfx_init_plane_8bppchunky::y#2 = (byte) gfx_init_plane_8bppchunky::y#4 Alias (byte*) form_control::field#0 = (byte*) form_control::field#1 (byte*) form_control::field#10 (byte*) form_control::field#4 -Alias (byte) keyboard_events_size#32 = (byte) keyboard_events_size#43 (byte) keyboard_events_size#72 -Alias (byte) keyboard_modifiers#31 = (byte) keyboard_modifiers#44 (byte) keyboard_modifiers#66 -Alias (byte) form_field_idx#11 = (byte) form_field_idx#46 (byte) form_field_idx#12 (byte) form_field_idx#18 +Alias (byte) keyboard_events_size#100 = (byte) keyboard_events_size#64 (byte) keyboard_events_size#48 +Alias (byte) keyboard_modifiers#46 = (byte) keyboard_modifiers#64 (byte) keyboard_modifiers#93 +Alias (byte) form_field_idx#15 = (byte) form_field_idx#56 (byte) form_field_idx#16 (byte) form_field_idx#22 Alias (byte) form_fields_cnt#10 = (byte) form_fields_cnt#14 (byte) form_fields_cnt#19 -Alias (signed byte) form_cursor_count#11 = (signed byte) form_cursor_count#18 (signed byte) form_cursor_count#17 -Alias (byte) keyboard_events_size#22 = (byte) keyboard_events_size#34 (byte) keyboard_events_size#33 -Alias (byte) keyboard_modifiers#19 = (byte) keyboard_modifiers#34 (byte) keyboard_modifiers#33 +Alias (signed byte) form_cursor_count#15 = (signed byte) form_cursor_count#24 (signed byte) form_cursor_count#23 +Alias (byte) keyboard_events_size#102 = (byte) keyboard_events_size#52 (byte) keyboard_events_size#49 +Alias (byte) keyboard_modifiers#14 = (byte) keyboard_modifiers#51 (byte) keyboard_modifiers#48 Succesful SSA optimization Pass2AliasElimination Not aliassing across scopes: dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#0 Not aliassing across scopes: print_str_lines::str#5 print_str_lines::str#1 -Not aliassing across scopes: print_char_cursor#39 print_char_cursor#10 -Not aliassing across scopes: print_line_cursor#37 print_line_cursor#23 -Not aliassing across scopes: print_line_cursor#1 print_line_cursor#18 -Not aliassing across scopes: print_char_cursor#17 print_line_cursor#18 -Not aliassing across scopes: print_line_cursor#31 print_line_cursor#29 -Not aliassing across scopes: print_char_cursor#33 print_char_cursor#31 +Not aliassing across scopes: print_char_cursor#46 print_char_cursor#13 +Not aliassing across scopes: print_line_cursor#44 print_line_cursor#12 +Not aliassing across scopes: print_line_cursor#1 print_line_cursor#22 +Not aliassing across scopes: print_char_cursor#2 print_line_cursor#22 +Not aliassing across scopes: print_line_cursor#38 print_line_cursor#36 +Not aliassing across scopes: print_char_cursor#40 print_char_cursor#38 +Not aliassing across scopes: print_screen#9 print_screen#15 +Not aliassing across scopes: print_cls::sc#0 print_screen#9 Not aliassing across scopes: print_set_screen::screen#2 print_set_screen::screen#0 Not aliassing across scopes: print_screen#1 print_set_screen::screen#2 Not aliassing across scopes: keyboard_matrix_read::rowid#1 keyboard_matrix_read::rowid#0 -Not aliassing across scopes: keyboard_events_size#76 keyboard_events_size#32 +Not aliassing across scopes: keyboard_events_size#104 keyboard_events_size#100 Not aliassing across scopes: keyboard_matrix_read::rowid#0 keyboard_event_scan::row#2 Not aliassing across scopes: keyboard_matrix_read::return#2 keyboard_matrix_read::return#0 Not aliassing across scopes: keyboard_event_scan::row_scan#0 keyboard_matrix_read::return#2 @@ -7559,83 +8286,119 @@ Not aliassing across scopes: keyboard_event_pressed::keycode#3 KEY_COMMODORE#0 Not aliassing across scopes: keyboard_event_pressed::return#3 keyboard_event_pressed::return#10 Not aliassing across scopes: keyboard_event_scan::$28 keyboard_event_pressed::return#3 Not aliassing across scopes: keyboard_event_pressed::keycode#4 keyboard_event_pressed::keycode#2 -Not aliassing across scopes: keyboard_events_size#16 keyboard_events_size#21 -Not aliassing across scopes: print_screen#16 print_screen#0 -Not aliassing across scopes: print_line_cursor#32 print_screen#0 -Not aliassing across scopes: print_char_cursor#34 print_screen#0 -Not aliassing across scopes: form_cursor_count#20 form_cursor_count#19 -Not aliassing across scopes: keyboard_events_size#40 keyboard_events_size#0 -Not aliassing across scopes: keyboard_modifiers#41 keyboard_modifiers#0 -Not aliassing across scopes: form_field_idx#30 form_field_idx#2 -Not aliassing across scopes: form_fields_cnt#23 form_fields_cnt#0 -Not aliassing across scopes: print_screen#10 print_screen#13 -Not aliassing across scopes: print_line_cursor#21 print_line_cursor#12 -Not aliassing across scopes: print_char_cursor#22 print_char_cursor#13 -Not aliassing across scopes: form_cursor_count#0 form_cursor_count#12 -Not aliassing across scopes: keyboard_events_size#19 keyboard_events_size#10 -Not aliassing across scopes: keyboard_modifiers#17 keyboard_modifiers#10 +Not aliassing across scopes: keyboard_events_size#22 keyboard_events_size#14 +Not aliassing across scopes: print_screen#19 print_screen#0 +Not aliassing across scopes: print_line_cursor#39 print_screen#0 +Not aliassing across scopes: print_char_cursor#41 print_screen#0 +Not aliassing across scopes: form_cursor_count#28 form_cursor_count#26 +Not aliassing across scopes: keyboard_events_size#107 keyboard_events_size#0 +Not aliassing across scopes: keyboard_modifiers#57 keyboard_modifiers#0 +Not aliassing across scopes: form_field_idx#38 form_field_idx#36 +Not aliassing across scopes: form_fields_cnt#27 form_fields_cnt#0 +Not aliassing across scopes: print_screen#13 print_screen#16 +Not aliassing across scopes: print_line_cursor#26 print_line_cursor#16 +Not aliassing across scopes: print_char_cursor#10 print_char_cursor#17 +Not aliassing identity: print_screen#14 print_screen#14 +Not aliassing identity: print_line_cursor#10 print_line_cursor#10 +Not aliassing identity: print_char_cursor#11 print_char_cursor#11 +Not aliassing identity: form_fields_cnt#40 form_fields_cnt#40 +Not aliassing across scopes: form_cursor_count#0 form_cursor_count#13 +Not aliassing across scopes: keyboard_events_size#25 keyboard_events_size#13 +Not aliassing across scopes: keyboard_modifiers#22 keyboard_modifiers#13 Not aliassing across scopes: form_field_idx#0 form_field_idx#14 +Not aliassing across scopes: keyboard_events_size#26 keyboard_events_size#11 +Not aliassing across scopes: keyboard_modifiers#23 keyboard_modifiers#11 +Not aliassing across scopes: keyboard_events_size#108 keyboard_events_size#25 +Not aliassing across scopes: keyboard_modifiers#100 keyboard_modifiers#22 Not aliassing across scopes: gfx_mode::vic_control2#0 VIC_CSEL#0 +Not aliassing identity: keyboard_events_size#58 keyboard_events_size#58 +Not aliassing identity: keyboard_modifiers#58 keyboard_modifiers#58 +Not aliassing across scopes: keyboard_events_size#28 keyboard_events_size#105 +Not aliassing across scopes: keyboard_modifiers#10 keyboard_modifiers#21 +Not aliassing across scopes: keyboard_event_get::return#3 keyboard_event_get::return#2 +Not aliassing across scopes: keyboard_events_size#10 keyboard_events_size#24 +Not aliassing across scopes: gfx_mode::keyboard_event#0 keyboard_event_get::return#3 +Not aliassing across scopes: gfx_init_screen_stdchar::ch#0 VIC_SCREEN_STDCHAR#0 Not aliassing across scopes: dtvSetCpuBankSegment1::cpuBankIdx#0 gfx_init_plane_8bppchunky::gfxbCpuBank#0 Not aliassing across scopes: dtvSetCpuBankSegment1::cpuBankIdx#1 gfx_init_plane_8bppchunky::gfxbCpuBank#4 -Not aliassing across scopes: print_screen#18 print_screen#16 -Not aliassing across scopes: print_line_cursor#34 print_line_cursor#32 -Not aliassing across scopes: print_char_cursor#36 print_char_cursor#34 -Not aliassing across scopes: form_fields_cnt#11 form_fields_cnt#23 -Not aliassing across scopes: print_screen#12 print_screen#1 -Not aliassing across scopes: print_line_cursor#23 print_screen#1 -Not aliassing across scopes: print_char_cursor#10 print_screen#1 -Not aliassing across scopes: print_str_lines::str#1 FORM_COLS#0 -Not aliassing across scopes: print_char_cursor#11 print_char_cursor#18 -Not aliassing across scopes: print_line_cursor#10 print_line_cursor#16 -Not aliassing across scopes: print_screen#13 print_screen#1 +Not aliassing across scopes: print_screen#21 print_screen#19 +Not aliassing across scopes: print_line_cursor#41 print_line_cursor#39 +Not aliassing across scopes: print_char_cursor#43 print_char_cursor#41 +Not aliassing across scopes: form_fields_cnt#11 form_fields_cnt#27 +Not aliassing across scopes: print_set_screen::screen#0 COLS#0 +Not aliassing across scopes: print_screen#15 print_screen#1 Not aliassing across scopes: print_line_cursor#11 print_screen#1 Not aliassing across scopes: print_char_cursor#12 print_screen#1 +Not aliassing across scopes: print_line_cursor#12 print_line_cursor#24 +Not aliassing across scopes: print_char_cursor#13 print_line_cursor#24 +Not aliassing across scopes: print_str_lines::str#1 FORM_COLS#0 +Not aliassing across scopes: print_char_cursor#14 print_char_cursor#22 +Not aliassing across scopes: print_line_cursor#13 print_line_cursor#2 +Not aliassing across scopes: print_set_screen::screen#1 FORM_SCREEN#0 +Not aliassing across scopes: print_screen#16 print_screen#1 +Not aliassing across scopes: print_line_cursor#14 print_screen#1 +Not aliassing across scopes: print_char_cursor#15 print_screen#1 +Not aliassing across scopes: print_line_cursor#15 print_line_cursor#24 +Not aliassing across scopes: print_char_cursor#16 print_line_cursor#24 Not aliassing across scopes: print_str_lines::str#2 FORM_TEXT#0 -Not aliassing across scopes: print_char_cursor#13 print_char_cursor#18 -Not aliassing across scopes: print_line_cursor#12 print_line_cursor#16 +Not aliassing across scopes: print_char_cursor#17 print_char_cursor#22 +Not aliassing across scopes: print_line_cursor#16 print_line_cursor#2 +Not aliassing across scopes: form_set_screen::screen#0 FORM_SCREEN#0 +Not aliassing across scopes: form_cursor_count#45 form_cursor_count#1 +Not aliassing across scopes: keyboard_events_size#99 keyboard_events_size#27 +Not aliassing across scopes: keyboard_modifiers#92 keyboard_modifiers#24 +Not aliassing across scopes: form_field_idx#53 form_field_idx#1 +Not aliassing across scopes: form_fields_cnt#38 form_fields_cnt#40 +Not aliassing across scopes: form_control::return#0 form_control::return#2 +Not aliassing across scopes: form_cursor_count#12 form_cursor_count#16 +Not aliassing across scopes: keyboard_events_size#12 keyboard_events_size#16 +Not aliassing across scopes: keyboard_modifiers#12 keyboard_modifiers#15 +Not aliassing across scopes: form_field_idx#13 form_field_idx#18 +Not aliassing across scopes: form_mode::$25 form_control::return#0 Not aliassing across scopes: form_set_screen::line#0 form_set_screen::screen#0 Not aliassing across scopes: form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 Not aliassing across scopes: form_fields_cnt#7 form_fields_cnt#11 Not aliassing across scopes: form_field_ptr::field_idx#0 form_render_values::idx#2 Not aliassing across scopes: form_field_ptr::return#2 form_field_ptr::return#0 Not aliassing across scopes: form_render_values::field#0 form_field_ptr::return#2 -Not aliassing across scopes: form_field_idx#11 form_field_idx#21 -Not aliassing across scopes: form_cursor_count#10 form_cursor_count#14 -Not aliassing across scopes: keyboard_events_size#32 keyboard_events_size#30 -Not aliassing across scopes: keyboard_modifiers#31 keyboard_modifiers#29 +Not aliassing across scopes: form_field_idx#15 form_field_idx#27 +Not aliassing across scopes: form_cursor_count#14 form_cursor_count#20 +Not aliassing across scopes: keyboard_events_size#100 keyboard_events_size#46 +Not aliassing across scopes: keyboard_modifiers#46 keyboard_modifiers#44 Not aliassing across scopes: form_fields_cnt#10 form_fields_cnt#24 -Not aliassing across scopes: form_field_ptr::field_idx#1 form_field_idx#11 +Not aliassing across scopes: form_field_ptr::field_idx#1 form_field_idx#15 Not aliassing across scopes: form_field_ptr::return#3 form_field_ptr::return#0 Not aliassing across scopes: form_control::field#0 form_field_ptr::return#3 -Not aliassing across scopes: form_cursor_count#4 FORM_CURSOR_BLINK#0 -Not aliassing across scopes: keyboard_events_size#21 keyboard_events_size#15 -Not aliassing across scopes: keyboard_modifiers#19 keyboard_modifiers#16 -Not aliassing across scopes: keyboard_event_get::return#3 keyboard_event_get::return#2 -Not aliassing across scopes: keyboard_events_size#22 keyboard_events_size#18 -Not aliassing across scopes: form_control::key_event#0 keyboard_event_get::return#3 -Not aliassing across scopes: print_screen#15 print_screen#11 -Not aliassing across scopes: print_line_cursor#14 print_line_cursor#22 -Not aliassing across scopes: print_char_cursor#15 print_char_cursor#23 -Not aliassing across scopes: form_cursor_count#13 form_cursor_count#1 -Not aliassing across scopes: keyboard_events_size#11 keyboard_events_size#20 -Not aliassing across scopes: keyboard_modifiers#11 keyboard_modifiers#18 -Not aliassing across scopes: form_field_idx#20 form_field_idx#1 -Alias (byte) keyboard_events_size#10 = (byte) keyboard_events_size#22 -Alias (byte) keyboard_modifiers#10 = (byte) keyboard_modifiers#19 +Not aliassing across scopes: form_cursor_count#6 FORM_CURSOR_BLINK#0 +Not aliassing across scopes: keyboard_events_size#14 keyboard_events_size#105 +Not aliassing across scopes: keyboard_modifiers#14 keyboard_modifiers#21 +Not aliassing across scopes: keyboard_event_get::return#4 keyboard_event_get::return#2 +Not aliassing across scopes: keyboard_events_size#102 keyboard_events_size#24 +Not aliassing across scopes: form_control::key_event#0 keyboard_event_get::return#4 +Not aliassing across scopes: print_screen#18 print_screen#14 +Not aliassing across scopes: print_line_cursor#18 print_line_cursor#10 +Not aliassing across scopes: print_char_cursor#19 print_char_cursor#11 +Not aliassing across scopes: form_cursor_count#17 form_cursor_count#1 +Not aliassing across scopes: keyboard_events_size#17 keyboard_events_size#27 +Not aliassing across scopes: keyboard_modifiers#16 keyboard_modifiers#24 +Not aliassing across scopes: form_field_idx#10 form_field_idx#1 +Alias (byte) keyboard_events_size#102 = (byte) keyboard_events_size#16 +Alias (byte) keyboard_modifiers#14 = (byte) keyboard_modifiers#15 Succesful SSA optimization Pass2AliasElimination Not aliassing across scopes: dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#0 Not aliassing across scopes: print_str_lines::str#5 print_str_lines::str#1 -Not aliassing across scopes: print_char_cursor#39 print_char_cursor#10 -Not aliassing across scopes: print_line_cursor#37 print_line_cursor#23 -Not aliassing across scopes: print_line_cursor#1 print_line_cursor#18 -Not aliassing across scopes: print_char_cursor#17 print_line_cursor#18 -Not aliassing across scopes: print_line_cursor#31 print_line_cursor#29 -Not aliassing across scopes: print_char_cursor#33 print_char_cursor#31 +Not aliassing across scopes: print_char_cursor#46 print_char_cursor#13 +Not aliassing across scopes: print_line_cursor#44 print_line_cursor#12 +Not aliassing across scopes: print_line_cursor#1 print_line_cursor#22 +Not aliassing across scopes: print_char_cursor#2 print_line_cursor#22 +Not aliassing across scopes: print_line_cursor#38 print_line_cursor#36 +Not aliassing across scopes: print_char_cursor#40 print_char_cursor#38 +Not aliassing across scopes: print_screen#9 print_screen#15 +Not aliassing across scopes: print_cls::sc#0 print_screen#9 Not aliassing across scopes: print_set_screen::screen#2 print_set_screen::screen#0 Not aliassing across scopes: print_screen#1 print_set_screen::screen#2 Not aliassing across scopes: keyboard_matrix_read::rowid#1 keyboard_matrix_read::rowid#0 -Not aliassing across scopes: keyboard_events_size#76 keyboard_events_size#32 +Not aliassing across scopes: keyboard_events_size#104 keyboard_events_size#100 Not aliassing across scopes: keyboard_matrix_read::rowid#0 keyboard_event_scan::row#2 Not aliassing across scopes: keyboard_matrix_read::return#2 keyboard_matrix_read::return#0 Not aliassing across scopes: keyboard_event_scan::row_scan#0 keyboard_matrix_read::return#2 @@ -7652,188 +8415,249 @@ Not aliassing across scopes: keyboard_event_pressed::keycode#3 KEY_COMMODORE#0 Not aliassing across scopes: keyboard_event_pressed::return#3 keyboard_event_pressed::return#10 Not aliassing across scopes: keyboard_event_scan::$28 keyboard_event_pressed::return#3 Not aliassing across scopes: keyboard_event_pressed::keycode#4 keyboard_event_pressed::keycode#2 -Not aliassing across scopes: keyboard_events_size#16 keyboard_events_size#21 -Not aliassing across scopes: print_screen#16 print_screen#0 -Not aliassing across scopes: print_line_cursor#32 print_screen#0 -Not aliassing across scopes: print_char_cursor#34 print_screen#0 -Not aliassing across scopes: form_cursor_count#20 form_cursor_count#19 -Not aliassing across scopes: keyboard_events_size#40 keyboard_events_size#0 -Not aliassing across scopes: keyboard_modifiers#41 keyboard_modifiers#0 -Not aliassing across scopes: form_field_idx#30 form_field_idx#2 -Not aliassing across scopes: form_fields_cnt#23 form_fields_cnt#0 -Not aliassing across scopes: print_screen#10 print_screen#13 -Not aliassing across scopes: print_line_cursor#21 print_line_cursor#12 -Not aliassing across scopes: print_char_cursor#22 print_char_cursor#13 -Not aliassing across scopes: form_cursor_count#0 form_cursor_count#12 -Not aliassing across scopes: keyboard_events_size#19 keyboard_events_size#10 -Not aliassing across scopes: keyboard_modifiers#17 keyboard_modifiers#10 +Not aliassing across scopes: keyboard_events_size#22 keyboard_events_size#14 +Not aliassing across scopes: print_screen#19 print_screen#0 +Not aliassing across scopes: print_line_cursor#39 print_screen#0 +Not aliassing across scopes: print_char_cursor#41 print_screen#0 +Not aliassing across scopes: form_cursor_count#28 form_cursor_count#26 +Not aliassing across scopes: keyboard_events_size#107 keyboard_events_size#0 +Not aliassing across scopes: keyboard_modifiers#57 keyboard_modifiers#0 +Not aliassing across scopes: form_field_idx#38 form_field_idx#36 +Not aliassing across scopes: form_fields_cnt#27 form_fields_cnt#0 +Not aliassing across scopes: print_screen#13 print_screen#16 +Not aliassing across scopes: print_line_cursor#26 print_line_cursor#16 +Not aliassing across scopes: print_char_cursor#10 print_char_cursor#17 +Not aliassing identity: print_screen#14 print_screen#14 +Not aliassing identity: print_line_cursor#10 print_line_cursor#10 +Not aliassing identity: print_char_cursor#11 print_char_cursor#11 +Not aliassing identity: form_fields_cnt#40 form_fields_cnt#40 +Not aliassing across scopes: form_cursor_count#0 form_cursor_count#13 +Not aliassing across scopes: keyboard_events_size#25 keyboard_events_size#13 +Not aliassing across scopes: keyboard_modifiers#22 keyboard_modifiers#13 Not aliassing across scopes: form_field_idx#0 form_field_idx#14 +Not aliassing across scopes: keyboard_events_size#26 keyboard_events_size#11 +Not aliassing across scopes: keyboard_modifiers#23 keyboard_modifiers#11 +Not aliassing across scopes: keyboard_events_size#108 keyboard_events_size#25 +Not aliassing across scopes: keyboard_modifiers#100 keyboard_modifiers#22 Not aliassing across scopes: gfx_mode::vic_control2#0 VIC_CSEL#0 +Not aliassing identity: keyboard_events_size#58 keyboard_events_size#58 +Not aliassing identity: keyboard_modifiers#58 keyboard_modifiers#58 +Not aliassing across scopes: keyboard_events_size#28 keyboard_events_size#105 +Not aliassing across scopes: keyboard_modifiers#10 keyboard_modifiers#21 +Not aliassing across scopes: keyboard_event_get::return#3 keyboard_event_get::return#2 +Not aliassing across scopes: keyboard_events_size#10 keyboard_events_size#24 +Not aliassing across scopes: gfx_mode::keyboard_event#0 keyboard_event_get::return#3 +Not aliassing across scopes: gfx_init_screen_stdchar::ch#0 VIC_SCREEN_STDCHAR#0 Not aliassing across scopes: dtvSetCpuBankSegment1::cpuBankIdx#0 gfx_init_plane_8bppchunky::gfxbCpuBank#0 Not aliassing across scopes: dtvSetCpuBankSegment1::cpuBankIdx#1 gfx_init_plane_8bppchunky::gfxbCpuBank#4 -Not aliassing across scopes: print_screen#18 print_screen#16 -Not aliassing across scopes: print_line_cursor#34 print_line_cursor#32 -Not aliassing across scopes: print_char_cursor#36 print_char_cursor#34 -Not aliassing across scopes: form_fields_cnt#11 form_fields_cnt#23 -Not aliassing across scopes: print_screen#12 print_screen#1 -Not aliassing across scopes: print_line_cursor#23 print_screen#1 -Not aliassing across scopes: print_char_cursor#10 print_screen#1 -Not aliassing across scopes: print_str_lines::str#1 FORM_COLS#0 -Not aliassing across scopes: print_char_cursor#11 print_char_cursor#18 -Not aliassing across scopes: print_line_cursor#10 print_line_cursor#16 -Not aliassing across scopes: print_screen#13 print_screen#1 +Not aliassing across scopes: print_screen#21 print_screen#19 +Not aliassing across scopes: print_line_cursor#41 print_line_cursor#39 +Not aliassing across scopes: print_char_cursor#43 print_char_cursor#41 +Not aliassing across scopes: form_fields_cnt#11 form_fields_cnt#27 +Not aliassing across scopes: print_set_screen::screen#0 COLS#0 +Not aliassing across scopes: print_screen#15 print_screen#1 Not aliassing across scopes: print_line_cursor#11 print_screen#1 Not aliassing across scopes: print_char_cursor#12 print_screen#1 +Not aliassing across scopes: print_line_cursor#12 print_line_cursor#24 +Not aliassing across scopes: print_char_cursor#13 print_line_cursor#24 +Not aliassing across scopes: print_str_lines::str#1 FORM_COLS#0 +Not aliassing across scopes: print_char_cursor#14 print_char_cursor#22 +Not aliassing across scopes: print_line_cursor#13 print_line_cursor#2 +Not aliassing across scopes: print_set_screen::screen#1 FORM_SCREEN#0 +Not aliassing across scopes: print_screen#16 print_screen#1 +Not aliassing across scopes: print_line_cursor#14 print_screen#1 +Not aliassing across scopes: print_char_cursor#15 print_screen#1 +Not aliassing across scopes: print_line_cursor#15 print_line_cursor#24 +Not aliassing across scopes: print_char_cursor#16 print_line_cursor#24 Not aliassing across scopes: print_str_lines::str#2 FORM_TEXT#0 -Not aliassing across scopes: print_char_cursor#13 print_char_cursor#18 -Not aliassing across scopes: print_line_cursor#12 print_line_cursor#16 +Not aliassing across scopes: print_char_cursor#17 print_char_cursor#22 +Not aliassing across scopes: print_line_cursor#16 print_line_cursor#2 +Not aliassing across scopes: form_set_screen::screen#0 FORM_SCREEN#0 +Not aliassing across scopes: form_cursor_count#45 form_cursor_count#1 +Not aliassing across scopes: keyboard_events_size#99 keyboard_events_size#27 +Not aliassing across scopes: keyboard_modifiers#92 keyboard_modifiers#24 +Not aliassing across scopes: form_field_idx#53 form_field_idx#1 +Not aliassing across scopes: form_fields_cnt#38 form_fields_cnt#40 +Not aliassing across scopes: form_control::return#0 form_control::return#2 +Not aliassing across scopes: form_cursor_count#12 form_cursor_count#16 +Not aliassing across scopes: keyboard_events_size#12 keyboard_events_size#102 +Not aliassing across scopes: keyboard_modifiers#12 keyboard_modifiers#14 +Not aliassing across scopes: form_field_idx#13 form_field_idx#18 +Not aliassing across scopes: form_mode::$25 form_control::return#0 Not aliassing across scopes: form_set_screen::line#0 form_set_screen::screen#0 Not aliassing across scopes: form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 Not aliassing across scopes: form_fields_cnt#7 form_fields_cnt#11 Not aliassing across scopes: form_field_ptr::field_idx#0 form_render_values::idx#2 Not aliassing across scopes: form_field_ptr::return#2 form_field_ptr::return#0 Not aliassing across scopes: form_render_values::field#0 form_field_ptr::return#2 -Not aliassing across scopes: form_field_idx#11 form_field_idx#21 -Not aliassing across scopes: form_cursor_count#10 form_cursor_count#14 -Not aliassing across scopes: keyboard_events_size#32 keyboard_events_size#30 -Not aliassing across scopes: keyboard_modifiers#31 keyboard_modifiers#29 +Not aliassing across scopes: form_field_idx#15 form_field_idx#27 +Not aliassing across scopes: form_cursor_count#14 form_cursor_count#20 +Not aliassing across scopes: keyboard_events_size#100 keyboard_events_size#46 +Not aliassing across scopes: keyboard_modifiers#46 keyboard_modifiers#44 Not aliassing across scopes: form_fields_cnt#10 form_fields_cnt#24 -Not aliassing across scopes: form_field_ptr::field_idx#1 form_field_idx#11 +Not aliassing across scopes: form_field_ptr::field_idx#1 form_field_idx#15 Not aliassing across scopes: form_field_ptr::return#3 form_field_ptr::return#0 Not aliassing across scopes: form_control::field#0 form_field_ptr::return#3 -Not aliassing across scopes: form_cursor_count#4 FORM_CURSOR_BLINK#0 -Not aliassing across scopes: keyboard_events_size#21 keyboard_events_size#15 -Not aliassing across scopes: keyboard_modifiers#10 keyboard_modifiers#16 -Not aliassing across scopes: keyboard_event_get::return#3 keyboard_event_get::return#2 -Not aliassing across scopes: keyboard_events_size#10 keyboard_events_size#18 -Not aliassing across scopes: form_control::key_event#0 keyboard_event_get::return#3 -Not aliassing across scopes: print_screen#15 print_screen#11 -Not aliassing across scopes: print_line_cursor#14 print_line_cursor#22 -Not aliassing across scopes: print_char_cursor#15 print_char_cursor#23 -Not aliassing across scopes: form_cursor_count#13 form_cursor_count#1 -Not aliassing across scopes: keyboard_events_size#11 keyboard_events_size#20 -Not aliassing across scopes: keyboard_modifiers#11 keyboard_modifiers#18 -Not aliassing across scopes: form_field_idx#20 form_field_idx#1 -Self Phi Eliminated (byte*) print_line_cursor#29 -Self Phi Eliminated (byte*) print_char_cursor#19 +Not aliassing across scopes: form_cursor_count#6 FORM_CURSOR_BLINK#0 +Not aliassing across scopes: keyboard_events_size#14 keyboard_events_size#105 +Not aliassing across scopes: keyboard_modifiers#14 keyboard_modifiers#21 +Not aliassing across scopes: keyboard_event_get::return#4 keyboard_event_get::return#2 +Not aliassing across scopes: keyboard_events_size#102 keyboard_events_size#24 +Not aliassing across scopes: form_control::key_event#0 keyboard_event_get::return#4 +Not aliassing across scopes: print_screen#18 print_screen#14 +Not aliassing across scopes: print_line_cursor#18 print_line_cursor#10 +Not aliassing across scopes: print_char_cursor#19 print_char_cursor#11 +Not aliassing across scopes: form_cursor_count#17 form_cursor_count#1 +Not aliassing across scopes: keyboard_events_size#17 keyboard_events_size#27 +Not aliassing across scopes: keyboard_modifiers#16 keyboard_modifiers#24 +Not aliassing across scopes: form_field_idx#10 form_field_idx#1 +Self Phi Eliminated (byte*) print_line_cursor#36 +Self Phi Eliminated (byte*) print_char_cursor#23 +Self Phi Eliminated (byte*) print_line_cursor#24 Self Phi Eliminated (byte) keyboard_event_scan::row_scan#1 Self Phi Eliminated (byte) keyboard_event_scan::row#10 -Self Phi Eliminated (signed byte) form_cursor_count#29 -Self Phi Eliminated (byte) keyboard_events_size#59 -Self Phi Eliminated (byte) keyboard_modifiers#56 -Self Phi Eliminated (byte) form_field_idx#38 -Self Phi Eliminated (byte*) print_screen#35 -Self Phi Eliminated (byte*) print_line_cursor#54 -Self Phi Eliminated (byte*) print_char_cursor#54 -Self Phi Eliminated (byte) form_fields_cnt#28 -Self Phi Eliminated (signed byte) form_cursor_count#14 -Self Phi Eliminated (byte) keyboard_events_size#30 -Self Phi Eliminated (byte) keyboard_modifiers#29 -Self Phi Eliminated (byte) form_field_idx#21 -Self Phi Eliminated (byte*) print_screen#23 -Self Phi Eliminated (byte*) print_line_cursor#40 -Self Phi Eliminated (byte*) print_char_cursor#43 -Self Phi Eliminated (byte) form_fields_cnt#24 +Self Phi Eliminated (byte*) print_screen#14 +Self Phi Eliminated (byte*) print_line_cursor#10 +Self Phi Eliminated (byte*) print_char_cursor#11 +Self Phi Eliminated (byte) form_fields_cnt#40 +Self Phi Eliminated (byte) keyboard_events_size#58 +Self Phi Eliminated (byte) keyboard_modifiers#58 +Self Phi Eliminated (byte) keyboard_events_size#44 +Self Phi Eliminated (byte) keyboard_modifiers#41 +Self Phi Eliminated (byte) gfx_init_screen_stdchar::cy#2 Self Phi Eliminated (byte) gfx_init_plane_8bppchunky::y#2 +Self Phi Eliminated (signed byte) form_cursor_count#30 +Self Phi Eliminated (byte) keyboard_events_size#62 +Self Phi Eliminated (byte) keyboard_modifiers#62 +Self Phi Eliminated (byte) form_field_idx#40 +Self Phi Eliminated (byte) form_fields_cnt#34 +Self Phi Eliminated (signed byte) form_cursor_count#20 +Self Phi Eliminated (byte) keyboard_events_size#46 +Self Phi Eliminated (byte) keyboard_modifiers#44 +Self Phi Eliminated (byte) form_field_idx#27 +Self Phi Eliminated (byte) form_fields_cnt#24 Self Phi Eliminated (byte) form_fields_cnt#1 Succesful SSA optimization Pass2SelfPhiElimination -Redundant Phi (byte*) print_line_cursor#29 (byte*) print_line_cursor#16 -Redundant Phi (byte*) print_line_cursor#1 (byte*) print_line_cursor#18 -Redundant Phi (byte*) print_char_cursor#17 (byte*) print_line_cursor#18 -Redundant Phi (byte*) print_line_cursor#31 (byte*) print_line_cursor#29 -Redundant Phi (byte*) print_char_cursor#33 (byte*) print_char_cursor#31 -Redundant Phi (byte*) print_char_cursor#19 (byte*) print_char_cursor#33 +Redundant Phi (byte*) print_line_cursor#36 (byte*) print_line_cursor#2 +Redundant Phi (byte*) print_line_cursor#1 (byte*) print_line_cursor#22 +Redundant Phi (byte*) print_char_cursor#2 (byte*) print_line_cursor#22 +Redundant Phi (byte*) print_line_cursor#38 (byte*) print_line_cursor#36 +Redundant Phi (byte*) print_char_cursor#40 (byte*) print_char_cursor#38 +Redundant Phi (byte*) print_char_cursor#23 (byte*) print_char_cursor#40 +Redundant Phi (byte*) print_line_cursor#24 (byte*) print_screen#9 Redundant Phi (byte) keyboard_matrix_read::rowid#1 (byte) keyboard_matrix_read::rowid#0 -Redundant Phi (byte) keyboard_events_size#76 (byte) keyboard_events_size#32 Redundant Phi (byte) keyboard_event_scan::row_scan#1 (byte) keyboard_event_scan::row_scan#0 Redundant Phi (byte) keyboard_event_scan::row#10 (byte) keyboard_event_scan::row#2 -Redundant Phi (byte) keyboard_events_size#16 (byte) keyboard_events_size#21 -Redundant Phi (byte*) print_screen#16 (byte*) print_screen#0 -Redundant Phi (byte*) print_line_cursor#32 (byte*) print_screen#0 -Redundant Phi (byte*) print_char_cursor#34 (byte*) print_screen#0 -Redundant Phi (signed byte) form_cursor_count#20 (signed byte) form_cursor_count#19 -Redundant Phi (byte) keyboard_events_size#40 (byte) keyboard_events_size#0 -Redundant Phi (byte) keyboard_modifiers#41 (byte) keyboard_modifiers#0 -Redundant Phi (byte) form_field_idx#30 (byte) form_field_idx#2 -Redundant Phi (byte) form_fields_cnt#23 (byte) form_fields_cnt#0 -Redundant Phi (byte*) print_screen#10 (byte*) print_screen#13 -Redundant Phi (byte*) print_line_cursor#21 (byte*) print_line_cursor#12 -Redundant Phi (byte*) print_char_cursor#22 (byte*) print_char_cursor#13 -Redundant Phi (signed byte) form_cursor_count#29 (signed byte) form_cursor_count#1 -Redundant Phi (byte) keyboard_events_size#59 (byte) keyboard_events_size#20 -Redundant Phi (byte) keyboard_modifiers#56 (byte) keyboard_modifiers#18 -Redundant Phi (byte) form_field_idx#38 (byte) form_field_idx#1 -Redundant Phi (byte*) print_screen#35 (byte*) print_screen#11 -Redundant Phi (byte*) print_line_cursor#54 (byte*) print_line_cursor#22 -Redundant Phi (byte*) print_char_cursor#54 (byte*) print_char_cursor#23 -Redundant Phi (byte) form_fields_cnt#28 (byte) form_fields_cnt#34 -Redundant Phi (signed byte) form_cursor_count#14 (signed byte) form_cursor_count#29 -Redundant Phi (byte) keyboard_events_size#30 (byte) keyboard_events_size#59 -Redundant Phi (byte) keyboard_modifiers#29 (byte) keyboard_modifiers#56 -Redundant Phi (byte) form_field_idx#21 (byte) form_field_idx#38 -Redundant Phi (byte*) print_screen#23 (byte*) print_screen#35 -Redundant Phi (byte*) print_line_cursor#40 (byte*) print_line_cursor#54 -Redundant Phi (byte*) print_char_cursor#43 (byte*) print_char_cursor#54 -Redundant Phi (byte) form_fields_cnt#24 (byte) form_fields_cnt#28 -Redundant Phi (signed byte) form_cursor_count#0 (signed byte) form_cursor_count#12 -Redundant Phi (byte) keyboard_events_size#19 (byte) keyboard_events_size#10 -Redundant Phi (byte) keyboard_modifiers#17 (byte) keyboard_modifiers#10 +Redundant Phi (byte*) print_screen#19 (byte*) print_screen#0 +Redundant Phi (byte*) print_line_cursor#39 (byte*) print_screen#0 +Redundant Phi (byte*) print_char_cursor#41 (byte*) print_screen#0 +Redundant Phi (signed byte) form_cursor_count#28 (signed byte) form_cursor_count#26 +Redundant Phi (byte) keyboard_events_size#107 (byte) keyboard_events_size#0 +Redundant Phi (byte) keyboard_modifiers#57 (byte) keyboard_modifiers#0 +Redundant Phi (byte) form_field_idx#38 (byte) form_field_idx#36 +Redundant Phi (byte) form_fields_cnt#27 (byte) form_fields_cnt#0 +Redundant Phi (byte*) print_screen#13 (byte*) print_screen#16 +Redundant Phi (byte*) print_line_cursor#26 (byte*) print_line_cursor#16 +Redundant Phi (byte*) print_char_cursor#10 (byte*) print_char_cursor#17 +Redundant Phi (byte*) print_screen#14 (byte*) print_screen#13 +Redundant Phi (byte*) print_line_cursor#10 (byte*) print_line_cursor#26 +Redundant Phi (byte*) print_char_cursor#11 (byte*) print_char_cursor#10 +Redundant Phi (byte) form_fields_cnt#40 (byte) form_fields_cnt#27 +Redundant Phi (signed byte) form_cursor_count#0 (signed byte) form_cursor_count#13 +Redundant Phi (byte) keyboard_events_size#25 (byte) keyboard_events_size#13 +Redundant Phi (byte) keyboard_modifiers#22 (byte) keyboard_modifiers#13 Redundant Phi (byte) form_field_idx#0 (byte) form_field_idx#14 +Redundant Phi (byte) keyboard_events_size#26 (byte) keyboard_events_size#11 +Redundant Phi (byte) keyboard_modifiers#23 (byte) keyboard_modifiers#11 +Redundant Phi (byte) keyboard_events_size#108 (byte) keyboard_events_size#25 +Redundant Phi (byte) keyboard_modifiers#100 (byte) keyboard_modifiers#22 +Redundant Phi (byte) keyboard_events_size#58 (byte) keyboard_events_size#108 +Redundant Phi (byte) keyboard_modifiers#58 (byte) keyboard_modifiers#100 +Redundant Phi (byte) keyboard_events_size#44 (byte) keyboard_events_size#45 +Redundant Phi (byte) keyboard_modifiers#41 (byte) keyboard_modifiers#42 +Redundant Phi (byte) keyboard_events_size#28 (byte) keyboard_events_size#105 +Redundant Phi (byte) keyboard_modifiers#10 (byte) keyboard_modifiers#21 +Redundant Phi (byte) keyboard_events_size#10 (byte) keyboard_events_size#24 +Redundant Phi (byte) gfx_init_screen_stdchar::cy#2 (byte) gfx_init_screen_stdchar::cy#4 Redundant Phi (byte) gfx_init_plane_8bppchunky::y#2 (byte) gfx_init_plane_8bppchunky::y#6 -Redundant Phi (byte*) print_screen#18 (byte*) print_screen#16 -Redundant Phi (byte*) print_line_cursor#34 (byte*) print_line_cursor#32 -Redundant Phi (byte*) print_char_cursor#36 (byte*) print_char_cursor#34 -Redundant Phi (byte) form_fields_cnt#11 (byte) form_fields_cnt#23 -Redundant Phi (byte*) print_screen#12 (byte*) print_screen#1 -Redundant Phi (byte*) print_line_cursor#23 (byte*) print_screen#1 -Redundant Phi (byte*) print_char_cursor#10 (byte*) print_screen#1 -Redundant Phi (byte*) print_char_cursor#11 (byte*) print_char_cursor#18 -Redundant Phi (byte*) print_line_cursor#10 (byte*) print_line_cursor#16 -Redundant Phi (byte*) print_screen#13 (byte*) print_screen#1 +Redundant Phi (byte*) print_screen#21 (byte*) print_screen#19 +Redundant Phi (byte*) print_line_cursor#41 (byte*) print_line_cursor#39 +Redundant Phi (byte*) print_char_cursor#43 (byte*) print_char_cursor#41 +Redundant Phi (byte) form_fields_cnt#11 (byte) form_fields_cnt#27 +Redundant Phi (byte*) print_screen#15 (byte*) print_screen#1 Redundant Phi (byte*) print_line_cursor#11 (byte*) print_screen#1 Redundant Phi (byte*) print_char_cursor#12 (byte*) print_screen#1 -Redundant Phi (byte*) print_char_cursor#13 (byte*) print_char_cursor#18 -Redundant Phi (byte*) print_line_cursor#12 (byte*) print_line_cursor#16 +Redundant Phi (byte*) print_line_cursor#12 (byte*) print_line_cursor#24 +Redundant Phi (byte*) print_char_cursor#13 (byte*) print_line_cursor#24 +Redundant Phi (byte*) print_char_cursor#14 (byte*) print_char_cursor#22 +Redundant Phi (byte*) print_line_cursor#13 (byte*) print_line_cursor#2 +Redundant Phi (byte*) print_screen#16 (byte*) print_screen#1 +Redundant Phi (byte*) print_line_cursor#14 (byte*) print_screen#1 +Redundant Phi (byte*) print_char_cursor#15 (byte*) print_screen#1 +Redundant Phi (byte*) print_line_cursor#15 (byte*) print_line_cursor#24 +Redundant Phi (byte*) print_char_cursor#16 (byte*) print_line_cursor#24 +Redundant Phi (byte*) print_char_cursor#17 (byte*) print_char_cursor#22 +Redundant Phi (byte*) print_line_cursor#16 (byte*) print_line_cursor#2 +Redundant Phi (signed byte) form_cursor_count#45 (signed byte) form_cursor_count#1 +Redundant Phi (byte) keyboard_events_size#99 (byte) keyboard_events_size#27 +Redundant Phi (byte) keyboard_modifiers#92 (byte) keyboard_modifiers#24 +Redundant Phi (byte) form_field_idx#53 (byte) form_field_idx#1 +Redundant Phi (byte) form_fields_cnt#38 (byte) form_fields_cnt#40 +Redundant Phi (signed byte) form_cursor_count#30 (signed byte) form_cursor_count#45 +Redundant Phi (byte) keyboard_events_size#62 (byte) keyboard_events_size#99 +Redundant Phi (byte) keyboard_modifiers#62 (byte) keyboard_modifiers#92 +Redundant Phi (byte) form_field_idx#40 (byte) form_field_idx#53 +Redundant Phi (byte) form_fields_cnt#34 (byte) form_fields_cnt#38 +Redundant Phi (signed byte) form_cursor_count#20 (signed byte) form_cursor_count#21 +Redundant Phi (byte) keyboard_events_size#46 (byte) keyboard_events_size#47 +Redundant Phi (byte) keyboard_modifiers#44 (byte) keyboard_modifiers#45 +Redundant Phi (byte) form_field_idx#27 (byte) form_field_idx#28 +Redundant Phi (byte) form_fields_cnt#24 (byte) form_fields_cnt#28 +Redundant Phi (signed byte) form_cursor_count#12 (signed byte) form_cursor_count#16 +Redundant Phi (byte) keyboard_events_size#12 (byte) keyboard_events_size#102 +Redundant Phi (byte) keyboard_modifiers#12 (byte) keyboard_modifiers#14 +Redundant Phi (byte) form_field_idx#13 (byte) form_field_idx#18 Redundant Phi (byte*) form_set_screen::line#0 (byte*) form_set_screen::screen#0 Redundant Phi (byte) form_fields_cnt#7 (byte) form_fields_cnt#11 Redundant Phi (byte) form_fields_cnt#1 (byte) form_fields_cnt#7 -Redundant Phi (byte) form_field_idx#11 (byte) form_field_idx#21 -Redundant Phi (signed byte) form_cursor_count#10 (signed byte) form_cursor_count#14 -Redundant Phi (byte) keyboard_events_size#32 (byte) keyboard_events_size#30 -Redundant Phi (byte) keyboard_modifiers#31 (byte) keyboard_modifiers#29 +Redundant Phi (byte) form_field_idx#15 (byte) form_field_idx#27 +Redundant Phi (signed byte) form_cursor_count#14 (signed byte) form_cursor_count#20 +Redundant Phi (byte) keyboard_events_size#100 (byte) keyboard_events_size#46 +Redundant Phi (byte) keyboard_modifiers#46 (byte) keyboard_modifiers#44 Redundant Phi (byte) form_fields_cnt#10 (byte) form_fields_cnt#24 -Redundant Phi (byte) keyboard_events_size#21 (byte) keyboard_events_size#15 -Redundant Phi (byte) keyboard_modifiers#10 (byte) keyboard_modifiers#16 -Redundant Phi (byte) keyboard_events_size#10 (byte) keyboard_events_size#18 -Redundant Phi (byte*) print_screen#15 (byte*) print_screen#11 -Redundant Phi (byte*) print_line_cursor#14 (byte*) print_line_cursor#22 -Redundant Phi (byte*) print_char_cursor#15 (byte*) print_char_cursor#23 -Redundant Phi (signed byte) form_cursor_count#13 (signed byte) form_cursor_count#1 -Redundant Phi (byte) keyboard_events_size#11 (byte) keyboard_events_size#20 -Redundant Phi (byte) keyboard_modifiers#11 (byte) keyboard_modifiers#18 -Redundant Phi (byte) form_field_idx#20 (byte) form_field_idx#1 +Redundant Phi (byte) keyboard_events_size#14 (byte) keyboard_events_size#105 +Redundant Phi (byte) keyboard_modifiers#14 (byte) keyboard_modifiers#21 +Redundant Phi (byte) keyboard_events_size#102 (byte) keyboard_events_size#24 +Redundant Phi (byte*) print_screen#18 (byte*) print_screen#14 +Redundant Phi (byte*) print_line_cursor#18 (byte*) print_line_cursor#10 +Redundant Phi (byte*) print_char_cursor#19 (byte*) print_char_cursor#11 +Redundant Phi (signed byte) form_cursor_count#17 (signed byte) form_cursor_count#1 +Redundant Phi (byte) keyboard_events_size#17 (byte) keyboard_events_size#27 +Redundant Phi (byte) keyboard_modifiers#16 (byte) keyboard_modifiers#24 +Redundant Phi (byte) form_field_idx#10 (byte) form_field_idx#1 Succesful SSA optimization Pass2RedundantPhiElimination -Redundant Phi (byte*) print_char_cursor#39 (byte*) print_screen#1 -Redundant Phi (byte*) print_line_cursor#37 (byte*) print_screen#1 +Redundant Phi (byte*) print_char_cursor#46 (byte*) print_screen#9 +Redundant Phi (byte*) print_line_cursor#44 (byte*) print_screen#9 +Redundant Phi (byte*) print_screen#9 (byte*) print_screen#1 Redundant Phi (byte) keyboard_event_scan::row#6 (byte) keyboard_event_scan::row#2 +Redundant Phi (byte) keyboard_events_size#22 (byte) keyboard_events_size#105 Succesful SSA optimization Pass2RedundantPhiElimination Simple Condition (boolean~) print_str_lines::$0 if(*((byte*) print_str_lines::str#3)!=(byte) '@') goto print_str_lines::@2 Simple Condition (boolean~) print_str_lines::$2 if((byte) print_str_lines::ch#0==(byte) '@') goto print_str_lines::@5 Simple Condition (boolean~) print_str_lines::$3 if((byte) print_str_lines::ch#0!=(byte) '@') goto print_str_lines::@4 -Simple Condition (boolean~) print_ln::$1 if((byte*) print_line_cursor#18<(byte*) print_char_cursor#31) goto print_ln::@1 +Simple Condition (boolean~) print_ln::$1 if((byte*) print_line_cursor#22<(byte*) print_char_cursor#38) goto print_ln::@1 +Simple Condition (boolean~) print_cls::$1 if((byte*) print_cls::sc#1!=(byte*~) print_cls::$0) goto print_cls::@1 Simple Condition (boolean~) keyboard_event_scan::$2 if((byte) keyboard_event_scan::row_scan#0==*((byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@2 Simple Condition (boolean~) keyboard_event_scan::$6 if((byte~) keyboard_event_scan::$4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@4 Simple Condition (boolean~) keyboard_event_scan::$13 if((byte) keyboard_event_scan::col#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@3 -Simple Condition (boolean~) keyboard_event_scan::$8 if((byte) keyboard_events_size#12==(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@5 +Simple Condition (boolean~) keyboard_event_scan::$8 if((byte) keyboard_events_size#18==(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@5 Simple Condition (boolean~) keyboard_event_scan::$11 if((byte) keyboard_event_scan::event_type#0!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@6 Simple Condition (boolean~) keyboard_event_scan::$15 if((byte) keyboard_event_scan::row#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@1 Simple Condition (boolean~) keyboard_event_scan::$18 if((byte~) keyboard_event_scan::$16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@9 Simple Condition (boolean~) keyboard_event_scan::$22 if((byte~) keyboard_event_scan::$20==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@10 Simple Condition (boolean~) keyboard_event_scan::$26 if((byte~) keyboard_event_scan::$24==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@11 Simple Condition (boolean~) keyboard_event_scan::$30 if((byte~) keyboard_event_scan::$28==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@12 -Simple Condition (boolean~) keyboard_event_get::$1 if((byte) keyboard_events_size#15!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_get::@1 -Simple Condition (boolean~) main::$5 if(*((byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword~) main::$4) goto main::@5 -Simple Condition (boolean~) main::$7 if(*((byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto main::@8 +Simple Condition (boolean~) keyboard_event_get::$1 if((byte) keyboard_events_size#105!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_get::@1 Simple Condition (boolean~) gfx_mode::$1 if(*((byte*) form_ctrl_line#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@1 Simple Condition (boolean~) gfx_mode::$4 if(*((byte*) form_ctrl_borof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@2 Simple Condition (boolean~) gfx_mode::$7 if(*((byte*) form_ctrl_hicol#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@3 @@ -7844,25 +8668,31 @@ Simple Condition (boolean~) gfx_mode::$21 if(*((byte*) form_ctrl_ecm#0)==(byte/s Simple Condition (boolean~) gfx_mode::$24 if(*((byte*) form_ctrl_bmm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@8 Simple Condition (boolean~) gfx_mode::$27 if(*((byte*) form_ctrl_mcm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@9 Simple Condition (boolean~) gfx_mode::$64 if((byte) gfx_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto gfx_mode::@10 +Simple Condition (boolean~) gfx_mode::$65 if(*((byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto gfx_mode::@15 +Simple Condition (boolean~) gfx_mode::$69 if((byte) gfx_mode::keyboard_event#0!=(byte) KEY_SPACE#0) goto gfx_mode::@17 +Simple Condition (boolean~) gfx_init_screen_stdchar::$4 if((byte) gfx_init_screen_stdchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) 40) goto gfx_init_screen_stdchar::@2 +Simple Condition (boolean~) gfx_init_screen_stdchar::$5 if((byte) gfx_init_screen_stdchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) 25) goto gfx_init_screen_stdchar::@1 Simple Condition (boolean~) gfx_init_plane_8bppchunky::$4 if((byte*) gfx_init_plane_8bppchunky::gfxb#3!=(word/dword/signed dword) 32768) goto gfx_init_plane_8bppchunky::@3 Simple Condition (boolean~) gfx_init_plane_8bppchunky::$8 if((word) gfx_init_plane_8bppchunky::x#1!=(word/signed word/dword/signed dword) 320) goto gfx_init_plane_8bppchunky::@2 Simple Condition (boolean~) gfx_init_plane_8bppchunky::$9 if((byte) gfx_init_plane_8bppchunky::y#1!=(byte/word/signed word/dword/signed dword) 200) goto gfx_init_plane_8bppchunky::@1 Simple Condition (boolean~) form_mode::$23 if((byte) form_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto form_mode::@1 +Simple Condition (boolean~) form_mode::$24 if(*((byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto form_mode::@6 +Simple Condition (boolean~) form_mode::$27 if((byte~) form_mode::$25==(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_mode::@8 Simple Condition (boolean~) form_set_screen::$3 if((byte) form_set_screen::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 25) goto form_set_screen::@1 Simple Condition (boolean~) form_render_values::$1 if((byte) form_render_values::idx#1<(byte) form_fields_cnt#0) goto form_render_values::@1 -Simple Condition (boolean~) form_control::$2 if((signed byte) form_cursor_count#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@1 -Simple Condition (boolean~) form_control::$5 if((signed byte) form_cursor_count#11>=(signed word/signed byte/signed dword~) form_control::$3) goto form_control::@2 +Simple Condition (boolean~) form_control::$2 if((signed byte) form_cursor_count#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@1 +Simple Condition (boolean~) form_control::$5 if((signed byte) form_cursor_count#15>=(signed word/signed byte/signed dword~) form_control::$3) goto form_control::@2 Simple Condition (boolean~) form_control::$11 if((byte) form_control::key_event#0!=(byte) KEY_CRSR_DOWN#0) goto form_control::@4 Simple Condition (boolean~) form_control::$23 if((byte) form_control::key_event#0!=(byte) KEY_CRSR_RIGHT#0) goto form_control::@9 Simple Condition (boolean~) form_control::$15 if((byte~) form_control::$13!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@5 -Simple Condition (boolean~) form_control::$19 if((byte) form_field_idx#3!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@8 -Simple Condition (boolean~) form_control::$17 if((byte) form_field_idx#34!=(byte) form_fields_cnt#34) goto form_control::@6 +Simple Condition (boolean~) form_control::$19 if((byte) form_field_idx#44!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@8 +Simple Condition (boolean~) form_control::$17 if((byte) form_field_idx#43!=(byte) form_fields_cnt#28) goto form_control::@6 +Simple Condition (boolean~) form_control::$32 if((byte) form_control::key_event#0!=(byte) KEY_SPACE#0) goto form_control::@14 Simple Condition (boolean~) form_control::$26 if((byte~) form_control::$24!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@10 -Simple Condition (boolean~) form_control::$30 if(*((byte[]) form_fields_val#0 + (byte) form_field_idx#1)!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@13 -Simple Condition (boolean~) form_control::$28 if(*((byte[]) form_fields_val#0 + (byte) form_field_idx#1)<=*((byte[]) form_fields_max#0 + (byte) form_field_idx#1)) goto form_control::@11 +Simple Condition (boolean~) form_control::$30 if(*((byte[]) form_fields_val#0 + (byte) form_field_idx#28)!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@13 +Simple Condition (boolean~) form_control::$28 if(*((byte[]) form_fields_val#0 + (byte) form_field_idx#28)<=*((byte[]) form_fields_max#0 + (byte) form_field_idx#28)) goto form_control::@11 Succesful SSA optimization Pass2ConditionalJumpSimplification Constant (const byte*) RASTER#0 = ((byte*))53266 -Constant (const byte*) BORDERCOL#0 = ((byte*))53280 Constant (const byte*) BGCOL#0 = ((byte*))53281 Constant (const byte*) BGCOL1#0 = ((byte*))53281 Constant (const byte*) BGCOL2#0 = ((byte*))53282 @@ -7913,12 +8743,13 @@ Constant (const dword) DTV_COLOR_BANK_DEFAULT#0 = 120832 Constant (const byte*) DTV_GRAPHICS_VIC_BANK#0 = ((byte*))53309 Constant (const byte*) dtvSetCpuBankSegment1::cpuBank#0 = ((byte*))255 Constant (const byte*) print_screen#0 = ((byte*))1024 -Constant (const string) print_hextab#0 = $56 +Constant (const string) print_hextab#0 = $55 Constant (const byte) KEY_CRSR_RIGHT#0 = 2 Constant (const byte) KEY_CRSR_DOWN#0 = 7 Constant (const byte) KEY_LSHIFT#0 = 15 Constant (const byte) KEY_RSHIFT#0 = 52 Constant (const byte) KEY_CTRL#0 = 58 +Constant (const byte) KEY_SPACE#0 = 60 Constant (const byte) KEY_COMMODORE#0 = 61 Constant (const byte[8]) keyboard_matrix_row_bitmask#0 = { 254, 253, 251, 247, 239, 223, 191, 127 } Constant (const byte[8]) keyboard_matrix_col_bitmask#0 = { 1, 2, 4, 8, 16, 32, 64, 128 } @@ -7935,13 +8766,12 @@ Constant (const byte) keyboard_event_scan::row#0 = 0 Constant (const byte) keyboard_event_scan::col#0 = 0 Constant (const byte) keyboard_modifiers#1 = 0 Constant (const byte) keyboard_event_get::return#1 = 255 -Constant (const byte/word/signed word/dword/signed dword) main::$3 = 8*16 +Constant (const byte*) VIC_SCREEN_STDCHAR#0 = ((byte*))33792 Constant (const dword) PLANE_8BPP_CHUNKY#0 = 131072 Constant (const byte*) FORM_SCREEN#0 = ((byte*))32768 Constant (const byte*) FORM_CHARSET#0 = ((byte*))38912 -Constant (const word) FORM_OFFSET#0 = 16*40 -Constant (const string) $2 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" -Constant (const string) $11 = " DTV GfxExplorer MODE 0 8bpp pixel cell @"+" CONTROL PLANE A PLANE B VIC II @" +Constant (const string) $1 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" +Constant (const string) $10 = " DTV GfxExplorer MODE 0 8bpp pixel cell @"+" CONTROL PLANE A PLANE B VIC II @" Constant (const byte) form_fields_cnt#0 = 35 Constant (const byte[]) form_fields_x#0 = { 22, 7, 7, 7, 7, 7, 7, 7, 17, 17, 17, 16, 17, 16, 17, 16, 17, 27, 26, 27, 26, 27, 26, 27, 38, 38, 38, 37, 38, 37, 38, 37, 38, 37, 38 } Constant (const byte[]) form_fields_y#0 = { 0, 2, 3, 4, 5, 6, 7, 8, 7, 8, 2, 3, 3, 4, 4, 5, 5, 2, 3, 3, 4, 4, 5, 5, 2, 3, 4, 5, 5, 6, 6, 7, 7, 8, 8 } @@ -7949,6 +8779,8 @@ Constant (const byte[]) form_fields_max#0 = { 13, 1, 1, 1, 1, 1, 1, 1, 1, 1, 15, Constant (const byte[]) form_fields_val#0 = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } Constant (const byte) gfx_mode::dtv_control#0 = 0 Constant (const byte) gfx_mode::i#0 = 0 +Constant (const byte) gfx_init_screen_stdchar::cy#0 = 0 +Constant (const byte) gfx_init_screen_stdchar::cx#0 = 0 Constant (const byte*) gfx_init_plane_8bppchunky::gfxb#0 = ((byte*))16384 Constant (const byte) gfx_init_plane_8bppchunky::y#0 = 0 Constant (const word) gfx_init_plane_8bppchunky::x#0 = 0 @@ -7957,11 +8789,15 @@ Constant (const byte/signed byte/word/signed word/dword/signed dword) gfx_init_p Constant (const byte) form_mode::i#0 = 0 Constant (const byte[25]) form_line_lo#0 = { fill( 25, 0) } Constant (const byte[25]) form_line_hi#0 = { fill( 25, 0) } -Constant (const byte) form_field_idx#2 = 0 +Constant (const byte) form_field_idx#36 = 0 Constant (const signed byte) FORM_CURSOR_BLINK#0 = 40 Constant (const byte) form_set_screen::y#0 = 0 Constant (const byte) form_render_values::idx#0 = 0 -Constant (const byte) form_field_idx#5 = 0 +Constant (const byte) form_field_idx#7 = 0 +Constant (const byte) form_control::return#1 = 0 +Constant (const byte) form_control::return#3 = 0 +Constant (const byte) form_control::return#4 = 0 +Constant (const byte) form_control::return#5 = 255 Succesful SSA optimization Pass2ConstantIdentification Constant (const byte) KEY_MODIFIER_SHIFT#0 = KEY_MODIFIER_LSHIFT#0|KEY_MODIFIER_RSHIFT#0 Constant (const byte) keyboard_event_pressed::keycode#0 = KEY_LSHIFT#0 @@ -7969,9 +8805,8 @@ Constant (const byte) keyboard_event_pressed::keycode#1 = KEY_RSHIFT#0 Constant (const byte) keyboard_modifiers#2 = keyboard_modifiers#1|KEY_MODIFIER_LSHIFT#0 Constant (const byte) keyboard_event_pressed::keycode#2 = KEY_CTRL#0 Constant (const byte) keyboard_event_pressed::keycode#3 = KEY_COMMODORE#0 -Constant (const byte/word/signed word/dword/signed dword) main::$4 = 48+main::$3 -Constant (const string) $3 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" -Constant (const string) $12 = " DTV GfxExplorer MODE 0 8bpp pixel cell @"+" CONTROL PLANE A PLANE B VIC II @"+" bmm 0 patt p0 patt p0 screen s0 @" +Constant (const string) $2 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" +Constant (const string) $11 = " DTV GfxExplorer MODE 0 8bpp pixel cell @"+" CONTROL PLANE A PLANE B VIC II @"+" bmm 0 patt p0 patt p0 screen s0 @" Constant (const byte*) form_ctrl_bmm#0 = form_fields_val#0+1 Constant (const byte*) form_ctrl_mcm#0 = form_fields_val#0+2 Constant (const byte*) form_ctrl_ecm#0 = form_fields_val#0+3 @@ -8005,11 +8840,12 @@ Constant (const byte) gfx_mode::dtv_control#1 = gfx_mode::dtv_control#0|DTV_LINE Constant (const byte) gfx_mode::$18 = VIC_DEN#0|VIC_RSEL#0 Constant (const byte) gfx_mode::vic_control2#0 = VIC_CSEL#0 Constant (const dword) gfx_mode::$31 = ((dword))FORM_SCREEN#0 +Constant (const byte*) gfx_init_screen_stdchar::ch#0 = VIC_SCREEN_STDCHAR#0 Constant (const dword) gfx_init_plane_8bppchunky::$0 = PLANE_8BPP_CHUNKY#0/16384 Constant (const byte) dtvSetCpuBankSegment1::cpuBankIdx#2 = ((byte))gfx_init_plane_8bppchunky::$10 -Constant (const byte*) print_set_screen::screen#0 = COLS#0+FORM_OFFSET#0 -Constant (const byte*) print_set_screen::screen#1 = FORM_SCREEN#0+FORM_OFFSET#0 -Constant (const byte*) form_set_screen::screen#0 = FORM_SCREEN#0+FORM_OFFSET#0 +Constant (const byte*) print_set_screen::screen#0 = COLS#0 +Constant (const byte*) print_set_screen::screen#1 = FORM_SCREEN#0 +Constant (const byte*) form_set_screen::screen#0 = FORM_SCREEN#0 Constant (const dword) form_mode::$0 = ((dword))FORM_CHARSET#0 Constant (const dword) form_mode::$3 = DTV_COLOR_BANK_DEFAULT#0/1024 Constant (const dword) form_mode::$6 = DTV_COLOR_BANK_DEFAULT#0/1024 @@ -8017,13 +8853,13 @@ Constant (const word) form_mode::$9 = ((word))FORM_CHARSET#0 Constant (const byte) form_mode::$13 = VIC_DEN#0|VIC_RSEL#0 Constant (const word) form_mode::$15 = ((word))FORM_SCREEN#0 Constant (const word) form_mode::$18 = ((word))FORM_CHARSET#0 -Constant (const signed byte) form_cursor_count#19 = FORM_CURSOR_BLINK#0/2 +Constant (const signed byte) form_cursor_count#26 = FORM_CURSOR_BLINK#0/2 Constant (const signed word/signed byte/signed dword) form_control::$3 = FORM_CURSOR_BLINK#0/2 -Constant (const signed byte) form_cursor_count#4 = FORM_CURSOR_BLINK#0 -Constant (const signed byte) form_cursor_count#5 = FORM_CURSOR_BLINK#0/2 +Constant (const signed byte) form_cursor_count#6 = FORM_CURSOR_BLINK#0 +Constant (const signed byte) form_cursor_count#7 = FORM_CURSOR_BLINK#0/2 Succesful SSA optimization Pass2ConstantIdentification -Constant (const string) $4 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" -Constant (const string) $13 = " DTV GfxExplorer MODE 0 8bpp pixel cell @"+" CONTROL PLANE A PLANE B VIC II @"+" bmm 0 patt p0 patt p0 screen s0 @"+" mcm 0 start 00 start 00 gfx g0 @" +Constant (const string) $3 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" +Constant (const string) $12 = " DTV GfxExplorer MODE 0 8bpp pixel cell @"+" CONTROL PLANE A PLANE B VIC II @"+" bmm 0 patt p0 patt p0 screen s0 @"+" mcm 0 start 00 start 00 gfx g0 @" Constant (const byte) gfx_mode::vic_control#0 = gfx_mode::$18|3 Constant (const byte) gfx_mode::vic_control2#1 = gfx_mode::vic_control2#0|VIC_MCM#0 Constant (const byte) gfx_init_plane_8bppchunky::gfxbCpuBank#0 = ((byte))gfx_init_plane_8bppchunky::$0 @@ -8035,8 +8871,8 @@ Constant (const byte/word/dword) form_mode::$14 = form_mode::$13|3 Constant (const word) form_mode::$16 = form_mode::$15&16383 Constant (const word) form_mode::$19 = form_mode::$18&16383 Succesful SSA optimization Pass2ConstantIdentification -Constant (const string) $5 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" -Constant (const string) $14 = " DTV GfxExplorer MODE 0 8bpp pixel cell @"+" CONTROL PLANE A PLANE B VIC II @"+" bmm 0 patt p0 patt p0 screen s0 @"+" mcm 0 start 00 start 00 gfx g0 @"+" ecm 0 step 00 step 00 colors c0 @" +Constant (const string) $4 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" +Constant (const string) $13 = " DTV GfxExplorer MODE 0 8bpp pixel cell @"+" CONTROL PLANE A PLANE B VIC II @"+" bmm 0 patt p0 patt p0 screen s0 @"+" mcm 0 start 00 start 00 gfx g0 @"+" ecm 0 step 00 step 00 colors c0 @" Constant (const byte) gfx_mode::vic_control#1 = gfx_mode::vic_control#0|VIC_ECM#0 Constant (const byte) dtvSetCpuBankSegment1::cpuBankIdx#0 = gfx_init_plane_8bppchunky::gfxbCpuBank#0 Constant (const byte) gfx_init_plane_8bppchunky::gfxbCpuBank#1 = ++gfx_init_plane_8bppchunky::gfxbCpuBank#0 @@ -8047,20 +8883,20 @@ Constant (const byte) form_mode::$11 = ((byte))form_mode::$10 Constant (const word/signed dword/dword) form_mode::$17 = form_mode::$16/64 Constant (const word/signed dword/dword) form_mode::$20 = form_mode::$19/1024 Succesful SSA optimization Pass2ConstantIdentification -Constant (const string) $6 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" -Constant (const string) $15 = " DTV GfxExplorer MODE 0 8bpp pixel cell @"+" CONTROL PLANE A PLANE B VIC II @"+" bmm 0 patt p0 patt p0 screen s0 @"+" mcm 0 start 00 start 00 gfx g0 @"+" ecm 0 step 00 step 00 colors c0 @"+" hicol 0 mod 00 mod 00 bgcol0 00 @" +Constant (const string) $5 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" +Constant (const string) $14 = " DTV GfxExplorer MODE 0 8bpp pixel cell @"+" CONTROL PLANE A PLANE B VIC II @"+" bmm 0 patt p0 patt p0 screen s0 @"+" mcm 0 start 00 start 00 gfx g0 @"+" ecm 0 step 00 step 00 colors c0 @"+" hicol 0 mod 00 mod 00 bgcol0 00 @" Constant (const byte/word/dword) form_mode::$12 = 3^form_mode::$11 Constant (const word/dword) form_mode::$21 = form_mode::$17|form_mode::$20 Succesful SSA optimization Pass2ConstantIdentification -Constant (const string) $7 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn ooooooooo @" -Constant (const string) $16 = " DTV GfxExplorer MODE 0 8bpp pixel cell @"+" CONTROL PLANE A PLANE B VIC II @"+" bmm 0 patt p0 patt p0 screen s0 @"+" mcm 0 start 00 start 00 gfx g0 @"+" ecm 0 step 00 step 00 colors c0 @"+" hicol 0 mod 00 mod 00 bgcol0 00 @"+" line 0 bgcol1 00 @" +Constant (const string) $6 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn ooooooooo @" +Constant (const string) $15 = " DTV GfxExplorer MODE 0 8bpp pixel cell @"+" CONTROL PLANE A PLANE B VIC II @"+" bmm 0 patt p0 patt p0 screen s0 @"+" mcm 0 start 00 start 00 gfx g0 @"+" ecm 0 step 00 step 00 colors c0 @"+" hicol 0 mod 00 mod 00 bgcol0 00 @"+" line 0 bgcol1 00 @" Constant (const byte) form_mode::$22 = ((byte))form_mode::$21 Succesful SSA optimization Pass2ConstantIdentification -Constant (const string) $8 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn ooooooooo @"+" nnnnnnn nnnnnnnn ooooooooo @" -Constant (const string) $17 = " DTV GfxExplorer MODE 0 8bpp pixel cell @"+" CONTROL PLANE A PLANE B VIC II @"+" bmm 0 patt p0 patt p0 screen s0 @"+" mcm 0 start 00 start 00 gfx g0 @"+" ecm 0 step 00 step 00 colors c0 @"+" hicol 0 mod 00 mod 00 bgcol0 00 @"+" line 0 bgcol1 00 @"+" colof 0 borof 0 bgcol2 00 @" +Constant (const string) $7 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn ooooooooo @"+" nnnnnnn nnnnnnnn ooooooooo @" +Constant (const string) $16 = " DTV GfxExplorer MODE 0 8bpp pixel cell @"+" CONTROL PLANE A PLANE B VIC II @"+" bmm 0 patt p0 patt p0 screen s0 @"+" mcm 0 start 00 start 00 gfx g0 @"+" ecm 0 step 00 step 00 colors c0 @"+" hicol 0 mod 00 mod 00 bgcol0 00 @"+" line 0 bgcol1 00 @"+" colof 0 borof 0 bgcol2 00 @" Succesful SSA optimization Pass2ConstantIdentification -Constant (const string) $9 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn ooooooooo @"+" nnnnnnn nnnnnnnn ooooooooo @"+" nnnnnnn nnnnnnnn ooooooooo @" -Constant (const string) $18 = " DTV GfxExplorer MODE 0 8bpp pixel cell @"+" CONTROL PLANE A PLANE B VIC II @"+" bmm 0 patt p0 patt p0 screen s0 @"+" mcm 0 start 00 start 00 gfx g0 @"+" ecm 0 step 00 step 00 colors c0 @"+" hicol 0 mod 00 mod 00 bgcol0 00 @"+" line 0 bgcol1 00 @"+" colof 0 borof 0 bgcol2 00 @"+" chunk 0 overs 0 bgcol3 00 @" +Constant (const string) $8 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn ooooooooo @"+" nnnnnnn nnnnnnnn ooooooooo @"+" nnnnnnn nnnnnnnn ooooooooo @" +Constant (const string) $17 = " DTV GfxExplorer MODE 0 8bpp pixel cell @"+" CONTROL PLANE A PLANE B VIC II @"+" bmm 0 patt p0 patt p0 screen s0 @"+" mcm 0 start 00 start 00 gfx g0 @"+" ecm 0 step 00 step 00 colors c0 @"+" hicol 0 mod 00 mod 00 bgcol0 00 @"+" line 0 bgcol1 00 @"+" colof 0 borof 0 bgcol2 00 @"+" chunk 0 overs 0 bgcol3 00 @" Succesful SSA optimization Pass2ConstantIdentification Constant (const string) FORM_COLS#0 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+" nnnnnnn ooooooooo @"+" nnnnnnn nnnnnnnn ooooooooo @"+" nnnnnnn nnnnnnnn ooooooooo @"+"@" Constant (const string) FORM_TEXT#0 = " DTV GfxExplorer MODE 0 8bpp pixel cell @"+" CONTROL PLANE A PLANE B VIC II @"+" bmm 0 patt p0 patt p0 screen s0 @"+" mcm 0 start 00 start 00 gfx g0 @"+" ecm 0 step 00 step 00 colors c0 @"+" hicol 0 mod 00 mod 00 bgcol0 00 @"+" line 0 bgcol1 00 @"+" colof 0 borof 0 bgcol2 00 @"+" chunk 0 overs 0 bgcol3 00 @"+"@" @@ -8068,30 +8904,28 @@ Succesful SSA optimization Pass2ConstantIdentification Constant (const string) print_str_lines::str#1 = FORM_COLS#0 Constant (const string) print_str_lines::str#2 = FORM_TEXT#0 Succesful SSA optimization Pass2ConstantIdentification +Multiple usages for variable. Not optimizing sub-constant (byte*) print_screen#1 Multiple usages for variable. Not optimizing sub-constant (byte) keyboard_event_scan::row#2 Multiple usages for variable. Not optimizing sub-constant (byte) keyboard_event_scan::keycode#11 Multiple usages for variable. Not optimizing sub-constant (byte) keyboard_event_scan::row#2 -Multiple usages for variable. Not optimizing sub-constant (byte) keyboard_events_size#12 -Multiple usages for variable. Not optimizing sub-constant (byte) keyboard_events_size#12 +Multiple usages for variable. Not optimizing sub-constant (byte) keyboard_events_size#18 +Multiple usages for variable. Not optimizing sub-constant (byte) keyboard_events_size#18 Multiple usages for variable. Not optimizing sub-constant (byte) keyboard_event_scan::row#2 Multiple usages for variable. Not optimizing sub-constant (byte) gfx_mode::i#2 Multiple usages for variable. Not optimizing sub-constant (byte*) form_set_screen::line#2 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 Fixing inline constructor with form_field_ptr::$2 ← *(form_line_hi#0 + form_field_ptr::y#0) w= *(form_line_lo#0 + form_field_ptr::y#0) Succesful SSA optimization Pass2FixInlineConstructors -Eliminating unused variable - keeping the phi block (byte*) print_screen#11 -Eliminating unused variable - keeping the phi block (byte*) print_line_cursor#22 -Eliminating unused variable - keeping the phi block (byte*) print_char_cursor#23 -Eliminating unused variable - keeping the phi block (byte) keyboard_modifiers#18 +Eliminating unused constant (const string) $56 Eliminating unused constant (const string) $57 Eliminating unused constant (const string) $58 Eliminating unused constant (const string) $59 @@ -8111,8 +8945,9 @@ Eliminating unused constant (const string) $72 Eliminating unused constant (const string) $73 Eliminating unused constant (const string) $74 Eliminating unused constant (const string) $75 -Eliminating unused constant (const string) $76 Eliminating unused constant (const byte*) print_screen#0 +Eliminating unused constant (const string) $1 +Eliminating unused constant (const string) $10 Eliminating unused constant (const string) $2 Eliminating unused constant (const string) $11 Eliminating unused constant (const string) $3 @@ -8127,10 +8962,6 @@ Eliminating unused constant (const string) $7 Eliminating unused constant (const string) $16 Eliminating unused constant (const string) $8 Eliminating unused constant (const string) $17 -Eliminating unused constant (const string) $9 -Eliminating unused constant (const string) $18 -Succesful SSA optimization PassNEliminateUnusedVars -Eliminating unused constant (const byte) keyboard_modifiers#0 Succesful SSA optimization PassNEliminateUnusedVars Eliminating Noop Cast (byte*) form_field_ptr::line#0 ← ((byte*)) (word~) form_field_ptr::$2 Succesful SSA optimization Pass2NopCastElimination @@ -8139,6 +8970,7 @@ Culled Empty Block (label) print_str_lines::@2 Culled Empty Block (label) print_str_lines::@11 Culled Empty Block (label) print_ln::@2 Culled Empty Block (label) @11 +Culled Empty Block (label) print_cls::@2 Culled Empty Block (label) @15 Culled Empty Block (label) @19 Culled Empty Block (label) keyboard_event_scan::@13 @@ -8146,39 +8978,44 @@ Culled Empty Block (label) keyboard_event_scan::@5 Not culling empty block because it shares successor with its predecessor. (label) keyboard_event_scan::@21 Culled Empty Block (label) keyboard_event_scan::@12 Culled Empty Block (label) keyboard_event_get::@3 -Culled Empty Block (label) main::@21 -Culled Empty Block (label) main::@2 -Culled Empty Block (label) main::@5 -Culled Empty Block (label) main::@22 -Culled Empty Block (label) main::@8 -Culled Empty Block (label) main::@24 +Culled Empty Block (label) main::@9 +Culled Empty Block (label) main::@11 Culled Empty Block (label) @23 -Not culling empty block because it shares successor with its predecessor. (label) gfx_mode::@11 -Not culling empty block because it shares successor with its predecessor. (label) gfx_mode::@17 -Not culling empty block because it shares successor with its predecessor. (label) gfx_mode::@19 +Not culling empty block because it shares successor with its predecessor. (label) gfx_mode::@18 +Not culling empty block because it shares successor with its predecessor. (label) gfx_mode::@24 +Not culling empty block because it shares successor with its predecessor. (label) gfx_mode::@26 +Culled Empty Block (label) gfx_mode::@12 +Culled Empty Block (label) gfx_mode::@15 +Culled Empty Block (label) gfx_mode::@17 Culled Empty Block (label) gfx_init_plane_8bppchunky::@7 -Culled Empty Block (label) form_init::@6 -Culled Empty Block (label) @28 -Not culling empty block because it shares successor with its predecessor. (label) form_control::@14 +Culled Empty Block (label) form_init::@8 +Culled Empty Block (label) form_mode::@3 +Culled Empty Block (label) form_mode::@6 +Culled Empty Block (label) form_mode::@8 +Culled Empty Block (label) @29 +Not culling empty block because it shares successor with its predecessor. (label) form_control::@15 Culled Empty Block (label) form_control::@6 -Not culling empty block because it shares successor with its predecessor. (label) form_control::@19 +Not culling empty block because it shares successor with its predecessor. (label) form_control::@20 Culled Empty Block (label) form_control::@8 -Culled Empty Block (label) form_control::@9 Culled Empty Block (label) form_control::@11 Culled Empty Block (label) form_control::@13 -Culled Empty Block (label) @33 +Culled Empty Block (label) form_control::@14 +Not culling empty block because it shares successor with its predecessor. (label) form_control::@30 +Culled Empty Block (label) @34 Succesful SSA optimization Pass2CullEmptyBlocks Not culling empty block because it shares successor with its predecessor. (label) keyboard_event_scan::@21 -Not culling empty block because it shares successor with its predecessor. (label) gfx_mode::@11 -Not culling empty block because it shares successor with its predecessor. (label) gfx_mode::@17 -Not culling empty block because it shares successor with its predecessor. (label) gfx_mode::@19 -Not culling empty block because it shares successor with its predecessor. (label) form_control::@14 -Not culling empty block because it shares successor with its predecessor. (label) form_control::@19 -Not aliassing across scopes: print_char_cursor#18 print_screen#1 -Not aliassing across scopes: print_line_cursor#16 print_screen#1 -Not aliassing across scopes: print_line_cursor#17 print_line_cursor#16 +Not culling empty block because it shares successor with its predecessor. (label) gfx_mode::@18 +Not culling empty block because it shares successor with its predecessor. (label) gfx_mode::@24 +Not culling empty block because it shares successor with its predecessor. (label) gfx_mode::@26 +Not culling empty block because it shares successor with its predecessor. (label) form_control::@15 +Not culling empty block because it shares successor with its predecessor. (label) form_control::@20 +Not culling empty block because it shares successor with its predecessor. (label) form_control::@30 +Not aliassing across scopes: print_char_cursor#22 print_screen#1 +Not aliassing across scopes: print_line_cursor#2 print_screen#1 +Not aliassing across scopes: print_line_cursor#21 print_line_cursor#2 +Not aliassing across scopes: print_cls::sc#0 print_screen#1 Not aliassing across scopes: print_screen#1 print_set_screen::screen#2 -Not aliassing across scopes: keyboard_events_size#37 keyboard_events_size#20 +Not aliassing across scopes: keyboard_events_size#104 keyboard_events_size#47 Not aliassing across scopes: keyboard_matrix_read::rowid#0 keyboard_event_scan::row#2 Not aliassing across scopes: keyboard_matrix_read::return#2 keyboard_matrix_read::return#0 Not aliassing across scopes: keyboard_event_scan::row_scan#0 keyboard_matrix_read::return#2 @@ -8190,53 +9027,75 @@ Not aliassing across scopes: keyboard_event_pressed::return#2 keyboard_event_pre Not aliassing across scopes: keyboard_event_scan::$24 keyboard_event_pressed::return#2 Not aliassing across scopes: keyboard_event_pressed::return#3 keyboard_event_pressed::return#10 Not aliassing across scopes: keyboard_event_scan::$28 keyboard_event_pressed::return#3 +Not aliassing across scopes: form_cursor_count#1 form_cursor_count#13 +Not aliassing across scopes: keyboard_events_size#27 keyboard_events_size#11 +Not aliassing across scopes: keyboard_modifiers#24 keyboard_modifiers#11 +Not aliassing across scopes: form_field_idx#1 form_field_idx#14 +Not aliassing across scopes: keyboard_events_size#45 keyboard_events_size#13 +Not aliassing across scopes: keyboard_modifiers#42 keyboard_modifiers#13 +Not aliassing across scopes: keyboard_event_get::return#3 keyboard_event_get::return#2 +Not aliassing across scopes: gfx_mode::keyboard_event#0 keyboard_event_get::return#3 Not aliassing across scopes: dtvSetCpuBankSegment1::cpuBankIdx#1 gfx_init_plane_8bppchunky::gfxbCpuBank#4 +Not aliassing across scopes: form_cursor_count#21 form_cursor_count#16 +Not aliassing across scopes: keyboard_events_size#47 keyboard_events_size#24 +Not aliassing across scopes: keyboard_modifiers#45 keyboard_modifiers#21 +Not aliassing across scopes: form_field_idx#28 form_field_idx#18 +Not aliassing identity: form_fields_cnt#28 form_fields_cnt#28 +Not aliassing across scopes: form_control::return#0 form_control::return#2 +Not aliassing across scopes: form_mode::$25 form_control::return#0 +Not aliassing across scopes: form_cursor_count#13 form_cursor_count#16 +Not aliassing across scopes: keyboard_events_size#13 keyboard_events_size#24 +Not aliassing across scopes: keyboard_modifiers#13 keyboard_modifiers#21 +Not aliassing across scopes: form_field_idx#14 form_field_idx#18 Not aliassing across scopes: form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 Not aliassing across scopes: form_field_ptr::field_idx#0 form_render_values::idx#2 Not aliassing across scopes: form_field_ptr::return#2 form_field_ptr::return#0 Not aliassing across scopes: form_render_values::field#0 form_field_ptr::return#2 -Not aliassing across scopes: form_field_ptr::field_idx#1 form_field_idx#1 +Not aliassing across scopes: form_field_ptr::field_idx#1 form_field_idx#28 Not aliassing across scopes: form_field_ptr::return#3 form_field_ptr::return#0 Not aliassing across scopes: form_control::field#0 form_field_ptr::return#3 -Not aliassing across scopes: keyboard_event_get::return#3 keyboard_event_get::return#2 -Not aliassing across scopes: form_control::key_event#0 keyboard_event_get::return#3 -Not aliassing across scopes: form_field_idx#14 form_field_idx#1 -Self Phi Eliminated (byte) form_fields_cnt#34 +Not aliassing across scopes: keyboard_event_get::return#4 keyboard_event_get::return#2 +Not aliassing across scopes: form_control::key_event#0 keyboard_event_get::return#4 +Not aliassing across scopes: form_field_idx#18 form_field_idx#28 +Self Phi Eliminated (byte) form_fields_cnt#28 Succesful SSA optimization Pass2SelfPhiElimination -Redundant Phi (byte) form_fields_cnt#34 (const byte) form_fields_cnt#0 +Redundant Phi (byte) form_fields_cnt#28 (const byte) form_fields_cnt#0 Succesful SSA optimization Pass2RedundantPhiElimination -Constant (const byte) form_field_idx#6 = form_fields_cnt#0-1 +Constant (const byte) form_field_idx#8 = form_fields_cnt#0-1 Succesful SSA optimization Pass2ConstantIdentification +Multiple usages for variable. Not optimizing sub-constant (byte*) print_screen#1 Multiple usages for variable. Not optimizing sub-constant (byte) keyboard_event_scan::row#2 Multiple usages for variable. Not optimizing sub-constant (byte) keyboard_event_scan::keycode#11 Multiple usages for variable. Not optimizing sub-constant (byte) keyboard_event_scan::row#2 -Multiple usages for variable. Not optimizing sub-constant (byte) keyboard_events_size#12 -Multiple usages for variable. Not optimizing sub-constant (byte) keyboard_events_size#12 +Multiple usages for variable. Not optimizing sub-constant (byte) keyboard_events_size#18 +Multiple usages for variable. Not optimizing sub-constant (byte) keyboard_events_size#18 Multiple usages for variable. Not optimizing sub-constant (byte) keyboard_event_scan::row#2 Multiple usages for variable. Not optimizing sub-constant (byte) gfx_mode::i#2 Multiple usages for variable. Not optimizing sub-constant (byte*) form_set_screen::line#2 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 Not culling empty block because it shares successor with its predecessor. (label) keyboard_event_scan::@21 -Not culling empty block because it shares successor with its predecessor. (label) gfx_mode::@11 -Not culling empty block because it shares successor with its predecessor. (label) gfx_mode::@17 -Not culling empty block because it shares successor with its predecessor. (label) gfx_mode::@19 -Not culling empty block because it shares successor with its predecessor. (label) form_control::@14 -Not culling empty block because it shares successor with its predecessor. (label) form_control::@19 -Not culling empty block because it shares successor with its predecessor. (label) form_control::@21 -Not aliassing across scopes: print_char_cursor#18 print_screen#1 -Not aliassing across scopes: print_line_cursor#16 print_screen#1 -Not aliassing across scopes: print_line_cursor#17 print_line_cursor#16 +Not culling empty block because it shares successor with its predecessor. (label) gfx_mode::@18 +Not culling empty block because it shares successor with its predecessor. (label) gfx_mode::@24 +Not culling empty block because it shares successor with its predecessor. (label) gfx_mode::@26 +Not culling empty block because it shares successor with its predecessor. (label) form_control::@15 +Not culling empty block because it shares successor with its predecessor. (label) form_control::@20 +Not culling empty block because it shares successor with its predecessor. (label) form_control::@22 +Not culling empty block because it shares successor with its predecessor. (label) form_control::@30 +Not aliassing across scopes: print_char_cursor#22 print_screen#1 +Not aliassing across scopes: print_line_cursor#2 print_screen#1 +Not aliassing across scopes: print_line_cursor#21 print_line_cursor#2 +Not aliassing across scopes: print_cls::sc#0 print_screen#1 Not aliassing across scopes: print_screen#1 print_set_screen::screen#2 -Not aliassing across scopes: keyboard_events_size#37 keyboard_events_size#20 +Not aliassing across scopes: keyboard_events_size#104 keyboard_events_size#47 Not aliassing across scopes: keyboard_matrix_read::rowid#0 keyboard_event_scan::row#2 Not aliassing across scopes: keyboard_matrix_read::return#2 keyboard_matrix_read::return#0 Not aliassing across scopes: keyboard_event_scan::row_scan#0 keyboard_matrix_read::return#2 @@ -8248,35 +9107,54 @@ Not aliassing across scopes: keyboard_event_pressed::return#2 keyboard_event_pre Not aliassing across scopes: keyboard_event_scan::$24 keyboard_event_pressed::return#2 Not aliassing across scopes: keyboard_event_pressed::return#3 keyboard_event_pressed::return#10 Not aliassing across scopes: keyboard_event_scan::$28 keyboard_event_pressed::return#3 +Not aliassing across scopes: form_cursor_count#1 form_cursor_count#13 +Not aliassing across scopes: keyboard_events_size#27 keyboard_events_size#11 +Not aliassing across scopes: keyboard_modifiers#24 keyboard_modifiers#11 +Not aliassing across scopes: form_field_idx#1 form_field_idx#14 +Not aliassing across scopes: keyboard_events_size#45 keyboard_events_size#13 +Not aliassing across scopes: keyboard_modifiers#42 keyboard_modifiers#13 +Not aliassing across scopes: keyboard_event_get::return#3 keyboard_event_get::return#2 +Not aliassing across scopes: gfx_mode::keyboard_event#0 keyboard_event_get::return#3 Not aliassing across scopes: dtvSetCpuBankSegment1::cpuBankIdx#1 gfx_init_plane_8bppchunky::gfxbCpuBank#4 +Not aliassing across scopes: form_cursor_count#21 form_cursor_count#16 +Not aliassing across scopes: keyboard_events_size#47 keyboard_events_size#24 +Not aliassing across scopes: keyboard_modifiers#45 keyboard_modifiers#21 +Not aliassing across scopes: form_field_idx#28 form_field_idx#18 +Not aliassing across scopes: form_control::return#0 form_control::return#2 +Not aliassing across scopes: form_mode::$25 form_control::return#0 +Not aliassing across scopes: form_cursor_count#13 form_cursor_count#16 +Not aliassing across scopes: keyboard_events_size#13 keyboard_events_size#24 +Not aliassing across scopes: keyboard_modifiers#13 keyboard_modifiers#21 +Not aliassing across scopes: form_field_idx#14 form_field_idx#18 Not aliassing across scopes: form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 Not aliassing across scopes: form_field_ptr::field_idx#0 form_render_values::idx#2 Not aliassing across scopes: form_field_ptr::return#2 form_field_ptr::return#0 Not aliassing across scopes: form_render_values::field#0 form_field_ptr::return#2 -Not aliassing across scopes: form_field_ptr::field_idx#1 form_field_idx#1 +Not aliassing across scopes: form_field_ptr::field_idx#1 form_field_idx#28 Not aliassing across scopes: form_field_ptr::return#3 form_field_ptr::return#0 Not aliassing across scopes: form_control::field#0 form_field_ptr::return#3 -Not aliassing across scopes: keyboard_event_get::return#3 keyboard_event_get::return#2 -Not aliassing across scopes: form_control::key_event#0 keyboard_event_get::return#3 -Not aliassing across scopes: form_field_idx#14 form_field_idx#1 +Not aliassing across scopes: keyboard_event_get::return#4 keyboard_event_get::return#2 +Not aliassing across scopes: form_control::key_event#0 keyboard_event_get::return#4 +Not aliassing across scopes: form_field_idx#18 form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte*) print_screen#1 Multiple usages for variable. Not optimizing sub-constant (byte) keyboard_event_scan::row#2 Multiple usages for variable. Not optimizing sub-constant (byte) keyboard_event_scan::keycode#11 Multiple usages for variable. Not optimizing sub-constant (byte) keyboard_event_scan::row#2 -Multiple usages for variable. Not optimizing sub-constant (byte) keyboard_events_size#12 -Multiple usages for variable. Not optimizing sub-constant (byte) keyboard_events_size#12 +Multiple usages for variable. Not optimizing sub-constant (byte) keyboard_events_size#18 +Multiple usages for variable. Not optimizing sub-constant (byte) keyboard_events_size#18 Multiple usages for variable. Not optimizing sub-constant (byte) keyboard_event_scan::row#2 Multiple usages for variable. Not optimizing sub-constant (byte) gfx_mode::i#2 Multiple usages for variable. Not optimizing sub-constant (byte*) form_set_screen::line#2 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 -Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#1 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 +Multiple usages for variable. Not optimizing sub-constant (byte) form_field_idx#28 OPTIMIZING CONTROL FLOW GRAPH Inlining constant with var siblings (const byte) dtvSetCpuBankSegment1::cpuBankIdx#2 Inlining constant with var siblings (const byte) dtvSetCpuBankSegment1::cpuBankIdx#2 @@ -8292,9 +9170,7 @@ Inlining constant with var siblings (const string) print_str_lines::str#2 Inlining constant with var siblings (const string) print_str_lines::str#2 Inlining constant with var siblings (const string) print_str_lines::str#2 Inlining constant with var siblings (const byte*) print_set_screen::screen#0 -Inlining constant with different constant siblings (const byte*) print_set_screen::screen#0 Inlining constant with var siblings (const byte*) print_set_screen::screen#1 -Inlining constant with different constant siblings (const byte*) print_set_screen::screen#1 Inlining constant with var siblings (const byte) keyboard_event_scan::keycode#0 Inlining constant with var siblings (const byte) keyboard_event_scan::keycode#0 Inlining constant with var siblings (const byte) keyboard_event_scan::keycode#0 @@ -8311,6 +9187,7 @@ Inlining constant with var siblings (const byte) keyboard_event_pressed::keycode Inlining constant with var siblings (const byte) keyboard_event_get::return#1 Inlining constant with var siblings (const byte) keyboard_event_get::return#1 Inlining constant with var siblings (const byte) keyboard_event_get::return#1 +Inlining constant with var siblings (const byte) keyboard_event_get::return#1 Inlining constant with var siblings (const byte) gfx_mode::dtv_control#0 Inlining constant with var siblings (const byte) gfx_mode::dtv_control#0 Inlining constant with var siblings (const byte) gfx_mode::dtv_control#0 @@ -8348,6 +9225,13 @@ Inlining constant with var siblings (const byte) gfx_mode::vic_control#1 Inlining constant with var siblings (const byte) gfx_mode::vic_control#1 Inlining constant with var siblings (const byte) gfx_mode::vic_control#1 Inlining constant with different constant siblings (const byte) gfx_mode::vic_control#1 +Inlining constant with var siblings (const byte) gfx_init_screen_stdchar::cy#0 +Inlining constant with var siblings (const byte) gfx_init_screen_stdchar::cy#0 +Inlining constant with var siblings (const byte) gfx_init_screen_stdchar::cx#0 +Inlining constant with var siblings (const byte) gfx_init_screen_stdchar::cx#0 +Inlining constant with var siblings (const byte*) gfx_init_screen_stdchar::ch#0 +Inlining constant with var siblings (const byte*) gfx_init_screen_stdchar::ch#0 +Inlining constant with var siblings (const byte*) gfx_init_screen_stdchar::ch#0 Inlining constant with var siblings (const byte*) gfx_init_plane_8bppchunky::gfxb#0 Inlining constant with var siblings (const byte*) gfx_init_plane_8bppchunky::gfxb#0 Inlining constant with var siblings (const byte*) gfx_init_plane_8bppchunky::gfxb#0 @@ -8376,6 +9260,20 @@ Inlining constant with var siblings (const byte) form_set_screen::y#0 Inlining constant with var siblings (const byte) form_set_screen::y#0 Inlining constant with var siblings (const byte) form_render_values::idx#0 Inlining constant with var siblings (const byte) form_render_values::idx#0 +Inlining constant with var siblings (const byte) form_control::return#1 +Inlining constant with var siblings (const byte) form_control::return#1 +Inlining constant with different constant siblings (const byte) form_control::return#1 +Inlining constant with var siblings (const byte) form_control::return#3 +Inlining constant with var siblings (const byte) form_control::return#3 +Inlining constant with different constant siblings (const byte) form_control::return#3 +Inlining constant with var siblings (const byte) form_control::return#4 +Inlining constant with var siblings (const byte) form_control::return#4 +Inlining constant with different constant siblings (const byte) form_control::return#4 +Inlining constant with var siblings (const byte) form_control::return#5 +Inlining constant with var siblings (const byte) form_control::return#5 +Inlining constant with different constant siblings (const byte) form_control::return#5 +Inlining constant with different constant siblings (const byte) form_control::return#5 +Inlining constant with different constant siblings (const byte) form_control::return#5 Inlining constant with var siblings (const byte) keyboard_events_size#0 Inlining constant with var siblings (const byte) keyboard_events_size#0 Inlining constant with var siblings (const byte) keyboard_events_size#0 @@ -8385,6 +9283,29 @@ Inlining constant with var siblings (const byte) keyboard_events_size#0 Inlining constant with var siblings (const byte) keyboard_events_size#0 Inlining constant with var siblings (const byte) keyboard_events_size#0 Inlining constant with var siblings (const byte) keyboard_events_size#0 +Inlining constant with var siblings (const byte) keyboard_events_size#0 +Inlining constant with var siblings (const byte) keyboard_events_size#0 +Inlining constant with var siblings (const byte) keyboard_events_size#0 +Inlining constant with var siblings (const byte) keyboard_events_size#0 +Inlining constant with var siblings (const byte) keyboard_events_size#0 +Inlining constant with var siblings (const byte) keyboard_modifiers#0 +Inlining constant with var siblings (const byte) keyboard_modifiers#0 +Inlining constant with var siblings (const byte) keyboard_modifiers#0 +Inlining constant with var siblings (const byte) keyboard_modifiers#0 +Inlining constant with var siblings (const byte) keyboard_modifiers#0 +Inlining constant with var siblings (const byte) keyboard_modifiers#0 +Inlining constant with var siblings (const byte) keyboard_modifiers#0 +Inlining constant with var siblings (const byte) keyboard_modifiers#0 +Inlining constant with var siblings (const byte) keyboard_modifiers#0 +Inlining constant with var siblings (const byte) keyboard_modifiers#0 +Inlining constant with var siblings (const byte) keyboard_modifiers#0 +Inlining constant with var siblings (const byte) keyboard_modifiers#0 +Inlining constant with different constant siblings (const byte) keyboard_modifiers#0 +Inlining constant with var siblings (const byte) keyboard_modifiers#1 +Inlining constant with var siblings (const byte) keyboard_modifiers#1 +Inlining constant with var siblings (const byte) keyboard_modifiers#1 +Inlining constant with var siblings (const byte) keyboard_modifiers#1 +Inlining constant with var siblings (const byte) keyboard_modifiers#1 Inlining constant with var siblings (const byte) keyboard_modifiers#1 Inlining constant with var siblings (const byte) keyboard_modifiers#1 Inlining constant with var siblings (const byte) keyboard_modifiers#1 @@ -8393,18 +9314,27 @@ Inlining constant with var siblings (const byte) keyboard_modifiers#1 Inlining constant with var siblings (const byte) keyboard_modifiers#1 Inlining constant with var siblings (const byte) keyboard_modifiers#1 Inlining constant with different constant siblings (const byte) keyboard_modifiers#1 -Inlining constant with var siblings (const byte) form_field_idx#2 -Inlining constant with var siblings (const byte) form_field_idx#2 -Inlining constant with var siblings (const byte) form_field_idx#2 -Inlining constant with var siblings (const byte) form_field_idx#2 -Inlining constant with var siblings (const byte) form_field_idx#2 -Inlining constant with different constant siblings (const byte) form_field_idx#2 -Inlining constant with var siblings (const byte) form_field_idx#5 -Inlining constant with var siblings (const byte) form_field_idx#5 -Inlining constant with var siblings (const byte) form_field_idx#5 -Inlining constant with var siblings (const byte) form_field_idx#5 -Inlining constant with var siblings (const byte) form_field_idx#5 -Inlining constant with different constant siblings (const byte) form_field_idx#5 +Inlining constant with var siblings (const byte) form_field_idx#36 +Inlining constant with var siblings (const byte) form_field_idx#36 +Inlining constant with var siblings (const byte) form_field_idx#36 +Inlining constant with var siblings (const byte) form_field_idx#36 +Inlining constant with var siblings (const byte) form_field_idx#36 +Inlining constant with var siblings (const byte) form_field_idx#36 +Inlining constant with var siblings (const byte) form_field_idx#36 +Inlining constant with different constant siblings (const byte) form_field_idx#36 +Inlining constant with var siblings (const byte) form_field_idx#7 +Inlining constant with var siblings (const byte) form_field_idx#7 +Inlining constant with var siblings (const byte) form_field_idx#7 +Inlining constant with var siblings (const byte) form_field_idx#7 +Inlining constant with var siblings (const byte) form_field_idx#7 +Inlining constant with var siblings (const byte) form_field_idx#7 +Inlining constant with var siblings (const byte) form_field_idx#7 +Inlining constant with different constant siblings (const byte) form_field_idx#7 +Inlining constant with var siblings (const byte) keyboard_modifiers#2 +Inlining constant with var siblings (const byte) keyboard_modifiers#2 +Inlining constant with var siblings (const byte) keyboard_modifiers#2 +Inlining constant with var siblings (const byte) keyboard_modifiers#2 +Inlining constant with var siblings (const byte) keyboard_modifiers#2 Inlining constant with var siblings (const byte) keyboard_modifiers#2 Inlining constant with var siblings (const byte) keyboard_modifiers#2 Inlining constant with var siblings (const byte) keyboard_modifiers#2 @@ -8413,55 +9343,72 @@ Inlining constant with var siblings (const byte) keyboard_modifiers#2 Inlining constant with var siblings (const byte) keyboard_modifiers#2 Inlining constant with var siblings (const byte) keyboard_modifiers#2 Inlining constant with different constant siblings (const byte) keyboard_modifiers#2 -Inlining constant with var siblings (const signed byte) form_cursor_count#19 -Inlining constant with var siblings (const signed byte) form_cursor_count#19 -Inlining constant with var siblings (const signed byte) form_cursor_count#19 -Inlining constant with var siblings (const signed byte) form_cursor_count#19 -Inlining constant with different constant siblings (const signed byte) form_cursor_count#19 -Inlining constant with var siblings (const signed byte) form_cursor_count#4 -Inlining constant with var siblings (const signed byte) form_cursor_count#4 -Inlining constant with var siblings (const signed byte) form_cursor_count#4 -Inlining constant with var siblings (const signed byte) form_cursor_count#4 -Inlining constant with different constant siblings (const signed byte) form_cursor_count#4 -Inlining constant with different constant siblings (const signed byte) form_cursor_count#4 -Inlining constant with var siblings (const signed byte) form_cursor_count#5 -Inlining constant with var siblings (const signed byte) form_cursor_count#5 -Inlining constant with var siblings (const signed byte) form_cursor_count#5 -Inlining constant with var siblings (const signed byte) form_cursor_count#5 -Inlining constant with different constant siblings (const signed byte) form_cursor_count#5 -Inlining constant with var siblings (const byte) form_field_idx#6 -Inlining constant with var siblings (const byte) form_field_idx#6 -Inlining constant with var siblings (const byte) form_field_idx#6 -Inlining constant with var siblings (const byte) form_field_idx#6 -Inlining constant with var siblings (const byte) form_field_idx#6 -Inlining constant with different constant siblings (const byte) form_field_idx#6 -Inlining constant with different constant siblings (const byte) form_field_idx#6 +Inlining constant with different constant siblings (const byte) keyboard_modifiers#2 +Inlining constant with var siblings (const signed byte) form_cursor_count#26 +Inlining constant with var siblings (const signed byte) form_cursor_count#26 +Inlining constant with var siblings (const signed byte) form_cursor_count#26 +Inlining constant with var siblings (const signed byte) form_cursor_count#26 +Inlining constant with var siblings (const signed byte) form_cursor_count#26 +Inlining constant with var siblings (const signed byte) form_cursor_count#26 +Inlining constant with different constant siblings (const signed byte) form_cursor_count#26 +Inlining constant with var siblings (const signed byte) form_cursor_count#6 +Inlining constant with var siblings (const signed byte) form_cursor_count#6 +Inlining constant with var siblings (const signed byte) form_cursor_count#6 +Inlining constant with var siblings (const signed byte) form_cursor_count#6 +Inlining constant with var siblings (const signed byte) form_cursor_count#6 +Inlining constant with var siblings (const signed byte) form_cursor_count#6 +Inlining constant with different constant siblings (const signed byte) form_cursor_count#6 +Inlining constant with different constant siblings (const signed byte) form_cursor_count#6 +Inlining constant with var siblings (const signed byte) form_cursor_count#7 +Inlining constant with var siblings (const signed byte) form_cursor_count#7 +Inlining constant with var siblings (const signed byte) form_cursor_count#7 +Inlining constant with var siblings (const signed byte) form_cursor_count#7 +Inlining constant with var siblings (const signed byte) form_cursor_count#7 +Inlining constant with var siblings (const signed byte) form_cursor_count#7 +Inlining constant with different constant siblings (const signed byte) form_cursor_count#7 +Inlining constant with var siblings (const byte) form_field_idx#8 +Inlining constant with var siblings (const byte) form_field_idx#8 +Inlining constant with var siblings (const byte) form_field_idx#8 +Inlining constant with var siblings (const byte) form_field_idx#8 +Inlining constant with var siblings (const byte) form_field_idx#8 +Inlining constant with var siblings (const byte) form_field_idx#8 +Inlining constant with var siblings (const byte) form_field_idx#8 +Inlining constant with different constant siblings (const byte) form_field_idx#8 +Inlining constant with different constant siblings (const byte) form_field_idx#8 +Constant inlined form_field_idx#36 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined dtvSetCpuBankSegment1::cpuBankIdx#0 = ((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) 16384 +Constant inlined form_control::return#5 = (byte/word/signed word/dword/signed dword) 255 Constant inlined gfx_mode::i#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined dtvSetCpuBankSegment1::cpuBankIdx#2 = ((byte))(word/signed word/dword/signed dword) 16384/(word/signed word/dword/signed dword) 16384 +Constant inlined keyboard_modifiers#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 +Constant inlined form_control::return#1 = (byte/signed byte/word/signed word/dword/signed dword) 0 +Constant inlined form_control::return#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined keyboard_modifiers#2 = (byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) KEY_MODIFIER_LSHIFT#0 +Constant inlined form_control::return#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined keyboard_modifiers#1 = (byte/signed byte/word/signed word/dword/signed dword) 0 -Constant inlined form_field_idx#6 = (const byte) form_fields_cnt#0-(byte/signed byte/word/signed word/dword/signed dword) 1 -Constant inlined form_field_idx#5 = (byte/signed byte/word/signed word/dword/signed dword) 0 +Constant inlined form_field_idx#8 = (const byte) form_fields_cnt#0-(byte/signed byte/word/signed word/dword/signed dword) 1 +Constant inlined form_field_idx#7 = (byte/signed byte/word/signed word/dword/signed dword) 0 +Constant inlined gfx_init_screen_stdchar::ch#0 = (const byte*) VIC_SCREEN_STDCHAR#0 Constant inlined gfx_init_plane_8bppchunky::gfxb#0 = ((byte*))(word/signed word/dword/signed dword) 16384 Constant inlined gfx_init_plane_8bppchunky::gfxb#2 = ((byte*))(word/signed word/dword/signed dword) 16384 -Constant inlined form_field_idx#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined gfx_init_plane_8bppchunky::x#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined gfx_mode::dtv_control#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined gfx_mode::vic_control#1 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3|(const byte) VIC_ECM#0 Constant inlined gfx_mode::dtv_control#1 = (byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) DTV_LINEAR#0 Constant inlined gfx_mode::vic_control#0 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 +Constant inlined gfx_init_screen_stdchar::cx#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined form_mode::i#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined keyboard_event_scan::keycode#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined print_str_lines::str#2 = (const string) FORM_TEXT#0 Constant inlined print_str_lines::str#1 = (const string) FORM_COLS#0 Constant inlined gfx_init_plane_8bppchunky::gfxbCpuBank#0 = ((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) 16384 Constant inlined gfx_init_plane_8bppchunky::gfxbCpuBank#1 = ++((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) 16384 +Constant inlined form_cursor_count#26 = (const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 Constant inlined form_mode::$10 = ((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) 16384 Constant inlined form_mode::$12 = (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) 16384 Constant inlined form_mode::$11 = ((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) 16384 Constant inlined form_control::$3 = (const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 -Constant inlined $56 = (const string) print_hextab#0 +Constant inlined $55 = (const string) print_hextab#0 Constant inlined keyboard_event_scan::col#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined keyboard_event_scan::row#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined form_mode::$18 = ((word))(const byte*) FORM_CHARSET#0 @@ -8479,14 +9426,15 @@ Constant inlined form_mode::$4 = ((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/ Constant inlined form_mode::$16 = ((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) 16383 Constant inlined form_mode::$15 = ((word))(const byte*) FORM_SCREEN#0 Constant inlined form_mode::$5 = <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 +Constant inlined form_set_screen::screen#0 = (const byte*) FORM_SCREEN#0 Constant inlined form_mode::$6 = (const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 -Constant inlined form_cursor_count#19 = (const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 Constant inlined form_mode::$7 = ((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 Constant inlined form_mode::$8 = >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 Constant inlined form_mode::$9 = ((word))(const byte*) FORM_CHARSET#0 -Constant inlined print_set_screen::screen#0 = (const byte*) COLS#0+(const word) FORM_OFFSET#0 -Constant inlined print_set_screen::screen#1 = (const byte*) FORM_SCREEN#0+(const word) FORM_OFFSET#0 +Constant inlined print_set_screen::screen#0 = (const byte*) COLS#0 +Constant inlined print_set_screen::screen#1 = (const byte*) FORM_SCREEN#0 Constant inlined gfx_init_plane_8bppchunky::y#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 +Constant inlined gfx_init_screen_stdchar::cy#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined form_mode::$21 = ((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) 16383/(byte/signed byte/word/signed word/dword/signed dword) 64|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) 16383/(word/signed word/dword/signed dword) 1024 Constant inlined form_render_values::idx#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined form_mode::$20 = ((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) 16383/(word/signed word/dword/signed dword) 1024 @@ -8500,25 +9448,23 @@ Constant inlined gfx_mode::vic_control2#1 = (const byte) VIC_CSEL#0|(const byte) Constant inlined gfx_mode::vic_control2#0 = (const byte) VIC_CSEL#0 Constant inlined gfx_mode::$31 = ((dword))(const byte*) FORM_SCREEN#0 Constant inlined gfx_init_plane_8bppchunky::$10 = (word/signed word/dword/signed dword) 16384/(word/signed word/dword/signed dword) 16384 -Constant inlined main::$3 = (byte/signed byte/word/signed word/dword/signed dword) 8*(byte/signed byte/word/signed word/dword/signed dword) 16 -Constant inlined form_cursor_count#4 = (const signed byte) FORM_CURSOR_BLINK#0 Constant inlined keyboard_event_get::return#1 = (byte/word/signed word/dword/signed dword) 255 -Constant inlined main::$4 = (byte/signed byte/word/signed word/dword/signed dword) 48+(byte/signed byte/word/signed word/dword/signed dword) 8*(byte/signed byte/word/signed word/dword/signed dword) 16 -Constant inlined form_cursor_count#5 = (const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 +Constant inlined form_cursor_count#6 = (const signed byte) FORM_CURSOR_BLINK#0 Constant inlined keyboard_events_size#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 +Constant inlined form_cursor_count#7 = (const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 Succesful SSA optimization Pass2ConstantInlining -Block Sequence Planned @begin @32 @end main main::@19 main::@20 main::@1 main::@return main::@4 main::@6 main::@7 main::@9 main::@23 gfx_mode gfx_mode::@11 gfx_mode::@1 gfx_mode::@12 gfx_mode::@2 gfx_mode::@13 gfx_mode::@3 gfx_mode::@14 gfx_mode::@4 gfx_mode::@15 gfx_mode::@5 gfx_mode::@16 gfx_mode::@6 gfx_mode::@17 gfx_mode::@7 gfx_mode::@18 gfx_mode::@8 gfx_mode::@19 gfx_mode::@9 gfx_mode::@10 gfx_mode::@return form_control form_control::@29 form_control::@14 form_control::@1 form_control::@15 form_control::@3 form_control::@30 form_control::@31 form_control::@17 form_control::@18 form_control::@19 form_control::@7 form_control::@return form_control::@5 form_control::@21 form_control::@4 form_control::@23 form_control::@24 form_control::@25 form_control::@12 form_control::@10 form_control::@27 form_control::@2 keyboard_event_get keyboard_event_get::@return keyboard_event_get::@1 keyboard_event_scan keyboard_event_scan::@1 keyboard_event_scan::@25 keyboard_event_scan::@3 keyboard_event_scan::@14 keyboard_event_scan::@15 keyboard_event_scan::@16 keyboard_event_scan::@4 keyboard_event_scan::@18 keyboard_event_scan::@8 keyboard_event_scan::@20 keyboard_event_scan::@26 keyboard_event_scan::@21 keyboard_event_scan::@9 keyboard_event_scan::@27 keyboard_event_scan::@22 keyboard_event_scan::@10 keyboard_event_scan::@28 keyboard_event_scan::@23 keyboard_event_scan::@11 keyboard_event_scan::@29 keyboard_event_scan::@24 keyboard_event_scan::@return keyboard_event_scan::@6 keyboard_event_scan::@2 keyboard_event_pressed keyboard_event_pressed::@return keyboard_matrix_read keyboard_matrix_read::@return form_field_ptr form_field_ptr::@return form_mode form_mode::@1 form_mode::@2 form_mode::@return form_init form_init::@1 form_init::@2 form_init::@3 form_init::@4 form_init::@5 form_init::@return form_render_values form_render_values::@1 form_render_values::@3 form_render_values::@return form_set_screen form_set_screen::@1 form_set_screen::@return print_str_lines print_str_lines::@1 print_str_lines::@return print_str_lines::@4 print_str_lines::@8 print_str_lines::@5 print_str_lines::@9 print_ln print_ln::@1 print_ln::@return print_set_screen print_set_screen::@return gfx_init gfx_init::@return gfx_init_plane_8bppchunky gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@4 gfx_init_plane_8bppchunky::@8 gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@5 gfx_init_plane_8bppchunky::@6 gfx_init_plane_8bppchunky::@return dtvSetCpuBankSegment1 dtvSetCpuBankSegment1::@return keyboard_init keyboard_init::@return -Added new block during phi lifting gfx_mode::@21(between gfx_mode::@1 and gfx_mode::@2) -Added new block during phi lifting gfx_mode::@22(between gfx_mode::@2 and gfx_mode::@3) -Added new block during phi lifting gfx_mode::@23(between gfx_mode::@3 and gfx_mode::@4) -Added new block during phi lifting gfx_mode::@24(between gfx_mode::@4 and gfx_mode::@5) -Added new block during phi lifting gfx_mode::@25(between gfx_mode::@5 and gfx_mode::@6) -Added new block during phi lifting gfx_mode::@26(between gfx_mode::@7 and gfx_mode::@8) -Added new block during phi lifting gfx_mode::@27(between gfx_mode::@10 and gfx_mode::@10) -Added new block during phi lifting form_control::@32(between form_control::@29 and form_control::@1) -Added new block during phi lifting form_control::@33(between form_control::@18 and form_control::@7) -Added new block during phi lifting form_control::@34(between form_control::@5 and form_control::@7) -Added new block during phi lifting form_control::@35(between form_control::@4 and form_control::@return) +Block Sequence Planned @begin @33 @end main main::@7 main::@8 main::@1 main::@return main::@2 main::@10 gfx_mode gfx_mode::@18 gfx_mode::@1 gfx_mode::@19 gfx_mode::@2 gfx_mode::@20 gfx_mode::@3 gfx_mode::@21 gfx_mode::@4 gfx_mode::@22 gfx_mode::@5 gfx_mode::@23 gfx_mode::@6 gfx_mode::@24 gfx_mode::@7 gfx_mode::@25 gfx_mode::@8 gfx_mode::@26 gfx_mode::@9 gfx_mode::@10 gfx_mode::@11 gfx_mode::@return gfx_mode::@14 gfx_mode::@16 gfx_mode::@36 gfx_mode::@37 keyboard_event_get keyboard_event_get::@return keyboard_event_get::@1 keyboard_event_scan keyboard_event_scan::@1 keyboard_event_scan::@25 keyboard_event_scan::@3 keyboard_event_scan::@14 keyboard_event_scan::@15 keyboard_event_scan::@16 keyboard_event_scan::@4 keyboard_event_scan::@18 keyboard_event_scan::@8 keyboard_event_scan::@20 keyboard_event_scan::@26 keyboard_event_scan::@21 keyboard_event_scan::@9 keyboard_event_scan::@27 keyboard_event_scan::@22 keyboard_event_scan::@10 keyboard_event_scan::@28 keyboard_event_scan::@23 keyboard_event_scan::@11 keyboard_event_scan::@29 keyboard_event_scan::@24 keyboard_event_scan::@return keyboard_event_scan::@6 keyboard_event_scan::@2 keyboard_event_pressed keyboard_event_pressed::@return keyboard_matrix_read keyboard_matrix_read::@return form_mode form_mode::@1 form_mode::@9 form_mode::@2 form_mode::@return form_mode::@5 form_mode::@7 form_mode::@19 form_control form_control::@33 form_control::@15 form_control::@1 form_control::@16 form_control::@3 form_control::@34 form_control::@35 form_control::@18 form_control::@19 form_control::@20 form_control::@7 form_control::@return form_control::@5 form_control::@22 form_control::@4 form_control::@24 form_control::@25 form_control::@26 form_control::@12 form_control::@10 form_control::@28 form_control::@9 form_control::@30 form_control::@2 form_field_ptr form_field_ptr::@return form_init form_init::@1 form_init::@2 form_init::@3 form_init::@4 form_init::@5 form_init::@6 form_init::@7 form_init::@return form_render_values form_render_values::@1 form_render_values::@3 form_render_values::@return form_set_screen form_set_screen::@1 form_set_screen::@return print_str_lines print_str_lines::@1 print_str_lines::@return print_str_lines::@4 print_str_lines::@8 print_str_lines::@5 print_str_lines::@9 print_ln print_ln::@1 print_ln::@return print_cls print_cls::@1 print_cls::@return print_set_screen print_set_screen::@return gfx_init gfx_init::@1 gfx_init::@return gfx_init_plane_8bppchunky gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@4 gfx_init_plane_8bppchunky::@8 gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@5 gfx_init_plane_8bppchunky::@6 gfx_init_plane_8bppchunky::@return dtvSetCpuBankSegment1 dtvSetCpuBankSegment1::@return gfx_init_screen_stdchar gfx_init_screen_stdchar::@1 gfx_init_screen_stdchar::@2 gfx_init_screen_stdchar::@3 gfx_init_screen_stdchar::@return keyboard_init keyboard_init::@return +Added new block during phi lifting gfx_mode::@38(between gfx_mode::@1 and gfx_mode::@2) +Added new block during phi lifting gfx_mode::@39(between gfx_mode::@2 and gfx_mode::@3) +Added new block during phi lifting gfx_mode::@40(between gfx_mode::@3 and gfx_mode::@4) +Added new block during phi lifting gfx_mode::@41(between gfx_mode::@4 and gfx_mode::@5) +Added new block during phi lifting gfx_mode::@42(between gfx_mode::@5 and gfx_mode::@6) +Added new block during phi lifting gfx_mode::@43(between gfx_mode::@7 and gfx_mode::@8) +Added new block during phi lifting gfx_mode::@44(between gfx_mode::@10 and gfx_mode::@10) +Added new block during phi lifting gfx_mode::@45(between gfx_mode::@10 and gfx_mode::@11) +Added new block during phi lifting gfx_mode::@46(between gfx_mode::@37 and gfx_mode::@11) +Added new block during phi lifting gfx_mode::@47(between gfx_mode::@11 and gfx_mode::@return) +Added new block during phi lifting gfx_mode::@48(between gfx_mode::@37 and gfx_mode::@return) Added new block during phi lifting keyboard_event_get::@7(between keyboard_event_get and keyboard_event_get::@return) Fixing phi predecessor for keyboard_event_get::return#2 to new block ( keyboard_event_get -> keyboard_event_get::@7 ) during phi lifting. Added new block during phi lifting keyboard_event_scan::@30(between keyboard_event_scan::@8 and keyboard_event_scan::@1) @@ -8530,57 +9476,74 @@ Added new block during phi lifting keyboard_event_scan::@34(between keyboard_eve Added new block during phi lifting keyboard_event_scan::@35(between keyboard_event_scan::@27 and keyboard_event_scan::@10) Added new block during phi lifting keyboard_event_scan::@36(between keyboard_event_scan::@28 and keyboard_event_scan::@11) Added new block during phi lifting keyboard_event_scan::@37(between keyboard_event_scan::@29 and keyboard_event_scan::@return) -Added new block during phi lifting form_mode::@3(between form_mode::@1 and form_mode::@1) +Added new block during phi lifting form_mode::@20(between form_mode::@1 and form_mode::@1) +Added new block during phi lifting form_mode::@21(between form_mode::@19 and form_mode::@2) +Added new block during phi lifting form_mode::@22(between form_mode::@19 and form_mode::@return) +Added new block during phi lifting form_mode::@23(between form_mode::@2 and form_mode::@return) +Added new block during phi lifting form_control::@36(between form_control::@33 and form_control::@1) +Added new block during phi lifting form_control::@37(between form_control::@19 and form_control::@7) +Added new block during phi lifting form_control::@38(between form_control::@5 and form_control::@7) +Added new block during phi lifting form_control::@39(between form_control::@9 and form_control::@return) +Fixing phi predecessor for form_control::return#2 to new block ( form_control::@9 -> form_control::@39 ) during phi lifting. Added new block during phi lifting form_render_values::@4(between form_render_values::@3 and form_render_values::@1) Added new block during phi lifting form_set_screen::@3(between form_set_screen::@1 and form_set_screen::@1) Added new block during phi lifting print_str_lines::@12(between print_str_lines::@1 and print_str_lines::@4) Added new block during phi lifting print_str_lines::@13(between print_str_lines::@5 and print_str_lines::@4) Added new block during phi lifting print_str_lines::@14(between print_str_lines::@4 and print_str_lines::@5) Added new block during phi lifting print_ln::@3(between print_ln::@1 and print_ln::@1) +Added new block during phi lifting print_cls::@3(between print_cls::@1 and print_cls::@1) Added new block during phi lifting gfx_init_plane_8bppchunky::@10(between gfx_init_plane_8bppchunky::@5 and gfx_init_plane_8bppchunky::@1) Added new block during phi lifting gfx_init_plane_8bppchunky::@11(between gfx_init_plane_8bppchunky::@3 and gfx_init_plane_8bppchunky::@2) Added new block during phi lifting gfx_init_plane_8bppchunky::@12(between gfx_init_plane_8bppchunky::@2 and gfx_init_plane_8bppchunky::@3) -Block Sequence Planned @begin @32 @end main main::@19 main::@20 main::@1 main::@return main::@4 main::@6 main::@7 main::@9 main::@23 gfx_mode gfx_mode::@11 gfx_mode::@1 gfx_mode::@12 gfx_mode::@2 gfx_mode::@13 gfx_mode::@3 gfx_mode::@14 gfx_mode::@4 gfx_mode::@15 gfx_mode::@5 gfx_mode::@16 gfx_mode::@6 gfx_mode::@17 gfx_mode::@7 gfx_mode::@18 gfx_mode::@8 gfx_mode::@19 gfx_mode::@9 gfx_mode::@10 gfx_mode::@return gfx_mode::@27 gfx_mode::@26 gfx_mode::@25 gfx_mode::@24 gfx_mode::@23 gfx_mode::@22 gfx_mode::@21 form_control form_control::@29 form_control::@14 form_control::@1 form_control::@15 form_control::@3 form_control::@30 form_control::@31 form_control::@17 form_control::@18 form_control::@19 form_control::@7 form_control::@return form_control::@33 form_control::@5 form_control::@21 form_control::@34 form_control::@4 form_control::@23 form_control::@24 form_control::@25 form_control::@12 form_control::@10 form_control::@27 form_control::@35 form_control::@2 form_control::@32 keyboard_event_get keyboard_event_get::@7 keyboard_event_get::@return keyboard_event_get::@1 keyboard_event_scan keyboard_event_scan::@1 keyboard_event_scan::@25 keyboard_event_scan::@32 keyboard_event_scan::@3 keyboard_event_scan::@14 keyboard_event_scan::@15 keyboard_event_scan::@16 keyboard_event_scan::@4 keyboard_event_scan::@18 keyboard_event_scan::@8 keyboard_event_scan::@20 keyboard_event_scan::@26 keyboard_event_scan::@21 keyboard_event_scan::@9 keyboard_event_scan::@27 keyboard_event_scan::@22 keyboard_event_scan::@10 keyboard_event_scan::@28 keyboard_event_scan::@23 keyboard_event_scan::@11 keyboard_event_scan::@29 keyboard_event_scan::@24 keyboard_event_scan::@return keyboard_event_scan::@37 keyboard_event_scan::@36 keyboard_event_scan::@35 keyboard_event_scan::@30 keyboard_event_scan::@31 keyboard_event_scan::@6 keyboard_event_scan::@34 keyboard_event_scan::@33 keyboard_event_scan::@2 keyboard_event_pressed keyboard_event_pressed::@return keyboard_matrix_read keyboard_matrix_read::@return form_field_ptr form_field_ptr::@return form_mode form_mode::@1 form_mode::@2 form_mode::@return form_mode::@3 form_init form_init::@1 form_init::@2 form_init::@3 form_init::@4 form_init::@5 form_init::@return form_render_values form_render_values::@1 form_render_values::@3 form_render_values::@return form_render_values::@4 form_set_screen form_set_screen::@1 form_set_screen::@return form_set_screen::@3 print_str_lines print_str_lines::@1 print_str_lines::@return print_str_lines::@12 print_str_lines::@4 print_str_lines::@8 print_str_lines::@5 print_str_lines::@9 print_str_lines::@13 print_str_lines::@14 print_ln print_ln::@1 print_ln::@return print_ln::@3 print_set_screen print_set_screen::@return gfx_init gfx_init::@return gfx_init_plane_8bppchunky gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@4 gfx_init_plane_8bppchunky::@8 gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@5 gfx_init_plane_8bppchunky::@6 gfx_init_plane_8bppchunky::@return gfx_init_plane_8bppchunky::@10 gfx_init_plane_8bppchunky::@11 gfx_init_plane_8bppchunky::@12 dtvSetCpuBankSegment1 dtvSetCpuBankSegment1::@return keyboard_init keyboard_init::@return +Added new block during phi lifting gfx_init_screen_stdchar::@5(between gfx_init_screen_stdchar::@3 and gfx_init_screen_stdchar::@1) +Added new block during phi lifting gfx_init_screen_stdchar::@6(between gfx_init_screen_stdchar::@2 and gfx_init_screen_stdchar::@2) +Block Sequence Planned @begin @33 @end main main::@7 main::@8 main::@1 main::@return main::@2 main::@10 gfx_mode gfx_mode::@18 gfx_mode::@1 gfx_mode::@19 gfx_mode::@2 gfx_mode::@20 gfx_mode::@3 gfx_mode::@21 gfx_mode::@4 gfx_mode::@22 gfx_mode::@5 gfx_mode::@23 gfx_mode::@6 gfx_mode::@24 gfx_mode::@7 gfx_mode::@25 gfx_mode::@8 gfx_mode::@26 gfx_mode::@9 gfx_mode::@10 gfx_mode::@45 gfx_mode::@11 gfx_mode::@47 gfx_mode::@return gfx_mode::@14 gfx_mode::@16 gfx_mode::@36 gfx_mode::@37 gfx_mode::@48 gfx_mode::@46 gfx_mode::@44 gfx_mode::@43 gfx_mode::@42 gfx_mode::@41 gfx_mode::@40 gfx_mode::@39 gfx_mode::@38 keyboard_event_get keyboard_event_get::@7 keyboard_event_get::@return keyboard_event_get::@1 keyboard_event_scan keyboard_event_scan::@1 keyboard_event_scan::@25 keyboard_event_scan::@32 keyboard_event_scan::@3 keyboard_event_scan::@14 keyboard_event_scan::@15 keyboard_event_scan::@16 keyboard_event_scan::@4 keyboard_event_scan::@18 keyboard_event_scan::@8 keyboard_event_scan::@20 keyboard_event_scan::@26 keyboard_event_scan::@21 keyboard_event_scan::@9 keyboard_event_scan::@27 keyboard_event_scan::@22 keyboard_event_scan::@10 keyboard_event_scan::@28 keyboard_event_scan::@23 keyboard_event_scan::@11 keyboard_event_scan::@29 keyboard_event_scan::@24 keyboard_event_scan::@return keyboard_event_scan::@37 keyboard_event_scan::@36 keyboard_event_scan::@35 keyboard_event_scan::@30 keyboard_event_scan::@31 keyboard_event_scan::@6 keyboard_event_scan::@34 keyboard_event_scan::@33 keyboard_event_scan::@2 keyboard_event_pressed keyboard_event_pressed::@return keyboard_matrix_read keyboard_matrix_read::@return form_mode form_mode::@1 form_mode::@9 form_mode::@2 form_mode::@23 form_mode::@return form_mode::@5 form_mode::@7 form_mode::@19 form_mode::@22 form_mode::@21 form_mode::@20 form_control form_control::@33 form_control::@15 form_control::@1 form_control::@16 form_control::@3 form_control::@34 form_control::@35 form_control::@18 form_control::@19 form_control::@20 form_control::@7 form_control::@return form_control::@37 form_control::@5 form_control::@22 form_control::@38 form_control::@4 form_control::@24 form_control::@25 form_control::@26 form_control::@12 form_control::@10 form_control::@28 form_control::@9 form_control::@30 form_control::@39 form_control::@2 form_control::@36 form_field_ptr form_field_ptr::@return form_init form_init::@1 form_init::@2 form_init::@3 form_init::@4 form_init::@5 form_init::@6 form_init::@7 form_init::@return form_render_values form_render_values::@1 form_render_values::@3 form_render_values::@return form_render_values::@4 form_set_screen form_set_screen::@1 form_set_screen::@return form_set_screen::@3 print_str_lines print_str_lines::@1 print_str_lines::@return print_str_lines::@12 print_str_lines::@4 print_str_lines::@8 print_str_lines::@5 print_str_lines::@9 print_str_lines::@13 print_str_lines::@14 print_ln print_ln::@1 print_ln::@return print_ln::@3 print_cls print_cls::@1 print_cls::@return print_cls::@3 print_set_screen print_set_screen::@return gfx_init gfx_init::@1 gfx_init::@return gfx_init_plane_8bppchunky gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@4 gfx_init_plane_8bppchunky::@8 gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@5 gfx_init_plane_8bppchunky::@6 gfx_init_plane_8bppchunky::@return gfx_init_plane_8bppchunky::@10 gfx_init_plane_8bppchunky::@11 gfx_init_plane_8bppchunky::@12 dtvSetCpuBankSegment1 dtvSetCpuBankSegment1::@return gfx_init_screen_stdchar gfx_init_screen_stdchar::@1 gfx_init_screen_stdchar::@2 gfx_init_screen_stdchar::@3 gfx_init_screen_stdchar::@return gfx_init_screen_stdchar::@5 gfx_init_screen_stdchar::@6 keyboard_init keyboard_init::@return Adding NOP phi() at start of @begin -Adding NOP phi() at start of @32 +Adding NOP phi() at start of @33 Adding NOP phi() at start of @end -Adding NOP phi() at start of main::@19 -Adding NOP phi() at start of main::@20 -Adding NOP phi() at start of main::@6 -Adding NOP phi() at start of main::@9 -Adding NOP phi() at start of main::@23 -Adding NOP phi() at start of gfx_mode::@11 -Adding NOP phi() at start of gfx_mode::@17 -Adding NOP phi() at start of gfx_mode::@19 -Adding NOP phi() at start of form_control::@14 -Adding NOP phi() at start of form_control::@3 -Adding NOP phi() at start of form_control::@30 -Adding NOP phi() at start of form_control::@19 -Adding NOP phi() at start of form_control::@21 +Adding NOP phi() at start of main::@7 +Adding NOP phi() at start of main::@8 +Adding NOP phi() at start of main::@2 +Adding NOP phi() at start of main::@10 +Adding NOP phi() at start of gfx_mode::@18 +Adding NOP phi() at start of gfx_mode::@24 +Adding NOP phi() at start of gfx_mode::@26 +Adding NOP phi() at start of gfx_mode::@36 Adding NOP phi() at start of keyboard_event_scan::@20 Adding NOP phi() at start of keyboard_event_scan::@21 +Adding NOP phi() at start of form_mode::@7 +Adding NOP phi() at start of form_control::@15 +Adding NOP phi() at start of form_control::@34 +Adding NOP phi() at start of form_control::@20 +Adding NOP phi() at start of form_control::@22 Adding NOP phi() at start of form_init Adding NOP phi() at start of form_init::@1 Adding NOP phi() at start of form_init::@2 Adding NOP phi() at start of form_init::@3 Adding NOP phi() at start of form_init::@4 Adding NOP phi() at start of form_init::@5 +Adding NOP phi() at start of form_init::@6 +Adding NOP phi() at start of form_init::@7 Adding NOP phi() at start of form_render_values Adding NOP phi() at start of form_set_screen Adding NOP phi() at start of print_str_lines::@9 Adding NOP phi() at start of gfx_init +Adding NOP phi() at start of gfx_init::@1 Adding NOP phi() at start of gfx_init_plane_8bppchunky Adding NOP phi() at start of gfx_init_plane_8bppchunky::@6 +Adding NOP phi() at start of gfx_init_screen_stdchar CALL GRAPH Calls in [] to main:2 -Calls in [main] to keyboard_init:6 gfx_init:8 form_init:10 form_mode:16 form_control:19 gfx_mode:21 -Calls in [form_control] to form_field_ptr:125 keyboard_event_scan:136 keyboard_event_get:138 -Calls in [keyboard_event_scan] to keyboard_matrix_read:186 keyboard_event_pressed:214 keyboard_event_pressed:220 keyboard_event_pressed:227 keyboard_event_pressed:234 -Calls in [form_init] to print_set_screen:292 print_str_lines:294 print_set_screen:296 print_str_lines:298 form_set_screen:300 form_render_values:302 -Calls in [form_render_values] to form_field_ptr:308 -Calls in [print_str_lines] to print_ln:347 -Calls in [gfx_init] to gfx_init_plane_8bppchunky:364 -Calls in [gfx_init_plane_8bppchunky] to dtvSetCpuBankSegment1:367 dtvSetCpuBankSegment1:375 dtvSetCpuBankSegment1:388 +Calls in [main] to keyboard_init:6 gfx_init:8 form_init:10 form_mode:15 gfx_mode:17 +Calls in [gfx_mode] to keyboard_event_scan:122 keyboard_event_get:124 +Calls in [keyboard_event_scan] to keyboard_matrix_read:151 keyboard_event_pressed:179 keyboard_event_pressed:185 keyboard_event_pressed:192 keyboard_event_pressed:199 +Calls in [form_mode] to form_control:261 +Calls in [form_control] to form_field_ptr:276 keyboard_event_scan:287 keyboard_event_get:289 +Calls in [form_init] to print_set_screen:336 print_cls:338 print_str_lines:340 print_set_screen:342 print_cls:344 print_str_lines:346 form_set_screen:348 form_render_values:350 +Calls in [form_render_values] to form_field_ptr:356 +Calls in [print_str_lines] to print_ln:395 +Calls in [gfx_init] to gfx_init_screen_stdchar:421 gfx_init_plane_8bppchunky:423 +Calls in [gfx_init_plane_8bppchunky] to dtvSetCpuBankSegment1:426 dtvSetCpuBankSegment1:434 dtvSetCpuBankSegment1:447 Propagating live ranges... Propagating live ranges... @@ -8606,108 +9569,197 @@ Propagating live ranges... Propagating live ranges... Propagating live ranges... Propagating live ranges... -Created 56 initial phi equivalence classes -Coalesced [22] form_cursor_count#45 ← form_cursor_count#12 -Coalesced [23] keyboard_events_size#92 ← keyboard_events_size#18 -Coalesced [24] form_field_idx#53 ← form_field_idx#14 -Coalesced [30] gfx_mode::dtv_control#20 ← gfx_mode::dtv_control#2 -Coalesced [34] gfx_mode::dtv_control#21 ← gfx_mode::dtv_control#3 -Coalesced [38] gfx_mode::dtv_control#23 ← gfx_mode::dtv_control#4 -Coalesced [42] gfx_mode::dtv_control#25 ← gfx_mode::dtv_control#5 -Coalesced [46] gfx_mode::dtv_control#27 ← gfx_mode::dtv_control#6 -Coalesced [54] gfx_mode::vic_control#7 ← gfx_mode::vic_control#2 -Coalesced [116] gfx_mode::i#3 ← gfx_mode::i#1 -Coalesced [117] gfx_mode::vic_control#8 ← gfx_mode::vic_control#5 -Coalesced [118] gfx_mode::dtv_control#28 ← gfx_mode::dtv_control#13 -Coalesced [119] gfx_mode::dtv_control#26 ← gfx_mode::dtv_control#11 -Coalesced [120] gfx_mode::dtv_control#24 ← gfx_mode::dtv_control#10 -Coalesced [121] gfx_mode::dtv_control#22 ← gfx_mode::dtv_control#15 -Coalesced [122] gfx_mode::dtv_control#19 ← gfx_mode::dtv_control#14 -Coalesced [124] form_field_ptr::field_idx#3 ← form_field_ptr::field_idx#1 -Coalesced [150] form_field_idx#57 ← form_field_idx#24 -Coalesced [153] form_field_idx#54 ← form_field_idx#34 -Coalesced [157] form_field_idx#55 ← form_field_idx#3 -Coalesced [165] form_cursor_count#47 ← form_cursor_count#11 -Coalesced (already) [166] form_field_idx#56 ← form_field_idx#1 -Coalesced (already) [170] form_cursor_count#48 ← form_cursor_count#11 -Coalesced (already) [171] form_field_idx#58 ← form_field_idx#1 -Coalesced [174] form_cursor_count#46 ← form_cursor_count#3 -Coalesced [176] keyboard_events_size#94 ← keyboard_events_size#15 -Coalesced [181] keyboard_event_get::return#6 ← keyboard_event_get::return#0 -Coalesced [182] keyboard_events_size#93 ← keyboard_events_size#4 -Coalesced [183] keyboard_events_size#95 ← keyboard_events_size#20 -Coalesced [190] keyboard_event_scan::keycode#17 ← keyboard_event_scan::keycode#11 -Coalesced [191] keyboard_events_size#97 ← keyboard_events_size#37 -Coalesced [202] keyboard_events_size#99 ← keyboard_events_size#2 -Coalesced [208] keyboard_event_scan::keycode#19 ← keyboard_event_scan::keycode#15 -Coalesced [209] keyboard_events_size#103 ← keyboard_events_size#38 -Coalesced [225] keyboard_modifiers#73 ← keyboard_modifiers#3 -Coalesced [232] keyboard_modifiers#75 ← keyboard_modifiers#4 -Coalesced [239] keyboard_modifiers#78 ← keyboard_modifiers#5 -Coalesced [242] keyboard_modifiers#77 ← keyboard_modifiers#15 -Coalesced [243] keyboard_modifiers#76 ← keyboard_modifiers#14 -Coalesced [244] keyboard_modifiers#74 ← keyboard_modifiers#13 -Coalesced [245] keyboard_event_scan::row#15 ← keyboard_event_scan::row#1 -Coalesced [246] keyboard_event_scan::keycode#16 ← keyboard_event_scan::keycode#14 -Coalesced (already) [247] keyboard_events_size#96 ← keyboard_events_size#15 -Coalesced [248] keyboard_event_scan::col#9 ← keyboard_event_scan::col#1 -Coalesced (already) [249] keyboard_event_scan::keycode#18 ← keyboard_event_scan::keycode#15 -Coalesced (already) [250] keyboard_events_size#98 ← keyboard_events_size#38 -Coalesced [253] keyboard_events_size#102 ← keyboard_events_size#1 -Coalesced (already) [254] keyboard_events_size#101 ← keyboard_events_size#12 -Coalesced (already) [255] keyboard_events_size#100 ← keyboard_events_size#12 -Coalesced [257] keyboard_event_scan::keycode#20 ← keyboard_event_scan::keycode#1 -Coalesced (already) [258] keyboard_events_size#104 ← keyboard_events_size#37 -Coalesced [290] form_mode::i#3 ← form_mode::i#1 -Coalesced [307] form_field_ptr::field_idx#4 ← form_field_ptr::field_idx#0 -Coalesced [315] form_render_values::idx#4 ← form_render_values::idx#1 -Coalesced [326] form_set_screen::line#3 ← form_set_screen::line#1 -Coalesced [327] form_set_screen::y#3 ← form_set_screen::y#1 -Coalesced [329] print_str_lines::str#11 ← print_str_lines::str#5 -Not coalescing [330] print_char_cursor#60 ← print_screen#1 -Coalesced [331] print_line_cursor#60 ← print_screen#1 -Coalesced [335] print_str_lines::str#13 ← print_str_lines::str#3 -Coalesced [336] print_char_cursor#62 ← print_char_cursor#18 -Coalesced [343] print_char_cursor#65 ← print_char_cursor#1 -Coalesced [348] print_str_lines::str#12 ← print_str_lines::str#0 -Not coalescing [349] print_char_cursor#61 ← print_line_cursor#18 -Coalesced [350] print_line_cursor#61 ← print_line_cursor#18 -Coalesced (already) [351] print_str_lines::str#14 ← print_str_lines::str#0 -Coalesced [352] print_char_cursor#63 ← print_char_cursor#31 -Coalesced (already) [353] print_char_cursor#64 ← print_char_cursor#16 -Coalesced [354] print_line_cursor#62 ← print_line_cursor#16 -Coalesced (already) [359] print_line_cursor#63 ← print_line_cursor#18 -Coalesced [361] print_screen#1 ← print_set_screen::screen#2 -Coalesced [369] gfx_init_plane_8bppchunky::gfxb#8 ← gfx_init_plane_8bppchunky::gfxb#5 -Coalesced [370] gfx_init_plane_8bppchunky::gfxbCpuBank#11 ← gfx_init_plane_8bppchunky::gfxbCpuBank#7 -Coalesced [374] dtvSetCpuBankSegment1::cpuBankIdx#4 ← dtvSetCpuBankSegment1::cpuBankIdx#1 -Coalesced [377] gfx_init_plane_8bppchunky::gfxbCpuBank#14 ← gfx_init_plane_8bppchunky::gfxbCpuBank#2 -Coalesced [390] gfx_init_plane_8bppchunky::gfxb#7 ← gfx_init_plane_8bppchunky::gfxb#1 -Coalesced [391] gfx_init_plane_8bppchunky::y#8 ← gfx_init_plane_8bppchunky::y#1 -Coalesced [392] gfx_init_plane_8bppchunky::gfxbCpuBank#10 ← gfx_init_plane_8bppchunky::gfxbCpuBank#8 -Coalesced (already) [393] gfx_init_plane_8bppchunky::gfxb#9 ← gfx_init_plane_8bppchunky::gfxb#1 -Coalesced [394] gfx_init_plane_8bppchunky::x#6 ← gfx_init_plane_8bppchunky::x#1 -Coalesced (already) [395] gfx_init_plane_8bppchunky::gfxbCpuBank#12 ← gfx_init_plane_8bppchunky::gfxbCpuBank#8 -Coalesced [396] gfx_init_plane_8bppchunky::gfxb#10 ← gfx_init_plane_8bppchunky::gfxb#3 -Coalesced (already) [397] gfx_init_plane_8bppchunky::gfxbCpuBank#13 ← gfx_init_plane_8bppchunky::gfxbCpuBank#4 -Coalesced down to 26 phi equivalence classes -Not culling empty block because it shares successor with its predecessor. (label) gfx_mode::@11 -Not culling empty block because it shares successor with its predecessor. (label) gfx_mode::@17 -Not culling empty block because it shares successor with its predecessor. (label) gfx_mode::@19 -Culled Empty Block (label) gfx_mode::@27 -Culled Empty Block (label) gfx_mode::@26 -Culled Empty Block (label) gfx_mode::@25 -Culled Empty Block (label) gfx_mode::@24 -Culled Empty Block (label) gfx_mode::@23 -Culled Empty Block (label) gfx_mode::@22 -Culled Empty Block (label) gfx_mode::@21 -Culled Empty Block (label) form_control::@14 -Culled Empty Block (label) form_control::@19 -Not culling empty block because it shares successor with its predecessor. (label) form_control::@33 -Culled Empty Block (label) form_control::@21 -Not culling empty block because it shares successor with its predecessor. (label) form_control::@34 -Culled Empty Block (label) form_control::@35 -Not culling empty block because it shares successor with its predecessor. (label) form_control::@32 +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Created 76 initial phi equivalence classes +Coalesced [18] form_cursor_count#53 ← form_cursor_count#13 +Coalesced [19] keyboard_events_size#133 ← keyboard_events_size#11 +Coalesced [20] keyboard_modifiers#113 ← keyboard_modifiers#11 +Coalesced [21] form_field_idx#61 ← form_field_idx#14 +Coalesced [27] gfx_mode::dtv_control#20 ← gfx_mode::dtv_control#2 +Coalesced [31] gfx_mode::dtv_control#22 ← gfx_mode::dtv_control#3 +Coalesced [35] gfx_mode::dtv_control#23 ← gfx_mode::dtv_control#4 +Coalesced [39] gfx_mode::dtv_control#25 ← gfx_mode::dtv_control#5 +Coalesced [43] gfx_mode::dtv_control#27 ← gfx_mode::dtv_control#6 +Coalesced [51] gfx_mode::vic_control#7 ← gfx_mode::vic_control#2 +Coalesced [112] keyboard_events_size#134 ← keyboard_events_size#13 +Coalesced [113] keyboard_modifiers#114 ← keyboard_modifiers#13 +Coalesced [116] keyboard_events_size#136 ← keyboard_events_size#45 +Coalesced [117] keyboard_modifiers#116 ← keyboard_modifiers#42 +Coalesced [121] keyboard_events_size#141 ← keyboard_events_size#45 +Coalesced [128] keyboard_events_size#137 ← keyboard_events_size#24 +Coalesced [129] keyboard_modifiers#117 ← keyboard_modifiers#21 +Coalesced (already) [130] keyboard_events_size#135 ← keyboard_events_size#24 +Coalesced (already) [131] keyboard_modifiers#115 ← keyboard_modifiers#21 +Coalesced [132] gfx_mode::i#3 ← gfx_mode::i#1 +Coalesced [133] gfx_mode::vic_control#8 ← gfx_mode::vic_control#5 +Coalesced [134] gfx_mode::dtv_control#28 ← gfx_mode::dtv_control#13 +Coalesced [135] gfx_mode::dtv_control#26 ← gfx_mode::dtv_control#11 +Coalesced [136] gfx_mode::dtv_control#24 ← gfx_mode::dtv_control#10 +Coalesced [137] gfx_mode::dtv_control#21 ← gfx_mode::dtv_control#15 +Coalesced [138] gfx_mode::dtv_control#19 ← gfx_mode::dtv_control#14 +Coalesced [140] keyboard_events_size#139 ← keyboard_events_size#105 +Coalesced [145] keyboard_event_get::return#8 ← keyboard_event_get::return#0 +Coalesced [146] keyboard_events_size#138 ← keyboard_events_size#4 +Coalesced [148] keyboard_events_size#142 ← keyboard_events_size#104 +Coalesced [155] keyboard_event_scan::keycode#17 ← keyboard_event_scan::keycode#11 +Coalesced [156] keyboard_events_size#144 ← keyboard_events_size#112 +Coalesced [167] keyboard_events_size#146 ← keyboard_events_size#2 +Coalesced [173] keyboard_event_scan::keycode#19 ← keyboard_event_scan::keycode#15 +Coalesced [174] keyboard_events_size#150 ← keyboard_events_size#111 +Coalesced [190] keyboard_modifiers#118 ← keyboard_modifiers#3 +Coalesced [197] keyboard_modifiers#120 ← keyboard_modifiers#4 +Coalesced [204] keyboard_modifiers#123 ← keyboard_modifiers#5 +Coalesced [207] keyboard_modifiers#122 ← keyboard_modifiers#20 +Coalesced [208] keyboard_modifiers#121 ← keyboard_modifiers#19 +Coalesced [209] keyboard_modifiers#119 ← keyboard_modifiers#18 +Coalesced [210] keyboard_event_scan::row#15 ← keyboard_event_scan::row#1 +Coalesced [211] keyboard_event_scan::keycode#16 ← keyboard_event_scan::keycode#14 +Coalesced (already) [212] keyboard_events_size#143 ← keyboard_events_size#105 +Coalesced [213] keyboard_event_scan::col#9 ← keyboard_event_scan::col#1 +Coalesced (already) [214] keyboard_event_scan::keycode#18 ← keyboard_event_scan::keycode#15 +Coalesced (already) [215] keyboard_events_size#145 ← keyboard_events_size#111 +Coalesced [218] keyboard_events_size#149 ← keyboard_events_size#1 +Coalesced (already) [219] keyboard_events_size#148 ← keyboard_events_size#18 +Coalesced (already) [220] keyboard_events_size#147 ← keyboard_events_size#18 +Coalesced [222] keyboard_event_scan::keycode#20 ← keyboard_event_scan::keycode#1 +Coalesced (already) [223] keyboard_events_size#151 ← keyboard_events_size#112 +Coalesced [247] form_cursor_count#55 ← form_cursor_count#1 +Coalesced [248] keyboard_events_size#153 ← keyboard_events_size#27 +Coalesced [249] keyboard_modifiers#125 ← keyboard_modifiers#24 +Coalesced [250] form_field_idx#63 ← form_field_idx#1 +Coalesced (already) [253] form_cursor_count#57 ← form_cursor_count#21 +Coalesced (already) [254] keyboard_events_size#155 ← keyboard_events_size#47 +Coalesced (already) [255] keyboard_modifiers#127 ← keyboard_modifiers#45 +Coalesced (already) [256] form_field_idx#65 ← form_field_idx#28 +Coalesced [265] form_cursor_count#56 ← form_cursor_count#16 +Coalesced (already) [266] keyboard_events_size#154 ← keyboard_events_size#24 +Coalesced (already) [267] keyboard_modifiers#126 ← keyboard_modifiers#21 +Coalesced [268] form_field_idx#64 ← form_field_idx#18 +Coalesced (already) [269] form_cursor_count#54 ← form_cursor_count#16 +Coalesced (already) [270] keyboard_events_size#152 ← keyboard_events_size#24 +Coalesced (already) [271] keyboard_modifiers#124 ← keyboard_modifiers#21 +Coalesced (already) [272] form_field_idx#62 ← form_field_idx#18 +Coalesced [273] form_mode::i#3 ← form_mode::i#1 +Coalesced [275] form_field_ptr::field_idx#3 ← form_field_ptr::field_idx#1 +Coalesced (already) [286] keyboard_events_size#140 ← keyboard_events_size#47 +Coalesced [301] form_field_idx#71 ← form_field_idx#32 +Coalesced [304] form_field_idx#66 ← form_field_idx#43 +Coalesced [308] form_field_idx#67 ← form_field_idx#44 +Coalesced [316] form_cursor_count#59 ← form_cursor_count#15 +Coalesced (already) [317] form_field_idx#68 ← form_field_idx#28 +Coalesced (already) [322] form_cursor_count#61 ← form_cursor_count#15 +Coalesced (already) [323] form_field_idx#70 ← form_field_idx#28 +Coalesced (already) [324] form_cursor_count#60 ← form_cursor_count#15 +Coalesced (already) [325] form_field_idx#69 ← form_field_idx#28 +Coalesced [328] form_cursor_count#58 ← form_cursor_count#5 +Coalesced [355] form_field_ptr::field_idx#4 ← form_field_ptr::field_idx#0 +Coalesced [363] form_render_values::idx#4 ← form_render_values::idx#1 +Coalesced [374] form_set_screen::line#3 ← form_set_screen::line#1 +Coalesced [375] form_set_screen::y#3 ← form_set_screen::y#1 +Coalesced [377] print_str_lines::str#11 ← print_str_lines::str#5 +Not coalescing [378] print_char_cursor#60 ← print_screen#1 +Coalesced [379] print_line_cursor#60 ← print_screen#1 +Coalesced [383] print_str_lines::str#13 ← print_str_lines::str#3 +Coalesced [384] print_char_cursor#62 ← print_char_cursor#22 +Coalesced [391] print_char_cursor#65 ← print_char_cursor#1 +Coalesced [396] print_str_lines::str#12 ← print_str_lines::str#0 +Not coalescing [397] print_char_cursor#61 ← print_line_cursor#22 +Coalesced [398] print_line_cursor#61 ← print_line_cursor#22 +Coalesced (already) [399] print_str_lines::str#14 ← print_str_lines::str#0 +Coalesced [400] print_char_cursor#63 ← print_char_cursor#38 +Coalesced (already) [401] print_char_cursor#64 ← print_char_cursor#20 +Coalesced [402] print_line_cursor#62 ← print_line_cursor#2 +Coalesced (already) [407] print_line_cursor#63 ← print_line_cursor#22 +Coalesced [409] print_cls::sc#3 ← print_cls::sc#0 +Coalesced [416] print_cls::sc#4 ← print_cls::sc#1 +Coalesced [418] print_screen#1 ← print_set_screen::screen#2 +Coalesced [428] gfx_init_plane_8bppchunky::gfxb#8 ← gfx_init_plane_8bppchunky::gfxb#5 +Coalesced [429] gfx_init_plane_8bppchunky::gfxbCpuBank#11 ← gfx_init_plane_8bppchunky::gfxbCpuBank#7 +Coalesced [433] dtvSetCpuBankSegment1::cpuBankIdx#4 ← dtvSetCpuBankSegment1::cpuBankIdx#1 +Coalesced [436] gfx_init_plane_8bppchunky::gfxbCpuBank#14 ← gfx_init_plane_8bppchunky::gfxbCpuBank#2 +Coalesced [449] gfx_init_plane_8bppchunky::gfxb#7 ← gfx_init_plane_8bppchunky::gfxb#1 +Coalesced [450] gfx_init_plane_8bppchunky::y#8 ← gfx_init_plane_8bppchunky::y#1 +Coalesced [451] gfx_init_plane_8bppchunky::gfxbCpuBank#10 ← gfx_init_plane_8bppchunky::gfxbCpuBank#8 +Coalesced (already) [452] gfx_init_plane_8bppchunky::gfxb#9 ← gfx_init_plane_8bppchunky::gfxb#1 +Coalesced [453] gfx_init_plane_8bppchunky::x#6 ← gfx_init_plane_8bppchunky::x#1 +Coalesced (already) [454] gfx_init_plane_8bppchunky::gfxbCpuBank#12 ← gfx_init_plane_8bppchunky::gfxbCpuBank#8 +Coalesced [455] gfx_init_plane_8bppchunky::gfxb#10 ← gfx_init_plane_8bppchunky::gfxb#3 +Coalesced (already) [456] gfx_init_plane_8bppchunky::gfxbCpuBank#13 ← gfx_init_plane_8bppchunky::gfxbCpuBank#4 +Coalesced [463] gfx_init_screen_stdchar::ch#6 ← gfx_init_screen_stdchar::ch#3 +Coalesced [476] gfx_init_screen_stdchar::cy#5 ← gfx_init_screen_stdchar::cy#1 +Coalesced [477] gfx_init_screen_stdchar::ch#5 ← gfx_init_screen_stdchar::ch#1 +Coalesced [478] gfx_init_screen_stdchar::cx#3 ← gfx_init_screen_stdchar::cx#1 +Coalesced (already) [479] gfx_init_screen_stdchar::ch#7 ← gfx_init_screen_stdchar::ch#1 +Coalesced down to 31 phi equivalence classes +Not culling empty block because it shares successor with its predecessor. (label) gfx_mode::@18 +Not culling empty block because it shares successor with its predecessor. (label) gfx_mode::@24 +Not culling empty block because it shares successor with its predecessor. (label) gfx_mode::@26 +Culled Empty Block (label) gfx_mode::@45 +Culled Empty Block (label) gfx_mode::@47 +Culled Empty Block (label) gfx_mode::@48 +Culled Empty Block (label) gfx_mode::@46 +Culled Empty Block (label) gfx_mode::@44 +Culled Empty Block (label) gfx_mode::@43 +Culled Empty Block (label) gfx_mode::@42 +Culled Empty Block (label) gfx_mode::@41 +Culled Empty Block (label) gfx_mode::@40 +Culled Empty Block (label) gfx_mode::@39 +Culled Empty Block (label) gfx_mode::@38 Culled Empty Block (label) keyboard_event_get::@7 Culled Empty Block (label) keyboard_event_scan::@32 Not culling empty block because it shares successor with its predecessor. (label) keyboard_event_scan::@21 @@ -8718,49 +9770,124 @@ Culled Empty Block (label) keyboard_event_scan::@30 Culled Empty Block (label) keyboard_event_scan::@31 Culled Empty Block (label) keyboard_event_scan::@34 Culled Empty Block (label) keyboard_event_scan::@33 -Culled Empty Block (label) form_mode::@3 +Culled Empty Block (label) form_mode::@23 +Culled Empty Block (label) form_mode::@22 +Culled Empty Block (label) form_mode::@21 +Culled Empty Block (label) form_mode::@20 +Culled Empty Block (label) form_control::@15 +Culled Empty Block (label) form_control::@20 +Not culling empty block because it shares successor with its predecessor. (label) form_control::@37 +Culled Empty Block (label) form_control::@22 +Not culling empty block because it shares successor with its predecessor. (label) form_control::@38 +Culled Empty Block (label) form_control::@30 +Not culling empty block because it shares successor with its predecessor. (label) form_control::@39 +Not culling empty block because it shares successor with its predecessor. (label) form_control::@36 Culled Empty Block (label) form_render_values::@4 Culled Empty Block (label) form_set_screen::@3 Culled Empty Block (label) print_str_lines::@12 Culled Empty Block (label) print_str_lines::@13 Culled Empty Block (label) print_str_lines::@14 Culled Empty Block (label) print_ln::@3 +Culled Empty Block (label) print_cls::@3 Culled Empty Block (label) gfx_init_plane_8bppchunky::@10 Culled Empty Block (label) gfx_init_plane_8bppchunky::@11 Culled Empty Block (label) gfx_init_plane_8bppchunky::@12 -Block Sequence Planned @begin @32 @end main main::@19 main::@20 main::@1 main::@return main::@4 main::@6 main::@7 main::@9 main::@23 gfx_mode gfx_mode::@11 gfx_mode::@1 gfx_mode::@12 gfx_mode::@2 gfx_mode::@13 gfx_mode::@3 gfx_mode::@14 gfx_mode::@4 gfx_mode::@15 gfx_mode::@5 gfx_mode::@16 gfx_mode::@6 gfx_mode::@17 gfx_mode::@7 gfx_mode::@18 gfx_mode::@8 gfx_mode::@19 gfx_mode::@9 gfx_mode::@10 gfx_mode::@return form_control form_control::@29 form_control::@1 form_control::@15 form_control::@3 form_control::@30 form_control::@31 form_control::@17 form_control::@18 form_control::@7 form_control::@return form_control::@33 form_control::@5 form_control::@34 form_control::@4 form_control::@23 form_control::@24 form_control::@25 form_control::@12 form_control::@10 form_control::@27 form_control::@2 form_control::@32 keyboard_event_get keyboard_event_get::@return keyboard_event_get::@1 keyboard_event_scan keyboard_event_scan::@1 keyboard_event_scan::@25 keyboard_event_scan::@3 keyboard_event_scan::@14 keyboard_event_scan::@15 keyboard_event_scan::@16 keyboard_event_scan::@4 keyboard_event_scan::@18 keyboard_event_scan::@8 keyboard_event_scan::@20 keyboard_event_scan::@26 keyboard_event_scan::@21 keyboard_event_scan::@9 keyboard_event_scan::@27 keyboard_event_scan::@22 keyboard_event_scan::@10 keyboard_event_scan::@28 keyboard_event_scan::@23 keyboard_event_scan::@11 keyboard_event_scan::@29 keyboard_event_scan::@24 keyboard_event_scan::@return keyboard_event_scan::@6 keyboard_event_scan::@2 keyboard_event_pressed keyboard_event_pressed::@return keyboard_matrix_read keyboard_matrix_read::@return form_field_ptr form_field_ptr::@return form_mode form_mode::@1 form_mode::@2 form_mode::@return form_init form_init::@1 form_init::@2 form_init::@3 form_init::@4 form_init::@5 form_init::@return form_render_values form_render_values::@1 form_render_values::@3 form_render_values::@return form_set_screen form_set_screen::@1 form_set_screen::@return print_str_lines print_str_lines::@1 print_str_lines::@return print_str_lines::@4 print_str_lines::@8 print_str_lines::@5 print_str_lines::@9 print_ln print_ln::@1 print_ln::@return print_set_screen print_set_screen::@return gfx_init gfx_init::@return gfx_init_plane_8bppchunky gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@4 gfx_init_plane_8bppchunky::@8 gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@5 gfx_init_plane_8bppchunky::@6 gfx_init_plane_8bppchunky::@return dtvSetCpuBankSegment1 dtvSetCpuBankSegment1::@return keyboard_init keyboard_init::@return +Culled Empty Block (label) gfx_init_screen_stdchar::@5 +Culled Empty Block (label) gfx_init_screen_stdchar::@6 +Block Sequence Planned @begin @33 @end main main::@7 main::@8 main::@1 main::@return main::@2 main::@10 gfx_mode gfx_mode::@18 gfx_mode::@1 gfx_mode::@19 gfx_mode::@2 gfx_mode::@20 gfx_mode::@3 gfx_mode::@21 gfx_mode::@4 gfx_mode::@22 gfx_mode::@5 gfx_mode::@23 gfx_mode::@6 gfx_mode::@24 gfx_mode::@7 gfx_mode::@25 gfx_mode::@8 gfx_mode::@26 gfx_mode::@9 gfx_mode::@10 gfx_mode::@11 gfx_mode::@return gfx_mode::@14 gfx_mode::@16 gfx_mode::@36 gfx_mode::@37 keyboard_event_get keyboard_event_get::@return keyboard_event_get::@1 keyboard_event_scan keyboard_event_scan::@1 keyboard_event_scan::@25 keyboard_event_scan::@3 keyboard_event_scan::@14 keyboard_event_scan::@15 keyboard_event_scan::@16 keyboard_event_scan::@4 keyboard_event_scan::@18 keyboard_event_scan::@8 keyboard_event_scan::@20 keyboard_event_scan::@26 keyboard_event_scan::@21 keyboard_event_scan::@9 keyboard_event_scan::@27 keyboard_event_scan::@22 keyboard_event_scan::@10 keyboard_event_scan::@28 keyboard_event_scan::@23 keyboard_event_scan::@11 keyboard_event_scan::@29 keyboard_event_scan::@24 keyboard_event_scan::@return keyboard_event_scan::@6 keyboard_event_scan::@2 keyboard_event_pressed keyboard_event_pressed::@return keyboard_matrix_read keyboard_matrix_read::@return form_mode form_mode::@1 form_mode::@9 form_mode::@2 form_mode::@return form_mode::@5 form_mode::@7 form_mode::@19 form_control form_control::@33 form_control::@1 form_control::@16 form_control::@3 form_control::@34 form_control::@35 form_control::@18 form_control::@19 form_control::@7 form_control::@return form_control::@37 form_control::@5 form_control::@38 form_control::@4 form_control::@24 form_control::@25 form_control::@26 form_control::@12 form_control::@10 form_control::@28 form_control::@9 form_control::@39 form_control::@2 form_control::@36 form_field_ptr form_field_ptr::@return form_init form_init::@1 form_init::@2 form_init::@3 form_init::@4 form_init::@5 form_init::@6 form_init::@7 form_init::@return form_render_values form_render_values::@1 form_render_values::@3 form_render_values::@return form_set_screen form_set_screen::@1 form_set_screen::@return print_str_lines print_str_lines::@1 print_str_lines::@return print_str_lines::@4 print_str_lines::@8 print_str_lines::@5 print_str_lines::@9 print_ln print_ln::@1 print_ln::@return print_cls print_cls::@1 print_cls::@return print_set_screen print_set_screen::@return gfx_init gfx_init::@1 gfx_init::@return gfx_init_plane_8bppchunky gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@4 gfx_init_plane_8bppchunky::@8 gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@5 gfx_init_plane_8bppchunky::@6 gfx_init_plane_8bppchunky::@return dtvSetCpuBankSegment1 dtvSetCpuBankSegment1::@return gfx_init_screen_stdchar gfx_init_screen_stdchar::@1 gfx_init_screen_stdchar::@2 gfx_init_screen_stdchar::@3 gfx_init_screen_stdchar::@return keyboard_init keyboard_init::@return Adding NOP phi() at start of @begin -Adding NOP phi() at start of @32 +Adding NOP phi() at start of @33 Adding NOP phi() at start of @end -Adding NOP phi() at start of main::@19 -Adding NOP phi() at start of main::@20 -Adding NOP phi() at start of main::@6 -Adding NOP phi() at start of main::@9 -Adding NOP phi() at start of main::@23 -Adding NOP phi() at start of gfx_mode::@11 -Adding NOP phi() at start of gfx_mode::@17 -Adding NOP phi() at start of gfx_mode::@19 -Adding NOP phi() at start of form_control::@3 -Adding NOP phi() at start of form_control::@30 -Adding NOP phi() at start of form_control::@33 -Adding NOP phi() at start of form_control::@34 -Adding NOP phi() at start of form_control::@32 -Adding NOP phi() at start of keyboard_event_scan +Adding NOP phi() at start of main::@7 +Adding NOP phi() at start of main::@8 +Adding NOP phi() at start of main::@2 +Adding NOP phi() at start of main::@10 +Adding NOP phi() at start of gfx_mode::@18 +Adding NOP phi() at start of gfx_mode::@24 +Adding NOP phi() at start of gfx_mode::@26 +Adding NOP phi() at start of gfx_mode::@16 +Adding NOP phi() at start of gfx_mode::@36 Adding NOP phi() at start of keyboard_event_scan::@20 Adding NOP phi() at start of keyboard_event_scan::@21 +Adding NOP phi() at start of form_mode::@7 +Adding NOP phi() at start of form_control::@3 +Adding NOP phi() at start of form_control::@34 +Adding NOP phi() at start of form_control::@37 +Adding NOP phi() at start of form_control::@38 +Adding NOP phi() at start of form_control::@39 +Adding NOP phi() at start of form_control::@36 Adding NOP phi() at start of form_init Adding NOP phi() at start of form_init::@1 Adding NOP phi() at start of form_init::@2 Adding NOP phi() at start of form_init::@3 Adding NOP phi() at start of form_init::@4 Adding NOP phi() at start of form_init::@5 +Adding NOP phi() at start of form_init::@6 +Adding NOP phi() at start of form_init::@7 Adding NOP phi() at start of form_render_values Adding NOP phi() at start of form_set_screen Adding NOP phi() at start of print_str_lines::@9 Adding NOP phi() at start of print_ln Adding NOP phi() at start of gfx_init +Adding NOP phi() at start of gfx_init::@1 Adding NOP phi() at start of gfx_init_plane_8bppchunky Adding NOP phi() at start of gfx_init_plane_8bppchunky::@6 +Adding NOP phi() at start of gfx_init_screen_stdchar +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... Propagating live ranges... Propagating live ranges... Propagating live ranges... @@ -8789,820 +9916,954 @@ Propagating live ranges... FINAL CONTROL FLOW GRAPH @begin: scope:[] from [0] phi() [ ] ( ) - to:@32 -@32: scope:[] from @begin + to:@33 +@33: scope:[] from @begin [1] phi() [ ] ( ) [2] call main param-assignment [ ] ( ) to:@end -@end: scope:[] from @32 +@end: scope:[] from @33 [3] phi() [ ] ( ) -main: scope:[main] from @32 +main: scope:[main] from @33 asm { sei } [5] *((const byte*) DTV_FEATURE#0) ← (const byte) DTV_FEATURE_ENABLE#0 [ ] ( main:2 [ ] ) [6] call keyboard_init param-assignment [ ] ( main:2 [ ] ) - to:main::@19 -main::@19: scope:[main] from main + to:main::@7 +main::@7: scope:[main] from main [7] phi() [ ] ( main:2 [ ] ) [8] call gfx_init param-assignment [ ] ( main:2 [ ] ) - to:main::@20 -main::@20: scope:[main] from main::@19 + to:main::@8 +main::@8: scope:[main] from main::@7 [9] phi() [ ] ( main:2 [ ] ) [10] call form_init param-assignment [ ] ( main:2 [ ] ) to:main::@1 -main::@1: scope:[main] from main::@20 main::@23 - [11] (byte) form_field_idx#1 ← phi( main::@20/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@23/(byte) form_field_idx#14 ) [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [11] (byte) keyboard_events_size#20 ← phi( main::@20/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@23/(byte) keyboard_events_size#18 ) [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [11] (signed byte) form_cursor_count#1 ← phi( main::@20/(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 main::@23/(signed byte) form_cursor_count#12 ) [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [12] if(true) goto main::@4 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) +main::@1: scope:[main] from main::@10 main::@8 + [11] (byte) form_field_idx#1 ← phi( main::@10/(byte) form_field_idx#14 main::@8/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [11] (byte) keyboard_modifiers#24 ← phi( main::@10/(byte) keyboard_modifiers#11 main::@8/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [11] (byte) keyboard_events_size#27 ← phi( main::@10/(byte) keyboard_events_size#11 main::@8/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [11] (signed byte) form_cursor_count#1 ← phi( main::@10/(signed byte) form_cursor_count#13 main::@8/(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 ) [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [12] if(true) goto main::@2 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) to:main::@return main::@return: scope:[main] from main::@1 [13] return [ ] ( main:2 [ ] ) to:@return -main::@4: scope:[main] from main::@1 main::@4 - [14] if(*((const byte*) RASTER#0)!=(byte/signed byte/word/signed word/dword/signed dword) 48+(byte/signed byte/word/signed word/dword/signed dword) 8*(byte/signed byte/word/signed word/dword/signed dword) 16) goto main::@4 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - to:main::@6 -main::@6: scope:[main] from main::@4 - [15] phi() [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [16] call form_mode param-assignment [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - to:main::@7 -main::@7: scope:[main] from main::@6 main::@7 - [17] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto main::@7 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - to:main::@9 -main::@9: scope:[main] from main::@7 - [18] phi() [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [19] call form_control param-assignment [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ( main:2 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - to:main::@23 -main::@23: scope:[main] from main::@9 - [20] phi() [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ( main:2 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [21] call gfx_mode param-assignment [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ( main:2 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) +main::@2: scope:[main] from main::@1 + [14] phi() [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [15] call form_mode param-assignment [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:main::@10 +main::@10: scope:[main] from main::@2 + [16] phi() [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [17] call gfx_mode param-assignment [ form_cursor_count#13 keyboard_events_size#11 keyboard_modifiers#11 form_field_idx#14 ] ( main:2 [ form_cursor_count#13 keyboard_events_size#11 keyboard_modifiers#11 form_field_idx#14 ] ) to:main::@1 -gfx_mode: scope:[gfx_mode] from main::@23 - [22] if(*((const byte*) form_ctrl_line#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@1 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - to:gfx_mode::@11 -gfx_mode::@11: scope:[gfx_mode] from gfx_mode - [23] phi() [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - to:gfx_mode::@1 -gfx_mode::@1: scope:[gfx_mode] from gfx_mode gfx_mode::@11 - [24] (byte) gfx_mode::dtv_control#14 ← phi( gfx_mode/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_mode::@11/(byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) DTV_LINEAR#0 ) [ gfx_mode::dtv_control#14 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#14 ] ) - [25] if(*((const byte*) form_ctrl_borof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@2 [ gfx_mode::dtv_control#14 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#14 ] ) - to:gfx_mode::@12 -gfx_mode::@12: scope:[gfx_mode] from gfx_mode::@1 - [26] (byte) gfx_mode::dtv_control#2 ← (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 [ gfx_mode::dtv_control#2 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#2 ] ) - to:gfx_mode::@2 -gfx_mode::@2: scope:[gfx_mode] from gfx_mode::@1 gfx_mode::@12 - [27] (byte) gfx_mode::dtv_control#15 ← phi( gfx_mode::@1/(byte) gfx_mode::dtv_control#14 gfx_mode::@12/(byte) gfx_mode::dtv_control#2 ) [ gfx_mode::dtv_control#15 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#15 ] ) - [28] if(*((const byte*) form_ctrl_hicol#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@3 [ gfx_mode::dtv_control#15 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#15 ] ) - to:gfx_mode::@13 -gfx_mode::@13: scope:[gfx_mode] from gfx_mode::@2 - [29] (byte) gfx_mode::dtv_control#3 ← (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 [ gfx_mode::dtv_control#3 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#3 ] ) - to:gfx_mode::@3 -gfx_mode::@3: scope:[gfx_mode] from gfx_mode::@13 gfx_mode::@2 - [30] (byte) gfx_mode::dtv_control#10 ← phi( gfx_mode::@13/(byte) gfx_mode::dtv_control#3 gfx_mode::@2/(byte) gfx_mode::dtv_control#15 ) [ gfx_mode::dtv_control#10 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#10 ] ) - [31] if(*((const byte*) form_ctrl_overs#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@4 [ gfx_mode::dtv_control#10 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#10 ] ) - to:gfx_mode::@14 -gfx_mode::@14: scope:[gfx_mode] from gfx_mode::@3 - [32] (byte) gfx_mode::dtv_control#4 ← (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 [ gfx_mode::dtv_control#4 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#4 ] ) - to:gfx_mode::@4 -gfx_mode::@4: scope:[gfx_mode] from gfx_mode::@14 gfx_mode::@3 - [33] (byte) gfx_mode::dtv_control#11 ← phi( gfx_mode::@14/(byte) gfx_mode::dtv_control#4 gfx_mode::@3/(byte) gfx_mode::dtv_control#10 ) [ gfx_mode::dtv_control#11 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#11 ] ) - [34] if(*((const byte*) form_ctrl_colof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@5 [ gfx_mode::dtv_control#11 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#11 ] ) - to:gfx_mode::@15 -gfx_mode::@15: scope:[gfx_mode] from gfx_mode::@4 - [35] (byte) gfx_mode::dtv_control#5 ← (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 [ gfx_mode::dtv_control#5 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#5 ] ) - to:gfx_mode::@5 -gfx_mode::@5: scope:[gfx_mode] from gfx_mode::@15 gfx_mode::@4 - [36] (byte) gfx_mode::dtv_control#13 ← phi( gfx_mode::@15/(byte) gfx_mode::dtv_control#5 gfx_mode::@4/(byte) gfx_mode::dtv_control#11 ) [ gfx_mode::dtv_control#13 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#13 ] ) - [37] if(*((const byte*) form_ctrl_chunk#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@6 [ gfx_mode::dtv_control#13 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#13 ] ) - to:gfx_mode::@16 -gfx_mode::@16: scope:[gfx_mode] from gfx_mode::@5 - [38] (byte) gfx_mode::dtv_control#6 ← (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 [ gfx_mode::dtv_control#6 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#6 ] ) - to:gfx_mode::@6 -gfx_mode::@6: scope:[gfx_mode] from gfx_mode::@16 gfx_mode::@5 - [39] (byte) gfx_mode::dtv_control#12 ← phi( gfx_mode::@16/(byte) gfx_mode::dtv_control#6 gfx_mode::@5/(byte) gfx_mode::dtv_control#13 ) [ gfx_mode::dtv_control#12 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#12 ] ) - [40] *((const byte*) DTV_CONTROL#0) ← (byte) gfx_mode::dtv_control#12 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [41] if(*((const byte*) form_ctrl_ecm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@7 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - to:gfx_mode::@17 -gfx_mode::@17: scope:[gfx_mode] from gfx_mode::@6 - [42] phi() [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - to:gfx_mode::@7 -gfx_mode::@7: scope:[gfx_mode] from gfx_mode::@17 gfx_mode::@6 - [43] (byte) gfx_mode::vic_control#5 ← phi( gfx_mode::@17/(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3|(const byte) VIC_ECM#0 gfx_mode::@6/(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 ) [ gfx_mode::vic_control#5 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::vic_control#5 ] ) - [44] if(*((const byte*) form_ctrl_bmm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@8 [ gfx_mode::vic_control#5 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::vic_control#5 ] ) +gfx_mode: scope:[gfx_mode] from main::@10 + [18] if(*((const byte*) form_ctrl_line#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@1 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) to:gfx_mode::@18 -gfx_mode::@18: scope:[gfx_mode] from gfx_mode::@7 - [45] (byte) gfx_mode::vic_control#2 ← (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 [ gfx_mode::vic_control#2 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::vic_control#2 ] ) - to:gfx_mode::@8 -gfx_mode::@8: scope:[gfx_mode] from gfx_mode::@18 gfx_mode::@7 - [46] (byte) gfx_mode::vic_control#4 ← phi( gfx_mode::@18/(byte) gfx_mode::vic_control#2 gfx_mode::@7/(byte) gfx_mode::vic_control#5 ) [ gfx_mode::vic_control#4 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::vic_control#4 ] ) - [47] *((const byte*) VIC_CONTROL#0) ← (byte) gfx_mode::vic_control#4 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [48] if(*((const byte*) form_ctrl_mcm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@9 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) +gfx_mode::@18: scope:[gfx_mode] from gfx_mode + [19] phi() [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@1 +gfx_mode::@1: scope:[gfx_mode] from gfx_mode gfx_mode::@18 + [20] (byte) gfx_mode::dtv_control#14 ← phi( gfx_mode/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_mode::@18/(byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) DTV_LINEAR#0 ) [ gfx_mode::dtv_control#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [21] if(*((const byte*) form_ctrl_borof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@2 [ gfx_mode::dtv_control#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) to:gfx_mode::@19 -gfx_mode::@19: scope:[gfx_mode] from gfx_mode::@8 - [49] phi() [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) +gfx_mode::@19: scope:[gfx_mode] from gfx_mode::@1 + [22] (byte) gfx_mode::dtv_control#2 ← (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 [ gfx_mode::dtv_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@2 +gfx_mode::@2: scope:[gfx_mode] from gfx_mode::@1 gfx_mode::@19 + [23] (byte) gfx_mode::dtv_control#15 ← phi( gfx_mode::@1/(byte) gfx_mode::dtv_control#14 gfx_mode::@19/(byte) gfx_mode::dtv_control#2 ) [ gfx_mode::dtv_control#15 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#15 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [24] if(*((const byte*) form_ctrl_hicol#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@3 [ gfx_mode::dtv_control#15 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#15 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@20 +gfx_mode::@20: scope:[gfx_mode] from gfx_mode::@2 + [25] (byte) gfx_mode::dtv_control#3 ← (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 [ gfx_mode::dtv_control#3 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#3 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@3 +gfx_mode::@3: scope:[gfx_mode] from gfx_mode::@2 gfx_mode::@20 + [26] (byte) gfx_mode::dtv_control#10 ← phi( gfx_mode::@2/(byte) gfx_mode::dtv_control#15 gfx_mode::@20/(byte) gfx_mode::dtv_control#3 ) [ gfx_mode::dtv_control#10 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#10 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [27] if(*((const byte*) form_ctrl_overs#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@4 [ gfx_mode::dtv_control#10 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#10 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@21 +gfx_mode::@21: scope:[gfx_mode] from gfx_mode::@3 + [28] (byte) gfx_mode::dtv_control#4 ← (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 [ gfx_mode::dtv_control#4 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#4 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@4 +gfx_mode::@4: scope:[gfx_mode] from gfx_mode::@21 gfx_mode::@3 + [29] (byte) gfx_mode::dtv_control#11 ← phi( gfx_mode::@21/(byte) gfx_mode::dtv_control#4 gfx_mode::@3/(byte) gfx_mode::dtv_control#10 ) [ gfx_mode::dtv_control#11 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#11 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [30] if(*((const byte*) form_ctrl_colof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@5 [ gfx_mode::dtv_control#11 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#11 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@22 +gfx_mode::@22: scope:[gfx_mode] from gfx_mode::@4 + [31] (byte) gfx_mode::dtv_control#5 ← (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 [ gfx_mode::dtv_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@5 +gfx_mode::@5: scope:[gfx_mode] from gfx_mode::@22 gfx_mode::@4 + [32] (byte) gfx_mode::dtv_control#13 ← phi( gfx_mode::@22/(byte) gfx_mode::dtv_control#5 gfx_mode::@4/(byte) gfx_mode::dtv_control#11 ) [ gfx_mode::dtv_control#13 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#13 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [33] if(*((const byte*) form_ctrl_chunk#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@6 [ gfx_mode::dtv_control#13 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#13 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@23 +gfx_mode::@23: scope:[gfx_mode] from gfx_mode::@5 + [34] (byte) gfx_mode::dtv_control#6 ← (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 [ gfx_mode::dtv_control#6 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#6 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@6 +gfx_mode::@6: scope:[gfx_mode] from gfx_mode::@23 gfx_mode::@5 + [35] (byte) gfx_mode::dtv_control#12 ← phi( gfx_mode::@23/(byte) gfx_mode::dtv_control#6 gfx_mode::@5/(byte) gfx_mode::dtv_control#13 ) [ gfx_mode::dtv_control#12 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#12 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [36] *((const byte*) DTV_CONTROL#0) ← (byte) gfx_mode::dtv_control#12 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [37] if(*((const byte*) form_ctrl_ecm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@7 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@24 +gfx_mode::@24: scope:[gfx_mode] from gfx_mode::@6 + [38] phi() [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@7 +gfx_mode::@7: scope:[gfx_mode] from gfx_mode::@24 gfx_mode::@6 + [39] (byte) gfx_mode::vic_control#5 ← phi( gfx_mode::@24/(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3|(const byte) VIC_ECM#0 gfx_mode::@6/(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 ) [ gfx_mode::vic_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::vic_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [40] if(*((const byte*) form_ctrl_bmm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@8 [ gfx_mode::vic_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::vic_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@25 +gfx_mode::@25: scope:[gfx_mode] from gfx_mode::@7 + [41] (byte) gfx_mode::vic_control#2 ← (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 [ gfx_mode::vic_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::vic_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@8 +gfx_mode::@8: scope:[gfx_mode] from gfx_mode::@25 gfx_mode::@7 + [42] (byte) gfx_mode::vic_control#4 ← phi( gfx_mode::@25/(byte) gfx_mode::vic_control#2 gfx_mode::@7/(byte) gfx_mode::vic_control#5 ) [ gfx_mode::vic_control#4 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::vic_control#4 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [43] *((const byte*) VIC_CONTROL#0) ← (byte) gfx_mode::vic_control#4 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [44] if(*((const byte*) form_ctrl_mcm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@9 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@26 +gfx_mode::@26: scope:[gfx_mode] from gfx_mode::@8 + [45] phi() [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) to:gfx_mode::@9 -gfx_mode::@9: scope:[gfx_mode] from gfx_mode::@19 gfx_mode::@8 - [50] (byte) gfx_mode::vic_control2#2 ← phi( gfx_mode::@19/(const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 gfx_mode::@8/(const byte) VIC_CSEL#0 ) [ gfx_mode::vic_control2#2 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::vic_control2#2 ] ) - [51] *((const byte*) VIC_CONTROL2#0) ← (byte) gfx_mode::vic_control2#2 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [52] (byte~) gfx_mode::$29 ← *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$29 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$29 ] ) - [53] (byte) gfx_mode::plane_a_offs#0 ← (byte~) gfx_mode::$29 | *((const byte*) form_a_start_lo#0) [ gfx_mode::plane_a_offs#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a_offs#0 ] ) - [54] (dword) gfx_mode::plane_a#0 ← ((dword))(const byte*) FORM_SCREEN#0 + (byte) gfx_mode::plane_a_offs#0 [ gfx_mode::plane_a#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 ] ) - [55] (word~) gfx_mode::$33 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$33 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$33 ] ) - [56] (byte~) gfx_mode::$34 ← < (word~) gfx_mode::$33 [ gfx_mode::plane_a#0 gfx_mode::$34 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$34 ] ) - [57] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte~) gfx_mode::$34 [ gfx_mode::plane_a#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 ] ) - [58] (word~) gfx_mode::$35 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$35 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$35 ] ) - [59] (byte~) gfx_mode::$36 ← > (word~) gfx_mode::$35 [ gfx_mode::plane_a#0 gfx_mode::$36 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$36 ] ) - [60] *((const byte*) DTV_PLANEA_START_MI#0) ← (byte~) gfx_mode::$36 [ gfx_mode::plane_a#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 ] ) - [61] (word~) gfx_mode::$37 ← > (dword) gfx_mode::plane_a#0 [ gfx_mode::$37 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$37 ] ) - [62] (byte~) gfx_mode::$38 ← < (word~) gfx_mode::$37 [ gfx_mode::$38 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$38 ] ) - [63] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte~) gfx_mode::$38 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [64] (byte~) gfx_mode::$39 ← *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$39 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$39 ] ) - [65] (byte~) gfx_mode::$40 ← (byte~) gfx_mode::$39 | *((const byte*) form_a_step_lo#0) [ gfx_mode::$40 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$40 ] ) - [66] *((const byte*) DTV_PLANEA_STEP#0) ← (byte~) gfx_mode::$40 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [67] (byte~) gfx_mode::$41 ← *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$41 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$41 ] ) - [68] (byte~) gfx_mode::$42 ← (byte~) gfx_mode::$41 | *((const byte*) form_a_mod_lo#0) [ gfx_mode::$42 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$42 ] ) - [69] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte~) gfx_mode::$42 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [70] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [71] (byte~) gfx_mode::$43 ← *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$43 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$43 ] ) - [72] (byte) gfx_mode::plane_b_offs#0 ← (byte~) gfx_mode::$43 | *((const byte*) form_b_start_lo#0) [ gfx_mode::plane_b_offs#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b_offs#0 ] ) - [73] (dword) gfx_mode::plane_b#0 ← (const dword) PLANE_8BPP_CHUNKY#0 + (byte) gfx_mode::plane_b_offs#0 [ gfx_mode::plane_b#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 ] ) - [74] (word~) gfx_mode::$46 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$46 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$46 ] ) - [75] (byte~) gfx_mode::$47 ← < (word~) gfx_mode::$46 [ gfx_mode::plane_b#0 gfx_mode::$47 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$47 ] ) - [76] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte~) gfx_mode::$47 [ gfx_mode::plane_b#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 ] ) - [77] (word~) gfx_mode::$48 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$48 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$48 ] ) - [78] (byte~) gfx_mode::$49 ← > (word~) gfx_mode::$48 [ gfx_mode::plane_b#0 gfx_mode::$49 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$49 ] ) - [79] *((const byte*) DTV_PLANEB_START_MI#0) ← (byte~) gfx_mode::$49 [ gfx_mode::plane_b#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 ] ) - [80] (word~) gfx_mode::$50 ← > (dword) gfx_mode::plane_b#0 [ gfx_mode::$50 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$50 ] ) - [81] (byte~) gfx_mode::$51 ← < (word~) gfx_mode::$50 [ gfx_mode::$51 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$51 ] ) - [82] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte~) gfx_mode::$51 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [83] (byte~) gfx_mode::$52 ← *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$52 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$52 ] ) - [84] (byte~) gfx_mode::$53 ← (byte~) gfx_mode::$52 | *((const byte*) form_b_step_lo#0) [ gfx_mode::$53 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$53 ] ) - [85] *((const byte*) DTV_PLANEB_STEP#0) ← (byte~) gfx_mode::$53 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [86] (byte~) gfx_mode::$54 ← *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$54 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$54 ] ) - [87] (byte~) gfx_mode::$55 ← (byte~) gfx_mode::$54 | *((const byte*) form_b_mod_lo#0) [ gfx_mode::$55 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$55 ] ) - [88] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte~) gfx_mode::$55 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [89] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [90] (byte~) gfx_mode::$56 ← *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$56 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$56 ] ) - [91] (byte~) gfx_mode::$57 ← (byte~) gfx_mode::$56 | *((const byte*) form_vic_bg0_lo#0) [ gfx_mode::$57 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$57 ] ) - [92] *((const byte*) BGCOL1#0) ← (byte~) gfx_mode::$57 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [93] (byte~) gfx_mode::$58 ← *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$58 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$58 ] ) - [94] (byte~) gfx_mode::$59 ← (byte~) gfx_mode::$58 | *((const byte*) form_vic_bg1_lo#0) [ gfx_mode::$59 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$59 ] ) - [95] *((const byte*) BGCOL2#0) ← (byte~) gfx_mode::$59 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [96] (byte~) gfx_mode::$60 ← *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$60 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$60 ] ) - [97] (byte~) gfx_mode::$61 ← (byte~) gfx_mode::$60 | *((const byte*) form_vic_bg2_lo#0) [ gfx_mode::$61 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$61 ] ) - [98] *((const byte*) BGCOL3#0) ← (byte~) gfx_mode::$61 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [99] (byte~) gfx_mode::$62 ← *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$62 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$62 ] ) - [100] (byte~) gfx_mode::$63 ← (byte~) gfx_mode::$62 | *((const byte*) form_vic_bg3_lo#0) [ gfx_mode::$63 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$63 ] ) - [101] *((const byte*) BGCOL4#0) ← (byte~) gfx_mode::$63 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) +gfx_mode::@9: scope:[gfx_mode] from gfx_mode::@26 gfx_mode::@8 + [46] (byte) gfx_mode::vic_control2#2 ← phi( gfx_mode::@26/(const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 gfx_mode::@8/(const byte) VIC_CSEL#0 ) [ gfx_mode::vic_control2#2 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::vic_control2#2 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [47] *((const byte*) VIC_CONTROL2#0) ← (byte) gfx_mode::vic_control2#2 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [48] (byte~) gfx_mode::$29 ← *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$29 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$29 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [49] (byte) gfx_mode::plane_a_offs#0 ← (byte~) gfx_mode::$29 | *((const byte*) form_a_start_lo#0) [ gfx_mode::plane_a_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [50] (dword) gfx_mode::plane_a#0 ← ((dword))(const byte*) FORM_SCREEN#0 + (byte) gfx_mode::plane_a_offs#0 [ gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [51] (word~) gfx_mode::$33 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$33 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$33 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [52] (byte~) gfx_mode::$34 ← < (word~) gfx_mode::$33 [ gfx_mode::plane_a#0 gfx_mode::$34 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$34 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [53] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte~) gfx_mode::$34 [ gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [54] (word~) gfx_mode::$35 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$35 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$35 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [55] (byte~) gfx_mode::$36 ← > (word~) gfx_mode::$35 [ gfx_mode::plane_a#0 gfx_mode::$36 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$36 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [56] *((const byte*) DTV_PLANEA_START_MI#0) ← (byte~) gfx_mode::$36 [ gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [57] (word~) gfx_mode::$37 ← > (dword) gfx_mode::plane_a#0 [ gfx_mode::$37 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$37 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [58] (byte~) gfx_mode::$38 ← < (word~) gfx_mode::$37 [ gfx_mode::$38 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$38 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [59] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte~) gfx_mode::$38 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [60] (byte~) gfx_mode::$39 ← *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$39 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$39 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [61] (byte~) gfx_mode::$40 ← (byte~) gfx_mode::$39 | *((const byte*) form_a_step_lo#0) [ gfx_mode::$40 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$40 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [62] *((const byte*) DTV_PLANEA_STEP#0) ← (byte~) gfx_mode::$40 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [63] (byte~) gfx_mode::$41 ← *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$41 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$41 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [64] (byte~) gfx_mode::$42 ← (byte~) gfx_mode::$41 | *((const byte*) form_a_mod_lo#0) [ gfx_mode::$42 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$42 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [65] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte~) gfx_mode::$42 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [66] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [67] (byte~) gfx_mode::$43 ← *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$43 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$43 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [68] (byte) gfx_mode::plane_b_offs#0 ← (byte~) gfx_mode::$43 | *((const byte*) form_b_start_lo#0) [ gfx_mode::plane_b_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [69] (dword) gfx_mode::plane_b#0 ← (const dword) PLANE_8BPP_CHUNKY#0 + (byte) gfx_mode::plane_b_offs#0 [ gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [70] (word~) gfx_mode::$46 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$46 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$46 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [71] (byte~) gfx_mode::$47 ← < (word~) gfx_mode::$46 [ gfx_mode::plane_b#0 gfx_mode::$47 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$47 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [72] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte~) gfx_mode::$47 [ gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [73] (word~) gfx_mode::$48 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$48 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$48 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [74] (byte~) gfx_mode::$49 ← > (word~) gfx_mode::$48 [ gfx_mode::plane_b#0 gfx_mode::$49 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$49 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [75] *((const byte*) DTV_PLANEB_START_MI#0) ← (byte~) gfx_mode::$49 [ gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [76] (word~) gfx_mode::$50 ← > (dword) gfx_mode::plane_b#0 [ gfx_mode::$50 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$50 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [77] (byte~) gfx_mode::$51 ← < (word~) gfx_mode::$50 [ gfx_mode::$51 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$51 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [78] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte~) gfx_mode::$51 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [79] (byte~) gfx_mode::$52 ← *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$52 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$52 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [80] (byte~) gfx_mode::$53 ← (byte~) gfx_mode::$52 | *((const byte*) form_b_step_lo#0) [ gfx_mode::$53 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$53 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [81] *((const byte*) DTV_PLANEB_STEP#0) ← (byte~) gfx_mode::$53 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [82] (byte~) gfx_mode::$54 ← *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$54 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$54 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [83] (byte~) gfx_mode::$55 ← (byte~) gfx_mode::$54 | *((const byte*) form_b_mod_lo#0) [ gfx_mode::$55 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$55 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [84] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte~) gfx_mode::$55 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [85] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [86] (byte~) gfx_mode::$56 ← *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$56 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$56 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [87] (byte~) gfx_mode::$57 ← (byte~) gfx_mode::$56 | *((const byte*) form_vic_bg0_lo#0) [ gfx_mode::$57 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$57 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [88] *((const byte*) BGCOL1#0) ← (byte~) gfx_mode::$57 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [89] (byte~) gfx_mode::$58 ← *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$58 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$58 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [90] (byte~) gfx_mode::$59 ← (byte~) gfx_mode::$58 | *((const byte*) form_vic_bg1_lo#0) [ gfx_mode::$59 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$59 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [91] *((const byte*) BGCOL2#0) ← (byte~) gfx_mode::$59 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [92] (byte~) gfx_mode::$60 ← *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$60 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$60 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [93] (byte~) gfx_mode::$61 ← (byte~) gfx_mode::$60 | *((const byte*) form_vic_bg2_lo#0) [ gfx_mode::$61 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$61 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [94] *((const byte*) BGCOL3#0) ← (byte~) gfx_mode::$61 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [95] (byte~) gfx_mode::$62 ← *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$62 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$62 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [96] (byte~) gfx_mode::$63 ← (byte~) gfx_mode::$62 | *((const byte*) form_vic_bg3_lo#0) [ gfx_mode::$63 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$63 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [97] *((const byte*) BGCOL4#0) ← (byte~) gfx_mode::$63 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) to:gfx_mode::@10 gfx_mode::@10: scope:[gfx_mode] from gfx_mode::@10 gfx_mode::@9 - [102] (byte) gfx_mode::i#2 ← phi( gfx_mode::@10/(byte) gfx_mode::i#1 gfx_mode::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ gfx_mode::i#2 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::i#2 ] ) - [103] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::i#2) ← (byte) gfx_mode::i#2 [ gfx_mode::i#2 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::i#2 ] ) - [104] (byte) gfx_mode::i#1 ← ++ (byte) gfx_mode::i#2 [ gfx_mode::i#1 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::i#1 ] ) - [105] if((byte) gfx_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto gfx_mode::@10 [ gfx_mode::i#1 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::i#1 ] ) + [98] (byte) gfx_mode::i#2 ← phi( gfx_mode::@10/(byte) gfx_mode::i#1 gfx_mode::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ gfx_mode::i#2 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::i#2 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [99] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::i#2) ← (byte) gfx_mode::i#2 [ gfx_mode::i#2 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::i#2 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [100] (byte) gfx_mode::i#1 ← ++ (byte) gfx_mode::i#2 [ gfx_mode::i#1 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::i#1 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [101] if((byte) gfx_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto gfx_mode::@10 [ gfx_mode::i#1 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::i#1 keyboard_events_size#13 keyboard_modifiers#13 ] ) + to:gfx_mode::@11 +gfx_mode::@11: scope:[gfx_mode] from gfx_mode::@10 gfx_mode::@37 + [102] (byte) keyboard_modifiers#42 ← phi( gfx_mode::@10/(byte) keyboard_modifiers#13 gfx_mode::@37/(byte) keyboard_modifiers#21 ) [ keyboard_events_size#45 keyboard_modifiers#42 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#45 keyboard_modifiers#42 ] ) + [102] (byte) keyboard_events_size#45 ← phi( gfx_mode::@10/(byte) keyboard_events_size#13 gfx_mode::@37/(byte) keyboard_events_size#24 ) [ keyboard_events_size#45 keyboard_modifiers#42 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#45 keyboard_modifiers#42 ] ) + [103] if(true) goto gfx_mode::@14 [ keyboard_events_size#45 keyboard_modifiers#42 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#45 keyboard_modifiers#42 ] ) to:gfx_mode::@return -gfx_mode::@return: scope:[gfx_mode] from gfx_mode::@10 - [106] return [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) +gfx_mode::@return: scope:[gfx_mode] from gfx_mode::@11 gfx_mode::@37 + [104] (byte) keyboard_modifiers#11 ← phi( gfx_mode::@11/(byte) keyboard_modifiers#42 gfx_mode::@37/(byte) keyboard_modifiers#21 ) [ keyboard_events_size#11 keyboard_modifiers#11 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#11 keyboard_modifiers#11 ] ) + [104] (byte) keyboard_events_size#11 ← phi( gfx_mode::@11/(byte) keyboard_events_size#45 gfx_mode::@37/(byte) keyboard_events_size#24 ) [ keyboard_events_size#11 keyboard_modifiers#11 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#11 keyboard_modifiers#11 ] ) + [105] return [ keyboard_events_size#11 keyboard_modifiers#11 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#11 keyboard_modifiers#11 ] ) to:@return -form_control: scope:[form_control] from main::@9 - [107] (byte) form_field_ptr::field_idx#1 ← (byte) form_field_idx#1 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::field_idx#1 ] ( main:2::form_control:19 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::field_idx#1 ] ) - [108] call form_field_ptr param-assignment [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#0 ] ( main:2::form_control:19 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#0 ] ) - [109] (byte*) form_field_ptr::return#3 ← (byte*) form_field_ptr::return#0 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#3 ] ( main:2::form_control:19 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#3 ] ) - to:form_control::@29 -form_control::@29: scope:[form_control] from form_control - [110] (byte*) form_control::field#0 ← (byte*) form_field_ptr::return#3 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_control::field#0 ] ( main:2::form_control:19 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_control::field#0 ] ) - [111] (signed byte) form_cursor_count#3 ← -- (signed byte) form_cursor_count#1 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ) - [112] if((signed byte) form_cursor_count#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@32 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ) - to:form_control::@1 -form_control::@1: scope:[form_control] from form_control::@29 form_control::@32 - [113] (signed byte) form_cursor_count#11 ← phi( form_control::@29/(const signed byte) FORM_CURSOR_BLINK#0 form_control::@32/(signed byte) form_cursor_count#3 ) [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ) - [114] if((signed byte) form_cursor_count#11>=(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2) goto form_control::@2 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ) - to:form_control::@15 -form_control::@15: scope:[form_control] from form_control::@1 - [115] (byte/word/dword~) form_control::$6 ← *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) 128 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$6 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$6 ] ) - [116] *((byte*) form_control::field#0) ← (byte/word/dword~) form_control::$6 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ) - to:form_control::@3 -form_control::@3: scope:[form_control] from form_control::@15 form_control::@2 - [117] phi() [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ) - [118] call keyboard_event_scan param-assignment [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ( main:2::form_control:19 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ) - to:form_control::@30 -form_control::@30: scope:[form_control] from form_control::@3 - [119] phi() [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ( main:2::form_control:19 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ) - [120] call keyboard_event_get param-assignment [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_event_get::return#2 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_event_get::return#2 keyboard_modifiers#16 ] ) - [121] (byte) keyboard_event_get::return#3 ← (byte) keyboard_event_get::return#2 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_event_get::return#3 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_event_get::return#3 keyboard_modifiers#16 ] ) - to:form_control::@31 -form_control::@31: scope:[form_control] from form_control::@30 - [122] (byte) form_control::key_event#0 ← (byte) keyboard_event_get::return#3 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::key_event#0 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::key_event#0 keyboard_modifiers#16 ] ) - [123] if((byte) form_control::key_event#0!=(const byte) KEY_CRSR_DOWN#0) goto form_control::@4 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::key_event#0 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::key_event#0 keyboard_modifiers#16 ] ) - to:form_control::@17 -form_control::@17: scope:[form_control] from form_control::@31 - [124] (byte~) form_control::$12 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_control::$12 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_control::$12 keyboard_modifiers#16 ] ) - [125] *((byte*) form_control::field#0) ← (byte~) form_control::$12 [ form_field_idx#1 keyboard_events_size#18 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 keyboard_modifiers#16 ] ) - [126] (byte~) form_control::$13 ← (byte) keyboard_modifiers#16 & (const byte) KEY_MODIFIER_SHIFT#0 [ form_field_idx#1 keyboard_events_size#18 form_control::$13 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::$13 ] ) - [127] if((byte~) form_control::$13!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@5 [ form_field_idx#1 keyboard_events_size#18 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 ] ) - to:form_control::@18 -form_control::@18: scope:[form_control] from form_control::@17 - [128] (byte) form_field_idx#34 ← ++ (byte) form_field_idx#1 [ keyboard_events_size#18 form_field_idx#34 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#34 ] ) - [129] if((byte) form_field_idx#34!=(const byte) form_fields_cnt#0) goto form_control::@33 [ keyboard_events_size#18 form_field_idx#34 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#34 ] ) - to:form_control::@7 -form_control::@7: scope:[form_control] from form_control::@18 form_control::@33 form_control::@34 form_control::@5 - [130] (byte) form_field_idx#24 ← phi( form_control::@18/(byte/signed byte/word/signed word/dword/signed dword) 0 form_control::@5/(const byte) form_fields_cnt#0-(byte/signed byte/word/signed word/dword/signed dword) 1 form_control::@33/(byte) form_field_idx#34 form_control::@34/(byte) form_field_idx#3 ) [ keyboard_events_size#18 form_field_idx#24 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#24 ] ) - to:form_control::@return -form_control::@return: scope:[form_control] from form_control::@12 form_control::@4 form_control::@7 - [131] (byte) form_field_idx#14 ← phi( form_control::@12/(byte) form_field_idx#1 form_control::@7/(byte) form_field_idx#24 form_control::@4/(byte) form_field_idx#1 ) [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ( main:2::form_control:19 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [131] (signed byte) form_cursor_count#12 ← phi( form_control::@12/(signed byte) form_cursor_count#11 form_control::@7/(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 form_control::@4/(signed byte) form_cursor_count#11 ) [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ( main:2::form_control:19 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - [132] return [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ( main:2::form_control:19 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - to:@return -form_control::@33: scope:[form_control] from form_control::@18 - [133] phi() [ keyboard_events_size#18 form_field_idx#34 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#34 ] ) - to:form_control::@7 -form_control::@5: scope:[form_control] from form_control::@17 - [134] (byte) form_field_idx#3 ← -- (byte) form_field_idx#1 [ keyboard_events_size#18 form_field_idx#3 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#3 ] ) - [135] if((byte) form_field_idx#3!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@34 [ keyboard_events_size#18 form_field_idx#3 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#3 ] ) - to:form_control::@7 -form_control::@34: scope:[form_control] from form_control::@5 - [136] phi() [ keyboard_events_size#18 form_field_idx#3 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#3 ] ) - to:form_control::@7 -form_control::@4: scope:[form_control] from form_control::@31 - [137] if((byte) form_control::key_event#0!=(const byte) KEY_CRSR_RIGHT#0) goto form_control::@return [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 ] ) - to:form_control::@23 -form_control::@23: scope:[form_control] from form_control::@4 - [138] (byte~) form_control::$24 ← (byte) keyboard_modifiers#16 & (const byte) KEY_MODIFIER_SHIFT#0 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::$24 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::$24 ] ) - [139] if((byte~) form_control::$24!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@10 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) - to:form_control::@24 -form_control::@24: scope:[form_control] from form_control::@23 - [140] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← ++ *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) - [141] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#1)<=*((const byte[]) form_fields_max#0 + (byte) form_field_idx#1)) goto form_control::@12 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) - to:form_control::@25 -form_control::@25: scope:[form_control] from form_control::@24 - [142] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) - to:form_control::@12 -form_control::@12: scope:[form_control] from form_control::@10 form_control::@24 form_control::@25 form_control::@27 - [143] *((byte*) form_control::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1)) [ form_field_idx#1 keyboard_events_size#18 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_cursor_count#11 ] ) - to:form_control::@return -form_control::@10: scope:[form_control] from form_control::@23 - [144] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← -- *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) - [145] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#1)!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@12 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) - to:form_control::@27 -form_control::@27: scope:[form_control] from form_control::@10 - [146] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← *((const byte[]) form_fields_max#0 + (byte) form_field_idx#1) [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) - to:form_control::@12 -form_control::@2: scope:[form_control] from form_control::@1 - [147] (byte~) form_control::$7 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$7 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$7 ] ) - [148] *((byte*) form_control::field#0) ← (byte~) form_control::$7 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ) - to:form_control::@3 -form_control::@32: scope:[form_control] from form_control::@29 - [149] phi() [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ) - to:form_control::@1 -keyboard_event_get: scope:[keyboard_event_get] from form_control::@30 - [150] if((byte) keyboard_events_size#15!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_get::@1 [ keyboard_events_size#15 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ) +gfx_mode::@14: scope:[gfx_mode] from gfx_mode::@11 gfx_mode::@14 + [106] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto gfx_mode::@14 [ keyboard_events_size#45 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#45 ] ) + to:gfx_mode::@16 +gfx_mode::@16: scope:[gfx_mode] from gfx_mode::@14 + [107] phi() [ keyboard_events_size#45 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#45 ] ) + [108] call keyboard_event_scan param-assignment [ keyboard_modifiers#21 keyboard_events_size#105 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#105 ] ) + to:gfx_mode::@36 +gfx_mode::@36: scope:[gfx_mode] from gfx_mode::@16 + [109] phi() [ keyboard_modifiers#21 keyboard_events_size#105 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#105 ] ) + [110] call keyboard_event_get param-assignment [ keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#2 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#2 ] ) + [111] (byte) keyboard_event_get::return#3 ← (byte) keyboard_event_get::return#2 [ keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#3 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#3 ] ) + to:gfx_mode::@37 +gfx_mode::@37: scope:[gfx_mode] from gfx_mode::@36 + [112] (byte) gfx_mode::keyboard_event#0 ← (byte) keyboard_event_get::return#3 [ keyboard_events_size#24 keyboard_modifiers#21 gfx_mode::keyboard_event#0 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#24 keyboard_modifiers#21 gfx_mode::keyboard_event#0 ] ) + [113] if((byte) gfx_mode::keyboard_event#0!=(const byte) KEY_SPACE#0) goto gfx_mode::@11 [ keyboard_events_size#24 keyboard_modifiers#21 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#24 keyboard_modifiers#21 ] ) + to:gfx_mode::@return +keyboard_event_get: scope:[keyboard_event_get] from form_control::@34 gfx_mode::@36 + [114] if((byte) keyboard_events_size#105!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_get::@1 [ keyboard_events_size#105 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#105 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 ] ) to:keyboard_event_get::@return keyboard_event_get::@return: scope:[keyboard_event_get] from keyboard_event_get keyboard_event_get::@1 - [151] (byte) keyboard_events_size#18 ← phi( keyboard_event_get::@1/(byte) keyboard_events_size#4 keyboard_event_get/(byte) keyboard_events_size#15 ) [ keyboard_events_size#18 keyboard_event_get::return#2 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#18 keyboard_event_get::return#2 ] ) - [151] (byte) keyboard_event_get::return#2 ← phi( keyboard_event_get::@1/(byte) keyboard_event_get::return#0 keyboard_event_get/(byte/word/signed word/dword/signed dword) 255 ) [ keyboard_events_size#18 keyboard_event_get::return#2 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#18 keyboard_event_get::return#2 ] ) - [152] return [ keyboard_events_size#18 keyboard_event_get::return#2 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#18 keyboard_event_get::return#2 ] ) + [115] (byte) keyboard_events_size#24 ← phi( keyboard_event_get::@1/(byte) keyboard_events_size#4 keyboard_event_get/(byte) keyboard_events_size#105 ) [ keyboard_events_size#24 keyboard_event_get::return#2 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#24 keyboard_event_get::return#2 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#24 keyboard_event_get::return#2 ] ) + [115] (byte) keyboard_event_get::return#2 ← phi( keyboard_event_get::@1/(byte) keyboard_event_get::return#0 keyboard_event_get/(byte/word/signed word/dword/signed dword) 255 ) [ keyboard_events_size#24 keyboard_event_get::return#2 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#24 keyboard_event_get::return#2 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#24 keyboard_event_get::return#2 ] ) + [116] return [ keyboard_events_size#24 keyboard_event_get::return#2 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#24 keyboard_event_get::return#2 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#24 keyboard_event_get::return#2 ] ) to:@return keyboard_event_get::@1: scope:[keyboard_event_get] from keyboard_event_get - [153] (byte) keyboard_events_size#4 ← -- (byte) keyboard_events_size#15 [ keyboard_events_size#4 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#4 ] ) - [154] (byte) keyboard_event_get::return#0 ← *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) [ keyboard_event_get::return#0 keyboard_events_size#4 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_event_get::return#0 keyboard_events_size#4 ] ) + [117] (byte) keyboard_events_size#4 ← -- (byte) keyboard_events_size#105 [ keyboard_events_size#4 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#4 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#4 ] ) + [118] (byte) keyboard_event_get::return#0 ← *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) [ keyboard_event_get::return#0 keyboard_events_size#4 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_event_get::return#0 keyboard_events_size#4 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_get::return#0 keyboard_events_size#4 ] ) to:keyboard_event_get::@return -keyboard_event_scan: scope:[keyboard_event_scan] from form_control::@3 - [155] phi() [ keyboard_events_size#20 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#20 ] ) +keyboard_event_scan: scope:[keyboard_event_scan] from form_control::@3 gfx_mode::@16 + [119] (byte) keyboard_events_size#104 ← phi( form_control::@3/(byte) keyboard_events_size#47 gfx_mode::@16/(byte) keyboard_events_size#45 ) [ keyboard_events_size#104 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#104 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#104 ] ) to:keyboard_event_scan::@1 keyboard_event_scan::@1: scope:[keyboard_event_scan] from keyboard_event_scan keyboard_event_scan::@8 - [156] (byte) keyboard_events_size#37 ← phi( keyboard_event_scan/(byte) keyboard_events_size#20 keyboard_event_scan::@8/(byte) keyboard_events_size#15 ) [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 ] ) - [156] (byte) keyboard_event_scan::keycode#11 ← phi( keyboard_event_scan/(byte/signed byte/word/signed word/dword/signed dword) 0 keyboard_event_scan::@8/(byte) keyboard_event_scan::keycode#14 ) [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 ] ) - [156] (byte) keyboard_event_scan::row#2 ← phi( keyboard_event_scan/(byte/signed byte/word/signed word/dword/signed dword) 0 keyboard_event_scan::@8/(byte) keyboard_event_scan::row#1 ) [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 ] ) - [157] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_event_scan::row#2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::rowid#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::rowid#0 ] ) - [158] call keyboard_matrix_read param-assignment [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#0 ] ) - [159] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#2 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#2 ] ) + [120] (byte) keyboard_events_size#112 ← phi( keyboard_event_scan/(byte) keyboard_events_size#104 keyboard_event_scan::@8/(byte) keyboard_events_size#105 ) [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] ) + [120] (byte) keyboard_event_scan::keycode#11 ← phi( keyboard_event_scan/(byte/signed byte/word/signed word/dword/signed dword) 0 keyboard_event_scan::@8/(byte) keyboard_event_scan::keycode#14 ) [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] ) + [120] (byte) keyboard_event_scan::row#2 ← phi( keyboard_event_scan/(byte/signed byte/word/signed word/dword/signed dword) 0 keyboard_event_scan::@8/(byte) keyboard_event_scan::row#1 ) [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] ) + [121] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_event_scan::row#2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::rowid#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::rowid#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::rowid#0 ] ) + [122] call keyboard_matrix_read param-assignment [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] ) + [123] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#2 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#2 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#2 ] ) to:keyboard_event_scan::@25 keyboard_event_scan::@25: scope:[keyboard_event_scan] from keyboard_event_scan::@1 - [160] (byte) keyboard_event_scan::row_scan#0 ← (byte) keyboard_matrix_read::return#2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_event_scan::row_scan#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_event_scan::row_scan#0 ] ) - [161] if((byte) keyboard_event_scan::row_scan#0==*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_event_scan::row_scan#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_event_scan::row_scan#0 ] ) + [124] (byte) keyboard_event_scan::row_scan#0 ← (byte) keyboard_matrix_read::return#2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ) + [125] if((byte) keyboard_event_scan::row_scan#0==*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ) to:keyboard_event_scan::@3 keyboard_event_scan::@3: scope:[keyboard_event_scan] from keyboard_event_scan::@25 keyboard_event_scan::@4 - [162] (byte) keyboard_events_size#12 ← phi( keyboard_event_scan::@25/(byte) keyboard_events_size#37 keyboard_event_scan::@4/(byte) keyboard_events_size#38 ) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) - [162] (byte) keyboard_event_scan::keycode#10 ← phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::keycode#11 keyboard_event_scan::@4/(byte) keyboard_event_scan::keycode#15 ) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) - [162] (byte) keyboard_event_scan::col#2 ← phi( keyboard_event_scan::@25/(byte/signed byte/word/signed word/dword/signed dword) 0 keyboard_event_scan::@4/(byte) keyboard_event_scan::col#1 ) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) - [163] (byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$3 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$3 ] ) - [164] (byte~) keyboard_event_scan::$4 ← (byte~) keyboard_event_scan::$3 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$4 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$4 ] ) - [165] if((byte~) keyboard_event_scan::$4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@4 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) + [126] (byte) keyboard_events_size#18 ← phi( keyboard_event_scan::@25/(byte) keyboard_events_size#112 keyboard_event_scan::@4/(byte) keyboard_events_size#111 ) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) + [126] (byte) keyboard_event_scan::keycode#10 ← phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::keycode#11 keyboard_event_scan::@4/(byte) keyboard_event_scan::keycode#15 ) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) + [126] (byte) keyboard_event_scan::col#2 ← phi( keyboard_event_scan::@25/(byte/signed byte/word/signed word/dword/signed dword) 0 keyboard_event_scan::@4/(byte) keyboard_event_scan::col#1 ) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) + [127] (byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$3 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$3 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$3 ] ) + [128] (byte~) keyboard_event_scan::$4 ← (byte~) keyboard_event_scan::$3 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$4 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$4 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$4 ] ) + [129] if((byte~) keyboard_event_scan::$4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@4 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) to:keyboard_event_scan::@14 keyboard_event_scan::@14: scope:[keyboard_event_scan] from keyboard_event_scan::@3 - [166] if((byte) keyboard_events_size#12==(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@4 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) + [130] if((byte) keyboard_events_size#18==(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@4 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) to:keyboard_event_scan::@15 keyboard_event_scan::@15: scope:[keyboard_event_scan] from keyboard_event_scan::@14 - [167] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::event_type#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::event_type#0 ] ) - [168] if((byte) keyboard_event_scan::event_type#0!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@6 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) + [131] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] ) + [132] if((byte) keyboard_event_scan::event_type#0!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@6 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) to:keyboard_event_scan::@16 keyboard_event_scan::@16: scope:[keyboard_event_scan] from keyboard_event_scan::@15 - [169] (byte/word/dword~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) 64 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$12 ] ) - [170] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#12) ← (byte/word/dword~) keyboard_event_scan::$12 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) - [171] (byte) keyboard_events_size#2 ← ++ (byte) keyboard_events_size#12 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#2 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#2 ] ) + [133] (byte/word/dword~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) 64 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$12 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$12 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$12 ] ) + [134] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ← (byte/word/dword~) keyboard_event_scan::$12 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) + [135] (byte) keyboard_events_size#2 ← ++ (byte) keyboard_events_size#18 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#2 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#2 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#2 ] ) to:keyboard_event_scan::@4 keyboard_event_scan::@4: scope:[keyboard_event_scan] from keyboard_event_scan::@14 keyboard_event_scan::@16 keyboard_event_scan::@3 keyboard_event_scan::@6 - [172] (byte) keyboard_events_size#38 ← phi( keyboard_event_scan::@16/(byte) keyboard_events_size#2 keyboard_event_scan::@3/(byte) keyboard_events_size#12 keyboard_event_scan::@14/(byte) keyboard_events_size#12 keyboard_event_scan::@6/(byte) keyboard_events_size#1 ) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#38 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#38 ] ) - [173] (byte) keyboard_event_scan::keycode#15 ← ++ (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ) - [174] (byte) keyboard_event_scan::col#1 ← ++ (byte) keyboard_event_scan::col#2 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ) - [175] if((byte) keyboard_event_scan::col#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@3 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ) + [136] (byte) keyboard_events_size#111 ← phi( keyboard_event_scan::@16/(byte) keyboard_events_size#2 keyboard_event_scan::@3/(byte) keyboard_events_size#18 keyboard_event_scan::@14/(byte) keyboard_events_size#18 keyboard_event_scan::@6/(byte) keyboard_events_size#1 ) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#111 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#111 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#111 ] ) + [137] (byte) keyboard_event_scan::keycode#15 ← ++ (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ) + [138] (byte) keyboard_event_scan::col#1 ← ++ (byte) keyboard_event_scan::col#2 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ) + [139] if((byte) keyboard_event_scan::col#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@3 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ) to:keyboard_event_scan::@18 keyboard_event_scan::@18: scope:[keyboard_event_scan] from keyboard_event_scan::@4 - [176] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ) + [140] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ) to:keyboard_event_scan::@8 keyboard_event_scan::@8: scope:[keyboard_event_scan] from keyboard_event_scan::@18 keyboard_event_scan::@2 - [177] (byte) keyboard_events_size#15 ← phi( keyboard_event_scan::@18/(byte) keyboard_events_size#38 keyboard_event_scan::@2/(byte) keyboard_events_size#37 ) [ keyboard_events_size#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#14 ] ) - [177] (byte) keyboard_event_scan::keycode#14 ← phi( keyboard_event_scan::@18/(byte) keyboard_event_scan::keycode#15 keyboard_event_scan::@2/(byte) keyboard_event_scan::keycode#1 ) [ keyboard_events_size#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#14 ] ) - [178] (byte) keyboard_event_scan::row#1 ← ++ (byte) keyboard_event_scan::row#2 [ keyboard_events_size#15 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ) - [179] if((byte) keyboard_event_scan::row#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@1 [ keyboard_events_size#15 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ) + [141] (byte) keyboard_events_size#105 ← phi( keyboard_event_scan::@18/(byte) keyboard_events_size#111 keyboard_event_scan::@2/(byte) keyboard_events_size#112 ) [ keyboard_events_size#105 keyboard_event_scan::row#2 keyboard_event_scan::keycode#14 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_scan::row#2 keyboard_event_scan::keycode#14 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_scan::row#2 keyboard_event_scan::keycode#14 ] ) + [141] (byte) keyboard_event_scan::keycode#14 ← phi( keyboard_event_scan::@18/(byte) keyboard_event_scan::keycode#15 keyboard_event_scan::@2/(byte) keyboard_event_scan::keycode#1 ) [ keyboard_events_size#105 keyboard_event_scan::row#2 keyboard_event_scan::keycode#14 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_scan::row#2 keyboard_event_scan::keycode#14 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_scan::row#2 keyboard_event_scan::keycode#14 ] ) + [142] (byte) keyboard_event_scan::row#1 ← ++ (byte) keyboard_event_scan::row#2 [ keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ) + [143] if((byte) keyboard_event_scan::row#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@1 [ keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ) to:keyboard_event_scan::@20 keyboard_event_scan::@20: scope:[keyboard_event_scan] from keyboard_event_scan::@8 - [180] phi() [ keyboard_events_size#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 ] ) - [181] call keyboard_event_pressed param-assignment [ keyboard_events_size#15 keyboard_event_pressed::return#10 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 ] ) - [182] (byte) keyboard_event_pressed::return#0 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#15 keyboard_event_pressed::return#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#0 ] ) + [144] phi() [ keyboard_events_size#105 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 ] ) + [145] call keyboard_event_pressed param-assignment [ keyboard_events_size#105 keyboard_event_pressed::return#10 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 ] ) + [146] (byte) keyboard_event_pressed::return#0 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#105 keyboard_event_pressed::return#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#0 ] ) to:keyboard_event_scan::@26 keyboard_event_scan::@26: scope:[keyboard_event_scan] from keyboard_event_scan::@20 - [183] (byte~) keyboard_event_scan::$16 ← (byte) keyboard_event_pressed::return#0 [ keyboard_events_size#15 keyboard_event_scan::$16 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_scan::$16 ] ) - [184] if((byte~) keyboard_event_scan::$16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@9 [ keyboard_events_size#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 ] ) + [147] (byte~) keyboard_event_scan::$16 ← (byte) keyboard_event_pressed::return#0 [ keyboard_events_size#105 keyboard_event_scan::$16 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_scan::$16 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_scan::$16 ] ) + [148] if((byte~) keyboard_event_scan::$16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@9 [ keyboard_events_size#105 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 ] ) to:keyboard_event_scan::@21 keyboard_event_scan::@21: scope:[keyboard_event_scan] from keyboard_event_scan::@26 - [185] phi() [ keyboard_events_size#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 ] ) + [149] phi() [ keyboard_events_size#105 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 ] ) to:keyboard_event_scan::@9 keyboard_event_scan::@9: scope:[keyboard_event_scan] from keyboard_event_scan::@21 keyboard_event_scan::@26 - [186] (byte) keyboard_modifiers#13 ← phi( keyboard_event_scan::@21/(byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) KEY_MODIFIER_LSHIFT#0 keyboard_event_scan::@26/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ keyboard_events_size#15 keyboard_modifiers#13 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 ] ) - [187] call keyboard_event_pressed param-assignment [ keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#13 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#13 ] ) - [188] (byte) keyboard_event_pressed::return#1 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::return#1 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::return#1 ] ) + [150] (byte) keyboard_modifiers#18 ← phi( keyboard_event_scan::@21/(byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) KEY_MODIFIER_LSHIFT#0 keyboard_event_scan::@26/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ keyboard_events_size#105 keyboard_modifiers#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 ] ) + [151] call keyboard_event_pressed param-assignment [ keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#18 ] ) + [152] (byte) keyboard_event_pressed::return#1 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#1 ] ) to:keyboard_event_scan::@27 keyboard_event_scan::@27: scope:[keyboard_event_scan] from keyboard_event_scan::@9 - [189] (byte~) keyboard_event_scan::$20 ← (byte) keyboard_event_pressed::return#1 [ keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_scan::$20 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_scan::$20 ] ) - [190] if((byte~) keyboard_event_scan::$20==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@10 [ keyboard_events_size#15 keyboard_modifiers#13 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 ] ) + [153] (byte~) keyboard_event_scan::$20 ← (byte) keyboard_event_pressed::return#1 [ keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_scan::$20 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_scan::$20 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_scan::$20 ] ) + [154] if((byte~) keyboard_event_scan::$20==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@10 [ keyboard_events_size#105 keyboard_modifiers#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 ] ) to:keyboard_event_scan::@22 keyboard_event_scan::@22: scope:[keyboard_event_scan] from keyboard_event_scan::@27 - [191] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#13 | (const byte) KEY_MODIFIER_RSHIFT#0 [ keyboard_events_size#15 keyboard_modifiers#3 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#3 ] ) + [155] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#18 | (const byte) KEY_MODIFIER_RSHIFT#0 [ keyboard_events_size#105 keyboard_modifiers#3 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#3 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#3 ] ) to:keyboard_event_scan::@10 keyboard_event_scan::@10: scope:[keyboard_event_scan] from keyboard_event_scan::@22 keyboard_event_scan::@27 - [192] (byte) keyboard_modifiers#14 ← phi( keyboard_event_scan::@22/(byte) keyboard_modifiers#3 keyboard_event_scan::@27/(byte) keyboard_modifiers#13 ) [ keyboard_events_size#15 keyboard_modifiers#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 ] ) - [193] call keyboard_event_pressed param-assignment [ keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#14 ] ) - [194] (byte) keyboard_event_pressed::return#2 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::return#2 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::return#2 ] ) + [156] (byte) keyboard_modifiers#19 ← phi( keyboard_event_scan::@22/(byte) keyboard_modifiers#3 keyboard_event_scan::@27/(byte) keyboard_modifiers#18 ) [ keyboard_events_size#105 keyboard_modifiers#19 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 ] ) + [157] call keyboard_event_pressed param-assignment [ keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#19 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#19 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#19 ] ) + [158] (byte) keyboard_event_pressed::return#2 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#2 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#2 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#2 ] ) to:keyboard_event_scan::@28 keyboard_event_scan::@28: scope:[keyboard_event_scan] from keyboard_event_scan::@10 - [195] (byte~) keyboard_event_scan::$24 ← (byte) keyboard_event_pressed::return#2 [ keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_scan::$24 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_scan::$24 ] ) - [196] if((byte~) keyboard_event_scan::$24==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@11 [ keyboard_events_size#15 keyboard_modifiers#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 ] ) + [159] (byte~) keyboard_event_scan::$24 ← (byte) keyboard_event_pressed::return#2 [ keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_scan::$24 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_scan::$24 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_scan::$24 ] ) + [160] if((byte~) keyboard_event_scan::$24==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@11 [ keyboard_events_size#105 keyboard_modifiers#19 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 ] ) to:keyboard_event_scan::@23 keyboard_event_scan::@23: scope:[keyboard_event_scan] from keyboard_event_scan::@28 - [197] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#14 | (const byte) KEY_MODIFIER_CTRL#0 [ keyboard_events_size#15 keyboard_modifiers#4 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#4 ] ) + [161] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#19 | (const byte) KEY_MODIFIER_CTRL#0 [ keyboard_events_size#105 keyboard_modifiers#4 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#4 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#4 ] ) to:keyboard_event_scan::@11 keyboard_event_scan::@11: scope:[keyboard_event_scan] from keyboard_event_scan::@23 keyboard_event_scan::@28 - [198] (byte) keyboard_modifiers#15 ← phi( keyboard_event_scan::@23/(byte) keyboard_modifiers#4 keyboard_event_scan::@28/(byte) keyboard_modifiers#14 ) [ keyboard_events_size#15 keyboard_modifiers#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 ] ) - [199] call keyboard_event_pressed param-assignment [ keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#15 ] ) - [200] (byte) keyboard_event_pressed::return#3 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::return#3 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::return#3 ] ) + [162] (byte) keyboard_modifiers#20 ← phi( keyboard_event_scan::@23/(byte) keyboard_modifiers#4 keyboard_event_scan::@28/(byte) keyboard_modifiers#19 ) [ keyboard_events_size#105 keyboard_modifiers#20 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 ] ) + [163] call keyboard_event_pressed param-assignment [ keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#20 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#20 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#20 ] ) + [164] (byte) keyboard_event_pressed::return#3 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#3 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#3 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#3 ] ) to:keyboard_event_scan::@29 keyboard_event_scan::@29: scope:[keyboard_event_scan] from keyboard_event_scan::@11 - [201] (byte~) keyboard_event_scan::$28 ← (byte) keyboard_event_pressed::return#3 [ keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_scan::$28 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_scan::$28 ] ) - [202] if((byte~) keyboard_event_scan::$28==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@return [ keyboard_events_size#15 keyboard_modifiers#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 ] ) + [165] (byte~) keyboard_event_scan::$28 ← (byte) keyboard_event_pressed::return#3 [ keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_scan::$28 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_scan::$28 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_scan::$28 ] ) + [166] if((byte~) keyboard_event_scan::$28==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@return [ keyboard_events_size#105 keyboard_modifiers#20 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 ] ) to:keyboard_event_scan::@24 keyboard_event_scan::@24: scope:[keyboard_event_scan] from keyboard_event_scan::@29 - [203] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#15 | (const byte) KEY_MODIFIER_COMMODORE#0 [ keyboard_events_size#15 keyboard_modifiers#5 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#5 ] ) + [167] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#20 | (const byte) KEY_MODIFIER_COMMODORE#0 [ keyboard_events_size#105 keyboard_modifiers#5 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#5 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#5 ] ) to:keyboard_event_scan::@return keyboard_event_scan::@return: scope:[keyboard_event_scan] from keyboard_event_scan::@24 keyboard_event_scan::@29 - [204] (byte) keyboard_modifiers#16 ← phi( keyboard_event_scan::@29/(byte) keyboard_modifiers#15 keyboard_event_scan::@24/(byte) keyboard_modifiers#5 ) [ keyboard_modifiers#16 keyboard_events_size#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ) - [205] return [ keyboard_modifiers#16 keyboard_events_size#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ) + [168] (byte) keyboard_modifiers#21 ← phi( keyboard_event_scan::@29/(byte) keyboard_modifiers#20 keyboard_event_scan::@24/(byte) keyboard_modifiers#5 ) [ keyboard_modifiers#21 keyboard_events_size#105 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#105 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_modifiers#21 keyboard_events_size#105 ] ) + [169] return [ keyboard_modifiers#21 keyboard_events_size#105 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#105 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_modifiers#21 keyboard_events_size#105 ] ) to:@return keyboard_event_scan::@6: scope:[keyboard_event_scan] from keyboard_event_scan::@15 - [206] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#12) ← (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) - [207] (byte) keyboard_events_size#1 ← ++ (byte) keyboard_events_size#12 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#1 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#1 ] ) + [170] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ← (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) + [171] (byte) keyboard_events_size#1 ← ++ (byte) keyboard_events_size#18 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#1 ] ) to:keyboard_event_scan::@4 keyboard_event_scan::@2: scope:[keyboard_event_scan] from keyboard_event_scan::@25 - [208] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ keyboard_event_scan::row#2 keyboard_events_size#37 keyboard_event_scan::keycode#1 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_events_size#37 keyboard_event_scan::keycode#1 ] ) + [172] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ keyboard_event_scan::row#2 keyboard_events_size#112 keyboard_event_scan::keycode#1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_events_size#112 keyboard_event_scan::keycode#1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_events_size#112 keyboard_event_scan::keycode#1 ] ) to:keyboard_event_scan::@8 keyboard_event_pressed: scope:[keyboard_event_pressed] from keyboard_event_scan::@10 keyboard_event_scan::@11 keyboard_event_scan::@20 keyboard_event_scan::@9 - [209] (byte) keyboard_event_pressed::keycode#4 ← phi( keyboard_event_scan::@10/(const byte) KEY_CTRL#0 keyboard_event_scan::@11/(const byte) KEY_COMMODORE#0 keyboard_event_scan::@20/(const byte) KEY_LSHIFT#0 keyboard_event_scan::@9/(const byte) KEY_RSHIFT#0 ) [ keyboard_event_pressed::keycode#4 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::keycode#4 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::keycode#4 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::keycode#4 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::keycode#4 ] ) - [210] (byte~) keyboard_event_pressed::$0 ← (byte) keyboard_event_pressed::keycode#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ) - [211] (byte) keyboard_event_pressed::row_bits#0 ← *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) [ keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] ) - [212] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ) - [213] (byte) keyboard_event_pressed::return#10 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) [ keyboard_event_pressed::return#10 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::return#10 ] ) + [173] (byte) keyboard_event_pressed::keycode#4 ← phi( keyboard_event_scan::@10/(const byte) KEY_CTRL#0 keyboard_event_scan::@11/(const byte) KEY_COMMODORE#0 keyboard_event_scan::@20/(const byte) KEY_LSHIFT#0 keyboard_event_scan::@9/(const byte) KEY_RSHIFT#0 ) [ keyboard_event_pressed::keycode#4 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::keycode#4 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::keycode#4 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 ] ) + [174] (byte~) keyboard_event_pressed::$0 ← (byte) keyboard_event_pressed::keycode#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ) + [175] (byte) keyboard_event_pressed::row_bits#0 ← *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) [ keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] ) + [176] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ) + [177] (byte) keyboard_event_pressed::return#10 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) [ keyboard_event_pressed::return#10 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] ) to:keyboard_event_pressed::@return keyboard_event_pressed::@return: scope:[keyboard_event_pressed] from keyboard_event_pressed - [214] return [ keyboard_event_pressed::return#10 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::return#10 ] ) + [178] return [ keyboard_event_pressed::return#10 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] ) to:@return keyboard_matrix_read: scope:[keyboard_matrix_read] from keyboard_event_scan::@1 - [215] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_matrix_read:158 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 ] ) - [216] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_matrix_read:158 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#0 ] ) + [179] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_matrix_read:122 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_matrix_read:122 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] ) + [180] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_matrix_read:122 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_matrix_read:122 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] ) to:keyboard_matrix_read::@return keyboard_matrix_read::@return: scope:[keyboard_matrix_read] from keyboard_matrix_read - [217] return [ keyboard_matrix_read::return#0 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_matrix_read:158 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#0 ] ) + [181] return [ keyboard_matrix_read::return#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_matrix_read:122 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_matrix_read:122 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] ) to:@return -form_field_ptr: scope:[form_field_ptr] from form_control form_render_values::@1 - [218] (byte) form_field_ptr::field_idx#2 ← phi( form_control/(byte) form_field_ptr::field_idx#1 form_render_values::@1/(byte) form_field_ptr::field_idx#0 ) [ form_field_ptr::field_idx#2 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::field_idx#2 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::field_idx#2 ] ) - [219] (byte) form_field_ptr::y#0 ← *((const byte[]) form_fields_y#0 + (byte) form_field_ptr::field_idx#2) [ form_field_ptr::field_idx#2 form_field_ptr::y#0 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::field_idx#2 form_field_ptr::y#0 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::y#0 ] ) - [220] (word~) form_field_ptr::$2 ← *((const byte[25]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[25]) form_line_lo#0 + (byte) form_field_ptr::y#0) [ form_field_ptr::field_idx#2 form_field_ptr::$2 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::field_idx#2 form_field_ptr::$2 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::$2 ] ) - [221] (byte) form_field_ptr::x#0 ← *((const byte[]) form_fields_x#0 + (byte) form_field_ptr::field_idx#2) [ form_field_ptr::$2 form_field_ptr::x#0 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::$2 form_field_ptr::x#0 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::$2 form_field_ptr::x#0 ] ) - [222] (byte*) form_field_ptr::return#0 ← (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 [ form_field_ptr::return#0 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#0 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::return#0 ] ) - to:form_field_ptr::@return -form_field_ptr::@return: scope:[form_field_ptr] from form_field_ptr - [223] return [ form_field_ptr::return#0 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#0 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::return#0 ] ) - to:@return -form_mode: scope:[form_mode] from main::@6 - [224] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) 65536 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [225] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [226] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [227] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [228] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) 16384 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [229] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [230] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [231] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [232] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) 16383/(byte/signed byte/word/signed word/dword/signed dword) 64|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) 16383/(word/signed word/dword/signed dword) 1024 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) +form_mode: scope:[form_mode] from main::@2 + [182] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) 65536 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [183] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [184] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [185] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [186] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) 16384 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [187] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [188] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [189] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) + [190] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) 16383/(byte/signed byte/word/signed word/dword/signed dword) 64|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) 16383/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) to:form_mode::@1 form_mode::@1: scope:[form_mode] from form_mode form_mode::@1 - [233] (byte) form_mode::i#2 ← phi( form_mode/(byte/signed byte/word/signed word/dword/signed dword) 0 form_mode::@1/(byte) form_mode::i#1 ) [ form_mode::i#2 ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_mode::i#2 ] ) - [234] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ← *((const byte[16]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) [ form_mode::i#2 ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_mode::i#2 ] ) - [235] (byte) form_mode::i#1 ← ++ (byte) form_mode::i#2 [ form_mode::i#1 ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_mode::i#1 ] ) - [236] if((byte) form_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto form_mode::@1 [ form_mode::i#1 ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_mode::i#1 ] ) + [191] (byte) form_mode::i#2 ← phi( form_mode/(byte/signed byte/word/signed word/dword/signed dword) 0 form_mode::@1/(byte) form_mode::i#1 ) [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#2 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#2 ] ) + [192] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ← *((const byte[16]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#2 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#2 ] ) + [193] (byte) form_mode::i#1 ← ++ (byte) form_mode::i#2 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#1 ] ) + [194] if((byte) form_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto form_mode::@1 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#1 ] ) + to:form_mode::@9 +form_mode::@9: scope:[form_mode] from form_mode::@1 + [195] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) to:form_mode::@2 -form_mode::@2: scope:[form_mode] from form_mode::@1 - [237] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - [238] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) +form_mode::@2: scope:[form_mode] from form_mode::@19 form_mode::@9 + [196] (byte) form_field_idx#28 ← phi( form_mode::@19/(byte) form_field_idx#18 form_mode::@9/(byte) form_field_idx#1 ) [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ( main:2::form_mode:15 [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ) + [196] (byte) keyboard_modifiers#45 ← phi( form_mode::@19/(byte) keyboard_modifiers#21 form_mode::@9/(byte) keyboard_modifiers#24 ) [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ( main:2::form_mode:15 [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ) + [196] (byte) keyboard_events_size#47 ← phi( form_mode::@19/(byte) keyboard_events_size#24 form_mode::@9/(byte) keyboard_events_size#27 ) [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ( main:2::form_mode:15 [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ) + [196] (signed byte) form_cursor_count#21 ← phi( form_mode::@19/(signed byte) form_cursor_count#16 form_mode::@9/(signed byte) form_cursor_count#1 ) [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ( main:2::form_mode:15 [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ) + [197] if(true) goto form_mode::@5 [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ( main:2::form_mode:15 [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ) to:form_mode::@return -form_mode::@return: scope:[form_mode] from form_mode::@2 - [239] return [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) +form_mode::@return: scope:[form_mode] from form_mode::@19 form_mode::@2 + [198] (byte) form_field_idx#14 ← phi( form_mode::@19/(byte) form_field_idx#18 form_mode::@2/(byte) form_field_idx#28 ) [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::form_mode:15 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [198] (byte) keyboard_modifiers#13 ← phi( form_mode::@19/(byte) keyboard_modifiers#21 form_mode::@2/(byte) keyboard_modifiers#45 ) [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::form_mode:15 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [198] (byte) keyboard_events_size#13 ← phi( form_mode::@19/(byte) keyboard_events_size#24 form_mode::@2/(byte) keyboard_events_size#47 ) [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::form_mode:15 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [198] (signed byte) form_cursor_count#13 ← phi( form_mode::@19/(signed byte) form_cursor_count#16 form_mode::@2/(signed byte) form_cursor_count#21 ) [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::form_mode:15 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + [199] return [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::form_mode:15 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) to:@return -form_init: scope:[form_init] from main::@20 - [240] phi() [ ] ( main:2::form_init:10 [ ] ) - [241] call print_set_screen param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) +form_mode::@5: scope:[form_mode] from form_mode::@2 form_mode::@5 + [200] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto form_mode::@5 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 ] ( main:2::form_mode:15 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 ] ) + to:form_mode::@7 +form_mode::@7: scope:[form_mode] from form_mode::@5 + [201] phi() [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 ] ( main:2::form_mode:15 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 ] ) + [202] call form_control param-assignment [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ( main:2::form_mode:15 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ) + [203] (byte) form_control::return#0 ← (byte) form_control::return#2 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#0 ] ( main:2::form_mode:15 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#0 ] ) + to:form_mode::@19 +form_mode::@19: scope:[form_mode] from form_mode::@7 + [204] (byte~) form_mode::$25 ← (byte) form_control::return#0 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_mode::$25 ] ( main:2::form_mode:15 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_mode::$25 ] ) + [205] if((byte~) form_mode::$25==(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_mode::@2 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 ] ( main:2::form_mode:15 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 ] ) + to:form_mode::@return +form_control: scope:[form_control] from form_mode::@7 + [206] (byte) form_field_ptr::field_idx#1 ← (byte) form_field_idx#28 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#1 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#1 ] ) + [207] call form_field_ptr param-assignment [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] ) + [208] (byte*) form_field_ptr::return#3 ← (byte*) form_field_ptr::return#0 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#3 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#3 ] ) + to:form_control::@33 +form_control::@33: scope:[form_control] from form_control + [209] (byte*) form_control::field#0 ← (byte*) form_field_ptr::return#3 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_control::field#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_control::field#0 ] ) + [210] (signed byte) form_cursor_count#5 ← -- (signed byte) form_cursor_count#21 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ) + [211] if((signed byte) form_cursor_count#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@36 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ) + to:form_control::@1 +form_control::@1: scope:[form_control] from form_control::@33 form_control::@36 + [212] (signed byte) form_cursor_count#15 ← phi( form_control::@33/(const signed byte) FORM_CURSOR_BLINK#0 form_control::@36/(signed byte) form_cursor_count#5 ) [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + [213] if((signed byte) form_cursor_count#15>=(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2) goto form_control::@2 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + to:form_control::@16 +form_control::@16: scope:[form_control] from form_control::@1 + [214] (byte/word/dword~) form_control::$6 ← *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) 128 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$6 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$6 ] ) + [215] *((byte*) form_control::field#0) ← (byte/word/dword~) form_control::$6 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + to:form_control::@3 +form_control::@3: scope:[form_control] from form_control::@16 form_control::@2 + [216] phi() [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + [217] call keyboard_event_scan param-assignment [ keyboard_modifiers#21 keyboard_events_size#105 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_modifiers#21 keyboard_events_size#105 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + to:form_control::@34 +form_control::@34: scope:[form_control] from form_control::@3 + [218] phi() [ keyboard_modifiers#21 keyboard_events_size#105 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_modifiers#21 keyboard_events_size#105 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + [219] call keyboard_event_get param-assignment [ keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#2 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#2 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + [220] (byte) keyboard_event_get::return#4 ← (byte) keyboard_event_get::return#2 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_get::return#4 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_get::return#4 ] ) + to:form_control::@35 +form_control::@35: scope:[form_control] from form_control::@34 + [221] (byte) form_control::key_event#0 ← (byte) keyboard_event_get::return#4 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ) + [222] if((byte) form_control::key_event#0!=(const byte) KEY_CRSR_DOWN#0) goto form_control::@4 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ) + to:form_control::@18 +form_control::@18: scope:[form_control] from form_control::@35 + [223] (byte~) form_control::$12 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_control::$12 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_control::$12 ] ) + [224] *((byte*) form_control::field#0) ← (byte~) form_control::$12 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ) + [225] (byte~) form_control::$13 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::$13 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::$13 ] ) + [226] if((byte~) form_control::$13!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@5 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ) + to:form_control::@19 +form_control::@19: scope:[form_control] from form_control::@18 + [227] (byte) form_field_idx#43 ← ++ (byte) form_field_idx#28 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ) + [228] if((byte) form_field_idx#43!=(const byte) form_fields_cnt#0) goto form_control::@37 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ) + to:form_control::@7 +form_control::@7: scope:[form_control] from form_control::@19 form_control::@37 form_control::@38 form_control::@5 + [229] (byte) form_field_idx#32 ← phi( form_control::@19/(byte/signed byte/word/signed word/dword/signed dword) 0 form_control::@5/(const byte) form_fields_cnt#0-(byte/signed byte/word/signed word/dword/signed dword) 1 form_control::@37/(byte) form_field_idx#43 form_control::@38/(byte) form_field_idx#44 ) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#32 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#32 ] ) + to:form_control::@return +form_control::@return: scope:[form_control] from form_control::@12 form_control::@39 form_control::@7 form_control::@9 + [230] (byte) form_field_idx#18 ← phi( form_control::@12/(byte) form_field_idx#28 form_control::@39/(byte) form_field_idx#28 form_control::@9/(byte) form_field_idx#28 form_control::@7/(byte) form_field_idx#32 ) [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ) + [230] (signed byte) form_cursor_count#16 ← phi( form_control::@12/(signed byte) form_cursor_count#15 form_control::@39/(signed byte) form_cursor_count#15 form_control::@9/(signed byte) form_cursor_count#15 form_control::@7/(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 ) [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ) + [230] (byte) form_control::return#2 ← phi( form_control::@12/(byte/signed byte/word/signed word/dword/signed dword) 0 form_control::@39/(byte/signed byte/word/signed word/dword/signed dword) 0 form_control::@9/(byte/word/signed word/dword/signed dword) 255 form_control::@7/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ) + [231] return [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ) + to:@return +form_control::@37: scope:[form_control] from form_control::@19 + [232] phi() [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ) + to:form_control::@7 +form_control::@5: scope:[form_control] from form_control::@18 + [233] (byte) form_field_idx#44 ← -- (byte) form_field_idx#28 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ) + [234] if((byte) form_field_idx#44!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@38 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ) + to:form_control::@7 +form_control::@38: scope:[form_control] from form_control::@5 + [235] phi() [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ) + to:form_control::@7 +form_control::@4: scope:[form_control] from form_control::@35 + [236] if((byte) form_control::key_event#0!=(const byte) KEY_CRSR_RIGHT#0) goto form_control::@9 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ) + to:form_control::@24 +form_control::@24: scope:[form_control] from form_control::@4 + [237] (byte~) form_control::$24 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$24 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$24 ] ) + [238] if((byte~) form_control::$24!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@10 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + to:form_control::@25 +form_control::@25: scope:[form_control] from form_control::@24 + [239] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← ++ *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + [240] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)<=*((const byte[]) form_fields_max#0 + (byte) form_field_idx#28)) goto form_control::@12 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + to:form_control::@26 +form_control::@26: scope:[form_control] from form_control::@25 + [241] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + to:form_control::@12 +form_control::@12: scope:[form_control] from form_control::@10 form_control::@25 form_control::@26 form_control::@28 + [242] *((byte*) form_control::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ) + to:form_control::@return +form_control::@10: scope:[form_control] from form_control::@24 + [243] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← -- *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + [244] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@12 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + to:form_control::@28 +form_control::@28: scope:[form_control] from form_control::@10 + [245] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← *((const byte[]) form_fields_max#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + to:form_control::@12 +form_control::@9: scope:[form_control] from form_control::@4 + [246] if((byte) form_control::key_event#0!=(const byte) KEY_SPACE#0) goto form_control::@39 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ) + to:form_control::@return +form_control::@39: scope:[form_control] from form_control::@9 + [247] phi() [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ) + to:form_control::@return +form_control::@2: scope:[form_control] from form_control::@1 + [248] (byte~) form_control::$7 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$7 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$7 ] ) + [249] *((byte*) form_control::field#0) ← (byte~) form_control::$7 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + to:form_control::@3 +form_control::@36: scope:[form_control] from form_control::@33 + [250] phi() [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ) + to:form_control::@1 +form_field_ptr: scope:[form_field_ptr] from form_control form_render_values::@1 + [251] (byte) form_field_ptr::field_idx#2 ← phi( form_control/(byte) form_field_ptr::field_idx#1 form_render_values::@1/(byte) form_field_ptr::field_idx#0 ) [ form_field_ptr::field_idx#2 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#2 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::field_idx#2 ] ) + [252] (byte) form_field_ptr::y#0 ← *((const byte[]) form_fields_y#0 + (byte) form_field_ptr::field_idx#2) [ form_field_ptr::field_idx#2 form_field_ptr::y#0 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#2 form_field_ptr::y#0 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::y#0 ] ) + [253] (word~) form_field_ptr::$2 ← *((const byte[25]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[25]) form_line_lo#0 + (byte) form_field_ptr::y#0) [ form_field_ptr::field_idx#2 form_field_ptr::$2 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#2 form_field_ptr::$2 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::$2 ] ) + [254] (byte) form_field_ptr::x#0 ← *((const byte[]) form_fields_x#0 + (byte) form_field_ptr::field_idx#2) [ form_field_ptr::$2 form_field_ptr::x#0 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::$2 form_field_ptr::x#0 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::$2 form_field_ptr::x#0 ] ) + [255] (byte*) form_field_ptr::return#0 ← (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 [ form_field_ptr::return#0 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::return#0 ] ) + to:form_field_ptr::@return +form_field_ptr::@return: scope:[form_field_ptr] from form_field_ptr + [256] return [ form_field_ptr::return#0 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::return#0 ] ) + to:@return +form_init: scope:[form_init] from main::@8 + [257] phi() [ ] ( main:2::form_init:10 [ ] ) + [258] call print_set_screen param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) to:form_init::@1 form_init::@1: scope:[form_init] from form_init - [242] phi() [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) - [243] call print_str_lines param-assignment [ ] ( main:2::form_init:10 [ ] ) + [259] phi() [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) + [260] call print_cls param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) to:form_init::@2 form_init::@2: scope:[form_init] from form_init::@1 - [244] phi() [ ] ( main:2::form_init:10 [ ] ) - [245] call print_set_screen param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) + [261] phi() [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) + [262] call print_str_lines param-assignment [ ] ( main:2::form_init:10 [ ] ) to:form_init::@3 form_init::@3: scope:[form_init] from form_init::@2 - [246] phi() [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) - [247] call print_str_lines param-assignment [ ] ( main:2::form_init:10 [ ] ) + [263] phi() [ ] ( main:2::form_init:10 [ ] ) + [264] call print_set_screen param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) to:form_init::@4 form_init::@4: scope:[form_init] from form_init::@3 - [248] phi() [ ] ( main:2::form_init:10 [ ] ) - [249] call form_set_screen param-assignment [ ] ( main:2::form_init:10 [ ] ) + [265] phi() [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) + [266] call print_cls param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) to:form_init::@5 form_init::@5: scope:[form_init] from form_init::@4 - [250] phi() [ ] ( main:2::form_init:10 [ ] ) - [251] call form_render_values param-assignment [ ] ( main:2::form_init:10 [ ] ) + [267] phi() [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) + [268] call print_str_lines param-assignment [ ] ( main:2::form_init:10 [ ] ) + to:form_init::@6 +form_init::@6: scope:[form_init] from form_init::@5 + [269] phi() [ ] ( main:2::form_init:10 [ ] ) + [270] call form_set_screen param-assignment [ ] ( main:2::form_init:10 [ ] ) + to:form_init::@7 +form_init::@7: scope:[form_init] from form_init::@6 + [271] phi() [ ] ( main:2::form_init:10 [ ] ) + [272] call form_render_values param-assignment [ ] ( main:2::form_init:10 [ ] ) to:form_init::@return -form_init::@return: scope:[form_init] from form_init::@5 - [252] return [ ] ( main:2::form_init:10 [ ] ) +form_init::@return: scope:[form_init] from form_init::@7 + [273] return [ ] ( main:2::form_init:10 [ ] ) to:@return -form_render_values: scope:[form_render_values] from form_init::@5 - [253] phi() [ ] ( main:2::form_init:10::form_render_values:251 [ ] ) +form_render_values: scope:[form_render_values] from form_init::@7 + [274] phi() [ ] ( main:2::form_init:10::form_render_values:272 [ ] ) to:form_render_values::@1 form_render_values::@1: scope:[form_render_values] from form_render_values form_render_values::@3 - [254] (byte) form_render_values::idx#2 ← phi( form_render_values/(byte/signed byte/word/signed word/dword/signed dword) 0 form_render_values::@3/(byte) form_render_values::idx#1 ) [ form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#2 ] ) - [255] (byte) form_field_ptr::field_idx#0 ← (byte) form_render_values::idx#2 [ form_field_ptr::field_idx#0 form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:251 [ form_field_ptr::field_idx#0 form_render_values::idx#2 ] ) - [256] call form_field_ptr param-assignment [ form_field_ptr::return#0 form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:251 [ form_field_ptr::return#0 form_render_values::idx#2 ] ) - [257] (byte*) form_field_ptr::return#2 ← (byte*) form_field_ptr::return#0 [ form_render_values::idx#2 form_field_ptr::return#2 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#2 form_field_ptr::return#2 ] ) + [275] (byte) form_render_values::idx#2 ← phi( form_render_values/(byte/signed byte/word/signed word/dword/signed dword) 0 form_render_values::@3/(byte) form_render_values::idx#1 ) [ form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 ] ) + [276] (byte) form_field_ptr::field_idx#0 ← (byte) form_render_values::idx#2 [ form_field_ptr::field_idx#0 form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:272 [ form_field_ptr::field_idx#0 form_render_values::idx#2 ] ) + [277] call form_field_ptr param-assignment [ form_field_ptr::return#0 form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:272 [ form_field_ptr::return#0 form_render_values::idx#2 ] ) + [278] (byte*) form_field_ptr::return#2 ← (byte*) form_field_ptr::return#0 [ form_render_values::idx#2 form_field_ptr::return#2 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 form_field_ptr::return#2 ] ) to:form_render_values::@3 form_render_values::@3: scope:[form_render_values] from form_render_values::@1 - [258] (byte*) form_render_values::field#0 ← (byte*) form_field_ptr::return#2 [ form_render_values::idx#2 form_render_values::field#0 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#2 form_render_values::field#0 ] ) - [259] *((byte*) form_render_values::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) [ form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#2 ] ) - [260] (byte) form_render_values::idx#1 ← ++ (byte) form_render_values::idx#2 [ form_render_values::idx#1 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#1 ] ) - [261] if((byte) form_render_values::idx#1<(const byte) form_fields_cnt#0) goto form_render_values::@1 [ form_render_values::idx#1 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#1 ] ) + [279] (byte*) form_render_values::field#0 ← (byte*) form_field_ptr::return#2 [ form_render_values::idx#2 form_render_values::field#0 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 form_render_values::field#0 ] ) + [280] *((byte*) form_render_values::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) [ form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 ] ) + [281] (byte) form_render_values::idx#1 ← ++ (byte) form_render_values::idx#2 [ form_render_values::idx#1 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#1 ] ) + [282] if((byte) form_render_values::idx#1<(const byte) form_fields_cnt#0) goto form_render_values::@1 [ form_render_values::idx#1 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#1 ] ) to:form_render_values::@return form_render_values::@return: scope:[form_render_values] from form_render_values::@3 - [262] return [ ] ( main:2::form_init:10::form_render_values:251 [ ] ) + [283] return [ ] ( main:2::form_init:10::form_render_values:272 [ ] ) to:@return -form_set_screen: scope:[form_set_screen] from form_init::@4 - [263] phi() [ ] ( main:2::form_init:10::form_set_screen:249 [ ] ) +form_set_screen: scope:[form_set_screen] from form_init::@6 + [284] phi() [ ] ( main:2::form_init:10::form_set_screen:270 [ ] ) to:form_set_screen::@1 form_set_screen::@1: scope:[form_set_screen] from form_set_screen form_set_screen::@1 - [264] (byte) form_set_screen::y#2 ← phi( form_set_screen/(byte/signed byte/word/signed word/dword/signed dword) 0 form_set_screen::@1/(byte) form_set_screen::y#1 ) [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#2 form_set_screen::y#2 ] ) - [264] (byte*) form_set_screen::line#2 ← phi( form_set_screen/(const byte*) form_set_screen::screen#0 form_set_screen::@1/(byte*) form_set_screen::line#1 ) [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#2 form_set_screen::y#2 ] ) - [265] (byte~) form_set_screen::$0 ← < (byte*) form_set_screen::line#2 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$0 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$0 ] ) - [266] *((const byte[25]) form_line_lo#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$0 [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#2 form_set_screen::y#2 ] ) - [267] (byte~) form_set_screen::$1 ← > (byte*) form_set_screen::line#2 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$1 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$1 ] ) - [268] *((const byte[25]) form_line_hi#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$1 [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#2 form_set_screen::y#2 ] ) - [269] (byte*) form_set_screen::line#1 ← (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ form_set_screen::y#2 form_set_screen::line#1 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::y#2 form_set_screen::line#1 ] ) - [270] (byte) form_set_screen::y#1 ← ++ (byte) form_set_screen::y#2 [ form_set_screen::line#1 form_set_screen::y#1 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#1 form_set_screen::y#1 ] ) - [271] if((byte) form_set_screen::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 25) goto form_set_screen::@1 [ form_set_screen::line#1 form_set_screen::y#1 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#1 form_set_screen::y#1 ] ) + [285] (byte) form_set_screen::y#2 ← phi( form_set_screen/(byte/signed byte/word/signed word/dword/signed dword) 0 form_set_screen::@1/(byte) form_set_screen::y#1 ) [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#2 form_set_screen::y#2 ] ) + [285] (byte*) form_set_screen::line#2 ← phi( form_set_screen/(const byte*) FORM_SCREEN#0 form_set_screen::@1/(byte*) form_set_screen::line#1 ) [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#2 form_set_screen::y#2 ] ) + [286] (byte~) form_set_screen::$0 ← < (byte*) form_set_screen::line#2 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$0 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$0 ] ) + [287] *((const byte[25]) form_line_lo#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$0 [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#2 form_set_screen::y#2 ] ) + [288] (byte~) form_set_screen::$1 ← > (byte*) form_set_screen::line#2 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$1 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$1 ] ) + [289] *((const byte[25]) form_line_hi#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$1 [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#2 form_set_screen::y#2 ] ) + [290] (byte*) form_set_screen::line#1 ← (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ form_set_screen::y#2 form_set_screen::line#1 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::y#2 form_set_screen::line#1 ] ) + [291] (byte) form_set_screen::y#1 ← ++ (byte) form_set_screen::y#2 [ form_set_screen::line#1 form_set_screen::y#1 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#1 form_set_screen::y#1 ] ) + [292] if((byte) form_set_screen::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 25) goto form_set_screen::@1 [ form_set_screen::line#1 form_set_screen::y#1 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#1 form_set_screen::y#1 ] ) to:form_set_screen::@return form_set_screen::@return: scope:[form_set_screen] from form_set_screen::@1 - [272] return [ ] ( main:2::form_init:10::form_set_screen:249 [ ] ) + [293] return [ ] ( main:2::form_init:10::form_set_screen:270 [ ] ) to:@return -print_str_lines: scope:[print_str_lines] from form_init::@1 form_init::@3 - [273] (byte*) print_str_lines::str#5 ← phi( form_init::@1/(const string) FORM_COLS#0 form_init::@3/(const string) FORM_TEXT#0 ) [ print_str_lines::str#5 print_set_screen::screen#2 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#5 print_set_screen::screen#2 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#5 print_set_screen::screen#2 ] ) - [274] (byte*~) print_char_cursor#60 ← (byte*) print_set_screen::screen#2 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ) +print_str_lines: scope:[print_str_lines] from form_init::@2 form_init::@5 + [294] (byte*) print_str_lines::str#5 ← phi( form_init::@2/(const string) FORM_COLS#0 form_init::@5/(const string) FORM_TEXT#0 ) [ print_str_lines::str#5 print_set_screen::screen#2 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#5 print_set_screen::screen#2 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#5 print_set_screen::screen#2 ] ) + [295] (byte*~) print_char_cursor#60 ← (byte*) print_set_screen::screen#2 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ) to:print_str_lines::@1 print_str_lines::@1: scope:[print_str_lines] from print_str_lines print_str_lines::@9 - [275] (byte*) print_line_cursor#16 ← phi( print_str_lines/(byte*) print_set_screen::screen#2 print_str_lines::@9/(byte*) print_line_cursor#18 ) [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ) - [275] (byte*) print_char_cursor#18 ← phi( print_str_lines/(byte*~) print_char_cursor#60 print_str_lines::@9/(byte*~) print_char_cursor#61 ) [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ) - [275] (byte*) print_str_lines::str#3 ← phi( print_str_lines/(byte*) print_str_lines::str#5 print_str_lines::@9/(byte*) print_str_lines::str#0 ) [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ) - [276] if(*((byte*) print_str_lines::str#3)!=(byte) '@') goto print_str_lines::@4 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ) + [296] (byte*) print_line_cursor#2 ← phi( print_str_lines/(byte*) print_set_screen::screen#2 print_str_lines::@9/(byte*) print_line_cursor#22 ) [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ) + [296] (byte*) print_char_cursor#22 ← phi( print_str_lines/(byte*~) print_char_cursor#60 print_str_lines::@9/(byte*~) print_char_cursor#61 ) [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ) + [296] (byte*) print_str_lines::str#3 ← phi( print_str_lines/(byte*) print_str_lines::str#5 print_str_lines::@9/(byte*) print_str_lines::str#0 ) [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ) + [297] if(*((byte*) print_str_lines::str#3)!=(byte) '@') goto print_str_lines::@4 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ) to:print_str_lines::@return print_str_lines::@return: scope:[print_str_lines] from print_str_lines::@1 - [277] return [ ] ( main:2::form_init:10::print_str_lines:243 [ ] main:2::form_init:10::print_str_lines:247 [ ] ) + [298] return [ ] ( main:2::form_init:10::print_str_lines:262 [ ] main:2::form_init:10::print_str_lines:268 [ ] ) to:@return print_str_lines::@4: scope:[print_str_lines] from print_str_lines::@1 print_str_lines::@5 - [278] (byte*) print_char_cursor#16 ← phi( print_str_lines::@1/(byte*) print_char_cursor#18 print_str_lines::@5/(byte*) print_char_cursor#31 ) [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 ] ) - [278] (byte*) print_str_lines::str#4 ← phi( print_str_lines::@1/(byte*) print_str_lines::str#3 print_str_lines::@5/(byte*) print_str_lines::str#0 ) [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 ] ) - [279] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#4) [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 print_str_lines::ch#0 ] ) - [280] (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#4 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ) - [281] if((byte) print_str_lines::ch#0==(byte) '@') goto print_str_lines::@5 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ) + [299] (byte*) print_char_cursor#20 ← phi( print_str_lines::@1/(byte*) print_char_cursor#22 print_str_lines::@5/(byte*) print_char_cursor#38 ) [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 ] ) + [299] (byte*) print_str_lines::str#4 ← phi( print_str_lines::@1/(byte*) print_str_lines::str#3 print_str_lines::@5/(byte*) print_str_lines::str#0 ) [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 ] ) + [300] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#4) [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] ) + [301] (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#4 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ) + [302] if((byte) print_str_lines::ch#0==(byte) '@') goto print_str_lines::@5 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ) to:print_str_lines::@8 print_str_lines::@8: scope:[print_str_lines] from print_str_lines::@4 - [282] *((byte*) print_char_cursor#16) ← (byte) print_str_lines::ch#0 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ) - [283] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#16 [ print_line_cursor#16 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] ) + [303] *((byte*) print_char_cursor#20) ← (byte) print_str_lines::ch#0 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ) + [304] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#20 [ print_line_cursor#2 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] ) to:print_str_lines::@5 print_str_lines::@5: scope:[print_str_lines] from print_str_lines::@4 print_str_lines::@8 - [284] (byte*) print_char_cursor#31 ← phi( print_str_lines::@4/(byte*) print_char_cursor#16 print_str_lines::@8/(byte*) print_char_cursor#1 ) [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 print_str_lines::ch#0 ] ) - [285] if((byte) print_str_lines::ch#0!=(byte) '@') goto print_str_lines::@4 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 ] ) + [305] (byte*) print_char_cursor#38 ← phi( print_str_lines::@4/(byte*) print_char_cursor#20 print_str_lines::@8/(byte*) print_char_cursor#1 ) [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 print_str_lines::ch#0 ] ) + [306] if((byte) print_str_lines::ch#0!=(byte) '@') goto print_str_lines::@4 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 ] ) to:print_str_lines::@9 print_str_lines::@9: scope:[print_str_lines] from print_str_lines::@5 - [286] phi() [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 ] ) - [287] call print_ln param-assignment [ print_str_lines::str#0 print_line_cursor#18 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#0 print_line_cursor#18 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#0 print_line_cursor#18 ] ) - [288] (byte*~) print_char_cursor#61 ← (byte*) print_line_cursor#18 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#18 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#18 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#18 ] ) + [307] phi() [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 ] ) + [308] call print_ln param-assignment [ print_str_lines::str#0 print_line_cursor#22 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#0 print_line_cursor#22 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#0 print_line_cursor#22 ] ) + [309] (byte*~) print_char_cursor#61 ← (byte*) print_line_cursor#22 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#22 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#22 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#22 ] ) to:print_str_lines::@1 print_ln: scope:[print_ln] from print_str_lines::@9 - [289] phi() [ print_line_cursor#16 print_char_cursor#31 ] ( main:2::form_init:10::print_str_lines:243::print_ln:287 [ print_str_lines::str#0 print_line_cursor#16 print_char_cursor#31 ] main:2::form_init:10::print_str_lines:247::print_ln:287 [ print_str_lines::str#0 print_line_cursor#16 print_char_cursor#31 ] ) + [310] phi() [ print_line_cursor#2 print_char_cursor#38 ] ( main:2::form_init:10::print_str_lines:262::print_ln:308 [ print_str_lines::str#0 print_line_cursor#2 print_char_cursor#38 ] main:2::form_init:10::print_str_lines:268::print_ln:308 [ print_str_lines::str#0 print_line_cursor#2 print_char_cursor#38 ] ) to:print_ln::@1 print_ln::@1: scope:[print_ln] from print_ln print_ln::@1 - [290] (byte*) print_line_cursor#17 ← phi( print_ln/(byte*) print_line_cursor#16 print_ln::@1/(byte*) print_line_cursor#18 ) [ print_char_cursor#31 print_line_cursor#17 ] ( main:2::form_init:10::print_str_lines:243::print_ln:287 [ print_str_lines::str#0 print_char_cursor#31 print_line_cursor#17 ] main:2::form_init:10::print_str_lines:247::print_ln:287 [ print_str_lines::str#0 print_char_cursor#31 print_line_cursor#17 ] ) - [291] (byte*) print_line_cursor#18 ← (byte*) print_line_cursor#17 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ print_line_cursor#18 print_char_cursor#31 ] ( main:2::form_init:10::print_str_lines:243::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] main:2::form_init:10::print_str_lines:247::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] ) - [292] if((byte*) print_line_cursor#18<(byte*) print_char_cursor#31) goto print_ln::@1 [ print_line_cursor#18 print_char_cursor#31 ] ( main:2::form_init:10::print_str_lines:243::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] main:2::form_init:10::print_str_lines:247::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] ) + [311] (byte*) print_line_cursor#21 ← phi( print_ln/(byte*) print_line_cursor#2 print_ln::@1/(byte*) print_line_cursor#22 ) [ print_char_cursor#38 print_line_cursor#21 ] ( main:2::form_init:10::print_str_lines:262::print_ln:308 [ print_str_lines::str#0 print_char_cursor#38 print_line_cursor#21 ] main:2::form_init:10::print_str_lines:268::print_ln:308 [ print_str_lines::str#0 print_char_cursor#38 print_line_cursor#21 ] ) + [312] (byte*) print_line_cursor#22 ← (byte*) print_line_cursor#21 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ print_line_cursor#22 print_char_cursor#38 ] ( main:2::form_init:10::print_str_lines:262::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] main:2::form_init:10::print_str_lines:268::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] ) + [313] if((byte*) print_line_cursor#22<(byte*) print_char_cursor#38) goto print_ln::@1 [ print_line_cursor#22 print_char_cursor#38 ] ( main:2::form_init:10::print_str_lines:262::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] main:2::form_init:10::print_str_lines:268::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] ) to:print_ln::@return print_ln::@return: scope:[print_ln] from print_ln::@1 - [293] return [ print_line_cursor#18 ] ( main:2::form_init:10::print_str_lines:243::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 ] main:2::form_init:10::print_str_lines:247::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 ] ) + [314] return [ print_line_cursor#22 ] ( main:2::form_init:10::print_str_lines:262::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 ] main:2::form_init:10::print_str_lines:268::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 ] ) to:@return -print_set_screen: scope:[print_set_screen] from form_init form_init::@2 - [294] (byte*) print_set_screen::screen#2 ← phi( form_init/(const byte*) COLS#0+(const word) FORM_OFFSET#0 form_init::@2/(const byte*) FORM_SCREEN#0+(const word) FORM_OFFSET#0 ) [ print_set_screen::screen#2 ] ( main:2::form_init:10::print_set_screen:241 [ print_set_screen::screen#2 ] main:2::form_init:10::print_set_screen:245 [ print_set_screen::screen#2 ] ) +print_cls: scope:[print_cls] from form_init::@1 form_init::@4 + [315] (byte*) print_cls::sc#0 ← (byte*) print_set_screen::screen#2 [ print_set_screen::screen#2 print_cls::sc#0 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#0 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#0 ] ) + to:print_cls::@1 +print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 + [316] (byte*) print_cls::sc#2 ← phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) [ print_set_screen::screen#2 print_cls::sc#2 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#2 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#2 ] ) + [317] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_set_screen::screen#2 print_cls::sc#2 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#2 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#2 ] ) + [318] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_set_screen::screen#2 print_cls::sc#1 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#1 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#1 ] ) + [319] (byte*~) print_cls::$0 ← (byte*) print_set_screen::screen#2 + (word/signed word/dword/signed dword) 1000 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] ) + [320] if((byte*) print_cls::sc#1!=(byte*~) print_cls::$0) goto print_cls::@1 [ print_set_screen::screen#2 print_cls::sc#1 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#1 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#1 ] ) + to:print_cls::@return +print_cls::@return: scope:[print_cls] from print_cls::@1 + [321] return [ print_set_screen::screen#2 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 ] ) + to:@return +print_set_screen: scope:[print_set_screen] from form_init form_init::@3 + [322] (byte*) print_set_screen::screen#2 ← phi( form_init/(const byte*) COLS#0 form_init::@3/(const byte*) FORM_SCREEN#0 ) [ print_set_screen::screen#2 ] ( main:2::form_init:10::print_set_screen:258 [ print_set_screen::screen#2 ] main:2::form_init:10::print_set_screen:264 [ print_set_screen::screen#2 ] ) to:print_set_screen::@return print_set_screen::@return: scope:[print_set_screen] from print_set_screen - [295] return [ print_set_screen::screen#2 ] ( main:2::form_init:10::print_set_screen:241 [ print_set_screen::screen#2 ] main:2::form_init:10::print_set_screen:245 [ print_set_screen::screen#2 ] ) + [323] return [ print_set_screen::screen#2 ] ( main:2::form_init:10::print_set_screen:258 [ print_set_screen::screen#2 ] main:2::form_init:10::print_set_screen:264 [ print_set_screen::screen#2 ] ) to:@return -gfx_init: scope:[gfx_init] from main::@19 - [296] phi() [ ] ( main:2::gfx_init:8 [ ] ) - [297] call gfx_init_plane_8bppchunky param-assignment [ ] ( main:2::gfx_init:8 [ ] ) +gfx_init: scope:[gfx_init] from main::@7 + [324] phi() [ ] ( main:2::gfx_init:8 [ ] ) + [325] call gfx_init_screen_stdchar param-assignment [ ] ( main:2::gfx_init:8 [ ] ) + to:gfx_init::@1 +gfx_init::@1: scope:[gfx_init] from gfx_init + [326] phi() [ ] ( main:2::gfx_init:8 [ ] ) + [327] call gfx_init_plane_8bppchunky param-assignment [ ] ( main:2::gfx_init:8 [ ] ) to:gfx_init::@return -gfx_init::@return: scope:[gfx_init] from gfx_init - [298] return [ ] ( main:2::gfx_init:8 [ ] ) +gfx_init::@return: scope:[gfx_init] from gfx_init::@1 + [328] return [ ] ( main:2::gfx_init:8 [ ] ) to:@return -gfx_init_plane_8bppchunky: scope:[gfx_init_plane_8bppchunky] from gfx_init - [299] phi() [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ ] ) - [300] call dtvSetCpuBankSegment1 param-assignment [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ ] ) +gfx_init_plane_8bppchunky: scope:[gfx_init_plane_8bppchunky] from gfx_init::@1 + [329] phi() [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ ] ) + [330] call dtvSetCpuBankSegment1 param-assignment [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ ] ) to:gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky::@1: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky gfx_init_plane_8bppchunky::@5 - [301] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 ← phi( gfx_init_plane_8bppchunky::@5/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky/++((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) 16384 ) [ gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#7 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#7 ] ) - [301] (byte) gfx_init_plane_8bppchunky::y#6 ← phi( gfx_init_plane_8bppchunky::@5/(byte) gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#7 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#7 ] ) - [301] (byte*) gfx_init_plane_8bppchunky::gfxb#5 ← phi( gfx_init_plane_8bppchunky::@5/(byte*) gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky/((byte*))(word/signed word/dword/signed dword) 16384 ) [ gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#7 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#7 ] ) + [331] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 ← phi( gfx_init_plane_8bppchunky::@5/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky/++((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) 16384 ) [ gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#7 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#7 ] ) + [331] (byte) gfx_init_plane_8bppchunky::y#6 ← phi( gfx_init_plane_8bppchunky::@5/(byte) gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#7 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#7 ] ) + [331] (byte*) gfx_init_plane_8bppchunky::gfxb#5 ← phi( gfx_init_plane_8bppchunky::@5/(byte*) gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky/((byte*))(word/signed word/dword/signed dword) 16384 ) [ gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#7 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#7 ] ) to:gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@2: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky::@3 - [302] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 ← phi( gfx_init_plane_8bppchunky::@1/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::@3/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 ) [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) - [302] (word) gfx_init_plane_8bppchunky::x#2 ← phi( gfx_init_plane_8bppchunky::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_plane_8bppchunky::@3/(word) gfx_init_plane_8bppchunky::x#1 ) [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) - [302] (byte*) gfx_init_plane_8bppchunky::gfxb#3 ← phi( gfx_init_plane_8bppchunky::@1/(byte*) gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::@3/(byte*) gfx_init_plane_8bppchunky::gfxb#1 ) [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) - [303] if((byte*) gfx_init_plane_8bppchunky::gfxb#3!=(word/dword/signed dword) 32768) goto gfx_init_plane_8bppchunky::@3 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) + [332] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 ← phi( gfx_init_plane_8bppchunky::@1/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::@3/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 ) [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) + [332] (word) gfx_init_plane_8bppchunky::x#2 ← phi( gfx_init_plane_8bppchunky::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_plane_8bppchunky::@3/(word) gfx_init_plane_8bppchunky::x#1 ) [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) + [332] (byte*) gfx_init_plane_8bppchunky::gfxb#3 ← phi( gfx_init_plane_8bppchunky::@1/(byte*) gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::@3/(byte*) gfx_init_plane_8bppchunky::gfxb#1 ) [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) + [333] if((byte*) gfx_init_plane_8bppchunky::gfxb#3!=(word/dword/signed dword) 32768) goto gfx_init_plane_8bppchunky::@3 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) to:gfx_init_plane_8bppchunky::@4 gfx_init_plane_8bppchunky::@4: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@2 - [304] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ← (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 dtvSetCpuBankSegment1::cpuBankIdx#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 dtvSetCpuBankSegment1::cpuBankIdx#1 ] ) - [305] call dtvSetCpuBankSegment1 param-assignment [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) + [334] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ← (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 dtvSetCpuBankSegment1::cpuBankIdx#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 dtvSetCpuBankSegment1::cpuBankIdx#1 ] ) + [335] call dtvSetCpuBankSegment1 param-assignment [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) to:gfx_init_plane_8bppchunky::@8 gfx_init_plane_8bppchunky::@8: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@4 - [306] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ← ++ (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] ) + [336] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ← ++ (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] ) to:gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@3: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@8 - [307] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 ← phi( gfx_init_plane_8bppchunky::@2/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::@8/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ) [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) - [307] (byte*) gfx_init_plane_8bppchunky::gfxb#4 ← phi( gfx_init_plane_8bppchunky::@2/(byte*) gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::@8/((byte*))(word/signed word/dword/signed dword) 16384 ) [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) - [308] (word~) gfx_init_plane_8bppchunky::$6 ← (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ) - [309] (byte) gfx_init_plane_8bppchunky::c#0 ← ((byte)) (word~) gfx_init_plane_8bppchunky::$6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ) - [310] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ← (byte) gfx_init_plane_8bppchunky::c#0 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) - [311] (byte*) gfx_init_plane_8bppchunky::gfxb#1 ← ++ (byte*) gfx_init_plane_8bppchunky::gfxb#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 ] ) - [312] (word) gfx_init_plane_8bppchunky::x#1 ← ++ (word) gfx_init_plane_8bppchunky::x#2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) - [313] if((word) gfx_init_plane_8bppchunky::x#1!=(word/signed word/dword/signed dword) 320) goto gfx_init_plane_8bppchunky::@2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) + [337] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 ← phi( gfx_init_plane_8bppchunky::@2/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::@8/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ) [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) + [337] (byte*) gfx_init_plane_8bppchunky::gfxb#4 ← phi( gfx_init_plane_8bppchunky::@2/(byte*) gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::@8/((byte*))(word/signed word/dword/signed dword) 16384 ) [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) + [338] (word~) gfx_init_plane_8bppchunky::$6 ← (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ) + [339] (byte) gfx_init_plane_8bppchunky::c#0 ← ((byte)) (word~) gfx_init_plane_8bppchunky::$6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ) + [340] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ← (byte) gfx_init_plane_8bppchunky::c#0 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) + [341] (byte*) gfx_init_plane_8bppchunky::gfxb#1 ← ++ (byte*) gfx_init_plane_8bppchunky::gfxb#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 ] ) + [342] (word) gfx_init_plane_8bppchunky::x#1 ← ++ (word) gfx_init_plane_8bppchunky::x#2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) + [343] if((word) gfx_init_plane_8bppchunky::x#1!=(word/signed word/dword/signed dword) 320) goto gfx_init_plane_8bppchunky::@2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) to:gfx_init_plane_8bppchunky::@5 gfx_init_plane_8bppchunky::@5: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@3 - [314] (byte) gfx_init_plane_8bppchunky::y#1 ← ++ (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ) - [315] if((byte) gfx_init_plane_8bppchunky::y#1!=(byte/word/signed word/dword/signed dword) 200) goto gfx_init_plane_8bppchunky::@1 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ) + [344] (byte) gfx_init_plane_8bppchunky::y#1 ← ++ (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ) + [345] if((byte) gfx_init_plane_8bppchunky::y#1!=(byte/word/signed word/dword/signed dword) 200) goto gfx_init_plane_8bppchunky::@1 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ) to:gfx_init_plane_8bppchunky::@6 gfx_init_plane_8bppchunky::@6: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@5 - [316] phi() [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ ] ) - [317] call dtvSetCpuBankSegment1 param-assignment [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ ] ) + [346] phi() [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ ] ) + [347] call dtvSetCpuBankSegment1 param-assignment [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ ] ) to:gfx_init_plane_8bppchunky::@return gfx_init_plane_8bppchunky::@return: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@6 - [318] return [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ ] ) + [348] return [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ ] ) to:@return dtvSetCpuBankSegment1: scope:[dtvSetCpuBankSegment1] from gfx_init_plane_8bppchunky gfx_init_plane_8bppchunky::@4 gfx_init_plane_8bppchunky::@6 - [319] (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 ← phi( gfx_init_plane_8bppchunky/((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) 16384 gfx_init_plane_8bppchunky::@4/(byte) dtvSetCpuBankSegment1::cpuBankIdx#1 gfx_init_plane_8bppchunky::@6/((byte))(word/signed word/dword/signed dword) 16384/(word/signed word/dword/signed dword) 16384 ) [ dtvSetCpuBankSegment1::cpuBankIdx#3 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:300 [ dtvSetCpuBankSegment1::cpuBankIdx#3 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:305 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 dtvSetCpuBankSegment1::cpuBankIdx#3 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:317 [ dtvSetCpuBankSegment1::cpuBankIdx#3 ] ) - [320] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ← (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:300 [ ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:305 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:317 [ ] ) + [349] (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 ← phi( gfx_init_plane_8bppchunky/((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) 16384 gfx_init_plane_8bppchunky::@4/(byte) dtvSetCpuBankSegment1::cpuBankIdx#1 gfx_init_plane_8bppchunky::@6/((byte))(word/signed word/dword/signed dword) 16384/(word/signed word/dword/signed dword) 16384 ) [ dtvSetCpuBankSegment1::cpuBankIdx#3 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:330 [ dtvSetCpuBankSegment1::cpuBankIdx#3 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:335 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 dtvSetCpuBankSegment1::cpuBankIdx#3 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:347 [ dtvSetCpuBankSegment1::cpuBankIdx#3 ] ) + [350] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ← (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:330 [ ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:335 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:347 [ ] ) asm { .byte$32,$dd lda$ff .byte$32,$00 } to:dtvSetCpuBankSegment1::@return dtvSetCpuBankSegment1::@return: scope:[dtvSetCpuBankSegment1] from dtvSetCpuBankSegment1 - [322] return [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:300 [ ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:305 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:317 [ ] ) + [352] return [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:330 [ ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:335 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:347 [ ] ) + to:@return +gfx_init_screen_stdchar: scope:[gfx_init_screen_stdchar] from gfx_init + [353] phi() [ ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ ] ) + to:gfx_init_screen_stdchar::@1 +gfx_init_screen_stdchar::@1: scope:[gfx_init_screen_stdchar] from gfx_init_screen_stdchar gfx_init_screen_stdchar::@3 + [354] (byte*) gfx_init_screen_stdchar::ch#3 ← phi( gfx_init_screen_stdchar/(const byte*) VIC_SCREEN_STDCHAR#0 gfx_init_screen_stdchar::@3/(byte*) gfx_init_screen_stdchar::ch#1 ) [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#3 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#3 ] ) + [354] (byte) gfx_init_screen_stdchar::cy#4 ← phi( gfx_init_screen_stdchar/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_screen_stdchar::@3/(byte) gfx_init_screen_stdchar::cy#1 ) [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#3 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#3 ] ) + to:gfx_init_screen_stdchar::@2 +gfx_init_screen_stdchar::@2: scope:[gfx_init_screen_stdchar] from gfx_init_screen_stdchar::@1 gfx_init_screen_stdchar::@2 + [355] (byte*) gfx_init_screen_stdchar::ch#2 ← phi( gfx_init_screen_stdchar::@1/(byte*) gfx_init_screen_stdchar::ch#3 gfx_init_screen_stdchar::@2/(byte*) gfx_init_screen_stdchar::ch#1 ) [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 ] ) + [355] (byte) gfx_init_screen_stdchar::cx#2 ← phi( gfx_init_screen_stdchar::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_screen_stdchar::@2/(byte) gfx_init_screen_stdchar::cx#1 ) [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 ] ) + [356] (byte~) gfx_init_screen_stdchar::$0 ← (byte) gfx_init_screen_stdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$0 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$0 ] ) + [357] (byte~) gfx_init_screen_stdchar::$1 ← (byte~) gfx_init_screen_stdchar::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 ] ) + [358] (byte~) gfx_init_screen_stdchar::$2 ← (byte) gfx_init_screen_stdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 gfx_init_screen_stdchar::$2 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 gfx_init_screen_stdchar::$2 ] ) + [359] (byte~) gfx_init_screen_stdchar::$3 ← (byte~) gfx_init_screen_stdchar::$1 | (byte~) gfx_init_screen_stdchar::$2 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$3 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$3 ] ) + [360] *((byte*) gfx_init_screen_stdchar::ch#2) ← (byte~) gfx_init_screen_stdchar::$3 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 ] ) + [361] (byte*) gfx_init_screen_stdchar::ch#1 ← ++ (byte*) gfx_init_screen_stdchar::ch#2 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#2 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#2 ] ) + [362] (byte) gfx_init_screen_stdchar::cx#1 ← ++ (byte) gfx_init_screen_stdchar::cx#2 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#1 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#1 ] ) + [363] if((byte) gfx_init_screen_stdchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) 40) goto gfx_init_screen_stdchar::@2 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#1 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#1 ] ) + to:gfx_init_screen_stdchar::@3 +gfx_init_screen_stdchar::@3: scope:[gfx_init_screen_stdchar] from gfx_init_screen_stdchar::@2 + [364] (byte) gfx_init_screen_stdchar::cy#1 ← ++ (byte) gfx_init_screen_stdchar::cy#4 [ gfx_init_screen_stdchar::cy#1 gfx_init_screen_stdchar::ch#1 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#1 gfx_init_screen_stdchar::ch#1 ] ) + [365] if((byte) gfx_init_screen_stdchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) 25) goto gfx_init_screen_stdchar::@1 [ gfx_init_screen_stdchar::cy#1 gfx_init_screen_stdchar::ch#1 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#1 gfx_init_screen_stdchar::ch#1 ] ) + to:gfx_init_screen_stdchar::@return +gfx_init_screen_stdchar::@return: scope:[gfx_init_screen_stdchar] from gfx_init_screen_stdchar::@3 + [366] return [ ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ ] ) to:@return keyboard_init: scope:[keyboard_init] from main - [323] *((const byte*) CIA1_PORT_A_DDR#0) ← (byte/word/signed word/dword/signed dword) 255 [ ] ( main:2::keyboard_init:6 [ ] ) - [324] *((const byte*) CIA1_PORT_B_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::keyboard_init:6 [ ] ) + [367] *((const byte*) CIA1_PORT_A_DDR#0) ← (byte/word/signed word/dword/signed dword) 255 [ ] ( main:2::keyboard_init:6 [ ] ) + [368] *((const byte*) CIA1_PORT_B_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::keyboard_init:6 [ ] ) to:keyboard_init::@return keyboard_init::@return: scope:[keyboard_init] from keyboard_init - [325] return [ ] ( main:2::keyboard_init:6 [ ] ) + [369] return [ ] ( main:2::keyboard_init:6 [ ] ) to:@return DOMINATORS @begin dominated by @begin -@32 dominated by @32 @begin -@end dominated by @end @32 @begin -main dominated by main @32 @begin -main::@19 dominated by main @32 @begin main::@19 -main::@20 dominated by main @32 @begin main::@20 main::@19 -main::@1 dominated by main::@1 main @32 @begin main::@20 main::@19 -main::@return dominated by main::@1 main::@return main @32 @begin main::@20 main::@19 -main::@4 dominated by main::@1 main::@4 main @32 @begin main::@20 main::@19 -main::@6 dominated by main::@1 main::@6 main::@4 main @32 @begin main::@20 main::@19 -main::@7 dominated by main::@7 main::@1 main::@6 main::@4 main @32 @begin main::@20 main::@19 -main::@9 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 main @32 @begin main::@20 main::@19 -main::@23 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 main @32 @begin main::@20 main::@23 main::@19 -gfx_mode dominated by main::@9 main::@7 main::@1 main::@6 main::@4 gfx_mode main @32 @begin main::@20 main::@23 main::@19 -gfx_mode::@11 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 gfx_mode gfx_mode::@11 main @32 @begin main::@20 main::@23 main::@19 -gfx_mode::@1 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 gfx_mode gfx_mode::@1 main @32 @begin main::@20 main::@23 main::@19 -gfx_mode::@12 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 gfx_mode gfx_mode::@1 gfx_mode::@12 main @32 @begin main::@20 main::@23 main::@19 -gfx_mode::@2 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 gfx_mode gfx_mode::@2 gfx_mode::@1 main @32 @begin main::@20 main::@23 main::@19 -gfx_mode::@13 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 gfx_mode gfx_mode::@2 gfx_mode::@1 gfx_mode::@13 main @32 @begin main::@20 main::@23 main::@19 -gfx_mode::@3 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 gfx_mode gfx_mode::@3 gfx_mode::@2 gfx_mode::@1 main @32 @begin main::@20 main::@23 main::@19 -gfx_mode::@14 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 gfx_mode gfx_mode::@3 gfx_mode::@2 gfx_mode::@1 gfx_mode::@14 main @32 @begin main::@20 main::@23 main::@19 -gfx_mode::@4 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@2 gfx_mode::@1 main @32 @begin main::@20 main::@23 main::@19 -gfx_mode::@15 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@2 gfx_mode::@1 gfx_mode::@15 main @32 @begin main::@20 main::@23 main::@19 -gfx_mode::@5 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 main @32 @begin main::@20 main::@23 main::@19 -gfx_mode::@16 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 gfx_mode::@16 main @32 @begin main::@20 main::@23 main::@19 -gfx_mode::@6 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@6 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 main @32 @begin main::@20 main::@23 main::@19 -gfx_mode::@17 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@6 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 gfx_mode::@17 main @32 @begin main::@20 main::@23 main::@19 -gfx_mode::@7 dominated by main::@9 main::@7 gfx_mode::@7 main::@1 main::@6 main::@4 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@6 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 main @32 @begin main::@20 main::@23 main::@19 -gfx_mode::@18 dominated by main::@9 main::@7 gfx_mode::@7 main::@1 main::@6 main::@4 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@6 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 gfx_mode::@18 main @32 @begin main::@20 main::@23 main::@19 -gfx_mode::@8 dominated by main::@9 main::@7 gfx_mode::@8 gfx_mode::@7 main::@1 main::@6 main::@4 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@6 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 main @32 @begin main::@20 main::@23 main::@19 -gfx_mode::@19 dominated by main::@9 main::@7 gfx_mode::@8 gfx_mode::@7 main::@1 main::@6 main::@4 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@6 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 gfx_mode::@19 main @32 @begin main::@20 main::@23 main::@19 -gfx_mode::@9 dominated by main::@9 main::@7 gfx_mode::@8 gfx_mode::@7 gfx_mode::@9 main::@1 main::@6 main::@4 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@6 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 main @32 @begin main::@20 main::@23 main::@19 -gfx_mode::@10 dominated by main::@9 main::@7 gfx_mode::@8 gfx_mode::@7 gfx_mode::@9 main::@1 main::@6 main::@4 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@6 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 gfx_mode::@10 main @32 @begin main::@20 main::@23 main::@19 -gfx_mode::@return dominated by main::@9 main::@7 gfx_mode::@8 gfx_mode::@7 gfx_mode::@9 main::@1 main::@6 main::@4 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@6 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 gfx_mode::@10 gfx_mode::@return main @32 @begin main::@20 main::@23 main::@19 -form_control dominated by main::@9 main::@7 main::@1 main::@6 main::@4 main @32 @begin main::@20 main::@19 form_control -form_control::@29 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 form_control::@29 main @32 @begin main::@20 main::@19 form_control -form_control::@1 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 form_control::@1 form_control::@29 main @32 @begin main::@20 main::@19 form_control -form_control::@15 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 form_control::@15 form_control::@1 form_control::@29 main @32 @begin main::@20 main::@19 form_control -form_control::@3 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 main::@19 form_control -form_control::@30 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 form_control::@1 form_control::@3 form_control::@30 form_control::@29 main @32 @begin main::@20 main::@19 form_control -form_control::@31 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 form_control::@1 form_control::@3 form_control::@30 form_control::@31 form_control::@29 main @32 @begin main::@20 main::@19 form_control -form_control::@17 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 form_control::@17 form_control::@1 form_control::@3 form_control::@30 form_control::@31 form_control::@29 main @32 @begin main::@20 main::@19 form_control -form_control::@18 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 form_control::@17 form_control::@18 form_control::@1 form_control::@3 form_control::@30 form_control::@31 form_control::@29 main @32 @begin main::@20 main::@19 form_control -form_control::@7 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 form_control::@17 form_control::@1 form_control::@3 form_control::@30 form_control::@7 form_control::@31 form_control::@29 main @32 @begin main::@20 main::@19 form_control -form_control::@return dominated by main::@9 main::@7 main::@1 main::@6 main::@4 form_control::@1 form_control::@3 form_control::@30 form_control::@31 form_control::@return form_control::@29 main @32 @begin main::@20 main::@19 form_control -form_control::@33 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 form_control::@17 form_control::@18 form_control::@1 form_control::@3 form_control::@30 form_control::@31 form_control::@33 form_control::@29 main @32 @begin main::@20 main::@19 form_control -form_control::@5 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 form_control::@17 form_control::@1 form_control::@5 form_control::@3 form_control::@30 form_control::@31 form_control::@29 main @32 @begin main::@20 main::@19 form_control -form_control::@34 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 form_control::@17 form_control::@1 form_control::@5 form_control::@3 form_control::@30 form_control::@31 form_control::@34 form_control::@29 main @32 @begin main::@20 main::@19 form_control -form_control::@4 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 form_control::@1 form_control::@4 form_control::@3 form_control::@30 form_control::@31 form_control::@29 main @32 @begin main::@20 main::@19 form_control -form_control::@23 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 form_control::@23 form_control::@1 form_control::@4 form_control::@3 form_control::@30 form_control::@31 form_control::@29 main @32 @begin main::@20 main::@19 form_control -form_control::@24 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 form_control::@23 form_control::@1 form_control::@4 form_control::@3 form_control::@30 form_control::@31 form_control::@24 form_control::@29 main @32 @begin main::@20 main::@19 form_control -form_control::@25 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 form_control::@23 form_control::@1 form_control::@4 form_control::@3 form_control::@30 form_control::@31 form_control::@24 form_control::@25 form_control::@29 main @32 @begin main::@20 main::@19 form_control -form_control::@12 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 form_control::@23 form_control::@1 form_control::@4 form_control::@3 form_control::@30 form_control::@31 form_control::@29 main @32 @begin form_control::@12 main::@20 main::@19 form_control -form_control::@10 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 form_control::@23 form_control::@1 form_control::@4 form_control::@3 form_control::@30 form_control::@31 form_control::@29 main @32 @begin form_control::@10 main::@20 main::@19 form_control -form_control::@27 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 form_control::@23 form_control::@1 form_control::@4 form_control::@3 form_control::@30 form_control::@31 form_control::@27 form_control::@29 main @32 @begin form_control::@10 main::@20 main::@19 form_control -form_control::@2 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 form_control::@1 form_control::@2 form_control::@29 main @32 @begin main::@20 main::@19 form_control -form_control::@32 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 form_control::@32 form_control::@29 main @32 @begin main::@20 main::@19 form_control -keyboard_event_get dominated by main::@9 main::@7 main::@1 main::@6 main::@4 form_control::@1 form_control::@3 form_control::@30 form_control::@29 main keyboard_event_get @32 @begin main::@20 main::@19 form_control -keyboard_event_get::@return dominated by main::@9 main::@7 main::@1 main::@6 main::@4 form_control::@1 form_control::@3 form_control::@30 form_control::@29 keyboard_event_get::@return main keyboard_event_get @32 @begin main::@20 main::@19 form_control -keyboard_event_get::@1 dominated by main::@9 main::@7 main::@1 main::@6 main::@4 form_control::@1 form_control::@3 form_control::@30 form_control::@29 keyboard_event_get::@1 main keyboard_event_get @32 @begin main::@20 main::@19 form_control -keyboard_event_scan dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 main::@19 form_control -keyboard_event_scan::@1 dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 main::@19 form_control -keyboard_event_scan::@25 dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 keyboard_event_scan::@25 main::@19 form_control -keyboard_event_scan::@3 dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@3 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 keyboard_event_scan::@25 main::@19 form_control -keyboard_event_scan::@14 dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@3 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 keyboard_event_scan::@25 keyboard_event_scan::@14 main::@19 form_control -keyboard_event_scan::@15 dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@3 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 keyboard_event_scan::@25 keyboard_event_scan::@14 keyboard_event_scan::@15 main::@19 form_control -keyboard_event_scan::@16 dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@3 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 keyboard_event_scan::@25 keyboard_event_scan::@14 keyboard_event_scan::@16 keyboard_event_scan::@15 main::@19 form_control -keyboard_event_scan::@4 dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@3 keyboard_event_scan::@4 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 keyboard_event_scan::@25 main::@19 form_control -keyboard_event_scan::@18 dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@3 keyboard_event_scan::@4 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 keyboard_event_scan::@25 keyboard_event_scan::@18 main::@19 form_control -keyboard_event_scan::@8 dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@8 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 keyboard_event_scan::@25 main::@19 form_control -keyboard_event_scan::@20 dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@8 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 keyboard_event_scan::@25 keyboard_event_scan::@20 main::@19 form_control -keyboard_event_scan::@26 dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@8 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 keyboard_event_scan::@25 keyboard_event_scan::@26 keyboard_event_scan::@20 main::@19 form_control -keyboard_event_scan::@21 dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@8 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 keyboard_event_scan::@25 keyboard_event_scan::@26 keyboard_event_scan::@21 keyboard_event_scan::@20 main::@19 form_control -keyboard_event_scan::@9 dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@9 keyboard_event_scan::@8 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 keyboard_event_scan::@25 keyboard_event_scan::@26 keyboard_event_scan::@20 main::@19 form_control -keyboard_event_scan::@27 dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@9 keyboard_event_scan::@8 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 keyboard_event_scan::@25 keyboard_event_scan::@27 keyboard_event_scan::@26 keyboard_event_scan::@20 main::@19 form_control -keyboard_event_scan::@22 dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@9 keyboard_event_scan::@8 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 keyboard_event_scan::@25 keyboard_event_scan::@27 keyboard_event_scan::@26 keyboard_event_scan::@20 keyboard_event_scan::@22 main::@19 form_control -keyboard_event_scan::@10 dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@9 keyboard_event_scan::@8 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 keyboard_event_scan::@25 keyboard_event_scan::@27 keyboard_event_scan::@26 keyboard_event_scan::@20 keyboard_event_scan::@10 main::@19 form_control -keyboard_event_scan::@28 dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@9 keyboard_event_scan::@8 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 keyboard_event_scan::@28 keyboard_event_scan::@25 keyboard_event_scan::@27 keyboard_event_scan::@26 keyboard_event_scan::@20 keyboard_event_scan::@10 main::@19 form_control -keyboard_event_scan::@23 dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@9 keyboard_event_scan::@8 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 keyboard_event_scan::@28 keyboard_event_scan::@25 keyboard_event_scan::@27 keyboard_event_scan::@26 keyboard_event_scan::@20 keyboard_event_scan::@23 keyboard_event_scan::@10 main::@19 form_control -keyboard_event_scan::@11 dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@9 keyboard_event_scan::@8 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 keyboard_event_scan::@28 keyboard_event_scan::@25 keyboard_event_scan::@27 keyboard_event_scan::@26 keyboard_event_scan::@20 keyboard_event_scan::@10 main::@19 keyboard_event_scan::@11 form_control -keyboard_event_scan::@29 dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@9 keyboard_event_scan::@8 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 keyboard_event_scan::@29 keyboard_event_scan::@28 keyboard_event_scan::@25 keyboard_event_scan::@27 keyboard_event_scan::@26 keyboard_event_scan::@20 keyboard_event_scan::@10 main::@19 keyboard_event_scan::@11 form_control -keyboard_event_scan::@24 dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@9 keyboard_event_scan::@8 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 keyboard_event_scan::@29 keyboard_event_scan::@28 keyboard_event_scan::@25 keyboard_event_scan::@24 keyboard_event_scan::@27 keyboard_event_scan::@26 keyboard_event_scan::@20 keyboard_event_scan::@10 main::@19 keyboard_event_scan::@11 form_control -keyboard_event_scan::@return dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@9 keyboard_event_scan::@8 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 keyboard_event_scan::@return main @32 @begin main::@20 keyboard_event_scan::@29 keyboard_event_scan::@28 keyboard_event_scan::@25 keyboard_event_scan::@27 keyboard_event_scan::@26 keyboard_event_scan::@20 keyboard_event_scan::@10 main::@19 keyboard_event_scan::@11 form_control -keyboard_event_scan::@6 dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@6 keyboard_event_scan::@3 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 keyboard_event_scan::@25 keyboard_event_scan::@14 keyboard_event_scan::@15 main::@19 form_control -keyboard_event_scan::@2 dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@2 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 keyboard_event_scan::@25 main::@19 form_control -keyboard_event_pressed dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@8 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin keyboard_event_pressed main::@20 keyboard_event_scan::@25 keyboard_event_scan::@20 main::@19 form_control -keyboard_event_pressed::@return dominated by main::@9 main::@7 keyboard_event_scan keyboard_event_pressed::@return main::@1 main::@6 main::@4 keyboard_event_scan::@8 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin keyboard_event_pressed main::@20 keyboard_event_scan::@25 keyboard_event_scan::@20 main::@19 form_control -keyboard_matrix_read dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 keyboard_matrix_read main::@19 form_control -keyboard_matrix_read::@return dominated by main::@9 main::@7 keyboard_event_scan main::@1 main::@6 main::@4 keyboard_event_scan::@1 form_control::@1 form_control::@3 form_control::@29 main @32 @begin main::@20 keyboard_matrix_read main::@19 keyboard_matrix_read::@return form_control -form_field_ptr dominated by form_field_ptr main @32 @begin main::@20 main::@19 -form_field_ptr::@return dominated by form_field_ptr::@return form_field_ptr main @32 @begin main::@20 main::@19 -form_mode dominated by main::@1 main::@6 main::@4 main @32 @begin main::@20 form_mode main::@19 -form_mode::@1 dominated by main::@1 main::@6 main::@4 main @32 @begin form_mode::@1 main::@20 form_mode main::@19 -form_mode::@2 dominated by main::@1 main::@6 main::@4 main @32 @begin form_mode::@1 form_mode::@2 main::@20 form_mode main::@19 -form_mode::@return dominated by main::@1 main::@6 main::@4 form_mode::@return main @32 @begin form_mode::@1 form_mode::@2 main::@20 form_mode main::@19 -form_init dominated by form_init main @32 @begin main::@20 main::@19 -form_init::@1 dominated by form_init main @32 @begin main::@20 main::@19 form_init::@1 -form_init::@2 dominated by form_init main @32 @begin main::@20 main::@19 form_init::@1 form_init::@2 -form_init::@3 dominated by form_init main @32 @begin main::@20 main::@19 form_init::@1 form_init::@2 form_init::@3 -form_init::@4 dominated by form_init main @32 @begin main::@20 main::@19 form_init::@1 form_init::@2 form_init::@3 form_init::@4 -form_init::@5 dominated by form_init main @32 @begin main::@20 form_init::@5 main::@19 form_init::@1 form_init::@2 form_init::@3 form_init::@4 -form_init::@return dominated by form_init::@return form_init main @32 @begin main::@20 form_init::@5 main::@19 form_init::@1 form_init::@2 form_init::@3 form_init::@4 -form_render_values dominated by form_init main @32 @begin main::@20 form_render_values form_init::@5 main::@19 form_init::@1 form_init::@2 form_init::@3 form_init::@4 -form_render_values::@1 dominated by form_render_values::@1 form_init main @32 @begin main::@20 form_render_values form_init::@5 main::@19 form_init::@1 form_init::@2 form_init::@3 form_init::@4 -form_render_values::@3 dominated by form_render_values::@3 form_render_values::@1 form_init main @32 @begin main::@20 form_render_values form_init::@5 main::@19 form_init::@1 form_init::@2 form_init::@3 form_init::@4 -form_render_values::@return dominated by form_render_values::@3 form_render_values::@1 form_render_values::@return form_init main @32 @begin main::@20 form_render_values form_init::@5 main::@19 form_init::@1 form_init::@2 form_init::@3 form_init::@4 -form_set_screen dominated by form_init form_set_screen main @32 @begin main::@20 main::@19 form_init::@1 form_init::@2 form_init::@3 form_init::@4 -form_set_screen::@1 dominated by form_set_screen::@1 form_init form_set_screen main @32 @begin main::@20 main::@19 form_init::@1 form_init::@2 form_init::@3 form_init::@4 -form_set_screen::@return dominated by form_set_screen::@1 form_init form_set_screen main form_set_screen::@return @32 @begin main::@20 main::@19 form_init::@1 form_init::@2 form_init::@3 form_init::@4 -print_str_lines dominated by print_str_lines form_init main @32 @begin main::@20 main::@19 form_init::@1 -print_str_lines::@1 dominated by print_str_lines form_init main @32 @begin main::@20 print_str_lines::@1 main::@19 form_init::@1 -print_str_lines::@return dominated by print_str_lines form_init main @32 @begin print_str_lines::@return main::@20 print_str_lines::@1 main::@19 form_init::@1 -print_str_lines::@4 dominated by print_str_lines form_init main @32 @begin main::@20 print_str_lines::@1 main::@19 print_str_lines::@4 form_init::@1 -print_str_lines::@8 dominated by print_str_lines form_init main @32 @begin main::@20 print_str_lines::@1 main::@19 print_str_lines::@4 form_init::@1 print_str_lines::@8 -print_str_lines::@5 dominated by print_str_lines form_init main @32 @begin main::@20 print_str_lines::@1 main::@19 print_str_lines::@4 form_init::@1 print_str_lines::@5 -print_str_lines::@9 dominated by print_str_lines form_init main @32 @begin main::@20 print_str_lines::@9 print_str_lines::@1 main::@19 print_str_lines::@4 form_init::@1 print_str_lines::@5 -print_ln dominated by print_str_lines print_ln form_init main @32 @begin main::@20 print_str_lines::@9 print_str_lines::@1 main::@19 print_str_lines::@4 form_init::@1 print_str_lines::@5 -print_ln::@1 dominated by print_str_lines print_ln form_init print_ln::@1 main @32 @begin main::@20 print_str_lines::@9 print_str_lines::@1 main::@19 print_str_lines::@4 form_init::@1 print_str_lines::@5 -print_ln::@return dominated by print_ln::@return print_str_lines print_ln form_init print_ln::@1 main @32 @begin main::@20 print_str_lines::@9 print_str_lines::@1 main::@19 print_str_lines::@4 form_init::@1 print_str_lines::@5 -print_set_screen dominated by print_set_screen form_init main @32 @begin main::@20 main::@19 -print_set_screen::@return dominated by print_set_screen form_init main @32 @begin main::@20 main::@19 print_set_screen::@return -gfx_init dominated by main gfx_init @32 @begin main::@19 -gfx_init::@return dominated by main gfx_init @32 @begin main::@19 gfx_init::@return -gfx_init_plane_8bppchunky dominated by main gfx_init @32 @begin main::@19 gfx_init_plane_8bppchunky -gfx_init_plane_8bppchunky::@1 dominated by main gfx_init @32 @begin gfx_init_plane_8bppchunky::@1 main::@19 gfx_init_plane_8bppchunky -gfx_init_plane_8bppchunky::@2 dominated by main gfx_init @32 @begin gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@1 main::@19 gfx_init_plane_8bppchunky -gfx_init_plane_8bppchunky::@4 dominated by main gfx_init @32 @begin gfx_init_plane_8bppchunky::@4 gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@1 main::@19 gfx_init_plane_8bppchunky -gfx_init_plane_8bppchunky::@8 dominated by main gfx_init @32 @begin gfx_init_plane_8bppchunky::@4 gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky::@8 main::@19 gfx_init_plane_8bppchunky -gfx_init_plane_8bppchunky::@3 dominated by main gfx_init @32 @begin gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@1 main::@19 gfx_init_plane_8bppchunky -gfx_init_plane_8bppchunky::@5 dominated by main gfx_init @32 @begin gfx_init_plane_8bppchunky::@5 gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@1 main::@19 gfx_init_plane_8bppchunky -gfx_init_plane_8bppchunky::@6 dominated by main gfx_init @32 @begin gfx_init_plane_8bppchunky::@5 gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky::@6 main::@19 gfx_init_plane_8bppchunky -gfx_init_plane_8bppchunky::@return dominated by gfx_init_plane_8bppchunky::@return main gfx_init @32 @begin gfx_init_plane_8bppchunky::@5 gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky::@6 main::@19 gfx_init_plane_8bppchunky -dtvSetCpuBankSegment1 dominated by dtvSetCpuBankSegment1 main gfx_init @32 @begin main::@19 gfx_init_plane_8bppchunky -dtvSetCpuBankSegment1::@return dominated by dtvSetCpuBankSegment1::@return dtvSetCpuBankSegment1 main gfx_init @32 @begin main::@19 gfx_init_plane_8bppchunky -keyboard_init dominated by main @32 @begin keyboard_init -keyboard_init::@return dominated by main @32 @begin keyboard_init keyboard_init::@return +@33 dominated by @33 @begin +@end dominated by @end @33 @begin +main dominated by main @33 @begin +main::@7 dominated by main::@7 main @33 @begin +main::@8 dominated by main::@7 main::@8 main @33 @begin +main::@1 dominated by main::@7 main::@8 main::@1 main @33 @begin +main::@return dominated by main::@7 main::@8 main::@1 main::@return main @33 @begin +main::@2 dominated by main::@7 main::@8 main::@1 main::@2 main @33 @begin +main::@10 dominated by main::@7 main::@8 main::@1 main::@2 main @33 @begin main::@10 +gfx_mode dominated by main::@7 main::@8 main::@1 main::@2 gfx_mode main @33 @begin main::@10 +gfx_mode::@18 dominated by main::@7 main::@8 main::@1 main::@2 gfx_mode gfx_mode::@18 main @33 @begin main::@10 +gfx_mode::@1 dominated by main::@7 main::@8 main::@1 main::@2 gfx_mode gfx_mode::@1 main @33 @begin main::@10 +gfx_mode::@19 dominated by main::@7 main::@8 main::@1 main::@2 gfx_mode gfx_mode::@1 gfx_mode::@19 main @33 @begin main::@10 +gfx_mode::@2 dominated by main::@7 main::@8 main::@1 main::@2 gfx_mode gfx_mode::@2 gfx_mode::@1 main @33 @begin main::@10 +gfx_mode::@20 dominated by main::@7 main::@8 main::@1 main::@2 gfx_mode gfx_mode::@2 gfx_mode::@1 gfx_mode::@20 main @33 @begin main::@10 +gfx_mode::@3 dominated by main::@7 main::@8 main::@1 main::@2 gfx_mode gfx_mode::@3 gfx_mode::@2 gfx_mode::@1 main @33 @begin main::@10 +gfx_mode::@21 dominated by main::@7 main::@8 main::@1 main::@2 gfx_mode gfx_mode::@3 gfx_mode::@2 gfx_mode::@1 gfx_mode::@21 main @33 @begin main::@10 +gfx_mode::@4 dominated by main::@7 main::@8 main::@1 main::@2 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@2 gfx_mode::@1 main @33 @begin main::@10 +gfx_mode::@22 dominated by main::@7 main::@8 main::@1 main::@2 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@2 gfx_mode::@1 gfx_mode::@22 main @33 @begin main::@10 +gfx_mode::@5 dominated by main::@7 main::@8 main::@1 main::@2 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 main @33 @begin main::@10 +gfx_mode::@23 dominated by main::@7 main::@8 main::@1 main::@2 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 gfx_mode::@23 main @33 @begin main::@10 +gfx_mode::@6 dominated by main::@7 main::@8 main::@1 main::@2 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@6 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 main @33 @begin main::@10 +gfx_mode::@24 dominated by main::@7 main::@8 main::@1 main::@2 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@6 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 gfx_mode::@24 main @33 @begin main::@10 +gfx_mode::@7 dominated by main::@7 main::@8 gfx_mode::@7 main::@1 main::@2 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@6 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 main @33 @begin main::@10 +gfx_mode::@25 dominated by main::@7 main::@8 gfx_mode::@7 main::@1 main::@2 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@6 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 gfx_mode::@25 main @33 @begin main::@10 +gfx_mode::@8 dominated by main::@7 main::@8 gfx_mode::@8 gfx_mode::@7 main::@1 main::@2 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@6 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 main @33 @begin main::@10 +gfx_mode::@26 dominated by main::@7 main::@8 gfx_mode::@8 gfx_mode::@7 main::@1 main::@2 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@6 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 gfx_mode::@26 main @33 @begin main::@10 +gfx_mode::@9 dominated by main::@7 main::@8 gfx_mode::@8 gfx_mode::@7 gfx_mode::@9 main::@1 main::@2 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@6 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 main @33 @begin main::@10 +gfx_mode::@10 dominated by main::@7 main::@8 gfx_mode::@8 gfx_mode::@7 gfx_mode::@9 main::@1 main::@2 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@6 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 gfx_mode::@10 main @33 @begin main::@10 +gfx_mode::@11 dominated by main::@7 main::@8 gfx_mode::@8 gfx_mode::@7 gfx_mode::@9 main::@1 main::@2 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@6 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 gfx_mode::@11 gfx_mode::@10 main @33 @begin main::@10 +gfx_mode::@return dominated by main::@7 main::@8 gfx_mode::@8 gfx_mode::@7 gfx_mode::@9 main::@1 main::@2 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@6 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 gfx_mode::@11 gfx_mode::@10 gfx_mode::@return main @33 @begin main::@10 +gfx_mode::@14 dominated by main::@7 main::@8 gfx_mode::@8 gfx_mode::@7 gfx_mode::@9 main::@1 main::@2 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@6 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 gfx_mode::@14 gfx_mode::@11 gfx_mode::@10 main @33 @begin main::@10 +gfx_mode::@16 dominated by main::@7 main::@8 gfx_mode::@8 gfx_mode::@7 gfx_mode::@9 main::@1 main::@2 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@6 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 gfx_mode::@16 gfx_mode::@14 gfx_mode::@11 gfx_mode::@10 main @33 @begin main::@10 +gfx_mode::@36 dominated by main::@7 main::@8 gfx_mode::@8 gfx_mode::@7 gfx_mode::@9 gfx_mode::@36 main::@1 main::@2 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@6 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 gfx_mode::@16 gfx_mode::@14 gfx_mode::@11 gfx_mode::@10 main @33 @begin main::@10 +gfx_mode::@37 dominated by main::@7 main::@8 gfx_mode::@8 gfx_mode::@7 gfx_mode::@9 gfx_mode::@37 gfx_mode::@36 main::@1 main::@2 gfx_mode gfx_mode::@4 gfx_mode::@3 gfx_mode::@6 gfx_mode::@5 gfx_mode::@2 gfx_mode::@1 gfx_mode::@16 gfx_mode::@14 gfx_mode::@11 gfx_mode::@10 main @33 @begin main::@10 +keyboard_event_get dominated by main::@7 main::@8 main::@1 main::@2 main keyboard_event_get @33 @begin +keyboard_event_get::@return dominated by main::@7 main::@8 main::@1 main::@2 keyboard_event_get::@return main keyboard_event_get @33 @begin +keyboard_event_get::@1 dominated by main::@7 main::@8 main::@1 main::@2 keyboard_event_get::@1 main keyboard_event_get @33 @begin +keyboard_event_scan dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 main @33 @begin +keyboard_event_scan::@1 dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@1 main @33 @begin +keyboard_event_scan::@25 dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@1 main @33 @begin keyboard_event_scan::@25 +keyboard_event_scan::@3 dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@3 keyboard_event_scan::@1 main @33 @begin keyboard_event_scan::@25 +keyboard_event_scan::@14 dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@3 keyboard_event_scan::@1 main @33 @begin keyboard_event_scan::@25 keyboard_event_scan::@14 +keyboard_event_scan::@15 dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@3 keyboard_event_scan::@1 main @33 @begin keyboard_event_scan::@25 keyboard_event_scan::@14 keyboard_event_scan::@15 +keyboard_event_scan::@16 dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@3 keyboard_event_scan::@1 main @33 @begin keyboard_event_scan::@25 keyboard_event_scan::@14 keyboard_event_scan::@16 keyboard_event_scan::@15 +keyboard_event_scan::@4 dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@3 keyboard_event_scan::@4 keyboard_event_scan::@1 main @33 @begin keyboard_event_scan::@25 +keyboard_event_scan::@18 dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@3 keyboard_event_scan::@4 keyboard_event_scan::@1 main @33 @begin keyboard_event_scan::@25 keyboard_event_scan::@18 +keyboard_event_scan::@8 dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@8 keyboard_event_scan::@1 main @33 @begin keyboard_event_scan::@25 +keyboard_event_scan::@20 dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@8 keyboard_event_scan::@1 main @33 @begin keyboard_event_scan::@25 keyboard_event_scan::@20 +keyboard_event_scan::@26 dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@8 keyboard_event_scan::@1 main @33 @begin keyboard_event_scan::@25 keyboard_event_scan::@26 keyboard_event_scan::@20 +keyboard_event_scan::@21 dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@8 keyboard_event_scan::@1 main @33 @begin keyboard_event_scan::@25 keyboard_event_scan::@26 keyboard_event_scan::@21 keyboard_event_scan::@20 +keyboard_event_scan::@9 dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@9 keyboard_event_scan::@8 keyboard_event_scan::@1 main @33 @begin keyboard_event_scan::@25 keyboard_event_scan::@26 keyboard_event_scan::@20 +keyboard_event_scan::@27 dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@9 keyboard_event_scan::@8 keyboard_event_scan::@1 main @33 @begin keyboard_event_scan::@25 keyboard_event_scan::@27 keyboard_event_scan::@26 keyboard_event_scan::@20 +keyboard_event_scan::@22 dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@9 keyboard_event_scan::@8 keyboard_event_scan::@1 main @33 @begin keyboard_event_scan::@25 keyboard_event_scan::@27 keyboard_event_scan::@26 keyboard_event_scan::@20 keyboard_event_scan::@22 +keyboard_event_scan::@10 dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@9 keyboard_event_scan::@8 keyboard_event_scan::@1 main @33 @begin keyboard_event_scan::@25 keyboard_event_scan::@27 keyboard_event_scan::@26 keyboard_event_scan::@20 keyboard_event_scan::@10 +keyboard_event_scan::@28 dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@9 keyboard_event_scan::@8 keyboard_event_scan::@1 main @33 @begin keyboard_event_scan::@28 keyboard_event_scan::@25 keyboard_event_scan::@27 keyboard_event_scan::@26 keyboard_event_scan::@20 keyboard_event_scan::@10 +keyboard_event_scan::@23 dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@9 keyboard_event_scan::@8 keyboard_event_scan::@1 main @33 @begin keyboard_event_scan::@28 keyboard_event_scan::@25 keyboard_event_scan::@27 keyboard_event_scan::@26 keyboard_event_scan::@20 keyboard_event_scan::@23 keyboard_event_scan::@10 +keyboard_event_scan::@11 dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@9 keyboard_event_scan::@8 keyboard_event_scan::@1 main @33 @begin keyboard_event_scan::@28 keyboard_event_scan::@25 keyboard_event_scan::@27 keyboard_event_scan::@26 keyboard_event_scan::@20 keyboard_event_scan::@10 keyboard_event_scan::@11 +keyboard_event_scan::@29 dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@9 keyboard_event_scan::@8 keyboard_event_scan::@1 main @33 @begin keyboard_event_scan::@29 keyboard_event_scan::@28 keyboard_event_scan::@25 keyboard_event_scan::@27 keyboard_event_scan::@26 keyboard_event_scan::@20 keyboard_event_scan::@10 keyboard_event_scan::@11 +keyboard_event_scan::@24 dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@9 keyboard_event_scan::@8 keyboard_event_scan::@1 main @33 @begin keyboard_event_scan::@29 keyboard_event_scan::@28 keyboard_event_scan::@25 keyboard_event_scan::@24 keyboard_event_scan::@27 keyboard_event_scan::@26 keyboard_event_scan::@20 keyboard_event_scan::@10 keyboard_event_scan::@11 +keyboard_event_scan::@return dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@9 keyboard_event_scan::@8 keyboard_event_scan::@1 keyboard_event_scan::@return main @33 @begin keyboard_event_scan::@29 keyboard_event_scan::@28 keyboard_event_scan::@25 keyboard_event_scan::@27 keyboard_event_scan::@26 keyboard_event_scan::@20 keyboard_event_scan::@10 keyboard_event_scan::@11 +keyboard_event_scan::@6 dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@6 keyboard_event_scan::@3 keyboard_event_scan::@1 main @33 @begin keyboard_event_scan::@25 keyboard_event_scan::@14 keyboard_event_scan::@15 +keyboard_event_scan::@2 dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@2 keyboard_event_scan::@1 main @33 @begin keyboard_event_scan::@25 +keyboard_event_pressed dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@8 keyboard_event_scan::@1 main @33 @begin keyboard_event_pressed keyboard_event_scan::@25 keyboard_event_scan::@20 +keyboard_event_pressed::@return dominated by main::@7 main::@8 keyboard_event_scan keyboard_event_pressed::@return main::@1 main::@2 keyboard_event_scan::@8 keyboard_event_scan::@1 main @33 @begin keyboard_event_pressed keyboard_event_scan::@25 keyboard_event_scan::@20 +keyboard_matrix_read dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@1 main @33 @begin keyboard_matrix_read +keyboard_matrix_read::@return dominated by main::@7 main::@8 keyboard_event_scan main::@1 main::@2 keyboard_event_scan::@1 main @33 @begin keyboard_matrix_read keyboard_matrix_read::@return +form_mode dominated by main::@7 main::@8 main::@1 main::@2 main @33 @begin form_mode +form_mode::@1 dominated by main::@7 main::@8 main::@1 main::@2 main @33 @begin form_mode::@1 form_mode +form_mode::@9 dominated by main::@7 main::@8 main::@1 main::@2 main @33 @begin form_mode::@1 form_mode::@9 form_mode +form_mode::@2 dominated by main::@7 main::@8 main::@1 main::@2 main @33 @begin form_mode::@1 form_mode::@2 form_mode::@9 form_mode +form_mode::@return dominated by main::@7 main::@8 main::@1 main::@2 form_mode::@return main @33 @begin form_mode::@1 form_mode::@2 form_mode::@9 form_mode +form_mode::@5 dominated by main::@7 main::@8 main::@1 main::@2 main @33 @begin form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@9 form_mode +form_mode::@7 dominated by main::@7 main::@8 main::@1 main::@2 main @33 @begin form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode +form_mode::@19 dominated by main::@7 main::@8 main::@1 main::@2 main @33 @begin form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_mode::@19 +form_control dominated by main::@7 main::@8 main::@1 main::@2 main @33 @begin form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_control +form_control::@33 dominated by main::@7 main::@8 main::@1 main::@2 form_control::@33 main @33 @begin form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_control +form_control::@1 dominated by main::@7 main::@8 main::@1 main::@2 form_control::@1 form_control::@33 main @33 @begin form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_control +form_control::@16 dominated by main::@7 main::@8 main::@1 main::@2 form_control::@16 form_control::@1 form_control::@33 main @33 @begin form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_control +form_control::@3 dominated by main::@7 main::@8 main::@1 main::@2 form_control::@1 form_control::@3 form_control::@33 main @33 @begin form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_control +form_control::@34 dominated by main::@7 main::@8 main::@1 main::@2 form_control::@1 form_control::@3 form_control::@33 form_control::@34 main @33 @begin form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_control +form_control::@35 dominated by main::@7 main::@8 form_control::@35 main::@1 main::@2 form_control::@1 form_control::@3 form_control::@33 form_control::@34 main @33 @begin form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_control +form_control::@18 dominated by main::@7 main::@8 form_control::@35 main::@1 main::@2 form_control::@18 form_control::@1 form_control::@3 form_control::@33 form_control::@34 main @33 @begin form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_control +form_control::@19 dominated by main::@7 main::@8 form_control::@35 main::@1 main::@2 form_control::@18 form_control::@19 form_control::@1 form_control::@3 form_control::@33 form_control::@34 main @33 @begin form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_control +form_control::@7 dominated by main::@7 main::@8 form_control::@35 main::@1 main::@2 form_control::@18 form_control::@1 form_control::@3 form_control::@7 form_control::@33 form_control::@34 main @33 @begin form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_control +form_control::@return dominated by main::@7 main::@8 form_control::@35 main::@1 main::@2 form_control::@1 form_control::@3 form_control::@33 form_control::@34 form_control::@return main @33 @begin form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_control +form_control::@37 dominated by main::@7 main::@8 form_control::@35 form_control::@37 main::@1 main::@2 form_control::@18 form_control::@19 form_control::@1 form_control::@3 form_control::@33 form_control::@34 main @33 @begin form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_control +form_control::@5 dominated by main::@7 main::@8 form_control::@35 main::@1 main::@2 form_control::@18 form_control::@1 form_control::@5 form_control::@3 form_control::@33 form_control::@34 main @33 @begin form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_control +form_control::@38 dominated by main::@7 main::@8 form_control::@35 form_control::@38 main::@1 main::@2 form_control::@18 form_control::@1 form_control::@5 form_control::@3 form_control::@33 form_control::@34 main @33 @begin form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_control +form_control::@4 dominated by main::@7 main::@8 form_control::@35 main::@1 main::@2 form_control::@1 form_control::@4 form_control::@3 form_control::@33 form_control::@34 main @33 @begin form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_control +form_control::@24 dominated by main::@7 main::@8 form_control::@35 main::@1 main::@2 form_control::@1 form_control::@4 form_control::@3 form_control::@33 form_control::@34 form_control::@24 main @33 @begin form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_control +form_control::@25 dominated by main::@7 main::@8 form_control::@35 main::@1 main::@2 form_control::@1 form_control::@4 form_control::@3 form_control::@33 form_control::@34 form_control::@24 form_control::@25 main @33 @begin form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_control +form_control::@26 dominated by main::@7 main::@8 form_control::@35 main::@1 main::@2 form_control::@1 form_control::@4 form_control::@3 form_control::@33 form_control::@34 form_control::@24 form_control::@25 form_control::@26 main @33 @begin form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_control +form_control::@12 dominated by main::@7 main::@8 form_control::@35 main::@1 main::@2 form_control::@1 form_control::@4 form_control::@3 form_control::@33 form_control::@34 form_control::@24 main @33 @begin form_mode::@1 form_control::@12 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_control +form_control::@10 dominated by main::@7 main::@8 form_control::@35 main::@1 main::@2 form_control::@1 form_control::@4 form_control::@3 form_control::@33 form_control::@34 form_control::@24 main @33 @begin form_control::@10 form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_control +form_control::@28 dominated by main::@7 main::@8 form_control::@35 main::@1 main::@2 form_control::@1 form_control::@4 form_control::@3 form_control::@33 form_control::@34 form_control::@24 form_control::@28 main @33 @begin form_control::@10 form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_control +form_control::@9 dominated by main::@7 main::@8 form_control::@35 main::@1 main::@2 form_control::@1 form_control::@4 form_control::@3 form_control::@9 form_control::@33 form_control::@34 main @33 @begin form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_control +form_control::@39 dominated by main::@7 main::@8 form_control::@35 form_control::@39 main::@1 main::@2 form_control::@1 form_control::@4 form_control::@3 form_control::@9 form_control::@33 form_control::@34 main @33 @begin form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_control +form_control::@2 dominated by main::@7 main::@8 main::@1 main::@2 form_control::@1 form_control::@2 form_control::@33 main @33 @begin form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_control +form_control::@36 dominated by main::@7 main::@8 form_control::@36 main::@1 main::@2 form_control::@33 main @33 @begin form_mode::@1 form_mode::@2 form_mode::@5 form_mode::@7 form_mode::@9 form_mode form_control +form_field_ptr dominated by main::@7 main::@8 form_field_ptr main @33 @begin +form_field_ptr::@return dominated by main::@7 main::@8 form_field_ptr::@return form_field_ptr main @33 @begin +form_init dominated by main::@7 main::@8 form_init main @33 @begin +form_init::@1 dominated by main::@7 main::@8 form_init main @33 @begin form_init::@1 +form_init::@2 dominated by main::@7 main::@8 form_init main @33 @begin form_init::@1 form_init::@2 +form_init::@3 dominated by main::@7 main::@8 form_init main @33 @begin form_init::@1 form_init::@2 form_init::@3 +form_init::@4 dominated by main::@7 main::@8 form_init main @33 @begin form_init::@1 form_init::@2 form_init::@3 form_init::@4 +form_init::@5 dominated by main::@7 main::@8 form_init main @33 @begin form_init::@5 form_init::@1 form_init::@2 form_init::@3 form_init::@4 +form_init::@6 dominated by main::@7 main::@8 form_init main @33 @begin form_init::@5 form_init::@6 form_init::@1 form_init::@2 form_init::@3 form_init::@4 +form_init::@7 dominated by main::@7 main::@8 form_init main @33 @begin form_init::@5 form_init::@6 form_init::@7 form_init::@1 form_init::@2 form_init::@3 form_init::@4 +form_init::@return dominated by main::@7 main::@8 form_init::@return form_init main @33 @begin form_init::@5 form_init::@6 form_init::@7 form_init::@1 form_init::@2 form_init::@3 form_init::@4 +form_render_values dominated by main::@7 main::@8 form_init main @33 @begin form_render_values form_init::@5 form_init::@6 form_init::@7 form_init::@1 form_init::@2 form_init::@3 form_init::@4 +form_render_values::@1 dominated by main::@7 main::@8 form_render_values::@1 form_init main @33 @begin form_render_values form_init::@5 form_init::@6 form_init::@7 form_init::@1 form_init::@2 form_init::@3 form_init::@4 +form_render_values::@3 dominated by main::@7 main::@8 form_render_values::@3 form_render_values::@1 form_init main @33 @begin form_render_values form_init::@5 form_init::@6 form_init::@7 form_init::@1 form_init::@2 form_init::@3 form_init::@4 +form_render_values::@return dominated by main::@7 main::@8 form_render_values::@3 form_render_values::@1 form_render_values::@return form_init main @33 @begin form_render_values form_init::@5 form_init::@6 form_init::@7 form_init::@1 form_init::@2 form_init::@3 form_init::@4 +form_set_screen dominated by main::@7 main::@8 form_init form_set_screen main @33 @begin form_init::@5 form_init::@6 form_init::@1 form_init::@2 form_init::@3 form_init::@4 +form_set_screen::@1 dominated by main::@7 main::@8 form_set_screen::@1 form_init form_set_screen main @33 @begin form_init::@5 form_init::@6 form_init::@1 form_init::@2 form_init::@3 form_init::@4 +form_set_screen::@return dominated by main::@7 main::@8 form_set_screen::@1 form_init form_set_screen main form_set_screen::@return @33 @begin form_init::@5 form_init::@6 form_init::@1 form_init::@2 form_init::@3 form_init::@4 +print_str_lines dominated by main::@7 main::@8 print_str_lines form_init main @33 @begin form_init::@1 form_init::@2 +print_str_lines::@1 dominated by main::@7 main::@8 print_str_lines form_init main @33 @begin print_str_lines::@1 form_init::@1 form_init::@2 +print_str_lines::@return dominated by main::@7 main::@8 print_str_lines form_init main @33 @begin print_str_lines::@return print_str_lines::@1 form_init::@1 form_init::@2 +print_str_lines::@4 dominated by main::@7 main::@8 print_str_lines form_init main @33 @begin print_str_lines::@1 print_str_lines::@4 form_init::@1 form_init::@2 +print_str_lines::@8 dominated by main::@7 main::@8 print_str_lines form_init main @33 @begin print_str_lines::@1 print_str_lines::@4 form_init::@1 form_init::@2 print_str_lines::@8 +print_str_lines::@5 dominated by main::@7 main::@8 print_str_lines form_init main @33 @begin print_str_lines::@1 print_str_lines::@4 form_init::@1 form_init::@2 print_str_lines::@5 +print_str_lines::@9 dominated by main::@7 main::@8 print_str_lines form_init main @33 @begin print_str_lines::@9 print_str_lines::@1 print_str_lines::@4 form_init::@1 form_init::@2 print_str_lines::@5 +print_ln dominated by main::@7 main::@8 print_str_lines print_ln form_init main @33 @begin print_str_lines::@9 print_str_lines::@1 print_str_lines::@4 form_init::@1 form_init::@2 print_str_lines::@5 +print_ln::@1 dominated by main::@7 main::@8 print_str_lines print_ln form_init print_ln::@1 main @33 @begin print_str_lines::@9 print_str_lines::@1 print_str_lines::@4 form_init::@1 form_init::@2 print_str_lines::@5 +print_ln::@return dominated by main::@7 main::@8 print_ln::@return print_str_lines print_ln form_init print_ln::@1 main @33 @begin print_str_lines::@9 print_str_lines::@1 print_str_lines::@4 form_init::@1 form_init::@2 print_str_lines::@5 +print_cls dominated by main::@7 main::@8 print_cls form_init main @33 @begin form_init::@1 +print_cls::@1 dominated by main::@7 main::@8 print_cls form_init main @33 @begin print_cls::@1 form_init::@1 +print_cls::@return dominated by main::@7 main::@8 print_cls form_init main @33 @begin print_cls::@return print_cls::@1 form_init::@1 +print_set_screen dominated by main::@7 main::@8 print_set_screen form_init main @33 @begin +print_set_screen::@return dominated by main::@7 main::@8 print_set_screen form_init main @33 @begin print_set_screen::@return +gfx_init dominated by main::@7 main gfx_init @33 @begin +gfx_init::@1 dominated by main::@7 gfx_init::@1 main gfx_init @33 @begin +gfx_init::@return dominated by main::@7 gfx_init::@1 main gfx_init @33 @begin gfx_init::@return +gfx_init_plane_8bppchunky dominated by main::@7 gfx_init::@1 main gfx_init @33 @begin gfx_init_plane_8bppchunky +gfx_init_plane_8bppchunky::@1 dominated by main::@7 gfx_init::@1 main gfx_init @33 @begin gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky +gfx_init_plane_8bppchunky::@2 dominated by main::@7 gfx_init::@1 main gfx_init @33 @begin gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky +gfx_init_plane_8bppchunky::@4 dominated by main::@7 gfx_init::@1 main gfx_init @33 @begin gfx_init_plane_8bppchunky::@4 gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky +gfx_init_plane_8bppchunky::@8 dominated by main::@7 gfx_init::@1 main gfx_init @33 @begin gfx_init_plane_8bppchunky::@4 gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky::@8 gfx_init_plane_8bppchunky +gfx_init_plane_8bppchunky::@3 dominated by main::@7 gfx_init::@1 main gfx_init @33 @begin gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky +gfx_init_plane_8bppchunky::@5 dominated by main::@7 gfx_init::@1 main gfx_init @33 @begin gfx_init_plane_8bppchunky::@5 gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky +gfx_init_plane_8bppchunky::@6 dominated by main::@7 gfx_init::@1 main gfx_init @33 @begin gfx_init_plane_8bppchunky::@5 gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky::@6 gfx_init_plane_8bppchunky +gfx_init_plane_8bppchunky::@return dominated by main::@7 gfx_init::@1 gfx_init_plane_8bppchunky::@return main gfx_init @33 @begin gfx_init_plane_8bppchunky::@5 gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky::@6 gfx_init_plane_8bppchunky +dtvSetCpuBankSegment1 dominated by main::@7 gfx_init::@1 dtvSetCpuBankSegment1 main gfx_init @33 @begin gfx_init_plane_8bppchunky +dtvSetCpuBankSegment1::@return dominated by main::@7 gfx_init::@1 dtvSetCpuBankSegment1::@return dtvSetCpuBankSegment1 main gfx_init @33 @begin gfx_init_plane_8bppchunky +gfx_init_screen_stdchar dominated by main::@7 gfx_init_screen_stdchar main gfx_init @33 @begin +gfx_init_screen_stdchar::@1 dominated by main::@7 gfx_init_screen_stdchar gfx_init_screen_stdchar::@1 main gfx_init @33 @begin +gfx_init_screen_stdchar::@2 dominated by main::@7 gfx_init_screen_stdchar gfx_init_screen_stdchar::@2 gfx_init_screen_stdchar::@1 main gfx_init @33 @begin +gfx_init_screen_stdchar::@3 dominated by main::@7 gfx_init_screen_stdchar gfx_init_screen_stdchar::@3 gfx_init_screen_stdchar::@2 gfx_init_screen_stdchar::@1 main gfx_init @33 @begin +gfx_init_screen_stdchar::@return dominated by main::@7 gfx_init_screen_stdchar gfx_init_screen_stdchar::@return gfx_init_screen_stdchar::@3 gfx_init_screen_stdchar::@2 gfx_init_screen_stdchar::@1 main gfx_init @33 @begin +keyboard_init dominated by main @33 @begin keyboard_init +keyboard_init::@return dominated by main @33 @begin keyboard_init keyboard_init::@return NATURAL LOOPS -Found back edge: Loop head: main::@4 tails: main::@4 blocks: null -Found back edge: Loop head: main::@7 tails: main::@7 blocks: null -Found back edge: Loop head: main::@1 tails: main::@23 blocks: null +Found back edge: Loop head: main::@1 tails: main::@10 blocks: null Found back edge: Loop head: gfx_mode::@10 tails: gfx_mode::@10 blocks: null +Found back edge: Loop head: gfx_mode::@14 tails: gfx_mode::@14 blocks: null +Found back edge: Loop head: gfx_mode::@11 tails: gfx_mode::@37 blocks: null Found back edge: Loop head: keyboard_event_scan::@3 tails: keyboard_event_scan::@4 blocks: null Found back edge: Loop head: keyboard_event_scan::@1 tails: keyboard_event_scan::@8 blocks: null Found back edge: Loop head: form_mode::@1 tails: form_mode::@1 blocks: null +Found back edge: Loop head: form_mode::@5 tails: form_mode::@5 blocks: null +Found back edge: Loop head: form_mode::@2 tails: form_mode::@19 blocks: null Found back edge: Loop head: form_render_values::@1 tails: form_render_values::@3 blocks: null Found back edge: Loop head: form_set_screen::@1 tails: form_set_screen::@1 blocks: null Found back edge: Loop head: print_str_lines::@4 tails: print_str_lines::@5 blocks: null Found back edge: Loop head: print_str_lines::@1 tails: print_str_lines::@9 blocks: null Found back edge: Loop head: print_ln::@1 tails: print_ln::@1 blocks: null +Found back edge: Loop head: print_cls::@1 tails: print_cls::@1 blocks: null Found back edge: Loop head: gfx_init_plane_8bppchunky::@2 tails: gfx_init_plane_8bppchunky::@3 blocks: null Found back edge: Loop head: gfx_init_plane_8bppchunky::@1 tails: gfx_init_plane_8bppchunky::@5 blocks: null -Populated: Loop head: main::@4 tails: main::@4 blocks: main::@4 -Populated: Loop head: main::@7 tails: main::@7 blocks: main::@7 -Populated: Loop head: main::@1 tails: main::@23 blocks: main::@23 main::@9 main::@7 main::@6 main::@4 main::@1 +Found back edge: Loop head: gfx_init_screen_stdchar::@2 tails: gfx_init_screen_stdchar::@2 blocks: null +Found back edge: Loop head: gfx_init_screen_stdchar::@1 tails: gfx_init_screen_stdchar::@3 blocks: null +Populated: Loop head: main::@1 tails: main::@10 blocks: main::@10 main::@2 main::@1 Populated: Loop head: gfx_mode::@10 tails: gfx_mode::@10 blocks: gfx_mode::@10 +Populated: Loop head: gfx_mode::@14 tails: gfx_mode::@14 blocks: gfx_mode::@14 +Populated: Loop head: gfx_mode::@11 tails: gfx_mode::@37 blocks: gfx_mode::@37 gfx_mode::@36 gfx_mode::@16 gfx_mode::@14 gfx_mode::@11 Populated: Loop head: keyboard_event_scan::@3 tails: keyboard_event_scan::@4 blocks: keyboard_event_scan::@4 keyboard_event_scan::@14 keyboard_event_scan::@16 keyboard_event_scan::@3 keyboard_event_scan::@6 keyboard_event_scan::@15 Populated: Loop head: keyboard_event_scan::@1 tails: keyboard_event_scan::@8 blocks: keyboard_event_scan::@8 keyboard_event_scan::@18 keyboard_event_scan::@2 keyboard_event_scan::@4 keyboard_event_scan::@25 keyboard_event_scan::@14 keyboard_event_scan::@16 keyboard_event_scan::@3 keyboard_event_scan::@6 keyboard_event_scan::@1 keyboard_event_scan::@15 Populated: Loop head: form_mode::@1 tails: form_mode::@1 blocks: form_mode::@1 +Populated: Loop head: form_mode::@5 tails: form_mode::@5 blocks: form_mode::@5 +Populated: Loop head: form_mode::@2 tails: form_mode::@19 blocks: form_mode::@19 form_mode::@7 form_mode::@5 form_mode::@2 Populated: Loop head: form_render_values::@1 tails: form_render_values::@3 blocks: form_render_values::@3 form_render_values::@1 Populated: Loop head: form_set_screen::@1 tails: form_set_screen::@1 blocks: form_set_screen::@1 Populated: Loop head: print_str_lines::@4 tails: print_str_lines::@5 blocks: print_str_lines::@5 print_str_lines::@4 print_str_lines::@8 Populated: Loop head: print_str_lines::@1 tails: print_str_lines::@9 blocks: print_str_lines::@9 print_str_lines::@5 print_str_lines::@4 print_str_lines::@8 print_str_lines::@1 Populated: Loop head: print_ln::@1 tails: print_ln::@1 blocks: print_ln::@1 +Populated: Loop head: print_cls::@1 tails: print_cls::@1 blocks: print_cls::@1 Populated: Loop head: gfx_init_plane_8bppchunky::@2 tails: gfx_init_plane_8bppchunky::@3 blocks: gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@8 gfx_init_plane_8bppchunky::@4 Populated: Loop head: gfx_init_plane_8bppchunky::@1 tails: gfx_init_plane_8bppchunky::@5 blocks: gfx_init_plane_8bppchunky::@5 gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@8 gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky::@4 -Loop head: main::@4 tails: main::@4 blocks: main::@4 -Loop head: main::@7 tails: main::@7 blocks: main::@7 -Loop head: main::@1 tails: main::@23 blocks: main::@23 main::@9 main::@7 main::@6 main::@4 main::@1 +Populated: Loop head: gfx_init_screen_stdchar::@2 tails: gfx_init_screen_stdchar::@2 blocks: gfx_init_screen_stdchar::@2 +Populated: Loop head: gfx_init_screen_stdchar::@1 tails: gfx_init_screen_stdchar::@3 blocks: gfx_init_screen_stdchar::@3 gfx_init_screen_stdchar::@2 gfx_init_screen_stdchar::@1 +Loop head: main::@1 tails: main::@10 blocks: main::@10 main::@2 main::@1 Loop head: gfx_mode::@10 tails: gfx_mode::@10 blocks: gfx_mode::@10 +Loop head: gfx_mode::@14 tails: gfx_mode::@14 blocks: gfx_mode::@14 +Loop head: gfx_mode::@11 tails: gfx_mode::@37 blocks: gfx_mode::@37 gfx_mode::@36 gfx_mode::@16 gfx_mode::@14 gfx_mode::@11 Loop head: keyboard_event_scan::@3 tails: keyboard_event_scan::@4 blocks: keyboard_event_scan::@4 keyboard_event_scan::@14 keyboard_event_scan::@16 keyboard_event_scan::@3 keyboard_event_scan::@6 keyboard_event_scan::@15 Loop head: keyboard_event_scan::@1 tails: keyboard_event_scan::@8 blocks: keyboard_event_scan::@8 keyboard_event_scan::@18 keyboard_event_scan::@2 keyboard_event_scan::@4 keyboard_event_scan::@25 keyboard_event_scan::@14 keyboard_event_scan::@16 keyboard_event_scan::@3 keyboard_event_scan::@6 keyboard_event_scan::@1 keyboard_event_scan::@15 Loop head: form_mode::@1 tails: form_mode::@1 blocks: form_mode::@1 +Loop head: form_mode::@5 tails: form_mode::@5 blocks: form_mode::@5 +Loop head: form_mode::@2 tails: form_mode::@19 blocks: form_mode::@19 form_mode::@7 form_mode::@5 form_mode::@2 Loop head: form_render_values::@1 tails: form_render_values::@3 blocks: form_render_values::@3 form_render_values::@1 Loop head: form_set_screen::@1 tails: form_set_screen::@1 blocks: form_set_screen::@1 Loop head: print_str_lines::@4 tails: print_str_lines::@5 blocks: print_str_lines::@5 print_str_lines::@4 print_str_lines::@8 Loop head: print_str_lines::@1 tails: print_str_lines::@9 blocks: print_str_lines::@9 print_str_lines::@5 print_str_lines::@4 print_str_lines::@8 print_str_lines::@1 Loop head: print_ln::@1 tails: print_ln::@1 blocks: print_ln::@1 +Loop head: print_cls::@1 tails: print_cls::@1 blocks: print_cls::@1 Loop head: gfx_init_plane_8bppchunky::@2 tails: gfx_init_plane_8bppchunky::@3 blocks: gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@8 gfx_init_plane_8bppchunky::@4 Loop head: gfx_init_plane_8bppchunky::@1 tails: gfx_init_plane_8bppchunky::@5 blocks: gfx_init_plane_8bppchunky::@5 gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@8 gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky::@4 +Loop head: gfx_init_screen_stdchar::@2 tails: gfx_init_screen_stdchar::@2 blocks: gfx_init_screen_stdchar::@2 +Loop head: gfx_init_screen_stdchar::@1 tails: gfx_init_screen_stdchar::@3 blocks: gfx_init_screen_stdchar::@3 gfx_init_screen_stdchar::@2 gfx_init_screen_stdchar::@1 NATURAL LOOPS WITH DEPTH Found 0 loops in scope [] -Found 3 loops in scope [main] - Loop head: main::@4 tails: main::@4 blocks: main::@4 - Loop head: main::@7 tails: main::@7 blocks: main::@7 - Loop head: main::@1 tails: main::@23 blocks: main::@23 main::@9 main::@7 main::@6 main::@4 main::@1 +Found 1 loops in scope [main] + Loop head: main::@1 tails: main::@10 blocks: main::@10 main::@2 main::@1 Found 0 loops in scope [keyboard_init] Found 0 loops in scope [gfx_init] Found 0 loops in scope [form_init] -Found 1 loops in scope [form_mode] +Found 3 loops in scope [form_mode] Loop head: form_mode::@1 tails: form_mode::@1 blocks: form_mode::@1 -Found 0 loops in scope [form_control] -Found 1 loops in scope [gfx_mode] + Loop head: form_mode::@5 tails: form_mode::@5 blocks: form_mode::@5 + Loop head: form_mode::@2 tails: form_mode::@19 blocks: form_mode::@19 form_mode::@7 form_mode::@5 form_mode::@2 +Found 3 loops in scope [gfx_mode] Loop head: gfx_mode::@10 tails: gfx_mode::@10 blocks: gfx_mode::@10 + Loop head: gfx_mode::@14 tails: gfx_mode::@14 blocks: gfx_mode::@14 + Loop head: gfx_mode::@11 tails: gfx_mode::@37 blocks: gfx_mode::@37 gfx_mode::@36 gfx_mode::@16 gfx_mode::@14 gfx_mode::@11 +Found 2 loops in scope [gfx_init_screen_stdchar] + Loop head: gfx_init_screen_stdchar::@2 tails: gfx_init_screen_stdchar::@2 blocks: gfx_init_screen_stdchar::@2 + Loop head: gfx_init_screen_stdchar::@1 tails: gfx_init_screen_stdchar::@3 blocks: gfx_init_screen_stdchar::@3 gfx_init_screen_stdchar::@2 gfx_init_screen_stdchar::@1 Found 2 loops in scope [gfx_init_plane_8bppchunky] Loop head: gfx_init_plane_8bppchunky::@2 tails: gfx_init_plane_8bppchunky::@3 blocks: gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@8 gfx_init_plane_8bppchunky::@4 Loop head: gfx_init_plane_8bppchunky::@1 tails: gfx_init_plane_8bppchunky::@5 blocks: gfx_init_plane_8bppchunky::@5 gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@8 gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky::@4 Found 0 loops in scope [print_set_screen] +Found 1 loops in scope [print_cls] + Loop head: print_cls::@1 tails: print_cls::@1 blocks: print_cls::@1 Found 2 loops in scope [print_str_lines] Loop head: print_str_lines::@4 tails: print_str_lines::@5 blocks: print_str_lines::@5 print_str_lines::@4 print_str_lines::@8 Loop head: print_str_lines::@1 tails: print_str_lines::@9 blocks: print_str_lines::@9 print_str_lines::@5 print_str_lines::@4 print_str_lines::@8 print_str_lines::@1 @@ -9610,7 +10871,7 @@ Found 1 loops in scope [form_set_screen] Loop head: form_set_screen::@1 tails: form_set_screen::@1 blocks: form_set_screen::@1 Found 1 loops in scope [form_render_values] Loop head: form_render_values::@1 tails: form_render_values::@3 blocks: form_render_values::@3 form_render_values::@1 -Found 0 loops in scope [form_field_ptr] +Found 0 loops in scope [form_control] Found 2 loops in scope [keyboard_event_scan] Loop head: keyboard_event_scan::@3 tails: keyboard_event_scan::@4 blocks: keyboard_event_scan::@4 keyboard_event_scan::@14 keyboard_event_scan::@16 keyboard_event_scan::@3 keyboard_event_scan::@6 keyboard_event_scan::@15 Loop head: keyboard_event_scan::@1 tails: keyboard_event_scan::@8 blocks: keyboard_event_scan::@8 keyboard_event_scan::@18 keyboard_event_scan::@2 keyboard_event_scan::@4 keyboard_event_scan::@25 keyboard_event_scan::@14 keyboard_event_scan::@16 keyboard_event_scan::@3 keyboard_event_scan::@6 keyboard_event_scan::@1 keyboard_event_scan::@15 @@ -9618,22 +10879,28 @@ Found 0 loops in scope [keyboard_event_get] Found 0 loops in scope [dtvSetCpuBankSegment1] Found 1 loops in scope [print_ln] Loop head: print_ln::@1 tails: print_ln::@1 blocks: print_ln::@1 +Found 0 loops in scope [form_field_ptr] Found 0 loops in scope [keyboard_matrix_read] Found 0 loops in scope [keyboard_event_pressed] -Loop head: main::@4 tails: main::@4 blocks: main::@4 depth: 2 -Loop head: main::@7 tails: main::@7 blocks: main::@7 depth: 2 -Loop head: main::@1 tails: main::@23 blocks: main::@23 main::@9 main::@7 main::@6 main::@4 main::@1 depth: 1 +Loop head: main::@1 tails: main::@10 blocks: main::@10 main::@2 main::@1 depth: 1 Loop head: gfx_mode::@10 tails: gfx_mode::@10 blocks: gfx_mode::@10 depth: 2 -Loop head: keyboard_event_scan::@3 tails: keyboard_event_scan::@4 blocks: keyboard_event_scan::@4 keyboard_event_scan::@14 keyboard_event_scan::@16 keyboard_event_scan::@3 keyboard_event_scan::@6 keyboard_event_scan::@15 depth: 3 -Loop head: keyboard_event_scan::@1 tails: keyboard_event_scan::@8 blocks: keyboard_event_scan::@8 keyboard_event_scan::@18 keyboard_event_scan::@2 keyboard_event_scan::@4 keyboard_event_scan::@25 keyboard_event_scan::@14 keyboard_event_scan::@16 keyboard_event_scan::@3 keyboard_event_scan::@6 keyboard_event_scan::@1 keyboard_event_scan::@15 depth: 2 +Loop head: gfx_mode::@14 tails: gfx_mode::@14 blocks: gfx_mode::@14 depth: 3 +Loop head: gfx_mode::@11 tails: gfx_mode::@37 blocks: gfx_mode::@37 gfx_mode::@36 gfx_mode::@16 gfx_mode::@14 gfx_mode::@11 depth: 2 +Loop head: keyboard_event_scan::@3 tails: keyboard_event_scan::@4 blocks: keyboard_event_scan::@4 keyboard_event_scan::@14 keyboard_event_scan::@16 keyboard_event_scan::@3 keyboard_event_scan::@6 keyboard_event_scan::@15 depth: 4 +Loop head: keyboard_event_scan::@1 tails: keyboard_event_scan::@8 blocks: keyboard_event_scan::@8 keyboard_event_scan::@18 keyboard_event_scan::@2 keyboard_event_scan::@4 keyboard_event_scan::@25 keyboard_event_scan::@14 keyboard_event_scan::@16 keyboard_event_scan::@3 keyboard_event_scan::@6 keyboard_event_scan::@1 keyboard_event_scan::@15 depth: 3 Loop head: form_mode::@1 tails: form_mode::@1 blocks: form_mode::@1 depth: 2 +Loop head: form_mode::@5 tails: form_mode::@5 blocks: form_mode::@5 depth: 3 +Loop head: form_mode::@2 tails: form_mode::@19 blocks: form_mode::@19 form_mode::@7 form_mode::@5 form_mode::@2 depth: 2 Loop head: form_render_values::@1 tails: form_render_values::@3 blocks: form_render_values::@3 form_render_values::@1 depth: 1 Loop head: form_set_screen::@1 tails: form_set_screen::@1 blocks: form_set_screen::@1 depth: 1 Loop head: print_str_lines::@4 tails: print_str_lines::@5 blocks: print_str_lines::@5 print_str_lines::@4 print_str_lines::@8 depth: 2 Loop head: print_str_lines::@1 tails: print_str_lines::@9 blocks: print_str_lines::@9 print_str_lines::@5 print_str_lines::@4 print_str_lines::@8 print_str_lines::@1 depth: 1 Loop head: print_ln::@1 tails: print_ln::@1 blocks: print_ln::@1 depth: 2 +Loop head: print_cls::@1 tails: print_cls::@1 blocks: print_cls::@1 depth: 1 Loop head: gfx_init_plane_8bppchunky::@2 tails: gfx_init_plane_8bppchunky::@3 blocks: gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@8 gfx_init_plane_8bppchunky::@4 depth: 2 Loop head: gfx_init_plane_8bppchunky::@1 tails: gfx_init_plane_8bppchunky::@5 blocks: gfx_init_plane_8bppchunky::@5 gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@8 gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky::@4 depth: 1 +Loop head: gfx_init_screen_stdchar::@2 tails: gfx_init_screen_stdchar::@2 blocks: gfx_init_screen_stdchar::@2 depth: 2 +Loop head: gfx_init_screen_stdchar::@1 tails: gfx_init_screen_stdchar::@3 blocks: gfx_init_screen_stdchar::@3 gfx_init_screen_stdchar::@2 gfx_init_screen_stdchar::@1 depth: 1 VARIABLE REGISTER WEIGHTS @@ -9642,7 +10909,6 @@ VARIABLE REGISTER WEIGHTS (byte*) BGCOL2 (byte*) BGCOL3 (byte*) BGCOL4 -(byte*) BORDERCOL (byte*) CIA1_PORT_A (byte*) CIA1_PORT_A_DDR (byte*) CIA1_PORT_B @@ -9680,7 +10946,6 @@ VARIABLE REGISTER WEIGHTS (byte*) FORM_CHARSET (byte[]) FORM_COLS (signed byte) FORM_CURSOR_BLINK -(word) FORM_OFFSET (byte*) FORM_SCREEN (byte[]) FORM_TEXT (byte) KEY_COMMODORE @@ -9694,6 +10959,7 @@ VARIABLE REGISTER WEIGHTS (byte) KEY_MODIFIER_RSHIFT (byte) KEY_MODIFIER_SHIFT (byte) KEY_RSHIFT +(byte) KEY_SPACE (dword) PLANE_8BPP_CHUNKY (byte*) RASTER (byte) VIC_BMM @@ -9705,6 +10971,7 @@ VARIABLE REGISTER WEIGHTS (byte) VIC_MCM (byte*) VIC_MEMORY (byte) VIC_RSEL +(byte*) VIC_SCREEN_STDCHAR (void()) dtvSetCpuBankSegment1((byte) dtvSetCpuBankSegment1::cpuBankIdx) (byte*) dtvSetCpuBankSegment1::cpuBank (byte) dtvSetCpuBankSegment1::cpuBankIdx @@ -9722,7 +10989,7 @@ VARIABLE REGISTER WEIGHTS (byte*) form_b_start_lo (byte*) form_b_step_hi (byte*) form_b_step_lo -(void()) form_control() +(byte()) form_control() (byte~) form_control::$12 4.0 (byte~) form_control::$13 4.0 (byte~) form_control::$24 4.0 @@ -9731,7 +10998,10 @@ VARIABLE REGISTER WEIGHTS (byte*) form_control::field (byte*) form_control::field#0 0.5925925925925926 (byte) form_control::key_event -(byte) form_control::key_event#0 3.0 +(byte) form_control::key_event#0 2.6666666666666665 +(byte) form_control::return +(byte) form_control::return#0 202.0 +(byte) form_control::return#2 33.666666666666664 (byte*) form_ctrl_bmm (byte*) form_ctrl_borof (byte*) form_ctrl_chunk @@ -9742,16 +11012,20 @@ VARIABLE REGISTER WEIGHTS (byte*) form_ctrl_mcm (byte*) form_ctrl_overs (signed byte) form_cursor_count -(signed byte) form_cursor_count#1 1.1818181818181819 -(signed byte) form_cursor_count#11 0.34782608695652173 -(signed byte) form_cursor_count#12 3.0 -(signed byte) form_cursor_count#3 2.0 +(signed byte) form_cursor_count#1 0.7647058823529412 +(signed byte) form_cursor_count#13 42.599999999999994 +(signed byte) form_cursor_count#15 0.4 +(signed byte) form_cursor_count#16 34.66666666666667 +(signed byte) form_cursor_count#21 25.75 +(signed byte) form_cursor_count#5 2.0 (byte) form_field_idx -(byte) form_field_idx#1 1.0487804878048785 -(byte) form_field_idx#14 3.4 -(byte) form_field_idx#24 6.0 -(byte) form_field_idx#3 2.0 -(byte) form_field_idx#34 2.0 +(byte) form_field_idx#1 0.7647058823529412 +(byte) form_field_idx#14 42.599999999999994 +(byte) form_field_idx#18 35.00000000000001 +(byte) form_field_idx#28 5.949999999999997 +(byte) form_field_idx#32 6.0 +(byte) form_field_idx#43 2.0 +(byte) form_field_idx#44 2.0 (byte*()) form_field_ptr((byte) form_field_ptr::field_idx) (word~) form_field_ptr::$2 1.0 (byte*) form_field_ptr::field @@ -9777,6 +11051,7 @@ VARIABLE REGISTER WEIGHTS (byte[25]) form_line_hi (byte[25]) form_line_lo (void()) form_mode() +(byte~) form_mode::$25 202.0 (byte) form_mode::i (byte) form_mode::i#1 151.5 (byte) form_mode::i#2 202.0 @@ -9825,6 +11100,21 @@ VARIABLE REGISTER WEIGHTS (byte) gfx_init_plane_8bppchunky::y (byte) gfx_init_plane_8bppchunky::y#1 16.5 (byte) gfx_init_plane_8bppchunky::y#6 9.461538461538462 +(void()) gfx_init_screen_stdchar() +(byte~) gfx_init_screen_stdchar::$0 202.0 +(byte~) gfx_init_screen_stdchar::$1 101.0 +(byte~) gfx_init_screen_stdchar::$2 202.0 +(byte~) gfx_init_screen_stdchar::$3 202.0 +(byte*) gfx_init_screen_stdchar::ch +(byte*) gfx_init_screen_stdchar::ch#1 42.599999999999994 +(byte*) gfx_init_screen_stdchar::ch#2 52.33333333333333 +(byte*) gfx_init_screen_stdchar::ch#3 22.0 +(byte) gfx_init_screen_stdchar::cx +(byte) gfx_init_screen_stdchar::cx#1 151.5 +(byte) gfx_init_screen_stdchar::cx#2 43.285714285714285 +(byte) gfx_init_screen_stdchar::cy +(byte) gfx_init_screen_stdchar::cy#1 16.5 +(byte) gfx_init_screen_stdchar::cy#4 12.299999999999999 (void()) gfx_mode() (byte~) gfx_mode::$29 4.0 (word~) gfx_mode::$33 4.0 @@ -9871,6 +11161,8 @@ VARIABLE REGISTER WEIGHTS (byte) gfx_mode::i (byte) gfx_mode::i#1 151.5 (byte) gfx_mode::i#2 202.0 +(byte) gfx_mode::keyboard_event +(byte) gfx_mode::keyboard_event#0 202.0 (dword) gfx_mode::plane_a (dword) gfx_mode::plane_a#0 1.1428571428571428 (byte) gfx_mode::plane_a_offs @@ -9888,8 +11180,9 @@ VARIABLE REGISTER WEIGHTS (byte()) keyboard_event_get() (byte) keyboard_event_get::return (byte) keyboard_event_get::return#0 4.0 -(byte) keyboard_event_get::return#2 1.3333333333333333 -(byte) keyboard_event_get::return#3 4.0 +(byte) keyboard_event_get::return#2 26.25 +(byte) keyboard_event_get::return#3 202.0 +(byte) keyboard_event_get::return#4 4.0 (byte()) keyboard_event_pressed((byte) keyboard_event_pressed::keycode) (byte~) keyboard_event_pressed::$0 4.0 (byte~) keyboard_event_pressed::$1 4.0 @@ -9904,77 +11197,93 @@ VARIABLE REGISTER WEIGHTS (byte) keyboard_event_pressed::row_bits (byte) keyboard_event_pressed::row_bits#0 2.0 (void()) keyboard_event_scan() -(byte/word/dword~) keyboard_event_scan::$12 2002.0 +(byte/word/dword~) keyboard_event_scan::$12 20002.0 (byte~) keyboard_event_scan::$16 4.0 (byte~) keyboard_event_scan::$20 4.0 (byte~) keyboard_event_scan::$24 4.0 (byte~) keyboard_event_scan::$28 4.0 -(byte~) keyboard_event_scan::$3 2002.0 -(byte~) keyboard_event_scan::$4 2002.0 +(byte~) keyboard_event_scan::$3 20002.0 +(byte~) keyboard_event_scan::$4 20002.0 (byte) keyboard_event_scan::col -(byte) keyboard_event_scan::col#1 1501.5 -(byte) keyboard_event_scan::col#2 286.0 +(byte) keyboard_event_scan::col#1 15001.5 +(byte) keyboard_event_scan::col#2 2857.4285714285716 (byte) keyboard_event_scan::event_type -(byte) keyboard_event_scan::event_type#0 2002.0 +(byte) keyboard_event_scan::event_type#0 20002.0 (byte) keyboard_event_scan::keycode -(byte) keyboard_event_scan::keycode#1 202.0 -(byte) keyboard_event_scan::keycode#10 315.7692307692308 -(byte) keyboard_event_scan::keycode#11 50.5 -(byte) keyboard_event_scan::keycode#14 101.0 -(byte) keyboard_event_scan::keycode#15 525.75 +(byte) keyboard_event_scan::keycode#1 2002.0 +(byte) keyboard_event_scan::keycode#10 3154.230769230769 +(byte) keyboard_event_scan::keycode#11 500.5 +(byte) keyboard_event_scan::keycode#14 1001.0 +(byte) keyboard_event_scan::keycode#15 5250.75 (byte) keyboard_event_scan::row -(byte) keyboard_event_scan::row#1 151.5 -(byte) keyboard_event_scan::row#2 60.239999999999995 +(byte) keyboard_event_scan::row#1 1501.5 +(byte) keyboard_event_scan::row#2 600.24 (byte) keyboard_event_scan::row_scan -(byte) keyboard_event_scan::row_scan#0 128.05555555555557 +(byte) keyboard_event_scan::row_scan#0 1278.0555555555554 (byte[8]) keyboard_events (byte) keyboard_events_size -(byte) keyboard_events_size#1 2002.0 -(byte) keyboard_events_size#12 810.9000000000001 -(byte) keyboard_events_size#15 9.65625 -(byte) keyboard_events_size#18 0.46875 -(byte) keyboard_events_size#2 2002.0 -(byte) keyboard_events_size#20 0.5909090909090909 -(byte) keyboard_events_size#37 43.57142857142858 -(byte) keyboard_events_size#38 1021.2 +(byte) keyboard_events_size#1 20002.0 +(byte) keyboard_events_size#104 105.0 +(byte) keyboard_events_size#105 88.5 +(byte) keyboard_events_size#11 71.0 +(byte) keyboard_events_size#111 10201.2 +(byte) keyboard_events_size#112 429.2857142857143 +(byte) keyboard_events_size#13 3.4431818181818183 +(byte) keyboard_events_size#18 8100.9000000000015 +(byte) keyboard_events_size#2 20002.0 +(byte) keyboard_events_size#24 10.461538461538462 +(byte) keyboard_events_size#27 0.7647058823529412 (byte) keyboard_events_size#4 3.0 +(byte) keyboard_events_size#45 101.0 +(byte) keyboard_events_size#47 11.444444444444443 (void()) keyboard_init() (byte[8]) keyboard_matrix_col_bitmask (byte()) keyboard_matrix_read((byte) keyboard_matrix_read::rowid) (byte) keyboard_matrix_read::return -(byte) keyboard_matrix_read::return#0 34.33333333333333 -(byte) keyboard_matrix_read::return#2 202.0 +(byte) keyboard_matrix_read::return#0 334.33333333333337 +(byte) keyboard_matrix_read::return#2 2002.0 (byte) keyboard_matrix_read::row_pressed_bits (byte) keyboard_matrix_read::rowid -(byte) keyboard_matrix_read::rowid#0 103.0 +(byte) keyboard_matrix_read::rowid#0 1003.0 (byte[8]) keyboard_matrix_row_bitmask (byte) keyboard_modifiers -(byte) keyboard_modifiers#13 0.8 -(byte) keyboard_modifiers#14 1.6 -(byte) keyboard_modifiers#15 1.6 -(byte) keyboard_modifiers#16 0.7272727272727273 +(byte) keyboard_modifiers#11 71.0 +(byte) keyboard_modifiers#13 3.4431818181818183 +(byte) keyboard_modifiers#18 0.8 +(byte) keyboard_modifiers#19 1.6 +(byte) keyboard_modifiers#20 1.6 +(byte) keyboard_modifiers#21 9.58139534883721 +(byte) keyboard_modifiers#24 0.7647058823529412 (byte) keyboard_modifiers#3 4.0 (byte) keyboard_modifiers#4 4.0 +(byte) keyboard_modifiers#42 151.5 +(byte) keyboard_modifiers#45 102.0 (byte) keyboard_modifiers#5 4.0 (byte[8]) keyboard_scan_values (void()) main() (byte*) print_char_cursor (byte*) print_char_cursor#1 202.0 -(byte*) print_char_cursor#16 83.0 -(byte*) print_char_cursor#18 12.0 -(byte*) print_char_cursor#31 57.714285714285715 +(byte*) print_char_cursor#20 83.0 +(byte*) print_char_cursor#22 12.0 +(byte*) print_char_cursor#38 57.714285714285715 (byte*~) print_char_cursor#60 4.0 (byte*~) print_char_cursor#61 22.0 +(void()) print_cls() +(byte*~) print_cls::$0 22.0 +(byte*) print_cls::sc +(byte*) print_cls::sc#0 4.0 +(byte*) print_cls::sc#1 11.0 +(byte*) print_cls::sc#2 17.5 (byte[]) print_hextab (byte*) print_line_cursor -(byte*) print_line_cursor#16 1.25 -(byte*) print_line_cursor#17 204.0 -(byte*) print_line_cursor#18 65.0 +(byte*) print_line_cursor#2 1.25 +(byte*) print_line_cursor#21 204.0 +(byte*) print_line_cursor#22 65.0 (void()) print_ln() (byte*) print_screen (void()) print_set_screen((byte*) print_set_screen::screen) (byte*) print_set_screen::screen -(byte*) print_set_screen::screen#2 0.5 +(byte*) print_set_screen::screen#2 0.8947368421052632 (void()) print_str_lines((byte*) print_str_lines::str) (byte) print_str_lines::ch (byte) print_str_lines::ch#0 67.33333333333333 @@ -9985,9 +11294,7 @@ VARIABLE REGISTER WEIGHTS (byte*) print_str_lines::str#5 1.0 Initial phi equivalence classes -[ form_cursor_count#1 form_cursor_count#12 form_cursor_count#11 form_cursor_count#3 ] -[ form_field_idx#1 form_field_idx#14 form_field_idx#24 form_field_idx#34 form_field_idx#3 ] -[ gfx_mode::dtv_control#12 gfx_mode::dtv_control#6 gfx_mode::dtv_control#13 gfx_mode::dtv_control#5 gfx_mode::dtv_control#11 gfx_mode::dtv_control#4 gfx_mode::dtv_control#10 gfx_mode::dtv_control#3 gfx_mode::dtv_control#15 gfx_mode::dtv_control#14 gfx_mode::dtv_control#2 ] +[ gfx_mode::dtv_control#12 gfx_mode::dtv_control#6 gfx_mode::dtv_control#13 gfx_mode::dtv_control#5 gfx_mode::dtv_control#11 gfx_mode::dtv_control#4 gfx_mode::dtv_control#10 gfx_mode::dtv_control#15 gfx_mode::dtv_control#14 gfx_mode::dtv_control#2 gfx_mode::dtv_control#3 ] [ gfx_mode::vic_control#4 gfx_mode::vic_control#2 gfx_mode::vic_control#5 ] [ gfx_mode::vic_control2#2 ] [ gfx_mode::i#2 gfx_mode::i#1 ] @@ -9995,22 +11302,29 @@ Initial phi equivalence classes [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 ] [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ] [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 ] -[ keyboard_events_size#12 keyboard_events_size#37 keyboard_events_size#20 keyboard_events_size#18 keyboard_events_size#4 keyboard_events_size#15 keyboard_events_size#38 keyboard_events_size#2 keyboard_events_size#1 ] -[ keyboard_modifiers#16 keyboard_modifiers#15 keyboard_modifiers#4 keyboard_modifiers#14 keyboard_modifiers#3 keyboard_modifiers#13 keyboard_modifiers#5 ] +[ keyboard_events_size#18 keyboard_events_size#112 keyboard_events_size#104 keyboard_events_size#47 keyboard_events_size#27 keyboard_events_size#11 keyboard_events_size#45 keyboard_events_size#13 keyboard_events_size#24 keyboard_events_size#4 keyboard_events_size#105 keyboard_events_size#111 keyboard_events_size#2 keyboard_events_size#1 ] [ keyboard_event_pressed::keycode#4 ] -[ form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 form_field_ptr::field_idx#0 ] [ form_mode::i#2 form_mode::i#1 ] +[ form_cursor_count#21 form_cursor_count#16 form_cursor_count#1 form_cursor_count#13 form_cursor_count#15 form_cursor_count#5 ] +[ keyboard_modifiers#45 keyboard_modifiers#24 keyboard_modifiers#11 keyboard_modifiers#42 keyboard_modifiers#13 keyboard_modifiers#21 keyboard_modifiers#20 keyboard_modifiers#4 keyboard_modifiers#19 keyboard_modifiers#3 keyboard_modifiers#18 keyboard_modifiers#5 ] +[ form_field_idx#28 form_field_idx#18 form_field_idx#1 form_field_idx#14 form_field_idx#32 form_field_idx#43 form_field_idx#44 ] +[ form_control::return#2 ] +[ form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 form_field_ptr::field_idx#0 ] [ form_render_values::idx#2 form_render_values::idx#1 ] [ form_set_screen::line#2 form_set_screen::line#1 ] [ form_set_screen::y#2 form_set_screen::y#1 ] [ print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 ] -[ print_char_cursor#16 print_char_cursor#18 print_char_cursor#60 print_char_cursor#61 print_char_cursor#31 print_char_cursor#1 ] -[ print_line_cursor#17 print_line_cursor#16 print_set_screen::screen#2 print_line_cursor#18 ] +[ print_char_cursor#20 print_char_cursor#22 print_char_cursor#60 print_char_cursor#61 print_char_cursor#38 print_char_cursor#1 ] +[ print_line_cursor#21 print_line_cursor#2 print_set_screen::screen#2 print_line_cursor#22 ] +[ print_cls::sc#2 print_cls::sc#0 print_cls::sc#1 ] [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 ] [ gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 ] [ gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] [ gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::gfxb#1 ] [ dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#1 ] +[ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cy#1 ] +[ gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::cx#1 ] +[ gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::ch#3 gfx_init_screen_stdchar::ch#1 ] Added variable gfx_mode::$29 to zero page equivalence class [ gfx_mode::$29 ] Added variable gfx_mode::plane_a_offs#0 to zero page equivalence class [ gfx_mode::plane_a_offs#0 ] Added variable gfx_mode::plane_a#0 to zero page equivalence class [ gfx_mode::plane_a#0 ] @@ -10045,15 +11359,8 @@ Added variable gfx_mode::$60 to zero page equivalence class [ gfx_mode::$60 ] Added variable gfx_mode::$61 to zero page equivalence class [ gfx_mode::$61 ] Added variable gfx_mode::$62 to zero page equivalence class [ gfx_mode::$62 ] Added variable gfx_mode::$63 to zero page equivalence class [ gfx_mode::$63 ] -Added variable form_field_ptr::return#3 to zero page equivalence class [ form_field_ptr::return#3 ] -Added variable form_control::field#0 to zero page equivalence class [ form_control::field#0 ] -Added variable form_control::$6 to zero page equivalence class [ form_control::$6 ] Added variable keyboard_event_get::return#3 to zero page equivalence class [ keyboard_event_get::return#3 ] -Added variable form_control::key_event#0 to zero page equivalence class [ form_control::key_event#0 ] -Added variable form_control::$12 to zero page equivalence class [ form_control::$12 ] -Added variable form_control::$13 to zero page equivalence class [ form_control::$13 ] -Added variable form_control::$24 to zero page equivalence class [ form_control::$24 ] -Added variable form_control::$7 to zero page equivalence class [ form_control::$7 ] +Added variable gfx_mode::keyboard_event#0 to zero page equivalence class [ gfx_mode::keyboard_event#0 ] Added variable keyboard_matrix_read::rowid#0 to zero page equivalence class [ keyboard_matrix_read::rowid#0 ] Added variable keyboard_matrix_read::return#2 to zero page equivalence class [ keyboard_matrix_read::return#2 ] Added variable keyboard_event_scan::row_scan#0 to zero page equivalence class [ keyboard_event_scan::row_scan#0 ] @@ -10074,6 +11381,17 @@ Added variable keyboard_event_pressed::row_bits#0 to zero page equivalence class Added variable keyboard_event_pressed::$1 to zero page equivalence class [ keyboard_event_pressed::$1 ] Added variable keyboard_event_pressed::return#10 to zero page equivalence class [ keyboard_event_pressed::return#10 ] Added variable keyboard_matrix_read::return#0 to zero page equivalence class [ keyboard_matrix_read::return#0 ] +Added variable form_control::return#0 to zero page equivalence class [ form_control::return#0 ] +Added variable form_mode::$25 to zero page equivalence class [ form_mode::$25 ] +Added variable form_field_ptr::return#3 to zero page equivalence class [ form_field_ptr::return#3 ] +Added variable form_control::field#0 to zero page equivalence class [ form_control::field#0 ] +Added variable form_control::$6 to zero page equivalence class [ form_control::$6 ] +Added variable keyboard_event_get::return#4 to zero page equivalence class [ keyboard_event_get::return#4 ] +Added variable form_control::key_event#0 to zero page equivalence class [ form_control::key_event#0 ] +Added variable form_control::$12 to zero page equivalence class [ form_control::$12 ] +Added variable form_control::$13 to zero page equivalence class [ form_control::$13 ] +Added variable form_control::$24 to zero page equivalence class [ form_control::$24 ] +Added variable form_control::$7 to zero page equivalence class [ form_control::$7 ] Added variable form_field_ptr::y#0 to zero page equivalence class [ form_field_ptr::y#0 ] Added variable form_field_ptr::$2 to zero page equivalence class [ form_field_ptr::$2 ] Added variable form_field_ptr::x#0 to zero page equivalence class [ form_field_ptr::x#0 ] @@ -10083,12 +11401,15 @@ Added variable form_render_values::field#0 to zero page equivalence class [ form Added variable form_set_screen::$0 to zero page equivalence class [ form_set_screen::$0 ] Added variable form_set_screen::$1 to zero page equivalence class [ form_set_screen::$1 ] Added variable print_str_lines::ch#0 to zero page equivalence class [ print_str_lines::ch#0 ] +Added variable print_cls::$0 to zero page equivalence class [ print_cls::$0 ] Added variable gfx_init_plane_8bppchunky::$6 to zero page equivalence class [ gfx_init_plane_8bppchunky::$6 ] Added variable gfx_init_plane_8bppchunky::c#0 to zero page equivalence class [ gfx_init_plane_8bppchunky::c#0 ] +Added variable gfx_init_screen_stdchar::$0 to zero page equivalence class [ gfx_init_screen_stdchar::$0 ] +Added variable gfx_init_screen_stdchar::$1 to zero page equivalence class [ gfx_init_screen_stdchar::$1 ] +Added variable gfx_init_screen_stdchar::$2 to zero page equivalence class [ gfx_init_screen_stdchar::$2 ] +Added variable gfx_init_screen_stdchar::$3 to zero page equivalence class [ gfx_init_screen_stdchar::$3 ] Complete equivalence classes -[ form_cursor_count#1 form_cursor_count#12 form_cursor_count#11 form_cursor_count#3 ] -[ form_field_idx#1 form_field_idx#14 form_field_idx#24 form_field_idx#34 form_field_idx#3 ] -[ gfx_mode::dtv_control#12 gfx_mode::dtv_control#6 gfx_mode::dtv_control#13 gfx_mode::dtv_control#5 gfx_mode::dtv_control#11 gfx_mode::dtv_control#4 gfx_mode::dtv_control#10 gfx_mode::dtv_control#3 gfx_mode::dtv_control#15 gfx_mode::dtv_control#14 gfx_mode::dtv_control#2 ] +[ gfx_mode::dtv_control#12 gfx_mode::dtv_control#6 gfx_mode::dtv_control#13 gfx_mode::dtv_control#5 gfx_mode::dtv_control#11 gfx_mode::dtv_control#4 gfx_mode::dtv_control#10 gfx_mode::dtv_control#15 gfx_mode::dtv_control#14 gfx_mode::dtv_control#2 gfx_mode::dtv_control#3 ] [ gfx_mode::vic_control#4 gfx_mode::vic_control#2 gfx_mode::vic_control#5 ] [ gfx_mode::vic_control2#2 ] [ gfx_mode::i#2 gfx_mode::i#1 ] @@ -10096,22 +11417,29 @@ Complete equivalence classes [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 ] [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ] [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 ] -[ keyboard_events_size#12 keyboard_events_size#37 keyboard_events_size#20 keyboard_events_size#18 keyboard_events_size#4 keyboard_events_size#15 keyboard_events_size#38 keyboard_events_size#2 keyboard_events_size#1 ] -[ keyboard_modifiers#16 keyboard_modifiers#15 keyboard_modifiers#4 keyboard_modifiers#14 keyboard_modifiers#3 keyboard_modifiers#13 keyboard_modifiers#5 ] +[ keyboard_events_size#18 keyboard_events_size#112 keyboard_events_size#104 keyboard_events_size#47 keyboard_events_size#27 keyboard_events_size#11 keyboard_events_size#45 keyboard_events_size#13 keyboard_events_size#24 keyboard_events_size#4 keyboard_events_size#105 keyboard_events_size#111 keyboard_events_size#2 keyboard_events_size#1 ] [ keyboard_event_pressed::keycode#4 ] -[ form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 form_field_ptr::field_idx#0 ] [ form_mode::i#2 form_mode::i#1 ] +[ form_cursor_count#21 form_cursor_count#16 form_cursor_count#1 form_cursor_count#13 form_cursor_count#15 form_cursor_count#5 ] +[ keyboard_modifiers#45 keyboard_modifiers#24 keyboard_modifiers#11 keyboard_modifiers#42 keyboard_modifiers#13 keyboard_modifiers#21 keyboard_modifiers#20 keyboard_modifiers#4 keyboard_modifiers#19 keyboard_modifiers#3 keyboard_modifiers#18 keyboard_modifiers#5 ] +[ form_field_idx#28 form_field_idx#18 form_field_idx#1 form_field_idx#14 form_field_idx#32 form_field_idx#43 form_field_idx#44 ] +[ form_control::return#2 ] +[ form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 form_field_ptr::field_idx#0 ] [ form_render_values::idx#2 form_render_values::idx#1 ] [ form_set_screen::line#2 form_set_screen::line#1 ] [ form_set_screen::y#2 form_set_screen::y#1 ] [ print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 ] -[ print_char_cursor#16 print_char_cursor#18 print_char_cursor#60 print_char_cursor#61 print_char_cursor#31 print_char_cursor#1 ] -[ print_line_cursor#17 print_line_cursor#16 print_set_screen::screen#2 print_line_cursor#18 ] +[ print_char_cursor#20 print_char_cursor#22 print_char_cursor#60 print_char_cursor#61 print_char_cursor#38 print_char_cursor#1 ] +[ print_line_cursor#21 print_line_cursor#2 print_set_screen::screen#2 print_line_cursor#22 ] +[ print_cls::sc#2 print_cls::sc#0 print_cls::sc#1 ] [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 ] [ gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 ] [ gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] [ gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::gfxb#1 ] [ dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#1 ] +[ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cy#1 ] +[ gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::cx#1 ] +[ gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::ch#3 gfx_init_screen_stdchar::ch#1 ] [ gfx_mode::$29 ] [ gfx_mode::plane_a_offs#0 ] [ gfx_mode::plane_a#0 ] @@ -10146,15 +11474,8 @@ Complete equivalence classes [ gfx_mode::$61 ] [ gfx_mode::$62 ] [ gfx_mode::$63 ] -[ form_field_ptr::return#3 ] -[ form_control::field#0 ] -[ form_control::$6 ] [ keyboard_event_get::return#3 ] -[ form_control::key_event#0 ] -[ form_control::$12 ] -[ form_control::$13 ] -[ form_control::$24 ] -[ form_control::$7 ] +[ gfx_mode::keyboard_event#0 ] [ keyboard_matrix_read::rowid#0 ] [ keyboard_matrix_read::return#2 ] [ keyboard_event_scan::row_scan#0 ] @@ -10175,6 +11496,17 @@ Complete equivalence classes [ keyboard_event_pressed::$1 ] [ keyboard_event_pressed::return#10 ] [ keyboard_matrix_read::return#0 ] +[ form_control::return#0 ] +[ form_mode::$25 ] +[ form_field_ptr::return#3 ] +[ form_control::field#0 ] +[ form_control::$6 ] +[ keyboard_event_get::return#4 ] +[ form_control::key_event#0 ] +[ form_control::$12 ] +[ form_control::$13 ] +[ form_control::$24 ] +[ form_control::$7 ] [ form_field_ptr::y#0 ] [ form_field_ptr::$2 ] [ form_field_ptr::x#0 ] @@ -10184,108 +11516,127 @@ Complete equivalence classes [ form_set_screen::$0 ] [ form_set_screen::$1 ] [ print_str_lines::ch#0 ] +[ print_cls::$0 ] [ gfx_init_plane_8bppchunky::$6 ] [ gfx_init_plane_8bppchunky::c#0 ] -Allocated zp ZP_BYTE:2 [ form_cursor_count#1 form_cursor_count#12 form_cursor_count#11 form_cursor_count#3 ] -Allocated zp ZP_BYTE:3 [ form_field_idx#1 form_field_idx#14 form_field_idx#24 form_field_idx#34 form_field_idx#3 ] -Allocated zp ZP_BYTE:4 [ gfx_mode::dtv_control#12 gfx_mode::dtv_control#6 gfx_mode::dtv_control#13 gfx_mode::dtv_control#5 gfx_mode::dtv_control#11 gfx_mode::dtv_control#4 gfx_mode::dtv_control#10 gfx_mode::dtv_control#3 gfx_mode::dtv_control#15 gfx_mode::dtv_control#14 gfx_mode::dtv_control#2 ] -Allocated zp ZP_BYTE:5 [ gfx_mode::vic_control#4 gfx_mode::vic_control#2 gfx_mode::vic_control#5 ] -Allocated zp ZP_BYTE:6 [ gfx_mode::vic_control2#2 ] -Allocated zp ZP_BYTE:7 [ gfx_mode::i#2 gfx_mode::i#1 ] -Allocated zp ZP_BYTE:8 [ keyboard_event_get::return#2 keyboard_event_get::return#0 ] -Allocated zp ZP_BYTE:9 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 ] -Allocated zp ZP_BYTE:10 [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ] -Allocated zp ZP_BYTE:11 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 ] -Allocated zp ZP_BYTE:12 [ keyboard_events_size#12 keyboard_events_size#37 keyboard_events_size#20 keyboard_events_size#18 keyboard_events_size#4 keyboard_events_size#15 keyboard_events_size#38 keyboard_events_size#2 keyboard_events_size#1 ] -Allocated zp ZP_BYTE:13 [ keyboard_modifiers#16 keyboard_modifiers#15 keyboard_modifiers#4 keyboard_modifiers#14 keyboard_modifiers#3 keyboard_modifiers#13 keyboard_modifiers#5 ] -Allocated zp ZP_BYTE:14 [ keyboard_event_pressed::keycode#4 ] -Allocated zp ZP_BYTE:15 [ form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 form_field_ptr::field_idx#0 ] -Allocated zp ZP_BYTE:16 [ form_mode::i#2 form_mode::i#1 ] -Allocated zp ZP_BYTE:17 [ form_render_values::idx#2 form_render_values::idx#1 ] -Allocated zp ZP_WORD:18 [ form_set_screen::line#2 form_set_screen::line#1 ] -Allocated zp ZP_BYTE:20 [ form_set_screen::y#2 form_set_screen::y#1 ] -Allocated zp ZP_WORD:21 [ print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 ] -Allocated zp ZP_WORD:23 [ print_char_cursor#16 print_char_cursor#18 print_char_cursor#60 print_char_cursor#61 print_char_cursor#31 print_char_cursor#1 ] -Allocated zp ZP_WORD:25 [ print_line_cursor#17 print_line_cursor#16 print_set_screen::screen#2 print_line_cursor#18 ] -Allocated zp ZP_BYTE:27 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 ] -Allocated zp ZP_WORD:28 [ gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 ] -Allocated zp ZP_BYTE:30 [ gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] -Allocated zp ZP_WORD:31 [ gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::gfxb#1 ] -Allocated zp ZP_BYTE:33 [ dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#1 ] -Allocated zp ZP_BYTE:34 [ gfx_mode::$29 ] -Allocated zp ZP_BYTE:35 [ gfx_mode::plane_a_offs#0 ] -Allocated zp ZP_DWORD:36 [ gfx_mode::plane_a#0 ] -Allocated zp ZP_WORD:40 [ gfx_mode::$33 ] -Allocated zp ZP_BYTE:42 [ gfx_mode::$34 ] -Allocated zp ZP_WORD:43 [ gfx_mode::$35 ] -Allocated zp ZP_BYTE:45 [ gfx_mode::$36 ] -Allocated zp ZP_WORD:46 [ gfx_mode::$37 ] -Allocated zp ZP_BYTE:48 [ gfx_mode::$38 ] -Allocated zp ZP_BYTE:49 [ gfx_mode::$39 ] -Allocated zp ZP_BYTE:50 [ gfx_mode::$40 ] -Allocated zp ZP_BYTE:51 [ gfx_mode::$41 ] -Allocated zp ZP_BYTE:52 [ gfx_mode::$42 ] -Allocated zp ZP_BYTE:53 [ gfx_mode::$43 ] -Allocated zp ZP_BYTE:54 [ gfx_mode::plane_b_offs#0 ] -Allocated zp ZP_DWORD:55 [ gfx_mode::plane_b#0 ] -Allocated zp ZP_WORD:59 [ gfx_mode::$46 ] -Allocated zp ZP_BYTE:61 [ gfx_mode::$47 ] -Allocated zp ZP_WORD:62 [ gfx_mode::$48 ] -Allocated zp ZP_BYTE:64 [ gfx_mode::$49 ] -Allocated zp ZP_WORD:65 [ gfx_mode::$50 ] -Allocated zp ZP_BYTE:67 [ gfx_mode::$51 ] -Allocated zp ZP_BYTE:68 [ gfx_mode::$52 ] -Allocated zp ZP_BYTE:69 [ gfx_mode::$53 ] -Allocated zp ZP_BYTE:70 [ gfx_mode::$54 ] -Allocated zp ZP_BYTE:71 [ gfx_mode::$55 ] -Allocated zp ZP_BYTE:72 [ gfx_mode::$56 ] -Allocated zp ZP_BYTE:73 [ gfx_mode::$57 ] -Allocated zp ZP_BYTE:74 [ gfx_mode::$58 ] -Allocated zp ZP_BYTE:75 [ gfx_mode::$59 ] -Allocated zp ZP_BYTE:76 [ gfx_mode::$60 ] -Allocated zp ZP_BYTE:77 [ gfx_mode::$61 ] -Allocated zp ZP_BYTE:78 [ gfx_mode::$62 ] -Allocated zp ZP_BYTE:79 [ gfx_mode::$63 ] -Allocated zp ZP_WORD:80 [ form_field_ptr::return#3 ] -Allocated zp ZP_WORD:82 [ form_control::field#0 ] -Allocated zp ZP_BYTE:84 [ form_control::$6 ] -Allocated zp ZP_BYTE:85 [ keyboard_event_get::return#3 ] -Allocated zp ZP_BYTE:86 [ form_control::key_event#0 ] -Allocated zp ZP_BYTE:87 [ form_control::$12 ] -Allocated zp ZP_BYTE:88 [ form_control::$13 ] -Allocated zp ZP_BYTE:89 [ form_control::$24 ] -Allocated zp ZP_BYTE:90 [ form_control::$7 ] -Allocated zp ZP_BYTE:91 [ keyboard_matrix_read::rowid#0 ] -Allocated zp ZP_BYTE:92 [ keyboard_matrix_read::return#2 ] -Allocated zp ZP_BYTE:93 [ keyboard_event_scan::row_scan#0 ] -Allocated zp ZP_BYTE:94 [ keyboard_event_scan::$3 ] -Allocated zp ZP_BYTE:95 [ keyboard_event_scan::$4 ] -Allocated zp ZP_BYTE:96 [ keyboard_event_scan::event_type#0 ] -Allocated zp ZP_BYTE:97 [ keyboard_event_scan::$12 ] -Allocated zp ZP_BYTE:98 [ keyboard_event_pressed::return#0 ] -Allocated zp ZP_BYTE:99 [ keyboard_event_scan::$16 ] -Allocated zp ZP_BYTE:100 [ keyboard_event_pressed::return#1 ] -Allocated zp ZP_BYTE:101 [ keyboard_event_scan::$20 ] -Allocated zp ZP_BYTE:102 [ keyboard_event_pressed::return#2 ] -Allocated zp ZP_BYTE:103 [ keyboard_event_scan::$24 ] -Allocated zp ZP_BYTE:104 [ keyboard_event_pressed::return#3 ] -Allocated zp ZP_BYTE:105 [ keyboard_event_scan::$28 ] -Allocated zp ZP_BYTE:106 [ keyboard_event_pressed::$0 ] -Allocated zp ZP_BYTE:107 [ keyboard_event_pressed::row_bits#0 ] -Allocated zp ZP_BYTE:108 [ keyboard_event_pressed::$1 ] -Allocated zp ZP_BYTE:109 [ keyboard_event_pressed::return#10 ] -Allocated zp ZP_BYTE:110 [ keyboard_matrix_read::return#0 ] -Allocated zp ZP_BYTE:111 [ form_field_ptr::y#0 ] -Allocated zp ZP_WORD:112 [ form_field_ptr::$2 ] -Allocated zp ZP_BYTE:114 [ form_field_ptr::x#0 ] -Allocated zp ZP_WORD:115 [ form_field_ptr::return#0 ] -Allocated zp ZP_WORD:117 [ form_field_ptr::return#2 ] -Allocated zp ZP_WORD:119 [ form_render_values::field#0 ] -Allocated zp ZP_BYTE:121 [ form_set_screen::$0 ] -Allocated zp ZP_BYTE:122 [ form_set_screen::$1 ] -Allocated zp ZP_BYTE:123 [ print_str_lines::ch#0 ] -Allocated zp ZP_WORD:124 [ gfx_init_plane_8bppchunky::$6 ] -Allocated zp ZP_BYTE:126 [ gfx_init_plane_8bppchunky::c#0 ] +[ gfx_init_screen_stdchar::$0 ] +[ gfx_init_screen_stdchar::$1 ] +[ gfx_init_screen_stdchar::$2 ] +[ gfx_init_screen_stdchar::$3 ] +Allocated zp ZP_BYTE:2 [ gfx_mode::dtv_control#12 gfx_mode::dtv_control#6 gfx_mode::dtv_control#13 gfx_mode::dtv_control#5 gfx_mode::dtv_control#11 gfx_mode::dtv_control#4 gfx_mode::dtv_control#10 gfx_mode::dtv_control#15 gfx_mode::dtv_control#14 gfx_mode::dtv_control#2 gfx_mode::dtv_control#3 ] +Allocated zp ZP_BYTE:3 [ gfx_mode::vic_control#4 gfx_mode::vic_control#2 gfx_mode::vic_control#5 ] +Allocated zp ZP_BYTE:4 [ gfx_mode::vic_control2#2 ] +Allocated zp ZP_BYTE:5 [ gfx_mode::i#2 gfx_mode::i#1 ] +Allocated zp ZP_BYTE:6 [ keyboard_event_get::return#2 keyboard_event_get::return#0 ] +Allocated zp ZP_BYTE:7 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 ] +Allocated zp ZP_BYTE:8 [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ] +Allocated zp ZP_BYTE:9 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 ] +Allocated zp ZP_BYTE:10 [ keyboard_events_size#18 keyboard_events_size#112 keyboard_events_size#104 keyboard_events_size#47 keyboard_events_size#27 keyboard_events_size#11 keyboard_events_size#45 keyboard_events_size#13 keyboard_events_size#24 keyboard_events_size#4 keyboard_events_size#105 keyboard_events_size#111 keyboard_events_size#2 keyboard_events_size#1 ] +Allocated zp ZP_BYTE:11 [ keyboard_event_pressed::keycode#4 ] +Allocated zp ZP_BYTE:12 [ form_mode::i#2 form_mode::i#1 ] +Allocated zp ZP_BYTE:13 [ form_cursor_count#21 form_cursor_count#16 form_cursor_count#1 form_cursor_count#13 form_cursor_count#15 form_cursor_count#5 ] +Allocated zp ZP_BYTE:14 [ keyboard_modifiers#45 keyboard_modifiers#24 keyboard_modifiers#11 keyboard_modifiers#42 keyboard_modifiers#13 keyboard_modifiers#21 keyboard_modifiers#20 keyboard_modifiers#4 keyboard_modifiers#19 keyboard_modifiers#3 keyboard_modifiers#18 keyboard_modifiers#5 ] +Allocated zp ZP_BYTE:15 [ form_field_idx#28 form_field_idx#18 form_field_idx#1 form_field_idx#14 form_field_idx#32 form_field_idx#43 form_field_idx#44 ] +Allocated zp ZP_BYTE:16 [ form_control::return#2 ] +Allocated zp ZP_BYTE:17 [ form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 form_field_ptr::field_idx#0 ] +Allocated zp ZP_BYTE:18 [ form_render_values::idx#2 form_render_values::idx#1 ] +Allocated zp ZP_WORD:19 [ form_set_screen::line#2 form_set_screen::line#1 ] +Allocated zp ZP_BYTE:21 [ form_set_screen::y#2 form_set_screen::y#1 ] +Allocated zp ZP_WORD:22 [ print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 ] +Allocated zp ZP_WORD:24 [ print_char_cursor#20 print_char_cursor#22 print_char_cursor#60 print_char_cursor#61 print_char_cursor#38 print_char_cursor#1 ] +Allocated zp ZP_WORD:26 [ print_line_cursor#21 print_line_cursor#2 print_set_screen::screen#2 print_line_cursor#22 ] +Allocated zp ZP_WORD:28 [ print_cls::sc#2 print_cls::sc#0 print_cls::sc#1 ] +Allocated zp ZP_BYTE:30 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 ] +Allocated zp ZP_WORD:31 [ gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 ] +Allocated zp ZP_BYTE:33 [ gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] +Allocated zp ZP_WORD:34 [ gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::gfxb#1 ] +Allocated zp ZP_BYTE:36 [ dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#1 ] +Allocated zp ZP_BYTE:37 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cy#1 ] +Allocated zp ZP_BYTE:38 [ gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::cx#1 ] +Allocated zp ZP_WORD:39 [ gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::ch#3 gfx_init_screen_stdchar::ch#1 ] +Allocated zp ZP_BYTE:41 [ gfx_mode::$29 ] +Allocated zp ZP_BYTE:42 [ gfx_mode::plane_a_offs#0 ] +Allocated zp ZP_DWORD:43 [ gfx_mode::plane_a#0 ] +Allocated zp ZP_WORD:47 [ gfx_mode::$33 ] +Allocated zp ZP_BYTE:49 [ gfx_mode::$34 ] +Allocated zp ZP_WORD:50 [ gfx_mode::$35 ] +Allocated zp ZP_BYTE:52 [ gfx_mode::$36 ] +Allocated zp ZP_WORD:53 [ gfx_mode::$37 ] +Allocated zp ZP_BYTE:55 [ gfx_mode::$38 ] +Allocated zp ZP_BYTE:56 [ gfx_mode::$39 ] +Allocated zp ZP_BYTE:57 [ gfx_mode::$40 ] +Allocated zp ZP_BYTE:58 [ gfx_mode::$41 ] +Allocated zp ZP_BYTE:59 [ gfx_mode::$42 ] +Allocated zp ZP_BYTE:60 [ gfx_mode::$43 ] +Allocated zp ZP_BYTE:61 [ gfx_mode::plane_b_offs#0 ] +Allocated zp ZP_DWORD:62 [ gfx_mode::plane_b#0 ] +Allocated zp ZP_WORD:66 [ gfx_mode::$46 ] +Allocated zp ZP_BYTE:68 [ gfx_mode::$47 ] +Allocated zp ZP_WORD:69 [ gfx_mode::$48 ] +Allocated zp ZP_BYTE:71 [ gfx_mode::$49 ] +Allocated zp ZP_WORD:72 [ gfx_mode::$50 ] +Allocated zp ZP_BYTE:74 [ gfx_mode::$51 ] +Allocated zp ZP_BYTE:75 [ gfx_mode::$52 ] +Allocated zp ZP_BYTE:76 [ gfx_mode::$53 ] +Allocated zp ZP_BYTE:77 [ gfx_mode::$54 ] +Allocated zp ZP_BYTE:78 [ gfx_mode::$55 ] +Allocated zp ZP_BYTE:79 [ gfx_mode::$56 ] +Allocated zp ZP_BYTE:80 [ gfx_mode::$57 ] +Allocated zp ZP_BYTE:81 [ gfx_mode::$58 ] +Allocated zp ZP_BYTE:82 [ gfx_mode::$59 ] +Allocated zp ZP_BYTE:83 [ gfx_mode::$60 ] +Allocated zp ZP_BYTE:84 [ gfx_mode::$61 ] +Allocated zp ZP_BYTE:85 [ gfx_mode::$62 ] +Allocated zp ZP_BYTE:86 [ gfx_mode::$63 ] +Allocated zp ZP_BYTE:87 [ keyboard_event_get::return#3 ] +Allocated zp ZP_BYTE:88 [ gfx_mode::keyboard_event#0 ] +Allocated zp ZP_BYTE:89 [ keyboard_matrix_read::rowid#0 ] +Allocated zp ZP_BYTE:90 [ keyboard_matrix_read::return#2 ] +Allocated zp ZP_BYTE:91 [ keyboard_event_scan::row_scan#0 ] +Allocated zp ZP_BYTE:92 [ keyboard_event_scan::$3 ] +Allocated zp ZP_BYTE:93 [ keyboard_event_scan::$4 ] +Allocated zp ZP_BYTE:94 [ keyboard_event_scan::event_type#0 ] +Allocated zp ZP_BYTE:95 [ keyboard_event_scan::$12 ] +Allocated zp ZP_BYTE:96 [ keyboard_event_pressed::return#0 ] +Allocated zp ZP_BYTE:97 [ keyboard_event_scan::$16 ] +Allocated zp ZP_BYTE:98 [ keyboard_event_pressed::return#1 ] +Allocated zp ZP_BYTE:99 [ keyboard_event_scan::$20 ] +Allocated zp ZP_BYTE:100 [ keyboard_event_pressed::return#2 ] +Allocated zp ZP_BYTE:101 [ keyboard_event_scan::$24 ] +Allocated zp ZP_BYTE:102 [ keyboard_event_pressed::return#3 ] +Allocated zp ZP_BYTE:103 [ keyboard_event_scan::$28 ] +Allocated zp ZP_BYTE:104 [ keyboard_event_pressed::$0 ] +Allocated zp ZP_BYTE:105 [ keyboard_event_pressed::row_bits#0 ] +Allocated zp ZP_BYTE:106 [ keyboard_event_pressed::$1 ] +Allocated zp ZP_BYTE:107 [ keyboard_event_pressed::return#10 ] +Allocated zp ZP_BYTE:108 [ keyboard_matrix_read::return#0 ] +Allocated zp ZP_BYTE:109 [ form_control::return#0 ] +Allocated zp ZP_BYTE:110 [ form_mode::$25 ] +Allocated zp ZP_WORD:111 [ form_field_ptr::return#3 ] +Allocated zp ZP_WORD:113 [ form_control::field#0 ] +Allocated zp ZP_BYTE:115 [ form_control::$6 ] +Allocated zp ZP_BYTE:116 [ keyboard_event_get::return#4 ] +Allocated zp ZP_BYTE:117 [ form_control::key_event#0 ] +Allocated zp ZP_BYTE:118 [ form_control::$12 ] +Allocated zp ZP_BYTE:119 [ form_control::$13 ] +Allocated zp ZP_BYTE:120 [ form_control::$24 ] +Allocated zp ZP_BYTE:121 [ form_control::$7 ] +Allocated zp ZP_BYTE:122 [ form_field_ptr::y#0 ] +Allocated zp ZP_WORD:123 [ form_field_ptr::$2 ] +Allocated zp ZP_BYTE:125 [ form_field_ptr::x#0 ] +Allocated zp ZP_WORD:126 [ form_field_ptr::return#0 ] +Allocated zp ZP_WORD:128 [ form_field_ptr::return#2 ] +Allocated zp ZP_WORD:130 [ form_render_values::field#0 ] +Allocated zp ZP_BYTE:132 [ form_set_screen::$0 ] +Allocated zp ZP_BYTE:133 [ form_set_screen::$1 ] +Allocated zp ZP_BYTE:134 [ print_str_lines::ch#0 ] +Allocated zp ZP_WORD:135 [ print_cls::$0 ] +Allocated zp ZP_WORD:137 [ gfx_init_plane_8bppchunky::$6 ] +Allocated zp ZP_BYTE:139 [ gfx_init_plane_8bppchunky::c#0 ] +Allocated zp ZP_BYTE:140 [ gfx_init_screen_stdchar::$0 ] +Allocated zp ZP_BYTE:141 [ gfx_init_screen_stdchar::$1 ] +Allocated zp ZP_BYTE:142 [ gfx_init_screen_stdchar::$2 ] +Allocated zp ZP_BYTE:143 [ gfx_init_screen_stdchar::$3 ] INITIAL ASM //SEG0 Basic Upstart @@ -10294,7 +11645,6 @@ INITIAL ASM .pc = $80d "Program" //SEG1 Global Constants & labels .label RASTER = $d012 - .label BORDERCOL = $d020 .label BGCOL = $d021 .label BGCOL1 = $d021 .label BGCOL2 = $d022 @@ -10347,15 +11697,16 @@ INITIAL ASM .const KEY_LSHIFT = $f .const KEY_RSHIFT = $34 .const KEY_CTRL = $3a + .const KEY_SPACE = $3c .const KEY_COMMODORE = $3d .const KEY_MODIFIER_LSHIFT = 1 .const KEY_MODIFIER_RSHIFT = 2 .const KEY_MODIFIER_CTRL = 4 .const KEY_MODIFIER_COMMODORE = 8 + .label VIC_SCREEN_STDCHAR = $8400 .const PLANE_8BPP_CHUNKY = $20000 .label FORM_SCREEN = $8000 .label FORM_CHARSET = $9800 - .const FORM_OFFSET = $10*$28 .const form_fields_cnt = $23 .const FORM_CURSOR_BLINK = $28 .const KEY_MODIFIER_SHIFT = KEY_MODIFIER_LSHIFT|KEY_MODIFIER_RSHIFT @@ -10388,23 +11739,23 @@ INITIAL ASM .label form_vic_bg2_lo = form_fields_val+$20 .label form_vic_bg3_hi = form_fields_val+$21 .label form_vic_bg3_lo = form_fields_val+$22 - .label print_char_cursor = $17 - .label keyboard_events_size = $c - .label keyboard_modifiers = $d - .label form_cursor_count = 2 - .label form_field_idx = 3 - .label print_line_cursor = $19 + .label print_char_cursor = $18 + .label print_line_cursor = $1a + .label keyboard_events_size = $a + .label keyboard_modifiers = $e + .label form_cursor_count = $d + .label form_field_idx = $f //SEG2 @begin bbegin: -//SEG3 [1] phi from @begin to @32 [phi:@begin->@32] -b32_from_bbegin: - jmp b32 -//SEG4 @32 -b32: +//SEG3 [1] phi from @begin to @33 [phi:@begin->@33] +b33_from_bbegin: + jmp b33 +//SEG4 @33 +b33: //SEG5 [2] call main param-assignment [ ] ( ) jsr main -//SEG6 [3] phi from @32 to @end [phi:@32->@end] -bend_from_b32: +//SEG6 [3] phi from @33 to @end [phi:@33->@end] +bend_from_b33: jmp bend //SEG7 @end bend: @@ -10417,324 +11768,309 @@ main: { sta DTV_FEATURE //SEG11 [6] call keyboard_init param-assignment [ ] ( main:2 [ ] ) jsr keyboard_init - //SEG12 [7] phi from main to main::@19 [phi:main->main::@19] - b19_from_main: - jmp b19 - //SEG13 main::@19 - b19: + //SEG12 [7] phi from main to main::@7 [phi:main->main::@7] + b7_from_main: + jmp b7 + //SEG13 main::@7 + b7: //SEG14 [8] call gfx_init param-assignment [ ] ( main:2 [ ] ) - //SEG15 [296] phi from main::@19 to gfx_init [phi:main::@19->gfx_init] - gfx_init_from_b19: + //SEG15 [324] phi from main::@7 to gfx_init [phi:main::@7->gfx_init] + gfx_init_from_b7: jsr gfx_init - //SEG16 [9] phi from main::@19 to main::@20 [phi:main::@19->main::@20] - b20_from_b19: - jmp b20 - //SEG17 main::@20 - b20: + //SEG16 [9] phi from main::@7 to main::@8 [phi:main::@7->main::@8] + b8_from_b7: + jmp b8 + //SEG17 main::@8 + b8: //SEG18 [10] call form_init param-assignment [ ] ( main:2 [ ] ) - //SEG19 [240] phi from main::@20 to form_init [phi:main::@20->form_init] - form_init_from_b20: + //SEG19 [257] phi from main::@8 to form_init [phi:main::@8->form_init] + form_init_from_b8: jsr form_init - //SEG20 [11] phi from main::@20 to main::@1 [phi:main::@20->main::@1] - b1_from_b20: - //SEG21 [11] phi (byte) form_field_idx#1 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main::@20->main::@1#0] -- vbuz1=vbuc1 + //SEG20 [11] phi from main::@8 to main::@1 [phi:main::@8->main::@1] + b1_from_b8: + //SEG21 [11] phi (byte) form_field_idx#1 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main::@8->main::@1#0] -- vbuz1=vbuc1 lda #0 sta form_field_idx - //SEG22 [11] phi (byte) keyboard_events_size#20 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main::@20->main::@1#1] -- vbuz1=vbuc1 + //SEG22 [11] phi (byte) keyboard_modifiers#24 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main::@8->main::@1#1] -- vbuz1=vbuc1 + lda #0 + sta keyboard_modifiers + //SEG23 [11] phi (byte) keyboard_events_size#27 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main::@8->main::@1#2] -- vbuz1=vbuc1 lda #0 sta keyboard_events_size - //SEG23 [11] phi (signed byte) form_cursor_count#1 = (const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 [phi:main::@20->main::@1#2] -- vbsz1=vbuc1 + //SEG24 [11] phi (signed byte) form_cursor_count#1 = (const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 [phi:main::@8->main::@1#3] -- vbsz1=vbuc1 lda #FORM_CURSOR_BLINK/2 sta form_cursor_count jmp b1 - //SEG24 main::@1 + //SEG25 main::@1 b1: - //SEG25 [12] if(true) goto main::@4 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- true_then_la1 - jmp b4 + //SEG26 [12] if(true) goto main::@2 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- true_then_la1 + jmp b2_from_b1 jmp breturn - //SEG26 main::@return + //SEG27 main::@return breturn: - //SEG27 [13] return [ ] ( main:2 [ ] ) + //SEG28 [13] return [ ] ( main:2 [ ] ) rts - //SEG28 main::@4 - b4: - //SEG29 [14] if(*((const byte*) RASTER#0)!=(byte/signed byte/word/signed word/dword/signed dword) 48+(byte/signed byte/word/signed word/dword/signed dword) 8*(byte/signed byte/word/signed word/dword/signed dword) 16) goto main::@4 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1_neq_vbuc2_then_la1 - lda RASTER - cmp #$30+8*$10 - bne b4 - //SEG30 [15] phi from main::@4 to main::@6 [phi:main::@4->main::@6] - b6_from_b4: - jmp b6 - //SEG31 main::@6 - b6: - //SEG32 [16] call form_mode param-assignment [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) + //SEG29 [14] phi from main::@1 to main::@2 [phi:main::@1->main::@2] + b2_from_b1: + jmp b2 + //SEG30 main::@2 + b2: + //SEG31 [15] call form_mode param-assignment [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) jsr form_mode - jmp b7 - //SEG33 main::@7 - b7: - //SEG34 [17] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto main::@7 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1_neq_vbuc2_then_la1 - lda RASTER - cmp #$ff - bne b7 - //SEG35 [18] phi from main::@7 to main::@9 [phi:main::@7->main::@9] - b9_from_b7: - jmp b9 - //SEG36 main::@9 - b9: - //SEG37 [19] call form_control param-assignment [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ( main:2 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - jsr form_control - //SEG38 [20] phi from main::@9 to main::@23 [phi:main::@9->main::@23] - b23_from_b9: - jmp b23 - //SEG39 main::@23 - b23: - //SEG40 [21] call gfx_mode param-assignment [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ( main:2 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) + //SEG32 [16] phi from main::@2 to main::@10 [phi:main::@2->main::@10] + b10_from_b2: + jmp b10 + //SEG33 main::@10 + b10: + //SEG34 [17] call gfx_mode param-assignment [ form_cursor_count#13 keyboard_events_size#11 keyboard_modifiers#11 form_field_idx#14 ] ( main:2 [ form_cursor_count#13 keyboard_events_size#11 keyboard_modifiers#11 form_field_idx#14 ] ) jsr gfx_mode - //SEG41 [11] phi from main::@23 to main::@1 [phi:main::@23->main::@1] - b1_from_b23: - //SEG42 [11] phi (byte) form_field_idx#1 = (byte) form_field_idx#14 [phi:main::@23->main::@1#0] -- register_copy - //SEG43 [11] phi (byte) keyboard_events_size#20 = (byte) keyboard_events_size#18 [phi:main::@23->main::@1#1] -- register_copy - //SEG44 [11] phi (signed byte) form_cursor_count#1 = (signed byte) form_cursor_count#12 [phi:main::@23->main::@1#2] -- register_copy + //SEG35 [11] phi from main::@10 to main::@1 [phi:main::@10->main::@1] + b1_from_b10: + //SEG36 [11] phi (byte) form_field_idx#1 = (byte) form_field_idx#14 [phi:main::@10->main::@1#0] -- register_copy + //SEG37 [11] phi (byte) keyboard_modifiers#24 = (byte) keyboard_modifiers#11 [phi:main::@10->main::@1#1] -- register_copy + //SEG38 [11] phi (byte) keyboard_events_size#27 = (byte) keyboard_events_size#11 [phi:main::@10->main::@1#2] -- register_copy + //SEG39 [11] phi (signed byte) form_cursor_count#1 = (signed byte) form_cursor_count#13 [phi:main::@10->main::@1#3] -- register_copy jmp b1 } -//SEG45 gfx_mode +//SEG40 gfx_mode gfx_mode: { - .label _29 = $22 - .label _33 = $28 - .label _34 = $2a - .label _35 = $2b - .label _36 = $2d - .label _37 = $2e - .label _38 = $30 - .label _39 = $31 - .label _40 = $32 - .label _41 = $33 - .label _42 = $34 - .label _43 = $35 - .label _46 = $3b - .label _47 = $3d - .label _48 = $3e - .label _49 = $40 - .label _50 = $41 - .label _51 = $43 - .label _52 = $44 - .label _53 = $45 - .label _54 = $46 - .label _55 = $47 - .label _56 = $48 - .label _57 = $49 - .label _58 = $4a - .label _59 = $4b - .label _60 = $4c - .label _61 = $4d - .label _62 = $4e - .label _63 = $4f - .label dtv_control = 4 - .label vic_control = 5 - .label plane_a_offs = $23 - .label plane_a = $24 - .label plane_b_offs = $36 - .label plane_b = $37 - .label i = 7 - .label vic_control2 = 6 - //SEG46 [22] if(*((const byte*) form_ctrl_line#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@1 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1_eq_0_then_la1 + .label _29 = $29 + .label _33 = $2f + .label _34 = $31 + .label _35 = $32 + .label _36 = $34 + .label _37 = $35 + .label _38 = $37 + .label _39 = $38 + .label _40 = $39 + .label _41 = $3a + .label _42 = $3b + .label _43 = $3c + .label _46 = $42 + .label _47 = $44 + .label _48 = $45 + .label _49 = $47 + .label _50 = $48 + .label _51 = $4a + .label _52 = $4b + .label _53 = $4c + .label _54 = $4d + .label _55 = $4e + .label _56 = $4f + .label _57 = $50 + .label _58 = $51 + .label _59 = $52 + .label _60 = $53 + .label _61 = $54 + .label _62 = $55 + .label _63 = $56 + .label dtv_control = 2 + .label vic_control = 3 + .label plane_a_offs = $2a + .label plane_a = $2b + .label plane_b_offs = $3d + .label plane_b = $3e + .label i = 5 + .label keyboard_event = $58 + .label vic_control2 = 4 + //SEG41 [18] if(*((const byte*) form_ctrl_line#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@1 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_line cmp #0 beq b1_from_gfx_mode - //SEG47 [23] phi from gfx_mode to gfx_mode::@11 [phi:gfx_mode->gfx_mode::@11] - b11_from_gfx_mode: - jmp b11 - //SEG48 gfx_mode::@11 - b11: - //SEG49 [24] phi from gfx_mode::@11 to gfx_mode::@1 [phi:gfx_mode::@11->gfx_mode::@1] - b1_from_b11: - //SEG50 [24] phi (byte) gfx_mode::dtv_control#14 = (byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) DTV_LINEAR#0 [phi:gfx_mode::@11->gfx_mode::@1#0] -- vbuz1=vbuc1 + //SEG42 [19] phi from gfx_mode to gfx_mode::@18 [phi:gfx_mode->gfx_mode::@18] + b18_from_gfx_mode: + jmp b18 + //SEG43 gfx_mode::@18 + b18: + //SEG44 [20] phi from gfx_mode::@18 to gfx_mode::@1 [phi:gfx_mode::@18->gfx_mode::@1] + b1_from_b18: + //SEG45 [20] phi (byte) gfx_mode::dtv_control#14 = (byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) DTV_LINEAR#0 [phi:gfx_mode::@18->gfx_mode::@1#0] -- vbuz1=vbuc1 lda #0|DTV_LINEAR sta dtv_control jmp b1 - //SEG51 [24] phi from gfx_mode to gfx_mode::@1 [phi:gfx_mode->gfx_mode::@1] + //SEG46 [20] phi from gfx_mode to gfx_mode::@1 [phi:gfx_mode->gfx_mode::@1] b1_from_gfx_mode: - //SEG52 [24] phi (byte) gfx_mode::dtv_control#14 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_mode->gfx_mode::@1#0] -- vbuz1=vbuc1 + //SEG47 [20] phi (byte) gfx_mode::dtv_control#14 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_mode->gfx_mode::@1#0] -- vbuz1=vbuc1 lda #0 sta dtv_control jmp b1 - //SEG53 gfx_mode::@1 + //SEG48 gfx_mode::@1 b1: - //SEG54 [25] if(*((const byte*) form_ctrl_borof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@2 [ gfx_mode::dtv_control#14 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#14 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG49 [21] if(*((const byte*) form_ctrl_borof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@2 [ gfx_mode::dtv_control#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_borof cmp #0 beq b2_from_b1 - jmp b12 - //SEG55 gfx_mode::@12 - b12: - //SEG56 [26] (byte) gfx_mode::dtv_control#2 ← (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 [ gfx_mode::dtv_control#2 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#2 ] ) -- vbuz1=vbuz1_bor_vbuc1 + jmp b19 + //SEG50 gfx_mode::@19 + b19: + //SEG51 [22] (byte) gfx_mode::dtv_control#2 ← (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 [ gfx_mode::dtv_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=vbuz1_bor_vbuc1 lda #DTV_BORDER_OFF ora dtv_control sta dtv_control - //SEG57 [27] phi from gfx_mode::@1 gfx_mode::@12 to gfx_mode::@2 [phi:gfx_mode::@1/gfx_mode::@12->gfx_mode::@2] + //SEG52 [23] phi from gfx_mode::@1 gfx_mode::@19 to gfx_mode::@2 [phi:gfx_mode::@1/gfx_mode::@19->gfx_mode::@2] b2_from_b1: - b2_from_b12: - //SEG58 [27] phi (byte) gfx_mode::dtv_control#15 = (byte) gfx_mode::dtv_control#14 [phi:gfx_mode::@1/gfx_mode::@12->gfx_mode::@2#0] -- register_copy + b2_from_b19: + //SEG53 [23] phi (byte) gfx_mode::dtv_control#15 = (byte) gfx_mode::dtv_control#14 [phi:gfx_mode::@1/gfx_mode::@19->gfx_mode::@2#0] -- register_copy jmp b2 - //SEG59 gfx_mode::@2 + //SEG54 gfx_mode::@2 b2: - //SEG60 [28] if(*((const byte*) form_ctrl_hicol#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@3 [ gfx_mode::dtv_control#15 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#15 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG55 [24] if(*((const byte*) form_ctrl_hicol#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@3 [ gfx_mode::dtv_control#15 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#15 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_hicol cmp #0 beq b3_from_b2 - jmp b13 - //SEG61 gfx_mode::@13 - b13: - //SEG62 [29] (byte) gfx_mode::dtv_control#3 ← (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 [ gfx_mode::dtv_control#3 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#3 ] ) -- vbuz1=vbuz1_bor_vbuc1 + jmp b20 + //SEG56 gfx_mode::@20 + b20: + //SEG57 [25] (byte) gfx_mode::dtv_control#3 ← (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 [ gfx_mode::dtv_control#3 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#3 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=vbuz1_bor_vbuc1 lda #DTV_HIGHCOLOR ora dtv_control sta dtv_control - //SEG63 [30] phi from gfx_mode::@13 gfx_mode::@2 to gfx_mode::@3 [phi:gfx_mode::@13/gfx_mode::@2->gfx_mode::@3] - b3_from_b13: + //SEG58 [26] phi from gfx_mode::@2 gfx_mode::@20 to gfx_mode::@3 [phi:gfx_mode::@2/gfx_mode::@20->gfx_mode::@3] b3_from_b2: - //SEG64 [30] phi (byte) gfx_mode::dtv_control#10 = (byte) gfx_mode::dtv_control#3 [phi:gfx_mode::@13/gfx_mode::@2->gfx_mode::@3#0] -- register_copy + b3_from_b20: + //SEG59 [26] phi (byte) gfx_mode::dtv_control#10 = (byte) gfx_mode::dtv_control#15 [phi:gfx_mode::@2/gfx_mode::@20->gfx_mode::@3#0] -- register_copy jmp b3 - //SEG65 gfx_mode::@3 + //SEG60 gfx_mode::@3 b3: - //SEG66 [31] if(*((const byte*) form_ctrl_overs#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@4 [ gfx_mode::dtv_control#10 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#10 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG61 [27] if(*((const byte*) form_ctrl_overs#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@4 [ gfx_mode::dtv_control#10 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#10 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_overs cmp #0 beq b4_from_b3 - jmp b14 - //SEG67 gfx_mode::@14 - b14: - //SEG68 [32] (byte) gfx_mode::dtv_control#4 ← (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 [ gfx_mode::dtv_control#4 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#4 ] ) -- vbuz1=vbuz1_bor_vbuc1 + jmp b21 + //SEG62 gfx_mode::@21 + b21: + //SEG63 [28] (byte) gfx_mode::dtv_control#4 ← (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 [ gfx_mode::dtv_control#4 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#4 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=vbuz1_bor_vbuc1 lda #DTV_OVERSCAN ora dtv_control sta dtv_control - //SEG69 [33] phi from gfx_mode::@14 gfx_mode::@3 to gfx_mode::@4 [phi:gfx_mode::@14/gfx_mode::@3->gfx_mode::@4] - b4_from_b14: + //SEG64 [29] phi from gfx_mode::@21 gfx_mode::@3 to gfx_mode::@4 [phi:gfx_mode::@21/gfx_mode::@3->gfx_mode::@4] + b4_from_b21: b4_from_b3: - //SEG70 [33] phi (byte) gfx_mode::dtv_control#11 = (byte) gfx_mode::dtv_control#4 [phi:gfx_mode::@14/gfx_mode::@3->gfx_mode::@4#0] -- register_copy + //SEG65 [29] phi (byte) gfx_mode::dtv_control#11 = (byte) gfx_mode::dtv_control#4 [phi:gfx_mode::@21/gfx_mode::@3->gfx_mode::@4#0] -- register_copy jmp b4 - //SEG71 gfx_mode::@4 + //SEG66 gfx_mode::@4 b4: - //SEG72 [34] if(*((const byte*) form_ctrl_colof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@5 [ gfx_mode::dtv_control#11 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#11 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG67 [30] if(*((const byte*) form_ctrl_colof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@5 [ gfx_mode::dtv_control#11 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#11 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_colof cmp #0 beq b5_from_b4 - jmp b15 - //SEG73 gfx_mode::@15 - b15: - //SEG74 [35] (byte) gfx_mode::dtv_control#5 ← (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 [ gfx_mode::dtv_control#5 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#5 ] ) -- vbuz1=vbuz1_bor_vbuc1 + jmp b22 + //SEG68 gfx_mode::@22 + b22: + //SEG69 [31] (byte) gfx_mode::dtv_control#5 ← (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 [ gfx_mode::dtv_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=vbuz1_bor_vbuc1 lda #DTV_COLORRAM_OFF ora dtv_control sta dtv_control - //SEG75 [36] phi from gfx_mode::@15 gfx_mode::@4 to gfx_mode::@5 [phi:gfx_mode::@15/gfx_mode::@4->gfx_mode::@5] - b5_from_b15: + //SEG70 [32] phi from gfx_mode::@22 gfx_mode::@4 to gfx_mode::@5 [phi:gfx_mode::@22/gfx_mode::@4->gfx_mode::@5] + b5_from_b22: b5_from_b4: - //SEG76 [36] phi (byte) gfx_mode::dtv_control#13 = (byte) gfx_mode::dtv_control#5 [phi:gfx_mode::@15/gfx_mode::@4->gfx_mode::@5#0] -- register_copy + //SEG71 [32] phi (byte) gfx_mode::dtv_control#13 = (byte) gfx_mode::dtv_control#5 [phi:gfx_mode::@22/gfx_mode::@4->gfx_mode::@5#0] -- register_copy jmp b5 - //SEG77 gfx_mode::@5 + //SEG72 gfx_mode::@5 b5: - //SEG78 [37] if(*((const byte*) form_ctrl_chunk#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@6 [ gfx_mode::dtv_control#13 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#13 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG73 [33] if(*((const byte*) form_ctrl_chunk#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@6 [ gfx_mode::dtv_control#13 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#13 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_chunk cmp #0 beq b6_from_b5 - jmp b16 - //SEG79 gfx_mode::@16 - b16: - //SEG80 [38] (byte) gfx_mode::dtv_control#6 ← (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 [ gfx_mode::dtv_control#6 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#6 ] ) -- vbuz1=vbuz1_bor_vbuc1 + jmp b23 + //SEG74 gfx_mode::@23 + b23: + //SEG75 [34] (byte) gfx_mode::dtv_control#6 ← (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 [ gfx_mode::dtv_control#6 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#6 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=vbuz1_bor_vbuc1 lda #DTV_CHUNKY ora dtv_control sta dtv_control - //SEG81 [39] phi from gfx_mode::@16 gfx_mode::@5 to gfx_mode::@6 [phi:gfx_mode::@16/gfx_mode::@5->gfx_mode::@6] - b6_from_b16: + //SEG76 [35] phi from gfx_mode::@23 gfx_mode::@5 to gfx_mode::@6 [phi:gfx_mode::@23/gfx_mode::@5->gfx_mode::@6] + b6_from_b23: b6_from_b5: - //SEG82 [39] phi (byte) gfx_mode::dtv_control#12 = (byte) gfx_mode::dtv_control#6 [phi:gfx_mode::@16/gfx_mode::@5->gfx_mode::@6#0] -- register_copy + //SEG77 [35] phi (byte) gfx_mode::dtv_control#12 = (byte) gfx_mode::dtv_control#6 [phi:gfx_mode::@23/gfx_mode::@5->gfx_mode::@6#0] -- register_copy jmp b6 - //SEG83 gfx_mode::@6 + //SEG78 gfx_mode::@6 b6: - //SEG84 [40] *((const byte*) DTV_CONTROL#0) ← (byte) gfx_mode::dtv_control#12 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuz1 + //SEG79 [36] *((const byte*) DTV_CONTROL#0) ← (byte) gfx_mode::dtv_control#12 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuz1 lda dtv_control sta DTV_CONTROL - //SEG85 [41] if(*((const byte*) form_ctrl_ecm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@7 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG80 [37] if(*((const byte*) form_ctrl_ecm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@7 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_ecm cmp #0 beq b7_from_b6 - //SEG86 [42] phi from gfx_mode::@6 to gfx_mode::@17 [phi:gfx_mode::@6->gfx_mode::@17] - b17_from_b6: - jmp b17 - //SEG87 gfx_mode::@17 - b17: - //SEG88 [43] phi from gfx_mode::@17 to gfx_mode::@7 [phi:gfx_mode::@17->gfx_mode::@7] - b7_from_b17: - //SEG89 [43] phi (byte) gfx_mode::vic_control#5 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3|(const byte) VIC_ECM#0 [phi:gfx_mode::@17->gfx_mode::@7#0] -- vbuz1=vbuc1 + //SEG81 [38] phi from gfx_mode::@6 to gfx_mode::@24 [phi:gfx_mode::@6->gfx_mode::@24] + b24_from_b6: + jmp b24 + //SEG82 gfx_mode::@24 + b24: + //SEG83 [39] phi from gfx_mode::@24 to gfx_mode::@7 [phi:gfx_mode::@24->gfx_mode::@7] + b7_from_b24: + //SEG84 [39] phi (byte) gfx_mode::vic_control#5 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3|(const byte) VIC_ECM#0 [phi:gfx_mode::@24->gfx_mode::@7#0] -- vbuz1=vbuc1 lda #VIC_DEN|VIC_RSEL|3|VIC_ECM sta vic_control jmp b7 - //SEG90 [43] phi from gfx_mode::@6 to gfx_mode::@7 [phi:gfx_mode::@6->gfx_mode::@7] + //SEG85 [39] phi from gfx_mode::@6 to gfx_mode::@7 [phi:gfx_mode::@6->gfx_mode::@7] b7_from_b6: - //SEG91 [43] phi (byte) gfx_mode::vic_control#5 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [phi:gfx_mode::@6->gfx_mode::@7#0] -- vbuz1=vbuc1 + //SEG86 [39] phi (byte) gfx_mode::vic_control#5 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [phi:gfx_mode::@6->gfx_mode::@7#0] -- vbuz1=vbuc1 lda #VIC_DEN|VIC_RSEL|3 sta vic_control jmp b7 - //SEG92 gfx_mode::@7 + //SEG87 gfx_mode::@7 b7: - //SEG93 [44] if(*((const byte*) form_ctrl_bmm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@8 [ gfx_mode::vic_control#5 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::vic_control#5 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG88 [40] if(*((const byte*) form_ctrl_bmm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@8 [ gfx_mode::vic_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::vic_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_bmm cmp #0 beq b8_from_b7 - jmp b18 - //SEG94 gfx_mode::@18 - b18: - //SEG95 [45] (byte) gfx_mode::vic_control#2 ← (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 [ gfx_mode::vic_control#2 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::vic_control#2 ] ) -- vbuz1=vbuz1_bor_vbuc1 + jmp b25 + //SEG89 gfx_mode::@25 + b25: + //SEG90 [41] (byte) gfx_mode::vic_control#2 ← (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 [ gfx_mode::vic_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::vic_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=vbuz1_bor_vbuc1 lda #VIC_BMM ora vic_control sta vic_control - //SEG96 [46] phi from gfx_mode::@18 gfx_mode::@7 to gfx_mode::@8 [phi:gfx_mode::@18/gfx_mode::@7->gfx_mode::@8] - b8_from_b18: + //SEG91 [42] phi from gfx_mode::@25 gfx_mode::@7 to gfx_mode::@8 [phi:gfx_mode::@25/gfx_mode::@7->gfx_mode::@8] + b8_from_b25: b8_from_b7: - //SEG97 [46] phi (byte) gfx_mode::vic_control#4 = (byte) gfx_mode::vic_control#2 [phi:gfx_mode::@18/gfx_mode::@7->gfx_mode::@8#0] -- register_copy + //SEG92 [42] phi (byte) gfx_mode::vic_control#4 = (byte) gfx_mode::vic_control#2 [phi:gfx_mode::@25/gfx_mode::@7->gfx_mode::@8#0] -- register_copy jmp b8 - //SEG98 gfx_mode::@8 + //SEG93 gfx_mode::@8 b8: - //SEG99 [47] *((const byte*) VIC_CONTROL#0) ← (byte) gfx_mode::vic_control#4 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuz1 + //SEG94 [43] *((const byte*) VIC_CONTROL#0) ← (byte) gfx_mode::vic_control#4 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuz1 lda vic_control sta VIC_CONTROL - //SEG100 [48] if(*((const byte*) form_ctrl_mcm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@9 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG95 [44] if(*((const byte*) form_ctrl_mcm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@9 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_mcm cmp #0 beq b9_from_b8 - //SEG101 [49] phi from gfx_mode::@8 to gfx_mode::@19 [phi:gfx_mode::@8->gfx_mode::@19] - b19_from_b8: - jmp b19 - //SEG102 gfx_mode::@19 - b19: - //SEG103 [50] phi from gfx_mode::@19 to gfx_mode::@9 [phi:gfx_mode::@19->gfx_mode::@9] - b9_from_b19: - //SEG104 [50] phi (byte) gfx_mode::vic_control2#2 = (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 [phi:gfx_mode::@19->gfx_mode::@9#0] -- vbuz1=vbuc1 + //SEG96 [45] phi from gfx_mode::@8 to gfx_mode::@26 [phi:gfx_mode::@8->gfx_mode::@26] + b26_from_b8: + jmp b26 + //SEG97 gfx_mode::@26 + b26: + //SEG98 [46] phi from gfx_mode::@26 to gfx_mode::@9 [phi:gfx_mode::@26->gfx_mode::@9] + b9_from_b26: + //SEG99 [46] phi (byte) gfx_mode::vic_control2#2 = (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 [phi:gfx_mode::@26->gfx_mode::@9#0] -- vbuz1=vbuc1 lda #VIC_CSEL|VIC_MCM sta vic_control2 jmp b9 - //SEG105 [50] phi from gfx_mode::@8 to gfx_mode::@9 [phi:gfx_mode::@8->gfx_mode::@9] + //SEG100 [46] phi from gfx_mode::@8 to gfx_mode::@9 [phi:gfx_mode::@8->gfx_mode::@9] b9_from_b8: - //SEG106 [50] phi (byte) gfx_mode::vic_control2#2 = (const byte) VIC_CSEL#0 [phi:gfx_mode::@8->gfx_mode::@9#0] -- vbuz1=vbuc1 + //SEG101 [46] phi (byte) gfx_mode::vic_control2#2 = (const byte) VIC_CSEL#0 [phi:gfx_mode::@8->gfx_mode::@9#0] -- vbuz1=vbuc1 lda #VIC_CSEL sta vic_control2 jmp b9 - //SEG107 gfx_mode::@9 + //SEG102 gfx_mode::@9 b9: - //SEG108 [51] *((const byte*) VIC_CONTROL2#0) ← (byte) gfx_mode::vic_control2#2 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuz1 + //SEG103 [47] *((const byte*) VIC_CONTROL2#0) ← (byte) gfx_mode::vic_control2#2 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuz1 lda vic_control2 sta VIC_CONTROL2 - //SEG109 [52] (byte~) gfx_mode::$29 ← *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$29 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$29 ] ) -- vbuz1=_deref_pbuc1_rol_4 + //SEG104 [48] (byte~) gfx_mode::$29 ← *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$29 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$29 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=_deref_pbuc1_rol_4 lda form_a_start_hi asl asl asl asl sta _29 - //SEG110 [53] (byte) gfx_mode::plane_a_offs#0 ← (byte~) gfx_mode::$29 | *((const byte*) form_a_start_lo#0) [ gfx_mode::plane_a_offs#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a_offs#0 ] ) -- vbuz1=vbuz2_bor__deref_pbuc1 + //SEG105 [49] (byte) gfx_mode::plane_a_offs#0 ← (byte~) gfx_mode::$29 | *((const byte*) form_a_start_lo#0) [ gfx_mode::plane_a_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=vbuz2_bor__deref_pbuc1 lda form_a_start_lo ora _29 sta plane_a_offs - //SEG111 [54] (dword) gfx_mode::plane_a#0 ← ((dword))(const byte*) FORM_SCREEN#0 + (byte) gfx_mode::plane_a_offs#0 [ gfx_mode::plane_a#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 ] ) -- vduz1=vwuc1_plus_vbuz2 + //SEG106 [50] (dword) gfx_mode::plane_a#0 ← ((dword))(const byte*) FORM_SCREEN#0 + (byte) gfx_mode::plane_a_offs#0 [ gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vduz1=vwuc1_plus_vbuz2 lda plane_a_offs clc adc #<$ffffffff&FORM_SCREEN @@ -10747,82 +12083,82 @@ gfx_mode: { sta plane_a+2 lda #0 sta plane_a+3 - //SEG112 [55] (word~) gfx_mode::$33 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$33 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$33 ] ) -- vwuz1=_lo_vduz2 + //SEG107 [51] (word~) gfx_mode::$33 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$33 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$33 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vwuz1=_lo_vduz2 lda plane_a sta _33 lda plane_a+1 sta _33+1 - //SEG113 [56] (byte~) gfx_mode::$34 ← < (word~) gfx_mode::$33 [ gfx_mode::plane_a#0 gfx_mode::$34 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$34 ] ) -- vbuz1=_lo_vwuz2 + //SEG108 [52] (byte~) gfx_mode::$34 ← < (word~) gfx_mode::$33 [ gfx_mode::plane_a#0 gfx_mode::$34 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$34 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=_lo_vwuz2 lda _33 sta _34 - //SEG114 [57] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte~) gfx_mode::$34 [ gfx_mode::plane_a#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 ] ) -- _deref_pbuc1=vbuz1 + //SEG109 [53] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte~) gfx_mode::$34 [ gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuz1 lda _34 sta DTV_PLANEA_START_LO - //SEG115 [58] (word~) gfx_mode::$35 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$35 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$35 ] ) -- vwuz1=_lo_vduz2 + //SEG110 [54] (word~) gfx_mode::$35 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$35 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$35 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vwuz1=_lo_vduz2 lda plane_a sta _35 lda plane_a+1 sta _35+1 - //SEG116 [59] (byte~) gfx_mode::$36 ← > (word~) gfx_mode::$35 [ gfx_mode::plane_a#0 gfx_mode::$36 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$36 ] ) -- vbuz1=_hi_vwuz2 + //SEG111 [55] (byte~) gfx_mode::$36 ← > (word~) gfx_mode::$35 [ gfx_mode::plane_a#0 gfx_mode::$36 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$36 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=_hi_vwuz2 lda _35+1 sta _36 - //SEG117 [60] *((const byte*) DTV_PLANEA_START_MI#0) ← (byte~) gfx_mode::$36 [ gfx_mode::plane_a#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 ] ) -- _deref_pbuc1=vbuz1 + //SEG112 [56] *((const byte*) DTV_PLANEA_START_MI#0) ← (byte~) gfx_mode::$36 [ gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuz1 lda _36 sta DTV_PLANEA_START_MI - //SEG118 [61] (word~) gfx_mode::$37 ← > (dword) gfx_mode::plane_a#0 [ gfx_mode::$37 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$37 ] ) -- vwuz1=_hi_vduz2 + //SEG113 [57] (word~) gfx_mode::$37 ← > (dword) gfx_mode::plane_a#0 [ gfx_mode::$37 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$37 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vwuz1=_hi_vduz2 lda plane_a+2 sta _37 lda plane_a+3 sta _37+1 - //SEG119 [62] (byte~) gfx_mode::$38 ← < (word~) gfx_mode::$37 [ gfx_mode::$38 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$38 ] ) -- vbuz1=_lo_vwuz2 + //SEG114 [58] (byte~) gfx_mode::$38 ← < (word~) gfx_mode::$37 [ gfx_mode::$38 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$38 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=_lo_vwuz2 lda _37 sta _38 - //SEG120 [63] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte~) gfx_mode::$38 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuz1 + //SEG115 [59] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte~) gfx_mode::$38 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuz1 lda _38 sta DTV_PLANEA_START_HI - //SEG121 [64] (byte~) gfx_mode::$39 ← *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$39 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$39 ] ) -- vbuz1=_deref_pbuc1_rol_4 + //SEG116 [60] (byte~) gfx_mode::$39 ← *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$39 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$39 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=_deref_pbuc1_rol_4 lda form_a_step_hi asl asl asl asl sta _39 - //SEG122 [65] (byte~) gfx_mode::$40 ← (byte~) gfx_mode::$39 | *((const byte*) form_a_step_lo#0) [ gfx_mode::$40 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$40 ] ) -- vbuz1=vbuz2_bor__deref_pbuc1 + //SEG117 [61] (byte~) gfx_mode::$40 ← (byte~) gfx_mode::$39 | *((const byte*) form_a_step_lo#0) [ gfx_mode::$40 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$40 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=vbuz2_bor__deref_pbuc1 lda form_a_step_lo ora _39 sta _40 - //SEG123 [66] *((const byte*) DTV_PLANEA_STEP#0) ← (byte~) gfx_mode::$40 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuz1 + //SEG118 [62] *((const byte*) DTV_PLANEA_STEP#0) ← (byte~) gfx_mode::$40 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuz1 lda _40 sta DTV_PLANEA_STEP - //SEG124 [67] (byte~) gfx_mode::$41 ← *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$41 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$41 ] ) -- vbuz1=_deref_pbuc1_rol_4 + //SEG119 [63] (byte~) gfx_mode::$41 ← *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$41 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$41 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=_deref_pbuc1_rol_4 lda form_a_mod_hi asl asl asl asl sta _41 - //SEG125 [68] (byte~) gfx_mode::$42 ← (byte~) gfx_mode::$41 | *((const byte*) form_a_mod_lo#0) [ gfx_mode::$42 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$42 ] ) -- vbuz1=vbuz2_bor__deref_pbuc1 + //SEG120 [64] (byte~) gfx_mode::$42 ← (byte~) gfx_mode::$41 | *((const byte*) form_a_mod_lo#0) [ gfx_mode::$42 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$42 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=vbuz2_bor__deref_pbuc1 lda form_a_mod_lo ora _41 sta _42 - //SEG126 [69] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte~) gfx_mode::$42 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuz1 + //SEG121 [65] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte~) gfx_mode::$42 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuz1 lda _42 sta DTV_PLANEA_MODULO_LO - //SEG127 [70] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuc2 + //SEG122 [66] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_HI - //SEG128 [71] (byte~) gfx_mode::$43 ← *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$43 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$43 ] ) -- vbuz1=_deref_pbuc1_rol_4 + //SEG123 [67] (byte~) gfx_mode::$43 ← *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$43 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$43 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=_deref_pbuc1_rol_4 lda form_b_start_hi asl asl asl asl sta _43 - //SEG129 [72] (byte) gfx_mode::plane_b_offs#0 ← (byte~) gfx_mode::$43 | *((const byte*) form_b_start_lo#0) [ gfx_mode::plane_b_offs#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b_offs#0 ] ) -- vbuz1=vbuz2_bor__deref_pbuc1 + //SEG124 [68] (byte) gfx_mode::plane_b_offs#0 ← (byte~) gfx_mode::$43 | *((const byte*) form_b_start_lo#0) [ gfx_mode::plane_b_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=vbuz2_bor__deref_pbuc1 lda form_b_start_lo ora _43 sta plane_b_offs - //SEG130 [73] (dword) gfx_mode::plane_b#0 ← (const dword) PLANE_8BPP_CHUNKY#0 + (byte) gfx_mode::plane_b_offs#0 [ gfx_mode::plane_b#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 ] ) -- vduz1=vduc1_plus_vbuz2 + //SEG125 [69] (dword) gfx_mode::plane_b#0 ← (const dword) PLANE_8BPP_CHUNKY#0 + (byte) gfx_mode::plane_b_offs#0 [ gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vduz1=vduc1_plus_vbuz2 lda plane_b_offs clc adc #PLANE_8BPP_CHUNKY>>$10 adc #0 sta plane_b+3 - //SEG131 [74] (word~) gfx_mode::$46 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$46 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$46 ] ) -- vwuz1=_lo_vduz2 + //SEG126 [70] (word~) gfx_mode::$46 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$46 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$46 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vwuz1=_lo_vduz2 lda plane_b sta _46 lda plane_b+1 sta _46+1 - //SEG132 [75] (byte~) gfx_mode::$47 ← < (word~) gfx_mode::$46 [ gfx_mode::plane_b#0 gfx_mode::$47 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$47 ] ) -- vbuz1=_lo_vwuz2 + //SEG127 [71] (byte~) gfx_mode::$47 ← < (word~) gfx_mode::$46 [ gfx_mode::plane_b#0 gfx_mode::$47 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$47 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=_lo_vwuz2 lda _46 sta _47 - //SEG133 [76] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte~) gfx_mode::$47 [ gfx_mode::plane_b#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 ] ) -- _deref_pbuc1=vbuz1 + //SEG128 [72] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte~) gfx_mode::$47 [ gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuz1 lda _47 sta DTV_PLANEB_START_LO - //SEG134 [77] (word~) gfx_mode::$48 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$48 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$48 ] ) -- vwuz1=_lo_vduz2 + //SEG129 [73] (word~) gfx_mode::$48 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$48 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$48 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vwuz1=_lo_vduz2 lda plane_b sta _48 lda plane_b+1 sta _48+1 - //SEG135 [78] (byte~) gfx_mode::$49 ← > (word~) gfx_mode::$48 [ gfx_mode::plane_b#0 gfx_mode::$49 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$49 ] ) -- vbuz1=_hi_vwuz2 + //SEG130 [74] (byte~) gfx_mode::$49 ← > (word~) gfx_mode::$48 [ gfx_mode::plane_b#0 gfx_mode::$49 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$49 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=_hi_vwuz2 lda _48+1 sta _49 - //SEG136 [79] *((const byte*) DTV_PLANEB_START_MI#0) ← (byte~) gfx_mode::$49 [ gfx_mode::plane_b#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 ] ) -- _deref_pbuc1=vbuz1 + //SEG131 [75] *((const byte*) DTV_PLANEB_START_MI#0) ← (byte~) gfx_mode::$49 [ gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuz1 lda _49 sta DTV_PLANEB_START_MI - //SEG137 [80] (word~) gfx_mode::$50 ← > (dword) gfx_mode::plane_b#0 [ gfx_mode::$50 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$50 ] ) -- vwuz1=_hi_vduz2 + //SEG132 [76] (word~) gfx_mode::$50 ← > (dword) gfx_mode::plane_b#0 [ gfx_mode::$50 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$50 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vwuz1=_hi_vduz2 lda plane_b+2 sta _50 lda plane_b+3 sta _50+1 - //SEG138 [81] (byte~) gfx_mode::$51 ← < (word~) gfx_mode::$50 [ gfx_mode::$51 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$51 ] ) -- vbuz1=_lo_vwuz2 + //SEG133 [77] (byte~) gfx_mode::$51 ← < (word~) gfx_mode::$50 [ gfx_mode::$51 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$51 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=_lo_vwuz2 lda _50 sta _51 - //SEG139 [82] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte~) gfx_mode::$51 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuz1 + //SEG134 [78] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte~) gfx_mode::$51 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuz1 lda _51 sta DTV_PLANEB_START_HI - //SEG140 [83] (byte~) gfx_mode::$52 ← *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$52 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$52 ] ) -- vbuz1=_deref_pbuc1_rol_4 + //SEG135 [79] (byte~) gfx_mode::$52 ← *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$52 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$52 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=_deref_pbuc1_rol_4 lda form_b_step_hi asl asl asl asl sta _52 - //SEG141 [84] (byte~) gfx_mode::$53 ← (byte~) gfx_mode::$52 | *((const byte*) form_b_step_lo#0) [ gfx_mode::$53 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$53 ] ) -- vbuz1=vbuz2_bor__deref_pbuc1 + //SEG136 [80] (byte~) gfx_mode::$53 ← (byte~) gfx_mode::$52 | *((const byte*) form_b_step_lo#0) [ gfx_mode::$53 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$53 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=vbuz2_bor__deref_pbuc1 lda form_b_step_lo ora _52 sta _53 - //SEG142 [85] *((const byte*) DTV_PLANEB_STEP#0) ← (byte~) gfx_mode::$53 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuz1 + //SEG137 [81] *((const byte*) DTV_PLANEB_STEP#0) ← (byte~) gfx_mode::$53 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuz1 lda _53 sta DTV_PLANEB_STEP - //SEG143 [86] (byte~) gfx_mode::$54 ← *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$54 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$54 ] ) -- vbuz1=_deref_pbuc1_rol_4 + //SEG138 [82] (byte~) gfx_mode::$54 ← *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$54 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$54 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=_deref_pbuc1_rol_4 lda form_b_mod_hi asl asl asl asl sta _54 - //SEG144 [87] (byte~) gfx_mode::$55 ← (byte~) gfx_mode::$54 | *((const byte*) form_b_mod_lo#0) [ gfx_mode::$55 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$55 ] ) -- vbuz1=vbuz2_bor__deref_pbuc1 + //SEG139 [83] (byte~) gfx_mode::$55 ← (byte~) gfx_mode::$54 | *((const byte*) form_b_mod_lo#0) [ gfx_mode::$55 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$55 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=vbuz2_bor__deref_pbuc1 lda form_b_mod_lo ora _54 sta _55 - //SEG145 [88] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte~) gfx_mode::$55 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuz1 + //SEG140 [84] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte~) gfx_mode::$55 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuz1 lda _55 sta DTV_PLANEB_MODULO_LO - //SEG146 [89] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuc2 + //SEG141 [85] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_HI - //SEG147 [90] (byte~) gfx_mode::$56 ← *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$56 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$56 ] ) -- vbuz1=_deref_pbuc1_rol_4 + //SEG142 [86] (byte~) gfx_mode::$56 ← *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$56 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$56 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=_deref_pbuc1_rol_4 lda form_vic_bg0_hi asl asl asl asl sta _56 - //SEG148 [91] (byte~) gfx_mode::$57 ← (byte~) gfx_mode::$56 | *((const byte*) form_vic_bg0_lo#0) [ gfx_mode::$57 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$57 ] ) -- vbuz1=vbuz2_bor__deref_pbuc1 + //SEG143 [87] (byte~) gfx_mode::$57 ← (byte~) gfx_mode::$56 | *((const byte*) form_vic_bg0_lo#0) [ gfx_mode::$57 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$57 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=vbuz2_bor__deref_pbuc1 lda form_vic_bg0_lo ora _56 sta _57 - //SEG149 [92] *((const byte*) BGCOL1#0) ← (byte~) gfx_mode::$57 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuz1 + //SEG144 [88] *((const byte*) BGCOL1#0) ← (byte~) gfx_mode::$57 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuz1 lda _57 sta BGCOL1 - //SEG150 [93] (byte~) gfx_mode::$58 ← *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$58 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$58 ] ) -- vbuz1=_deref_pbuc1_rol_4 + //SEG145 [89] (byte~) gfx_mode::$58 ← *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$58 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$58 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=_deref_pbuc1_rol_4 lda form_vic_bg1_hi asl asl asl asl sta _58 - //SEG151 [94] (byte~) gfx_mode::$59 ← (byte~) gfx_mode::$58 | *((const byte*) form_vic_bg1_lo#0) [ gfx_mode::$59 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$59 ] ) -- vbuz1=vbuz2_bor__deref_pbuc1 + //SEG146 [90] (byte~) gfx_mode::$59 ← (byte~) gfx_mode::$58 | *((const byte*) form_vic_bg1_lo#0) [ gfx_mode::$59 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$59 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=vbuz2_bor__deref_pbuc1 lda form_vic_bg1_lo ora _58 sta _59 - //SEG152 [95] *((const byte*) BGCOL2#0) ← (byte~) gfx_mode::$59 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuz1 + //SEG147 [91] *((const byte*) BGCOL2#0) ← (byte~) gfx_mode::$59 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuz1 lda _59 sta BGCOL2 - //SEG153 [96] (byte~) gfx_mode::$60 ← *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$60 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$60 ] ) -- vbuz1=_deref_pbuc1_rol_4 + //SEG148 [92] (byte~) gfx_mode::$60 ← *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$60 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$60 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=_deref_pbuc1_rol_4 lda form_vic_bg2_hi asl asl asl asl sta _60 - //SEG154 [97] (byte~) gfx_mode::$61 ← (byte~) gfx_mode::$60 | *((const byte*) form_vic_bg2_lo#0) [ gfx_mode::$61 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$61 ] ) -- vbuz1=vbuz2_bor__deref_pbuc1 + //SEG149 [93] (byte~) gfx_mode::$61 ← (byte~) gfx_mode::$60 | *((const byte*) form_vic_bg2_lo#0) [ gfx_mode::$61 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$61 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=vbuz2_bor__deref_pbuc1 lda form_vic_bg2_lo ora _60 sta _61 - //SEG155 [98] *((const byte*) BGCOL3#0) ← (byte~) gfx_mode::$61 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuz1 + //SEG150 [94] *((const byte*) BGCOL3#0) ← (byte~) gfx_mode::$61 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuz1 lda _61 sta BGCOL3 - //SEG156 [99] (byte~) gfx_mode::$62 ← *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$62 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$62 ] ) -- vbuz1=_deref_pbuc1_rol_4 + //SEG151 [95] (byte~) gfx_mode::$62 ← *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$62 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$62 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=_deref_pbuc1_rol_4 lda form_vic_bg3_hi asl asl asl asl sta _62 - //SEG157 [100] (byte~) gfx_mode::$63 ← (byte~) gfx_mode::$62 | *((const byte*) form_vic_bg3_lo#0) [ gfx_mode::$63 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$63 ] ) -- vbuz1=vbuz2_bor__deref_pbuc1 + //SEG152 [96] (byte~) gfx_mode::$63 ← (byte~) gfx_mode::$62 | *((const byte*) form_vic_bg3_lo#0) [ gfx_mode::$63 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$63 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=vbuz2_bor__deref_pbuc1 lda form_vic_bg3_lo ora _62 sta _63 - //SEG158 [101] *((const byte*) BGCOL4#0) ← (byte~) gfx_mode::$63 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuz1 + //SEG153 [97] *((const byte*) BGCOL4#0) ← (byte~) gfx_mode::$63 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuz1 lda _63 sta BGCOL4 - //SEG159 [102] phi from gfx_mode::@9 to gfx_mode::@10 [phi:gfx_mode::@9->gfx_mode::@10] + //SEG154 [98] phi from gfx_mode::@9 to gfx_mode::@10 [phi:gfx_mode::@9->gfx_mode::@10] b10_from_b9: - //SEG160 [102] phi (byte) gfx_mode::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_mode::@9->gfx_mode::@10#0] -- vbuz1=vbuc1 + //SEG155 [98] phi (byte) gfx_mode::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_mode::@9->gfx_mode::@10#0] -- vbuz1=vbuc1 lda #0 sta i jmp b10 - //SEG161 [102] phi from gfx_mode::@10 to gfx_mode::@10 [phi:gfx_mode::@10->gfx_mode::@10] + //SEG156 [98] phi from gfx_mode::@10 to gfx_mode::@10 [phi:gfx_mode::@10->gfx_mode::@10] b10_from_b10: - //SEG162 [102] phi (byte) gfx_mode::i#2 = (byte) gfx_mode::i#1 [phi:gfx_mode::@10->gfx_mode::@10#0] -- register_copy + //SEG157 [98] phi (byte) gfx_mode::i#2 = (byte) gfx_mode::i#1 [phi:gfx_mode::@10->gfx_mode::@10#0] -- register_copy jmp b10 - //SEG163 gfx_mode::@10 + //SEG158 gfx_mode::@10 b10: - //SEG164 [103] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::i#2) ← (byte) gfx_mode::i#2 [ gfx_mode::i#2 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::i#2 ] ) -- pbuc1_derefidx_vbuz1=vbuz1 + //SEG159 [99] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::i#2) ← (byte) gfx_mode::i#2 [ gfx_mode::i#2 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::i#2 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- pbuc1_derefidx_vbuz1=vbuz1 ldy i tya sta DTV_PALETTE,y - //SEG165 [104] (byte) gfx_mode::i#1 ← ++ (byte) gfx_mode::i#2 [ gfx_mode::i#1 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::i#1 ] ) -- vbuz1=_inc_vbuz1 + //SEG160 [100] (byte) gfx_mode::i#1 ← ++ (byte) gfx_mode::i#2 [ gfx_mode::i#1 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::i#1 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1=_inc_vbuz1 inc i - //SEG166 [105] if((byte) gfx_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto gfx_mode::@10 [ gfx_mode::i#1 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::i#1 ] ) -- vbuz1_neq_vbuc1_then_la1 + //SEG161 [101] if((byte) gfx_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto gfx_mode::@10 [ gfx_mode::i#1 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::i#1 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuz1_neq_vbuc1_then_la1 lda i cmp #$10 bne b10_from_b10 + //SEG162 [102] phi from gfx_mode::@10 gfx_mode::@37 to gfx_mode::@11 [phi:gfx_mode::@10/gfx_mode::@37->gfx_mode::@11] + b11_from_b10: + b11_from_b37: + //SEG163 [102] phi (byte) keyboard_modifiers#42 = (byte) keyboard_modifiers#13 [phi:gfx_mode::@10/gfx_mode::@37->gfx_mode::@11#0] -- register_copy + //SEG164 [102] phi (byte) keyboard_events_size#45 = (byte) keyboard_events_size#13 [phi:gfx_mode::@10/gfx_mode::@37->gfx_mode::@11#1] -- register_copy + jmp b11 + //SEG165 gfx_mode::@11 + b11: + //SEG166 [103] if(true) goto gfx_mode::@14 [ keyboard_events_size#45 keyboard_modifiers#42 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#45 keyboard_modifiers#42 ] ) -- true_then_la1 + jmp b14 + //SEG167 [104] phi from gfx_mode::@11 gfx_mode::@37 to gfx_mode::@return [phi:gfx_mode::@11/gfx_mode::@37->gfx_mode::@return] + breturn_from_b11: + breturn_from_b37: + //SEG168 [104] phi (byte) keyboard_modifiers#11 = (byte) keyboard_modifiers#42 [phi:gfx_mode::@11/gfx_mode::@37->gfx_mode::@return#0] -- register_copy + //SEG169 [104] phi (byte) keyboard_events_size#11 = (byte) keyboard_events_size#45 [phi:gfx_mode::@11/gfx_mode::@37->gfx_mode::@return#1] -- register_copy jmp breturn - //SEG167 gfx_mode::@return + //SEG170 gfx_mode::@return breturn: - //SEG168 [106] return [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) + //SEG171 [105] return [ keyboard_events_size#11 keyboard_modifiers#11 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#11 keyboard_modifiers#11 ] ) + rts + //SEG172 gfx_mode::@14 + b14: + //SEG173 [106] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto gfx_mode::@14 [ keyboard_events_size#45 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#45 ] ) -- _deref_pbuc1_neq_vbuc2_then_la1 + lda RASTER + cmp #$ff + bne b14 + //SEG174 [107] phi from gfx_mode::@14 to gfx_mode::@16 [phi:gfx_mode::@14->gfx_mode::@16] + b16_from_b14: + jmp b16 + //SEG175 gfx_mode::@16 + b16: + //SEG176 [108] call keyboard_event_scan param-assignment [ keyboard_modifiers#21 keyboard_events_size#105 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#105 ] ) + //SEG177 [119] phi from gfx_mode::@16 to keyboard_event_scan [phi:gfx_mode::@16->keyboard_event_scan] + keyboard_event_scan_from_b16: + //SEG178 [119] phi (byte) keyboard_events_size#104 = (byte) keyboard_events_size#45 [phi:gfx_mode::@16->keyboard_event_scan#0] -- register_copy + jsr keyboard_event_scan + //SEG179 [109] phi from gfx_mode::@16 to gfx_mode::@36 [phi:gfx_mode::@16->gfx_mode::@36] + b36_from_b16: + jmp b36 + //SEG180 gfx_mode::@36 + b36: + //SEG181 [110] call keyboard_event_get param-assignment [ keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#2 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#2 ] ) + jsr keyboard_event_get + //SEG182 [111] (byte) keyboard_event_get::return#3 ← (byte) keyboard_event_get::return#2 [ keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#3 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#3 ] ) -- vbuz1=vbuz2 + lda keyboard_event_get.return + sta keyboard_event_get.return_3 + jmp b37 + //SEG183 gfx_mode::@37 + b37: + //SEG184 [112] (byte) gfx_mode::keyboard_event#0 ← (byte) keyboard_event_get::return#3 [ keyboard_events_size#24 keyboard_modifiers#21 gfx_mode::keyboard_event#0 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#24 keyboard_modifiers#21 gfx_mode::keyboard_event#0 ] ) -- vbuz1=vbuz2 + lda keyboard_event_get.return_3 + sta keyboard_event + //SEG185 [113] if((byte) gfx_mode::keyboard_event#0!=(const byte) KEY_SPACE#0) goto gfx_mode::@11 [ keyboard_events_size#24 keyboard_modifiers#21 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#24 keyboard_modifiers#21 ] ) -- vbuz1_neq_vbuc1_then_la1 + lda keyboard_event + cmp #KEY_SPACE + bne b11_from_b37 + jmp breturn_from_b37 +} +//SEG186 keyboard_event_get +keyboard_event_get: { + .label return = 6 + .label return_3 = $57 + .label return_4 = $74 + //SEG187 [114] if((byte) keyboard_events_size#105!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_get::@1 [ keyboard_events_size#105 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#105 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 ] ) -- vbuz1_neq_0_then_la1 + lda keyboard_events_size + bne b1 + //SEG188 [115] phi from keyboard_event_get to keyboard_event_get::@return [phi:keyboard_event_get->keyboard_event_get::@return] + breturn_from_keyboard_event_get: + //SEG189 [115] phi (byte) keyboard_events_size#24 = (byte) keyboard_events_size#105 [phi:keyboard_event_get->keyboard_event_get::@return#0] -- register_copy + //SEG190 [115] phi (byte) keyboard_event_get::return#2 = (byte/word/signed word/dword/signed dword) 255 [phi:keyboard_event_get->keyboard_event_get::@return#1] -- vbuz1=vbuc1 + lda #$ff + sta return + jmp breturn + //SEG191 keyboard_event_get::@return + breturn: + //SEG192 [116] return [ keyboard_events_size#24 keyboard_event_get::return#2 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#24 keyboard_event_get::return#2 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#24 keyboard_event_get::return#2 ] ) + rts + //SEG193 keyboard_event_get::@1 + b1: + //SEG194 [117] (byte) keyboard_events_size#4 ← -- (byte) keyboard_events_size#105 [ keyboard_events_size#4 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#4 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#4 ] ) -- vbuz1=_dec_vbuz1 + dec keyboard_events_size + //SEG195 [118] (byte) keyboard_event_get::return#0 ← *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) [ keyboard_event_get::return#0 keyboard_events_size#4 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_event_get::return#0 keyboard_events_size#4 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_get::return#0 keyboard_events_size#4 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 + ldy keyboard_events_size + lda keyboard_events,y + sta return + //SEG196 [115] phi from keyboard_event_get::@1 to keyboard_event_get::@return [phi:keyboard_event_get::@1->keyboard_event_get::@return] + breturn_from_b1: + //SEG197 [115] phi (byte) keyboard_events_size#24 = (byte) keyboard_events_size#4 [phi:keyboard_event_get::@1->keyboard_event_get::@return#0] -- register_copy + //SEG198 [115] phi (byte) keyboard_event_get::return#2 = (byte) keyboard_event_get::return#0 [phi:keyboard_event_get::@1->keyboard_event_get::@return#1] -- register_copy + jmp breturn +} +//SEG199 keyboard_event_scan +keyboard_event_scan: { + .label _3 = $5c + .label _4 = $5d + .label _12 = $5f + .label _16 = $61 + .label _20 = $63 + .label _24 = $65 + .label _28 = $67 + .label row_scan = $5b + .label keycode = 9 + .label col = 8 + .label event_type = $5e + .label row = 7 + //SEG200 [120] phi from keyboard_event_scan to keyboard_event_scan::@1 [phi:keyboard_event_scan->keyboard_event_scan::@1] + b1_from_keyboard_event_scan: + //SEG201 [120] phi (byte) keyboard_events_size#112 = (byte) keyboard_events_size#104 [phi:keyboard_event_scan->keyboard_event_scan::@1#0] -- register_copy + //SEG202 [120] phi (byte) keyboard_event_scan::keycode#11 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:keyboard_event_scan->keyboard_event_scan::@1#1] -- vbuz1=vbuc1 + lda #0 + sta keycode + //SEG203 [120] phi (byte) keyboard_event_scan::row#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:keyboard_event_scan->keyboard_event_scan::@1#2] -- vbuz1=vbuc1 + lda #0 + sta row + jmp b1 + //SEG204 [120] phi from keyboard_event_scan::@8 to keyboard_event_scan::@1 [phi:keyboard_event_scan::@8->keyboard_event_scan::@1] + b1_from_b8: + //SEG205 [120] phi (byte) keyboard_events_size#112 = (byte) keyboard_events_size#105 [phi:keyboard_event_scan::@8->keyboard_event_scan::@1#0] -- register_copy + //SEG206 [120] phi (byte) keyboard_event_scan::keycode#11 = (byte) keyboard_event_scan::keycode#14 [phi:keyboard_event_scan::@8->keyboard_event_scan::@1#1] -- register_copy + //SEG207 [120] phi (byte) keyboard_event_scan::row#2 = (byte) keyboard_event_scan::row#1 [phi:keyboard_event_scan::@8->keyboard_event_scan::@1#2] -- register_copy + jmp b1 + //SEG208 keyboard_event_scan::@1 + b1: + //SEG209 [121] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_event_scan::row#2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::rowid#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::rowid#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::rowid#0 ] ) -- vbuz1=vbuz2 + lda row + sta keyboard_matrix_read.rowid + //SEG210 [122] call keyboard_matrix_read param-assignment [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] ) + jsr keyboard_matrix_read + //SEG211 [123] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#2 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#2 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#2 ] ) -- vbuz1=vbuz2 + lda keyboard_matrix_read.return + sta keyboard_matrix_read.return_2 + jmp b25 + //SEG212 keyboard_event_scan::@25 + b25: + //SEG213 [124] (byte) keyboard_event_scan::row_scan#0 ← (byte) keyboard_matrix_read::return#2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ) -- vbuz1=vbuz2 + lda keyboard_matrix_read.return_2 + sta row_scan + //SEG214 [125] if((byte) keyboard_event_scan::row_scan#0==*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ) -- vbuz1_eq_pbuc1_derefidx_vbuz2_then_la1 + ldy row + lda keyboard_scan_values,y + cmp row_scan + beq b2 + //SEG215 [126] phi from keyboard_event_scan::@25 to keyboard_event_scan::@3 [phi:keyboard_event_scan::@25->keyboard_event_scan::@3] + b3_from_b25: + //SEG216 [126] phi (byte) keyboard_events_size#18 = (byte) keyboard_events_size#112 [phi:keyboard_event_scan::@25->keyboard_event_scan::@3#0] -- register_copy + //SEG217 [126] phi (byte) keyboard_event_scan::keycode#10 = (byte) keyboard_event_scan::keycode#11 [phi:keyboard_event_scan::@25->keyboard_event_scan::@3#1] -- register_copy + //SEG218 [126] phi (byte) keyboard_event_scan::col#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:keyboard_event_scan::@25->keyboard_event_scan::@3#2] -- vbuz1=vbuc1 + lda #0 + sta col + jmp b3 + //SEG219 [126] phi from keyboard_event_scan::@4 to keyboard_event_scan::@3 [phi:keyboard_event_scan::@4->keyboard_event_scan::@3] + b3_from_b4: + //SEG220 [126] phi (byte) keyboard_events_size#18 = (byte) keyboard_events_size#111 [phi:keyboard_event_scan::@4->keyboard_event_scan::@3#0] -- register_copy + //SEG221 [126] phi (byte) keyboard_event_scan::keycode#10 = (byte) keyboard_event_scan::keycode#15 [phi:keyboard_event_scan::@4->keyboard_event_scan::@3#1] -- register_copy + //SEG222 [126] phi (byte) keyboard_event_scan::col#2 = (byte) keyboard_event_scan::col#1 [phi:keyboard_event_scan::@4->keyboard_event_scan::@3#2] -- register_copy + jmp b3 + //SEG223 keyboard_event_scan::@3 + b3: + //SEG224 [127] (byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$3 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$3 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$3 ] ) -- vbuz1=vbuz2_bxor_pbuc1_derefidx_vbuz3 + lda row_scan + ldy row + eor keyboard_scan_values,y + sta _3 + //SEG225 [128] (byte~) keyboard_event_scan::$4 ← (byte~) keyboard_event_scan::$3 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$4 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$4 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$4 ] ) -- vbuz1=vbuz2_band_pbuc1_derefidx_vbuz3 + lda _3 + ldy col + and keyboard_matrix_col_bitmask,y + sta _4 + //SEG226 [129] if((byte~) keyboard_event_scan::$4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@4 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) -- vbuz1_eq_0_then_la1 + lda _4 + beq b4_from_b3 + jmp b14 + //SEG227 keyboard_event_scan::@14 + b14: + //SEG228 [130] if((byte) keyboard_events_size#18==(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@4 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) -- vbuz1_eq_vbuc1_then_la1 + lda keyboard_events_size + cmp #8 + beq b4_from_b14 + jmp b15 + //SEG229 keyboard_event_scan::@15 + b15: + //SEG230 [131] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] ) -- vbuz1=vbuz2_band_pbuc1_derefidx_vbuz3 + lda row_scan + ldy col + and keyboard_matrix_col_bitmask,y + sta event_type + //SEG231 [132] if((byte) keyboard_event_scan::event_type#0!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@6 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) -- vbuz1_neq_0_then_la1 + lda event_type + bne b6 + jmp b16 + //SEG232 keyboard_event_scan::@16 + b16: + //SEG233 [133] (byte/word/dword~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) 64 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$12 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$12 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$12 ] ) -- vbuz1=vbuz2_bor_vbuc1 + lda #$40 + ora keycode + sta _12 + //SEG234 [134] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ← (byte/word/dword~) keyboard_event_scan::$12 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) -- pbuc1_derefidx_vbuz1=vbuz2 + lda _12 + ldy keyboard_events_size + sta keyboard_events,y + //SEG235 [135] (byte) keyboard_events_size#2 ← ++ (byte) keyboard_events_size#18 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#2 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#2 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#2 ] ) -- vbuz1=_inc_vbuz1 + inc keyboard_events_size + //SEG236 [136] phi from keyboard_event_scan::@14 keyboard_event_scan::@16 keyboard_event_scan::@3 keyboard_event_scan::@6 to keyboard_event_scan::@4 [phi:keyboard_event_scan::@14/keyboard_event_scan::@16/keyboard_event_scan::@3/keyboard_event_scan::@6->keyboard_event_scan::@4] + b4_from_b14: + b4_from_b16: + b4_from_b3: + b4_from_b6: + //SEG237 [136] phi (byte) keyboard_events_size#111 = (byte) keyboard_events_size#18 [phi:keyboard_event_scan::@14/keyboard_event_scan::@16/keyboard_event_scan::@3/keyboard_event_scan::@6->keyboard_event_scan::@4#0] -- register_copy + jmp b4 + //SEG238 keyboard_event_scan::@4 + b4: + //SEG239 [137] (byte) keyboard_event_scan::keycode#15 ← ++ (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ) -- vbuz1=_inc_vbuz1 + inc keycode + //SEG240 [138] (byte) keyboard_event_scan::col#1 ← ++ (byte) keyboard_event_scan::col#2 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ) -- vbuz1=_inc_vbuz1 + inc col + //SEG241 [139] if((byte) keyboard_event_scan::col#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@3 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ) -- vbuz1_neq_vbuc1_then_la1 + lda col + cmp #8 + bne b3_from_b4 + jmp b18 + //SEG242 keyboard_event_scan::@18 + b18: + //SEG243 [140] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ) -- pbuc1_derefidx_vbuz1=vbuz2 + lda row_scan + ldy row + sta keyboard_scan_values,y + //SEG244 [141] phi from keyboard_event_scan::@18 keyboard_event_scan::@2 to keyboard_event_scan::@8 [phi:keyboard_event_scan::@18/keyboard_event_scan::@2->keyboard_event_scan::@8] + b8_from_b18: + b8_from_b2: + //SEG245 [141] phi (byte) keyboard_events_size#105 = (byte) keyboard_events_size#111 [phi:keyboard_event_scan::@18/keyboard_event_scan::@2->keyboard_event_scan::@8#0] -- register_copy + //SEG246 [141] phi (byte) keyboard_event_scan::keycode#14 = (byte) keyboard_event_scan::keycode#15 [phi:keyboard_event_scan::@18/keyboard_event_scan::@2->keyboard_event_scan::@8#1] -- register_copy + jmp b8 + //SEG247 keyboard_event_scan::@8 + b8: + //SEG248 [142] (byte) keyboard_event_scan::row#1 ← ++ (byte) keyboard_event_scan::row#2 [ keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ) -- vbuz1=_inc_vbuz1 + inc row + //SEG249 [143] if((byte) keyboard_event_scan::row#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@1 [ keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ) -- vbuz1_neq_vbuc1_then_la1 + lda row + cmp #8 + bne b1_from_b8 + //SEG250 [144] phi from keyboard_event_scan::@8 to keyboard_event_scan::@20 [phi:keyboard_event_scan::@8->keyboard_event_scan::@20] + b20_from_b8: + jmp b20 + //SEG251 keyboard_event_scan::@20 + b20: + //SEG252 [145] call keyboard_event_pressed param-assignment [ keyboard_events_size#105 keyboard_event_pressed::return#10 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 ] ) + //SEG253 [173] phi from keyboard_event_scan::@20 to keyboard_event_pressed [phi:keyboard_event_scan::@20->keyboard_event_pressed] + keyboard_event_pressed_from_b20: + //SEG254 [173] phi (byte) keyboard_event_pressed::keycode#4 = (const byte) KEY_LSHIFT#0 [phi:keyboard_event_scan::@20->keyboard_event_pressed#0] -- vbuz1=vbuc1 + lda #KEY_LSHIFT + sta keyboard_event_pressed.keycode + jsr keyboard_event_pressed + //SEG255 [146] (byte) keyboard_event_pressed::return#0 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#105 keyboard_event_pressed::return#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#0 ] ) -- vbuz1=vbuz2 + lda keyboard_event_pressed.return_10 + sta keyboard_event_pressed.return + jmp b26 + //SEG256 keyboard_event_scan::@26 + b26: + //SEG257 [147] (byte~) keyboard_event_scan::$16 ← (byte) keyboard_event_pressed::return#0 [ keyboard_events_size#105 keyboard_event_scan::$16 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_scan::$16 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_scan::$16 ] ) -- vbuz1=vbuz2 + lda keyboard_event_pressed.return + sta _16 + //SEG258 [148] if((byte~) keyboard_event_scan::$16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@9 [ keyboard_events_size#105 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 ] ) -- vbuz1_eq_0_then_la1 + lda _16 + beq b9_from_b26 + //SEG259 [149] phi from keyboard_event_scan::@26 to keyboard_event_scan::@21 [phi:keyboard_event_scan::@26->keyboard_event_scan::@21] + b21_from_b26: + jmp b21 + //SEG260 keyboard_event_scan::@21 + b21: + //SEG261 [150] phi from keyboard_event_scan::@21 to keyboard_event_scan::@9 [phi:keyboard_event_scan::@21->keyboard_event_scan::@9] + b9_from_b21: + //SEG262 [150] phi (byte) keyboard_modifiers#18 = (byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) KEY_MODIFIER_LSHIFT#0 [phi:keyboard_event_scan::@21->keyboard_event_scan::@9#0] -- vbuz1=vbuc1 + lda #0|KEY_MODIFIER_LSHIFT + sta keyboard_modifiers + jmp b9 + //SEG263 [150] phi from keyboard_event_scan::@26 to keyboard_event_scan::@9 [phi:keyboard_event_scan::@26->keyboard_event_scan::@9] + b9_from_b26: + //SEG264 [150] phi (byte) keyboard_modifiers#18 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:keyboard_event_scan::@26->keyboard_event_scan::@9#0] -- vbuz1=vbuc1 + lda #0 + sta keyboard_modifiers + jmp b9 + //SEG265 keyboard_event_scan::@9 + b9: + //SEG266 [151] call keyboard_event_pressed param-assignment [ keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#18 ] ) + //SEG267 [173] phi from keyboard_event_scan::@9 to keyboard_event_pressed [phi:keyboard_event_scan::@9->keyboard_event_pressed] + keyboard_event_pressed_from_b9: + //SEG268 [173] phi (byte) keyboard_event_pressed::keycode#4 = (const byte) KEY_RSHIFT#0 [phi:keyboard_event_scan::@9->keyboard_event_pressed#0] -- vbuz1=vbuc1 + lda #KEY_RSHIFT + sta keyboard_event_pressed.keycode + jsr keyboard_event_pressed + //SEG269 [152] (byte) keyboard_event_pressed::return#1 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#1 ] ) -- vbuz1=vbuz2 + lda keyboard_event_pressed.return_10 + sta keyboard_event_pressed.return_1 + jmp b27 + //SEG270 keyboard_event_scan::@27 + b27: + //SEG271 [153] (byte~) keyboard_event_scan::$20 ← (byte) keyboard_event_pressed::return#1 [ keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_scan::$20 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_scan::$20 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_scan::$20 ] ) -- vbuz1=vbuz2 + lda keyboard_event_pressed.return_1 + sta _20 + //SEG272 [154] if((byte~) keyboard_event_scan::$20==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@10 [ keyboard_events_size#105 keyboard_modifiers#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 ] ) -- vbuz1_eq_0_then_la1 + lda _20 + beq b10_from_b27 + jmp b22 + //SEG273 keyboard_event_scan::@22 + b22: + //SEG274 [155] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#18 | (const byte) KEY_MODIFIER_RSHIFT#0 [ keyboard_events_size#105 keyboard_modifiers#3 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#3 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#3 ] ) -- vbuz1=vbuz1_bor_vbuc1 + lda #KEY_MODIFIER_RSHIFT + ora keyboard_modifiers + sta keyboard_modifiers + //SEG275 [156] phi from keyboard_event_scan::@22 keyboard_event_scan::@27 to keyboard_event_scan::@10 [phi:keyboard_event_scan::@22/keyboard_event_scan::@27->keyboard_event_scan::@10] + b10_from_b22: + b10_from_b27: + //SEG276 [156] phi (byte) keyboard_modifiers#19 = (byte) keyboard_modifiers#3 [phi:keyboard_event_scan::@22/keyboard_event_scan::@27->keyboard_event_scan::@10#0] -- register_copy + jmp b10 + //SEG277 keyboard_event_scan::@10 + b10: + //SEG278 [157] call keyboard_event_pressed param-assignment [ keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#19 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#19 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#19 ] ) + //SEG279 [173] phi from keyboard_event_scan::@10 to keyboard_event_pressed [phi:keyboard_event_scan::@10->keyboard_event_pressed] + keyboard_event_pressed_from_b10: + //SEG280 [173] phi (byte) keyboard_event_pressed::keycode#4 = (const byte) KEY_CTRL#0 [phi:keyboard_event_scan::@10->keyboard_event_pressed#0] -- vbuz1=vbuc1 + lda #KEY_CTRL + sta keyboard_event_pressed.keycode + jsr keyboard_event_pressed + //SEG281 [158] (byte) keyboard_event_pressed::return#2 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#2 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#2 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#2 ] ) -- vbuz1=vbuz2 + lda keyboard_event_pressed.return_10 + sta keyboard_event_pressed.return_2 + jmp b28 + //SEG282 keyboard_event_scan::@28 + b28: + //SEG283 [159] (byte~) keyboard_event_scan::$24 ← (byte) keyboard_event_pressed::return#2 [ keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_scan::$24 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_scan::$24 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_scan::$24 ] ) -- vbuz1=vbuz2 + lda keyboard_event_pressed.return_2 + sta _24 + //SEG284 [160] if((byte~) keyboard_event_scan::$24==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@11 [ keyboard_events_size#105 keyboard_modifiers#19 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 ] ) -- vbuz1_eq_0_then_la1 + lda _24 + beq b11_from_b28 + jmp b23 + //SEG285 keyboard_event_scan::@23 + b23: + //SEG286 [161] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#19 | (const byte) KEY_MODIFIER_CTRL#0 [ keyboard_events_size#105 keyboard_modifiers#4 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#4 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#4 ] ) -- vbuz1=vbuz1_bor_vbuc1 + lda #KEY_MODIFIER_CTRL + ora keyboard_modifiers + sta keyboard_modifiers + //SEG287 [162] phi from keyboard_event_scan::@23 keyboard_event_scan::@28 to keyboard_event_scan::@11 [phi:keyboard_event_scan::@23/keyboard_event_scan::@28->keyboard_event_scan::@11] + b11_from_b23: + b11_from_b28: + //SEG288 [162] phi (byte) keyboard_modifiers#20 = (byte) keyboard_modifiers#4 [phi:keyboard_event_scan::@23/keyboard_event_scan::@28->keyboard_event_scan::@11#0] -- register_copy + jmp b11 + //SEG289 keyboard_event_scan::@11 + b11: + //SEG290 [163] call keyboard_event_pressed param-assignment [ keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#20 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#20 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#20 ] ) + //SEG291 [173] phi from keyboard_event_scan::@11 to keyboard_event_pressed [phi:keyboard_event_scan::@11->keyboard_event_pressed] + keyboard_event_pressed_from_b11: + //SEG292 [173] phi (byte) keyboard_event_pressed::keycode#4 = (const byte) KEY_COMMODORE#0 [phi:keyboard_event_scan::@11->keyboard_event_pressed#0] -- vbuz1=vbuc1 + lda #KEY_COMMODORE + sta keyboard_event_pressed.keycode + jsr keyboard_event_pressed + //SEG293 [164] (byte) keyboard_event_pressed::return#3 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#3 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#3 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#3 ] ) -- vbuz1=vbuz2 + lda keyboard_event_pressed.return_10 + sta keyboard_event_pressed.return_3 + jmp b29 + //SEG294 keyboard_event_scan::@29 + b29: + //SEG295 [165] (byte~) keyboard_event_scan::$28 ← (byte) keyboard_event_pressed::return#3 [ keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_scan::$28 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_scan::$28 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_scan::$28 ] ) -- vbuz1=vbuz2 + lda keyboard_event_pressed.return_3 + sta _28 + //SEG296 [166] if((byte~) keyboard_event_scan::$28==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@return [ keyboard_events_size#105 keyboard_modifiers#20 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 ] ) -- vbuz1_eq_0_then_la1 + lda _28 + beq breturn_from_b29 + jmp b24 + //SEG297 keyboard_event_scan::@24 + b24: + //SEG298 [167] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#20 | (const byte) KEY_MODIFIER_COMMODORE#0 [ keyboard_events_size#105 keyboard_modifiers#5 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#5 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#5 ] ) -- vbuz1=vbuz1_bor_vbuc1 + lda #KEY_MODIFIER_COMMODORE + ora keyboard_modifiers + sta keyboard_modifiers + //SEG299 [168] phi from keyboard_event_scan::@24 keyboard_event_scan::@29 to keyboard_event_scan::@return [phi:keyboard_event_scan::@24/keyboard_event_scan::@29->keyboard_event_scan::@return] + breturn_from_b24: + breturn_from_b29: + //SEG300 [168] phi (byte) keyboard_modifiers#21 = (byte) keyboard_modifiers#5 [phi:keyboard_event_scan::@24/keyboard_event_scan::@29->keyboard_event_scan::@return#0] -- register_copy + jmp breturn + //SEG301 keyboard_event_scan::@return + breturn: + //SEG302 [169] return [ keyboard_modifiers#21 keyboard_events_size#105 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#105 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_modifiers#21 keyboard_events_size#105 ] ) + rts + //SEG303 keyboard_event_scan::@6 + b6: + //SEG304 [170] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ← (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) -- pbuc1_derefidx_vbuz1=vbuz2 + lda keycode + ldy keyboard_events_size + sta keyboard_events,y + //SEG305 [171] (byte) keyboard_events_size#1 ← ++ (byte) keyboard_events_size#18 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#1 ] ) -- vbuz1=_inc_vbuz1 + inc keyboard_events_size + jmp b4_from_b6 + //SEG306 keyboard_event_scan::@2 + b2: + //SEG307 [172] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ keyboard_event_scan::row#2 keyboard_events_size#112 keyboard_event_scan::keycode#1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_events_size#112 keyboard_event_scan::keycode#1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_events_size#112 keyboard_event_scan::keycode#1 ] ) -- vbuz1=vbuz1_plus_vbuc1 + lda #8 + clc + adc keycode + sta keycode + jmp b8_from_b2 +} +//SEG308 keyboard_event_pressed +keyboard_event_pressed: { + .label _0 = $68 + .label _1 = $6a + .label return = $60 + .label return_1 = $62 + .label return_2 = $64 + .label return_3 = $66 + .label row_bits = $69 + .label keycode = $b + .label return_10 = $6b + //SEG309 [174] (byte~) keyboard_event_pressed::$0 ← (byte) keyboard_event_pressed::keycode#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ) -- vbuz1=vbuz2_ror_3 + lda keycode + lsr + lsr + lsr + sta _0 + //SEG310 [175] (byte) keyboard_event_pressed::row_bits#0 ← *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) [ keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 + ldy _0 + lda keyboard_scan_values,y + sta row_bits + //SEG311 [176] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ) -- vbuz1=vbuz2_band_vbuc1 + lda #7 + and keycode + sta _1 + //SEG312 [177] (byte) keyboard_event_pressed::return#10 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) [ keyboard_event_pressed::return#10 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] ) -- vbuz1=vbuz2_band_pbuc1_derefidx_vbuz3 + lda row_bits + ldy _1 + and keyboard_matrix_col_bitmask,y + sta return_10 + jmp breturn + //SEG313 keyboard_event_pressed::@return + breturn: + //SEG314 [178] return [ keyboard_event_pressed::return#10 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] ) rts } -//SEG169 form_control +//SEG315 keyboard_matrix_read +keyboard_matrix_read: { + .label return = $6c + .label rowid = $59 + .label return_2 = $5a + //SEG316 [179] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_matrix_read:122 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_matrix_read:122 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] ) -- _deref_pbuc1=pbuc2_derefidx_vbuz1 + ldy rowid + lda keyboard_matrix_row_bitmask,y + sta CIA1_PORT_A + //SEG317 [180] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_matrix_read:122 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_matrix_read:122 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] ) -- vbuz1=_bnot__deref_pbuc1 + lda CIA1_PORT_B + eor #$ff + sta return + jmp breturn + //SEG318 keyboard_matrix_read::@return + breturn: + //SEG319 [181] return [ keyboard_matrix_read::return#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_matrix_read:122 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_matrix_read:122 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] ) + rts +} +//SEG320 form_mode +form_mode: { + .label _25 = $6e + .label i = $c + //SEG321 [182] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) 65536 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #($ffffffff&FORM_CHARSET)/$10000 + sta DTV_GRAPHICS_VIC_BANK + //SEG322 [183] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #DTV_COLOR_BANK_DEFAULT/$400 + sta DTV_COLOR_BANK_LO + //SEG323 [184] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #0 + sta DTV_COLOR_BANK_HI + //SEG324 [185] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #3 + sta CIA2_PORT_A_DDR + //SEG325 [186] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) 16384 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #3^FORM_CHARSET/$4000 + sta CIA2_PORT_A + //SEG326 [187] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #0 + sta DTV_CONTROL + //SEG327 [188] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #VIC_DEN|VIC_RSEL|3 + sta VIC_CONTROL + //SEG328 [189] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #VIC_CSEL + sta VIC_CONTROL2 + //SEG329 [190] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) 16383/(byte/signed byte/word/signed word/dword/signed dword) 64|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) 16383/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #(FORM_SCREEN&$3fff)/$40|(FORM_CHARSET&$3fff)/$400 + sta VIC_MEMORY + //SEG330 [191] phi from form_mode to form_mode::@1 [phi:form_mode->form_mode::@1] + b1_from_form_mode: + //SEG331 [191] phi (byte) form_mode::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_mode->form_mode::@1#0] -- vbuz1=vbuc1 + lda #0 + sta i + jmp b1 + //SEG332 [191] phi from form_mode::@1 to form_mode::@1 [phi:form_mode::@1->form_mode::@1] + b1_from_b1: + //SEG333 [191] phi (byte) form_mode::i#2 = (byte) form_mode::i#1 [phi:form_mode::@1->form_mode::@1#0] -- register_copy + jmp b1 + //SEG334 form_mode::@1 + b1: + //SEG335 [192] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ← *((const byte[16]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#2 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#2 ] ) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 + ldy i + lda DTV_PALETTE_DEFAULT,y + sta DTV_PALETTE,y + //SEG336 [193] (byte) form_mode::i#1 ← ++ (byte) form_mode::i#2 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#1 ] ) -- vbuz1=_inc_vbuz1 + inc i + //SEG337 [194] if((byte) form_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto form_mode::@1 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#1 ] ) -- vbuz1_neq_vbuc1_then_la1 + lda i + cmp #$10 + bne b1_from_b1 + jmp b9 + //SEG338 form_mode::@9 + b9: + //SEG339 [195] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #0 + sta BGCOL + //SEG340 [196] phi from form_mode::@19 form_mode::@9 to form_mode::@2 [phi:form_mode::@19/form_mode::@9->form_mode::@2] + b2_from_b19: + b2_from_b9: + //SEG341 [196] phi (byte) form_field_idx#28 = (byte) form_field_idx#18 [phi:form_mode::@19/form_mode::@9->form_mode::@2#0] -- register_copy + //SEG342 [196] phi (byte) keyboard_modifiers#45 = (byte) keyboard_modifiers#21 [phi:form_mode::@19/form_mode::@9->form_mode::@2#1] -- register_copy + //SEG343 [196] phi (byte) keyboard_events_size#47 = (byte) keyboard_events_size#24 [phi:form_mode::@19/form_mode::@9->form_mode::@2#2] -- register_copy + //SEG344 [196] phi (signed byte) form_cursor_count#21 = (signed byte) form_cursor_count#16 [phi:form_mode::@19/form_mode::@9->form_mode::@2#3] -- register_copy + jmp b2 + //SEG345 form_mode::@2 + b2: + //SEG346 [197] if(true) goto form_mode::@5 [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ( main:2::form_mode:15 [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ) -- true_then_la1 + jmp b5 + //SEG347 [198] phi from form_mode::@19 form_mode::@2 to form_mode::@return [phi:form_mode::@19/form_mode::@2->form_mode::@return] + breturn_from_b19: + breturn_from_b2: + //SEG348 [198] phi (byte) form_field_idx#14 = (byte) form_field_idx#18 [phi:form_mode::@19/form_mode::@2->form_mode::@return#0] -- register_copy + //SEG349 [198] phi (byte) keyboard_modifiers#13 = (byte) keyboard_modifiers#21 [phi:form_mode::@19/form_mode::@2->form_mode::@return#1] -- register_copy + //SEG350 [198] phi (byte) keyboard_events_size#13 = (byte) keyboard_events_size#24 [phi:form_mode::@19/form_mode::@2->form_mode::@return#2] -- register_copy + //SEG351 [198] phi (signed byte) form_cursor_count#13 = (signed byte) form_cursor_count#16 [phi:form_mode::@19/form_mode::@2->form_mode::@return#3] -- register_copy + jmp breturn + //SEG352 form_mode::@return + breturn: + //SEG353 [199] return [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::form_mode:15 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + rts + //SEG354 form_mode::@5 + b5: + //SEG355 [200] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto form_mode::@5 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 ] ( main:2::form_mode:15 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 ] ) -- _deref_pbuc1_neq_vbuc2_then_la1 + lda RASTER + cmp #$ff + bne b5 + //SEG356 [201] phi from form_mode::@5 to form_mode::@7 [phi:form_mode::@5->form_mode::@7] + b7_from_b5: + jmp b7 + //SEG357 form_mode::@7 + b7: + //SEG358 [202] call form_control param-assignment [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ( main:2::form_mode:15 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ) + jsr form_control + //SEG359 [203] (byte) form_control::return#0 ← (byte) form_control::return#2 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#0 ] ( main:2::form_mode:15 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#0 ] ) -- vbuz1=vbuz2 + lda form_control.return_2 + sta form_control.return + jmp b19 + //SEG360 form_mode::@19 + b19: + //SEG361 [204] (byte~) form_mode::$25 ← (byte) form_control::return#0 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_mode::$25 ] ( main:2::form_mode:15 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_mode::$25 ] ) -- vbuz1=vbuz2 + lda form_control.return + sta _25 + //SEG362 [205] if((byte~) form_mode::$25==(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_mode::@2 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 ] ( main:2::form_mode:15 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 ] ) -- vbuz1_eq_0_then_la1 + lda _25 + beq b2_from_b19 + jmp breturn_from_b19 +} +//SEG363 form_control form_control: { - .label _6 = $54 - .label _7 = $5a - .label _12 = $57 - .label _13 = $58 - .label _24 = $59 - .label field = $52 - .label key_event = $56 - //SEG170 [107] (byte) form_field_ptr::field_idx#1 ← (byte) form_field_idx#1 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::field_idx#1 ] ( main:2::form_control:19 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::field_idx#1 ] ) -- vbuz1=vbuz2 + .label _6 = $73 + .label _7 = $79 + .label _12 = $76 + .label _13 = $77 + .label _24 = $78 + .label return = $6d + .label field = $71 + .label key_event = $75 + .label return_2 = $10 + //SEG364 [206] (byte) form_field_ptr::field_idx#1 ← (byte) form_field_idx#28 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#1 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#1 ] ) -- vbuz1=vbuz2 lda form_field_idx sta form_field_ptr.field_idx - //SEG171 [108] call form_field_ptr param-assignment [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#0 ] ( main:2::form_control:19 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#0 ] ) - //SEG172 [218] phi from form_control to form_field_ptr [phi:form_control->form_field_ptr] + //SEG365 [207] call form_field_ptr param-assignment [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] ) + //SEG366 [251] phi from form_control to form_field_ptr [phi:form_control->form_field_ptr] form_field_ptr_from_form_control: - //SEG173 [218] phi (byte) form_field_ptr::field_idx#2 = (byte) form_field_ptr::field_idx#1 [phi:form_control->form_field_ptr#0] -- register_copy + //SEG367 [251] phi (byte) form_field_ptr::field_idx#2 = (byte) form_field_ptr::field_idx#1 [phi:form_control->form_field_ptr#0] -- register_copy jsr form_field_ptr - //SEG174 [109] (byte*) form_field_ptr::return#3 ← (byte*) form_field_ptr::return#0 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#3 ] ( main:2::form_control:19 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#3 ] ) -- pbuz1=pbuz2 + //SEG368 [208] (byte*) form_field_ptr::return#3 ← (byte*) form_field_ptr::return#0 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#3 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#3 ] ) -- pbuz1=pbuz2 lda form_field_ptr.return sta form_field_ptr.return_3 lda form_field_ptr.return+1 sta form_field_ptr.return_3+1 - jmp b29 - //SEG175 form_control::@29 - b29: - //SEG176 [110] (byte*) form_control::field#0 ← (byte*) form_field_ptr::return#3 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_control::field#0 ] ( main:2::form_control:19 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_control::field#0 ] ) -- pbuz1=pbuz2 + jmp b33 + //SEG369 form_control::@33 + b33: + //SEG370 [209] (byte*) form_control::field#0 ← (byte*) form_field_ptr::return#3 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_control::field#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_control::field#0 ] ) -- pbuz1=pbuz2 lda form_field_ptr.return_3 sta field lda form_field_ptr.return_3+1 sta field+1 - //SEG177 [111] (signed byte) form_cursor_count#3 ← -- (signed byte) form_cursor_count#1 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ) -- vbsz1=_dec_vbsz1 + //SEG371 [210] (signed byte) form_cursor_count#5 ← -- (signed byte) form_cursor_count#21 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ) -- vbsz1=_dec_vbsz1 dec form_cursor_count - //SEG178 [112] if((signed byte) form_cursor_count#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@32 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ) -- vbsz1_ge_0_then_la1 + //SEG372 [211] if((signed byte) form_cursor_count#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@36 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ) -- vbsz1_ge_0_then_la1 lda form_cursor_count cmp #0 - bpl b32_from_b29 - //SEG179 [113] phi from form_control::@29 to form_control::@1 [phi:form_control::@29->form_control::@1] - b1_from_b29: - //SEG180 [113] phi (signed byte) form_cursor_count#11 = (const signed byte) FORM_CURSOR_BLINK#0 [phi:form_control::@29->form_control::@1#0] -- vbsz1=vbsc1 + bpl b36_from_b33 + //SEG373 [212] phi from form_control::@33 to form_control::@1 [phi:form_control::@33->form_control::@1] + b1_from_b33: + //SEG374 [212] phi (signed byte) form_cursor_count#15 = (const signed byte) FORM_CURSOR_BLINK#0 [phi:form_control::@33->form_control::@1#0] -- vbsz1=vbsc1 lda #FORM_CURSOR_BLINK sta form_cursor_count jmp b1 - //SEG181 form_control::@1 + //SEG375 form_control::@1 b1: - //SEG182 [114] if((signed byte) form_cursor_count#11>=(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2) goto form_control::@2 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ) -- vbsz1_ge_vbuc1_then_la1 + //SEG376 [213] if((signed byte) form_cursor_count#15>=(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2) goto form_control::@2 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- vbsz1_ge_vbuc1_then_la1 lda form_cursor_count sec sbc #FORM_CURSOR_BLINK/2 @@ -11036,643 +12935,271 @@ form_control: { eor #$80 !: bpl b2 - jmp b15 - //SEG183 form_control::@15 - b15: - //SEG184 [115] (byte/word/dword~) form_control::$6 ← *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) 128 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$6 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$6 ] ) -- vbuz1=_deref_pbuz2_bor_vbuc1 + jmp b16 + //SEG377 form_control::@16 + b16: + //SEG378 [214] (byte/word/dword~) form_control::$6 ← *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) 128 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$6 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$6 ] ) -- vbuz1=_deref_pbuz2_bor_vbuc1 lda #$80 ldy #0 ora (field),y sta _6 - //SEG185 [116] *((byte*) form_control::field#0) ← (byte/word/dword~) form_control::$6 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ) -- _deref_pbuz1=vbuz2 + //SEG379 [215] *((byte*) form_control::field#0) ← (byte/word/dword~) form_control::$6 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- _deref_pbuz1=vbuz2 lda _6 ldy #0 sta (field),y - //SEG186 [117] phi from form_control::@15 form_control::@2 to form_control::@3 [phi:form_control::@15/form_control::@2->form_control::@3] - b3_from_b15: + //SEG380 [216] phi from form_control::@16 form_control::@2 to form_control::@3 [phi:form_control::@16/form_control::@2->form_control::@3] + b3_from_b16: b3_from_b2: jmp b3 - //SEG187 form_control::@3 + //SEG381 form_control::@3 b3: - //SEG188 [118] call keyboard_event_scan param-assignment [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ( main:2::form_control:19 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ) - //SEG189 [155] phi from form_control::@3 to keyboard_event_scan [phi:form_control::@3->keyboard_event_scan] + //SEG382 [217] call keyboard_event_scan param-assignment [ keyboard_modifiers#21 keyboard_events_size#105 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_modifiers#21 keyboard_events_size#105 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + //SEG383 [119] phi from form_control::@3 to keyboard_event_scan [phi:form_control::@3->keyboard_event_scan] keyboard_event_scan_from_b3: + //SEG384 [119] phi (byte) keyboard_events_size#104 = (byte) keyboard_events_size#47 [phi:form_control::@3->keyboard_event_scan#0] -- register_copy jsr keyboard_event_scan - //SEG190 [119] phi from form_control::@3 to form_control::@30 [phi:form_control::@3->form_control::@30] - b30_from_b3: - jmp b30 - //SEG191 form_control::@30 - b30: - //SEG192 [120] call keyboard_event_get param-assignment [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_event_get::return#2 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_event_get::return#2 keyboard_modifiers#16 ] ) + //SEG385 [218] phi from form_control::@3 to form_control::@34 [phi:form_control::@3->form_control::@34] + b34_from_b3: + jmp b34 + //SEG386 form_control::@34 + b34: + //SEG387 [219] call keyboard_event_get param-assignment [ keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#2 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#2 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) jsr keyboard_event_get - //SEG193 [121] (byte) keyboard_event_get::return#3 ← (byte) keyboard_event_get::return#2 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_event_get::return#3 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_event_get::return#3 keyboard_modifiers#16 ] ) -- vbuz1=vbuz2 + //SEG388 [220] (byte) keyboard_event_get::return#4 ← (byte) keyboard_event_get::return#2 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_get::return#4 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_get::return#4 ] ) -- vbuz1=vbuz2 lda keyboard_event_get.return - sta keyboard_event_get.return_3 - jmp b31 - //SEG194 form_control::@31 - b31: - //SEG195 [122] (byte) form_control::key_event#0 ← (byte) keyboard_event_get::return#3 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::key_event#0 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::key_event#0 keyboard_modifiers#16 ] ) -- vbuz1=vbuz2 - lda keyboard_event_get.return_3 + sta keyboard_event_get.return_4 + jmp b35 + //SEG389 form_control::@35 + b35: + //SEG390 [221] (byte) form_control::key_event#0 ← (byte) keyboard_event_get::return#4 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ) -- vbuz1=vbuz2 + lda keyboard_event_get.return_4 sta key_event - //SEG196 [123] if((byte) form_control::key_event#0!=(const byte) KEY_CRSR_DOWN#0) goto form_control::@4 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::key_event#0 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::key_event#0 keyboard_modifiers#16 ] ) -- vbuz1_neq_vbuc1_then_la1 + //SEG391 [222] if((byte) form_control::key_event#0!=(const byte) KEY_CRSR_DOWN#0) goto form_control::@4 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ) -- vbuz1_neq_vbuc1_then_la1 lda key_event cmp #KEY_CRSR_DOWN bne b4 - jmp b17 - //SEG197 form_control::@17 - b17: - //SEG198 [124] (byte~) form_control::$12 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_control::$12 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_control::$12 keyboard_modifiers#16 ] ) -- vbuz1=_deref_pbuz2_band_vbuc1 + jmp b18 + //SEG392 form_control::@18 + b18: + //SEG393 [223] (byte~) form_control::$12 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_control::$12 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_control::$12 ] ) -- vbuz1=_deref_pbuz2_band_vbuc1 lda #$7f ldy #0 and (field),y sta _12 - //SEG199 [125] *((byte*) form_control::field#0) ← (byte~) form_control::$12 [ form_field_idx#1 keyboard_events_size#18 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 keyboard_modifiers#16 ] ) -- _deref_pbuz1=vbuz2 + //SEG394 [224] *((byte*) form_control::field#0) ← (byte~) form_control::$12 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ) -- _deref_pbuz1=vbuz2 lda _12 ldy #0 sta (field),y - //SEG200 [126] (byte~) form_control::$13 ← (byte) keyboard_modifiers#16 & (const byte) KEY_MODIFIER_SHIFT#0 [ form_field_idx#1 keyboard_events_size#18 form_control::$13 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::$13 ] ) -- vbuz1=vbuz2_band_vbuc1 + //SEG395 [225] (byte~) form_control::$13 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::$13 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::$13 ] ) -- vbuz1=vbuz2_band_vbuc1 lda #KEY_MODIFIER_SHIFT and keyboard_modifiers sta _13 - //SEG201 [127] if((byte~) form_control::$13!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@5 [ form_field_idx#1 keyboard_events_size#18 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 ] ) -- vbuz1_neq_0_then_la1 + //SEG396 [226] if((byte~) form_control::$13!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@5 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ) -- vbuz1_neq_0_then_la1 lda _13 bne b5 - jmp b18 - //SEG202 form_control::@18 - b18: - //SEG203 [128] (byte) form_field_idx#34 ← ++ (byte) form_field_idx#1 [ keyboard_events_size#18 form_field_idx#34 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#34 ] ) -- vbuz1=_inc_vbuz1 + jmp b19 + //SEG397 form_control::@19 + b19: + //SEG398 [227] (byte) form_field_idx#43 ← ++ (byte) form_field_idx#28 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ) -- vbuz1=_inc_vbuz1 inc form_field_idx - //SEG204 [129] if((byte) form_field_idx#34!=(const byte) form_fields_cnt#0) goto form_control::@33 [ keyboard_events_size#18 form_field_idx#34 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#34 ] ) -- vbuz1_neq_vbuc1_then_la1 + //SEG399 [228] if((byte) form_field_idx#43!=(const byte) form_fields_cnt#0) goto form_control::@37 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ) -- vbuz1_neq_vbuc1_then_la1 lda form_field_idx cmp #form_fields_cnt - bne b33_from_b18 - //SEG205 [130] phi from form_control::@18 to form_control::@7 [phi:form_control::@18->form_control::@7] - b7_from_b18: - //SEG206 [130] phi (byte) form_field_idx#24 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_control::@18->form_control::@7#0] -- vbuz1=vbuc1 + bne b37_from_b19 + //SEG400 [229] phi from form_control::@19 to form_control::@7 [phi:form_control::@19->form_control::@7] + b7_from_b19: + //SEG401 [229] phi (byte) form_field_idx#32 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_control::@19->form_control::@7#0] -- vbuz1=vbuc1 lda #0 sta form_field_idx jmp b7 - //SEG207 form_control::@7 + //SEG402 form_control::@7 b7: - //SEG208 [131] phi from form_control::@7 to form_control::@return [phi:form_control::@7->form_control::@return] + //SEG403 [230] phi from form_control::@7 to form_control::@return [phi:form_control::@7->form_control::@return] breturn_from_b7: - //SEG209 [131] phi (byte) form_field_idx#14 = (byte) form_field_idx#24 [phi:form_control::@7->form_control::@return#0] -- register_copy - //SEG210 [131] phi (signed byte) form_cursor_count#12 = (const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 [phi:form_control::@7->form_control::@return#1] -- vbsz1=vbuc1 + //SEG404 [230] phi (byte) form_field_idx#18 = (byte) form_field_idx#32 [phi:form_control::@7->form_control::@return#0] -- register_copy + //SEG405 [230] phi (signed byte) form_cursor_count#16 = (const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 [phi:form_control::@7->form_control::@return#1] -- vbsz1=vbuc1 lda #FORM_CURSOR_BLINK/2 sta form_cursor_count + //SEG406 [230] phi (byte) form_control::return#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_control::@7->form_control::@return#2] -- vbuz1=vbuc1 + lda #0 + sta return_2 jmp breturn - //SEG211 [131] phi from form_control::@12 form_control::@4 to form_control::@return [phi:form_control::@12/form_control::@4->form_control::@return] - breturn_from_b12: - breturn_from_b4: - //SEG212 [131] phi (byte) form_field_idx#14 = (byte) form_field_idx#1 [phi:form_control::@12/form_control::@4->form_control::@return#0] -- register_copy - //SEG213 [131] phi (signed byte) form_cursor_count#12 = (signed byte) form_cursor_count#11 [phi:form_control::@12/form_control::@4->form_control::@return#1] -- register_copy - jmp breturn - //SEG214 form_control::@return + //SEG407 form_control::@return breturn: - //SEG215 [132] return [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ( main:2::form_control:19 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) + //SEG408 [231] return [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ) rts - //SEG216 [133] phi from form_control::@18 to form_control::@33 [phi:form_control::@18->form_control::@33] - b33_from_b18: - jmp b33 - //SEG217 form_control::@33 - b33: - //SEG218 [130] phi from form_control::@33 form_control::@34 to form_control::@7 [phi:form_control::@33/form_control::@34->form_control::@7] - b7_from_b33: - b7_from_b34: - //SEG219 [130] phi (byte) form_field_idx#24 = (byte) form_field_idx#34 [phi:form_control::@33/form_control::@34->form_control::@7#0] -- register_copy + //SEG409 [232] phi from form_control::@19 to form_control::@37 [phi:form_control::@19->form_control::@37] + b37_from_b19: + jmp b37 + //SEG410 form_control::@37 + b37: + //SEG411 [229] phi from form_control::@37 form_control::@38 to form_control::@7 [phi:form_control::@37/form_control::@38->form_control::@7] + b7_from_b37: + b7_from_b38: + //SEG412 [229] phi (byte) form_field_idx#32 = (byte) form_field_idx#43 [phi:form_control::@37/form_control::@38->form_control::@7#0] -- register_copy jmp b7 - //SEG220 form_control::@5 + //SEG413 form_control::@5 b5: - //SEG221 [134] (byte) form_field_idx#3 ← -- (byte) form_field_idx#1 [ keyboard_events_size#18 form_field_idx#3 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#3 ] ) -- vbuz1=_dec_vbuz1 + //SEG414 [233] (byte) form_field_idx#44 ← -- (byte) form_field_idx#28 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ) -- vbuz1=_dec_vbuz1 dec form_field_idx - //SEG222 [135] if((byte) form_field_idx#3!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@34 [ keyboard_events_size#18 form_field_idx#3 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#3 ] ) -- vbuz1_neq_vbuc1_then_la1 + //SEG415 [234] if((byte) form_field_idx#44!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@38 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ) -- vbuz1_neq_vbuc1_then_la1 lda form_field_idx cmp #$ff - bne b34_from_b5 - //SEG223 [130] phi from form_control::@5 to form_control::@7 [phi:form_control::@5->form_control::@7] + bne b38_from_b5 + //SEG416 [229] phi from form_control::@5 to form_control::@7 [phi:form_control::@5->form_control::@7] b7_from_b5: - //SEG224 [130] phi (byte) form_field_idx#24 = (const byte) form_fields_cnt#0-(byte/signed byte/word/signed word/dword/signed dword) 1 [phi:form_control::@5->form_control::@7#0] -- vbuz1=vbuc1 + //SEG417 [229] phi (byte) form_field_idx#32 = (const byte) form_fields_cnt#0-(byte/signed byte/word/signed word/dword/signed dword) 1 [phi:form_control::@5->form_control::@7#0] -- vbuz1=vbuc1 lda #form_fields_cnt-1 sta form_field_idx jmp b7 - //SEG225 [136] phi from form_control::@5 to form_control::@34 [phi:form_control::@5->form_control::@34] - b34_from_b5: - jmp b34 - //SEG226 form_control::@34 - b34: - jmp b7_from_b34 - //SEG227 form_control::@4 + //SEG418 [235] phi from form_control::@5 to form_control::@38 [phi:form_control::@5->form_control::@38] + b38_from_b5: + jmp b38 + //SEG419 form_control::@38 + b38: + jmp b7_from_b38 + //SEG420 form_control::@4 b4: - //SEG228 [137] if((byte) form_control::key_event#0!=(const byte) KEY_CRSR_RIGHT#0) goto form_control::@return [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 ] ) -- vbuz1_neq_vbuc1_then_la1 + //SEG421 [236] if((byte) form_control::key_event#0!=(const byte) KEY_CRSR_RIGHT#0) goto form_control::@9 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ) -- vbuz1_neq_vbuc1_then_la1 lda key_event cmp #KEY_CRSR_RIGHT - bne breturn_from_b4 - jmp b23 - //SEG229 form_control::@23 - b23: - //SEG230 [138] (byte~) form_control::$24 ← (byte) keyboard_modifiers#16 & (const byte) KEY_MODIFIER_SHIFT#0 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::$24 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::$24 ] ) -- vbuz1=vbuz2_band_vbuc1 + bne b9 + jmp b24 + //SEG422 form_control::@24 + b24: + //SEG423 [237] (byte~) form_control::$24 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$24 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$24 ] ) -- vbuz1=vbuz2_band_vbuc1 lda #KEY_MODIFIER_SHIFT and keyboard_modifiers sta _24 - //SEG231 [139] if((byte~) form_control::$24!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@10 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) -- vbuz1_neq_0_then_la1 + //SEG424 [238] if((byte~) form_control::$24!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@10 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- vbuz1_neq_0_then_la1 lda _24 bne b10 - jmp b24 - //SEG232 form_control::@24 - b24: - //SEG233 [140] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← ++ *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) -- pbuc1_derefidx_vbuz1=_inc_pbuc1_derefidx_vbuz1 + jmp b25 + //SEG425 form_control::@25 + b25: + //SEG426 [239] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← ++ *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- pbuc1_derefidx_vbuz1=_inc_pbuc1_derefidx_vbuz1 ldx form_field_idx inc form_fields_val,x - //SEG234 [141] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#1)<=*((const byte[]) form_fields_max#0 + (byte) form_field_idx#1)) goto form_control::@12 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) -- pbuc1_derefidx_vbuz1_le_pbuc2_derefidx_vbuz1_then_la1 + //SEG427 [240] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)<=*((const byte[]) form_fields_max#0 + (byte) form_field_idx#28)) goto form_control::@12 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- pbuc1_derefidx_vbuz1_le_pbuc2_derefidx_vbuz1_then_la1 ldy form_field_idx lda form_fields_val,y cmp form_fields_max,y bcc b12 beq b12 - jmp b25 - //SEG235 form_control::@25 - b25: - //SEG236 [142] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) -- pbuc1_derefidx_vbuz1=vbuc2 + jmp b26 + //SEG428 form_control::@26 + b26: + //SEG429 [241] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- pbuc1_derefidx_vbuz1=vbuc2 ldy form_field_idx lda #0 sta form_fields_val,y jmp b12 - //SEG237 form_control::@12 + //SEG430 form_control::@12 b12: - //SEG238 [143] *((byte*) form_control::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1)) [ form_field_idx#1 keyboard_events_size#18 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_cursor_count#11 ] ) -- _deref_pbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuz2 + //SEG431 [242] *((byte*) form_control::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ) -- _deref_pbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuz2 ldy form_field_idx lda form_fields_val,y tay lda print_hextab,y ldy #0 sta (field),y - jmp breturn_from_b12 - //SEG239 form_control::@10 + //SEG432 [230] phi from form_control::@12 form_control::@39 to form_control::@return [phi:form_control::@12/form_control::@39->form_control::@return] + breturn_from_b12: + breturn_from_b39: + //SEG433 [230] phi (byte) form_field_idx#18 = (byte) form_field_idx#28 [phi:form_control::@12/form_control::@39->form_control::@return#0] -- register_copy + //SEG434 [230] phi (signed byte) form_cursor_count#16 = (signed byte) form_cursor_count#15 [phi:form_control::@12/form_control::@39->form_control::@return#1] -- register_copy + //SEG435 [230] phi (byte) form_control::return#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_control::@12/form_control::@39->form_control::@return#2] -- vbuz1=vbuc1 + lda #0 + sta return_2 + jmp breturn + //SEG436 form_control::@10 b10: - //SEG240 [144] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← -- *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) -- pbuc1_derefidx_vbuz1=_dec_pbuc1_derefidx_vbuz1 + //SEG437 [243] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← -- *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- pbuc1_derefidx_vbuz1=_dec_pbuc1_derefidx_vbuz1 ldx form_field_idx lda form_fields_val,x sec sbc #1 ldx form_field_idx sta form_fields_val,x - //SEG241 [145] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#1)!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@12 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) -- pbuc1_derefidx_vbuz1_neq_vbuc2_then_la1 + //SEG438 [244] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@12 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- pbuc1_derefidx_vbuz1_neq_vbuc2_then_la1 ldy form_field_idx lda form_fields_val,y cmp #$ff bne b12 - jmp b27 - //SEG242 form_control::@27 - b27: - //SEG243 [146] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← *((const byte[]) form_fields_max#0 + (byte) form_field_idx#1) [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 + jmp b28 + //SEG439 form_control::@28 + b28: + //SEG440 [245] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← *((const byte[]) form_fields_max#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 ldy form_field_idx lda form_fields_max,y sta form_fields_val,y jmp b12 - //SEG244 form_control::@2 + //SEG441 form_control::@9 + b9: + //SEG442 [246] if((byte) form_control::key_event#0!=(const byte) KEY_SPACE#0) goto form_control::@39 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ) -- vbuz1_neq_vbuc1_then_la1 + lda key_event + cmp #KEY_SPACE + bne b39_from_b9 + //SEG443 [230] phi from form_control::@9 to form_control::@return [phi:form_control::@9->form_control::@return] + breturn_from_b9: + //SEG444 [230] phi (byte) form_field_idx#18 = (byte) form_field_idx#28 [phi:form_control::@9->form_control::@return#0] -- register_copy + //SEG445 [230] phi (signed byte) form_cursor_count#16 = (signed byte) form_cursor_count#15 [phi:form_control::@9->form_control::@return#1] -- register_copy + //SEG446 [230] phi (byte) form_control::return#2 = (byte/word/signed word/dword/signed dword) 255 [phi:form_control::@9->form_control::@return#2] -- vbuz1=vbuc1 + lda #$ff + sta return_2 + jmp breturn + //SEG447 [247] phi from form_control::@9 to form_control::@39 [phi:form_control::@9->form_control::@39] + b39_from_b9: + jmp b39 + //SEG448 form_control::@39 + b39: + jmp breturn_from_b39 + //SEG449 form_control::@2 b2: - //SEG245 [147] (byte~) form_control::$7 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$7 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$7 ] ) -- vbuz1=_deref_pbuz2_band_vbuc1 + //SEG450 [248] (byte~) form_control::$7 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$7 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$7 ] ) -- vbuz1=_deref_pbuz2_band_vbuc1 lda #$7f ldy #0 and (field),y sta _7 - //SEG246 [148] *((byte*) form_control::field#0) ← (byte~) form_control::$7 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ) -- _deref_pbuz1=vbuz2 + //SEG451 [249] *((byte*) form_control::field#0) ← (byte~) form_control::$7 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- _deref_pbuz1=vbuz2 lda _7 ldy #0 sta (field),y jmp b3_from_b2 - //SEG247 [149] phi from form_control::@29 to form_control::@32 [phi:form_control::@29->form_control::@32] - b32_from_b29: - jmp b32 - //SEG248 form_control::@32 - b32: - //SEG249 [113] phi from form_control::@32 to form_control::@1 [phi:form_control::@32->form_control::@1] - b1_from_b32: - //SEG250 [113] phi (signed byte) form_cursor_count#11 = (signed byte) form_cursor_count#3 [phi:form_control::@32->form_control::@1#0] -- register_copy + //SEG452 [250] phi from form_control::@33 to form_control::@36 [phi:form_control::@33->form_control::@36] + b36_from_b33: + jmp b36 + //SEG453 form_control::@36 + b36: + //SEG454 [212] phi from form_control::@36 to form_control::@1 [phi:form_control::@36->form_control::@1] + b1_from_b36: + //SEG455 [212] phi (signed byte) form_cursor_count#15 = (signed byte) form_cursor_count#5 [phi:form_control::@36->form_control::@1#0] -- register_copy jmp b1 } -//SEG251 keyboard_event_get -keyboard_event_get: { - .label return = 8 - .label return_3 = $55 - //SEG252 [150] if((byte) keyboard_events_size#15!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_get::@1 [ keyboard_events_size#15 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ) -- vbuz1_neq_0_then_la1 - lda keyboard_events_size - bne b1 - //SEG253 [151] phi from keyboard_event_get to keyboard_event_get::@return [phi:keyboard_event_get->keyboard_event_get::@return] - breturn_from_keyboard_event_get: - //SEG254 [151] phi (byte) keyboard_events_size#18 = (byte) keyboard_events_size#15 [phi:keyboard_event_get->keyboard_event_get::@return#0] -- register_copy - //SEG255 [151] phi (byte) keyboard_event_get::return#2 = (byte/word/signed word/dword/signed dword) 255 [phi:keyboard_event_get->keyboard_event_get::@return#1] -- vbuz1=vbuc1 - lda #$ff - sta return - jmp breturn - //SEG256 keyboard_event_get::@return - breturn: - //SEG257 [152] return [ keyboard_events_size#18 keyboard_event_get::return#2 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#18 keyboard_event_get::return#2 ] ) - rts - //SEG258 keyboard_event_get::@1 - b1: - //SEG259 [153] (byte) keyboard_events_size#4 ← -- (byte) keyboard_events_size#15 [ keyboard_events_size#4 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#4 ] ) -- vbuz1=_dec_vbuz1 - dec keyboard_events_size - //SEG260 [154] (byte) keyboard_event_get::return#0 ← *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) [ keyboard_event_get::return#0 keyboard_events_size#4 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_event_get::return#0 keyboard_events_size#4 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 - ldy keyboard_events_size - lda keyboard_events,y - sta return - //SEG261 [151] phi from keyboard_event_get::@1 to keyboard_event_get::@return [phi:keyboard_event_get::@1->keyboard_event_get::@return] - breturn_from_b1: - //SEG262 [151] phi (byte) keyboard_events_size#18 = (byte) keyboard_events_size#4 [phi:keyboard_event_get::@1->keyboard_event_get::@return#0] -- register_copy - //SEG263 [151] phi (byte) keyboard_event_get::return#2 = (byte) keyboard_event_get::return#0 [phi:keyboard_event_get::@1->keyboard_event_get::@return#1] -- register_copy - jmp breturn -} -//SEG264 keyboard_event_scan -keyboard_event_scan: { - .label _3 = $5e - .label _4 = $5f - .label _12 = $61 - .label _16 = $63 - .label _20 = $65 - .label _24 = $67 - .label _28 = $69 - .label row_scan = $5d - .label keycode = $b - .label col = $a - .label event_type = $60 - .label row = 9 - //SEG265 [156] phi from keyboard_event_scan to keyboard_event_scan::@1 [phi:keyboard_event_scan->keyboard_event_scan::@1] - b1_from_keyboard_event_scan: - //SEG266 [156] phi (byte) keyboard_events_size#37 = (byte) keyboard_events_size#20 [phi:keyboard_event_scan->keyboard_event_scan::@1#0] -- register_copy - //SEG267 [156] phi (byte) keyboard_event_scan::keycode#11 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:keyboard_event_scan->keyboard_event_scan::@1#1] -- vbuz1=vbuc1 - lda #0 - sta keycode - //SEG268 [156] phi (byte) keyboard_event_scan::row#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:keyboard_event_scan->keyboard_event_scan::@1#2] -- vbuz1=vbuc1 - lda #0 - sta row - jmp b1 - //SEG269 [156] phi from keyboard_event_scan::@8 to keyboard_event_scan::@1 [phi:keyboard_event_scan::@8->keyboard_event_scan::@1] - b1_from_b8: - //SEG270 [156] phi (byte) keyboard_events_size#37 = (byte) keyboard_events_size#15 [phi:keyboard_event_scan::@8->keyboard_event_scan::@1#0] -- register_copy - //SEG271 [156] phi (byte) keyboard_event_scan::keycode#11 = (byte) keyboard_event_scan::keycode#14 [phi:keyboard_event_scan::@8->keyboard_event_scan::@1#1] -- register_copy - //SEG272 [156] phi (byte) keyboard_event_scan::row#2 = (byte) keyboard_event_scan::row#1 [phi:keyboard_event_scan::@8->keyboard_event_scan::@1#2] -- register_copy - jmp b1 - //SEG273 keyboard_event_scan::@1 - b1: - //SEG274 [157] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_event_scan::row#2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::rowid#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::rowid#0 ] ) -- vbuz1=vbuz2 - lda row - sta keyboard_matrix_read.rowid - //SEG275 [158] call keyboard_matrix_read param-assignment [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#0 ] ) - jsr keyboard_matrix_read - //SEG276 [159] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#2 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#2 ] ) -- vbuz1=vbuz2 - lda keyboard_matrix_read.return - sta keyboard_matrix_read.return_2 - jmp b25 - //SEG277 keyboard_event_scan::@25 - b25: - //SEG278 [160] (byte) keyboard_event_scan::row_scan#0 ← (byte) keyboard_matrix_read::return#2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_event_scan::row_scan#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_event_scan::row_scan#0 ] ) -- vbuz1=vbuz2 - lda keyboard_matrix_read.return_2 - sta row_scan - //SEG279 [161] if((byte) keyboard_event_scan::row_scan#0==*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_event_scan::row_scan#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_event_scan::row_scan#0 ] ) -- vbuz1_eq_pbuc1_derefidx_vbuz2_then_la1 - ldy row - lda keyboard_scan_values,y - cmp row_scan - beq b2 - //SEG280 [162] phi from keyboard_event_scan::@25 to keyboard_event_scan::@3 [phi:keyboard_event_scan::@25->keyboard_event_scan::@3] - b3_from_b25: - //SEG281 [162] phi (byte) keyboard_events_size#12 = (byte) keyboard_events_size#37 [phi:keyboard_event_scan::@25->keyboard_event_scan::@3#0] -- register_copy - //SEG282 [162] phi (byte) keyboard_event_scan::keycode#10 = (byte) keyboard_event_scan::keycode#11 [phi:keyboard_event_scan::@25->keyboard_event_scan::@3#1] -- register_copy - //SEG283 [162] phi (byte) keyboard_event_scan::col#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:keyboard_event_scan::@25->keyboard_event_scan::@3#2] -- vbuz1=vbuc1 - lda #0 - sta col - jmp b3 - //SEG284 [162] phi from keyboard_event_scan::@4 to keyboard_event_scan::@3 [phi:keyboard_event_scan::@4->keyboard_event_scan::@3] - b3_from_b4: - //SEG285 [162] phi (byte) keyboard_events_size#12 = (byte) keyboard_events_size#38 [phi:keyboard_event_scan::@4->keyboard_event_scan::@3#0] -- register_copy - //SEG286 [162] phi (byte) keyboard_event_scan::keycode#10 = (byte) keyboard_event_scan::keycode#15 [phi:keyboard_event_scan::@4->keyboard_event_scan::@3#1] -- register_copy - //SEG287 [162] phi (byte) keyboard_event_scan::col#2 = (byte) keyboard_event_scan::col#1 [phi:keyboard_event_scan::@4->keyboard_event_scan::@3#2] -- register_copy - jmp b3 - //SEG288 keyboard_event_scan::@3 - b3: - //SEG289 [163] (byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$3 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$3 ] ) -- vbuz1=vbuz2_bxor_pbuc1_derefidx_vbuz3 - lda row_scan - ldy row - eor keyboard_scan_values,y - sta _3 - //SEG290 [164] (byte~) keyboard_event_scan::$4 ← (byte~) keyboard_event_scan::$3 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$4 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$4 ] ) -- vbuz1=vbuz2_band_pbuc1_derefidx_vbuz3 - lda _3 - ldy col - and keyboard_matrix_col_bitmask,y - sta _4 - //SEG291 [165] if((byte~) keyboard_event_scan::$4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@4 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) -- vbuz1_eq_0_then_la1 - lda _4 - beq b4_from_b3 - jmp b14 - //SEG292 keyboard_event_scan::@14 - b14: - //SEG293 [166] if((byte) keyboard_events_size#12==(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@4 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) -- vbuz1_eq_vbuc1_then_la1 - lda keyboard_events_size - cmp #8 - beq b4_from_b14 - jmp b15 - //SEG294 keyboard_event_scan::@15 - b15: - //SEG295 [167] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::event_type#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::event_type#0 ] ) -- vbuz1=vbuz2_band_pbuc1_derefidx_vbuz3 - lda row_scan - ldy col - and keyboard_matrix_col_bitmask,y - sta event_type - //SEG296 [168] if((byte) keyboard_event_scan::event_type#0!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@6 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) -- vbuz1_neq_0_then_la1 - lda event_type - bne b6 - jmp b16 - //SEG297 keyboard_event_scan::@16 - b16: - //SEG298 [169] (byte/word/dword~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) 64 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$12 ] ) -- vbuz1=vbuz2_bor_vbuc1 - lda #$40 - ora keycode - sta _12 - //SEG299 [170] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#12) ← (byte/word/dword~) keyboard_event_scan::$12 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) -- pbuc1_derefidx_vbuz1=vbuz2 - lda _12 - ldy keyboard_events_size - sta keyboard_events,y - //SEG300 [171] (byte) keyboard_events_size#2 ← ++ (byte) keyboard_events_size#12 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#2 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#2 ] ) -- vbuz1=_inc_vbuz1 - inc keyboard_events_size - //SEG301 [172] phi from keyboard_event_scan::@14 keyboard_event_scan::@16 keyboard_event_scan::@3 keyboard_event_scan::@6 to keyboard_event_scan::@4 [phi:keyboard_event_scan::@14/keyboard_event_scan::@16/keyboard_event_scan::@3/keyboard_event_scan::@6->keyboard_event_scan::@4] - b4_from_b14: - b4_from_b16: - b4_from_b3: - b4_from_b6: - //SEG302 [172] phi (byte) keyboard_events_size#38 = (byte) keyboard_events_size#12 [phi:keyboard_event_scan::@14/keyboard_event_scan::@16/keyboard_event_scan::@3/keyboard_event_scan::@6->keyboard_event_scan::@4#0] -- register_copy - jmp b4 - //SEG303 keyboard_event_scan::@4 - b4: - //SEG304 [173] (byte) keyboard_event_scan::keycode#15 ← ++ (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ) -- vbuz1=_inc_vbuz1 - inc keycode - //SEG305 [174] (byte) keyboard_event_scan::col#1 ← ++ (byte) keyboard_event_scan::col#2 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ) -- vbuz1=_inc_vbuz1 - inc col - //SEG306 [175] if((byte) keyboard_event_scan::col#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@3 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ) -- vbuz1_neq_vbuc1_then_la1 - lda col - cmp #8 - bne b3_from_b4 - jmp b18 - //SEG307 keyboard_event_scan::@18 - b18: - //SEG308 [176] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ) -- pbuc1_derefidx_vbuz1=vbuz2 - lda row_scan - ldy row - sta keyboard_scan_values,y - //SEG309 [177] phi from keyboard_event_scan::@18 keyboard_event_scan::@2 to keyboard_event_scan::@8 [phi:keyboard_event_scan::@18/keyboard_event_scan::@2->keyboard_event_scan::@8] - b8_from_b18: - b8_from_b2: - //SEG310 [177] phi (byte) keyboard_events_size#15 = (byte) keyboard_events_size#38 [phi:keyboard_event_scan::@18/keyboard_event_scan::@2->keyboard_event_scan::@8#0] -- register_copy - //SEG311 [177] phi (byte) keyboard_event_scan::keycode#14 = (byte) keyboard_event_scan::keycode#15 [phi:keyboard_event_scan::@18/keyboard_event_scan::@2->keyboard_event_scan::@8#1] -- register_copy - jmp b8 - //SEG312 keyboard_event_scan::@8 - b8: - //SEG313 [178] (byte) keyboard_event_scan::row#1 ← ++ (byte) keyboard_event_scan::row#2 [ keyboard_events_size#15 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ) -- vbuz1=_inc_vbuz1 - inc row - //SEG314 [179] if((byte) keyboard_event_scan::row#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@1 [ keyboard_events_size#15 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ) -- vbuz1_neq_vbuc1_then_la1 - lda row - cmp #8 - bne b1_from_b8 - //SEG315 [180] phi from keyboard_event_scan::@8 to keyboard_event_scan::@20 [phi:keyboard_event_scan::@8->keyboard_event_scan::@20] - b20_from_b8: - jmp b20 - //SEG316 keyboard_event_scan::@20 - b20: - //SEG317 [181] call keyboard_event_pressed param-assignment [ keyboard_events_size#15 keyboard_event_pressed::return#10 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 ] ) - //SEG318 [209] phi from keyboard_event_scan::@20 to keyboard_event_pressed [phi:keyboard_event_scan::@20->keyboard_event_pressed] - keyboard_event_pressed_from_b20: - //SEG319 [209] phi (byte) keyboard_event_pressed::keycode#4 = (const byte) KEY_LSHIFT#0 [phi:keyboard_event_scan::@20->keyboard_event_pressed#0] -- vbuz1=vbuc1 - lda #KEY_LSHIFT - sta keyboard_event_pressed.keycode - jsr keyboard_event_pressed - //SEG320 [182] (byte) keyboard_event_pressed::return#0 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#15 keyboard_event_pressed::return#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#0 ] ) -- vbuz1=vbuz2 - lda keyboard_event_pressed.return_10 - sta keyboard_event_pressed.return - jmp b26 - //SEG321 keyboard_event_scan::@26 - b26: - //SEG322 [183] (byte~) keyboard_event_scan::$16 ← (byte) keyboard_event_pressed::return#0 [ keyboard_events_size#15 keyboard_event_scan::$16 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_scan::$16 ] ) -- vbuz1=vbuz2 - lda keyboard_event_pressed.return - sta _16 - //SEG323 [184] if((byte~) keyboard_event_scan::$16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@9 [ keyboard_events_size#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 ] ) -- vbuz1_eq_0_then_la1 - lda _16 - beq b9_from_b26 - //SEG324 [185] phi from keyboard_event_scan::@26 to keyboard_event_scan::@21 [phi:keyboard_event_scan::@26->keyboard_event_scan::@21] - b21_from_b26: - jmp b21 - //SEG325 keyboard_event_scan::@21 - b21: - //SEG326 [186] phi from keyboard_event_scan::@21 to keyboard_event_scan::@9 [phi:keyboard_event_scan::@21->keyboard_event_scan::@9] - b9_from_b21: - //SEG327 [186] phi (byte) keyboard_modifiers#13 = (byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) KEY_MODIFIER_LSHIFT#0 [phi:keyboard_event_scan::@21->keyboard_event_scan::@9#0] -- vbuz1=vbuc1 - lda #0|KEY_MODIFIER_LSHIFT - sta keyboard_modifiers - jmp b9 - //SEG328 [186] phi from keyboard_event_scan::@26 to keyboard_event_scan::@9 [phi:keyboard_event_scan::@26->keyboard_event_scan::@9] - b9_from_b26: - //SEG329 [186] phi (byte) keyboard_modifiers#13 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:keyboard_event_scan::@26->keyboard_event_scan::@9#0] -- vbuz1=vbuc1 - lda #0 - sta keyboard_modifiers - jmp b9 - //SEG330 keyboard_event_scan::@9 - b9: - //SEG331 [187] call keyboard_event_pressed param-assignment [ keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#13 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#13 ] ) - //SEG332 [209] phi from keyboard_event_scan::@9 to keyboard_event_pressed [phi:keyboard_event_scan::@9->keyboard_event_pressed] - keyboard_event_pressed_from_b9: - //SEG333 [209] phi (byte) keyboard_event_pressed::keycode#4 = (const byte) KEY_RSHIFT#0 [phi:keyboard_event_scan::@9->keyboard_event_pressed#0] -- vbuz1=vbuc1 - lda #KEY_RSHIFT - sta keyboard_event_pressed.keycode - jsr keyboard_event_pressed - //SEG334 [188] (byte) keyboard_event_pressed::return#1 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::return#1 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::return#1 ] ) -- vbuz1=vbuz2 - lda keyboard_event_pressed.return_10 - sta keyboard_event_pressed.return_1 - jmp b27 - //SEG335 keyboard_event_scan::@27 - b27: - //SEG336 [189] (byte~) keyboard_event_scan::$20 ← (byte) keyboard_event_pressed::return#1 [ keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_scan::$20 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_scan::$20 ] ) -- vbuz1=vbuz2 - lda keyboard_event_pressed.return_1 - sta _20 - //SEG337 [190] if((byte~) keyboard_event_scan::$20==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@10 [ keyboard_events_size#15 keyboard_modifiers#13 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 ] ) -- vbuz1_eq_0_then_la1 - lda _20 - beq b10_from_b27 - jmp b22 - //SEG338 keyboard_event_scan::@22 - b22: - //SEG339 [191] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#13 | (const byte) KEY_MODIFIER_RSHIFT#0 [ keyboard_events_size#15 keyboard_modifiers#3 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#3 ] ) -- vbuz1=vbuz1_bor_vbuc1 - lda #KEY_MODIFIER_RSHIFT - ora keyboard_modifiers - sta keyboard_modifiers - //SEG340 [192] phi from keyboard_event_scan::@22 keyboard_event_scan::@27 to keyboard_event_scan::@10 [phi:keyboard_event_scan::@22/keyboard_event_scan::@27->keyboard_event_scan::@10] - b10_from_b22: - b10_from_b27: - //SEG341 [192] phi (byte) keyboard_modifiers#14 = (byte) keyboard_modifiers#3 [phi:keyboard_event_scan::@22/keyboard_event_scan::@27->keyboard_event_scan::@10#0] -- register_copy - jmp b10 - //SEG342 keyboard_event_scan::@10 - b10: - //SEG343 [193] call keyboard_event_pressed param-assignment [ keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#14 ] ) - //SEG344 [209] phi from keyboard_event_scan::@10 to keyboard_event_pressed [phi:keyboard_event_scan::@10->keyboard_event_pressed] - keyboard_event_pressed_from_b10: - //SEG345 [209] phi (byte) keyboard_event_pressed::keycode#4 = (const byte) KEY_CTRL#0 [phi:keyboard_event_scan::@10->keyboard_event_pressed#0] -- vbuz1=vbuc1 - lda #KEY_CTRL - sta keyboard_event_pressed.keycode - jsr keyboard_event_pressed - //SEG346 [194] (byte) keyboard_event_pressed::return#2 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::return#2 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::return#2 ] ) -- vbuz1=vbuz2 - lda keyboard_event_pressed.return_10 - sta keyboard_event_pressed.return_2 - jmp b28 - //SEG347 keyboard_event_scan::@28 - b28: - //SEG348 [195] (byte~) keyboard_event_scan::$24 ← (byte) keyboard_event_pressed::return#2 [ keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_scan::$24 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_scan::$24 ] ) -- vbuz1=vbuz2 - lda keyboard_event_pressed.return_2 - sta _24 - //SEG349 [196] if((byte~) keyboard_event_scan::$24==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@11 [ keyboard_events_size#15 keyboard_modifiers#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 ] ) -- vbuz1_eq_0_then_la1 - lda _24 - beq b11_from_b28 - jmp b23 - //SEG350 keyboard_event_scan::@23 - b23: - //SEG351 [197] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#14 | (const byte) KEY_MODIFIER_CTRL#0 [ keyboard_events_size#15 keyboard_modifiers#4 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#4 ] ) -- vbuz1=vbuz1_bor_vbuc1 - lda #KEY_MODIFIER_CTRL - ora keyboard_modifiers - sta keyboard_modifiers - //SEG352 [198] phi from keyboard_event_scan::@23 keyboard_event_scan::@28 to keyboard_event_scan::@11 [phi:keyboard_event_scan::@23/keyboard_event_scan::@28->keyboard_event_scan::@11] - b11_from_b23: - b11_from_b28: - //SEG353 [198] phi (byte) keyboard_modifiers#15 = (byte) keyboard_modifiers#4 [phi:keyboard_event_scan::@23/keyboard_event_scan::@28->keyboard_event_scan::@11#0] -- register_copy - jmp b11 - //SEG354 keyboard_event_scan::@11 - b11: - //SEG355 [199] call keyboard_event_pressed param-assignment [ keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#15 ] ) - //SEG356 [209] phi from keyboard_event_scan::@11 to keyboard_event_pressed [phi:keyboard_event_scan::@11->keyboard_event_pressed] - keyboard_event_pressed_from_b11: - //SEG357 [209] phi (byte) keyboard_event_pressed::keycode#4 = (const byte) KEY_COMMODORE#0 [phi:keyboard_event_scan::@11->keyboard_event_pressed#0] -- vbuz1=vbuc1 - lda #KEY_COMMODORE - sta keyboard_event_pressed.keycode - jsr keyboard_event_pressed - //SEG358 [200] (byte) keyboard_event_pressed::return#3 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::return#3 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::return#3 ] ) -- vbuz1=vbuz2 - lda keyboard_event_pressed.return_10 - sta keyboard_event_pressed.return_3 - jmp b29 - //SEG359 keyboard_event_scan::@29 - b29: - //SEG360 [201] (byte~) keyboard_event_scan::$28 ← (byte) keyboard_event_pressed::return#3 [ keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_scan::$28 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_scan::$28 ] ) -- vbuz1=vbuz2 - lda keyboard_event_pressed.return_3 - sta _28 - //SEG361 [202] if((byte~) keyboard_event_scan::$28==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@return [ keyboard_events_size#15 keyboard_modifiers#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 ] ) -- vbuz1_eq_0_then_la1 - lda _28 - beq breturn_from_b29 - jmp b24 - //SEG362 keyboard_event_scan::@24 - b24: - //SEG363 [203] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#15 | (const byte) KEY_MODIFIER_COMMODORE#0 [ keyboard_events_size#15 keyboard_modifiers#5 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#5 ] ) -- vbuz1=vbuz1_bor_vbuc1 - lda #KEY_MODIFIER_COMMODORE - ora keyboard_modifiers - sta keyboard_modifiers - //SEG364 [204] phi from keyboard_event_scan::@24 keyboard_event_scan::@29 to keyboard_event_scan::@return [phi:keyboard_event_scan::@24/keyboard_event_scan::@29->keyboard_event_scan::@return] - breturn_from_b24: - breturn_from_b29: - //SEG365 [204] phi (byte) keyboard_modifiers#16 = (byte) keyboard_modifiers#5 [phi:keyboard_event_scan::@24/keyboard_event_scan::@29->keyboard_event_scan::@return#0] -- register_copy - jmp breturn - //SEG366 keyboard_event_scan::@return - breturn: - //SEG367 [205] return [ keyboard_modifiers#16 keyboard_events_size#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ) - rts - //SEG368 keyboard_event_scan::@6 - b6: - //SEG369 [206] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#12) ← (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) -- pbuc1_derefidx_vbuz1=vbuz2 - lda keycode - ldy keyboard_events_size - sta keyboard_events,y - //SEG370 [207] (byte) keyboard_events_size#1 ← ++ (byte) keyboard_events_size#12 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#1 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#1 ] ) -- vbuz1=_inc_vbuz1 - inc keyboard_events_size - jmp b4_from_b6 - //SEG371 keyboard_event_scan::@2 - b2: - //SEG372 [208] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ keyboard_event_scan::row#2 keyboard_events_size#37 keyboard_event_scan::keycode#1 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_events_size#37 keyboard_event_scan::keycode#1 ] ) -- vbuz1=vbuz1_plus_vbuc1 - lda #8 - clc - adc keycode - sta keycode - jmp b8_from_b2 -} -//SEG373 keyboard_event_pressed -keyboard_event_pressed: { - .label _0 = $6a - .label _1 = $6c - .label return = $62 - .label return_1 = $64 - .label return_2 = $66 - .label return_3 = $68 - .label row_bits = $6b - .label keycode = $e - .label return_10 = $6d - //SEG374 [210] (byte~) keyboard_event_pressed::$0 ← (byte) keyboard_event_pressed::keycode#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ) -- vbuz1=vbuz2_ror_3 - lda keycode - lsr - lsr - lsr - sta _0 - //SEG375 [211] (byte) keyboard_event_pressed::row_bits#0 ← *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) [ keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 - ldy _0 - lda keyboard_scan_values,y - sta row_bits - //SEG376 [212] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ) -- vbuz1=vbuz2_band_vbuc1 - lda #7 - and keycode - sta _1 - //SEG377 [213] (byte) keyboard_event_pressed::return#10 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) [ keyboard_event_pressed::return#10 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::return#10 ] ) -- vbuz1=vbuz2_band_pbuc1_derefidx_vbuz3 - lda row_bits - ldy _1 - and keyboard_matrix_col_bitmask,y - sta return_10 - jmp breturn - //SEG378 keyboard_event_pressed::@return - breturn: - //SEG379 [214] return [ keyboard_event_pressed::return#10 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::return#10 ] ) - rts -} -//SEG380 keyboard_matrix_read -keyboard_matrix_read: { - .label return = $6e - .label rowid = $5b - .label return_2 = $5c - //SEG381 [215] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_matrix_read:158 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 ] ) -- _deref_pbuc1=pbuc2_derefidx_vbuz1 - ldy rowid - lda keyboard_matrix_row_bitmask,y - sta CIA1_PORT_A - //SEG382 [216] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_matrix_read:158 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#0 ] ) -- vbuz1=_bnot__deref_pbuc1 - lda CIA1_PORT_B - eor #$ff - sta return - jmp breturn - //SEG383 keyboard_matrix_read::@return - breturn: - //SEG384 [217] return [ keyboard_matrix_read::return#0 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_matrix_read:158 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#0 ] ) - rts -} -//SEG385 form_field_ptr +//SEG456 form_field_ptr form_field_ptr: { - .label y = $6f - .label x = $72 - .label return = $73 - .label field_idx = $f - .label return_2 = $75 - .label return_3 = $50 - .label _2 = $70 - //SEG386 [219] (byte) form_field_ptr::y#0 ← *((const byte[]) form_fields_y#0 + (byte) form_field_ptr::field_idx#2) [ form_field_ptr::field_idx#2 form_field_ptr::y#0 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::field_idx#2 form_field_ptr::y#0 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::y#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 + .label y = $7a + .label x = $7d + .label return = $7e + .label field_idx = $11 + .label return_2 = $80 + .label return_3 = $6f + .label _2 = $7b + //SEG457 [252] (byte) form_field_ptr::y#0 ← *((const byte[]) form_fields_y#0 + (byte) form_field_ptr::field_idx#2) [ form_field_ptr::field_idx#2 form_field_ptr::y#0 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#2 form_field_ptr::y#0 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::y#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 ldy field_idx lda form_fields_y,y sta y - //SEG387 [220] (word~) form_field_ptr::$2 ← *((const byte[25]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[25]) form_line_lo#0 + (byte) form_field_ptr::y#0) [ form_field_ptr::field_idx#2 form_field_ptr::$2 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::field_idx#2 form_field_ptr::$2 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::$2 ] ) -- vwuz1=pbuc1_derefidx_vbuz2_word_pbuc2_derefidx_vbuz2 + //SEG458 [253] (word~) form_field_ptr::$2 ← *((const byte[25]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[25]) form_line_lo#0 + (byte) form_field_ptr::y#0) [ form_field_ptr::field_idx#2 form_field_ptr::$2 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#2 form_field_ptr::$2 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::$2 ] ) -- vwuz1=pbuc1_derefidx_vbuz2_word_pbuc2_derefidx_vbuz2 ldy y lda form_line_hi,y sta _2+1 lda form_line_lo,y sta _2 - //SEG388 [221] (byte) form_field_ptr::x#0 ← *((const byte[]) form_fields_x#0 + (byte) form_field_ptr::field_idx#2) [ form_field_ptr::$2 form_field_ptr::x#0 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::$2 form_field_ptr::x#0 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::$2 form_field_ptr::x#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG459 [254] (byte) form_field_ptr::x#0 ← *((const byte[]) form_fields_x#0 + (byte) form_field_ptr::field_idx#2) [ form_field_ptr::$2 form_field_ptr::x#0 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::$2 form_field_ptr::x#0 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::$2 form_field_ptr::x#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 ldy field_idx lda form_fields_x,y sta x - //SEG389 [222] (byte*) form_field_ptr::return#0 ← (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 [ form_field_ptr::return#0 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#0 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::return#0 ] ) -- pbuz1=pbuz2_plus_vbuz3 + //SEG460 [255] (byte*) form_field_ptr::return#0 ← (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 [ form_field_ptr::return#0 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::return#0 ] ) -- pbuz1=pbuz2_plus_vbuz3 lda x clc adc _2 @@ -11681,251 +13208,197 @@ form_field_ptr: { adc _2+1 sta return+1 jmp breturn - //SEG390 form_field_ptr::@return + //SEG461 form_field_ptr::@return breturn: - //SEG391 [223] return [ form_field_ptr::return#0 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#0 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::return#0 ] ) + //SEG462 [256] return [ form_field_ptr::return#0 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::return#0 ] ) rts } -//SEG392 form_mode -form_mode: { - .label i = $10 - //SEG393 [224] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) 65536 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #($ffffffff&FORM_CHARSET)/$10000 - sta DTV_GRAPHICS_VIC_BANK - //SEG394 [225] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #DTV_COLOR_BANK_DEFAULT/$400 - sta DTV_COLOR_BANK_LO - //SEG395 [226] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #0 - sta DTV_COLOR_BANK_HI - //SEG396 [227] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #3 - sta CIA2_PORT_A_DDR - //SEG397 [228] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) 16384 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #3^FORM_CHARSET/$4000 - sta CIA2_PORT_A - //SEG398 [229] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #0 - sta DTV_CONTROL - //SEG399 [230] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #VIC_DEN|VIC_RSEL|3 - sta VIC_CONTROL - //SEG400 [231] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #VIC_CSEL - sta VIC_CONTROL2 - //SEG401 [232] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) 16383/(byte/signed byte/word/signed word/dword/signed dword) 64|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) 16383/(word/signed word/dword/signed dword) 1024 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #(FORM_SCREEN&$3fff)/$40|(FORM_CHARSET&$3fff)/$400 - sta VIC_MEMORY - //SEG402 [233] phi from form_mode to form_mode::@1 [phi:form_mode->form_mode::@1] - b1_from_form_mode: - //SEG403 [233] phi (byte) form_mode::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_mode->form_mode::@1#0] -- vbuz1=vbuc1 - lda #0 - sta i - jmp b1 - //SEG404 [233] phi from form_mode::@1 to form_mode::@1 [phi:form_mode::@1->form_mode::@1] - b1_from_b1: - //SEG405 [233] phi (byte) form_mode::i#2 = (byte) form_mode::i#1 [phi:form_mode::@1->form_mode::@1#0] -- register_copy - jmp b1 - //SEG406 form_mode::@1 - b1: - //SEG407 [234] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ← *((const byte[16]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) [ form_mode::i#2 ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_mode::i#2 ] ) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 - ldy i - lda DTV_PALETTE_DEFAULT,y - sta DTV_PALETTE,y - //SEG408 [235] (byte) form_mode::i#1 ← ++ (byte) form_mode::i#2 [ form_mode::i#1 ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_mode::i#1 ] ) -- vbuz1=_inc_vbuz1 - inc i - //SEG409 [236] if((byte) form_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto form_mode::@1 [ form_mode::i#1 ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_mode::i#1 ] ) -- vbuz1_neq_vbuc1_then_la1 - lda i - cmp #$10 - bne b1_from_b1 - jmp b2 - //SEG410 form_mode::@2 - b2: - //SEG411 [237] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #0 - sta BORDERCOL - //SEG412 [238] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #0 - sta BGCOL - jmp breturn - //SEG413 form_mode::@return - breturn: - //SEG414 [239] return [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - rts -} -//SEG415 form_init +//SEG463 form_init form_init: { - //SEG416 [241] call print_set_screen param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) - //SEG417 [294] phi from form_init to print_set_screen [phi:form_init->print_set_screen] + //SEG464 [258] call print_set_screen param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) + //SEG465 [322] phi from form_init to print_set_screen [phi:form_init->print_set_screen] print_set_screen_from_form_init: - //SEG418 [294] phi (byte*) print_set_screen::screen#2 = (const byte*) COLS#0+(const word) FORM_OFFSET#0 [phi:form_init->print_set_screen#0] -- pbuz1=pbuc1 - lda #print_set_screen#0] -- pbuz1=pbuc1 + lda #COLS+FORM_OFFSET + lda #>COLS sta print_set_screen.screen+1 jsr print_set_screen - //SEG419 [242] phi from form_init to form_init::@1 [phi:form_init->form_init::@1] + //SEG467 [259] phi from form_init to form_init::@1 [phi:form_init->form_init::@1] b1_from_form_init: jmp b1 - //SEG420 form_init::@1 + //SEG468 form_init::@1 b1: - //SEG421 [243] call print_str_lines param-assignment [ ] ( main:2::form_init:10 [ ] ) - //SEG422 [273] phi from form_init::@1 to print_str_lines [phi:form_init::@1->print_str_lines] - print_str_lines_from_b1: - //SEG423 [273] phi (byte*) print_str_lines::str#5 = (const string) FORM_COLS#0 [phi:form_init::@1->print_str_lines#0] -- pbuz1=pbuc1 + //SEG469 [260] call print_cls param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) + jsr print_cls + //SEG470 [261] phi from form_init::@1 to form_init::@2 [phi:form_init::@1->form_init::@2] + b2_from_b1: + jmp b2 + //SEG471 form_init::@2 + b2: + //SEG472 [262] call print_str_lines param-assignment [ ] ( main:2::form_init:10 [ ] ) + //SEG473 [294] phi from form_init::@2 to print_str_lines [phi:form_init::@2->print_str_lines] + print_str_lines_from_b2: + //SEG474 [294] phi (byte*) print_str_lines::str#5 = (const string) FORM_COLS#0 [phi:form_init::@2->print_str_lines#0] -- pbuz1=pbuc1 lda #FORM_COLS sta print_str_lines.str+1 jsr print_str_lines - //SEG424 [244] phi from form_init::@1 to form_init::@2 [phi:form_init::@1->form_init::@2] - b2_from_b1: - jmp b2 - //SEG425 form_init::@2 - b2: - //SEG426 [245] call print_set_screen param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) - //SEG427 [294] phi from form_init::@2 to print_set_screen [phi:form_init::@2->print_set_screen] - print_set_screen_from_b2: - //SEG428 [294] phi (byte*) print_set_screen::screen#2 = (const byte*) FORM_SCREEN#0+(const word) FORM_OFFSET#0 [phi:form_init::@2->print_set_screen#0] -- pbuz1=pbuc1 - lda #FORM_SCREEN+FORM_OFFSET - sta print_set_screen.screen+1 - jsr print_set_screen - //SEG429 [246] phi from form_init::@2 to form_init::@3 [phi:form_init::@2->form_init::@3] + //SEG475 [263] phi from form_init::@2 to form_init::@3 [phi:form_init::@2->form_init::@3] b3_from_b2: jmp b3 - //SEG430 form_init::@3 + //SEG476 form_init::@3 b3: - //SEG431 [247] call print_str_lines param-assignment [ ] ( main:2::form_init:10 [ ] ) - //SEG432 [273] phi from form_init::@3 to print_str_lines [phi:form_init::@3->print_str_lines] - print_str_lines_from_b3: - //SEG433 [273] phi (byte*) print_str_lines::str#5 = (const string) FORM_TEXT#0 [phi:form_init::@3->print_str_lines#0] -- pbuz1=pbuc1 + //SEG477 [264] call print_set_screen param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) + //SEG478 [322] phi from form_init::@3 to print_set_screen [phi:form_init::@3->print_set_screen] + print_set_screen_from_b3: + //SEG479 [322] phi (byte*) print_set_screen::screen#2 = (const byte*) FORM_SCREEN#0 [phi:form_init::@3->print_set_screen#0] -- pbuz1=pbuc1 + lda #FORM_SCREEN + sta print_set_screen.screen+1 + jsr print_set_screen + //SEG480 [265] phi from form_init::@3 to form_init::@4 [phi:form_init::@3->form_init::@4] + b4_from_b3: + jmp b4 + //SEG481 form_init::@4 + b4: + //SEG482 [266] call print_cls param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) + jsr print_cls + //SEG483 [267] phi from form_init::@4 to form_init::@5 [phi:form_init::@4->form_init::@5] + b5_from_b4: + jmp b5 + //SEG484 form_init::@5 + b5: + //SEG485 [268] call print_str_lines param-assignment [ ] ( main:2::form_init:10 [ ] ) + //SEG486 [294] phi from form_init::@5 to print_str_lines [phi:form_init::@5->print_str_lines] + print_str_lines_from_b5: + //SEG487 [294] phi (byte*) print_str_lines::str#5 = (const string) FORM_TEXT#0 [phi:form_init::@5->print_str_lines#0] -- pbuz1=pbuc1 lda #FORM_TEXT sta print_str_lines.str+1 jsr print_str_lines - //SEG434 [248] phi from form_init::@3 to form_init::@4 [phi:form_init::@3->form_init::@4] - b4_from_b3: - jmp b4 - //SEG435 form_init::@4 - b4: - //SEG436 [249] call form_set_screen param-assignment [ ] ( main:2::form_init:10 [ ] ) - //SEG437 [263] phi from form_init::@4 to form_set_screen [phi:form_init::@4->form_set_screen] - form_set_screen_from_b4: + //SEG488 [269] phi from form_init::@5 to form_init::@6 [phi:form_init::@5->form_init::@6] + b6_from_b5: + jmp b6 + //SEG489 form_init::@6 + b6: + //SEG490 [270] call form_set_screen param-assignment [ ] ( main:2::form_init:10 [ ] ) + //SEG491 [284] phi from form_init::@6 to form_set_screen [phi:form_init::@6->form_set_screen] + form_set_screen_from_b6: jsr form_set_screen - //SEG438 [250] phi from form_init::@4 to form_init::@5 [phi:form_init::@4->form_init::@5] - b5_from_b4: - jmp b5 - //SEG439 form_init::@5 - b5: - //SEG440 [251] call form_render_values param-assignment [ ] ( main:2::form_init:10 [ ] ) - //SEG441 [253] phi from form_init::@5 to form_render_values [phi:form_init::@5->form_render_values] - form_render_values_from_b5: + //SEG492 [271] phi from form_init::@6 to form_init::@7 [phi:form_init::@6->form_init::@7] + b7_from_b6: + jmp b7 + //SEG493 form_init::@7 + b7: + //SEG494 [272] call form_render_values param-assignment [ ] ( main:2::form_init:10 [ ] ) + //SEG495 [274] phi from form_init::@7 to form_render_values [phi:form_init::@7->form_render_values] + form_render_values_from_b7: jsr form_render_values jmp breturn - //SEG442 form_init::@return + //SEG496 form_init::@return breturn: - //SEG443 [252] return [ ] ( main:2::form_init:10 [ ] ) + //SEG497 [273] return [ ] ( main:2::form_init:10 [ ] ) rts } -//SEG444 form_render_values +//SEG498 form_render_values form_render_values: { - .label field = $77 - .label idx = $11 - //SEG445 [254] phi from form_render_values to form_render_values::@1 [phi:form_render_values->form_render_values::@1] + .label field = $82 + .label idx = $12 + //SEG499 [275] phi from form_render_values to form_render_values::@1 [phi:form_render_values->form_render_values::@1] b1_from_form_render_values: - //SEG446 [254] phi (byte) form_render_values::idx#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_render_values->form_render_values::@1#0] -- vbuz1=vbuc1 + //SEG500 [275] phi (byte) form_render_values::idx#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_render_values->form_render_values::@1#0] -- vbuz1=vbuc1 lda #0 sta idx jmp b1 - //SEG447 [254] phi from form_render_values::@3 to form_render_values::@1 [phi:form_render_values::@3->form_render_values::@1] + //SEG501 [275] phi from form_render_values::@3 to form_render_values::@1 [phi:form_render_values::@3->form_render_values::@1] b1_from_b3: - //SEG448 [254] phi (byte) form_render_values::idx#2 = (byte) form_render_values::idx#1 [phi:form_render_values::@3->form_render_values::@1#0] -- register_copy + //SEG502 [275] phi (byte) form_render_values::idx#2 = (byte) form_render_values::idx#1 [phi:form_render_values::@3->form_render_values::@1#0] -- register_copy jmp b1 - //SEG449 form_render_values::@1 + //SEG503 form_render_values::@1 b1: - //SEG450 [255] (byte) form_field_ptr::field_idx#0 ← (byte) form_render_values::idx#2 [ form_field_ptr::field_idx#0 form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:251 [ form_field_ptr::field_idx#0 form_render_values::idx#2 ] ) -- vbuz1=vbuz2 + //SEG504 [276] (byte) form_field_ptr::field_idx#0 ← (byte) form_render_values::idx#2 [ form_field_ptr::field_idx#0 form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:272 [ form_field_ptr::field_idx#0 form_render_values::idx#2 ] ) -- vbuz1=vbuz2 lda idx sta form_field_ptr.field_idx - //SEG451 [256] call form_field_ptr param-assignment [ form_field_ptr::return#0 form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:251 [ form_field_ptr::return#0 form_render_values::idx#2 ] ) - //SEG452 [218] phi from form_render_values::@1 to form_field_ptr [phi:form_render_values::@1->form_field_ptr] + //SEG505 [277] call form_field_ptr param-assignment [ form_field_ptr::return#0 form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:272 [ form_field_ptr::return#0 form_render_values::idx#2 ] ) + //SEG506 [251] phi from form_render_values::@1 to form_field_ptr [phi:form_render_values::@1->form_field_ptr] form_field_ptr_from_b1: - //SEG453 [218] phi (byte) form_field_ptr::field_idx#2 = (byte) form_field_ptr::field_idx#0 [phi:form_render_values::@1->form_field_ptr#0] -- register_copy + //SEG507 [251] phi (byte) form_field_ptr::field_idx#2 = (byte) form_field_ptr::field_idx#0 [phi:form_render_values::@1->form_field_ptr#0] -- register_copy jsr form_field_ptr - //SEG454 [257] (byte*) form_field_ptr::return#2 ← (byte*) form_field_ptr::return#0 [ form_render_values::idx#2 form_field_ptr::return#2 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#2 form_field_ptr::return#2 ] ) -- pbuz1=pbuz2 + //SEG508 [278] (byte*) form_field_ptr::return#2 ← (byte*) form_field_ptr::return#0 [ form_render_values::idx#2 form_field_ptr::return#2 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 form_field_ptr::return#2 ] ) -- pbuz1=pbuz2 lda form_field_ptr.return sta form_field_ptr.return_2 lda form_field_ptr.return+1 sta form_field_ptr.return_2+1 jmp b3 - //SEG455 form_render_values::@3 + //SEG509 form_render_values::@3 b3: - //SEG456 [258] (byte*) form_render_values::field#0 ← (byte*) form_field_ptr::return#2 [ form_render_values::idx#2 form_render_values::field#0 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#2 form_render_values::field#0 ] ) -- pbuz1=pbuz2 + //SEG510 [279] (byte*) form_render_values::field#0 ← (byte*) form_field_ptr::return#2 [ form_render_values::idx#2 form_render_values::field#0 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 form_render_values::field#0 ] ) -- pbuz1=pbuz2 lda form_field_ptr.return_2 sta field lda form_field_ptr.return_2+1 sta field+1 - //SEG457 [259] *((byte*) form_render_values::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) [ form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#2 ] ) -- _deref_pbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuz2 + //SEG511 [280] *((byte*) form_render_values::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) [ form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 ] ) -- _deref_pbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuz2 ldy idx lda form_fields_val,y tay lda print_hextab,y ldy #0 sta (field),y - //SEG458 [260] (byte) form_render_values::idx#1 ← ++ (byte) form_render_values::idx#2 [ form_render_values::idx#1 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#1 ] ) -- vbuz1=_inc_vbuz1 + //SEG512 [281] (byte) form_render_values::idx#1 ← ++ (byte) form_render_values::idx#2 [ form_render_values::idx#1 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#1 ] ) -- vbuz1=_inc_vbuz1 inc idx - //SEG459 [261] if((byte) form_render_values::idx#1<(const byte) form_fields_cnt#0) goto form_render_values::@1 [ form_render_values::idx#1 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#1 ] ) -- vbuz1_lt_vbuc1_then_la1 + //SEG513 [282] if((byte) form_render_values::idx#1<(const byte) form_fields_cnt#0) goto form_render_values::@1 [ form_render_values::idx#1 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#1 ] ) -- vbuz1_lt_vbuc1_then_la1 lda idx cmp #form_fields_cnt bcc b1_from_b3 jmp breturn - //SEG460 form_render_values::@return + //SEG514 form_render_values::@return breturn: - //SEG461 [262] return [ ] ( main:2::form_init:10::form_render_values:251 [ ] ) + //SEG515 [283] return [ ] ( main:2::form_init:10::form_render_values:272 [ ] ) rts } -//SEG462 form_set_screen +//SEG516 form_set_screen form_set_screen: { - .label screen = FORM_SCREEN+FORM_OFFSET - .label _0 = $79 - .label _1 = $7a - .label line = $12 - .label y = $14 - //SEG463 [264] phi from form_set_screen to form_set_screen::@1 [phi:form_set_screen->form_set_screen::@1] + .label _0 = $84 + .label _1 = $85 + .label line = $13 + .label y = $15 + //SEG517 [285] phi from form_set_screen to form_set_screen::@1 [phi:form_set_screen->form_set_screen::@1] b1_from_form_set_screen: - //SEG464 [264] phi (byte) form_set_screen::y#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_set_screen->form_set_screen::@1#0] -- vbuz1=vbuc1 + //SEG518 [285] phi (byte) form_set_screen::y#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_set_screen->form_set_screen::@1#0] -- vbuz1=vbuc1 lda #0 sta y - //SEG465 [264] phi (byte*) form_set_screen::line#2 = (const byte*) form_set_screen::screen#0 [phi:form_set_screen->form_set_screen::@1#1] -- pbuz1=pbuc1 - lda #form_set_screen::@1#1] -- pbuz1=pbuc1 + lda #screen + lda #>FORM_SCREEN sta line+1 jmp b1 - //SEG466 [264] phi from form_set_screen::@1 to form_set_screen::@1 [phi:form_set_screen::@1->form_set_screen::@1] + //SEG520 [285] phi from form_set_screen::@1 to form_set_screen::@1 [phi:form_set_screen::@1->form_set_screen::@1] b1_from_b1: - //SEG467 [264] phi (byte) form_set_screen::y#2 = (byte) form_set_screen::y#1 [phi:form_set_screen::@1->form_set_screen::@1#0] -- register_copy - //SEG468 [264] phi (byte*) form_set_screen::line#2 = (byte*) form_set_screen::line#1 [phi:form_set_screen::@1->form_set_screen::@1#1] -- register_copy + //SEG521 [285] phi (byte) form_set_screen::y#2 = (byte) form_set_screen::y#1 [phi:form_set_screen::@1->form_set_screen::@1#0] -- register_copy + //SEG522 [285] phi (byte*) form_set_screen::line#2 = (byte*) form_set_screen::line#1 [phi:form_set_screen::@1->form_set_screen::@1#1] -- register_copy jmp b1 - //SEG469 form_set_screen::@1 + //SEG523 form_set_screen::@1 b1: - //SEG470 [265] (byte~) form_set_screen::$0 ← < (byte*) form_set_screen::line#2 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$0 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$0 ] ) -- vbuz1=_lo_pbuz2 + //SEG524 [286] (byte~) form_set_screen::$0 ← < (byte*) form_set_screen::line#2 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$0 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$0 ] ) -- vbuz1=_lo_pbuz2 lda line sta _0 - //SEG471 [266] *((const byte[25]) form_line_lo#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$0 [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#2 form_set_screen::y#2 ] ) -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG525 [287] *((const byte[25]) form_line_lo#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$0 [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#2 form_set_screen::y#2 ] ) -- pbuc1_derefidx_vbuz1=vbuz2 lda _0 ldy y sta form_line_lo,y - //SEG472 [267] (byte~) form_set_screen::$1 ← > (byte*) form_set_screen::line#2 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$1 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$1 ] ) -- vbuz1=_hi_pbuz2 + //SEG526 [288] (byte~) form_set_screen::$1 ← > (byte*) form_set_screen::line#2 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$1 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$1 ] ) -- vbuz1=_hi_pbuz2 lda line+1 sta _1 - //SEG473 [268] *((const byte[25]) form_line_hi#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$1 [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#2 form_set_screen::y#2 ] ) -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG527 [289] *((const byte[25]) form_line_hi#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$1 [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#2 form_set_screen::y#2 ] ) -- pbuc1_derefidx_vbuz1=vbuz2 lda _1 ldy y sta form_line_hi,y - //SEG474 [269] (byte*) form_set_screen::line#1 ← (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ form_set_screen::y#2 form_set_screen::line#1 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::y#2 form_set_screen::line#1 ] ) -- pbuz1=pbuz1_plus_vbuc1 + //SEG528 [290] (byte*) form_set_screen::line#1 ← (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ form_set_screen::y#2 form_set_screen::line#1 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::y#2 form_set_screen::line#1 ] ) -- pbuz1=pbuz1_plus_vbuc1 lda line clc adc #$28 @@ -11933,116 +13406,116 @@ form_set_screen: { bcc !+ inc line+1 !: - //SEG475 [270] (byte) form_set_screen::y#1 ← ++ (byte) form_set_screen::y#2 [ form_set_screen::line#1 form_set_screen::y#1 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#1 form_set_screen::y#1 ] ) -- vbuz1=_inc_vbuz1 + //SEG529 [291] (byte) form_set_screen::y#1 ← ++ (byte) form_set_screen::y#2 [ form_set_screen::line#1 form_set_screen::y#1 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#1 form_set_screen::y#1 ] ) -- vbuz1=_inc_vbuz1 inc y - //SEG476 [271] if((byte) form_set_screen::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 25) goto form_set_screen::@1 [ form_set_screen::line#1 form_set_screen::y#1 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#1 form_set_screen::y#1 ] ) -- vbuz1_neq_vbuc1_then_la1 + //SEG530 [292] if((byte) form_set_screen::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 25) goto form_set_screen::@1 [ form_set_screen::line#1 form_set_screen::y#1 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#1 form_set_screen::y#1 ] ) -- vbuz1_neq_vbuc1_then_la1 lda y cmp #$19 bne b1_from_b1 jmp breturn - //SEG477 form_set_screen::@return + //SEG531 form_set_screen::@return breturn: - //SEG478 [272] return [ ] ( main:2::form_init:10::form_set_screen:249 [ ] ) + //SEG532 [293] return [ ] ( main:2::form_init:10::form_set_screen:270 [ ] ) rts } -//SEG479 print_str_lines +//SEG533 print_str_lines print_str_lines: { - .label ch = $7b - .label str = $15 - //SEG480 [274] (byte*~) print_char_cursor#60 ← (byte*) print_set_screen::screen#2 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ) -- pbuz1=pbuz2 + .label ch = $86 + .label str = $16 + //SEG534 [295] (byte*~) print_char_cursor#60 ← (byte*) print_set_screen::screen#2 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ) -- pbuz1=pbuz2 lda print_set_screen.screen sta print_char_cursor lda print_set_screen.screen+1 sta print_char_cursor+1 - //SEG481 [275] phi from print_str_lines print_str_lines::@9 to print_str_lines::@1 [phi:print_str_lines/print_str_lines::@9->print_str_lines::@1] + //SEG535 [296] phi from print_str_lines print_str_lines::@9 to print_str_lines::@1 [phi:print_str_lines/print_str_lines::@9->print_str_lines::@1] b1_from_print_str_lines: b1_from_b9: - //SEG482 [275] phi (byte*) print_line_cursor#16 = (byte*) print_set_screen::screen#2 [phi:print_str_lines/print_str_lines::@9->print_str_lines::@1#0] -- register_copy - //SEG483 [275] phi (byte*) print_char_cursor#18 = (byte*~) print_char_cursor#60 [phi:print_str_lines/print_str_lines::@9->print_str_lines::@1#1] -- register_copy - //SEG484 [275] phi (byte*) print_str_lines::str#3 = (byte*) print_str_lines::str#5 [phi:print_str_lines/print_str_lines::@9->print_str_lines::@1#2] -- register_copy + //SEG536 [296] phi (byte*) print_line_cursor#2 = (byte*) print_set_screen::screen#2 [phi:print_str_lines/print_str_lines::@9->print_str_lines::@1#0] -- register_copy + //SEG537 [296] phi (byte*) print_char_cursor#22 = (byte*~) print_char_cursor#60 [phi:print_str_lines/print_str_lines::@9->print_str_lines::@1#1] -- register_copy + //SEG538 [296] phi (byte*) print_str_lines::str#3 = (byte*) print_str_lines::str#5 [phi:print_str_lines/print_str_lines::@9->print_str_lines::@1#2] -- register_copy jmp b1 - //SEG485 print_str_lines::@1 + //SEG539 print_str_lines::@1 b1: - //SEG486 [276] if(*((byte*) print_str_lines::str#3)!=(byte) '@') goto print_str_lines::@4 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ) -- _deref_pbuz1_neq_vbuc1_then_la1 + //SEG540 [297] if(*((byte*) print_str_lines::str#3)!=(byte) '@') goto print_str_lines::@4 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ) -- _deref_pbuz1_neq_vbuc1_then_la1 ldy #0 lda (str),y cmp #'@' bne b4_from_b1 jmp breturn - //SEG487 print_str_lines::@return + //SEG541 print_str_lines::@return breturn: - //SEG488 [277] return [ ] ( main:2::form_init:10::print_str_lines:243 [ ] main:2::form_init:10::print_str_lines:247 [ ] ) + //SEG542 [298] return [ ] ( main:2::form_init:10::print_str_lines:262 [ ] main:2::form_init:10::print_str_lines:268 [ ] ) rts - //SEG489 [278] phi from print_str_lines::@1 print_str_lines::@5 to print_str_lines::@4 [phi:print_str_lines::@1/print_str_lines::@5->print_str_lines::@4] + //SEG543 [299] phi from print_str_lines::@1 print_str_lines::@5 to print_str_lines::@4 [phi:print_str_lines::@1/print_str_lines::@5->print_str_lines::@4] b4_from_b1: b4_from_b5: - //SEG490 [278] phi (byte*) print_char_cursor#16 = (byte*) print_char_cursor#18 [phi:print_str_lines::@1/print_str_lines::@5->print_str_lines::@4#0] -- register_copy - //SEG491 [278] phi (byte*) print_str_lines::str#4 = (byte*) print_str_lines::str#3 [phi:print_str_lines::@1/print_str_lines::@5->print_str_lines::@4#1] -- register_copy + //SEG544 [299] phi (byte*) print_char_cursor#20 = (byte*) print_char_cursor#22 [phi:print_str_lines::@1/print_str_lines::@5->print_str_lines::@4#0] -- register_copy + //SEG545 [299] phi (byte*) print_str_lines::str#4 = (byte*) print_str_lines::str#3 [phi:print_str_lines::@1/print_str_lines::@5->print_str_lines::@4#1] -- register_copy jmp b4 - //SEG492 print_str_lines::@4 + //SEG546 print_str_lines::@4 b4: - //SEG493 [279] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#4) [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 print_str_lines::ch#0 ] ) -- vbuz1=_deref_pbuz2 + //SEG547 [300] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#4) [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] ) -- vbuz1=_deref_pbuz2 ldy #0 lda (str),y sta ch - //SEG494 [280] (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#4 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ) -- pbuz1=_inc_pbuz1 + //SEG548 [301] (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#4 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ) -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 !: - //SEG495 [281] if((byte) print_str_lines::ch#0==(byte) '@') goto print_str_lines::@5 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ) -- vbuz1_eq_vbuc1_then_la1 + //SEG549 [302] if((byte) print_str_lines::ch#0==(byte) '@') goto print_str_lines::@5 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ) -- vbuz1_eq_vbuc1_then_la1 lda ch cmp #'@' beq b5_from_b4 jmp b8 - //SEG496 print_str_lines::@8 + //SEG550 print_str_lines::@8 b8: - //SEG497 [282] *((byte*) print_char_cursor#16) ← (byte) print_str_lines::ch#0 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ) -- _deref_pbuz1=vbuz2 + //SEG551 [303] *((byte*) print_char_cursor#20) ← (byte) print_str_lines::ch#0 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ) -- _deref_pbuz1=vbuz2 lda ch ldy #0 sta (print_char_cursor),y - //SEG498 [283] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#16 [ print_line_cursor#16 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG552 [304] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#20 [ print_line_cursor#2 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG499 [284] phi from print_str_lines::@4 print_str_lines::@8 to print_str_lines::@5 [phi:print_str_lines::@4/print_str_lines::@8->print_str_lines::@5] + //SEG553 [305] phi from print_str_lines::@4 print_str_lines::@8 to print_str_lines::@5 [phi:print_str_lines::@4/print_str_lines::@8->print_str_lines::@5] b5_from_b4: b5_from_b8: - //SEG500 [284] phi (byte*) print_char_cursor#31 = (byte*) print_char_cursor#16 [phi:print_str_lines::@4/print_str_lines::@8->print_str_lines::@5#0] -- register_copy + //SEG554 [305] phi (byte*) print_char_cursor#38 = (byte*) print_char_cursor#20 [phi:print_str_lines::@4/print_str_lines::@8->print_str_lines::@5#0] -- register_copy jmp b5 - //SEG501 print_str_lines::@5 + //SEG555 print_str_lines::@5 b5: - //SEG502 [285] if((byte) print_str_lines::ch#0!=(byte) '@') goto print_str_lines::@4 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 ] ) -- vbuz1_neq_vbuc1_then_la1 + //SEG556 [306] if((byte) print_str_lines::ch#0!=(byte) '@') goto print_str_lines::@4 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 ] ) -- vbuz1_neq_vbuc1_then_la1 lda ch cmp #'@' bne b4_from_b5 - //SEG503 [286] phi from print_str_lines::@5 to print_str_lines::@9 [phi:print_str_lines::@5->print_str_lines::@9] + //SEG557 [307] phi from print_str_lines::@5 to print_str_lines::@9 [phi:print_str_lines::@5->print_str_lines::@9] b9_from_b5: jmp b9 - //SEG504 print_str_lines::@9 + //SEG558 print_str_lines::@9 b9: - //SEG505 [287] call print_ln param-assignment [ print_str_lines::str#0 print_line_cursor#18 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#0 print_line_cursor#18 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#0 print_line_cursor#18 ] ) - //SEG506 [289] phi from print_str_lines::@9 to print_ln [phi:print_str_lines::@9->print_ln] + //SEG559 [308] call print_ln param-assignment [ print_str_lines::str#0 print_line_cursor#22 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#0 print_line_cursor#22 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#0 print_line_cursor#22 ] ) + //SEG560 [310] phi from print_str_lines::@9 to print_ln [phi:print_str_lines::@9->print_ln] print_ln_from_b9: jsr print_ln - //SEG507 [288] (byte*~) print_char_cursor#61 ← (byte*) print_line_cursor#18 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#18 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#18 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#18 ] ) -- pbuz1=pbuz2 + //SEG561 [309] (byte*~) print_char_cursor#61 ← (byte*) print_line_cursor#22 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#22 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#22 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#22 ] ) -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 sta print_char_cursor+1 jmp b1_from_b9 } -//SEG508 print_ln +//SEG562 print_ln print_ln: { - //SEG509 [290] phi from print_ln print_ln::@1 to print_ln::@1 [phi:print_ln/print_ln::@1->print_ln::@1] + //SEG563 [311] phi from print_ln print_ln::@1 to print_ln::@1 [phi:print_ln/print_ln::@1->print_ln::@1] b1_from_print_ln: b1_from_b1: - //SEG510 [290] phi (byte*) print_line_cursor#17 = (byte*) print_line_cursor#16 [phi:print_ln/print_ln::@1->print_ln::@1#0] -- register_copy + //SEG564 [311] phi (byte*) print_line_cursor#21 = (byte*) print_line_cursor#2 [phi:print_ln/print_ln::@1->print_ln::@1#0] -- register_copy jmp b1 - //SEG511 print_ln::@1 + //SEG565 print_ln::@1 b1: - //SEG512 [291] (byte*) print_line_cursor#18 ← (byte*) print_line_cursor#17 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ print_line_cursor#18 print_char_cursor#31 ] ( main:2::form_init:10::print_str_lines:243::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] main:2::form_init:10::print_str_lines:247::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] ) -- pbuz1=pbuz1_plus_vbuc1 + //SEG566 [312] (byte*) print_line_cursor#22 ← (byte*) print_line_cursor#21 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ print_line_cursor#22 print_char_cursor#38 ] ( main:2::form_init:10::print_str_lines:262::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] main:2::form_init:10::print_str_lines:268::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] ) -- pbuz1=pbuz1_plus_vbuc1 lda print_line_cursor clc adc #$28 @@ -12050,7 +13523,7 @@ print_ln: { bcc !+ inc print_line_cursor+1 !: - //SEG513 [292] if((byte*) print_line_cursor#18<(byte*) print_char_cursor#31) goto print_ln::@1 [ print_line_cursor#18 print_char_cursor#31 ] ( main:2::form_init:10::print_str_lines:243::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] main:2::form_init:10::print_str_lines:247::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] ) -- pbuz1_lt_pbuz2_then_la1 + //SEG567 [313] if((byte*) print_line_cursor#22<(byte*) print_char_cursor#38) goto print_ln::@1 [ print_line_cursor#22 print_char_cursor#38 ] ( main:2::form_init:10::print_str_lines:262::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] main:2::form_init:10::print_str_lines:268::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] ) -- pbuz1_lt_pbuz2_then_la1 lda print_line_cursor+1 cmp print_char_cursor+1 bcc b1_from_b1 @@ -12060,88 +13533,143 @@ print_ln: { bcc b1_from_b1 !: jmp breturn - //SEG514 print_ln::@return + //SEG568 print_ln::@return breturn: - //SEG515 [293] return [ print_line_cursor#18 ] ( main:2::form_init:10::print_str_lines:243::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 ] main:2::form_init:10::print_str_lines:247::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 ] ) + //SEG569 [314] return [ print_line_cursor#22 ] ( main:2::form_init:10::print_str_lines:262::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 ] main:2::form_init:10::print_str_lines:268::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 ] ) rts } -//SEG516 print_set_screen -print_set_screen: { - .label screen = $19 +//SEG570 print_cls +print_cls: { + .label _0 = $87 + .label sc = $1c + //SEG571 [315] (byte*) print_cls::sc#0 ← (byte*) print_set_screen::screen#2 [ print_set_screen::screen#2 print_cls::sc#0 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#0 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#0 ] ) -- pbuz1=pbuz2 + lda print_set_screen.screen + sta sc + lda print_set_screen.screen+1 + sta sc+1 + //SEG572 [316] phi from print_cls print_cls::@1 to print_cls::@1 [phi:print_cls/print_cls::@1->print_cls::@1] + b1_from_print_cls: + b1_from_b1: + //SEG573 [316] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#0 [phi:print_cls/print_cls::@1->print_cls::@1#0] -- register_copy + jmp b1 + //SEG574 print_cls::@1 + b1: + //SEG575 [317] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_set_screen::screen#2 print_cls::sc#2 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#2 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#2 ] ) -- _deref_pbuz1=vbuc1 + lda #' ' + ldy #0 + sta (sc),y + //SEG576 [318] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_set_screen::screen#2 print_cls::sc#1 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#1 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#1 ] ) -- pbuz1=_inc_pbuz1 + inc sc + bne !+ + inc sc+1 + !: + //SEG577 [319] (byte*~) print_cls::$0 ← (byte*) print_set_screen::screen#2 + (word/signed word/dword/signed dword) 1000 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] ) -- pbuz1=pbuz2_plus_vwuc1 + lda print_set_screen.screen + clc + adc #<$3e8 + sta _0 + lda print_set_screen.screen+1 + adc #>$3e8 + sta _0+1 + //SEG578 [320] if((byte*) print_cls::sc#1!=(byte*~) print_cls::$0) goto print_cls::@1 [ print_set_screen::screen#2 print_cls::sc#1 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#1 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#1 ] ) -- pbuz1_neq_pbuz2_then_la1 + lda sc+1 + cmp _0+1 + bne b1_from_b1 + lda sc + cmp _0 + bne b1_from_b1 jmp breturn - //SEG517 print_set_screen::@return + //SEG579 print_cls::@return breturn: - //SEG518 [295] return [ print_set_screen::screen#2 ] ( main:2::form_init:10::print_set_screen:241 [ print_set_screen::screen#2 ] main:2::form_init:10::print_set_screen:245 [ print_set_screen::screen#2 ] ) + //SEG580 [321] return [ print_set_screen::screen#2 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 ] ) rts } -//SEG519 gfx_init +//SEG581 print_set_screen +print_set_screen: { + .label screen = $1a + jmp breturn + //SEG582 print_set_screen::@return + breturn: + //SEG583 [323] return [ print_set_screen::screen#2 ] ( main:2::form_init:10::print_set_screen:258 [ print_set_screen::screen#2 ] main:2::form_init:10::print_set_screen:264 [ print_set_screen::screen#2 ] ) + rts +} +//SEG584 gfx_init gfx_init: { - //SEG520 [297] call gfx_init_plane_8bppchunky param-assignment [ ] ( main:2::gfx_init:8 [ ] ) - //SEG521 [299] phi from gfx_init to gfx_init_plane_8bppchunky [phi:gfx_init->gfx_init_plane_8bppchunky] - gfx_init_plane_8bppchunky_from_gfx_init: + //SEG585 [325] call gfx_init_screen_stdchar param-assignment [ ] ( main:2::gfx_init:8 [ ] ) + //SEG586 [353] phi from gfx_init to gfx_init_screen_stdchar [phi:gfx_init->gfx_init_screen_stdchar] + gfx_init_screen_stdchar_from_gfx_init: + jsr gfx_init_screen_stdchar + //SEG587 [326] phi from gfx_init to gfx_init::@1 [phi:gfx_init->gfx_init::@1] + b1_from_gfx_init: + jmp b1 + //SEG588 gfx_init::@1 + b1: + //SEG589 [327] call gfx_init_plane_8bppchunky param-assignment [ ] ( main:2::gfx_init:8 [ ] ) + //SEG590 [329] phi from gfx_init::@1 to gfx_init_plane_8bppchunky [phi:gfx_init::@1->gfx_init_plane_8bppchunky] + gfx_init_plane_8bppchunky_from_b1: jsr gfx_init_plane_8bppchunky jmp breturn - //SEG522 gfx_init::@return + //SEG591 gfx_init::@return breturn: - //SEG523 [298] return [ ] ( main:2::gfx_init:8 [ ] ) + //SEG592 [328] return [ ] ( main:2::gfx_init:8 [ ] ) rts } -//SEG524 gfx_init_plane_8bppchunky +//SEG593 gfx_init_plane_8bppchunky gfx_init_plane_8bppchunky: { - .label _6 = $7c - .label c = $7e - .label gfxb = $1f - .label x = $1c - .label gfxbCpuBank = $1e - .label y = $1b - //SEG525 [300] call dtvSetCpuBankSegment1 param-assignment [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ ] ) - //SEG526 [319] phi from gfx_init_plane_8bppchunky to dtvSetCpuBankSegment1 [phi:gfx_init_plane_8bppchunky->dtvSetCpuBankSegment1] + .label _6 = $89 + .label c = $8b + .label gfxb = $22 + .label x = $1f + .label gfxbCpuBank = $21 + .label y = $1e + //SEG594 [330] call dtvSetCpuBankSegment1 param-assignment [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ ] ) + //SEG595 [349] phi from gfx_init_plane_8bppchunky to dtvSetCpuBankSegment1 [phi:gfx_init_plane_8bppchunky->dtvSetCpuBankSegment1] dtvSetCpuBankSegment1_from_gfx_init_plane_8bppchunky: - //SEG527 [319] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = ((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky->dtvSetCpuBankSegment1#0] -- vbuz1=vbuc1 + //SEG596 [349] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = ((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky->dtvSetCpuBankSegment1#0] -- vbuz1=vbuc1 lda #PLANE_8BPP_CHUNKY/$4000 sta dtvSetCpuBankSegment1.cpuBankIdx jsr dtvSetCpuBankSegment1 - //SEG528 [301] phi from gfx_init_plane_8bppchunky to gfx_init_plane_8bppchunky::@1 [phi:gfx_init_plane_8bppchunky->gfx_init_plane_8bppchunky::@1] + //SEG597 [331] phi from gfx_init_plane_8bppchunky to gfx_init_plane_8bppchunky::@1 [phi:gfx_init_plane_8bppchunky->gfx_init_plane_8bppchunky::@1] b1_from_gfx_init_plane_8bppchunky: - //SEG529 [301] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 = ++((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky->gfx_init_plane_8bppchunky::@1#0] -- vbuz1=vbuc1 + //SEG598 [331] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 = ++((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky->gfx_init_plane_8bppchunky::@1#0] -- vbuz1=vbuc1 lda #PLANE_8BPP_CHUNKY/$4000+1 sta gfxbCpuBank - //SEG530 [301] phi (byte) gfx_init_plane_8bppchunky::y#6 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_init_plane_8bppchunky->gfx_init_plane_8bppchunky::@1#1] -- vbuz1=vbuc1 + //SEG599 [331] phi (byte) gfx_init_plane_8bppchunky::y#6 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_init_plane_8bppchunky->gfx_init_plane_8bppchunky::@1#1] -- vbuz1=vbuc1 lda #0 sta y - //SEG531 [301] phi (byte*) gfx_init_plane_8bppchunky::gfxb#5 = ((byte*))(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky->gfx_init_plane_8bppchunky::@1#2] -- pbuz1=pbuc1 + //SEG600 [331] phi (byte*) gfx_init_plane_8bppchunky::gfxb#5 = ((byte*))(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky->gfx_init_plane_8bppchunky::@1#2] -- pbuz1=pbuc1 lda #<$4000 sta gfxb lda #>$4000 sta gfxb+1 jmp b1 - //SEG532 [301] phi from gfx_init_plane_8bppchunky::@5 to gfx_init_plane_8bppchunky::@1 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@1] + //SEG601 [331] phi from gfx_init_plane_8bppchunky::@5 to gfx_init_plane_8bppchunky::@1 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@1] b1_from_b5: - //SEG533 [301] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@1#0] -- register_copy - //SEG534 [301] phi (byte) gfx_init_plane_8bppchunky::y#6 = (byte) gfx_init_plane_8bppchunky::y#1 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@1#1] -- register_copy - //SEG535 [301] phi (byte*) gfx_init_plane_8bppchunky::gfxb#5 = (byte*) gfx_init_plane_8bppchunky::gfxb#1 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@1#2] -- register_copy + //SEG602 [331] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@1#0] -- register_copy + //SEG603 [331] phi (byte) gfx_init_plane_8bppchunky::y#6 = (byte) gfx_init_plane_8bppchunky::y#1 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@1#1] -- register_copy + //SEG604 [331] phi (byte*) gfx_init_plane_8bppchunky::gfxb#5 = (byte*) gfx_init_plane_8bppchunky::gfxb#1 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@1#2] -- register_copy jmp b1 - //SEG536 gfx_init_plane_8bppchunky::@1 + //SEG605 gfx_init_plane_8bppchunky::@1 b1: - //SEG537 [302] phi from gfx_init_plane_8bppchunky::@1 to gfx_init_plane_8bppchunky::@2 [phi:gfx_init_plane_8bppchunky::@1->gfx_init_plane_8bppchunky::@2] + //SEG606 [332] phi from gfx_init_plane_8bppchunky::@1 to gfx_init_plane_8bppchunky::@2 [phi:gfx_init_plane_8bppchunky::@1->gfx_init_plane_8bppchunky::@2] b2_from_b1: - //SEG538 [302] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 [phi:gfx_init_plane_8bppchunky::@1->gfx_init_plane_8bppchunky::@2#0] -- register_copy - //SEG539 [302] phi (word) gfx_init_plane_8bppchunky::x#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_init_plane_8bppchunky::@1->gfx_init_plane_8bppchunky::@2#1] -- vwuz1=vbuc1 + //SEG607 [332] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 [phi:gfx_init_plane_8bppchunky::@1->gfx_init_plane_8bppchunky::@2#0] -- register_copy + //SEG608 [332] phi (word) gfx_init_plane_8bppchunky::x#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_init_plane_8bppchunky::@1->gfx_init_plane_8bppchunky::@2#1] -- vwuz1=vbuc1 lda #<0 sta x lda #>0 sta x+1 - //SEG540 [302] phi (byte*) gfx_init_plane_8bppchunky::gfxb#3 = (byte*) gfx_init_plane_8bppchunky::gfxb#5 [phi:gfx_init_plane_8bppchunky::@1->gfx_init_plane_8bppchunky::@2#2] -- register_copy + //SEG609 [332] phi (byte*) gfx_init_plane_8bppchunky::gfxb#3 = (byte*) gfx_init_plane_8bppchunky::gfxb#5 [phi:gfx_init_plane_8bppchunky::@1->gfx_init_plane_8bppchunky::@2#2] -- register_copy jmp b2 - //SEG541 [302] phi from gfx_init_plane_8bppchunky::@3 to gfx_init_plane_8bppchunky::@2 [phi:gfx_init_plane_8bppchunky::@3->gfx_init_plane_8bppchunky::@2] + //SEG610 [332] phi from gfx_init_plane_8bppchunky::@3 to gfx_init_plane_8bppchunky::@2 [phi:gfx_init_plane_8bppchunky::@3->gfx_init_plane_8bppchunky::@2] b2_from_b3: - //SEG542 [302] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 [phi:gfx_init_plane_8bppchunky::@3->gfx_init_plane_8bppchunky::@2#0] -- register_copy - //SEG543 [302] phi (word) gfx_init_plane_8bppchunky::x#2 = (word) gfx_init_plane_8bppchunky::x#1 [phi:gfx_init_plane_8bppchunky::@3->gfx_init_plane_8bppchunky::@2#1] -- register_copy - //SEG544 [302] phi (byte*) gfx_init_plane_8bppchunky::gfxb#3 = (byte*) gfx_init_plane_8bppchunky::gfxb#1 [phi:gfx_init_plane_8bppchunky::@3->gfx_init_plane_8bppchunky::@2#2] -- register_copy + //SEG611 [332] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 [phi:gfx_init_plane_8bppchunky::@3->gfx_init_plane_8bppchunky::@2#0] -- register_copy + //SEG612 [332] phi (word) gfx_init_plane_8bppchunky::x#2 = (word) gfx_init_plane_8bppchunky::x#1 [phi:gfx_init_plane_8bppchunky::@3->gfx_init_plane_8bppchunky::@2#1] -- register_copy + //SEG613 [332] phi (byte*) gfx_init_plane_8bppchunky::gfxb#3 = (byte*) gfx_init_plane_8bppchunky::gfxb#1 [phi:gfx_init_plane_8bppchunky::@3->gfx_init_plane_8bppchunky::@2#2] -- register_copy jmp b2 - //SEG545 gfx_init_plane_8bppchunky::@2 + //SEG614 gfx_init_plane_8bppchunky::@2 b2: - //SEG546 [303] if((byte*) gfx_init_plane_8bppchunky::gfxb#3!=(word/dword/signed dword) 32768) goto gfx_init_plane_8bppchunky::@3 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) -- pbuz1_neq_vwuc1_then_la1 + //SEG615 [333] if((byte*) gfx_init_plane_8bppchunky::gfxb#3!=(word/dword/signed dword) 32768) goto gfx_init_plane_8bppchunky::@3 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) -- pbuz1_neq_vwuc1_then_la1 lda gfxb+1 cmp #>$8000 bne b3_from_b2 @@ -12149,38 +13677,38 @@ gfx_init_plane_8bppchunky: { cmp #<$8000 bne b3_from_b2 jmp b4 - //SEG547 gfx_init_plane_8bppchunky::@4 + //SEG616 gfx_init_plane_8bppchunky::@4 b4: - //SEG548 [304] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ← (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 dtvSetCpuBankSegment1::cpuBankIdx#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 dtvSetCpuBankSegment1::cpuBankIdx#1 ] ) -- vbuz1=vbuz2 + //SEG617 [334] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ← (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 dtvSetCpuBankSegment1::cpuBankIdx#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 dtvSetCpuBankSegment1::cpuBankIdx#1 ] ) -- vbuz1=vbuz2 lda gfxbCpuBank sta dtvSetCpuBankSegment1.cpuBankIdx - //SEG549 [305] call dtvSetCpuBankSegment1 param-assignment [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) - //SEG550 [319] phi from gfx_init_plane_8bppchunky::@4 to dtvSetCpuBankSegment1 [phi:gfx_init_plane_8bppchunky::@4->dtvSetCpuBankSegment1] + //SEG618 [335] call dtvSetCpuBankSegment1 param-assignment [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) + //SEG619 [349] phi from gfx_init_plane_8bppchunky::@4 to dtvSetCpuBankSegment1 [phi:gfx_init_plane_8bppchunky::@4->dtvSetCpuBankSegment1] dtvSetCpuBankSegment1_from_b4: - //SEG551 [319] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 [phi:gfx_init_plane_8bppchunky::@4->dtvSetCpuBankSegment1#0] -- register_copy + //SEG620 [349] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 [phi:gfx_init_plane_8bppchunky::@4->dtvSetCpuBankSegment1#0] -- register_copy jsr dtvSetCpuBankSegment1 jmp b8 - //SEG552 gfx_init_plane_8bppchunky::@8 + //SEG621 gfx_init_plane_8bppchunky::@8 b8: - //SEG553 [306] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ← ++ (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] ) -- vbuz1=_inc_vbuz1 + //SEG622 [336] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ← ++ (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] ) -- vbuz1=_inc_vbuz1 inc gfxbCpuBank - //SEG554 [307] phi from gfx_init_plane_8bppchunky::@8 to gfx_init_plane_8bppchunky::@3 [phi:gfx_init_plane_8bppchunky::@8->gfx_init_plane_8bppchunky::@3] + //SEG623 [337] phi from gfx_init_plane_8bppchunky::@8 to gfx_init_plane_8bppchunky::@3 [phi:gfx_init_plane_8bppchunky::@8->gfx_init_plane_8bppchunky::@3] b3_from_b8: - //SEG555 [307] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 [phi:gfx_init_plane_8bppchunky::@8->gfx_init_plane_8bppchunky::@3#0] -- register_copy - //SEG556 [307] phi (byte*) gfx_init_plane_8bppchunky::gfxb#4 = ((byte*))(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky::@8->gfx_init_plane_8bppchunky::@3#1] -- pbuz1=pbuc1 + //SEG624 [337] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 [phi:gfx_init_plane_8bppchunky::@8->gfx_init_plane_8bppchunky::@3#0] -- register_copy + //SEG625 [337] phi (byte*) gfx_init_plane_8bppchunky::gfxb#4 = ((byte*))(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky::@8->gfx_init_plane_8bppchunky::@3#1] -- pbuz1=pbuc1 lda #<$4000 sta gfxb lda #>$4000 sta gfxb+1 jmp b3 - //SEG557 [307] phi from gfx_init_plane_8bppchunky::@2 to gfx_init_plane_8bppchunky::@3 [phi:gfx_init_plane_8bppchunky::@2->gfx_init_plane_8bppchunky::@3] + //SEG626 [337] phi from gfx_init_plane_8bppchunky::@2 to gfx_init_plane_8bppchunky::@3 [phi:gfx_init_plane_8bppchunky::@2->gfx_init_plane_8bppchunky::@3] b3_from_b2: - //SEG558 [307] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [phi:gfx_init_plane_8bppchunky::@2->gfx_init_plane_8bppchunky::@3#0] -- register_copy - //SEG559 [307] phi (byte*) gfx_init_plane_8bppchunky::gfxb#4 = (byte*) gfx_init_plane_8bppchunky::gfxb#3 [phi:gfx_init_plane_8bppchunky::@2->gfx_init_plane_8bppchunky::@3#1] -- register_copy + //SEG627 [337] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [phi:gfx_init_plane_8bppchunky::@2->gfx_init_plane_8bppchunky::@3#0] -- register_copy + //SEG628 [337] phi (byte*) gfx_init_plane_8bppchunky::gfxb#4 = (byte*) gfx_init_plane_8bppchunky::gfxb#3 [phi:gfx_init_plane_8bppchunky::@2->gfx_init_plane_8bppchunky::@3#1] -- register_copy jmp b3 - //SEG560 gfx_init_plane_8bppchunky::@3 + //SEG629 gfx_init_plane_8bppchunky::@3 b3: - //SEG561 [308] (word~) gfx_init_plane_8bppchunky::$6 ← (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ) -- vwuz1=vwuz2_plus_vbuz3 + //SEG630 [338] (word~) gfx_init_plane_8bppchunky::$6 ← (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ) -- vwuz1=vwuz2_plus_vbuz3 lda y clc adc x @@ -12188,24 +13716,24 @@ gfx_init_plane_8bppchunky: { lda #0 adc x+1 sta _6+1 - //SEG562 [309] (byte) gfx_init_plane_8bppchunky::c#0 ← ((byte)) (word~) gfx_init_plane_8bppchunky::$6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ) -- vbuz1=_byte_vwuz2 + //SEG631 [339] (byte) gfx_init_plane_8bppchunky::c#0 ← ((byte)) (word~) gfx_init_plane_8bppchunky::$6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ) -- vbuz1=_byte_vwuz2 lda _6 sta c - //SEG563 [310] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ← (byte) gfx_init_plane_8bppchunky::c#0 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) -- _deref_pbuz1=vbuz2 + //SEG632 [340] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ← (byte) gfx_init_plane_8bppchunky::c#0 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) -- _deref_pbuz1=vbuz2 lda c ldy #0 sta (gfxb),y - //SEG564 [311] (byte*) gfx_init_plane_8bppchunky::gfxb#1 ← ++ (byte*) gfx_init_plane_8bppchunky::gfxb#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 ] ) -- pbuz1=_inc_pbuz1 + //SEG633 [341] (byte*) gfx_init_plane_8bppchunky::gfxb#1 ← ++ (byte*) gfx_init_plane_8bppchunky::gfxb#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 ] ) -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG565 [312] (word) gfx_init_plane_8bppchunky::x#1 ← ++ (word) gfx_init_plane_8bppchunky::x#2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) -- vwuz1=_inc_vwuz1 + //SEG634 [342] (word) gfx_init_plane_8bppchunky::x#1 ← ++ (word) gfx_init_plane_8bppchunky::x#2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) -- vwuz1=_inc_vwuz1 inc x bne !+ inc x+1 !: - //SEG566 [313] if((word) gfx_init_plane_8bppchunky::x#1!=(word/signed word/dword/signed dword) 320) goto gfx_init_plane_8bppchunky::@2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) -- vwuz1_neq_vwuc1_then_la1 + //SEG635 [343] if((word) gfx_init_plane_8bppchunky::x#1!=(word/signed word/dword/signed dword) 320) goto gfx_init_plane_8bppchunky::@2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) -- vwuz1_neq_vwuc1_then_la1 lda x+1 cmp #>$140 bne b2_from_b3 @@ -12213,61 +13741,151 @@ gfx_init_plane_8bppchunky: { cmp #<$140 bne b2_from_b3 jmp b5 - //SEG567 gfx_init_plane_8bppchunky::@5 + //SEG636 gfx_init_plane_8bppchunky::@5 b5: - //SEG568 [314] (byte) gfx_init_plane_8bppchunky::y#1 ← ++ (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ) -- vbuz1=_inc_vbuz1 + //SEG637 [344] (byte) gfx_init_plane_8bppchunky::y#1 ← ++ (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ) -- vbuz1=_inc_vbuz1 inc y - //SEG569 [315] if((byte) gfx_init_plane_8bppchunky::y#1!=(byte/word/signed word/dword/signed dword) 200) goto gfx_init_plane_8bppchunky::@1 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ) -- vbuz1_neq_vbuc1_then_la1 + //SEG638 [345] if((byte) gfx_init_plane_8bppchunky::y#1!=(byte/word/signed word/dword/signed dword) 200) goto gfx_init_plane_8bppchunky::@1 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ) -- vbuz1_neq_vbuc1_then_la1 lda y cmp #$c8 bne b1_from_b5 - //SEG570 [316] phi from gfx_init_plane_8bppchunky::@5 to gfx_init_plane_8bppchunky::@6 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@6] + //SEG639 [346] phi from gfx_init_plane_8bppchunky::@5 to gfx_init_plane_8bppchunky::@6 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@6] b6_from_b5: jmp b6 - //SEG571 gfx_init_plane_8bppchunky::@6 + //SEG640 gfx_init_plane_8bppchunky::@6 b6: - //SEG572 [317] call dtvSetCpuBankSegment1 param-assignment [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ ] ) - //SEG573 [319] phi from gfx_init_plane_8bppchunky::@6 to dtvSetCpuBankSegment1 [phi:gfx_init_plane_8bppchunky::@6->dtvSetCpuBankSegment1] + //SEG641 [347] call dtvSetCpuBankSegment1 param-assignment [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ ] ) + //SEG642 [349] phi from gfx_init_plane_8bppchunky::@6 to dtvSetCpuBankSegment1 [phi:gfx_init_plane_8bppchunky::@6->dtvSetCpuBankSegment1] dtvSetCpuBankSegment1_from_b6: - //SEG574 [319] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = ((byte))(word/signed word/dword/signed dword) 16384/(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky::@6->dtvSetCpuBankSegment1#0] -- vbuz1=vbuc1 + //SEG643 [349] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = ((byte))(word/signed word/dword/signed dword) 16384/(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky::@6->dtvSetCpuBankSegment1#0] -- vbuz1=vbuc1 lda #$4000/$4000 sta dtvSetCpuBankSegment1.cpuBankIdx jsr dtvSetCpuBankSegment1 jmp breturn - //SEG575 gfx_init_plane_8bppchunky::@return + //SEG644 gfx_init_plane_8bppchunky::@return breturn: - //SEG576 [318] return [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ ] ) + //SEG645 [348] return [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ ] ) rts } -//SEG577 dtvSetCpuBankSegment1 +//SEG646 dtvSetCpuBankSegment1 dtvSetCpuBankSegment1: { .label cpuBank = $ff - .label cpuBankIdx = $21 - //SEG578 [320] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ← (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:300 [ ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:305 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:317 [ ] ) -- _deref_pbuc1=vbuz1 + .label cpuBankIdx = $24 + //SEG647 [350] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ← (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:330 [ ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:335 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:347 [ ] ) -- _deref_pbuc1=vbuz1 lda cpuBankIdx sta cpuBank - //SEG579 asm { .byte$32,$dd lda$ff .byte$32,$00 } + //SEG648 asm { .byte$32,$dd lda$ff .byte$32,$00 } .byte $32, $dd lda $ff .byte $32, $00 jmp breturn - //SEG580 dtvSetCpuBankSegment1::@return + //SEG649 dtvSetCpuBankSegment1::@return breturn: - //SEG581 [322] return [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:300 [ ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:305 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:317 [ ] ) + //SEG650 [352] return [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:330 [ ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:335 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:347 [ ] ) rts } -//SEG582 keyboard_init +//SEG651 gfx_init_screen_stdchar +gfx_init_screen_stdchar: { + .label _0 = $8c + .label _1 = $8d + .label _2 = $8e + .label _3 = $8f + .label ch = $27 + .label cx = $26 + .label cy = $25 + //SEG652 [354] phi from gfx_init_screen_stdchar to gfx_init_screen_stdchar::@1 [phi:gfx_init_screen_stdchar->gfx_init_screen_stdchar::@1] + b1_from_gfx_init_screen_stdchar: + //SEG653 [354] phi (byte*) gfx_init_screen_stdchar::ch#3 = (const byte*) VIC_SCREEN_STDCHAR#0 [phi:gfx_init_screen_stdchar->gfx_init_screen_stdchar::@1#0] -- pbuz1=pbuc1 + lda #VIC_SCREEN_STDCHAR + sta ch+1 + //SEG654 [354] phi (byte) gfx_init_screen_stdchar::cy#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_init_screen_stdchar->gfx_init_screen_stdchar::@1#1] -- vbuz1=vbuc1 + lda #0 + sta cy + jmp b1 + //SEG655 [354] phi from gfx_init_screen_stdchar::@3 to gfx_init_screen_stdchar::@1 [phi:gfx_init_screen_stdchar::@3->gfx_init_screen_stdchar::@1] + b1_from_b3: + //SEG656 [354] phi (byte*) gfx_init_screen_stdchar::ch#3 = (byte*) gfx_init_screen_stdchar::ch#1 [phi:gfx_init_screen_stdchar::@3->gfx_init_screen_stdchar::@1#0] -- register_copy + //SEG657 [354] phi (byte) gfx_init_screen_stdchar::cy#4 = (byte) gfx_init_screen_stdchar::cy#1 [phi:gfx_init_screen_stdchar::@3->gfx_init_screen_stdchar::@1#1] -- register_copy + jmp b1 + //SEG658 gfx_init_screen_stdchar::@1 + b1: + //SEG659 [355] phi from gfx_init_screen_stdchar::@1 to gfx_init_screen_stdchar::@2 [phi:gfx_init_screen_stdchar::@1->gfx_init_screen_stdchar::@2] + b2_from_b1: + //SEG660 [355] phi (byte*) gfx_init_screen_stdchar::ch#2 = (byte*) gfx_init_screen_stdchar::ch#3 [phi:gfx_init_screen_stdchar::@1->gfx_init_screen_stdchar::@2#0] -- register_copy + //SEG661 [355] phi (byte) gfx_init_screen_stdchar::cx#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_init_screen_stdchar::@1->gfx_init_screen_stdchar::@2#1] -- vbuz1=vbuc1 + lda #0 + sta cx + jmp b2 + //SEG662 [355] phi from gfx_init_screen_stdchar::@2 to gfx_init_screen_stdchar::@2 [phi:gfx_init_screen_stdchar::@2->gfx_init_screen_stdchar::@2] + b2_from_b2: + //SEG663 [355] phi (byte*) gfx_init_screen_stdchar::ch#2 = (byte*) gfx_init_screen_stdchar::ch#1 [phi:gfx_init_screen_stdchar::@2->gfx_init_screen_stdchar::@2#0] -- register_copy + //SEG664 [355] phi (byte) gfx_init_screen_stdchar::cx#2 = (byte) gfx_init_screen_stdchar::cx#1 [phi:gfx_init_screen_stdchar::@2->gfx_init_screen_stdchar::@2#1] -- register_copy + jmp b2 + //SEG665 gfx_init_screen_stdchar::@2 + b2: + //SEG666 [356] (byte~) gfx_init_screen_stdchar::$0 ← (byte) gfx_init_screen_stdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$0 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$0 ] ) -- vbuz1=vbuz2_band_vbuc1 + lda #$f + and cy + sta _0 + //SEG667 [357] (byte~) gfx_init_screen_stdchar::$1 ← (byte~) gfx_init_screen_stdchar::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 ] ) -- vbuz1=vbuz2_rol_4 + lda _0 + asl + asl + asl + asl + sta _1 + //SEG668 [358] (byte~) gfx_init_screen_stdchar::$2 ← (byte) gfx_init_screen_stdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 gfx_init_screen_stdchar::$2 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 gfx_init_screen_stdchar::$2 ] ) -- vbuz1=vbuz2_band_vbuc1 + lda #$f + and cx + sta _2 + //SEG669 [359] (byte~) gfx_init_screen_stdchar::$3 ← (byte~) gfx_init_screen_stdchar::$1 | (byte~) gfx_init_screen_stdchar::$2 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$3 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$3 ] ) -- vbuz1=vbuz2_bor_vbuz3 + lda _1 + ora _2 + sta _3 + //SEG670 [360] *((byte*) gfx_init_screen_stdchar::ch#2) ← (byte~) gfx_init_screen_stdchar::$3 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 ] ) -- _deref_pbuz1=vbuz2 + lda _3 + ldy #0 + sta (ch),y + //SEG671 [361] (byte*) gfx_init_screen_stdchar::ch#1 ← ++ (byte*) gfx_init_screen_stdchar::ch#2 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#2 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#2 ] ) -- pbuz1=_inc_pbuz1 + inc ch + bne !+ + inc ch+1 + !: + //SEG672 [362] (byte) gfx_init_screen_stdchar::cx#1 ← ++ (byte) gfx_init_screen_stdchar::cx#2 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#1 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#1 ] ) -- vbuz1=_inc_vbuz1 + inc cx + //SEG673 [363] if((byte) gfx_init_screen_stdchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) 40) goto gfx_init_screen_stdchar::@2 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#1 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#1 ] ) -- vbuz1_neq_vbuc1_then_la1 + lda cx + cmp #$28 + bne b2_from_b2 + jmp b3 + //SEG674 gfx_init_screen_stdchar::@3 + b3: + //SEG675 [364] (byte) gfx_init_screen_stdchar::cy#1 ← ++ (byte) gfx_init_screen_stdchar::cy#4 [ gfx_init_screen_stdchar::cy#1 gfx_init_screen_stdchar::ch#1 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#1 gfx_init_screen_stdchar::ch#1 ] ) -- vbuz1=_inc_vbuz1 + inc cy + //SEG676 [365] if((byte) gfx_init_screen_stdchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) 25) goto gfx_init_screen_stdchar::@1 [ gfx_init_screen_stdchar::cy#1 gfx_init_screen_stdchar::ch#1 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#1 gfx_init_screen_stdchar::ch#1 ] ) -- vbuz1_neq_vbuc1_then_la1 + lda cy + cmp #$19 + bne b1_from_b3 + jmp breturn + //SEG677 gfx_init_screen_stdchar::@return + breturn: + //SEG678 [366] return [ ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ ] ) + rts +} +//SEG679 keyboard_init keyboard_init: { - //SEG583 [323] *((const byte*) CIA1_PORT_A_DDR#0) ← (byte/word/signed word/dword/signed dword) 255 [ ] ( main:2::keyboard_init:6 [ ] ) -- _deref_pbuc1=vbuc2 + //SEG680 [367] *((const byte*) CIA1_PORT_A_DDR#0) ← (byte/word/signed word/dword/signed dword) 255 [ ] ( main:2::keyboard_init:6 [ ] ) -- _deref_pbuc1=vbuc2 lda #$ff sta CIA1_PORT_A_DDR - //SEG584 [324] *((const byte*) CIA1_PORT_B_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::keyboard_init:6 [ ] ) -- _deref_pbuc1=vbuc2 + //SEG681 [368] *((const byte*) CIA1_PORT_B_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::keyboard_init:6 [ ] ) -- _deref_pbuc1=vbuc2 lda #0 sta CIA1_PORT_B_DDR jmp breturn - //SEG585 keyboard_init::@return + //SEG682 keyboard_init::@return breturn: - //SEG586 [325] return [ ] ( main:2::keyboard_init:6 [ ] ) + //SEG683 [369] return [ ] ( main:2::keyboard_init:6 [ ] ) rts } DTV_PALETTE_DEFAULT: .byte 0, $f, $36, $be, $58, $db, $86, $ff, $29, $26, $3b, 5, 7, $df, $9a, $a @@ -12287,404 +13905,568 @@ keyboard_init: { REGISTER UPLIFT POTENTIAL REGISTERS Statement [5] *((const byte*) DTV_FEATURE#0) ← (const byte) DTV_FEATURE_ENABLE#0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [14] if(*((const byte*) RASTER#0)!=(byte/signed byte/word/signed word/dword/signed dword) 48+(byte/signed byte/word/signed word/dword/signed dword) 8*(byte/signed byte/word/signed word/dword/signed dword) 16) goto main::@4 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ form_cursor_count#1 form_cursor_count#12 form_cursor_count#11 form_cursor_count#3 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:12 [ keyboard_events_size#12 keyboard_events_size#37 keyboard_events_size#20 keyboard_events_size#18 keyboard_events_size#4 keyboard_events_size#15 keyboard_events_size#38 keyboard_events_size#2 keyboard_events_size#1 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:3 [ form_field_idx#1 form_field_idx#14 form_field_idx#24 form_field_idx#34 form_field_idx#3 ] -Statement [17] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto main::@7 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Statement [22] if(*((const byte*) form_ctrl_line#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@1 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) always clobbers reg byte a -Statement [25] if(*((const byte*) form_ctrl_borof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@2 [ gfx_mode::dtv_control#14 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#14 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:4 [ gfx_mode::dtv_control#12 gfx_mode::dtv_control#6 gfx_mode::dtv_control#13 gfx_mode::dtv_control#5 gfx_mode::dtv_control#11 gfx_mode::dtv_control#4 gfx_mode::dtv_control#10 gfx_mode::dtv_control#3 gfx_mode::dtv_control#15 gfx_mode::dtv_control#14 gfx_mode::dtv_control#2 ] -Statement [26] (byte) gfx_mode::dtv_control#2 ← (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 [ gfx_mode::dtv_control#2 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#2 ] ) always clobbers reg byte a -Statement [28] if(*((const byte*) form_ctrl_hicol#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@3 [ gfx_mode::dtv_control#15 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#15 ] ) always clobbers reg byte a -Statement [29] (byte) gfx_mode::dtv_control#3 ← (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 [ gfx_mode::dtv_control#3 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#3 ] ) always clobbers reg byte a -Statement [31] if(*((const byte*) form_ctrl_overs#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@4 [ gfx_mode::dtv_control#10 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#10 ] ) always clobbers reg byte a -Statement [32] (byte) gfx_mode::dtv_control#4 ← (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 [ gfx_mode::dtv_control#4 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#4 ] ) always clobbers reg byte a -Statement [34] if(*((const byte*) form_ctrl_colof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@5 [ gfx_mode::dtv_control#11 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#11 ] ) always clobbers reg byte a -Statement [35] (byte) gfx_mode::dtv_control#5 ← (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 [ gfx_mode::dtv_control#5 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#5 ] ) always clobbers reg byte a -Statement [37] if(*((const byte*) form_ctrl_chunk#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@6 [ gfx_mode::dtv_control#13 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#13 ] ) always clobbers reg byte a -Statement [38] (byte) gfx_mode::dtv_control#6 ← (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 [ gfx_mode::dtv_control#6 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#6 ] ) always clobbers reg byte a -Statement [41] if(*((const byte*) form_ctrl_ecm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@7 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) always clobbers reg byte a -Statement [44] if(*((const byte*) form_ctrl_bmm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@8 [ gfx_mode::vic_control#5 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::vic_control#5 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:5 [ gfx_mode::vic_control#4 gfx_mode::vic_control#2 gfx_mode::vic_control#5 ] -Statement [45] (byte) gfx_mode::vic_control#2 ← (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 [ gfx_mode::vic_control#2 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::vic_control#2 ] ) always clobbers reg byte a -Statement [48] if(*((const byte*) form_ctrl_mcm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@9 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) always clobbers reg byte a -Statement [52] (byte~) gfx_mode::$29 ← *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$29 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$29 ] ) always clobbers reg byte a -Statement [53] (byte) gfx_mode::plane_a_offs#0 ← (byte~) gfx_mode::$29 | *((const byte*) form_a_start_lo#0) [ gfx_mode::plane_a_offs#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a_offs#0 ] ) always clobbers reg byte a -Statement [54] (dword) gfx_mode::plane_a#0 ← ((dword))(const byte*) FORM_SCREEN#0 + (byte) gfx_mode::plane_a_offs#0 [ gfx_mode::plane_a#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 ] ) always clobbers reg byte a -Statement [55] (word~) gfx_mode::$33 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$33 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$33 ] ) always clobbers reg byte a -Statement [56] (byte~) gfx_mode::$34 ← < (word~) gfx_mode::$33 [ gfx_mode::plane_a#0 gfx_mode::$34 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$34 ] ) always clobbers reg byte a -Statement [58] (word~) gfx_mode::$35 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$35 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$35 ] ) always clobbers reg byte a -Statement [59] (byte~) gfx_mode::$36 ← > (word~) gfx_mode::$35 [ gfx_mode::plane_a#0 gfx_mode::$36 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$36 ] ) always clobbers reg byte a -Statement [61] (word~) gfx_mode::$37 ← > (dword) gfx_mode::plane_a#0 [ gfx_mode::$37 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$37 ] ) always clobbers reg byte a -Statement [62] (byte~) gfx_mode::$38 ← < (word~) gfx_mode::$37 [ gfx_mode::$38 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$38 ] ) always clobbers reg byte a -Statement [64] (byte~) gfx_mode::$39 ← *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$39 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$39 ] ) always clobbers reg byte a -Statement [65] (byte~) gfx_mode::$40 ← (byte~) gfx_mode::$39 | *((const byte*) form_a_step_lo#0) [ gfx_mode::$40 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$40 ] ) always clobbers reg byte a -Statement [67] (byte~) gfx_mode::$41 ← *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$41 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$41 ] ) always clobbers reg byte a -Statement [68] (byte~) gfx_mode::$42 ← (byte~) gfx_mode::$41 | *((const byte*) form_a_mod_lo#0) [ gfx_mode::$42 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$42 ] ) always clobbers reg byte a -Statement [70] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) always clobbers reg byte a -Statement [71] (byte~) gfx_mode::$43 ← *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$43 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$43 ] ) always clobbers reg byte a -Statement [72] (byte) gfx_mode::plane_b_offs#0 ← (byte~) gfx_mode::$43 | *((const byte*) form_b_start_lo#0) [ gfx_mode::plane_b_offs#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b_offs#0 ] ) always clobbers reg byte a -Statement [73] (dword) gfx_mode::plane_b#0 ← (const dword) PLANE_8BPP_CHUNKY#0 + (byte) gfx_mode::plane_b_offs#0 [ gfx_mode::plane_b#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 ] ) always clobbers reg byte a -Statement [74] (word~) gfx_mode::$46 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$46 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$46 ] ) always clobbers reg byte a -Statement [75] (byte~) gfx_mode::$47 ← < (word~) gfx_mode::$46 [ gfx_mode::plane_b#0 gfx_mode::$47 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$47 ] ) always clobbers reg byte a -Statement [77] (word~) gfx_mode::$48 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$48 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$48 ] ) always clobbers reg byte a -Statement [78] (byte~) gfx_mode::$49 ← > (word~) gfx_mode::$48 [ gfx_mode::plane_b#0 gfx_mode::$49 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$49 ] ) always clobbers reg byte a -Statement [80] (word~) gfx_mode::$50 ← > (dword) gfx_mode::plane_b#0 [ gfx_mode::$50 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$50 ] ) always clobbers reg byte a -Statement [81] (byte~) gfx_mode::$51 ← < (word~) gfx_mode::$50 [ gfx_mode::$51 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$51 ] ) always clobbers reg byte a -Statement [83] (byte~) gfx_mode::$52 ← *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$52 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$52 ] ) always clobbers reg byte a -Statement [84] (byte~) gfx_mode::$53 ← (byte~) gfx_mode::$52 | *((const byte*) form_b_step_lo#0) [ gfx_mode::$53 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$53 ] ) always clobbers reg byte a -Statement [86] (byte~) gfx_mode::$54 ← *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$54 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$54 ] ) always clobbers reg byte a -Statement [87] (byte~) gfx_mode::$55 ← (byte~) gfx_mode::$54 | *((const byte*) form_b_mod_lo#0) [ gfx_mode::$55 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$55 ] ) always clobbers reg byte a -Statement [89] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) always clobbers reg byte a -Statement [90] (byte~) gfx_mode::$56 ← *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$56 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$56 ] ) always clobbers reg byte a -Statement [91] (byte~) gfx_mode::$57 ← (byte~) gfx_mode::$56 | *((const byte*) form_vic_bg0_lo#0) [ gfx_mode::$57 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$57 ] ) always clobbers reg byte a -Statement [93] (byte~) gfx_mode::$58 ← *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$58 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$58 ] ) always clobbers reg byte a -Statement [94] (byte~) gfx_mode::$59 ← (byte~) gfx_mode::$58 | *((const byte*) form_vic_bg1_lo#0) [ gfx_mode::$59 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$59 ] ) always clobbers reg byte a -Statement [96] (byte~) gfx_mode::$60 ← *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$60 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$60 ] ) always clobbers reg byte a -Statement [97] (byte~) gfx_mode::$61 ← (byte~) gfx_mode::$60 | *((const byte*) form_vic_bg2_lo#0) [ gfx_mode::$61 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$61 ] ) always clobbers reg byte a -Statement [99] (byte~) gfx_mode::$62 ← *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$62 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$62 ] ) always clobbers reg byte a -Statement [100] (byte~) gfx_mode::$63 ← (byte~) gfx_mode::$62 | *((const byte*) form_vic_bg3_lo#0) [ gfx_mode::$63 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$63 ] ) always clobbers reg byte a -Statement [109] (byte*) form_field_ptr::return#3 ← (byte*) form_field_ptr::return#0 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#3 ] ( main:2::form_control:19 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#3 ] ) always clobbers reg byte a -Statement [110] (byte*) form_control::field#0 ← (byte*) form_field_ptr::return#3 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_control::field#0 ] ( main:2::form_control:19 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_control::field#0 ] ) always clobbers reg byte a -Statement [114] if((signed byte) form_cursor_count#11>=(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2) goto form_control::@2 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ) always clobbers reg byte a -Statement [115] (byte/word/dword~) form_control::$6 ← *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) 128 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$6 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$6 ] ) always clobbers reg byte a reg byte y -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:12 [ keyboard_events_size#12 keyboard_events_size#37 keyboard_events_size#20 keyboard_events_size#18 keyboard_events_size#4 keyboard_events_size#15 keyboard_events_size#38 keyboard_events_size#2 keyboard_events_size#1 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:3 [ form_field_idx#1 form_field_idx#14 form_field_idx#24 form_field_idx#34 form_field_idx#3 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:2 [ form_cursor_count#1 form_cursor_count#12 form_cursor_count#11 form_cursor_count#3 ] -Statement [116] *((byte*) form_control::field#0) ← (byte/word/dword~) form_control::$6 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ) always clobbers reg byte y -Statement [124] (byte~) form_control::$12 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_control::$12 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_control::$12 keyboard_modifiers#16 ] ) always clobbers reg byte a reg byte y -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:13 [ keyboard_modifiers#16 keyboard_modifiers#15 keyboard_modifiers#4 keyboard_modifiers#14 keyboard_modifiers#3 keyboard_modifiers#13 keyboard_modifiers#5 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:13 [ keyboard_modifiers#16 keyboard_modifiers#15 keyboard_modifiers#4 keyboard_modifiers#14 keyboard_modifiers#3 keyboard_modifiers#13 keyboard_modifiers#5 ] -Statement [125] *((byte*) form_control::field#0) ← (byte~) form_control::$12 [ form_field_idx#1 keyboard_events_size#18 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 keyboard_modifiers#16 ] ) always clobbers reg byte y -Statement [126] (byte~) form_control::$13 ← (byte) keyboard_modifiers#16 & (const byte) KEY_MODIFIER_SHIFT#0 [ form_field_idx#1 keyboard_events_size#18 form_control::$13 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::$13 ] ) always clobbers reg byte a -Statement [138] (byte~) form_control::$24 ← (byte) keyboard_modifiers#16 & (const byte) KEY_MODIFIER_SHIFT#0 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::$24 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::$24 ] ) always clobbers reg byte a -Statement [141] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#1)<=*((const byte[]) form_fields_max#0 + (byte) form_field_idx#1)) goto form_control::@12 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) always clobbers reg byte a reg byte y -Statement [142] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) always clobbers reg byte a -Statement [143] *((byte*) form_control::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1)) [ form_field_idx#1 keyboard_events_size#18 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_cursor_count#11 ] ) always clobbers reg byte a reg byte y -Potential register analysis [144] *(form_fields_val#0 + form_field_idx#1) ← -- *(form_fields_val#0 + form_field_idx#1) missing fragment pbuc1_derefidx_vbuxx=_dec_pbuc1_derefidx_vbuxx allocation: reg byte x [ form_field_idx#1 form_field_idx#14 form_field_idx#24 form_field_idx#34 form_field_idx#3 ] +Statement [18] if(*((const byte*) form_ctrl_line#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@1 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:13 [ form_cursor_count#21 form_cursor_count#16 form_cursor_count#1 form_cursor_count#13 form_cursor_count#15 form_cursor_count#5 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:15 [ form_field_idx#28 form_field_idx#18 form_field_idx#1 form_field_idx#14 form_field_idx#32 form_field_idx#43 form_field_idx#44 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:10 [ keyboard_events_size#18 keyboard_events_size#112 keyboard_events_size#104 keyboard_events_size#47 keyboard_events_size#27 keyboard_events_size#11 keyboard_events_size#45 keyboard_events_size#13 keyboard_events_size#24 keyboard_events_size#4 keyboard_events_size#105 keyboard_events_size#111 keyboard_events_size#2 keyboard_events_size#1 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:14 [ keyboard_modifiers#45 keyboard_modifiers#24 keyboard_modifiers#11 keyboard_modifiers#42 keyboard_modifiers#13 keyboard_modifiers#21 keyboard_modifiers#20 keyboard_modifiers#4 keyboard_modifiers#19 keyboard_modifiers#3 keyboard_modifiers#18 keyboard_modifiers#5 ] +Statement [21] if(*((const byte*) form_ctrl_borof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@2 [ gfx_mode::dtv_control#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ gfx_mode::dtv_control#12 gfx_mode::dtv_control#6 gfx_mode::dtv_control#13 gfx_mode::dtv_control#5 gfx_mode::dtv_control#11 gfx_mode::dtv_control#4 gfx_mode::dtv_control#10 gfx_mode::dtv_control#15 gfx_mode::dtv_control#14 gfx_mode::dtv_control#2 gfx_mode::dtv_control#3 ] +Statement [22] (byte) gfx_mode::dtv_control#2 ← (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 [ gfx_mode::dtv_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [24] if(*((const byte*) form_ctrl_hicol#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@3 [ gfx_mode::dtv_control#15 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#15 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [25] (byte) gfx_mode::dtv_control#3 ← (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 [ gfx_mode::dtv_control#3 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#3 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [27] if(*((const byte*) form_ctrl_overs#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@4 [ gfx_mode::dtv_control#10 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#10 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [28] (byte) gfx_mode::dtv_control#4 ← (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 [ gfx_mode::dtv_control#4 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#4 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [30] if(*((const byte*) form_ctrl_colof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@5 [ gfx_mode::dtv_control#11 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#11 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [31] (byte) gfx_mode::dtv_control#5 ← (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 [ gfx_mode::dtv_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [33] if(*((const byte*) form_ctrl_chunk#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@6 [ gfx_mode::dtv_control#13 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#13 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [34] (byte) gfx_mode::dtv_control#6 ← (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 [ gfx_mode::dtv_control#6 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#6 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [37] if(*((const byte*) form_ctrl_ecm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@7 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [40] if(*((const byte*) form_ctrl_bmm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@8 [ gfx_mode::vic_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::vic_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:3 [ gfx_mode::vic_control#4 gfx_mode::vic_control#2 gfx_mode::vic_control#5 ] +Statement [41] (byte) gfx_mode::vic_control#2 ← (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 [ gfx_mode::vic_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::vic_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [44] if(*((const byte*) form_ctrl_mcm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@9 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [48] (byte~) gfx_mode::$29 ← *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$29 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$29 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [49] (byte) gfx_mode::plane_a_offs#0 ← (byte~) gfx_mode::$29 | *((const byte*) form_a_start_lo#0) [ gfx_mode::plane_a_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [50] (dword) gfx_mode::plane_a#0 ← ((dword))(const byte*) FORM_SCREEN#0 + (byte) gfx_mode::plane_a_offs#0 [ gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [51] (word~) gfx_mode::$33 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$33 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$33 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [52] (byte~) gfx_mode::$34 ← < (word~) gfx_mode::$33 [ gfx_mode::plane_a#0 gfx_mode::$34 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$34 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [54] (word~) gfx_mode::$35 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$35 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$35 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [55] (byte~) gfx_mode::$36 ← > (word~) gfx_mode::$35 [ gfx_mode::plane_a#0 gfx_mode::$36 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$36 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [57] (word~) gfx_mode::$37 ← > (dword) gfx_mode::plane_a#0 [ gfx_mode::$37 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$37 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [58] (byte~) gfx_mode::$38 ← < (word~) gfx_mode::$37 [ gfx_mode::$38 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$38 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [60] (byte~) gfx_mode::$39 ← *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$39 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$39 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [61] (byte~) gfx_mode::$40 ← (byte~) gfx_mode::$39 | *((const byte*) form_a_step_lo#0) [ gfx_mode::$40 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$40 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [63] (byte~) gfx_mode::$41 ← *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$41 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$41 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [64] (byte~) gfx_mode::$42 ← (byte~) gfx_mode::$41 | *((const byte*) form_a_mod_lo#0) [ gfx_mode::$42 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$42 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [66] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [67] (byte~) gfx_mode::$43 ← *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$43 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$43 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [68] (byte) gfx_mode::plane_b_offs#0 ← (byte~) gfx_mode::$43 | *((const byte*) form_b_start_lo#0) [ gfx_mode::plane_b_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [69] (dword) gfx_mode::plane_b#0 ← (const dword) PLANE_8BPP_CHUNKY#0 + (byte) gfx_mode::plane_b_offs#0 [ gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [70] (word~) gfx_mode::$46 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$46 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$46 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [71] (byte~) gfx_mode::$47 ← < (word~) gfx_mode::$46 [ gfx_mode::plane_b#0 gfx_mode::$47 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$47 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [73] (word~) gfx_mode::$48 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$48 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$48 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [74] (byte~) gfx_mode::$49 ← > (word~) gfx_mode::$48 [ gfx_mode::plane_b#0 gfx_mode::$49 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$49 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [76] (word~) gfx_mode::$50 ← > (dword) gfx_mode::plane_b#0 [ gfx_mode::$50 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$50 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [77] (byte~) gfx_mode::$51 ← < (word~) gfx_mode::$50 [ gfx_mode::$51 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$51 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [79] (byte~) gfx_mode::$52 ← *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$52 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$52 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [80] (byte~) gfx_mode::$53 ← (byte~) gfx_mode::$52 | *((const byte*) form_b_step_lo#0) [ gfx_mode::$53 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$53 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [82] (byte~) gfx_mode::$54 ← *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$54 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$54 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [83] (byte~) gfx_mode::$55 ← (byte~) gfx_mode::$54 | *((const byte*) form_b_mod_lo#0) [ gfx_mode::$55 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$55 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [85] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [86] (byte~) gfx_mode::$56 ← *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$56 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$56 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [87] (byte~) gfx_mode::$57 ← (byte~) gfx_mode::$56 | *((const byte*) form_vic_bg0_lo#0) [ gfx_mode::$57 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$57 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [89] (byte~) gfx_mode::$58 ← *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$58 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$58 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [90] (byte~) gfx_mode::$59 ← (byte~) gfx_mode::$58 | *((const byte*) form_vic_bg1_lo#0) [ gfx_mode::$59 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$59 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [92] (byte~) gfx_mode::$60 ← *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$60 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$60 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [93] (byte~) gfx_mode::$61 ← (byte~) gfx_mode::$60 | *((const byte*) form_vic_bg2_lo#0) [ gfx_mode::$61 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$61 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [95] (byte~) gfx_mode::$62 ← *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$62 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$62 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [96] (byte~) gfx_mode::$63 ← (byte~) gfx_mode::$62 | *((const byte*) form_vic_bg3_lo#0) [ gfx_mode::$63 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$63 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [106] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto gfx_mode::@14 [ keyboard_events_size#45 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#45 ] ) always clobbers reg byte a +Statement [125] if((byte) keyboard_event_scan::row_scan#0==*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:7 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:9 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:91 [ keyboard_event_scan::row_scan#0 ] +Statement [127] (byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$3 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$3 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$3 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:8 [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ] +Statement [128] (byte~) keyboard_event_scan::$4 ← (byte~) keyboard_event_scan::$3 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$4 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$4 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$4 ] ) always clobbers reg byte a +Statement [130] if((byte) keyboard_events_size#18==(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@4 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) always clobbers reg byte a +Statement [131] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] ) always clobbers reg byte a +Statement [133] (byte/word/dword~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) 64 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$12 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$12 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$12 ] ) always clobbers reg byte a +Statement [140] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ) always clobbers reg byte a +Statement [155] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#18 | (const byte) KEY_MODIFIER_RSHIFT#0 [ keyboard_events_size#105 keyboard_modifiers#3 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#3 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#3 ] ) always clobbers reg byte a +Statement [161] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#19 | (const byte) KEY_MODIFIER_CTRL#0 [ keyboard_events_size#105 keyboard_modifiers#4 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#4 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#4 ] ) always clobbers reg byte a +Statement [167] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#20 | (const byte) KEY_MODIFIER_COMMODORE#0 [ keyboard_events_size#105 keyboard_modifiers#5 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#5 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#5 ] ) always clobbers reg byte a +Statement [170] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ← (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) always clobbers reg byte a +Statement [172] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ keyboard_event_scan::row#2 keyboard_events_size#112 keyboard_event_scan::keycode#1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_events_size#112 keyboard_event_scan::keycode#1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_events_size#112 keyboard_event_scan::keycode#1 ] ) always clobbers reg byte a +Statement [176] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:105 [ keyboard_event_pressed::row_bits#0 ] +Statement [177] (byte) keyboard_event_pressed::return#10 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) [ keyboard_event_pressed::return#10 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] ) always clobbers reg byte a +Statement [179] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_matrix_read:122 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_matrix_read:122 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] ) always clobbers reg byte a +Statement [180] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_matrix_read:122 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_matrix_read:122 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] ) always clobbers reg byte a +Statement [182] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) 65536 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [183] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [184] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [185] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [186] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) 16384 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [187] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [188] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [189] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [190] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) 16383/(byte/signed byte/word/signed word/dword/signed dword) 64|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) 16383/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [192] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ← *((const byte[16]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#2 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#2 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:12 [ form_mode::i#2 form_mode::i#1 ] +Statement [195] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [200] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto form_mode::@5 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 ] ( main:2::form_mode:15 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 ] ) always clobbers reg byte a +Statement [208] (byte*) form_field_ptr::return#3 ← (byte*) form_field_ptr::return#0 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#3 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#3 ] ) always clobbers reg byte a +Statement [209] (byte*) form_control::field#0 ← (byte*) form_field_ptr::return#3 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_control::field#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_control::field#0 ] ) always clobbers reg byte a +Statement [213] if((signed byte) form_cursor_count#15>=(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2) goto form_control::@2 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a +Statement [214] (byte/word/dword~) form_control::$6 ← *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) 128 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$6 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$6 ] ) always clobbers reg byte a reg byte y +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:10 [ keyboard_events_size#18 keyboard_events_size#112 keyboard_events_size#104 keyboard_events_size#47 keyboard_events_size#27 keyboard_events_size#11 keyboard_events_size#45 keyboard_events_size#13 keyboard_events_size#24 keyboard_events_size#4 keyboard_events_size#105 keyboard_events_size#111 keyboard_events_size#2 keyboard_events_size#1 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:15 [ form_field_idx#28 form_field_idx#18 form_field_idx#1 form_field_idx#14 form_field_idx#32 form_field_idx#43 form_field_idx#44 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:13 [ form_cursor_count#21 form_cursor_count#16 form_cursor_count#1 form_cursor_count#13 form_cursor_count#15 form_cursor_count#5 ] +Statement [215] *((byte*) form_control::field#0) ← (byte/word/dword~) form_control::$6 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte y +Statement [223] (byte~) form_control::$12 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_control::$12 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_control::$12 ] ) always clobbers reg byte a reg byte y +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:14 [ keyboard_modifiers#45 keyboard_modifiers#24 keyboard_modifiers#11 keyboard_modifiers#42 keyboard_modifiers#13 keyboard_modifiers#21 keyboard_modifiers#20 keyboard_modifiers#4 keyboard_modifiers#19 keyboard_modifiers#3 keyboard_modifiers#18 keyboard_modifiers#5 ] +Statement [224] *((byte*) form_control::field#0) ← (byte~) form_control::$12 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ) always clobbers reg byte y +Statement [225] (byte~) form_control::$13 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::$13 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::$13 ] ) always clobbers reg byte a +Statement [237] (byte~) form_control::$24 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$24 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$24 ] ) always clobbers reg byte a +Statement [240] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)<=*((const byte[]) form_fields_max#0 + (byte) form_field_idx#28)) goto form_control::@12 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a reg byte y +Statement [241] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a +Statement [242] *((byte*) form_control::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ) always clobbers reg byte a reg byte y +Potential register analysis [243] *(form_fields_val#0 + form_field_idx#28) ← -- *(form_fields_val#0 + form_field_idx#28) missing fragment pbuc1_derefidx_vbuxx=_dec_pbuc1_derefidx_vbuxx allocation: reg byte x [ form_field_idx#28 form_field_idx#18 form_field_idx#1 form_field_idx#14 form_field_idx#32 form_field_idx#43 form_field_idx#44 ] MISSING FRAGMENTS pbuc1_derefidx_vbuxx=_dec_pbuc1_derefidx_vbuxx -Statement [144] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← -- *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) always clobbers reg byte a reg byte x -Removing always clobbered register reg byte x as potential for zp ZP_BYTE:3 [ form_field_idx#1 form_field_idx#14 form_field_idx#24 form_field_idx#34 form_field_idx#3 ] -Removing always clobbered register reg byte x as potential for zp ZP_BYTE:12 [ keyboard_events_size#12 keyboard_events_size#37 keyboard_events_size#20 keyboard_events_size#18 keyboard_events_size#4 keyboard_events_size#15 keyboard_events_size#38 keyboard_events_size#2 keyboard_events_size#1 ] -Removing always clobbered register reg byte x as potential for zp ZP_BYTE:2 [ form_cursor_count#1 form_cursor_count#12 form_cursor_count#11 form_cursor_count#3 ] -Statement [145] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#1)!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@12 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) always clobbers reg byte a reg byte y -Statement [146] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← *((const byte[]) form_fields_max#0 + (byte) form_field_idx#1) [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) always clobbers reg byte a reg byte y -Statement [147] (byte~) form_control::$7 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$7 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$7 ] ) always clobbers reg byte a reg byte y -Statement [148] *((byte*) form_control::field#0) ← (byte~) form_control::$7 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ) always clobbers reg byte y -Statement [150] if((byte) keyboard_events_size#15!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_get::@1 [ keyboard_events_size#15 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ) always clobbers reg byte a -Statement [161] if((byte) keyboard_event_scan::row_scan#0==*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_event_scan::row_scan#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_event_scan::row_scan#0 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:9 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:11 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:93 [ keyboard_event_scan::row_scan#0 ] -Statement [163] (byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$3 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$3 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:10 [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ] -Statement [164] (byte~) keyboard_event_scan::$4 ← (byte~) keyboard_event_scan::$3 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$4 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$4 ] ) always clobbers reg byte a -Statement [166] if((byte) keyboard_events_size#12==(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@4 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) always clobbers reg byte a -Statement [167] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::event_type#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::event_type#0 ] ) always clobbers reg byte a -Statement [169] (byte/word/dword~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) 64 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$12 ] ) always clobbers reg byte a -Statement [170] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#12) ← (byte/word/dword~) keyboard_event_scan::$12 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) always clobbers reg byte y -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:9 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:93 [ keyboard_event_scan::row_scan#0 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:10 [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:11 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 ] -Statement [176] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ) always clobbers reg byte a -Statement [191] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#13 | (const byte) KEY_MODIFIER_RSHIFT#0 [ keyboard_events_size#15 keyboard_modifiers#3 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#3 ] ) always clobbers reg byte a -Statement [197] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#14 | (const byte) KEY_MODIFIER_CTRL#0 [ keyboard_events_size#15 keyboard_modifiers#4 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#4 ] ) always clobbers reg byte a -Statement [203] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#15 | (const byte) KEY_MODIFIER_COMMODORE#0 [ keyboard_events_size#15 keyboard_modifiers#5 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#5 ] ) always clobbers reg byte a -Statement [206] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#12) ← (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) always clobbers reg byte a reg byte y -Statement [208] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ keyboard_event_scan::row#2 keyboard_events_size#37 keyboard_event_scan::keycode#1 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_events_size#37 keyboard_event_scan::keycode#1 ] ) always clobbers reg byte a -Statement [212] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:107 [ keyboard_event_pressed::row_bits#0 ] -Statement [213] (byte) keyboard_event_pressed::return#10 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) [ keyboard_event_pressed::return#10 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::return#10 ] ) always clobbers reg byte a -Statement [215] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_matrix_read:158 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 ] ) always clobbers reg byte a -Statement [216] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_matrix_read:158 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#0 ] ) always clobbers reg byte a -Statement [220] (word~) form_field_ptr::$2 ← *((const byte[25]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[25]) form_line_lo#0 + (byte) form_field_ptr::y#0) [ form_field_ptr::field_idx#2 form_field_ptr::$2 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::field_idx#2 form_field_ptr::$2 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::$2 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:15 [ form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 form_field_ptr::field_idx#0 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:17 [ form_render_values::idx#2 form_render_values::idx#1 ] -Statement [222] (byte*) form_field_ptr::return#0 ← (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 [ form_field_ptr::return#0 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#0 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::return#0 ] ) always clobbers reg byte a -Statement [224] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) 65536 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Statement [225] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Statement [226] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Statement [227] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Statement [228] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) 16384 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Statement [229] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Statement [230] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Statement [231] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Statement [232] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) 16383/(byte/signed byte/word/signed word/dword/signed dword) 64|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) 16383/(word/signed word/dword/signed dword) 1024 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Statement [234] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ← *((const byte[16]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) [ form_mode::i#2 ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_mode::i#2 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:16 [ form_mode::i#2 form_mode::i#1 ] -Statement [237] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Statement [238] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Statement [257] (byte*) form_field_ptr::return#2 ← (byte*) form_field_ptr::return#0 [ form_render_values::idx#2 form_field_ptr::return#2 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#2 form_field_ptr::return#2 ] ) always clobbers reg byte a -Statement [258] (byte*) form_render_values::field#0 ← (byte*) form_field_ptr::return#2 [ form_render_values::idx#2 form_render_values::field#0 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#2 form_render_values::field#0 ] ) always clobbers reg byte a -Statement [259] *((byte*) form_render_values::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) [ form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#2 ] ) always clobbers reg byte a reg byte y -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:17 [ form_render_values::idx#2 form_render_values::idx#1 ] -Statement [269] (byte*) form_set_screen::line#1 ← (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ form_set_screen::y#2 form_set_screen::line#1 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::y#2 form_set_screen::line#1 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:20 [ form_set_screen::y#2 form_set_screen::y#1 ] -Statement [274] (byte*~) print_char_cursor#60 ← (byte*) print_set_screen::screen#2 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ) always clobbers reg byte a -Statement [276] if(*((byte*) print_str_lines::str#3)!=(byte) '@') goto print_str_lines::@4 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ) always clobbers reg byte a reg byte y -Statement [279] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#4) [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 print_str_lines::ch#0 ] ) always clobbers reg byte a reg byte y -Statement [282] *((byte*) print_char_cursor#16) ← (byte) print_str_lines::ch#0 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ) always clobbers reg byte y -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:123 [ print_str_lines::ch#0 ] -Statement [288] (byte*~) print_char_cursor#61 ← (byte*) print_line_cursor#18 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#18 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#18 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#18 ] ) always clobbers reg byte a -Statement [291] (byte*) print_line_cursor#18 ← (byte*) print_line_cursor#17 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ print_line_cursor#18 print_char_cursor#31 ] ( main:2::form_init:10::print_str_lines:243::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] main:2::form_init:10::print_str_lines:247::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] ) always clobbers reg byte a -Statement [292] if((byte*) print_line_cursor#18<(byte*) print_char_cursor#31) goto print_ln::@1 [ print_line_cursor#18 print_char_cursor#31 ] ( main:2::form_init:10::print_str_lines:243::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] main:2::form_init:10::print_str_lines:247::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] ) always clobbers reg byte a -Statement [303] if((byte*) gfx_init_plane_8bppchunky::gfxb#3!=(word/dword/signed dword) 32768) goto gfx_init_plane_8bppchunky::@3 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:27 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:30 [ gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] -Statement [308] (word~) gfx_init_plane_8bppchunky::$6 ← (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ) always clobbers reg byte a -Statement [309] (byte) gfx_init_plane_8bppchunky::c#0 ← ((byte)) (word~) gfx_init_plane_8bppchunky::$6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ) always clobbers reg byte a -Statement [310] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ← (byte) gfx_init_plane_8bppchunky::c#0 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) always clobbers reg byte y -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:27 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:30 [ gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] -Statement [313] if((word) gfx_init_plane_8bppchunky::x#1!=(word/signed word/dword/signed dword) 320) goto gfx_init_plane_8bppchunky::@2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) always clobbers reg byte a +Statement [243] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← -- *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a reg byte x +Removing always clobbered register reg byte x as potential for zp ZP_BYTE:10 [ keyboard_events_size#18 keyboard_events_size#112 keyboard_events_size#104 keyboard_events_size#47 keyboard_events_size#27 keyboard_events_size#11 keyboard_events_size#45 keyboard_events_size#13 keyboard_events_size#24 keyboard_events_size#4 keyboard_events_size#105 keyboard_events_size#111 keyboard_events_size#2 keyboard_events_size#1 ] +Removing always clobbered register reg byte x as potential for zp ZP_BYTE:14 [ keyboard_modifiers#45 keyboard_modifiers#24 keyboard_modifiers#11 keyboard_modifiers#42 keyboard_modifiers#13 keyboard_modifiers#21 keyboard_modifiers#20 keyboard_modifiers#4 keyboard_modifiers#19 keyboard_modifiers#3 keyboard_modifiers#18 keyboard_modifiers#5 ] +Removing always clobbered register reg byte x as potential for zp ZP_BYTE:15 [ form_field_idx#28 form_field_idx#18 form_field_idx#1 form_field_idx#14 form_field_idx#32 form_field_idx#43 form_field_idx#44 ] +Removing always clobbered register reg byte x as potential for zp ZP_BYTE:13 [ form_cursor_count#21 form_cursor_count#16 form_cursor_count#1 form_cursor_count#13 form_cursor_count#15 form_cursor_count#5 ] +Statement [244] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@12 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a reg byte y +Statement [245] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← *((const byte[]) form_fields_max#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a reg byte y +Statement [248] (byte~) form_control::$7 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$7 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$7 ] ) always clobbers reg byte a reg byte y +Statement [249] *((byte*) form_control::field#0) ← (byte~) form_control::$7 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte y +Statement [253] (word~) form_field_ptr::$2 ← *((const byte[25]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[25]) form_line_lo#0 + (byte) form_field_ptr::y#0) [ form_field_ptr::field_idx#2 form_field_ptr::$2 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#2 form_field_ptr::$2 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::$2 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:17 [ form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 form_field_ptr::field_idx#0 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:18 [ form_render_values::idx#2 form_render_values::idx#1 ] +Statement [255] (byte*) form_field_ptr::return#0 ← (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 [ form_field_ptr::return#0 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::return#0 ] ) always clobbers reg byte a +Statement [278] (byte*) form_field_ptr::return#2 ← (byte*) form_field_ptr::return#0 [ form_render_values::idx#2 form_field_ptr::return#2 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 form_field_ptr::return#2 ] ) always clobbers reg byte a +Statement [279] (byte*) form_render_values::field#0 ← (byte*) form_field_ptr::return#2 [ form_render_values::idx#2 form_render_values::field#0 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 form_render_values::field#0 ] ) always clobbers reg byte a +Statement [280] *((byte*) form_render_values::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) [ form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 ] ) always clobbers reg byte a reg byte y +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:18 [ form_render_values::idx#2 form_render_values::idx#1 ] +Statement [290] (byte*) form_set_screen::line#1 ← (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ form_set_screen::y#2 form_set_screen::line#1 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::y#2 form_set_screen::line#1 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:21 [ form_set_screen::y#2 form_set_screen::y#1 ] +Statement [295] (byte*~) print_char_cursor#60 ← (byte*) print_set_screen::screen#2 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ) always clobbers reg byte a +Statement [297] if(*((byte*) print_str_lines::str#3)!=(byte) '@') goto print_str_lines::@4 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ) always clobbers reg byte a reg byte y +Statement [300] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#4) [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] ) always clobbers reg byte a reg byte y +Statement [303] *((byte*) print_char_cursor#20) ← (byte) print_str_lines::ch#0 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ) always clobbers reg byte y +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:134 [ print_str_lines::ch#0 ] +Statement [309] (byte*~) print_char_cursor#61 ← (byte*) print_line_cursor#22 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#22 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#22 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#22 ] ) always clobbers reg byte a +Statement [312] (byte*) print_line_cursor#22 ← (byte*) print_line_cursor#21 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ print_line_cursor#22 print_char_cursor#38 ] ( main:2::form_init:10::print_str_lines:262::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] main:2::form_init:10::print_str_lines:268::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] ) always clobbers reg byte a +Statement [313] if((byte*) print_line_cursor#22<(byte*) print_char_cursor#38) goto print_ln::@1 [ print_line_cursor#22 print_char_cursor#38 ] ( main:2::form_init:10::print_str_lines:262::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] main:2::form_init:10::print_str_lines:268::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] ) always clobbers reg byte a +Statement [315] (byte*) print_cls::sc#0 ← (byte*) print_set_screen::screen#2 [ print_set_screen::screen#2 print_cls::sc#0 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#0 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#0 ] ) always clobbers reg byte a +Statement [317] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_set_screen::screen#2 print_cls::sc#2 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#2 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [319] (byte*~) print_cls::$0 ← (byte*) print_set_screen::screen#2 + (word/signed word/dword/signed dword) 1000 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] ) always clobbers reg byte a +Statement [320] if((byte*) print_cls::sc#1!=(byte*~) print_cls::$0) goto print_cls::@1 [ print_set_screen::screen#2 print_cls::sc#1 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#1 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#1 ] ) always clobbers reg byte a +Statement [333] if((byte*) gfx_init_plane_8bppchunky::gfxb#3!=(word/dword/signed dword) 32768) goto gfx_init_plane_8bppchunky::@3 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:30 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:33 [ gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] +Statement [338] (word~) gfx_init_plane_8bppchunky::$6 ← (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ) always clobbers reg byte a +Statement [339] (byte) gfx_init_plane_8bppchunky::c#0 ← ((byte)) (word~) gfx_init_plane_8bppchunky::$6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ) always clobbers reg byte a +Statement [340] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ← (byte) gfx_init_plane_8bppchunky::c#0 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) always clobbers reg byte y +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:30 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:33 [ gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] +Statement [343] if((word) gfx_init_plane_8bppchunky::x#1!=(word/signed word/dword/signed dword) 320) goto gfx_init_plane_8bppchunky::@2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) always clobbers reg byte a Statement asm { .byte$32,$dd lda$ff .byte$32,$00 } always clobbers reg byte a -Statement [323] *((const byte*) CIA1_PORT_A_DDR#0) ← (byte/word/signed word/dword/signed dword) 255 [ ] ( main:2::keyboard_init:6 [ ] ) always clobbers reg byte a -Statement [324] *((const byte*) CIA1_PORT_B_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::keyboard_init:6 [ ] ) always clobbers reg byte a +Statement [356] (byte~) gfx_init_screen_stdchar::$0 ← (byte) gfx_init_screen_stdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$0 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$0 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:37 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cy#1 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:38 [ gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::cx#1 ] +Statement [358] (byte~) gfx_init_screen_stdchar::$2 ← (byte) gfx_init_screen_stdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 gfx_init_screen_stdchar::$2 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 gfx_init_screen_stdchar::$2 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:141 [ gfx_init_screen_stdchar::$1 ] +Statement [360] *((byte*) gfx_init_screen_stdchar::ch#2) ← (byte~) gfx_init_screen_stdchar::$3 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 ] ) always clobbers reg byte y +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:37 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cy#1 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:38 [ gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::cx#1 ] +Statement [367] *((const byte*) CIA1_PORT_A_DDR#0) ← (byte/word/signed word/dword/signed dword) 255 [ ] ( main:2::keyboard_init:6 [ ] ) always clobbers reg byte a +Statement [368] *((const byte*) CIA1_PORT_B_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::keyboard_init:6 [ ] ) always clobbers reg byte a Statement [5] *((const byte*) DTV_FEATURE#0) ← (const byte) DTV_FEATURE_ENABLE#0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [14] if(*((const byte*) RASTER#0)!=(byte/signed byte/word/signed word/dword/signed dword) 48+(byte/signed byte/word/signed word/dword/signed dword) 8*(byte/signed byte/word/signed word/dword/signed dword) 16) goto main::@4 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Statement [17] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto main::@7 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Statement [22] if(*((const byte*) form_ctrl_line#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@1 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) always clobbers reg byte a -Statement [25] if(*((const byte*) form_ctrl_borof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@2 [ gfx_mode::dtv_control#14 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#14 ] ) always clobbers reg byte a -Statement [26] (byte) gfx_mode::dtv_control#2 ← (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 [ gfx_mode::dtv_control#2 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#2 ] ) always clobbers reg byte a -Statement [28] if(*((const byte*) form_ctrl_hicol#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@3 [ gfx_mode::dtv_control#15 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#15 ] ) always clobbers reg byte a -Statement [29] (byte) gfx_mode::dtv_control#3 ← (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 [ gfx_mode::dtv_control#3 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#3 ] ) always clobbers reg byte a -Statement [31] if(*((const byte*) form_ctrl_overs#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@4 [ gfx_mode::dtv_control#10 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#10 ] ) always clobbers reg byte a -Statement [32] (byte) gfx_mode::dtv_control#4 ← (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 [ gfx_mode::dtv_control#4 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#4 ] ) always clobbers reg byte a -Statement [34] if(*((const byte*) form_ctrl_colof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@5 [ gfx_mode::dtv_control#11 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#11 ] ) always clobbers reg byte a -Statement [35] (byte) gfx_mode::dtv_control#5 ← (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 [ gfx_mode::dtv_control#5 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#5 ] ) always clobbers reg byte a -Statement [37] if(*((const byte*) form_ctrl_chunk#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@6 [ gfx_mode::dtv_control#13 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#13 ] ) always clobbers reg byte a -Statement [38] (byte) gfx_mode::dtv_control#6 ← (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 [ gfx_mode::dtv_control#6 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#6 ] ) always clobbers reg byte a -Statement [41] if(*((const byte*) form_ctrl_ecm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@7 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) always clobbers reg byte a -Statement [44] if(*((const byte*) form_ctrl_bmm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@8 [ gfx_mode::vic_control#5 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::vic_control#5 ] ) always clobbers reg byte a -Statement [45] (byte) gfx_mode::vic_control#2 ← (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 [ gfx_mode::vic_control#2 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::vic_control#2 ] ) always clobbers reg byte a -Statement [48] if(*((const byte*) form_ctrl_mcm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@9 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) always clobbers reg byte a -Statement [52] (byte~) gfx_mode::$29 ← *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$29 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$29 ] ) always clobbers reg byte a -Statement [53] (byte) gfx_mode::plane_a_offs#0 ← (byte~) gfx_mode::$29 | *((const byte*) form_a_start_lo#0) [ gfx_mode::plane_a_offs#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a_offs#0 ] ) always clobbers reg byte a -Statement [54] (dword) gfx_mode::plane_a#0 ← ((dword))(const byte*) FORM_SCREEN#0 + (byte) gfx_mode::plane_a_offs#0 [ gfx_mode::plane_a#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 ] ) always clobbers reg byte a -Statement [55] (word~) gfx_mode::$33 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$33 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$33 ] ) always clobbers reg byte a -Statement [56] (byte~) gfx_mode::$34 ← < (word~) gfx_mode::$33 [ gfx_mode::plane_a#0 gfx_mode::$34 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$34 ] ) always clobbers reg byte a -Statement [58] (word~) gfx_mode::$35 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$35 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$35 ] ) always clobbers reg byte a -Statement [59] (byte~) gfx_mode::$36 ← > (word~) gfx_mode::$35 [ gfx_mode::plane_a#0 gfx_mode::$36 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$36 ] ) always clobbers reg byte a -Statement [61] (word~) gfx_mode::$37 ← > (dword) gfx_mode::plane_a#0 [ gfx_mode::$37 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$37 ] ) always clobbers reg byte a -Statement [62] (byte~) gfx_mode::$38 ← < (word~) gfx_mode::$37 [ gfx_mode::$38 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$38 ] ) always clobbers reg byte a -Statement [64] (byte~) gfx_mode::$39 ← *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$39 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$39 ] ) always clobbers reg byte a -Statement [65] (byte~) gfx_mode::$40 ← (byte~) gfx_mode::$39 | *((const byte*) form_a_step_lo#0) [ gfx_mode::$40 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$40 ] ) always clobbers reg byte a -Statement [67] (byte~) gfx_mode::$41 ← *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$41 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$41 ] ) always clobbers reg byte a -Statement [68] (byte~) gfx_mode::$42 ← (byte~) gfx_mode::$41 | *((const byte*) form_a_mod_lo#0) [ gfx_mode::$42 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$42 ] ) always clobbers reg byte a -Statement [70] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) always clobbers reg byte a -Statement [71] (byte~) gfx_mode::$43 ← *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$43 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$43 ] ) always clobbers reg byte a -Statement [72] (byte) gfx_mode::plane_b_offs#0 ← (byte~) gfx_mode::$43 | *((const byte*) form_b_start_lo#0) [ gfx_mode::plane_b_offs#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b_offs#0 ] ) always clobbers reg byte a -Statement [73] (dword) gfx_mode::plane_b#0 ← (const dword) PLANE_8BPP_CHUNKY#0 + (byte) gfx_mode::plane_b_offs#0 [ gfx_mode::plane_b#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 ] ) always clobbers reg byte a -Statement [74] (word~) gfx_mode::$46 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$46 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$46 ] ) always clobbers reg byte a -Statement [75] (byte~) gfx_mode::$47 ← < (word~) gfx_mode::$46 [ gfx_mode::plane_b#0 gfx_mode::$47 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$47 ] ) always clobbers reg byte a -Statement [77] (word~) gfx_mode::$48 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$48 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$48 ] ) always clobbers reg byte a -Statement [78] (byte~) gfx_mode::$49 ← > (word~) gfx_mode::$48 [ gfx_mode::plane_b#0 gfx_mode::$49 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$49 ] ) always clobbers reg byte a -Statement [80] (word~) gfx_mode::$50 ← > (dword) gfx_mode::plane_b#0 [ gfx_mode::$50 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$50 ] ) always clobbers reg byte a -Statement [81] (byte~) gfx_mode::$51 ← < (word~) gfx_mode::$50 [ gfx_mode::$51 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$51 ] ) always clobbers reg byte a -Statement [83] (byte~) gfx_mode::$52 ← *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$52 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$52 ] ) always clobbers reg byte a -Statement [84] (byte~) gfx_mode::$53 ← (byte~) gfx_mode::$52 | *((const byte*) form_b_step_lo#0) [ gfx_mode::$53 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$53 ] ) always clobbers reg byte a -Statement [86] (byte~) gfx_mode::$54 ← *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$54 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$54 ] ) always clobbers reg byte a -Statement [87] (byte~) gfx_mode::$55 ← (byte~) gfx_mode::$54 | *((const byte*) form_b_mod_lo#0) [ gfx_mode::$55 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$55 ] ) always clobbers reg byte a -Statement [89] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) always clobbers reg byte a -Statement [90] (byte~) gfx_mode::$56 ← *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$56 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$56 ] ) always clobbers reg byte a -Statement [91] (byte~) gfx_mode::$57 ← (byte~) gfx_mode::$56 | *((const byte*) form_vic_bg0_lo#0) [ gfx_mode::$57 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$57 ] ) always clobbers reg byte a -Statement [93] (byte~) gfx_mode::$58 ← *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$58 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$58 ] ) always clobbers reg byte a -Statement [94] (byte~) gfx_mode::$59 ← (byte~) gfx_mode::$58 | *((const byte*) form_vic_bg1_lo#0) [ gfx_mode::$59 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$59 ] ) always clobbers reg byte a -Statement [96] (byte~) gfx_mode::$60 ← *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$60 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$60 ] ) always clobbers reg byte a -Statement [97] (byte~) gfx_mode::$61 ← (byte~) gfx_mode::$60 | *((const byte*) form_vic_bg2_lo#0) [ gfx_mode::$61 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$61 ] ) always clobbers reg byte a -Statement [99] (byte~) gfx_mode::$62 ← *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$62 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$62 ] ) always clobbers reg byte a -Statement [100] (byte~) gfx_mode::$63 ← (byte~) gfx_mode::$62 | *((const byte*) form_vic_bg3_lo#0) [ gfx_mode::$63 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$63 ] ) always clobbers reg byte a -Statement [109] (byte*) form_field_ptr::return#3 ← (byte*) form_field_ptr::return#0 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#3 ] ( main:2::form_control:19 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#3 ] ) always clobbers reg byte a -Statement [110] (byte*) form_control::field#0 ← (byte*) form_field_ptr::return#3 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_control::field#0 ] ( main:2::form_control:19 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_control::field#0 ] ) always clobbers reg byte a -Statement [112] if((signed byte) form_cursor_count#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@32 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ) always clobbers reg byte a -Statement [114] if((signed byte) form_cursor_count#11>=(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2) goto form_control::@2 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ) always clobbers reg byte a -Statement [115] (byte/word/dword~) form_control::$6 ← *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) 128 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$6 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$6 ] ) always clobbers reg byte a reg byte y -Statement [116] *((byte*) form_control::field#0) ← (byte/word/dword~) form_control::$6 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ) always clobbers reg byte y -Statement [124] (byte~) form_control::$12 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_control::$12 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_control::$12 keyboard_modifiers#16 ] ) always clobbers reg byte a reg byte y -Statement [125] *((byte*) form_control::field#0) ← (byte~) form_control::$12 [ form_field_idx#1 keyboard_events_size#18 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 keyboard_modifiers#16 ] ) always clobbers reg byte y -Statement [126] (byte~) form_control::$13 ← (byte) keyboard_modifiers#16 & (const byte) KEY_MODIFIER_SHIFT#0 [ form_field_idx#1 keyboard_events_size#18 form_control::$13 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::$13 ] ) always clobbers reg byte a -Statement [129] if((byte) form_field_idx#34!=(const byte) form_fields_cnt#0) goto form_control::@33 [ keyboard_events_size#18 form_field_idx#34 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#34 ] ) always clobbers reg byte a -Statement [135] if((byte) form_field_idx#3!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@34 [ keyboard_events_size#18 form_field_idx#3 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#3 ] ) always clobbers reg byte a -Statement [138] (byte~) form_control::$24 ← (byte) keyboard_modifiers#16 & (const byte) KEY_MODIFIER_SHIFT#0 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::$24 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::$24 ] ) always clobbers reg byte a -Statement [140] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← ++ *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) always clobbers reg byte x -Statement [141] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#1)<=*((const byte[]) form_fields_max#0 + (byte) form_field_idx#1)) goto form_control::@12 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) always clobbers reg byte a reg byte y -Statement [142] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) always clobbers reg byte a reg byte y -Statement [143] *((byte*) form_control::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1)) [ form_field_idx#1 keyboard_events_size#18 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_cursor_count#11 ] ) always clobbers reg byte a reg byte y -Statement [144] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← -- *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) always clobbers reg byte a reg byte x -Statement [145] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#1)!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@12 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) always clobbers reg byte a reg byte y -Statement [146] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← *((const byte[]) form_fields_max#0 + (byte) form_field_idx#1) [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) always clobbers reg byte a reg byte y -Statement [147] (byte~) form_control::$7 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$7 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$7 ] ) always clobbers reg byte a reg byte y -Statement [148] *((byte*) form_control::field#0) ← (byte~) form_control::$7 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ) always clobbers reg byte y -Statement [150] if((byte) keyboard_events_size#15!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_get::@1 [ keyboard_events_size#15 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ) always clobbers reg byte a -Statement [161] if((byte) keyboard_event_scan::row_scan#0==*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_event_scan::row_scan#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_event_scan::row_scan#0 ] ) always clobbers reg byte a -Statement [163] (byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$3 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$3 ] ) always clobbers reg byte a -Statement [164] (byte~) keyboard_event_scan::$4 ← (byte~) keyboard_event_scan::$3 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$4 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$4 ] ) always clobbers reg byte a -Statement [166] if((byte) keyboard_events_size#12==(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@4 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) always clobbers reg byte a -Statement [167] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::event_type#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::event_type#0 ] ) always clobbers reg byte a -Statement [169] (byte/word/dword~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) 64 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$12 ] ) always clobbers reg byte a -Statement [170] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#12) ← (byte/word/dword~) keyboard_event_scan::$12 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) always clobbers reg byte y -Statement [176] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ) always clobbers reg byte a -Statement [191] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#13 | (const byte) KEY_MODIFIER_RSHIFT#0 [ keyboard_events_size#15 keyboard_modifiers#3 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#3 ] ) always clobbers reg byte a -Statement [197] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#14 | (const byte) KEY_MODIFIER_CTRL#0 [ keyboard_events_size#15 keyboard_modifiers#4 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#4 ] ) always clobbers reg byte a -Statement [203] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#15 | (const byte) KEY_MODIFIER_COMMODORE#0 [ keyboard_events_size#15 keyboard_modifiers#5 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#5 ] ) always clobbers reg byte a -Statement [206] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#12) ← (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) always clobbers reg byte a reg byte y -Statement [208] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ keyboard_event_scan::row#2 keyboard_events_size#37 keyboard_event_scan::keycode#1 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_events_size#37 keyboard_event_scan::keycode#1 ] ) always clobbers reg byte a -Statement [212] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ) always clobbers reg byte a -Statement [213] (byte) keyboard_event_pressed::return#10 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) [ keyboard_event_pressed::return#10 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::return#10 ] ) always clobbers reg byte a -Statement [215] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_matrix_read:158 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 ] ) always clobbers reg byte a -Statement [216] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_matrix_read:158 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#0 ] ) always clobbers reg byte a -Statement [220] (word~) form_field_ptr::$2 ← *((const byte[25]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[25]) form_line_lo#0 + (byte) form_field_ptr::y#0) [ form_field_ptr::field_idx#2 form_field_ptr::$2 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::field_idx#2 form_field_ptr::$2 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::$2 ] ) always clobbers reg byte a -Statement [222] (byte*) form_field_ptr::return#0 ← (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 [ form_field_ptr::return#0 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#0 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::return#0 ] ) always clobbers reg byte a -Statement [224] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) 65536 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Statement [225] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Statement [226] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Statement [227] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Statement [228] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) 16384 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Statement [229] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Statement [230] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Statement [231] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Statement [232] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) 16383/(byte/signed byte/word/signed word/dword/signed dword) 64|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) 16383/(word/signed word/dword/signed dword) 1024 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Statement [234] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ← *((const byte[16]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) [ form_mode::i#2 ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_mode::i#2 ] ) always clobbers reg byte a -Statement [237] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Statement [238] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) always clobbers reg byte a -Statement [257] (byte*) form_field_ptr::return#2 ← (byte*) form_field_ptr::return#0 [ form_render_values::idx#2 form_field_ptr::return#2 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#2 form_field_ptr::return#2 ] ) always clobbers reg byte a -Statement [258] (byte*) form_render_values::field#0 ← (byte*) form_field_ptr::return#2 [ form_render_values::idx#2 form_render_values::field#0 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#2 form_render_values::field#0 ] ) always clobbers reg byte a -Statement [259] *((byte*) form_render_values::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) [ form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#2 ] ) always clobbers reg byte a reg byte y -Statement [269] (byte*) form_set_screen::line#1 ← (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ form_set_screen::y#2 form_set_screen::line#1 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::y#2 form_set_screen::line#1 ] ) always clobbers reg byte a -Statement [274] (byte*~) print_char_cursor#60 ← (byte*) print_set_screen::screen#2 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ) always clobbers reg byte a -Statement [276] if(*((byte*) print_str_lines::str#3)!=(byte) '@') goto print_str_lines::@4 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ) always clobbers reg byte a reg byte y -Statement [279] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#4) [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 print_str_lines::ch#0 ] ) always clobbers reg byte a reg byte y -Statement [282] *((byte*) print_char_cursor#16) ← (byte) print_str_lines::ch#0 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ) always clobbers reg byte y -Statement [288] (byte*~) print_char_cursor#61 ← (byte*) print_line_cursor#18 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#18 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#18 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#18 ] ) always clobbers reg byte a -Statement [291] (byte*) print_line_cursor#18 ← (byte*) print_line_cursor#17 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ print_line_cursor#18 print_char_cursor#31 ] ( main:2::form_init:10::print_str_lines:243::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] main:2::form_init:10::print_str_lines:247::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] ) always clobbers reg byte a -Statement [292] if((byte*) print_line_cursor#18<(byte*) print_char_cursor#31) goto print_ln::@1 [ print_line_cursor#18 print_char_cursor#31 ] ( main:2::form_init:10::print_str_lines:243::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] main:2::form_init:10::print_str_lines:247::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] ) always clobbers reg byte a -Statement [303] if((byte*) gfx_init_plane_8bppchunky::gfxb#3!=(word/dword/signed dword) 32768) goto gfx_init_plane_8bppchunky::@3 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) always clobbers reg byte a -Statement [308] (word~) gfx_init_plane_8bppchunky::$6 ← (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ) always clobbers reg byte a -Statement [309] (byte) gfx_init_plane_8bppchunky::c#0 ← ((byte)) (word~) gfx_init_plane_8bppchunky::$6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ) always clobbers reg byte a -Statement [310] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ← (byte) gfx_init_plane_8bppchunky::c#0 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) always clobbers reg byte y -Statement [313] if((word) gfx_init_plane_8bppchunky::x#1!=(word/signed word/dword/signed dword) 320) goto gfx_init_plane_8bppchunky::@2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) always clobbers reg byte a +Statement [18] if(*((const byte*) form_ctrl_line#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@1 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [21] if(*((const byte*) form_ctrl_borof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@2 [ gfx_mode::dtv_control#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [22] (byte) gfx_mode::dtv_control#2 ← (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 [ gfx_mode::dtv_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [24] if(*((const byte*) form_ctrl_hicol#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@3 [ gfx_mode::dtv_control#15 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#15 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [25] (byte) gfx_mode::dtv_control#3 ← (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 [ gfx_mode::dtv_control#3 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#3 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [27] if(*((const byte*) form_ctrl_overs#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@4 [ gfx_mode::dtv_control#10 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#10 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [28] (byte) gfx_mode::dtv_control#4 ← (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 [ gfx_mode::dtv_control#4 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#4 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [30] if(*((const byte*) form_ctrl_colof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@5 [ gfx_mode::dtv_control#11 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#11 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [31] (byte) gfx_mode::dtv_control#5 ← (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 [ gfx_mode::dtv_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [33] if(*((const byte*) form_ctrl_chunk#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@6 [ gfx_mode::dtv_control#13 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#13 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [34] (byte) gfx_mode::dtv_control#6 ← (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 [ gfx_mode::dtv_control#6 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#6 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [37] if(*((const byte*) form_ctrl_ecm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@7 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [40] if(*((const byte*) form_ctrl_bmm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@8 [ gfx_mode::vic_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::vic_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [41] (byte) gfx_mode::vic_control#2 ← (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 [ gfx_mode::vic_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::vic_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [44] if(*((const byte*) form_ctrl_mcm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@9 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [48] (byte~) gfx_mode::$29 ← *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$29 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$29 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [49] (byte) gfx_mode::plane_a_offs#0 ← (byte~) gfx_mode::$29 | *((const byte*) form_a_start_lo#0) [ gfx_mode::plane_a_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [50] (dword) gfx_mode::plane_a#0 ← ((dword))(const byte*) FORM_SCREEN#0 + (byte) gfx_mode::plane_a_offs#0 [ gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [51] (word~) gfx_mode::$33 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$33 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$33 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [52] (byte~) gfx_mode::$34 ← < (word~) gfx_mode::$33 [ gfx_mode::plane_a#0 gfx_mode::$34 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$34 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [54] (word~) gfx_mode::$35 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$35 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$35 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [55] (byte~) gfx_mode::$36 ← > (word~) gfx_mode::$35 [ gfx_mode::plane_a#0 gfx_mode::$36 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$36 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [57] (word~) gfx_mode::$37 ← > (dword) gfx_mode::plane_a#0 [ gfx_mode::$37 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$37 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [58] (byte~) gfx_mode::$38 ← < (word~) gfx_mode::$37 [ gfx_mode::$38 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$38 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [60] (byte~) gfx_mode::$39 ← *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$39 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$39 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [61] (byte~) gfx_mode::$40 ← (byte~) gfx_mode::$39 | *((const byte*) form_a_step_lo#0) [ gfx_mode::$40 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$40 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [63] (byte~) gfx_mode::$41 ← *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$41 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$41 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [64] (byte~) gfx_mode::$42 ← (byte~) gfx_mode::$41 | *((const byte*) form_a_mod_lo#0) [ gfx_mode::$42 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$42 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [66] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [67] (byte~) gfx_mode::$43 ← *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$43 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$43 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [68] (byte) gfx_mode::plane_b_offs#0 ← (byte~) gfx_mode::$43 | *((const byte*) form_b_start_lo#0) [ gfx_mode::plane_b_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [69] (dword) gfx_mode::plane_b#0 ← (const dword) PLANE_8BPP_CHUNKY#0 + (byte) gfx_mode::plane_b_offs#0 [ gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [70] (word~) gfx_mode::$46 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$46 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$46 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [71] (byte~) gfx_mode::$47 ← < (word~) gfx_mode::$46 [ gfx_mode::plane_b#0 gfx_mode::$47 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$47 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [73] (word~) gfx_mode::$48 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$48 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$48 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [74] (byte~) gfx_mode::$49 ← > (word~) gfx_mode::$48 [ gfx_mode::plane_b#0 gfx_mode::$49 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$49 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [76] (word~) gfx_mode::$50 ← > (dword) gfx_mode::plane_b#0 [ gfx_mode::$50 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$50 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [77] (byte~) gfx_mode::$51 ← < (word~) gfx_mode::$50 [ gfx_mode::$51 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$51 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [79] (byte~) gfx_mode::$52 ← *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$52 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$52 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [80] (byte~) gfx_mode::$53 ← (byte~) gfx_mode::$52 | *((const byte*) form_b_step_lo#0) [ gfx_mode::$53 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$53 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [82] (byte~) gfx_mode::$54 ← *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$54 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$54 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [83] (byte~) gfx_mode::$55 ← (byte~) gfx_mode::$54 | *((const byte*) form_b_mod_lo#0) [ gfx_mode::$55 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$55 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [85] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [86] (byte~) gfx_mode::$56 ← *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$56 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$56 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [87] (byte~) gfx_mode::$57 ← (byte~) gfx_mode::$56 | *((const byte*) form_vic_bg0_lo#0) [ gfx_mode::$57 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$57 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [89] (byte~) gfx_mode::$58 ← *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$58 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$58 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [90] (byte~) gfx_mode::$59 ← (byte~) gfx_mode::$58 | *((const byte*) form_vic_bg1_lo#0) [ gfx_mode::$59 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$59 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [92] (byte~) gfx_mode::$60 ← *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$60 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$60 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [93] (byte~) gfx_mode::$61 ← (byte~) gfx_mode::$60 | *((const byte*) form_vic_bg2_lo#0) [ gfx_mode::$61 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$61 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [95] (byte~) gfx_mode::$62 ← *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$62 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$62 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [96] (byte~) gfx_mode::$63 ← (byte~) gfx_mode::$62 | *((const byte*) form_vic_bg3_lo#0) [ gfx_mode::$63 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$63 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [106] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto gfx_mode::@14 [ keyboard_events_size#45 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#45 ] ) always clobbers reg byte a +Statement [114] if((byte) keyboard_events_size#105!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_get::@1 [ keyboard_events_size#105 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#105 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 ] ) always clobbers reg byte a +Statement [125] if((byte) keyboard_event_scan::row_scan#0==*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ) always clobbers reg byte a +Statement [127] (byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$3 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$3 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$3 ] ) always clobbers reg byte a +Statement [128] (byte~) keyboard_event_scan::$4 ← (byte~) keyboard_event_scan::$3 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$4 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$4 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$4 ] ) always clobbers reg byte a +Statement [130] if((byte) keyboard_events_size#18==(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@4 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) always clobbers reg byte a +Statement [131] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] ) always clobbers reg byte a +Statement [133] (byte/word/dword~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) 64 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$12 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$12 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$12 ] ) always clobbers reg byte a +Statement [134] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ← (byte/word/dword~) keyboard_event_scan::$12 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) always clobbers reg byte y +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:7 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:91 [ keyboard_event_scan::row_scan#0 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:8 [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:9 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 ] +Statement [140] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ) always clobbers reg byte a +Statement [155] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#18 | (const byte) KEY_MODIFIER_RSHIFT#0 [ keyboard_events_size#105 keyboard_modifiers#3 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#3 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#3 ] ) always clobbers reg byte a +Statement [161] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#19 | (const byte) KEY_MODIFIER_CTRL#0 [ keyboard_events_size#105 keyboard_modifiers#4 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#4 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#4 ] ) always clobbers reg byte a +Statement [167] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#20 | (const byte) KEY_MODIFIER_COMMODORE#0 [ keyboard_events_size#105 keyboard_modifiers#5 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#5 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#5 ] ) always clobbers reg byte a +Statement [170] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ← (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) always clobbers reg byte a reg byte y +Statement [172] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ keyboard_event_scan::row#2 keyboard_events_size#112 keyboard_event_scan::keycode#1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_events_size#112 keyboard_event_scan::keycode#1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_events_size#112 keyboard_event_scan::keycode#1 ] ) always clobbers reg byte a +Statement [176] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ) always clobbers reg byte a +Statement [177] (byte) keyboard_event_pressed::return#10 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) [ keyboard_event_pressed::return#10 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] ) always clobbers reg byte a +Statement [179] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_matrix_read:122 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_matrix_read:122 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] ) always clobbers reg byte a +Statement [180] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_matrix_read:122 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_matrix_read:122 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] ) always clobbers reg byte a +Statement [182] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) 65536 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [183] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [184] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [185] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [186] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) 16384 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [187] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [188] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [189] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [190] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) 16383/(byte/signed byte/word/signed word/dword/signed dword) 64|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) 16383/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [192] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ← *((const byte[16]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#2 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#2 ] ) always clobbers reg byte a +Statement [195] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [200] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto form_mode::@5 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 ] ( main:2::form_mode:15 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 ] ) always clobbers reg byte a +Statement [208] (byte*) form_field_ptr::return#3 ← (byte*) form_field_ptr::return#0 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#3 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#3 ] ) always clobbers reg byte a +Statement [209] (byte*) form_control::field#0 ← (byte*) form_field_ptr::return#3 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_control::field#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_control::field#0 ] ) always clobbers reg byte a +Statement [211] if((signed byte) form_cursor_count#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@36 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ) always clobbers reg byte a +Statement [213] if((signed byte) form_cursor_count#15>=(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2) goto form_control::@2 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a +Statement [214] (byte/word/dword~) form_control::$6 ← *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) 128 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$6 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$6 ] ) always clobbers reg byte a reg byte y +Statement [215] *((byte*) form_control::field#0) ← (byte/word/dword~) form_control::$6 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte y +Statement [223] (byte~) form_control::$12 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_control::$12 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_control::$12 ] ) always clobbers reg byte a reg byte y +Statement [224] *((byte*) form_control::field#0) ← (byte~) form_control::$12 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ) always clobbers reg byte y +Statement [225] (byte~) form_control::$13 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::$13 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::$13 ] ) always clobbers reg byte a +Statement [228] if((byte) form_field_idx#43!=(const byte) form_fields_cnt#0) goto form_control::@37 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ) always clobbers reg byte a +Statement [234] if((byte) form_field_idx#44!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@38 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ) always clobbers reg byte a +Statement [237] (byte~) form_control::$24 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$24 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$24 ] ) always clobbers reg byte a +Statement [239] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← ++ *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte x +Statement [240] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)<=*((const byte[]) form_fields_max#0 + (byte) form_field_idx#28)) goto form_control::@12 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a reg byte y +Statement [241] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a reg byte y +Statement [242] *((byte*) form_control::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ) always clobbers reg byte a reg byte y +Statement [243] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← -- *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a reg byte x +Statement [244] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@12 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a reg byte y +Statement [245] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← *((const byte[]) form_fields_max#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a reg byte y +Statement [248] (byte~) form_control::$7 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$7 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$7 ] ) always clobbers reg byte a reg byte y +Statement [249] *((byte*) form_control::field#0) ← (byte~) form_control::$7 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte y +Statement [253] (word~) form_field_ptr::$2 ← *((const byte[25]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[25]) form_line_lo#0 + (byte) form_field_ptr::y#0) [ form_field_ptr::field_idx#2 form_field_ptr::$2 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#2 form_field_ptr::$2 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::$2 ] ) always clobbers reg byte a +Statement [255] (byte*) form_field_ptr::return#0 ← (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 [ form_field_ptr::return#0 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::return#0 ] ) always clobbers reg byte a +Statement [278] (byte*) form_field_ptr::return#2 ← (byte*) form_field_ptr::return#0 [ form_render_values::idx#2 form_field_ptr::return#2 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 form_field_ptr::return#2 ] ) always clobbers reg byte a +Statement [279] (byte*) form_render_values::field#0 ← (byte*) form_field_ptr::return#2 [ form_render_values::idx#2 form_render_values::field#0 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 form_render_values::field#0 ] ) always clobbers reg byte a +Statement [280] *((byte*) form_render_values::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) [ form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 ] ) always clobbers reg byte a reg byte y +Statement [290] (byte*) form_set_screen::line#1 ← (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ form_set_screen::y#2 form_set_screen::line#1 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::y#2 form_set_screen::line#1 ] ) always clobbers reg byte a +Statement [295] (byte*~) print_char_cursor#60 ← (byte*) print_set_screen::screen#2 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ) always clobbers reg byte a +Statement [297] if(*((byte*) print_str_lines::str#3)!=(byte) '@') goto print_str_lines::@4 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ) always clobbers reg byte a reg byte y +Statement [300] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#4) [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] ) always clobbers reg byte a reg byte y +Statement [303] *((byte*) print_char_cursor#20) ← (byte) print_str_lines::ch#0 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ) always clobbers reg byte y +Statement [309] (byte*~) print_char_cursor#61 ← (byte*) print_line_cursor#22 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#22 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#22 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#22 ] ) always clobbers reg byte a +Statement [312] (byte*) print_line_cursor#22 ← (byte*) print_line_cursor#21 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ print_line_cursor#22 print_char_cursor#38 ] ( main:2::form_init:10::print_str_lines:262::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] main:2::form_init:10::print_str_lines:268::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] ) always clobbers reg byte a +Statement [313] if((byte*) print_line_cursor#22<(byte*) print_char_cursor#38) goto print_ln::@1 [ print_line_cursor#22 print_char_cursor#38 ] ( main:2::form_init:10::print_str_lines:262::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] main:2::form_init:10::print_str_lines:268::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] ) always clobbers reg byte a +Statement [315] (byte*) print_cls::sc#0 ← (byte*) print_set_screen::screen#2 [ print_set_screen::screen#2 print_cls::sc#0 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#0 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#0 ] ) always clobbers reg byte a +Statement [317] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_set_screen::screen#2 print_cls::sc#2 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#2 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [319] (byte*~) print_cls::$0 ← (byte*) print_set_screen::screen#2 + (word/signed word/dword/signed dword) 1000 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] ) always clobbers reg byte a +Statement [320] if((byte*) print_cls::sc#1!=(byte*~) print_cls::$0) goto print_cls::@1 [ print_set_screen::screen#2 print_cls::sc#1 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#1 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#1 ] ) always clobbers reg byte a +Statement [333] if((byte*) gfx_init_plane_8bppchunky::gfxb#3!=(word/dword/signed dword) 32768) goto gfx_init_plane_8bppchunky::@3 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) always clobbers reg byte a +Statement [338] (word~) gfx_init_plane_8bppchunky::$6 ← (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ) always clobbers reg byte a +Statement [339] (byte) gfx_init_plane_8bppchunky::c#0 ← ((byte)) (word~) gfx_init_plane_8bppchunky::$6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ) always clobbers reg byte a +Statement [340] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ← (byte) gfx_init_plane_8bppchunky::c#0 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) always clobbers reg byte y +Statement [343] if((word) gfx_init_plane_8bppchunky::x#1!=(word/signed word/dword/signed dword) 320) goto gfx_init_plane_8bppchunky::@2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) always clobbers reg byte a Statement asm { .byte$32,$dd lda$ff .byte$32,$00 } always clobbers reg byte a -Statement [323] *((const byte*) CIA1_PORT_A_DDR#0) ← (byte/word/signed word/dword/signed dword) 255 [ ] ( main:2::keyboard_init:6 [ ] ) always clobbers reg byte a -Statement [324] *((const byte*) CIA1_PORT_B_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::keyboard_init:6 [ ] ) always clobbers reg byte a -Potential registers zp ZP_BYTE:2 [ form_cursor_count#1 form_cursor_count#12 form_cursor_count#11 form_cursor_count#3 ] : zp ZP_BYTE:2 , -Potential registers zp ZP_BYTE:3 [ form_field_idx#1 form_field_idx#14 form_field_idx#24 form_field_idx#34 form_field_idx#3 ] : zp ZP_BYTE:3 , -Potential registers zp ZP_BYTE:4 [ gfx_mode::dtv_control#12 gfx_mode::dtv_control#6 gfx_mode::dtv_control#13 gfx_mode::dtv_control#5 gfx_mode::dtv_control#11 gfx_mode::dtv_control#4 gfx_mode::dtv_control#10 gfx_mode::dtv_control#3 gfx_mode::dtv_control#15 gfx_mode::dtv_control#14 gfx_mode::dtv_control#2 ] : zp ZP_BYTE:4 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:5 [ gfx_mode::vic_control#4 gfx_mode::vic_control#2 gfx_mode::vic_control#5 ] : zp ZP_BYTE:5 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:6 [ gfx_mode::vic_control2#2 ] : zp ZP_BYTE:6 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:7 [ gfx_mode::i#2 gfx_mode::i#1 ] : zp ZP_BYTE:7 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:8 [ keyboard_event_get::return#2 keyboard_event_get::return#0 ] : zp ZP_BYTE:8 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:9 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 ] : zp ZP_BYTE:9 , reg byte x , -Potential registers zp ZP_BYTE:10 [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ] : zp ZP_BYTE:10 , reg byte x , -Potential registers zp ZP_BYTE:11 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 ] : zp ZP_BYTE:11 , reg byte x , -Potential registers zp ZP_BYTE:12 [ keyboard_events_size#12 keyboard_events_size#37 keyboard_events_size#20 keyboard_events_size#18 keyboard_events_size#4 keyboard_events_size#15 keyboard_events_size#38 keyboard_events_size#2 keyboard_events_size#1 ] : zp ZP_BYTE:12 , -Potential registers zp ZP_BYTE:13 [ keyboard_modifiers#16 keyboard_modifiers#15 keyboard_modifiers#4 keyboard_modifiers#14 keyboard_modifiers#3 keyboard_modifiers#13 keyboard_modifiers#5 ] : zp ZP_BYTE:13 , reg byte x , -Potential registers zp ZP_BYTE:14 [ keyboard_event_pressed::keycode#4 ] : zp ZP_BYTE:14 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:15 [ form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 form_field_ptr::field_idx#0 ] : zp ZP_BYTE:15 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:16 [ form_mode::i#2 form_mode::i#1 ] : zp ZP_BYTE:16 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:17 [ form_render_values::idx#2 form_render_values::idx#1 ] : zp ZP_BYTE:17 , reg byte x , -Potential registers zp ZP_WORD:18 [ form_set_screen::line#2 form_set_screen::line#1 ] : zp ZP_WORD:18 , -Potential registers zp ZP_BYTE:20 [ form_set_screen::y#2 form_set_screen::y#1 ] : zp ZP_BYTE:20 , reg byte x , reg byte y , -Potential registers zp ZP_WORD:21 [ print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 ] : zp ZP_WORD:21 , -Potential registers zp ZP_WORD:23 [ print_char_cursor#16 print_char_cursor#18 print_char_cursor#60 print_char_cursor#61 print_char_cursor#31 print_char_cursor#1 ] : zp ZP_WORD:23 , -Potential registers zp ZP_WORD:25 [ print_line_cursor#17 print_line_cursor#16 print_set_screen::screen#2 print_line_cursor#18 ] : zp ZP_WORD:25 , -Potential registers zp ZP_BYTE:27 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 ] : zp ZP_BYTE:27 , reg byte x , -Potential registers zp ZP_WORD:28 [ gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 ] : zp ZP_WORD:28 , -Potential registers zp ZP_BYTE:30 [ gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] : zp ZP_BYTE:30 , reg byte x , -Potential registers zp ZP_WORD:31 [ gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::gfxb#1 ] : zp ZP_WORD:31 , -Potential registers zp ZP_BYTE:33 [ dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#1 ] : zp ZP_BYTE:33 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:34 [ gfx_mode::$29 ] : zp ZP_BYTE:34 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:35 [ gfx_mode::plane_a_offs#0 ] : zp ZP_BYTE:35 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_DWORD:36 [ gfx_mode::plane_a#0 ] : zp ZP_DWORD:36 , -Potential registers zp ZP_WORD:40 [ gfx_mode::$33 ] : zp ZP_WORD:40 , -Potential registers zp ZP_BYTE:42 [ gfx_mode::$34 ] : zp ZP_BYTE:42 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_WORD:43 [ gfx_mode::$35 ] : zp ZP_WORD:43 , -Potential registers zp ZP_BYTE:45 [ gfx_mode::$36 ] : zp ZP_BYTE:45 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_WORD:46 [ gfx_mode::$37 ] : zp ZP_WORD:46 , -Potential registers zp ZP_BYTE:48 [ gfx_mode::$38 ] : zp ZP_BYTE:48 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:49 [ gfx_mode::$39 ] : zp ZP_BYTE:49 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:50 [ gfx_mode::$40 ] : zp ZP_BYTE:50 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:51 [ gfx_mode::$41 ] : zp ZP_BYTE:51 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:52 [ gfx_mode::$42 ] : zp ZP_BYTE:52 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:53 [ gfx_mode::$43 ] : zp ZP_BYTE:53 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:54 [ gfx_mode::plane_b_offs#0 ] : zp ZP_BYTE:54 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_DWORD:55 [ gfx_mode::plane_b#0 ] : zp ZP_DWORD:55 , -Potential registers zp ZP_WORD:59 [ gfx_mode::$46 ] : zp ZP_WORD:59 , -Potential registers zp ZP_BYTE:61 [ gfx_mode::$47 ] : zp ZP_BYTE:61 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_WORD:62 [ gfx_mode::$48 ] : zp ZP_WORD:62 , -Potential registers zp ZP_BYTE:64 [ gfx_mode::$49 ] : zp ZP_BYTE:64 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_WORD:65 [ gfx_mode::$50 ] : zp ZP_WORD:65 , -Potential registers zp ZP_BYTE:67 [ gfx_mode::$51 ] : zp ZP_BYTE:67 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:68 [ gfx_mode::$52 ] : zp ZP_BYTE:68 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:69 [ gfx_mode::$53 ] : zp ZP_BYTE:69 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:70 [ gfx_mode::$54 ] : zp ZP_BYTE:70 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:71 [ gfx_mode::$55 ] : zp ZP_BYTE:71 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:72 [ gfx_mode::$56 ] : zp ZP_BYTE:72 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:73 [ gfx_mode::$57 ] : zp ZP_BYTE:73 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:74 [ gfx_mode::$58 ] : zp ZP_BYTE:74 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:75 [ gfx_mode::$59 ] : zp ZP_BYTE:75 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:76 [ gfx_mode::$60 ] : zp ZP_BYTE:76 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:77 [ gfx_mode::$61 ] : zp ZP_BYTE:77 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:78 [ gfx_mode::$62 ] : zp ZP_BYTE:78 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:79 [ gfx_mode::$63 ] : zp ZP_BYTE:79 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_WORD:80 [ form_field_ptr::return#3 ] : zp ZP_WORD:80 , -Potential registers zp ZP_WORD:82 [ form_control::field#0 ] : zp ZP_WORD:82 , -Potential registers zp ZP_BYTE:84 [ form_control::$6 ] : zp ZP_BYTE:84 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:85 [ keyboard_event_get::return#3 ] : zp ZP_BYTE:85 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:86 [ form_control::key_event#0 ] : zp ZP_BYTE:86 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:87 [ form_control::$12 ] : zp ZP_BYTE:87 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:88 [ form_control::$13 ] : zp ZP_BYTE:88 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:89 [ form_control::$24 ] : zp ZP_BYTE:89 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:90 [ form_control::$7 ] : zp ZP_BYTE:90 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:91 [ keyboard_matrix_read::rowid#0 ] : zp ZP_BYTE:91 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:92 [ keyboard_matrix_read::return#2 ] : zp ZP_BYTE:92 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:93 [ keyboard_event_scan::row_scan#0 ] : zp ZP_BYTE:93 , reg byte x , -Potential registers zp ZP_BYTE:94 [ keyboard_event_scan::$3 ] : zp ZP_BYTE:94 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:95 [ keyboard_event_scan::$4 ] : zp ZP_BYTE:95 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:96 [ keyboard_event_scan::event_type#0 ] : zp ZP_BYTE:96 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:97 [ keyboard_event_scan::$12 ] : zp ZP_BYTE:97 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:98 [ keyboard_event_pressed::return#0 ] : zp ZP_BYTE:98 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:99 [ keyboard_event_scan::$16 ] : zp ZP_BYTE:99 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:100 [ keyboard_event_pressed::return#1 ] : zp ZP_BYTE:100 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:101 [ keyboard_event_scan::$20 ] : zp ZP_BYTE:101 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:102 [ keyboard_event_pressed::return#2 ] : zp ZP_BYTE:102 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:103 [ keyboard_event_scan::$24 ] : zp ZP_BYTE:103 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:104 [ keyboard_event_pressed::return#3 ] : zp ZP_BYTE:104 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:105 [ keyboard_event_scan::$28 ] : zp ZP_BYTE:105 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:106 [ keyboard_event_pressed::$0 ] : zp ZP_BYTE:106 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:107 [ keyboard_event_pressed::row_bits#0 ] : zp ZP_BYTE:107 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:108 [ keyboard_event_pressed::$1 ] : zp ZP_BYTE:108 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:109 [ keyboard_event_pressed::return#10 ] : zp ZP_BYTE:109 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:110 [ keyboard_matrix_read::return#0 ] : zp ZP_BYTE:110 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:111 [ form_field_ptr::y#0 ] : zp ZP_BYTE:111 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_WORD:112 [ form_field_ptr::$2 ] : zp ZP_WORD:112 , -Potential registers zp ZP_BYTE:114 [ form_field_ptr::x#0 ] : zp ZP_BYTE:114 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_WORD:115 [ form_field_ptr::return#0 ] : zp ZP_WORD:115 , -Potential registers zp ZP_WORD:117 [ form_field_ptr::return#2 ] : zp ZP_WORD:117 , -Potential registers zp ZP_WORD:119 [ form_render_values::field#0 ] : zp ZP_WORD:119 , -Potential registers zp ZP_BYTE:121 [ form_set_screen::$0 ] : zp ZP_BYTE:121 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:122 [ form_set_screen::$1 ] : zp ZP_BYTE:122 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:123 [ print_str_lines::ch#0 ] : zp ZP_BYTE:123 , reg byte a , reg byte x , -Potential registers zp ZP_WORD:124 [ gfx_init_plane_8bppchunky::$6 ] : zp ZP_WORD:124 , -Potential registers zp ZP_BYTE:126 [ gfx_init_plane_8bppchunky::c#0 ] : zp ZP_BYTE:126 , reg byte a , reg byte x , reg byte y , +Statement [356] (byte~) gfx_init_screen_stdchar::$0 ← (byte) gfx_init_screen_stdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$0 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$0 ] ) always clobbers reg byte a +Statement [358] (byte~) gfx_init_screen_stdchar::$2 ← (byte) gfx_init_screen_stdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 gfx_init_screen_stdchar::$2 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 gfx_init_screen_stdchar::$2 ] ) always clobbers reg byte a +Statement [360] *((byte*) gfx_init_screen_stdchar::ch#2) ← (byte~) gfx_init_screen_stdchar::$3 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 ] ) always clobbers reg byte y +Statement [367] *((const byte*) CIA1_PORT_A_DDR#0) ← (byte/word/signed word/dword/signed dword) 255 [ ] ( main:2::keyboard_init:6 [ ] ) always clobbers reg byte a +Statement [368] *((const byte*) CIA1_PORT_B_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::keyboard_init:6 [ ] ) always clobbers reg byte a +Statement [5] *((const byte*) DTV_FEATURE#0) ← (const byte) DTV_FEATURE_ENABLE#0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [18] if(*((const byte*) form_ctrl_line#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@1 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [21] if(*((const byte*) form_ctrl_borof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@2 [ gfx_mode::dtv_control#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [22] (byte) gfx_mode::dtv_control#2 ← (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 [ gfx_mode::dtv_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [24] if(*((const byte*) form_ctrl_hicol#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@3 [ gfx_mode::dtv_control#15 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#15 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [25] (byte) gfx_mode::dtv_control#3 ← (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 [ gfx_mode::dtv_control#3 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#3 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [27] if(*((const byte*) form_ctrl_overs#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@4 [ gfx_mode::dtv_control#10 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#10 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [28] (byte) gfx_mode::dtv_control#4 ← (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 [ gfx_mode::dtv_control#4 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#4 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [30] if(*((const byte*) form_ctrl_colof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@5 [ gfx_mode::dtv_control#11 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#11 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [31] (byte) gfx_mode::dtv_control#5 ← (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 [ gfx_mode::dtv_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [33] if(*((const byte*) form_ctrl_chunk#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@6 [ gfx_mode::dtv_control#13 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#13 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [34] (byte) gfx_mode::dtv_control#6 ← (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 [ gfx_mode::dtv_control#6 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#6 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [37] if(*((const byte*) form_ctrl_ecm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@7 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [40] if(*((const byte*) form_ctrl_bmm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@8 [ gfx_mode::vic_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::vic_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [41] (byte) gfx_mode::vic_control#2 ← (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 [ gfx_mode::vic_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::vic_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [44] if(*((const byte*) form_ctrl_mcm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@9 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [48] (byte~) gfx_mode::$29 ← *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$29 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$29 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [49] (byte) gfx_mode::plane_a_offs#0 ← (byte~) gfx_mode::$29 | *((const byte*) form_a_start_lo#0) [ gfx_mode::plane_a_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [50] (dword) gfx_mode::plane_a#0 ← ((dword))(const byte*) FORM_SCREEN#0 + (byte) gfx_mode::plane_a_offs#0 [ gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [51] (word~) gfx_mode::$33 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$33 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$33 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [52] (byte~) gfx_mode::$34 ← < (word~) gfx_mode::$33 [ gfx_mode::plane_a#0 gfx_mode::$34 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$34 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [54] (word~) gfx_mode::$35 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$35 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$35 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [55] (byte~) gfx_mode::$36 ← > (word~) gfx_mode::$35 [ gfx_mode::plane_a#0 gfx_mode::$36 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$36 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [57] (word~) gfx_mode::$37 ← > (dword) gfx_mode::plane_a#0 [ gfx_mode::$37 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$37 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [58] (byte~) gfx_mode::$38 ← < (word~) gfx_mode::$37 [ gfx_mode::$38 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$38 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [60] (byte~) gfx_mode::$39 ← *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$39 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$39 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [61] (byte~) gfx_mode::$40 ← (byte~) gfx_mode::$39 | *((const byte*) form_a_step_lo#0) [ gfx_mode::$40 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$40 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [63] (byte~) gfx_mode::$41 ← *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$41 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$41 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [64] (byte~) gfx_mode::$42 ← (byte~) gfx_mode::$41 | *((const byte*) form_a_mod_lo#0) [ gfx_mode::$42 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$42 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [66] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [67] (byte~) gfx_mode::$43 ← *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$43 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$43 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [68] (byte) gfx_mode::plane_b_offs#0 ← (byte~) gfx_mode::$43 | *((const byte*) form_b_start_lo#0) [ gfx_mode::plane_b_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [69] (dword) gfx_mode::plane_b#0 ← (const dword) PLANE_8BPP_CHUNKY#0 + (byte) gfx_mode::plane_b_offs#0 [ gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [70] (word~) gfx_mode::$46 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$46 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$46 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [71] (byte~) gfx_mode::$47 ← < (word~) gfx_mode::$46 [ gfx_mode::plane_b#0 gfx_mode::$47 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$47 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [73] (word~) gfx_mode::$48 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$48 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$48 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [74] (byte~) gfx_mode::$49 ← > (word~) gfx_mode::$48 [ gfx_mode::plane_b#0 gfx_mode::$49 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$49 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [76] (word~) gfx_mode::$50 ← > (dword) gfx_mode::plane_b#0 [ gfx_mode::$50 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$50 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [77] (byte~) gfx_mode::$51 ← < (word~) gfx_mode::$50 [ gfx_mode::$51 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$51 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [79] (byte~) gfx_mode::$52 ← *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$52 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$52 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [80] (byte~) gfx_mode::$53 ← (byte~) gfx_mode::$52 | *((const byte*) form_b_step_lo#0) [ gfx_mode::$53 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$53 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [82] (byte~) gfx_mode::$54 ← *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$54 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$54 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [83] (byte~) gfx_mode::$55 ← (byte~) gfx_mode::$54 | *((const byte*) form_b_mod_lo#0) [ gfx_mode::$55 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$55 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [85] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [86] (byte~) gfx_mode::$56 ← *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$56 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$56 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [87] (byte~) gfx_mode::$57 ← (byte~) gfx_mode::$56 | *((const byte*) form_vic_bg0_lo#0) [ gfx_mode::$57 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$57 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [89] (byte~) gfx_mode::$58 ← *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$58 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$58 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [90] (byte~) gfx_mode::$59 ← (byte~) gfx_mode::$58 | *((const byte*) form_vic_bg1_lo#0) [ gfx_mode::$59 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$59 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [92] (byte~) gfx_mode::$60 ← *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$60 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$60 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [93] (byte~) gfx_mode::$61 ← (byte~) gfx_mode::$60 | *((const byte*) form_vic_bg2_lo#0) [ gfx_mode::$61 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$61 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [95] (byte~) gfx_mode::$62 ← *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$62 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$62 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [96] (byte~) gfx_mode::$63 ← (byte~) gfx_mode::$62 | *((const byte*) form_vic_bg3_lo#0) [ gfx_mode::$63 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$63 keyboard_events_size#13 keyboard_modifiers#13 ] ) always clobbers reg byte a +Statement [106] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto gfx_mode::@14 [ keyboard_events_size#45 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#45 ] ) always clobbers reg byte a +Statement [114] if((byte) keyboard_events_size#105!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_get::@1 [ keyboard_events_size#105 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#105 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 ] ) always clobbers reg byte a +Statement [125] if((byte) keyboard_event_scan::row_scan#0==*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ) always clobbers reg byte a +Statement [127] (byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$3 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$3 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$3 ] ) always clobbers reg byte a +Statement [128] (byte~) keyboard_event_scan::$4 ← (byte~) keyboard_event_scan::$3 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$4 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$4 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$4 ] ) always clobbers reg byte a +Statement [130] if((byte) keyboard_events_size#18==(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@4 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) always clobbers reg byte a +Statement [131] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] ) always clobbers reg byte a +Statement [133] (byte/word/dword~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) 64 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$12 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$12 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$12 ] ) always clobbers reg byte a +Statement [134] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ← (byte/word/dword~) keyboard_event_scan::$12 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) always clobbers reg byte y +Statement [140] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ) always clobbers reg byte a +Statement [155] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#18 | (const byte) KEY_MODIFIER_RSHIFT#0 [ keyboard_events_size#105 keyboard_modifiers#3 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#3 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#3 ] ) always clobbers reg byte a +Statement [161] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#19 | (const byte) KEY_MODIFIER_CTRL#0 [ keyboard_events_size#105 keyboard_modifiers#4 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#4 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#4 ] ) always clobbers reg byte a +Statement [167] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#20 | (const byte) KEY_MODIFIER_COMMODORE#0 [ keyboard_events_size#105 keyboard_modifiers#5 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#5 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#5 ] ) always clobbers reg byte a +Statement [170] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ← (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) always clobbers reg byte a reg byte y +Statement [172] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ keyboard_event_scan::row#2 keyboard_events_size#112 keyboard_event_scan::keycode#1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_events_size#112 keyboard_event_scan::keycode#1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_events_size#112 keyboard_event_scan::keycode#1 ] ) always clobbers reg byte a +Statement [176] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ) always clobbers reg byte a +Statement [177] (byte) keyboard_event_pressed::return#10 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) [ keyboard_event_pressed::return#10 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] ) always clobbers reg byte a +Statement [179] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_matrix_read:122 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_matrix_read:122 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] ) always clobbers reg byte a +Statement [180] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_matrix_read:122 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_matrix_read:122 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] ) always clobbers reg byte a +Statement [182] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) 65536 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [183] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [184] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [185] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [186] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) 16384 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [187] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [188] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [189] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [190] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) 16383/(byte/signed byte/word/signed word/dword/signed dword) 64|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) 16383/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [192] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ← *((const byte[16]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#2 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#2 ] ) always clobbers reg byte a +Statement [195] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) always clobbers reg byte a +Statement [200] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto form_mode::@5 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 ] ( main:2::form_mode:15 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 ] ) always clobbers reg byte a +Statement [208] (byte*) form_field_ptr::return#3 ← (byte*) form_field_ptr::return#0 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#3 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#3 ] ) always clobbers reg byte a +Statement [209] (byte*) form_control::field#0 ← (byte*) form_field_ptr::return#3 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_control::field#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_control::field#0 ] ) always clobbers reg byte a +Statement [211] if((signed byte) form_cursor_count#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@36 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ) always clobbers reg byte a +Statement [213] if((signed byte) form_cursor_count#15>=(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2) goto form_control::@2 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a +Statement [214] (byte/word/dword~) form_control::$6 ← *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) 128 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$6 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$6 ] ) always clobbers reg byte a reg byte y +Statement [215] *((byte*) form_control::field#0) ← (byte/word/dword~) form_control::$6 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte y +Statement [223] (byte~) form_control::$12 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_control::$12 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_control::$12 ] ) always clobbers reg byte a reg byte y +Statement [224] *((byte*) form_control::field#0) ← (byte~) form_control::$12 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ) always clobbers reg byte y +Statement [225] (byte~) form_control::$13 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::$13 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::$13 ] ) always clobbers reg byte a +Statement [228] if((byte) form_field_idx#43!=(const byte) form_fields_cnt#0) goto form_control::@37 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ) always clobbers reg byte a +Statement [234] if((byte) form_field_idx#44!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@38 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ) always clobbers reg byte a +Statement [237] (byte~) form_control::$24 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$24 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$24 ] ) always clobbers reg byte a +Statement [239] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← ++ *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte x +Statement [240] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)<=*((const byte[]) form_fields_max#0 + (byte) form_field_idx#28)) goto form_control::@12 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a reg byte y +Statement [241] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a reg byte y +Statement [242] *((byte*) form_control::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ) always clobbers reg byte a reg byte y +Statement [243] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← -- *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a reg byte x +Statement [244] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@12 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a reg byte y +Statement [245] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← *((const byte[]) form_fields_max#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a reg byte y +Statement [248] (byte~) form_control::$7 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$7 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$7 ] ) always clobbers reg byte a reg byte y +Statement [249] *((byte*) form_control::field#0) ← (byte~) form_control::$7 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte y +Statement [253] (word~) form_field_ptr::$2 ← *((const byte[25]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[25]) form_line_lo#0 + (byte) form_field_ptr::y#0) [ form_field_ptr::field_idx#2 form_field_ptr::$2 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#2 form_field_ptr::$2 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::$2 ] ) always clobbers reg byte a +Statement [255] (byte*) form_field_ptr::return#0 ← (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 [ form_field_ptr::return#0 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::return#0 ] ) always clobbers reg byte a +Statement [278] (byte*) form_field_ptr::return#2 ← (byte*) form_field_ptr::return#0 [ form_render_values::idx#2 form_field_ptr::return#2 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 form_field_ptr::return#2 ] ) always clobbers reg byte a +Statement [279] (byte*) form_render_values::field#0 ← (byte*) form_field_ptr::return#2 [ form_render_values::idx#2 form_render_values::field#0 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 form_render_values::field#0 ] ) always clobbers reg byte a +Statement [280] *((byte*) form_render_values::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) [ form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 ] ) always clobbers reg byte a reg byte y +Statement [290] (byte*) form_set_screen::line#1 ← (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ form_set_screen::y#2 form_set_screen::line#1 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::y#2 form_set_screen::line#1 ] ) always clobbers reg byte a +Statement [295] (byte*~) print_char_cursor#60 ← (byte*) print_set_screen::screen#2 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ) always clobbers reg byte a +Statement [297] if(*((byte*) print_str_lines::str#3)!=(byte) '@') goto print_str_lines::@4 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ) always clobbers reg byte a reg byte y +Statement [300] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#4) [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] ) always clobbers reg byte a reg byte y +Statement [303] *((byte*) print_char_cursor#20) ← (byte) print_str_lines::ch#0 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ) always clobbers reg byte y +Statement [309] (byte*~) print_char_cursor#61 ← (byte*) print_line_cursor#22 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#22 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#22 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#22 ] ) always clobbers reg byte a +Statement [312] (byte*) print_line_cursor#22 ← (byte*) print_line_cursor#21 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ print_line_cursor#22 print_char_cursor#38 ] ( main:2::form_init:10::print_str_lines:262::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] main:2::form_init:10::print_str_lines:268::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] ) always clobbers reg byte a +Statement [313] if((byte*) print_line_cursor#22<(byte*) print_char_cursor#38) goto print_ln::@1 [ print_line_cursor#22 print_char_cursor#38 ] ( main:2::form_init:10::print_str_lines:262::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] main:2::form_init:10::print_str_lines:268::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] ) always clobbers reg byte a +Statement [315] (byte*) print_cls::sc#0 ← (byte*) print_set_screen::screen#2 [ print_set_screen::screen#2 print_cls::sc#0 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#0 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#0 ] ) always clobbers reg byte a +Statement [317] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_set_screen::screen#2 print_cls::sc#2 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#2 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [319] (byte*~) print_cls::$0 ← (byte*) print_set_screen::screen#2 + (word/signed word/dword/signed dword) 1000 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] ) always clobbers reg byte a +Statement [320] if((byte*) print_cls::sc#1!=(byte*~) print_cls::$0) goto print_cls::@1 [ print_set_screen::screen#2 print_cls::sc#1 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#1 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#1 ] ) always clobbers reg byte a +Statement [333] if((byte*) gfx_init_plane_8bppchunky::gfxb#3!=(word/dword/signed dword) 32768) goto gfx_init_plane_8bppchunky::@3 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) always clobbers reg byte a +Statement [338] (word~) gfx_init_plane_8bppchunky::$6 ← (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ) always clobbers reg byte a +Statement [339] (byte) gfx_init_plane_8bppchunky::c#0 ← ((byte)) (word~) gfx_init_plane_8bppchunky::$6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ) always clobbers reg byte a +Statement [340] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ← (byte) gfx_init_plane_8bppchunky::c#0 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) always clobbers reg byte y +Statement [343] if((word) gfx_init_plane_8bppchunky::x#1!=(word/signed word/dword/signed dword) 320) goto gfx_init_plane_8bppchunky::@2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) always clobbers reg byte a +Statement asm { .byte$32,$dd lda$ff .byte$32,$00 } always clobbers reg byte a +Statement [356] (byte~) gfx_init_screen_stdchar::$0 ← (byte) gfx_init_screen_stdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$0 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$0 ] ) always clobbers reg byte a +Statement [358] (byte~) gfx_init_screen_stdchar::$2 ← (byte) gfx_init_screen_stdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 gfx_init_screen_stdchar::$2 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 gfx_init_screen_stdchar::$2 ] ) always clobbers reg byte a +Statement [360] *((byte*) gfx_init_screen_stdchar::ch#2) ← (byte~) gfx_init_screen_stdchar::$3 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 ] ) always clobbers reg byte y +Statement [367] *((const byte*) CIA1_PORT_A_DDR#0) ← (byte/word/signed word/dword/signed dword) 255 [ ] ( main:2::keyboard_init:6 [ ] ) always clobbers reg byte a +Statement [368] *((const byte*) CIA1_PORT_B_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::keyboard_init:6 [ ] ) always clobbers reg byte a +Potential registers zp ZP_BYTE:2 [ gfx_mode::dtv_control#12 gfx_mode::dtv_control#6 gfx_mode::dtv_control#13 gfx_mode::dtv_control#5 gfx_mode::dtv_control#11 gfx_mode::dtv_control#4 gfx_mode::dtv_control#10 gfx_mode::dtv_control#15 gfx_mode::dtv_control#14 gfx_mode::dtv_control#2 gfx_mode::dtv_control#3 ] : zp ZP_BYTE:2 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:3 [ gfx_mode::vic_control#4 gfx_mode::vic_control#2 gfx_mode::vic_control#5 ] : zp ZP_BYTE:3 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:4 [ gfx_mode::vic_control2#2 ] : zp ZP_BYTE:4 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:5 [ gfx_mode::i#2 gfx_mode::i#1 ] : zp ZP_BYTE:5 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:6 [ keyboard_event_get::return#2 keyboard_event_get::return#0 ] : zp ZP_BYTE:6 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:7 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 ] : zp ZP_BYTE:7 , reg byte x , +Potential registers zp ZP_BYTE:8 [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ] : zp ZP_BYTE:8 , reg byte x , +Potential registers zp ZP_BYTE:9 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 ] : zp ZP_BYTE:9 , reg byte x , +Potential registers zp ZP_BYTE:10 [ keyboard_events_size#18 keyboard_events_size#112 keyboard_events_size#104 keyboard_events_size#47 keyboard_events_size#27 keyboard_events_size#11 keyboard_events_size#45 keyboard_events_size#13 keyboard_events_size#24 keyboard_events_size#4 keyboard_events_size#105 keyboard_events_size#111 keyboard_events_size#2 keyboard_events_size#1 ] : zp ZP_BYTE:10 , +Potential registers zp ZP_BYTE:11 [ keyboard_event_pressed::keycode#4 ] : zp ZP_BYTE:11 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:12 [ form_mode::i#2 form_mode::i#1 ] : zp ZP_BYTE:12 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:13 [ form_cursor_count#21 form_cursor_count#16 form_cursor_count#1 form_cursor_count#13 form_cursor_count#15 form_cursor_count#5 ] : zp ZP_BYTE:13 , +Potential registers zp ZP_BYTE:14 [ keyboard_modifiers#45 keyboard_modifiers#24 keyboard_modifiers#11 keyboard_modifiers#42 keyboard_modifiers#13 keyboard_modifiers#21 keyboard_modifiers#20 keyboard_modifiers#4 keyboard_modifiers#19 keyboard_modifiers#3 keyboard_modifiers#18 keyboard_modifiers#5 ] : zp ZP_BYTE:14 , +Potential registers zp ZP_BYTE:15 [ form_field_idx#28 form_field_idx#18 form_field_idx#1 form_field_idx#14 form_field_idx#32 form_field_idx#43 form_field_idx#44 ] : zp ZP_BYTE:15 , +Potential registers zp ZP_BYTE:16 [ form_control::return#2 ] : zp ZP_BYTE:16 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:17 [ form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 form_field_ptr::field_idx#0 ] : zp ZP_BYTE:17 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:18 [ form_render_values::idx#2 form_render_values::idx#1 ] : zp ZP_BYTE:18 , reg byte x , +Potential registers zp ZP_WORD:19 [ form_set_screen::line#2 form_set_screen::line#1 ] : zp ZP_WORD:19 , +Potential registers zp ZP_BYTE:21 [ form_set_screen::y#2 form_set_screen::y#1 ] : zp ZP_BYTE:21 , reg byte x , reg byte y , +Potential registers zp ZP_WORD:22 [ print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 ] : zp ZP_WORD:22 , +Potential registers zp ZP_WORD:24 [ print_char_cursor#20 print_char_cursor#22 print_char_cursor#60 print_char_cursor#61 print_char_cursor#38 print_char_cursor#1 ] : zp ZP_WORD:24 , +Potential registers zp ZP_WORD:26 [ print_line_cursor#21 print_line_cursor#2 print_set_screen::screen#2 print_line_cursor#22 ] : zp ZP_WORD:26 , +Potential registers zp ZP_WORD:28 [ print_cls::sc#2 print_cls::sc#0 print_cls::sc#1 ] : zp ZP_WORD:28 , +Potential registers zp ZP_BYTE:30 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 ] : zp ZP_BYTE:30 , reg byte x , +Potential registers zp ZP_WORD:31 [ gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 ] : zp ZP_WORD:31 , +Potential registers zp ZP_BYTE:33 [ gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] : zp ZP_BYTE:33 , reg byte x , +Potential registers zp ZP_WORD:34 [ gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::gfxb#1 ] : zp ZP_WORD:34 , +Potential registers zp ZP_BYTE:36 [ dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#1 ] : zp ZP_BYTE:36 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:37 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cy#1 ] : zp ZP_BYTE:37 , reg byte x , +Potential registers zp ZP_BYTE:38 [ gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::cx#1 ] : zp ZP_BYTE:38 , reg byte x , +Potential registers zp ZP_WORD:39 [ gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::ch#3 gfx_init_screen_stdchar::ch#1 ] : zp ZP_WORD:39 , +Potential registers zp ZP_BYTE:41 [ gfx_mode::$29 ] : zp ZP_BYTE:41 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:42 [ gfx_mode::plane_a_offs#0 ] : zp ZP_BYTE:42 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_DWORD:43 [ gfx_mode::plane_a#0 ] : zp ZP_DWORD:43 , +Potential registers zp ZP_WORD:47 [ gfx_mode::$33 ] : zp ZP_WORD:47 , +Potential registers zp ZP_BYTE:49 [ gfx_mode::$34 ] : zp ZP_BYTE:49 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_WORD:50 [ gfx_mode::$35 ] : zp ZP_WORD:50 , +Potential registers zp ZP_BYTE:52 [ gfx_mode::$36 ] : zp ZP_BYTE:52 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_WORD:53 [ gfx_mode::$37 ] : zp ZP_WORD:53 , +Potential registers zp ZP_BYTE:55 [ gfx_mode::$38 ] : zp ZP_BYTE:55 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:56 [ gfx_mode::$39 ] : zp ZP_BYTE:56 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:57 [ gfx_mode::$40 ] : zp ZP_BYTE:57 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:58 [ gfx_mode::$41 ] : zp ZP_BYTE:58 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:59 [ gfx_mode::$42 ] : zp ZP_BYTE:59 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:60 [ gfx_mode::$43 ] : zp ZP_BYTE:60 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:61 [ gfx_mode::plane_b_offs#0 ] : zp ZP_BYTE:61 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_DWORD:62 [ gfx_mode::plane_b#0 ] : zp ZP_DWORD:62 , +Potential registers zp ZP_WORD:66 [ gfx_mode::$46 ] : zp ZP_WORD:66 , +Potential registers zp ZP_BYTE:68 [ gfx_mode::$47 ] : zp ZP_BYTE:68 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_WORD:69 [ gfx_mode::$48 ] : zp ZP_WORD:69 , +Potential registers zp ZP_BYTE:71 [ gfx_mode::$49 ] : zp ZP_BYTE:71 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_WORD:72 [ gfx_mode::$50 ] : zp ZP_WORD:72 , +Potential registers zp ZP_BYTE:74 [ gfx_mode::$51 ] : zp ZP_BYTE:74 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:75 [ gfx_mode::$52 ] : zp ZP_BYTE:75 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:76 [ gfx_mode::$53 ] : zp ZP_BYTE:76 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:77 [ gfx_mode::$54 ] : zp ZP_BYTE:77 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:78 [ gfx_mode::$55 ] : zp ZP_BYTE:78 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:79 [ gfx_mode::$56 ] : zp ZP_BYTE:79 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:80 [ gfx_mode::$57 ] : zp ZP_BYTE:80 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:81 [ gfx_mode::$58 ] : zp ZP_BYTE:81 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:82 [ gfx_mode::$59 ] : zp ZP_BYTE:82 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:83 [ gfx_mode::$60 ] : zp ZP_BYTE:83 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:84 [ gfx_mode::$61 ] : zp ZP_BYTE:84 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:85 [ gfx_mode::$62 ] : zp ZP_BYTE:85 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:86 [ gfx_mode::$63 ] : zp ZP_BYTE:86 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:87 [ keyboard_event_get::return#3 ] : zp ZP_BYTE:87 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:88 [ gfx_mode::keyboard_event#0 ] : zp ZP_BYTE:88 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:89 [ keyboard_matrix_read::rowid#0 ] : zp ZP_BYTE:89 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:90 [ keyboard_matrix_read::return#2 ] : zp ZP_BYTE:90 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:91 [ keyboard_event_scan::row_scan#0 ] : zp ZP_BYTE:91 , reg byte x , +Potential registers zp ZP_BYTE:92 [ keyboard_event_scan::$3 ] : zp ZP_BYTE:92 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:93 [ keyboard_event_scan::$4 ] : zp ZP_BYTE:93 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:94 [ keyboard_event_scan::event_type#0 ] : zp ZP_BYTE:94 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:95 [ keyboard_event_scan::$12 ] : zp ZP_BYTE:95 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:96 [ keyboard_event_pressed::return#0 ] : zp ZP_BYTE:96 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:97 [ keyboard_event_scan::$16 ] : zp ZP_BYTE:97 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:98 [ keyboard_event_pressed::return#1 ] : zp ZP_BYTE:98 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:99 [ keyboard_event_scan::$20 ] : zp ZP_BYTE:99 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:100 [ keyboard_event_pressed::return#2 ] : zp ZP_BYTE:100 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:101 [ keyboard_event_scan::$24 ] : zp ZP_BYTE:101 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:102 [ keyboard_event_pressed::return#3 ] : zp ZP_BYTE:102 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:103 [ keyboard_event_scan::$28 ] : zp ZP_BYTE:103 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:104 [ keyboard_event_pressed::$0 ] : zp ZP_BYTE:104 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:105 [ keyboard_event_pressed::row_bits#0 ] : zp ZP_BYTE:105 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:106 [ keyboard_event_pressed::$1 ] : zp ZP_BYTE:106 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:107 [ keyboard_event_pressed::return#10 ] : zp ZP_BYTE:107 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:108 [ keyboard_matrix_read::return#0 ] : zp ZP_BYTE:108 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:109 [ form_control::return#0 ] : zp ZP_BYTE:109 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:110 [ form_mode::$25 ] : zp ZP_BYTE:110 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_WORD:111 [ form_field_ptr::return#3 ] : zp ZP_WORD:111 , +Potential registers zp ZP_WORD:113 [ form_control::field#0 ] : zp ZP_WORD:113 , +Potential registers zp ZP_BYTE:115 [ form_control::$6 ] : zp ZP_BYTE:115 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:116 [ keyboard_event_get::return#4 ] : zp ZP_BYTE:116 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:117 [ form_control::key_event#0 ] : zp ZP_BYTE:117 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:118 [ form_control::$12 ] : zp ZP_BYTE:118 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:119 [ form_control::$13 ] : zp ZP_BYTE:119 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:120 [ form_control::$24 ] : zp ZP_BYTE:120 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:121 [ form_control::$7 ] : zp ZP_BYTE:121 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:122 [ form_field_ptr::y#0 ] : zp ZP_BYTE:122 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_WORD:123 [ form_field_ptr::$2 ] : zp ZP_WORD:123 , +Potential registers zp ZP_BYTE:125 [ form_field_ptr::x#0 ] : zp ZP_BYTE:125 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_WORD:126 [ form_field_ptr::return#0 ] : zp ZP_WORD:126 , +Potential registers zp ZP_WORD:128 [ form_field_ptr::return#2 ] : zp ZP_WORD:128 , +Potential registers zp ZP_WORD:130 [ form_render_values::field#0 ] : zp ZP_WORD:130 , +Potential registers zp ZP_BYTE:132 [ form_set_screen::$0 ] : zp ZP_BYTE:132 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:133 [ form_set_screen::$1 ] : zp ZP_BYTE:133 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:134 [ print_str_lines::ch#0 ] : zp ZP_BYTE:134 , reg byte a , reg byte x , +Potential registers zp ZP_WORD:135 [ print_cls::$0 ] : zp ZP_WORD:135 , +Potential registers zp ZP_WORD:137 [ gfx_init_plane_8bppchunky::$6 ] : zp ZP_WORD:137 , +Potential registers zp ZP_BYTE:139 [ gfx_init_plane_8bppchunky::c#0 ] : zp ZP_BYTE:139 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:140 [ gfx_init_screen_stdchar::$0 ] : zp ZP_BYTE:140 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:141 [ gfx_init_screen_stdchar::$1 ] : zp ZP_BYTE:141 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:142 [ gfx_init_screen_stdchar::$2 ] : zp ZP_BYTE:142 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:143 [ gfx_init_screen_stdchar::$3 ] : zp ZP_BYTE:143 , reg byte a , reg byte x , reg byte y , REGISTER UPLIFT SCOPES -Uplift Scope [keyboard_event_scan] 2,002: zp ZP_BYTE:94 [ keyboard_event_scan::$3 ] 2,002: zp ZP_BYTE:95 [ keyboard_event_scan::$4 ] 2,002: zp ZP_BYTE:96 [ keyboard_event_scan::event_type#0 ] 2,002: zp ZP_BYTE:97 [ keyboard_event_scan::$12 ] 1,787.5: zp ZP_BYTE:10 [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ] 1,195.02: zp ZP_BYTE:11 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 ] 211.74: zp ZP_BYTE:9 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 ] 128.06: zp ZP_BYTE:93 [ keyboard_event_scan::row_scan#0 ] 4: zp ZP_BYTE:99 [ keyboard_event_scan::$16 ] 4: zp ZP_BYTE:101 [ keyboard_event_scan::$20 ] 4: zp ZP_BYTE:103 [ keyboard_event_scan::$24 ] 4: zp ZP_BYTE:105 [ keyboard_event_scan::$28 ] -Uplift Scope [] 5,893.39: zp ZP_BYTE:12 [ keyboard_events_size#12 keyboard_events_size#37 keyboard_events_size#20 keyboard_events_size#18 keyboard_events_size#4 keyboard_events_size#15 keyboard_events_size#38 keyboard_events_size#2 keyboard_events_size#1 ] 380.71: zp ZP_WORD:23 [ print_char_cursor#16 print_char_cursor#18 print_char_cursor#60 print_char_cursor#61 print_char_cursor#31 print_char_cursor#1 ] 270.75: zp ZP_WORD:25 [ print_line_cursor#17 print_line_cursor#16 print_set_screen::screen#2 print_line_cursor#18 ] 16.73: zp ZP_BYTE:13 [ keyboard_modifiers#16 keyboard_modifiers#15 keyboard_modifiers#4 keyboard_modifiers#14 keyboard_modifiers#3 keyboard_modifiers#13 keyboard_modifiers#5 ] 14.45: zp ZP_BYTE:3 [ form_field_idx#1 form_field_idx#14 form_field_idx#24 form_field_idx#34 form_field_idx#3 ] 6.53: zp ZP_BYTE:2 [ form_cursor_count#1 form_cursor_count#12 form_cursor_count#11 form_cursor_count#3 ] -Uplift Scope [gfx_init_plane_8bppchunky] 362.64: zp ZP_BYTE:30 [ gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] 297.35: zp ZP_WORD:31 [ gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::gfxb#1 ] 202: zp ZP_WORD:124 [ gfx_init_plane_8bppchunky::$6 ] 202: zp ZP_BYTE:126 [ gfx_init_plane_8bppchunky::c#0 ] 181.8: zp ZP_WORD:28 [ gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 ] 25.96: zp ZP_BYTE:27 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 ] -Uplift Scope [gfx_mode] 353.5: zp ZP_BYTE:7 [ gfx_mode::i#2 gfx_mode::i#1 ] 44: zp ZP_BYTE:4 [ gfx_mode::dtv_control#12 gfx_mode::dtv_control#6 gfx_mode::dtv_control#13 gfx_mode::dtv_control#5 gfx_mode::dtv_control#11 gfx_mode::dtv_control#4 gfx_mode::dtv_control#10 gfx_mode::dtv_control#3 gfx_mode::dtv_control#15 gfx_mode::dtv_control#14 gfx_mode::dtv_control#2 ] 12: zp ZP_BYTE:5 [ gfx_mode::vic_control#4 gfx_mode::vic_control#2 gfx_mode::vic_control#5 ] 4: zp ZP_BYTE:34 [ gfx_mode::$29 ] 4: zp ZP_BYTE:35 [ gfx_mode::plane_a_offs#0 ] 4: zp ZP_WORD:40 [ gfx_mode::$33 ] 4: zp ZP_BYTE:42 [ gfx_mode::$34 ] 4: zp ZP_WORD:43 [ gfx_mode::$35 ] 4: zp ZP_BYTE:45 [ gfx_mode::$36 ] 4: zp ZP_WORD:46 [ gfx_mode::$37 ] 4: zp ZP_BYTE:48 [ gfx_mode::$38 ] 4: zp ZP_BYTE:49 [ gfx_mode::$39 ] 4: zp ZP_BYTE:50 [ gfx_mode::$40 ] 4: zp ZP_BYTE:51 [ gfx_mode::$41 ] 4: zp ZP_BYTE:52 [ gfx_mode::$42 ] 4: zp ZP_BYTE:53 [ gfx_mode::$43 ] 4: zp ZP_BYTE:54 [ gfx_mode::plane_b_offs#0 ] 4: zp ZP_WORD:59 [ gfx_mode::$46 ] 4: zp ZP_BYTE:61 [ gfx_mode::$47 ] 4: zp ZP_WORD:62 [ gfx_mode::$48 ] 4: zp ZP_BYTE:64 [ gfx_mode::$49 ] 4: zp ZP_WORD:65 [ gfx_mode::$50 ] 4: zp ZP_BYTE:67 [ gfx_mode::$51 ] 4: zp ZP_BYTE:68 [ gfx_mode::$52 ] 4: zp ZP_BYTE:69 [ gfx_mode::$53 ] 4: zp ZP_BYTE:70 [ gfx_mode::$54 ] 4: zp ZP_BYTE:71 [ gfx_mode::$55 ] 4: zp ZP_BYTE:72 [ gfx_mode::$56 ] 4: zp ZP_BYTE:73 [ gfx_mode::$57 ] 4: zp ZP_BYTE:74 [ gfx_mode::$58 ] 4: zp ZP_BYTE:75 [ gfx_mode::$59 ] 4: zp ZP_BYTE:76 [ gfx_mode::$60 ] 4: zp ZP_BYTE:77 [ gfx_mode::$61 ] 4: zp ZP_BYTE:78 [ gfx_mode::$62 ] 4: zp ZP_BYTE:79 [ gfx_mode::$63 ] 2: zp ZP_BYTE:6 [ gfx_mode::vic_control2#2 ] 1.14: zp ZP_DWORD:36 [ gfx_mode::plane_a#0 ] 1.14: zp ZP_DWORD:55 [ gfx_mode::plane_b#0 ] -Uplift Scope [form_mode] 353.5: zp ZP_BYTE:16 [ form_mode::i#2 form_mode::i#1 ] -Uplift Scope [keyboard_matrix_read] 202: zp ZP_BYTE:92 [ keyboard_matrix_read::return#2 ] 103: zp ZP_BYTE:91 [ keyboard_matrix_read::rowid#0 ] 34.33: zp ZP_BYTE:110 [ keyboard_matrix_read::return#0 ] -Uplift Scope [dtvSetCpuBankSegment1] 305: zp ZP_BYTE:33 [ dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#1 ] -Uplift Scope [print_str_lines] 199.17: zp ZP_WORD:21 [ print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 ] 67.33: zp ZP_BYTE:123 [ print_str_lines::ch#0 ] -Uplift Scope [form_set_screen] 23.83: zp ZP_BYTE:20 [ form_set_screen::y#2 form_set_screen::y#1 ] 22: zp ZP_BYTE:121 [ form_set_screen::$0 ] 22: zp ZP_BYTE:122 [ form_set_screen::$1 ] 16.13: zp ZP_WORD:18 [ form_set_screen::line#2 form_set_screen::line#1 ] -Uplift Scope [form_field_ptr] 31.67: zp ZP_BYTE:15 [ form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 form_field_ptr::field_idx#0 ] 22: zp ZP_WORD:117 [ form_field_ptr::return#2 ] 6: zp ZP_BYTE:111 [ form_field_ptr::y#0 ] 4: zp ZP_WORD:80 [ form_field_ptr::return#3 ] 4: zp ZP_BYTE:114 [ form_field_ptr::x#0 ] 3.75: zp ZP_WORD:115 [ form_field_ptr::return#0 ] 1: zp ZP_WORD:112 [ form_field_ptr::$2 ] -Uplift Scope [form_render_values] 23.83: zp ZP_BYTE:17 [ form_render_values::idx#2 form_render_values::idx#1 ] 22: zp ZP_WORD:119 [ form_render_values::field#0 ] -Uplift Scope [keyboard_event_pressed] 4: zp ZP_BYTE:98 [ keyboard_event_pressed::return#0 ] 4: zp ZP_BYTE:100 [ keyboard_event_pressed::return#1 ] 4: zp ZP_BYTE:102 [ keyboard_event_pressed::return#2 ] 4: zp ZP_BYTE:104 [ keyboard_event_pressed::return#3 ] 4: zp ZP_BYTE:106 [ keyboard_event_pressed::$0 ] 4: zp ZP_BYTE:108 [ keyboard_event_pressed::$1 ] 2: zp ZP_BYTE:107 [ keyboard_event_pressed::row_bits#0 ] 1.67: zp ZP_BYTE:109 [ keyboard_event_pressed::return#10 ] 1.33: zp ZP_BYTE:14 [ keyboard_event_pressed::keycode#4 ] -Uplift Scope [form_control] 4: zp ZP_BYTE:84 [ form_control::$6 ] 4: zp ZP_BYTE:87 [ form_control::$12 ] 4: zp ZP_BYTE:88 [ form_control::$13 ] 4: zp ZP_BYTE:89 [ form_control::$24 ] 4: zp ZP_BYTE:90 [ form_control::$7 ] 3: zp ZP_BYTE:86 [ form_control::key_event#0 ] 0.59: zp ZP_WORD:82 [ form_control::field#0 ] -Uplift Scope [keyboard_event_get] 5.33: zp ZP_BYTE:8 [ keyboard_event_get::return#2 keyboard_event_get::return#0 ] 4: zp ZP_BYTE:85 [ keyboard_event_get::return#3 ] +Uplift Scope [keyboard_event_scan] 20,002: zp ZP_BYTE:92 [ keyboard_event_scan::$3 ] 20,002: zp ZP_BYTE:93 [ keyboard_event_scan::$4 ] 20,002: zp ZP_BYTE:94 [ keyboard_event_scan::event_type#0 ] 20,002: zp ZP_BYTE:95 [ keyboard_event_scan::$12 ] 17,858.93: zp ZP_BYTE:8 [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ] 11,908.48: zp ZP_BYTE:9 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 ] 2,101.74: zp ZP_BYTE:7 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 ] 1,278.06: zp ZP_BYTE:91 [ keyboard_event_scan::row_scan#0 ] 4: zp ZP_BYTE:97 [ keyboard_event_scan::$16 ] 4: zp ZP_BYTE:99 [ keyboard_event_scan::$20 ] 4: zp ZP_BYTE:101 [ keyboard_event_scan::$24 ] 4: zp ZP_BYTE:103 [ keyboard_event_scan::$28 ] +Uplift Scope [] 59,130: zp ZP_BYTE:10 [ keyboard_events_size#18 keyboard_events_size#112 keyboard_events_size#104 keyboard_events_size#47 keyboard_events_size#27 keyboard_events_size#11 keyboard_events_size#45 keyboard_events_size#13 keyboard_events_size#24 keyboard_events_size#4 keyboard_events_size#105 keyboard_events_size#111 keyboard_events_size#2 keyboard_events_size#1 ] 380.71: zp ZP_WORD:24 [ print_char_cursor#20 print_char_cursor#22 print_char_cursor#60 print_char_cursor#61 print_char_cursor#38 print_char_cursor#1 ] 354.29: zp ZP_BYTE:14 [ keyboard_modifiers#45 keyboard_modifiers#24 keyboard_modifiers#11 keyboard_modifiers#42 keyboard_modifiers#13 keyboard_modifiers#21 keyboard_modifiers#20 keyboard_modifiers#4 keyboard_modifiers#19 keyboard_modifiers#3 keyboard_modifiers#18 keyboard_modifiers#5 ] 271.14: zp ZP_WORD:26 [ print_line_cursor#21 print_line_cursor#2 print_set_screen::screen#2 print_line_cursor#22 ] 106.18: zp ZP_BYTE:13 [ form_cursor_count#21 form_cursor_count#16 form_cursor_count#1 form_cursor_count#13 form_cursor_count#15 form_cursor_count#5 ] 94.31: zp ZP_BYTE:15 [ form_field_idx#28 form_field_idx#18 form_field_idx#1 form_field_idx#14 form_field_idx#32 form_field_idx#43 form_field_idx#44 ] +Uplift Scope [keyboard_matrix_read] 2,002: zp ZP_BYTE:90 [ keyboard_matrix_read::return#2 ] 1,003: zp ZP_BYTE:89 [ keyboard_matrix_read::rowid#0 ] 334.33: zp ZP_BYTE:108 [ keyboard_matrix_read::return#0 ] +Uplift Scope [gfx_init_plane_8bppchunky] 362.64: zp ZP_BYTE:33 [ gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] 297.35: zp ZP_WORD:34 [ gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::gfxb#1 ] 202: zp ZP_WORD:137 [ gfx_init_plane_8bppchunky::$6 ] 202: zp ZP_BYTE:139 [ gfx_init_plane_8bppchunky::c#0 ] 181.8: zp ZP_WORD:31 [ gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 ] 25.96: zp ZP_BYTE:30 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 ] +Uplift Scope [gfx_init_screen_stdchar] 202: zp ZP_BYTE:140 [ gfx_init_screen_stdchar::$0 ] 202: zp ZP_BYTE:142 [ gfx_init_screen_stdchar::$2 ] 202: zp ZP_BYTE:143 [ gfx_init_screen_stdchar::$3 ] 194.79: zp ZP_BYTE:38 [ gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::cx#1 ] 116.93: zp ZP_WORD:39 [ gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::ch#3 gfx_init_screen_stdchar::ch#1 ] 101: zp ZP_BYTE:141 [ gfx_init_screen_stdchar::$1 ] 28.8: zp ZP_BYTE:37 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cy#1 ] +Uplift Scope [gfx_mode] 353.5: zp ZP_BYTE:5 [ gfx_mode::i#2 gfx_mode::i#1 ] 202: zp ZP_BYTE:88 [ gfx_mode::keyboard_event#0 ] 44: zp ZP_BYTE:2 [ gfx_mode::dtv_control#12 gfx_mode::dtv_control#6 gfx_mode::dtv_control#13 gfx_mode::dtv_control#5 gfx_mode::dtv_control#11 gfx_mode::dtv_control#4 gfx_mode::dtv_control#10 gfx_mode::dtv_control#15 gfx_mode::dtv_control#14 gfx_mode::dtv_control#2 gfx_mode::dtv_control#3 ] 12: zp ZP_BYTE:3 [ gfx_mode::vic_control#4 gfx_mode::vic_control#2 gfx_mode::vic_control#5 ] 4: zp ZP_BYTE:41 [ gfx_mode::$29 ] 4: zp ZP_BYTE:42 [ gfx_mode::plane_a_offs#0 ] 4: zp ZP_WORD:47 [ gfx_mode::$33 ] 4: zp ZP_BYTE:49 [ gfx_mode::$34 ] 4: zp ZP_WORD:50 [ gfx_mode::$35 ] 4: zp ZP_BYTE:52 [ gfx_mode::$36 ] 4: zp ZP_WORD:53 [ gfx_mode::$37 ] 4: zp ZP_BYTE:55 [ gfx_mode::$38 ] 4: zp ZP_BYTE:56 [ gfx_mode::$39 ] 4: zp ZP_BYTE:57 [ gfx_mode::$40 ] 4: zp ZP_BYTE:58 [ gfx_mode::$41 ] 4: zp ZP_BYTE:59 [ gfx_mode::$42 ] 4: zp ZP_BYTE:60 [ gfx_mode::$43 ] 4: zp ZP_BYTE:61 [ gfx_mode::plane_b_offs#0 ] 4: zp ZP_WORD:66 [ gfx_mode::$46 ] 4: zp ZP_BYTE:68 [ gfx_mode::$47 ] 4: zp ZP_WORD:69 [ gfx_mode::$48 ] 4: zp ZP_BYTE:71 [ gfx_mode::$49 ] 4: zp ZP_WORD:72 [ gfx_mode::$50 ] 4: zp ZP_BYTE:74 [ gfx_mode::$51 ] 4: zp ZP_BYTE:75 [ gfx_mode::$52 ] 4: zp ZP_BYTE:76 [ gfx_mode::$53 ] 4: zp ZP_BYTE:77 [ gfx_mode::$54 ] 4: zp ZP_BYTE:78 [ gfx_mode::$55 ] 4: zp ZP_BYTE:79 [ gfx_mode::$56 ] 4: zp ZP_BYTE:80 [ gfx_mode::$57 ] 4: zp ZP_BYTE:81 [ gfx_mode::$58 ] 4: zp ZP_BYTE:82 [ gfx_mode::$59 ] 4: zp ZP_BYTE:83 [ gfx_mode::$60 ] 4: zp ZP_BYTE:84 [ gfx_mode::$61 ] 4: zp ZP_BYTE:85 [ gfx_mode::$62 ] 4: zp ZP_BYTE:86 [ gfx_mode::$63 ] 2: zp ZP_BYTE:4 [ gfx_mode::vic_control2#2 ] 1.14: zp ZP_DWORD:43 [ gfx_mode::plane_a#0 ] 1.14: zp ZP_DWORD:62 [ gfx_mode::plane_b#0 ] +Uplift Scope [form_mode] 353.5: zp ZP_BYTE:12 [ form_mode::i#2 form_mode::i#1 ] 202: zp ZP_BYTE:110 [ form_mode::$25 ] +Uplift Scope [dtvSetCpuBankSegment1] 305: zp ZP_BYTE:36 [ dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#1 ] +Uplift Scope [print_str_lines] 199.17: zp ZP_WORD:22 [ print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 ] 67.33: zp ZP_BYTE:134 [ print_str_lines::ch#0 ] +Uplift Scope [form_control] 202: zp ZP_BYTE:109 [ form_control::return#0 ] 33.67: zp ZP_BYTE:16 [ form_control::return#2 ] 4: zp ZP_BYTE:115 [ form_control::$6 ] 4: zp ZP_BYTE:118 [ form_control::$12 ] 4: zp ZP_BYTE:119 [ form_control::$13 ] 4: zp ZP_BYTE:120 [ form_control::$24 ] 4: zp ZP_BYTE:121 [ form_control::$7 ] 2.67: zp ZP_BYTE:117 [ form_control::key_event#0 ] 0.59: zp ZP_WORD:113 [ form_control::field#0 ] +Uplift Scope [keyboard_event_get] 202: zp ZP_BYTE:87 [ keyboard_event_get::return#3 ] 30.25: zp ZP_BYTE:6 [ keyboard_event_get::return#2 keyboard_event_get::return#0 ] 4: zp ZP_BYTE:116 [ keyboard_event_get::return#4 ] +Uplift Scope [form_set_screen] 23.83: zp ZP_BYTE:21 [ form_set_screen::y#2 form_set_screen::y#1 ] 22: zp ZP_BYTE:132 [ form_set_screen::$0 ] 22: zp ZP_BYTE:133 [ form_set_screen::$1 ] 16.13: zp ZP_WORD:19 [ form_set_screen::line#2 form_set_screen::line#1 ] +Uplift Scope [form_field_ptr] 31.67: zp ZP_BYTE:17 [ form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 form_field_ptr::field_idx#0 ] 22: zp ZP_WORD:128 [ form_field_ptr::return#2 ] 6: zp ZP_BYTE:122 [ form_field_ptr::y#0 ] 4: zp ZP_WORD:111 [ form_field_ptr::return#3 ] 4: zp ZP_BYTE:125 [ form_field_ptr::x#0 ] 3.75: zp ZP_WORD:126 [ form_field_ptr::return#0 ] 1: zp ZP_WORD:123 [ form_field_ptr::$2 ] +Uplift Scope [print_cls] 32.5: zp ZP_WORD:28 [ print_cls::sc#2 print_cls::sc#0 print_cls::sc#1 ] 22: zp ZP_WORD:135 [ print_cls::$0 ] +Uplift Scope [form_render_values] 23.83: zp ZP_BYTE:18 [ form_render_values::idx#2 form_render_values::idx#1 ] 22: zp ZP_WORD:130 [ form_render_values::field#0 ] +Uplift Scope [keyboard_event_pressed] 4: zp ZP_BYTE:96 [ keyboard_event_pressed::return#0 ] 4: zp ZP_BYTE:98 [ keyboard_event_pressed::return#1 ] 4: zp ZP_BYTE:100 [ keyboard_event_pressed::return#2 ] 4: zp ZP_BYTE:102 [ keyboard_event_pressed::return#3 ] 4: zp ZP_BYTE:104 [ keyboard_event_pressed::$0 ] 4: zp ZP_BYTE:106 [ keyboard_event_pressed::$1 ] 2: zp ZP_BYTE:105 [ keyboard_event_pressed::row_bits#0 ] 1.67: zp ZP_BYTE:107 [ keyboard_event_pressed::return#10 ] 1.33: zp ZP_BYTE:11 [ keyboard_event_pressed::keycode#4 ] Uplift Scope [print_ln] Uplift Scope [print_set_screen] Uplift Scope [keyboard_init] @@ -12692,154 +14474,176 @@ Uplift Scope [main] Uplift Scope [gfx_init] Uplift Scope [form_init] -Uplifting [keyboard_event_scan] best 174665 combination reg byte a [ keyboard_event_scan::$3 ] reg byte a [ keyboard_event_scan::$4 ] reg byte a [ keyboard_event_scan::event_type#0 ] reg byte a [ keyboard_event_scan::$12 ] zp ZP_BYTE:10 [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ] zp ZP_BYTE:11 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 ] zp ZP_BYTE:9 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 ] zp ZP_BYTE:93 [ keyboard_event_scan::row_scan#0 ] zp ZP_BYTE:99 [ keyboard_event_scan::$16 ] zp ZP_BYTE:101 [ keyboard_event_scan::$20 ] zp ZP_BYTE:103 [ keyboard_event_scan::$24 ] zp ZP_BYTE:105 [ keyboard_event_scan::$28 ] +Uplifting [keyboard_event_scan] best 1423254 combination reg byte a [ keyboard_event_scan::$3 ] reg byte a [ keyboard_event_scan::$4 ] reg byte a [ keyboard_event_scan::event_type#0 ] reg byte a [ keyboard_event_scan::$12 ] zp ZP_BYTE:8 [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ] zp ZP_BYTE:9 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 ] zp ZP_BYTE:7 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 ] zp ZP_BYTE:91 [ keyboard_event_scan::row_scan#0 ] zp ZP_BYTE:97 [ keyboard_event_scan::$16 ] zp ZP_BYTE:99 [ keyboard_event_scan::$20 ] zp ZP_BYTE:101 [ keyboard_event_scan::$24 ] zp ZP_BYTE:103 [ keyboard_event_scan::$28 ] Limited combination testing to 100 combinations of 1048576 possible. -Uplifting [] best 174651 combination zp ZP_BYTE:12 [ keyboard_events_size#12 keyboard_events_size#37 keyboard_events_size#20 keyboard_events_size#18 keyboard_events_size#4 keyboard_events_size#15 keyboard_events_size#38 keyboard_events_size#2 keyboard_events_size#1 ] zp ZP_WORD:23 [ print_char_cursor#16 print_char_cursor#18 print_char_cursor#60 print_char_cursor#61 print_char_cursor#31 print_char_cursor#1 ] zp ZP_WORD:25 [ print_line_cursor#17 print_line_cursor#16 print_set_screen::screen#2 print_line_cursor#18 ] reg byte x [ keyboard_modifiers#16 keyboard_modifiers#15 keyboard_modifiers#4 keyboard_modifiers#14 keyboard_modifiers#3 keyboard_modifiers#13 keyboard_modifiers#5 ] zp ZP_BYTE:3 [ form_field_idx#1 form_field_idx#14 form_field_idx#24 form_field_idx#34 form_field_idx#3 ] zp ZP_BYTE:2 [ form_cursor_count#1 form_cursor_count#12 form_cursor_count#11 form_cursor_count#3 ] -Uplifting [gfx_init_plane_8bppchunky] best 173421 combination reg byte x [ gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] zp ZP_WORD:31 [ gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::gfxb#1 ] zp ZP_WORD:124 [ gfx_init_plane_8bppchunky::$6 ] reg byte a [ gfx_init_plane_8bppchunky::c#0 ] zp ZP_WORD:28 [ gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 ] zp ZP_BYTE:27 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 ] -Uplifting [form_mode] best 172221 combination reg byte x [ form_mode::i#2 form_mode::i#1 ] -Uplifting [keyboard_matrix_read] best 171015 combination reg byte a [ keyboard_matrix_read::return#2 ] reg byte x [ keyboard_matrix_read::rowid#0 ] reg byte a [ keyboard_matrix_read::return#0 ] -Uplifting [dtvSetCpuBankSegment1] best 170906 combination reg byte a [ dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#1 ] -Uplifting [print_str_lines] best 169706 combination zp ZP_WORD:21 [ print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 ] reg byte a [ print_str_lines::ch#0 ] -Uplifting [form_set_screen] best 169436 combination reg byte x [ form_set_screen::y#2 form_set_screen::y#1 ] reg byte a [ form_set_screen::$0 ] reg byte a [ form_set_screen::$1 ] zp ZP_WORD:18 [ form_set_screen::line#2 form_set_screen::line#1 ] -Uplifting [form_field_ptr] best 169385 combination reg byte x [ form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 form_field_ptr::field_idx#0 ] zp ZP_WORD:117 [ form_field_ptr::return#2 ] reg byte y [ form_field_ptr::y#0 ] zp ZP_WORD:80 [ form_field_ptr::return#3 ] reg byte a [ form_field_ptr::x#0 ] zp ZP_WORD:115 [ form_field_ptr::return#0 ] zp ZP_WORD:112 [ form_field_ptr::$2 ] -Uplifting [form_render_values] best 169235 combination reg byte x [ form_render_values::idx#2 form_render_values::idx#1 ] zp ZP_WORD:119 [ form_render_values::field#0 ] -Uplifting [keyboard_event_pressed] best 169211 combination reg byte a [ keyboard_event_pressed::return#0 ] reg byte a [ keyboard_event_pressed::return#1 ] reg byte a [ keyboard_event_pressed::return#2 ] reg byte a [ keyboard_event_pressed::return#3 ] zp ZP_BYTE:106 [ keyboard_event_pressed::$0 ] zp ZP_BYTE:108 [ keyboard_event_pressed::$1 ] zp ZP_BYTE:107 [ keyboard_event_pressed::row_bits#0 ] zp ZP_BYTE:109 [ keyboard_event_pressed::return#10 ] zp ZP_BYTE:14 [ keyboard_event_pressed::keycode#4 ] +Uplifting [] best 1423254 combination zp ZP_BYTE:10 [ keyboard_events_size#18 keyboard_events_size#112 keyboard_events_size#104 keyboard_events_size#47 keyboard_events_size#27 keyboard_events_size#11 keyboard_events_size#45 keyboard_events_size#13 keyboard_events_size#24 keyboard_events_size#4 keyboard_events_size#105 keyboard_events_size#111 keyboard_events_size#2 keyboard_events_size#1 ] zp ZP_WORD:24 [ print_char_cursor#20 print_char_cursor#22 print_char_cursor#60 print_char_cursor#61 print_char_cursor#38 print_char_cursor#1 ] zp ZP_BYTE:14 [ keyboard_modifiers#45 keyboard_modifiers#24 keyboard_modifiers#11 keyboard_modifiers#42 keyboard_modifiers#13 keyboard_modifiers#21 keyboard_modifiers#20 keyboard_modifiers#4 keyboard_modifiers#19 keyboard_modifiers#3 keyboard_modifiers#18 keyboard_modifiers#5 ] zp ZP_WORD:26 [ print_line_cursor#21 print_line_cursor#2 print_set_screen::screen#2 print_line_cursor#22 ] zp ZP_BYTE:13 [ form_cursor_count#21 form_cursor_count#16 form_cursor_count#1 form_cursor_count#13 form_cursor_count#15 form_cursor_count#5 ] zp ZP_BYTE:15 [ form_field_idx#28 form_field_idx#18 form_field_idx#1 form_field_idx#14 form_field_idx#32 form_field_idx#43 form_field_idx#44 ] +Uplifting [keyboard_matrix_read] best 1411248 combination reg byte a [ keyboard_matrix_read::return#2 ] reg byte x [ keyboard_matrix_read::rowid#0 ] reg byte a [ keyboard_matrix_read::return#0 ] +Uplifting [gfx_init_plane_8bppchunky] best 1410018 combination reg byte x [ gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] zp ZP_WORD:34 [ gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::gfxb#1 ] zp ZP_WORD:137 [ gfx_init_plane_8bppchunky::$6 ] reg byte a [ gfx_init_plane_8bppchunky::c#0 ] zp ZP_WORD:31 [ gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 ] zp ZP_BYTE:30 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 ] +Uplifting [gfx_init_screen_stdchar] best 1407218 combination reg byte a [ gfx_init_screen_stdchar::$0 ] reg byte a [ gfx_init_screen_stdchar::$2 ] reg byte a [ gfx_init_screen_stdchar::$3 ] reg byte x [ gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::cx#1 ] zp ZP_WORD:39 [ gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::ch#3 gfx_init_screen_stdchar::ch#1 ] zp ZP_BYTE:141 [ gfx_init_screen_stdchar::$1 ] zp ZP_BYTE:37 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cy#1 ] +Limited combination testing to 100 combinations of 768 possible. +Uplifting [form_mode] best 1405618 combination reg byte x [ form_mode::i#2 form_mode::i#1 ] reg byte a [ form_mode::$25 ] +Uplifting [dtvSetCpuBankSegment1] best 1405509 combination reg byte a [ dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#1 ] +Uplifting [print_str_lines] best 1404309 combination zp ZP_WORD:22 [ print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 ] reg byte a [ print_str_lines::ch#0 ] +Uplifting [form_control] best 1403588 combination reg byte a [ form_control::return#0 ] reg byte x [ form_control::return#2 ] reg byte a [ form_control::$6 ] reg byte a [ form_control::$12 ] zp ZP_BYTE:119 [ form_control::$13 ] zp ZP_BYTE:120 [ form_control::$24 ] zp ZP_BYTE:121 [ form_control::$7 ] zp ZP_BYTE:117 [ form_control::key_event#0 ] zp ZP_WORD:113 [ form_control::field#0 ] +Limited combination testing to 100 combinations of 65536 possible. +Uplifting [keyboard_event_get] best 1402673 combination reg byte a [ keyboard_event_get::return#3 ] reg byte a [ keyboard_event_get::return#2 keyboard_event_get::return#0 ] reg byte a [ keyboard_event_get::return#4 ] +Uplifting [form_set_screen] best 1402403 combination reg byte x [ form_set_screen::y#2 form_set_screen::y#1 ] reg byte a [ form_set_screen::$0 ] reg byte a [ form_set_screen::$1 ] zp ZP_WORD:19 [ form_set_screen::line#2 form_set_screen::line#1 ] +Uplifting [form_field_ptr] best 1402352 combination reg byte x [ form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 form_field_ptr::field_idx#0 ] zp ZP_WORD:128 [ form_field_ptr::return#2 ] reg byte y [ form_field_ptr::y#0 ] zp ZP_WORD:111 [ form_field_ptr::return#3 ] reg byte a [ form_field_ptr::x#0 ] zp ZP_WORD:126 [ form_field_ptr::return#0 ] zp ZP_WORD:123 [ form_field_ptr::$2 ] +Uplifting [print_cls] best 1402352 combination zp ZP_WORD:28 [ print_cls::sc#2 print_cls::sc#0 print_cls::sc#1 ] zp ZP_WORD:135 [ print_cls::$0 ] +Uplifting [form_render_values] best 1402202 combination reg byte x [ form_render_values::idx#2 form_render_values::idx#1 ] zp ZP_WORD:130 [ form_render_values::field#0 ] +Uplifting [keyboard_event_pressed] best 1402178 combination reg byte a [ keyboard_event_pressed::return#0 ] reg byte a [ keyboard_event_pressed::return#1 ] reg byte a [ keyboard_event_pressed::return#2 ] reg byte a [ keyboard_event_pressed::return#3 ] zp ZP_BYTE:104 [ keyboard_event_pressed::$0 ] zp ZP_BYTE:106 [ keyboard_event_pressed::$1 ] zp ZP_BYTE:105 [ keyboard_event_pressed::row_bits#0 ] zp ZP_BYTE:107 [ keyboard_event_pressed::return#10 ] zp ZP_BYTE:11 [ keyboard_event_pressed::keycode#4 ] Limited combination testing to 100 combinations of 196608 possible. -Uplifting [form_control] best 169191 combination reg byte a [ form_control::$6 ] reg byte a [ form_control::$12 ] reg byte a [ form_control::$13 ] reg byte a [ form_control::$24 ] zp ZP_BYTE:90 [ form_control::$7 ] zp ZP_BYTE:86 [ form_control::key_event#0 ] zp ZP_WORD:82 [ form_control::field#0 ] -Limited combination testing to 100 combinations of 4096 possible. -Uplifting [keyboard_event_get] best 169176 combination reg byte a [ keyboard_event_get::return#2 keyboard_event_get::return#0 ] reg byte a [ keyboard_event_get::return#3 ] -Uplifting [print_ln] best 169176 combination -Uplifting [print_set_screen] best 169176 combination -Uplifting [keyboard_init] best 169176 combination -Uplifting [main] best 169176 combination -Uplifting [gfx_init] best 169176 combination -Uplifting [form_init] best 169176 combination -Attempting to uplift remaining variables inzp ZP_BYTE:12 [ keyboard_events_size#12 keyboard_events_size#37 keyboard_events_size#20 keyboard_events_size#18 keyboard_events_size#4 keyboard_events_size#15 keyboard_events_size#38 keyboard_events_size#2 keyboard_events_size#1 ] -Uplifting [] best 169176 combination zp ZP_BYTE:12 [ keyboard_events_size#12 keyboard_events_size#37 keyboard_events_size#20 keyboard_events_size#18 keyboard_events_size#4 keyboard_events_size#15 keyboard_events_size#38 keyboard_events_size#2 keyboard_events_size#1 ] -Attempting to uplift remaining variables inzp ZP_BYTE:10 [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ] -Uplifting [keyboard_event_scan] best 154176 combination reg byte x [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ] -Attempting to uplift remaining variables inzp ZP_BYTE:11 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 ] -Uplifting [keyboard_event_scan] best 154176 combination zp ZP_BYTE:11 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 ] -Attempting to uplift remaining variables inzp ZP_BYTE:7 [ gfx_mode::i#2 gfx_mode::i#1 ] -Uplifting [gfx_mode] best 152976 combination reg byte x [ gfx_mode::i#2 gfx_mode::i#1 ] -Attempting to uplift remaining variables inzp ZP_BYTE:9 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 ] -Uplifting [keyboard_event_scan] best 152976 combination zp ZP_BYTE:9 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 ] -Attempting to uplift remaining variables inzp ZP_BYTE:93 [ keyboard_event_scan::row_scan#0 ] -Uplifting [keyboard_event_scan] best 152976 combination zp ZP_BYTE:93 [ keyboard_event_scan::row_scan#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:4 [ gfx_mode::dtv_control#12 gfx_mode::dtv_control#6 gfx_mode::dtv_control#13 gfx_mode::dtv_control#5 gfx_mode::dtv_control#11 gfx_mode::dtv_control#4 gfx_mode::dtv_control#10 gfx_mode::dtv_control#3 gfx_mode::dtv_control#15 gfx_mode::dtv_control#14 gfx_mode::dtv_control#2 ] -Uplifting [gfx_mode] best 152957 combination reg byte x [ gfx_mode::dtv_control#12 gfx_mode::dtv_control#6 gfx_mode::dtv_control#13 gfx_mode::dtv_control#5 gfx_mode::dtv_control#11 gfx_mode::dtv_control#4 gfx_mode::dtv_control#10 gfx_mode::dtv_control#3 gfx_mode::dtv_control#15 gfx_mode::dtv_control#14 gfx_mode::dtv_control#2 ] -Attempting to uplift remaining variables inzp ZP_BYTE:27 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 ] -Uplifting [gfx_init_plane_8bppchunky] best 152957 combination zp ZP_BYTE:27 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 ] -Attempting to uplift remaining variables inzp ZP_BYTE:3 [ form_field_idx#1 form_field_idx#14 form_field_idx#24 form_field_idx#34 form_field_idx#3 ] -Uplifting [] best 152957 combination zp ZP_BYTE:3 [ form_field_idx#1 form_field_idx#14 form_field_idx#24 form_field_idx#34 form_field_idx#3 ] -Attempting to uplift remaining variables inzp ZP_BYTE:5 [ gfx_mode::vic_control#4 gfx_mode::vic_control#2 gfx_mode::vic_control#5 ] -Uplifting [gfx_mode] best 152946 combination reg byte x [ gfx_mode::vic_control#4 gfx_mode::vic_control#2 gfx_mode::vic_control#5 ] -Attempting to uplift remaining variables inzp ZP_BYTE:2 [ form_cursor_count#1 form_cursor_count#12 form_cursor_count#11 form_cursor_count#3 ] -Uplifting [] best 152946 combination zp ZP_BYTE:2 [ form_cursor_count#1 form_cursor_count#12 form_cursor_count#11 form_cursor_count#3 ] -Attempting to uplift remaining variables inzp ZP_BYTE:34 [ gfx_mode::$29 ] -Uplifting [gfx_mode] best 152940 combination reg byte a [ gfx_mode::$29 ] -Attempting to uplift remaining variables inzp ZP_BYTE:35 [ gfx_mode::plane_a_offs#0 ] -Uplifting [gfx_mode] best 152934 combination reg byte a [ gfx_mode::plane_a_offs#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:42 [ gfx_mode::$34 ] -Uplifting [gfx_mode] best 152928 combination reg byte a [ gfx_mode::$34 ] -Attempting to uplift remaining variables inzp ZP_BYTE:45 [ gfx_mode::$36 ] -Uplifting [gfx_mode] best 152922 combination reg byte a [ gfx_mode::$36 ] -Attempting to uplift remaining variables inzp ZP_BYTE:48 [ gfx_mode::$38 ] -Uplifting [gfx_mode] best 152916 combination reg byte a [ gfx_mode::$38 ] -Attempting to uplift remaining variables inzp ZP_BYTE:49 [ gfx_mode::$39 ] -Uplifting [gfx_mode] best 152910 combination reg byte a [ gfx_mode::$39 ] -Attempting to uplift remaining variables inzp ZP_BYTE:50 [ gfx_mode::$40 ] -Uplifting [gfx_mode] best 152904 combination reg byte a [ gfx_mode::$40 ] -Attempting to uplift remaining variables inzp ZP_BYTE:51 [ gfx_mode::$41 ] -Uplifting [gfx_mode] best 152898 combination reg byte a [ gfx_mode::$41 ] -Attempting to uplift remaining variables inzp ZP_BYTE:52 [ gfx_mode::$42 ] -Uplifting [gfx_mode] best 152892 combination reg byte a [ gfx_mode::$42 ] -Attempting to uplift remaining variables inzp ZP_BYTE:53 [ gfx_mode::$43 ] -Uplifting [gfx_mode] best 152886 combination reg byte a [ gfx_mode::$43 ] -Attempting to uplift remaining variables inzp ZP_BYTE:54 [ gfx_mode::plane_b_offs#0 ] -Uplifting [gfx_mode] best 152880 combination reg byte a [ gfx_mode::plane_b_offs#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:61 [ gfx_mode::$47 ] -Uplifting [gfx_mode] best 152874 combination reg byte a [ gfx_mode::$47 ] -Attempting to uplift remaining variables inzp ZP_BYTE:64 [ gfx_mode::$49 ] -Uplifting [gfx_mode] best 152868 combination reg byte a [ gfx_mode::$49 ] -Attempting to uplift remaining variables inzp ZP_BYTE:67 [ gfx_mode::$51 ] -Uplifting [gfx_mode] best 152862 combination reg byte a [ gfx_mode::$51 ] -Attempting to uplift remaining variables inzp ZP_BYTE:68 [ gfx_mode::$52 ] -Uplifting [gfx_mode] best 152856 combination reg byte a [ gfx_mode::$52 ] -Attempting to uplift remaining variables inzp ZP_BYTE:69 [ gfx_mode::$53 ] -Uplifting [gfx_mode] best 152850 combination reg byte a [ gfx_mode::$53 ] -Attempting to uplift remaining variables inzp ZP_BYTE:70 [ gfx_mode::$54 ] -Uplifting [gfx_mode] best 152844 combination reg byte a [ gfx_mode::$54 ] -Attempting to uplift remaining variables inzp ZP_BYTE:71 [ gfx_mode::$55 ] -Uplifting [gfx_mode] best 152838 combination reg byte a [ gfx_mode::$55 ] -Attempting to uplift remaining variables inzp ZP_BYTE:72 [ gfx_mode::$56 ] -Uplifting [gfx_mode] best 152832 combination reg byte a [ gfx_mode::$56 ] -Attempting to uplift remaining variables inzp ZP_BYTE:73 [ gfx_mode::$57 ] -Uplifting [gfx_mode] best 152826 combination reg byte a [ gfx_mode::$57 ] -Attempting to uplift remaining variables inzp ZP_BYTE:74 [ gfx_mode::$58 ] -Uplifting [gfx_mode] best 152820 combination reg byte a [ gfx_mode::$58 ] -Attempting to uplift remaining variables inzp ZP_BYTE:75 [ gfx_mode::$59 ] -Uplifting [gfx_mode] best 152814 combination reg byte a [ gfx_mode::$59 ] -Attempting to uplift remaining variables inzp ZP_BYTE:76 [ gfx_mode::$60 ] -Uplifting [gfx_mode] best 152808 combination reg byte a [ gfx_mode::$60 ] -Attempting to uplift remaining variables inzp ZP_BYTE:77 [ gfx_mode::$61 ] -Uplifting [gfx_mode] best 152802 combination reg byte a [ gfx_mode::$61 ] -Attempting to uplift remaining variables inzp ZP_BYTE:78 [ gfx_mode::$62 ] -Uplifting [gfx_mode] best 152796 combination reg byte a [ gfx_mode::$62 ] -Attempting to uplift remaining variables inzp ZP_BYTE:79 [ gfx_mode::$63 ] -Uplifting [gfx_mode] best 152790 combination reg byte a [ gfx_mode::$63 ] -Attempting to uplift remaining variables inzp ZP_BYTE:90 [ form_control::$7 ] -Uplifting [form_control] best 152784 combination reg byte a [ form_control::$7 ] -Attempting to uplift remaining variables inzp ZP_BYTE:99 [ keyboard_event_scan::$16 ] -Uplifting [keyboard_event_scan] best 152780 combination reg byte a [ keyboard_event_scan::$16 ] -Attempting to uplift remaining variables inzp ZP_BYTE:101 [ keyboard_event_scan::$20 ] -Uplifting [keyboard_event_scan] best 152776 combination reg byte a [ keyboard_event_scan::$20 ] -Attempting to uplift remaining variables inzp ZP_BYTE:103 [ keyboard_event_scan::$24 ] -Uplifting [keyboard_event_scan] best 152772 combination reg byte a [ keyboard_event_scan::$24 ] -Attempting to uplift remaining variables inzp ZP_BYTE:105 [ keyboard_event_scan::$28 ] -Uplifting [keyboard_event_scan] best 152768 combination reg byte a [ keyboard_event_scan::$28 ] -Attempting to uplift remaining variables inzp ZP_BYTE:106 [ keyboard_event_pressed::$0 ] -Uplifting [keyboard_event_pressed] best 152764 combination reg byte a [ keyboard_event_pressed::$0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:108 [ keyboard_event_pressed::$1 ] -Uplifting [keyboard_event_pressed] best 152760 combination reg byte a [ keyboard_event_pressed::$1 ] -Attempting to uplift remaining variables inzp ZP_BYTE:86 [ form_control::key_event#0 ] -Uplifting [form_control] best 152751 combination reg byte a [ form_control::key_event#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:6 [ gfx_mode::vic_control2#2 ] -Uplifting [gfx_mode] best 152742 combination reg byte a [ gfx_mode::vic_control2#2 ] -Attempting to uplift remaining variables inzp ZP_BYTE:107 [ keyboard_event_pressed::row_bits#0 ] -Uplifting [keyboard_event_pressed] best 152742 combination zp ZP_BYTE:107 [ keyboard_event_pressed::row_bits#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:109 [ keyboard_event_pressed::return#10 ] -Uplifting [keyboard_event_pressed] best 152727 combination reg byte a [ keyboard_event_pressed::return#10 ] -Attempting to uplift remaining variables inzp ZP_BYTE:14 [ keyboard_event_pressed::keycode#4 ] -Uplifting [keyboard_event_pressed] best 152727 combination zp ZP_BYTE:14 [ keyboard_event_pressed::keycode#4 ] -Coalescing zero page register with common assignment [ zp ZP_WORD:80 [ form_field_ptr::return#3 ] ] with [ zp ZP_WORD:82 [ form_control::field#0 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:80 [ form_field_ptr::return#3 form_control::field#0 ] ] with [ zp ZP_WORD:115 [ form_field_ptr::return#0 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:117 [ form_field_ptr::return#2 ] ] with [ zp ZP_WORD:119 [ form_render_values::field#0 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:80 [ form_field_ptr::return#3 form_control::field#0 form_field_ptr::return#0 ] ] with [ zp ZP_WORD:112 [ form_field_ptr::$2 ] ] - score: 1 -Coalescing zero page register with common assignment [ zp ZP_WORD:80 [ form_field_ptr::return#3 form_control::field#0 form_field_ptr::return#0 form_field_ptr::$2 ] ] with [ zp ZP_WORD:117 [ form_field_ptr::return#2 form_render_values::field#0 ] ] - score: 1 -Coalescing zero page register [ zp ZP_BYTE:2 [ form_cursor_count#1 form_cursor_count#12 form_cursor_count#11 form_cursor_count#3 ] ] with [ zp ZP_BYTE:27 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 ] ] -Coalescing zero page register [ zp ZP_BYTE:9 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 ] ] with [ zp ZP_BYTE:14 [ keyboard_event_pressed::keycode#4 ] ] -Coalescing zero page register [ zp ZP_BYTE:11 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 ] ] with [ zp ZP_BYTE:107 [ keyboard_event_pressed::row_bits#0 ] ] -Coalescing zero page register [ zp ZP_WORD:18 [ form_set_screen::line#2 form_set_screen::line#1 ] ] with [ zp ZP_WORD:21 [ print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 ] ] -Coalescing zero page register [ zp ZP_WORD:18 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 ] ] with [ zp ZP_WORD:28 [ gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 ] ] -Coalescing zero page register [ zp ZP_WORD:18 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 ] ] with [ zp ZP_WORD:40 [ gfx_mode::$33 ] ] -Coalescing zero page register [ zp ZP_WORD:18 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 gfx_mode::$33 ] ] with [ zp ZP_WORD:43 [ gfx_mode::$35 ] ] -Coalescing zero page register [ zp ZP_WORD:18 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 gfx_mode::$33 gfx_mode::$35 ] ] with [ zp ZP_WORD:46 [ gfx_mode::$37 ] ] -Coalescing zero page register [ zp ZP_WORD:18 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 gfx_mode::$33 gfx_mode::$35 gfx_mode::$37 ] ] with [ zp ZP_WORD:59 [ gfx_mode::$46 ] ] -Coalescing zero page register [ zp ZP_WORD:18 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 gfx_mode::$33 gfx_mode::$35 gfx_mode::$37 gfx_mode::$46 ] ] with [ zp ZP_WORD:62 [ gfx_mode::$48 ] ] -Coalescing zero page register [ zp ZP_WORD:18 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 gfx_mode::$33 gfx_mode::$35 gfx_mode::$37 gfx_mode::$46 gfx_mode::$48 ] ] with [ zp ZP_WORD:65 [ gfx_mode::$50 ] ] -Coalescing zero page register [ zp ZP_WORD:18 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 gfx_mode::$33 gfx_mode::$35 gfx_mode::$37 gfx_mode::$46 gfx_mode::$48 gfx_mode::$50 ] ] with [ zp ZP_WORD:80 [ form_field_ptr::return#3 form_control::field#0 form_field_ptr::return#0 form_field_ptr::$2 form_field_ptr::return#2 form_render_values::field#0 ] ] -Coalescing zero page register [ zp ZP_WORD:23 [ print_char_cursor#16 print_char_cursor#18 print_char_cursor#60 print_char_cursor#61 print_char_cursor#31 print_char_cursor#1 ] ] with [ zp ZP_WORD:31 [ gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::gfxb#1 ] ] -Coalescing zero page register [ zp ZP_WORD:25 [ print_line_cursor#17 print_line_cursor#16 print_set_screen::screen#2 print_line_cursor#18 ] ] with [ zp ZP_WORD:124 [ gfx_init_plane_8bppchunky::$6 ] ] -Coalescing zero page register [ zp ZP_DWORD:36 [ gfx_mode::plane_a#0 ] ] with [ zp ZP_DWORD:55 [ gfx_mode::plane_b#0 ] ] -Allocated (was zp ZP_BYTE:9) zp ZP_BYTE:4 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 keyboard_event_pressed::keycode#4 ] -Allocated (was zp ZP_BYTE:11) zp ZP_BYTE:5 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 keyboard_event_pressed::row_bits#0 ] -Allocated (was zp ZP_BYTE:12) zp ZP_BYTE:6 [ keyboard_events_size#12 keyboard_events_size#37 keyboard_events_size#20 keyboard_events_size#18 keyboard_events_size#4 keyboard_events_size#15 keyboard_events_size#38 keyboard_events_size#2 keyboard_events_size#1 ] -Allocated (was zp ZP_WORD:18) zp ZP_WORD:7 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 gfx_mode::$33 gfx_mode::$35 gfx_mode::$37 gfx_mode::$46 gfx_mode::$48 gfx_mode::$50 form_field_ptr::return#3 form_control::field#0 form_field_ptr::return#0 form_field_ptr::$2 form_field_ptr::return#2 form_render_values::field#0 ] -Allocated (was zp ZP_WORD:23) zp ZP_WORD:9 [ print_char_cursor#16 print_char_cursor#18 print_char_cursor#60 print_char_cursor#61 print_char_cursor#31 print_char_cursor#1 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::gfxb#1 ] -Allocated (was zp ZP_WORD:25) zp ZP_WORD:11 [ print_line_cursor#17 print_line_cursor#16 print_set_screen::screen#2 print_line_cursor#18 gfx_init_plane_8bppchunky::$6 ] -Allocated (was zp ZP_DWORD:36) zp ZP_DWORD:13 [ gfx_mode::plane_a#0 gfx_mode::plane_b#0 ] -Allocated (was zp ZP_BYTE:93) zp ZP_BYTE:17 [ keyboard_event_scan::row_scan#0 ] +Uplifting [print_ln] best 1402178 combination +Uplifting [print_set_screen] best 1402178 combination +Uplifting [keyboard_init] best 1402178 combination +Uplifting [main] best 1402178 combination +Uplifting [gfx_init] best 1402178 combination +Uplifting [form_init] best 1402178 combination +Attempting to uplift remaining variables inzp ZP_BYTE:10 [ keyboard_events_size#18 keyboard_events_size#112 keyboard_events_size#104 keyboard_events_size#47 keyboard_events_size#27 keyboard_events_size#11 keyboard_events_size#45 keyboard_events_size#13 keyboard_events_size#24 keyboard_events_size#4 keyboard_events_size#105 keyboard_events_size#111 keyboard_events_size#2 keyboard_events_size#1 ] +Uplifting [] best 1402178 combination zp ZP_BYTE:10 [ keyboard_events_size#18 keyboard_events_size#112 keyboard_events_size#104 keyboard_events_size#47 keyboard_events_size#27 keyboard_events_size#11 keyboard_events_size#45 keyboard_events_size#13 keyboard_events_size#24 keyboard_events_size#4 keyboard_events_size#105 keyboard_events_size#111 keyboard_events_size#2 keyboard_events_size#1 ] +Attempting to uplift remaining variables inzp ZP_BYTE:8 [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ] +Uplifting [keyboard_event_scan] best 1252178 combination reg byte x [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ] +Attempting to uplift remaining variables inzp ZP_BYTE:9 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 ] +Uplifting [keyboard_event_scan] best 1252178 combination zp ZP_BYTE:9 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 ] +Attempting to uplift remaining variables inzp ZP_BYTE:7 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 ] +Uplifting [keyboard_event_scan] best 1252178 combination zp ZP_BYTE:7 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 ] +Attempting to uplift remaining variables inzp ZP_BYTE:91 [ keyboard_event_scan::row_scan#0 ] +Uplifting [keyboard_event_scan] best 1252178 combination zp ZP_BYTE:91 [ keyboard_event_scan::row_scan#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:14 [ keyboard_modifiers#45 keyboard_modifiers#24 keyboard_modifiers#11 keyboard_modifiers#42 keyboard_modifiers#13 keyboard_modifiers#21 keyboard_modifiers#20 keyboard_modifiers#4 keyboard_modifiers#19 keyboard_modifiers#3 keyboard_modifiers#18 keyboard_modifiers#5 ] +Uplifting [] best 1252178 combination zp ZP_BYTE:14 [ keyboard_modifiers#45 keyboard_modifiers#24 keyboard_modifiers#11 keyboard_modifiers#42 keyboard_modifiers#13 keyboard_modifiers#21 keyboard_modifiers#20 keyboard_modifiers#4 keyboard_modifiers#19 keyboard_modifiers#3 keyboard_modifiers#18 keyboard_modifiers#5 ] +Attempting to uplift remaining variables inzp ZP_BYTE:5 [ gfx_mode::i#2 gfx_mode::i#1 ] +Uplifting [gfx_mode] best 1250978 combination reg byte x [ gfx_mode::i#2 gfx_mode::i#1 ] +Attempting to uplift remaining variables inzp ZP_BYTE:88 [ gfx_mode::keyboard_event#0 ] +Uplifting [gfx_mode] best 1250378 combination reg byte a [ gfx_mode::keyboard_event#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:13 [ form_cursor_count#21 form_cursor_count#16 form_cursor_count#1 form_cursor_count#13 form_cursor_count#15 form_cursor_count#5 ] +Uplifting [] best 1250378 combination zp ZP_BYTE:13 [ form_cursor_count#21 form_cursor_count#16 form_cursor_count#1 form_cursor_count#13 form_cursor_count#15 form_cursor_count#5 ] +Attempting to uplift remaining variables inzp ZP_BYTE:141 [ gfx_init_screen_stdchar::$1 ] +Uplifting [gfx_init_screen_stdchar] best 1250378 combination zp ZP_BYTE:141 [ gfx_init_screen_stdchar::$1 ] +Attempting to uplift remaining variables inzp ZP_BYTE:15 [ form_field_idx#28 form_field_idx#18 form_field_idx#1 form_field_idx#14 form_field_idx#32 form_field_idx#43 form_field_idx#44 ] +Uplifting [] best 1250378 combination zp ZP_BYTE:15 [ form_field_idx#28 form_field_idx#18 form_field_idx#1 form_field_idx#14 form_field_idx#32 form_field_idx#43 form_field_idx#44 ] +Attempting to uplift remaining variables inzp ZP_BYTE:2 [ gfx_mode::dtv_control#12 gfx_mode::dtv_control#6 gfx_mode::dtv_control#13 gfx_mode::dtv_control#5 gfx_mode::dtv_control#11 gfx_mode::dtv_control#4 gfx_mode::dtv_control#10 gfx_mode::dtv_control#15 gfx_mode::dtv_control#14 gfx_mode::dtv_control#2 gfx_mode::dtv_control#3 ] +Uplifting [gfx_mode] best 1250359 combination reg byte x [ gfx_mode::dtv_control#12 gfx_mode::dtv_control#6 gfx_mode::dtv_control#13 gfx_mode::dtv_control#5 gfx_mode::dtv_control#11 gfx_mode::dtv_control#4 gfx_mode::dtv_control#10 gfx_mode::dtv_control#15 gfx_mode::dtv_control#14 gfx_mode::dtv_control#2 gfx_mode::dtv_control#3 ] +Attempting to uplift remaining variables inzp ZP_BYTE:37 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cy#1 ] +Uplifting [gfx_init_screen_stdchar] best 1250359 combination zp ZP_BYTE:37 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cy#1 ] +Attempting to uplift remaining variables inzp ZP_BYTE:30 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 ] +Uplifting [gfx_init_plane_8bppchunky] best 1250359 combination zp ZP_BYTE:30 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 ] +Attempting to uplift remaining variables inzp ZP_BYTE:3 [ gfx_mode::vic_control#4 gfx_mode::vic_control#2 gfx_mode::vic_control#5 ] +Uplifting [gfx_mode] best 1250348 combination reg byte x [ gfx_mode::vic_control#4 gfx_mode::vic_control#2 gfx_mode::vic_control#5 ] +Attempting to uplift remaining variables inzp ZP_BYTE:41 [ gfx_mode::$29 ] +Uplifting [gfx_mode] best 1250342 combination reg byte a [ gfx_mode::$29 ] +Attempting to uplift remaining variables inzp ZP_BYTE:42 [ gfx_mode::plane_a_offs#0 ] +Uplifting [gfx_mode] best 1250336 combination reg byte a [ gfx_mode::plane_a_offs#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:49 [ gfx_mode::$34 ] +Uplifting [gfx_mode] best 1250330 combination reg byte a [ gfx_mode::$34 ] +Attempting to uplift remaining variables inzp ZP_BYTE:52 [ gfx_mode::$36 ] +Uplifting [gfx_mode] best 1250324 combination reg byte a [ gfx_mode::$36 ] +Attempting to uplift remaining variables inzp ZP_BYTE:55 [ gfx_mode::$38 ] +Uplifting [gfx_mode] best 1250318 combination reg byte a [ gfx_mode::$38 ] +Attempting to uplift remaining variables inzp ZP_BYTE:56 [ gfx_mode::$39 ] +Uplifting [gfx_mode] best 1250312 combination reg byte a [ gfx_mode::$39 ] +Attempting to uplift remaining variables inzp ZP_BYTE:57 [ gfx_mode::$40 ] +Uplifting [gfx_mode] best 1250306 combination reg byte a [ gfx_mode::$40 ] +Attempting to uplift remaining variables inzp ZP_BYTE:58 [ gfx_mode::$41 ] +Uplifting [gfx_mode] best 1250300 combination reg byte a [ gfx_mode::$41 ] +Attempting to uplift remaining variables inzp ZP_BYTE:59 [ gfx_mode::$42 ] +Uplifting [gfx_mode] best 1250294 combination reg byte a [ gfx_mode::$42 ] +Attempting to uplift remaining variables inzp ZP_BYTE:60 [ gfx_mode::$43 ] +Uplifting [gfx_mode] best 1250288 combination reg byte a [ gfx_mode::$43 ] +Attempting to uplift remaining variables inzp ZP_BYTE:61 [ gfx_mode::plane_b_offs#0 ] +Uplifting [gfx_mode] best 1250282 combination reg byte a [ gfx_mode::plane_b_offs#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:68 [ gfx_mode::$47 ] +Uplifting [gfx_mode] best 1250276 combination reg byte a [ gfx_mode::$47 ] +Attempting to uplift remaining variables inzp ZP_BYTE:71 [ gfx_mode::$49 ] +Uplifting [gfx_mode] best 1250270 combination reg byte a [ gfx_mode::$49 ] +Attempting to uplift remaining variables inzp ZP_BYTE:74 [ gfx_mode::$51 ] +Uplifting [gfx_mode] best 1250264 combination reg byte a [ gfx_mode::$51 ] +Attempting to uplift remaining variables inzp ZP_BYTE:75 [ gfx_mode::$52 ] +Uplifting [gfx_mode] best 1250258 combination reg byte a [ gfx_mode::$52 ] +Attempting to uplift remaining variables inzp ZP_BYTE:76 [ gfx_mode::$53 ] +Uplifting [gfx_mode] best 1250252 combination reg byte a [ gfx_mode::$53 ] +Attempting to uplift remaining variables inzp ZP_BYTE:77 [ gfx_mode::$54 ] +Uplifting [gfx_mode] best 1250246 combination reg byte a [ gfx_mode::$54 ] +Attempting to uplift remaining variables inzp ZP_BYTE:78 [ gfx_mode::$55 ] +Uplifting [gfx_mode] best 1250240 combination reg byte a [ gfx_mode::$55 ] +Attempting to uplift remaining variables inzp ZP_BYTE:79 [ gfx_mode::$56 ] +Uplifting [gfx_mode] best 1250234 combination reg byte a [ gfx_mode::$56 ] +Attempting to uplift remaining variables inzp ZP_BYTE:80 [ gfx_mode::$57 ] +Uplifting [gfx_mode] best 1250228 combination reg byte a [ gfx_mode::$57 ] +Attempting to uplift remaining variables inzp ZP_BYTE:81 [ gfx_mode::$58 ] +Uplifting [gfx_mode] best 1250222 combination reg byte a [ gfx_mode::$58 ] +Attempting to uplift remaining variables inzp ZP_BYTE:82 [ gfx_mode::$59 ] +Uplifting [gfx_mode] best 1250216 combination reg byte a [ gfx_mode::$59 ] +Attempting to uplift remaining variables inzp ZP_BYTE:83 [ gfx_mode::$60 ] +Uplifting [gfx_mode] best 1250210 combination reg byte a [ gfx_mode::$60 ] +Attempting to uplift remaining variables inzp ZP_BYTE:84 [ gfx_mode::$61 ] +Uplifting [gfx_mode] best 1250204 combination reg byte a [ gfx_mode::$61 ] +Attempting to uplift remaining variables inzp ZP_BYTE:85 [ gfx_mode::$62 ] +Uplifting [gfx_mode] best 1250198 combination reg byte a [ gfx_mode::$62 ] +Attempting to uplift remaining variables inzp ZP_BYTE:86 [ gfx_mode::$63 ] +Uplifting [gfx_mode] best 1250192 combination reg byte a [ gfx_mode::$63 ] +Attempting to uplift remaining variables inzp ZP_BYTE:97 [ keyboard_event_scan::$16 ] +Uplifting [keyboard_event_scan] best 1250188 combination reg byte a [ keyboard_event_scan::$16 ] +Attempting to uplift remaining variables inzp ZP_BYTE:99 [ keyboard_event_scan::$20 ] +Uplifting [keyboard_event_scan] best 1250184 combination reg byte a [ keyboard_event_scan::$20 ] +Attempting to uplift remaining variables inzp ZP_BYTE:101 [ keyboard_event_scan::$24 ] +Uplifting [keyboard_event_scan] best 1250180 combination reg byte a [ keyboard_event_scan::$24 ] +Attempting to uplift remaining variables inzp ZP_BYTE:103 [ keyboard_event_scan::$28 ] +Uplifting [keyboard_event_scan] best 1250176 combination reg byte a [ keyboard_event_scan::$28 ] +Attempting to uplift remaining variables inzp ZP_BYTE:104 [ keyboard_event_pressed::$0 ] +Uplifting [keyboard_event_pressed] best 1250172 combination reg byte a [ keyboard_event_pressed::$0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:106 [ keyboard_event_pressed::$1 ] +Uplifting [keyboard_event_pressed] best 1250168 combination reg byte a [ keyboard_event_pressed::$1 ] +Attempting to uplift remaining variables inzp ZP_BYTE:119 [ form_control::$13 ] +Uplifting [form_control] best 1250164 combination reg byte a [ form_control::$13 ] +Attempting to uplift remaining variables inzp ZP_BYTE:120 [ form_control::$24 ] +Uplifting [form_control] best 1250160 combination reg byte a [ form_control::$24 ] +Attempting to uplift remaining variables inzp ZP_BYTE:121 [ form_control::$7 ] +Uplifting [form_control] best 1250154 combination reg byte a [ form_control::$7 ] +Attempting to uplift remaining variables inzp ZP_BYTE:117 [ form_control::key_event#0 ] +Uplifting [form_control] best 1250142 combination reg byte a [ form_control::key_event#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:4 [ gfx_mode::vic_control2#2 ] +Uplifting [gfx_mode] best 1250133 combination reg byte a [ gfx_mode::vic_control2#2 ] +Attempting to uplift remaining variables inzp ZP_BYTE:105 [ keyboard_event_pressed::row_bits#0 ] +Uplifting [keyboard_event_pressed] best 1250129 combination reg byte y [ keyboard_event_pressed::row_bits#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:107 [ keyboard_event_pressed::return#10 ] +Uplifting [keyboard_event_pressed] best 1250114 combination reg byte a [ keyboard_event_pressed::return#10 ] +Attempting to uplift remaining variables inzp ZP_BYTE:11 [ keyboard_event_pressed::keycode#4 ] +Uplifting [keyboard_event_pressed] best 1250114 combination zp ZP_BYTE:11 [ keyboard_event_pressed::keycode#4 ] +Coalescing zero page register with common assignment [ zp ZP_WORD:111 [ form_field_ptr::return#3 ] ] with [ zp ZP_WORD:113 [ form_control::field#0 ] ] - score: 1 +Coalescing zero page register with common assignment [ zp ZP_WORD:111 [ form_field_ptr::return#3 form_control::field#0 ] ] with [ zp ZP_WORD:126 [ form_field_ptr::return#0 ] ] - score: 1 +Coalescing zero page register with common assignment [ zp ZP_WORD:128 [ form_field_ptr::return#2 ] ] with [ zp ZP_WORD:130 [ form_render_values::field#0 ] ] - score: 1 +Coalescing zero page register with common assignment [ zp ZP_WORD:111 [ form_field_ptr::return#3 form_control::field#0 form_field_ptr::return#0 ] ] with [ zp ZP_WORD:123 [ form_field_ptr::$2 ] ] - score: 1 +Coalescing zero page register with common assignment [ zp ZP_WORD:111 [ form_field_ptr::return#3 form_control::field#0 form_field_ptr::return#0 form_field_ptr::$2 ] ] with [ zp ZP_WORD:128 [ form_field_ptr::return#2 form_render_values::field#0 ] ] - score: 1 +Coalescing zero page register [ zp ZP_BYTE:7 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 ] ] with [ zp ZP_BYTE:11 [ keyboard_event_pressed::keycode#4 ] ] +Coalescing zero page register [ zp ZP_BYTE:7 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 keyboard_event_pressed::keycode#4 ] ] with [ zp ZP_BYTE:30 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 ] ] +Coalescing zero page register [ zp ZP_BYTE:7 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 keyboard_event_pressed::keycode#4 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 ] ] with [ zp ZP_BYTE:37 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cy#1 ] ] +Coalescing zero page register [ zp ZP_BYTE:9 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 ] ] with [ zp ZP_BYTE:14 [ keyboard_modifiers#45 keyboard_modifiers#24 keyboard_modifiers#11 keyboard_modifiers#42 keyboard_modifiers#13 keyboard_modifiers#21 keyboard_modifiers#20 keyboard_modifiers#4 keyboard_modifiers#19 keyboard_modifiers#3 keyboard_modifiers#18 keyboard_modifiers#5 ] ] +Coalescing zero page register [ zp ZP_BYTE:9 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 keyboard_modifiers#45 keyboard_modifiers#24 keyboard_modifiers#11 keyboard_modifiers#42 keyboard_modifiers#13 keyboard_modifiers#21 keyboard_modifiers#20 keyboard_modifiers#4 keyboard_modifiers#19 keyboard_modifiers#3 keyboard_modifiers#18 keyboard_modifiers#5 ] ] with [ zp ZP_BYTE:141 [ gfx_init_screen_stdchar::$1 ] ] +Coalescing zero page register [ zp ZP_WORD:19 [ form_set_screen::line#2 form_set_screen::line#1 ] ] with [ zp ZP_WORD:22 [ print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 ] ] +Coalescing zero page register [ zp ZP_WORD:19 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 ] ] with [ zp ZP_WORD:28 [ print_cls::sc#2 print_cls::sc#0 print_cls::sc#1 ] ] +Coalescing zero page register [ zp ZP_WORD:19 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 print_cls::sc#2 print_cls::sc#0 print_cls::sc#1 ] ] with [ zp ZP_WORD:31 [ gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 ] ] +Coalescing zero page register [ zp ZP_WORD:19 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 print_cls::sc#2 print_cls::sc#0 print_cls::sc#1 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 ] ] with [ zp ZP_WORD:39 [ gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::ch#3 gfx_init_screen_stdchar::ch#1 ] ] +Coalescing zero page register [ zp ZP_WORD:19 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 print_cls::sc#2 print_cls::sc#0 print_cls::sc#1 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::ch#3 gfx_init_screen_stdchar::ch#1 ] ] with [ zp ZP_WORD:47 [ gfx_mode::$33 ] ] +Coalescing zero page register [ zp ZP_WORD:19 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 print_cls::sc#2 print_cls::sc#0 print_cls::sc#1 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::ch#3 gfx_init_screen_stdchar::ch#1 gfx_mode::$33 ] ] with [ zp ZP_WORD:50 [ gfx_mode::$35 ] ] +Coalescing zero page register [ zp ZP_WORD:19 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 print_cls::sc#2 print_cls::sc#0 print_cls::sc#1 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::ch#3 gfx_init_screen_stdchar::ch#1 gfx_mode::$33 gfx_mode::$35 ] ] with [ zp ZP_WORD:53 [ gfx_mode::$37 ] ] +Coalescing zero page register [ zp ZP_WORD:19 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 print_cls::sc#2 print_cls::sc#0 print_cls::sc#1 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::ch#3 gfx_init_screen_stdchar::ch#1 gfx_mode::$33 gfx_mode::$35 gfx_mode::$37 ] ] with [ zp ZP_WORD:66 [ gfx_mode::$46 ] ] +Coalescing zero page register [ zp ZP_WORD:19 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 print_cls::sc#2 print_cls::sc#0 print_cls::sc#1 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::ch#3 gfx_init_screen_stdchar::ch#1 gfx_mode::$33 gfx_mode::$35 gfx_mode::$37 gfx_mode::$46 ] ] with [ zp ZP_WORD:69 [ gfx_mode::$48 ] ] +Coalescing zero page register [ zp ZP_WORD:19 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 print_cls::sc#2 print_cls::sc#0 print_cls::sc#1 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::ch#3 gfx_init_screen_stdchar::ch#1 gfx_mode::$33 gfx_mode::$35 gfx_mode::$37 gfx_mode::$46 gfx_mode::$48 ] ] with [ zp ZP_WORD:72 [ gfx_mode::$50 ] ] +Coalescing zero page register [ zp ZP_WORD:19 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 print_cls::sc#2 print_cls::sc#0 print_cls::sc#1 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::ch#3 gfx_init_screen_stdchar::ch#1 gfx_mode::$33 gfx_mode::$35 gfx_mode::$37 gfx_mode::$46 gfx_mode::$48 gfx_mode::$50 ] ] with [ zp ZP_WORD:111 [ form_field_ptr::return#3 form_control::field#0 form_field_ptr::return#0 form_field_ptr::$2 form_field_ptr::return#2 form_render_values::field#0 ] ] +Coalescing zero page register [ zp ZP_WORD:24 [ print_char_cursor#20 print_char_cursor#22 print_char_cursor#60 print_char_cursor#61 print_char_cursor#38 print_char_cursor#1 ] ] with [ zp ZP_WORD:34 [ gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::gfxb#1 ] ] +Coalescing zero page register [ zp ZP_WORD:24 [ print_char_cursor#20 print_char_cursor#22 print_char_cursor#60 print_char_cursor#61 print_char_cursor#38 print_char_cursor#1 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::gfxb#1 ] ] with [ zp ZP_WORD:135 [ print_cls::$0 ] ] +Coalescing zero page register [ zp ZP_WORD:26 [ print_line_cursor#21 print_line_cursor#2 print_set_screen::screen#2 print_line_cursor#22 ] ] with [ zp ZP_WORD:137 [ gfx_init_plane_8bppchunky::$6 ] ] +Coalescing zero page register [ zp ZP_DWORD:43 [ gfx_mode::plane_a#0 ] ] with [ zp ZP_DWORD:62 [ gfx_mode::plane_b#0 ] ] +Allocated (was zp ZP_BYTE:7) zp ZP_BYTE:2 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 keyboard_event_pressed::keycode#4 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cy#1 ] +Allocated (was zp ZP_BYTE:9) zp ZP_BYTE:3 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 keyboard_modifiers#45 keyboard_modifiers#24 keyboard_modifiers#11 keyboard_modifiers#42 keyboard_modifiers#13 keyboard_modifiers#21 keyboard_modifiers#20 keyboard_modifiers#4 keyboard_modifiers#19 keyboard_modifiers#3 keyboard_modifiers#18 keyboard_modifiers#5 gfx_init_screen_stdchar::$1 ] +Allocated (was zp ZP_BYTE:10) zp ZP_BYTE:4 [ keyboard_events_size#18 keyboard_events_size#112 keyboard_events_size#104 keyboard_events_size#47 keyboard_events_size#27 keyboard_events_size#11 keyboard_events_size#45 keyboard_events_size#13 keyboard_events_size#24 keyboard_events_size#4 keyboard_events_size#105 keyboard_events_size#111 keyboard_events_size#2 keyboard_events_size#1 ] +Allocated (was zp ZP_BYTE:13) zp ZP_BYTE:5 [ form_cursor_count#21 form_cursor_count#16 form_cursor_count#1 form_cursor_count#13 form_cursor_count#15 form_cursor_count#5 ] +Allocated (was zp ZP_BYTE:15) zp ZP_BYTE:6 [ form_field_idx#28 form_field_idx#18 form_field_idx#1 form_field_idx#14 form_field_idx#32 form_field_idx#43 form_field_idx#44 ] +Allocated (was zp ZP_WORD:19) zp ZP_WORD:7 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 print_cls::sc#2 print_cls::sc#0 print_cls::sc#1 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::ch#3 gfx_init_screen_stdchar::ch#1 gfx_mode::$33 gfx_mode::$35 gfx_mode::$37 gfx_mode::$46 gfx_mode::$48 gfx_mode::$50 form_field_ptr::return#3 form_control::field#0 form_field_ptr::return#0 form_field_ptr::$2 form_field_ptr::return#2 form_render_values::field#0 ] +Allocated (was zp ZP_WORD:24) zp ZP_WORD:9 [ print_char_cursor#20 print_char_cursor#22 print_char_cursor#60 print_char_cursor#61 print_char_cursor#38 print_char_cursor#1 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::gfxb#1 print_cls::$0 ] +Allocated (was zp ZP_WORD:26) zp ZP_WORD:11 [ print_line_cursor#21 print_line_cursor#2 print_set_screen::screen#2 print_line_cursor#22 gfx_init_plane_8bppchunky::$6 ] +Allocated (was zp ZP_DWORD:43) zp ZP_DWORD:13 [ gfx_mode::plane_a#0 gfx_mode::plane_b#0 ] +Allocated (was zp ZP_BYTE:91) zp ZP_BYTE:17 [ keyboard_event_scan::row_scan#0 ] ASSEMBLER BEFORE OPTIMIZATION //SEG0 Basic Upstart @@ -12848,7 +14652,6 @@ ASSEMBLER BEFORE OPTIMIZATION .pc = $80d "Program" //SEG1 Global Constants & labels .label RASTER = $d012 - .label BORDERCOL = $d020 .label BGCOL = $d021 .label BGCOL1 = $d021 .label BGCOL2 = $d022 @@ -12901,15 +14704,16 @@ ASSEMBLER BEFORE OPTIMIZATION .const KEY_LSHIFT = $f .const KEY_RSHIFT = $34 .const KEY_CTRL = $3a + .const KEY_SPACE = $3c .const KEY_COMMODORE = $3d .const KEY_MODIFIER_LSHIFT = 1 .const KEY_MODIFIER_RSHIFT = 2 .const KEY_MODIFIER_CTRL = 4 .const KEY_MODIFIER_COMMODORE = 8 + .label VIC_SCREEN_STDCHAR = $8400 .const PLANE_8BPP_CHUNKY = $20000 .label FORM_SCREEN = $8000 .label FORM_CHARSET = $9800 - .const FORM_OFFSET = $10*$28 .const form_fields_cnt = $23 .const FORM_CURSOR_BLINK = $28 .const KEY_MODIFIER_SHIFT = KEY_MODIFIER_LSHIFT|KEY_MODIFIER_RSHIFT @@ -12943,21 +14747,22 @@ ASSEMBLER BEFORE OPTIMIZATION .label form_vic_bg3_hi = form_fields_val+$21 .label form_vic_bg3_lo = form_fields_val+$22 .label print_char_cursor = 9 - .label keyboard_events_size = 6 - .label form_cursor_count = 2 - .label form_field_idx = 3 .label print_line_cursor = $b + .label keyboard_events_size = 4 + .label keyboard_modifiers = 3 + .label form_cursor_count = 5 + .label form_field_idx = 6 //SEG2 @begin bbegin: -//SEG3 [1] phi from @begin to @32 [phi:@begin->@32] -b32_from_bbegin: - jmp b32 -//SEG4 @32 -b32: +//SEG3 [1] phi from @begin to @33 [phi:@begin->@33] +b33_from_bbegin: + jmp b33 +//SEG4 @33 +b33: //SEG5 [2] call main param-assignment [ ] ( ) jsr main -//SEG6 [3] phi from @32 to @end [phi:@32->@end] -bend_from_b32: +//SEG6 [3] phi from @33 to @end [phi:@33->@end] +bend_from_b33: jmp bend //SEG7 @end bend: @@ -12970,87 +14775,71 @@ main: { sta DTV_FEATURE //SEG11 [6] call keyboard_init param-assignment [ ] ( main:2 [ ] ) jsr keyboard_init - //SEG12 [7] phi from main to main::@19 [phi:main->main::@19] - b19_from_main: - jmp b19 - //SEG13 main::@19 - b19: + //SEG12 [7] phi from main to main::@7 [phi:main->main::@7] + b7_from_main: + jmp b7 + //SEG13 main::@7 + b7: //SEG14 [8] call gfx_init param-assignment [ ] ( main:2 [ ] ) - //SEG15 [296] phi from main::@19 to gfx_init [phi:main::@19->gfx_init] - gfx_init_from_b19: + //SEG15 [324] phi from main::@7 to gfx_init [phi:main::@7->gfx_init] + gfx_init_from_b7: jsr gfx_init - //SEG16 [9] phi from main::@19 to main::@20 [phi:main::@19->main::@20] - b20_from_b19: - jmp b20 - //SEG17 main::@20 - b20: + //SEG16 [9] phi from main::@7 to main::@8 [phi:main::@7->main::@8] + b8_from_b7: + jmp b8 + //SEG17 main::@8 + b8: //SEG18 [10] call form_init param-assignment [ ] ( main:2 [ ] ) - //SEG19 [240] phi from main::@20 to form_init [phi:main::@20->form_init] - form_init_from_b20: + //SEG19 [257] phi from main::@8 to form_init [phi:main::@8->form_init] + form_init_from_b8: jsr form_init - //SEG20 [11] phi from main::@20 to main::@1 [phi:main::@20->main::@1] - b1_from_b20: - //SEG21 [11] phi (byte) form_field_idx#1 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main::@20->main::@1#0] -- vbuz1=vbuc1 + //SEG20 [11] phi from main::@8 to main::@1 [phi:main::@8->main::@1] + b1_from_b8: + //SEG21 [11] phi (byte) form_field_idx#1 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main::@8->main::@1#0] -- vbuz1=vbuc1 lda #0 sta form_field_idx - //SEG22 [11] phi (byte) keyboard_events_size#20 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main::@20->main::@1#1] -- vbuz1=vbuc1 + //SEG22 [11] phi (byte) keyboard_modifiers#24 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main::@8->main::@1#1] -- vbuz1=vbuc1 + lda #0 + sta keyboard_modifiers + //SEG23 [11] phi (byte) keyboard_events_size#27 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main::@8->main::@1#2] -- vbuz1=vbuc1 lda #0 sta keyboard_events_size - //SEG23 [11] phi (signed byte) form_cursor_count#1 = (const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 [phi:main::@20->main::@1#2] -- vbsz1=vbuc1 + //SEG24 [11] phi (signed byte) form_cursor_count#1 = (const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 [phi:main::@8->main::@1#3] -- vbsz1=vbuc1 lda #FORM_CURSOR_BLINK/2 sta form_cursor_count jmp b1 - //SEG24 main::@1 + //SEG25 main::@1 b1: - //SEG25 [12] if(true) goto main::@4 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- true_then_la1 - jmp b4 + //SEG26 [12] if(true) goto main::@2 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- true_then_la1 + jmp b2_from_b1 jmp breturn - //SEG26 main::@return + //SEG27 main::@return breturn: - //SEG27 [13] return [ ] ( main:2 [ ] ) + //SEG28 [13] return [ ] ( main:2 [ ] ) rts - //SEG28 main::@4 - b4: - //SEG29 [14] if(*((const byte*) RASTER#0)!=(byte/signed byte/word/signed word/dword/signed dword) 48+(byte/signed byte/word/signed word/dword/signed dword) 8*(byte/signed byte/word/signed word/dword/signed dword) 16) goto main::@4 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1_neq_vbuc2_then_la1 - lda RASTER - cmp #$30+8*$10 - bne b4 - //SEG30 [15] phi from main::@4 to main::@6 [phi:main::@4->main::@6] - b6_from_b4: - jmp b6 - //SEG31 main::@6 - b6: - //SEG32 [16] call form_mode param-assignment [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) + //SEG29 [14] phi from main::@1 to main::@2 [phi:main::@1->main::@2] + b2_from_b1: + jmp b2 + //SEG30 main::@2 + b2: + //SEG31 [15] call form_mode param-assignment [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) jsr form_mode - jmp b7 - //SEG33 main::@7 - b7: - //SEG34 [17] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto main::@7 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1_neq_vbuc2_then_la1 - lda RASTER - cmp #$ff - bne b7 - //SEG35 [18] phi from main::@7 to main::@9 [phi:main::@7->main::@9] - b9_from_b7: - jmp b9 - //SEG36 main::@9 - b9: - //SEG37 [19] call form_control param-assignment [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ( main:2 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - jsr form_control - //SEG38 [20] phi from main::@9 to main::@23 [phi:main::@9->main::@23] - b23_from_b9: - jmp b23 - //SEG39 main::@23 - b23: - //SEG40 [21] call gfx_mode param-assignment [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ( main:2 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) + //SEG32 [16] phi from main::@2 to main::@10 [phi:main::@2->main::@10] + b10_from_b2: + jmp b10 + //SEG33 main::@10 + b10: + //SEG34 [17] call gfx_mode param-assignment [ form_cursor_count#13 keyboard_events_size#11 keyboard_modifiers#11 form_field_idx#14 ] ( main:2 [ form_cursor_count#13 keyboard_events_size#11 keyboard_modifiers#11 form_field_idx#14 ] ) jsr gfx_mode - //SEG41 [11] phi from main::@23 to main::@1 [phi:main::@23->main::@1] - b1_from_b23: - //SEG42 [11] phi (byte) form_field_idx#1 = (byte) form_field_idx#14 [phi:main::@23->main::@1#0] -- register_copy - //SEG43 [11] phi (byte) keyboard_events_size#20 = (byte) keyboard_events_size#18 [phi:main::@23->main::@1#1] -- register_copy - //SEG44 [11] phi (signed byte) form_cursor_count#1 = (signed byte) form_cursor_count#12 [phi:main::@23->main::@1#2] -- register_copy + //SEG35 [11] phi from main::@10 to main::@1 [phi:main::@10->main::@1] + b1_from_b10: + //SEG36 [11] phi (byte) form_field_idx#1 = (byte) form_field_idx#14 [phi:main::@10->main::@1#0] -- register_copy + //SEG37 [11] phi (byte) keyboard_modifiers#24 = (byte) keyboard_modifiers#11 [phi:main::@10->main::@1#1] -- register_copy + //SEG38 [11] phi (byte) keyboard_events_size#27 = (byte) keyboard_events_size#11 [phi:main::@10->main::@1#2] -- register_copy + //SEG39 [11] phi (signed byte) form_cursor_count#1 = (signed byte) form_cursor_count#13 [phi:main::@10->main::@1#3] -- register_copy jmp b1 } -//SEG45 gfx_mode +//SEG40 gfx_mode gfx_mode: { .label _33 = 7 .label _35 = 7 @@ -13060,192 +14849,192 @@ gfx_mode: { .label _50 = 7 .label plane_a = $d .label plane_b = $d - //SEG46 [22] if(*((const byte*) form_ctrl_line#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@1 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG41 [18] if(*((const byte*) form_ctrl_line#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@1 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_line cmp #0 beq b1_from_gfx_mode - //SEG47 [23] phi from gfx_mode to gfx_mode::@11 [phi:gfx_mode->gfx_mode::@11] - b11_from_gfx_mode: - jmp b11 - //SEG48 gfx_mode::@11 - b11: - //SEG49 [24] phi from gfx_mode::@11 to gfx_mode::@1 [phi:gfx_mode::@11->gfx_mode::@1] - b1_from_b11: - //SEG50 [24] phi (byte) gfx_mode::dtv_control#14 = (byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) DTV_LINEAR#0 [phi:gfx_mode::@11->gfx_mode::@1#0] -- vbuxx=vbuc1 + //SEG42 [19] phi from gfx_mode to gfx_mode::@18 [phi:gfx_mode->gfx_mode::@18] + b18_from_gfx_mode: + jmp b18 + //SEG43 gfx_mode::@18 + b18: + //SEG44 [20] phi from gfx_mode::@18 to gfx_mode::@1 [phi:gfx_mode::@18->gfx_mode::@1] + b1_from_b18: + //SEG45 [20] phi (byte) gfx_mode::dtv_control#14 = (byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) DTV_LINEAR#0 [phi:gfx_mode::@18->gfx_mode::@1#0] -- vbuxx=vbuc1 ldx #0|DTV_LINEAR jmp b1 - //SEG51 [24] phi from gfx_mode to gfx_mode::@1 [phi:gfx_mode->gfx_mode::@1] + //SEG46 [20] phi from gfx_mode to gfx_mode::@1 [phi:gfx_mode->gfx_mode::@1] b1_from_gfx_mode: - //SEG52 [24] phi (byte) gfx_mode::dtv_control#14 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_mode->gfx_mode::@1#0] -- vbuxx=vbuc1 + //SEG47 [20] phi (byte) gfx_mode::dtv_control#14 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_mode->gfx_mode::@1#0] -- vbuxx=vbuc1 ldx #0 jmp b1 - //SEG53 gfx_mode::@1 + //SEG48 gfx_mode::@1 b1: - //SEG54 [25] if(*((const byte*) form_ctrl_borof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@2 [ gfx_mode::dtv_control#14 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#14 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG49 [21] if(*((const byte*) form_ctrl_borof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@2 [ gfx_mode::dtv_control#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_borof cmp #0 beq b2_from_b1 - jmp b12 - //SEG55 gfx_mode::@12 - b12: - //SEG56 [26] (byte) gfx_mode::dtv_control#2 ← (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 [ gfx_mode::dtv_control#2 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#2 ] ) -- vbuxx=vbuxx_bor_vbuc1 + jmp b19 + //SEG50 gfx_mode::@19 + b19: + //SEG51 [22] (byte) gfx_mode::dtv_control#2 ← (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 [ gfx_mode::dtv_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_BORDER_OFF tax - //SEG57 [27] phi from gfx_mode::@1 gfx_mode::@12 to gfx_mode::@2 [phi:gfx_mode::@1/gfx_mode::@12->gfx_mode::@2] + //SEG52 [23] phi from gfx_mode::@1 gfx_mode::@19 to gfx_mode::@2 [phi:gfx_mode::@1/gfx_mode::@19->gfx_mode::@2] b2_from_b1: - b2_from_b12: - //SEG58 [27] phi (byte) gfx_mode::dtv_control#15 = (byte) gfx_mode::dtv_control#14 [phi:gfx_mode::@1/gfx_mode::@12->gfx_mode::@2#0] -- register_copy + b2_from_b19: + //SEG53 [23] phi (byte) gfx_mode::dtv_control#15 = (byte) gfx_mode::dtv_control#14 [phi:gfx_mode::@1/gfx_mode::@19->gfx_mode::@2#0] -- register_copy jmp b2 - //SEG59 gfx_mode::@2 + //SEG54 gfx_mode::@2 b2: - //SEG60 [28] if(*((const byte*) form_ctrl_hicol#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@3 [ gfx_mode::dtv_control#15 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#15 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG55 [24] if(*((const byte*) form_ctrl_hicol#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@3 [ gfx_mode::dtv_control#15 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#15 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_hicol cmp #0 beq b3_from_b2 - jmp b13 - //SEG61 gfx_mode::@13 - b13: - //SEG62 [29] (byte) gfx_mode::dtv_control#3 ← (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 [ gfx_mode::dtv_control#3 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#3 ] ) -- vbuxx=vbuxx_bor_vbuc1 + jmp b20 + //SEG56 gfx_mode::@20 + b20: + //SEG57 [25] (byte) gfx_mode::dtv_control#3 ← (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 [ gfx_mode::dtv_control#3 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#3 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_HIGHCOLOR tax - //SEG63 [30] phi from gfx_mode::@13 gfx_mode::@2 to gfx_mode::@3 [phi:gfx_mode::@13/gfx_mode::@2->gfx_mode::@3] - b3_from_b13: + //SEG58 [26] phi from gfx_mode::@2 gfx_mode::@20 to gfx_mode::@3 [phi:gfx_mode::@2/gfx_mode::@20->gfx_mode::@3] b3_from_b2: - //SEG64 [30] phi (byte) gfx_mode::dtv_control#10 = (byte) gfx_mode::dtv_control#3 [phi:gfx_mode::@13/gfx_mode::@2->gfx_mode::@3#0] -- register_copy + b3_from_b20: + //SEG59 [26] phi (byte) gfx_mode::dtv_control#10 = (byte) gfx_mode::dtv_control#15 [phi:gfx_mode::@2/gfx_mode::@20->gfx_mode::@3#0] -- register_copy jmp b3 - //SEG65 gfx_mode::@3 + //SEG60 gfx_mode::@3 b3: - //SEG66 [31] if(*((const byte*) form_ctrl_overs#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@4 [ gfx_mode::dtv_control#10 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#10 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG61 [27] if(*((const byte*) form_ctrl_overs#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@4 [ gfx_mode::dtv_control#10 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#10 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_overs cmp #0 beq b4_from_b3 - jmp b14 - //SEG67 gfx_mode::@14 - b14: - //SEG68 [32] (byte) gfx_mode::dtv_control#4 ← (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 [ gfx_mode::dtv_control#4 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#4 ] ) -- vbuxx=vbuxx_bor_vbuc1 + jmp b21 + //SEG62 gfx_mode::@21 + b21: + //SEG63 [28] (byte) gfx_mode::dtv_control#4 ← (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 [ gfx_mode::dtv_control#4 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#4 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_OVERSCAN tax - //SEG69 [33] phi from gfx_mode::@14 gfx_mode::@3 to gfx_mode::@4 [phi:gfx_mode::@14/gfx_mode::@3->gfx_mode::@4] - b4_from_b14: + //SEG64 [29] phi from gfx_mode::@21 gfx_mode::@3 to gfx_mode::@4 [phi:gfx_mode::@21/gfx_mode::@3->gfx_mode::@4] + b4_from_b21: b4_from_b3: - //SEG70 [33] phi (byte) gfx_mode::dtv_control#11 = (byte) gfx_mode::dtv_control#4 [phi:gfx_mode::@14/gfx_mode::@3->gfx_mode::@4#0] -- register_copy + //SEG65 [29] phi (byte) gfx_mode::dtv_control#11 = (byte) gfx_mode::dtv_control#4 [phi:gfx_mode::@21/gfx_mode::@3->gfx_mode::@4#0] -- register_copy jmp b4 - //SEG71 gfx_mode::@4 + //SEG66 gfx_mode::@4 b4: - //SEG72 [34] if(*((const byte*) form_ctrl_colof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@5 [ gfx_mode::dtv_control#11 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#11 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG67 [30] if(*((const byte*) form_ctrl_colof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@5 [ gfx_mode::dtv_control#11 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#11 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_colof cmp #0 beq b5_from_b4 - jmp b15 - //SEG73 gfx_mode::@15 - b15: - //SEG74 [35] (byte) gfx_mode::dtv_control#5 ← (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 [ gfx_mode::dtv_control#5 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#5 ] ) -- vbuxx=vbuxx_bor_vbuc1 + jmp b22 + //SEG68 gfx_mode::@22 + b22: + //SEG69 [31] (byte) gfx_mode::dtv_control#5 ← (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 [ gfx_mode::dtv_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_COLORRAM_OFF tax - //SEG75 [36] phi from gfx_mode::@15 gfx_mode::@4 to gfx_mode::@5 [phi:gfx_mode::@15/gfx_mode::@4->gfx_mode::@5] - b5_from_b15: + //SEG70 [32] phi from gfx_mode::@22 gfx_mode::@4 to gfx_mode::@5 [phi:gfx_mode::@22/gfx_mode::@4->gfx_mode::@5] + b5_from_b22: b5_from_b4: - //SEG76 [36] phi (byte) gfx_mode::dtv_control#13 = (byte) gfx_mode::dtv_control#5 [phi:gfx_mode::@15/gfx_mode::@4->gfx_mode::@5#0] -- register_copy + //SEG71 [32] phi (byte) gfx_mode::dtv_control#13 = (byte) gfx_mode::dtv_control#5 [phi:gfx_mode::@22/gfx_mode::@4->gfx_mode::@5#0] -- register_copy jmp b5 - //SEG77 gfx_mode::@5 + //SEG72 gfx_mode::@5 b5: - //SEG78 [37] if(*((const byte*) form_ctrl_chunk#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@6 [ gfx_mode::dtv_control#13 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#13 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG73 [33] if(*((const byte*) form_ctrl_chunk#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@6 [ gfx_mode::dtv_control#13 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#13 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_chunk cmp #0 beq b6_from_b5 - jmp b16 - //SEG79 gfx_mode::@16 - b16: - //SEG80 [38] (byte) gfx_mode::dtv_control#6 ← (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 [ gfx_mode::dtv_control#6 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#6 ] ) -- vbuxx=vbuxx_bor_vbuc1 + jmp b23 + //SEG74 gfx_mode::@23 + b23: + //SEG75 [34] (byte) gfx_mode::dtv_control#6 ← (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 [ gfx_mode::dtv_control#6 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#6 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_CHUNKY tax - //SEG81 [39] phi from gfx_mode::@16 gfx_mode::@5 to gfx_mode::@6 [phi:gfx_mode::@16/gfx_mode::@5->gfx_mode::@6] - b6_from_b16: + //SEG76 [35] phi from gfx_mode::@23 gfx_mode::@5 to gfx_mode::@6 [phi:gfx_mode::@23/gfx_mode::@5->gfx_mode::@6] + b6_from_b23: b6_from_b5: - //SEG82 [39] phi (byte) gfx_mode::dtv_control#12 = (byte) gfx_mode::dtv_control#6 [phi:gfx_mode::@16/gfx_mode::@5->gfx_mode::@6#0] -- register_copy + //SEG77 [35] phi (byte) gfx_mode::dtv_control#12 = (byte) gfx_mode::dtv_control#6 [phi:gfx_mode::@23/gfx_mode::@5->gfx_mode::@6#0] -- register_copy jmp b6 - //SEG83 gfx_mode::@6 + //SEG78 gfx_mode::@6 b6: - //SEG84 [40] *((const byte*) DTV_CONTROL#0) ← (byte) gfx_mode::dtv_control#12 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuxx + //SEG79 [36] *((const byte*) DTV_CONTROL#0) ← (byte) gfx_mode::dtv_control#12 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuxx stx DTV_CONTROL - //SEG85 [41] if(*((const byte*) form_ctrl_ecm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@7 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG80 [37] if(*((const byte*) form_ctrl_ecm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@7 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_ecm cmp #0 beq b7_from_b6 - //SEG86 [42] phi from gfx_mode::@6 to gfx_mode::@17 [phi:gfx_mode::@6->gfx_mode::@17] - b17_from_b6: - jmp b17 - //SEG87 gfx_mode::@17 - b17: - //SEG88 [43] phi from gfx_mode::@17 to gfx_mode::@7 [phi:gfx_mode::@17->gfx_mode::@7] - b7_from_b17: - //SEG89 [43] phi (byte) gfx_mode::vic_control#5 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3|(const byte) VIC_ECM#0 [phi:gfx_mode::@17->gfx_mode::@7#0] -- vbuxx=vbuc1 + //SEG81 [38] phi from gfx_mode::@6 to gfx_mode::@24 [phi:gfx_mode::@6->gfx_mode::@24] + b24_from_b6: + jmp b24 + //SEG82 gfx_mode::@24 + b24: + //SEG83 [39] phi from gfx_mode::@24 to gfx_mode::@7 [phi:gfx_mode::@24->gfx_mode::@7] + b7_from_b24: + //SEG84 [39] phi (byte) gfx_mode::vic_control#5 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3|(const byte) VIC_ECM#0 [phi:gfx_mode::@24->gfx_mode::@7#0] -- vbuxx=vbuc1 ldx #VIC_DEN|VIC_RSEL|3|VIC_ECM jmp b7 - //SEG90 [43] phi from gfx_mode::@6 to gfx_mode::@7 [phi:gfx_mode::@6->gfx_mode::@7] + //SEG85 [39] phi from gfx_mode::@6 to gfx_mode::@7 [phi:gfx_mode::@6->gfx_mode::@7] b7_from_b6: - //SEG91 [43] phi (byte) gfx_mode::vic_control#5 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [phi:gfx_mode::@6->gfx_mode::@7#0] -- vbuxx=vbuc1 + //SEG86 [39] phi (byte) gfx_mode::vic_control#5 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [phi:gfx_mode::@6->gfx_mode::@7#0] -- vbuxx=vbuc1 ldx #VIC_DEN|VIC_RSEL|3 jmp b7 - //SEG92 gfx_mode::@7 + //SEG87 gfx_mode::@7 b7: - //SEG93 [44] if(*((const byte*) form_ctrl_bmm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@8 [ gfx_mode::vic_control#5 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::vic_control#5 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG88 [40] if(*((const byte*) form_ctrl_bmm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@8 [ gfx_mode::vic_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::vic_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_bmm cmp #0 beq b8_from_b7 - jmp b18 - //SEG94 gfx_mode::@18 - b18: - //SEG95 [45] (byte) gfx_mode::vic_control#2 ← (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 [ gfx_mode::vic_control#2 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::vic_control#2 ] ) -- vbuxx=vbuxx_bor_vbuc1 + jmp b25 + //SEG89 gfx_mode::@25 + b25: + //SEG90 [41] (byte) gfx_mode::vic_control#2 ← (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 [ gfx_mode::vic_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::vic_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuxx=vbuxx_bor_vbuc1 txa ora #VIC_BMM tax - //SEG96 [46] phi from gfx_mode::@18 gfx_mode::@7 to gfx_mode::@8 [phi:gfx_mode::@18/gfx_mode::@7->gfx_mode::@8] - b8_from_b18: + //SEG91 [42] phi from gfx_mode::@25 gfx_mode::@7 to gfx_mode::@8 [phi:gfx_mode::@25/gfx_mode::@7->gfx_mode::@8] + b8_from_b25: b8_from_b7: - //SEG97 [46] phi (byte) gfx_mode::vic_control#4 = (byte) gfx_mode::vic_control#2 [phi:gfx_mode::@18/gfx_mode::@7->gfx_mode::@8#0] -- register_copy + //SEG92 [42] phi (byte) gfx_mode::vic_control#4 = (byte) gfx_mode::vic_control#2 [phi:gfx_mode::@25/gfx_mode::@7->gfx_mode::@8#0] -- register_copy jmp b8 - //SEG98 gfx_mode::@8 + //SEG93 gfx_mode::@8 b8: - //SEG99 [47] *((const byte*) VIC_CONTROL#0) ← (byte) gfx_mode::vic_control#4 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuxx + //SEG94 [43] *((const byte*) VIC_CONTROL#0) ← (byte) gfx_mode::vic_control#4 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuxx stx VIC_CONTROL - //SEG100 [48] if(*((const byte*) form_ctrl_mcm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@9 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG95 [44] if(*((const byte*) form_ctrl_mcm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@9 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_mcm cmp #0 beq b9_from_b8 - //SEG101 [49] phi from gfx_mode::@8 to gfx_mode::@19 [phi:gfx_mode::@8->gfx_mode::@19] - b19_from_b8: - jmp b19 - //SEG102 gfx_mode::@19 - b19: - //SEG103 [50] phi from gfx_mode::@19 to gfx_mode::@9 [phi:gfx_mode::@19->gfx_mode::@9] - b9_from_b19: - //SEG104 [50] phi (byte) gfx_mode::vic_control2#2 = (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 [phi:gfx_mode::@19->gfx_mode::@9#0] -- vbuaa=vbuc1 + //SEG96 [45] phi from gfx_mode::@8 to gfx_mode::@26 [phi:gfx_mode::@8->gfx_mode::@26] + b26_from_b8: + jmp b26 + //SEG97 gfx_mode::@26 + b26: + //SEG98 [46] phi from gfx_mode::@26 to gfx_mode::@9 [phi:gfx_mode::@26->gfx_mode::@9] + b9_from_b26: + //SEG99 [46] phi (byte) gfx_mode::vic_control2#2 = (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 [phi:gfx_mode::@26->gfx_mode::@9#0] -- vbuaa=vbuc1 lda #VIC_CSEL|VIC_MCM jmp b9 - //SEG105 [50] phi from gfx_mode::@8 to gfx_mode::@9 [phi:gfx_mode::@8->gfx_mode::@9] + //SEG100 [46] phi from gfx_mode::@8 to gfx_mode::@9 [phi:gfx_mode::@8->gfx_mode::@9] b9_from_b8: - //SEG106 [50] phi (byte) gfx_mode::vic_control2#2 = (const byte) VIC_CSEL#0 [phi:gfx_mode::@8->gfx_mode::@9#0] -- vbuaa=vbuc1 + //SEG101 [46] phi (byte) gfx_mode::vic_control2#2 = (const byte) VIC_CSEL#0 [phi:gfx_mode::@8->gfx_mode::@9#0] -- vbuaa=vbuc1 lda #VIC_CSEL jmp b9 - //SEG107 gfx_mode::@9 + //SEG102 gfx_mode::@9 b9: - //SEG108 [51] *((const byte*) VIC_CONTROL2#0) ← (byte) gfx_mode::vic_control2#2 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuaa + //SEG103 [47] *((const byte*) VIC_CONTROL2#0) ← (byte) gfx_mode::vic_control2#2 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta VIC_CONTROL2 - //SEG109 [52] (byte~) gfx_mode::$29 ← *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$29 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$29 ] ) -- vbuaa=_deref_pbuc1_rol_4 + //SEG104 [48] (byte~) gfx_mode::$29 ← *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$29 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$29 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_deref_pbuc1_rol_4 lda form_a_start_hi asl asl asl asl - //SEG110 [53] (byte) gfx_mode::plane_a_offs#0 ← (byte~) gfx_mode::$29 | *((const byte*) form_a_start_lo#0) [ gfx_mode::plane_a_offs#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a_offs#0 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG105 [49] (byte) gfx_mode::plane_a_offs#0 ← (byte~) gfx_mode::$29 | *((const byte*) form_a_start_lo#0) [ gfx_mode::plane_a_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_a_start_lo - //SEG111 [54] (dword) gfx_mode::plane_a#0 ← ((dword))(const byte*) FORM_SCREEN#0 + (byte) gfx_mode::plane_a_offs#0 [ gfx_mode::plane_a#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 ] ) -- vduz1=vwuc1_plus_vbuaa + //SEG106 [50] (dword) gfx_mode::plane_a#0 ← ((dword))(const byte*) FORM_SCREEN#0 + (byte) gfx_mode::plane_a_offs#0 [ gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vduz1=vwuc1_plus_vbuaa clc adc #<$ffffffff&FORM_SCREEN sta plane_a @@ -13257,65 +15046,65 @@ gfx_mode: { sta plane_a+2 lda #0 sta plane_a+3 - //SEG112 [55] (word~) gfx_mode::$33 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$33 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$33 ] ) -- vwuz1=_lo_vduz2 + //SEG107 [51] (word~) gfx_mode::$33 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$33 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$33 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vwuz1=_lo_vduz2 lda plane_a sta _33 lda plane_a+1 sta _33+1 - //SEG113 [56] (byte~) gfx_mode::$34 ← < (word~) gfx_mode::$33 [ gfx_mode::plane_a#0 gfx_mode::$34 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$34 ] ) -- vbuaa=_lo_vwuz1 + //SEG108 [52] (byte~) gfx_mode::$34 ← < (word~) gfx_mode::$33 [ gfx_mode::plane_a#0 gfx_mode::$34 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$34 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_lo_vwuz1 lda _33 - //SEG114 [57] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte~) gfx_mode::$34 [ gfx_mode::plane_a#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 ] ) -- _deref_pbuc1=vbuaa + //SEG109 [53] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte~) gfx_mode::$34 [ gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta DTV_PLANEA_START_LO - //SEG115 [58] (word~) gfx_mode::$35 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$35 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$35 ] ) -- vwuz1=_lo_vduz2 + //SEG110 [54] (word~) gfx_mode::$35 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$35 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$35 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vwuz1=_lo_vduz2 lda plane_a sta _35 lda plane_a+1 sta _35+1 - //SEG116 [59] (byte~) gfx_mode::$36 ← > (word~) gfx_mode::$35 [ gfx_mode::plane_a#0 gfx_mode::$36 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$36 ] ) -- vbuaa=_hi_vwuz1 + //SEG111 [55] (byte~) gfx_mode::$36 ← > (word~) gfx_mode::$35 [ gfx_mode::plane_a#0 gfx_mode::$36 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$36 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_hi_vwuz1 lda _35+1 - //SEG117 [60] *((const byte*) DTV_PLANEA_START_MI#0) ← (byte~) gfx_mode::$36 [ gfx_mode::plane_a#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 ] ) -- _deref_pbuc1=vbuaa + //SEG112 [56] *((const byte*) DTV_PLANEA_START_MI#0) ← (byte~) gfx_mode::$36 [ gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta DTV_PLANEA_START_MI - //SEG118 [61] (word~) gfx_mode::$37 ← > (dword) gfx_mode::plane_a#0 [ gfx_mode::$37 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$37 ] ) -- vwuz1=_hi_vduz2 + //SEG113 [57] (word~) gfx_mode::$37 ← > (dword) gfx_mode::plane_a#0 [ gfx_mode::$37 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$37 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vwuz1=_hi_vduz2 lda plane_a+2 sta _37 lda plane_a+3 sta _37+1 - //SEG119 [62] (byte~) gfx_mode::$38 ← < (word~) gfx_mode::$37 [ gfx_mode::$38 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$38 ] ) -- vbuaa=_lo_vwuz1 + //SEG114 [58] (byte~) gfx_mode::$38 ← < (word~) gfx_mode::$37 [ gfx_mode::$38 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$38 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_lo_vwuz1 lda _37 - //SEG120 [63] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte~) gfx_mode::$38 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuaa + //SEG115 [59] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte~) gfx_mode::$38 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta DTV_PLANEA_START_HI - //SEG121 [64] (byte~) gfx_mode::$39 ← *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$39 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$39 ] ) -- vbuaa=_deref_pbuc1_rol_4 + //SEG116 [60] (byte~) gfx_mode::$39 ← *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$39 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$39 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_deref_pbuc1_rol_4 lda form_a_step_hi asl asl asl asl - //SEG122 [65] (byte~) gfx_mode::$40 ← (byte~) gfx_mode::$39 | *((const byte*) form_a_step_lo#0) [ gfx_mode::$40 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$40 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG117 [61] (byte~) gfx_mode::$40 ← (byte~) gfx_mode::$39 | *((const byte*) form_a_step_lo#0) [ gfx_mode::$40 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$40 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_a_step_lo - //SEG123 [66] *((const byte*) DTV_PLANEA_STEP#0) ← (byte~) gfx_mode::$40 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuaa + //SEG118 [62] *((const byte*) DTV_PLANEA_STEP#0) ← (byte~) gfx_mode::$40 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta DTV_PLANEA_STEP - //SEG124 [67] (byte~) gfx_mode::$41 ← *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$41 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$41 ] ) -- vbuaa=_deref_pbuc1_rol_4 + //SEG119 [63] (byte~) gfx_mode::$41 ← *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$41 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$41 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_deref_pbuc1_rol_4 lda form_a_mod_hi asl asl asl asl - //SEG125 [68] (byte~) gfx_mode::$42 ← (byte~) gfx_mode::$41 | *((const byte*) form_a_mod_lo#0) [ gfx_mode::$42 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$42 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG120 [64] (byte~) gfx_mode::$42 ← (byte~) gfx_mode::$41 | *((const byte*) form_a_mod_lo#0) [ gfx_mode::$42 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$42 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_a_mod_lo - //SEG126 [69] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte~) gfx_mode::$42 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuaa + //SEG121 [65] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte~) gfx_mode::$42 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta DTV_PLANEA_MODULO_LO - //SEG127 [70] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuc2 + //SEG122 [66] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_HI - //SEG128 [71] (byte~) gfx_mode::$43 ← *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$43 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$43 ] ) -- vbuaa=_deref_pbuc1_rol_4 + //SEG123 [67] (byte~) gfx_mode::$43 ← *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$43 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$43 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_deref_pbuc1_rol_4 lda form_b_start_hi asl asl asl asl - //SEG129 [72] (byte) gfx_mode::plane_b_offs#0 ← (byte~) gfx_mode::$43 | *((const byte*) form_b_start_lo#0) [ gfx_mode::plane_b_offs#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b_offs#0 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG124 [68] (byte) gfx_mode::plane_b_offs#0 ← (byte~) gfx_mode::$43 | *((const byte*) form_b_start_lo#0) [ gfx_mode::plane_b_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_b_start_lo - //SEG130 [73] (dword) gfx_mode::plane_b#0 ← (const dword) PLANE_8BPP_CHUNKY#0 + (byte) gfx_mode::plane_b_offs#0 [ gfx_mode::plane_b#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 ] ) -- vduz1=vduc1_plus_vbuaa + //SEG125 [69] (dword) gfx_mode::plane_b#0 ← (const dword) PLANE_8BPP_CHUNKY#0 + (byte) gfx_mode::plane_b_offs#0 [ gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vduz1=vduc1_plus_vbuaa clc adc #PLANE_8BPP_CHUNKY>>$10 adc #0 sta plane_b+3 - //SEG131 [74] (word~) gfx_mode::$46 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$46 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$46 ] ) -- vwuz1=_lo_vduz2 + //SEG126 [70] (word~) gfx_mode::$46 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$46 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$46 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vwuz1=_lo_vduz2 lda plane_b sta _46 lda plane_b+1 sta _46+1 - //SEG132 [75] (byte~) gfx_mode::$47 ← < (word~) gfx_mode::$46 [ gfx_mode::plane_b#0 gfx_mode::$47 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$47 ] ) -- vbuaa=_lo_vwuz1 + //SEG127 [71] (byte~) gfx_mode::$47 ← < (word~) gfx_mode::$46 [ gfx_mode::plane_b#0 gfx_mode::$47 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$47 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_lo_vwuz1 lda _46 - //SEG133 [76] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte~) gfx_mode::$47 [ gfx_mode::plane_b#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 ] ) -- _deref_pbuc1=vbuaa + //SEG128 [72] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte~) gfx_mode::$47 [ gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta DTV_PLANEB_START_LO - //SEG134 [77] (word~) gfx_mode::$48 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$48 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$48 ] ) -- vwuz1=_lo_vduz2 + //SEG129 [73] (word~) gfx_mode::$48 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$48 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$48 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vwuz1=_lo_vduz2 lda plane_b sta _48 lda plane_b+1 sta _48+1 - //SEG135 [78] (byte~) gfx_mode::$49 ← > (word~) gfx_mode::$48 [ gfx_mode::plane_b#0 gfx_mode::$49 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$49 ] ) -- vbuaa=_hi_vwuz1 + //SEG130 [74] (byte~) gfx_mode::$49 ← > (word~) gfx_mode::$48 [ gfx_mode::plane_b#0 gfx_mode::$49 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$49 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_hi_vwuz1 lda _48+1 - //SEG136 [79] *((const byte*) DTV_PLANEB_START_MI#0) ← (byte~) gfx_mode::$49 [ gfx_mode::plane_b#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 ] ) -- _deref_pbuc1=vbuaa + //SEG131 [75] *((const byte*) DTV_PLANEB_START_MI#0) ← (byte~) gfx_mode::$49 [ gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta DTV_PLANEB_START_MI - //SEG137 [80] (word~) gfx_mode::$50 ← > (dword) gfx_mode::plane_b#0 [ gfx_mode::$50 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$50 ] ) -- vwuz1=_hi_vduz2 + //SEG132 [76] (word~) gfx_mode::$50 ← > (dword) gfx_mode::plane_b#0 [ gfx_mode::$50 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$50 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vwuz1=_hi_vduz2 lda plane_b+2 sta _50 lda plane_b+3 sta _50+1 - //SEG138 [81] (byte~) gfx_mode::$51 ← < (word~) gfx_mode::$50 [ gfx_mode::$51 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$51 ] ) -- vbuaa=_lo_vwuz1 + //SEG133 [77] (byte~) gfx_mode::$51 ← < (word~) gfx_mode::$50 [ gfx_mode::$51 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$51 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_lo_vwuz1 lda _50 - //SEG139 [82] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte~) gfx_mode::$51 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuaa + //SEG134 [78] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte~) gfx_mode::$51 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta DTV_PLANEB_START_HI - //SEG140 [83] (byte~) gfx_mode::$52 ← *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$52 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$52 ] ) -- vbuaa=_deref_pbuc1_rol_4 + //SEG135 [79] (byte~) gfx_mode::$52 ← *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$52 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$52 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_deref_pbuc1_rol_4 lda form_b_step_hi asl asl asl asl - //SEG141 [84] (byte~) gfx_mode::$53 ← (byte~) gfx_mode::$52 | *((const byte*) form_b_step_lo#0) [ gfx_mode::$53 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$53 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG136 [80] (byte~) gfx_mode::$53 ← (byte~) gfx_mode::$52 | *((const byte*) form_b_step_lo#0) [ gfx_mode::$53 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$53 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_b_step_lo - //SEG142 [85] *((const byte*) DTV_PLANEB_STEP#0) ← (byte~) gfx_mode::$53 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuaa + //SEG137 [81] *((const byte*) DTV_PLANEB_STEP#0) ← (byte~) gfx_mode::$53 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta DTV_PLANEB_STEP - //SEG143 [86] (byte~) gfx_mode::$54 ← *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$54 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$54 ] ) -- vbuaa=_deref_pbuc1_rol_4 + //SEG138 [82] (byte~) gfx_mode::$54 ← *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$54 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$54 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_deref_pbuc1_rol_4 lda form_b_mod_hi asl asl asl asl - //SEG144 [87] (byte~) gfx_mode::$55 ← (byte~) gfx_mode::$54 | *((const byte*) form_b_mod_lo#0) [ gfx_mode::$55 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$55 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG139 [83] (byte~) gfx_mode::$55 ← (byte~) gfx_mode::$54 | *((const byte*) form_b_mod_lo#0) [ gfx_mode::$55 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$55 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_b_mod_lo - //SEG145 [88] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte~) gfx_mode::$55 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuaa + //SEG140 [84] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte~) gfx_mode::$55 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta DTV_PLANEB_MODULO_LO - //SEG146 [89] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuc2 + //SEG141 [85] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_HI - //SEG147 [90] (byte~) gfx_mode::$56 ← *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$56 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$56 ] ) -- vbuaa=_deref_pbuc1_rol_4 + //SEG142 [86] (byte~) gfx_mode::$56 ← *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$56 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$56 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_deref_pbuc1_rol_4 lda form_vic_bg0_hi asl asl asl asl - //SEG148 [91] (byte~) gfx_mode::$57 ← (byte~) gfx_mode::$56 | *((const byte*) form_vic_bg0_lo#0) [ gfx_mode::$57 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$57 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG143 [87] (byte~) gfx_mode::$57 ← (byte~) gfx_mode::$56 | *((const byte*) form_vic_bg0_lo#0) [ gfx_mode::$57 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$57 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_vic_bg0_lo - //SEG149 [92] *((const byte*) BGCOL1#0) ← (byte~) gfx_mode::$57 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuaa + //SEG144 [88] *((const byte*) BGCOL1#0) ← (byte~) gfx_mode::$57 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta BGCOL1 - //SEG150 [93] (byte~) gfx_mode::$58 ← *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$58 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$58 ] ) -- vbuaa=_deref_pbuc1_rol_4 + //SEG145 [89] (byte~) gfx_mode::$58 ← *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$58 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$58 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_deref_pbuc1_rol_4 lda form_vic_bg1_hi asl asl asl asl - //SEG151 [94] (byte~) gfx_mode::$59 ← (byte~) gfx_mode::$58 | *((const byte*) form_vic_bg1_lo#0) [ gfx_mode::$59 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$59 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG146 [90] (byte~) gfx_mode::$59 ← (byte~) gfx_mode::$58 | *((const byte*) form_vic_bg1_lo#0) [ gfx_mode::$59 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$59 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_vic_bg1_lo - //SEG152 [95] *((const byte*) BGCOL2#0) ← (byte~) gfx_mode::$59 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuaa + //SEG147 [91] *((const byte*) BGCOL2#0) ← (byte~) gfx_mode::$59 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta BGCOL2 - //SEG153 [96] (byte~) gfx_mode::$60 ← *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$60 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$60 ] ) -- vbuaa=_deref_pbuc1_rol_4 + //SEG148 [92] (byte~) gfx_mode::$60 ← *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$60 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$60 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_deref_pbuc1_rol_4 lda form_vic_bg2_hi asl asl asl asl - //SEG154 [97] (byte~) gfx_mode::$61 ← (byte~) gfx_mode::$60 | *((const byte*) form_vic_bg2_lo#0) [ gfx_mode::$61 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$61 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG149 [93] (byte~) gfx_mode::$61 ← (byte~) gfx_mode::$60 | *((const byte*) form_vic_bg2_lo#0) [ gfx_mode::$61 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$61 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_vic_bg2_lo - //SEG155 [98] *((const byte*) BGCOL3#0) ← (byte~) gfx_mode::$61 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuaa + //SEG150 [94] *((const byte*) BGCOL3#0) ← (byte~) gfx_mode::$61 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta BGCOL3 - //SEG156 [99] (byte~) gfx_mode::$62 ← *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$62 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$62 ] ) -- vbuaa=_deref_pbuc1_rol_4 + //SEG151 [95] (byte~) gfx_mode::$62 ← *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$62 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$62 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_deref_pbuc1_rol_4 lda form_vic_bg3_hi asl asl asl asl - //SEG157 [100] (byte~) gfx_mode::$63 ← (byte~) gfx_mode::$62 | *((const byte*) form_vic_bg3_lo#0) [ gfx_mode::$63 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$63 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG152 [96] (byte~) gfx_mode::$63 ← (byte~) gfx_mode::$62 | *((const byte*) form_vic_bg3_lo#0) [ gfx_mode::$63 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$63 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_vic_bg3_lo - //SEG158 [101] *((const byte*) BGCOL4#0) ← (byte~) gfx_mode::$63 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuaa + //SEG153 [97] *((const byte*) BGCOL4#0) ← (byte~) gfx_mode::$63 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta BGCOL4 - //SEG159 [102] phi from gfx_mode::@9 to gfx_mode::@10 [phi:gfx_mode::@9->gfx_mode::@10] + //SEG154 [98] phi from gfx_mode::@9 to gfx_mode::@10 [phi:gfx_mode::@9->gfx_mode::@10] b10_from_b9: - //SEG160 [102] phi (byte) gfx_mode::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_mode::@9->gfx_mode::@10#0] -- vbuxx=vbuc1 + //SEG155 [98] phi (byte) gfx_mode::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_mode::@9->gfx_mode::@10#0] -- vbuxx=vbuc1 ldx #0 jmp b10 - //SEG161 [102] phi from gfx_mode::@10 to gfx_mode::@10 [phi:gfx_mode::@10->gfx_mode::@10] + //SEG156 [98] phi from gfx_mode::@10 to gfx_mode::@10 [phi:gfx_mode::@10->gfx_mode::@10] b10_from_b10: - //SEG162 [102] phi (byte) gfx_mode::i#2 = (byte) gfx_mode::i#1 [phi:gfx_mode::@10->gfx_mode::@10#0] -- register_copy + //SEG157 [98] phi (byte) gfx_mode::i#2 = (byte) gfx_mode::i#1 [phi:gfx_mode::@10->gfx_mode::@10#0] -- register_copy jmp b10 - //SEG163 gfx_mode::@10 + //SEG158 gfx_mode::@10 b10: - //SEG164 [103] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::i#2) ← (byte) gfx_mode::i#2 [ gfx_mode::i#2 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::i#2 ] ) -- pbuc1_derefidx_vbuxx=vbuxx + //SEG159 [99] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::i#2) ← (byte) gfx_mode::i#2 [ gfx_mode::i#2 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::i#2 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- pbuc1_derefidx_vbuxx=vbuxx txa sta DTV_PALETTE,x - //SEG165 [104] (byte) gfx_mode::i#1 ← ++ (byte) gfx_mode::i#2 [ gfx_mode::i#1 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::i#1 ] ) -- vbuxx=_inc_vbuxx + //SEG160 [100] (byte) gfx_mode::i#1 ← ++ (byte) gfx_mode::i#2 [ gfx_mode::i#1 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::i#1 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuxx=_inc_vbuxx inx - //SEG166 [105] if((byte) gfx_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto gfx_mode::@10 [ gfx_mode::i#1 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::i#1 ] ) -- vbuxx_neq_vbuc1_then_la1 + //SEG161 [101] if((byte) gfx_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto gfx_mode::@10 [ gfx_mode::i#1 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::i#1 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuxx_neq_vbuc1_then_la1 cpx #$10 bne b10_from_b10 + //SEG162 [102] phi from gfx_mode::@10 gfx_mode::@37 to gfx_mode::@11 [phi:gfx_mode::@10/gfx_mode::@37->gfx_mode::@11] + b11_from_b10: + b11_from_b37: + //SEG163 [102] phi (byte) keyboard_modifiers#42 = (byte) keyboard_modifiers#13 [phi:gfx_mode::@10/gfx_mode::@37->gfx_mode::@11#0] -- register_copy + //SEG164 [102] phi (byte) keyboard_events_size#45 = (byte) keyboard_events_size#13 [phi:gfx_mode::@10/gfx_mode::@37->gfx_mode::@11#1] -- register_copy + jmp b11 + //SEG165 gfx_mode::@11 + b11: + //SEG166 [103] if(true) goto gfx_mode::@14 [ keyboard_events_size#45 keyboard_modifiers#42 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#45 keyboard_modifiers#42 ] ) -- true_then_la1 + jmp b14 + //SEG167 [104] phi from gfx_mode::@11 gfx_mode::@37 to gfx_mode::@return [phi:gfx_mode::@11/gfx_mode::@37->gfx_mode::@return] + breturn_from_b11: + breturn_from_b37: + //SEG168 [104] phi (byte) keyboard_modifiers#11 = (byte) keyboard_modifiers#42 [phi:gfx_mode::@11/gfx_mode::@37->gfx_mode::@return#0] -- register_copy + //SEG169 [104] phi (byte) keyboard_events_size#11 = (byte) keyboard_events_size#45 [phi:gfx_mode::@11/gfx_mode::@37->gfx_mode::@return#1] -- register_copy jmp breturn - //SEG167 gfx_mode::@return + //SEG170 gfx_mode::@return breturn: - //SEG168 [106] return [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) + //SEG171 [105] return [ keyboard_events_size#11 keyboard_modifiers#11 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#11 keyboard_modifiers#11 ] ) + rts + //SEG172 gfx_mode::@14 + b14: + //SEG173 [106] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto gfx_mode::@14 [ keyboard_events_size#45 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#45 ] ) -- _deref_pbuc1_neq_vbuc2_then_la1 + lda RASTER + cmp #$ff + bne b14 + //SEG174 [107] phi from gfx_mode::@14 to gfx_mode::@16 [phi:gfx_mode::@14->gfx_mode::@16] + b16_from_b14: + jmp b16 + //SEG175 gfx_mode::@16 + b16: + //SEG176 [108] call keyboard_event_scan param-assignment [ keyboard_modifiers#21 keyboard_events_size#105 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#105 ] ) + //SEG177 [119] phi from gfx_mode::@16 to keyboard_event_scan [phi:gfx_mode::@16->keyboard_event_scan] + keyboard_event_scan_from_b16: + //SEG178 [119] phi (byte) keyboard_events_size#104 = (byte) keyboard_events_size#45 [phi:gfx_mode::@16->keyboard_event_scan#0] -- register_copy + jsr keyboard_event_scan + //SEG179 [109] phi from gfx_mode::@16 to gfx_mode::@36 [phi:gfx_mode::@16->gfx_mode::@36] + b36_from_b16: + jmp b36 + //SEG180 gfx_mode::@36 + b36: + //SEG181 [110] call keyboard_event_get param-assignment [ keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#2 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#2 ] ) + jsr keyboard_event_get + //SEG182 [111] (byte) keyboard_event_get::return#3 ← (byte) keyboard_event_get::return#2 [ keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#3 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#3 ] ) + // (byte) keyboard_event_get::return#3 = (byte) keyboard_event_get::return#2 // register copy reg byte a + jmp b37 + //SEG183 gfx_mode::@37 + b37: + //SEG184 [112] (byte) gfx_mode::keyboard_event#0 ← (byte) keyboard_event_get::return#3 [ keyboard_events_size#24 keyboard_modifiers#21 gfx_mode::keyboard_event#0 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#24 keyboard_modifiers#21 gfx_mode::keyboard_event#0 ] ) + // (byte) gfx_mode::keyboard_event#0 = (byte) keyboard_event_get::return#3 // register copy reg byte a + //SEG185 [113] if((byte) gfx_mode::keyboard_event#0!=(const byte) KEY_SPACE#0) goto gfx_mode::@11 [ keyboard_events_size#24 keyboard_modifiers#21 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#24 keyboard_modifiers#21 ] ) -- vbuaa_neq_vbuc1_then_la1 + cmp #KEY_SPACE + bne b11_from_b37 + jmp breturn_from_b37 +} +//SEG186 keyboard_event_get +keyboard_event_get: { + //SEG187 [114] if((byte) keyboard_events_size#105!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_get::@1 [ keyboard_events_size#105 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#105 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 ] ) -- vbuz1_neq_0_then_la1 + lda keyboard_events_size + bne b1 + //SEG188 [115] phi from keyboard_event_get to keyboard_event_get::@return [phi:keyboard_event_get->keyboard_event_get::@return] + breturn_from_keyboard_event_get: + //SEG189 [115] phi (byte) keyboard_events_size#24 = (byte) keyboard_events_size#105 [phi:keyboard_event_get->keyboard_event_get::@return#0] -- register_copy + //SEG190 [115] phi (byte) keyboard_event_get::return#2 = (byte/word/signed word/dword/signed dword) 255 [phi:keyboard_event_get->keyboard_event_get::@return#1] -- vbuaa=vbuc1 + lda #$ff + jmp breturn + //SEG191 keyboard_event_get::@return + breturn: + //SEG192 [116] return [ keyboard_events_size#24 keyboard_event_get::return#2 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#24 keyboard_event_get::return#2 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#24 keyboard_event_get::return#2 ] ) + rts + //SEG193 keyboard_event_get::@1 + b1: + //SEG194 [117] (byte) keyboard_events_size#4 ← -- (byte) keyboard_events_size#105 [ keyboard_events_size#4 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#4 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#4 ] ) -- vbuz1=_dec_vbuz1 + dec keyboard_events_size + //SEG195 [118] (byte) keyboard_event_get::return#0 ← *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) [ keyboard_event_get::return#0 keyboard_events_size#4 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_event_get::return#0 keyboard_events_size#4 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_get::return#0 keyboard_events_size#4 ] ) -- vbuaa=pbuc1_derefidx_vbuz1 + ldy keyboard_events_size + lda keyboard_events,y + //SEG196 [115] phi from keyboard_event_get::@1 to keyboard_event_get::@return [phi:keyboard_event_get::@1->keyboard_event_get::@return] + breturn_from_b1: + //SEG197 [115] phi (byte) keyboard_events_size#24 = (byte) keyboard_events_size#4 [phi:keyboard_event_get::@1->keyboard_event_get::@return#0] -- register_copy + //SEG198 [115] phi (byte) keyboard_event_get::return#2 = (byte) keyboard_event_get::return#0 [phi:keyboard_event_get::@1->keyboard_event_get::@return#1] -- register_copy + jmp breturn +} +//SEG199 keyboard_event_scan +keyboard_event_scan: { + .label row_scan = $11 + .label keycode = 3 + .label row = 2 + //SEG200 [120] phi from keyboard_event_scan to keyboard_event_scan::@1 [phi:keyboard_event_scan->keyboard_event_scan::@1] + b1_from_keyboard_event_scan: + //SEG201 [120] phi (byte) keyboard_events_size#112 = (byte) keyboard_events_size#104 [phi:keyboard_event_scan->keyboard_event_scan::@1#0] -- register_copy + //SEG202 [120] phi (byte) keyboard_event_scan::keycode#11 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:keyboard_event_scan->keyboard_event_scan::@1#1] -- vbuz1=vbuc1 + lda #0 + sta keycode + //SEG203 [120] phi (byte) keyboard_event_scan::row#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:keyboard_event_scan->keyboard_event_scan::@1#2] -- vbuz1=vbuc1 + lda #0 + sta row + jmp b1 + //SEG204 [120] phi from keyboard_event_scan::@8 to keyboard_event_scan::@1 [phi:keyboard_event_scan::@8->keyboard_event_scan::@1] + b1_from_b8: + //SEG205 [120] phi (byte) keyboard_events_size#112 = (byte) keyboard_events_size#105 [phi:keyboard_event_scan::@8->keyboard_event_scan::@1#0] -- register_copy + //SEG206 [120] phi (byte) keyboard_event_scan::keycode#11 = (byte) keyboard_event_scan::keycode#14 [phi:keyboard_event_scan::@8->keyboard_event_scan::@1#1] -- register_copy + //SEG207 [120] phi (byte) keyboard_event_scan::row#2 = (byte) keyboard_event_scan::row#1 [phi:keyboard_event_scan::@8->keyboard_event_scan::@1#2] -- register_copy + jmp b1 + //SEG208 keyboard_event_scan::@1 + b1: + //SEG209 [121] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_event_scan::row#2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::rowid#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::rowid#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::rowid#0 ] ) -- vbuxx=vbuz1 + ldx row + //SEG210 [122] call keyboard_matrix_read param-assignment [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] ) + jsr keyboard_matrix_read + //SEG211 [123] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#2 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#2 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#2 ] ) + // (byte) keyboard_matrix_read::return#2 = (byte) keyboard_matrix_read::return#0 // register copy reg byte a + jmp b25 + //SEG212 keyboard_event_scan::@25 + b25: + //SEG213 [124] (byte) keyboard_event_scan::row_scan#0 ← (byte) keyboard_matrix_read::return#2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ) -- vbuz1=vbuaa + sta row_scan + //SEG214 [125] if((byte) keyboard_event_scan::row_scan#0==*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ) -- vbuz1_eq_pbuc1_derefidx_vbuz2_then_la1 + ldy row + lda keyboard_scan_values,y + cmp row_scan + beq b2 + //SEG215 [126] phi from keyboard_event_scan::@25 to keyboard_event_scan::@3 [phi:keyboard_event_scan::@25->keyboard_event_scan::@3] + b3_from_b25: + //SEG216 [126] phi (byte) keyboard_events_size#18 = (byte) keyboard_events_size#112 [phi:keyboard_event_scan::@25->keyboard_event_scan::@3#0] -- register_copy + //SEG217 [126] phi (byte) keyboard_event_scan::keycode#10 = (byte) keyboard_event_scan::keycode#11 [phi:keyboard_event_scan::@25->keyboard_event_scan::@3#1] -- register_copy + //SEG218 [126] phi (byte) keyboard_event_scan::col#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:keyboard_event_scan::@25->keyboard_event_scan::@3#2] -- vbuxx=vbuc1 + ldx #0 + jmp b3 + //SEG219 [126] phi from keyboard_event_scan::@4 to keyboard_event_scan::@3 [phi:keyboard_event_scan::@4->keyboard_event_scan::@3] + b3_from_b4: + //SEG220 [126] phi (byte) keyboard_events_size#18 = (byte) keyboard_events_size#111 [phi:keyboard_event_scan::@4->keyboard_event_scan::@3#0] -- register_copy + //SEG221 [126] phi (byte) keyboard_event_scan::keycode#10 = (byte) keyboard_event_scan::keycode#15 [phi:keyboard_event_scan::@4->keyboard_event_scan::@3#1] -- register_copy + //SEG222 [126] phi (byte) keyboard_event_scan::col#2 = (byte) keyboard_event_scan::col#1 [phi:keyboard_event_scan::@4->keyboard_event_scan::@3#2] -- register_copy + jmp b3 + //SEG223 keyboard_event_scan::@3 + b3: + //SEG224 [127] (byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$3 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$3 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$3 ] ) -- vbuaa=vbuz1_bxor_pbuc1_derefidx_vbuz2 + lda row_scan + ldy row + eor keyboard_scan_values,y + //SEG225 [128] (byte~) keyboard_event_scan::$4 ← (byte~) keyboard_event_scan::$3 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$4 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$4 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$4 ] ) -- vbuaa=vbuaa_band_pbuc1_derefidx_vbuxx + and keyboard_matrix_col_bitmask,x + //SEG226 [129] if((byte~) keyboard_event_scan::$4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@4 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) -- vbuaa_eq_0_then_la1 + cmp #0 + beq b4_from_b3 + jmp b14 + //SEG227 keyboard_event_scan::@14 + b14: + //SEG228 [130] if((byte) keyboard_events_size#18==(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@4 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) -- vbuz1_eq_vbuc1_then_la1 + lda keyboard_events_size + cmp #8 + beq b4_from_b14 + jmp b15 + //SEG229 keyboard_event_scan::@15 + b15: + //SEG230 [131] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] ) -- vbuaa=vbuz1_band_pbuc1_derefidx_vbuxx + lda keyboard_matrix_col_bitmask,x + and row_scan + //SEG231 [132] if((byte) keyboard_event_scan::event_type#0!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@6 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) -- vbuaa_neq_0_then_la1 + cmp #0 + bne b6 + jmp b16 + //SEG232 keyboard_event_scan::@16 + b16: + //SEG233 [133] (byte/word/dword~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) 64 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$12 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$12 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$12 ] ) -- vbuaa=vbuz1_bor_vbuc1 + lda #$40 + ora keycode + //SEG234 [134] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ← (byte/word/dword~) keyboard_event_scan::$12 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) -- pbuc1_derefidx_vbuz1=vbuaa + ldy keyboard_events_size + sta keyboard_events,y + //SEG235 [135] (byte) keyboard_events_size#2 ← ++ (byte) keyboard_events_size#18 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#2 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#2 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#2 ] ) -- vbuz1=_inc_vbuz1 + inc keyboard_events_size + //SEG236 [136] phi from keyboard_event_scan::@14 keyboard_event_scan::@16 keyboard_event_scan::@3 keyboard_event_scan::@6 to keyboard_event_scan::@4 [phi:keyboard_event_scan::@14/keyboard_event_scan::@16/keyboard_event_scan::@3/keyboard_event_scan::@6->keyboard_event_scan::@4] + b4_from_b14: + b4_from_b16: + b4_from_b3: + b4_from_b6: + //SEG237 [136] phi (byte) keyboard_events_size#111 = (byte) keyboard_events_size#18 [phi:keyboard_event_scan::@14/keyboard_event_scan::@16/keyboard_event_scan::@3/keyboard_event_scan::@6->keyboard_event_scan::@4#0] -- register_copy + jmp b4 + //SEG238 keyboard_event_scan::@4 + b4: + //SEG239 [137] (byte) keyboard_event_scan::keycode#15 ← ++ (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ) -- vbuz1=_inc_vbuz1 + inc keycode + //SEG240 [138] (byte) keyboard_event_scan::col#1 ← ++ (byte) keyboard_event_scan::col#2 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ) -- vbuxx=_inc_vbuxx + inx + //SEG241 [139] if((byte) keyboard_event_scan::col#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@3 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ) -- vbuxx_neq_vbuc1_then_la1 + cpx #8 + bne b3_from_b4 + jmp b18 + //SEG242 keyboard_event_scan::@18 + b18: + //SEG243 [140] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ) -- pbuc1_derefidx_vbuz1=vbuz2 + lda row_scan + ldy row + sta keyboard_scan_values,y + //SEG244 [141] phi from keyboard_event_scan::@18 keyboard_event_scan::@2 to keyboard_event_scan::@8 [phi:keyboard_event_scan::@18/keyboard_event_scan::@2->keyboard_event_scan::@8] + b8_from_b18: + b8_from_b2: + //SEG245 [141] phi (byte) keyboard_events_size#105 = (byte) keyboard_events_size#111 [phi:keyboard_event_scan::@18/keyboard_event_scan::@2->keyboard_event_scan::@8#0] -- register_copy + //SEG246 [141] phi (byte) keyboard_event_scan::keycode#14 = (byte) keyboard_event_scan::keycode#15 [phi:keyboard_event_scan::@18/keyboard_event_scan::@2->keyboard_event_scan::@8#1] -- register_copy + jmp b8 + //SEG247 keyboard_event_scan::@8 + b8: + //SEG248 [142] (byte) keyboard_event_scan::row#1 ← ++ (byte) keyboard_event_scan::row#2 [ keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ) -- vbuz1=_inc_vbuz1 + inc row + //SEG249 [143] if((byte) keyboard_event_scan::row#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@1 [ keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ) -- vbuz1_neq_vbuc1_then_la1 + lda row + cmp #8 + bne b1_from_b8 + //SEG250 [144] phi from keyboard_event_scan::@8 to keyboard_event_scan::@20 [phi:keyboard_event_scan::@8->keyboard_event_scan::@20] + b20_from_b8: + jmp b20 + //SEG251 keyboard_event_scan::@20 + b20: + //SEG252 [145] call keyboard_event_pressed param-assignment [ keyboard_events_size#105 keyboard_event_pressed::return#10 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 ] ) + //SEG253 [173] phi from keyboard_event_scan::@20 to keyboard_event_pressed [phi:keyboard_event_scan::@20->keyboard_event_pressed] + keyboard_event_pressed_from_b20: + //SEG254 [173] phi (byte) keyboard_event_pressed::keycode#4 = (const byte) KEY_LSHIFT#0 [phi:keyboard_event_scan::@20->keyboard_event_pressed#0] -- vbuz1=vbuc1 + lda #KEY_LSHIFT + sta keyboard_event_pressed.keycode + jsr keyboard_event_pressed + //SEG255 [146] (byte) keyboard_event_pressed::return#0 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#105 keyboard_event_pressed::return#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#0 ] ) + // (byte) keyboard_event_pressed::return#0 = (byte) keyboard_event_pressed::return#10 // register copy reg byte a + jmp b26 + //SEG256 keyboard_event_scan::@26 + b26: + //SEG257 [147] (byte~) keyboard_event_scan::$16 ← (byte) keyboard_event_pressed::return#0 [ keyboard_events_size#105 keyboard_event_scan::$16 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_scan::$16 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_scan::$16 ] ) + // (byte~) keyboard_event_scan::$16 = (byte) keyboard_event_pressed::return#0 // register copy reg byte a + //SEG258 [148] if((byte~) keyboard_event_scan::$16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@9 [ keyboard_events_size#105 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 ] ) -- vbuaa_eq_0_then_la1 + cmp #0 + beq b9_from_b26 + //SEG259 [149] phi from keyboard_event_scan::@26 to keyboard_event_scan::@21 [phi:keyboard_event_scan::@26->keyboard_event_scan::@21] + b21_from_b26: + jmp b21 + //SEG260 keyboard_event_scan::@21 + b21: + //SEG261 [150] phi from keyboard_event_scan::@21 to keyboard_event_scan::@9 [phi:keyboard_event_scan::@21->keyboard_event_scan::@9] + b9_from_b21: + //SEG262 [150] phi (byte) keyboard_modifiers#18 = (byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) KEY_MODIFIER_LSHIFT#0 [phi:keyboard_event_scan::@21->keyboard_event_scan::@9#0] -- vbuz1=vbuc1 + lda #0|KEY_MODIFIER_LSHIFT + sta keyboard_modifiers + jmp b9 + //SEG263 [150] phi from keyboard_event_scan::@26 to keyboard_event_scan::@9 [phi:keyboard_event_scan::@26->keyboard_event_scan::@9] + b9_from_b26: + //SEG264 [150] phi (byte) keyboard_modifiers#18 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:keyboard_event_scan::@26->keyboard_event_scan::@9#0] -- vbuz1=vbuc1 + lda #0 + sta keyboard_modifiers + jmp b9 + //SEG265 keyboard_event_scan::@9 + b9: + //SEG266 [151] call keyboard_event_pressed param-assignment [ keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#18 ] ) + //SEG267 [173] phi from keyboard_event_scan::@9 to keyboard_event_pressed [phi:keyboard_event_scan::@9->keyboard_event_pressed] + keyboard_event_pressed_from_b9: + //SEG268 [173] phi (byte) keyboard_event_pressed::keycode#4 = (const byte) KEY_RSHIFT#0 [phi:keyboard_event_scan::@9->keyboard_event_pressed#0] -- vbuz1=vbuc1 + lda #KEY_RSHIFT + sta keyboard_event_pressed.keycode + jsr keyboard_event_pressed + //SEG269 [152] (byte) keyboard_event_pressed::return#1 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#1 ] ) + // (byte) keyboard_event_pressed::return#1 = (byte) keyboard_event_pressed::return#10 // register copy reg byte a + jmp b27 + //SEG270 keyboard_event_scan::@27 + b27: + //SEG271 [153] (byte~) keyboard_event_scan::$20 ← (byte) keyboard_event_pressed::return#1 [ keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_scan::$20 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_scan::$20 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_scan::$20 ] ) + // (byte~) keyboard_event_scan::$20 = (byte) keyboard_event_pressed::return#1 // register copy reg byte a + //SEG272 [154] if((byte~) keyboard_event_scan::$20==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@10 [ keyboard_events_size#105 keyboard_modifiers#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 ] ) -- vbuaa_eq_0_then_la1 + cmp #0 + beq b10_from_b27 + jmp b22 + //SEG273 keyboard_event_scan::@22 + b22: + //SEG274 [155] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#18 | (const byte) KEY_MODIFIER_RSHIFT#0 [ keyboard_events_size#105 keyboard_modifiers#3 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#3 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#3 ] ) -- vbuz1=vbuz1_bor_vbuc1 + lda #KEY_MODIFIER_RSHIFT + ora keyboard_modifiers + sta keyboard_modifiers + //SEG275 [156] phi from keyboard_event_scan::@22 keyboard_event_scan::@27 to keyboard_event_scan::@10 [phi:keyboard_event_scan::@22/keyboard_event_scan::@27->keyboard_event_scan::@10] + b10_from_b22: + b10_from_b27: + //SEG276 [156] phi (byte) keyboard_modifiers#19 = (byte) keyboard_modifiers#3 [phi:keyboard_event_scan::@22/keyboard_event_scan::@27->keyboard_event_scan::@10#0] -- register_copy + jmp b10 + //SEG277 keyboard_event_scan::@10 + b10: + //SEG278 [157] call keyboard_event_pressed param-assignment [ keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#19 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#19 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#19 ] ) + //SEG279 [173] phi from keyboard_event_scan::@10 to keyboard_event_pressed [phi:keyboard_event_scan::@10->keyboard_event_pressed] + keyboard_event_pressed_from_b10: + //SEG280 [173] phi (byte) keyboard_event_pressed::keycode#4 = (const byte) KEY_CTRL#0 [phi:keyboard_event_scan::@10->keyboard_event_pressed#0] -- vbuz1=vbuc1 + lda #KEY_CTRL + sta keyboard_event_pressed.keycode + jsr keyboard_event_pressed + //SEG281 [158] (byte) keyboard_event_pressed::return#2 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#2 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#2 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#2 ] ) + // (byte) keyboard_event_pressed::return#2 = (byte) keyboard_event_pressed::return#10 // register copy reg byte a + jmp b28 + //SEG282 keyboard_event_scan::@28 + b28: + //SEG283 [159] (byte~) keyboard_event_scan::$24 ← (byte) keyboard_event_pressed::return#2 [ keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_scan::$24 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_scan::$24 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_scan::$24 ] ) + // (byte~) keyboard_event_scan::$24 = (byte) keyboard_event_pressed::return#2 // register copy reg byte a + //SEG284 [160] if((byte~) keyboard_event_scan::$24==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@11 [ keyboard_events_size#105 keyboard_modifiers#19 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 ] ) -- vbuaa_eq_0_then_la1 + cmp #0 + beq b11_from_b28 + jmp b23 + //SEG285 keyboard_event_scan::@23 + b23: + //SEG286 [161] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#19 | (const byte) KEY_MODIFIER_CTRL#0 [ keyboard_events_size#105 keyboard_modifiers#4 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#4 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#4 ] ) -- vbuz1=vbuz1_bor_vbuc1 + lda #KEY_MODIFIER_CTRL + ora keyboard_modifiers + sta keyboard_modifiers + //SEG287 [162] phi from keyboard_event_scan::@23 keyboard_event_scan::@28 to keyboard_event_scan::@11 [phi:keyboard_event_scan::@23/keyboard_event_scan::@28->keyboard_event_scan::@11] + b11_from_b23: + b11_from_b28: + //SEG288 [162] phi (byte) keyboard_modifiers#20 = (byte) keyboard_modifiers#4 [phi:keyboard_event_scan::@23/keyboard_event_scan::@28->keyboard_event_scan::@11#0] -- register_copy + jmp b11 + //SEG289 keyboard_event_scan::@11 + b11: + //SEG290 [163] call keyboard_event_pressed param-assignment [ keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#20 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#20 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#20 ] ) + //SEG291 [173] phi from keyboard_event_scan::@11 to keyboard_event_pressed [phi:keyboard_event_scan::@11->keyboard_event_pressed] + keyboard_event_pressed_from_b11: + //SEG292 [173] phi (byte) keyboard_event_pressed::keycode#4 = (const byte) KEY_COMMODORE#0 [phi:keyboard_event_scan::@11->keyboard_event_pressed#0] -- vbuz1=vbuc1 + lda #KEY_COMMODORE + sta keyboard_event_pressed.keycode + jsr keyboard_event_pressed + //SEG293 [164] (byte) keyboard_event_pressed::return#3 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#3 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#3 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#3 ] ) + // (byte) keyboard_event_pressed::return#3 = (byte) keyboard_event_pressed::return#10 // register copy reg byte a + jmp b29 + //SEG294 keyboard_event_scan::@29 + b29: + //SEG295 [165] (byte~) keyboard_event_scan::$28 ← (byte) keyboard_event_pressed::return#3 [ keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_scan::$28 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_scan::$28 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_scan::$28 ] ) + // (byte~) keyboard_event_scan::$28 = (byte) keyboard_event_pressed::return#3 // register copy reg byte a + //SEG296 [166] if((byte~) keyboard_event_scan::$28==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@return [ keyboard_events_size#105 keyboard_modifiers#20 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 ] ) -- vbuaa_eq_0_then_la1 + cmp #0 + beq breturn_from_b29 + jmp b24 + //SEG297 keyboard_event_scan::@24 + b24: + //SEG298 [167] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#20 | (const byte) KEY_MODIFIER_COMMODORE#0 [ keyboard_events_size#105 keyboard_modifiers#5 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#5 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#5 ] ) -- vbuz1=vbuz1_bor_vbuc1 + lda #KEY_MODIFIER_COMMODORE + ora keyboard_modifiers + sta keyboard_modifiers + //SEG299 [168] phi from keyboard_event_scan::@24 keyboard_event_scan::@29 to keyboard_event_scan::@return [phi:keyboard_event_scan::@24/keyboard_event_scan::@29->keyboard_event_scan::@return] + breturn_from_b24: + breturn_from_b29: + //SEG300 [168] phi (byte) keyboard_modifiers#21 = (byte) keyboard_modifiers#5 [phi:keyboard_event_scan::@24/keyboard_event_scan::@29->keyboard_event_scan::@return#0] -- register_copy + jmp breturn + //SEG301 keyboard_event_scan::@return + breturn: + //SEG302 [169] return [ keyboard_modifiers#21 keyboard_events_size#105 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#105 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_modifiers#21 keyboard_events_size#105 ] ) + rts + //SEG303 keyboard_event_scan::@6 + b6: + //SEG304 [170] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ← (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) -- pbuc1_derefidx_vbuz1=vbuz2 + lda keycode + ldy keyboard_events_size + sta keyboard_events,y + //SEG305 [171] (byte) keyboard_events_size#1 ← ++ (byte) keyboard_events_size#18 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#1 ] ) -- vbuz1=_inc_vbuz1 + inc keyboard_events_size + jmp b4_from_b6 + //SEG306 keyboard_event_scan::@2 + b2: + //SEG307 [172] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ keyboard_event_scan::row#2 keyboard_events_size#112 keyboard_event_scan::keycode#1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_events_size#112 keyboard_event_scan::keycode#1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_events_size#112 keyboard_event_scan::keycode#1 ] ) -- vbuz1=vbuz1_plus_vbuc1 + lda #8 + clc + adc keycode + sta keycode + jmp b8_from_b2 +} +//SEG308 keyboard_event_pressed +keyboard_event_pressed: { + .label keycode = 2 + //SEG309 [174] (byte~) keyboard_event_pressed::$0 ← (byte) keyboard_event_pressed::keycode#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ) -- vbuaa=vbuz1_ror_3 + lda keycode + lsr + lsr + lsr + //SEG310 [175] (byte) keyboard_event_pressed::row_bits#0 ← *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) [ keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] ) -- vbuyy=pbuc1_derefidx_vbuaa + tax + ldy keyboard_scan_values,x + //SEG311 [176] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ) -- vbuaa=vbuz1_band_vbuc1 + lda #7 + and keycode + //SEG312 [177] (byte) keyboard_event_pressed::return#10 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) [ keyboard_event_pressed::return#10 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] ) -- vbuaa=vbuyy_band_pbuc1_derefidx_vbuaa + tax + tya + and keyboard_matrix_col_bitmask,x + jmp breturn + //SEG313 keyboard_event_pressed::@return + breturn: + //SEG314 [178] return [ keyboard_event_pressed::return#10 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] ) rts } -//SEG169 form_control +//SEG315 keyboard_matrix_read +keyboard_matrix_read: { + //SEG316 [179] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_matrix_read:122 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_matrix_read:122 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] ) -- _deref_pbuc1=pbuc2_derefidx_vbuxx + lda keyboard_matrix_row_bitmask,x + sta CIA1_PORT_A + //SEG317 [180] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_matrix_read:122 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_matrix_read:122 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] ) -- vbuaa=_bnot__deref_pbuc1 + lda CIA1_PORT_B + eor #$ff + jmp breturn + //SEG318 keyboard_matrix_read::@return + breturn: + //SEG319 [181] return [ keyboard_matrix_read::return#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_matrix_read:122 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_matrix_read:122 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] ) + rts +} +//SEG320 form_mode +form_mode: { + //SEG321 [182] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) 65536 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #($ffffffff&FORM_CHARSET)/$10000 + sta DTV_GRAPHICS_VIC_BANK + //SEG322 [183] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #DTV_COLOR_BANK_DEFAULT/$400 + sta DTV_COLOR_BANK_LO + //SEG323 [184] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #0 + sta DTV_COLOR_BANK_HI + //SEG324 [185] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #3 + sta CIA2_PORT_A_DDR + //SEG325 [186] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) 16384 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #3^FORM_CHARSET/$4000 + sta CIA2_PORT_A + //SEG326 [187] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #0 + sta DTV_CONTROL + //SEG327 [188] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #VIC_DEN|VIC_RSEL|3 + sta VIC_CONTROL + //SEG328 [189] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #VIC_CSEL + sta VIC_CONTROL2 + //SEG329 [190] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) 16383/(byte/signed byte/word/signed word/dword/signed dword) 64|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) 16383/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #(FORM_SCREEN&$3fff)/$40|(FORM_CHARSET&$3fff)/$400 + sta VIC_MEMORY + //SEG330 [191] phi from form_mode to form_mode::@1 [phi:form_mode->form_mode::@1] + b1_from_form_mode: + //SEG331 [191] phi (byte) form_mode::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_mode->form_mode::@1#0] -- vbuxx=vbuc1 + ldx #0 + jmp b1 + //SEG332 [191] phi from form_mode::@1 to form_mode::@1 [phi:form_mode::@1->form_mode::@1] + b1_from_b1: + //SEG333 [191] phi (byte) form_mode::i#2 = (byte) form_mode::i#1 [phi:form_mode::@1->form_mode::@1#0] -- register_copy + jmp b1 + //SEG334 form_mode::@1 + b1: + //SEG335 [192] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ← *((const byte[16]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#2 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#2 ] ) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx + lda DTV_PALETTE_DEFAULT,x + sta DTV_PALETTE,x + //SEG336 [193] (byte) form_mode::i#1 ← ++ (byte) form_mode::i#2 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#1 ] ) -- vbuxx=_inc_vbuxx + inx + //SEG337 [194] if((byte) form_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto form_mode::@1 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#1 ] ) -- vbuxx_neq_vbuc1_then_la1 + cpx #$10 + bne b1_from_b1 + jmp b9 + //SEG338 form_mode::@9 + b9: + //SEG339 [195] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #0 + sta BGCOL + //SEG340 [196] phi from form_mode::@19 form_mode::@9 to form_mode::@2 [phi:form_mode::@19/form_mode::@9->form_mode::@2] + b2_from_b19: + b2_from_b9: + //SEG341 [196] phi (byte) form_field_idx#28 = (byte) form_field_idx#18 [phi:form_mode::@19/form_mode::@9->form_mode::@2#0] -- register_copy + //SEG342 [196] phi (byte) keyboard_modifiers#45 = (byte) keyboard_modifiers#21 [phi:form_mode::@19/form_mode::@9->form_mode::@2#1] -- register_copy + //SEG343 [196] phi (byte) keyboard_events_size#47 = (byte) keyboard_events_size#24 [phi:form_mode::@19/form_mode::@9->form_mode::@2#2] -- register_copy + //SEG344 [196] phi (signed byte) form_cursor_count#21 = (signed byte) form_cursor_count#16 [phi:form_mode::@19/form_mode::@9->form_mode::@2#3] -- register_copy + jmp b2 + //SEG345 form_mode::@2 + b2: + //SEG346 [197] if(true) goto form_mode::@5 [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ( main:2::form_mode:15 [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ) -- true_then_la1 + jmp b5 + //SEG347 [198] phi from form_mode::@19 form_mode::@2 to form_mode::@return [phi:form_mode::@19/form_mode::@2->form_mode::@return] + breturn_from_b19: + breturn_from_b2: + //SEG348 [198] phi (byte) form_field_idx#14 = (byte) form_field_idx#18 [phi:form_mode::@19/form_mode::@2->form_mode::@return#0] -- register_copy + //SEG349 [198] phi (byte) keyboard_modifiers#13 = (byte) keyboard_modifiers#21 [phi:form_mode::@19/form_mode::@2->form_mode::@return#1] -- register_copy + //SEG350 [198] phi (byte) keyboard_events_size#13 = (byte) keyboard_events_size#24 [phi:form_mode::@19/form_mode::@2->form_mode::@return#2] -- register_copy + //SEG351 [198] phi (signed byte) form_cursor_count#13 = (signed byte) form_cursor_count#16 [phi:form_mode::@19/form_mode::@2->form_mode::@return#3] -- register_copy + jmp breturn + //SEG352 form_mode::@return + breturn: + //SEG353 [199] return [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::form_mode:15 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + rts + //SEG354 form_mode::@5 + b5: + //SEG355 [200] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto form_mode::@5 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 ] ( main:2::form_mode:15 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 ] ) -- _deref_pbuc1_neq_vbuc2_then_la1 + lda RASTER + cmp #$ff + bne b5 + //SEG356 [201] phi from form_mode::@5 to form_mode::@7 [phi:form_mode::@5->form_mode::@7] + b7_from_b5: + jmp b7 + //SEG357 form_mode::@7 + b7: + //SEG358 [202] call form_control param-assignment [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ( main:2::form_mode:15 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ) + jsr form_control + //SEG359 [203] (byte) form_control::return#0 ← (byte) form_control::return#2 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#0 ] ( main:2::form_mode:15 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#0 ] ) -- vbuaa=vbuxx + txa + jmp b19 + //SEG360 form_mode::@19 + b19: + //SEG361 [204] (byte~) form_mode::$25 ← (byte) form_control::return#0 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_mode::$25 ] ( main:2::form_mode:15 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_mode::$25 ] ) + // (byte~) form_mode::$25 = (byte) form_control::return#0 // register copy reg byte a + //SEG362 [205] if((byte~) form_mode::$25==(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_mode::@2 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 ] ( main:2::form_mode:15 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 ] ) -- vbuaa_eq_0_then_la1 + cmp #0 + beq b2_from_b19 + jmp breturn_from_b19 +} +//SEG363 form_control form_control: { .label field = 7 - //SEG170 [107] (byte) form_field_ptr::field_idx#1 ← (byte) form_field_idx#1 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::field_idx#1 ] ( main:2::form_control:19 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::field_idx#1 ] ) -- vbuxx=vbuz1 + //SEG364 [206] (byte) form_field_ptr::field_idx#1 ← (byte) form_field_idx#28 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#1 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#1 ] ) -- vbuxx=vbuz1 ldx form_field_idx - //SEG171 [108] call form_field_ptr param-assignment [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#0 ] ( main:2::form_control:19 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#0 ] ) - //SEG172 [218] phi from form_control to form_field_ptr [phi:form_control->form_field_ptr] + //SEG365 [207] call form_field_ptr param-assignment [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] ) + //SEG366 [251] phi from form_control to form_field_ptr [phi:form_control->form_field_ptr] form_field_ptr_from_form_control: - //SEG173 [218] phi (byte) form_field_ptr::field_idx#2 = (byte) form_field_ptr::field_idx#1 [phi:form_control->form_field_ptr#0] -- register_copy + //SEG367 [251] phi (byte) form_field_ptr::field_idx#2 = (byte) form_field_ptr::field_idx#1 [phi:form_control->form_field_ptr#0] -- register_copy jsr form_field_ptr - //SEG174 [109] (byte*) form_field_ptr::return#3 ← (byte*) form_field_ptr::return#0 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#3 ] ( main:2::form_control:19 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#3 ] ) + //SEG368 [208] (byte*) form_field_ptr::return#3 ← (byte*) form_field_ptr::return#0 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#3 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#3 ] ) // (byte*) form_field_ptr::return#3 = (byte*) form_field_ptr::return#0 // register copy zp ZP_WORD:7 - jmp b29 - //SEG175 form_control::@29 - b29: - //SEG176 [110] (byte*) form_control::field#0 ← (byte*) form_field_ptr::return#3 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_control::field#0 ] ( main:2::form_control:19 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_control::field#0 ] ) + jmp b33 + //SEG369 form_control::@33 + b33: + //SEG370 [209] (byte*) form_control::field#0 ← (byte*) form_field_ptr::return#3 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_control::field#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_control::field#0 ] ) // (byte*) form_control::field#0 = (byte*) form_field_ptr::return#3 // register copy zp ZP_WORD:7 - //SEG177 [111] (signed byte) form_cursor_count#3 ← -- (signed byte) form_cursor_count#1 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ) -- vbsz1=_dec_vbsz1 + //SEG371 [210] (signed byte) form_cursor_count#5 ← -- (signed byte) form_cursor_count#21 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ) -- vbsz1=_dec_vbsz1 dec form_cursor_count - //SEG178 [112] if((signed byte) form_cursor_count#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@32 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ) -- vbsz1_ge_0_then_la1 + //SEG372 [211] if((signed byte) form_cursor_count#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@36 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ) -- vbsz1_ge_0_then_la1 lda form_cursor_count cmp #0 - bpl b32_from_b29 - //SEG179 [113] phi from form_control::@29 to form_control::@1 [phi:form_control::@29->form_control::@1] - b1_from_b29: - //SEG180 [113] phi (signed byte) form_cursor_count#11 = (const signed byte) FORM_CURSOR_BLINK#0 [phi:form_control::@29->form_control::@1#0] -- vbsz1=vbsc1 + bpl b36_from_b33 + //SEG373 [212] phi from form_control::@33 to form_control::@1 [phi:form_control::@33->form_control::@1] + b1_from_b33: + //SEG374 [212] phi (signed byte) form_cursor_count#15 = (const signed byte) FORM_CURSOR_BLINK#0 [phi:form_control::@33->form_control::@1#0] -- vbsz1=vbsc1 lda #FORM_CURSOR_BLINK sta form_cursor_count jmp b1 - //SEG181 form_control::@1 + //SEG375 form_control::@1 b1: - //SEG182 [114] if((signed byte) form_cursor_count#11>=(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2) goto form_control::@2 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ) -- vbsz1_ge_vbuc1_then_la1 + //SEG376 [213] if((signed byte) form_cursor_count#15>=(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2) goto form_control::@2 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- vbsz1_ge_vbuc1_then_la1 lda form_cursor_count sec sbc #FORM_CURSOR_BLINK/2 @@ -13482,570 +15770,245 @@ form_control: { eor #$80 !: bpl b2 - jmp b15 - //SEG183 form_control::@15 - b15: - //SEG184 [115] (byte/word/dword~) form_control::$6 ← *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) 128 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$6 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$6 ] ) -- vbuaa=_deref_pbuz1_bor_vbuc1 + jmp b16 + //SEG377 form_control::@16 + b16: + //SEG378 [214] (byte/word/dword~) form_control::$6 ← *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) 128 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$6 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$6 ] ) -- vbuaa=_deref_pbuz1_bor_vbuc1 lda #$80 ldy #0 ora (field),y - //SEG185 [116] *((byte*) form_control::field#0) ← (byte/word/dword~) form_control::$6 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ) -- _deref_pbuz1=vbuaa + //SEG379 [215] *((byte*) form_control::field#0) ← (byte/word/dword~) form_control::$6 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- _deref_pbuz1=vbuaa ldy #0 sta (field),y - //SEG186 [117] phi from form_control::@15 form_control::@2 to form_control::@3 [phi:form_control::@15/form_control::@2->form_control::@3] - b3_from_b15: + //SEG380 [216] phi from form_control::@16 form_control::@2 to form_control::@3 [phi:form_control::@16/form_control::@2->form_control::@3] + b3_from_b16: b3_from_b2: jmp b3 - //SEG187 form_control::@3 + //SEG381 form_control::@3 b3: - //SEG188 [118] call keyboard_event_scan param-assignment [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ( main:2::form_control:19 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ) - //SEG189 [155] phi from form_control::@3 to keyboard_event_scan [phi:form_control::@3->keyboard_event_scan] + //SEG382 [217] call keyboard_event_scan param-assignment [ keyboard_modifiers#21 keyboard_events_size#105 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_modifiers#21 keyboard_events_size#105 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + //SEG383 [119] phi from form_control::@3 to keyboard_event_scan [phi:form_control::@3->keyboard_event_scan] keyboard_event_scan_from_b3: + //SEG384 [119] phi (byte) keyboard_events_size#104 = (byte) keyboard_events_size#47 [phi:form_control::@3->keyboard_event_scan#0] -- register_copy jsr keyboard_event_scan - //SEG190 [119] phi from form_control::@3 to form_control::@30 [phi:form_control::@3->form_control::@30] - b30_from_b3: - jmp b30 - //SEG191 form_control::@30 - b30: - //SEG192 [120] call keyboard_event_get param-assignment [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_event_get::return#2 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_event_get::return#2 keyboard_modifiers#16 ] ) + //SEG385 [218] phi from form_control::@3 to form_control::@34 [phi:form_control::@3->form_control::@34] + b34_from_b3: + jmp b34 + //SEG386 form_control::@34 + b34: + //SEG387 [219] call keyboard_event_get param-assignment [ keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#2 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#2 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) jsr keyboard_event_get - //SEG193 [121] (byte) keyboard_event_get::return#3 ← (byte) keyboard_event_get::return#2 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_event_get::return#3 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_event_get::return#3 keyboard_modifiers#16 ] ) - // (byte) keyboard_event_get::return#3 = (byte) keyboard_event_get::return#2 // register copy reg byte a - jmp b31 - //SEG194 form_control::@31 - b31: - //SEG195 [122] (byte) form_control::key_event#0 ← (byte) keyboard_event_get::return#3 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::key_event#0 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::key_event#0 keyboard_modifiers#16 ] ) - // (byte) form_control::key_event#0 = (byte) keyboard_event_get::return#3 // register copy reg byte a - //SEG196 [123] if((byte) form_control::key_event#0!=(const byte) KEY_CRSR_DOWN#0) goto form_control::@4 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::key_event#0 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::key_event#0 keyboard_modifiers#16 ] ) -- vbuaa_neq_vbuc1_then_la1 + //SEG388 [220] (byte) keyboard_event_get::return#4 ← (byte) keyboard_event_get::return#2 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_get::return#4 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_get::return#4 ] ) + // (byte) keyboard_event_get::return#4 = (byte) keyboard_event_get::return#2 // register copy reg byte a + jmp b35 + //SEG389 form_control::@35 + b35: + //SEG390 [221] (byte) form_control::key_event#0 ← (byte) keyboard_event_get::return#4 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ) + // (byte) form_control::key_event#0 = (byte) keyboard_event_get::return#4 // register copy reg byte a + //SEG391 [222] if((byte) form_control::key_event#0!=(const byte) KEY_CRSR_DOWN#0) goto form_control::@4 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ) -- vbuaa_neq_vbuc1_then_la1 cmp #KEY_CRSR_DOWN bne b4 - jmp b17 - //SEG197 form_control::@17 - b17: - //SEG198 [124] (byte~) form_control::$12 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_control::$12 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_control::$12 keyboard_modifiers#16 ] ) -- vbuaa=_deref_pbuz1_band_vbuc1 + jmp b18 + //SEG392 form_control::@18 + b18: + //SEG393 [223] (byte~) form_control::$12 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_control::$12 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_control::$12 ] ) -- vbuaa=_deref_pbuz1_band_vbuc1 lda #$7f ldy #0 and (field),y - //SEG199 [125] *((byte*) form_control::field#0) ← (byte~) form_control::$12 [ form_field_idx#1 keyboard_events_size#18 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 keyboard_modifiers#16 ] ) -- _deref_pbuz1=vbuaa + //SEG394 [224] *((byte*) form_control::field#0) ← (byte~) form_control::$12 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ) -- _deref_pbuz1=vbuaa ldy #0 sta (field),y - //SEG200 [126] (byte~) form_control::$13 ← (byte) keyboard_modifiers#16 & (const byte) KEY_MODIFIER_SHIFT#0 [ form_field_idx#1 keyboard_events_size#18 form_control::$13 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::$13 ] ) -- vbuaa=vbuxx_band_vbuc1 - txa - and #KEY_MODIFIER_SHIFT - //SEG201 [127] if((byte~) form_control::$13!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@5 [ form_field_idx#1 keyboard_events_size#18 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 ] ) -- vbuaa_neq_0_then_la1 + //SEG395 [225] (byte~) form_control::$13 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::$13 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::$13 ] ) -- vbuaa=vbuz1_band_vbuc1 + lda #KEY_MODIFIER_SHIFT + and keyboard_modifiers + //SEG396 [226] if((byte~) form_control::$13!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@5 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ) -- vbuaa_neq_0_then_la1 cmp #0 bne b5 - jmp b18 - //SEG202 form_control::@18 - b18: - //SEG203 [128] (byte) form_field_idx#34 ← ++ (byte) form_field_idx#1 [ keyboard_events_size#18 form_field_idx#34 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#34 ] ) -- vbuz1=_inc_vbuz1 + jmp b19 + //SEG397 form_control::@19 + b19: + //SEG398 [227] (byte) form_field_idx#43 ← ++ (byte) form_field_idx#28 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ) -- vbuz1=_inc_vbuz1 inc form_field_idx - //SEG204 [129] if((byte) form_field_idx#34!=(const byte) form_fields_cnt#0) goto form_control::@33 [ keyboard_events_size#18 form_field_idx#34 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#34 ] ) -- vbuz1_neq_vbuc1_then_la1 + //SEG399 [228] if((byte) form_field_idx#43!=(const byte) form_fields_cnt#0) goto form_control::@37 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ) -- vbuz1_neq_vbuc1_then_la1 lda form_field_idx cmp #form_fields_cnt - bne b33_from_b18 - //SEG205 [130] phi from form_control::@18 to form_control::@7 [phi:form_control::@18->form_control::@7] - b7_from_b18: - //SEG206 [130] phi (byte) form_field_idx#24 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_control::@18->form_control::@7#0] -- vbuz1=vbuc1 + bne b37_from_b19 + //SEG400 [229] phi from form_control::@19 to form_control::@7 [phi:form_control::@19->form_control::@7] + b7_from_b19: + //SEG401 [229] phi (byte) form_field_idx#32 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_control::@19->form_control::@7#0] -- vbuz1=vbuc1 lda #0 sta form_field_idx jmp b7 - //SEG207 form_control::@7 + //SEG402 form_control::@7 b7: - //SEG208 [131] phi from form_control::@7 to form_control::@return [phi:form_control::@7->form_control::@return] + //SEG403 [230] phi from form_control::@7 to form_control::@return [phi:form_control::@7->form_control::@return] breturn_from_b7: - //SEG209 [131] phi (byte) form_field_idx#14 = (byte) form_field_idx#24 [phi:form_control::@7->form_control::@return#0] -- register_copy - //SEG210 [131] phi (signed byte) form_cursor_count#12 = (const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 [phi:form_control::@7->form_control::@return#1] -- vbsz1=vbuc1 + //SEG404 [230] phi (byte) form_field_idx#18 = (byte) form_field_idx#32 [phi:form_control::@7->form_control::@return#0] -- register_copy + //SEG405 [230] phi (signed byte) form_cursor_count#16 = (const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 [phi:form_control::@7->form_control::@return#1] -- vbsz1=vbuc1 lda #FORM_CURSOR_BLINK/2 sta form_cursor_count + //SEG406 [230] phi (byte) form_control::return#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_control::@7->form_control::@return#2] -- vbuxx=vbuc1 + ldx #0 jmp breturn - //SEG211 [131] phi from form_control::@12 form_control::@4 to form_control::@return [phi:form_control::@12/form_control::@4->form_control::@return] - breturn_from_b12: - breturn_from_b4: - //SEG212 [131] phi (byte) form_field_idx#14 = (byte) form_field_idx#1 [phi:form_control::@12/form_control::@4->form_control::@return#0] -- register_copy - //SEG213 [131] phi (signed byte) form_cursor_count#12 = (signed byte) form_cursor_count#11 [phi:form_control::@12/form_control::@4->form_control::@return#1] -- register_copy - jmp breturn - //SEG214 form_control::@return + //SEG407 form_control::@return breturn: - //SEG215 [132] return [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ( main:2::form_control:19 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) + //SEG408 [231] return [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ) rts - //SEG216 [133] phi from form_control::@18 to form_control::@33 [phi:form_control::@18->form_control::@33] - b33_from_b18: - jmp b33 - //SEG217 form_control::@33 - b33: - //SEG218 [130] phi from form_control::@33 form_control::@34 to form_control::@7 [phi:form_control::@33/form_control::@34->form_control::@7] - b7_from_b33: - b7_from_b34: - //SEG219 [130] phi (byte) form_field_idx#24 = (byte) form_field_idx#34 [phi:form_control::@33/form_control::@34->form_control::@7#0] -- register_copy + //SEG409 [232] phi from form_control::@19 to form_control::@37 [phi:form_control::@19->form_control::@37] + b37_from_b19: + jmp b37 + //SEG410 form_control::@37 + b37: + //SEG411 [229] phi from form_control::@37 form_control::@38 to form_control::@7 [phi:form_control::@37/form_control::@38->form_control::@7] + b7_from_b37: + b7_from_b38: + //SEG412 [229] phi (byte) form_field_idx#32 = (byte) form_field_idx#43 [phi:form_control::@37/form_control::@38->form_control::@7#0] -- register_copy jmp b7 - //SEG220 form_control::@5 + //SEG413 form_control::@5 b5: - //SEG221 [134] (byte) form_field_idx#3 ← -- (byte) form_field_idx#1 [ keyboard_events_size#18 form_field_idx#3 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#3 ] ) -- vbuz1=_dec_vbuz1 + //SEG414 [233] (byte) form_field_idx#44 ← -- (byte) form_field_idx#28 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ) -- vbuz1=_dec_vbuz1 dec form_field_idx - //SEG222 [135] if((byte) form_field_idx#3!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@34 [ keyboard_events_size#18 form_field_idx#3 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#3 ] ) -- vbuz1_neq_vbuc1_then_la1 + //SEG415 [234] if((byte) form_field_idx#44!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@38 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ) -- vbuz1_neq_vbuc1_then_la1 lda form_field_idx cmp #$ff - bne b34_from_b5 - //SEG223 [130] phi from form_control::@5 to form_control::@7 [phi:form_control::@5->form_control::@7] + bne b38_from_b5 + //SEG416 [229] phi from form_control::@5 to form_control::@7 [phi:form_control::@5->form_control::@7] b7_from_b5: - //SEG224 [130] phi (byte) form_field_idx#24 = (const byte) form_fields_cnt#0-(byte/signed byte/word/signed word/dword/signed dword) 1 [phi:form_control::@5->form_control::@7#0] -- vbuz1=vbuc1 + //SEG417 [229] phi (byte) form_field_idx#32 = (const byte) form_fields_cnt#0-(byte/signed byte/word/signed word/dword/signed dword) 1 [phi:form_control::@5->form_control::@7#0] -- vbuz1=vbuc1 lda #form_fields_cnt-1 sta form_field_idx jmp b7 - //SEG225 [136] phi from form_control::@5 to form_control::@34 [phi:form_control::@5->form_control::@34] - b34_from_b5: - jmp b34 - //SEG226 form_control::@34 - b34: - jmp b7_from_b34 - //SEG227 form_control::@4 + //SEG418 [235] phi from form_control::@5 to form_control::@38 [phi:form_control::@5->form_control::@38] + b38_from_b5: + jmp b38 + //SEG419 form_control::@38 + b38: + jmp b7_from_b38 + //SEG420 form_control::@4 b4: - //SEG228 [137] if((byte) form_control::key_event#0!=(const byte) KEY_CRSR_RIGHT#0) goto form_control::@return [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 ] ) -- vbuaa_neq_vbuc1_then_la1 + //SEG421 [236] if((byte) form_control::key_event#0!=(const byte) KEY_CRSR_RIGHT#0) goto form_control::@9 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ) -- vbuaa_neq_vbuc1_then_la1 cmp #KEY_CRSR_RIGHT - bne breturn_from_b4 - jmp b23 - //SEG229 form_control::@23 - b23: - //SEG230 [138] (byte~) form_control::$24 ← (byte) keyboard_modifiers#16 & (const byte) KEY_MODIFIER_SHIFT#0 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::$24 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::$24 ] ) -- vbuaa=vbuxx_band_vbuc1 - txa - and #KEY_MODIFIER_SHIFT - //SEG231 [139] if((byte~) form_control::$24!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@10 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) -- vbuaa_neq_0_then_la1 + bne b9 + jmp b24 + //SEG422 form_control::@24 + b24: + //SEG423 [237] (byte~) form_control::$24 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$24 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$24 ] ) -- vbuaa=vbuz1_band_vbuc1 + lda #KEY_MODIFIER_SHIFT + and keyboard_modifiers + //SEG424 [238] if((byte~) form_control::$24!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@10 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- vbuaa_neq_0_then_la1 cmp #0 bne b10 - jmp b24 - //SEG232 form_control::@24 - b24: - //SEG233 [140] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← ++ *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) -- pbuc1_derefidx_vbuz1=_inc_pbuc1_derefidx_vbuz1 + jmp b25 + //SEG425 form_control::@25 + b25: + //SEG426 [239] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← ++ *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- pbuc1_derefidx_vbuz1=_inc_pbuc1_derefidx_vbuz1 ldx form_field_idx inc form_fields_val,x - //SEG234 [141] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#1)<=*((const byte[]) form_fields_max#0 + (byte) form_field_idx#1)) goto form_control::@12 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) -- pbuc1_derefidx_vbuz1_le_pbuc2_derefidx_vbuz1_then_la1 + //SEG427 [240] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)<=*((const byte[]) form_fields_max#0 + (byte) form_field_idx#28)) goto form_control::@12 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- pbuc1_derefidx_vbuz1_le_pbuc2_derefidx_vbuz1_then_la1 ldy form_field_idx lda form_fields_val,y cmp form_fields_max,y bcc b12 beq b12 - jmp b25 - //SEG235 form_control::@25 - b25: - //SEG236 [142] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) -- pbuc1_derefidx_vbuz1=vbuc2 + jmp b26 + //SEG428 form_control::@26 + b26: + //SEG429 [241] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- pbuc1_derefidx_vbuz1=vbuc2 ldy form_field_idx lda #0 sta form_fields_val,y jmp b12 - //SEG237 form_control::@12 + //SEG430 form_control::@12 b12: - //SEG238 [143] *((byte*) form_control::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1)) [ form_field_idx#1 keyboard_events_size#18 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_cursor_count#11 ] ) -- _deref_pbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuz2 + //SEG431 [242] *((byte*) form_control::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ) -- _deref_pbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuz2 ldy form_field_idx lda form_fields_val,y tay lda print_hextab,y ldy #0 sta (field),y - jmp breturn_from_b12 - //SEG239 form_control::@10 + //SEG432 [230] phi from form_control::@12 form_control::@39 to form_control::@return [phi:form_control::@12/form_control::@39->form_control::@return] + breturn_from_b12: + breturn_from_b39: + //SEG433 [230] phi (byte) form_field_idx#18 = (byte) form_field_idx#28 [phi:form_control::@12/form_control::@39->form_control::@return#0] -- register_copy + //SEG434 [230] phi (signed byte) form_cursor_count#16 = (signed byte) form_cursor_count#15 [phi:form_control::@12/form_control::@39->form_control::@return#1] -- register_copy + //SEG435 [230] phi (byte) form_control::return#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_control::@12/form_control::@39->form_control::@return#2] -- vbuxx=vbuc1 + ldx #0 + jmp breturn + //SEG436 form_control::@10 b10: - //SEG240 [144] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← -- *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) -- pbuc1_derefidx_vbuz1=_dec_pbuc1_derefidx_vbuz1 + //SEG437 [243] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← -- *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- pbuc1_derefidx_vbuz1=_dec_pbuc1_derefidx_vbuz1 ldx form_field_idx lda form_fields_val,x sec sbc #1 ldx form_field_idx sta form_fields_val,x - //SEG241 [145] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#1)!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@12 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) -- pbuc1_derefidx_vbuz1_neq_vbuc2_then_la1 + //SEG438 [244] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@12 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- pbuc1_derefidx_vbuz1_neq_vbuc2_then_la1 ldy form_field_idx lda form_fields_val,y cmp #$ff bne b12 - jmp b27 - //SEG242 form_control::@27 - b27: - //SEG243 [146] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← *((const byte[]) form_fields_max#0 + (byte) form_field_idx#1) [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 + jmp b28 + //SEG439 form_control::@28 + b28: + //SEG440 [245] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← *((const byte[]) form_fields_max#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 ldy form_field_idx lda form_fields_max,y sta form_fields_val,y jmp b12 - //SEG244 form_control::@2 + //SEG441 form_control::@9 + b9: + //SEG442 [246] if((byte) form_control::key_event#0!=(const byte) KEY_SPACE#0) goto form_control::@39 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ) -- vbuaa_neq_vbuc1_then_la1 + cmp #KEY_SPACE + bne b39_from_b9 + //SEG443 [230] phi from form_control::@9 to form_control::@return [phi:form_control::@9->form_control::@return] + breturn_from_b9: + //SEG444 [230] phi (byte) form_field_idx#18 = (byte) form_field_idx#28 [phi:form_control::@9->form_control::@return#0] -- register_copy + //SEG445 [230] phi (signed byte) form_cursor_count#16 = (signed byte) form_cursor_count#15 [phi:form_control::@9->form_control::@return#1] -- register_copy + //SEG446 [230] phi (byte) form_control::return#2 = (byte/word/signed word/dword/signed dword) 255 [phi:form_control::@9->form_control::@return#2] -- vbuxx=vbuc1 + ldx #$ff + jmp breturn + //SEG447 [247] phi from form_control::@9 to form_control::@39 [phi:form_control::@9->form_control::@39] + b39_from_b9: + jmp b39 + //SEG448 form_control::@39 + b39: + jmp breturn_from_b39 + //SEG449 form_control::@2 b2: - //SEG245 [147] (byte~) form_control::$7 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$7 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$7 ] ) -- vbuaa=_deref_pbuz1_band_vbuc1 + //SEG450 [248] (byte~) form_control::$7 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$7 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$7 ] ) -- vbuaa=_deref_pbuz1_band_vbuc1 lda #$7f ldy #0 and (field),y - //SEG246 [148] *((byte*) form_control::field#0) ← (byte~) form_control::$7 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ) -- _deref_pbuz1=vbuaa + //SEG451 [249] *((byte*) form_control::field#0) ← (byte~) form_control::$7 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- _deref_pbuz1=vbuaa ldy #0 sta (field),y jmp b3_from_b2 - //SEG247 [149] phi from form_control::@29 to form_control::@32 [phi:form_control::@29->form_control::@32] - b32_from_b29: - jmp b32 - //SEG248 form_control::@32 - b32: - //SEG249 [113] phi from form_control::@32 to form_control::@1 [phi:form_control::@32->form_control::@1] - b1_from_b32: - //SEG250 [113] phi (signed byte) form_cursor_count#11 = (signed byte) form_cursor_count#3 [phi:form_control::@32->form_control::@1#0] -- register_copy + //SEG452 [250] phi from form_control::@33 to form_control::@36 [phi:form_control::@33->form_control::@36] + b36_from_b33: + jmp b36 + //SEG453 form_control::@36 + b36: + //SEG454 [212] phi from form_control::@36 to form_control::@1 [phi:form_control::@36->form_control::@1] + b1_from_b36: + //SEG455 [212] phi (signed byte) form_cursor_count#15 = (signed byte) form_cursor_count#5 [phi:form_control::@36->form_control::@1#0] -- register_copy jmp b1 } -//SEG251 keyboard_event_get -keyboard_event_get: { - //SEG252 [150] if((byte) keyboard_events_size#15!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_get::@1 [ keyboard_events_size#15 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ) -- vbuz1_neq_0_then_la1 - lda keyboard_events_size - bne b1 - //SEG253 [151] phi from keyboard_event_get to keyboard_event_get::@return [phi:keyboard_event_get->keyboard_event_get::@return] - breturn_from_keyboard_event_get: - //SEG254 [151] phi (byte) keyboard_events_size#18 = (byte) keyboard_events_size#15 [phi:keyboard_event_get->keyboard_event_get::@return#0] -- register_copy - //SEG255 [151] phi (byte) keyboard_event_get::return#2 = (byte/word/signed word/dword/signed dword) 255 [phi:keyboard_event_get->keyboard_event_get::@return#1] -- vbuaa=vbuc1 - lda #$ff - jmp breturn - //SEG256 keyboard_event_get::@return - breturn: - //SEG257 [152] return [ keyboard_events_size#18 keyboard_event_get::return#2 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#18 keyboard_event_get::return#2 ] ) - rts - //SEG258 keyboard_event_get::@1 - b1: - //SEG259 [153] (byte) keyboard_events_size#4 ← -- (byte) keyboard_events_size#15 [ keyboard_events_size#4 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#4 ] ) -- vbuz1=_dec_vbuz1 - dec keyboard_events_size - //SEG260 [154] (byte) keyboard_event_get::return#0 ← *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) [ keyboard_event_get::return#0 keyboard_events_size#4 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_event_get::return#0 keyboard_events_size#4 ] ) -- vbuaa=pbuc1_derefidx_vbuz1 - ldy keyboard_events_size - lda keyboard_events,y - //SEG261 [151] phi from keyboard_event_get::@1 to keyboard_event_get::@return [phi:keyboard_event_get::@1->keyboard_event_get::@return] - breturn_from_b1: - //SEG262 [151] phi (byte) keyboard_events_size#18 = (byte) keyboard_events_size#4 [phi:keyboard_event_get::@1->keyboard_event_get::@return#0] -- register_copy - //SEG263 [151] phi (byte) keyboard_event_get::return#2 = (byte) keyboard_event_get::return#0 [phi:keyboard_event_get::@1->keyboard_event_get::@return#1] -- register_copy - jmp breturn -} -//SEG264 keyboard_event_scan -keyboard_event_scan: { - .label row_scan = $11 - .label keycode = 5 - .label row = 4 - //SEG265 [156] phi from keyboard_event_scan to keyboard_event_scan::@1 [phi:keyboard_event_scan->keyboard_event_scan::@1] - b1_from_keyboard_event_scan: - //SEG266 [156] phi (byte) keyboard_events_size#37 = (byte) keyboard_events_size#20 [phi:keyboard_event_scan->keyboard_event_scan::@1#0] -- register_copy - //SEG267 [156] phi (byte) keyboard_event_scan::keycode#11 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:keyboard_event_scan->keyboard_event_scan::@1#1] -- vbuz1=vbuc1 - lda #0 - sta keycode - //SEG268 [156] phi (byte) keyboard_event_scan::row#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:keyboard_event_scan->keyboard_event_scan::@1#2] -- vbuz1=vbuc1 - lda #0 - sta row - jmp b1 - //SEG269 [156] phi from keyboard_event_scan::@8 to keyboard_event_scan::@1 [phi:keyboard_event_scan::@8->keyboard_event_scan::@1] - b1_from_b8: - //SEG270 [156] phi (byte) keyboard_events_size#37 = (byte) keyboard_events_size#15 [phi:keyboard_event_scan::@8->keyboard_event_scan::@1#0] -- register_copy - //SEG271 [156] phi (byte) keyboard_event_scan::keycode#11 = (byte) keyboard_event_scan::keycode#14 [phi:keyboard_event_scan::@8->keyboard_event_scan::@1#1] -- register_copy - //SEG272 [156] phi (byte) keyboard_event_scan::row#2 = (byte) keyboard_event_scan::row#1 [phi:keyboard_event_scan::@8->keyboard_event_scan::@1#2] -- register_copy - jmp b1 - //SEG273 keyboard_event_scan::@1 - b1: - //SEG274 [157] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_event_scan::row#2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::rowid#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::rowid#0 ] ) -- vbuxx=vbuz1 - ldx row - //SEG275 [158] call keyboard_matrix_read param-assignment [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#0 ] ) - jsr keyboard_matrix_read - //SEG276 [159] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#2 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#2 ] ) - // (byte) keyboard_matrix_read::return#2 = (byte) keyboard_matrix_read::return#0 // register copy reg byte a - jmp b25 - //SEG277 keyboard_event_scan::@25 - b25: - //SEG278 [160] (byte) keyboard_event_scan::row_scan#0 ← (byte) keyboard_matrix_read::return#2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_event_scan::row_scan#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_event_scan::row_scan#0 ] ) -- vbuz1=vbuaa - sta row_scan - //SEG279 [161] if((byte) keyboard_event_scan::row_scan#0==*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_event_scan::row_scan#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_event_scan::row_scan#0 ] ) -- vbuz1_eq_pbuc1_derefidx_vbuz2_then_la1 - ldy row - lda keyboard_scan_values,y - cmp row_scan - beq b2 - //SEG280 [162] phi from keyboard_event_scan::@25 to keyboard_event_scan::@3 [phi:keyboard_event_scan::@25->keyboard_event_scan::@3] - b3_from_b25: - //SEG281 [162] phi (byte) keyboard_events_size#12 = (byte) keyboard_events_size#37 [phi:keyboard_event_scan::@25->keyboard_event_scan::@3#0] -- register_copy - //SEG282 [162] phi (byte) keyboard_event_scan::keycode#10 = (byte) keyboard_event_scan::keycode#11 [phi:keyboard_event_scan::@25->keyboard_event_scan::@3#1] -- register_copy - //SEG283 [162] phi (byte) keyboard_event_scan::col#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:keyboard_event_scan::@25->keyboard_event_scan::@3#2] -- vbuxx=vbuc1 - ldx #0 - jmp b3 - //SEG284 [162] phi from keyboard_event_scan::@4 to keyboard_event_scan::@3 [phi:keyboard_event_scan::@4->keyboard_event_scan::@3] - b3_from_b4: - //SEG285 [162] phi (byte) keyboard_events_size#12 = (byte) keyboard_events_size#38 [phi:keyboard_event_scan::@4->keyboard_event_scan::@3#0] -- register_copy - //SEG286 [162] phi (byte) keyboard_event_scan::keycode#10 = (byte) keyboard_event_scan::keycode#15 [phi:keyboard_event_scan::@4->keyboard_event_scan::@3#1] -- register_copy - //SEG287 [162] phi (byte) keyboard_event_scan::col#2 = (byte) keyboard_event_scan::col#1 [phi:keyboard_event_scan::@4->keyboard_event_scan::@3#2] -- register_copy - jmp b3 - //SEG288 keyboard_event_scan::@3 - b3: - //SEG289 [163] (byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$3 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$3 ] ) -- vbuaa=vbuz1_bxor_pbuc1_derefidx_vbuz2 - lda row_scan - ldy row - eor keyboard_scan_values,y - //SEG290 [164] (byte~) keyboard_event_scan::$4 ← (byte~) keyboard_event_scan::$3 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$4 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$4 ] ) -- vbuaa=vbuaa_band_pbuc1_derefidx_vbuxx - and keyboard_matrix_col_bitmask,x - //SEG291 [165] if((byte~) keyboard_event_scan::$4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@4 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) -- vbuaa_eq_0_then_la1 - cmp #0 - beq b4_from_b3 - jmp b14 - //SEG292 keyboard_event_scan::@14 - b14: - //SEG293 [166] if((byte) keyboard_events_size#12==(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@4 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) -- vbuz1_eq_vbuc1_then_la1 - lda keyboard_events_size - cmp #8 - beq b4_from_b14 - jmp b15 - //SEG294 keyboard_event_scan::@15 - b15: - //SEG295 [167] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::event_type#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::event_type#0 ] ) -- vbuaa=vbuz1_band_pbuc1_derefidx_vbuxx - lda keyboard_matrix_col_bitmask,x - and row_scan - //SEG296 [168] if((byte) keyboard_event_scan::event_type#0!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@6 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) -- vbuaa_neq_0_then_la1 - cmp #0 - bne b6 - jmp b16 - //SEG297 keyboard_event_scan::@16 - b16: - //SEG298 [169] (byte/word/dword~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) 64 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$12 ] ) -- vbuaa=vbuz1_bor_vbuc1 - lda #$40 - ora keycode - //SEG299 [170] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#12) ← (byte/word/dword~) keyboard_event_scan::$12 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) -- pbuc1_derefidx_vbuz1=vbuaa - ldy keyboard_events_size - sta keyboard_events,y - //SEG300 [171] (byte) keyboard_events_size#2 ← ++ (byte) keyboard_events_size#12 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#2 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#2 ] ) -- vbuz1=_inc_vbuz1 - inc keyboard_events_size - //SEG301 [172] phi from keyboard_event_scan::@14 keyboard_event_scan::@16 keyboard_event_scan::@3 keyboard_event_scan::@6 to keyboard_event_scan::@4 [phi:keyboard_event_scan::@14/keyboard_event_scan::@16/keyboard_event_scan::@3/keyboard_event_scan::@6->keyboard_event_scan::@4] - b4_from_b14: - b4_from_b16: - b4_from_b3: - b4_from_b6: - //SEG302 [172] phi (byte) keyboard_events_size#38 = (byte) keyboard_events_size#12 [phi:keyboard_event_scan::@14/keyboard_event_scan::@16/keyboard_event_scan::@3/keyboard_event_scan::@6->keyboard_event_scan::@4#0] -- register_copy - jmp b4 - //SEG303 keyboard_event_scan::@4 - b4: - //SEG304 [173] (byte) keyboard_event_scan::keycode#15 ← ++ (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ) -- vbuz1=_inc_vbuz1 - inc keycode - //SEG305 [174] (byte) keyboard_event_scan::col#1 ← ++ (byte) keyboard_event_scan::col#2 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ) -- vbuxx=_inc_vbuxx - inx - //SEG306 [175] if((byte) keyboard_event_scan::col#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@3 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ) -- vbuxx_neq_vbuc1_then_la1 - cpx #8 - bne b3_from_b4 - jmp b18 - //SEG307 keyboard_event_scan::@18 - b18: - //SEG308 [176] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ) -- pbuc1_derefidx_vbuz1=vbuz2 - lda row_scan - ldy row - sta keyboard_scan_values,y - //SEG309 [177] phi from keyboard_event_scan::@18 keyboard_event_scan::@2 to keyboard_event_scan::@8 [phi:keyboard_event_scan::@18/keyboard_event_scan::@2->keyboard_event_scan::@8] - b8_from_b18: - b8_from_b2: - //SEG310 [177] phi (byte) keyboard_events_size#15 = (byte) keyboard_events_size#38 [phi:keyboard_event_scan::@18/keyboard_event_scan::@2->keyboard_event_scan::@8#0] -- register_copy - //SEG311 [177] phi (byte) keyboard_event_scan::keycode#14 = (byte) keyboard_event_scan::keycode#15 [phi:keyboard_event_scan::@18/keyboard_event_scan::@2->keyboard_event_scan::@8#1] -- register_copy - jmp b8 - //SEG312 keyboard_event_scan::@8 - b8: - //SEG313 [178] (byte) keyboard_event_scan::row#1 ← ++ (byte) keyboard_event_scan::row#2 [ keyboard_events_size#15 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ) -- vbuz1=_inc_vbuz1 - inc row - //SEG314 [179] if((byte) keyboard_event_scan::row#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@1 [ keyboard_events_size#15 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ) -- vbuz1_neq_vbuc1_then_la1 - lda row - cmp #8 - bne b1_from_b8 - //SEG315 [180] phi from keyboard_event_scan::@8 to keyboard_event_scan::@20 [phi:keyboard_event_scan::@8->keyboard_event_scan::@20] - b20_from_b8: - jmp b20 - //SEG316 keyboard_event_scan::@20 - b20: - //SEG317 [181] call keyboard_event_pressed param-assignment [ keyboard_events_size#15 keyboard_event_pressed::return#10 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 ] ) - //SEG318 [209] phi from keyboard_event_scan::@20 to keyboard_event_pressed [phi:keyboard_event_scan::@20->keyboard_event_pressed] - keyboard_event_pressed_from_b20: - //SEG319 [209] phi (byte) keyboard_event_pressed::keycode#4 = (const byte) KEY_LSHIFT#0 [phi:keyboard_event_scan::@20->keyboard_event_pressed#0] -- vbuz1=vbuc1 - lda #KEY_LSHIFT - sta keyboard_event_pressed.keycode - jsr keyboard_event_pressed - //SEG320 [182] (byte) keyboard_event_pressed::return#0 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#15 keyboard_event_pressed::return#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#0 ] ) - // (byte) keyboard_event_pressed::return#0 = (byte) keyboard_event_pressed::return#10 // register copy reg byte a - jmp b26 - //SEG321 keyboard_event_scan::@26 - b26: - //SEG322 [183] (byte~) keyboard_event_scan::$16 ← (byte) keyboard_event_pressed::return#0 [ keyboard_events_size#15 keyboard_event_scan::$16 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_scan::$16 ] ) - // (byte~) keyboard_event_scan::$16 = (byte) keyboard_event_pressed::return#0 // register copy reg byte a - //SEG323 [184] if((byte~) keyboard_event_scan::$16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@9 [ keyboard_events_size#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 ] ) -- vbuaa_eq_0_then_la1 - cmp #0 - beq b9_from_b26 - //SEG324 [185] phi from keyboard_event_scan::@26 to keyboard_event_scan::@21 [phi:keyboard_event_scan::@26->keyboard_event_scan::@21] - b21_from_b26: - jmp b21 - //SEG325 keyboard_event_scan::@21 - b21: - //SEG326 [186] phi from keyboard_event_scan::@21 to keyboard_event_scan::@9 [phi:keyboard_event_scan::@21->keyboard_event_scan::@9] - b9_from_b21: - //SEG327 [186] phi (byte) keyboard_modifiers#13 = (byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) KEY_MODIFIER_LSHIFT#0 [phi:keyboard_event_scan::@21->keyboard_event_scan::@9#0] -- vbuxx=vbuc1 - ldx #0|KEY_MODIFIER_LSHIFT - jmp b9 - //SEG328 [186] phi from keyboard_event_scan::@26 to keyboard_event_scan::@9 [phi:keyboard_event_scan::@26->keyboard_event_scan::@9] - b9_from_b26: - //SEG329 [186] phi (byte) keyboard_modifiers#13 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:keyboard_event_scan::@26->keyboard_event_scan::@9#0] -- vbuxx=vbuc1 - ldx #0 - jmp b9 - //SEG330 keyboard_event_scan::@9 - b9: - //SEG331 [187] call keyboard_event_pressed param-assignment [ keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#13 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#13 ] ) - //SEG332 [209] phi from keyboard_event_scan::@9 to keyboard_event_pressed [phi:keyboard_event_scan::@9->keyboard_event_pressed] - keyboard_event_pressed_from_b9: - //SEG333 [209] phi (byte) keyboard_event_pressed::keycode#4 = (const byte) KEY_RSHIFT#0 [phi:keyboard_event_scan::@9->keyboard_event_pressed#0] -- vbuz1=vbuc1 - lda #KEY_RSHIFT - sta keyboard_event_pressed.keycode - jsr keyboard_event_pressed - //SEG334 [188] (byte) keyboard_event_pressed::return#1 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::return#1 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::return#1 ] ) - // (byte) keyboard_event_pressed::return#1 = (byte) keyboard_event_pressed::return#10 // register copy reg byte a - jmp b27 - //SEG335 keyboard_event_scan::@27 - b27: - //SEG336 [189] (byte~) keyboard_event_scan::$20 ← (byte) keyboard_event_pressed::return#1 [ keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_scan::$20 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_scan::$20 ] ) - // (byte~) keyboard_event_scan::$20 = (byte) keyboard_event_pressed::return#1 // register copy reg byte a - //SEG337 [190] if((byte~) keyboard_event_scan::$20==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@10 [ keyboard_events_size#15 keyboard_modifiers#13 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 ] ) -- vbuaa_eq_0_then_la1 - cmp #0 - beq b10_from_b27 - jmp b22 - //SEG338 keyboard_event_scan::@22 - b22: - //SEG339 [191] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#13 | (const byte) KEY_MODIFIER_RSHIFT#0 [ keyboard_events_size#15 keyboard_modifiers#3 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#3 ] ) -- vbuxx=vbuxx_bor_vbuc1 - txa - ora #KEY_MODIFIER_RSHIFT - tax - //SEG340 [192] phi from keyboard_event_scan::@22 keyboard_event_scan::@27 to keyboard_event_scan::@10 [phi:keyboard_event_scan::@22/keyboard_event_scan::@27->keyboard_event_scan::@10] - b10_from_b22: - b10_from_b27: - //SEG341 [192] phi (byte) keyboard_modifiers#14 = (byte) keyboard_modifiers#3 [phi:keyboard_event_scan::@22/keyboard_event_scan::@27->keyboard_event_scan::@10#0] -- register_copy - jmp b10 - //SEG342 keyboard_event_scan::@10 - b10: - //SEG343 [193] call keyboard_event_pressed param-assignment [ keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#14 ] ) - //SEG344 [209] phi from keyboard_event_scan::@10 to keyboard_event_pressed [phi:keyboard_event_scan::@10->keyboard_event_pressed] - keyboard_event_pressed_from_b10: - //SEG345 [209] phi (byte) keyboard_event_pressed::keycode#4 = (const byte) KEY_CTRL#0 [phi:keyboard_event_scan::@10->keyboard_event_pressed#0] -- vbuz1=vbuc1 - lda #KEY_CTRL - sta keyboard_event_pressed.keycode - jsr keyboard_event_pressed - //SEG346 [194] (byte) keyboard_event_pressed::return#2 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::return#2 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::return#2 ] ) - // (byte) keyboard_event_pressed::return#2 = (byte) keyboard_event_pressed::return#10 // register copy reg byte a - jmp b28 - //SEG347 keyboard_event_scan::@28 - b28: - //SEG348 [195] (byte~) keyboard_event_scan::$24 ← (byte) keyboard_event_pressed::return#2 [ keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_scan::$24 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_scan::$24 ] ) - // (byte~) keyboard_event_scan::$24 = (byte) keyboard_event_pressed::return#2 // register copy reg byte a - //SEG349 [196] if((byte~) keyboard_event_scan::$24==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@11 [ keyboard_events_size#15 keyboard_modifiers#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 ] ) -- vbuaa_eq_0_then_la1 - cmp #0 - beq b11_from_b28 - jmp b23 - //SEG350 keyboard_event_scan::@23 - b23: - //SEG351 [197] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#14 | (const byte) KEY_MODIFIER_CTRL#0 [ keyboard_events_size#15 keyboard_modifiers#4 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#4 ] ) -- vbuxx=vbuxx_bor_vbuc1 - txa - ora #KEY_MODIFIER_CTRL - tax - //SEG352 [198] phi from keyboard_event_scan::@23 keyboard_event_scan::@28 to keyboard_event_scan::@11 [phi:keyboard_event_scan::@23/keyboard_event_scan::@28->keyboard_event_scan::@11] - b11_from_b23: - b11_from_b28: - //SEG353 [198] phi (byte) keyboard_modifiers#15 = (byte) keyboard_modifiers#4 [phi:keyboard_event_scan::@23/keyboard_event_scan::@28->keyboard_event_scan::@11#0] -- register_copy - jmp b11 - //SEG354 keyboard_event_scan::@11 - b11: - //SEG355 [199] call keyboard_event_pressed param-assignment [ keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#15 ] ) - //SEG356 [209] phi from keyboard_event_scan::@11 to keyboard_event_pressed [phi:keyboard_event_scan::@11->keyboard_event_pressed] - keyboard_event_pressed_from_b11: - //SEG357 [209] phi (byte) keyboard_event_pressed::keycode#4 = (const byte) KEY_COMMODORE#0 [phi:keyboard_event_scan::@11->keyboard_event_pressed#0] -- vbuz1=vbuc1 - lda #KEY_COMMODORE - sta keyboard_event_pressed.keycode - jsr keyboard_event_pressed - //SEG358 [200] (byte) keyboard_event_pressed::return#3 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::return#3 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::return#3 ] ) - // (byte) keyboard_event_pressed::return#3 = (byte) keyboard_event_pressed::return#10 // register copy reg byte a - jmp b29 - //SEG359 keyboard_event_scan::@29 - b29: - //SEG360 [201] (byte~) keyboard_event_scan::$28 ← (byte) keyboard_event_pressed::return#3 [ keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_scan::$28 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_scan::$28 ] ) - // (byte~) keyboard_event_scan::$28 = (byte) keyboard_event_pressed::return#3 // register copy reg byte a - //SEG361 [202] if((byte~) keyboard_event_scan::$28==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@return [ keyboard_events_size#15 keyboard_modifiers#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 ] ) -- vbuaa_eq_0_then_la1 - cmp #0 - beq breturn_from_b29 - jmp b24 - //SEG362 keyboard_event_scan::@24 - b24: - //SEG363 [203] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#15 | (const byte) KEY_MODIFIER_COMMODORE#0 [ keyboard_events_size#15 keyboard_modifiers#5 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#5 ] ) -- vbuxx=vbuxx_bor_vbuc1 - txa - ora #KEY_MODIFIER_COMMODORE - tax - //SEG364 [204] phi from keyboard_event_scan::@24 keyboard_event_scan::@29 to keyboard_event_scan::@return [phi:keyboard_event_scan::@24/keyboard_event_scan::@29->keyboard_event_scan::@return] - breturn_from_b24: - breturn_from_b29: - //SEG365 [204] phi (byte) keyboard_modifiers#16 = (byte) keyboard_modifiers#5 [phi:keyboard_event_scan::@24/keyboard_event_scan::@29->keyboard_event_scan::@return#0] -- register_copy - jmp breturn - //SEG366 keyboard_event_scan::@return - breturn: - //SEG367 [205] return [ keyboard_modifiers#16 keyboard_events_size#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ) - rts - //SEG368 keyboard_event_scan::@6 - b6: - //SEG369 [206] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#12) ← (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) -- pbuc1_derefidx_vbuz1=vbuz2 - lda keycode - ldy keyboard_events_size - sta keyboard_events,y - //SEG370 [207] (byte) keyboard_events_size#1 ← ++ (byte) keyboard_events_size#12 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#1 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#1 ] ) -- vbuz1=_inc_vbuz1 - inc keyboard_events_size - jmp b4_from_b6 - //SEG371 keyboard_event_scan::@2 - b2: - //SEG372 [208] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ keyboard_event_scan::row#2 keyboard_events_size#37 keyboard_event_scan::keycode#1 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_events_size#37 keyboard_event_scan::keycode#1 ] ) -- vbuz1=vbuz1_plus_vbuc1 - lda #8 - clc - adc keycode - sta keycode - jmp b8_from_b2 -} -//SEG373 keyboard_event_pressed -keyboard_event_pressed: { - .label row_bits = 5 - .label keycode = 4 - //SEG374 [210] (byte~) keyboard_event_pressed::$0 ← (byte) keyboard_event_pressed::keycode#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ) -- vbuaa=vbuz1_ror_3 - lda keycode - lsr - lsr - lsr - //SEG375 [211] (byte) keyboard_event_pressed::row_bits#0 ← *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) [ keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] ) -- vbuz1=pbuc1_derefidx_vbuaa - tay - lda keyboard_scan_values,y - sta row_bits - //SEG376 [212] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ) -- vbuaa=vbuz1_band_vbuc1 - lda #7 - and keycode - //SEG377 [213] (byte) keyboard_event_pressed::return#10 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) [ keyboard_event_pressed::return#10 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::return#10 ] ) -- vbuaa=vbuz1_band_pbuc1_derefidx_vbuaa - tay - lda keyboard_matrix_col_bitmask,y - and row_bits - jmp breturn - //SEG378 keyboard_event_pressed::@return - breturn: - //SEG379 [214] return [ keyboard_event_pressed::return#10 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::return#10 ] ) - rts -} -//SEG380 keyboard_matrix_read -keyboard_matrix_read: { - //SEG381 [215] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_matrix_read:158 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 ] ) -- _deref_pbuc1=pbuc2_derefidx_vbuxx - lda keyboard_matrix_row_bitmask,x - sta CIA1_PORT_A - //SEG382 [216] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_matrix_read:158 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#0 ] ) -- vbuaa=_bnot__deref_pbuc1 - lda CIA1_PORT_B - eor #$ff - jmp breturn - //SEG383 keyboard_matrix_read::@return - breturn: - //SEG384 [217] return [ keyboard_matrix_read::return#0 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_matrix_read:158 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#0 ] ) - rts -} -//SEG385 form_field_ptr +//SEG456 form_field_ptr form_field_ptr: { .label return = 7 .label _2 = 7 - //SEG386 [219] (byte) form_field_ptr::y#0 ← *((const byte[]) form_fields_y#0 + (byte) form_field_ptr::field_idx#2) [ form_field_ptr::field_idx#2 form_field_ptr::y#0 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::field_idx#2 form_field_ptr::y#0 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::y#0 ] ) -- vbuyy=pbuc1_derefidx_vbuxx + //SEG457 [252] (byte) form_field_ptr::y#0 ← *((const byte[]) form_fields_y#0 + (byte) form_field_ptr::field_idx#2) [ form_field_ptr::field_idx#2 form_field_ptr::y#0 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#2 form_field_ptr::y#0 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::y#0 ] ) -- vbuyy=pbuc1_derefidx_vbuxx ldy form_fields_y,x - //SEG387 [220] (word~) form_field_ptr::$2 ← *((const byte[25]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[25]) form_line_lo#0 + (byte) form_field_ptr::y#0) [ form_field_ptr::field_idx#2 form_field_ptr::$2 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::field_idx#2 form_field_ptr::$2 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::$2 ] ) -- vwuz1=pbuc1_derefidx_vbuyy_word_pbuc2_derefidx_vbuyy + //SEG458 [253] (word~) form_field_ptr::$2 ← *((const byte[25]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[25]) form_line_lo#0 + (byte) form_field_ptr::y#0) [ form_field_ptr::field_idx#2 form_field_ptr::$2 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#2 form_field_ptr::$2 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::$2 ] ) -- vwuz1=pbuc1_derefidx_vbuyy_word_pbuc2_derefidx_vbuyy lda form_line_hi,y sta _2+1 lda form_line_lo,y sta _2 - //SEG388 [221] (byte) form_field_ptr::x#0 ← *((const byte[]) form_fields_x#0 + (byte) form_field_ptr::field_idx#2) [ form_field_ptr::$2 form_field_ptr::x#0 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::$2 form_field_ptr::x#0 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::$2 form_field_ptr::x#0 ] ) -- vbuaa=pbuc1_derefidx_vbuxx + //SEG459 [254] (byte) form_field_ptr::x#0 ← *((const byte[]) form_fields_x#0 + (byte) form_field_ptr::field_idx#2) [ form_field_ptr::$2 form_field_ptr::x#0 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::$2 form_field_ptr::x#0 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::$2 form_field_ptr::x#0 ] ) -- vbuaa=pbuc1_derefidx_vbuxx lda form_fields_x,x - //SEG389 [222] (byte*) form_field_ptr::return#0 ← (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 [ form_field_ptr::return#0 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#0 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::return#0 ] ) -- pbuz1=pbuz1_plus_vbuaa + //SEG460 [255] (byte*) form_field_ptr::return#0 ← (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 [ form_field_ptr::return#0 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::return#0 ] ) -- pbuz1=pbuz1_plus_vbuaa clc adc return sta return @@ -14053,226 +16016,176 @@ form_field_ptr: { adc return+1 sta return+1 jmp breturn - //SEG390 form_field_ptr::@return + //SEG461 form_field_ptr::@return breturn: - //SEG391 [223] return [ form_field_ptr::return#0 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#0 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::return#0 ] ) + //SEG462 [256] return [ form_field_ptr::return#0 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::return#0 ] ) rts } -//SEG392 form_mode -form_mode: { - //SEG393 [224] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) 65536 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #($ffffffff&FORM_CHARSET)/$10000 - sta DTV_GRAPHICS_VIC_BANK - //SEG394 [225] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #DTV_COLOR_BANK_DEFAULT/$400 - sta DTV_COLOR_BANK_LO - //SEG395 [226] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #0 - sta DTV_COLOR_BANK_HI - //SEG396 [227] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #3 - sta CIA2_PORT_A_DDR - //SEG397 [228] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) 16384 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #3^FORM_CHARSET/$4000 - sta CIA2_PORT_A - //SEG398 [229] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #0 - sta DTV_CONTROL - //SEG399 [230] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #VIC_DEN|VIC_RSEL|3 - sta VIC_CONTROL - //SEG400 [231] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #VIC_CSEL - sta VIC_CONTROL2 - //SEG401 [232] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) 16383/(byte/signed byte/word/signed word/dword/signed dword) 64|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) 16383/(word/signed word/dword/signed dword) 1024 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #(FORM_SCREEN&$3fff)/$40|(FORM_CHARSET&$3fff)/$400 - sta VIC_MEMORY - //SEG402 [233] phi from form_mode to form_mode::@1 [phi:form_mode->form_mode::@1] - b1_from_form_mode: - //SEG403 [233] phi (byte) form_mode::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_mode->form_mode::@1#0] -- vbuxx=vbuc1 - ldx #0 - jmp b1 - //SEG404 [233] phi from form_mode::@1 to form_mode::@1 [phi:form_mode::@1->form_mode::@1] - b1_from_b1: - //SEG405 [233] phi (byte) form_mode::i#2 = (byte) form_mode::i#1 [phi:form_mode::@1->form_mode::@1#0] -- register_copy - jmp b1 - //SEG406 form_mode::@1 - b1: - //SEG407 [234] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ← *((const byte[16]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) [ form_mode::i#2 ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_mode::i#2 ] ) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx - lda DTV_PALETTE_DEFAULT,x - sta DTV_PALETTE,x - //SEG408 [235] (byte) form_mode::i#1 ← ++ (byte) form_mode::i#2 [ form_mode::i#1 ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_mode::i#1 ] ) -- vbuxx=_inc_vbuxx - inx - //SEG409 [236] if((byte) form_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto form_mode::@1 [ form_mode::i#1 ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_mode::i#1 ] ) -- vbuxx_neq_vbuc1_then_la1 - cpx #$10 - bne b1_from_b1 - jmp b2 - //SEG410 form_mode::@2 - b2: - //SEG411 [237] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #0 - sta BORDERCOL - //SEG412 [238] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #0 - sta BGCOL - jmp breturn - //SEG413 form_mode::@return - breturn: - //SEG414 [239] return [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - rts -} -//SEG415 form_init +//SEG463 form_init form_init: { - //SEG416 [241] call print_set_screen param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) - //SEG417 [294] phi from form_init to print_set_screen [phi:form_init->print_set_screen] + //SEG464 [258] call print_set_screen param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) + //SEG465 [322] phi from form_init to print_set_screen [phi:form_init->print_set_screen] print_set_screen_from_form_init: - //SEG418 [294] phi (byte*) print_set_screen::screen#2 = (const byte*) COLS#0+(const word) FORM_OFFSET#0 [phi:form_init->print_set_screen#0] -- pbuz1=pbuc1 - lda #print_set_screen#0] -- pbuz1=pbuc1 + lda #COLS+FORM_OFFSET + lda #>COLS sta print_set_screen.screen+1 jsr print_set_screen - //SEG419 [242] phi from form_init to form_init::@1 [phi:form_init->form_init::@1] + //SEG467 [259] phi from form_init to form_init::@1 [phi:form_init->form_init::@1] b1_from_form_init: jmp b1 - //SEG420 form_init::@1 + //SEG468 form_init::@1 b1: - //SEG421 [243] call print_str_lines param-assignment [ ] ( main:2::form_init:10 [ ] ) - //SEG422 [273] phi from form_init::@1 to print_str_lines [phi:form_init::@1->print_str_lines] - print_str_lines_from_b1: - //SEG423 [273] phi (byte*) print_str_lines::str#5 = (const string) FORM_COLS#0 [phi:form_init::@1->print_str_lines#0] -- pbuz1=pbuc1 + //SEG469 [260] call print_cls param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) + jsr print_cls + //SEG470 [261] phi from form_init::@1 to form_init::@2 [phi:form_init::@1->form_init::@2] + b2_from_b1: + jmp b2 + //SEG471 form_init::@2 + b2: + //SEG472 [262] call print_str_lines param-assignment [ ] ( main:2::form_init:10 [ ] ) + //SEG473 [294] phi from form_init::@2 to print_str_lines [phi:form_init::@2->print_str_lines] + print_str_lines_from_b2: + //SEG474 [294] phi (byte*) print_str_lines::str#5 = (const string) FORM_COLS#0 [phi:form_init::@2->print_str_lines#0] -- pbuz1=pbuc1 lda #FORM_COLS sta print_str_lines.str+1 jsr print_str_lines - //SEG424 [244] phi from form_init::@1 to form_init::@2 [phi:form_init::@1->form_init::@2] - b2_from_b1: - jmp b2 - //SEG425 form_init::@2 - b2: - //SEG426 [245] call print_set_screen param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) - //SEG427 [294] phi from form_init::@2 to print_set_screen [phi:form_init::@2->print_set_screen] - print_set_screen_from_b2: - //SEG428 [294] phi (byte*) print_set_screen::screen#2 = (const byte*) FORM_SCREEN#0+(const word) FORM_OFFSET#0 [phi:form_init::@2->print_set_screen#0] -- pbuz1=pbuc1 - lda #FORM_SCREEN+FORM_OFFSET - sta print_set_screen.screen+1 - jsr print_set_screen - //SEG429 [246] phi from form_init::@2 to form_init::@3 [phi:form_init::@2->form_init::@3] + //SEG475 [263] phi from form_init::@2 to form_init::@3 [phi:form_init::@2->form_init::@3] b3_from_b2: jmp b3 - //SEG430 form_init::@3 + //SEG476 form_init::@3 b3: - //SEG431 [247] call print_str_lines param-assignment [ ] ( main:2::form_init:10 [ ] ) - //SEG432 [273] phi from form_init::@3 to print_str_lines [phi:form_init::@3->print_str_lines] - print_str_lines_from_b3: - //SEG433 [273] phi (byte*) print_str_lines::str#5 = (const string) FORM_TEXT#0 [phi:form_init::@3->print_str_lines#0] -- pbuz1=pbuc1 + //SEG477 [264] call print_set_screen param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) + //SEG478 [322] phi from form_init::@3 to print_set_screen [phi:form_init::@3->print_set_screen] + print_set_screen_from_b3: + //SEG479 [322] phi (byte*) print_set_screen::screen#2 = (const byte*) FORM_SCREEN#0 [phi:form_init::@3->print_set_screen#0] -- pbuz1=pbuc1 + lda #FORM_SCREEN + sta print_set_screen.screen+1 + jsr print_set_screen + //SEG480 [265] phi from form_init::@3 to form_init::@4 [phi:form_init::@3->form_init::@4] + b4_from_b3: + jmp b4 + //SEG481 form_init::@4 + b4: + //SEG482 [266] call print_cls param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) + jsr print_cls + //SEG483 [267] phi from form_init::@4 to form_init::@5 [phi:form_init::@4->form_init::@5] + b5_from_b4: + jmp b5 + //SEG484 form_init::@5 + b5: + //SEG485 [268] call print_str_lines param-assignment [ ] ( main:2::form_init:10 [ ] ) + //SEG486 [294] phi from form_init::@5 to print_str_lines [phi:form_init::@5->print_str_lines] + print_str_lines_from_b5: + //SEG487 [294] phi (byte*) print_str_lines::str#5 = (const string) FORM_TEXT#0 [phi:form_init::@5->print_str_lines#0] -- pbuz1=pbuc1 lda #FORM_TEXT sta print_str_lines.str+1 jsr print_str_lines - //SEG434 [248] phi from form_init::@3 to form_init::@4 [phi:form_init::@3->form_init::@4] - b4_from_b3: - jmp b4 - //SEG435 form_init::@4 - b4: - //SEG436 [249] call form_set_screen param-assignment [ ] ( main:2::form_init:10 [ ] ) - //SEG437 [263] phi from form_init::@4 to form_set_screen [phi:form_init::@4->form_set_screen] - form_set_screen_from_b4: + //SEG488 [269] phi from form_init::@5 to form_init::@6 [phi:form_init::@5->form_init::@6] + b6_from_b5: + jmp b6 + //SEG489 form_init::@6 + b6: + //SEG490 [270] call form_set_screen param-assignment [ ] ( main:2::form_init:10 [ ] ) + //SEG491 [284] phi from form_init::@6 to form_set_screen [phi:form_init::@6->form_set_screen] + form_set_screen_from_b6: jsr form_set_screen - //SEG438 [250] phi from form_init::@4 to form_init::@5 [phi:form_init::@4->form_init::@5] - b5_from_b4: - jmp b5 - //SEG439 form_init::@5 - b5: - //SEG440 [251] call form_render_values param-assignment [ ] ( main:2::form_init:10 [ ] ) - //SEG441 [253] phi from form_init::@5 to form_render_values [phi:form_init::@5->form_render_values] - form_render_values_from_b5: + //SEG492 [271] phi from form_init::@6 to form_init::@7 [phi:form_init::@6->form_init::@7] + b7_from_b6: + jmp b7 + //SEG493 form_init::@7 + b7: + //SEG494 [272] call form_render_values param-assignment [ ] ( main:2::form_init:10 [ ] ) + //SEG495 [274] phi from form_init::@7 to form_render_values [phi:form_init::@7->form_render_values] + form_render_values_from_b7: jsr form_render_values jmp breturn - //SEG442 form_init::@return + //SEG496 form_init::@return breturn: - //SEG443 [252] return [ ] ( main:2::form_init:10 [ ] ) + //SEG497 [273] return [ ] ( main:2::form_init:10 [ ] ) rts } -//SEG444 form_render_values +//SEG498 form_render_values form_render_values: { .label field = 7 - //SEG445 [254] phi from form_render_values to form_render_values::@1 [phi:form_render_values->form_render_values::@1] + //SEG499 [275] phi from form_render_values to form_render_values::@1 [phi:form_render_values->form_render_values::@1] b1_from_form_render_values: - //SEG446 [254] phi (byte) form_render_values::idx#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_render_values->form_render_values::@1#0] -- vbuxx=vbuc1 + //SEG500 [275] phi (byte) form_render_values::idx#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_render_values->form_render_values::@1#0] -- vbuxx=vbuc1 ldx #0 jmp b1 - //SEG447 [254] phi from form_render_values::@3 to form_render_values::@1 [phi:form_render_values::@3->form_render_values::@1] + //SEG501 [275] phi from form_render_values::@3 to form_render_values::@1 [phi:form_render_values::@3->form_render_values::@1] b1_from_b3: - //SEG448 [254] phi (byte) form_render_values::idx#2 = (byte) form_render_values::idx#1 [phi:form_render_values::@3->form_render_values::@1#0] -- register_copy + //SEG502 [275] phi (byte) form_render_values::idx#2 = (byte) form_render_values::idx#1 [phi:form_render_values::@3->form_render_values::@1#0] -- register_copy jmp b1 - //SEG449 form_render_values::@1 + //SEG503 form_render_values::@1 b1: - //SEG450 [255] (byte) form_field_ptr::field_idx#0 ← (byte) form_render_values::idx#2 [ form_field_ptr::field_idx#0 form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:251 [ form_field_ptr::field_idx#0 form_render_values::idx#2 ] ) + //SEG504 [276] (byte) form_field_ptr::field_idx#0 ← (byte) form_render_values::idx#2 [ form_field_ptr::field_idx#0 form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:272 [ form_field_ptr::field_idx#0 form_render_values::idx#2 ] ) // (byte) form_field_ptr::field_idx#0 = (byte) form_render_values::idx#2 // register copy reg byte x - //SEG451 [256] call form_field_ptr param-assignment [ form_field_ptr::return#0 form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:251 [ form_field_ptr::return#0 form_render_values::idx#2 ] ) - //SEG452 [218] phi from form_render_values::@1 to form_field_ptr [phi:form_render_values::@1->form_field_ptr] + //SEG505 [277] call form_field_ptr param-assignment [ form_field_ptr::return#0 form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:272 [ form_field_ptr::return#0 form_render_values::idx#2 ] ) + //SEG506 [251] phi from form_render_values::@1 to form_field_ptr [phi:form_render_values::@1->form_field_ptr] form_field_ptr_from_b1: - //SEG453 [218] phi (byte) form_field_ptr::field_idx#2 = (byte) form_field_ptr::field_idx#0 [phi:form_render_values::@1->form_field_ptr#0] -- register_copy + //SEG507 [251] phi (byte) form_field_ptr::field_idx#2 = (byte) form_field_ptr::field_idx#0 [phi:form_render_values::@1->form_field_ptr#0] -- register_copy jsr form_field_ptr - //SEG454 [257] (byte*) form_field_ptr::return#2 ← (byte*) form_field_ptr::return#0 [ form_render_values::idx#2 form_field_ptr::return#2 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#2 form_field_ptr::return#2 ] ) + //SEG508 [278] (byte*) form_field_ptr::return#2 ← (byte*) form_field_ptr::return#0 [ form_render_values::idx#2 form_field_ptr::return#2 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 form_field_ptr::return#2 ] ) // (byte*) form_field_ptr::return#2 = (byte*) form_field_ptr::return#0 // register copy zp ZP_WORD:7 jmp b3 - //SEG455 form_render_values::@3 + //SEG509 form_render_values::@3 b3: - //SEG456 [258] (byte*) form_render_values::field#0 ← (byte*) form_field_ptr::return#2 [ form_render_values::idx#2 form_render_values::field#0 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#2 form_render_values::field#0 ] ) + //SEG510 [279] (byte*) form_render_values::field#0 ← (byte*) form_field_ptr::return#2 [ form_render_values::idx#2 form_render_values::field#0 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 form_render_values::field#0 ] ) // (byte*) form_render_values::field#0 = (byte*) form_field_ptr::return#2 // register copy zp ZP_WORD:7 - //SEG457 [259] *((byte*) form_render_values::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) [ form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#2 ] ) -- _deref_pbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuxx + //SEG511 [280] *((byte*) form_render_values::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) [ form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 ] ) -- _deref_pbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuxx lda form_fields_val,x tay lda print_hextab,y ldy #0 sta (field),y - //SEG458 [260] (byte) form_render_values::idx#1 ← ++ (byte) form_render_values::idx#2 [ form_render_values::idx#1 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#1 ] ) -- vbuxx=_inc_vbuxx + //SEG512 [281] (byte) form_render_values::idx#1 ← ++ (byte) form_render_values::idx#2 [ form_render_values::idx#1 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#1 ] ) -- vbuxx=_inc_vbuxx inx - //SEG459 [261] if((byte) form_render_values::idx#1<(const byte) form_fields_cnt#0) goto form_render_values::@1 [ form_render_values::idx#1 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#1 ] ) -- vbuxx_lt_vbuc1_then_la1 + //SEG513 [282] if((byte) form_render_values::idx#1<(const byte) form_fields_cnt#0) goto form_render_values::@1 [ form_render_values::idx#1 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#1 ] ) -- vbuxx_lt_vbuc1_then_la1 cpx #form_fields_cnt bcc b1_from_b3 jmp breturn - //SEG460 form_render_values::@return + //SEG514 form_render_values::@return breturn: - //SEG461 [262] return [ ] ( main:2::form_init:10::form_render_values:251 [ ] ) + //SEG515 [283] return [ ] ( main:2::form_init:10::form_render_values:272 [ ] ) rts } -//SEG462 form_set_screen +//SEG516 form_set_screen form_set_screen: { - .label screen = FORM_SCREEN+FORM_OFFSET .label line = 7 - //SEG463 [264] phi from form_set_screen to form_set_screen::@1 [phi:form_set_screen->form_set_screen::@1] + //SEG517 [285] phi from form_set_screen to form_set_screen::@1 [phi:form_set_screen->form_set_screen::@1] b1_from_form_set_screen: - //SEG464 [264] phi (byte) form_set_screen::y#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_set_screen->form_set_screen::@1#0] -- vbuxx=vbuc1 + //SEG518 [285] phi (byte) form_set_screen::y#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_set_screen->form_set_screen::@1#0] -- vbuxx=vbuc1 ldx #0 - //SEG465 [264] phi (byte*) form_set_screen::line#2 = (const byte*) form_set_screen::screen#0 [phi:form_set_screen->form_set_screen::@1#1] -- pbuz1=pbuc1 - lda #form_set_screen::@1#1] -- pbuz1=pbuc1 + lda #screen + lda #>FORM_SCREEN sta line+1 jmp b1 - //SEG466 [264] phi from form_set_screen::@1 to form_set_screen::@1 [phi:form_set_screen::@1->form_set_screen::@1] + //SEG520 [285] phi from form_set_screen::@1 to form_set_screen::@1 [phi:form_set_screen::@1->form_set_screen::@1] b1_from_b1: - //SEG467 [264] phi (byte) form_set_screen::y#2 = (byte) form_set_screen::y#1 [phi:form_set_screen::@1->form_set_screen::@1#0] -- register_copy - //SEG468 [264] phi (byte*) form_set_screen::line#2 = (byte*) form_set_screen::line#1 [phi:form_set_screen::@1->form_set_screen::@1#1] -- register_copy + //SEG521 [285] phi (byte) form_set_screen::y#2 = (byte) form_set_screen::y#1 [phi:form_set_screen::@1->form_set_screen::@1#0] -- register_copy + //SEG522 [285] phi (byte*) form_set_screen::line#2 = (byte*) form_set_screen::line#1 [phi:form_set_screen::@1->form_set_screen::@1#1] -- register_copy jmp b1 - //SEG469 form_set_screen::@1 + //SEG523 form_set_screen::@1 b1: - //SEG470 [265] (byte~) form_set_screen::$0 ← < (byte*) form_set_screen::line#2 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$0 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$0 ] ) -- vbuaa=_lo_pbuz1 + //SEG524 [286] (byte~) form_set_screen::$0 ← < (byte*) form_set_screen::line#2 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$0 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$0 ] ) -- vbuaa=_lo_pbuz1 lda line - //SEG471 [266] *((const byte[25]) form_line_lo#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$0 [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#2 form_set_screen::y#2 ] ) -- pbuc1_derefidx_vbuxx=vbuaa + //SEG525 [287] *((const byte[25]) form_line_lo#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$0 [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#2 form_set_screen::y#2 ] ) -- pbuc1_derefidx_vbuxx=vbuaa sta form_line_lo,x - //SEG472 [267] (byte~) form_set_screen::$1 ← > (byte*) form_set_screen::line#2 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$1 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$1 ] ) -- vbuaa=_hi_pbuz1 + //SEG526 [288] (byte~) form_set_screen::$1 ← > (byte*) form_set_screen::line#2 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$1 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$1 ] ) -- vbuaa=_hi_pbuz1 lda line+1 - //SEG473 [268] *((const byte[25]) form_line_hi#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$1 [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#2 form_set_screen::y#2 ] ) -- pbuc1_derefidx_vbuxx=vbuaa + //SEG527 [289] *((const byte[25]) form_line_hi#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$1 [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#2 form_set_screen::y#2 ] ) -- pbuc1_derefidx_vbuxx=vbuaa sta form_line_hi,x - //SEG474 [269] (byte*) form_set_screen::line#1 ← (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ form_set_screen::y#2 form_set_screen::line#1 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::y#2 form_set_screen::line#1 ] ) -- pbuz1=pbuz1_plus_vbuc1 + //SEG528 [290] (byte*) form_set_screen::line#1 ← (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ form_set_screen::y#2 form_set_screen::line#1 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::y#2 form_set_screen::line#1 ] ) -- pbuz1=pbuz1_plus_vbuc1 lda line clc adc #$28 @@ -14280,110 +16193,110 @@ form_set_screen: { bcc !+ inc line+1 !: - //SEG475 [270] (byte) form_set_screen::y#1 ← ++ (byte) form_set_screen::y#2 [ form_set_screen::line#1 form_set_screen::y#1 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#1 form_set_screen::y#1 ] ) -- vbuxx=_inc_vbuxx + //SEG529 [291] (byte) form_set_screen::y#1 ← ++ (byte) form_set_screen::y#2 [ form_set_screen::line#1 form_set_screen::y#1 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#1 form_set_screen::y#1 ] ) -- vbuxx=_inc_vbuxx inx - //SEG476 [271] if((byte) form_set_screen::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 25) goto form_set_screen::@1 [ form_set_screen::line#1 form_set_screen::y#1 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#1 form_set_screen::y#1 ] ) -- vbuxx_neq_vbuc1_then_la1 + //SEG530 [292] if((byte) form_set_screen::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 25) goto form_set_screen::@1 [ form_set_screen::line#1 form_set_screen::y#1 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#1 form_set_screen::y#1 ] ) -- vbuxx_neq_vbuc1_then_la1 cpx #$19 bne b1_from_b1 jmp breturn - //SEG477 form_set_screen::@return + //SEG531 form_set_screen::@return breturn: - //SEG478 [272] return [ ] ( main:2::form_init:10::form_set_screen:249 [ ] ) + //SEG532 [293] return [ ] ( main:2::form_init:10::form_set_screen:270 [ ] ) rts } -//SEG479 print_str_lines +//SEG533 print_str_lines print_str_lines: { .label str = 7 - //SEG480 [274] (byte*~) print_char_cursor#60 ← (byte*) print_set_screen::screen#2 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ) -- pbuz1=pbuz2 + //SEG534 [295] (byte*~) print_char_cursor#60 ← (byte*) print_set_screen::screen#2 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ) -- pbuz1=pbuz2 lda print_set_screen.screen sta print_char_cursor lda print_set_screen.screen+1 sta print_char_cursor+1 - //SEG481 [275] phi from print_str_lines print_str_lines::@9 to print_str_lines::@1 [phi:print_str_lines/print_str_lines::@9->print_str_lines::@1] + //SEG535 [296] phi from print_str_lines print_str_lines::@9 to print_str_lines::@1 [phi:print_str_lines/print_str_lines::@9->print_str_lines::@1] b1_from_print_str_lines: b1_from_b9: - //SEG482 [275] phi (byte*) print_line_cursor#16 = (byte*) print_set_screen::screen#2 [phi:print_str_lines/print_str_lines::@9->print_str_lines::@1#0] -- register_copy - //SEG483 [275] phi (byte*) print_char_cursor#18 = (byte*~) print_char_cursor#60 [phi:print_str_lines/print_str_lines::@9->print_str_lines::@1#1] -- register_copy - //SEG484 [275] phi (byte*) print_str_lines::str#3 = (byte*) print_str_lines::str#5 [phi:print_str_lines/print_str_lines::@9->print_str_lines::@1#2] -- register_copy + //SEG536 [296] phi (byte*) print_line_cursor#2 = (byte*) print_set_screen::screen#2 [phi:print_str_lines/print_str_lines::@9->print_str_lines::@1#0] -- register_copy + //SEG537 [296] phi (byte*) print_char_cursor#22 = (byte*~) print_char_cursor#60 [phi:print_str_lines/print_str_lines::@9->print_str_lines::@1#1] -- register_copy + //SEG538 [296] phi (byte*) print_str_lines::str#3 = (byte*) print_str_lines::str#5 [phi:print_str_lines/print_str_lines::@9->print_str_lines::@1#2] -- register_copy jmp b1 - //SEG485 print_str_lines::@1 + //SEG539 print_str_lines::@1 b1: - //SEG486 [276] if(*((byte*) print_str_lines::str#3)!=(byte) '@') goto print_str_lines::@4 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ) -- _deref_pbuz1_neq_vbuc1_then_la1 + //SEG540 [297] if(*((byte*) print_str_lines::str#3)!=(byte) '@') goto print_str_lines::@4 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ) -- _deref_pbuz1_neq_vbuc1_then_la1 ldy #0 lda (str),y cmp #'@' bne b4_from_b1 jmp breturn - //SEG487 print_str_lines::@return + //SEG541 print_str_lines::@return breturn: - //SEG488 [277] return [ ] ( main:2::form_init:10::print_str_lines:243 [ ] main:2::form_init:10::print_str_lines:247 [ ] ) + //SEG542 [298] return [ ] ( main:2::form_init:10::print_str_lines:262 [ ] main:2::form_init:10::print_str_lines:268 [ ] ) rts - //SEG489 [278] phi from print_str_lines::@1 print_str_lines::@5 to print_str_lines::@4 [phi:print_str_lines::@1/print_str_lines::@5->print_str_lines::@4] + //SEG543 [299] phi from print_str_lines::@1 print_str_lines::@5 to print_str_lines::@4 [phi:print_str_lines::@1/print_str_lines::@5->print_str_lines::@4] b4_from_b1: b4_from_b5: - //SEG490 [278] phi (byte*) print_char_cursor#16 = (byte*) print_char_cursor#18 [phi:print_str_lines::@1/print_str_lines::@5->print_str_lines::@4#0] -- register_copy - //SEG491 [278] phi (byte*) print_str_lines::str#4 = (byte*) print_str_lines::str#3 [phi:print_str_lines::@1/print_str_lines::@5->print_str_lines::@4#1] -- register_copy + //SEG544 [299] phi (byte*) print_char_cursor#20 = (byte*) print_char_cursor#22 [phi:print_str_lines::@1/print_str_lines::@5->print_str_lines::@4#0] -- register_copy + //SEG545 [299] phi (byte*) print_str_lines::str#4 = (byte*) print_str_lines::str#3 [phi:print_str_lines::@1/print_str_lines::@5->print_str_lines::@4#1] -- register_copy jmp b4 - //SEG492 print_str_lines::@4 + //SEG546 print_str_lines::@4 b4: - //SEG493 [279] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#4) [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 print_str_lines::ch#0 ] ) -- vbuaa=_deref_pbuz1 + //SEG547 [300] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#4) [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] ) -- vbuaa=_deref_pbuz1 ldy #0 lda (str),y - //SEG494 [280] (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#4 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ) -- pbuz1=_inc_pbuz1 + //SEG548 [301] (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#4 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ) -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 !: - //SEG495 [281] if((byte) print_str_lines::ch#0==(byte) '@') goto print_str_lines::@5 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ) -- vbuaa_eq_vbuc1_then_la1 + //SEG549 [302] if((byte) print_str_lines::ch#0==(byte) '@') goto print_str_lines::@5 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ) -- vbuaa_eq_vbuc1_then_la1 cmp #'@' beq b5_from_b4 jmp b8 - //SEG496 print_str_lines::@8 + //SEG550 print_str_lines::@8 b8: - //SEG497 [282] *((byte*) print_char_cursor#16) ← (byte) print_str_lines::ch#0 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ) -- _deref_pbuz1=vbuaa + //SEG551 [303] *((byte*) print_char_cursor#20) ← (byte) print_str_lines::ch#0 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ) -- _deref_pbuz1=vbuaa ldy #0 sta (print_char_cursor),y - //SEG498 [283] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#16 [ print_line_cursor#16 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG552 [304] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#20 [ print_line_cursor#2 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG499 [284] phi from print_str_lines::@4 print_str_lines::@8 to print_str_lines::@5 [phi:print_str_lines::@4/print_str_lines::@8->print_str_lines::@5] + //SEG553 [305] phi from print_str_lines::@4 print_str_lines::@8 to print_str_lines::@5 [phi:print_str_lines::@4/print_str_lines::@8->print_str_lines::@5] b5_from_b4: b5_from_b8: - //SEG500 [284] phi (byte*) print_char_cursor#31 = (byte*) print_char_cursor#16 [phi:print_str_lines::@4/print_str_lines::@8->print_str_lines::@5#0] -- register_copy + //SEG554 [305] phi (byte*) print_char_cursor#38 = (byte*) print_char_cursor#20 [phi:print_str_lines::@4/print_str_lines::@8->print_str_lines::@5#0] -- register_copy jmp b5 - //SEG501 print_str_lines::@5 + //SEG555 print_str_lines::@5 b5: - //SEG502 [285] if((byte) print_str_lines::ch#0!=(byte) '@') goto print_str_lines::@4 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 ] ) -- vbuaa_neq_vbuc1_then_la1 + //SEG556 [306] if((byte) print_str_lines::ch#0!=(byte) '@') goto print_str_lines::@4 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 ] ) -- vbuaa_neq_vbuc1_then_la1 cmp #'@' bne b4_from_b5 - //SEG503 [286] phi from print_str_lines::@5 to print_str_lines::@9 [phi:print_str_lines::@5->print_str_lines::@9] + //SEG557 [307] phi from print_str_lines::@5 to print_str_lines::@9 [phi:print_str_lines::@5->print_str_lines::@9] b9_from_b5: jmp b9 - //SEG504 print_str_lines::@9 + //SEG558 print_str_lines::@9 b9: - //SEG505 [287] call print_ln param-assignment [ print_str_lines::str#0 print_line_cursor#18 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#0 print_line_cursor#18 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#0 print_line_cursor#18 ] ) - //SEG506 [289] phi from print_str_lines::@9 to print_ln [phi:print_str_lines::@9->print_ln] + //SEG559 [308] call print_ln param-assignment [ print_str_lines::str#0 print_line_cursor#22 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#0 print_line_cursor#22 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#0 print_line_cursor#22 ] ) + //SEG560 [310] phi from print_str_lines::@9 to print_ln [phi:print_str_lines::@9->print_ln] print_ln_from_b9: jsr print_ln - //SEG507 [288] (byte*~) print_char_cursor#61 ← (byte*) print_line_cursor#18 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#18 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#18 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#18 ] ) -- pbuz1=pbuz2 + //SEG561 [309] (byte*~) print_char_cursor#61 ← (byte*) print_line_cursor#22 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#22 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#22 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#22 ] ) -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 sta print_char_cursor+1 jmp b1_from_b9 } -//SEG508 print_ln +//SEG562 print_ln print_ln: { - //SEG509 [290] phi from print_ln print_ln::@1 to print_ln::@1 [phi:print_ln/print_ln::@1->print_ln::@1] + //SEG563 [311] phi from print_ln print_ln::@1 to print_ln::@1 [phi:print_ln/print_ln::@1->print_ln::@1] b1_from_print_ln: b1_from_b1: - //SEG510 [290] phi (byte*) print_line_cursor#17 = (byte*) print_line_cursor#16 [phi:print_ln/print_ln::@1->print_ln::@1#0] -- register_copy + //SEG564 [311] phi (byte*) print_line_cursor#21 = (byte*) print_line_cursor#2 [phi:print_ln/print_ln::@1->print_ln::@1#0] -- register_copy jmp b1 - //SEG511 print_ln::@1 + //SEG565 print_ln::@1 b1: - //SEG512 [291] (byte*) print_line_cursor#18 ← (byte*) print_line_cursor#17 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ print_line_cursor#18 print_char_cursor#31 ] ( main:2::form_init:10::print_str_lines:243::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] main:2::form_init:10::print_str_lines:247::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] ) -- pbuz1=pbuz1_plus_vbuc1 + //SEG566 [312] (byte*) print_line_cursor#22 ← (byte*) print_line_cursor#21 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ print_line_cursor#22 print_char_cursor#38 ] ( main:2::form_init:10::print_str_lines:262::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] main:2::form_init:10::print_str_lines:268::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] ) -- pbuz1=pbuz1_plus_vbuc1 lda print_line_cursor clc adc #$28 @@ -14391,7 +16304,7 @@ print_ln: { bcc !+ inc print_line_cursor+1 !: - //SEG513 [292] if((byte*) print_line_cursor#18<(byte*) print_char_cursor#31) goto print_ln::@1 [ print_line_cursor#18 print_char_cursor#31 ] ( main:2::form_init:10::print_str_lines:243::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] main:2::form_init:10::print_str_lines:247::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] ) -- pbuz1_lt_pbuz2_then_la1 + //SEG567 [313] if((byte*) print_line_cursor#22<(byte*) print_char_cursor#38) goto print_ln::@1 [ print_line_cursor#22 print_char_cursor#38 ] ( main:2::form_init:10::print_str_lines:262::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] main:2::form_init:10::print_str_lines:268::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] ) -- pbuz1_lt_pbuz2_then_la1 lda print_line_cursor+1 cmp print_char_cursor+1 bcc b1_from_b1 @@ -14401,84 +16314,139 @@ print_ln: { bcc b1_from_b1 !: jmp breturn - //SEG514 print_ln::@return + //SEG568 print_ln::@return breturn: - //SEG515 [293] return [ print_line_cursor#18 ] ( main:2::form_init:10::print_str_lines:243::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 ] main:2::form_init:10::print_str_lines:247::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 ] ) + //SEG569 [314] return [ print_line_cursor#22 ] ( main:2::form_init:10::print_str_lines:262::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 ] main:2::form_init:10::print_str_lines:268::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 ] ) rts } -//SEG516 print_set_screen +//SEG570 print_cls +print_cls: { + .label _0 = 9 + .label sc = 7 + //SEG571 [315] (byte*) print_cls::sc#0 ← (byte*) print_set_screen::screen#2 [ print_set_screen::screen#2 print_cls::sc#0 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#0 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#0 ] ) -- pbuz1=pbuz2 + lda print_set_screen.screen + sta sc + lda print_set_screen.screen+1 + sta sc+1 + //SEG572 [316] phi from print_cls print_cls::@1 to print_cls::@1 [phi:print_cls/print_cls::@1->print_cls::@1] + b1_from_print_cls: + b1_from_b1: + //SEG573 [316] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#0 [phi:print_cls/print_cls::@1->print_cls::@1#0] -- register_copy + jmp b1 + //SEG574 print_cls::@1 + b1: + //SEG575 [317] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_set_screen::screen#2 print_cls::sc#2 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#2 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#2 ] ) -- _deref_pbuz1=vbuc1 + lda #' ' + ldy #0 + sta (sc),y + //SEG576 [318] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_set_screen::screen#2 print_cls::sc#1 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#1 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#1 ] ) -- pbuz1=_inc_pbuz1 + inc sc + bne !+ + inc sc+1 + !: + //SEG577 [319] (byte*~) print_cls::$0 ← (byte*) print_set_screen::screen#2 + (word/signed word/dword/signed dword) 1000 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] ) -- pbuz1=pbuz2_plus_vwuc1 + lda print_set_screen.screen + clc + adc #<$3e8 + sta _0 + lda print_set_screen.screen+1 + adc #>$3e8 + sta _0+1 + //SEG578 [320] if((byte*) print_cls::sc#1!=(byte*~) print_cls::$0) goto print_cls::@1 [ print_set_screen::screen#2 print_cls::sc#1 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#1 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#1 ] ) -- pbuz1_neq_pbuz2_then_la1 + lda sc+1 + cmp _0+1 + bne b1_from_b1 + lda sc + cmp _0 + bne b1_from_b1 + jmp breturn + //SEG579 print_cls::@return + breturn: + //SEG580 [321] return [ print_set_screen::screen#2 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 ] ) + rts +} +//SEG581 print_set_screen print_set_screen: { .label screen = $b jmp breturn - //SEG517 print_set_screen::@return + //SEG582 print_set_screen::@return breturn: - //SEG518 [295] return [ print_set_screen::screen#2 ] ( main:2::form_init:10::print_set_screen:241 [ print_set_screen::screen#2 ] main:2::form_init:10::print_set_screen:245 [ print_set_screen::screen#2 ] ) + //SEG583 [323] return [ print_set_screen::screen#2 ] ( main:2::form_init:10::print_set_screen:258 [ print_set_screen::screen#2 ] main:2::form_init:10::print_set_screen:264 [ print_set_screen::screen#2 ] ) rts } -//SEG519 gfx_init +//SEG584 gfx_init gfx_init: { - //SEG520 [297] call gfx_init_plane_8bppchunky param-assignment [ ] ( main:2::gfx_init:8 [ ] ) - //SEG521 [299] phi from gfx_init to gfx_init_plane_8bppchunky [phi:gfx_init->gfx_init_plane_8bppchunky] - gfx_init_plane_8bppchunky_from_gfx_init: + //SEG585 [325] call gfx_init_screen_stdchar param-assignment [ ] ( main:2::gfx_init:8 [ ] ) + //SEG586 [353] phi from gfx_init to gfx_init_screen_stdchar [phi:gfx_init->gfx_init_screen_stdchar] + gfx_init_screen_stdchar_from_gfx_init: + jsr gfx_init_screen_stdchar + //SEG587 [326] phi from gfx_init to gfx_init::@1 [phi:gfx_init->gfx_init::@1] + b1_from_gfx_init: + jmp b1 + //SEG588 gfx_init::@1 + b1: + //SEG589 [327] call gfx_init_plane_8bppchunky param-assignment [ ] ( main:2::gfx_init:8 [ ] ) + //SEG590 [329] phi from gfx_init::@1 to gfx_init_plane_8bppchunky [phi:gfx_init::@1->gfx_init_plane_8bppchunky] + gfx_init_plane_8bppchunky_from_b1: jsr gfx_init_plane_8bppchunky jmp breturn - //SEG522 gfx_init::@return + //SEG591 gfx_init::@return breturn: - //SEG523 [298] return [ ] ( main:2::gfx_init:8 [ ] ) + //SEG592 [328] return [ ] ( main:2::gfx_init:8 [ ] ) rts } -//SEG524 gfx_init_plane_8bppchunky +//SEG593 gfx_init_plane_8bppchunky gfx_init_plane_8bppchunky: { .label _6 = $b .label gfxb = 9 .label x = 7 .label y = 2 - //SEG525 [300] call dtvSetCpuBankSegment1 param-assignment [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ ] ) - //SEG526 [319] phi from gfx_init_plane_8bppchunky to dtvSetCpuBankSegment1 [phi:gfx_init_plane_8bppchunky->dtvSetCpuBankSegment1] + //SEG594 [330] call dtvSetCpuBankSegment1 param-assignment [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ ] ) + //SEG595 [349] phi from gfx_init_plane_8bppchunky to dtvSetCpuBankSegment1 [phi:gfx_init_plane_8bppchunky->dtvSetCpuBankSegment1] dtvSetCpuBankSegment1_from_gfx_init_plane_8bppchunky: - //SEG527 [319] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = ((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky->dtvSetCpuBankSegment1#0] -- vbuaa=vbuc1 + //SEG596 [349] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = ((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky->dtvSetCpuBankSegment1#0] -- vbuaa=vbuc1 lda #PLANE_8BPP_CHUNKY/$4000 jsr dtvSetCpuBankSegment1 - //SEG528 [301] phi from gfx_init_plane_8bppchunky to gfx_init_plane_8bppchunky::@1 [phi:gfx_init_plane_8bppchunky->gfx_init_plane_8bppchunky::@1] + //SEG597 [331] phi from gfx_init_plane_8bppchunky to gfx_init_plane_8bppchunky::@1 [phi:gfx_init_plane_8bppchunky->gfx_init_plane_8bppchunky::@1] b1_from_gfx_init_plane_8bppchunky: - //SEG529 [301] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 = ++((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky->gfx_init_plane_8bppchunky::@1#0] -- vbuxx=vbuc1 + //SEG598 [331] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 = ++((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky->gfx_init_plane_8bppchunky::@1#0] -- vbuxx=vbuc1 ldx #PLANE_8BPP_CHUNKY/$4000+1 - //SEG530 [301] phi (byte) gfx_init_plane_8bppchunky::y#6 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_init_plane_8bppchunky->gfx_init_plane_8bppchunky::@1#1] -- vbuz1=vbuc1 + //SEG599 [331] phi (byte) gfx_init_plane_8bppchunky::y#6 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_init_plane_8bppchunky->gfx_init_plane_8bppchunky::@1#1] -- vbuz1=vbuc1 lda #0 sta y - //SEG531 [301] phi (byte*) gfx_init_plane_8bppchunky::gfxb#5 = ((byte*))(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky->gfx_init_plane_8bppchunky::@1#2] -- pbuz1=pbuc1 + //SEG600 [331] phi (byte*) gfx_init_plane_8bppchunky::gfxb#5 = ((byte*))(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky->gfx_init_plane_8bppchunky::@1#2] -- pbuz1=pbuc1 lda #<$4000 sta gfxb lda #>$4000 sta gfxb+1 jmp b1 - //SEG532 [301] phi from gfx_init_plane_8bppchunky::@5 to gfx_init_plane_8bppchunky::@1 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@1] + //SEG601 [331] phi from gfx_init_plane_8bppchunky::@5 to gfx_init_plane_8bppchunky::@1 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@1] b1_from_b5: - //SEG533 [301] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@1#0] -- register_copy - //SEG534 [301] phi (byte) gfx_init_plane_8bppchunky::y#6 = (byte) gfx_init_plane_8bppchunky::y#1 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@1#1] -- register_copy - //SEG535 [301] phi (byte*) gfx_init_plane_8bppchunky::gfxb#5 = (byte*) gfx_init_plane_8bppchunky::gfxb#1 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@1#2] -- register_copy + //SEG602 [331] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@1#0] -- register_copy + //SEG603 [331] phi (byte) gfx_init_plane_8bppchunky::y#6 = (byte) gfx_init_plane_8bppchunky::y#1 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@1#1] -- register_copy + //SEG604 [331] phi (byte*) gfx_init_plane_8bppchunky::gfxb#5 = (byte*) gfx_init_plane_8bppchunky::gfxb#1 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@1#2] -- register_copy jmp b1 - //SEG536 gfx_init_plane_8bppchunky::@1 + //SEG605 gfx_init_plane_8bppchunky::@1 b1: - //SEG537 [302] phi from gfx_init_plane_8bppchunky::@1 to gfx_init_plane_8bppchunky::@2 [phi:gfx_init_plane_8bppchunky::@1->gfx_init_plane_8bppchunky::@2] + //SEG606 [332] phi from gfx_init_plane_8bppchunky::@1 to gfx_init_plane_8bppchunky::@2 [phi:gfx_init_plane_8bppchunky::@1->gfx_init_plane_8bppchunky::@2] b2_from_b1: - //SEG538 [302] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 [phi:gfx_init_plane_8bppchunky::@1->gfx_init_plane_8bppchunky::@2#0] -- register_copy - //SEG539 [302] phi (word) gfx_init_plane_8bppchunky::x#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_init_plane_8bppchunky::@1->gfx_init_plane_8bppchunky::@2#1] -- vwuz1=vbuc1 + //SEG607 [332] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 [phi:gfx_init_plane_8bppchunky::@1->gfx_init_plane_8bppchunky::@2#0] -- register_copy + //SEG608 [332] phi (word) gfx_init_plane_8bppchunky::x#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_init_plane_8bppchunky::@1->gfx_init_plane_8bppchunky::@2#1] -- vwuz1=vbuc1 lda #<0 sta x lda #>0 sta x+1 - //SEG540 [302] phi (byte*) gfx_init_plane_8bppchunky::gfxb#3 = (byte*) gfx_init_plane_8bppchunky::gfxb#5 [phi:gfx_init_plane_8bppchunky::@1->gfx_init_plane_8bppchunky::@2#2] -- register_copy + //SEG609 [332] phi (byte*) gfx_init_plane_8bppchunky::gfxb#3 = (byte*) gfx_init_plane_8bppchunky::gfxb#5 [phi:gfx_init_plane_8bppchunky::@1->gfx_init_plane_8bppchunky::@2#2] -- register_copy jmp b2 - //SEG541 [302] phi from gfx_init_plane_8bppchunky::@3 to gfx_init_plane_8bppchunky::@2 [phi:gfx_init_plane_8bppchunky::@3->gfx_init_plane_8bppchunky::@2] + //SEG610 [332] phi from gfx_init_plane_8bppchunky::@3 to gfx_init_plane_8bppchunky::@2 [phi:gfx_init_plane_8bppchunky::@3->gfx_init_plane_8bppchunky::@2] b2_from_b3: - //SEG542 [302] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 [phi:gfx_init_plane_8bppchunky::@3->gfx_init_plane_8bppchunky::@2#0] -- register_copy - //SEG543 [302] phi (word) gfx_init_plane_8bppchunky::x#2 = (word) gfx_init_plane_8bppchunky::x#1 [phi:gfx_init_plane_8bppchunky::@3->gfx_init_plane_8bppchunky::@2#1] -- register_copy - //SEG544 [302] phi (byte*) gfx_init_plane_8bppchunky::gfxb#3 = (byte*) gfx_init_plane_8bppchunky::gfxb#1 [phi:gfx_init_plane_8bppchunky::@3->gfx_init_plane_8bppchunky::@2#2] -- register_copy + //SEG611 [332] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 [phi:gfx_init_plane_8bppchunky::@3->gfx_init_plane_8bppchunky::@2#0] -- register_copy + //SEG612 [332] phi (word) gfx_init_plane_8bppchunky::x#2 = (word) gfx_init_plane_8bppchunky::x#1 [phi:gfx_init_plane_8bppchunky::@3->gfx_init_plane_8bppchunky::@2#1] -- register_copy + //SEG613 [332] phi (byte*) gfx_init_plane_8bppchunky::gfxb#3 = (byte*) gfx_init_plane_8bppchunky::gfxb#1 [phi:gfx_init_plane_8bppchunky::@3->gfx_init_plane_8bppchunky::@2#2] -- register_copy jmp b2 - //SEG545 gfx_init_plane_8bppchunky::@2 + //SEG614 gfx_init_plane_8bppchunky::@2 b2: - //SEG546 [303] if((byte*) gfx_init_plane_8bppchunky::gfxb#3!=(word/dword/signed dword) 32768) goto gfx_init_plane_8bppchunky::@3 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) -- pbuz1_neq_vwuc1_then_la1 + //SEG615 [333] if((byte*) gfx_init_plane_8bppchunky::gfxb#3!=(word/dword/signed dword) 32768) goto gfx_init_plane_8bppchunky::@3 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) -- pbuz1_neq_vwuc1_then_la1 lda gfxb+1 cmp #>$8000 bne b3_from_b2 @@ -14486,37 +16454,37 @@ gfx_init_plane_8bppchunky: { cmp #<$8000 bne b3_from_b2 jmp b4 - //SEG547 gfx_init_plane_8bppchunky::@4 + //SEG616 gfx_init_plane_8bppchunky::@4 b4: - //SEG548 [304] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ← (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 dtvSetCpuBankSegment1::cpuBankIdx#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 dtvSetCpuBankSegment1::cpuBankIdx#1 ] ) -- vbuaa=vbuxx + //SEG617 [334] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ← (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 dtvSetCpuBankSegment1::cpuBankIdx#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 dtvSetCpuBankSegment1::cpuBankIdx#1 ] ) -- vbuaa=vbuxx txa - //SEG549 [305] call dtvSetCpuBankSegment1 param-assignment [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) - //SEG550 [319] phi from gfx_init_plane_8bppchunky::@4 to dtvSetCpuBankSegment1 [phi:gfx_init_plane_8bppchunky::@4->dtvSetCpuBankSegment1] + //SEG618 [335] call dtvSetCpuBankSegment1 param-assignment [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) + //SEG619 [349] phi from gfx_init_plane_8bppchunky::@4 to dtvSetCpuBankSegment1 [phi:gfx_init_plane_8bppchunky::@4->dtvSetCpuBankSegment1] dtvSetCpuBankSegment1_from_b4: - //SEG551 [319] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 [phi:gfx_init_plane_8bppchunky::@4->dtvSetCpuBankSegment1#0] -- register_copy + //SEG620 [349] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 [phi:gfx_init_plane_8bppchunky::@4->dtvSetCpuBankSegment1#0] -- register_copy jsr dtvSetCpuBankSegment1 jmp b8 - //SEG552 gfx_init_plane_8bppchunky::@8 + //SEG621 gfx_init_plane_8bppchunky::@8 b8: - //SEG553 [306] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ← ++ (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] ) -- vbuxx=_inc_vbuxx + //SEG622 [336] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ← ++ (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] ) -- vbuxx=_inc_vbuxx inx - //SEG554 [307] phi from gfx_init_plane_8bppchunky::@8 to gfx_init_plane_8bppchunky::@3 [phi:gfx_init_plane_8bppchunky::@8->gfx_init_plane_8bppchunky::@3] + //SEG623 [337] phi from gfx_init_plane_8bppchunky::@8 to gfx_init_plane_8bppchunky::@3 [phi:gfx_init_plane_8bppchunky::@8->gfx_init_plane_8bppchunky::@3] b3_from_b8: - //SEG555 [307] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 [phi:gfx_init_plane_8bppchunky::@8->gfx_init_plane_8bppchunky::@3#0] -- register_copy - //SEG556 [307] phi (byte*) gfx_init_plane_8bppchunky::gfxb#4 = ((byte*))(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky::@8->gfx_init_plane_8bppchunky::@3#1] -- pbuz1=pbuc1 + //SEG624 [337] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 [phi:gfx_init_plane_8bppchunky::@8->gfx_init_plane_8bppchunky::@3#0] -- register_copy + //SEG625 [337] phi (byte*) gfx_init_plane_8bppchunky::gfxb#4 = ((byte*))(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky::@8->gfx_init_plane_8bppchunky::@3#1] -- pbuz1=pbuc1 lda #<$4000 sta gfxb lda #>$4000 sta gfxb+1 jmp b3 - //SEG557 [307] phi from gfx_init_plane_8bppchunky::@2 to gfx_init_plane_8bppchunky::@3 [phi:gfx_init_plane_8bppchunky::@2->gfx_init_plane_8bppchunky::@3] + //SEG626 [337] phi from gfx_init_plane_8bppchunky::@2 to gfx_init_plane_8bppchunky::@3 [phi:gfx_init_plane_8bppchunky::@2->gfx_init_plane_8bppchunky::@3] b3_from_b2: - //SEG558 [307] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [phi:gfx_init_plane_8bppchunky::@2->gfx_init_plane_8bppchunky::@3#0] -- register_copy - //SEG559 [307] phi (byte*) gfx_init_plane_8bppchunky::gfxb#4 = (byte*) gfx_init_plane_8bppchunky::gfxb#3 [phi:gfx_init_plane_8bppchunky::@2->gfx_init_plane_8bppchunky::@3#1] -- register_copy + //SEG627 [337] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [phi:gfx_init_plane_8bppchunky::@2->gfx_init_plane_8bppchunky::@3#0] -- register_copy + //SEG628 [337] phi (byte*) gfx_init_plane_8bppchunky::gfxb#4 = (byte*) gfx_init_plane_8bppchunky::gfxb#3 [phi:gfx_init_plane_8bppchunky::@2->gfx_init_plane_8bppchunky::@3#1] -- register_copy jmp b3 - //SEG560 gfx_init_plane_8bppchunky::@3 + //SEG629 gfx_init_plane_8bppchunky::@3 b3: - //SEG561 [308] (word~) gfx_init_plane_8bppchunky::$6 ← (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ) -- vwuz1=vwuz2_plus_vbuz3 + //SEG630 [338] (word~) gfx_init_plane_8bppchunky::$6 ← (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ) -- vwuz1=vwuz2_plus_vbuz3 lda y clc adc x @@ -14524,22 +16492,22 @@ gfx_init_plane_8bppchunky: { lda #0 adc x+1 sta _6+1 - //SEG562 [309] (byte) gfx_init_plane_8bppchunky::c#0 ← ((byte)) (word~) gfx_init_plane_8bppchunky::$6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ) -- vbuaa=_byte_vwuz1 + //SEG631 [339] (byte) gfx_init_plane_8bppchunky::c#0 ← ((byte)) (word~) gfx_init_plane_8bppchunky::$6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ) -- vbuaa=_byte_vwuz1 lda _6 - //SEG563 [310] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ← (byte) gfx_init_plane_8bppchunky::c#0 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) -- _deref_pbuz1=vbuaa + //SEG632 [340] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ← (byte) gfx_init_plane_8bppchunky::c#0 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) -- _deref_pbuz1=vbuaa ldy #0 sta (gfxb),y - //SEG564 [311] (byte*) gfx_init_plane_8bppchunky::gfxb#1 ← ++ (byte*) gfx_init_plane_8bppchunky::gfxb#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 ] ) -- pbuz1=_inc_pbuz1 + //SEG633 [341] (byte*) gfx_init_plane_8bppchunky::gfxb#1 ← ++ (byte*) gfx_init_plane_8bppchunky::gfxb#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 ] ) -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG565 [312] (word) gfx_init_plane_8bppchunky::x#1 ← ++ (word) gfx_init_plane_8bppchunky::x#2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) -- vwuz1=_inc_vwuz1 + //SEG634 [342] (word) gfx_init_plane_8bppchunky::x#1 ← ++ (word) gfx_init_plane_8bppchunky::x#2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) -- vwuz1=_inc_vwuz1 inc x bne !+ inc x+1 !: - //SEG566 [313] if((word) gfx_init_plane_8bppchunky::x#1!=(word/signed word/dword/signed dword) 320) goto gfx_init_plane_8bppchunky::@2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) -- vwuz1_neq_vwuc1_then_la1 + //SEG635 [343] if((word) gfx_init_plane_8bppchunky::x#1!=(word/signed word/dword/signed dword) 320) goto gfx_init_plane_8bppchunky::@2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) -- vwuz1_neq_vwuc1_then_la1 lda x+1 cmp #>$140 bne b2_from_b3 @@ -14547,58 +16515,136 @@ gfx_init_plane_8bppchunky: { cmp #<$140 bne b2_from_b3 jmp b5 - //SEG567 gfx_init_plane_8bppchunky::@5 + //SEG636 gfx_init_plane_8bppchunky::@5 b5: - //SEG568 [314] (byte) gfx_init_plane_8bppchunky::y#1 ← ++ (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ) -- vbuz1=_inc_vbuz1 + //SEG637 [344] (byte) gfx_init_plane_8bppchunky::y#1 ← ++ (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ) -- vbuz1=_inc_vbuz1 inc y - //SEG569 [315] if((byte) gfx_init_plane_8bppchunky::y#1!=(byte/word/signed word/dword/signed dword) 200) goto gfx_init_plane_8bppchunky::@1 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ) -- vbuz1_neq_vbuc1_then_la1 + //SEG638 [345] if((byte) gfx_init_plane_8bppchunky::y#1!=(byte/word/signed word/dword/signed dword) 200) goto gfx_init_plane_8bppchunky::@1 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ) -- vbuz1_neq_vbuc1_then_la1 lda y cmp #$c8 bne b1_from_b5 - //SEG570 [316] phi from gfx_init_plane_8bppchunky::@5 to gfx_init_plane_8bppchunky::@6 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@6] + //SEG639 [346] phi from gfx_init_plane_8bppchunky::@5 to gfx_init_plane_8bppchunky::@6 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@6] b6_from_b5: jmp b6 - //SEG571 gfx_init_plane_8bppchunky::@6 + //SEG640 gfx_init_plane_8bppchunky::@6 b6: - //SEG572 [317] call dtvSetCpuBankSegment1 param-assignment [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ ] ) - //SEG573 [319] phi from gfx_init_plane_8bppchunky::@6 to dtvSetCpuBankSegment1 [phi:gfx_init_plane_8bppchunky::@6->dtvSetCpuBankSegment1] + //SEG641 [347] call dtvSetCpuBankSegment1 param-assignment [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ ] ) + //SEG642 [349] phi from gfx_init_plane_8bppchunky::@6 to dtvSetCpuBankSegment1 [phi:gfx_init_plane_8bppchunky::@6->dtvSetCpuBankSegment1] dtvSetCpuBankSegment1_from_b6: - //SEG574 [319] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = ((byte))(word/signed word/dword/signed dword) 16384/(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky::@6->dtvSetCpuBankSegment1#0] -- vbuaa=vbuc1 + //SEG643 [349] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = ((byte))(word/signed word/dword/signed dword) 16384/(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky::@6->dtvSetCpuBankSegment1#0] -- vbuaa=vbuc1 lda #$4000/$4000 jsr dtvSetCpuBankSegment1 jmp breturn - //SEG575 gfx_init_plane_8bppchunky::@return + //SEG644 gfx_init_plane_8bppchunky::@return breturn: - //SEG576 [318] return [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ ] ) + //SEG645 [348] return [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ ] ) rts } -//SEG577 dtvSetCpuBankSegment1 +//SEG646 dtvSetCpuBankSegment1 dtvSetCpuBankSegment1: { .label cpuBank = $ff - //SEG578 [320] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ← (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:300 [ ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:305 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:317 [ ] ) -- _deref_pbuc1=vbuaa + //SEG647 [350] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ← (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:330 [ ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:335 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:347 [ ] ) -- _deref_pbuc1=vbuaa sta cpuBank - //SEG579 asm { .byte$32,$dd lda$ff .byte$32,$00 } + //SEG648 asm { .byte$32,$dd lda$ff .byte$32,$00 } .byte $32, $dd lda $ff .byte $32, $00 jmp breturn - //SEG580 dtvSetCpuBankSegment1::@return + //SEG649 dtvSetCpuBankSegment1::@return breturn: - //SEG581 [322] return [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:300 [ ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:305 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:317 [ ] ) + //SEG650 [352] return [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:330 [ ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:335 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:347 [ ] ) rts } -//SEG582 keyboard_init +//SEG651 gfx_init_screen_stdchar +gfx_init_screen_stdchar: { + .label _1 = 3 + .label ch = 7 + .label cy = 2 + //SEG652 [354] phi from gfx_init_screen_stdchar to gfx_init_screen_stdchar::@1 [phi:gfx_init_screen_stdchar->gfx_init_screen_stdchar::@1] + b1_from_gfx_init_screen_stdchar: + //SEG653 [354] phi (byte*) gfx_init_screen_stdchar::ch#3 = (const byte*) VIC_SCREEN_STDCHAR#0 [phi:gfx_init_screen_stdchar->gfx_init_screen_stdchar::@1#0] -- pbuz1=pbuc1 + lda #VIC_SCREEN_STDCHAR + sta ch+1 + //SEG654 [354] phi (byte) gfx_init_screen_stdchar::cy#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_init_screen_stdchar->gfx_init_screen_stdchar::@1#1] -- vbuz1=vbuc1 + lda #0 + sta cy + jmp b1 + //SEG655 [354] phi from gfx_init_screen_stdchar::@3 to gfx_init_screen_stdchar::@1 [phi:gfx_init_screen_stdchar::@3->gfx_init_screen_stdchar::@1] + b1_from_b3: + //SEG656 [354] phi (byte*) gfx_init_screen_stdchar::ch#3 = (byte*) gfx_init_screen_stdchar::ch#1 [phi:gfx_init_screen_stdchar::@3->gfx_init_screen_stdchar::@1#0] -- register_copy + //SEG657 [354] phi (byte) gfx_init_screen_stdchar::cy#4 = (byte) gfx_init_screen_stdchar::cy#1 [phi:gfx_init_screen_stdchar::@3->gfx_init_screen_stdchar::@1#1] -- register_copy + jmp b1 + //SEG658 gfx_init_screen_stdchar::@1 + b1: + //SEG659 [355] phi from gfx_init_screen_stdchar::@1 to gfx_init_screen_stdchar::@2 [phi:gfx_init_screen_stdchar::@1->gfx_init_screen_stdchar::@2] + b2_from_b1: + //SEG660 [355] phi (byte*) gfx_init_screen_stdchar::ch#2 = (byte*) gfx_init_screen_stdchar::ch#3 [phi:gfx_init_screen_stdchar::@1->gfx_init_screen_stdchar::@2#0] -- register_copy + //SEG661 [355] phi (byte) gfx_init_screen_stdchar::cx#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_init_screen_stdchar::@1->gfx_init_screen_stdchar::@2#1] -- vbuxx=vbuc1 + ldx #0 + jmp b2 + //SEG662 [355] phi from gfx_init_screen_stdchar::@2 to gfx_init_screen_stdchar::@2 [phi:gfx_init_screen_stdchar::@2->gfx_init_screen_stdchar::@2] + b2_from_b2: + //SEG663 [355] phi (byte*) gfx_init_screen_stdchar::ch#2 = (byte*) gfx_init_screen_stdchar::ch#1 [phi:gfx_init_screen_stdchar::@2->gfx_init_screen_stdchar::@2#0] -- register_copy + //SEG664 [355] phi (byte) gfx_init_screen_stdchar::cx#2 = (byte) gfx_init_screen_stdchar::cx#1 [phi:gfx_init_screen_stdchar::@2->gfx_init_screen_stdchar::@2#1] -- register_copy + jmp b2 + //SEG665 gfx_init_screen_stdchar::@2 + b2: + //SEG666 [356] (byte~) gfx_init_screen_stdchar::$0 ← (byte) gfx_init_screen_stdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$0 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$0 ] ) -- vbuaa=vbuz1_band_vbuc1 + lda #$f + and cy + //SEG667 [357] (byte~) gfx_init_screen_stdchar::$1 ← (byte~) gfx_init_screen_stdchar::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 ] ) -- vbuz1=vbuaa_rol_4 + asl + asl + asl + asl + sta _1 + //SEG668 [358] (byte~) gfx_init_screen_stdchar::$2 ← (byte) gfx_init_screen_stdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 gfx_init_screen_stdchar::$2 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 gfx_init_screen_stdchar::$2 ] ) -- vbuaa=vbuxx_band_vbuc1 + txa + and #$f + //SEG669 [359] (byte~) gfx_init_screen_stdchar::$3 ← (byte~) gfx_init_screen_stdchar::$1 | (byte~) gfx_init_screen_stdchar::$2 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$3 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$3 ] ) -- vbuaa=vbuz1_bor_vbuaa + ora _1 + //SEG670 [360] *((byte*) gfx_init_screen_stdchar::ch#2) ← (byte~) gfx_init_screen_stdchar::$3 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 ] ) -- _deref_pbuz1=vbuaa + ldy #0 + sta (ch),y + //SEG671 [361] (byte*) gfx_init_screen_stdchar::ch#1 ← ++ (byte*) gfx_init_screen_stdchar::ch#2 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#2 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#2 ] ) -- pbuz1=_inc_pbuz1 + inc ch + bne !+ + inc ch+1 + !: + //SEG672 [362] (byte) gfx_init_screen_stdchar::cx#1 ← ++ (byte) gfx_init_screen_stdchar::cx#2 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#1 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#1 ] ) -- vbuxx=_inc_vbuxx + inx + //SEG673 [363] if((byte) gfx_init_screen_stdchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) 40) goto gfx_init_screen_stdchar::@2 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#1 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#1 ] ) -- vbuxx_neq_vbuc1_then_la1 + cpx #$28 + bne b2_from_b2 + jmp b3 + //SEG674 gfx_init_screen_stdchar::@3 + b3: + //SEG675 [364] (byte) gfx_init_screen_stdchar::cy#1 ← ++ (byte) gfx_init_screen_stdchar::cy#4 [ gfx_init_screen_stdchar::cy#1 gfx_init_screen_stdchar::ch#1 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#1 gfx_init_screen_stdchar::ch#1 ] ) -- vbuz1=_inc_vbuz1 + inc cy + //SEG676 [365] if((byte) gfx_init_screen_stdchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) 25) goto gfx_init_screen_stdchar::@1 [ gfx_init_screen_stdchar::cy#1 gfx_init_screen_stdchar::ch#1 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#1 gfx_init_screen_stdchar::ch#1 ] ) -- vbuz1_neq_vbuc1_then_la1 + lda cy + cmp #$19 + bne b1_from_b3 + jmp breturn + //SEG677 gfx_init_screen_stdchar::@return + breturn: + //SEG678 [366] return [ ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ ] ) + rts +} +//SEG679 keyboard_init keyboard_init: { - //SEG583 [323] *((const byte*) CIA1_PORT_A_DDR#0) ← (byte/word/signed word/dword/signed dword) 255 [ ] ( main:2::keyboard_init:6 [ ] ) -- _deref_pbuc1=vbuc2 + //SEG680 [367] *((const byte*) CIA1_PORT_A_DDR#0) ← (byte/word/signed word/dword/signed dword) 255 [ ] ( main:2::keyboard_init:6 [ ] ) -- _deref_pbuc1=vbuc2 lda #$ff sta CIA1_PORT_A_DDR - //SEG584 [324] *((const byte*) CIA1_PORT_B_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::keyboard_init:6 [ ] ) -- _deref_pbuc1=vbuc2 + //SEG681 [368] *((const byte*) CIA1_PORT_B_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::keyboard_init:6 [ ] ) -- _deref_pbuc1=vbuc2 lda #0 sta CIA1_PORT_B_DDR jmp breturn - //SEG585 keyboard_init::@return + //SEG682 keyboard_init::@return breturn: - //SEG586 [325] return [ ] ( main:2::keyboard_init:6 [ ] ) + //SEG683 [369] return [ ] ( main:2::keyboard_init:6 [ ] ) rts } DTV_PALETTE_DEFAULT: .byte 0, $f, $36, $be, $58, $db, $86, $ff, $29, $26, $3b, 5, 7, $df, $9a, $a @@ -14617,54 +16663,38 @@ keyboard_init: { FORM_TEXT: .text " DTV GfxExplorer MODE 0 8bpp pixel cell @"+" CONTROL PLANE A PLANE B VIC II @"+" bmm 0 patt p0 patt p0 screen s0 @"+" mcm 0 start 00 start 00 gfx g0 @"+" ecm 0 step 00 step 00 colors c0 @"+" hicol 0 mod 00 mod 00 bgcol0 00 @"+" line 0 bgcol1 00 @"+" colof 0 borof 0 bgcol2 00 @"+" chunk 0 overs 0 bgcol3 00 @"+"@" ASSEMBLER OPTIMIZATIONS -Removing instruction jmp b32 +Removing instruction jmp b33 Removing instruction jmp bend -Removing instruction jmp b19 -Removing instruction jmp b20 +Removing instruction jmp b7 +Removing instruction jmp b8 Removing instruction jmp b1 Removing instruction jmp breturn -Removing instruction jmp b6 -Removing instruction jmp b7 -Removing instruction jmp b9 -Removing instruction jmp b23 -Removing instruction jmp b11 -Removing instruction jmp b1 -Removing instruction jmp b12 Removing instruction jmp b2 -Removing instruction jmp b13 -Removing instruction jmp b3 -Removing instruction jmp b14 -Removing instruction jmp b4 -Removing instruction jmp b15 -Removing instruction jmp b5 -Removing instruction jmp b16 -Removing instruction jmp b6 -Removing instruction jmp b17 -Removing instruction jmp b7 +Removing instruction jmp b10 Removing instruction jmp b18 -Removing instruction jmp b8 +Removing instruction jmp b1 Removing instruction jmp b19 +Removing instruction jmp b2 +Removing instruction jmp b20 +Removing instruction jmp b3 +Removing instruction jmp b21 +Removing instruction jmp b4 +Removing instruction jmp b22 +Removing instruction jmp b5 +Removing instruction jmp b23 +Removing instruction jmp b6 +Removing instruction jmp b24 +Removing instruction jmp b7 +Removing instruction jmp b25 +Removing instruction jmp b8 +Removing instruction jmp b26 Removing instruction jmp b9 Removing instruction jmp b10 +Removing instruction jmp b11 Removing instruction jmp breturn -Removing instruction jmp b29 -Removing instruction jmp b1 -Removing instruction jmp b15 -Removing instruction jmp b3 -Removing instruction jmp b30 -Removing instruction jmp b31 -Removing instruction jmp b17 -Removing instruction jmp b18 -Removing instruction jmp b7 -Removing instruction jmp breturn -Removing instruction jmp b33 -Removing instruction jmp b34 -Removing instruction jmp b23 -Removing instruction jmp b24 -Removing instruction jmp b25 -Removing instruction jmp b12 -Removing instruction jmp b27 -Removing instruction jmp b32 +Removing instruction jmp b16 +Removing instruction jmp b36 +Removing instruction jmp b37 Removing instruction jmp breturn Removing instruction jmp b1 Removing instruction jmp b25 @@ -14690,15 +16720,39 @@ Removing instruction jmp b24 Removing instruction jmp breturn Removing instruction jmp breturn Removing instruction jmp breturn -Removing instruction jmp breturn Removing instruction jmp b1 +Removing instruction jmp b9 Removing instruction jmp b2 Removing instruction jmp breturn +Removing instruction jmp b7 +Removing instruction jmp b19 +Removing instruction jmp b33 +Removing instruction jmp b1 +Removing instruction jmp b16 +Removing instruction jmp b3 +Removing instruction jmp b34 +Removing instruction jmp b35 +Removing instruction jmp b18 +Removing instruction jmp b19 +Removing instruction jmp b7 +Removing instruction jmp breturn +Removing instruction jmp b37 +Removing instruction jmp b38 +Removing instruction jmp b24 +Removing instruction jmp b25 +Removing instruction jmp b26 +Removing instruction jmp b12 +Removing instruction jmp b28 +Removing instruction jmp b39 +Removing instruction jmp b36 +Removing instruction jmp breturn Removing instruction jmp b1 Removing instruction jmp b2 Removing instruction jmp b3 Removing instruction jmp b4 Removing instruction jmp b5 +Removing instruction jmp b6 +Removing instruction jmp b7 Removing instruction jmp breturn Removing instruction jmp b1 Removing instruction jmp b3 @@ -14713,9 +16767,12 @@ Removing instruction jmp b5 Removing instruction jmp b9 Removing instruction jmp b1 Removing instruction jmp breturn +Removing instruction jmp b1 Removing instruction jmp breturn Removing instruction jmp breturn Removing instruction jmp b1 +Removing instruction jmp breturn +Removing instruction jmp b1 Removing instruction jmp b2 Removing instruction jmp b4 Removing instruction jmp b8 @@ -14724,33 +16781,33 @@ Removing instruction jmp b5 Removing instruction jmp b6 Removing instruction jmp breturn Removing instruction jmp breturn +Removing instruction jmp b1 +Removing instruction jmp b2 +Removing instruction jmp b3 +Removing instruction jmp breturn Removing instruction jmp breturn Succesful ASM optimization Pass5NextJumpElimination Removing instruction lda #0 +Removing instruction lda #0 Removing instruction lda _35+1 Removing instruction lda _48+1 +Removing instruction lda #0 Removing instruction ldy #0 Removing instruction ldy #0 Removing instruction ldx form_field_idx Removing instruction ldy #0 -Removing instruction lda #0 -Removing instruction lda #0 Removing instruction lda #>0 Succesful ASM optimization Pass5UnnecesaryLoadElimination Replacing label b2_from_b1 with b2 +Replacing label b2_from_b1 with b2 Replacing label b3_from_b2 with b3 Replacing label b4_from_b3 with b4 Replacing label b5_from_b4 with b5 Replacing label b6_from_b5 with b6 Replacing label b8_from_b7 with b8 Replacing label b10_from_b10 with b10 -Replacing label b32_from_b29 with b32 -Replacing label b33_from_b18 with b33 -Replacing label b34_from_b5 with b34 -Replacing label b7_from_b34 with b33 -Replacing label breturn_from_b4 with breturn -Replacing label breturn_from_b12 with breturn -Replacing label b3_from_b2 with b3 +Replacing label b11_from_b37 with b11 +Replacing label breturn_from_b37 with breturn Replacing label b4_from_b3 with b4 Replacing label b4_from_b14 with b4 Replacing label b3_from_b4 with b3 @@ -14761,6 +16818,14 @@ Replacing label breturn_from_b29 with breturn Replacing label b4_from_b6 with b4 Replacing label b8_from_b2 with b8 Replacing label b1_from_b1 with b1 +Replacing label b2_from_b19 with b2 +Replacing label breturn_from_b19 with breturn +Replacing label b36_from_b33 with b36 +Replacing label b37_from_b19 with b37 +Replacing label b38_from_b5 with b38 +Replacing label b7_from_b38 with b37 +Replacing label b39_from_b9 with b39 +Replacing label b3_from_b2 with b3 Replacing label b1_from_b3 with b1 Replacing label b1_from_b1 with b1 Replacing label b4_from_b1 with b4 @@ -14769,53 +16834,50 @@ Replacing label b4_from_b5 with b4 Replacing label b1_from_b9 with b1 Replacing label b1_from_b1 with b1 Replacing label b1_from_b1 with b1 +Replacing label b1_from_b1 with b1 +Replacing label b1_from_b1 with b1 Replacing label b3_from_b2 with b3 Replacing label b3_from_b2 with b3 Replacing label b2_from_b3 with b2 Replacing label b2_from_b3 with b2 Replacing label b1_from_b5 with b1 +Replacing label b2_from_b2 with b2 +Replacing label b1_from_b3 with b1 Removing instruction bbegin: -Removing instruction b32_from_bbegin: -Removing instruction bend_from_b32: -Removing instruction b19_from_main: -Removing instruction gfx_init_from_b19: -Removing instruction b20_from_b19: -Removing instruction form_init_from_b20: -Removing instruction b6_from_b4: -Removing instruction b9_from_b7: -Removing instruction b23_from_b9: -Removing instruction b11_from_gfx_mode: -Removing instruction b1_from_b11: -Removing instruction b2_from_b1: -Removing instruction b2_from_b12: -Removing instruction b3_from_b13: -Removing instruction b3_from_b2: -Removing instruction b4_from_b14: -Removing instruction b4_from_b3: -Removing instruction b5_from_b15: -Removing instruction b5_from_b4: -Removing instruction b6_from_b16: -Removing instruction b6_from_b5: -Removing instruction b17_from_b6: -Removing instruction b7_from_b17: -Removing instruction b8_from_b18: +Removing instruction b33_from_bbegin: +Removing instruction bend_from_b33: +Removing instruction b7_from_main: +Removing instruction gfx_init_from_b7: Removing instruction b8_from_b7: -Removing instruction b19_from_b8: -Removing instruction b9_from_b19: -Removing instruction b10_from_b10: -Removing instruction b3_from_b15: +Removing instruction form_init_from_b8: +Removing instruction b2_from_b1: +Removing instruction b10_from_b2: +Removing instruction b18_from_gfx_mode: +Removing instruction b1_from_b18: +Removing instruction b2_from_b1: +Removing instruction b2_from_b19: Removing instruction b3_from_b2: -Removing instruction keyboard_event_scan_from_b3: -Removing instruction b30_from_b3: -Removing instruction breturn_from_b7: -Removing instruction breturn_from_b12: -Removing instruction breturn_from_b4: -Removing instruction b33_from_b18: -Removing instruction b7_from_b33: -Removing instruction b7_from_b34: -Removing instruction b34_from_b5: -Removing instruction b32_from_b29: -Removing instruction b1_from_b32: +Removing instruction b3_from_b20: +Removing instruction b4_from_b21: +Removing instruction b4_from_b3: +Removing instruction b5_from_b22: +Removing instruction b5_from_b4: +Removing instruction b6_from_b23: +Removing instruction b6_from_b5: +Removing instruction b24_from_b6: +Removing instruction b7_from_b24: +Removing instruction b8_from_b25: +Removing instruction b8_from_b7: +Removing instruction b26_from_b8: +Removing instruction b9_from_b26: +Removing instruction b10_from_b10: +Removing instruction b11_from_b10: +Removing instruction b11_from_b37: +Removing instruction breturn_from_b11: +Removing instruction breturn_from_b37: +Removing instruction b16_from_b14: +Removing instruction keyboard_event_scan_from_b16: +Removing instruction b36_from_b16: Removing instruction b1_from_b8: Removing instruction b3_from_b4: Removing instruction b4_from_b14: @@ -14838,16 +16900,36 @@ Removing instruction keyboard_event_pressed_from_b11: Removing instruction breturn_from_b24: Removing instruction breturn_from_b29: Removing instruction b1_from_b1: -Removing instruction b1_from_form_init: -Removing instruction print_str_lines_from_b1: -Removing instruction b2_from_b1: -Removing instruction print_set_screen_from_b2: +Removing instruction b2_from_b19: +Removing instruction b2_from_b9: +Removing instruction breturn_from_b19: +Removing instruction breturn_from_b2: +Removing instruction b7_from_b5: +Removing instruction b3_from_b16: Removing instruction b3_from_b2: -Removing instruction print_str_lines_from_b3: +Removing instruction keyboard_event_scan_from_b3: +Removing instruction b34_from_b3: +Removing instruction breturn_from_b7: +Removing instruction b37_from_b19: +Removing instruction b7_from_b37: +Removing instruction b7_from_b38: +Removing instruction b38_from_b5: +Removing instruction breturn_from_b12: +Removing instruction b39_from_b9: +Removing instruction b36_from_b33: +Removing instruction b1_from_b36: +Removing instruction b1_from_form_init: +Removing instruction b2_from_b1: +Removing instruction print_str_lines_from_b2: +Removing instruction b3_from_b2: +Removing instruction print_set_screen_from_b3: Removing instruction b4_from_b3: -Removing instruction form_set_screen_from_b4: Removing instruction b5_from_b4: -Removing instruction form_render_values_from_b5: +Removing instruction print_str_lines_from_b5: +Removing instruction b6_from_b5: +Removing instruction form_set_screen_from_b6: +Removing instruction b7_from_b6: +Removing instruction form_render_values_from_b7: Removing instruction b1_from_b3: Removing instruction b1_from_b1: Removing instruction b1_from_print_str_lines: @@ -14860,48 +16942,41 @@ Removing instruction b9_from_b5: Removing instruction print_ln_from_b9: Removing instruction b1_from_print_ln: Removing instruction b1_from_b1: +Removing instruction b1_from_print_cls: +Removing instruction b1_from_b1: +Removing instruction b1_from_gfx_init: +Removing instruction gfx_init_plane_8bppchunky_from_b1: Removing instruction b1_from_b5: Removing instruction b2_from_b1: Removing instruction b2_from_b3: Removing instruction b3_from_b2: Removing instruction b6_from_b5: Removing instruction dtvSetCpuBankSegment1_from_b6: +Removing instruction b1_from_b3: +Removing instruction b2_from_b1: +Removing instruction b2_from_b2: Succesful ASM optimization Pass5RedundantLabelElimination -Removing instruction b32: +Removing instruction b33: Removing instruction bend: +Removing instruction b7: +Removing instruction b8: +Removing instruction b1_from_b8: +Removing instruction breturn: +Removing instruction b10: +Removing instruction b1_from_b10: +Removing instruction b18: Removing instruction b19: Removing instruction b20: -Removing instruction b1_from_b20: -Removing instruction breturn: -Removing instruction b6: -Removing instruction b9: -Removing instruction b23: -Removing instruction b1_from_b23: -Removing instruction b11: -Removing instruction b12: -Removing instruction b13: -Removing instruction b14: -Removing instruction b15: -Removing instruction b16: -Removing instruction b17: -Removing instruction b18: -Removing instruction b19: -Removing instruction b10_from_b9: -Removing instruction breturn: -Removing instruction form_field_ptr_from_form_control: -Removing instruction b29: -Removing instruction b1_from_b29: -Removing instruction b15: -Removing instruction b30: -Removing instruction b31: -Removing instruction b17: -Removing instruction b18: -Removing instruction b7_from_b18: -Removing instruction b7_from_b5: +Removing instruction b21: +Removing instruction b22: Removing instruction b23: Removing instruction b24: Removing instruction b25: -Removing instruction b27: +Removing instruction b26: +Removing instruction b10_from_b9: +Removing instruction b16: +Removing instruction b36: +Removing instruction b37: Removing instruction breturn_from_keyboard_event_get: Removing instruction breturn_from_b1: Removing instruction b1_from_keyboard_event_scan: @@ -14922,9 +16997,25 @@ Removing instruction b29: Removing instruction b24: Removing instruction breturn: Removing instruction breturn: -Removing instruction breturn: Removing instruction b1_from_form_mode: -Removing instruction b2: +Removing instruction b9: +Removing instruction b7: +Removing instruction b19: +Removing instruction form_field_ptr_from_form_control: +Removing instruction b33: +Removing instruction b1_from_b33: +Removing instruction b16: +Removing instruction b34: +Removing instruction b35: +Removing instruction b18: +Removing instruction b19: +Removing instruction b7_from_b19: +Removing instruction b7_from_b5: +Removing instruction b24: +Removing instruction b25: +Removing instruction b26: +Removing instruction b28: +Removing instruction breturn_from_b9: Removing instruction breturn: Removing instruction print_set_screen_from_form_init: Removing instruction b1: @@ -14932,6 +17023,8 @@ Removing instruction b2: Removing instruction b3: Removing instruction b4: Removing instruction b5: +Removing instruction b6: +Removing instruction b7: Removing instruction breturn: Removing instruction b1_from_form_render_values: Removing instruction form_field_ptr_from_b1: @@ -14944,7 +17037,9 @@ Removing instruction b8: Removing instruction b9: Removing instruction breturn: Removing instruction breturn: -Removing instruction gfx_init_plane_8bppchunky_from_gfx_init: +Removing instruction breturn: +Removing instruction gfx_init_screen_stdchar_from_gfx_init: +Removing instruction b1: Removing instruction breturn: Removing instruction dtvSetCpuBankSegment1_from_gfx_init_plane_8bppchunky: Removing instruction b1_from_gfx_init_plane_8bppchunky: @@ -14956,24 +17051,30 @@ Removing instruction b5: Removing instruction b6: Removing instruction breturn: Removing instruction breturn: +Removing instruction b1_from_gfx_init_screen_stdchar: +Removing instruction b3: +Removing instruction breturn: Removing instruction breturn: Succesful ASM optimization Pass5UnusedLabelElimination -Skipping double jump to b4 in jmp b1 -Skipping double jump to b1 in bpl b32 -Skipping double jump to b7 in bne b33 -Skipping double jump to b33 in bne b34 -Skipping double jump to b7 in jmp b33 +Skipping double jump to b2 in jmp b1 +Skipping double jump to b14 in bne b11 +Skipping double jump to b5 in beq b2 +Skipping double jump to b1 in bpl b36 +Skipping double jump to b7 in bne b37 +Skipping double jump to b37 in bne b38 +Skipping double jump to b7 in jmp b37 +Skipping double jump to breturn_from_b39 in bne b39 Succesful ASM optimization Pass5DoubleJumpElimination Removing unreachable instruction rts Succesful ASM optimization Pass5UnreachableCodeElimination -Relabelling long label b1_from_gfx_mode to b11 -Relabelling long label b7_from_b6 to b12 -Relabelling long label b9_from_b8 to b13 +Relabelling long label b1_from_gfx_mode to b12 +Relabelling long label b7_from_b6 to b13 +Relabelling long label b9_from_b8 to b15 Relabelling long label b9_from_b26 to b5 +Relabelling long label breturn_from_b39 to b6 Succesful ASM optimization Pass5RelabelLongLabels -Removing instruction jmp b4 +Removing instruction jmp b2 Removing instruction jmp b10 -Removing instruction jmp breturn Removing instruction jmp b1 Removing instruction jmp b3 Removing instruction jmp b1 @@ -14982,6 +17083,8 @@ Removing instruction jmp b1 Removing instruction jmp b1 Removing instruction jmp b2 Removing instruction jmp b3 +Removing instruction jmp b1 +Removing instruction jmp b2 Succesful ASM optimization Pass5NextJumpElimination Replacing instruction lda #0 with TYA Removing instruction ldy form_field_idx @@ -14989,23 +17092,27 @@ Removing instruction ldy form_field_idx Succesful ASM optimization Pass5UnnecesaryLoadElimination Removing instruction b1: Succesful ASM optimization Pass5RedundantLabelElimination -Removing instruction b34: -Removing instruction b32: +Removing instruction b11: +Removing instruction b2: +Removing instruction b38: +Removing instruction b39: +Removing instruction b36: Succesful ASM optimization Pass5UnusedLabelElimination -Skipping double jump to b7 in bne b33 +Skipping double jump to b7 in bne b37 Succesful ASM optimization Pass5DoubleJumpElimination Removing unreachable instruction jmp b7 +Removing unreachable instruction jmp b6 Removing unreachable instruction jmp b1 Succesful ASM optimization Pass5UnreachableCodeElimination -Removing instruction b33: +Removing instruction b37: Succesful ASM optimization Pass5UnusedLabelElimination Removing unreachable instruction jmp b7 Succesful ASM optimization Pass5UnreachableCodeElimination -Fixing long branch [362] bpl b2 to bmi -Fixing long branch [471] beq b2 to bne +Fixing long branch [376] beq b2 to bne +Fixing long branch [545] bpl b2 to bmi FINAL SYMBOL TABLE -(label) @32 +(label) @33 (label) @begin (label) @end (byte*) BGCOL @@ -15018,8 +17125,6 @@ FINAL SYMBOL TABLE (const byte*) BGCOL3#0 BGCOL3 = ((byte*))(word/dword/signed dword) 53283 (byte*) BGCOL4 (const byte*) BGCOL4#0 BGCOL4 = ((byte*))(word/dword/signed dword) 53284 -(byte*) BORDERCOL -(const byte*) BORDERCOL#0 BORDERCOL = ((byte*))(word/dword/signed dword) 53280 (byte*) CIA1_PORT_A (const byte*) CIA1_PORT_A#0 CIA1_PORT_A = ((byte*))(word/dword/signed dword) 56320 (byte*) CIA1_PORT_A_DDR @@ -15094,8 +17199,6 @@ FINAL SYMBOL TABLE (const string) FORM_COLS#0 FORM_COLS = (string) "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@"+(string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+(string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+(string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+(string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+(string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+(string) " nnnnnnn ooooooooo @"+(string) " nnnnnnn nnnnnnnn ooooooooo @"+(string) " nnnnnnn nnnnnnnn ooooooooo @"+(string) "@" (signed byte) FORM_CURSOR_BLINK (const signed byte) FORM_CURSOR_BLINK#0 FORM_CURSOR_BLINK = (byte/signed byte/word/signed word/dword/signed dword) 40 -(word) FORM_OFFSET -(const word) FORM_OFFSET#0 FORM_OFFSET = (byte/signed byte/word/signed word/dword/signed dword) 16*(byte/signed byte/word/signed word/dword/signed dword) 40 (byte*) FORM_SCREEN (const byte*) FORM_SCREEN#0 FORM_SCREEN = ((byte*))(word/dword/signed dword) 32768 (byte[]) FORM_TEXT @@ -15122,6 +17225,8 @@ FINAL SYMBOL TABLE (const byte) KEY_MODIFIER_SHIFT#0 KEY_MODIFIER_SHIFT = (const byte) KEY_MODIFIER_LSHIFT#0|(const byte) KEY_MODIFIER_RSHIFT#0 (byte) KEY_RSHIFT (const byte) KEY_RSHIFT#0 KEY_RSHIFT = (byte/signed byte/word/signed word/dword/signed dword) 52 +(byte) KEY_SPACE +(const byte) KEY_SPACE#0 KEY_SPACE = (byte/signed byte/word/signed word/dword/signed dword) 60 (dword) PLANE_8BPP_CHUNKY (const dword) PLANE_8BPP_CHUNKY#0 PLANE_8BPP_CHUNKY = (dword/signed dword) 131072 (byte*) RASTER @@ -15144,6 +17249,8 @@ FINAL SYMBOL TABLE (const byte*) VIC_MEMORY#0 VIC_MEMORY = ((byte*))(word/dword/signed dword) 53272 (byte) VIC_RSEL (const byte) VIC_RSEL#0 VIC_RSEL = (byte/signed byte/word/signed word/dword/signed dword) 8 +(byte*) VIC_SCREEN_STDCHAR +(const byte*) VIC_SCREEN_STDCHAR#0 VIC_SCREEN_STDCHAR = ((byte*))(word/dword/signed dword) 33792 (void()) dtvSetCpuBankSegment1((byte) dtvSetCpuBankSegment1::cpuBankIdx) (label) dtvSetCpuBankSegment1::@return (byte*) dtvSetCpuBankSegment1::cpuBank @@ -15175,7 +17282,7 @@ FINAL SYMBOL TABLE (const byte*) form_b_step_hi#0 form_b_step_hi = (const byte[]) form_fields_val#0+(byte/signed byte/word/signed word/dword/signed dword) 20 (byte*) form_b_step_lo (const byte*) form_b_step_lo#0 form_b_step_lo = (const byte[]) form_fields_val#0+(byte/signed byte/word/signed word/dword/signed dword) 21 -(void()) form_control() +(byte()) form_control() (byte~) form_control::$12 reg byte a 4.0 (byte~) form_control::$13 reg byte a 4.0 (byte~) form_control::$24 reg byte a 4.0 @@ -15184,29 +17291,34 @@ FINAL SYMBOL TABLE (label) form_control::@1 (label) form_control::@10 (label) form_control::@12 -(label) form_control::@15 -(label) form_control::@17 +(label) form_control::@16 (label) form_control::@18 +(label) form_control::@19 (label) form_control::@2 -(label) form_control::@23 (label) form_control::@24 (label) form_control::@25 -(label) form_control::@27 -(label) form_control::@29 +(label) form_control::@26 +(label) form_control::@28 (label) form_control::@3 -(label) form_control::@30 -(label) form_control::@31 -(label) form_control::@32 (label) form_control::@33 (label) form_control::@34 +(label) form_control::@35 +(label) form_control::@36 +(label) form_control::@37 +(label) form_control::@38 +(label) form_control::@39 (label) form_control::@4 (label) form_control::@5 (label) form_control::@7 +(label) form_control::@9 (label) form_control::@return (byte*) form_control::field (byte*) form_control::field#0 field zp ZP_WORD:7 0.5925925925925926 (byte) form_control::key_event -(byte) form_control::key_event#0 reg byte a 3.0 +(byte) form_control::key_event#0 reg byte a 2.6666666666666665 +(byte) form_control::return +(byte) form_control::return#0 reg byte a 202.0 +(byte) form_control::return#2 reg byte x 33.666666666666664 (byte*) form_ctrl_bmm (const byte*) form_ctrl_bmm#0 form_ctrl_bmm = (const byte[]) form_fields_val#0+(byte/signed byte/word/signed word/dword/signed dword) 1 (byte*) form_ctrl_borof @@ -15226,16 +17338,20 @@ FINAL SYMBOL TABLE (byte*) form_ctrl_overs (const byte*) form_ctrl_overs#0 form_ctrl_overs = (const byte[]) form_fields_val#0+(byte/signed byte/word/signed word/dword/signed dword) 9 (signed byte) form_cursor_count -(signed byte) form_cursor_count#1 form_cursor_count zp ZP_BYTE:2 1.1818181818181819 -(signed byte) form_cursor_count#11 form_cursor_count zp ZP_BYTE:2 0.34782608695652173 -(signed byte) form_cursor_count#12 form_cursor_count zp ZP_BYTE:2 3.0 -(signed byte) form_cursor_count#3 form_cursor_count zp ZP_BYTE:2 2.0 +(signed byte) form_cursor_count#1 form_cursor_count zp ZP_BYTE:5 0.7647058823529412 +(signed byte) form_cursor_count#13 form_cursor_count zp ZP_BYTE:5 42.599999999999994 +(signed byte) form_cursor_count#15 form_cursor_count zp ZP_BYTE:5 0.4 +(signed byte) form_cursor_count#16 form_cursor_count zp ZP_BYTE:5 34.66666666666667 +(signed byte) form_cursor_count#21 form_cursor_count zp ZP_BYTE:5 25.75 +(signed byte) form_cursor_count#5 form_cursor_count zp ZP_BYTE:5 2.0 (byte) form_field_idx -(byte) form_field_idx#1 form_field_idx zp ZP_BYTE:3 1.0487804878048785 -(byte) form_field_idx#14 form_field_idx zp ZP_BYTE:3 3.4 -(byte) form_field_idx#24 form_field_idx zp ZP_BYTE:3 6.0 -(byte) form_field_idx#3 form_field_idx zp ZP_BYTE:3 2.0 -(byte) form_field_idx#34 form_field_idx zp ZP_BYTE:3 2.0 +(byte) form_field_idx#1 form_field_idx zp ZP_BYTE:6 0.7647058823529412 +(byte) form_field_idx#14 form_field_idx zp ZP_BYTE:6 42.599999999999994 +(byte) form_field_idx#18 form_field_idx zp ZP_BYTE:6 35.00000000000001 +(byte) form_field_idx#28 form_field_idx zp ZP_BYTE:6 5.949999999999997 +(byte) form_field_idx#32 form_field_idx zp ZP_BYTE:6 6.0 +(byte) form_field_idx#43 form_field_idx zp ZP_BYTE:6 2.0 +(byte) form_field_idx#44 form_field_idx zp ZP_BYTE:6 2.0 (byte*()) form_field_ptr((byte) form_field_ptr::field_idx) (word~) form_field_ptr::$2 $2 zp ZP_WORD:7 1.0 (label) form_field_ptr::@return @@ -15269,14 +17385,21 @@ FINAL SYMBOL TABLE (label) form_init::@3 (label) form_init::@4 (label) form_init::@5 +(label) form_init::@6 +(label) form_init::@7 (label) form_init::@return (byte[25]) form_line_hi (const byte[25]) form_line_hi#0 form_line_hi = { fill( 25, 0) } (byte[25]) form_line_lo (const byte[25]) form_line_lo#0 form_line_lo = { fill( 25, 0) } (void()) form_mode() +(byte~) form_mode::$25 reg byte a 202.0 (label) form_mode::@1 +(label) form_mode::@19 (label) form_mode::@2 +(label) form_mode::@5 +(label) form_mode::@7 +(label) form_mode::@9 (label) form_mode::@return (byte) form_mode::i (byte) form_mode::i#1 reg byte x 151.5 @@ -15299,7 +17422,6 @@ FINAL SYMBOL TABLE (byte*) form_set_screen::line#1 line zp ZP_WORD:7 7.333333333333333 (byte*) form_set_screen::line#2 line zp ZP_WORD:7 8.8 (byte*) form_set_screen::screen -(const byte*) form_set_screen::screen#0 screen = (const byte*) FORM_SCREEN#0+(const word) FORM_OFFSET#0 (byte) form_set_screen::y (byte) form_set_screen::y#1 reg byte x 16.5 (byte) form_set_screen::y#2 reg byte x 7.333333333333333 @@ -15320,6 +17442,7 @@ FINAL SYMBOL TABLE (byte*) form_vic_bg3_lo (const byte*) form_vic_bg3_lo#0 form_vic_bg3_lo = (const byte[]) form_fields_val#0+(byte/signed byte/word/signed word/dword/signed dword) 34 (void()) gfx_init() +(label) gfx_init::@1 (label) gfx_init::@return (void()) gfx_init_plane_8bppchunky() (word~) gfx_init_plane_8bppchunky::$6 $6 zp ZP_WORD:11 202.0 @@ -15349,6 +17472,25 @@ FINAL SYMBOL TABLE (byte) gfx_init_plane_8bppchunky::y (byte) gfx_init_plane_8bppchunky::y#1 y zp ZP_BYTE:2 16.5 (byte) gfx_init_plane_8bppchunky::y#6 y zp ZP_BYTE:2 9.461538461538462 +(void()) gfx_init_screen_stdchar() +(byte~) gfx_init_screen_stdchar::$0 reg byte a 202.0 +(byte~) gfx_init_screen_stdchar::$1 $1 zp ZP_BYTE:3 101.0 +(byte~) gfx_init_screen_stdchar::$2 reg byte a 202.0 +(byte~) gfx_init_screen_stdchar::$3 reg byte a 202.0 +(label) gfx_init_screen_stdchar::@1 +(label) gfx_init_screen_stdchar::@2 +(label) gfx_init_screen_stdchar::@3 +(label) gfx_init_screen_stdchar::@return +(byte*) gfx_init_screen_stdchar::ch +(byte*) gfx_init_screen_stdchar::ch#1 ch zp ZP_WORD:7 42.599999999999994 +(byte*) gfx_init_screen_stdchar::ch#2 ch zp ZP_WORD:7 52.33333333333333 +(byte*) gfx_init_screen_stdchar::ch#3 ch zp ZP_WORD:7 22.0 +(byte) gfx_init_screen_stdchar::cx +(byte) gfx_init_screen_stdchar::cx#1 reg byte x 151.5 +(byte) gfx_init_screen_stdchar::cx#2 reg byte x 43.285714285714285 +(byte) gfx_init_screen_stdchar::cy +(byte) gfx_init_screen_stdchar::cy#1 cy zp ZP_BYTE:2 16.5 +(byte) gfx_init_screen_stdchar::cy#4 cy zp ZP_BYTE:2 12.299999999999999 (void()) gfx_mode() (byte~) gfx_mode::$29 reg byte a 4.0 (word~) gfx_mode::$33 $33 zp ZP_WORD:7 4.0 @@ -15383,16 +17525,21 @@ FINAL SYMBOL TABLE (label) gfx_mode::@1 (label) gfx_mode::@10 (label) gfx_mode::@11 -(label) gfx_mode::@12 -(label) gfx_mode::@13 (label) gfx_mode::@14 -(label) gfx_mode::@15 (label) gfx_mode::@16 -(label) gfx_mode::@17 (label) gfx_mode::@18 (label) gfx_mode::@19 (label) gfx_mode::@2 +(label) gfx_mode::@20 +(label) gfx_mode::@21 +(label) gfx_mode::@22 +(label) gfx_mode::@23 +(label) gfx_mode::@24 +(label) gfx_mode::@25 +(label) gfx_mode::@26 (label) gfx_mode::@3 +(label) gfx_mode::@36 +(label) gfx_mode::@37 (label) gfx_mode::@4 (label) gfx_mode::@5 (label) gfx_mode::@6 @@ -15415,6 +17562,8 @@ FINAL SYMBOL TABLE (byte) gfx_mode::i (byte) gfx_mode::i#1 reg byte x 151.5 (byte) gfx_mode::i#2 reg byte x 202.0 +(byte) gfx_mode::keyboard_event +(byte) gfx_mode::keyboard_event#0 reg byte a 202.0 (dword) gfx_mode::plane_a (dword) gfx_mode::plane_a#0 plane_a zp ZP_DWORD:13 1.1428571428571428 (byte) gfx_mode::plane_a_offs @@ -15434,14 +17583,15 @@ FINAL SYMBOL TABLE (label) keyboard_event_get::@return (byte) keyboard_event_get::return (byte) keyboard_event_get::return#0 reg byte a 4.0 -(byte) keyboard_event_get::return#2 reg byte a 1.3333333333333333 -(byte) keyboard_event_get::return#3 reg byte a 4.0 +(byte) keyboard_event_get::return#2 reg byte a 26.25 +(byte) keyboard_event_get::return#3 reg byte a 202.0 +(byte) keyboard_event_get::return#4 reg byte a 4.0 (byte()) keyboard_event_pressed((byte) keyboard_event_pressed::keycode) (byte~) keyboard_event_pressed::$0 reg byte a 4.0 (byte~) keyboard_event_pressed::$1 reg byte a 4.0 (label) keyboard_event_pressed::@return (byte) keyboard_event_pressed::keycode -(byte) keyboard_event_pressed::keycode#4 keycode zp ZP_BYTE:4 1.3333333333333333 +(byte) keyboard_event_pressed::keycode#4 keycode zp ZP_BYTE:2 1.3333333333333333 (byte) keyboard_event_pressed::return (byte) keyboard_event_pressed::return#0 reg byte a 4.0 (byte) keyboard_event_pressed::return#1 reg byte a 4.0 @@ -15449,15 +17599,15 @@ FINAL SYMBOL TABLE (byte) keyboard_event_pressed::return#2 reg byte a 4.0 (byte) keyboard_event_pressed::return#3 reg byte a 4.0 (byte) keyboard_event_pressed::row_bits -(byte) keyboard_event_pressed::row_bits#0 row_bits zp ZP_BYTE:5 2.0 +(byte) keyboard_event_pressed::row_bits#0 reg byte y 2.0 (void()) keyboard_event_scan() -(byte/word/dword~) keyboard_event_scan::$12 reg byte a 2002.0 +(byte/word/dword~) keyboard_event_scan::$12 reg byte a 20002.0 (byte~) keyboard_event_scan::$16 reg byte a 4.0 (byte~) keyboard_event_scan::$20 reg byte a 4.0 (byte~) keyboard_event_scan::$24 reg byte a 4.0 (byte~) keyboard_event_scan::$28 reg byte a 4.0 -(byte~) keyboard_event_scan::$3 reg byte a 2002.0 -(byte~) keyboard_event_scan::$4 reg byte a 2002.0 +(byte~) keyboard_event_scan::$3 reg byte a 20002.0 +(byte~) keyboard_event_scan::$4 reg byte a 20002.0 (label) keyboard_event_scan::@1 (label) keyboard_event_scan::@10 (label) keyboard_event_scan::@11 @@ -15483,33 +17633,38 @@ FINAL SYMBOL TABLE (label) keyboard_event_scan::@9 (label) keyboard_event_scan::@return (byte) keyboard_event_scan::col -(byte) keyboard_event_scan::col#1 reg byte x 1501.5 -(byte) keyboard_event_scan::col#2 reg byte x 286.0 +(byte) keyboard_event_scan::col#1 reg byte x 15001.5 +(byte) keyboard_event_scan::col#2 reg byte x 2857.4285714285716 (byte) keyboard_event_scan::event_type -(byte) keyboard_event_scan::event_type#0 reg byte a 2002.0 +(byte) keyboard_event_scan::event_type#0 reg byte a 20002.0 (byte) keyboard_event_scan::keycode -(byte) keyboard_event_scan::keycode#1 keycode zp ZP_BYTE:5 202.0 -(byte) keyboard_event_scan::keycode#10 keycode zp ZP_BYTE:5 315.7692307692308 -(byte) keyboard_event_scan::keycode#11 keycode zp ZP_BYTE:5 50.5 -(byte) keyboard_event_scan::keycode#14 keycode zp ZP_BYTE:5 101.0 -(byte) keyboard_event_scan::keycode#15 keycode zp ZP_BYTE:5 525.75 +(byte) keyboard_event_scan::keycode#1 keycode zp ZP_BYTE:3 2002.0 +(byte) keyboard_event_scan::keycode#10 keycode zp ZP_BYTE:3 3154.230769230769 +(byte) keyboard_event_scan::keycode#11 keycode zp ZP_BYTE:3 500.5 +(byte) keyboard_event_scan::keycode#14 keycode zp ZP_BYTE:3 1001.0 +(byte) keyboard_event_scan::keycode#15 keycode zp ZP_BYTE:3 5250.75 (byte) keyboard_event_scan::row -(byte) keyboard_event_scan::row#1 row zp ZP_BYTE:4 151.5 -(byte) keyboard_event_scan::row#2 row zp ZP_BYTE:4 60.239999999999995 +(byte) keyboard_event_scan::row#1 row zp ZP_BYTE:2 1501.5 +(byte) keyboard_event_scan::row#2 row zp ZP_BYTE:2 600.24 (byte) keyboard_event_scan::row_scan -(byte) keyboard_event_scan::row_scan#0 row_scan zp ZP_BYTE:17 128.05555555555557 +(byte) keyboard_event_scan::row_scan#0 row_scan zp ZP_BYTE:17 1278.0555555555554 (byte[8]) keyboard_events (const byte[8]) keyboard_events#0 keyboard_events = { fill( 8, 0) } (byte) keyboard_events_size -(byte) keyboard_events_size#1 keyboard_events_size zp ZP_BYTE:6 2002.0 -(byte) keyboard_events_size#12 keyboard_events_size zp ZP_BYTE:6 810.9000000000001 -(byte) keyboard_events_size#15 keyboard_events_size zp ZP_BYTE:6 9.65625 -(byte) keyboard_events_size#18 keyboard_events_size zp ZP_BYTE:6 0.46875 -(byte) keyboard_events_size#2 keyboard_events_size zp ZP_BYTE:6 2002.0 -(byte) keyboard_events_size#20 keyboard_events_size zp ZP_BYTE:6 0.5909090909090909 -(byte) keyboard_events_size#37 keyboard_events_size zp ZP_BYTE:6 43.57142857142858 -(byte) keyboard_events_size#38 keyboard_events_size zp ZP_BYTE:6 1021.2 -(byte) keyboard_events_size#4 keyboard_events_size zp ZP_BYTE:6 3.0 +(byte) keyboard_events_size#1 keyboard_events_size zp ZP_BYTE:4 20002.0 +(byte) keyboard_events_size#104 keyboard_events_size zp ZP_BYTE:4 105.0 +(byte) keyboard_events_size#105 keyboard_events_size zp ZP_BYTE:4 88.5 +(byte) keyboard_events_size#11 keyboard_events_size zp ZP_BYTE:4 71.0 +(byte) keyboard_events_size#111 keyboard_events_size zp ZP_BYTE:4 10201.2 +(byte) keyboard_events_size#112 keyboard_events_size zp ZP_BYTE:4 429.2857142857143 +(byte) keyboard_events_size#13 keyboard_events_size zp ZP_BYTE:4 3.4431818181818183 +(byte) keyboard_events_size#18 keyboard_events_size zp ZP_BYTE:4 8100.9000000000015 +(byte) keyboard_events_size#2 keyboard_events_size zp ZP_BYTE:4 20002.0 +(byte) keyboard_events_size#24 keyboard_events_size zp ZP_BYTE:4 10.461538461538462 +(byte) keyboard_events_size#27 keyboard_events_size zp ZP_BYTE:4 0.7647058823529412 +(byte) keyboard_events_size#4 keyboard_events_size zp ZP_BYTE:4 3.0 +(byte) keyboard_events_size#45 keyboard_events_size zp ZP_BYTE:4 101.0 +(byte) keyboard_events_size#47 keyboard_events_size zp ZP_BYTE:4 11.444444444444443 (void()) keyboard_init() (label) keyboard_init::@return (byte[8]) keyboard_matrix_col_bitmask @@ -15517,46 +17672,56 @@ FINAL SYMBOL TABLE (byte()) keyboard_matrix_read((byte) keyboard_matrix_read::rowid) (label) keyboard_matrix_read::@return (byte) keyboard_matrix_read::return -(byte) keyboard_matrix_read::return#0 reg byte a 34.33333333333333 -(byte) keyboard_matrix_read::return#2 reg byte a 202.0 +(byte) keyboard_matrix_read::return#0 reg byte a 334.33333333333337 +(byte) keyboard_matrix_read::return#2 reg byte a 2002.0 (byte) keyboard_matrix_read::row_pressed_bits (byte) keyboard_matrix_read::rowid -(byte) keyboard_matrix_read::rowid#0 reg byte x 103.0 +(byte) keyboard_matrix_read::rowid#0 reg byte x 1003.0 (byte[8]) keyboard_matrix_row_bitmask (const byte[8]) keyboard_matrix_row_bitmask#0 keyboard_matrix_row_bitmask = { (byte/word/signed word/dword/signed dword) 254, (byte/word/signed word/dword/signed dword) 253, (byte/word/signed word/dword/signed dword) 251, (byte/word/signed word/dword/signed dword) 247, (byte/word/signed word/dword/signed dword) 239, (byte/word/signed word/dword/signed dword) 223, (byte/word/signed word/dword/signed dword) 191, (byte/signed byte/word/signed word/dword/signed dword) 127 } (byte) keyboard_modifiers -(byte) keyboard_modifiers#13 reg byte x 0.8 -(byte) keyboard_modifiers#14 reg byte x 1.6 -(byte) keyboard_modifiers#15 reg byte x 1.6 -(byte) keyboard_modifiers#16 reg byte x 0.7272727272727273 -(byte) keyboard_modifiers#3 reg byte x 4.0 -(byte) keyboard_modifiers#4 reg byte x 4.0 -(byte) keyboard_modifiers#5 reg byte x 4.0 +(byte) keyboard_modifiers#11 keyboard_modifiers zp ZP_BYTE:3 71.0 +(byte) keyboard_modifiers#13 keyboard_modifiers zp ZP_BYTE:3 3.4431818181818183 +(byte) keyboard_modifiers#18 keyboard_modifiers zp ZP_BYTE:3 0.8 +(byte) keyboard_modifiers#19 keyboard_modifiers zp ZP_BYTE:3 1.6 +(byte) keyboard_modifiers#20 keyboard_modifiers zp ZP_BYTE:3 1.6 +(byte) keyboard_modifiers#21 keyboard_modifiers zp ZP_BYTE:3 9.58139534883721 +(byte) keyboard_modifiers#24 keyboard_modifiers zp ZP_BYTE:3 0.7647058823529412 +(byte) keyboard_modifiers#3 keyboard_modifiers zp ZP_BYTE:3 4.0 +(byte) keyboard_modifiers#4 keyboard_modifiers zp ZP_BYTE:3 4.0 +(byte) keyboard_modifiers#42 keyboard_modifiers zp ZP_BYTE:3 151.5 +(byte) keyboard_modifiers#45 keyboard_modifiers zp ZP_BYTE:3 102.0 +(byte) keyboard_modifiers#5 keyboard_modifiers zp ZP_BYTE:3 4.0 (byte[8]) keyboard_scan_values (const byte[8]) keyboard_scan_values#0 keyboard_scan_values = { fill( 8, 0) } (void()) main() (label) main::@1 -(label) main::@19 -(label) main::@20 -(label) main::@23 -(label) main::@4 -(label) main::@6 +(label) main::@10 +(label) main::@2 (label) main::@7 -(label) main::@9 +(label) main::@8 (label) main::@return (byte*) print_char_cursor (byte*) print_char_cursor#1 print_char_cursor zp ZP_WORD:9 202.0 -(byte*) print_char_cursor#16 print_char_cursor zp ZP_WORD:9 83.0 -(byte*) print_char_cursor#18 print_char_cursor zp ZP_WORD:9 12.0 -(byte*) print_char_cursor#31 print_char_cursor zp ZP_WORD:9 57.714285714285715 +(byte*) print_char_cursor#20 print_char_cursor zp ZP_WORD:9 83.0 +(byte*) print_char_cursor#22 print_char_cursor zp ZP_WORD:9 12.0 +(byte*) print_char_cursor#38 print_char_cursor zp ZP_WORD:9 57.714285714285715 (byte*~) print_char_cursor#60 print_char_cursor zp ZP_WORD:9 4.0 (byte*~) print_char_cursor#61 print_char_cursor zp ZP_WORD:9 22.0 +(void()) print_cls() +(byte*~) print_cls::$0 $0 zp ZP_WORD:9 22.0 +(label) print_cls::@1 +(label) print_cls::@return +(byte*) print_cls::sc +(byte*) print_cls::sc#0 sc zp ZP_WORD:7 4.0 +(byte*) print_cls::sc#1 sc zp ZP_WORD:7 11.0 +(byte*) print_cls::sc#2 sc zp ZP_WORD:7 17.5 (byte[]) print_hextab (const string) print_hextab#0 print_hextab = (string) "0123456789abcdef" (byte*) print_line_cursor -(byte*) print_line_cursor#16 print_line_cursor zp ZP_WORD:11 1.25 -(byte*) print_line_cursor#17 print_line_cursor zp ZP_WORD:11 204.0 -(byte*) print_line_cursor#18 print_line_cursor zp ZP_WORD:11 65.0 +(byte*) print_line_cursor#2 print_line_cursor zp ZP_WORD:11 1.25 +(byte*) print_line_cursor#21 print_line_cursor zp ZP_WORD:11 204.0 +(byte*) print_line_cursor#22 print_line_cursor zp ZP_WORD:11 65.0 (void()) print_ln() (label) print_ln::@1 (label) print_ln::@return @@ -15564,7 +17729,7 @@ FINAL SYMBOL TABLE (void()) print_set_screen((byte*) print_set_screen::screen) (label) print_set_screen::@return (byte*) print_set_screen::screen -(byte*) print_set_screen::screen#2 screen zp ZP_WORD:11 0.5 +(byte*) print_set_screen::screen#2 screen zp ZP_WORD:11 0.8947368421052632 (void()) print_str_lines((byte*) print_str_lines::str) (label) print_str_lines::@1 (label) print_str_lines::@4 @@ -15580,27 +17745,28 @@ FINAL SYMBOL TABLE (byte*) print_str_lines::str#4 str zp ZP_WORD:7 157.0 (byte*) print_str_lines::str#5 str zp ZP_WORD:7 1.0 -zp ZP_BYTE:2 [ form_cursor_count#1 form_cursor_count#12 form_cursor_count#11 form_cursor_count#3 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 ] -zp ZP_BYTE:3 [ form_field_idx#1 form_field_idx#14 form_field_idx#24 form_field_idx#34 form_field_idx#3 ] -reg byte x [ gfx_mode::dtv_control#12 gfx_mode::dtv_control#6 gfx_mode::dtv_control#13 gfx_mode::dtv_control#5 gfx_mode::dtv_control#11 gfx_mode::dtv_control#4 gfx_mode::dtv_control#10 gfx_mode::dtv_control#3 gfx_mode::dtv_control#15 gfx_mode::dtv_control#14 gfx_mode::dtv_control#2 ] +reg byte x [ gfx_mode::dtv_control#12 gfx_mode::dtv_control#6 gfx_mode::dtv_control#13 gfx_mode::dtv_control#5 gfx_mode::dtv_control#11 gfx_mode::dtv_control#4 gfx_mode::dtv_control#10 gfx_mode::dtv_control#15 gfx_mode::dtv_control#14 gfx_mode::dtv_control#2 gfx_mode::dtv_control#3 ] reg byte x [ gfx_mode::vic_control#4 gfx_mode::vic_control#2 gfx_mode::vic_control#5 ] reg byte a [ gfx_mode::vic_control2#2 ] reg byte x [ gfx_mode::i#2 gfx_mode::i#1 ] reg byte a [ keyboard_event_get::return#2 keyboard_event_get::return#0 ] -zp ZP_BYTE:4 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 keyboard_event_pressed::keycode#4 ] +zp ZP_BYTE:2 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 keyboard_event_pressed::keycode#4 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cy#1 ] reg byte x [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ] -zp ZP_BYTE:5 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 keyboard_event_pressed::row_bits#0 ] -zp ZP_BYTE:6 [ keyboard_events_size#12 keyboard_events_size#37 keyboard_events_size#20 keyboard_events_size#18 keyboard_events_size#4 keyboard_events_size#15 keyboard_events_size#38 keyboard_events_size#2 keyboard_events_size#1 ] -reg byte x [ keyboard_modifiers#16 keyboard_modifiers#15 keyboard_modifiers#4 keyboard_modifiers#14 keyboard_modifiers#3 keyboard_modifiers#13 keyboard_modifiers#5 ] -reg byte x [ form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 form_field_ptr::field_idx#0 ] +zp ZP_BYTE:3 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 keyboard_modifiers#45 keyboard_modifiers#24 keyboard_modifiers#11 keyboard_modifiers#42 keyboard_modifiers#13 keyboard_modifiers#21 keyboard_modifiers#20 keyboard_modifiers#4 keyboard_modifiers#19 keyboard_modifiers#3 keyboard_modifiers#18 keyboard_modifiers#5 gfx_init_screen_stdchar::$1 ] +zp ZP_BYTE:4 [ keyboard_events_size#18 keyboard_events_size#112 keyboard_events_size#104 keyboard_events_size#47 keyboard_events_size#27 keyboard_events_size#11 keyboard_events_size#45 keyboard_events_size#13 keyboard_events_size#24 keyboard_events_size#4 keyboard_events_size#105 keyboard_events_size#111 keyboard_events_size#2 keyboard_events_size#1 ] reg byte x [ form_mode::i#2 form_mode::i#1 ] +zp ZP_BYTE:5 [ form_cursor_count#21 form_cursor_count#16 form_cursor_count#1 form_cursor_count#13 form_cursor_count#15 form_cursor_count#5 ] +zp ZP_BYTE:6 [ form_field_idx#28 form_field_idx#18 form_field_idx#1 form_field_idx#14 form_field_idx#32 form_field_idx#43 form_field_idx#44 ] +reg byte x [ form_control::return#2 ] +reg byte x [ form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 form_field_ptr::field_idx#0 ] reg byte x [ form_render_values::idx#2 form_render_values::idx#1 ] -zp ZP_WORD:7 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 gfx_mode::$33 gfx_mode::$35 gfx_mode::$37 gfx_mode::$46 gfx_mode::$48 gfx_mode::$50 form_field_ptr::return#3 form_control::field#0 form_field_ptr::return#0 form_field_ptr::$2 form_field_ptr::return#2 form_render_values::field#0 ] +zp ZP_WORD:7 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 print_cls::sc#2 print_cls::sc#0 print_cls::sc#1 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::ch#3 gfx_init_screen_stdchar::ch#1 gfx_mode::$33 gfx_mode::$35 gfx_mode::$37 gfx_mode::$46 gfx_mode::$48 gfx_mode::$50 form_field_ptr::return#3 form_control::field#0 form_field_ptr::return#0 form_field_ptr::$2 form_field_ptr::return#2 form_render_values::field#0 ] reg byte x [ form_set_screen::y#2 form_set_screen::y#1 ] -zp ZP_WORD:9 [ print_char_cursor#16 print_char_cursor#18 print_char_cursor#60 print_char_cursor#61 print_char_cursor#31 print_char_cursor#1 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::gfxb#1 ] -zp ZP_WORD:11 [ print_line_cursor#17 print_line_cursor#16 print_set_screen::screen#2 print_line_cursor#18 gfx_init_plane_8bppchunky::$6 ] +zp ZP_WORD:9 [ print_char_cursor#20 print_char_cursor#22 print_char_cursor#60 print_char_cursor#61 print_char_cursor#38 print_char_cursor#1 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::gfxb#1 print_cls::$0 ] +zp ZP_WORD:11 [ print_line_cursor#21 print_line_cursor#2 print_set_screen::screen#2 print_line_cursor#22 gfx_init_plane_8bppchunky::$6 ] reg byte x [ gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] reg byte a [ dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#1 ] +reg byte x [ gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::cx#1 ] reg byte a [ gfx_mode::$29 ] reg byte a [ gfx_mode::plane_a_offs#0 ] zp ZP_DWORD:13 [ gfx_mode::plane_a#0 gfx_mode::plane_b#0 ] @@ -15628,13 +17794,8 @@ reg byte a [ gfx_mode::$60 ] reg byte a [ gfx_mode::$61 ] reg byte a [ gfx_mode::$62 ] reg byte a [ gfx_mode::$63 ] -reg byte a [ form_control::$6 ] reg byte a [ keyboard_event_get::return#3 ] -reg byte a [ form_control::key_event#0 ] -reg byte a [ form_control::$12 ] -reg byte a [ form_control::$13 ] -reg byte a [ form_control::$24 ] -reg byte a [ form_control::$7 ] +reg byte a [ gfx_mode::keyboard_event#0 ] reg byte x [ keyboard_matrix_read::rowid#0 ] reg byte a [ keyboard_matrix_read::return#2 ] zp ZP_BYTE:17 [ keyboard_event_scan::row_scan#0 ] @@ -15651,19 +17812,32 @@ reg byte a [ keyboard_event_scan::$24 ] reg byte a [ keyboard_event_pressed::return#3 ] reg byte a [ keyboard_event_scan::$28 ] reg byte a [ keyboard_event_pressed::$0 ] +reg byte y [ keyboard_event_pressed::row_bits#0 ] reg byte a [ keyboard_event_pressed::$1 ] reg byte a [ keyboard_event_pressed::return#10 ] reg byte a [ keyboard_matrix_read::return#0 ] +reg byte a [ form_control::return#0 ] +reg byte a [ form_mode::$25 ] +reg byte a [ form_control::$6 ] +reg byte a [ keyboard_event_get::return#4 ] +reg byte a [ form_control::key_event#0 ] +reg byte a [ form_control::$12 ] +reg byte a [ form_control::$13 ] +reg byte a [ form_control::$24 ] +reg byte a [ form_control::$7 ] reg byte y [ form_field_ptr::y#0 ] reg byte a [ form_field_ptr::x#0 ] reg byte a [ form_set_screen::$0 ] reg byte a [ form_set_screen::$1 ] reg byte a [ print_str_lines::ch#0 ] reg byte a [ gfx_init_plane_8bppchunky::c#0 ] +reg byte a [ gfx_init_screen_stdchar::$0 ] +reg byte a [ gfx_init_screen_stdchar::$2 ] +reg byte a [ gfx_init_screen_stdchar::$3 ] FINAL ASSEMBLER -Score: 124168 +Score: 1019805 //SEG0 Basic Upstart .pc = $801 "Basic" @@ -15671,7 +17845,6 @@ Score: 124168 .pc = $80d "Program" //SEG1 Global Constants & labels .label RASTER = $d012 - .label BORDERCOL = $d020 .label BGCOL = $d021 .label BGCOL1 = $d021 .label BGCOL2 = $d022 @@ -15724,15 +17897,16 @@ Score: 124168 .const KEY_LSHIFT = $f .const KEY_RSHIFT = $34 .const KEY_CTRL = $3a + .const KEY_SPACE = $3c .const KEY_COMMODORE = $3d .const KEY_MODIFIER_LSHIFT = 1 .const KEY_MODIFIER_RSHIFT = 2 .const KEY_MODIFIER_CTRL = 4 .const KEY_MODIFIER_COMMODORE = 8 + .label VIC_SCREEN_STDCHAR = $8400 .const PLANE_8BPP_CHUNKY = $20000 .label FORM_SCREEN = $8000 .label FORM_CHARSET = $9800 - .const FORM_OFFSET = $10*$28 .const form_fields_cnt = $23 .const FORM_CURSOR_BLINK = $28 .const KEY_MODIFIER_SHIFT = KEY_MODIFIER_LSHIFT|KEY_MODIFIER_RSHIFT @@ -15766,16 +17940,17 @@ Score: 124168 .label form_vic_bg3_hi = form_fields_val+$21 .label form_vic_bg3_lo = form_fields_val+$22 .label print_char_cursor = 9 - .label keyboard_events_size = 6 - .label form_cursor_count = 2 - .label form_field_idx = 3 .label print_line_cursor = $b + .label keyboard_events_size = 4 + .label keyboard_modifiers = 3 + .label form_cursor_count = 5 + .label form_field_idx = 6 //SEG2 @begin -//SEG3 [1] phi from @begin to @32 [phi:@begin->@32] -//SEG4 @32 +//SEG3 [1] phi from @begin to @33 [phi:@begin->@33] +//SEG4 @33 //SEG5 [2] call main param-assignment [ ] ( ) jsr main -//SEG6 [3] phi from @32 to @end [phi:@32->@end] +//SEG6 [3] phi from @33 to @end [phi:@33->@end] //SEG7 @end //SEG8 main main: { @@ -15786,60 +17961,48 @@ main: { sta DTV_FEATURE //SEG11 [6] call keyboard_init param-assignment [ ] ( main:2 [ ] ) jsr keyboard_init - //SEG12 [7] phi from main to main::@19 [phi:main->main::@19] - //SEG13 main::@19 + //SEG12 [7] phi from main to main::@7 [phi:main->main::@7] + //SEG13 main::@7 //SEG14 [8] call gfx_init param-assignment [ ] ( main:2 [ ] ) - //SEG15 [296] phi from main::@19 to gfx_init [phi:main::@19->gfx_init] + //SEG15 [324] phi from main::@7 to gfx_init [phi:main::@7->gfx_init] jsr gfx_init - //SEG16 [9] phi from main::@19 to main::@20 [phi:main::@19->main::@20] - //SEG17 main::@20 + //SEG16 [9] phi from main::@7 to main::@8 [phi:main::@7->main::@8] + //SEG17 main::@8 //SEG18 [10] call form_init param-assignment [ ] ( main:2 [ ] ) - //SEG19 [240] phi from main::@20 to form_init [phi:main::@20->form_init] + //SEG19 [257] phi from main::@8 to form_init [phi:main::@8->form_init] jsr form_init - //SEG20 [11] phi from main::@20 to main::@1 [phi:main::@20->main::@1] - //SEG21 [11] phi (byte) form_field_idx#1 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main::@20->main::@1#0] -- vbuz1=vbuc1 + //SEG20 [11] phi from main::@8 to main::@1 [phi:main::@8->main::@1] + //SEG21 [11] phi (byte) form_field_idx#1 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main::@8->main::@1#0] -- vbuz1=vbuc1 lda #0 sta form_field_idx - //SEG22 [11] phi (byte) keyboard_events_size#20 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main::@20->main::@1#1] -- vbuz1=vbuc1 + //SEG22 [11] phi (byte) keyboard_modifiers#24 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main::@8->main::@1#1] -- vbuz1=vbuc1 + sta keyboard_modifiers + //SEG23 [11] phi (byte) keyboard_events_size#27 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main::@8->main::@1#2] -- vbuz1=vbuc1 sta keyboard_events_size - //SEG23 [11] phi (signed byte) form_cursor_count#1 = (const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 [phi:main::@20->main::@1#2] -- vbsz1=vbuc1 + //SEG24 [11] phi (signed byte) form_cursor_count#1 = (const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 [phi:main::@8->main::@1#3] -- vbsz1=vbuc1 lda #FORM_CURSOR_BLINK/2 sta form_cursor_count - //SEG24 main::@1 - //SEG25 [12] if(true) goto main::@4 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- true_then_la1 - //SEG26 main::@return - //SEG27 [13] return [ ] ( main:2 [ ] ) - //SEG28 main::@4 - b4: - //SEG29 [14] if(*((const byte*) RASTER#0)!=(byte/signed byte/word/signed word/dword/signed dword) 48+(byte/signed byte/word/signed word/dword/signed dword) 8*(byte/signed byte/word/signed word/dword/signed dword) 16) goto main::@4 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1_neq_vbuc2_then_la1 - lda RASTER - cmp #$30+8*$10 - bne b4 - //SEG30 [15] phi from main::@4 to main::@6 [phi:main::@4->main::@6] - //SEG31 main::@6 - //SEG32 [16] call form_mode param-assignment [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) + //SEG25 main::@1 + //SEG26 [12] if(true) goto main::@2 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- true_then_la1 + //SEG27 main::@return + //SEG28 [13] return [ ] ( main:2 [ ] ) + //SEG29 [14] phi from main::@1 to main::@2 [phi:main::@1->main::@2] + //SEG30 main::@2 + b2: + //SEG31 [15] call form_mode param-assignment [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) jsr form_mode - //SEG33 main::@7 - b7: - //SEG34 [17] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto main::@7 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ( main:2 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1_neq_vbuc2_then_la1 - lda RASTER - cmp #$ff - bne b7 - //SEG35 [18] phi from main::@7 to main::@9 [phi:main::@7->main::@9] - //SEG36 main::@9 - //SEG37 [19] call form_control param-assignment [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ( main:2 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) - jsr form_control - //SEG38 [20] phi from main::@9 to main::@23 [phi:main::@9->main::@23] - //SEG39 main::@23 - //SEG40 [21] call gfx_mode param-assignment [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ( main:2 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) + //SEG32 [16] phi from main::@2 to main::@10 [phi:main::@2->main::@10] + //SEG33 main::@10 + //SEG34 [17] call gfx_mode param-assignment [ form_cursor_count#13 keyboard_events_size#11 keyboard_modifiers#11 form_field_idx#14 ] ( main:2 [ form_cursor_count#13 keyboard_events_size#11 keyboard_modifiers#11 form_field_idx#14 ] ) jsr gfx_mode - //SEG41 [11] phi from main::@23 to main::@1 [phi:main::@23->main::@1] - //SEG42 [11] phi (byte) form_field_idx#1 = (byte) form_field_idx#14 [phi:main::@23->main::@1#0] -- register_copy - //SEG43 [11] phi (byte) keyboard_events_size#20 = (byte) keyboard_events_size#18 [phi:main::@23->main::@1#1] -- register_copy - //SEG44 [11] phi (signed byte) form_cursor_count#1 = (signed byte) form_cursor_count#12 [phi:main::@23->main::@1#2] -- register_copy - jmp b4 + //SEG35 [11] phi from main::@10 to main::@1 [phi:main::@10->main::@1] + //SEG36 [11] phi (byte) form_field_idx#1 = (byte) form_field_idx#14 [phi:main::@10->main::@1#0] -- register_copy + //SEG37 [11] phi (byte) keyboard_modifiers#24 = (byte) keyboard_modifiers#11 [phi:main::@10->main::@1#1] -- register_copy + //SEG38 [11] phi (byte) keyboard_events_size#27 = (byte) keyboard_events_size#11 [phi:main::@10->main::@1#2] -- register_copy + //SEG39 [11] phi (signed byte) form_cursor_count#1 = (signed byte) form_cursor_count#13 [phi:main::@10->main::@1#3] -- register_copy + jmp b2 } -//SEG45 gfx_mode +//SEG40 gfx_mode gfx_mode: { .label _33 = 7 .label _35 = 7 @@ -15849,147 +18012,147 @@ gfx_mode: { .label _50 = 7 .label plane_a = $d .label plane_b = $d - //SEG46 [22] if(*((const byte*) form_ctrl_line#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@1 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG41 [18] if(*((const byte*) form_ctrl_line#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@1 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_line cmp #0 - beq b11 - //SEG47 [23] phi from gfx_mode to gfx_mode::@11 [phi:gfx_mode->gfx_mode::@11] - //SEG48 gfx_mode::@11 - //SEG49 [24] phi from gfx_mode::@11 to gfx_mode::@1 [phi:gfx_mode::@11->gfx_mode::@1] - //SEG50 [24] phi (byte) gfx_mode::dtv_control#14 = (byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) DTV_LINEAR#0 [phi:gfx_mode::@11->gfx_mode::@1#0] -- vbuxx=vbuc1 + beq b12 + //SEG42 [19] phi from gfx_mode to gfx_mode::@18 [phi:gfx_mode->gfx_mode::@18] + //SEG43 gfx_mode::@18 + //SEG44 [20] phi from gfx_mode::@18 to gfx_mode::@1 [phi:gfx_mode::@18->gfx_mode::@1] + //SEG45 [20] phi (byte) gfx_mode::dtv_control#14 = (byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) DTV_LINEAR#0 [phi:gfx_mode::@18->gfx_mode::@1#0] -- vbuxx=vbuc1 ldx #0|DTV_LINEAR jmp b1 - //SEG51 [24] phi from gfx_mode to gfx_mode::@1 [phi:gfx_mode->gfx_mode::@1] - b11: - //SEG52 [24] phi (byte) gfx_mode::dtv_control#14 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_mode->gfx_mode::@1#0] -- vbuxx=vbuc1 + //SEG46 [20] phi from gfx_mode to gfx_mode::@1 [phi:gfx_mode->gfx_mode::@1] + b12: + //SEG47 [20] phi (byte) gfx_mode::dtv_control#14 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_mode->gfx_mode::@1#0] -- vbuxx=vbuc1 ldx #0 - //SEG53 gfx_mode::@1 + //SEG48 gfx_mode::@1 b1: - //SEG54 [25] if(*((const byte*) form_ctrl_borof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@2 [ gfx_mode::dtv_control#14 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#14 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG49 [21] if(*((const byte*) form_ctrl_borof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@2 [ gfx_mode::dtv_control#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_borof cmp #0 beq b2 - //SEG55 gfx_mode::@12 - //SEG56 [26] (byte) gfx_mode::dtv_control#2 ← (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 [ gfx_mode::dtv_control#2 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#2 ] ) -- vbuxx=vbuxx_bor_vbuc1 + //SEG50 gfx_mode::@19 + //SEG51 [22] (byte) gfx_mode::dtv_control#2 ← (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 [ gfx_mode::dtv_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_BORDER_OFF tax - //SEG57 [27] phi from gfx_mode::@1 gfx_mode::@12 to gfx_mode::@2 [phi:gfx_mode::@1/gfx_mode::@12->gfx_mode::@2] - //SEG58 [27] phi (byte) gfx_mode::dtv_control#15 = (byte) gfx_mode::dtv_control#14 [phi:gfx_mode::@1/gfx_mode::@12->gfx_mode::@2#0] -- register_copy - //SEG59 gfx_mode::@2 + //SEG52 [23] phi from gfx_mode::@1 gfx_mode::@19 to gfx_mode::@2 [phi:gfx_mode::@1/gfx_mode::@19->gfx_mode::@2] + //SEG53 [23] phi (byte) gfx_mode::dtv_control#15 = (byte) gfx_mode::dtv_control#14 [phi:gfx_mode::@1/gfx_mode::@19->gfx_mode::@2#0] -- register_copy + //SEG54 gfx_mode::@2 b2: - //SEG60 [28] if(*((const byte*) form_ctrl_hicol#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@3 [ gfx_mode::dtv_control#15 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#15 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG55 [24] if(*((const byte*) form_ctrl_hicol#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@3 [ gfx_mode::dtv_control#15 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#15 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_hicol cmp #0 beq b3 - //SEG61 gfx_mode::@13 - //SEG62 [29] (byte) gfx_mode::dtv_control#3 ← (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 [ gfx_mode::dtv_control#3 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#3 ] ) -- vbuxx=vbuxx_bor_vbuc1 + //SEG56 gfx_mode::@20 + //SEG57 [25] (byte) gfx_mode::dtv_control#3 ← (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 [ gfx_mode::dtv_control#3 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#3 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_HIGHCOLOR tax - //SEG63 [30] phi from gfx_mode::@13 gfx_mode::@2 to gfx_mode::@3 [phi:gfx_mode::@13/gfx_mode::@2->gfx_mode::@3] - //SEG64 [30] phi (byte) gfx_mode::dtv_control#10 = (byte) gfx_mode::dtv_control#3 [phi:gfx_mode::@13/gfx_mode::@2->gfx_mode::@3#0] -- register_copy - //SEG65 gfx_mode::@3 + //SEG58 [26] phi from gfx_mode::@2 gfx_mode::@20 to gfx_mode::@3 [phi:gfx_mode::@2/gfx_mode::@20->gfx_mode::@3] + //SEG59 [26] phi (byte) gfx_mode::dtv_control#10 = (byte) gfx_mode::dtv_control#15 [phi:gfx_mode::@2/gfx_mode::@20->gfx_mode::@3#0] -- register_copy + //SEG60 gfx_mode::@3 b3: - //SEG66 [31] if(*((const byte*) form_ctrl_overs#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@4 [ gfx_mode::dtv_control#10 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#10 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG61 [27] if(*((const byte*) form_ctrl_overs#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@4 [ gfx_mode::dtv_control#10 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#10 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_overs cmp #0 beq b4 - //SEG67 gfx_mode::@14 - //SEG68 [32] (byte) gfx_mode::dtv_control#4 ← (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 [ gfx_mode::dtv_control#4 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#4 ] ) -- vbuxx=vbuxx_bor_vbuc1 + //SEG62 gfx_mode::@21 + //SEG63 [28] (byte) gfx_mode::dtv_control#4 ← (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 [ gfx_mode::dtv_control#4 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#4 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_OVERSCAN tax - //SEG69 [33] phi from gfx_mode::@14 gfx_mode::@3 to gfx_mode::@4 [phi:gfx_mode::@14/gfx_mode::@3->gfx_mode::@4] - //SEG70 [33] phi (byte) gfx_mode::dtv_control#11 = (byte) gfx_mode::dtv_control#4 [phi:gfx_mode::@14/gfx_mode::@3->gfx_mode::@4#0] -- register_copy - //SEG71 gfx_mode::@4 + //SEG64 [29] phi from gfx_mode::@21 gfx_mode::@3 to gfx_mode::@4 [phi:gfx_mode::@21/gfx_mode::@3->gfx_mode::@4] + //SEG65 [29] phi (byte) gfx_mode::dtv_control#11 = (byte) gfx_mode::dtv_control#4 [phi:gfx_mode::@21/gfx_mode::@3->gfx_mode::@4#0] -- register_copy + //SEG66 gfx_mode::@4 b4: - //SEG72 [34] if(*((const byte*) form_ctrl_colof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@5 [ gfx_mode::dtv_control#11 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#11 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG67 [30] if(*((const byte*) form_ctrl_colof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@5 [ gfx_mode::dtv_control#11 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#11 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_colof cmp #0 beq b5 - //SEG73 gfx_mode::@15 - //SEG74 [35] (byte) gfx_mode::dtv_control#5 ← (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 [ gfx_mode::dtv_control#5 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#5 ] ) -- vbuxx=vbuxx_bor_vbuc1 + //SEG68 gfx_mode::@22 + //SEG69 [31] (byte) gfx_mode::dtv_control#5 ← (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 [ gfx_mode::dtv_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_COLORRAM_OFF tax - //SEG75 [36] phi from gfx_mode::@15 gfx_mode::@4 to gfx_mode::@5 [phi:gfx_mode::@15/gfx_mode::@4->gfx_mode::@5] - //SEG76 [36] phi (byte) gfx_mode::dtv_control#13 = (byte) gfx_mode::dtv_control#5 [phi:gfx_mode::@15/gfx_mode::@4->gfx_mode::@5#0] -- register_copy - //SEG77 gfx_mode::@5 + //SEG70 [32] phi from gfx_mode::@22 gfx_mode::@4 to gfx_mode::@5 [phi:gfx_mode::@22/gfx_mode::@4->gfx_mode::@5] + //SEG71 [32] phi (byte) gfx_mode::dtv_control#13 = (byte) gfx_mode::dtv_control#5 [phi:gfx_mode::@22/gfx_mode::@4->gfx_mode::@5#0] -- register_copy + //SEG72 gfx_mode::@5 b5: - //SEG78 [37] if(*((const byte*) form_ctrl_chunk#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@6 [ gfx_mode::dtv_control#13 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#13 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG73 [33] if(*((const byte*) form_ctrl_chunk#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@6 [ gfx_mode::dtv_control#13 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#13 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_chunk cmp #0 beq b6 - //SEG79 gfx_mode::@16 - //SEG80 [38] (byte) gfx_mode::dtv_control#6 ← (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 [ gfx_mode::dtv_control#6 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::dtv_control#6 ] ) -- vbuxx=vbuxx_bor_vbuc1 + //SEG74 gfx_mode::@23 + //SEG75 [34] (byte) gfx_mode::dtv_control#6 ← (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 [ gfx_mode::dtv_control#6 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::dtv_control#6 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_CHUNKY tax - //SEG81 [39] phi from gfx_mode::@16 gfx_mode::@5 to gfx_mode::@6 [phi:gfx_mode::@16/gfx_mode::@5->gfx_mode::@6] - //SEG82 [39] phi (byte) gfx_mode::dtv_control#12 = (byte) gfx_mode::dtv_control#6 [phi:gfx_mode::@16/gfx_mode::@5->gfx_mode::@6#0] -- register_copy - //SEG83 gfx_mode::@6 + //SEG76 [35] phi from gfx_mode::@23 gfx_mode::@5 to gfx_mode::@6 [phi:gfx_mode::@23/gfx_mode::@5->gfx_mode::@6] + //SEG77 [35] phi (byte) gfx_mode::dtv_control#12 = (byte) gfx_mode::dtv_control#6 [phi:gfx_mode::@23/gfx_mode::@5->gfx_mode::@6#0] -- register_copy + //SEG78 gfx_mode::@6 b6: - //SEG84 [40] *((const byte*) DTV_CONTROL#0) ← (byte) gfx_mode::dtv_control#12 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuxx + //SEG79 [36] *((const byte*) DTV_CONTROL#0) ← (byte) gfx_mode::dtv_control#12 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuxx stx DTV_CONTROL - //SEG85 [41] if(*((const byte*) form_ctrl_ecm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@7 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG80 [37] if(*((const byte*) form_ctrl_ecm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@7 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_ecm cmp #0 - beq b12 - //SEG86 [42] phi from gfx_mode::@6 to gfx_mode::@17 [phi:gfx_mode::@6->gfx_mode::@17] - //SEG87 gfx_mode::@17 - //SEG88 [43] phi from gfx_mode::@17 to gfx_mode::@7 [phi:gfx_mode::@17->gfx_mode::@7] - //SEG89 [43] phi (byte) gfx_mode::vic_control#5 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3|(const byte) VIC_ECM#0 [phi:gfx_mode::@17->gfx_mode::@7#0] -- vbuxx=vbuc1 + beq b13 + //SEG81 [38] phi from gfx_mode::@6 to gfx_mode::@24 [phi:gfx_mode::@6->gfx_mode::@24] + //SEG82 gfx_mode::@24 + //SEG83 [39] phi from gfx_mode::@24 to gfx_mode::@7 [phi:gfx_mode::@24->gfx_mode::@7] + //SEG84 [39] phi (byte) gfx_mode::vic_control#5 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3|(const byte) VIC_ECM#0 [phi:gfx_mode::@24->gfx_mode::@7#0] -- vbuxx=vbuc1 ldx #VIC_DEN|VIC_RSEL|3|VIC_ECM jmp b7 - //SEG90 [43] phi from gfx_mode::@6 to gfx_mode::@7 [phi:gfx_mode::@6->gfx_mode::@7] - b12: - //SEG91 [43] phi (byte) gfx_mode::vic_control#5 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [phi:gfx_mode::@6->gfx_mode::@7#0] -- vbuxx=vbuc1 + //SEG85 [39] phi from gfx_mode::@6 to gfx_mode::@7 [phi:gfx_mode::@6->gfx_mode::@7] + b13: + //SEG86 [39] phi (byte) gfx_mode::vic_control#5 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [phi:gfx_mode::@6->gfx_mode::@7#0] -- vbuxx=vbuc1 ldx #VIC_DEN|VIC_RSEL|3 - //SEG92 gfx_mode::@7 + //SEG87 gfx_mode::@7 b7: - //SEG93 [44] if(*((const byte*) form_ctrl_bmm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@8 [ gfx_mode::vic_control#5 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::vic_control#5 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG88 [40] if(*((const byte*) form_ctrl_bmm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@8 [ gfx_mode::vic_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::vic_control#5 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_bmm cmp #0 beq b8 - //SEG94 gfx_mode::@18 - //SEG95 [45] (byte) gfx_mode::vic_control#2 ← (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 [ gfx_mode::vic_control#2 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::vic_control#2 ] ) -- vbuxx=vbuxx_bor_vbuc1 + //SEG89 gfx_mode::@25 + //SEG90 [41] (byte) gfx_mode::vic_control#2 ← (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 [ gfx_mode::vic_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::vic_control#2 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuxx=vbuxx_bor_vbuc1 txa ora #VIC_BMM tax - //SEG96 [46] phi from gfx_mode::@18 gfx_mode::@7 to gfx_mode::@8 [phi:gfx_mode::@18/gfx_mode::@7->gfx_mode::@8] - //SEG97 [46] phi (byte) gfx_mode::vic_control#4 = (byte) gfx_mode::vic_control#2 [phi:gfx_mode::@18/gfx_mode::@7->gfx_mode::@8#0] -- register_copy - //SEG98 gfx_mode::@8 + //SEG91 [42] phi from gfx_mode::@25 gfx_mode::@7 to gfx_mode::@8 [phi:gfx_mode::@25/gfx_mode::@7->gfx_mode::@8] + //SEG92 [42] phi (byte) gfx_mode::vic_control#4 = (byte) gfx_mode::vic_control#2 [phi:gfx_mode::@25/gfx_mode::@7->gfx_mode::@8#0] -- register_copy + //SEG93 gfx_mode::@8 b8: - //SEG99 [47] *((const byte*) VIC_CONTROL#0) ← (byte) gfx_mode::vic_control#4 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuxx + //SEG94 [43] *((const byte*) VIC_CONTROL#0) ← (byte) gfx_mode::vic_control#4 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuxx stx VIC_CONTROL - //SEG100 [48] if(*((const byte*) form_ctrl_mcm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@9 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1_eq_0_then_la1 + //SEG95 [44] if(*((const byte*) form_ctrl_mcm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@9 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_mcm cmp #0 - beq b13 - //SEG101 [49] phi from gfx_mode::@8 to gfx_mode::@19 [phi:gfx_mode::@8->gfx_mode::@19] - //SEG102 gfx_mode::@19 - //SEG103 [50] phi from gfx_mode::@19 to gfx_mode::@9 [phi:gfx_mode::@19->gfx_mode::@9] - //SEG104 [50] phi (byte) gfx_mode::vic_control2#2 = (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 [phi:gfx_mode::@19->gfx_mode::@9#0] -- vbuaa=vbuc1 + beq b15 + //SEG96 [45] phi from gfx_mode::@8 to gfx_mode::@26 [phi:gfx_mode::@8->gfx_mode::@26] + //SEG97 gfx_mode::@26 + //SEG98 [46] phi from gfx_mode::@26 to gfx_mode::@9 [phi:gfx_mode::@26->gfx_mode::@9] + //SEG99 [46] phi (byte) gfx_mode::vic_control2#2 = (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 [phi:gfx_mode::@26->gfx_mode::@9#0] -- vbuaa=vbuc1 lda #VIC_CSEL|VIC_MCM jmp b9 - //SEG105 [50] phi from gfx_mode::@8 to gfx_mode::@9 [phi:gfx_mode::@8->gfx_mode::@9] - b13: - //SEG106 [50] phi (byte) gfx_mode::vic_control2#2 = (const byte) VIC_CSEL#0 [phi:gfx_mode::@8->gfx_mode::@9#0] -- vbuaa=vbuc1 + //SEG100 [46] phi from gfx_mode::@8 to gfx_mode::@9 [phi:gfx_mode::@8->gfx_mode::@9] + b15: + //SEG101 [46] phi (byte) gfx_mode::vic_control2#2 = (const byte) VIC_CSEL#0 [phi:gfx_mode::@8->gfx_mode::@9#0] -- vbuaa=vbuc1 lda #VIC_CSEL - //SEG107 gfx_mode::@9 + //SEG102 gfx_mode::@9 b9: - //SEG108 [51] *((const byte*) VIC_CONTROL2#0) ← (byte) gfx_mode::vic_control2#2 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuaa + //SEG103 [47] *((const byte*) VIC_CONTROL2#0) ← (byte) gfx_mode::vic_control2#2 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta VIC_CONTROL2 - //SEG109 [52] (byte~) gfx_mode::$29 ← *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$29 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$29 ] ) -- vbuaa=_deref_pbuc1_rol_4 + //SEG104 [48] (byte~) gfx_mode::$29 ← *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$29 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$29 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_deref_pbuc1_rol_4 lda form_a_start_hi asl asl asl asl - //SEG110 [53] (byte) gfx_mode::plane_a_offs#0 ← (byte~) gfx_mode::$29 | *((const byte*) form_a_start_lo#0) [ gfx_mode::plane_a_offs#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a_offs#0 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG105 [49] (byte) gfx_mode::plane_a_offs#0 ← (byte~) gfx_mode::$29 | *((const byte*) form_a_start_lo#0) [ gfx_mode::plane_a_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_a_start_lo - //SEG111 [54] (dword) gfx_mode::plane_a#0 ← ((dword))(const byte*) FORM_SCREEN#0 + (byte) gfx_mode::plane_a_offs#0 [ gfx_mode::plane_a#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 ] ) -- vduz1=vwuc1_plus_vbuaa + //SEG106 [50] (dword) gfx_mode::plane_a#0 ← ((dword))(const byte*) FORM_SCREEN#0 + (byte) gfx_mode::plane_a_offs#0 [ gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vduz1=vwuc1_plus_vbuaa clc adc #<$ffffffff&FORM_SCREEN sta plane_a @@ -16001,64 +18164,64 @@ gfx_mode: { sta plane_a+2 lda #0 sta plane_a+3 - //SEG112 [55] (word~) gfx_mode::$33 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$33 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$33 ] ) -- vwuz1=_lo_vduz2 + //SEG107 [51] (word~) gfx_mode::$33 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$33 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$33 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vwuz1=_lo_vduz2 lda plane_a sta _33 lda plane_a+1 sta _33+1 - //SEG113 [56] (byte~) gfx_mode::$34 ← < (word~) gfx_mode::$33 [ gfx_mode::plane_a#0 gfx_mode::$34 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$34 ] ) -- vbuaa=_lo_vwuz1 + //SEG108 [52] (byte~) gfx_mode::$34 ← < (word~) gfx_mode::$33 [ gfx_mode::plane_a#0 gfx_mode::$34 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$34 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_lo_vwuz1 lda _33 - //SEG114 [57] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte~) gfx_mode::$34 [ gfx_mode::plane_a#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 ] ) -- _deref_pbuc1=vbuaa + //SEG109 [53] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte~) gfx_mode::$34 [ gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta DTV_PLANEA_START_LO - //SEG115 [58] (word~) gfx_mode::$35 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$35 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$35 ] ) -- vwuz1=_lo_vduz2 + //SEG110 [54] (word~) gfx_mode::$35 ← < (dword) gfx_mode::plane_a#0 [ gfx_mode::plane_a#0 gfx_mode::$35 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$35 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vwuz1=_lo_vduz2 lda plane_a sta _35 lda plane_a+1 sta _35+1 - //SEG116 [59] (byte~) gfx_mode::$36 ← > (word~) gfx_mode::$35 [ gfx_mode::plane_a#0 gfx_mode::$36 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$36 ] ) -- vbuaa=_hi_vwuz1 - //SEG117 [60] *((const byte*) DTV_PLANEA_START_MI#0) ← (byte~) gfx_mode::$36 [ gfx_mode::plane_a#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_a#0 ] ) -- _deref_pbuc1=vbuaa + //SEG111 [55] (byte~) gfx_mode::$36 ← > (word~) gfx_mode::$35 [ gfx_mode::plane_a#0 gfx_mode::$36 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 gfx_mode::$36 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_hi_vwuz1 + //SEG112 [56] *((const byte*) DTV_PLANEA_START_MI#0) ← (byte~) gfx_mode::$36 [ gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_a#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta DTV_PLANEA_START_MI - //SEG118 [61] (word~) gfx_mode::$37 ← > (dword) gfx_mode::plane_a#0 [ gfx_mode::$37 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$37 ] ) -- vwuz1=_hi_vduz2 + //SEG113 [57] (word~) gfx_mode::$37 ← > (dword) gfx_mode::plane_a#0 [ gfx_mode::$37 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$37 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vwuz1=_hi_vduz2 lda plane_a+2 sta _37 lda plane_a+3 sta _37+1 - //SEG119 [62] (byte~) gfx_mode::$38 ← < (word~) gfx_mode::$37 [ gfx_mode::$38 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$38 ] ) -- vbuaa=_lo_vwuz1 + //SEG114 [58] (byte~) gfx_mode::$38 ← < (word~) gfx_mode::$37 [ gfx_mode::$38 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$38 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_lo_vwuz1 lda _37 - //SEG120 [63] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte~) gfx_mode::$38 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuaa + //SEG115 [59] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte~) gfx_mode::$38 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta DTV_PLANEA_START_HI - //SEG121 [64] (byte~) gfx_mode::$39 ← *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$39 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$39 ] ) -- vbuaa=_deref_pbuc1_rol_4 + //SEG116 [60] (byte~) gfx_mode::$39 ← *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$39 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$39 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_deref_pbuc1_rol_4 lda form_a_step_hi asl asl asl asl - //SEG122 [65] (byte~) gfx_mode::$40 ← (byte~) gfx_mode::$39 | *((const byte*) form_a_step_lo#0) [ gfx_mode::$40 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$40 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG117 [61] (byte~) gfx_mode::$40 ← (byte~) gfx_mode::$39 | *((const byte*) form_a_step_lo#0) [ gfx_mode::$40 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$40 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_a_step_lo - //SEG123 [66] *((const byte*) DTV_PLANEA_STEP#0) ← (byte~) gfx_mode::$40 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuaa + //SEG118 [62] *((const byte*) DTV_PLANEA_STEP#0) ← (byte~) gfx_mode::$40 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta DTV_PLANEA_STEP - //SEG124 [67] (byte~) gfx_mode::$41 ← *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$41 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$41 ] ) -- vbuaa=_deref_pbuc1_rol_4 + //SEG119 [63] (byte~) gfx_mode::$41 ← *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$41 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$41 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_deref_pbuc1_rol_4 lda form_a_mod_hi asl asl asl asl - //SEG125 [68] (byte~) gfx_mode::$42 ← (byte~) gfx_mode::$41 | *((const byte*) form_a_mod_lo#0) [ gfx_mode::$42 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$42 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG120 [64] (byte~) gfx_mode::$42 ← (byte~) gfx_mode::$41 | *((const byte*) form_a_mod_lo#0) [ gfx_mode::$42 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$42 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_a_mod_lo - //SEG126 [69] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte~) gfx_mode::$42 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuaa + //SEG121 [65] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte~) gfx_mode::$42 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta DTV_PLANEA_MODULO_LO - //SEG127 [70] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuc2 + //SEG122 [66] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_HI - //SEG128 [71] (byte~) gfx_mode::$43 ← *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$43 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$43 ] ) -- vbuaa=_deref_pbuc1_rol_4 + //SEG123 [67] (byte~) gfx_mode::$43 ← *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$43 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$43 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_deref_pbuc1_rol_4 lda form_b_start_hi asl asl asl asl - //SEG129 [72] (byte) gfx_mode::plane_b_offs#0 ← (byte~) gfx_mode::$43 | *((const byte*) form_b_start_lo#0) [ gfx_mode::plane_b_offs#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b_offs#0 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG124 [68] (byte) gfx_mode::plane_b_offs#0 ← (byte~) gfx_mode::$43 | *((const byte*) form_b_start_lo#0) [ gfx_mode::plane_b_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b_offs#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_b_start_lo - //SEG130 [73] (dword) gfx_mode::plane_b#0 ← (const dword) PLANE_8BPP_CHUNKY#0 + (byte) gfx_mode::plane_b_offs#0 [ gfx_mode::plane_b#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 ] ) -- vduz1=vduc1_plus_vbuaa + //SEG125 [69] (dword) gfx_mode::plane_b#0 ← (const dword) PLANE_8BPP_CHUNKY#0 + (byte) gfx_mode::plane_b_offs#0 [ gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vduz1=vduc1_plus_vbuaa clc adc #PLANE_8BPP_CHUNKY>>$10 adc #0 sta plane_b+3 - //SEG131 [74] (word~) gfx_mode::$46 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$46 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$46 ] ) -- vwuz1=_lo_vduz2 + //SEG126 [70] (word~) gfx_mode::$46 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$46 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$46 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vwuz1=_lo_vduz2 lda plane_b sta _46 lda plane_b+1 sta _46+1 - //SEG132 [75] (byte~) gfx_mode::$47 ← < (word~) gfx_mode::$46 [ gfx_mode::plane_b#0 gfx_mode::$47 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$47 ] ) -- vbuaa=_lo_vwuz1 + //SEG127 [71] (byte~) gfx_mode::$47 ← < (word~) gfx_mode::$46 [ gfx_mode::plane_b#0 gfx_mode::$47 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$47 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_lo_vwuz1 lda _46 - //SEG133 [76] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte~) gfx_mode::$47 [ gfx_mode::plane_b#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 ] ) -- _deref_pbuc1=vbuaa + //SEG128 [72] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte~) gfx_mode::$47 [ gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta DTV_PLANEB_START_LO - //SEG134 [77] (word~) gfx_mode::$48 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$48 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$48 ] ) -- vwuz1=_lo_vduz2 + //SEG129 [73] (word~) gfx_mode::$48 ← < (dword) gfx_mode::plane_b#0 [ gfx_mode::plane_b#0 gfx_mode::$48 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$48 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vwuz1=_lo_vduz2 lda plane_b sta _48 lda plane_b+1 sta _48+1 - //SEG135 [78] (byte~) gfx_mode::$49 ← > (word~) gfx_mode::$48 [ gfx_mode::plane_b#0 gfx_mode::$49 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$49 ] ) -- vbuaa=_hi_vwuz1 - //SEG136 [79] *((const byte*) DTV_PLANEB_START_MI#0) ← (byte~) gfx_mode::$49 [ gfx_mode::plane_b#0 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::plane_b#0 ] ) -- _deref_pbuc1=vbuaa + //SEG130 [74] (byte~) gfx_mode::$49 ← > (word~) gfx_mode::$48 [ gfx_mode::plane_b#0 gfx_mode::$49 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 gfx_mode::$49 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_hi_vwuz1 + //SEG131 [75] *((const byte*) DTV_PLANEB_START_MI#0) ← (byte~) gfx_mode::$49 [ gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::plane_b#0 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta DTV_PLANEB_START_MI - //SEG137 [80] (word~) gfx_mode::$50 ← > (dword) gfx_mode::plane_b#0 [ gfx_mode::$50 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$50 ] ) -- vwuz1=_hi_vduz2 + //SEG132 [76] (word~) gfx_mode::$50 ← > (dword) gfx_mode::plane_b#0 [ gfx_mode::$50 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$50 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vwuz1=_hi_vduz2 lda plane_b+2 sta _50 lda plane_b+3 sta _50+1 - //SEG138 [81] (byte~) gfx_mode::$51 ← < (word~) gfx_mode::$50 [ gfx_mode::$51 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$51 ] ) -- vbuaa=_lo_vwuz1 + //SEG133 [77] (byte~) gfx_mode::$51 ← < (word~) gfx_mode::$50 [ gfx_mode::$51 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$51 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_lo_vwuz1 lda _50 - //SEG139 [82] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte~) gfx_mode::$51 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuaa + //SEG134 [78] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte~) gfx_mode::$51 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta DTV_PLANEB_START_HI - //SEG140 [83] (byte~) gfx_mode::$52 ← *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$52 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$52 ] ) -- vbuaa=_deref_pbuc1_rol_4 + //SEG135 [79] (byte~) gfx_mode::$52 ← *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$52 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$52 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_deref_pbuc1_rol_4 lda form_b_step_hi asl asl asl asl - //SEG141 [84] (byte~) gfx_mode::$53 ← (byte~) gfx_mode::$52 | *((const byte*) form_b_step_lo#0) [ gfx_mode::$53 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$53 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG136 [80] (byte~) gfx_mode::$53 ← (byte~) gfx_mode::$52 | *((const byte*) form_b_step_lo#0) [ gfx_mode::$53 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$53 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_b_step_lo - //SEG142 [85] *((const byte*) DTV_PLANEB_STEP#0) ← (byte~) gfx_mode::$53 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuaa + //SEG137 [81] *((const byte*) DTV_PLANEB_STEP#0) ← (byte~) gfx_mode::$53 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta DTV_PLANEB_STEP - //SEG143 [86] (byte~) gfx_mode::$54 ← *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$54 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$54 ] ) -- vbuaa=_deref_pbuc1_rol_4 + //SEG138 [82] (byte~) gfx_mode::$54 ← *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$54 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$54 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_deref_pbuc1_rol_4 lda form_b_mod_hi asl asl asl asl - //SEG144 [87] (byte~) gfx_mode::$55 ← (byte~) gfx_mode::$54 | *((const byte*) form_b_mod_lo#0) [ gfx_mode::$55 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$55 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG139 [83] (byte~) gfx_mode::$55 ← (byte~) gfx_mode::$54 | *((const byte*) form_b_mod_lo#0) [ gfx_mode::$55 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$55 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_b_mod_lo - //SEG145 [88] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte~) gfx_mode::$55 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuaa + //SEG140 [84] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte~) gfx_mode::$55 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta DTV_PLANEB_MODULO_LO - //SEG146 [89] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuc2 + //SEG141 [85] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_HI - //SEG147 [90] (byte~) gfx_mode::$56 ← *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$56 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$56 ] ) -- vbuaa=_deref_pbuc1_rol_4 + //SEG142 [86] (byte~) gfx_mode::$56 ← *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$56 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$56 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_deref_pbuc1_rol_4 lda form_vic_bg0_hi asl asl asl asl - //SEG148 [91] (byte~) gfx_mode::$57 ← (byte~) gfx_mode::$56 | *((const byte*) form_vic_bg0_lo#0) [ gfx_mode::$57 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$57 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG143 [87] (byte~) gfx_mode::$57 ← (byte~) gfx_mode::$56 | *((const byte*) form_vic_bg0_lo#0) [ gfx_mode::$57 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$57 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_vic_bg0_lo - //SEG149 [92] *((const byte*) BGCOL1#0) ← (byte~) gfx_mode::$57 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuaa + //SEG144 [88] *((const byte*) BGCOL1#0) ← (byte~) gfx_mode::$57 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta BGCOL1 - //SEG150 [93] (byte~) gfx_mode::$58 ← *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$58 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$58 ] ) -- vbuaa=_deref_pbuc1_rol_4 + //SEG145 [89] (byte~) gfx_mode::$58 ← *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$58 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$58 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_deref_pbuc1_rol_4 lda form_vic_bg1_hi asl asl asl asl - //SEG151 [94] (byte~) gfx_mode::$59 ← (byte~) gfx_mode::$58 | *((const byte*) form_vic_bg1_lo#0) [ gfx_mode::$59 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$59 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG146 [90] (byte~) gfx_mode::$59 ← (byte~) gfx_mode::$58 | *((const byte*) form_vic_bg1_lo#0) [ gfx_mode::$59 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$59 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_vic_bg1_lo - //SEG152 [95] *((const byte*) BGCOL2#0) ← (byte~) gfx_mode::$59 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuaa + //SEG147 [91] *((const byte*) BGCOL2#0) ← (byte~) gfx_mode::$59 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta BGCOL2 - //SEG153 [96] (byte~) gfx_mode::$60 ← *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$60 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$60 ] ) -- vbuaa=_deref_pbuc1_rol_4 + //SEG148 [92] (byte~) gfx_mode::$60 ← *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$60 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$60 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_deref_pbuc1_rol_4 lda form_vic_bg2_hi asl asl asl asl - //SEG154 [97] (byte~) gfx_mode::$61 ← (byte~) gfx_mode::$60 | *((const byte*) form_vic_bg2_lo#0) [ gfx_mode::$61 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$61 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG149 [93] (byte~) gfx_mode::$61 ← (byte~) gfx_mode::$60 | *((const byte*) form_vic_bg2_lo#0) [ gfx_mode::$61 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$61 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_vic_bg2_lo - //SEG155 [98] *((const byte*) BGCOL3#0) ← (byte~) gfx_mode::$61 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuaa + //SEG150 [94] *((const byte*) BGCOL3#0) ← (byte~) gfx_mode::$61 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta BGCOL3 - //SEG156 [99] (byte~) gfx_mode::$62 ← *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$62 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$62 ] ) -- vbuaa=_deref_pbuc1_rol_4 + //SEG151 [95] (byte~) gfx_mode::$62 ← *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_mode::$62 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$62 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=_deref_pbuc1_rol_4 lda form_vic_bg3_hi asl asl asl asl - //SEG157 [100] (byte~) gfx_mode::$63 ← (byte~) gfx_mode::$62 | *((const byte*) form_vic_bg3_lo#0) [ gfx_mode::$63 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::$63 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG152 [96] (byte~) gfx_mode::$63 ← (byte~) gfx_mode::$62 | *((const byte*) form_vic_bg3_lo#0) [ gfx_mode::$63 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::$63 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_vic_bg3_lo - //SEG158 [101] *((const byte*) BGCOL4#0) ← (byte~) gfx_mode::$63 [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) -- _deref_pbuc1=vbuaa + //SEG153 [97] *((const byte*) BGCOL4#0) ← (byte~) gfx_mode::$63 [ keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- _deref_pbuc1=vbuaa sta BGCOL4 - //SEG159 [102] phi from gfx_mode::@9 to gfx_mode::@10 [phi:gfx_mode::@9->gfx_mode::@10] - //SEG160 [102] phi (byte) gfx_mode::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_mode::@9->gfx_mode::@10#0] -- vbuxx=vbuc1 + //SEG154 [98] phi from gfx_mode::@9 to gfx_mode::@10 [phi:gfx_mode::@9->gfx_mode::@10] + //SEG155 [98] phi (byte) gfx_mode::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_mode::@9->gfx_mode::@10#0] -- vbuxx=vbuc1 ldx #0 - //SEG161 [102] phi from gfx_mode::@10 to gfx_mode::@10 [phi:gfx_mode::@10->gfx_mode::@10] - //SEG162 [102] phi (byte) gfx_mode::i#2 = (byte) gfx_mode::i#1 [phi:gfx_mode::@10->gfx_mode::@10#0] -- register_copy - //SEG163 gfx_mode::@10 + //SEG156 [98] phi from gfx_mode::@10 to gfx_mode::@10 [phi:gfx_mode::@10->gfx_mode::@10] + //SEG157 [98] phi (byte) gfx_mode::i#2 = (byte) gfx_mode::i#1 [phi:gfx_mode::@10->gfx_mode::@10#0] -- register_copy + //SEG158 gfx_mode::@10 b10: - //SEG164 [103] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::i#2) ← (byte) gfx_mode::i#2 [ gfx_mode::i#2 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::i#2 ] ) -- pbuc1_derefidx_vbuxx=vbuxx + //SEG159 [99] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::i#2) ← (byte) gfx_mode::i#2 [ gfx_mode::i#2 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::i#2 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- pbuc1_derefidx_vbuxx=vbuxx txa sta DTV_PALETTE,x - //SEG165 [104] (byte) gfx_mode::i#1 ← ++ (byte) gfx_mode::i#2 [ gfx_mode::i#1 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::i#1 ] ) -- vbuxx=_inc_vbuxx + //SEG160 [100] (byte) gfx_mode::i#1 ← ++ (byte) gfx_mode::i#2 [ gfx_mode::i#1 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::i#1 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuxx=_inc_vbuxx inx - //SEG166 [105] if((byte) gfx_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto gfx_mode::@10 [ gfx_mode::i#1 ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 gfx_mode::i#1 ] ) -- vbuxx_neq_vbuc1_then_la1 + //SEG161 [101] if((byte) gfx_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto gfx_mode::@10 [ gfx_mode::i#1 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 gfx_mode::i#1 keyboard_events_size#13 keyboard_modifiers#13 ] ) -- vbuxx_neq_vbuc1_then_la1 cpx #$10 bne b10 - //SEG167 gfx_mode::@return - //SEG168 [106] return [ ] ( main:2::gfx_mode:21 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) + //SEG162 [102] phi from gfx_mode::@10 gfx_mode::@37 to gfx_mode::@11 [phi:gfx_mode::@10/gfx_mode::@37->gfx_mode::@11] + //SEG163 [102] phi (byte) keyboard_modifiers#42 = (byte) keyboard_modifiers#13 [phi:gfx_mode::@10/gfx_mode::@37->gfx_mode::@11#0] -- register_copy + //SEG164 [102] phi (byte) keyboard_events_size#45 = (byte) keyboard_events_size#13 [phi:gfx_mode::@10/gfx_mode::@37->gfx_mode::@11#1] -- register_copy + //SEG165 gfx_mode::@11 + //SEG166 [103] if(true) goto gfx_mode::@14 [ keyboard_events_size#45 keyboard_modifiers#42 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#45 keyboard_modifiers#42 ] ) -- true_then_la1 + jmp b14 + //SEG167 [104] phi from gfx_mode::@11 gfx_mode::@37 to gfx_mode::@return [phi:gfx_mode::@11/gfx_mode::@37->gfx_mode::@return] + //SEG168 [104] phi (byte) keyboard_modifiers#11 = (byte) keyboard_modifiers#42 [phi:gfx_mode::@11/gfx_mode::@37->gfx_mode::@return#0] -- register_copy + //SEG169 [104] phi (byte) keyboard_events_size#11 = (byte) keyboard_events_size#45 [phi:gfx_mode::@11/gfx_mode::@37->gfx_mode::@return#1] -- register_copy + //SEG170 gfx_mode::@return + breturn: + //SEG171 [105] return [ keyboard_events_size#11 keyboard_modifiers#11 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#11 keyboard_modifiers#11 ] ) + rts + //SEG172 gfx_mode::@14 + b14: + //SEG173 [106] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto gfx_mode::@14 [ keyboard_events_size#45 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#45 ] ) -- _deref_pbuc1_neq_vbuc2_then_la1 + lda RASTER + cmp #$ff + bne b14 + //SEG174 [107] phi from gfx_mode::@14 to gfx_mode::@16 [phi:gfx_mode::@14->gfx_mode::@16] + //SEG175 gfx_mode::@16 + //SEG176 [108] call keyboard_event_scan param-assignment [ keyboard_modifiers#21 keyboard_events_size#105 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#105 ] ) + //SEG177 [119] phi from gfx_mode::@16 to keyboard_event_scan [phi:gfx_mode::@16->keyboard_event_scan] + //SEG178 [119] phi (byte) keyboard_events_size#104 = (byte) keyboard_events_size#45 [phi:gfx_mode::@16->keyboard_event_scan#0] -- register_copy + jsr keyboard_event_scan + //SEG179 [109] phi from gfx_mode::@16 to gfx_mode::@36 [phi:gfx_mode::@16->gfx_mode::@36] + //SEG180 gfx_mode::@36 + //SEG181 [110] call keyboard_event_get param-assignment [ keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#2 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#2 ] ) + jsr keyboard_event_get + //SEG182 [111] (byte) keyboard_event_get::return#3 ← (byte) keyboard_event_get::return#2 [ keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#3 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#3 ] ) + // (byte) keyboard_event_get::return#3 = (byte) keyboard_event_get::return#2 // register copy reg byte a + //SEG183 gfx_mode::@37 + //SEG184 [112] (byte) gfx_mode::keyboard_event#0 ← (byte) keyboard_event_get::return#3 [ keyboard_events_size#24 keyboard_modifiers#21 gfx_mode::keyboard_event#0 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#24 keyboard_modifiers#21 gfx_mode::keyboard_event#0 ] ) + // (byte) gfx_mode::keyboard_event#0 = (byte) keyboard_event_get::return#3 // register copy reg byte a + //SEG185 [113] if((byte) gfx_mode::keyboard_event#0!=(const byte) KEY_SPACE#0) goto gfx_mode::@11 [ keyboard_events_size#24 keyboard_modifiers#21 ] ( main:2::gfx_mode:17 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#24 keyboard_modifiers#21 ] ) -- vbuaa_neq_vbuc1_then_la1 + cmp #KEY_SPACE + bne b14 + jmp breturn +} +//SEG186 keyboard_event_get +keyboard_event_get: { + //SEG187 [114] if((byte) keyboard_events_size#105!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_get::@1 [ keyboard_events_size#105 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#105 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 ] ) -- vbuz1_neq_0_then_la1 + lda keyboard_events_size + bne b1 + //SEG188 [115] phi from keyboard_event_get to keyboard_event_get::@return [phi:keyboard_event_get->keyboard_event_get::@return] + //SEG189 [115] phi (byte) keyboard_events_size#24 = (byte) keyboard_events_size#105 [phi:keyboard_event_get->keyboard_event_get::@return#0] -- register_copy + //SEG190 [115] phi (byte) keyboard_event_get::return#2 = (byte/word/signed word/dword/signed dword) 255 [phi:keyboard_event_get->keyboard_event_get::@return#1] -- vbuaa=vbuc1 + lda #$ff + //SEG191 keyboard_event_get::@return + breturn: + //SEG192 [116] return [ keyboard_events_size#24 keyboard_event_get::return#2 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#24 keyboard_event_get::return#2 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#24 keyboard_event_get::return#2 ] ) + rts + //SEG193 keyboard_event_get::@1 + b1: + //SEG194 [117] (byte) keyboard_events_size#4 ← -- (byte) keyboard_events_size#105 [ keyboard_events_size#4 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#4 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#4 ] ) -- vbuz1=_dec_vbuz1 + dec keyboard_events_size + //SEG195 [118] (byte) keyboard_event_get::return#0 ← *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) [ keyboard_event_get::return#0 keyboard_events_size#4 ] ( main:2::gfx_mode:17::keyboard_event_get:110 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_event_get::return#0 keyboard_events_size#4 ] main:2::form_mode:15::form_control:202::keyboard_event_get:219 [ keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_get::return#0 keyboard_events_size#4 ] ) -- vbuaa=pbuc1_derefidx_vbuz1 + ldy keyboard_events_size + lda keyboard_events,y + //SEG196 [115] phi from keyboard_event_get::@1 to keyboard_event_get::@return [phi:keyboard_event_get::@1->keyboard_event_get::@return] + //SEG197 [115] phi (byte) keyboard_events_size#24 = (byte) keyboard_events_size#4 [phi:keyboard_event_get::@1->keyboard_event_get::@return#0] -- register_copy + //SEG198 [115] phi (byte) keyboard_event_get::return#2 = (byte) keyboard_event_get::return#0 [phi:keyboard_event_get::@1->keyboard_event_get::@return#1] -- register_copy + jmp breturn +} +//SEG199 keyboard_event_scan +keyboard_event_scan: { + .label row_scan = $11 + .label keycode = 3 + .label row = 2 + //SEG200 [120] phi from keyboard_event_scan to keyboard_event_scan::@1 [phi:keyboard_event_scan->keyboard_event_scan::@1] + //SEG201 [120] phi (byte) keyboard_events_size#112 = (byte) keyboard_events_size#104 [phi:keyboard_event_scan->keyboard_event_scan::@1#0] -- register_copy + //SEG202 [120] phi (byte) keyboard_event_scan::keycode#11 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:keyboard_event_scan->keyboard_event_scan::@1#1] -- vbuz1=vbuc1 + lda #0 + sta keycode + //SEG203 [120] phi (byte) keyboard_event_scan::row#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:keyboard_event_scan->keyboard_event_scan::@1#2] -- vbuz1=vbuc1 + sta row + //SEG204 [120] phi from keyboard_event_scan::@8 to keyboard_event_scan::@1 [phi:keyboard_event_scan::@8->keyboard_event_scan::@1] + //SEG205 [120] phi (byte) keyboard_events_size#112 = (byte) keyboard_events_size#105 [phi:keyboard_event_scan::@8->keyboard_event_scan::@1#0] -- register_copy + //SEG206 [120] phi (byte) keyboard_event_scan::keycode#11 = (byte) keyboard_event_scan::keycode#14 [phi:keyboard_event_scan::@8->keyboard_event_scan::@1#1] -- register_copy + //SEG207 [120] phi (byte) keyboard_event_scan::row#2 = (byte) keyboard_event_scan::row#1 [phi:keyboard_event_scan::@8->keyboard_event_scan::@1#2] -- register_copy + //SEG208 keyboard_event_scan::@1 + b1: + //SEG209 [121] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_event_scan::row#2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::rowid#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::rowid#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::rowid#0 ] ) -- vbuxx=vbuz1 + ldx row + //SEG210 [122] call keyboard_matrix_read param-assignment [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] ) + jsr keyboard_matrix_read + //SEG211 [123] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#2 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#2 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#2 ] ) + // (byte) keyboard_matrix_read::return#2 = (byte) keyboard_matrix_read::return#0 // register copy reg byte a + //SEG212 keyboard_event_scan::@25 + //SEG213 [124] (byte) keyboard_event_scan::row_scan#0 ← (byte) keyboard_matrix_read::return#2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ) -- vbuz1=vbuaa + sta row_scan + //SEG214 [125] if((byte) keyboard_event_scan::row_scan#0==*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_event_scan::row_scan#0 ] ) -- vbuz1_eq_pbuc1_derefidx_vbuz2_then_la1 + ldy row + lda keyboard_scan_values,y + cmp row_scan + bne !b2+ + jmp b2 + !b2: + //SEG215 [126] phi from keyboard_event_scan::@25 to keyboard_event_scan::@3 [phi:keyboard_event_scan::@25->keyboard_event_scan::@3] + //SEG216 [126] phi (byte) keyboard_events_size#18 = (byte) keyboard_events_size#112 [phi:keyboard_event_scan::@25->keyboard_event_scan::@3#0] -- register_copy + //SEG217 [126] phi (byte) keyboard_event_scan::keycode#10 = (byte) keyboard_event_scan::keycode#11 [phi:keyboard_event_scan::@25->keyboard_event_scan::@3#1] -- register_copy + //SEG218 [126] phi (byte) keyboard_event_scan::col#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:keyboard_event_scan::@25->keyboard_event_scan::@3#2] -- vbuxx=vbuc1 + ldx #0 + //SEG219 [126] phi from keyboard_event_scan::@4 to keyboard_event_scan::@3 [phi:keyboard_event_scan::@4->keyboard_event_scan::@3] + //SEG220 [126] phi (byte) keyboard_events_size#18 = (byte) keyboard_events_size#111 [phi:keyboard_event_scan::@4->keyboard_event_scan::@3#0] -- register_copy + //SEG221 [126] phi (byte) keyboard_event_scan::keycode#10 = (byte) keyboard_event_scan::keycode#15 [phi:keyboard_event_scan::@4->keyboard_event_scan::@3#1] -- register_copy + //SEG222 [126] phi (byte) keyboard_event_scan::col#2 = (byte) keyboard_event_scan::col#1 [phi:keyboard_event_scan::@4->keyboard_event_scan::@3#2] -- register_copy + //SEG223 keyboard_event_scan::@3 + b3: + //SEG224 [127] (byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$3 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$3 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$3 ] ) -- vbuaa=vbuz1_bxor_pbuc1_derefidx_vbuz2 + lda row_scan + ldy row + eor keyboard_scan_values,y + //SEG225 [128] (byte~) keyboard_event_scan::$4 ← (byte~) keyboard_event_scan::$3 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$4 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$4 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$4 ] ) -- vbuaa=vbuaa_band_pbuc1_derefidx_vbuxx + and keyboard_matrix_col_bitmask,x + //SEG226 [129] if((byte~) keyboard_event_scan::$4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@4 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) -- vbuaa_eq_0_then_la1 + cmp #0 + beq b4 + //SEG227 keyboard_event_scan::@14 + //SEG228 [130] if((byte) keyboard_events_size#18==(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@4 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) -- vbuz1_eq_vbuc1_then_la1 + lda keyboard_events_size + cmp #8 + beq b4 + //SEG229 keyboard_event_scan::@15 + //SEG230 [131] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] ) -- vbuaa=vbuz1_band_pbuc1_derefidx_vbuxx + lda keyboard_matrix_col_bitmask,x + and row_scan + //SEG231 [132] if((byte) keyboard_event_scan::event_type#0!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@6 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) -- vbuaa_neq_0_then_la1 + cmp #0 + bne b6 + //SEG232 keyboard_event_scan::@16 + //SEG233 [133] (byte/word/dword~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) 64 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$12 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$12 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$12 ] ) -- vbuaa=vbuz1_bor_vbuc1 + lda #$40 + ora keycode + //SEG234 [134] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ← (byte/word/dword~) keyboard_event_scan::$12 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) -- pbuc1_derefidx_vbuz1=vbuaa + ldy keyboard_events_size + sta keyboard_events,y + //SEG235 [135] (byte) keyboard_events_size#2 ← ++ (byte) keyboard_events_size#18 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#2 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#2 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#2 ] ) -- vbuz1=_inc_vbuz1 + inc keyboard_events_size + //SEG236 [136] phi from keyboard_event_scan::@14 keyboard_event_scan::@16 keyboard_event_scan::@3 keyboard_event_scan::@6 to keyboard_event_scan::@4 [phi:keyboard_event_scan::@14/keyboard_event_scan::@16/keyboard_event_scan::@3/keyboard_event_scan::@6->keyboard_event_scan::@4] + //SEG237 [136] phi (byte) keyboard_events_size#111 = (byte) keyboard_events_size#18 [phi:keyboard_event_scan::@14/keyboard_event_scan::@16/keyboard_event_scan::@3/keyboard_event_scan::@6->keyboard_event_scan::@4#0] -- register_copy + //SEG238 keyboard_event_scan::@4 + b4: + //SEG239 [137] (byte) keyboard_event_scan::keycode#15 ← ++ (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ) -- vbuz1=_inc_vbuz1 + inc keycode + //SEG240 [138] (byte) keyboard_event_scan::col#1 ← ++ (byte) keyboard_event_scan::col#2 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ) -- vbuxx=_inc_vbuxx + inx + //SEG241 [139] if((byte) keyboard_event_scan::col#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@3 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ) -- vbuxx_neq_vbuc1_then_la1 + cpx #8 + bne b3 + //SEG242 keyboard_event_scan::@18 + //SEG243 [140] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#111 ] ) -- pbuc1_derefidx_vbuz1=vbuz2 + lda row_scan + ldy row + sta keyboard_scan_values,y + //SEG244 [141] phi from keyboard_event_scan::@18 keyboard_event_scan::@2 to keyboard_event_scan::@8 [phi:keyboard_event_scan::@18/keyboard_event_scan::@2->keyboard_event_scan::@8] + //SEG245 [141] phi (byte) keyboard_events_size#105 = (byte) keyboard_events_size#111 [phi:keyboard_event_scan::@18/keyboard_event_scan::@2->keyboard_event_scan::@8#0] -- register_copy + //SEG246 [141] phi (byte) keyboard_event_scan::keycode#14 = (byte) keyboard_event_scan::keycode#15 [phi:keyboard_event_scan::@18/keyboard_event_scan::@2->keyboard_event_scan::@8#1] -- register_copy + //SEG247 keyboard_event_scan::@8 + b8: + //SEG248 [142] (byte) keyboard_event_scan::row#1 ← ++ (byte) keyboard_event_scan::row#2 [ keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ) -- vbuz1=_inc_vbuz1 + inc row + //SEG249 [143] if((byte) keyboard_event_scan::row#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@1 [ keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ) -- vbuz1_neq_vbuc1_then_la1 + lda row + cmp #8 + bne b1 + //SEG250 [144] phi from keyboard_event_scan::@8 to keyboard_event_scan::@20 [phi:keyboard_event_scan::@8->keyboard_event_scan::@20] + //SEG251 keyboard_event_scan::@20 + //SEG252 [145] call keyboard_event_pressed param-assignment [ keyboard_events_size#105 keyboard_event_pressed::return#10 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 ] ) + //SEG253 [173] phi from keyboard_event_scan::@20 to keyboard_event_pressed [phi:keyboard_event_scan::@20->keyboard_event_pressed] + //SEG254 [173] phi (byte) keyboard_event_pressed::keycode#4 = (const byte) KEY_LSHIFT#0 [phi:keyboard_event_scan::@20->keyboard_event_pressed#0] -- vbuz1=vbuc1 + lda #KEY_LSHIFT + sta keyboard_event_pressed.keycode + jsr keyboard_event_pressed + //SEG255 [146] (byte) keyboard_event_pressed::return#0 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#105 keyboard_event_pressed::return#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#0 ] ) + // (byte) keyboard_event_pressed::return#0 = (byte) keyboard_event_pressed::return#10 // register copy reg byte a + //SEG256 keyboard_event_scan::@26 + //SEG257 [147] (byte~) keyboard_event_scan::$16 ← (byte) keyboard_event_pressed::return#0 [ keyboard_events_size#105 keyboard_event_scan::$16 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_scan::$16 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_scan::$16 ] ) + // (byte~) keyboard_event_scan::$16 = (byte) keyboard_event_pressed::return#0 // register copy reg byte a + //SEG258 [148] if((byte~) keyboard_event_scan::$16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@9 [ keyboard_events_size#105 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 ] ) -- vbuaa_eq_0_then_la1 + cmp #0 + beq b5 + //SEG259 [149] phi from keyboard_event_scan::@26 to keyboard_event_scan::@21 [phi:keyboard_event_scan::@26->keyboard_event_scan::@21] + //SEG260 keyboard_event_scan::@21 + //SEG261 [150] phi from keyboard_event_scan::@21 to keyboard_event_scan::@9 [phi:keyboard_event_scan::@21->keyboard_event_scan::@9] + //SEG262 [150] phi (byte) keyboard_modifiers#18 = (byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) KEY_MODIFIER_LSHIFT#0 [phi:keyboard_event_scan::@21->keyboard_event_scan::@9#0] -- vbuz1=vbuc1 + lda #0|KEY_MODIFIER_LSHIFT + sta keyboard_modifiers + jmp b9 + //SEG263 [150] phi from keyboard_event_scan::@26 to keyboard_event_scan::@9 [phi:keyboard_event_scan::@26->keyboard_event_scan::@9] + b5: + //SEG264 [150] phi (byte) keyboard_modifiers#18 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:keyboard_event_scan::@26->keyboard_event_scan::@9#0] -- vbuz1=vbuc1 + lda #0 + sta keyboard_modifiers + //SEG265 keyboard_event_scan::@9 + b9: + //SEG266 [151] call keyboard_event_pressed param-assignment [ keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#18 ] ) + //SEG267 [173] phi from keyboard_event_scan::@9 to keyboard_event_pressed [phi:keyboard_event_scan::@9->keyboard_event_pressed] + //SEG268 [173] phi (byte) keyboard_event_pressed::keycode#4 = (const byte) KEY_RSHIFT#0 [phi:keyboard_event_scan::@9->keyboard_event_pressed#0] -- vbuz1=vbuc1 + lda #KEY_RSHIFT + sta keyboard_event_pressed.keycode + jsr keyboard_event_pressed + //SEG269 [152] (byte) keyboard_event_pressed::return#1 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#1 ] ) + // (byte) keyboard_event_pressed::return#1 = (byte) keyboard_event_pressed::return#10 // register copy reg byte a + //SEG270 keyboard_event_scan::@27 + //SEG271 [153] (byte~) keyboard_event_scan::$20 ← (byte) keyboard_event_pressed::return#1 [ keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_scan::$20 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_scan::$20 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_scan::$20 ] ) + // (byte~) keyboard_event_scan::$20 = (byte) keyboard_event_pressed::return#1 // register copy reg byte a + //SEG272 [154] if((byte~) keyboard_event_scan::$20==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@10 [ keyboard_events_size#105 keyboard_modifiers#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 ] ) -- vbuaa_eq_0_then_la1 + cmp #0 + beq b10 + //SEG273 keyboard_event_scan::@22 + //SEG274 [155] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#18 | (const byte) KEY_MODIFIER_RSHIFT#0 [ keyboard_events_size#105 keyboard_modifiers#3 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#3 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#3 ] ) -- vbuz1=vbuz1_bor_vbuc1 + lda #KEY_MODIFIER_RSHIFT + ora keyboard_modifiers + sta keyboard_modifiers + //SEG275 [156] phi from keyboard_event_scan::@22 keyboard_event_scan::@27 to keyboard_event_scan::@10 [phi:keyboard_event_scan::@22/keyboard_event_scan::@27->keyboard_event_scan::@10] + //SEG276 [156] phi (byte) keyboard_modifiers#19 = (byte) keyboard_modifiers#3 [phi:keyboard_event_scan::@22/keyboard_event_scan::@27->keyboard_event_scan::@10#0] -- register_copy + //SEG277 keyboard_event_scan::@10 + b10: + //SEG278 [157] call keyboard_event_pressed param-assignment [ keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#19 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#19 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#19 ] ) + //SEG279 [173] phi from keyboard_event_scan::@10 to keyboard_event_pressed [phi:keyboard_event_scan::@10->keyboard_event_pressed] + //SEG280 [173] phi (byte) keyboard_event_pressed::keycode#4 = (const byte) KEY_CTRL#0 [phi:keyboard_event_scan::@10->keyboard_event_pressed#0] -- vbuz1=vbuc1 + lda #KEY_CTRL + sta keyboard_event_pressed.keycode + jsr keyboard_event_pressed + //SEG281 [158] (byte) keyboard_event_pressed::return#2 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#2 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#2 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#2 ] ) + // (byte) keyboard_event_pressed::return#2 = (byte) keyboard_event_pressed::return#10 // register copy reg byte a + //SEG282 keyboard_event_scan::@28 + //SEG283 [159] (byte~) keyboard_event_scan::$24 ← (byte) keyboard_event_pressed::return#2 [ keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_scan::$24 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_scan::$24 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_scan::$24 ] ) + // (byte~) keyboard_event_scan::$24 = (byte) keyboard_event_pressed::return#2 // register copy reg byte a + //SEG284 [160] if((byte~) keyboard_event_scan::$24==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@11 [ keyboard_events_size#105 keyboard_modifiers#19 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 ] ) -- vbuaa_eq_0_then_la1 + cmp #0 + beq b11 + //SEG285 keyboard_event_scan::@23 + //SEG286 [161] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#19 | (const byte) KEY_MODIFIER_CTRL#0 [ keyboard_events_size#105 keyboard_modifiers#4 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#4 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#4 ] ) -- vbuz1=vbuz1_bor_vbuc1 + lda #KEY_MODIFIER_CTRL + ora keyboard_modifiers + sta keyboard_modifiers + //SEG287 [162] phi from keyboard_event_scan::@23 keyboard_event_scan::@28 to keyboard_event_scan::@11 [phi:keyboard_event_scan::@23/keyboard_event_scan::@28->keyboard_event_scan::@11] + //SEG288 [162] phi (byte) keyboard_modifiers#20 = (byte) keyboard_modifiers#4 [phi:keyboard_event_scan::@23/keyboard_event_scan::@28->keyboard_event_scan::@11#0] -- register_copy + //SEG289 keyboard_event_scan::@11 + b11: + //SEG290 [163] call keyboard_event_pressed param-assignment [ keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#20 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#20 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 keyboard_modifiers#20 ] ) + //SEG291 [173] phi from keyboard_event_scan::@11 to keyboard_event_pressed [phi:keyboard_event_scan::@11->keyboard_event_pressed] + //SEG292 [173] phi (byte) keyboard_event_pressed::keycode#4 = (const byte) KEY_COMMODORE#0 [phi:keyboard_event_scan::@11->keyboard_event_pressed#0] -- vbuz1=vbuc1 + lda #KEY_COMMODORE + sta keyboard_event_pressed.keycode + jsr keyboard_event_pressed + //SEG293 [164] (byte) keyboard_event_pressed::return#3 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#3 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#3 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#3 ] ) + // (byte) keyboard_event_pressed::return#3 = (byte) keyboard_event_pressed::return#10 // register copy reg byte a + //SEG294 keyboard_event_scan::@29 + //SEG295 [165] (byte~) keyboard_event_scan::$28 ← (byte) keyboard_event_pressed::return#3 [ keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_scan::$28 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_scan::$28 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_scan::$28 ] ) + // (byte~) keyboard_event_scan::$28 = (byte) keyboard_event_pressed::return#3 // register copy reg byte a + //SEG296 [166] if((byte~) keyboard_event_scan::$28==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@return [ keyboard_events_size#105 keyboard_modifiers#20 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 ] ) -- vbuaa_eq_0_then_la1 + cmp #0 + beq breturn + //SEG297 keyboard_event_scan::@24 + //SEG298 [167] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#20 | (const byte) KEY_MODIFIER_COMMODORE#0 [ keyboard_events_size#105 keyboard_modifiers#5 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#5 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#5 ] ) -- vbuz1=vbuz1_bor_vbuc1 + lda #KEY_MODIFIER_COMMODORE + ora keyboard_modifiers + sta keyboard_modifiers + //SEG299 [168] phi from keyboard_event_scan::@24 keyboard_event_scan::@29 to keyboard_event_scan::@return [phi:keyboard_event_scan::@24/keyboard_event_scan::@29->keyboard_event_scan::@return] + //SEG300 [168] phi (byte) keyboard_modifiers#21 = (byte) keyboard_modifiers#5 [phi:keyboard_event_scan::@24/keyboard_event_scan::@29->keyboard_event_scan::@return#0] -- register_copy + //SEG301 keyboard_event_scan::@return + breturn: + //SEG302 [169] return [ keyboard_modifiers#21 keyboard_events_size#105 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_modifiers#21 keyboard_events_size#105 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_modifiers#21 keyboard_events_size#105 ] ) + rts + //SEG303 keyboard_event_scan::@6 + b6: + //SEG304 [170] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ← (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) -- pbuc1_derefidx_vbuz1=vbuz2 + lda keycode + ldy keyboard_events_size + sta keyboard_events,y + //SEG305 [171] (byte) keyboard_events_size#1 ← ++ (byte) keyboard_events_size#18 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#1 ] ) -- vbuz1=_inc_vbuz1 + inc keyboard_events_size + jmp b4 + //SEG306 keyboard_event_scan::@2 + b2: + //SEG307 [172] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ keyboard_event_scan::row#2 keyboard_events_size#112 keyboard_event_scan::keycode#1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_events_size#112 keyboard_event_scan::keycode#1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_events_size#112 keyboard_event_scan::keycode#1 ] ) -- vbuz1=vbuz1_plus_vbuc1 + lda #8 + clc + adc keycode + sta keycode + jmp b8 +} +//SEG308 keyboard_event_pressed +keyboard_event_pressed: { + .label keycode = 2 + //SEG309 [174] (byte~) keyboard_event_pressed::$0 ← (byte) keyboard_event_pressed::keycode#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ) -- vbuaa=vbuz1_ror_3 + lda keycode + lsr + lsr + lsr + //SEG310 [175] (byte) keyboard_event_pressed::row_bits#0 ← *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) [ keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] ) -- vbuyy=pbuc1_derefidx_vbuaa + tax + ldy keyboard_scan_values,x + //SEG311 [176] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ) -- vbuaa=vbuz1_band_vbuc1 + lda #7 + and keycode + //SEG312 [177] (byte) keyboard_event_pressed::return#10 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) [ keyboard_event_pressed::return#10 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] ) -- vbuaa=vbuyy_band_pbuc1_derefidx_vbuaa + tax + tya + and keyboard_matrix_col_bitmask,x + //SEG313 keyboard_event_pressed::@return + //SEG314 [178] return [ keyboard_event_pressed::return#10 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:145 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:145 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:151 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:151 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:157 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:157 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_event_pressed:163 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_event_pressed:163 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#105 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] ) rts } -//SEG169 form_control +//SEG315 keyboard_matrix_read +keyboard_matrix_read: { + //SEG316 [179] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_matrix_read:122 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_matrix_read:122 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 ] ) -- _deref_pbuc1=pbuc2_derefidx_vbuxx + lda keyboard_matrix_row_bitmask,x + sta CIA1_PORT_A + //SEG317 [180] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_matrix_read:122 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_matrix_read:122 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] ) -- vbuaa=_bnot__deref_pbuc1 + lda CIA1_PORT_B + eor #$ff + //SEG318 keyboard_matrix_read::@return + //SEG319 [181] return [ keyboard_matrix_read::return#0 ] ( main:2::gfx_mode:17::keyboard_event_scan:108::keyboard_matrix_read:122 [ form_cursor_count#13 form_field_idx#14 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] main:2::form_mode:15::form_control:202::keyboard_event_scan:217::keyboard_matrix_read:122 [ form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#112 keyboard_matrix_read::return#0 ] ) + rts +} +//SEG320 form_mode +form_mode: { + //SEG321 [182] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) 65536 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #($ffffffff&FORM_CHARSET)/$10000 + sta DTV_GRAPHICS_VIC_BANK + //SEG322 [183] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #DTV_COLOR_BANK_DEFAULT/$400 + sta DTV_COLOR_BANK_LO + //SEG323 [184] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #0 + sta DTV_COLOR_BANK_HI + //SEG324 [185] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #3 + sta CIA2_PORT_A_DDR + //SEG325 [186] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) 16384 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #3^FORM_CHARSET/$4000 + sta CIA2_PORT_A + //SEG326 [187] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #0 + sta DTV_CONTROL + //SEG327 [188] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #VIC_DEN|VIC_RSEL|3 + sta VIC_CONTROL + //SEG328 [189] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #VIC_CSEL + sta VIC_CONTROL2 + //SEG329 [190] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) 16383/(byte/signed byte/word/signed word/dword/signed dword) 64|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) 16383/(word/signed word/dword/signed dword) 1024 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #(FORM_SCREEN&$3fff)/$40|(FORM_CHARSET&$3fff)/$400 + sta VIC_MEMORY + //SEG330 [191] phi from form_mode to form_mode::@1 [phi:form_mode->form_mode::@1] + //SEG331 [191] phi (byte) form_mode::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_mode->form_mode::@1#0] -- vbuxx=vbuc1 + ldx #0 + //SEG332 [191] phi from form_mode::@1 to form_mode::@1 [phi:form_mode::@1->form_mode::@1] + //SEG333 [191] phi (byte) form_mode::i#2 = (byte) form_mode::i#1 [phi:form_mode::@1->form_mode::@1#0] -- register_copy + //SEG334 form_mode::@1 + b1: + //SEG335 [192] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ← *((const byte[16]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#2 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#2 ] ) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx + lda DTV_PALETTE_DEFAULT,x + sta DTV_PALETTE,x + //SEG336 [193] (byte) form_mode::i#1 ← ++ (byte) form_mode::i#2 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#1 ] ) -- vbuxx=_inc_vbuxx + inx + //SEG337 [194] if((byte) form_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto form_mode::@1 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 form_mode::i#1 ] ) -- vbuxx_neq_vbuc1_then_la1 + cpx #$10 + bne b1 + //SEG338 form_mode::@9 + //SEG339 [195] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ( main:2::form_mode:15 [ form_cursor_count#1 keyboard_events_size#27 keyboard_modifiers#24 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 + lda #0 + sta BGCOL + //SEG340 [196] phi from form_mode::@19 form_mode::@9 to form_mode::@2 [phi:form_mode::@19/form_mode::@9->form_mode::@2] + //SEG341 [196] phi (byte) form_field_idx#28 = (byte) form_field_idx#18 [phi:form_mode::@19/form_mode::@9->form_mode::@2#0] -- register_copy + //SEG342 [196] phi (byte) keyboard_modifiers#45 = (byte) keyboard_modifiers#21 [phi:form_mode::@19/form_mode::@9->form_mode::@2#1] -- register_copy + //SEG343 [196] phi (byte) keyboard_events_size#47 = (byte) keyboard_events_size#24 [phi:form_mode::@19/form_mode::@9->form_mode::@2#2] -- register_copy + //SEG344 [196] phi (signed byte) form_cursor_count#21 = (signed byte) form_cursor_count#16 [phi:form_mode::@19/form_mode::@9->form_mode::@2#3] -- register_copy + //SEG345 form_mode::@2 + //SEG346 [197] if(true) goto form_mode::@5 [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ( main:2::form_mode:15 [ keyboard_events_size#47 form_cursor_count#21 keyboard_modifiers#45 form_field_idx#28 ] ) -- true_then_la1 + jmp b5 + //SEG347 [198] phi from form_mode::@19 form_mode::@2 to form_mode::@return [phi:form_mode::@19/form_mode::@2->form_mode::@return] + //SEG348 [198] phi (byte) form_field_idx#14 = (byte) form_field_idx#18 [phi:form_mode::@19/form_mode::@2->form_mode::@return#0] -- register_copy + //SEG349 [198] phi (byte) keyboard_modifiers#13 = (byte) keyboard_modifiers#21 [phi:form_mode::@19/form_mode::@2->form_mode::@return#1] -- register_copy + //SEG350 [198] phi (byte) keyboard_events_size#13 = (byte) keyboard_events_size#24 [phi:form_mode::@19/form_mode::@2->form_mode::@return#2] -- register_copy + //SEG351 [198] phi (signed byte) form_cursor_count#13 = (signed byte) form_cursor_count#16 [phi:form_mode::@19/form_mode::@2->form_mode::@return#3] -- register_copy + //SEG352 form_mode::@return + breturn: + //SEG353 [199] return [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ( main:2::form_mode:15 [ form_cursor_count#13 form_field_idx#14 keyboard_events_size#13 keyboard_modifiers#13 ] ) + rts + //SEG354 form_mode::@5 + b5: + //SEG355 [200] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto form_mode::@5 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 ] ( main:2::form_mode:15 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 ] ) -- _deref_pbuc1_neq_vbuc2_then_la1 + lda RASTER + cmp #$ff + bne b5 + //SEG356 [201] phi from form_mode::@5 to form_mode::@7 [phi:form_mode::@5->form_mode::@7] + //SEG357 form_mode::@7 + //SEG358 [202] call form_control param-assignment [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ( main:2::form_mode:15 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ) + jsr form_control + //SEG359 [203] (byte) form_control::return#0 ← (byte) form_control::return#2 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#0 ] ( main:2::form_mode:15 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#0 ] ) -- vbuaa=vbuxx + txa + //SEG360 form_mode::@19 + //SEG361 [204] (byte~) form_mode::$25 ← (byte) form_control::return#0 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_mode::$25 ] ( main:2::form_mode:15 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_mode::$25 ] ) + // (byte~) form_mode::$25 = (byte) form_control::return#0 // register copy reg byte a + //SEG362 [205] if((byte~) form_mode::$25==(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_mode::@2 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 ] ( main:2::form_mode:15 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 ] ) -- vbuaa_eq_0_then_la1 + cmp #0 + beq b5 + jmp breturn +} +//SEG363 form_control form_control: { .label field = 7 - //SEG170 [107] (byte) form_field_ptr::field_idx#1 ← (byte) form_field_idx#1 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::field_idx#1 ] ( main:2::form_control:19 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::field_idx#1 ] ) -- vbuxx=vbuz1 + //SEG364 [206] (byte) form_field_ptr::field_idx#1 ← (byte) form_field_idx#28 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#1 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#1 ] ) -- vbuxx=vbuz1 ldx form_field_idx - //SEG171 [108] call form_field_ptr param-assignment [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#0 ] ( main:2::form_control:19 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#0 ] ) - //SEG172 [218] phi from form_control to form_field_ptr [phi:form_control->form_field_ptr] - //SEG173 [218] phi (byte) form_field_ptr::field_idx#2 = (byte) form_field_ptr::field_idx#1 [phi:form_control->form_field_ptr#0] -- register_copy + //SEG365 [207] call form_field_ptr param-assignment [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] ) + //SEG366 [251] phi from form_control to form_field_ptr [phi:form_control->form_field_ptr] + //SEG367 [251] phi (byte) form_field_ptr::field_idx#2 = (byte) form_field_ptr::field_idx#1 [phi:form_control->form_field_ptr#0] -- register_copy jsr form_field_ptr - //SEG174 [109] (byte*) form_field_ptr::return#3 ← (byte*) form_field_ptr::return#0 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#3 ] ( main:2::form_control:19 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#3 ] ) + //SEG368 [208] (byte*) form_field_ptr::return#3 ← (byte*) form_field_ptr::return#0 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#3 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#3 ] ) // (byte*) form_field_ptr::return#3 = (byte*) form_field_ptr::return#0 // register copy zp ZP_WORD:7 - //SEG175 form_control::@29 - //SEG176 [110] (byte*) form_control::field#0 ← (byte*) form_field_ptr::return#3 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_control::field#0 ] ( main:2::form_control:19 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_control::field#0 ] ) + //SEG369 form_control::@33 + //SEG370 [209] (byte*) form_control::field#0 ← (byte*) form_field_ptr::return#3 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_control::field#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_control::field#0 ] ) // (byte*) form_control::field#0 = (byte*) form_field_ptr::return#3 // register copy zp ZP_WORD:7 - //SEG177 [111] (signed byte) form_cursor_count#3 ← -- (signed byte) form_cursor_count#1 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ) -- vbsz1=_dec_vbsz1 + //SEG371 [210] (signed byte) form_cursor_count#5 ← -- (signed byte) form_cursor_count#21 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ) -- vbsz1=_dec_vbsz1 dec form_cursor_count - //SEG178 [112] if((signed byte) form_cursor_count#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@32 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#3 ] ) -- vbsz1_ge_0_then_la1 + //SEG372 [211] if((signed byte) form_cursor_count#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@36 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#5 ] ) -- vbsz1_ge_0_then_la1 lda form_cursor_count cmp #0 bpl b1 - //SEG179 [113] phi from form_control::@29 to form_control::@1 [phi:form_control::@29->form_control::@1] - //SEG180 [113] phi (signed byte) form_cursor_count#11 = (const signed byte) FORM_CURSOR_BLINK#0 [phi:form_control::@29->form_control::@1#0] -- vbsz1=vbsc1 + //SEG373 [212] phi from form_control::@33 to form_control::@1 [phi:form_control::@33->form_control::@1] + //SEG374 [212] phi (signed byte) form_cursor_count#15 = (const signed byte) FORM_CURSOR_BLINK#0 [phi:form_control::@33->form_control::@1#0] -- vbsz1=vbsc1 lda #FORM_CURSOR_BLINK sta form_cursor_count - //SEG181 form_control::@1 + //SEG375 form_control::@1 b1: - //SEG182 [114] if((signed byte) form_cursor_count#11>=(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2) goto form_control::@2 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ) -- vbsz1_ge_vbuc1_then_la1 + //SEG376 [213] if((signed byte) form_cursor_count#15>=(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2) goto form_control::@2 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- vbsz1_ge_vbuc1_then_la1 lda form_cursor_count sec sbc #FORM_CURSOR_BLINK/2 @@ -16215,630 +18778,322 @@ form_control: { bmi !b2+ jmp b2 !b2: - //SEG183 form_control::@15 - //SEG184 [115] (byte/word/dword~) form_control::$6 ← *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) 128 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$6 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$6 ] ) -- vbuaa=_deref_pbuz1_bor_vbuc1 + //SEG377 form_control::@16 + //SEG378 [214] (byte/word/dword~) form_control::$6 ← *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) 128 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$6 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$6 ] ) -- vbuaa=_deref_pbuz1_bor_vbuc1 lda #$80 ldy #0 ora (field),y - //SEG185 [116] *((byte*) form_control::field#0) ← (byte/word/dword~) form_control::$6 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ) -- _deref_pbuz1=vbuaa + //SEG379 [215] *((byte*) form_control::field#0) ← (byte/word/dword~) form_control::$6 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- _deref_pbuz1=vbuaa sta (field),y - //SEG186 [117] phi from form_control::@15 form_control::@2 to form_control::@3 [phi:form_control::@15/form_control::@2->form_control::@3] - //SEG187 form_control::@3 + //SEG380 [216] phi from form_control::@16 form_control::@2 to form_control::@3 [phi:form_control::@16/form_control::@2->form_control::@3] + //SEG381 form_control::@3 b3: - //SEG188 [118] call keyboard_event_scan param-assignment [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ( main:2::form_control:19 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ) - //SEG189 [155] phi from form_control::@3 to keyboard_event_scan [phi:form_control::@3->keyboard_event_scan] + //SEG382 [217] call keyboard_event_scan param-assignment [ keyboard_modifiers#21 keyboard_events_size#105 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_modifiers#21 keyboard_events_size#105 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) + //SEG383 [119] phi from form_control::@3 to keyboard_event_scan [phi:form_control::@3->keyboard_event_scan] + //SEG384 [119] phi (byte) keyboard_events_size#104 = (byte) keyboard_events_size#47 [phi:form_control::@3->keyboard_event_scan#0] -- register_copy jsr keyboard_event_scan - //SEG190 [119] phi from form_control::@3 to form_control::@30 [phi:form_control::@3->form_control::@30] - //SEG191 form_control::@30 - //SEG192 [120] call keyboard_event_get param-assignment [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_event_get::return#2 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_event_get::return#2 keyboard_modifiers#16 ] ) + //SEG385 [218] phi from form_control::@3 to form_control::@34 [phi:form_control::@3->form_control::@34] + //SEG386 form_control::@34 + //SEG387 [219] call keyboard_event_get param-assignment [ keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#2 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 keyboard_event_get::return#2 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) jsr keyboard_event_get - //SEG193 [121] (byte) keyboard_event_get::return#3 ← (byte) keyboard_event_get::return#2 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_event_get::return#3 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_event_get::return#3 keyboard_modifiers#16 ] ) - // (byte) keyboard_event_get::return#3 = (byte) keyboard_event_get::return#2 // register copy reg byte a - //SEG194 form_control::@31 - //SEG195 [122] (byte) form_control::key_event#0 ← (byte) keyboard_event_get::return#3 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::key_event#0 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::key_event#0 keyboard_modifiers#16 ] ) - // (byte) form_control::key_event#0 = (byte) keyboard_event_get::return#3 // register copy reg byte a - //SEG196 [123] if((byte) form_control::key_event#0!=(const byte) KEY_CRSR_DOWN#0) goto form_control::@4 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::key_event#0 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::key_event#0 keyboard_modifiers#16 ] ) -- vbuaa_neq_vbuc1_then_la1 + //SEG388 [220] (byte) keyboard_event_get::return#4 ← (byte) keyboard_event_get::return#2 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_get::return#4 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_get::return#4 ] ) + // (byte) keyboard_event_get::return#4 = (byte) keyboard_event_get::return#2 // register copy reg byte a + //SEG389 form_control::@35 + //SEG390 [221] (byte) form_control::key_event#0 ← (byte) keyboard_event_get::return#4 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ) + // (byte) form_control::key_event#0 = (byte) keyboard_event_get::return#4 // register copy reg byte a + //SEG391 [222] if((byte) form_control::key_event#0!=(const byte) KEY_CRSR_DOWN#0) goto form_control::@4 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ) -- vbuaa_neq_vbuc1_then_la1 cmp #KEY_CRSR_DOWN bne b4 - //SEG197 form_control::@17 - //SEG198 [124] (byte~) form_control::$12 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_control::$12 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_control::$12 keyboard_modifiers#16 ] ) -- vbuaa=_deref_pbuz1_band_vbuc1 + //SEG392 form_control::@18 + //SEG393 [223] (byte~) form_control::$12 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_control::$12 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_control::$12 ] ) -- vbuaa=_deref_pbuz1_band_vbuc1 lda #$7f ldy #0 and (field),y - //SEG199 [125] *((byte*) form_control::field#0) ← (byte~) form_control::$12 [ form_field_idx#1 keyboard_events_size#18 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 keyboard_modifiers#16 ] ) -- _deref_pbuz1=vbuaa + //SEG394 [224] *((byte*) form_control::field#0) ← (byte~) form_control::$12 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ) -- _deref_pbuz1=vbuaa sta (field),y - //SEG200 [126] (byte~) form_control::$13 ← (byte) keyboard_modifiers#16 & (const byte) KEY_MODIFIER_SHIFT#0 [ form_field_idx#1 keyboard_events_size#18 form_control::$13 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::$13 ] ) -- vbuaa=vbuxx_band_vbuc1 - txa - and #KEY_MODIFIER_SHIFT - //SEG201 [127] if((byte~) form_control::$13!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@5 [ form_field_idx#1 keyboard_events_size#18 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 ] ) -- vbuaa_neq_0_then_la1 + //SEG395 [225] (byte~) form_control::$13 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::$13 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::$13 ] ) -- vbuaa=vbuz1_band_vbuc1 + lda #KEY_MODIFIER_SHIFT + and keyboard_modifiers + //SEG396 [226] if((byte~) form_control::$13!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@5 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ) -- vbuaa_neq_0_then_la1 cmp #0 bne b5 - //SEG202 form_control::@18 - //SEG203 [128] (byte) form_field_idx#34 ← ++ (byte) form_field_idx#1 [ keyboard_events_size#18 form_field_idx#34 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#34 ] ) -- vbuz1=_inc_vbuz1 + //SEG397 form_control::@19 + //SEG398 [227] (byte) form_field_idx#43 ← ++ (byte) form_field_idx#28 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ) -- vbuz1=_inc_vbuz1 inc form_field_idx - //SEG204 [129] if((byte) form_field_idx#34!=(const byte) form_fields_cnt#0) goto form_control::@33 [ keyboard_events_size#18 form_field_idx#34 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#34 ] ) -- vbuz1_neq_vbuc1_then_la1 + //SEG399 [228] if((byte) form_field_idx#43!=(const byte) form_fields_cnt#0) goto form_control::@37 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#43 ] ) -- vbuz1_neq_vbuc1_then_la1 lda form_field_idx cmp #form_fields_cnt bne b7 - //SEG205 [130] phi from form_control::@18 to form_control::@7 [phi:form_control::@18->form_control::@7] - //SEG206 [130] phi (byte) form_field_idx#24 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_control::@18->form_control::@7#0] -- vbuz1=vbuc1 + //SEG400 [229] phi from form_control::@19 to form_control::@7 [phi:form_control::@19->form_control::@7] + //SEG401 [229] phi (byte) form_field_idx#32 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_control::@19->form_control::@7#0] -- vbuz1=vbuc1 tya sta form_field_idx - //SEG207 form_control::@7 + //SEG402 form_control::@7 b7: - //SEG208 [131] phi from form_control::@7 to form_control::@return [phi:form_control::@7->form_control::@return] - //SEG209 [131] phi (byte) form_field_idx#14 = (byte) form_field_idx#24 [phi:form_control::@7->form_control::@return#0] -- register_copy - //SEG210 [131] phi (signed byte) form_cursor_count#12 = (const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 [phi:form_control::@7->form_control::@return#1] -- vbsz1=vbuc1 + //SEG403 [230] phi from form_control::@7 to form_control::@return [phi:form_control::@7->form_control::@return] + //SEG404 [230] phi (byte) form_field_idx#18 = (byte) form_field_idx#32 [phi:form_control::@7->form_control::@return#0] -- register_copy + //SEG405 [230] phi (signed byte) form_cursor_count#16 = (const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 [phi:form_control::@7->form_control::@return#1] -- vbsz1=vbuc1 lda #FORM_CURSOR_BLINK/2 sta form_cursor_count - //SEG211 [131] phi from form_control::@12 form_control::@4 to form_control::@return [phi:form_control::@12/form_control::@4->form_control::@return] - //SEG212 [131] phi (byte) form_field_idx#14 = (byte) form_field_idx#1 [phi:form_control::@12/form_control::@4->form_control::@return#0] -- register_copy - //SEG213 [131] phi (signed byte) form_cursor_count#12 = (signed byte) form_cursor_count#11 [phi:form_control::@12/form_control::@4->form_control::@return#1] -- register_copy - //SEG214 form_control::@return + //SEG406 [230] phi (byte) form_control::return#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_control::@7->form_control::@return#2] -- vbuxx=vbuc1 + ldx #0 + //SEG407 form_control::@return breturn: - //SEG215 [132] return [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ( main:2::form_control:19 [ form_cursor_count#12 keyboard_events_size#18 form_field_idx#14 ] ) + //SEG408 [231] return [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_cursor_count#16 form_field_idx#18 form_control::return#2 ] ) rts - //SEG216 [133] phi from form_control::@18 to form_control::@33 [phi:form_control::@18->form_control::@33] - //SEG217 form_control::@33 - //SEG218 [130] phi from form_control::@33 form_control::@34 to form_control::@7 [phi:form_control::@33/form_control::@34->form_control::@7] - //SEG219 [130] phi (byte) form_field_idx#24 = (byte) form_field_idx#34 [phi:form_control::@33/form_control::@34->form_control::@7#0] -- register_copy - //SEG220 form_control::@5 + //SEG409 [232] phi from form_control::@19 to form_control::@37 [phi:form_control::@19->form_control::@37] + //SEG410 form_control::@37 + //SEG411 [229] phi from form_control::@37 form_control::@38 to form_control::@7 [phi:form_control::@37/form_control::@38->form_control::@7] + //SEG412 [229] phi (byte) form_field_idx#32 = (byte) form_field_idx#43 [phi:form_control::@37/form_control::@38->form_control::@7#0] -- register_copy + //SEG413 form_control::@5 b5: - //SEG221 [134] (byte) form_field_idx#3 ← -- (byte) form_field_idx#1 [ keyboard_events_size#18 form_field_idx#3 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#3 ] ) -- vbuz1=_dec_vbuz1 + //SEG414 [233] (byte) form_field_idx#44 ← -- (byte) form_field_idx#28 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ) -- vbuz1=_dec_vbuz1 dec form_field_idx - //SEG222 [135] if((byte) form_field_idx#3!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@34 [ keyboard_events_size#18 form_field_idx#3 ] ( main:2::form_control:19 [ keyboard_events_size#18 form_field_idx#3 ] ) -- vbuz1_neq_vbuc1_then_la1 + //SEG415 [234] if((byte) form_field_idx#44!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@38 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#44 ] ) -- vbuz1_neq_vbuc1_then_la1 lda form_field_idx cmp #$ff bne b7 - //SEG223 [130] phi from form_control::@5 to form_control::@7 [phi:form_control::@5->form_control::@7] - //SEG224 [130] phi (byte) form_field_idx#24 = (const byte) form_fields_cnt#0-(byte/signed byte/word/signed word/dword/signed dword) 1 [phi:form_control::@5->form_control::@7#0] -- vbuz1=vbuc1 + //SEG416 [229] phi from form_control::@5 to form_control::@7 [phi:form_control::@5->form_control::@7] + //SEG417 [229] phi (byte) form_field_idx#32 = (const byte) form_fields_cnt#0-(byte/signed byte/word/signed word/dword/signed dword) 1 [phi:form_control::@5->form_control::@7#0] -- vbuz1=vbuc1 lda #form_fields_cnt-1 sta form_field_idx jmp b7 - //SEG225 [136] phi from form_control::@5 to form_control::@34 [phi:form_control::@5->form_control::@34] - //SEG226 form_control::@34 - //SEG227 form_control::@4 + //SEG418 [235] phi from form_control::@5 to form_control::@38 [phi:form_control::@5->form_control::@38] + //SEG419 form_control::@38 + //SEG420 form_control::@4 b4: - //SEG228 [137] if((byte) form_control::key_event#0!=(const byte) KEY_CRSR_RIGHT#0) goto form_control::@return [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 ] ) -- vbuaa_neq_vbuc1_then_la1 + //SEG421 [236] if((byte) form_control::key_event#0!=(const byte) KEY_CRSR_RIGHT#0) goto form_control::@9 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::key_event#0 ] ) -- vbuaa_neq_vbuc1_then_la1 cmp #KEY_CRSR_RIGHT - bne breturn - //SEG229 form_control::@23 - //SEG230 [138] (byte~) form_control::$24 ← (byte) keyboard_modifiers#16 & (const byte) KEY_MODIFIER_SHIFT#0 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::$24 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 form_control::$24 ] ) -- vbuaa=vbuxx_band_vbuc1 - txa - and #KEY_MODIFIER_SHIFT - //SEG231 [139] if((byte~) form_control::$24!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@10 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) -- vbuaa_neq_0_then_la1 + bne b9 + //SEG422 form_control::@24 + //SEG423 [237] (byte~) form_control::$24 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$24 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$24 ] ) -- vbuaa=vbuz1_band_vbuc1 + lda #KEY_MODIFIER_SHIFT + and keyboard_modifiers + //SEG424 [238] if((byte~) form_control::$24!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@10 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- vbuaa_neq_0_then_la1 cmp #0 bne b10 - //SEG232 form_control::@24 - //SEG233 [140] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← ++ *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) -- pbuc1_derefidx_vbuz1=_inc_pbuc1_derefidx_vbuz1 + //SEG425 form_control::@25 + //SEG426 [239] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← ++ *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- pbuc1_derefidx_vbuz1=_inc_pbuc1_derefidx_vbuz1 ldx form_field_idx inc form_fields_val,x - //SEG234 [141] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#1)<=*((const byte[]) form_fields_max#0 + (byte) form_field_idx#1)) goto form_control::@12 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) -- pbuc1_derefidx_vbuz1_le_pbuc2_derefidx_vbuz1_then_la1 + //SEG427 [240] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)<=*((const byte[]) form_fields_max#0 + (byte) form_field_idx#28)) goto form_control::@12 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- pbuc1_derefidx_vbuz1_le_pbuc2_derefidx_vbuz1_then_la1 ldy form_field_idx lda form_fields_val,y cmp form_fields_max,y bcc b12 beq b12 - //SEG235 form_control::@25 - //SEG236 [142] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG428 form_control::@26 + //SEG429 [241] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- pbuc1_derefidx_vbuz1=vbuc2 lda #0 sta form_fields_val,y - //SEG237 form_control::@12 + //SEG430 form_control::@12 b12: - //SEG238 [143] *((byte*) form_control::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1)) [ form_field_idx#1 keyboard_events_size#18 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_cursor_count#11 ] ) -- _deref_pbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuz2 + //SEG431 [242] *((byte*) form_control::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ) -- _deref_pbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuz2 ldy form_field_idx lda form_fields_val,y tay lda print_hextab,y ldy #0 sta (field),y + //SEG432 [230] phi from form_control::@12 form_control::@39 to form_control::@return [phi:form_control::@12/form_control::@39->form_control::@return] + b6: + //SEG433 [230] phi (byte) form_field_idx#18 = (byte) form_field_idx#28 [phi:form_control::@12/form_control::@39->form_control::@return#0] -- register_copy + //SEG434 [230] phi (signed byte) form_cursor_count#16 = (signed byte) form_cursor_count#15 [phi:form_control::@12/form_control::@39->form_control::@return#1] -- register_copy + //SEG435 [230] phi (byte) form_control::return#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_control::@12/form_control::@39->form_control::@return#2] -- vbuxx=vbuc1 + ldx #0 jmp breturn - //SEG239 form_control::@10 + //SEG436 form_control::@10 b10: - //SEG240 [144] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← -- *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) -- pbuc1_derefidx_vbuz1=_dec_pbuc1_derefidx_vbuz1 + //SEG437 [243] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← -- *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- pbuc1_derefidx_vbuz1=_dec_pbuc1_derefidx_vbuz1 ldx form_field_idx lda form_fields_val,x sec sbc #1 sta form_fields_val,x - //SEG241 [145] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#1)!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@12 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) -- pbuc1_derefidx_vbuz1_neq_vbuc2_then_la1 + //SEG438 [244] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)!=(byte/word/signed word/dword/signed dword) 255) goto form_control::@12 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- pbuc1_derefidx_vbuz1_neq_vbuc2_then_la1 ldy form_field_idx lda form_fields_val,y cmp #$ff bne b12 - //SEG242 form_control::@27 - //SEG243 [146] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#1) ← *((const byte[]) form_fields_max#0 + (byte) form_field_idx#1) [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ form_field_idx#1 keyboard_events_size#18 form_control::field#0 form_cursor_count#11 ] ) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 + //SEG439 form_control::@28 + //SEG440 [245] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← *((const byte[]) form_fields_max#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 lda form_fields_max,y sta form_fields_val,y jmp b12 - //SEG244 form_control::@2 + //SEG441 form_control::@9 + b9: + //SEG442 [246] if((byte) form_control::key_event#0!=(const byte) KEY_SPACE#0) goto form_control::@39 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_cursor_count#15 ] ) -- vbuaa_neq_vbuc1_then_la1 + cmp #KEY_SPACE + bne b6 + //SEG443 [230] phi from form_control::@9 to form_control::@return [phi:form_control::@9->form_control::@return] + //SEG444 [230] phi (byte) form_field_idx#18 = (byte) form_field_idx#28 [phi:form_control::@9->form_control::@return#0] -- register_copy + //SEG445 [230] phi (signed byte) form_cursor_count#16 = (signed byte) form_cursor_count#15 [phi:form_control::@9->form_control::@return#1] -- register_copy + //SEG446 [230] phi (byte) form_control::return#2 = (byte/word/signed word/dword/signed dword) 255 [phi:form_control::@9->form_control::@return#2] -- vbuxx=vbuc1 + ldx #$ff + jmp breturn + //SEG447 [247] phi from form_control::@9 to form_control::@39 [phi:form_control::@9->form_control::@39] + //SEG448 form_control::@39 + //SEG449 form_control::@2 b2: - //SEG245 [147] (byte~) form_control::$7 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$7 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 form_control::$7 ] ) -- vbuaa=_deref_pbuz1_band_vbuc1 + //SEG450 [248] (byte~) form_control::$7 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) 127 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$7 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$7 ] ) -- vbuaa=_deref_pbuz1_band_vbuc1 lda #$7f ldy #0 and (field),y - //SEG246 [148] *((byte*) form_control::field#0) ← (byte~) form_control::$7 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ( main:2::form_control:19 [ keyboard_events_size#20 form_field_idx#1 form_control::field#0 form_cursor_count#11 ] ) -- _deref_pbuz1=vbuaa + //SEG451 [249] *((byte*) form_control::field#0) ← (byte~) form_control::$7 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:15::form_control:202 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) -- _deref_pbuz1=vbuaa sta (field),y jmp b3 - //SEG247 [149] phi from form_control::@29 to form_control::@32 [phi:form_control::@29->form_control::@32] - //SEG248 form_control::@32 - //SEG249 [113] phi from form_control::@32 to form_control::@1 [phi:form_control::@32->form_control::@1] - //SEG250 [113] phi (signed byte) form_cursor_count#11 = (signed byte) form_cursor_count#3 [phi:form_control::@32->form_control::@1#0] -- register_copy + //SEG452 [250] phi from form_control::@33 to form_control::@36 [phi:form_control::@33->form_control::@36] + //SEG453 form_control::@36 + //SEG454 [212] phi from form_control::@36 to form_control::@1 [phi:form_control::@36->form_control::@1] + //SEG455 [212] phi (signed byte) form_cursor_count#15 = (signed byte) form_cursor_count#5 [phi:form_control::@36->form_control::@1#0] -- register_copy } -//SEG251 keyboard_event_get -keyboard_event_get: { - //SEG252 [150] if((byte) keyboard_events_size#15!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_get::@1 [ keyboard_events_size#15 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ) -- vbuz1_neq_0_then_la1 - lda keyboard_events_size - bne b1 - //SEG253 [151] phi from keyboard_event_get to keyboard_event_get::@return [phi:keyboard_event_get->keyboard_event_get::@return] - //SEG254 [151] phi (byte) keyboard_events_size#18 = (byte) keyboard_events_size#15 [phi:keyboard_event_get->keyboard_event_get::@return#0] -- register_copy - //SEG255 [151] phi (byte) keyboard_event_get::return#2 = (byte/word/signed word/dword/signed dword) 255 [phi:keyboard_event_get->keyboard_event_get::@return#1] -- vbuaa=vbuc1 - lda #$ff - //SEG256 keyboard_event_get::@return - breturn: - //SEG257 [152] return [ keyboard_events_size#18 keyboard_event_get::return#2 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#18 keyboard_event_get::return#2 ] ) - rts - //SEG258 keyboard_event_get::@1 - b1: - //SEG259 [153] (byte) keyboard_events_size#4 ← -- (byte) keyboard_events_size#15 [ keyboard_events_size#4 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#4 ] ) -- vbuz1=_dec_vbuz1 - dec keyboard_events_size - //SEG260 [154] (byte) keyboard_event_get::return#0 ← *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) [ keyboard_event_get::return#0 keyboard_events_size#4 ] ( main:2::form_control:19::keyboard_event_get:120 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_event_get::return#0 keyboard_events_size#4 ] ) -- vbuaa=pbuc1_derefidx_vbuz1 - ldy keyboard_events_size - lda keyboard_events,y - //SEG261 [151] phi from keyboard_event_get::@1 to keyboard_event_get::@return [phi:keyboard_event_get::@1->keyboard_event_get::@return] - //SEG262 [151] phi (byte) keyboard_events_size#18 = (byte) keyboard_events_size#4 [phi:keyboard_event_get::@1->keyboard_event_get::@return#0] -- register_copy - //SEG263 [151] phi (byte) keyboard_event_get::return#2 = (byte) keyboard_event_get::return#0 [phi:keyboard_event_get::@1->keyboard_event_get::@return#1] -- register_copy - jmp breturn -} -//SEG264 keyboard_event_scan -keyboard_event_scan: { - .label row_scan = $11 - .label keycode = 5 - .label row = 4 - //SEG265 [156] phi from keyboard_event_scan to keyboard_event_scan::@1 [phi:keyboard_event_scan->keyboard_event_scan::@1] - //SEG266 [156] phi (byte) keyboard_events_size#37 = (byte) keyboard_events_size#20 [phi:keyboard_event_scan->keyboard_event_scan::@1#0] -- register_copy - //SEG267 [156] phi (byte) keyboard_event_scan::keycode#11 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:keyboard_event_scan->keyboard_event_scan::@1#1] -- vbuz1=vbuc1 - lda #0 - sta keycode - //SEG268 [156] phi (byte) keyboard_event_scan::row#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:keyboard_event_scan->keyboard_event_scan::@1#2] -- vbuz1=vbuc1 - sta row - //SEG269 [156] phi from keyboard_event_scan::@8 to keyboard_event_scan::@1 [phi:keyboard_event_scan::@8->keyboard_event_scan::@1] - //SEG270 [156] phi (byte) keyboard_events_size#37 = (byte) keyboard_events_size#15 [phi:keyboard_event_scan::@8->keyboard_event_scan::@1#0] -- register_copy - //SEG271 [156] phi (byte) keyboard_event_scan::keycode#11 = (byte) keyboard_event_scan::keycode#14 [phi:keyboard_event_scan::@8->keyboard_event_scan::@1#1] -- register_copy - //SEG272 [156] phi (byte) keyboard_event_scan::row#2 = (byte) keyboard_event_scan::row#1 [phi:keyboard_event_scan::@8->keyboard_event_scan::@1#2] -- register_copy - //SEG273 keyboard_event_scan::@1 - b1: - //SEG274 [157] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_event_scan::row#2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::rowid#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::rowid#0 ] ) -- vbuxx=vbuz1 - ldx row - //SEG275 [158] call keyboard_matrix_read param-assignment [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#0 ] ) - jsr keyboard_matrix_read - //SEG276 [159] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#2 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#2 ] ) - // (byte) keyboard_matrix_read::return#2 = (byte) keyboard_matrix_read::return#0 // register copy reg byte a - //SEG277 keyboard_event_scan::@25 - //SEG278 [160] (byte) keyboard_event_scan::row_scan#0 ← (byte) keyboard_matrix_read::return#2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_event_scan::row_scan#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_event_scan::row_scan#0 ] ) -- vbuz1=vbuaa - sta row_scan - //SEG279 [161] if((byte) keyboard_event_scan::row_scan#0==*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@2 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_event_scan::row_scan#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_event_scan::row_scan#0 ] ) -- vbuz1_eq_pbuc1_derefidx_vbuz2_then_la1 - ldy row - lda keyboard_scan_values,y - cmp row_scan - bne !b2+ - jmp b2 - !b2: - //SEG280 [162] phi from keyboard_event_scan::@25 to keyboard_event_scan::@3 [phi:keyboard_event_scan::@25->keyboard_event_scan::@3] - //SEG281 [162] phi (byte) keyboard_events_size#12 = (byte) keyboard_events_size#37 [phi:keyboard_event_scan::@25->keyboard_event_scan::@3#0] -- register_copy - //SEG282 [162] phi (byte) keyboard_event_scan::keycode#10 = (byte) keyboard_event_scan::keycode#11 [phi:keyboard_event_scan::@25->keyboard_event_scan::@3#1] -- register_copy - //SEG283 [162] phi (byte) keyboard_event_scan::col#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:keyboard_event_scan::@25->keyboard_event_scan::@3#2] -- vbuxx=vbuc1 - ldx #0 - //SEG284 [162] phi from keyboard_event_scan::@4 to keyboard_event_scan::@3 [phi:keyboard_event_scan::@4->keyboard_event_scan::@3] - //SEG285 [162] phi (byte) keyboard_events_size#12 = (byte) keyboard_events_size#38 [phi:keyboard_event_scan::@4->keyboard_event_scan::@3#0] -- register_copy - //SEG286 [162] phi (byte) keyboard_event_scan::keycode#10 = (byte) keyboard_event_scan::keycode#15 [phi:keyboard_event_scan::@4->keyboard_event_scan::@3#1] -- register_copy - //SEG287 [162] phi (byte) keyboard_event_scan::col#2 = (byte) keyboard_event_scan::col#1 [phi:keyboard_event_scan::@4->keyboard_event_scan::@3#2] -- register_copy - //SEG288 keyboard_event_scan::@3 - b3: - //SEG289 [163] (byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$3 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$3 ] ) -- vbuaa=vbuz1_bxor_pbuc1_derefidx_vbuz2 - lda row_scan - ldy row - eor keyboard_scan_values,y - //SEG290 [164] (byte~) keyboard_event_scan::$4 ← (byte~) keyboard_event_scan::$3 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$4 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$4 ] ) -- vbuaa=vbuaa_band_pbuc1_derefidx_vbuxx - and keyboard_matrix_col_bitmask,x - //SEG291 [165] if((byte~) keyboard_event_scan::$4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@4 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) -- vbuaa_eq_0_then_la1 - cmp #0 - beq b4 - //SEG292 keyboard_event_scan::@14 - //SEG293 [166] if((byte) keyboard_events_size#12==(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@4 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) -- vbuz1_eq_vbuc1_then_la1 - lda keyboard_events_size - cmp #8 - beq b4 - //SEG294 keyboard_event_scan::@15 - //SEG295 [167] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::event_type#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::event_type#0 ] ) -- vbuaa=vbuz1_band_pbuc1_derefidx_vbuxx - lda keyboard_matrix_col_bitmask,x - and row_scan - //SEG296 [168] if((byte) keyboard_event_scan::event_type#0!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@6 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) -- vbuaa_neq_0_then_la1 - cmp #0 - bne b6 - //SEG297 keyboard_event_scan::@16 - //SEG298 [169] (byte/word/dword~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) 64 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 keyboard_event_scan::$12 ] ) -- vbuaa=vbuz1_bor_vbuc1 - lda #$40 - ora keycode - //SEG299 [170] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#12) ← (byte/word/dword~) keyboard_event_scan::$12 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) -- pbuc1_derefidx_vbuz1=vbuaa - ldy keyboard_events_size - sta keyboard_events,y - //SEG300 [171] (byte) keyboard_events_size#2 ← ++ (byte) keyboard_events_size#12 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#2 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#2 ] ) -- vbuz1=_inc_vbuz1 - inc keyboard_events_size - //SEG301 [172] phi from keyboard_event_scan::@14 keyboard_event_scan::@16 keyboard_event_scan::@3 keyboard_event_scan::@6 to keyboard_event_scan::@4 [phi:keyboard_event_scan::@14/keyboard_event_scan::@16/keyboard_event_scan::@3/keyboard_event_scan::@6->keyboard_event_scan::@4] - //SEG302 [172] phi (byte) keyboard_events_size#38 = (byte) keyboard_events_size#12 [phi:keyboard_event_scan::@14/keyboard_event_scan::@16/keyboard_event_scan::@3/keyboard_event_scan::@6->keyboard_event_scan::@4#0] -- register_copy - //SEG303 keyboard_event_scan::@4 - b4: - //SEG304 [173] (byte) keyboard_event_scan::keycode#15 ← ++ (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ) -- vbuz1=_inc_vbuz1 - inc keycode - //SEG305 [174] (byte) keyboard_event_scan::col#1 ← ++ (byte) keyboard_event_scan::col#2 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ) -- vbuxx=_inc_vbuxx - inx - //SEG306 [175] if((byte) keyboard_event_scan::col#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@3 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#1 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ) -- vbuxx_neq_vbuc1_then_la1 - cpx #8 - bne b3 - //SEG307 keyboard_event_scan::@18 - //SEG308 [176] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#38 ] ) -- pbuc1_derefidx_vbuz1=vbuz2 - lda row_scan - ldy row - sta keyboard_scan_values,y - //SEG309 [177] phi from keyboard_event_scan::@18 keyboard_event_scan::@2 to keyboard_event_scan::@8 [phi:keyboard_event_scan::@18/keyboard_event_scan::@2->keyboard_event_scan::@8] - //SEG310 [177] phi (byte) keyboard_events_size#15 = (byte) keyboard_events_size#38 [phi:keyboard_event_scan::@18/keyboard_event_scan::@2->keyboard_event_scan::@8#0] -- register_copy - //SEG311 [177] phi (byte) keyboard_event_scan::keycode#14 = (byte) keyboard_event_scan::keycode#15 [phi:keyboard_event_scan::@18/keyboard_event_scan::@2->keyboard_event_scan::@8#1] -- register_copy - //SEG312 keyboard_event_scan::@8 - b8: - //SEG313 [178] (byte) keyboard_event_scan::row#1 ← ++ (byte) keyboard_event_scan::row#2 [ keyboard_events_size#15 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ) -- vbuz1=_inc_vbuz1 - inc row - //SEG314 [179] if((byte) keyboard_event_scan::row#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@1 [ keyboard_events_size#15 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ) -- vbuz1_neq_vbuc1_then_la1 - lda row - cmp #8 - bne b1 - //SEG315 [180] phi from keyboard_event_scan::@8 to keyboard_event_scan::@20 [phi:keyboard_event_scan::@8->keyboard_event_scan::@20] - //SEG316 keyboard_event_scan::@20 - //SEG317 [181] call keyboard_event_pressed param-assignment [ keyboard_events_size#15 keyboard_event_pressed::return#10 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 ] ) - //SEG318 [209] phi from keyboard_event_scan::@20 to keyboard_event_pressed [phi:keyboard_event_scan::@20->keyboard_event_pressed] - //SEG319 [209] phi (byte) keyboard_event_pressed::keycode#4 = (const byte) KEY_LSHIFT#0 [phi:keyboard_event_scan::@20->keyboard_event_pressed#0] -- vbuz1=vbuc1 - lda #KEY_LSHIFT - sta keyboard_event_pressed.keycode - jsr keyboard_event_pressed - //SEG320 [182] (byte) keyboard_event_pressed::return#0 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#15 keyboard_event_pressed::return#0 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#0 ] ) - // (byte) keyboard_event_pressed::return#0 = (byte) keyboard_event_pressed::return#10 // register copy reg byte a - //SEG321 keyboard_event_scan::@26 - //SEG322 [183] (byte~) keyboard_event_scan::$16 ← (byte) keyboard_event_pressed::return#0 [ keyboard_events_size#15 keyboard_event_scan::$16 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_scan::$16 ] ) - // (byte~) keyboard_event_scan::$16 = (byte) keyboard_event_pressed::return#0 // register copy reg byte a - //SEG323 [184] if((byte~) keyboard_event_scan::$16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@9 [ keyboard_events_size#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 ] ) -- vbuaa_eq_0_then_la1 - cmp #0 - beq b5 - //SEG324 [185] phi from keyboard_event_scan::@26 to keyboard_event_scan::@21 [phi:keyboard_event_scan::@26->keyboard_event_scan::@21] - //SEG325 keyboard_event_scan::@21 - //SEG326 [186] phi from keyboard_event_scan::@21 to keyboard_event_scan::@9 [phi:keyboard_event_scan::@21->keyboard_event_scan::@9] - //SEG327 [186] phi (byte) keyboard_modifiers#13 = (byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) KEY_MODIFIER_LSHIFT#0 [phi:keyboard_event_scan::@21->keyboard_event_scan::@9#0] -- vbuxx=vbuc1 - ldx #0|KEY_MODIFIER_LSHIFT - jmp b9 - //SEG328 [186] phi from keyboard_event_scan::@26 to keyboard_event_scan::@9 [phi:keyboard_event_scan::@26->keyboard_event_scan::@9] - b5: - //SEG329 [186] phi (byte) keyboard_modifiers#13 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:keyboard_event_scan::@26->keyboard_event_scan::@9#0] -- vbuxx=vbuc1 - ldx #0 - //SEG330 keyboard_event_scan::@9 - b9: - //SEG331 [187] call keyboard_event_pressed param-assignment [ keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#13 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#13 ] ) - //SEG332 [209] phi from keyboard_event_scan::@9 to keyboard_event_pressed [phi:keyboard_event_scan::@9->keyboard_event_pressed] - //SEG333 [209] phi (byte) keyboard_event_pressed::keycode#4 = (const byte) KEY_RSHIFT#0 [phi:keyboard_event_scan::@9->keyboard_event_pressed#0] -- vbuz1=vbuc1 - lda #KEY_RSHIFT - sta keyboard_event_pressed.keycode - jsr keyboard_event_pressed - //SEG334 [188] (byte) keyboard_event_pressed::return#1 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::return#1 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::return#1 ] ) - // (byte) keyboard_event_pressed::return#1 = (byte) keyboard_event_pressed::return#10 // register copy reg byte a - //SEG335 keyboard_event_scan::@27 - //SEG336 [189] (byte~) keyboard_event_scan::$20 ← (byte) keyboard_event_pressed::return#1 [ keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_scan::$20 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_scan::$20 ] ) - // (byte~) keyboard_event_scan::$20 = (byte) keyboard_event_pressed::return#1 // register copy reg byte a - //SEG337 [190] if((byte~) keyboard_event_scan::$20==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@10 [ keyboard_events_size#15 keyboard_modifiers#13 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 ] ) -- vbuaa_eq_0_then_la1 - cmp #0 - beq b10 - //SEG338 keyboard_event_scan::@22 - //SEG339 [191] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#13 | (const byte) KEY_MODIFIER_RSHIFT#0 [ keyboard_events_size#15 keyboard_modifiers#3 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#3 ] ) -- vbuxx=vbuxx_bor_vbuc1 - txa - ora #KEY_MODIFIER_RSHIFT - tax - //SEG340 [192] phi from keyboard_event_scan::@22 keyboard_event_scan::@27 to keyboard_event_scan::@10 [phi:keyboard_event_scan::@22/keyboard_event_scan::@27->keyboard_event_scan::@10] - //SEG341 [192] phi (byte) keyboard_modifiers#14 = (byte) keyboard_modifiers#3 [phi:keyboard_event_scan::@22/keyboard_event_scan::@27->keyboard_event_scan::@10#0] -- register_copy - //SEG342 keyboard_event_scan::@10 - b10: - //SEG343 [193] call keyboard_event_pressed param-assignment [ keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#14 ] ) - //SEG344 [209] phi from keyboard_event_scan::@10 to keyboard_event_pressed [phi:keyboard_event_scan::@10->keyboard_event_pressed] - //SEG345 [209] phi (byte) keyboard_event_pressed::keycode#4 = (const byte) KEY_CTRL#0 [phi:keyboard_event_scan::@10->keyboard_event_pressed#0] -- vbuz1=vbuc1 - lda #KEY_CTRL - sta keyboard_event_pressed.keycode - jsr keyboard_event_pressed - //SEG346 [194] (byte) keyboard_event_pressed::return#2 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::return#2 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::return#2 ] ) - // (byte) keyboard_event_pressed::return#2 = (byte) keyboard_event_pressed::return#10 // register copy reg byte a - //SEG347 keyboard_event_scan::@28 - //SEG348 [195] (byte~) keyboard_event_scan::$24 ← (byte) keyboard_event_pressed::return#2 [ keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_scan::$24 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_scan::$24 ] ) - // (byte~) keyboard_event_scan::$24 = (byte) keyboard_event_pressed::return#2 // register copy reg byte a - //SEG349 [196] if((byte~) keyboard_event_scan::$24==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@11 [ keyboard_events_size#15 keyboard_modifiers#14 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 ] ) -- vbuaa_eq_0_then_la1 - cmp #0 - beq b11 - //SEG350 keyboard_event_scan::@23 - //SEG351 [197] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#14 | (const byte) KEY_MODIFIER_CTRL#0 [ keyboard_events_size#15 keyboard_modifiers#4 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#4 ] ) -- vbuxx=vbuxx_bor_vbuc1 - txa - ora #KEY_MODIFIER_CTRL - tax - //SEG352 [198] phi from keyboard_event_scan::@23 keyboard_event_scan::@28 to keyboard_event_scan::@11 [phi:keyboard_event_scan::@23/keyboard_event_scan::@28->keyboard_event_scan::@11] - //SEG353 [198] phi (byte) keyboard_modifiers#15 = (byte) keyboard_modifiers#4 [phi:keyboard_event_scan::@23/keyboard_event_scan::@28->keyboard_event_scan::@11#0] -- register_copy - //SEG354 keyboard_event_scan::@11 - b11: - //SEG355 [199] call keyboard_event_pressed param-assignment [ keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 keyboard_modifiers#15 ] ) - //SEG356 [209] phi from keyboard_event_scan::@11 to keyboard_event_pressed [phi:keyboard_event_scan::@11->keyboard_event_pressed] - //SEG357 [209] phi (byte) keyboard_event_pressed::keycode#4 = (const byte) KEY_COMMODORE#0 [phi:keyboard_event_scan::@11->keyboard_event_pressed#0] -- vbuz1=vbuc1 - lda #KEY_COMMODORE - sta keyboard_event_pressed.keycode - jsr keyboard_event_pressed - //SEG358 [200] (byte) keyboard_event_pressed::return#3 ← (byte) keyboard_event_pressed::return#10 [ keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::return#3 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::return#3 ] ) - // (byte) keyboard_event_pressed::return#3 = (byte) keyboard_event_pressed::return#10 // register copy reg byte a - //SEG359 keyboard_event_scan::@29 - //SEG360 [201] (byte~) keyboard_event_scan::$28 ← (byte) keyboard_event_pressed::return#3 [ keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_scan::$28 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_scan::$28 ] ) - // (byte~) keyboard_event_scan::$28 = (byte) keyboard_event_pressed::return#3 // register copy reg byte a - //SEG361 [202] if((byte~) keyboard_event_scan::$28==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@return [ keyboard_events_size#15 keyboard_modifiers#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 ] ) -- vbuaa_eq_0_then_la1 - cmp #0 - beq breturn - //SEG362 keyboard_event_scan::@24 - //SEG363 [203] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#15 | (const byte) KEY_MODIFIER_COMMODORE#0 [ keyboard_events_size#15 keyboard_modifiers#5 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#5 ] ) -- vbuxx=vbuxx_bor_vbuc1 - txa - ora #KEY_MODIFIER_COMMODORE - tax - //SEG364 [204] phi from keyboard_event_scan::@24 keyboard_event_scan::@29 to keyboard_event_scan::@return [phi:keyboard_event_scan::@24/keyboard_event_scan::@29->keyboard_event_scan::@return] - //SEG365 [204] phi (byte) keyboard_modifiers#16 = (byte) keyboard_modifiers#5 [phi:keyboard_event_scan::@24/keyboard_event_scan::@29->keyboard_event_scan::@return#0] -- register_copy - //SEG366 keyboard_event_scan::@return - breturn: - //SEG367 [205] return [ keyboard_modifiers#16 keyboard_events_size#15 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_modifiers#16 keyboard_events_size#15 ] ) - rts - //SEG368 keyboard_event_scan::@6 - b6: - //SEG369 [206] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#12) ← (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#12 ] ) -- pbuc1_derefidx_vbuz1=vbuz2 - lda keycode - ldy keyboard_events_size - sta keyboard_events,y - //SEG370 [207] (byte) keyboard_events_size#1 ← ++ (byte) keyboard_events_size#12 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#1 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#1 ] ) -- vbuz1=_inc_vbuz1 - inc keyboard_events_size - jmp b4 - //SEG371 keyboard_event_scan::@2 - b2: - //SEG372 [208] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ keyboard_event_scan::row#2 keyboard_events_size#37 keyboard_event_scan::keycode#1 ] ( main:2::form_control:19::keyboard_event_scan:118 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_events_size#37 keyboard_event_scan::keycode#1 ] ) -- vbuz1=vbuz1_plus_vbuc1 - lda #8 - clc - adc keycode - sta keycode - jmp b8 -} -//SEG373 keyboard_event_pressed -keyboard_event_pressed: { - .label row_bits = 5 - .label keycode = 4 - //SEG374 [210] (byte~) keyboard_event_pressed::$0 ← (byte) keyboard_event_pressed::keycode#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ) -- vbuaa=vbuz1_ror_3 - lda keycode - lsr - lsr - lsr - //SEG375 [211] (byte) keyboard_event_pressed::row_bits#0 ← *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) [ keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::keycode#4 keyboard_event_pressed::row_bits#0 ] ) -- vbuz1=pbuc1_derefidx_vbuaa - tay - lda keyboard_scan_values,y - sta row_bits - //SEG376 [212] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ) -- vbuaa=vbuz1_band_vbuc1 - lda #7 - and keycode - //SEG377 [213] (byte) keyboard_event_pressed::return#10 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) [ keyboard_event_pressed::return#10 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::return#10 ] ) -- vbuaa=vbuz1_band_pbuc1_derefidx_vbuaa - tay - lda keyboard_matrix_col_bitmask,y - and row_bits - //SEG378 keyboard_event_pressed::@return - //SEG379 [214] return [ keyboard_event_pressed::return#10 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:181 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:187 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#13 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:193 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#14 keyboard_event_pressed::return#10 ] main:2::form_control:19::keyboard_event_scan:118::keyboard_event_pressed:199 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_events_size#15 keyboard_modifiers#15 keyboard_event_pressed::return#10 ] ) - rts -} -//SEG380 keyboard_matrix_read -keyboard_matrix_read: { - //SEG381 [215] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_matrix_read:158 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 ] ) -- _deref_pbuc1=pbuc2_derefidx_vbuxx - lda keyboard_matrix_row_bitmask,x - sta CIA1_PORT_A - //SEG382 [216] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_matrix_read:158 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#0 ] ) -- vbuaa=_bnot__deref_pbuc1 - lda CIA1_PORT_B - eor #$ff - //SEG383 keyboard_matrix_read::@return - //SEG384 [217] return [ keyboard_matrix_read::return#0 ] ( main:2::form_control:19::keyboard_event_scan:118::keyboard_matrix_read:158 [ form_field_idx#1 form_control::field#0 form_cursor_count#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#37 keyboard_matrix_read::return#0 ] ) - rts -} -//SEG385 form_field_ptr +//SEG456 form_field_ptr form_field_ptr: { .label return = 7 .label _2 = 7 - //SEG386 [219] (byte) form_field_ptr::y#0 ← *((const byte[]) form_fields_y#0 + (byte) form_field_ptr::field_idx#2) [ form_field_ptr::field_idx#2 form_field_ptr::y#0 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::field_idx#2 form_field_ptr::y#0 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::y#0 ] ) -- vbuyy=pbuc1_derefidx_vbuxx + //SEG457 [252] (byte) form_field_ptr::y#0 ← *((const byte[]) form_fields_y#0 + (byte) form_field_ptr::field_idx#2) [ form_field_ptr::field_idx#2 form_field_ptr::y#0 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#2 form_field_ptr::y#0 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::y#0 ] ) -- vbuyy=pbuc1_derefidx_vbuxx ldy form_fields_y,x - //SEG387 [220] (word~) form_field_ptr::$2 ← *((const byte[25]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[25]) form_line_lo#0 + (byte) form_field_ptr::y#0) [ form_field_ptr::field_idx#2 form_field_ptr::$2 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::field_idx#2 form_field_ptr::$2 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::$2 ] ) -- vwuz1=pbuc1_derefidx_vbuyy_word_pbuc2_derefidx_vbuyy + //SEG458 [253] (word~) form_field_ptr::$2 ← *((const byte[25]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[25]) form_line_lo#0 + (byte) form_field_ptr::y#0) [ form_field_ptr::field_idx#2 form_field_ptr::$2 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#2 form_field_ptr::$2 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::$2 ] ) -- vwuz1=pbuc1_derefidx_vbuyy_word_pbuc2_derefidx_vbuyy lda form_line_hi,y sta _2+1 lda form_line_lo,y sta _2 - //SEG388 [221] (byte) form_field_ptr::x#0 ← *((const byte[]) form_fields_x#0 + (byte) form_field_ptr::field_idx#2) [ form_field_ptr::$2 form_field_ptr::x#0 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::$2 form_field_ptr::x#0 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::$2 form_field_ptr::x#0 ] ) -- vbuaa=pbuc1_derefidx_vbuxx + //SEG459 [254] (byte) form_field_ptr::x#0 ← *((const byte[]) form_fields_x#0 + (byte) form_field_ptr::field_idx#2) [ form_field_ptr::$2 form_field_ptr::x#0 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::$2 form_field_ptr::x#0 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::$2 form_field_ptr::x#0 ] ) -- vbuaa=pbuc1_derefidx_vbuxx lda form_fields_x,x - //SEG389 [222] (byte*) form_field_ptr::return#0 ← (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 [ form_field_ptr::return#0 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#0 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::return#0 ] ) -- pbuz1=pbuz1_plus_vbuaa + //SEG460 [255] (byte*) form_field_ptr::return#0 ← (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 [ form_field_ptr::return#0 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::return#0 ] ) -- pbuz1=pbuz1_plus_vbuaa clc adc return sta return lda #0 adc return+1 sta return+1 - //SEG390 form_field_ptr::@return - //SEG391 [223] return [ form_field_ptr::return#0 ] ( main:2::form_control:19::form_field_ptr:108 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_field_ptr::return#0 ] main:2::form_init:10::form_render_values:251::form_field_ptr:256 [ form_render_values::idx#2 form_field_ptr::return#0 ] ) + //SEG461 form_field_ptr::@return + //SEG462 [256] return [ form_field_ptr::return#0 ] ( main:2::form_mode:15::form_control:202::form_field_ptr:207 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] main:2::form_init:10::form_render_values:272::form_field_ptr:277 [ form_render_values::idx#2 form_field_ptr::return#0 ] ) rts } -//SEG392 form_mode -form_mode: { - //SEG393 [224] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) 65536 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #($ffffffff&FORM_CHARSET)/$10000 - sta DTV_GRAPHICS_VIC_BANK - //SEG394 [225] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #DTV_COLOR_BANK_DEFAULT/$400 - sta DTV_COLOR_BANK_LO - //SEG395 [226] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) 1024 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #0 - sta DTV_COLOR_BANK_HI - //SEG396 [227] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #3 - sta CIA2_PORT_A_DDR - //SEG397 [228] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) 16384 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #3^FORM_CHARSET/$4000 - sta CIA2_PORT_A - //SEG398 [229] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #0 - sta DTV_CONTROL - //SEG399 [230] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #VIC_DEN|VIC_RSEL|3 - sta VIC_CONTROL - //SEG400 [231] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #VIC_CSEL - sta VIC_CONTROL2 - //SEG401 [232] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) 16383/(byte/signed byte/word/signed word/dword/signed dword) 64|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) 16383/(word/signed word/dword/signed dword) 1024 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #(FORM_SCREEN&$3fff)/$40|(FORM_CHARSET&$3fff)/$400 - sta VIC_MEMORY - //SEG402 [233] phi from form_mode to form_mode::@1 [phi:form_mode->form_mode::@1] - //SEG403 [233] phi (byte) form_mode::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_mode->form_mode::@1#0] -- vbuxx=vbuc1 - ldx #0 - //SEG404 [233] phi from form_mode::@1 to form_mode::@1 [phi:form_mode::@1->form_mode::@1] - //SEG405 [233] phi (byte) form_mode::i#2 = (byte) form_mode::i#1 [phi:form_mode::@1->form_mode::@1#0] -- register_copy - //SEG406 form_mode::@1 - b1: - //SEG407 [234] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ← *((const byte[16]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) [ form_mode::i#2 ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_mode::i#2 ] ) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx - lda DTV_PALETTE_DEFAULT,x - sta DTV_PALETTE,x - //SEG408 [235] (byte) form_mode::i#1 ← ++ (byte) form_mode::i#2 [ form_mode::i#1 ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_mode::i#1 ] ) -- vbuxx=_inc_vbuxx - inx - //SEG409 [236] if((byte) form_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto form_mode::@1 [ form_mode::i#1 ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 form_mode::i#1 ] ) -- vbuxx_neq_vbuc1_then_la1 - cpx #$10 - bne b1 - //SEG410 form_mode::@2 - //SEG411 [237] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - lda #0 - sta BORDERCOL - //SEG412 [238] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) -- _deref_pbuc1=vbuc2 - sta BGCOL - //SEG413 form_mode::@return - //SEG414 [239] return [ ] ( main:2::form_mode:16 [ form_cursor_count#1 keyboard_events_size#20 form_field_idx#1 ] ) - rts -} -//SEG415 form_init +//SEG463 form_init form_init: { - //SEG416 [241] call print_set_screen param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) - //SEG417 [294] phi from form_init to print_set_screen [phi:form_init->print_set_screen] - //SEG418 [294] phi (byte*) print_set_screen::screen#2 = (const byte*) COLS#0+(const word) FORM_OFFSET#0 [phi:form_init->print_set_screen#0] -- pbuz1=pbuc1 - lda #print_set_screen] + //SEG466 [322] phi (byte*) print_set_screen::screen#2 = (const byte*) COLS#0 [phi:form_init->print_set_screen#0] -- pbuz1=pbuc1 + lda #COLS+FORM_OFFSET + lda #>COLS sta print_set_screen.screen+1 jsr print_set_screen - //SEG419 [242] phi from form_init to form_init::@1 [phi:form_init->form_init::@1] - //SEG420 form_init::@1 - //SEG421 [243] call print_str_lines param-assignment [ ] ( main:2::form_init:10 [ ] ) - //SEG422 [273] phi from form_init::@1 to print_str_lines [phi:form_init::@1->print_str_lines] - //SEG423 [273] phi (byte*) print_str_lines::str#5 = (const string) FORM_COLS#0 [phi:form_init::@1->print_str_lines#0] -- pbuz1=pbuc1 + //SEG467 [259] phi from form_init to form_init::@1 [phi:form_init->form_init::@1] + //SEG468 form_init::@1 + //SEG469 [260] call print_cls param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) + jsr print_cls + //SEG470 [261] phi from form_init::@1 to form_init::@2 [phi:form_init::@1->form_init::@2] + //SEG471 form_init::@2 + //SEG472 [262] call print_str_lines param-assignment [ ] ( main:2::form_init:10 [ ] ) + //SEG473 [294] phi from form_init::@2 to print_str_lines [phi:form_init::@2->print_str_lines] + //SEG474 [294] phi (byte*) print_str_lines::str#5 = (const string) FORM_COLS#0 [phi:form_init::@2->print_str_lines#0] -- pbuz1=pbuc1 lda #FORM_COLS sta print_str_lines.str+1 jsr print_str_lines - //SEG424 [244] phi from form_init::@1 to form_init::@2 [phi:form_init::@1->form_init::@2] - //SEG425 form_init::@2 - //SEG426 [245] call print_set_screen param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) - //SEG427 [294] phi from form_init::@2 to print_set_screen [phi:form_init::@2->print_set_screen] - //SEG428 [294] phi (byte*) print_set_screen::screen#2 = (const byte*) FORM_SCREEN#0+(const word) FORM_OFFSET#0 [phi:form_init::@2->print_set_screen#0] -- pbuz1=pbuc1 - lda #form_init::@3] + //SEG476 form_init::@3 + //SEG477 [264] call print_set_screen param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) + //SEG478 [322] phi from form_init::@3 to print_set_screen [phi:form_init::@3->print_set_screen] + //SEG479 [322] phi (byte*) print_set_screen::screen#2 = (const byte*) FORM_SCREEN#0 [phi:form_init::@3->print_set_screen#0] -- pbuz1=pbuc1 + lda #FORM_SCREEN+FORM_OFFSET + lda #>FORM_SCREEN sta print_set_screen.screen+1 jsr print_set_screen - //SEG429 [246] phi from form_init::@2 to form_init::@3 [phi:form_init::@2->form_init::@3] - //SEG430 form_init::@3 - //SEG431 [247] call print_str_lines param-assignment [ ] ( main:2::form_init:10 [ ] ) - //SEG432 [273] phi from form_init::@3 to print_str_lines [phi:form_init::@3->print_str_lines] - //SEG433 [273] phi (byte*) print_str_lines::str#5 = (const string) FORM_TEXT#0 [phi:form_init::@3->print_str_lines#0] -- pbuz1=pbuc1 + //SEG480 [265] phi from form_init::@3 to form_init::@4 [phi:form_init::@3->form_init::@4] + //SEG481 form_init::@4 + //SEG482 [266] call print_cls param-assignment [ print_set_screen::screen#2 ] ( main:2::form_init:10 [ print_set_screen::screen#2 ] ) + jsr print_cls + //SEG483 [267] phi from form_init::@4 to form_init::@5 [phi:form_init::@4->form_init::@5] + //SEG484 form_init::@5 + //SEG485 [268] call print_str_lines param-assignment [ ] ( main:2::form_init:10 [ ] ) + //SEG486 [294] phi from form_init::@5 to print_str_lines [phi:form_init::@5->print_str_lines] + //SEG487 [294] phi (byte*) print_str_lines::str#5 = (const string) FORM_TEXT#0 [phi:form_init::@5->print_str_lines#0] -- pbuz1=pbuc1 lda #FORM_TEXT sta print_str_lines.str+1 jsr print_str_lines - //SEG434 [248] phi from form_init::@3 to form_init::@4 [phi:form_init::@3->form_init::@4] - //SEG435 form_init::@4 - //SEG436 [249] call form_set_screen param-assignment [ ] ( main:2::form_init:10 [ ] ) - //SEG437 [263] phi from form_init::@4 to form_set_screen [phi:form_init::@4->form_set_screen] + //SEG488 [269] phi from form_init::@5 to form_init::@6 [phi:form_init::@5->form_init::@6] + //SEG489 form_init::@6 + //SEG490 [270] call form_set_screen param-assignment [ ] ( main:2::form_init:10 [ ] ) + //SEG491 [284] phi from form_init::@6 to form_set_screen [phi:form_init::@6->form_set_screen] jsr form_set_screen - //SEG438 [250] phi from form_init::@4 to form_init::@5 [phi:form_init::@4->form_init::@5] - //SEG439 form_init::@5 - //SEG440 [251] call form_render_values param-assignment [ ] ( main:2::form_init:10 [ ] ) - //SEG441 [253] phi from form_init::@5 to form_render_values [phi:form_init::@5->form_render_values] + //SEG492 [271] phi from form_init::@6 to form_init::@7 [phi:form_init::@6->form_init::@7] + //SEG493 form_init::@7 + //SEG494 [272] call form_render_values param-assignment [ ] ( main:2::form_init:10 [ ] ) + //SEG495 [274] phi from form_init::@7 to form_render_values [phi:form_init::@7->form_render_values] jsr form_render_values - //SEG442 form_init::@return - //SEG443 [252] return [ ] ( main:2::form_init:10 [ ] ) + //SEG496 form_init::@return + //SEG497 [273] return [ ] ( main:2::form_init:10 [ ] ) rts } -//SEG444 form_render_values +//SEG498 form_render_values form_render_values: { .label field = 7 - //SEG445 [254] phi from form_render_values to form_render_values::@1 [phi:form_render_values->form_render_values::@1] - //SEG446 [254] phi (byte) form_render_values::idx#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_render_values->form_render_values::@1#0] -- vbuxx=vbuc1 + //SEG499 [275] phi from form_render_values to form_render_values::@1 [phi:form_render_values->form_render_values::@1] + //SEG500 [275] phi (byte) form_render_values::idx#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_render_values->form_render_values::@1#0] -- vbuxx=vbuc1 ldx #0 - //SEG447 [254] phi from form_render_values::@3 to form_render_values::@1 [phi:form_render_values::@3->form_render_values::@1] - //SEG448 [254] phi (byte) form_render_values::idx#2 = (byte) form_render_values::idx#1 [phi:form_render_values::@3->form_render_values::@1#0] -- register_copy - //SEG449 form_render_values::@1 + //SEG501 [275] phi from form_render_values::@3 to form_render_values::@1 [phi:form_render_values::@3->form_render_values::@1] + //SEG502 [275] phi (byte) form_render_values::idx#2 = (byte) form_render_values::idx#1 [phi:form_render_values::@3->form_render_values::@1#0] -- register_copy + //SEG503 form_render_values::@1 b1: - //SEG450 [255] (byte) form_field_ptr::field_idx#0 ← (byte) form_render_values::idx#2 [ form_field_ptr::field_idx#0 form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:251 [ form_field_ptr::field_idx#0 form_render_values::idx#2 ] ) + //SEG504 [276] (byte) form_field_ptr::field_idx#0 ← (byte) form_render_values::idx#2 [ form_field_ptr::field_idx#0 form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:272 [ form_field_ptr::field_idx#0 form_render_values::idx#2 ] ) // (byte) form_field_ptr::field_idx#0 = (byte) form_render_values::idx#2 // register copy reg byte x - //SEG451 [256] call form_field_ptr param-assignment [ form_field_ptr::return#0 form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:251 [ form_field_ptr::return#0 form_render_values::idx#2 ] ) - //SEG452 [218] phi from form_render_values::@1 to form_field_ptr [phi:form_render_values::@1->form_field_ptr] - //SEG453 [218] phi (byte) form_field_ptr::field_idx#2 = (byte) form_field_ptr::field_idx#0 [phi:form_render_values::@1->form_field_ptr#0] -- register_copy + //SEG505 [277] call form_field_ptr param-assignment [ form_field_ptr::return#0 form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:272 [ form_field_ptr::return#0 form_render_values::idx#2 ] ) + //SEG506 [251] phi from form_render_values::@1 to form_field_ptr [phi:form_render_values::@1->form_field_ptr] + //SEG507 [251] phi (byte) form_field_ptr::field_idx#2 = (byte) form_field_ptr::field_idx#0 [phi:form_render_values::@1->form_field_ptr#0] -- register_copy jsr form_field_ptr - //SEG454 [257] (byte*) form_field_ptr::return#2 ← (byte*) form_field_ptr::return#0 [ form_render_values::idx#2 form_field_ptr::return#2 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#2 form_field_ptr::return#2 ] ) + //SEG508 [278] (byte*) form_field_ptr::return#2 ← (byte*) form_field_ptr::return#0 [ form_render_values::idx#2 form_field_ptr::return#2 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 form_field_ptr::return#2 ] ) // (byte*) form_field_ptr::return#2 = (byte*) form_field_ptr::return#0 // register copy zp ZP_WORD:7 - //SEG455 form_render_values::@3 - //SEG456 [258] (byte*) form_render_values::field#0 ← (byte*) form_field_ptr::return#2 [ form_render_values::idx#2 form_render_values::field#0 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#2 form_render_values::field#0 ] ) + //SEG509 form_render_values::@3 + //SEG510 [279] (byte*) form_render_values::field#0 ← (byte*) form_field_ptr::return#2 [ form_render_values::idx#2 form_render_values::field#0 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 form_render_values::field#0 ] ) // (byte*) form_render_values::field#0 = (byte*) form_field_ptr::return#2 // register copy zp ZP_WORD:7 - //SEG457 [259] *((byte*) form_render_values::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) [ form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#2 ] ) -- _deref_pbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuxx + //SEG511 [280] *((byte*) form_render_values::field#0) ← *((const string) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) [ form_render_values::idx#2 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#2 ] ) -- _deref_pbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuxx lda form_fields_val,x tay lda print_hextab,y ldy #0 sta (field),y - //SEG458 [260] (byte) form_render_values::idx#1 ← ++ (byte) form_render_values::idx#2 [ form_render_values::idx#1 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#1 ] ) -- vbuxx=_inc_vbuxx + //SEG512 [281] (byte) form_render_values::idx#1 ← ++ (byte) form_render_values::idx#2 [ form_render_values::idx#1 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#1 ] ) -- vbuxx=_inc_vbuxx inx - //SEG459 [261] if((byte) form_render_values::idx#1<(const byte) form_fields_cnt#0) goto form_render_values::@1 [ form_render_values::idx#1 ] ( main:2::form_init:10::form_render_values:251 [ form_render_values::idx#1 ] ) -- vbuxx_lt_vbuc1_then_la1 + //SEG513 [282] if((byte) form_render_values::idx#1<(const byte) form_fields_cnt#0) goto form_render_values::@1 [ form_render_values::idx#1 ] ( main:2::form_init:10::form_render_values:272 [ form_render_values::idx#1 ] ) -- vbuxx_lt_vbuc1_then_la1 cpx #form_fields_cnt bcc b1 - //SEG460 form_render_values::@return - //SEG461 [262] return [ ] ( main:2::form_init:10::form_render_values:251 [ ] ) + //SEG514 form_render_values::@return + //SEG515 [283] return [ ] ( main:2::form_init:10::form_render_values:272 [ ] ) rts } -//SEG462 form_set_screen +//SEG516 form_set_screen form_set_screen: { - .label screen = FORM_SCREEN+FORM_OFFSET .label line = 7 - //SEG463 [264] phi from form_set_screen to form_set_screen::@1 [phi:form_set_screen->form_set_screen::@1] - //SEG464 [264] phi (byte) form_set_screen::y#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_set_screen->form_set_screen::@1#0] -- vbuxx=vbuc1 + //SEG517 [285] phi from form_set_screen to form_set_screen::@1 [phi:form_set_screen->form_set_screen::@1] + //SEG518 [285] phi (byte) form_set_screen::y#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:form_set_screen->form_set_screen::@1#0] -- vbuxx=vbuc1 ldx #0 - //SEG465 [264] phi (byte*) form_set_screen::line#2 = (const byte*) form_set_screen::screen#0 [phi:form_set_screen->form_set_screen::@1#1] -- pbuz1=pbuc1 - lda #form_set_screen::@1#1] -- pbuz1=pbuc1 + lda #screen + lda #>FORM_SCREEN sta line+1 - //SEG466 [264] phi from form_set_screen::@1 to form_set_screen::@1 [phi:form_set_screen::@1->form_set_screen::@1] - //SEG467 [264] phi (byte) form_set_screen::y#2 = (byte) form_set_screen::y#1 [phi:form_set_screen::@1->form_set_screen::@1#0] -- register_copy - //SEG468 [264] phi (byte*) form_set_screen::line#2 = (byte*) form_set_screen::line#1 [phi:form_set_screen::@1->form_set_screen::@1#1] -- register_copy - //SEG469 form_set_screen::@1 + //SEG520 [285] phi from form_set_screen::@1 to form_set_screen::@1 [phi:form_set_screen::@1->form_set_screen::@1] + //SEG521 [285] phi (byte) form_set_screen::y#2 = (byte) form_set_screen::y#1 [phi:form_set_screen::@1->form_set_screen::@1#0] -- register_copy + //SEG522 [285] phi (byte*) form_set_screen::line#2 = (byte*) form_set_screen::line#1 [phi:form_set_screen::@1->form_set_screen::@1#1] -- register_copy + //SEG523 form_set_screen::@1 b1: - //SEG470 [265] (byte~) form_set_screen::$0 ← < (byte*) form_set_screen::line#2 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$0 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$0 ] ) -- vbuaa=_lo_pbuz1 + //SEG524 [286] (byte~) form_set_screen::$0 ← < (byte*) form_set_screen::line#2 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$0 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$0 ] ) -- vbuaa=_lo_pbuz1 lda line - //SEG471 [266] *((const byte[25]) form_line_lo#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$0 [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#2 form_set_screen::y#2 ] ) -- pbuc1_derefidx_vbuxx=vbuaa + //SEG525 [287] *((const byte[25]) form_line_lo#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$0 [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#2 form_set_screen::y#2 ] ) -- pbuc1_derefidx_vbuxx=vbuaa sta form_line_lo,x - //SEG472 [267] (byte~) form_set_screen::$1 ← > (byte*) form_set_screen::line#2 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$1 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$1 ] ) -- vbuaa=_hi_pbuz1 + //SEG526 [288] (byte~) form_set_screen::$1 ← > (byte*) form_set_screen::line#2 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$1 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#2 form_set_screen::y#2 form_set_screen::$1 ] ) -- vbuaa=_hi_pbuz1 lda line+1 - //SEG473 [268] *((const byte[25]) form_line_hi#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$1 [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#2 form_set_screen::y#2 ] ) -- pbuc1_derefidx_vbuxx=vbuaa + //SEG527 [289] *((const byte[25]) form_line_hi#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$1 [ form_set_screen::line#2 form_set_screen::y#2 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#2 form_set_screen::y#2 ] ) -- pbuc1_derefidx_vbuxx=vbuaa sta form_line_hi,x - //SEG474 [269] (byte*) form_set_screen::line#1 ← (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ form_set_screen::y#2 form_set_screen::line#1 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::y#2 form_set_screen::line#1 ] ) -- pbuz1=pbuz1_plus_vbuc1 + //SEG528 [290] (byte*) form_set_screen::line#1 ← (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ form_set_screen::y#2 form_set_screen::line#1 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::y#2 form_set_screen::line#1 ] ) -- pbuz1=pbuz1_plus_vbuc1 lda line clc adc #$28 @@ -16846,88 +19101,88 @@ form_set_screen: { bcc !+ inc line+1 !: - //SEG475 [270] (byte) form_set_screen::y#1 ← ++ (byte) form_set_screen::y#2 [ form_set_screen::line#1 form_set_screen::y#1 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#1 form_set_screen::y#1 ] ) -- vbuxx=_inc_vbuxx + //SEG529 [291] (byte) form_set_screen::y#1 ← ++ (byte) form_set_screen::y#2 [ form_set_screen::line#1 form_set_screen::y#1 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#1 form_set_screen::y#1 ] ) -- vbuxx=_inc_vbuxx inx - //SEG476 [271] if((byte) form_set_screen::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 25) goto form_set_screen::@1 [ form_set_screen::line#1 form_set_screen::y#1 ] ( main:2::form_init:10::form_set_screen:249 [ form_set_screen::line#1 form_set_screen::y#1 ] ) -- vbuxx_neq_vbuc1_then_la1 + //SEG530 [292] if((byte) form_set_screen::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 25) goto form_set_screen::@1 [ form_set_screen::line#1 form_set_screen::y#1 ] ( main:2::form_init:10::form_set_screen:270 [ form_set_screen::line#1 form_set_screen::y#1 ] ) -- vbuxx_neq_vbuc1_then_la1 cpx #$19 bne b1 - //SEG477 form_set_screen::@return - //SEG478 [272] return [ ] ( main:2::form_init:10::form_set_screen:249 [ ] ) + //SEG531 form_set_screen::@return + //SEG532 [293] return [ ] ( main:2::form_init:10::form_set_screen:270 [ ] ) rts } -//SEG479 print_str_lines +//SEG533 print_str_lines print_str_lines: { .label str = 7 - //SEG480 [274] (byte*~) print_char_cursor#60 ← (byte*) print_set_screen::screen#2 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ) -- pbuz1=pbuz2 + //SEG534 [295] (byte*~) print_char_cursor#60 ← (byte*) print_set_screen::screen#2 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#5 print_char_cursor#60 print_set_screen::screen#2 ] ) -- pbuz1=pbuz2 lda print_set_screen.screen sta print_char_cursor lda print_set_screen.screen+1 sta print_char_cursor+1 - //SEG481 [275] phi from print_str_lines print_str_lines::@9 to print_str_lines::@1 [phi:print_str_lines/print_str_lines::@9->print_str_lines::@1] - //SEG482 [275] phi (byte*) print_line_cursor#16 = (byte*) print_set_screen::screen#2 [phi:print_str_lines/print_str_lines::@9->print_str_lines::@1#0] -- register_copy - //SEG483 [275] phi (byte*) print_char_cursor#18 = (byte*~) print_char_cursor#60 [phi:print_str_lines/print_str_lines::@9->print_str_lines::@1#1] -- register_copy - //SEG484 [275] phi (byte*) print_str_lines::str#3 = (byte*) print_str_lines::str#5 [phi:print_str_lines/print_str_lines::@9->print_str_lines::@1#2] -- register_copy - //SEG485 print_str_lines::@1 + //SEG535 [296] phi from print_str_lines print_str_lines::@9 to print_str_lines::@1 [phi:print_str_lines/print_str_lines::@9->print_str_lines::@1] + //SEG536 [296] phi (byte*) print_line_cursor#2 = (byte*) print_set_screen::screen#2 [phi:print_str_lines/print_str_lines::@9->print_str_lines::@1#0] -- register_copy + //SEG537 [296] phi (byte*) print_char_cursor#22 = (byte*~) print_char_cursor#60 [phi:print_str_lines/print_str_lines::@9->print_str_lines::@1#1] -- register_copy + //SEG538 [296] phi (byte*) print_str_lines::str#3 = (byte*) print_str_lines::str#5 [phi:print_str_lines/print_str_lines::@9->print_str_lines::@1#2] -- register_copy + //SEG539 print_str_lines::@1 b1: - //SEG486 [276] if(*((byte*) print_str_lines::str#3)!=(byte) '@') goto print_str_lines::@4 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#3 print_char_cursor#18 print_line_cursor#16 ] ) -- _deref_pbuz1_neq_vbuc1_then_la1 + //SEG540 [297] if(*((byte*) print_str_lines::str#3)!=(byte) '@') goto print_str_lines::@4 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ) -- _deref_pbuz1_neq_vbuc1_then_la1 ldy #0 lda (str),y cmp #'@' bne b4 - //SEG487 print_str_lines::@return - //SEG488 [277] return [ ] ( main:2::form_init:10::print_str_lines:243 [ ] main:2::form_init:10::print_str_lines:247 [ ] ) + //SEG541 print_str_lines::@return + //SEG542 [298] return [ ] ( main:2::form_init:10::print_str_lines:262 [ ] main:2::form_init:10::print_str_lines:268 [ ] ) rts - //SEG489 [278] phi from print_str_lines::@1 print_str_lines::@5 to print_str_lines::@4 [phi:print_str_lines::@1/print_str_lines::@5->print_str_lines::@4] - //SEG490 [278] phi (byte*) print_char_cursor#16 = (byte*) print_char_cursor#18 [phi:print_str_lines::@1/print_str_lines::@5->print_str_lines::@4#0] -- register_copy - //SEG491 [278] phi (byte*) print_str_lines::str#4 = (byte*) print_str_lines::str#3 [phi:print_str_lines::@1/print_str_lines::@5->print_str_lines::@4#1] -- register_copy - //SEG492 print_str_lines::@4 + //SEG543 [299] phi from print_str_lines::@1 print_str_lines::@5 to print_str_lines::@4 [phi:print_str_lines::@1/print_str_lines::@5->print_str_lines::@4] + //SEG544 [299] phi (byte*) print_char_cursor#20 = (byte*) print_char_cursor#22 [phi:print_str_lines::@1/print_str_lines::@5->print_str_lines::@4#0] -- register_copy + //SEG545 [299] phi (byte*) print_str_lines::str#4 = (byte*) print_str_lines::str#3 [phi:print_str_lines::@1/print_str_lines::@5->print_str_lines::@4#1] -- register_copy + //SEG546 print_str_lines::@4 b4: - //SEG493 [279] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#4) [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#4 print_char_cursor#16 print_str_lines::ch#0 ] ) -- vbuaa=_deref_pbuz1 + //SEG547 [300] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#4) [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] ) -- vbuaa=_deref_pbuz1 ldy #0 lda (str),y - //SEG494 [280] (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#4 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ) -- pbuz1=_inc_pbuz1 + //SEG548 [301] (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#4 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ) -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 !: - //SEG495 [281] if((byte) print_str_lines::ch#0==(byte) '@') goto print_str_lines::@5 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ) -- vbuaa_eq_vbuc1_then_la1 + //SEG549 [302] if((byte) print_str_lines::ch#0==(byte) '@') goto print_str_lines::@5 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ) -- vbuaa_eq_vbuc1_then_la1 cmp #'@' beq b5 - //SEG496 print_str_lines::@8 - //SEG497 [282] *((byte*) print_char_cursor#16) ← (byte) print_str_lines::ch#0 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#16 print_str_lines::ch#0 ] ) -- _deref_pbuz1=vbuaa + //SEG550 print_str_lines::@8 + //SEG551 [303] *((byte*) print_char_cursor#20) ← (byte) print_str_lines::ch#0 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ) -- _deref_pbuz1=vbuaa ldy #0 sta (print_char_cursor),y - //SEG498 [283] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#16 [ print_line_cursor#16 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG552 [304] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#20 [ print_line_cursor#2 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG499 [284] phi from print_str_lines::@4 print_str_lines::@8 to print_str_lines::@5 [phi:print_str_lines::@4/print_str_lines::@8->print_str_lines::@5] - //SEG500 [284] phi (byte*) print_char_cursor#31 = (byte*) print_char_cursor#16 [phi:print_str_lines::@4/print_str_lines::@8->print_str_lines::@5#0] -- register_copy - //SEG501 print_str_lines::@5 + //SEG553 [305] phi from print_str_lines::@4 print_str_lines::@8 to print_str_lines::@5 [phi:print_str_lines::@4/print_str_lines::@8->print_str_lines::@5] + //SEG554 [305] phi (byte*) print_char_cursor#38 = (byte*) print_char_cursor#20 [phi:print_str_lines::@4/print_str_lines::@8->print_str_lines::@5#0] -- register_copy + //SEG555 print_str_lines::@5 b5: - //SEG502 [285] if((byte) print_str_lines::ch#0!=(byte) '@') goto print_str_lines::@4 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 ] ( main:2::form_init:10::print_str_lines:243 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 ] main:2::form_init:10::print_str_lines:247 [ print_line_cursor#16 print_str_lines::str#0 print_char_cursor#31 ] ) -- vbuaa_neq_vbuc1_then_la1 + //SEG556 [306] if((byte) print_str_lines::ch#0!=(byte) '@') goto print_str_lines::@4 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 ] ( main:2::form_init:10::print_str_lines:262 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 ] main:2::form_init:10::print_str_lines:268 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#38 ] ) -- vbuaa_neq_vbuc1_then_la1 cmp #'@' bne b4 - //SEG503 [286] phi from print_str_lines::@5 to print_str_lines::@9 [phi:print_str_lines::@5->print_str_lines::@9] - //SEG504 print_str_lines::@9 - //SEG505 [287] call print_ln param-assignment [ print_str_lines::str#0 print_line_cursor#18 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#0 print_line_cursor#18 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#0 print_line_cursor#18 ] ) - //SEG506 [289] phi from print_str_lines::@9 to print_ln [phi:print_str_lines::@9->print_ln] + //SEG557 [307] phi from print_str_lines::@5 to print_str_lines::@9 [phi:print_str_lines::@5->print_str_lines::@9] + //SEG558 print_str_lines::@9 + //SEG559 [308] call print_ln param-assignment [ print_str_lines::str#0 print_line_cursor#22 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#0 print_line_cursor#22 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#0 print_line_cursor#22 ] ) + //SEG560 [310] phi from print_str_lines::@9 to print_ln [phi:print_str_lines::@9->print_ln] jsr print_ln - //SEG507 [288] (byte*~) print_char_cursor#61 ← (byte*) print_line_cursor#18 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#18 ] ( main:2::form_init:10::print_str_lines:243 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#18 ] main:2::form_init:10::print_str_lines:247 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#18 ] ) -- pbuz1=pbuz2 + //SEG561 [309] (byte*~) print_char_cursor#61 ← (byte*) print_line_cursor#22 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#22 ] ( main:2::form_init:10::print_str_lines:262 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#22 ] main:2::form_init:10::print_str_lines:268 [ print_str_lines::str#0 print_char_cursor#61 print_line_cursor#22 ] ) -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 sta print_char_cursor+1 jmp b1 } -//SEG508 print_ln +//SEG562 print_ln print_ln: { - //SEG509 [290] phi from print_ln print_ln::@1 to print_ln::@1 [phi:print_ln/print_ln::@1->print_ln::@1] - //SEG510 [290] phi (byte*) print_line_cursor#17 = (byte*) print_line_cursor#16 [phi:print_ln/print_ln::@1->print_ln::@1#0] -- register_copy - //SEG511 print_ln::@1 + //SEG563 [311] phi from print_ln print_ln::@1 to print_ln::@1 [phi:print_ln/print_ln::@1->print_ln::@1] + //SEG564 [311] phi (byte*) print_line_cursor#21 = (byte*) print_line_cursor#2 [phi:print_ln/print_ln::@1->print_ln::@1#0] -- register_copy + //SEG565 print_ln::@1 b1: - //SEG512 [291] (byte*) print_line_cursor#18 ← (byte*) print_line_cursor#17 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ print_line_cursor#18 print_char_cursor#31 ] ( main:2::form_init:10::print_str_lines:243::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] main:2::form_init:10::print_str_lines:247::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] ) -- pbuz1=pbuz1_plus_vbuc1 + //SEG566 [312] (byte*) print_line_cursor#22 ← (byte*) print_line_cursor#21 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ print_line_cursor#22 print_char_cursor#38 ] ( main:2::form_init:10::print_str_lines:262::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] main:2::form_init:10::print_str_lines:268::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] ) -- pbuz1=pbuz1_plus_vbuc1 lda print_line_cursor clc adc #$28 @@ -16935,7 +19190,7 @@ print_ln: { bcc !+ inc print_line_cursor+1 !: - //SEG513 [292] if((byte*) print_line_cursor#18<(byte*) print_char_cursor#31) goto print_ln::@1 [ print_line_cursor#18 print_char_cursor#31 ] ( main:2::form_init:10::print_str_lines:243::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] main:2::form_init:10::print_str_lines:247::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 print_char_cursor#31 ] ) -- pbuz1_lt_pbuz2_then_la1 + //SEG567 [313] if((byte*) print_line_cursor#22<(byte*) print_char_cursor#38) goto print_ln::@1 [ print_line_cursor#22 print_char_cursor#38 ] ( main:2::form_init:10::print_str_lines:262::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] main:2::form_init:10::print_str_lines:268::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] ) -- pbuz1_lt_pbuz2_then_la1 lda print_line_cursor+1 cmp print_char_cursor+1 bcc b1 @@ -16944,97 +19199,143 @@ print_ln: { cmp print_char_cursor bcc b1 !: - //SEG514 print_ln::@return - //SEG515 [293] return [ print_line_cursor#18 ] ( main:2::form_init:10::print_str_lines:243::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 ] main:2::form_init:10::print_str_lines:247::print_ln:287 [ print_str_lines::str#0 print_line_cursor#18 ] ) + //SEG568 print_ln::@return + //SEG569 [314] return [ print_line_cursor#22 ] ( main:2::form_init:10::print_str_lines:262::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 ] main:2::form_init:10::print_str_lines:268::print_ln:308 [ print_str_lines::str#0 print_line_cursor#22 ] ) rts } -//SEG516 print_set_screen +//SEG570 print_cls +print_cls: { + .label _0 = 9 + .label sc = 7 + //SEG571 [315] (byte*) print_cls::sc#0 ← (byte*) print_set_screen::screen#2 [ print_set_screen::screen#2 print_cls::sc#0 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#0 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#0 ] ) -- pbuz1=pbuz2 + lda print_set_screen.screen + sta sc + lda print_set_screen.screen+1 + sta sc+1 + //SEG572 [316] phi from print_cls print_cls::@1 to print_cls::@1 [phi:print_cls/print_cls::@1->print_cls::@1] + //SEG573 [316] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#0 [phi:print_cls/print_cls::@1->print_cls::@1#0] -- register_copy + //SEG574 print_cls::@1 + b1: + //SEG575 [317] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_set_screen::screen#2 print_cls::sc#2 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#2 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#2 ] ) -- _deref_pbuz1=vbuc1 + lda #' ' + ldy #0 + sta (sc),y + //SEG576 [318] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_set_screen::screen#2 print_cls::sc#1 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#1 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#1 ] ) -- pbuz1=_inc_pbuz1 + inc sc + bne !+ + inc sc+1 + !: + //SEG577 [319] (byte*~) print_cls::$0 ← (byte*) print_set_screen::screen#2 + (word/signed word/dword/signed dword) 1000 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] ) -- pbuz1=pbuz2_plus_vwuc1 + lda print_set_screen.screen + clc + adc #<$3e8 + sta _0 + lda print_set_screen.screen+1 + adc #>$3e8 + sta _0+1 + //SEG578 [320] if((byte*) print_cls::sc#1!=(byte*~) print_cls::$0) goto print_cls::@1 [ print_set_screen::screen#2 print_cls::sc#1 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 print_cls::sc#1 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 print_cls::sc#1 ] ) -- pbuz1_neq_pbuz2_then_la1 + lda sc+1 + cmp _0+1 + bne b1 + lda sc + cmp _0 + bne b1 + //SEG579 print_cls::@return + //SEG580 [321] return [ print_set_screen::screen#2 ] ( main:2::form_init:10::print_cls:260 [ print_set_screen::screen#2 ] main:2::form_init:10::print_cls:266 [ print_set_screen::screen#2 ] ) + rts +} +//SEG581 print_set_screen print_set_screen: { .label screen = $b - //SEG517 print_set_screen::@return - //SEG518 [295] return [ print_set_screen::screen#2 ] ( main:2::form_init:10::print_set_screen:241 [ print_set_screen::screen#2 ] main:2::form_init:10::print_set_screen:245 [ print_set_screen::screen#2 ] ) + //SEG582 print_set_screen::@return + //SEG583 [323] return [ print_set_screen::screen#2 ] ( main:2::form_init:10::print_set_screen:258 [ print_set_screen::screen#2 ] main:2::form_init:10::print_set_screen:264 [ print_set_screen::screen#2 ] ) rts } -//SEG519 gfx_init +//SEG584 gfx_init gfx_init: { - //SEG520 [297] call gfx_init_plane_8bppchunky param-assignment [ ] ( main:2::gfx_init:8 [ ] ) - //SEG521 [299] phi from gfx_init to gfx_init_plane_8bppchunky [phi:gfx_init->gfx_init_plane_8bppchunky] + //SEG585 [325] call gfx_init_screen_stdchar param-assignment [ ] ( main:2::gfx_init:8 [ ] ) + //SEG586 [353] phi from gfx_init to gfx_init_screen_stdchar [phi:gfx_init->gfx_init_screen_stdchar] + jsr gfx_init_screen_stdchar + //SEG587 [326] phi from gfx_init to gfx_init::@1 [phi:gfx_init->gfx_init::@1] + //SEG588 gfx_init::@1 + //SEG589 [327] call gfx_init_plane_8bppchunky param-assignment [ ] ( main:2::gfx_init:8 [ ] ) + //SEG590 [329] phi from gfx_init::@1 to gfx_init_plane_8bppchunky [phi:gfx_init::@1->gfx_init_plane_8bppchunky] jsr gfx_init_plane_8bppchunky - //SEG522 gfx_init::@return - //SEG523 [298] return [ ] ( main:2::gfx_init:8 [ ] ) + //SEG591 gfx_init::@return + //SEG592 [328] return [ ] ( main:2::gfx_init:8 [ ] ) rts } -//SEG524 gfx_init_plane_8bppchunky +//SEG593 gfx_init_plane_8bppchunky gfx_init_plane_8bppchunky: { .label _6 = $b .label gfxb = 9 .label x = 7 .label y = 2 - //SEG525 [300] call dtvSetCpuBankSegment1 param-assignment [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ ] ) - //SEG526 [319] phi from gfx_init_plane_8bppchunky to dtvSetCpuBankSegment1 [phi:gfx_init_plane_8bppchunky->dtvSetCpuBankSegment1] - //SEG527 [319] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = ((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky->dtvSetCpuBankSegment1#0] -- vbuaa=vbuc1 + //SEG594 [330] call dtvSetCpuBankSegment1 param-assignment [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ ] ) + //SEG595 [349] phi from gfx_init_plane_8bppchunky to dtvSetCpuBankSegment1 [phi:gfx_init_plane_8bppchunky->dtvSetCpuBankSegment1] + //SEG596 [349] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = ((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky->dtvSetCpuBankSegment1#0] -- vbuaa=vbuc1 lda #PLANE_8BPP_CHUNKY/$4000 jsr dtvSetCpuBankSegment1 - //SEG528 [301] phi from gfx_init_plane_8bppchunky to gfx_init_plane_8bppchunky::@1 [phi:gfx_init_plane_8bppchunky->gfx_init_plane_8bppchunky::@1] - //SEG529 [301] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 = ++((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky->gfx_init_plane_8bppchunky::@1#0] -- vbuxx=vbuc1 + //SEG597 [331] phi from gfx_init_plane_8bppchunky to gfx_init_plane_8bppchunky::@1 [phi:gfx_init_plane_8bppchunky->gfx_init_plane_8bppchunky::@1] + //SEG598 [331] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 = ++((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky->gfx_init_plane_8bppchunky::@1#0] -- vbuxx=vbuc1 ldx #PLANE_8BPP_CHUNKY/$4000+1 - //SEG530 [301] phi (byte) gfx_init_plane_8bppchunky::y#6 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_init_plane_8bppchunky->gfx_init_plane_8bppchunky::@1#1] -- vbuz1=vbuc1 + //SEG599 [331] phi (byte) gfx_init_plane_8bppchunky::y#6 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_init_plane_8bppchunky->gfx_init_plane_8bppchunky::@1#1] -- vbuz1=vbuc1 lda #0 sta y - //SEG531 [301] phi (byte*) gfx_init_plane_8bppchunky::gfxb#5 = ((byte*))(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky->gfx_init_plane_8bppchunky::@1#2] -- pbuz1=pbuc1 + //SEG600 [331] phi (byte*) gfx_init_plane_8bppchunky::gfxb#5 = ((byte*))(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky->gfx_init_plane_8bppchunky::@1#2] -- pbuz1=pbuc1 lda #<$4000 sta gfxb lda #>$4000 sta gfxb+1 - //SEG532 [301] phi from gfx_init_plane_8bppchunky::@5 to gfx_init_plane_8bppchunky::@1 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@1] - //SEG533 [301] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@1#0] -- register_copy - //SEG534 [301] phi (byte) gfx_init_plane_8bppchunky::y#6 = (byte) gfx_init_plane_8bppchunky::y#1 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@1#1] -- register_copy - //SEG535 [301] phi (byte*) gfx_init_plane_8bppchunky::gfxb#5 = (byte*) gfx_init_plane_8bppchunky::gfxb#1 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@1#2] -- register_copy - //SEG536 gfx_init_plane_8bppchunky::@1 + //SEG601 [331] phi from gfx_init_plane_8bppchunky::@5 to gfx_init_plane_8bppchunky::@1 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@1] + //SEG602 [331] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@1#0] -- register_copy + //SEG603 [331] phi (byte) gfx_init_plane_8bppchunky::y#6 = (byte) gfx_init_plane_8bppchunky::y#1 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@1#1] -- register_copy + //SEG604 [331] phi (byte*) gfx_init_plane_8bppchunky::gfxb#5 = (byte*) gfx_init_plane_8bppchunky::gfxb#1 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@1#2] -- register_copy + //SEG605 gfx_init_plane_8bppchunky::@1 b1: - //SEG537 [302] phi from gfx_init_plane_8bppchunky::@1 to gfx_init_plane_8bppchunky::@2 [phi:gfx_init_plane_8bppchunky::@1->gfx_init_plane_8bppchunky::@2] - //SEG538 [302] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 [phi:gfx_init_plane_8bppchunky::@1->gfx_init_plane_8bppchunky::@2#0] -- register_copy - //SEG539 [302] phi (word) gfx_init_plane_8bppchunky::x#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_init_plane_8bppchunky::@1->gfx_init_plane_8bppchunky::@2#1] -- vwuz1=vbuc1 + //SEG606 [332] phi from gfx_init_plane_8bppchunky::@1 to gfx_init_plane_8bppchunky::@2 [phi:gfx_init_plane_8bppchunky::@1->gfx_init_plane_8bppchunky::@2] + //SEG607 [332] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 [phi:gfx_init_plane_8bppchunky::@1->gfx_init_plane_8bppchunky::@2#0] -- register_copy + //SEG608 [332] phi (word) gfx_init_plane_8bppchunky::x#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_init_plane_8bppchunky::@1->gfx_init_plane_8bppchunky::@2#1] -- vwuz1=vbuc1 lda #<0 sta x sta x+1 - //SEG540 [302] phi (byte*) gfx_init_plane_8bppchunky::gfxb#3 = (byte*) gfx_init_plane_8bppchunky::gfxb#5 [phi:gfx_init_plane_8bppchunky::@1->gfx_init_plane_8bppchunky::@2#2] -- register_copy - //SEG541 [302] phi from gfx_init_plane_8bppchunky::@3 to gfx_init_plane_8bppchunky::@2 [phi:gfx_init_plane_8bppchunky::@3->gfx_init_plane_8bppchunky::@2] - //SEG542 [302] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 [phi:gfx_init_plane_8bppchunky::@3->gfx_init_plane_8bppchunky::@2#0] -- register_copy - //SEG543 [302] phi (word) gfx_init_plane_8bppchunky::x#2 = (word) gfx_init_plane_8bppchunky::x#1 [phi:gfx_init_plane_8bppchunky::@3->gfx_init_plane_8bppchunky::@2#1] -- register_copy - //SEG544 [302] phi (byte*) gfx_init_plane_8bppchunky::gfxb#3 = (byte*) gfx_init_plane_8bppchunky::gfxb#1 [phi:gfx_init_plane_8bppchunky::@3->gfx_init_plane_8bppchunky::@2#2] -- register_copy - //SEG545 gfx_init_plane_8bppchunky::@2 + //SEG609 [332] phi (byte*) gfx_init_plane_8bppchunky::gfxb#3 = (byte*) gfx_init_plane_8bppchunky::gfxb#5 [phi:gfx_init_plane_8bppchunky::@1->gfx_init_plane_8bppchunky::@2#2] -- register_copy + //SEG610 [332] phi from gfx_init_plane_8bppchunky::@3 to gfx_init_plane_8bppchunky::@2 [phi:gfx_init_plane_8bppchunky::@3->gfx_init_plane_8bppchunky::@2] + //SEG611 [332] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 [phi:gfx_init_plane_8bppchunky::@3->gfx_init_plane_8bppchunky::@2#0] -- register_copy + //SEG612 [332] phi (word) gfx_init_plane_8bppchunky::x#2 = (word) gfx_init_plane_8bppchunky::x#1 [phi:gfx_init_plane_8bppchunky::@3->gfx_init_plane_8bppchunky::@2#1] -- register_copy + //SEG613 [332] phi (byte*) gfx_init_plane_8bppchunky::gfxb#3 = (byte*) gfx_init_plane_8bppchunky::gfxb#1 [phi:gfx_init_plane_8bppchunky::@3->gfx_init_plane_8bppchunky::@2#2] -- register_copy + //SEG614 gfx_init_plane_8bppchunky::@2 b2: - //SEG546 [303] if((byte*) gfx_init_plane_8bppchunky::gfxb#3!=(word/dword/signed dword) 32768) goto gfx_init_plane_8bppchunky::@3 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) -- pbuz1_neq_vwuc1_then_la1 + //SEG615 [333] if((byte*) gfx_init_plane_8bppchunky::gfxb#3!=(word/dword/signed dword) 32768) goto gfx_init_plane_8bppchunky::@3 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) -- pbuz1_neq_vwuc1_then_la1 lda gfxb+1 cmp #>$8000 bne b3 lda gfxb cmp #<$8000 bne b3 - //SEG547 gfx_init_plane_8bppchunky::@4 - //SEG548 [304] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ← (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 dtvSetCpuBankSegment1::cpuBankIdx#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 dtvSetCpuBankSegment1::cpuBankIdx#1 ] ) -- vbuaa=vbuxx + //SEG616 gfx_init_plane_8bppchunky::@4 + //SEG617 [334] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ← (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 dtvSetCpuBankSegment1::cpuBankIdx#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 dtvSetCpuBankSegment1::cpuBankIdx#1 ] ) -- vbuaa=vbuxx txa - //SEG549 [305] call dtvSetCpuBankSegment1 param-assignment [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) - //SEG550 [319] phi from gfx_init_plane_8bppchunky::@4 to dtvSetCpuBankSegment1 [phi:gfx_init_plane_8bppchunky::@4->dtvSetCpuBankSegment1] - //SEG551 [319] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 [phi:gfx_init_plane_8bppchunky::@4->dtvSetCpuBankSegment1#0] -- register_copy + //SEG618 [335] call dtvSetCpuBankSegment1 param-assignment [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) + //SEG619 [349] phi from gfx_init_plane_8bppchunky::@4 to dtvSetCpuBankSegment1 [phi:gfx_init_plane_8bppchunky::@4->dtvSetCpuBankSegment1] + //SEG620 [349] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 [phi:gfx_init_plane_8bppchunky::@4->dtvSetCpuBankSegment1#0] -- register_copy jsr dtvSetCpuBankSegment1 - //SEG552 gfx_init_plane_8bppchunky::@8 - //SEG553 [306] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ← ++ (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] ) -- vbuxx=_inc_vbuxx + //SEG621 gfx_init_plane_8bppchunky::@8 + //SEG622 [336] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ← ++ (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] ) -- vbuxx=_inc_vbuxx inx - //SEG554 [307] phi from gfx_init_plane_8bppchunky::@8 to gfx_init_plane_8bppchunky::@3 [phi:gfx_init_plane_8bppchunky::@8->gfx_init_plane_8bppchunky::@3] - //SEG555 [307] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 [phi:gfx_init_plane_8bppchunky::@8->gfx_init_plane_8bppchunky::@3#0] -- register_copy - //SEG556 [307] phi (byte*) gfx_init_plane_8bppchunky::gfxb#4 = ((byte*))(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky::@8->gfx_init_plane_8bppchunky::@3#1] -- pbuz1=pbuc1 + //SEG623 [337] phi from gfx_init_plane_8bppchunky::@8 to gfx_init_plane_8bppchunky::@3 [phi:gfx_init_plane_8bppchunky::@8->gfx_init_plane_8bppchunky::@3] + //SEG624 [337] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 [phi:gfx_init_plane_8bppchunky::@8->gfx_init_plane_8bppchunky::@3#0] -- register_copy + //SEG625 [337] phi (byte*) gfx_init_plane_8bppchunky::gfxb#4 = ((byte*))(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky::@8->gfx_init_plane_8bppchunky::@3#1] -- pbuz1=pbuc1 lda #<$4000 sta gfxb lda #>$4000 sta gfxb+1 - //SEG557 [307] phi from gfx_init_plane_8bppchunky::@2 to gfx_init_plane_8bppchunky::@3 [phi:gfx_init_plane_8bppchunky::@2->gfx_init_plane_8bppchunky::@3] - //SEG558 [307] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [phi:gfx_init_plane_8bppchunky::@2->gfx_init_plane_8bppchunky::@3#0] -- register_copy - //SEG559 [307] phi (byte*) gfx_init_plane_8bppchunky::gfxb#4 = (byte*) gfx_init_plane_8bppchunky::gfxb#3 [phi:gfx_init_plane_8bppchunky::@2->gfx_init_plane_8bppchunky::@3#1] -- register_copy - //SEG560 gfx_init_plane_8bppchunky::@3 + //SEG626 [337] phi from gfx_init_plane_8bppchunky::@2 to gfx_init_plane_8bppchunky::@3 [phi:gfx_init_plane_8bppchunky::@2->gfx_init_plane_8bppchunky::@3] + //SEG627 [337] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [phi:gfx_init_plane_8bppchunky::@2->gfx_init_plane_8bppchunky::@3#0] -- register_copy + //SEG628 [337] phi (byte*) gfx_init_plane_8bppchunky::gfxb#4 = (byte*) gfx_init_plane_8bppchunky::gfxb#3 [phi:gfx_init_plane_8bppchunky::@2->gfx_init_plane_8bppchunky::@3#1] -- register_copy + //SEG629 gfx_init_plane_8bppchunky::@3 b3: - //SEG561 [308] (word~) gfx_init_plane_8bppchunky::$6 ← (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ) -- vwuz1=vwuz2_plus_vbuz3 + //SEG630 [338] (word~) gfx_init_plane_8bppchunky::$6 ← (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$6 ] ) -- vwuz1=vwuz2_plus_vbuz3 lda y clc adc x @@ -17042,69 +19343,135 @@ gfx_init_plane_8bppchunky: { lda #0 adc x+1 sta _6+1 - //SEG562 [309] (byte) gfx_init_plane_8bppchunky::c#0 ← ((byte)) (word~) gfx_init_plane_8bppchunky::$6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ) -- vbuaa=_byte_vwuz1 + //SEG631 [339] (byte) gfx_init_plane_8bppchunky::c#0 ← ((byte)) (word~) gfx_init_plane_8bppchunky::$6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ) -- vbuaa=_byte_vwuz1 lda _6 - //SEG563 [310] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ← (byte) gfx_init_plane_8bppchunky::c#0 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) -- _deref_pbuz1=vbuaa + //SEG632 [340] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ← (byte) gfx_init_plane_8bppchunky::c#0 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) -- _deref_pbuz1=vbuaa ldy #0 sta (gfxb),y - //SEG564 [311] (byte*) gfx_init_plane_8bppchunky::gfxb#1 ← ++ (byte*) gfx_init_plane_8bppchunky::gfxb#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 ] ) -- pbuz1=_inc_pbuz1 + //SEG633 [341] (byte*) gfx_init_plane_8bppchunky::gfxb#1 ← ++ (byte*) gfx_init_plane_8bppchunky::gfxb#4 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 ] ) -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG565 [312] (word) gfx_init_plane_8bppchunky::x#1 ← ++ (word) gfx_init_plane_8bppchunky::x#2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) -- vwuz1=_inc_vwuz1 + //SEG634 [342] (word) gfx_init_plane_8bppchunky::x#1 ← ++ (word) gfx_init_plane_8bppchunky::x#2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) -- vwuz1=_inc_vwuz1 inc x bne !+ inc x+1 !: - //SEG566 [313] if((word) gfx_init_plane_8bppchunky::x#1!=(word/signed word/dword/signed dword) 320) goto gfx_init_plane_8bppchunky::@2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) -- vwuz1_neq_vwuc1_then_la1 + //SEG635 [343] if((word) gfx_init_plane_8bppchunky::x#1!=(word/signed word/dword/signed dword) 320) goto gfx_init_plane_8bppchunky::@2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) -- vwuz1_neq_vwuc1_then_la1 lda x+1 cmp #>$140 bne b2 lda x cmp #<$140 bne b2 - //SEG567 gfx_init_plane_8bppchunky::@5 - //SEG568 [314] (byte) gfx_init_plane_8bppchunky::y#1 ← ++ (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ) -- vbuz1=_inc_vbuz1 + //SEG636 gfx_init_plane_8bppchunky::@5 + //SEG637 [344] (byte) gfx_init_plane_8bppchunky::y#1 ← ++ (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ) -- vbuz1=_inc_vbuz1 inc y - //SEG569 [315] if((byte) gfx_init_plane_8bppchunky::y#1!=(byte/word/signed word/dword/signed dword) 200) goto gfx_init_plane_8bppchunky::@1 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ) -- vbuz1_neq_vbuc1_then_la1 + //SEG638 [345] if((byte) gfx_init_plane_8bppchunky::y#1!=(byte/word/signed word/dword/signed dword) 200) goto gfx_init_plane_8bppchunky::@1 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 ] ) -- vbuz1_neq_vbuc1_then_la1 lda y cmp #$c8 bne b1 - //SEG570 [316] phi from gfx_init_plane_8bppchunky::@5 to gfx_init_plane_8bppchunky::@6 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@6] - //SEG571 gfx_init_plane_8bppchunky::@6 - //SEG572 [317] call dtvSetCpuBankSegment1 param-assignment [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ ] ) - //SEG573 [319] phi from gfx_init_plane_8bppchunky::@6 to dtvSetCpuBankSegment1 [phi:gfx_init_plane_8bppchunky::@6->dtvSetCpuBankSegment1] - //SEG574 [319] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = ((byte))(word/signed word/dword/signed dword) 16384/(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky::@6->dtvSetCpuBankSegment1#0] -- vbuaa=vbuc1 + //SEG639 [346] phi from gfx_init_plane_8bppchunky::@5 to gfx_init_plane_8bppchunky::@6 [phi:gfx_init_plane_8bppchunky::@5->gfx_init_plane_8bppchunky::@6] + //SEG640 gfx_init_plane_8bppchunky::@6 + //SEG641 [347] call dtvSetCpuBankSegment1 param-assignment [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ ] ) + //SEG642 [349] phi from gfx_init_plane_8bppchunky::@6 to dtvSetCpuBankSegment1 [phi:gfx_init_plane_8bppchunky::@6->dtvSetCpuBankSegment1] + //SEG643 [349] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = ((byte))(word/signed word/dword/signed dword) 16384/(word/signed word/dword/signed dword) 16384 [phi:gfx_init_plane_8bppchunky::@6->dtvSetCpuBankSegment1#0] -- vbuaa=vbuc1 lda #$4000/$4000 jsr dtvSetCpuBankSegment1 - //SEG575 gfx_init_plane_8bppchunky::@return - //SEG576 [318] return [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297 [ ] ) + //SEG644 gfx_init_plane_8bppchunky::@return + //SEG645 [348] return [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327 [ ] ) rts } -//SEG577 dtvSetCpuBankSegment1 +//SEG646 dtvSetCpuBankSegment1 dtvSetCpuBankSegment1: { .label cpuBank = $ff - //SEG578 [320] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ← (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:300 [ ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:305 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:317 [ ] ) -- _deref_pbuc1=vbuaa + //SEG647 [350] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ← (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:330 [ ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:335 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:347 [ ] ) -- _deref_pbuc1=vbuaa sta cpuBank - //SEG579 asm { .byte$32,$dd lda$ff .byte$32,$00 } + //SEG648 asm { .byte$32,$dd lda$ff .byte$32,$00 } .byte $32, $dd lda $ff .byte $32, $00 - //SEG580 dtvSetCpuBankSegment1::@return - //SEG581 [322] return [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:300 [ ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:305 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:297::dtvSetCpuBankSegment1:317 [ ] ) + //SEG649 dtvSetCpuBankSegment1::@return + //SEG650 [352] return [ ] ( main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:330 [ ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:335 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] main:2::gfx_init:8::gfx_init_plane_8bppchunky:327::dtvSetCpuBankSegment1:347 [ ] ) rts } -//SEG582 keyboard_init +//SEG651 gfx_init_screen_stdchar +gfx_init_screen_stdchar: { + .label _1 = 3 + .label ch = 7 + .label cy = 2 + //SEG652 [354] phi from gfx_init_screen_stdchar to gfx_init_screen_stdchar::@1 [phi:gfx_init_screen_stdchar->gfx_init_screen_stdchar::@1] + //SEG653 [354] phi (byte*) gfx_init_screen_stdchar::ch#3 = (const byte*) VIC_SCREEN_STDCHAR#0 [phi:gfx_init_screen_stdchar->gfx_init_screen_stdchar::@1#0] -- pbuz1=pbuc1 + lda #VIC_SCREEN_STDCHAR + sta ch+1 + //SEG654 [354] phi (byte) gfx_init_screen_stdchar::cy#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_init_screen_stdchar->gfx_init_screen_stdchar::@1#1] -- vbuz1=vbuc1 + lda #0 + sta cy + //SEG655 [354] phi from gfx_init_screen_stdchar::@3 to gfx_init_screen_stdchar::@1 [phi:gfx_init_screen_stdchar::@3->gfx_init_screen_stdchar::@1] + //SEG656 [354] phi (byte*) gfx_init_screen_stdchar::ch#3 = (byte*) gfx_init_screen_stdchar::ch#1 [phi:gfx_init_screen_stdchar::@3->gfx_init_screen_stdchar::@1#0] -- register_copy + //SEG657 [354] phi (byte) gfx_init_screen_stdchar::cy#4 = (byte) gfx_init_screen_stdchar::cy#1 [phi:gfx_init_screen_stdchar::@3->gfx_init_screen_stdchar::@1#1] -- register_copy + //SEG658 gfx_init_screen_stdchar::@1 + b1: + //SEG659 [355] phi from gfx_init_screen_stdchar::@1 to gfx_init_screen_stdchar::@2 [phi:gfx_init_screen_stdchar::@1->gfx_init_screen_stdchar::@2] + //SEG660 [355] phi (byte*) gfx_init_screen_stdchar::ch#2 = (byte*) gfx_init_screen_stdchar::ch#3 [phi:gfx_init_screen_stdchar::@1->gfx_init_screen_stdchar::@2#0] -- register_copy + //SEG661 [355] phi (byte) gfx_init_screen_stdchar::cx#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_init_screen_stdchar::@1->gfx_init_screen_stdchar::@2#1] -- vbuxx=vbuc1 + ldx #0 + //SEG662 [355] phi from gfx_init_screen_stdchar::@2 to gfx_init_screen_stdchar::@2 [phi:gfx_init_screen_stdchar::@2->gfx_init_screen_stdchar::@2] + //SEG663 [355] phi (byte*) gfx_init_screen_stdchar::ch#2 = (byte*) gfx_init_screen_stdchar::ch#1 [phi:gfx_init_screen_stdchar::@2->gfx_init_screen_stdchar::@2#0] -- register_copy + //SEG664 [355] phi (byte) gfx_init_screen_stdchar::cx#2 = (byte) gfx_init_screen_stdchar::cx#1 [phi:gfx_init_screen_stdchar::@2->gfx_init_screen_stdchar::@2#1] -- register_copy + //SEG665 gfx_init_screen_stdchar::@2 + b2: + //SEG666 [356] (byte~) gfx_init_screen_stdchar::$0 ← (byte) gfx_init_screen_stdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$0 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$0 ] ) -- vbuaa=vbuz1_band_vbuc1 + lda #$f + and cy + //SEG667 [357] (byte~) gfx_init_screen_stdchar::$1 ← (byte~) gfx_init_screen_stdchar::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 ] ) -- vbuz1=vbuaa_rol_4 + asl + asl + asl + asl + sta _1 + //SEG668 [358] (byte~) gfx_init_screen_stdchar::$2 ← (byte) gfx_init_screen_stdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 gfx_init_screen_stdchar::$2 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$1 gfx_init_screen_stdchar::$2 ] ) -- vbuaa=vbuxx_band_vbuc1 + txa + and #$f + //SEG669 [359] (byte~) gfx_init_screen_stdchar::$3 ← (byte~) gfx_init_screen_stdchar::$1 | (byte~) gfx_init_screen_stdchar::$2 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$3 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::$3 ] ) -- vbuaa=vbuz1_bor_vbuaa + ora _1 + //SEG670 [360] *((byte*) gfx_init_screen_stdchar::ch#2) ← (byte~) gfx_init_screen_stdchar::$3 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::ch#2 ] ) -- _deref_pbuz1=vbuaa + ldy #0 + sta (ch),y + //SEG671 [361] (byte*) gfx_init_screen_stdchar::ch#1 ← ++ (byte*) gfx_init_screen_stdchar::ch#2 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#2 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#2 ] ) -- pbuz1=_inc_pbuz1 + inc ch + bne !+ + inc ch+1 + !: + //SEG672 [362] (byte) gfx_init_screen_stdchar::cx#1 ← ++ (byte) gfx_init_screen_stdchar::cx#2 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#1 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#1 ] ) -- vbuxx=_inc_vbuxx + inx + //SEG673 [363] if((byte) gfx_init_screen_stdchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) 40) goto gfx_init_screen_stdchar::@2 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#1 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::ch#1 gfx_init_screen_stdchar::cx#1 ] ) -- vbuxx_neq_vbuc1_then_la1 + cpx #$28 + bne b2 + //SEG674 gfx_init_screen_stdchar::@3 + //SEG675 [364] (byte) gfx_init_screen_stdchar::cy#1 ← ++ (byte) gfx_init_screen_stdchar::cy#4 [ gfx_init_screen_stdchar::cy#1 gfx_init_screen_stdchar::ch#1 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#1 gfx_init_screen_stdchar::ch#1 ] ) -- vbuz1=_inc_vbuz1 + inc cy + //SEG676 [365] if((byte) gfx_init_screen_stdchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) 25) goto gfx_init_screen_stdchar::@1 [ gfx_init_screen_stdchar::cy#1 gfx_init_screen_stdchar::ch#1 ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ gfx_init_screen_stdchar::cy#1 gfx_init_screen_stdchar::ch#1 ] ) -- vbuz1_neq_vbuc1_then_la1 + lda cy + cmp #$19 + bne b1 + //SEG677 gfx_init_screen_stdchar::@return + //SEG678 [366] return [ ] ( main:2::gfx_init:8::gfx_init_screen_stdchar:325 [ ] ) + rts +} +//SEG679 keyboard_init keyboard_init: { - //SEG583 [323] *((const byte*) CIA1_PORT_A_DDR#0) ← (byte/word/signed word/dword/signed dword) 255 [ ] ( main:2::keyboard_init:6 [ ] ) -- _deref_pbuc1=vbuc2 + //SEG680 [367] *((const byte*) CIA1_PORT_A_DDR#0) ← (byte/word/signed word/dword/signed dword) 255 [ ] ( main:2::keyboard_init:6 [ ] ) -- _deref_pbuc1=vbuc2 lda #$ff sta CIA1_PORT_A_DDR - //SEG584 [324] *((const byte*) CIA1_PORT_B_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::keyboard_init:6 [ ] ) -- _deref_pbuc1=vbuc2 + //SEG681 [368] *((const byte*) CIA1_PORT_B_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::keyboard_init:6 [ ] ) -- _deref_pbuc1=vbuc2 lda #0 sta CIA1_PORT_B_DDR - //SEG585 keyboard_init::@return - //SEG586 [325] return [ ] ( main:2::keyboard_init:6 [ ] ) + //SEG682 keyboard_init::@return + //SEG683 [369] return [ ] ( main:2::keyboard_init:6 [ ] ) rts } DTV_PALETTE_DEFAULT: .byte 0, $f, $36, $be, $58, $db, $86, $ff, $29, $26, $3b, 5, 7, $df, $9a, $a diff --git a/src/test/java/dk/camelot64/kickc/test/ref/c64dtv-gfxexplorer.sym b/src/test/java/dk/camelot64/kickc/test/ref/c64dtv-gfxexplorer.sym index d572a21fb..10458b6a2 100644 --- a/src/test/java/dk/camelot64/kickc/test/ref/c64dtv-gfxexplorer.sym +++ b/src/test/java/dk/camelot64/kickc/test/ref/c64dtv-gfxexplorer.sym @@ -1,4 +1,4 @@ -(label) @32 +(label) @33 (label) @begin (label) @end (byte*) BGCOL @@ -11,8 +11,6 @@ (const byte*) BGCOL3#0 BGCOL3 = ((byte*))(word/dword/signed dword) 53283 (byte*) BGCOL4 (const byte*) BGCOL4#0 BGCOL4 = ((byte*))(word/dword/signed dword) 53284 -(byte*) BORDERCOL -(const byte*) BORDERCOL#0 BORDERCOL = ((byte*))(word/dword/signed dword) 53280 (byte*) CIA1_PORT_A (const byte*) CIA1_PORT_A#0 CIA1_PORT_A = ((byte*))(word/dword/signed dword) 56320 (byte*) CIA1_PORT_A_DDR @@ -87,8 +85,6 @@ (const string) FORM_COLS#0 FORM_COLS = (string) "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@"+(string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+(string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+(string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+(string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+(string) " nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @"+(string) " nnnnnnn ooooooooo @"+(string) " nnnnnnn nnnnnnnn ooooooooo @"+(string) " nnnnnnn nnnnnnnn ooooooooo @"+(string) "@" (signed byte) FORM_CURSOR_BLINK (const signed byte) FORM_CURSOR_BLINK#0 FORM_CURSOR_BLINK = (byte/signed byte/word/signed word/dword/signed dword) 40 -(word) FORM_OFFSET -(const word) FORM_OFFSET#0 FORM_OFFSET = (byte/signed byte/word/signed word/dword/signed dword) 16*(byte/signed byte/word/signed word/dword/signed dword) 40 (byte*) FORM_SCREEN (const byte*) FORM_SCREEN#0 FORM_SCREEN = ((byte*))(word/dword/signed dword) 32768 (byte[]) FORM_TEXT @@ -115,6 +111,8 @@ (const byte) KEY_MODIFIER_SHIFT#0 KEY_MODIFIER_SHIFT = (const byte) KEY_MODIFIER_LSHIFT#0|(const byte) KEY_MODIFIER_RSHIFT#0 (byte) KEY_RSHIFT (const byte) KEY_RSHIFT#0 KEY_RSHIFT = (byte/signed byte/word/signed word/dword/signed dword) 52 +(byte) KEY_SPACE +(const byte) KEY_SPACE#0 KEY_SPACE = (byte/signed byte/word/signed word/dword/signed dword) 60 (dword) PLANE_8BPP_CHUNKY (const dword) PLANE_8BPP_CHUNKY#0 PLANE_8BPP_CHUNKY = (dword/signed dword) 131072 (byte*) RASTER @@ -137,6 +135,8 @@ (const byte*) VIC_MEMORY#0 VIC_MEMORY = ((byte*))(word/dword/signed dword) 53272 (byte) VIC_RSEL (const byte) VIC_RSEL#0 VIC_RSEL = (byte/signed byte/word/signed word/dword/signed dword) 8 +(byte*) VIC_SCREEN_STDCHAR +(const byte*) VIC_SCREEN_STDCHAR#0 VIC_SCREEN_STDCHAR = ((byte*))(word/dword/signed dword) 33792 (void()) dtvSetCpuBankSegment1((byte) dtvSetCpuBankSegment1::cpuBankIdx) (label) dtvSetCpuBankSegment1::@return (byte*) dtvSetCpuBankSegment1::cpuBank @@ -168,7 +168,7 @@ (const byte*) form_b_step_hi#0 form_b_step_hi = (const byte[]) form_fields_val#0+(byte/signed byte/word/signed word/dword/signed dword) 20 (byte*) form_b_step_lo (const byte*) form_b_step_lo#0 form_b_step_lo = (const byte[]) form_fields_val#0+(byte/signed byte/word/signed word/dword/signed dword) 21 -(void()) form_control() +(byte()) form_control() (byte~) form_control::$12 reg byte a 4.0 (byte~) form_control::$13 reg byte a 4.0 (byte~) form_control::$24 reg byte a 4.0 @@ -177,29 +177,34 @@ (label) form_control::@1 (label) form_control::@10 (label) form_control::@12 -(label) form_control::@15 -(label) form_control::@17 +(label) form_control::@16 (label) form_control::@18 +(label) form_control::@19 (label) form_control::@2 -(label) form_control::@23 (label) form_control::@24 (label) form_control::@25 -(label) form_control::@27 -(label) form_control::@29 +(label) form_control::@26 +(label) form_control::@28 (label) form_control::@3 -(label) form_control::@30 -(label) form_control::@31 -(label) form_control::@32 (label) form_control::@33 (label) form_control::@34 +(label) form_control::@35 +(label) form_control::@36 +(label) form_control::@37 +(label) form_control::@38 +(label) form_control::@39 (label) form_control::@4 (label) form_control::@5 (label) form_control::@7 +(label) form_control::@9 (label) form_control::@return (byte*) form_control::field (byte*) form_control::field#0 field zp ZP_WORD:7 0.5925925925925926 (byte) form_control::key_event -(byte) form_control::key_event#0 reg byte a 3.0 +(byte) form_control::key_event#0 reg byte a 2.6666666666666665 +(byte) form_control::return +(byte) form_control::return#0 reg byte a 202.0 +(byte) form_control::return#2 reg byte x 33.666666666666664 (byte*) form_ctrl_bmm (const byte*) form_ctrl_bmm#0 form_ctrl_bmm = (const byte[]) form_fields_val#0+(byte/signed byte/word/signed word/dword/signed dword) 1 (byte*) form_ctrl_borof @@ -219,16 +224,20 @@ (byte*) form_ctrl_overs (const byte*) form_ctrl_overs#0 form_ctrl_overs = (const byte[]) form_fields_val#0+(byte/signed byte/word/signed word/dword/signed dword) 9 (signed byte) form_cursor_count -(signed byte) form_cursor_count#1 form_cursor_count zp ZP_BYTE:2 1.1818181818181819 -(signed byte) form_cursor_count#11 form_cursor_count zp ZP_BYTE:2 0.34782608695652173 -(signed byte) form_cursor_count#12 form_cursor_count zp ZP_BYTE:2 3.0 -(signed byte) form_cursor_count#3 form_cursor_count zp ZP_BYTE:2 2.0 +(signed byte) form_cursor_count#1 form_cursor_count zp ZP_BYTE:5 0.7647058823529412 +(signed byte) form_cursor_count#13 form_cursor_count zp ZP_BYTE:5 42.599999999999994 +(signed byte) form_cursor_count#15 form_cursor_count zp ZP_BYTE:5 0.4 +(signed byte) form_cursor_count#16 form_cursor_count zp ZP_BYTE:5 34.66666666666667 +(signed byte) form_cursor_count#21 form_cursor_count zp ZP_BYTE:5 25.75 +(signed byte) form_cursor_count#5 form_cursor_count zp ZP_BYTE:5 2.0 (byte) form_field_idx -(byte) form_field_idx#1 form_field_idx zp ZP_BYTE:3 1.0487804878048785 -(byte) form_field_idx#14 form_field_idx zp ZP_BYTE:3 3.4 -(byte) form_field_idx#24 form_field_idx zp ZP_BYTE:3 6.0 -(byte) form_field_idx#3 form_field_idx zp ZP_BYTE:3 2.0 -(byte) form_field_idx#34 form_field_idx zp ZP_BYTE:3 2.0 +(byte) form_field_idx#1 form_field_idx zp ZP_BYTE:6 0.7647058823529412 +(byte) form_field_idx#14 form_field_idx zp ZP_BYTE:6 42.599999999999994 +(byte) form_field_idx#18 form_field_idx zp ZP_BYTE:6 35.00000000000001 +(byte) form_field_idx#28 form_field_idx zp ZP_BYTE:6 5.949999999999997 +(byte) form_field_idx#32 form_field_idx zp ZP_BYTE:6 6.0 +(byte) form_field_idx#43 form_field_idx zp ZP_BYTE:6 2.0 +(byte) form_field_idx#44 form_field_idx zp ZP_BYTE:6 2.0 (byte*()) form_field_ptr((byte) form_field_ptr::field_idx) (word~) form_field_ptr::$2 $2 zp ZP_WORD:7 1.0 (label) form_field_ptr::@return @@ -262,14 +271,21 @@ (label) form_init::@3 (label) form_init::@4 (label) form_init::@5 +(label) form_init::@6 +(label) form_init::@7 (label) form_init::@return (byte[25]) form_line_hi (const byte[25]) form_line_hi#0 form_line_hi = { fill( 25, 0) } (byte[25]) form_line_lo (const byte[25]) form_line_lo#0 form_line_lo = { fill( 25, 0) } (void()) form_mode() +(byte~) form_mode::$25 reg byte a 202.0 (label) form_mode::@1 +(label) form_mode::@19 (label) form_mode::@2 +(label) form_mode::@5 +(label) form_mode::@7 +(label) form_mode::@9 (label) form_mode::@return (byte) form_mode::i (byte) form_mode::i#1 reg byte x 151.5 @@ -292,7 +308,6 @@ (byte*) form_set_screen::line#1 line zp ZP_WORD:7 7.333333333333333 (byte*) form_set_screen::line#2 line zp ZP_WORD:7 8.8 (byte*) form_set_screen::screen -(const byte*) form_set_screen::screen#0 screen = (const byte*) FORM_SCREEN#0+(const word) FORM_OFFSET#0 (byte) form_set_screen::y (byte) form_set_screen::y#1 reg byte x 16.5 (byte) form_set_screen::y#2 reg byte x 7.333333333333333 @@ -313,6 +328,7 @@ (byte*) form_vic_bg3_lo (const byte*) form_vic_bg3_lo#0 form_vic_bg3_lo = (const byte[]) form_fields_val#0+(byte/signed byte/word/signed word/dword/signed dword) 34 (void()) gfx_init() +(label) gfx_init::@1 (label) gfx_init::@return (void()) gfx_init_plane_8bppchunky() (word~) gfx_init_plane_8bppchunky::$6 $6 zp ZP_WORD:11 202.0 @@ -342,6 +358,25 @@ (byte) gfx_init_plane_8bppchunky::y (byte) gfx_init_plane_8bppchunky::y#1 y zp ZP_BYTE:2 16.5 (byte) gfx_init_plane_8bppchunky::y#6 y zp ZP_BYTE:2 9.461538461538462 +(void()) gfx_init_screen_stdchar() +(byte~) gfx_init_screen_stdchar::$0 reg byte a 202.0 +(byte~) gfx_init_screen_stdchar::$1 $1 zp ZP_BYTE:3 101.0 +(byte~) gfx_init_screen_stdchar::$2 reg byte a 202.0 +(byte~) gfx_init_screen_stdchar::$3 reg byte a 202.0 +(label) gfx_init_screen_stdchar::@1 +(label) gfx_init_screen_stdchar::@2 +(label) gfx_init_screen_stdchar::@3 +(label) gfx_init_screen_stdchar::@return +(byte*) gfx_init_screen_stdchar::ch +(byte*) gfx_init_screen_stdchar::ch#1 ch zp ZP_WORD:7 42.599999999999994 +(byte*) gfx_init_screen_stdchar::ch#2 ch zp ZP_WORD:7 52.33333333333333 +(byte*) gfx_init_screen_stdchar::ch#3 ch zp ZP_WORD:7 22.0 +(byte) gfx_init_screen_stdchar::cx +(byte) gfx_init_screen_stdchar::cx#1 reg byte x 151.5 +(byte) gfx_init_screen_stdchar::cx#2 reg byte x 43.285714285714285 +(byte) gfx_init_screen_stdchar::cy +(byte) gfx_init_screen_stdchar::cy#1 cy zp ZP_BYTE:2 16.5 +(byte) gfx_init_screen_stdchar::cy#4 cy zp ZP_BYTE:2 12.299999999999999 (void()) gfx_mode() (byte~) gfx_mode::$29 reg byte a 4.0 (word~) gfx_mode::$33 $33 zp ZP_WORD:7 4.0 @@ -376,16 +411,21 @@ (label) gfx_mode::@1 (label) gfx_mode::@10 (label) gfx_mode::@11 -(label) gfx_mode::@12 -(label) gfx_mode::@13 (label) gfx_mode::@14 -(label) gfx_mode::@15 (label) gfx_mode::@16 -(label) gfx_mode::@17 (label) gfx_mode::@18 (label) gfx_mode::@19 (label) gfx_mode::@2 +(label) gfx_mode::@20 +(label) gfx_mode::@21 +(label) gfx_mode::@22 +(label) gfx_mode::@23 +(label) gfx_mode::@24 +(label) gfx_mode::@25 +(label) gfx_mode::@26 (label) gfx_mode::@3 +(label) gfx_mode::@36 +(label) gfx_mode::@37 (label) gfx_mode::@4 (label) gfx_mode::@5 (label) gfx_mode::@6 @@ -408,6 +448,8 @@ (byte) gfx_mode::i (byte) gfx_mode::i#1 reg byte x 151.5 (byte) gfx_mode::i#2 reg byte x 202.0 +(byte) gfx_mode::keyboard_event +(byte) gfx_mode::keyboard_event#0 reg byte a 202.0 (dword) gfx_mode::plane_a (dword) gfx_mode::plane_a#0 plane_a zp ZP_DWORD:13 1.1428571428571428 (byte) gfx_mode::plane_a_offs @@ -427,14 +469,15 @@ (label) keyboard_event_get::@return (byte) keyboard_event_get::return (byte) keyboard_event_get::return#0 reg byte a 4.0 -(byte) keyboard_event_get::return#2 reg byte a 1.3333333333333333 -(byte) keyboard_event_get::return#3 reg byte a 4.0 +(byte) keyboard_event_get::return#2 reg byte a 26.25 +(byte) keyboard_event_get::return#3 reg byte a 202.0 +(byte) keyboard_event_get::return#4 reg byte a 4.0 (byte()) keyboard_event_pressed((byte) keyboard_event_pressed::keycode) (byte~) keyboard_event_pressed::$0 reg byte a 4.0 (byte~) keyboard_event_pressed::$1 reg byte a 4.0 (label) keyboard_event_pressed::@return (byte) keyboard_event_pressed::keycode -(byte) keyboard_event_pressed::keycode#4 keycode zp ZP_BYTE:4 1.3333333333333333 +(byte) keyboard_event_pressed::keycode#4 keycode zp ZP_BYTE:2 1.3333333333333333 (byte) keyboard_event_pressed::return (byte) keyboard_event_pressed::return#0 reg byte a 4.0 (byte) keyboard_event_pressed::return#1 reg byte a 4.0 @@ -442,15 +485,15 @@ (byte) keyboard_event_pressed::return#2 reg byte a 4.0 (byte) keyboard_event_pressed::return#3 reg byte a 4.0 (byte) keyboard_event_pressed::row_bits -(byte) keyboard_event_pressed::row_bits#0 row_bits zp ZP_BYTE:5 2.0 +(byte) keyboard_event_pressed::row_bits#0 reg byte y 2.0 (void()) keyboard_event_scan() -(byte/word/dword~) keyboard_event_scan::$12 reg byte a 2002.0 +(byte/word/dword~) keyboard_event_scan::$12 reg byte a 20002.0 (byte~) keyboard_event_scan::$16 reg byte a 4.0 (byte~) keyboard_event_scan::$20 reg byte a 4.0 (byte~) keyboard_event_scan::$24 reg byte a 4.0 (byte~) keyboard_event_scan::$28 reg byte a 4.0 -(byte~) keyboard_event_scan::$3 reg byte a 2002.0 -(byte~) keyboard_event_scan::$4 reg byte a 2002.0 +(byte~) keyboard_event_scan::$3 reg byte a 20002.0 +(byte~) keyboard_event_scan::$4 reg byte a 20002.0 (label) keyboard_event_scan::@1 (label) keyboard_event_scan::@10 (label) keyboard_event_scan::@11 @@ -476,33 +519,38 @@ (label) keyboard_event_scan::@9 (label) keyboard_event_scan::@return (byte) keyboard_event_scan::col -(byte) keyboard_event_scan::col#1 reg byte x 1501.5 -(byte) keyboard_event_scan::col#2 reg byte x 286.0 +(byte) keyboard_event_scan::col#1 reg byte x 15001.5 +(byte) keyboard_event_scan::col#2 reg byte x 2857.4285714285716 (byte) keyboard_event_scan::event_type -(byte) keyboard_event_scan::event_type#0 reg byte a 2002.0 +(byte) keyboard_event_scan::event_type#0 reg byte a 20002.0 (byte) keyboard_event_scan::keycode -(byte) keyboard_event_scan::keycode#1 keycode zp ZP_BYTE:5 202.0 -(byte) keyboard_event_scan::keycode#10 keycode zp ZP_BYTE:5 315.7692307692308 -(byte) keyboard_event_scan::keycode#11 keycode zp ZP_BYTE:5 50.5 -(byte) keyboard_event_scan::keycode#14 keycode zp ZP_BYTE:5 101.0 -(byte) keyboard_event_scan::keycode#15 keycode zp ZP_BYTE:5 525.75 +(byte) keyboard_event_scan::keycode#1 keycode zp ZP_BYTE:3 2002.0 +(byte) keyboard_event_scan::keycode#10 keycode zp ZP_BYTE:3 3154.230769230769 +(byte) keyboard_event_scan::keycode#11 keycode zp ZP_BYTE:3 500.5 +(byte) keyboard_event_scan::keycode#14 keycode zp ZP_BYTE:3 1001.0 +(byte) keyboard_event_scan::keycode#15 keycode zp ZP_BYTE:3 5250.75 (byte) keyboard_event_scan::row -(byte) keyboard_event_scan::row#1 row zp ZP_BYTE:4 151.5 -(byte) keyboard_event_scan::row#2 row zp ZP_BYTE:4 60.239999999999995 +(byte) keyboard_event_scan::row#1 row zp ZP_BYTE:2 1501.5 +(byte) keyboard_event_scan::row#2 row zp ZP_BYTE:2 600.24 (byte) keyboard_event_scan::row_scan -(byte) keyboard_event_scan::row_scan#0 row_scan zp ZP_BYTE:17 128.05555555555557 +(byte) keyboard_event_scan::row_scan#0 row_scan zp ZP_BYTE:17 1278.0555555555554 (byte[8]) keyboard_events (const byte[8]) keyboard_events#0 keyboard_events = { fill( 8, 0) } (byte) keyboard_events_size -(byte) keyboard_events_size#1 keyboard_events_size zp ZP_BYTE:6 2002.0 -(byte) keyboard_events_size#12 keyboard_events_size zp ZP_BYTE:6 810.9000000000001 -(byte) keyboard_events_size#15 keyboard_events_size zp ZP_BYTE:6 9.65625 -(byte) keyboard_events_size#18 keyboard_events_size zp ZP_BYTE:6 0.46875 -(byte) keyboard_events_size#2 keyboard_events_size zp ZP_BYTE:6 2002.0 -(byte) keyboard_events_size#20 keyboard_events_size zp ZP_BYTE:6 0.5909090909090909 -(byte) keyboard_events_size#37 keyboard_events_size zp ZP_BYTE:6 43.57142857142858 -(byte) keyboard_events_size#38 keyboard_events_size zp ZP_BYTE:6 1021.2 -(byte) keyboard_events_size#4 keyboard_events_size zp ZP_BYTE:6 3.0 +(byte) keyboard_events_size#1 keyboard_events_size zp ZP_BYTE:4 20002.0 +(byte) keyboard_events_size#104 keyboard_events_size zp ZP_BYTE:4 105.0 +(byte) keyboard_events_size#105 keyboard_events_size zp ZP_BYTE:4 88.5 +(byte) keyboard_events_size#11 keyboard_events_size zp ZP_BYTE:4 71.0 +(byte) keyboard_events_size#111 keyboard_events_size zp ZP_BYTE:4 10201.2 +(byte) keyboard_events_size#112 keyboard_events_size zp ZP_BYTE:4 429.2857142857143 +(byte) keyboard_events_size#13 keyboard_events_size zp ZP_BYTE:4 3.4431818181818183 +(byte) keyboard_events_size#18 keyboard_events_size zp ZP_BYTE:4 8100.9000000000015 +(byte) keyboard_events_size#2 keyboard_events_size zp ZP_BYTE:4 20002.0 +(byte) keyboard_events_size#24 keyboard_events_size zp ZP_BYTE:4 10.461538461538462 +(byte) keyboard_events_size#27 keyboard_events_size zp ZP_BYTE:4 0.7647058823529412 +(byte) keyboard_events_size#4 keyboard_events_size zp ZP_BYTE:4 3.0 +(byte) keyboard_events_size#45 keyboard_events_size zp ZP_BYTE:4 101.0 +(byte) keyboard_events_size#47 keyboard_events_size zp ZP_BYTE:4 11.444444444444443 (void()) keyboard_init() (label) keyboard_init::@return (byte[8]) keyboard_matrix_col_bitmask @@ -510,46 +558,56 @@ (byte()) keyboard_matrix_read((byte) keyboard_matrix_read::rowid) (label) keyboard_matrix_read::@return (byte) keyboard_matrix_read::return -(byte) keyboard_matrix_read::return#0 reg byte a 34.33333333333333 -(byte) keyboard_matrix_read::return#2 reg byte a 202.0 +(byte) keyboard_matrix_read::return#0 reg byte a 334.33333333333337 +(byte) keyboard_matrix_read::return#2 reg byte a 2002.0 (byte) keyboard_matrix_read::row_pressed_bits (byte) keyboard_matrix_read::rowid -(byte) keyboard_matrix_read::rowid#0 reg byte x 103.0 +(byte) keyboard_matrix_read::rowid#0 reg byte x 1003.0 (byte[8]) keyboard_matrix_row_bitmask (const byte[8]) keyboard_matrix_row_bitmask#0 keyboard_matrix_row_bitmask = { (byte/word/signed word/dword/signed dword) 254, (byte/word/signed word/dword/signed dword) 253, (byte/word/signed word/dword/signed dword) 251, (byte/word/signed word/dword/signed dword) 247, (byte/word/signed word/dword/signed dword) 239, (byte/word/signed word/dword/signed dword) 223, (byte/word/signed word/dword/signed dword) 191, (byte/signed byte/word/signed word/dword/signed dword) 127 } (byte) keyboard_modifiers -(byte) keyboard_modifiers#13 reg byte x 0.8 -(byte) keyboard_modifiers#14 reg byte x 1.6 -(byte) keyboard_modifiers#15 reg byte x 1.6 -(byte) keyboard_modifiers#16 reg byte x 0.7272727272727273 -(byte) keyboard_modifiers#3 reg byte x 4.0 -(byte) keyboard_modifiers#4 reg byte x 4.0 -(byte) keyboard_modifiers#5 reg byte x 4.0 +(byte) keyboard_modifiers#11 keyboard_modifiers zp ZP_BYTE:3 71.0 +(byte) keyboard_modifiers#13 keyboard_modifiers zp ZP_BYTE:3 3.4431818181818183 +(byte) keyboard_modifiers#18 keyboard_modifiers zp ZP_BYTE:3 0.8 +(byte) keyboard_modifiers#19 keyboard_modifiers zp ZP_BYTE:3 1.6 +(byte) keyboard_modifiers#20 keyboard_modifiers zp ZP_BYTE:3 1.6 +(byte) keyboard_modifiers#21 keyboard_modifiers zp ZP_BYTE:3 9.58139534883721 +(byte) keyboard_modifiers#24 keyboard_modifiers zp ZP_BYTE:3 0.7647058823529412 +(byte) keyboard_modifiers#3 keyboard_modifiers zp ZP_BYTE:3 4.0 +(byte) keyboard_modifiers#4 keyboard_modifiers zp ZP_BYTE:3 4.0 +(byte) keyboard_modifiers#42 keyboard_modifiers zp ZP_BYTE:3 151.5 +(byte) keyboard_modifiers#45 keyboard_modifiers zp ZP_BYTE:3 102.0 +(byte) keyboard_modifiers#5 keyboard_modifiers zp ZP_BYTE:3 4.0 (byte[8]) keyboard_scan_values (const byte[8]) keyboard_scan_values#0 keyboard_scan_values = { fill( 8, 0) } (void()) main() (label) main::@1 -(label) main::@19 -(label) main::@20 -(label) main::@23 -(label) main::@4 -(label) main::@6 +(label) main::@10 +(label) main::@2 (label) main::@7 -(label) main::@9 +(label) main::@8 (label) main::@return (byte*) print_char_cursor (byte*) print_char_cursor#1 print_char_cursor zp ZP_WORD:9 202.0 -(byte*) print_char_cursor#16 print_char_cursor zp ZP_WORD:9 83.0 -(byte*) print_char_cursor#18 print_char_cursor zp ZP_WORD:9 12.0 -(byte*) print_char_cursor#31 print_char_cursor zp ZP_WORD:9 57.714285714285715 +(byte*) print_char_cursor#20 print_char_cursor zp ZP_WORD:9 83.0 +(byte*) print_char_cursor#22 print_char_cursor zp ZP_WORD:9 12.0 +(byte*) print_char_cursor#38 print_char_cursor zp ZP_WORD:9 57.714285714285715 (byte*~) print_char_cursor#60 print_char_cursor zp ZP_WORD:9 4.0 (byte*~) print_char_cursor#61 print_char_cursor zp ZP_WORD:9 22.0 +(void()) print_cls() +(byte*~) print_cls::$0 $0 zp ZP_WORD:9 22.0 +(label) print_cls::@1 +(label) print_cls::@return +(byte*) print_cls::sc +(byte*) print_cls::sc#0 sc zp ZP_WORD:7 4.0 +(byte*) print_cls::sc#1 sc zp ZP_WORD:7 11.0 +(byte*) print_cls::sc#2 sc zp ZP_WORD:7 17.5 (byte[]) print_hextab (const string) print_hextab#0 print_hextab = (string) "0123456789abcdef" (byte*) print_line_cursor -(byte*) print_line_cursor#16 print_line_cursor zp ZP_WORD:11 1.25 -(byte*) print_line_cursor#17 print_line_cursor zp ZP_WORD:11 204.0 -(byte*) print_line_cursor#18 print_line_cursor zp ZP_WORD:11 65.0 +(byte*) print_line_cursor#2 print_line_cursor zp ZP_WORD:11 1.25 +(byte*) print_line_cursor#21 print_line_cursor zp ZP_WORD:11 204.0 +(byte*) print_line_cursor#22 print_line_cursor zp ZP_WORD:11 65.0 (void()) print_ln() (label) print_ln::@1 (label) print_ln::@return @@ -557,7 +615,7 @@ (void()) print_set_screen((byte*) print_set_screen::screen) (label) print_set_screen::@return (byte*) print_set_screen::screen -(byte*) print_set_screen::screen#2 screen zp ZP_WORD:11 0.5 +(byte*) print_set_screen::screen#2 screen zp ZP_WORD:11 0.8947368421052632 (void()) print_str_lines((byte*) print_str_lines::str) (label) print_str_lines::@1 (label) print_str_lines::@4 @@ -573,27 +631,28 @@ (byte*) print_str_lines::str#4 str zp ZP_WORD:7 157.0 (byte*) print_str_lines::str#5 str zp ZP_WORD:7 1.0 -zp ZP_BYTE:2 [ form_cursor_count#1 form_cursor_count#12 form_cursor_count#11 form_cursor_count#3 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 ] -zp ZP_BYTE:3 [ form_field_idx#1 form_field_idx#14 form_field_idx#24 form_field_idx#34 form_field_idx#3 ] -reg byte x [ gfx_mode::dtv_control#12 gfx_mode::dtv_control#6 gfx_mode::dtv_control#13 gfx_mode::dtv_control#5 gfx_mode::dtv_control#11 gfx_mode::dtv_control#4 gfx_mode::dtv_control#10 gfx_mode::dtv_control#3 gfx_mode::dtv_control#15 gfx_mode::dtv_control#14 gfx_mode::dtv_control#2 ] +reg byte x [ gfx_mode::dtv_control#12 gfx_mode::dtv_control#6 gfx_mode::dtv_control#13 gfx_mode::dtv_control#5 gfx_mode::dtv_control#11 gfx_mode::dtv_control#4 gfx_mode::dtv_control#10 gfx_mode::dtv_control#15 gfx_mode::dtv_control#14 gfx_mode::dtv_control#2 gfx_mode::dtv_control#3 ] reg byte x [ gfx_mode::vic_control#4 gfx_mode::vic_control#2 gfx_mode::vic_control#5 ] reg byte a [ gfx_mode::vic_control2#2 ] reg byte x [ gfx_mode::i#2 gfx_mode::i#1 ] reg byte a [ keyboard_event_get::return#2 keyboard_event_get::return#0 ] -zp ZP_BYTE:4 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 keyboard_event_pressed::keycode#4 ] +zp ZP_BYTE:2 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 keyboard_event_pressed::keycode#4 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cy#1 ] reg byte x [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ] -zp ZP_BYTE:5 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 keyboard_event_pressed::row_bits#0 ] -zp ZP_BYTE:6 [ keyboard_events_size#12 keyboard_events_size#37 keyboard_events_size#20 keyboard_events_size#18 keyboard_events_size#4 keyboard_events_size#15 keyboard_events_size#38 keyboard_events_size#2 keyboard_events_size#1 ] -reg byte x [ keyboard_modifiers#16 keyboard_modifiers#15 keyboard_modifiers#4 keyboard_modifiers#14 keyboard_modifiers#3 keyboard_modifiers#13 keyboard_modifiers#5 ] -reg byte x [ form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 form_field_ptr::field_idx#0 ] +zp ZP_BYTE:3 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 keyboard_modifiers#45 keyboard_modifiers#24 keyboard_modifiers#11 keyboard_modifiers#42 keyboard_modifiers#13 keyboard_modifiers#21 keyboard_modifiers#20 keyboard_modifiers#4 keyboard_modifiers#19 keyboard_modifiers#3 keyboard_modifiers#18 keyboard_modifiers#5 gfx_init_screen_stdchar::$1 ] +zp ZP_BYTE:4 [ keyboard_events_size#18 keyboard_events_size#112 keyboard_events_size#104 keyboard_events_size#47 keyboard_events_size#27 keyboard_events_size#11 keyboard_events_size#45 keyboard_events_size#13 keyboard_events_size#24 keyboard_events_size#4 keyboard_events_size#105 keyboard_events_size#111 keyboard_events_size#2 keyboard_events_size#1 ] reg byte x [ form_mode::i#2 form_mode::i#1 ] +zp ZP_BYTE:5 [ form_cursor_count#21 form_cursor_count#16 form_cursor_count#1 form_cursor_count#13 form_cursor_count#15 form_cursor_count#5 ] +zp ZP_BYTE:6 [ form_field_idx#28 form_field_idx#18 form_field_idx#1 form_field_idx#14 form_field_idx#32 form_field_idx#43 form_field_idx#44 ] +reg byte x [ form_control::return#2 ] +reg byte x [ form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 form_field_ptr::field_idx#0 ] reg byte x [ form_render_values::idx#2 form_render_values::idx#1 ] -zp ZP_WORD:7 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 gfx_mode::$33 gfx_mode::$35 gfx_mode::$37 gfx_mode::$46 gfx_mode::$48 gfx_mode::$50 form_field_ptr::return#3 form_control::field#0 form_field_ptr::return#0 form_field_ptr::$2 form_field_ptr::return#2 form_render_values::field#0 ] +zp ZP_WORD:7 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 print_cls::sc#2 print_cls::sc#0 print_cls::sc#1 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::ch#3 gfx_init_screen_stdchar::ch#1 gfx_mode::$33 gfx_mode::$35 gfx_mode::$37 gfx_mode::$46 gfx_mode::$48 gfx_mode::$50 form_field_ptr::return#3 form_control::field#0 form_field_ptr::return#0 form_field_ptr::$2 form_field_ptr::return#2 form_render_values::field#0 ] reg byte x [ form_set_screen::y#2 form_set_screen::y#1 ] -zp ZP_WORD:9 [ print_char_cursor#16 print_char_cursor#18 print_char_cursor#60 print_char_cursor#61 print_char_cursor#31 print_char_cursor#1 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::gfxb#1 ] -zp ZP_WORD:11 [ print_line_cursor#17 print_line_cursor#16 print_set_screen::screen#2 print_line_cursor#18 gfx_init_plane_8bppchunky::$6 ] +zp ZP_WORD:9 [ print_char_cursor#20 print_char_cursor#22 print_char_cursor#60 print_char_cursor#61 print_char_cursor#38 print_char_cursor#1 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::gfxb#1 print_cls::$0 ] +zp ZP_WORD:11 [ print_line_cursor#21 print_line_cursor#2 print_set_screen::screen#2 print_line_cursor#22 gfx_init_plane_8bppchunky::$6 ] reg byte x [ gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] reg byte a [ dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#1 ] +reg byte x [ gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::cx#1 ] reg byte a [ gfx_mode::$29 ] reg byte a [ gfx_mode::plane_a_offs#0 ] zp ZP_DWORD:13 [ gfx_mode::plane_a#0 gfx_mode::plane_b#0 ] @@ -621,13 +680,8 @@ reg byte a [ gfx_mode::$60 ] reg byte a [ gfx_mode::$61 ] reg byte a [ gfx_mode::$62 ] reg byte a [ gfx_mode::$63 ] -reg byte a [ form_control::$6 ] reg byte a [ keyboard_event_get::return#3 ] -reg byte a [ form_control::key_event#0 ] -reg byte a [ form_control::$12 ] -reg byte a [ form_control::$13 ] -reg byte a [ form_control::$24 ] -reg byte a [ form_control::$7 ] +reg byte a [ gfx_mode::keyboard_event#0 ] reg byte x [ keyboard_matrix_read::rowid#0 ] reg byte a [ keyboard_matrix_read::return#2 ] zp ZP_BYTE:17 [ keyboard_event_scan::row_scan#0 ] @@ -644,12 +698,25 @@ reg byte a [ keyboard_event_scan::$24 ] reg byte a [ keyboard_event_pressed::return#3 ] reg byte a [ keyboard_event_scan::$28 ] reg byte a [ keyboard_event_pressed::$0 ] +reg byte y [ keyboard_event_pressed::row_bits#0 ] reg byte a [ keyboard_event_pressed::$1 ] reg byte a [ keyboard_event_pressed::return#10 ] reg byte a [ keyboard_matrix_read::return#0 ] +reg byte a [ form_control::return#0 ] +reg byte a [ form_mode::$25 ] +reg byte a [ form_control::$6 ] +reg byte a [ keyboard_event_get::return#4 ] +reg byte a [ form_control::key_event#0 ] +reg byte a [ form_control::$12 ] +reg byte a [ form_control::$13 ] +reg byte a [ form_control::$24 ] +reg byte a [ form_control::$7 ] reg byte y [ form_field_ptr::y#0 ] reg byte a [ form_field_ptr::x#0 ] reg byte a [ form_set_screen::$0 ] reg byte a [ form_set_screen::$1 ] reg byte a [ print_str_lines::ch#0 ] reg byte a [ gfx_init_plane_8bppchunky::c#0 ] +reg byte a [ gfx_init_screen_stdchar::$0 ] +reg byte a [ gfx_init_screen_stdchar::$2 ] +reg byte a [ gfx_init_screen_stdchar::$3 ]