1
0
mirror of https://gitlab.com/camelot/kickc.git synced 2024-10-21 02:24:34 +00:00
kickc/src/test/ref/c64dtv-gfxmodes.log

32730 lines
2.0 MiB

Fixing pointer addition (word*~) bsearch16u::$7 ← (word*) bsearch16u::items + (byte~) bsearch16u::$6
Fixing pointer addition (word*~) bsearch16u::$15 ← (word*) bsearch16u::pivot + (number) 1
Fixing pointer addition (word*~) bsearch16u::$1 ← (word*) bsearch16u::items - (number) 1
Fixing pointer array-indexing *((word*) utoa::digit_values + (byte) utoa::digit)
Fixing pointer array-indexing *((dword*) ultoa::digit_values + (byte) ultoa::digit)
Warning! Adding boolean cast to non-boolean condition *((byte*) strcpy::src)
Warning! Adding boolean cast to non-boolean condition *((byte*) print_str_lines::str)
Warning! Adding boolean cast to non-boolean condition (byte) print_str_lines::ch
Warning! Adding boolean cast to non-boolean condition *((byte*) print_str::str)
Warning! Adding boolean cast to non-boolean condition *((byte*) print_str_at::str)
Warning! Adding boolean cast to non-boolean sub-expression (byte) print_str_lines::ch
Identified constant variable (byte*) dtvSetCpuBankSegment1::cpuBank
Identified constant variable (byte*) DTV_BLITTER_ALU
Identified constant variable (byte*) HEAP_TOP
Identified constant variable (byte) mode_stdbitmap::lines_cnt
Identified constant variable (byte*) mode_8bpppixelcell::CHARGEN
Inlined call (byte~) vicSelectGfxBank::$0 ← call toDd00 (byte*) vicSelectGfxBank::gfx
Culled Empty Block (label) @1
Culled Empty Block (label) @2
Culled Empty Block (label) @3
Culled Empty Block (label) @5
Culled Empty Block (label) @6
Culled Empty Block (label) @7
Culled Empty Block (label) memset::@7
Culled Empty Block (label) memset::@6
Culled Empty Block (label) memset::@8
Culled Empty Block (label) memset::@9
Culled Empty Block (label) memset::@3
Culled Empty Block (label) @8
Culled Empty Block (label) @9
Culled Empty Block (label) @10
Culled Empty Block (label) @11
Culled Empty Block (label) @12
Culled Empty Block (label) @13
Culled Empty Block (label) @14
Culled Empty Block (label) @15
Culled Empty Block (label) @16
Culled Empty Block (label) print_str_lines::@2
Culled Empty Block (label) print_str_lines::@9
Culled Empty Block (label) print_str_lines::@3
Culled Empty Block (label) print_str_lines::@10
Culled Empty Block (label) print_str_lines::@8
Culled Empty Block (label) @18
Culled Empty Block (label) @19
Culled Empty Block (label) @20
Culled Empty Block (label) @21
Culled Empty Block (label) @22
Culled Empty Block (label) @23
Culled Empty Block (label) @24
Culled Empty Block (label) @25
Culled Empty Block (label) @26
Culled Empty Block (label) @27
Culled Empty Block (label) @28
Culled Empty Block (label) @29
Culled Empty Block (label) @30
Culled Empty Block (label) @31
Culled Empty Block (label) @32
Culled Empty Block (label) @33
Culled Empty Block (label) @34
Culled Empty Block (label) @35
Culled Empty Block (label) @36
Culled Empty Block (label) @37
Culled Empty Block (label) @38
Culled Empty Block (label) @39
Culled Empty Block (label) @40
Culled Empty Block (label) @42
Culled Empty Block (label) keyboard_matrix_read::@1
Culled Empty Block (label) @43
Culled Empty Block (label) keyboard_key_pressed::@1
Culled Empty Block (label) @44
Culled Empty Block (label) @45
Culled Empty Block (label) @46
Culled Empty Block (label) @47
Culled Empty Block (label) bitmap_init::@8
Culled Empty Block (label) @49
Culled Empty Block (label) bitmap_clear::@4
Culled Empty Block (label) @50
Culled Empty Block (label) @51
Culled Empty Block (label) bitmap_line::@12
Culled Empty Block (label) bitmap_line::@6
Culled Empty Block (label) bitmap_line::@14
Culled Empty Block (label) bitmap_line::@13
Culled Empty Block (label) bitmap_line::@16
Culled Empty Block (label) bitmap_line::@18
Culled Empty Block (label) bitmap_line::@2
Culled Empty Block (label) bitmap_line::@19
Culled Empty Block (label) bitmap_line::@22
Culled Empty Block (label) bitmap_line::@9
Culled Empty Block (label) bitmap_line::@24
Culled Empty Block (label) bitmap_line::@23
Culled Empty Block (label) bitmap_line::@26
Culled Empty Block (label) bitmap_line::@28
Culled Empty Block (label) @52
Culled Empty Block (label) bitmap_line_xdyi::@4
Culled Empty Block (label) @53
Culled Empty Block (label) bitmap_line_xdyd::@4
Culled Empty Block (label) @54
Culled Empty Block (label) bitmap_line_ydxi::@4
Culled Empty Block (label) @55
Culled Empty Block (label) bitmap_line_ydxd::@4
Culled Empty Block (label) @56
Culled Empty Block (label) main::@4
Culled Empty Block (label) main::@3
Culled Empty Block (label) main::@5
Culled Empty Block (label) main::@6
Culled Empty Block (label) menu::@6
Culled Empty Block (label) menu::@7
Culled Empty Block (label) menu::@8
Culled Empty Block (label) menu::@24
Culled Empty Block (label) menu::@11
Culled Empty Block (label) menu::@25
Culled Empty Block (label) menu::@27
Culled Empty Block (label) menu::@29
Culled Empty Block (label) menu::@31
Culled Empty Block (label) menu::@33
Culled Empty Block (label) menu::@35
Culled Empty Block (label) menu::@37
Culled Empty Block (label) menu::@39
Culled Empty Block (label) menu::@41
Culled Empty Block (label) menu::@43
Culled Empty Block (label) menu::@45
Culled Empty Block (label) menu::@47
Culled Empty Block (label) menu::@23
Culled Empty Block (label) menu::@49
Culled Empty Block (label) menu::@50
Culled Empty Block (label) mode_ctrl::@2
Culled Empty Block (label) mode_ctrl::@21
Culled Empty Block (label) mode_ctrl::@3
Culled Empty Block (label) mode_ctrl::@22
Culled Empty Block (label) mode_ctrl::@5
Culled Empty Block (label) mode_ctrl::@7
Culled Empty Block (label) mode_ctrl::@8
Culled Empty Block (label) mode_ctrl::@9
Culled Empty Block (label) mode_ctrl::@10
Culled Empty Block (label) mode_ctrl::@11
Culled Empty Block (label) mode_ctrl::@20
Culled Empty Block (label) mode_ctrl::@31
Culled Empty Block (label) @59
Culled Empty Block (label) @60
Culled Empty Block (label) @61
Culled Empty Block (label) @62
Culled Empty Block (label) mode_stdbitmap::@10
Culled Empty Block (label) mode_stdbitmap::@11
Culled Empty Block (label) mode_stdbitmap::@12
Culled Empty Block (label) @63
Culled Empty Block (label) @64
Culled Empty Block (label) @65
Culled Empty Block (label) @66
Culled Empty Block (label) mode_twoplanebitmap::@12
Culled Empty Block (label) @67
Culled Empty Block (label) @68
Culled Empty Block (label) @69
Culled Empty Block (label) @70
CONTROL FLOW GRAPH SSA
@begin: scope:[] from
(byte*) PROCPORT_DDR#0 ← ((byte*)) (number) 0
(byte) PROCPORT_DDR_MEMORY_MASK#0 ← (number) 7
(byte*) PROCPORT#0 ← ((byte*)) (number) 1
(byte) PROCPORT_RAM_IO#0 ← (number) 5
(byte) PROCPORT_RAM_CHARROM#0 ← (number) 1
(byte*) RASTER#0 ← ((byte*)) (number) $d012
(byte*) BORDERCOL#0 ← ((byte*)) (number) $d020
(byte*) BGCOL#0 ← ((byte*)) (number) $d021
(byte*) BGCOL1#0 ← ((byte*)) (number) $d021
(byte*) BGCOL2#0 ← ((byte*)) (number) $d022
(byte*) BGCOL3#0 ← ((byte*)) (number) $d023
(byte*) BGCOL4#0 ← ((byte*)) (number) $d024
(byte*) VIC_CONTROL#0 ← ((byte*)) (number) $d011
(byte) VIC_ECM#0 ← (number) $40
(byte) VIC_BMM#0 ← (number) $20
(byte) VIC_DEN#0 ← (number) $10
(byte) VIC_RSEL#0 ← (number) 8
(byte*) VIC_CONTROL2#0 ← ((byte*)) (number) $d016
(byte) VIC_MCM#0 ← (number) $10
(byte) VIC_CSEL#0 ← (number) 8
(byte*) VIC_MEMORY#0 ← ((byte*)) (number) $d018
(byte*) COLS#0 ← ((byte*)) (number) $d800
(byte*) CIA1_PORT_A#0 ← ((byte*)) (number) $dc00
(byte*) CIA1_PORT_B#0 ← ((byte*)) (number) $dc01
(byte*) CIA2_PORT_A#0 ← ((byte*)) (number) $dd00
(byte*) CIA2_PORT_A_DDR#0 ← ((byte*)) (number) $dd02
(byte) BLACK#0 ← (number) 0
(byte) GREEN#0 ← (number) 5
(byte) BLUE#0 ← (number) 6
(byte) LIGHT_GREEN#0 ← (number) $d
to:@4
@4: scope:[] from @begin
(byte*) DTV_FEATURE#0 ← ((byte*)) (number) $d03f
(byte) DTV_FEATURE_ENABLE#0 ← (number) 1
(byte*) DTV_CONTROL#0 ← ((byte*)) (number) $d03c
(byte) DTV_LINEAR#0 ← (number) 1
(byte) DTV_BORDER_OFF#0 ← (number) 2
(byte) DTV_HIGHCOLOR#0 ← (number) 4
(byte) DTV_OVERSCAN#0 ← (number) 8
(byte) DTV_COLORRAM_OFF#0 ← (number) $10
(byte) DTV_CHUNKY#0 ← (number) $40
(byte*) DTV_PALETTE#0 ← ((byte*)) (number) $d200
(byte[$10]) DTV_PALETTE_DEFAULT#0 ← { (number) 0, (number) $f, (number) $36, (number) $be, (number) $58, (number) $db, (number) $86, (number) $ff, (number) $29, (number) $26, (number) $3b, (number) 5, (number) 7, (number) $df, (number) $9a, (number) $a }
(byte*) DTV_PLANEA_START_LO#0 ← ((byte*)) (number) $d03a
(byte*) DTV_PLANEA_START_MI#0 ← ((byte*)) (number) $d03b
(byte*) DTV_PLANEA_START_HI#0 ← ((byte*)) (number) $d045
(byte*) DTV_PLANEA_STEP#0 ← ((byte*)) (number) $d046
(byte*) DTV_PLANEA_MODULO_LO#0 ← ((byte*)) (number) $d038
(byte*) DTV_PLANEA_MODULO_HI#0 ← ((byte*)) (number) $d039
(byte*) DTV_PLANEB_START_LO#0 ← ((byte*)) (number) $d049
(byte*) DTV_PLANEB_START_MI#0 ← ((byte*)) (number) $d04a
(byte*) DTV_PLANEB_START_HI#0 ← ((byte*)) (number) $d04b
(byte*) DTV_PLANEB_STEP#0 ← ((byte*)) (number) $d04c
(byte*) DTV_PLANEB_MODULO_LO#0 ← ((byte*)) (number) $d047
(byte*) DTV_PLANEB_MODULO_HI#0 ← ((byte*)) (number) $d048
(byte*) DTV_COLOR_BANK_LO#0 ← ((byte*)) (number) $d036
(byte*) DTV_COLOR_BANK_HI#0 ← ((byte*)) (number) $d037
(dword) DTV_COLOR_BANK_DEFAULT#0 ← (number) $1d800
(byte*) DTV_GRAPHICS_VIC_BANK#0 ← ((byte*)) (number) $d03d
to:@17
dtvSetCpuBankSegment1: scope:[dtvSetCpuBankSegment1] from mode_8bppchunkybmm::@2 mode_8bppchunkybmm::@6 mode_8bppchunkybmm::@8
(byte) dtvSetCpuBankSegment1::cpuBankIdx#3 ← phi( mode_8bppchunkybmm::@2/(byte) dtvSetCpuBankSegment1::cpuBankIdx#0 mode_8bppchunkybmm::@6/(byte) dtvSetCpuBankSegment1::cpuBankIdx#1 mode_8bppchunkybmm::@8/(byte) dtvSetCpuBankSegment1::cpuBankIdx#2 )
(byte*) dtvSetCpuBankSegment1::cpuBank#0 ← ((byte*)) (number) $ff
*((byte*) dtvSetCpuBankSegment1::cpuBank#0) ← (byte) dtvSetCpuBankSegment1::cpuBankIdx#3
asm { .byte$32,$dd lda$ff .byte$32,$00 }
to:dtvSetCpuBankSegment1::@return
dtvSetCpuBankSegment1::@return: scope:[dtvSetCpuBankSegment1] from dtvSetCpuBankSegment1
return
to:@return
memset: scope:[memset] from print_cls
(byte) memset::c#4 ← phi( print_cls/(byte) memset::c#0 )
(void*) memset::str#3 ← phi( print_cls/(void*) memset::str#0 )
(word) memset::num#1 ← phi( print_cls/(word) memset::num#0 )
(bool~) memset::$0 ← (word) memset::num#1 > (number) 0
(bool~) memset::$1 ← ! (bool~) memset::$0
if((bool~) memset::$1) goto memset::@1
to:memset::@2
memset::@1: scope:[memset] from memset memset::@4
(void*) memset::str#1 ← phi( memset/(void*) memset::str#3 memset::@4/(void*) memset::str#4 )
(void*) memset::return#0 ← (void*) memset::str#1
to:memset::@return
memset::@2: scope:[memset] from memset
(byte) memset::c#3 ← phi( memset/(byte) memset::c#4 )
(word) memset::num#2 ← phi( memset/(word) memset::num#1 )
(void*) memset::str#2 ← phi( memset/(void*) memset::str#3 )
(byte*~) memset::$2 ← ((byte*)) (void*) memset::str#2
(byte*~) memset::$3 ← (byte*~) memset::$2 + (word) memset::num#2
(byte*) memset::end#0 ← (byte*~) memset::$3
(byte*) memset::dst#0 ← ((byte*)) (void*) memset::str#2
to:memset::@4
memset::@4: scope:[memset] from memset::@2 memset::@5
(byte) memset::c#2 ← phi( memset::@2/(byte) memset::c#3 memset::@5/(byte) memset::c#1 )
(void*) memset::str#4 ← phi( memset::@2/(void*) memset::str#2 memset::@5/(void*) memset::str#5 )
(byte*) memset::end#1 ← phi( memset::@2/(byte*) memset::end#0 memset::@5/(byte*) memset::end#2 )
(byte*) memset::dst#2 ← phi( memset::@2/(byte*) memset::dst#0 memset::@5/(byte*) memset::dst#1 )
(bool~) memset::$4 ← (byte*) memset::dst#2 != (byte*) memset::end#1
if((bool~) memset::$4) goto memset::@5
to:memset::@1
memset::@5: scope:[memset] from memset::@4
(void*) memset::str#5 ← phi( memset::@4/(void*) memset::str#4 )
(byte*) memset::end#2 ← phi( memset::@4/(byte*) memset::end#1 )
(byte*) memset::dst#3 ← phi( memset::@4/(byte*) memset::dst#2 )
(byte) memset::c#1 ← phi( memset::@4/(byte) memset::c#2 )
*((byte*) memset::dst#3) ← (byte) memset::c#1
(byte*) memset::dst#1 ← ++ (byte*) memset::dst#3
to:memset::@4
memset::@return: scope:[memset] from memset::@1
(void*) memset::return#3 ← phi( memset::@1/(void*) memset::return#0 )
(void*) memset::return#1 ← (void*) memset::return#3
return
to:@return
@17: scope:[] from @4
(byte*) print_screen#0 ← ((byte*)) (number) $400
(byte*) print_line_cursor#0 ← (byte*) print_screen#0
(byte*) print_char_cursor#0 ← (byte*) print_line_cursor#0
to:@41
print_str_lines: scope:[print_str_lines] from menu::@52
(byte*) print_line_cursor#50 ← phi( menu::@52/(byte*) print_line_cursor#12 )
(byte*) print_char_cursor#52 ← phi( menu::@52/(byte*) print_char_cursor#13 )
(byte*) print_str_lines::str#4 ← phi( menu::@52/(byte*) print_str_lines::str#1 )
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#31 ← phi( print_str_lines/(byte*) print_line_cursor#50 print_str_lines::@11/(byte*) print_line_cursor#1 )
(byte*) print_char_cursor#33 ← phi( print_str_lines/(byte*) print_char_cursor#52 print_str_lines::@11/(byte*) print_char_cursor#2 )
(byte*) print_str_lines::str#2 ← phi( print_str_lines/(byte*) print_str_lines::str#4 print_str_lines::@11/(byte*) print_str_lines::str#5 )
(bool~) print_str_lines::$2 ← (number) 0 != *((byte*) print_str_lines::str#2)
if((bool~) print_str_lines::$2) goto print_str_lines::@4
to:print_str_lines::@return
print_str_lines::@4: scope:[print_str_lines] from print_str_lines::@1 print_str_lines::@5
(byte*) print_line_cursor#68 ← phi( print_str_lines::@1/(byte*) print_line_cursor#31 print_str_lines::@5/(byte*) print_line_cursor#51 )
(byte*) print_char_cursor#31 ← phi( print_str_lines::@1/(byte*) print_char_cursor#33 print_str_lines::@5/(byte*) print_char_cursor#53 )
(byte*) print_str_lines::str#3 ← phi( print_str_lines::@1/(byte*) print_str_lines::str#2 print_str_lines::@5/(byte*) print_str_lines::str#6 )
(byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#3)
(byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#3
(bool~) print_str_lines::$4 ← (number) 0 != (byte) print_str_lines::ch#0
(bool~) print_str_lines::$0 ← ! (bool~) print_str_lines::$4
if((bool~) print_str_lines::$0) goto print_str_lines::@5
to:print_str_lines::@6
print_str_lines::@5: scope:[print_str_lines] from print_str_lines::@4 print_str_lines::@6
(byte*) print_line_cursor#51 ← phi( print_str_lines::@4/(byte*) print_line_cursor#68 print_str_lines::@6/(byte*) print_line_cursor#69 )
(byte*) print_char_cursor#53 ← phi( print_str_lines::@4/(byte*) print_char_cursor#31 print_str_lines::@6/(byte*) print_char_cursor#1 )
(byte*) print_str_lines::str#6 ← phi( print_str_lines::@4/(byte*) print_str_lines::str#0 print_str_lines::@6/(byte*) print_str_lines::str#7 )
(byte) print_str_lines::ch#1 ← phi( print_str_lines::@4/(byte) print_str_lines::ch#0 print_str_lines::@6/(byte) print_str_lines::ch#2 )
(bool~) print_str_lines::$3 ← (number) 0 != (byte) print_str_lines::ch#1
if((bool~) print_str_lines::$3) goto print_str_lines::@4
to:print_str_lines::@7
print_str_lines::@6: scope:[print_str_lines] from print_str_lines::@4
(byte*) print_line_cursor#69 ← phi( print_str_lines::@4/(byte*) print_line_cursor#68 )
(byte*) print_str_lines::str#7 ← phi( print_str_lines::@4/(byte*) print_str_lines::str#0 )
(byte*) print_char_cursor#17 ← phi( print_str_lines::@4/(byte*) print_char_cursor#31 )
(byte) print_str_lines::ch#2 ← phi( print_str_lines::@4/(byte) print_str_lines::ch#0 )
*((byte*) print_char_cursor#17) ← (byte) print_str_lines::ch#2
(byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#17
to:print_str_lines::@5
print_str_lines::@7: scope:[print_str_lines] from print_str_lines::@5
(byte*) print_str_lines::str#8 ← phi( print_str_lines::@5/(byte*) print_str_lines::str#6 )
(byte*) print_char_cursor#32 ← phi( print_str_lines::@5/(byte*) print_char_cursor#53 )
(byte*) print_line_cursor#30 ← phi( print_str_lines::@5/(byte*) print_line_cursor#51 )
call print_ln
to:print_str_lines::@11
print_str_lines::@11: scope:[print_str_lines] from print_str_lines::@7
(byte*) print_str_lines::str#5 ← phi( print_str_lines::@7/(byte*) print_str_lines::str#8 )
(byte*) print_char_cursor#18 ← phi( print_str_lines::@7/(byte*) print_char_cursor#5 )
(byte*) print_line_cursor#16 ← phi( print_str_lines::@7/(byte*) print_line_cursor#4 )
(byte*) print_line_cursor#1 ← (byte*) print_line_cursor#16
(byte*) print_char_cursor#2 ← (byte*) print_char_cursor#18
to:print_str_lines::@1
print_str_lines::@return: scope:[print_str_lines] from print_str_lines::@1
(byte*) print_line_cursor#17 ← phi( print_str_lines::@1/(byte*) print_line_cursor#31 )
(byte*) print_char_cursor#19 ← phi( print_str_lines::@1/(byte*) print_char_cursor#33 )
(byte*) print_char_cursor#3 ← (byte*) print_char_cursor#19
(byte*) print_line_cursor#2 ← (byte*) print_line_cursor#17
return
to:@return
print_ln: scope:[print_ln] from print_str_lines::@7
(byte*) print_char_cursor#34 ← phi( print_str_lines::@7/(byte*) print_char_cursor#32 )
(byte*) print_line_cursor#32 ← phi( print_str_lines::@7/(byte*) print_line_cursor#30 )
to:print_ln::@1
print_ln::@1: scope:[print_ln] from print_ln print_ln::@1
(byte*) print_char_cursor#20 ← phi( print_ln/(byte*) print_char_cursor#34 print_ln::@1/(byte*) print_char_cursor#20 )
(byte*) print_line_cursor#18 ← phi( print_ln/(byte*) print_line_cursor#32 print_ln::@1/(byte*) print_line_cursor#3 )
(byte*~) print_ln::$0 ← (byte*) print_line_cursor#18 + (number) $28
(byte*) print_line_cursor#3 ← (byte*~) print_ln::$0
(bool~) print_ln::$1 ← (byte*) print_line_cursor#3 < (byte*) print_char_cursor#20
if((bool~) 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#19 ← phi( print_ln::@1/(byte*) print_line_cursor#3 )
(byte*) print_char_cursor#4 ← (byte*) print_line_cursor#19
to:print_ln::@return
print_ln::@return: scope:[print_ln] from print_ln::@2
(byte*) print_char_cursor#21 ← phi( print_ln::@2/(byte*) print_char_cursor#4 )
(byte*) print_line_cursor#20 ← phi( print_ln::@2/(byte*) print_line_cursor#19 )
(byte*) print_line_cursor#4 ← (byte*) print_line_cursor#20
(byte*) print_char_cursor#5 ← (byte*) print_char_cursor#21
return
to:@return
print_cls: scope:[print_cls] from menu::@51
(byte*) print_screen#8 ← phi( menu::@51/(byte*) print_screen#5 )
(void*) memset::str#0 ← (void*)(byte*) print_screen#8
(byte) memset::c#0 ← (byte) ' '
(word) memset::num#0 ← (number) $3e8
call memset
(void*) memset::return#2 ← (void*) memset::return#1
to:print_cls::@1
print_cls::@1: scope:[print_cls] from print_cls
(byte*) print_screen#9 ← phi( print_cls/(byte*) print_screen#8 )
(byte*) print_line_cursor#5 ← (byte*) print_screen#9
(byte*) print_char_cursor#6 ← (byte*) print_line_cursor#5
to:print_cls::@return
print_cls::@return: scope:[print_cls] from print_cls::@1
(byte*) print_char_cursor#22 ← phi( print_cls::@1/(byte*) print_char_cursor#6 )
(byte*) print_line_cursor#21 ← phi( print_cls::@1/(byte*) print_line_cursor#5 )
(byte*) print_line_cursor#6 ← (byte*) print_line_cursor#21
(byte*) print_char_cursor#7 ← (byte*) print_char_cursor#22
return
to:@return
print_set_screen: scope:[print_set_screen] from menu::@5
(byte*) print_set_screen::screen#1 ← phi( menu::@5/(byte*) print_set_screen::screen#0 )
(byte*) print_screen#1 ← (byte*) print_set_screen::screen#1
(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#23 ← phi( print_set_screen/(byte*) print_char_cursor#8 )
(byte*) print_line_cursor#22 ← phi( print_set_screen/(byte*) print_line_cursor#7 )
(byte*) print_screen#10 ← phi( print_set_screen/(byte*) print_screen#1 )
(byte*) print_screen#2 ← (byte*) print_screen#10
(byte*) print_line_cursor#8 ← (byte*) print_line_cursor#22
(byte*) print_char_cursor#9 ← (byte*) print_char_cursor#23
return
to:@return
@41: scope:[] from @17
(byte*) print_char_cursor#98 ← phi( @17/(byte*) print_char_cursor#0 )
(byte*) print_line_cursor#98 ← phi( @17/(byte*) print_line_cursor#0 )
(byte*) print_screen#79 ← phi( @17/(byte*) print_screen#0 )
(byte) KEY_3#0 ← (number) 8
(byte) KEY_A#0 ← (number) $a
(byte) KEY_4#0 ← (number) $b
(byte) KEY_E#0 ← (number) $e
(byte) KEY_D#0 ← (number) $12
(byte) KEY_6#0 ← (number) $13
(byte) KEY_C#0 ← (number) $14
(byte) KEY_7#0 ← (number) $18
(byte) KEY_8#0 ← (number) $1b
(byte) KEY_B#0 ← (number) $1c
(byte) KEY_H#0 ← (number) $1d
(byte) KEY_U#0 ← (number) $1e
(byte) KEY_0#0 ← (number) $23
(byte) KEY_O#0 ← (number) $26
(byte) KEY_L#0 ← (number) $2a
(byte) KEY_1#0 ← (number) $38
(byte) KEY_2#0 ← (number) $3b
(byte) KEY_SPACE#0 ← (number) $3c
(byte[8]) keyboard_matrix_row_bitmask#0 ← { (number) $fe, (number) $fd, (number) $fb, (number) $f7, (number) $ef, (number) $df, (number) $bf, (number) $7f }
(byte[8]) keyboard_matrix_col_bitmask#0 ← { (number) 1, (number) 2, (number) 4, (number) 8, (number) $10, (number) $20, (number) $40, (number) $80 }
to:@48
keyboard_matrix_read: scope:[keyboard_matrix_read] from keyboard_key_pressed
(byte) keyboard_matrix_read::rowid#1 ← phi( keyboard_key_pressed/(byte) keyboard_matrix_read::rowid#0 )
*((byte*) CIA1_PORT_A#0) ← *((byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#1)
(byte~) keyboard_matrix_read::$0 ← ~ *((byte*) CIA1_PORT_B#0)
(byte) keyboard_matrix_read::row_pressed_bits#0 ← (byte~) keyboard_matrix_read::$0
(byte) keyboard_matrix_read::return#0 ← (byte) keyboard_matrix_read::row_pressed_bits#0
to:keyboard_matrix_read::@return
keyboard_matrix_read::@return: scope:[keyboard_matrix_read] from keyboard_matrix_read
(byte) keyboard_matrix_read::return#3 ← phi( keyboard_matrix_read/(byte) keyboard_matrix_read::return#0 )
(byte) keyboard_matrix_read::return#1 ← (byte) keyboard_matrix_read::return#3
return
to:@return
keyboard_key_pressed: scope:[keyboard_key_pressed] from menu::@10 menu::@12 menu::@13 menu::@14 menu::@15 menu::@16 menu::@17 menu::@18 menu::@19 menu::@20 menu::@21 menu::@22 mode_ctrl::@12 mode_ctrl::@13 mode_ctrl::@14 mode_ctrl::@15 mode_ctrl::@16 mode_ctrl::@17 mode_ctrl::@18 mode_ctrl::@6
(byte) keyboard_key_pressed::key#20 ← phi( menu::@10/(byte) keyboard_key_pressed::key#0 menu::@12/(byte) keyboard_key_pressed::key#1 menu::@13/(byte) keyboard_key_pressed::key#2 menu::@14/(byte) keyboard_key_pressed::key#3 menu::@15/(byte) keyboard_key_pressed::key#4 menu::@16/(byte) keyboard_key_pressed::key#5 menu::@17/(byte) keyboard_key_pressed::key#6 menu::@18/(byte) keyboard_key_pressed::key#7 menu::@19/(byte) keyboard_key_pressed::key#8 menu::@20/(byte) keyboard_key_pressed::key#9 menu::@21/(byte) keyboard_key_pressed::key#10 menu::@22/(byte) keyboard_key_pressed::key#11 mode_ctrl::@12/(byte) keyboard_key_pressed::key#13 mode_ctrl::@13/(byte) keyboard_key_pressed::key#14 mode_ctrl::@14/(byte) keyboard_key_pressed::key#15 mode_ctrl::@15/(byte) keyboard_key_pressed::key#16 mode_ctrl::@16/(byte) keyboard_key_pressed::key#17 mode_ctrl::@17/(byte) keyboard_key_pressed::key#18 mode_ctrl::@18/(byte) keyboard_key_pressed::key#19 mode_ctrl::@6/(byte) keyboard_key_pressed::key#12 )
(number~) keyboard_key_pressed::$0 ← (byte) keyboard_key_pressed::key#20 & (number) 7
(byte) keyboard_key_pressed::colidx#0 ← (number~) keyboard_key_pressed::$0
(byte~) keyboard_key_pressed::$1 ← (byte) keyboard_key_pressed::key#20 >> (number) 3
(byte) keyboard_key_pressed::rowidx#0 ← (byte~) keyboard_key_pressed::$1
(byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_key_pressed::rowidx#0
call keyboard_matrix_read
(byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#1
to:keyboard_key_pressed::@2
keyboard_key_pressed::@2: scope:[keyboard_key_pressed] from keyboard_key_pressed
(byte) keyboard_key_pressed::colidx#1 ← phi( keyboard_key_pressed/(byte) keyboard_key_pressed::colidx#0 )
(byte) keyboard_matrix_read::return#4 ← phi( keyboard_key_pressed/(byte) keyboard_matrix_read::return#2 )
(byte~) keyboard_key_pressed::$2 ← (byte) keyboard_matrix_read::return#4
(byte~) keyboard_key_pressed::$3 ← (byte~) keyboard_key_pressed::$2 & *((byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#1)
(byte) keyboard_key_pressed::return#0 ← (byte~) keyboard_key_pressed::$3
to:keyboard_key_pressed::@return
keyboard_key_pressed::@return: scope:[keyboard_key_pressed] from keyboard_key_pressed::@2
(byte) keyboard_key_pressed::return#22 ← phi( keyboard_key_pressed::@2/(byte) keyboard_key_pressed::return#0 )
(byte) keyboard_key_pressed::return#1 ← (byte) keyboard_key_pressed::return#22
return
to:@return
@48: scope:[] from @41
(byte*) print_char_cursor#85 ← phi( @41/(byte*) print_char_cursor#98 )
(byte*) print_line_cursor#85 ← phi( @41/(byte*) print_line_cursor#98 )
(byte*) print_screen#66 ← phi( @41/(byte*) print_screen#79 )
(byte[$100]) bitmap_plot_xlo#0 ← { fill( $100, 0) }
(byte[$100]) bitmap_plot_xhi#0 ← { fill( $100, 0) }
(byte[$100]) bitmap_plot_ylo#0 ← { fill( $100, 0) }
(byte[$100]) bitmap_plot_yhi#0 ← { fill( $100, 0) }
(byte[$100]) bitmap_plot_bit#0 ← { fill( $100, 0) }
to:@57
bitmap_init: scope:[bitmap_init] from mode_stdbitmap::@6
(byte*) bitmap_init::bitmap#2 ← phi( mode_stdbitmap::@6/(byte*) bitmap_init::bitmap#0 )
(byte) bitmap_init::bits#0 ← (number) $80
(byte) bitmap_init::x#0 ← (byte) 0
to:bitmap_init::@1
bitmap_init::@1: scope:[bitmap_init] from bitmap_init bitmap_init::@2
(byte) bitmap_init::bits#3 ← phi( bitmap_init/(byte) bitmap_init::bits#0 bitmap_init::@2/(byte) bitmap_init::bits#4 )
(byte*) bitmap_init::bitmap#1 ← phi( bitmap_init/(byte*) bitmap_init::bitmap#2 bitmap_init::@2/(byte*) bitmap_init::bitmap#3 )
(byte) bitmap_init::x#2 ← phi( bitmap_init/(byte) bitmap_init::x#0 bitmap_init::@2/(byte) bitmap_init::x#1 )
(number~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (number) $f8
*((byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ← (number~) bitmap_init::$0
(byte~) bitmap_init::$1 ← > (byte*) bitmap_init::bitmap#1
*((byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$1
*((byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3
(byte~) bitmap_init::$2 ← (byte) bitmap_init::bits#3 >> (number) 1
(byte) bitmap_init::bits#1 ← (byte~) bitmap_init::$2
(bool~) bitmap_init::$3 ← (byte) bitmap_init::bits#1 == (number) 0
(bool~) bitmap_init::$4 ← ! (bool~) bitmap_init::$3
if((bool~) bitmap_init::$4) goto bitmap_init::@2
to:bitmap_init::@3
bitmap_init::@2: scope:[bitmap_init] from bitmap_init::@1 bitmap_init::@3
(byte) bitmap_init::bits#4 ← phi( bitmap_init::@1/(byte) bitmap_init::bits#1 bitmap_init::@3/(byte) bitmap_init::bits#2 )
(byte*) bitmap_init::bitmap#3 ← phi( bitmap_init::@1/(byte*) bitmap_init::bitmap#1 bitmap_init::@3/(byte*) bitmap_init::bitmap#4 )
(byte) bitmap_init::x#3 ← phi( bitmap_init::@1/(byte) bitmap_init::x#2 bitmap_init::@3/(byte) bitmap_init::x#4 )
(byte) bitmap_init::x#1 ← (byte) bitmap_init::x#3 + rangenext(0,$ff)
(bool~) bitmap_init::$5 ← (byte) bitmap_init::x#1 != rangelast(0,$ff)
if((bool~) bitmap_init::$5) goto bitmap_init::@1
to:bitmap_init::@4
bitmap_init::@3: scope:[bitmap_init] from bitmap_init::@1
(byte*) bitmap_init::bitmap#4 ← phi( bitmap_init::@1/(byte*) bitmap_init::bitmap#1 )
(byte) bitmap_init::x#4 ← phi( bitmap_init::@1/(byte) bitmap_init::x#2 )
(byte) bitmap_init::bits#2 ← (number) $80
to:bitmap_init::@2
bitmap_init::@4: scope:[bitmap_init] from bitmap_init::@2
(byte*) bitmap_init::yoffs#0 ← ((byte*)) (number) 0
(byte) bitmap_init::y#0 ← (byte) 0
to:bitmap_init::@5
bitmap_init::@5: scope:[bitmap_init] from bitmap_init::@4 bitmap_init::@6
(byte*) bitmap_init::yoffs#2 ← phi( bitmap_init::@4/(byte*) bitmap_init::yoffs#0 bitmap_init::@6/(byte*) bitmap_init::yoffs#4 )
(byte) bitmap_init::y#2 ← phi( bitmap_init::@4/(byte) bitmap_init::y#0 bitmap_init::@6/(byte) bitmap_init::y#1 )
(number~) bitmap_init::$6 ← (byte) bitmap_init::y#2 & (number) 7
(byte~) bitmap_init::$7 ← < (byte*) bitmap_init::yoffs#2
(number~) bitmap_init::$8 ← (number~) bitmap_init::$6 | (byte~) bitmap_init::$7
*((byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (number~) bitmap_init::$8
(byte~) bitmap_init::$9 ← > (byte*) bitmap_init::yoffs#2
*((byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$9
(number~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (number) 7
(bool~) bitmap_init::$11 ← (number~) bitmap_init::$10 == (number) 7
(bool~) bitmap_init::$12 ← ! (bool~) bitmap_init::$11
if((bool~) bitmap_init::$12) goto bitmap_init::@6
to:bitmap_init::@7
bitmap_init::@6: scope:[bitmap_init] from bitmap_init::@5 bitmap_init::@7
(byte*) bitmap_init::yoffs#4 ← phi( bitmap_init::@5/(byte*) bitmap_init::yoffs#2 bitmap_init::@7/(byte*) bitmap_init::yoffs#1 )
(byte) bitmap_init::y#3 ← phi( bitmap_init::@5/(byte) bitmap_init::y#2 bitmap_init::@7/(byte) bitmap_init::y#4 )
(byte) bitmap_init::y#1 ← (byte) bitmap_init::y#3 + rangenext(0,$ff)
(bool~) bitmap_init::$14 ← (byte) bitmap_init::y#1 != rangelast(0,$ff)
if((bool~) bitmap_init::$14) goto bitmap_init::@5
to:bitmap_init::@return
bitmap_init::@7: scope:[bitmap_init] from bitmap_init::@5
(byte) bitmap_init::y#4 ← phi( bitmap_init::@5/(byte) bitmap_init::y#2 )
(byte*) bitmap_init::yoffs#3 ← phi( bitmap_init::@5/(byte*) bitmap_init::yoffs#2 )
(byte*~) bitmap_init::$13 ← (byte*) bitmap_init::yoffs#3 + (number) $28*(number) 8
(byte*) bitmap_init::yoffs#1 ← (byte*~) bitmap_init::$13
to:bitmap_init::@6
bitmap_init::@return: scope:[bitmap_init] from bitmap_init::@6
return
to:@return
bitmap_clear: scope:[bitmap_clear] from mode_stdbitmap::@13
(byte*~) bitmap_clear::$0 ← ((byte*)) { *((byte[$100]) bitmap_plot_xhi#0 + (number) 0), *((byte[$100]) bitmap_plot_xlo#0 + (number) 0) }
(byte*) bitmap_clear::bitmap#0 ← (byte*~) bitmap_clear::$0
(byte) bitmap_clear::y#0 ← (byte) 0
to:bitmap_clear::@1
bitmap_clear::@1: scope:[bitmap_clear] from bitmap_clear bitmap_clear::@3
(byte) bitmap_clear::y#4 ← phi( bitmap_clear/(byte) bitmap_clear::y#0 bitmap_clear::@3/(byte) bitmap_clear::y#1 )
(byte*) bitmap_clear::bitmap#3 ← phi( bitmap_clear/(byte*) bitmap_clear::bitmap#0 bitmap_clear::@3/(byte*) bitmap_clear::bitmap#4 )
(byte) bitmap_clear::x#0 ← (byte) 0
to:bitmap_clear::@2
bitmap_clear::@2: scope:[bitmap_clear] from bitmap_clear::@1 bitmap_clear::@2
(byte) bitmap_clear::y#3 ← phi( bitmap_clear::@1/(byte) bitmap_clear::y#4 bitmap_clear::@2/(byte) bitmap_clear::y#3 )
(byte) bitmap_clear::x#2 ← phi( bitmap_clear::@1/(byte) bitmap_clear::x#0 bitmap_clear::@2/(byte) bitmap_clear::x#1 )
(byte*) bitmap_clear::bitmap#2 ← phi( bitmap_clear::@1/(byte*) bitmap_clear::bitmap#3 bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 )
*((byte*) bitmap_clear::bitmap#2) ← (number) 0
(byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2
(byte) bitmap_clear::x#1 ← (byte) bitmap_clear::x#2 + rangenext(0,$c7)
(bool~) bitmap_clear::$1 ← (byte) bitmap_clear::x#1 != rangelast(0,$c7)
if((bool~) bitmap_clear::$1) goto bitmap_clear::@2
to:bitmap_clear::@3
bitmap_clear::@3: scope:[bitmap_clear] from bitmap_clear::@2
(byte*) bitmap_clear::bitmap#4 ← phi( bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 )
(byte) bitmap_clear::y#2 ← phi( bitmap_clear::@2/(byte) bitmap_clear::y#3 )
(byte) bitmap_clear::y#1 ← (byte) bitmap_clear::y#2 + rangenext(0,$27)
(bool~) bitmap_clear::$2 ← (byte) bitmap_clear::y#1 != rangelast(0,$27)
if((bool~) bitmap_clear::$2) goto bitmap_clear::@1
to:bitmap_clear::@return
bitmap_clear::@return: scope:[bitmap_clear] from bitmap_clear::@3
return
to:@return
bitmap_plot: scope:[bitmap_plot] from bitmap_line_xdyd::@1 bitmap_line_xdyi::@1 bitmap_line_ydxd::@1 bitmap_line_ydxi::@1
(byte) bitmap_plot::y#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::y#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::y#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::y#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::y#2 )
(byte) bitmap_plot::x#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::x#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::x#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::x#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::x#2 )
(word) bitmap_plot::plotter_x#0 ← ((word)) { *((byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4), *((byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) }
(word) bitmap_plot::plotter_y#0 ← ((word)) { *((byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4), *((byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) }
(word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0
(byte*) bitmap_plot::plotter#0 ← ((byte*)) (word~) bitmap_plot::$0
(byte~) bitmap_plot::$1 ← *((byte*) bitmap_plot::plotter#0) | *((byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4)
*((byte*) bitmap_plot::plotter#0) ← (byte~) bitmap_plot::$1
to:bitmap_plot::@return
bitmap_plot::@return: scope:[bitmap_plot] from bitmap_plot
return
to:@return
bitmap_line: scope:[bitmap_line] from mode_stdbitmap::@8
(byte) bitmap_line::y1#13 ← phi( mode_stdbitmap::@8/(byte) bitmap_line::y1#0 )
(byte) bitmap_line::y0#13 ← phi( mode_stdbitmap::@8/(byte) bitmap_line::y0#0 )
(byte) bitmap_line::x1#1 ← phi( mode_stdbitmap::@8/(byte) bitmap_line::x1#0 )
(byte) bitmap_line::x0#1 ← phi( mode_stdbitmap::@8/(byte) bitmap_line::x0#0 )
(byte) bitmap_line::xd#0 ← (byte) 0
(byte) bitmap_line::yd#0 ← (byte) 0
(bool~) bitmap_line::$0 ← (byte) bitmap_line::x0#1 < (byte) bitmap_line::x1#1
if((bool~) bitmap_line::$0) goto bitmap_line::@1
to:bitmap_line::@3
bitmap_line::@1: scope:[bitmap_line] from bitmap_line
(byte) bitmap_line::y1#1 ← phi( bitmap_line/(byte) bitmap_line::y1#13 )
(byte) bitmap_line::y0#1 ← phi( bitmap_line/(byte) bitmap_line::y0#13 )
(byte) bitmap_line::x0#2 ← phi( bitmap_line/(byte) bitmap_line::x0#1 )
(byte) bitmap_line::x1#2 ← phi( bitmap_line/(byte) bitmap_line::x1#1 )
(byte~) bitmap_line::$11 ← (byte) bitmap_line::x1#2 - (byte) bitmap_line::x0#2
(byte) bitmap_line::xd#1 ← (byte~) bitmap_line::$11
(bool~) bitmap_line::$12 ← (byte) bitmap_line::y0#1 < (byte) bitmap_line::y1#1
if((bool~) bitmap_line::$12) goto bitmap_line::@20
to:bitmap_line::@7
bitmap_line::@3: scope:[bitmap_line] from bitmap_line
(byte) bitmap_line::y1#2 ← phi( bitmap_line/(byte) bitmap_line::y1#13 )
(byte) bitmap_line::y0#2 ← phi( bitmap_line/(byte) bitmap_line::y0#13 )
(byte) bitmap_line::x1#3 ← phi( bitmap_line/(byte) bitmap_line::x1#1 )
(byte) bitmap_line::x0#3 ← phi( bitmap_line/(byte) bitmap_line::x0#1 )
(byte~) bitmap_line::$1 ← (byte) bitmap_line::x0#3 - (byte) bitmap_line::x1#3
(byte) bitmap_line::xd#2 ← (byte~) bitmap_line::$1
(bool~) bitmap_line::$2 ← (byte) bitmap_line::y0#2 < (byte) bitmap_line::y1#2
if((bool~) bitmap_line::$2) goto bitmap_line::@10
to:bitmap_line::@4
bitmap_line::@10: scope:[bitmap_line] from bitmap_line::@3
(byte) bitmap_line::x0#11 ← phi( bitmap_line::@3/(byte) bitmap_line::x0#3 )
(byte) bitmap_line::x1#11 ← phi( bitmap_line::@3/(byte) bitmap_line::x1#3 )
(byte) bitmap_line::xd#3 ← phi( bitmap_line::@3/(byte) bitmap_line::xd#2 )
(byte) bitmap_line::y0#3 ← phi( bitmap_line::@3/(byte) bitmap_line::y0#2 )
(byte) bitmap_line::y1#3 ← phi( bitmap_line::@3/(byte) bitmap_line::y1#2 )
(byte~) bitmap_line::$7 ← (byte) bitmap_line::y1#3 - (byte) bitmap_line::y0#3
(byte) bitmap_line::yd#1 ← (byte~) bitmap_line::$7
(bool~) bitmap_line::$8 ← (byte) bitmap_line::yd#1 < (byte) bitmap_line::xd#3
if((bool~) bitmap_line::$8) goto bitmap_line::@15
to:bitmap_line::@17
bitmap_line::@4: scope:[bitmap_line] from bitmap_line::@3
(byte) bitmap_line::x0#10 ← phi( bitmap_line::@3/(byte) bitmap_line::x0#3 )
(byte) bitmap_line::x1#10 ← phi( bitmap_line::@3/(byte) bitmap_line::x1#3 )
(byte) bitmap_line::xd#4 ← phi( bitmap_line::@3/(byte) bitmap_line::xd#2 )
(byte) bitmap_line::y1#4 ← phi( bitmap_line::@3/(byte) bitmap_line::y1#2 )
(byte) bitmap_line::y0#4 ← phi( bitmap_line::@3/(byte) bitmap_line::y0#2 )
(byte~) bitmap_line::$3 ← (byte) bitmap_line::y0#4 - (byte) bitmap_line::y1#4
(byte) bitmap_line::yd#2 ← (byte~) bitmap_line::$3
(bool~) bitmap_line::$4 ← (byte) bitmap_line::yd#2 < (byte) bitmap_line::xd#4
if((bool~) bitmap_line::$4) goto bitmap_line::@11
to:bitmap_line::@5
bitmap_line::@11: scope:[bitmap_line] from bitmap_line::@4
(byte) bitmap_line::yd#5 ← phi( bitmap_line::@4/(byte) bitmap_line::yd#2 )
(byte) bitmap_line::xd#5 ← phi( bitmap_line::@4/(byte) bitmap_line::xd#4 )
(byte) bitmap_line::x0#4 ← phi( bitmap_line::@4/(byte) bitmap_line::x0#10 )
(byte) bitmap_line::y1#5 ← phi( bitmap_line::@4/(byte) bitmap_line::y1#4 )
(byte) bitmap_line::x1#4 ← phi( bitmap_line::@4/(byte) bitmap_line::x1#10 )
(byte) bitmap_line_xdyi::x#0 ← (byte) bitmap_line::x1#4
(byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y1#5
(byte) bitmap_line_xdyi::x1#0 ← (byte) bitmap_line::x0#4
(byte) bitmap_line_xdyi::xd#0 ← (byte) bitmap_line::xd#5
(byte) bitmap_line_xdyi::yd#0 ← (byte) bitmap_line::yd#5
call bitmap_line_xdyi
to:bitmap_line::@29
bitmap_line::@29: scope:[bitmap_line] from bitmap_line::@11
to:bitmap_line::@return
bitmap_line::@5: scope:[bitmap_line] from bitmap_line::@4
(byte) bitmap_line::xd#6 ← phi( bitmap_line::@4/(byte) bitmap_line::xd#4 )
(byte) bitmap_line::yd#6 ← phi( bitmap_line::@4/(byte) bitmap_line::yd#2 )
(byte) bitmap_line::y0#5 ← phi( bitmap_line::@4/(byte) bitmap_line::y0#4 )
(byte) bitmap_line::x1#5 ← phi( bitmap_line::@4/(byte) bitmap_line::x1#10 )
(byte) bitmap_line::y1#6 ← phi( bitmap_line::@4/(byte) bitmap_line::y1#4 )
(byte) bitmap_line_ydxi::y#0 ← (byte) bitmap_line::y1#6
(byte) bitmap_line_ydxi::x#0 ← (byte) bitmap_line::x1#5
(byte) bitmap_line_ydxi::y1#0 ← (byte) bitmap_line::y0#5
(byte) bitmap_line_ydxi::yd#0 ← (byte) bitmap_line::yd#6
(byte) bitmap_line_ydxi::xd#0 ← (byte) bitmap_line::xd#6
call bitmap_line_ydxi
to:bitmap_line::@30
bitmap_line::@30: scope:[bitmap_line] from bitmap_line::@5
to:bitmap_line::@return
bitmap_line::@15: scope:[bitmap_line] from bitmap_line::@10
(byte) bitmap_line::yd#7 ← phi( bitmap_line::@10/(byte) bitmap_line::yd#1 )
(byte) bitmap_line::xd#7 ← phi( bitmap_line::@10/(byte) bitmap_line::xd#3 )
(byte) bitmap_line::x0#5 ← phi( bitmap_line::@10/(byte) bitmap_line::x0#11 )
(byte) bitmap_line::y1#7 ← phi( bitmap_line::@10/(byte) bitmap_line::y1#3 )
(byte) bitmap_line::x1#6 ← phi( bitmap_line::@10/(byte) bitmap_line::x1#11 )
(byte) bitmap_line_xdyd::x#0 ← (byte) bitmap_line::x1#6
(byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y1#7
(byte) bitmap_line_xdyd::x1#0 ← (byte) bitmap_line::x0#5
(byte) bitmap_line_xdyd::xd#0 ← (byte) bitmap_line::xd#7
(byte) bitmap_line_xdyd::yd#0 ← (byte) bitmap_line::yd#7
call bitmap_line_xdyd
to:bitmap_line::@31
bitmap_line::@31: scope:[bitmap_line] from bitmap_line::@15
to:bitmap_line::@return
bitmap_line::@17: scope:[bitmap_line] from bitmap_line::@10
(byte) bitmap_line::xd#8 ← phi( bitmap_line::@10/(byte) bitmap_line::xd#3 )
(byte) bitmap_line::yd#8 ← phi( bitmap_line::@10/(byte) bitmap_line::yd#1 )
(byte) bitmap_line::y1#8 ← phi( bitmap_line::@10/(byte) bitmap_line::y1#3 )
(byte) bitmap_line::x0#6 ← phi( bitmap_line::@10/(byte) bitmap_line::x0#11 )
(byte) bitmap_line::y0#6 ← phi( bitmap_line::@10/(byte) bitmap_line::y0#3 )
(byte) bitmap_line_ydxd::y#0 ← (byte) bitmap_line::y0#6
(byte) bitmap_line_ydxd::x#0 ← (byte) bitmap_line::x0#6
(byte) bitmap_line_ydxd::y1#0 ← (byte) bitmap_line::y1#8
(byte) bitmap_line_ydxd::yd#0 ← (byte) bitmap_line::yd#8
(byte) bitmap_line_ydxd::xd#0 ← (byte) bitmap_line::xd#8
call bitmap_line_ydxd
to:bitmap_line::@32
bitmap_line::@32: scope:[bitmap_line] from bitmap_line::@17
to:bitmap_line::@return
bitmap_line::@20: scope:[bitmap_line] from bitmap_line::@1
(byte) bitmap_line::x1#13 ← phi( bitmap_line::@1/(byte) bitmap_line::x1#2 )
(byte) bitmap_line::x0#13 ← phi( bitmap_line::@1/(byte) bitmap_line::x0#2 )
(byte) bitmap_line::xd#9 ← phi( bitmap_line::@1/(byte) bitmap_line::xd#1 )
(byte) bitmap_line::y0#7 ← phi( bitmap_line::@1/(byte) bitmap_line::y0#1 )
(byte) bitmap_line::y1#9 ← phi( bitmap_line::@1/(byte) bitmap_line::y1#1 )
(byte~) bitmap_line::$17 ← (byte) bitmap_line::y1#9 - (byte) bitmap_line::y0#7
(byte) bitmap_line::yd#3 ← (byte~) bitmap_line::$17
(bool~) bitmap_line::$18 ← (byte) bitmap_line::yd#3 < (byte) bitmap_line::xd#9
if((bool~) bitmap_line::$18) goto bitmap_line::@25
to:bitmap_line::@27
bitmap_line::@7: scope:[bitmap_line] from bitmap_line::@1
(byte) bitmap_line::x1#12 ← phi( bitmap_line::@1/(byte) bitmap_line::x1#2 )
(byte) bitmap_line::x0#12 ← phi( bitmap_line::@1/(byte) bitmap_line::x0#2 )
(byte) bitmap_line::xd#10 ← phi( bitmap_line::@1/(byte) bitmap_line::xd#1 )
(byte) bitmap_line::y1#10 ← phi( bitmap_line::@1/(byte) bitmap_line::y1#1 )
(byte) bitmap_line::y0#8 ← phi( bitmap_line::@1/(byte) bitmap_line::y0#1 )
(byte~) bitmap_line::$13 ← (byte) bitmap_line::y0#8 - (byte) bitmap_line::y1#10
(byte) bitmap_line::yd#4 ← (byte~) bitmap_line::$13
(bool~) bitmap_line::$14 ← (byte) bitmap_line::yd#4 < (byte) bitmap_line::xd#10
if((bool~) bitmap_line::$14) goto bitmap_line::@21
to:bitmap_line::@8
bitmap_line::@21: scope:[bitmap_line] from bitmap_line::@7
(byte) bitmap_line::yd#9 ← phi( bitmap_line::@7/(byte) bitmap_line::yd#4 )
(byte) bitmap_line::xd#11 ← phi( bitmap_line::@7/(byte) bitmap_line::xd#10 )
(byte) bitmap_line::x1#7 ← phi( bitmap_line::@7/(byte) bitmap_line::x1#12 )
(byte) bitmap_line::y0#9 ← phi( bitmap_line::@7/(byte) bitmap_line::y0#8 )
(byte) bitmap_line::x0#7 ← phi( bitmap_line::@7/(byte) bitmap_line::x0#12 )
(byte) bitmap_line_xdyd::x#1 ← (byte) bitmap_line::x0#7
(byte) bitmap_line_xdyd::y#1 ← (byte) bitmap_line::y0#9
(byte) bitmap_line_xdyd::x1#1 ← (byte) bitmap_line::x1#7
(byte) bitmap_line_xdyd::xd#1 ← (byte) bitmap_line::xd#11
(byte) bitmap_line_xdyd::yd#1 ← (byte) bitmap_line::yd#9
call bitmap_line_xdyd
to:bitmap_line::@33
bitmap_line::@33: scope:[bitmap_line] from bitmap_line::@21
to:bitmap_line::@return
bitmap_line::@8: scope:[bitmap_line] from bitmap_line::@7
(byte) bitmap_line::xd#12 ← phi( bitmap_line::@7/(byte) bitmap_line::xd#10 )
(byte) bitmap_line::yd#10 ← phi( bitmap_line::@7/(byte) bitmap_line::yd#4 )
(byte) bitmap_line::y0#10 ← phi( bitmap_line::@7/(byte) bitmap_line::y0#8 )
(byte) bitmap_line::x1#8 ← phi( bitmap_line::@7/(byte) bitmap_line::x1#12 )
(byte) bitmap_line::y1#11 ← phi( bitmap_line::@7/(byte) bitmap_line::y1#10 )
(byte) bitmap_line_ydxd::y#1 ← (byte) bitmap_line::y1#11
(byte) bitmap_line_ydxd::x#1 ← (byte) bitmap_line::x1#8
(byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y0#10
(byte) bitmap_line_ydxd::yd#1 ← (byte) bitmap_line::yd#10
(byte) bitmap_line_ydxd::xd#1 ← (byte) bitmap_line::xd#12
call bitmap_line_ydxd
to:bitmap_line::@34
bitmap_line::@34: scope:[bitmap_line] from bitmap_line::@8
to:bitmap_line::@return
bitmap_line::@25: scope:[bitmap_line] from bitmap_line::@20
(byte) bitmap_line::yd#11 ← phi( bitmap_line::@20/(byte) bitmap_line::yd#3 )
(byte) bitmap_line::xd#13 ← phi( bitmap_line::@20/(byte) bitmap_line::xd#9 )
(byte) bitmap_line::x1#9 ← phi( bitmap_line::@20/(byte) bitmap_line::x1#13 )
(byte) bitmap_line::y0#11 ← phi( bitmap_line::@20/(byte) bitmap_line::y0#7 )
(byte) bitmap_line::x0#8 ← phi( bitmap_line::@20/(byte) bitmap_line::x0#13 )
(byte) bitmap_line_xdyi::x#1 ← (byte) bitmap_line::x0#8
(byte) bitmap_line_xdyi::y#1 ← (byte) bitmap_line::y0#11
(byte) bitmap_line_xdyi::x1#1 ← (byte) bitmap_line::x1#9
(byte) bitmap_line_xdyi::xd#1 ← (byte) bitmap_line::xd#13
(byte) bitmap_line_xdyi::yd#1 ← (byte) bitmap_line::yd#11
call bitmap_line_xdyi
to:bitmap_line::@35
bitmap_line::@35: scope:[bitmap_line] from bitmap_line::@25
to:bitmap_line::@return
bitmap_line::@27: scope:[bitmap_line] from bitmap_line::@20
(byte) bitmap_line::xd#14 ← phi( bitmap_line::@20/(byte) bitmap_line::xd#9 )
(byte) bitmap_line::yd#12 ← phi( bitmap_line::@20/(byte) bitmap_line::yd#3 )
(byte) bitmap_line::y1#12 ← phi( bitmap_line::@20/(byte) bitmap_line::y1#9 )
(byte) bitmap_line::x0#9 ← phi( bitmap_line::@20/(byte) bitmap_line::x0#13 )
(byte) bitmap_line::y0#12 ← phi( bitmap_line::@20/(byte) bitmap_line::y0#7 )
(byte) bitmap_line_ydxi::y#1 ← (byte) bitmap_line::y0#12
(byte) bitmap_line_ydxi::x#1 ← (byte) bitmap_line::x0#9
(byte) bitmap_line_ydxi::y1#1 ← (byte) bitmap_line::y1#12
(byte) bitmap_line_ydxi::yd#1 ← (byte) bitmap_line::yd#12
(byte) bitmap_line_ydxi::xd#1 ← (byte) bitmap_line::xd#14
call bitmap_line_ydxi
to:bitmap_line::@36
bitmap_line::@36: scope:[bitmap_line] from bitmap_line::@27
to:bitmap_line::@return
bitmap_line::@return: scope:[bitmap_line] from bitmap_line::@29 bitmap_line::@30 bitmap_line::@31 bitmap_line::@32 bitmap_line::@33 bitmap_line::@34 bitmap_line::@35 bitmap_line::@36
return
to:@return
bitmap_line_xdyi: scope:[bitmap_line_xdyi] from bitmap_line::@11 bitmap_line::@25
(byte) bitmap_line_xdyi::x1#6 ← phi( bitmap_line::@11/(byte) bitmap_line_xdyi::x1#0 bitmap_line::@25/(byte) bitmap_line_xdyi::x1#1 )
(byte) bitmap_line_xdyi::xd#5 ← phi( bitmap_line::@11/(byte) bitmap_line_xdyi::xd#0 bitmap_line::@25/(byte) bitmap_line_xdyi::xd#1 )
(byte) bitmap_line_xdyi::y#5 ← phi( bitmap_line::@11/(byte) bitmap_line_xdyi::y#0 bitmap_line::@25/(byte) bitmap_line_xdyi::y#1 )
(byte) bitmap_line_xdyi::x#6 ← phi( bitmap_line::@11/(byte) bitmap_line_xdyi::x#0 bitmap_line::@25/(byte) bitmap_line_xdyi::x#1 )
(byte) bitmap_line_xdyi::yd#2 ← phi( bitmap_line::@11/(byte) bitmap_line_xdyi::yd#0 bitmap_line::@25/(byte) bitmap_line_xdyi::yd#1 )
(byte~) bitmap_line_xdyi::$0 ← (byte) bitmap_line_xdyi::yd#2 >> (number) 1
(byte) bitmap_line_xdyi::e#0 ← (byte~) bitmap_line_xdyi::$0
to:bitmap_line_xdyi::@1
bitmap_line_xdyi::@1: scope:[bitmap_line_xdyi] from bitmap_line_xdyi bitmap_line_xdyi::@2
(byte) bitmap_line_xdyi::x1#5 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::x1#6 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::x1#2 )
(byte) bitmap_line_xdyi::xd#4 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::xd#5 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::xd#6 )
(byte) bitmap_line_xdyi::yd#4 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::yd#2 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::yd#5 )
(byte) bitmap_line_xdyi::e#5 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::e#0 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::e#6 )
(byte) bitmap_line_xdyi::y#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::y#5 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::y#6 )
(byte) bitmap_line_xdyi::x#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::x#6 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::x#5 )
(byte) bitmap_plot::x#0 ← (byte) bitmap_line_xdyi::x#3
(byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3
call bitmap_plot
to:bitmap_line_xdyi::@5
bitmap_line_xdyi::@5: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@1
(byte) bitmap_line_xdyi::y#7 ← phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::y#3 )
(byte) bitmap_line_xdyi::x1#4 ← phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::x1#5 )
(byte) bitmap_line_xdyi::xd#2 ← phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::xd#4 )
(byte) bitmap_line_xdyi::yd#3 ← phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::yd#4 )
(byte) bitmap_line_xdyi::e#3 ← phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::e#5 )
(byte) bitmap_line_xdyi::x#4 ← phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::x#3 )
(byte) bitmap_line_xdyi::x#2 ← ++ (byte) bitmap_line_xdyi::x#4
(byte~) bitmap_line_xdyi::$2 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#3
(byte) bitmap_line_xdyi::e#1 ← (byte~) bitmap_line_xdyi::$2
(bool~) bitmap_line_xdyi::$3 ← (byte) bitmap_line_xdyi::xd#2 < (byte) bitmap_line_xdyi::e#1
(bool~) bitmap_line_xdyi::$4 ← ! (bool~) bitmap_line_xdyi::$3
if((bool~) bitmap_line_xdyi::$4) goto bitmap_line_xdyi::@2
to:bitmap_line_xdyi::@3
bitmap_line_xdyi::@2: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@3 bitmap_line_xdyi::@5
(byte) bitmap_line_xdyi::xd#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::xd#3 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::xd#2 )
(byte) bitmap_line_xdyi::yd#5 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::yd#6 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::yd#3 )
(byte) bitmap_line_xdyi::e#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::e#2 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::e#1 )
(byte) bitmap_line_xdyi::y#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::y#2 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::y#7 )
(byte) bitmap_line_xdyi::x#5 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::x#7 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x#2 )
(byte) bitmap_line_xdyi::x1#2 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::x1#3 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x1#4 )
(number~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#2 + (number) 1
(bool~) bitmap_line_xdyi::$7 ← (byte) bitmap_line_xdyi::x#5 != (number~) bitmap_line_xdyi::$6
if((bool~) bitmap_line_xdyi::$7) goto bitmap_line_xdyi::@1
to:bitmap_line_xdyi::@return
bitmap_line_xdyi::@3: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@5
(byte) bitmap_line_xdyi::yd#6 ← phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::yd#3 )
(byte) bitmap_line_xdyi::x#7 ← phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x#2 )
(byte) bitmap_line_xdyi::x1#3 ← phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x1#4 )
(byte) bitmap_line_xdyi::xd#3 ← phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::xd#2 )
(byte) bitmap_line_xdyi::e#4 ← phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::e#1 )
(byte) bitmap_line_xdyi::y#4 ← phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::y#7 )
(byte) bitmap_line_xdyi::y#2 ← ++ (byte) bitmap_line_xdyi::y#4
(byte~) bitmap_line_xdyi::$5 ← (byte) bitmap_line_xdyi::e#4 - (byte) bitmap_line_xdyi::xd#3
(byte) bitmap_line_xdyi::e#2 ← (byte~) bitmap_line_xdyi::$5
to:bitmap_line_xdyi::@2
bitmap_line_xdyi::@return: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@2
return
to:@return
bitmap_line_xdyd: scope:[bitmap_line_xdyd] from bitmap_line::@15 bitmap_line::@21
(byte) bitmap_line_xdyd::x1#6 ← phi( bitmap_line::@15/(byte) bitmap_line_xdyd::x1#0 bitmap_line::@21/(byte) bitmap_line_xdyd::x1#1 )
(byte) bitmap_line_xdyd::xd#5 ← phi( bitmap_line::@15/(byte) bitmap_line_xdyd::xd#0 bitmap_line::@21/(byte) bitmap_line_xdyd::xd#1 )
(byte) bitmap_line_xdyd::y#5 ← phi( bitmap_line::@15/(byte) bitmap_line_xdyd::y#0 bitmap_line::@21/(byte) bitmap_line_xdyd::y#1 )
(byte) bitmap_line_xdyd::x#6 ← phi( bitmap_line::@15/(byte) bitmap_line_xdyd::x#0 bitmap_line::@21/(byte) bitmap_line_xdyd::x#1 )
(byte) bitmap_line_xdyd::yd#2 ← phi( bitmap_line::@15/(byte) bitmap_line_xdyd::yd#0 bitmap_line::@21/(byte) bitmap_line_xdyd::yd#1 )
(byte~) bitmap_line_xdyd::$0 ← (byte) bitmap_line_xdyd::yd#2 >> (number) 1
(byte) bitmap_line_xdyd::e#0 ← (byte~) bitmap_line_xdyd::$0
to:bitmap_line_xdyd::@1
bitmap_line_xdyd::@1: scope:[bitmap_line_xdyd] from bitmap_line_xdyd bitmap_line_xdyd::@2
(byte) bitmap_line_xdyd::x1#5 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::x1#6 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::x1#2 )
(byte) bitmap_line_xdyd::xd#4 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::xd#5 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::xd#6 )
(byte) bitmap_line_xdyd::yd#4 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::yd#2 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::yd#5 )
(byte) bitmap_line_xdyd::e#5 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::e#0 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::e#6 )
(byte) bitmap_line_xdyd::y#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::y#5 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::y#6 )
(byte) bitmap_line_xdyd::x#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::x#6 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::x#5 )
(byte) bitmap_plot::x#1 ← (byte) bitmap_line_xdyd::x#3
(byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3
call bitmap_plot
to:bitmap_line_xdyd::@5
bitmap_line_xdyd::@5: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@1
(byte) bitmap_line_xdyd::y#7 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::y#3 )
(byte) bitmap_line_xdyd::x1#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::x1#5 )
(byte) bitmap_line_xdyd::xd#2 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::xd#4 )
(byte) bitmap_line_xdyd::yd#3 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::yd#4 )
(byte) bitmap_line_xdyd::e#3 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::e#5 )
(byte) bitmap_line_xdyd::x#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::x#3 )
(byte) bitmap_line_xdyd::x#2 ← ++ (byte) bitmap_line_xdyd::x#4
(byte~) bitmap_line_xdyd::$2 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#3
(byte) bitmap_line_xdyd::e#1 ← (byte~) bitmap_line_xdyd::$2
(bool~) bitmap_line_xdyd::$3 ← (byte) bitmap_line_xdyd::xd#2 < (byte) bitmap_line_xdyd::e#1
(bool~) bitmap_line_xdyd::$4 ← ! (bool~) bitmap_line_xdyd::$3
if((bool~) bitmap_line_xdyd::$4) goto bitmap_line_xdyd::@2
to:bitmap_line_xdyd::@3
bitmap_line_xdyd::@2: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@3 bitmap_line_xdyd::@5
(byte) bitmap_line_xdyd::xd#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::xd#3 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::xd#2 )
(byte) bitmap_line_xdyd::yd#5 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::yd#6 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::yd#3 )
(byte) bitmap_line_xdyd::e#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::e#2 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::e#1 )
(byte) bitmap_line_xdyd::y#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::y#2 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::y#7 )
(byte) bitmap_line_xdyd::x#5 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::x#7 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x#2 )
(byte) bitmap_line_xdyd::x1#2 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::x1#3 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x1#4 )
(number~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#2 + (number) 1
(bool~) bitmap_line_xdyd::$7 ← (byte) bitmap_line_xdyd::x#5 != (number~) bitmap_line_xdyd::$6
if((bool~) bitmap_line_xdyd::$7) goto bitmap_line_xdyd::@1
to:bitmap_line_xdyd::@return
bitmap_line_xdyd::@3: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@5
(byte) bitmap_line_xdyd::yd#6 ← phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::yd#3 )
(byte) bitmap_line_xdyd::x#7 ← phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x#2 )
(byte) bitmap_line_xdyd::x1#3 ← phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x1#4 )
(byte) bitmap_line_xdyd::xd#3 ← phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::xd#2 )
(byte) bitmap_line_xdyd::e#4 ← phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::e#1 )
(byte) bitmap_line_xdyd::y#4 ← phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::y#7 )
(byte) bitmap_line_xdyd::y#2 ← -- (byte) bitmap_line_xdyd::y#4
(byte~) bitmap_line_xdyd::$5 ← (byte) bitmap_line_xdyd::e#4 - (byte) bitmap_line_xdyd::xd#3
(byte) bitmap_line_xdyd::e#2 ← (byte~) bitmap_line_xdyd::$5
to:bitmap_line_xdyd::@2
bitmap_line_xdyd::@return: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@2
return
to:@return
bitmap_line_ydxi: scope:[bitmap_line_ydxi] from bitmap_line::@27 bitmap_line::@5
(byte) bitmap_line_ydxi::y1#6 ← phi( bitmap_line::@27/(byte) bitmap_line_ydxi::y1#1 bitmap_line::@5/(byte) bitmap_line_ydxi::y1#0 )
(byte) bitmap_line_ydxi::yd#5 ← phi( bitmap_line::@27/(byte) bitmap_line_ydxi::yd#1 bitmap_line::@5/(byte) bitmap_line_ydxi::yd#0 )
(byte) bitmap_line_ydxi::y#6 ← phi( bitmap_line::@27/(byte) bitmap_line_ydxi::y#1 bitmap_line::@5/(byte) bitmap_line_ydxi::y#0 )
(byte) bitmap_line_ydxi::x#5 ← phi( bitmap_line::@27/(byte) bitmap_line_ydxi::x#1 bitmap_line::@5/(byte) bitmap_line_ydxi::x#0 )
(byte) bitmap_line_ydxi::xd#2 ← phi( bitmap_line::@27/(byte) bitmap_line_ydxi::xd#1 bitmap_line::@5/(byte) bitmap_line_ydxi::xd#0 )
(byte~) bitmap_line_ydxi::$0 ← (byte) bitmap_line_ydxi::xd#2 >> (number) 1
(byte) bitmap_line_ydxi::e#0 ← (byte~) bitmap_line_ydxi::$0
to:bitmap_line_ydxi::@1
bitmap_line_ydxi::@1: scope:[bitmap_line_ydxi] from bitmap_line_ydxi bitmap_line_ydxi::@2
(byte) bitmap_line_ydxi::y1#5 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::y1#6 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::y1#2 )
(byte) bitmap_line_ydxi::yd#4 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::yd#5 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::yd#6 )
(byte) bitmap_line_ydxi::xd#4 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::xd#2 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::xd#5 )
(byte) bitmap_line_ydxi::e#5 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::e#0 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::e#6 )
(byte) bitmap_line_ydxi::y#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::y#6 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::y#5 )
(byte) bitmap_line_ydxi::x#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::x#5 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::x#6 )
(byte) bitmap_plot::x#2 ← (byte) bitmap_line_ydxi::x#3
(byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3
call bitmap_plot
to:bitmap_line_ydxi::@5
bitmap_line_ydxi::@5: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@1
(byte) bitmap_line_ydxi::x#7 ← phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::x#3 )
(byte) bitmap_line_ydxi::y1#4 ← phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::y1#5 )
(byte) bitmap_line_ydxi::yd#2 ← phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::yd#4 )
(byte) bitmap_line_ydxi::xd#3 ← phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::xd#4 )
(byte) bitmap_line_ydxi::e#3 ← phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::e#5 )
(byte) bitmap_line_ydxi::y#4 ← phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::y#3 )
(byte) bitmap_line_ydxi::y#2 ← ++ (byte) bitmap_line_ydxi::y#4
(byte~) bitmap_line_ydxi::$2 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#3
(byte) bitmap_line_ydxi::e#1 ← (byte~) bitmap_line_ydxi::$2
(bool~) bitmap_line_ydxi::$3 ← (byte) bitmap_line_ydxi::yd#2 < (byte) bitmap_line_ydxi::e#1
(bool~) bitmap_line_ydxi::$4 ← ! (bool~) bitmap_line_ydxi::$3
if((bool~) bitmap_line_ydxi::$4) goto bitmap_line_ydxi::@2
to:bitmap_line_ydxi::@3
bitmap_line_ydxi::@2: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@3 bitmap_line_ydxi::@5
(byte) bitmap_line_ydxi::yd#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::yd#3 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::yd#2 )
(byte) bitmap_line_ydxi::xd#5 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::xd#6 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::xd#3 )
(byte) bitmap_line_ydxi::e#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::e#2 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::e#1 )
(byte) bitmap_line_ydxi::x#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::x#2 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::x#7 )
(byte) bitmap_line_ydxi::y#5 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::y#7 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y#2 )
(byte) bitmap_line_ydxi::y1#2 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::y1#3 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y1#4 )
(number~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#2 + (number) 1
(bool~) bitmap_line_ydxi::$7 ← (byte) bitmap_line_ydxi::y#5 != (number~) bitmap_line_ydxi::$6
if((bool~) bitmap_line_ydxi::$7) goto bitmap_line_ydxi::@1
to:bitmap_line_ydxi::@return
bitmap_line_ydxi::@3: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@5
(byte) bitmap_line_ydxi::xd#6 ← phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::xd#3 )
(byte) bitmap_line_ydxi::y#7 ← phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y#2 )
(byte) bitmap_line_ydxi::y1#3 ← phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y1#4 )
(byte) bitmap_line_ydxi::yd#3 ← phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::yd#2 )
(byte) bitmap_line_ydxi::e#4 ← phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::e#1 )
(byte) bitmap_line_ydxi::x#4 ← phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::x#7 )
(byte) bitmap_line_ydxi::x#2 ← ++ (byte) bitmap_line_ydxi::x#4
(byte~) bitmap_line_ydxi::$5 ← (byte) bitmap_line_ydxi::e#4 - (byte) bitmap_line_ydxi::yd#3
(byte) bitmap_line_ydxi::e#2 ← (byte~) bitmap_line_ydxi::$5
to:bitmap_line_ydxi::@2
bitmap_line_ydxi::@return: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@2
return
to:@return
bitmap_line_ydxd: scope:[bitmap_line_ydxd] from bitmap_line::@17 bitmap_line::@8
(byte) bitmap_line_ydxd::y1#6 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxd::y1#0 bitmap_line::@8/(byte) bitmap_line_ydxd::y1#1 )
(byte) bitmap_line_ydxd::yd#5 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxd::yd#0 bitmap_line::@8/(byte) bitmap_line_ydxd::yd#1 )
(byte) bitmap_line_ydxd::y#7 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxd::y#0 bitmap_line::@8/(byte) bitmap_line_ydxd::y#1 )
(byte) bitmap_line_ydxd::x#5 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxd::x#0 bitmap_line::@8/(byte) bitmap_line_ydxd::x#1 )
(byte) bitmap_line_ydxd::xd#2 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxd::xd#0 bitmap_line::@8/(byte) bitmap_line_ydxd::xd#1 )
(byte~) bitmap_line_ydxd::$0 ← (byte) bitmap_line_ydxd::xd#2 >> (number) 1
(byte) bitmap_line_ydxd::e#0 ← (byte~) bitmap_line_ydxd::$0
to:bitmap_line_ydxd::@1
bitmap_line_ydxd::@1: scope:[bitmap_line_ydxd] from bitmap_line_ydxd bitmap_line_ydxd::@2
(byte) bitmap_line_ydxd::y1#5 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::y1#6 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::y1#2 )
(byte) bitmap_line_ydxd::yd#4 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::yd#5 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::yd#6 )
(byte) bitmap_line_ydxd::xd#4 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::xd#2 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::xd#5 )
(byte) bitmap_line_ydxd::e#5 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::e#0 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::e#6 )
(byte) bitmap_line_ydxd::y#4 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::y#7 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::y#6 )
(byte) bitmap_line_ydxd::x#3 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::x#5 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::x#6 )
(byte) bitmap_plot::x#3 ← (byte) bitmap_line_ydxd::x#3
(byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#4
call bitmap_plot
to:bitmap_line_ydxd::@5
bitmap_line_ydxd::@5: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@1
(byte) bitmap_line_ydxd::x#7 ← phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::x#3 )
(byte) bitmap_line_ydxd::y1#4 ← phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::y1#5 )
(byte) bitmap_line_ydxd::yd#2 ← phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::yd#4 )
(byte) bitmap_line_ydxd::xd#3 ← phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::xd#4 )
(byte) bitmap_line_ydxd::e#3 ← phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::e#5 )
(byte) bitmap_line_ydxd::y#5 ← phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::y#4 )
(byte) bitmap_line_ydxd::y#2 ← (byte) bitmap_line_ydxd::y#5
(byte) bitmap_line_ydxd::y#3 ← ++ (byte) bitmap_line_ydxd::y#2
(byte~) bitmap_line_ydxd::$2 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#3
(byte) bitmap_line_ydxd::e#1 ← (byte~) bitmap_line_ydxd::$2
(bool~) bitmap_line_ydxd::$3 ← (byte) bitmap_line_ydxd::yd#2 < (byte) bitmap_line_ydxd::e#1
(bool~) bitmap_line_ydxd::$4 ← ! (bool~) bitmap_line_ydxd::$3
if((bool~) bitmap_line_ydxd::$4) goto bitmap_line_ydxd::@2
to:bitmap_line_ydxd::@3
bitmap_line_ydxd::@2: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@3 bitmap_line_ydxd::@5
(byte) bitmap_line_ydxd::yd#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::yd#3 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::yd#2 )
(byte) bitmap_line_ydxd::xd#5 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::xd#6 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::xd#3 )
(byte) bitmap_line_ydxd::e#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::e#2 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::e#1 )
(byte) bitmap_line_ydxd::x#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::x#2 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::x#7 )
(byte) bitmap_line_ydxd::y#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::y#8 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y#3 )
(byte) bitmap_line_ydxd::y1#2 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::y1#3 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y1#4 )
(number~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#2 + (number) 1
(bool~) bitmap_line_ydxd::$7 ← (byte) bitmap_line_ydxd::y#6 != (number~) bitmap_line_ydxd::$6
if((bool~) bitmap_line_ydxd::$7) goto bitmap_line_ydxd::@1
to:bitmap_line_ydxd::@return
bitmap_line_ydxd::@3: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@5
(byte) bitmap_line_ydxd::xd#6 ← phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::xd#3 )
(byte) bitmap_line_ydxd::y#8 ← phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y#3 )
(byte) bitmap_line_ydxd::y1#3 ← phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y1#4 )
(byte) bitmap_line_ydxd::yd#3 ← phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::yd#2 )
(byte) bitmap_line_ydxd::e#4 ← phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::e#1 )
(byte) bitmap_line_ydxd::x#4 ← phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::x#7 )
(byte) bitmap_line_ydxd::x#2 ← -- (byte) bitmap_line_ydxd::x#4
(byte~) bitmap_line_ydxd::$5 ← (byte) bitmap_line_ydxd::e#4 - (byte) bitmap_line_ydxd::yd#3
(byte) bitmap_line_ydxd::e#2 ← (byte~) bitmap_line_ydxd::$5
to:bitmap_line_ydxd::@2
bitmap_line_ydxd::@return: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@2
return
to:@return
main: scope:[main] from @71
(byte) dtv_control#130 ← phi( @71/(byte) dtv_control#129 )
(byte*) print_char_cursor#54 ← phi( @71/(byte*) print_char_cursor#51 )
(byte*) print_line_cursor#52 ← phi( @71/(byte*) print_line_cursor#49 )
(byte*) print_screen#33 ← phi( @71/(byte*) print_screen#32 )
asm { sei }
*((byte*) PROCPORT_DDR#0) ← (byte) PROCPORT_DDR_MEMORY_MASK#0
*((byte*) PROCPORT#0) ← (byte) PROCPORT_RAM_IO#0
*((byte*) DTV_FEATURE#0) ← (byte) DTV_FEATURE_ENABLE#0
to:main::@1
main::@1: scope:[main] from main main::@7
(byte) dtv_control#99 ← phi( main/(byte) dtv_control#130 main::@7/(byte) dtv_control#0 )
(byte*) print_char_cursor#36 ← phi( main/(byte*) print_char_cursor#54 main::@7/(byte*) print_char_cursor#10 )
(byte*) print_line_cursor#34 ← phi( main/(byte*) print_line_cursor#52 main::@7/(byte*) print_line_cursor#9 )
(byte*) print_screen#17 ← phi( main/(byte*) print_screen#33 main::@7/(byte*) print_screen#3 )
if(true) goto main::@2
to:main::@return
main::@2: scope:[main] from main::@1
(byte) dtv_control#98 ← phi( main::@1/(byte) dtv_control#99 )
(byte*) print_char_cursor#35 ← phi( main::@1/(byte*) print_char_cursor#36 )
(byte*) print_line_cursor#33 ← phi( main::@1/(byte*) print_line_cursor#34 )
(byte*) print_screen#16 ← phi( main::@1/(byte*) print_screen#17 )
call menu
to:main::@7
main::@7: scope:[main] from main::@2
(byte) dtv_control#55 ← phi( main::@2/(byte) dtv_control#3 )
(byte*) print_char_cursor#24 ← phi( main::@2/(byte*) print_char_cursor#15 )
(byte*) print_line_cursor#23 ← phi( main::@2/(byte*) print_line_cursor#14 )
(byte*) print_screen#11 ← phi( main::@2/(byte*) print_screen#6 )
(byte*) print_screen#3 ← (byte*) print_screen#11
(byte*) print_line_cursor#9 ← (byte*) print_line_cursor#23
(byte*) print_char_cursor#10 ← (byte*) print_char_cursor#24
(byte) dtv_control#0 ← (byte) dtv_control#55
to:main::@1
main::@return: scope:[main] from main::@1
(byte) dtv_control#56 ← phi( main::@1/(byte) dtv_control#99 )
(byte*) print_char_cursor#25 ← phi( main::@1/(byte*) print_char_cursor#36 )
(byte*) print_line_cursor#24 ← phi( main::@1/(byte*) print_line_cursor#34 )
(byte*) print_screen#12 ← phi( main::@1/(byte*) print_screen#17 )
(byte*) print_screen#4 ← (byte*) print_screen#12
(byte*) print_line_cursor#10 ← (byte*) print_line_cursor#24
(byte*) print_char_cursor#11 ← (byte*) print_char_cursor#25
(byte) dtv_control#1 ← (byte) dtv_control#56
return
to:@return
@57: scope:[] from @48
(byte*) print_char_cursor#84 ← phi( @48/(byte*) print_char_cursor#85 )
(byte*) print_line_cursor#84 ← phi( @48/(byte*) print_line_cursor#85 )
(byte*) print_screen#65 ← phi( @48/(byte*) print_screen#66 )
(byte[]) MENU_TEXT#0 ← (const string) $1
to:@58
menu: scope:[menu] from main::@2
(byte) dtv_control#254 ← phi( main::@2/(byte) dtv_control#98 )
(byte*) print_char_cursor#99 ← phi( main::@2/(byte*) print_char_cursor#35 )
(byte*) print_line_cursor#99 ← phi( main::@2/(byte*) print_line_cursor#33 )
(byte*) print_screen#80 ← phi( main::@2/(byte*) print_screen#16 )
(byte*) menu::SCREEN#0 ← ((byte*)) (number) $8000
(byte*) menu::CHARSET#0 ← ((byte*)) (number) $9800
(dword~) menu::$0 ← ((dword)) (byte*) menu::CHARSET#0
(number~) menu::$1 ← (dword~) menu::$0 / (number) $10000
(byte~) menu::$2 ← ((byte)) (number~) menu::$1
*((byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte~) menu::$2
(number~) menu::$3 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (number) $400
(word~) menu::$4 ← ((word)) (number~) menu::$3
(byte~) menu::$5 ← < (word~) menu::$4
*((byte*) DTV_COLOR_BANK_LO#0) ← (byte~) menu::$5
(number~) menu::$6 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (number) $400
(word~) menu::$7 ← ((word)) (number~) menu::$6
(byte~) menu::$8 ← > (word~) menu::$7
*((byte*) DTV_COLOR_BANK_HI#0) ← (byte~) menu::$8
*((byte*) DTV_CONTROL#0) ← (number) 0
*((byte*) CIA2_PORT_A_DDR#0) ← (number) 3
(word~) menu::$9 ← ((word)) (byte*) menu::CHARSET#0
(number~) menu::$10 ← (word~) menu::$9 / (number) $4000
(byte~) menu::$11 ← ((byte)) (number~) menu::$10
(number~) menu::$12 ← (number) 3 ^ (byte~) menu::$11
*((byte*) CIA2_PORT_A#0) ← (number~) menu::$12
(byte~) menu::$13 ← (byte) VIC_DEN#0 | (byte) VIC_RSEL#0
(number~) menu::$14 ← (byte~) menu::$13 | (number) 3
*((byte*) VIC_CONTROL#0) ← (number~) menu::$14
*((byte*) VIC_CONTROL2#0) ← (byte) VIC_CSEL#0
(word~) menu::$15 ← ((word)) (byte*) menu::SCREEN#0
(number~) menu::$16 ← (word~) menu::$15 & (number) $3fff
(number~) menu::$17 ← (number~) menu::$16 / (number) $40
(word~) menu::$18 ← ((word)) (byte*) menu::CHARSET#0
(number~) menu::$19 ← (word~) menu::$18 & (number) $3fff
(number~) menu::$20 ← (number~) menu::$19 / (number) $400
(number~) menu::$21 ← (number~) menu::$17 | (number~) menu::$20
(byte~) menu::$22 ← ((byte)) (number~) menu::$21
*((byte*) VIC_MEMORY#0) ← (byte~) menu::$22
(byte) menu::i#0 ← (byte) 0
to:menu::@1
menu::@1: scope:[menu] from menu menu::@1
(byte) dtv_control#245 ← phi( menu/(byte) dtv_control#254 menu::@1/(byte) dtv_control#245 )
(byte*) print_char_cursor#86 ← phi( menu/(byte*) print_char_cursor#99 menu::@1/(byte*) print_char_cursor#86 )
(byte*) print_line_cursor#86 ← phi( menu/(byte*) print_line_cursor#99 menu::@1/(byte*) print_line_cursor#86 )
(byte*) print_screen#67 ← phi( menu/(byte*) print_screen#80 menu::@1/(byte*) print_screen#67 )
(byte) menu::i#2 ← phi( menu/(byte) menu::i#0 menu::@1/(byte) menu::i#1 )
*((byte*) DTV_PALETTE#0 + (byte) menu::i#2) ← *((byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) menu::i#2)
(byte) menu::i#1 ← (byte) menu::i#2 + rangenext(0,$f)
(bool~) menu::$26 ← (byte) menu::i#1 != rangelast(0,$f)
if((bool~) menu::$26) goto menu::@1
to:menu::@2
menu::@2: scope:[menu] from menu::@1
(byte) dtv_control#235 ← phi( menu::@1/(byte) dtv_control#245 )
(byte*) print_char_cursor#70 ← phi( menu::@1/(byte*) print_char_cursor#86 )
(byte*) print_line_cursor#70 ← phi( menu::@1/(byte*) print_line_cursor#86 )
(byte*) print_screen#50 ← phi( menu::@1/(byte*) print_screen#67 )
(byte*) menu::c#0 ← (byte*) COLS#0
to:menu::@3
menu::@3: scope:[menu] from menu::@2 menu::@4
(byte) dtv_control#220 ← phi( menu::@2/(byte) dtv_control#235 menu::@4/(byte) dtv_control#236 )
(byte*) print_char_cursor#55 ← phi( menu::@2/(byte*) print_char_cursor#70 menu::@4/(byte*) print_char_cursor#71 )
(byte*) print_line_cursor#53 ← phi( menu::@2/(byte*) print_line_cursor#70 menu::@4/(byte*) print_line_cursor#71 )
(byte*) print_screen#34 ← phi( menu::@2/(byte*) print_screen#50 menu::@4/(byte*) print_screen#51 )
(byte*) menu::c#2 ← phi( menu::@2/(byte*) menu::c#0 menu::@4/(byte*) menu::c#1 )
(byte*~) menu::$27 ← (byte*) COLS#0 + (number) $3e8
(bool~) menu::$28 ← (byte*) menu::c#2 != (byte*~) menu::$27
if((bool~) menu::$28) goto menu::@4
to:menu::@5
menu::@4: scope:[menu] from menu::@3
(byte) dtv_control#236 ← phi( menu::@3/(byte) dtv_control#220 )
(byte*) print_char_cursor#71 ← phi( menu::@3/(byte*) print_char_cursor#55 )
(byte*) print_line_cursor#71 ← phi( menu::@3/(byte*) print_line_cursor#53 )
(byte*) print_screen#51 ← phi( menu::@3/(byte*) print_screen#34 )
(byte*) menu::c#3 ← phi( menu::@3/(byte*) menu::c#2 )
*((byte*) menu::c#3) ← (byte) LIGHT_GREEN#0
(byte*) menu::c#1 ← ++ (byte*) menu::c#3
to:menu::@3
menu::@5: scope:[menu] from menu::@3
(byte) dtv_control#203 ← phi( menu::@3/(byte) dtv_control#220 )
(byte*) print_char_cursor#37 ← phi( menu::@3/(byte*) print_char_cursor#55 )
(byte*) print_line_cursor#35 ← phi( menu::@3/(byte*) print_line_cursor#53 )
(byte*) print_screen#18 ← phi( menu::@3/(byte*) print_screen#34 )
*((byte*) BGCOL#0) ← (number) 0
*((byte*) BORDERCOL#0) ← (number) 0
(byte*) print_set_screen::screen#0 ← (byte*) menu::SCREEN#0
call print_set_screen
to:menu::@51
menu::@51: scope:[menu] from menu::@5
(byte) dtv_control#188 ← phi( menu::@5/(byte) dtv_control#203 )
(byte*) print_char_cursor#26 ← phi( menu::@5/(byte*) print_char_cursor#9 )
(byte*) print_line_cursor#25 ← phi( menu::@5/(byte*) print_line_cursor#8 )
(byte*) print_screen#13 ← phi( menu::@5/(byte*) print_screen#2 )
(byte*) print_screen#5 ← (byte*) print_screen#13
(byte*) print_line_cursor#11 ← (byte*) print_line_cursor#25
(byte*) print_char_cursor#12 ← (byte*) print_char_cursor#26
call print_cls
to:menu::@52
menu::@52: scope:[menu] from menu::@51
(byte) dtv_control#159 ← phi( menu::@51/(byte) dtv_control#188 )
(byte*) print_screen#52 ← phi( menu::@51/(byte*) print_screen#5 )
(byte*) print_char_cursor#27 ← phi( menu::@51/(byte*) print_char_cursor#7 )
(byte*) print_line_cursor#26 ← phi( menu::@51/(byte*) print_line_cursor#6 )
(byte*) print_line_cursor#12 ← (byte*) print_line_cursor#26
(byte*) print_char_cursor#13 ← (byte*) print_char_cursor#27
(byte*) print_str_lines::str#1 ← (byte[]) MENU_TEXT#0
call print_str_lines
to:menu::@53
menu::@53: scope:[menu] from menu::@52
(byte) dtv_control#131 ← phi( menu::@52/(byte) dtv_control#159 )
(byte*) print_screen#35 ← phi( menu::@52/(byte*) print_screen#52 )
(byte*) print_line_cursor#27 ← phi( menu::@52/(byte*) print_line_cursor#2 )
(byte*) print_char_cursor#28 ← phi( menu::@52/(byte*) print_char_cursor#3 )
(byte*) print_char_cursor#14 ← (byte*) print_char_cursor#28
(byte*) print_line_cursor#13 ← (byte*) print_line_cursor#27
to:menu::@9
menu::@9: scope:[menu] from menu::@53 menu::@75
(byte) dtv_control#101 ← phi( menu::@53/(byte) dtv_control#131 menu::@75/(byte) dtv_control#132 )
(byte*) print_char_cursor#50 ← phi( menu::@53/(byte*) print_char_cursor#14 menu::@75/(byte*) print_char_cursor#56 )
(byte*) print_line_cursor#48 ← phi( menu::@53/(byte*) print_line_cursor#13 menu::@75/(byte*) print_line_cursor#54 )
(byte*) print_screen#31 ← phi( menu::@53/(byte*) print_screen#35 menu::@75/(byte*) print_screen#36 )
if(true) goto menu::@10
to:menu::@return
menu::@10: scope:[menu] from menu::@9
(byte*) print_char_cursor#87 ← phi( menu::@9/(byte*) print_char_cursor#50 )
(byte*) print_line_cursor#87 ← phi( menu::@9/(byte*) print_line_cursor#48 )
(byte*) print_screen#68 ← phi( menu::@9/(byte*) print_screen#31 )
(byte) dtv_control#160 ← phi( menu::@9/(byte) dtv_control#101 )
(byte) keyboard_key_pressed::key#0 ← (byte) KEY_1#0
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#2 ← (byte) keyboard_key_pressed::return#1
to:menu::@54
menu::@54: scope:[menu] from menu::@10
(byte*) print_char_cursor#72 ← phi( menu::@10/(byte*) print_char_cursor#87 )
(byte*) print_line_cursor#72 ← phi( menu::@10/(byte*) print_line_cursor#87 )
(byte*) print_screen#53 ← phi( menu::@10/(byte*) print_screen#68 )
(byte) dtv_control#133 ← phi( menu::@10/(byte) dtv_control#160 )
(byte) keyboard_key_pressed::return#23 ← phi( menu::@10/(byte) keyboard_key_pressed::return#2 )
(byte~) menu::$29 ← (byte) keyboard_key_pressed::return#23
(bool~) menu::$30 ← (byte~) menu::$29 != (number) 0
(bool~) menu::$31 ← ! (bool~) menu::$30
if((bool~) menu::$31) goto menu::@12
to:menu::@26
menu::@12: scope:[menu] from menu::@54
(byte*) print_char_cursor#88 ← phi( menu::@54/(byte*) print_char_cursor#72 )
(byte*) print_line_cursor#88 ← phi( menu::@54/(byte*) print_line_cursor#72 )
(byte*) print_screen#69 ← phi( menu::@54/(byte*) print_screen#53 )
(byte) dtv_control#161 ← phi( menu::@54/(byte) dtv_control#133 )
(byte) keyboard_key_pressed::key#1 ← (byte) KEY_2#0
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#3 ← (byte) keyboard_key_pressed::return#1
to:menu::@55
menu::@55: scope:[menu] from menu::@12
(byte*) print_char_cursor#73 ← phi( menu::@12/(byte*) print_char_cursor#88 )
(byte*) print_line_cursor#73 ← phi( menu::@12/(byte*) print_line_cursor#88 )
(byte*) print_screen#54 ← phi( menu::@12/(byte*) print_screen#69 )
(byte) dtv_control#134 ← phi( menu::@12/(byte) dtv_control#161 )
(byte) keyboard_key_pressed::return#24 ← phi( menu::@12/(byte) keyboard_key_pressed::return#3 )
(byte~) menu::$33 ← (byte) keyboard_key_pressed::return#24
(bool~) menu::$34 ← (byte~) menu::$33 != (number) 0
(bool~) menu::$35 ← ! (bool~) menu::$34
if((bool~) menu::$35) goto menu::@13
to:menu::@28
menu::@26: scope:[menu] from menu::@54
(byte*) print_char_cursor#57 ← phi( menu::@54/(byte*) print_char_cursor#72 )
(byte*) print_line_cursor#55 ← phi( menu::@54/(byte*) print_line_cursor#72 )
(byte*) print_screen#37 ← phi( menu::@54/(byte*) print_screen#53 )
(byte) dtv_control#100 ← phi( menu::@54/(byte) dtv_control#133 )
call mode_stdchar
to:menu::@56
menu::@56: scope:[menu] from menu::@26
(byte*) print_char_cursor#38 ← phi( menu::@26/(byte*) print_char_cursor#57 )
(byte*) print_line_cursor#36 ← phi( menu::@26/(byte*) print_line_cursor#55 )
(byte*) print_screen#19 ← phi( menu::@26/(byte*) print_screen#37 )
(byte) dtv_control#57 ← phi( menu::@26/(byte) dtv_control#20 )
(byte) dtv_control#2 ← (byte) dtv_control#57
to:menu::@return
menu::@return: scope:[menu] from menu::@56 menu::@58 menu::@60 menu::@62 menu::@64 menu::@66 menu::@68 menu::@70 menu::@72 menu::@74 menu::@76 menu::@77 menu::@9
(byte) dtv_control#58 ← phi( menu::@56/(byte) dtv_control#2 menu::@58/(byte) dtv_control#4 menu::@60/(byte) dtv_control#5 menu::@62/(byte) dtv_control#6 menu::@64/(byte) dtv_control#7 menu::@66/(byte) dtv_control#8 menu::@68/(byte) dtv_control#9 menu::@70/(byte) dtv_control#10 menu::@72/(byte) dtv_control#11 menu::@74/(byte) dtv_control#12 menu::@76/(byte) dtv_control#13 menu::@77/(byte) dtv_control#14 menu::@9/(byte) dtv_control#101 )
(byte*) print_char_cursor#29 ← phi( menu::@56/(byte*) print_char_cursor#38 menu::@58/(byte*) print_char_cursor#39 menu::@60/(byte*) print_char_cursor#40 menu::@62/(byte*) print_char_cursor#41 menu::@64/(byte*) print_char_cursor#42 menu::@66/(byte*) print_char_cursor#43 menu::@68/(byte*) print_char_cursor#44 menu::@70/(byte*) print_char_cursor#45 menu::@72/(byte*) print_char_cursor#46 menu::@74/(byte*) print_char_cursor#47 menu::@76/(byte*) print_char_cursor#48 menu::@77/(byte*) print_char_cursor#49 menu::@9/(byte*) print_char_cursor#50 )
(byte*) print_line_cursor#28 ← phi( menu::@56/(byte*) print_line_cursor#36 menu::@58/(byte*) print_line_cursor#37 menu::@60/(byte*) print_line_cursor#38 menu::@62/(byte*) print_line_cursor#39 menu::@64/(byte*) print_line_cursor#40 menu::@66/(byte*) print_line_cursor#41 menu::@68/(byte*) print_line_cursor#42 menu::@70/(byte*) print_line_cursor#43 menu::@72/(byte*) print_line_cursor#44 menu::@74/(byte*) print_line_cursor#45 menu::@76/(byte*) print_line_cursor#46 menu::@77/(byte*) print_line_cursor#47 menu::@9/(byte*) print_line_cursor#48 )
(byte*) print_screen#14 ← phi( menu::@56/(byte*) print_screen#19 menu::@58/(byte*) print_screen#20 menu::@60/(byte*) print_screen#21 menu::@62/(byte*) print_screen#22 menu::@64/(byte*) print_screen#23 menu::@66/(byte*) print_screen#24 menu::@68/(byte*) print_screen#25 menu::@70/(byte*) print_screen#26 menu::@72/(byte*) print_screen#27 menu::@74/(byte*) print_screen#28 menu::@76/(byte*) print_screen#29 menu::@77/(byte*) print_screen#30 menu::@9/(byte*) print_screen#31 )
(byte*) print_screen#6 ← (byte*) print_screen#14
(byte*) print_line_cursor#14 ← (byte*) print_line_cursor#28
(byte*) print_char_cursor#15 ← (byte*) print_char_cursor#29
(byte) dtv_control#3 ← (byte) dtv_control#58
return
to:@return
menu::@13: scope:[menu] from menu::@55
(byte*) print_char_cursor#89 ← phi( menu::@55/(byte*) print_char_cursor#73 )
(byte*) print_line_cursor#89 ← phi( menu::@55/(byte*) print_line_cursor#73 )
(byte*) print_screen#70 ← phi( menu::@55/(byte*) print_screen#54 )
(byte) dtv_control#162 ← phi( menu::@55/(byte) dtv_control#134 )
(byte) keyboard_key_pressed::key#2 ← (byte) KEY_3#0
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#4 ← (byte) keyboard_key_pressed::return#1
to:menu::@57
menu::@57: scope:[menu] from menu::@13
(byte*) print_char_cursor#74 ← phi( menu::@13/(byte*) print_char_cursor#89 )
(byte*) print_line_cursor#74 ← phi( menu::@13/(byte*) print_line_cursor#89 )
(byte*) print_screen#55 ← phi( menu::@13/(byte*) print_screen#70 )
(byte) dtv_control#135 ← phi( menu::@13/(byte) dtv_control#162 )
(byte) keyboard_key_pressed::return#25 ← phi( menu::@13/(byte) keyboard_key_pressed::return#4 )
(byte~) menu::$37 ← (byte) keyboard_key_pressed::return#25
(bool~) menu::$38 ← (byte~) menu::$37 != (number) 0
(bool~) menu::$39 ← ! (bool~) menu::$38
if((bool~) menu::$39) goto menu::@14
to:menu::@30
menu::@28: scope:[menu] from menu::@55
(byte*) print_char_cursor#58 ← phi( menu::@55/(byte*) print_char_cursor#73 )
(byte*) print_line_cursor#56 ← phi( menu::@55/(byte*) print_line_cursor#73 )
(byte*) print_screen#38 ← phi( menu::@55/(byte*) print_screen#54 )
(byte) dtv_control#102 ← phi( menu::@55/(byte) dtv_control#134 )
call mode_ecmchar
to:menu::@58
menu::@58: scope:[menu] from menu::@28
(byte*) print_char_cursor#39 ← phi( menu::@28/(byte*) print_char_cursor#58 )
(byte*) print_line_cursor#37 ← phi( menu::@28/(byte*) print_line_cursor#56 )
(byte*) print_screen#20 ← phi( menu::@28/(byte*) print_screen#38 )
(byte) dtv_control#59 ← phi( menu::@28/(byte) dtv_control#23 )
(byte) dtv_control#4 ← (byte) dtv_control#59
to:menu::@return
menu::@14: scope:[menu] from menu::@57
(byte*) print_char_cursor#90 ← phi( menu::@57/(byte*) print_char_cursor#74 )
(byte*) print_line_cursor#90 ← phi( menu::@57/(byte*) print_line_cursor#74 )
(byte*) print_screen#71 ← phi( menu::@57/(byte*) print_screen#55 )
(byte) dtv_control#163 ← phi( menu::@57/(byte) dtv_control#135 )
(byte) keyboard_key_pressed::key#3 ← (byte) KEY_4#0
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#5 ← (byte) keyboard_key_pressed::return#1
to:menu::@59
menu::@59: scope:[menu] from menu::@14
(byte*) print_char_cursor#75 ← phi( menu::@14/(byte*) print_char_cursor#90 )
(byte*) print_line_cursor#75 ← phi( menu::@14/(byte*) print_line_cursor#90 )
(byte*) print_screen#56 ← phi( menu::@14/(byte*) print_screen#71 )
(byte) dtv_control#136 ← phi( menu::@14/(byte) dtv_control#163 )
(byte) keyboard_key_pressed::return#26 ← phi( menu::@14/(byte) keyboard_key_pressed::return#5 )
(byte~) menu::$41 ← (byte) keyboard_key_pressed::return#26
(bool~) menu::$42 ← (byte~) menu::$41 != (number) 0
(bool~) menu::$43 ← ! (bool~) menu::$42
if((bool~) menu::$43) goto menu::@15
to:menu::@32
menu::@30: scope:[menu] from menu::@57
(byte*) print_char_cursor#59 ← phi( menu::@57/(byte*) print_char_cursor#74 )
(byte*) print_line_cursor#57 ← phi( menu::@57/(byte*) print_line_cursor#74 )
(byte*) print_screen#39 ← phi( menu::@57/(byte*) print_screen#55 )
(byte) dtv_control#103 ← phi( menu::@57/(byte) dtv_control#135 )
call mode_mcchar
to:menu::@60
menu::@60: scope:[menu] from menu::@30
(byte*) print_char_cursor#40 ← phi( menu::@30/(byte*) print_char_cursor#59 )
(byte*) print_line_cursor#38 ← phi( menu::@30/(byte*) print_line_cursor#57 )
(byte*) print_screen#21 ← phi( menu::@30/(byte*) print_screen#39 )
(byte) dtv_control#60 ← phi( menu::@30/(byte) dtv_control#26 )
(byte) dtv_control#5 ← (byte) dtv_control#60
to:menu::@return
menu::@15: scope:[menu] from menu::@59
(byte*) print_char_cursor#91 ← phi( menu::@59/(byte*) print_char_cursor#75 )
(byte*) print_line_cursor#91 ← phi( menu::@59/(byte*) print_line_cursor#75 )
(byte*) print_screen#72 ← phi( menu::@59/(byte*) print_screen#56 )
(byte) dtv_control#164 ← phi( menu::@59/(byte) dtv_control#136 )
(byte) keyboard_key_pressed::key#4 ← (byte) KEY_6#0
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#6 ← (byte) keyboard_key_pressed::return#1
to:menu::@61
menu::@61: scope:[menu] from menu::@15
(byte*) print_char_cursor#76 ← phi( menu::@15/(byte*) print_char_cursor#91 )
(byte*) print_line_cursor#76 ← phi( menu::@15/(byte*) print_line_cursor#91 )
(byte*) print_screen#57 ← phi( menu::@15/(byte*) print_screen#72 )
(byte) dtv_control#137 ← phi( menu::@15/(byte) dtv_control#164 )
(byte) keyboard_key_pressed::return#27 ← phi( menu::@15/(byte) keyboard_key_pressed::return#6 )
(byte~) menu::$45 ← (byte) keyboard_key_pressed::return#27
(bool~) menu::$46 ← (byte~) menu::$45 != (number) 0
(bool~) menu::$47 ← ! (bool~) menu::$46
if((bool~) menu::$47) goto menu::@16
to:menu::@34
menu::@32: scope:[menu] from menu::@59
(byte*) print_char_cursor#60 ← phi( menu::@59/(byte*) print_char_cursor#75 )
(byte*) print_line_cursor#58 ← phi( menu::@59/(byte*) print_line_cursor#75 )
(byte*) print_screen#40 ← phi( menu::@59/(byte*) print_screen#56 )
(byte) dtv_control#104 ← phi( menu::@59/(byte) dtv_control#136 )
call mode_stdbitmap
to:menu::@62
menu::@62: scope:[menu] from menu::@32
(byte*) print_char_cursor#41 ← phi( menu::@32/(byte*) print_char_cursor#60 )
(byte*) print_line_cursor#39 ← phi( menu::@32/(byte*) print_line_cursor#58 )
(byte*) print_screen#22 ← phi( menu::@32/(byte*) print_screen#40 )
(byte) dtv_control#61 ← phi( menu::@32/(byte) dtv_control#29 )
(byte) dtv_control#6 ← (byte) dtv_control#61
to:menu::@return
menu::@16: scope:[menu] from menu::@61
(byte*) print_char_cursor#92 ← phi( menu::@61/(byte*) print_char_cursor#76 )
(byte*) print_line_cursor#92 ← phi( menu::@61/(byte*) print_line_cursor#76 )
(byte*) print_screen#73 ← phi( menu::@61/(byte*) print_screen#57 )
(byte) dtv_control#165 ← phi( menu::@61/(byte) dtv_control#137 )
(byte) keyboard_key_pressed::key#5 ← (byte) KEY_7#0
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#7 ← (byte) keyboard_key_pressed::return#1
to:menu::@63
menu::@63: scope:[menu] from menu::@16
(byte*) print_char_cursor#77 ← phi( menu::@16/(byte*) print_char_cursor#92 )
(byte*) print_line_cursor#77 ← phi( menu::@16/(byte*) print_line_cursor#92 )
(byte*) print_screen#58 ← phi( menu::@16/(byte*) print_screen#73 )
(byte) dtv_control#138 ← phi( menu::@16/(byte) dtv_control#165 )
(byte) keyboard_key_pressed::return#28 ← phi( menu::@16/(byte) keyboard_key_pressed::return#7 )
(byte~) menu::$49 ← (byte) keyboard_key_pressed::return#28
(bool~) menu::$50 ← (byte~) menu::$49 != (number) 0
(bool~) menu::$51 ← ! (bool~) menu::$50
if((bool~) menu::$51) goto menu::@17
to:menu::@36
menu::@34: scope:[menu] from menu::@61
(byte*) print_char_cursor#61 ← phi( menu::@61/(byte*) print_char_cursor#76 )
(byte*) print_line_cursor#59 ← phi( menu::@61/(byte*) print_line_cursor#76 )
(byte*) print_screen#41 ← phi( menu::@61/(byte*) print_screen#57 )
(byte) dtv_control#105 ← phi( menu::@61/(byte) dtv_control#137 )
call mode_hicolstdchar
to:menu::@64
menu::@64: scope:[menu] from menu::@34
(byte*) print_char_cursor#42 ← phi( menu::@34/(byte*) print_char_cursor#61 )
(byte*) print_line_cursor#40 ← phi( menu::@34/(byte*) print_line_cursor#59 )
(byte*) print_screen#23 ← phi( menu::@34/(byte*) print_screen#41 )
(byte) dtv_control#62 ← phi( menu::@34/(byte) dtv_control#32 )
(byte) dtv_control#7 ← (byte) dtv_control#62
to:menu::@return
menu::@17: scope:[menu] from menu::@63
(byte*) print_char_cursor#93 ← phi( menu::@63/(byte*) print_char_cursor#77 )
(byte*) print_line_cursor#93 ← phi( menu::@63/(byte*) print_line_cursor#77 )
(byte*) print_screen#74 ← phi( menu::@63/(byte*) print_screen#58 )
(byte) dtv_control#166 ← phi( menu::@63/(byte) dtv_control#138 )
(byte) keyboard_key_pressed::key#6 ← (byte) KEY_8#0
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#8 ← (byte) keyboard_key_pressed::return#1
to:menu::@65
menu::@65: scope:[menu] from menu::@17
(byte*) print_char_cursor#78 ← phi( menu::@17/(byte*) print_char_cursor#93 )
(byte*) print_line_cursor#78 ← phi( menu::@17/(byte*) print_line_cursor#93 )
(byte*) print_screen#59 ← phi( menu::@17/(byte*) print_screen#74 )
(byte) dtv_control#139 ← phi( menu::@17/(byte) dtv_control#166 )
(byte) keyboard_key_pressed::return#29 ← phi( menu::@17/(byte) keyboard_key_pressed::return#8 )
(byte~) menu::$53 ← (byte) keyboard_key_pressed::return#29
(bool~) menu::$54 ← (byte~) menu::$53 != (number) 0
(bool~) menu::$55 ← ! (bool~) menu::$54
if((bool~) menu::$55) goto menu::@18
to:menu::@38
menu::@36: scope:[menu] from menu::@63
(byte*) print_char_cursor#62 ← phi( menu::@63/(byte*) print_char_cursor#77 )
(byte*) print_line_cursor#60 ← phi( menu::@63/(byte*) print_line_cursor#77 )
(byte*) print_screen#42 ← phi( menu::@63/(byte*) print_screen#58 )
(byte) dtv_control#106 ← phi( menu::@63/(byte) dtv_control#138 )
call mode_hicolecmchar
to:menu::@66
menu::@66: scope:[menu] from menu::@36
(byte*) print_char_cursor#43 ← phi( menu::@36/(byte*) print_char_cursor#62 )
(byte*) print_line_cursor#41 ← phi( menu::@36/(byte*) print_line_cursor#60 )
(byte*) print_screen#24 ← phi( menu::@36/(byte*) print_screen#42 )
(byte) dtv_control#63 ← phi( menu::@36/(byte) dtv_control#35 )
(byte) dtv_control#8 ← (byte) dtv_control#63
to:menu::@return
menu::@18: scope:[menu] from menu::@65
(byte*) print_char_cursor#94 ← phi( menu::@65/(byte*) print_char_cursor#78 )
(byte*) print_line_cursor#94 ← phi( menu::@65/(byte*) print_line_cursor#78 )
(byte*) print_screen#75 ← phi( menu::@65/(byte*) print_screen#59 )
(byte) dtv_control#167 ← phi( menu::@65/(byte) dtv_control#139 )
(byte) keyboard_key_pressed::key#7 ← (byte) KEY_A#0
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#9 ← (byte) keyboard_key_pressed::return#1
to:menu::@67
menu::@67: scope:[menu] from menu::@18
(byte*) print_char_cursor#79 ← phi( menu::@18/(byte*) print_char_cursor#94 )
(byte*) print_line_cursor#79 ← phi( menu::@18/(byte*) print_line_cursor#94 )
(byte*) print_screen#60 ← phi( menu::@18/(byte*) print_screen#75 )
(byte) dtv_control#140 ← phi( menu::@18/(byte) dtv_control#167 )
(byte) keyboard_key_pressed::return#30 ← phi( menu::@18/(byte) keyboard_key_pressed::return#9 )
(byte~) menu::$57 ← (byte) keyboard_key_pressed::return#30
(bool~) menu::$58 ← (byte~) menu::$57 != (number) 0
(bool~) menu::$59 ← ! (bool~) menu::$58
if((bool~) menu::$59) goto menu::@19
to:menu::@40
menu::@38: scope:[menu] from menu::@65
(byte*) print_char_cursor#63 ← phi( menu::@65/(byte*) print_char_cursor#78 )
(byte*) print_line_cursor#61 ← phi( menu::@65/(byte*) print_line_cursor#78 )
(byte*) print_screen#43 ← phi( menu::@65/(byte*) print_screen#59 )
(byte) dtv_control#107 ← phi( menu::@65/(byte) dtv_control#139 )
call mode_hicolmcchar
to:menu::@68
menu::@68: scope:[menu] from menu::@38
(byte*) print_char_cursor#44 ← phi( menu::@38/(byte*) print_char_cursor#63 )
(byte*) print_line_cursor#42 ← phi( menu::@38/(byte*) print_line_cursor#61 )
(byte*) print_screen#25 ← phi( menu::@38/(byte*) print_screen#43 )
(byte) dtv_control#64 ← phi( menu::@38/(byte) dtv_control#38 )
(byte) dtv_control#9 ← (byte) dtv_control#64
to:menu::@return
menu::@19: scope:[menu] from menu::@67
(byte*) print_char_cursor#95 ← phi( menu::@67/(byte*) print_char_cursor#79 )
(byte*) print_line_cursor#95 ← phi( menu::@67/(byte*) print_line_cursor#79 )
(byte*) print_screen#76 ← phi( menu::@67/(byte*) print_screen#60 )
(byte) dtv_control#168 ← phi( menu::@67/(byte) dtv_control#140 )
(byte) keyboard_key_pressed::key#8 ← (byte) KEY_B#0
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#10 ← (byte) keyboard_key_pressed::return#1
to:menu::@69
menu::@69: scope:[menu] from menu::@19
(byte*) print_char_cursor#80 ← phi( menu::@19/(byte*) print_char_cursor#95 )
(byte*) print_line_cursor#80 ← phi( menu::@19/(byte*) print_line_cursor#95 )
(byte*) print_screen#61 ← phi( menu::@19/(byte*) print_screen#76 )
(byte) dtv_control#141 ← phi( menu::@19/(byte) dtv_control#168 )
(byte) keyboard_key_pressed::return#31 ← phi( menu::@19/(byte) keyboard_key_pressed::return#10 )
(byte~) menu::$61 ← (byte) keyboard_key_pressed::return#31
(bool~) menu::$62 ← (byte~) menu::$61 != (number) 0
(bool~) menu::$63 ← ! (bool~) menu::$62
if((bool~) menu::$63) goto menu::@20
to:menu::@42
menu::@40: scope:[menu] from menu::@67
(byte*) print_char_cursor#64 ← phi( menu::@67/(byte*) print_char_cursor#79 )
(byte*) print_line_cursor#62 ← phi( menu::@67/(byte*) print_line_cursor#79 )
(byte*) print_screen#44 ← phi( menu::@67/(byte*) print_screen#60 )
(byte) dtv_control#108 ← phi( menu::@67/(byte) dtv_control#140 )
call mode_sixsfred2
to:menu::@70
menu::@70: scope:[menu] from menu::@40
(byte*) print_char_cursor#45 ← phi( menu::@40/(byte*) print_char_cursor#64 )
(byte*) print_line_cursor#43 ← phi( menu::@40/(byte*) print_line_cursor#62 )
(byte*) print_screen#26 ← phi( menu::@40/(byte*) print_screen#44 )
(byte) dtv_control#65 ← phi( menu::@40/(byte) dtv_control#47 )
(byte) dtv_control#10 ← (byte) dtv_control#65
to:menu::@return
menu::@20: scope:[menu] from menu::@69
(byte*) print_char_cursor#96 ← phi( menu::@69/(byte*) print_char_cursor#80 )
(byte*) print_line_cursor#96 ← phi( menu::@69/(byte*) print_line_cursor#80 )
(byte*) print_screen#77 ← phi( menu::@69/(byte*) print_screen#61 )
(byte) dtv_control#169 ← phi( menu::@69/(byte) dtv_control#141 )
(byte) keyboard_key_pressed::key#9 ← (byte) KEY_C#0
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#11 ← (byte) keyboard_key_pressed::return#1
to:menu::@71
menu::@71: scope:[menu] from menu::@20
(byte*) print_char_cursor#81 ← phi( menu::@20/(byte*) print_char_cursor#96 )
(byte*) print_line_cursor#81 ← phi( menu::@20/(byte*) print_line_cursor#96 )
(byte*) print_screen#62 ← phi( menu::@20/(byte*) print_screen#77 )
(byte) dtv_control#142 ← phi( menu::@20/(byte) dtv_control#169 )
(byte) keyboard_key_pressed::return#32 ← phi( menu::@20/(byte) keyboard_key_pressed::return#11 )
(byte~) menu::$65 ← (byte) keyboard_key_pressed::return#32
(bool~) menu::$66 ← (byte~) menu::$65 != (number) 0
(bool~) menu::$67 ← ! (bool~) menu::$66
if((bool~) menu::$67) goto menu::@21
to:menu::@44
menu::@42: scope:[menu] from menu::@69
(byte*) print_char_cursor#65 ← phi( menu::@69/(byte*) print_char_cursor#80 )
(byte*) print_line_cursor#63 ← phi( menu::@69/(byte*) print_line_cursor#80 )
(byte*) print_screen#45 ← phi( menu::@69/(byte*) print_screen#61 )
(byte) dtv_control#109 ← phi( menu::@69/(byte) dtv_control#141 )
call mode_twoplanebitmap
to:menu::@72
menu::@72: scope:[menu] from menu::@42
(byte*) print_char_cursor#46 ← phi( menu::@42/(byte*) print_char_cursor#65 )
(byte*) print_line_cursor#44 ← phi( menu::@42/(byte*) print_line_cursor#63 )
(byte*) print_screen#27 ← phi( menu::@42/(byte*) print_screen#45 )
(byte) dtv_control#66 ← phi( menu::@42/(byte) dtv_control#41 )
(byte) dtv_control#11 ← (byte) dtv_control#66
to:menu::@return
menu::@21: scope:[menu] from menu::@71
(byte*) print_char_cursor#97 ← phi( menu::@71/(byte*) print_char_cursor#81 )
(byte*) print_line_cursor#97 ← phi( menu::@71/(byte*) print_line_cursor#81 )
(byte*) print_screen#78 ← phi( menu::@71/(byte*) print_screen#62 )
(byte) dtv_control#170 ← phi( menu::@71/(byte) dtv_control#142 )
(byte) keyboard_key_pressed::key#10 ← (byte) KEY_D#0
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#12 ← (byte) keyboard_key_pressed::return#1
to:menu::@73
menu::@73: scope:[menu] from menu::@21
(byte*) print_char_cursor#83 ← phi( menu::@21/(byte*) print_char_cursor#97 )
(byte*) print_line_cursor#83 ← phi( menu::@21/(byte*) print_line_cursor#97 )
(byte*) print_screen#64 ← phi( menu::@21/(byte*) print_screen#78 )
(byte) dtv_control#143 ← phi( menu::@21/(byte) dtv_control#170 )
(byte) keyboard_key_pressed::return#33 ← phi( menu::@21/(byte) keyboard_key_pressed::return#12 )
(byte~) menu::$69 ← (byte) keyboard_key_pressed::return#33
(bool~) menu::$70 ← (byte~) menu::$69 != (number) 0
(bool~) menu::$71 ← ! (bool~) menu::$70
if((bool~) menu::$71) goto menu::@22
to:menu::@46
menu::@44: scope:[menu] from menu::@71
(byte*) print_char_cursor#66 ← phi( menu::@71/(byte*) print_char_cursor#81 )
(byte*) print_line_cursor#64 ← phi( menu::@71/(byte*) print_line_cursor#81 )
(byte*) print_screen#46 ← phi( menu::@71/(byte*) print_screen#62 )
(byte) dtv_control#110 ← phi( menu::@71/(byte) dtv_control#142 )
call mode_sixsfred
to:menu::@74
menu::@74: scope:[menu] from menu::@44
(byte*) print_char_cursor#47 ← phi( menu::@44/(byte*) print_char_cursor#66 )
(byte*) print_line_cursor#45 ← phi( menu::@44/(byte*) print_line_cursor#64 )
(byte*) print_screen#28 ← phi( menu::@44/(byte*) print_screen#46 )
(byte) dtv_control#67 ← phi( menu::@44/(byte) dtv_control#44 )
(byte) dtv_control#12 ← (byte) dtv_control#67
to:menu::@return
menu::@22: scope:[menu] from menu::@73
(byte) dtv_control#171 ← phi( menu::@73/(byte) dtv_control#143 )
(byte*) print_char_cursor#82 ← phi( menu::@73/(byte*) print_char_cursor#83 )
(byte*) print_line_cursor#82 ← phi( menu::@73/(byte*) print_line_cursor#83 )
(byte*) print_screen#63 ← phi( menu::@73/(byte*) print_screen#64 )
(byte) keyboard_key_pressed::key#11 ← (byte) KEY_E#0
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#13 ← (byte) keyboard_key_pressed::return#1
to:menu::@75
menu::@75: scope:[menu] from menu::@22
(byte) dtv_control#132 ← phi( menu::@22/(byte) dtv_control#171 )
(byte*) print_char_cursor#56 ← phi( menu::@22/(byte*) print_char_cursor#82 )
(byte*) print_line_cursor#54 ← phi( menu::@22/(byte*) print_line_cursor#82 )
(byte*) print_screen#36 ← phi( menu::@22/(byte*) print_screen#63 )
(byte) keyboard_key_pressed::return#34 ← phi( menu::@22/(byte) keyboard_key_pressed::return#13 )
(byte~) menu::$73 ← (byte) keyboard_key_pressed::return#34
(bool~) menu::$74 ← (byte~) menu::$73 != (number) 0
(bool~) menu::$75 ← ! (bool~) menu::$74
if((bool~) menu::$75) goto menu::@9
to:menu::@48
menu::@46: scope:[menu] from menu::@73
(byte*) print_char_cursor#67 ← phi( menu::@73/(byte*) print_char_cursor#83 )
(byte*) print_line_cursor#65 ← phi( menu::@73/(byte*) print_line_cursor#83 )
(byte*) print_screen#47 ← phi( menu::@73/(byte*) print_screen#64 )
(byte) dtv_control#111 ← phi( menu::@73/(byte) dtv_control#143 )
call mode_8bpppixelcell
to:menu::@76
menu::@76: scope:[menu] from menu::@46
(byte*) print_char_cursor#48 ← phi( menu::@46/(byte*) print_char_cursor#67 )
(byte*) print_line_cursor#46 ← phi( menu::@46/(byte*) print_line_cursor#65 )
(byte*) print_screen#29 ← phi( menu::@46/(byte*) print_screen#47 )
(byte) dtv_control#68 ← phi( menu::@46/(byte) dtv_control#50 )
(byte) dtv_control#13 ← (byte) dtv_control#68
to:menu::@return
menu::@48: scope:[menu] from menu::@75
(byte*) print_char_cursor#68 ← phi( menu::@75/(byte*) print_char_cursor#56 )
(byte*) print_line_cursor#66 ← phi( menu::@75/(byte*) print_line_cursor#54 )
(byte*) print_screen#48 ← phi( menu::@75/(byte*) print_screen#36 )
(byte) dtv_control#112 ← phi( menu::@75/(byte) dtv_control#132 )
call mode_8bppchunkybmm
to:menu::@77
menu::@77: scope:[menu] from menu::@48
(byte*) print_char_cursor#49 ← phi( menu::@48/(byte*) print_char_cursor#68 )
(byte*) print_line_cursor#47 ← phi( menu::@48/(byte*) print_line_cursor#66 )
(byte*) print_screen#30 ← phi( menu::@48/(byte*) print_screen#48 )
(byte) dtv_control#69 ← phi( menu::@48/(byte) dtv_control#53 )
(byte) dtv_control#14 ← (byte) dtv_control#69
to:menu::@return
@58: scope:[] from @57
(byte*) print_char_cursor#69 ← phi( @57/(byte*) print_char_cursor#84 )
(byte*) print_line_cursor#67 ← phi( @57/(byte*) print_line_cursor#84 )
(byte*) print_screen#49 ← phi( @57/(byte*) print_screen#65 )
(byte) dtv_control#15 ← (number) 0
to:@71
mode_ctrl: scope:[mode_ctrl] from mode_8bppchunkybmm::@11 mode_8bpppixelcell::@14 mode_ecmchar::@6 mode_hicolecmchar::@6 mode_hicolmcchar::@6 mode_hicolstdchar::@6 mode_mcchar::@6 mode_sixsfred2::@14 mode_sixsfred::@14 mode_stdbitmap::@9 mode_stdchar::@6 mode_twoplanebitmap::@18
(byte) dtv_control#144 ← phi( mode_8bppchunkybmm::@11/(byte) dtv_control#128 mode_8bpppixelcell::@14/(byte) dtv_control#127 mode_ecmchar::@6/(byte) dtv_control#118 mode_hicolecmchar::@6/(byte) dtv_control#122 mode_hicolmcchar::@6/(byte) dtv_control#123 mode_hicolstdchar::@6/(byte) dtv_control#121 mode_mcchar::@6/(byte) dtv_control#119 mode_sixsfred2::@14/(byte) dtv_control#126 mode_sixsfred::@14/(byte) dtv_control#125 mode_stdbitmap::@9/(byte) dtv_control#120 mode_stdchar::@6/(byte) dtv_control#117 mode_twoplanebitmap::@18/(byte) dtv_control#124 )
to:mode_ctrl::@1
mode_ctrl::@1: scope:[mode_ctrl] from mode_ctrl mode_ctrl::@19 mode_ctrl::@30
(byte) dtv_control#114 ← phi( mode_ctrl/(byte) dtv_control#144 mode_ctrl::@19/(byte) dtv_control#72 mode_ctrl::@30/(byte) dtv_control#17 )
if(true) goto mode_ctrl::@4
to:mode_ctrl::@return
mode_ctrl::@4: scope:[mode_ctrl] from mode_ctrl::@1 mode_ctrl::@4
(byte) dtv_control#172 ← phi( mode_ctrl::@1/(byte) dtv_control#114 mode_ctrl::@4/(byte) dtv_control#172 )
(bool~) mode_ctrl::$0 ← *((byte*) RASTER#0) != (number) $ff
if((bool~) mode_ctrl::$0) goto mode_ctrl::@4
to:mode_ctrl::@6
mode_ctrl::@6: scope:[mode_ctrl] from mode_ctrl::@4
(byte) dtv_control#145 ← phi( mode_ctrl::@4/(byte) dtv_control#172 )
(byte) keyboard_key_pressed::key#12 ← (byte) KEY_SPACE#0
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#14 ← (byte) keyboard_key_pressed::return#1
to:mode_ctrl::@32
mode_ctrl::@32: scope:[mode_ctrl] from mode_ctrl::@6
(byte) dtv_control#113 ← phi( mode_ctrl::@6/(byte) dtv_control#145 )
(byte) keyboard_key_pressed::return#35 ← phi( mode_ctrl::@6/(byte) keyboard_key_pressed::return#14 )
(byte~) mode_ctrl::$1 ← (byte) keyboard_key_pressed::return#35
(bool~) mode_ctrl::$2 ← (byte~) mode_ctrl::$1 != (number) 0
(bool~) mode_ctrl::$3 ← ! (bool~) mode_ctrl::$2
if((bool~) mode_ctrl::$3) goto mode_ctrl::@12
to:mode_ctrl::@return
mode_ctrl::@12: scope:[mode_ctrl] from mode_ctrl::@32
(byte) dtv_control#70 ← phi( mode_ctrl::@32/(byte) dtv_control#113 )
(byte) mode_ctrl::ctrl#0 ← (byte) dtv_control#70
(byte) keyboard_key_pressed::key#13 ← (byte) KEY_L#0
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#15 ← (byte) keyboard_key_pressed::return#1
to:mode_ctrl::@33
mode_ctrl::@33: scope:[mode_ctrl] from mode_ctrl::@12
(byte) dtv_control#281 ← phi( mode_ctrl::@12/(byte) dtv_control#70 )
(byte) mode_ctrl::ctrl#16 ← phi( mode_ctrl::@12/(byte) mode_ctrl::ctrl#0 )
(byte) keyboard_key_pressed::return#36 ← phi( mode_ctrl::@12/(byte) keyboard_key_pressed::return#15 )
(byte~) mode_ctrl::$4 ← (byte) keyboard_key_pressed::return#36
(bool~) mode_ctrl::$5 ← (byte~) mode_ctrl::$4 != (number) 0
(bool~) mode_ctrl::$6 ← ! (bool~) mode_ctrl::$5
if((bool~) mode_ctrl::$6) goto mode_ctrl::@13
to:mode_ctrl::@23
mode_ctrl::@return: scope:[mode_ctrl] from mode_ctrl::@1 mode_ctrl::@32
(byte) dtv_control#71 ← phi( mode_ctrl::@1/(byte) dtv_control#114 mode_ctrl::@32/(byte) dtv_control#113 )
(byte) dtv_control#16 ← (byte) dtv_control#71
return
to:@return
mode_ctrl::@13: scope:[mode_ctrl] from mode_ctrl::@23 mode_ctrl::@33
(byte) dtv_control#275 ← phi( mode_ctrl::@23/(byte) dtv_control#280 mode_ctrl::@33/(byte) dtv_control#281 )
(byte) mode_ctrl::ctrl#23 ← phi( mode_ctrl::@23/(byte) mode_ctrl::ctrl#1 mode_ctrl::@33/(byte) mode_ctrl::ctrl#16 )
(byte) keyboard_key_pressed::key#14 ← (byte) KEY_H#0
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#16 ← (byte) keyboard_key_pressed::return#1
to:mode_ctrl::@34
mode_ctrl::@34: scope:[mode_ctrl] from mode_ctrl::@13
(byte) dtv_control#270 ← phi( mode_ctrl::@13/(byte) dtv_control#275 )
(byte) mode_ctrl::ctrl#17 ← phi( mode_ctrl::@13/(byte) mode_ctrl::ctrl#23 )
(byte) keyboard_key_pressed::return#37 ← phi( mode_ctrl::@13/(byte) keyboard_key_pressed::return#16 )
(byte~) mode_ctrl::$8 ← (byte) keyboard_key_pressed::return#37
(bool~) mode_ctrl::$9 ← (byte~) mode_ctrl::$8 != (number) 0
(bool~) mode_ctrl::$10 ← ! (bool~) mode_ctrl::$9
if((bool~) mode_ctrl::$10) goto mode_ctrl::@14
to:mode_ctrl::@24
mode_ctrl::@23: scope:[mode_ctrl] from mode_ctrl::@33
(byte) dtv_control#280 ← phi( mode_ctrl::@33/(byte) dtv_control#281 )
(byte) mode_ctrl::ctrl#8 ← phi( mode_ctrl::@33/(byte) mode_ctrl::ctrl#16 )
(byte~) mode_ctrl::$7 ← (byte) mode_ctrl::ctrl#8 | (byte) DTV_LINEAR#0
(byte) mode_ctrl::ctrl#1 ← (byte~) mode_ctrl::$7
to:mode_ctrl::@13
mode_ctrl::@14: scope:[mode_ctrl] from mode_ctrl::@24 mode_ctrl::@34
(byte) dtv_control#263 ← phi( mode_ctrl::@24/(byte) dtv_control#269 mode_ctrl::@34/(byte) dtv_control#270 )
(byte) mode_ctrl::ctrl#24 ← phi( mode_ctrl::@24/(byte) mode_ctrl::ctrl#2 mode_ctrl::@34/(byte) mode_ctrl::ctrl#17 )
(byte) keyboard_key_pressed::key#15 ← (byte) KEY_O#0
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#17 ← (byte) keyboard_key_pressed::return#1
to:mode_ctrl::@35
mode_ctrl::@35: scope:[mode_ctrl] from mode_ctrl::@14
(byte) dtv_control#256 ← phi( mode_ctrl::@14/(byte) dtv_control#263 )
(byte) mode_ctrl::ctrl#18 ← phi( mode_ctrl::@14/(byte) mode_ctrl::ctrl#24 )
(byte) keyboard_key_pressed::return#38 ← phi( mode_ctrl::@14/(byte) keyboard_key_pressed::return#17 )
(byte~) mode_ctrl::$12 ← (byte) keyboard_key_pressed::return#38
(bool~) mode_ctrl::$13 ← (byte~) mode_ctrl::$12 != (number) 0
(bool~) mode_ctrl::$14 ← ! (bool~) mode_ctrl::$13
if((bool~) mode_ctrl::$14) goto mode_ctrl::@15
to:mode_ctrl::@25
mode_ctrl::@24: scope:[mode_ctrl] from mode_ctrl::@34
(byte) dtv_control#269 ← phi( mode_ctrl::@34/(byte) dtv_control#270 )
(byte) mode_ctrl::ctrl#9 ← phi( mode_ctrl::@34/(byte) mode_ctrl::ctrl#17 )
(byte~) mode_ctrl::$11 ← (byte) mode_ctrl::ctrl#9 | (byte) DTV_HIGHCOLOR#0
(byte) mode_ctrl::ctrl#2 ← (byte~) mode_ctrl::$11
to:mode_ctrl::@14
mode_ctrl::@15: scope:[mode_ctrl] from mode_ctrl::@25 mode_ctrl::@35
(byte) dtv_control#246 ← phi( mode_ctrl::@25/(byte) dtv_control#255 mode_ctrl::@35/(byte) dtv_control#256 )
(byte) mode_ctrl::ctrl#25 ← phi( mode_ctrl::@25/(byte) mode_ctrl::ctrl#3 mode_ctrl::@35/(byte) mode_ctrl::ctrl#18 )
(byte) keyboard_key_pressed::key#16 ← (byte) KEY_B#0
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#18 ← (byte) keyboard_key_pressed::return#1
to:mode_ctrl::@36
mode_ctrl::@36: scope:[mode_ctrl] from mode_ctrl::@15
(byte) dtv_control#238 ← phi( mode_ctrl::@15/(byte) dtv_control#246 )
(byte) mode_ctrl::ctrl#19 ← phi( mode_ctrl::@15/(byte) mode_ctrl::ctrl#25 )
(byte) keyboard_key_pressed::return#39 ← phi( mode_ctrl::@15/(byte) keyboard_key_pressed::return#18 )
(byte~) mode_ctrl::$16 ← (byte) keyboard_key_pressed::return#39
(bool~) mode_ctrl::$17 ← (byte~) mode_ctrl::$16 != (number) 0
(bool~) mode_ctrl::$18 ← ! (bool~) mode_ctrl::$17
if((bool~) mode_ctrl::$18) goto mode_ctrl::@16
to:mode_ctrl::@26
mode_ctrl::@25: scope:[mode_ctrl] from mode_ctrl::@35
(byte) dtv_control#255 ← phi( mode_ctrl::@35/(byte) dtv_control#256 )
(byte) mode_ctrl::ctrl#10 ← phi( mode_ctrl::@35/(byte) mode_ctrl::ctrl#18 )
(byte~) mode_ctrl::$15 ← (byte) mode_ctrl::ctrl#10 | (byte) DTV_OVERSCAN#0
(byte) mode_ctrl::ctrl#3 ← (byte~) mode_ctrl::$15
to:mode_ctrl::@15
mode_ctrl::@16: scope:[mode_ctrl] from mode_ctrl::@26 mode_ctrl::@36
(byte) dtv_control#221 ← phi( mode_ctrl::@26/(byte) dtv_control#237 mode_ctrl::@36/(byte) dtv_control#238 )
(byte) mode_ctrl::ctrl#26 ← phi( mode_ctrl::@26/(byte) mode_ctrl::ctrl#4 mode_ctrl::@36/(byte) mode_ctrl::ctrl#19 )
(byte) keyboard_key_pressed::key#17 ← (byte) KEY_U#0
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#19 ← (byte) keyboard_key_pressed::return#1
to:mode_ctrl::@37
mode_ctrl::@37: scope:[mode_ctrl] from mode_ctrl::@16
(byte) dtv_control#205 ← phi( mode_ctrl::@16/(byte) dtv_control#221 )
(byte) mode_ctrl::ctrl#20 ← phi( mode_ctrl::@16/(byte) mode_ctrl::ctrl#26 )
(byte) keyboard_key_pressed::return#40 ← phi( mode_ctrl::@16/(byte) keyboard_key_pressed::return#19 )
(byte~) mode_ctrl::$20 ← (byte) keyboard_key_pressed::return#40
(bool~) mode_ctrl::$21 ← (byte~) mode_ctrl::$20 != (number) 0
(bool~) mode_ctrl::$22 ← ! (bool~) mode_ctrl::$21
if((bool~) mode_ctrl::$22) goto mode_ctrl::@17
to:mode_ctrl::@27
mode_ctrl::@26: scope:[mode_ctrl] from mode_ctrl::@36
(byte) dtv_control#237 ← phi( mode_ctrl::@36/(byte) dtv_control#238 )
(byte) mode_ctrl::ctrl#11 ← phi( mode_ctrl::@36/(byte) mode_ctrl::ctrl#19 )
(byte~) mode_ctrl::$19 ← (byte) mode_ctrl::ctrl#11 | (byte) DTV_BORDER_OFF#0
(byte) mode_ctrl::ctrl#4 ← (byte~) mode_ctrl::$19
to:mode_ctrl::@16
mode_ctrl::@17: scope:[mode_ctrl] from mode_ctrl::@27 mode_ctrl::@37
(byte) dtv_control#189 ← phi( mode_ctrl::@27/(byte) dtv_control#204 mode_ctrl::@37/(byte) dtv_control#205 )
(byte) mode_ctrl::ctrl#27 ← phi( mode_ctrl::@27/(byte) mode_ctrl::ctrl#5 mode_ctrl::@37/(byte) mode_ctrl::ctrl#20 )
(byte) keyboard_key_pressed::key#18 ← (byte) KEY_C#0
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#20 ← (byte) keyboard_key_pressed::return#1
to:mode_ctrl::@38
mode_ctrl::@38: scope:[mode_ctrl] from mode_ctrl::@17
(byte) dtv_control#174 ← phi( mode_ctrl::@17/(byte) dtv_control#189 )
(byte) mode_ctrl::ctrl#21 ← phi( mode_ctrl::@17/(byte) mode_ctrl::ctrl#27 )
(byte) keyboard_key_pressed::return#41 ← phi( mode_ctrl::@17/(byte) keyboard_key_pressed::return#20 )
(byte~) mode_ctrl::$24 ← (byte) keyboard_key_pressed::return#41
(bool~) mode_ctrl::$25 ← (byte~) mode_ctrl::$24 != (number) 0
(bool~) mode_ctrl::$26 ← ! (bool~) mode_ctrl::$25
if((bool~) mode_ctrl::$26) goto mode_ctrl::@18
to:mode_ctrl::@28
mode_ctrl::@27: scope:[mode_ctrl] from mode_ctrl::@37
(byte) dtv_control#204 ← phi( mode_ctrl::@37/(byte) dtv_control#205 )
(byte) mode_ctrl::ctrl#12 ← phi( mode_ctrl::@37/(byte) mode_ctrl::ctrl#20 )
(byte~) mode_ctrl::$23 ← (byte) mode_ctrl::ctrl#12 | (byte) DTV_CHUNKY#0
(byte) mode_ctrl::ctrl#5 ← (byte~) mode_ctrl::$23
to:mode_ctrl::@17
mode_ctrl::@18: scope:[mode_ctrl] from mode_ctrl::@28 mode_ctrl::@38
(byte) dtv_control#146 ← phi( mode_ctrl::@28/(byte) dtv_control#173 mode_ctrl::@38/(byte) dtv_control#174 )
(byte) mode_ctrl::ctrl#28 ← phi( mode_ctrl::@28/(byte) mode_ctrl::ctrl#6 mode_ctrl::@38/(byte) mode_ctrl::ctrl#21 )
(byte) keyboard_key_pressed::key#19 ← (byte) KEY_0#0
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#21 ← (byte) keyboard_key_pressed::return#1
to:mode_ctrl::@39
mode_ctrl::@39: scope:[mode_ctrl] from mode_ctrl::@18
(byte) dtv_control#116 ← phi( mode_ctrl::@18/(byte) dtv_control#146 )
(byte) mode_ctrl::ctrl#22 ← phi( mode_ctrl::@18/(byte) mode_ctrl::ctrl#28 )
(byte) keyboard_key_pressed::return#42 ← phi( mode_ctrl::@18/(byte) keyboard_key_pressed::return#21 )
(byte~) mode_ctrl::$28 ← (byte) keyboard_key_pressed::return#42
(bool~) mode_ctrl::$29 ← (byte~) mode_ctrl::$28 != (number) 0
(bool~) mode_ctrl::$30 ← ! (bool~) mode_ctrl::$29
if((bool~) mode_ctrl::$30) goto mode_ctrl::@19
to:mode_ctrl::@29
mode_ctrl::@28: scope:[mode_ctrl] from mode_ctrl::@38
(byte) dtv_control#173 ← phi( mode_ctrl::@38/(byte) dtv_control#174 )
(byte) mode_ctrl::ctrl#13 ← phi( mode_ctrl::@38/(byte) mode_ctrl::ctrl#21 )
(byte~) mode_ctrl::$27 ← (byte) mode_ctrl::ctrl#13 | (byte) DTV_COLORRAM_OFF#0
(byte) mode_ctrl::ctrl#6 ← (byte~) mode_ctrl::$27
to:mode_ctrl::@18
mode_ctrl::@19: scope:[mode_ctrl] from mode_ctrl::@29 mode_ctrl::@39
(byte) dtv_control#72 ← phi( mode_ctrl::@29/(byte) dtv_control#115 mode_ctrl::@39/(byte) dtv_control#116 )
(byte) mode_ctrl::ctrl#14 ← phi( mode_ctrl::@29/(byte) mode_ctrl::ctrl#7 mode_ctrl::@39/(byte) mode_ctrl::ctrl#22 )
(bool~) mode_ctrl::$31 ← (byte) mode_ctrl::ctrl#14 != (byte) dtv_control#72
(bool~) mode_ctrl::$32 ← ! (bool~) mode_ctrl::$31
if((bool~) mode_ctrl::$32) goto mode_ctrl::@1
to:mode_ctrl::@30
mode_ctrl::@29: scope:[mode_ctrl] from mode_ctrl::@39
(byte) dtv_control#115 ← phi( mode_ctrl::@39/(byte) dtv_control#116 )
(byte) mode_ctrl::ctrl#7 ← (number) 0
to:mode_ctrl::@19
mode_ctrl::@30: scope:[mode_ctrl] from mode_ctrl::@19
(byte) mode_ctrl::ctrl#15 ← phi( mode_ctrl::@19/(byte) mode_ctrl::ctrl#14 )
(byte) dtv_control#17 ← (byte) mode_ctrl::ctrl#15
*((byte*) DTV_CONTROL#0) ← (byte) mode_ctrl::ctrl#15
*((byte*) BORDERCOL#0) ← (byte) mode_ctrl::ctrl#15
to:mode_ctrl::@1
mode_stdchar: scope:[mode_stdchar] from menu::@26
(byte*) mode_stdchar::SCREEN#0 ← ((byte*)) (number) $8000
(byte*) mode_stdchar::CHARSET#0 ← ((byte*)) (number) $9000
(byte*) mode_stdchar::COLORS#0 ← ((byte*)) (number) $d800
(dword~) mode_stdchar::$0 ← ((dword)) (byte*) mode_stdchar::CHARSET#0
(number~) mode_stdchar::$1 ← (dword~) mode_stdchar::$0 / (number) $10000
(byte~) mode_stdchar::$2 ← ((byte)) (number~) mode_stdchar::$1
*((byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte~) mode_stdchar::$2
(number~) mode_stdchar::$3 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (number) $400
(word~) mode_stdchar::$4 ← ((word)) (number~) mode_stdchar::$3
(byte~) mode_stdchar::$5 ← < (word~) mode_stdchar::$4
*((byte*) DTV_COLOR_BANK_LO#0) ← (byte~) mode_stdchar::$5
(number~) mode_stdchar::$6 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (number) $400
(word~) mode_stdchar::$7 ← ((word)) (number~) mode_stdchar::$6
(byte~) mode_stdchar::$8 ← > (word~) mode_stdchar::$7
*((byte*) DTV_COLOR_BANK_HI#0) ← (byte~) mode_stdchar::$8
(byte) dtv_control#18 ← (number) 0
*((byte*) DTV_CONTROL#0) ← (number) 0
*((byte*) CIA2_PORT_A_DDR#0) ← (number) 3
(word~) mode_stdchar::$9 ← ((word)) (byte*) mode_stdchar::CHARSET#0
(number~) mode_stdchar::$10 ← (word~) mode_stdchar::$9 / (number) $4000
(byte~) mode_stdchar::$11 ← ((byte)) (number~) mode_stdchar::$10
(number~) mode_stdchar::$12 ← (number) 3 ^ (byte~) mode_stdchar::$11
*((byte*) CIA2_PORT_A#0) ← (number~) mode_stdchar::$12
(byte~) mode_stdchar::$13 ← (byte) VIC_DEN#0 | (byte) VIC_RSEL#0
(number~) mode_stdchar::$14 ← (byte~) mode_stdchar::$13 | (number) 3
*((byte*) VIC_CONTROL#0) ← (number~) mode_stdchar::$14
*((byte*) VIC_CONTROL2#0) ← (byte) VIC_CSEL#0
(word~) mode_stdchar::$15 ← ((word)) (byte*) mode_stdchar::SCREEN#0
(number~) mode_stdchar::$16 ← (word~) mode_stdchar::$15 & (number) $3fff
(number~) mode_stdchar::$17 ← (number~) mode_stdchar::$16 / (number) $40
(word~) mode_stdchar::$18 ← ((word)) (byte*) mode_stdchar::CHARSET#0
(number~) mode_stdchar::$19 ← (word~) mode_stdchar::$18 & (number) $3fff
(number~) mode_stdchar::$20 ← (number~) mode_stdchar::$19 / (number) $400
(number~) mode_stdchar::$21 ← (number~) mode_stdchar::$17 | (number~) mode_stdchar::$20
(byte~) mode_stdchar::$22 ← ((byte)) (number~) mode_stdchar::$21
*((byte*) VIC_MEMORY#0) ← (byte~) mode_stdchar::$22
(byte) mode_stdchar::i#0 ← (byte) 0
to:mode_stdchar::@1
mode_stdchar::@1: scope:[mode_stdchar] from mode_stdchar mode_stdchar::@1
(byte) dtv_control#222 ← phi( mode_stdchar/(byte) dtv_control#18 mode_stdchar::@1/(byte) dtv_control#222 )
(byte) mode_stdchar::i#2 ← phi( mode_stdchar/(byte) mode_stdchar::i#0 mode_stdchar::@1/(byte) mode_stdchar::i#1 )
*((byte*) DTV_PALETTE#0 + (byte) mode_stdchar::i#2) ← *((byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdchar::i#2)
(byte) mode_stdchar::i#1 ← (byte) mode_stdchar::i#2 + rangenext(0,$f)
(bool~) mode_stdchar::$24 ← (byte) mode_stdchar::i#1 != rangelast(0,$f)
if((bool~) mode_stdchar::$24) goto mode_stdchar::@1
to:mode_stdchar::@2
mode_stdchar::@2: scope:[mode_stdchar] from mode_stdchar::@1
(byte) dtv_control#206 ← phi( mode_stdchar::@1/(byte) dtv_control#222 )
*((byte*) BGCOL#0) ← (number) 0
*((byte*) BORDERCOL#0) ← (number) 0
(byte*) mode_stdchar::col#0 ← (byte*) mode_stdchar::COLORS#0
(byte*) mode_stdchar::ch#0 ← (byte*) mode_stdchar::SCREEN#0
(byte) mode_stdchar::cy#0 ← (byte) 0
to:mode_stdchar::@3
mode_stdchar::@3: scope:[mode_stdchar] from mode_stdchar::@2 mode_stdchar::@5
(byte) dtv_control#190 ← phi( mode_stdchar::@2/(byte) dtv_control#206 mode_stdchar::@5/(byte) dtv_control#147 )
(byte*) mode_stdchar::ch#3 ← phi( mode_stdchar::@2/(byte*) mode_stdchar::ch#0 mode_stdchar::@5/(byte*) mode_stdchar::ch#4 )
(byte*) mode_stdchar::col#3 ← phi( mode_stdchar::@2/(byte*) mode_stdchar::col#0 mode_stdchar::@5/(byte*) mode_stdchar::col#4 )
(byte) mode_stdchar::cy#4 ← phi( mode_stdchar::@2/(byte) mode_stdchar::cy#0 mode_stdchar::@5/(byte) mode_stdchar::cy#1 )
(byte) mode_stdchar::cx#0 ← (byte) 0
to:mode_stdchar::@4
mode_stdchar::@4: scope:[mode_stdchar] from mode_stdchar::@3 mode_stdchar::@4
(byte) dtv_control#175 ← phi( mode_stdchar::@3/(byte) dtv_control#190 mode_stdchar::@4/(byte) dtv_control#175 )
(byte*) mode_stdchar::ch#2 ← phi( mode_stdchar::@3/(byte*) mode_stdchar::ch#3 mode_stdchar::@4/(byte*) mode_stdchar::ch#1 )
(byte*) mode_stdchar::col#2 ← phi( mode_stdchar::@3/(byte*) mode_stdchar::col#3 mode_stdchar::@4/(byte*) mode_stdchar::col#1 )
(byte) mode_stdchar::cy#2 ← phi( mode_stdchar::@3/(byte) mode_stdchar::cy#4 mode_stdchar::@4/(byte) mode_stdchar::cy#2 )
(byte) mode_stdchar::cx#2 ← phi( mode_stdchar::@3/(byte) mode_stdchar::cx#0 mode_stdchar::@4/(byte) mode_stdchar::cx#1 )
(byte~) mode_stdchar::$25 ← (byte) mode_stdchar::cx#2 + (byte) mode_stdchar::cy#2
(number~) mode_stdchar::$26 ← (byte~) mode_stdchar::$25 & (number) $f
*((byte*) mode_stdchar::col#2) ← (number~) mode_stdchar::$26
(byte*) mode_stdchar::col#1 ← ++ (byte*) mode_stdchar::col#2
(number~) mode_stdchar::$27 ← (byte) mode_stdchar::cy#2 & (number) $f
(number~) mode_stdchar::$28 ← (number~) mode_stdchar::$27 * (number) $10
(number~) mode_stdchar::$29 ← (byte) mode_stdchar::cx#2 & (number) $f
(number~) mode_stdchar::$30 ← (number~) mode_stdchar::$28 | (number~) mode_stdchar::$29
*((byte*) mode_stdchar::ch#2) ← (number~) mode_stdchar::$30
(byte*) mode_stdchar::ch#1 ← ++ (byte*) mode_stdchar::ch#2
(byte) mode_stdchar::cx#1 ← (byte) mode_stdchar::cx#2 + rangenext(0,$27)
(bool~) mode_stdchar::$31 ← (byte) mode_stdchar::cx#1 != rangelast(0,$27)
if((bool~) mode_stdchar::$31) goto mode_stdchar::@4
to:mode_stdchar::@5
mode_stdchar::@5: scope:[mode_stdchar] from mode_stdchar::@4
(byte) dtv_control#147 ← phi( mode_stdchar::@4/(byte) dtv_control#175 )
(byte*) mode_stdchar::ch#4 ← phi( mode_stdchar::@4/(byte*) mode_stdchar::ch#1 )
(byte*) mode_stdchar::col#4 ← phi( mode_stdchar::@4/(byte*) mode_stdchar::col#1 )
(byte) mode_stdchar::cy#3 ← phi( mode_stdchar::@4/(byte) mode_stdchar::cy#2 )
(byte) mode_stdchar::cy#1 ← (byte) mode_stdchar::cy#3 + rangenext(0,$18)
(bool~) mode_stdchar::$32 ← (byte) mode_stdchar::cy#1 != rangelast(0,$18)
if((bool~) mode_stdchar::$32) goto mode_stdchar::@3
to:mode_stdchar::@6
mode_stdchar::@6: scope:[mode_stdchar] from mode_stdchar::@5
(byte) dtv_control#117 ← phi( mode_stdchar::@5/(byte) dtv_control#147 )
call mode_ctrl
to:mode_stdchar::@7
mode_stdchar::@7: scope:[mode_stdchar] from mode_stdchar::@6
(byte) dtv_control#73 ← phi( mode_stdchar::@6/(byte) dtv_control#16 )
(byte) dtv_control#19 ← (byte) dtv_control#73
to:mode_stdchar::@return
mode_stdchar::@return: scope:[mode_stdchar] from mode_stdchar::@7
(byte) dtv_control#74 ← phi( mode_stdchar::@7/(byte) dtv_control#19 )
(byte) dtv_control#20 ← (byte) dtv_control#74
return
to:@return
mode_ecmchar: scope:[mode_ecmchar] from menu::@28
(byte*) mode_ecmchar::SCREEN#0 ← ((byte*)) (number) $8000
(byte*) mode_ecmchar::CHARSET#0 ← ((byte*)) (number) $9000
(byte*) mode_ecmchar::COLORS#0 ← ((byte*)) (number) $d800
(dword~) mode_ecmchar::$0 ← ((dword)) (byte*) mode_ecmchar::CHARSET#0
(number~) mode_ecmchar::$1 ← (dword~) mode_ecmchar::$0 / (number) $10000
(byte~) mode_ecmchar::$2 ← ((byte)) (number~) mode_ecmchar::$1
*((byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte~) mode_ecmchar::$2
(number~) mode_ecmchar::$3 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (number) $400
(word~) mode_ecmchar::$4 ← ((word)) (number~) mode_ecmchar::$3
(byte~) mode_ecmchar::$5 ← < (word~) mode_ecmchar::$4
*((byte*) DTV_COLOR_BANK_LO#0) ← (byte~) mode_ecmchar::$5
(number~) mode_ecmchar::$6 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (number) $400
(word~) mode_ecmchar::$7 ← ((word)) (number~) mode_ecmchar::$6
(byte~) mode_ecmchar::$8 ← > (word~) mode_ecmchar::$7
*((byte*) DTV_COLOR_BANK_HI#0) ← (byte~) mode_ecmchar::$8
(byte) dtv_control#21 ← (number) 0
*((byte*) DTV_CONTROL#0) ← (number) 0
*((byte*) CIA2_PORT_A_DDR#0) ← (number) 3
(word~) mode_ecmchar::$9 ← ((word)) (byte*) mode_ecmchar::CHARSET#0
(number~) mode_ecmchar::$10 ← (word~) mode_ecmchar::$9 / (number) $4000
(byte~) mode_ecmchar::$11 ← ((byte)) (number~) mode_ecmchar::$10
(number~) mode_ecmchar::$12 ← (number) 3 ^ (byte~) mode_ecmchar::$11
*((byte*) CIA2_PORT_A#0) ← (number~) mode_ecmchar::$12
(byte~) mode_ecmchar::$13 ← (byte) VIC_DEN#0 | (byte) VIC_RSEL#0
(byte~) mode_ecmchar::$14 ← (byte~) mode_ecmchar::$13 | (byte) VIC_ECM#0
(number~) mode_ecmchar::$15 ← (byte~) mode_ecmchar::$14 | (number) 3
*((byte*) VIC_CONTROL#0) ← (number~) mode_ecmchar::$15
*((byte*) VIC_CONTROL2#0) ← (byte) VIC_CSEL#0
(word~) mode_ecmchar::$16 ← ((word)) (byte*) mode_ecmchar::SCREEN#0
(number~) mode_ecmchar::$17 ← (word~) mode_ecmchar::$16 & (number) $3fff
(number~) mode_ecmchar::$18 ← (number~) mode_ecmchar::$17 / (number) $40
(word~) mode_ecmchar::$19 ← ((word)) (byte*) mode_ecmchar::CHARSET#0
(number~) mode_ecmchar::$20 ← (word~) mode_ecmchar::$19 & (number) $3fff
(number~) mode_ecmchar::$21 ← (number~) mode_ecmchar::$20 / (number) $400
(number~) mode_ecmchar::$22 ← (number~) mode_ecmchar::$18 | (number~) mode_ecmchar::$21
(byte~) mode_ecmchar::$23 ← ((byte)) (number~) mode_ecmchar::$22
*((byte*) VIC_MEMORY#0) ← (byte~) mode_ecmchar::$23
(byte) mode_ecmchar::i#0 ← (byte) 0
to:mode_ecmchar::@1
mode_ecmchar::@1: scope:[mode_ecmchar] from mode_ecmchar mode_ecmchar::@1
(byte) dtv_control#223 ← phi( mode_ecmchar/(byte) dtv_control#21 mode_ecmchar::@1/(byte) dtv_control#223 )
(byte) mode_ecmchar::i#2 ← phi( mode_ecmchar/(byte) mode_ecmchar::i#0 mode_ecmchar::@1/(byte) mode_ecmchar::i#1 )
*((byte*) DTV_PALETTE#0 + (byte) mode_ecmchar::i#2) ← *((byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_ecmchar::i#2)
(byte) mode_ecmchar::i#1 ← (byte) mode_ecmchar::i#2 + rangenext(0,$f)
(bool~) mode_ecmchar::$25 ← (byte) mode_ecmchar::i#1 != rangelast(0,$f)
if((bool~) mode_ecmchar::$25) goto mode_ecmchar::@1
to:mode_ecmchar::@2
mode_ecmchar::@2: scope:[mode_ecmchar] from mode_ecmchar::@1
(byte) dtv_control#207 ← phi( mode_ecmchar::@1/(byte) dtv_control#223 )
*((byte*) BORDERCOL#0) ← (number) 0
*((byte*) BGCOL1#0) ← (number) 0
*((byte*) BGCOL2#0) ← (number) 2
*((byte*) BGCOL3#0) ← (number) 5
*((byte*) BGCOL4#0) ← (number) 6
(byte*) mode_ecmchar::col#0 ← (byte*) mode_ecmchar::COLORS#0
(byte*) mode_ecmchar::ch#0 ← (byte*) mode_ecmchar::SCREEN#0
(byte) mode_ecmchar::cy#0 ← (byte) 0
to:mode_ecmchar::@3
mode_ecmchar::@3: scope:[mode_ecmchar] from mode_ecmchar::@2 mode_ecmchar::@5
(byte) dtv_control#191 ← phi( mode_ecmchar::@2/(byte) dtv_control#207 mode_ecmchar::@5/(byte) dtv_control#148 )
(byte*) mode_ecmchar::ch#3 ← phi( mode_ecmchar::@2/(byte*) mode_ecmchar::ch#0 mode_ecmchar::@5/(byte*) mode_ecmchar::ch#4 )
(byte*) mode_ecmchar::col#3 ← phi( mode_ecmchar::@2/(byte*) mode_ecmchar::col#0 mode_ecmchar::@5/(byte*) mode_ecmchar::col#4 )
(byte) mode_ecmchar::cy#4 ← phi( mode_ecmchar::@2/(byte) mode_ecmchar::cy#0 mode_ecmchar::@5/(byte) mode_ecmchar::cy#1 )
(byte) mode_ecmchar::cx#0 ← (byte) 0
to:mode_ecmchar::@4
mode_ecmchar::@4: scope:[mode_ecmchar] from mode_ecmchar::@3 mode_ecmchar::@4
(byte) dtv_control#176 ← phi( mode_ecmchar::@3/(byte) dtv_control#191 mode_ecmchar::@4/(byte) dtv_control#176 )
(byte*) mode_ecmchar::ch#2 ← phi( mode_ecmchar::@3/(byte*) mode_ecmchar::ch#3 mode_ecmchar::@4/(byte*) mode_ecmchar::ch#1 )
(byte*) mode_ecmchar::col#2 ← phi( mode_ecmchar::@3/(byte*) mode_ecmchar::col#3 mode_ecmchar::@4/(byte*) mode_ecmchar::col#1 )
(byte) mode_ecmchar::cy#2 ← phi( mode_ecmchar::@3/(byte) mode_ecmchar::cy#4 mode_ecmchar::@4/(byte) mode_ecmchar::cy#2 )
(byte) mode_ecmchar::cx#2 ← phi( mode_ecmchar::@3/(byte) mode_ecmchar::cx#0 mode_ecmchar::@4/(byte) mode_ecmchar::cx#1 )
(byte~) mode_ecmchar::$26 ← (byte) mode_ecmchar::cx#2 + (byte) mode_ecmchar::cy#2
(number~) mode_ecmchar::$27 ← (byte~) mode_ecmchar::$26 & (number) $f
*((byte*) mode_ecmchar::col#2) ← (number~) mode_ecmchar::$27
(byte*) mode_ecmchar::col#1 ← ++ (byte*) mode_ecmchar::col#2
(number~) mode_ecmchar::$28 ← (byte) mode_ecmchar::cy#2 & (number) $f
(number~) mode_ecmchar::$29 ← (number~) mode_ecmchar::$28 * (number) $10
(number~) mode_ecmchar::$30 ← (byte) mode_ecmchar::cx#2 & (number) $f
(number~) mode_ecmchar::$31 ← (number~) mode_ecmchar::$29 | (number~) mode_ecmchar::$30
*((byte*) mode_ecmchar::ch#2) ← (number~) mode_ecmchar::$31
(byte*) mode_ecmchar::ch#1 ← ++ (byte*) mode_ecmchar::ch#2
(byte) mode_ecmchar::cx#1 ← (byte) mode_ecmchar::cx#2 + rangenext(0,$27)
(bool~) mode_ecmchar::$32 ← (byte) mode_ecmchar::cx#1 != rangelast(0,$27)
if((bool~) mode_ecmchar::$32) goto mode_ecmchar::@4
to:mode_ecmchar::@5
mode_ecmchar::@5: scope:[mode_ecmchar] from mode_ecmchar::@4
(byte) dtv_control#148 ← phi( mode_ecmchar::@4/(byte) dtv_control#176 )
(byte*) mode_ecmchar::ch#4 ← phi( mode_ecmchar::@4/(byte*) mode_ecmchar::ch#1 )
(byte*) mode_ecmchar::col#4 ← phi( mode_ecmchar::@4/(byte*) mode_ecmchar::col#1 )
(byte) mode_ecmchar::cy#3 ← phi( mode_ecmchar::@4/(byte) mode_ecmchar::cy#2 )
(byte) mode_ecmchar::cy#1 ← (byte) mode_ecmchar::cy#3 + rangenext(0,$18)
(bool~) mode_ecmchar::$33 ← (byte) mode_ecmchar::cy#1 != rangelast(0,$18)
if((bool~) mode_ecmchar::$33) goto mode_ecmchar::@3
to:mode_ecmchar::@6
mode_ecmchar::@6: scope:[mode_ecmchar] from mode_ecmchar::@5
(byte) dtv_control#118 ← phi( mode_ecmchar::@5/(byte) dtv_control#148 )
call mode_ctrl
to:mode_ecmchar::@7
mode_ecmchar::@7: scope:[mode_ecmchar] from mode_ecmchar::@6
(byte) dtv_control#75 ← phi( mode_ecmchar::@6/(byte) dtv_control#16 )
(byte) dtv_control#22 ← (byte) dtv_control#75
to:mode_ecmchar::@return
mode_ecmchar::@return: scope:[mode_ecmchar] from mode_ecmchar::@7
(byte) dtv_control#76 ← phi( mode_ecmchar::@7/(byte) dtv_control#22 )
(byte) dtv_control#23 ← (byte) dtv_control#76
return
to:@return
mode_mcchar: scope:[mode_mcchar] from menu::@30
(byte*) mode_mcchar::SCREEN#0 ← ((byte*)) (number) $8000
(byte*) mode_mcchar::CHARSET#0 ← ((byte*)) (number) $9000
(byte*) mode_mcchar::COLORS#0 ← ((byte*)) (number) $d800
(dword~) mode_mcchar::$0 ← ((dword)) (byte*) mode_mcchar::CHARSET#0
(number~) mode_mcchar::$1 ← (dword~) mode_mcchar::$0 / (number) $10000
(byte~) mode_mcchar::$2 ← ((byte)) (number~) mode_mcchar::$1
*((byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte~) mode_mcchar::$2
(number~) mode_mcchar::$3 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (number) $400
(word~) mode_mcchar::$4 ← ((word)) (number~) mode_mcchar::$3
(byte~) mode_mcchar::$5 ← < (word~) mode_mcchar::$4
*((byte*) DTV_COLOR_BANK_LO#0) ← (byte~) mode_mcchar::$5
(number~) mode_mcchar::$6 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (number) $400
(word~) mode_mcchar::$7 ← ((word)) (number~) mode_mcchar::$6
(byte~) mode_mcchar::$8 ← > (word~) mode_mcchar::$7
*((byte*) DTV_COLOR_BANK_HI#0) ← (byte~) mode_mcchar::$8
(byte) dtv_control#24 ← (number) 0
*((byte*) DTV_CONTROL#0) ← (number) 0
*((byte*) CIA2_PORT_A_DDR#0) ← (number) 3
(word~) mode_mcchar::$9 ← ((word)) (byte*) mode_mcchar::CHARSET#0
(number~) mode_mcchar::$10 ← (word~) mode_mcchar::$9 / (number) $4000
(byte~) mode_mcchar::$11 ← ((byte)) (number~) mode_mcchar::$10
(number~) mode_mcchar::$12 ← (number) 3 ^ (byte~) mode_mcchar::$11
*((byte*) CIA2_PORT_A#0) ← (number~) mode_mcchar::$12
(byte~) mode_mcchar::$13 ← (byte) VIC_DEN#0 | (byte) VIC_RSEL#0
(number~) mode_mcchar::$14 ← (byte~) mode_mcchar::$13 | (number) 3
*((byte*) VIC_CONTROL#0) ← (number~) mode_mcchar::$14
(byte~) mode_mcchar::$15 ← (byte) VIC_CSEL#0 | (byte) VIC_MCM#0
*((byte*) VIC_CONTROL2#0) ← (byte~) mode_mcchar::$15
(word~) mode_mcchar::$16 ← ((word)) (byte*) mode_mcchar::SCREEN#0
(number~) mode_mcchar::$17 ← (word~) mode_mcchar::$16 & (number) $3fff
(number~) mode_mcchar::$18 ← (number~) mode_mcchar::$17 / (number) $40
(word~) mode_mcchar::$19 ← ((word)) (byte*) mode_mcchar::CHARSET#0
(number~) mode_mcchar::$20 ← (word~) mode_mcchar::$19 & (number) $3fff
(number~) mode_mcchar::$21 ← (number~) mode_mcchar::$20 / (number) $400
(number~) mode_mcchar::$22 ← (number~) mode_mcchar::$18 | (number~) mode_mcchar::$21
(byte~) mode_mcchar::$23 ← ((byte)) (number~) mode_mcchar::$22
*((byte*) VIC_MEMORY#0) ← (byte~) mode_mcchar::$23
(byte) mode_mcchar::i#0 ← (byte) 0
to:mode_mcchar::@1
mode_mcchar::@1: scope:[mode_mcchar] from mode_mcchar mode_mcchar::@1
(byte) dtv_control#224 ← phi( mode_mcchar/(byte) dtv_control#24 mode_mcchar::@1/(byte) dtv_control#224 )
(byte) mode_mcchar::i#2 ← phi( mode_mcchar/(byte) mode_mcchar::i#0 mode_mcchar::@1/(byte) mode_mcchar::i#1 )
*((byte*) DTV_PALETTE#0 + (byte) mode_mcchar::i#2) ← *((byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_mcchar::i#2)
(byte) mode_mcchar::i#1 ← (byte) mode_mcchar::i#2 + rangenext(0,$f)
(bool~) mode_mcchar::$25 ← (byte) mode_mcchar::i#1 != rangelast(0,$f)
if((bool~) mode_mcchar::$25) goto mode_mcchar::@1
to:mode_mcchar::@2
mode_mcchar::@2: scope:[mode_mcchar] from mode_mcchar::@1
(byte) dtv_control#208 ← phi( mode_mcchar::@1/(byte) dtv_control#224 )
*((byte*) BORDERCOL#0) ← (number) 0
*((byte*) BGCOL1#0) ← (byte) BLACK#0
*((byte*) BGCOL2#0) ← (byte) GREEN#0
*((byte*) BGCOL3#0) ← (byte) BLUE#0
(byte*) mode_mcchar::col#0 ← (byte*) mode_mcchar::COLORS#0
(byte*) mode_mcchar::ch#0 ← (byte*) mode_mcchar::SCREEN#0
(byte) mode_mcchar::cy#0 ← (byte) 0
to:mode_mcchar::@3
mode_mcchar::@3: scope:[mode_mcchar] from mode_mcchar::@2 mode_mcchar::@5
(byte) dtv_control#192 ← phi( mode_mcchar::@2/(byte) dtv_control#208 mode_mcchar::@5/(byte) dtv_control#149 )
(byte*) mode_mcchar::ch#3 ← phi( mode_mcchar::@2/(byte*) mode_mcchar::ch#0 mode_mcchar::@5/(byte*) mode_mcchar::ch#4 )
(byte*) mode_mcchar::col#3 ← phi( mode_mcchar::@2/(byte*) mode_mcchar::col#0 mode_mcchar::@5/(byte*) mode_mcchar::col#4 )
(byte) mode_mcchar::cy#4 ← phi( mode_mcchar::@2/(byte) mode_mcchar::cy#0 mode_mcchar::@5/(byte) mode_mcchar::cy#1 )
(byte) mode_mcchar::cx#0 ← (byte) 0
to:mode_mcchar::@4
mode_mcchar::@4: scope:[mode_mcchar] from mode_mcchar::@3 mode_mcchar::@4
(byte) dtv_control#177 ← phi( mode_mcchar::@3/(byte) dtv_control#192 mode_mcchar::@4/(byte) dtv_control#177 )
(byte*) mode_mcchar::ch#2 ← phi( mode_mcchar::@3/(byte*) mode_mcchar::ch#3 mode_mcchar::@4/(byte*) mode_mcchar::ch#1 )
(byte*) mode_mcchar::col#2 ← phi( mode_mcchar::@3/(byte*) mode_mcchar::col#3 mode_mcchar::@4/(byte*) mode_mcchar::col#1 )
(byte) mode_mcchar::cy#2 ← phi( mode_mcchar::@3/(byte) mode_mcchar::cy#4 mode_mcchar::@4/(byte) mode_mcchar::cy#2 )
(byte) mode_mcchar::cx#2 ← phi( mode_mcchar::@3/(byte) mode_mcchar::cx#0 mode_mcchar::@4/(byte) mode_mcchar::cx#1 )
(byte~) mode_mcchar::$26 ← (byte) mode_mcchar::cx#2 + (byte) mode_mcchar::cy#2
(number~) mode_mcchar::$27 ← (byte~) mode_mcchar::$26 & (number) $f
*((byte*) mode_mcchar::col#2) ← (number~) mode_mcchar::$27
(byte*) mode_mcchar::col#1 ← ++ (byte*) mode_mcchar::col#2
(number~) mode_mcchar::$28 ← (byte) mode_mcchar::cy#2 & (number) $f
(number~) mode_mcchar::$29 ← (number~) mode_mcchar::$28 * (number) $10
(number~) mode_mcchar::$30 ← (byte) mode_mcchar::cx#2 & (number) $f
(number~) mode_mcchar::$31 ← (number~) mode_mcchar::$29 | (number~) mode_mcchar::$30
*((byte*) mode_mcchar::ch#2) ← (number~) mode_mcchar::$31
(byte*) mode_mcchar::ch#1 ← ++ (byte*) mode_mcchar::ch#2
(byte) mode_mcchar::cx#1 ← (byte) mode_mcchar::cx#2 + rangenext(0,$27)
(bool~) mode_mcchar::$32 ← (byte) mode_mcchar::cx#1 != rangelast(0,$27)
if((bool~) mode_mcchar::$32) goto mode_mcchar::@4
to:mode_mcchar::@5
mode_mcchar::@5: scope:[mode_mcchar] from mode_mcchar::@4
(byte) dtv_control#149 ← phi( mode_mcchar::@4/(byte) dtv_control#177 )
(byte*) mode_mcchar::ch#4 ← phi( mode_mcchar::@4/(byte*) mode_mcchar::ch#1 )
(byte*) mode_mcchar::col#4 ← phi( mode_mcchar::@4/(byte*) mode_mcchar::col#1 )
(byte) mode_mcchar::cy#3 ← phi( mode_mcchar::@4/(byte) mode_mcchar::cy#2 )
(byte) mode_mcchar::cy#1 ← (byte) mode_mcchar::cy#3 + rangenext(0,$18)
(bool~) mode_mcchar::$33 ← (byte) mode_mcchar::cy#1 != rangelast(0,$18)
if((bool~) mode_mcchar::$33) goto mode_mcchar::@3
to:mode_mcchar::@6
mode_mcchar::@6: scope:[mode_mcchar] from mode_mcchar::@5
(byte) dtv_control#119 ← phi( mode_mcchar::@5/(byte) dtv_control#149 )
call mode_ctrl
to:mode_mcchar::@7
mode_mcchar::@7: scope:[mode_mcchar] from mode_mcchar::@6
(byte) dtv_control#77 ← phi( mode_mcchar::@6/(byte) dtv_control#16 )
(byte) dtv_control#25 ← (byte) dtv_control#77
to:mode_mcchar::@return
mode_mcchar::@return: scope:[mode_mcchar] from mode_mcchar::@7
(byte) dtv_control#78 ← phi( mode_mcchar::@7/(byte) dtv_control#25 )
(byte) dtv_control#26 ← (byte) dtv_control#78
return
to:@return
mode_stdbitmap: scope:[mode_stdbitmap] from menu::@32
(byte*) mode_stdbitmap::SCREEN#0 ← ((byte*)) (number) $4000
(byte*) mode_stdbitmap::BITMAP#0 ← ((byte*)) (number) $6000
(dword~) mode_stdbitmap::$0 ← ((dword)) (byte*) mode_stdbitmap::BITMAP#0
(number~) mode_stdbitmap::$1 ← (dword~) mode_stdbitmap::$0 / (number) $10000
(byte~) mode_stdbitmap::$2 ← ((byte)) (number~) mode_stdbitmap::$1
*((byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte~) mode_stdbitmap::$2
(byte) dtv_control#27 ← (number) 0
*((byte*) DTV_CONTROL#0) ← (number) 0
*((byte*) CIA2_PORT_A_DDR#0) ← (number) 3
(word~) mode_stdbitmap::$3 ← ((word)) (byte*) mode_stdbitmap::BITMAP#0
(number~) mode_stdbitmap::$4 ← (word~) mode_stdbitmap::$3 / (number) $4000
(byte~) mode_stdbitmap::$5 ← ((byte)) (number~) mode_stdbitmap::$4
(number~) mode_stdbitmap::$6 ← (number) 3 ^ (byte~) mode_stdbitmap::$5
*((byte*) CIA2_PORT_A#0) ← (number~) mode_stdbitmap::$6
(byte~) mode_stdbitmap::$7 ← (byte) VIC_BMM#0 | (byte) VIC_DEN#0
(byte~) mode_stdbitmap::$8 ← (byte~) mode_stdbitmap::$7 | (byte) VIC_RSEL#0
(number~) mode_stdbitmap::$9 ← (byte~) mode_stdbitmap::$8 | (number) 3
*((byte*) VIC_CONTROL#0) ← (number~) mode_stdbitmap::$9
*((byte*) VIC_CONTROL2#0) ← (byte) VIC_CSEL#0
(word~) mode_stdbitmap::$10 ← ((word)) (byte*) mode_stdbitmap::SCREEN#0
(number~) mode_stdbitmap::$11 ← (word~) mode_stdbitmap::$10 & (number) $3fff
(number~) mode_stdbitmap::$12 ← (number~) mode_stdbitmap::$11 / (number) $40
(word~) mode_stdbitmap::$13 ← ((word)) (byte*) mode_stdbitmap::BITMAP#0
(number~) mode_stdbitmap::$14 ← (word~) mode_stdbitmap::$13 & (number) $3fff
(number~) mode_stdbitmap::$15 ← (number~) mode_stdbitmap::$14 / (number) $400
(number~) mode_stdbitmap::$16 ← (number~) mode_stdbitmap::$12 | (number~) mode_stdbitmap::$15
(byte~) mode_stdbitmap::$17 ← ((byte)) (number~) mode_stdbitmap::$16
*((byte*) VIC_MEMORY#0) ← (byte~) mode_stdbitmap::$17
(byte) mode_stdbitmap::i#0 ← (byte) 0
to:mode_stdbitmap::@1
mode_stdbitmap::@1: scope:[mode_stdbitmap] from mode_stdbitmap mode_stdbitmap::@1
(byte) dtv_control#264 ← phi( mode_stdbitmap/(byte) dtv_control#27 mode_stdbitmap::@1/(byte) dtv_control#264 )
(byte) mode_stdbitmap::i#2 ← phi( mode_stdbitmap/(byte) mode_stdbitmap::i#0 mode_stdbitmap::@1/(byte) mode_stdbitmap::i#1 )
*((byte*) DTV_PALETTE#0 + (byte) mode_stdbitmap::i#2) ← *((byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdbitmap::i#2)
(byte) mode_stdbitmap::i#1 ← (byte) mode_stdbitmap::i#2 + rangenext(0,$f)
(bool~) mode_stdbitmap::$21 ← (byte) mode_stdbitmap::i#1 != rangelast(0,$f)
if((bool~) mode_stdbitmap::$21) goto mode_stdbitmap::@1
to:mode_stdbitmap::@2
mode_stdbitmap::@2: scope:[mode_stdbitmap] from mode_stdbitmap::@1
(byte) dtv_control#257 ← phi( mode_stdbitmap::@1/(byte) dtv_control#264 )
*((byte*) BGCOL#0) ← (byte) BLACK#0
*((byte*) BORDERCOL#0) ← (byte) BLACK#0
(byte*) mode_stdbitmap::ch#0 ← (byte*) mode_stdbitmap::SCREEN#0
(byte) mode_stdbitmap::cy#0 ← (byte) 0
to:mode_stdbitmap::@3
mode_stdbitmap::@3: scope:[mode_stdbitmap] from mode_stdbitmap::@2 mode_stdbitmap::@5
(byte) dtv_control#247 ← phi( mode_stdbitmap::@2/(byte) dtv_control#257 mode_stdbitmap::@5/(byte) dtv_control#225 )
(byte*) mode_stdbitmap::ch#3 ← phi( mode_stdbitmap::@2/(byte*) mode_stdbitmap::ch#0 mode_stdbitmap::@5/(byte*) mode_stdbitmap::ch#4 )
(byte) mode_stdbitmap::cy#4 ← phi( mode_stdbitmap::@2/(byte) mode_stdbitmap::cy#0 mode_stdbitmap::@5/(byte) mode_stdbitmap::cy#1 )
(byte) mode_stdbitmap::cx#0 ← (byte) 0
to:mode_stdbitmap::@4
mode_stdbitmap::@4: scope:[mode_stdbitmap] from mode_stdbitmap::@3 mode_stdbitmap::@4
(byte) dtv_control#239 ← phi( mode_stdbitmap::@3/(byte) dtv_control#247 mode_stdbitmap::@4/(byte) dtv_control#239 )
(byte*) mode_stdbitmap::ch#2 ← phi( mode_stdbitmap::@3/(byte*) mode_stdbitmap::ch#3 mode_stdbitmap::@4/(byte*) mode_stdbitmap::ch#1 )
(byte) mode_stdbitmap::cy#2 ← phi( mode_stdbitmap::@3/(byte) mode_stdbitmap::cy#4 mode_stdbitmap::@4/(byte) mode_stdbitmap::cy#2 )
(byte) mode_stdbitmap::cx#2 ← phi( mode_stdbitmap::@3/(byte) mode_stdbitmap::cx#0 mode_stdbitmap::@4/(byte) mode_stdbitmap::cx#1 )
(byte~) mode_stdbitmap::$22 ← (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#2
(number~) mode_stdbitmap::$23 ← (byte~) mode_stdbitmap::$22 & (number) $f
(byte) mode_stdbitmap::col#0 ← (number~) mode_stdbitmap::$23
(number~) mode_stdbitmap::$24 ← (number) $f - (byte) mode_stdbitmap::col#0
(byte) mode_stdbitmap::col2#0 ← (number~) mode_stdbitmap::$24
(number~) mode_stdbitmap::$25 ← (byte) mode_stdbitmap::col#0 * (number) $10
(number~) mode_stdbitmap::$26 ← (number~) mode_stdbitmap::$25 | (byte) mode_stdbitmap::col2#0
*((byte*) mode_stdbitmap::ch#2) ← (number~) mode_stdbitmap::$26
(byte*) mode_stdbitmap::ch#1 ← ++ (byte*) mode_stdbitmap::ch#2
(byte) mode_stdbitmap::cx#1 ← (byte) mode_stdbitmap::cx#2 + rangenext(0,$27)
(bool~) mode_stdbitmap::$27 ← (byte) mode_stdbitmap::cx#1 != rangelast(0,$27)
if((bool~) mode_stdbitmap::$27) goto mode_stdbitmap::@4
to:mode_stdbitmap::@5
mode_stdbitmap::@5: scope:[mode_stdbitmap] from mode_stdbitmap::@4
(byte) dtv_control#225 ← phi( mode_stdbitmap::@4/(byte) dtv_control#239 )
(byte*) mode_stdbitmap::ch#4 ← phi( mode_stdbitmap::@4/(byte*) mode_stdbitmap::ch#1 )
(byte) mode_stdbitmap::cy#3 ← phi( mode_stdbitmap::@4/(byte) mode_stdbitmap::cy#2 )
(byte) mode_stdbitmap::cy#1 ← (byte) mode_stdbitmap::cy#3 + rangenext(0,$18)
(bool~) mode_stdbitmap::$28 ← (byte) mode_stdbitmap::cy#1 != rangelast(0,$18)
if((bool~) mode_stdbitmap::$28) goto mode_stdbitmap::@3
to:mode_stdbitmap::@6
mode_stdbitmap::@6: scope:[mode_stdbitmap] from mode_stdbitmap::@5
(byte) dtv_control#209 ← phi( mode_stdbitmap::@5/(byte) dtv_control#225 )
(byte*) bitmap_init::bitmap#0 ← (byte*) mode_stdbitmap::BITMAP#0
call bitmap_init
to:mode_stdbitmap::@13
mode_stdbitmap::@13: scope:[mode_stdbitmap] from mode_stdbitmap::@6
(byte) dtv_control#193 ← phi( mode_stdbitmap::@6/(byte) dtv_control#209 )
call bitmap_clear
to:mode_stdbitmap::@14
mode_stdbitmap::@14: scope:[mode_stdbitmap] from mode_stdbitmap::@13
(byte) dtv_control#178 ← phi( mode_stdbitmap::@13/(byte) dtv_control#193 )
(byte[]) mode_stdbitmap::lines_x#0 ← { (number) 0, (number) $ff, (number) $ff, (number) 0, (number) 0, (number) $80, (number) $ff, (number) $80, (number) 0, (number) $80 }
(byte[]) mode_stdbitmap::lines_y#0 ← { (number) 0, (number) 0, (number) $c7, (number) $c7, (number) 0, (number) 0, (number) $64, (number) $c7, (number) $64, (number) 0 }
(byte) mode_stdbitmap::lines_cnt#0 ← (number) 9
(byte) mode_stdbitmap::l#0 ← (number) 0
to:mode_stdbitmap::@7
mode_stdbitmap::@7: scope:[mode_stdbitmap] from mode_stdbitmap::@14 mode_stdbitmap::@15
(byte) dtv_control#150 ← phi( mode_stdbitmap::@14/(byte) dtv_control#178 mode_stdbitmap::@15/(byte) dtv_control#179 )
(byte) mode_stdbitmap::l#2 ← phi( mode_stdbitmap::@14/(byte) mode_stdbitmap::l#0 mode_stdbitmap::@15/(byte) mode_stdbitmap::l#1 )
(bool~) mode_stdbitmap::$29 ← (byte) mode_stdbitmap::l#2 < (byte) mode_stdbitmap::lines_cnt#0
if((bool~) mode_stdbitmap::$29) goto mode_stdbitmap::@8
to:mode_stdbitmap::@9
mode_stdbitmap::@8: scope:[mode_stdbitmap] from mode_stdbitmap::@7
(byte) dtv_control#194 ← phi( mode_stdbitmap::@7/(byte) dtv_control#150 )
(byte) mode_stdbitmap::l#3 ← phi( mode_stdbitmap::@7/(byte) mode_stdbitmap::l#2 )
(number~) mode_stdbitmap::$30 ← (byte) mode_stdbitmap::l#3 + (number) 1
(number~) mode_stdbitmap::$31 ← (byte) mode_stdbitmap::l#3 + (number) 1
(byte) bitmap_line::x0#0 ← *((byte[]) mode_stdbitmap::lines_x#0 + (byte) mode_stdbitmap::l#3)
(byte) bitmap_line::x1#0 ← *((byte[]) mode_stdbitmap::lines_x#0 + (number~) mode_stdbitmap::$30)
(byte) bitmap_line::y0#0 ← *((byte[]) mode_stdbitmap::lines_y#0 + (byte) mode_stdbitmap::l#3)
(byte) bitmap_line::y1#0 ← *((byte[]) mode_stdbitmap::lines_y#0 + (number~) mode_stdbitmap::$31)
call bitmap_line
to:mode_stdbitmap::@15
mode_stdbitmap::@15: scope:[mode_stdbitmap] from mode_stdbitmap::@8
(byte) dtv_control#179 ← phi( mode_stdbitmap::@8/(byte) dtv_control#194 )
(byte) mode_stdbitmap::l#4 ← phi( mode_stdbitmap::@8/(byte) mode_stdbitmap::l#3 )
(byte) mode_stdbitmap::l#1 ← ++ (byte) mode_stdbitmap::l#4
to:mode_stdbitmap::@7
mode_stdbitmap::@9: scope:[mode_stdbitmap] from mode_stdbitmap::@7
(byte) dtv_control#120 ← phi( mode_stdbitmap::@7/(byte) dtv_control#150 )
call mode_ctrl
to:mode_stdbitmap::@16
mode_stdbitmap::@16: scope:[mode_stdbitmap] from mode_stdbitmap::@9
(byte) dtv_control#79 ← phi( mode_stdbitmap::@9/(byte) dtv_control#16 )
(byte) dtv_control#28 ← (byte) dtv_control#79
to:mode_stdbitmap::@return
mode_stdbitmap::@return: scope:[mode_stdbitmap] from mode_stdbitmap::@16
(byte) dtv_control#80 ← phi( mode_stdbitmap::@16/(byte) dtv_control#28 )
(byte) dtv_control#29 ← (byte) dtv_control#80
return
to:@return
mode_hicolstdchar: scope:[mode_hicolstdchar] from menu::@34
(byte*) mode_hicolstdchar::SCREEN#0 ← ((byte*)) (number) $8000
(byte*) mode_hicolstdchar::CHARSET#0 ← ((byte*)) (number) $9000
(byte*) mode_hicolstdchar::COLORS#0 ← ((byte*)) (number) $8400
(dword~) mode_hicolstdchar::$0 ← ((dword)) (byte*) mode_hicolstdchar::CHARSET#0
(number~) mode_hicolstdchar::$1 ← (dword~) mode_hicolstdchar::$0 / (number) $10000
(byte~) mode_hicolstdchar::$2 ← ((byte)) (number~) mode_hicolstdchar::$1
*((byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte~) mode_hicolstdchar::$2
(byte*~) mode_hicolstdchar::$3 ← (byte*) mode_hicolstdchar::COLORS#0 / (number) $400
(word~) mode_hicolstdchar::$4 ← ((word)) (byte*~) mode_hicolstdchar::$3
(byte~) mode_hicolstdchar::$5 ← < (word~) mode_hicolstdchar::$4
*((byte*) DTV_COLOR_BANK_LO#0) ← (byte~) mode_hicolstdchar::$5
(byte*~) mode_hicolstdchar::$6 ← (byte*) mode_hicolstdchar::COLORS#0 / (number) $400
(word~) mode_hicolstdchar::$7 ← ((word)) (byte*~) mode_hicolstdchar::$6
(byte~) mode_hicolstdchar::$8 ← > (word~) mode_hicolstdchar::$7
*((byte*) DTV_COLOR_BANK_HI#0) ← (byte~) mode_hicolstdchar::$8
(byte) dtv_control#30 ← (byte) DTV_HIGHCOLOR#0
*((byte*) DTV_CONTROL#0) ← (byte) DTV_HIGHCOLOR#0
*((byte*) CIA2_PORT_A_DDR#0) ← (number) 3
(word~) mode_hicolstdchar::$9 ← ((word)) (byte*) mode_hicolstdchar::CHARSET#0
(number~) mode_hicolstdchar::$10 ← (word~) mode_hicolstdchar::$9 / (number) $4000
(byte~) mode_hicolstdchar::$11 ← ((byte)) (number~) mode_hicolstdchar::$10
(number~) mode_hicolstdchar::$12 ← (number) 3 ^ (byte~) mode_hicolstdchar::$11
*((byte*) CIA2_PORT_A#0) ← (number~) mode_hicolstdchar::$12
(byte~) mode_hicolstdchar::$13 ← (byte) VIC_DEN#0 | (byte) VIC_RSEL#0
(number~) mode_hicolstdchar::$14 ← (byte~) mode_hicolstdchar::$13 | (number) 3
*((byte*) VIC_CONTROL#0) ← (number~) mode_hicolstdchar::$14
*((byte*) VIC_CONTROL2#0) ← (byte) VIC_CSEL#0
(word~) mode_hicolstdchar::$15 ← ((word)) (byte*) mode_hicolstdchar::SCREEN#0
(number~) mode_hicolstdchar::$16 ← (word~) mode_hicolstdchar::$15 & (number) $3fff
(number~) mode_hicolstdchar::$17 ← (number~) mode_hicolstdchar::$16 / (number) $40
(word~) mode_hicolstdchar::$18 ← ((word)) (byte*) mode_hicolstdchar::CHARSET#0
(number~) mode_hicolstdchar::$19 ← (word~) mode_hicolstdchar::$18 & (number) $3fff
(number~) mode_hicolstdchar::$20 ← (number~) mode_hicolstdchar::$19 / (number) $400
(number~) mode_hicolstdchar::$21 ← (number~) mode_hicolstdchar::$17 | (number~) mode_hicolstdchar::$20
(byte~) mode_hicolstdchar::$22 ← ((byte)) (number~) mode_hicolstdchar::$21
*((byte*) VIC_MEMORY#0) ← (byte~) mode_hicolstdchar::$22
(byte) mode_hicolstdchar::i#0 ← (byte) 0
to:mode_hicolstdchar::@1
mode_hicolstdchar::@1: scope:[mode_hicolstdchar] from mode_hicolstdchar mode_hicolstdchar::@1
(byte) dtv_control#226 ← phi( mode_hicolstdchar/(byte) dtv_control#30 mode_hicolstdchar::@1/(byte) dtv_control#226 )
(byte) mode_hicolstdchar::i#2 ← phi( mode_hicolstdchar/(byte) mode_hicolstdchar::i#0 mode_hicolstdchar::@1/(byte) mode_hicolstdchar::i#1 )
*((byte*) DTV_PALETTE#0 + (byte) mode_hicolstdchar::i#2) ← (byte) mode_hicolstdchar::i#2
(byte) mode_hicolstdchar::i#1 ← (byte) mode_hicolstdchar::i#2 + rangenext(0,$f)
(bool~) mode_hicolstdchar::$24 ← (byte) mode_hicolstdchar::i#1 != rangelast(0,$f)
if((bool~) mode_hicolstdchar::$24) goto mode_hicolstdchar::@1
to:mode_hicolstdchar::@2
mode_hicolstdchar::@2: scope:[mode_hicolstdchar] from mode_hicolstdchar::@1
(byte) dtv_control#210 ← phi( mode_hicolstdchar::@1/(byte) dtv_control#226 )
*((byte*) BGCOL#0) ← (number) 0
*((byte*) BORDERCOL#0) ← (number) 0
(byte*) mode_hicolstdchar::col#0 ← (byte*) mode_hicolstdchar::COLORS#0
(byte*) mode_hicolstdchar::ch#0 ← (byte*) mode_hicolstdchar::SCREEN#0
(byte) mode_hicolstdchar::cy#0 ← (byte) 0
to:mode_hicolstdchar::@3
mode_hicolstdchar::@3: scope:[mode_hicolstdchar] from mode_hicolstdchar::@2 mode_hicolstdchar::@5
(byte) dtv_control#195 ← phi( mode_hicolstdchar::@2/(byte) dtv_control#210 mode_hicolstdchar::@5/(byte) dtv_control#151 )
(byte*) mode_hicolstdchar::ch#3 ← phi( mode_hicolstdchar::@2/(byte*) mode_hicolstdchar::ch#0 mode_hicolstdchar::@5/(byte*) mode_hicolstdchar::ch#4 )
(byte*) mode_hicolstdchar::col#3 ← phi( mode_hicolstdchar::@2/(byte*) mode_hicolstdchar::col#0 mode_hicolstdchar::@5/(byte*) mode_hicolstdchar::col#4 )
(byte) mode_hicolstdchar::cy#4 ← phi( mode_hicolstdchar::@2/(byte) mode_hicolstdchar::cy#0 mode_hicolstdchar::@5/(byte) mode_hicolstdchar::cy#1 )
(byte) mode_hicolstdchar::cx#0 ← (byte) 0
to:mode_hicolstdchar::@4
mode_hicolstdchar::@4: scope:[mode_hicolstdchar] from mode_hicolstdchar::@3 mode_hicolstdchar::@4
(byte) dtv_control#180 ← phi( mode_hicolstdchar::@3/(byte) dtv_control#195 mode_hicolstdchar::@4/(byte) dtv_control#180 )
(byte*) mode_hicolstdchar::ch#2 ← phi( mode_hicolstdchar::@3/(byte*) mode_hicolstdchar::ch#3 mode_hicolstdchar::@4/(byte*) mode_hicolstdchar::ch#1 )
(byte*) mode_hicolstdchar::col#2 ← phi( mode_hicolstdchar::@3/(byte*) mode_hicolstdchar::col#3 mode_hicolstdchar::@4/(byte*) mode_hicolstdchar::col#1 )
(byte) mode_hicolstdchar::cx#2 ← phi( mode_hicolstdchar::@3/(byte) mode_hicolstdchar::cx#0 mode_hicolstdchar::@4/(byte) mode_hicolstdchar::cx#1 )
(byte) mode_hicolstdchar::cy#2 ← phi( mode_hicolstdchar::@3/(byte) mode_hicolstdchar::cy#4 mode_hicolstdchar::@4/(byte) mode_hicolstdchar::cy#2 )
(number~) mode_hicolstdchar::$25 ← (byte) mode_hicolstdchar::cy#2 & (number) $f
(number~) mode_hicolstdchar::$26 ← (number~) mode_hicolstdchar::$25 * (number) $10
(number~) mode_hicolstdchar::$27 ← (byte) mode_hicolstdchar::cx#2 & (number) $f
(number~) mode_hicolstdchar::$28 ← (number~) mode_hicolstdchar::$26 | (number~) mode_hicolstdchar::$27
(byte) mode_hicolstdchar::v#0 ← (number~) mode_hicolstdchar::$28
*((byte*) mode_hicolstdchar::col#2) ← (byte) mode_hicolstdchar::v#0
(byte*) mode_hicolstdchar::col#1 ← ++ (byte*) mode_hicolstdchar::col#2
*((byte*) mode_hicolstdchar::ch#2) ← (byte) mode_hicolstdchar::v#0
(byte*) mode_hicolstdchar::ch#1 ← ++ (byte*) mode_hicolstdchar::ch#2
(byte) mode_hicolstdchar::cx#1 ← (byte) mode_hicolstdchar::cx#2 + rangenext(0,$27)
(bool~) mode_hicolstdchar::$29 ← (byte) mode_hicolstdchar::cx#1 != rangelast(0,$27)
if((bool~) mode_hicolstdchar::$29) goto mode_hicolstdchar::@4
to:mode_hicolstdchar::@5
mode_hicolstdchar::@5: scope:[mode_hicolstdchar] from mode_hicolstdchar::@4
(byte) dtv_control#151 ← phi( mode_hicolstdchar::@4/(byte) dtv_control#180 )
(byte*) mode_hicolstdchar::ch#4 ← phi( mode_hicolstdchar::@4/(byte*) mode_hicolstdchar::ch#1 )
(byte*) mode_hicolstdchar::col#4 ← phi( mode_hicolstdchar::@4/(byte*) mode_hicolstdchar::col#1 )
(byte) mode_hicolstdchar::cy#3 ← phi( mode_hicolstdchar::@4/(byte) mode_hicolstdchar::cy#2 )
(byte) mode_hicolstdchar::cy#1 ← (byte) mode_hicolstdchar::cy#3 + rangenext(0,$18)
(bool~) mode_hicolstdchar::$30 ← (byte) mode_hicolstdchar::cy#1 != rangelast(0,$18)
if((bool~) mode_hicolstdchar::$30) goto mode_hicolstdchar::@3
to:mode_hicolstdchar::@6
mode_hicolstdchar::@6: scope:[mode_hicolstdchar] from mode_hicolstdchar::@5
(byte) dtv_control#121 ← phi( mode_hicolstdchar::@5/(byte) dtv_control#151 )
call mode_ctrl
to:mode_hicolstdchar::@7
mode_hicolstdchar::@7: scope:[mode_hicolstdchar] from mode_hicolstdchar::@6
(byte) dtv_control#81 ← phi( mode_hicolstdchar::@6/(byte) dtv_control#16 )
(byte) dtv_control#31 ← (byte) dtv_control#81
to:mode_hicolstdchar::@return
mode_hicolstdchar::@return: scope:[mode_hicolstdchar] from mode_hicolstdchar::@7
(byte) dtv_control#82 ← phi( mode_hicolstdchar::@7/(byte) dtv_control#31 )
(byte) dtv_control#32 ← (byte) dtv_control#82
return
to:@return
mode_hicolecmchar: scope:[mode_hicolecmchar] from menu::@36
(byte*) mode_hicolecmchar::SCREEN#0 ← ((byte*)) (number) $8000
(byte*) mode_hicolecmchar::CHARSET#0 ← ((byte*)) (number) $9000
(byte*) mode_hicolecmchar::COLORS#0 ← ((byte*)) (number) $8400
(dword~) mode_hicolecmchar::$0 ← ((dword)) (byte*) mode_hicolecmchar::CHARSET#0
(number~) mode_hicolecmchar::$1 ← (dword~) mode_hicolecmchar::$0 / (number) $10000
(byte~) mode_hicolecmchar::$2 ← ((byte)) (number~) mode_hicolecmchar::$1
*((byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte~) mode_hicolecmchar::$2
(byte*~) mode_hicolecmchar::$3 ← (byte*) mode_hicolecmchar::COLORS#0 / (number) $400
(word~) mode_hicolecmchar::$4 ← ((word)) (byte*~) mode_hicolecmchar::$3
(byte~) mode_hicolecmchar::$5 ← < (word~) mode_hicolecmchar::$4
*((byte*) DTV_COLOR_BANK_LO#0) ← (byte~) mode_hicolecmchar::$5
(byte*~) mode_hicolecmchar::$6 ← (byte*) mode_hicolecmchar::COLORS#0 / (number) $400
(word~) mode_hicolecmchar::$7 ← ((word)) (byte*~) mode_hicolecmchar::$6
(byte~) mode_hicolecmchar::$8 ← > (word~) mode_hicolecmchar::$7
*((byte*) DTV_COLOR_BANK_HI#0) ← (byte~) mode_hicolecmchar::$8
(byte) dtv_control#33 ← (byte) DTV_HIGHCOLOR#0
*((byte*) DTV_CONTROL#0) ← (byte) DTV_HIGHCOLOR#0
*((byte*) CIA2_PORT_A_DDR#0) ← (number) 3
(word~) mode_hicolecmchar::$9 ← ((word)) (byte*) mode_hicolecmchar::CHARSET#0
(number~) mode_hicolecmchar::$10 ← (word~) mode_hicolecmchar::$9 / (number) $4000
(byte~) mode_hicolecmchar::$11 ← ((byte)) (number~) mode_hicolecmchar::$10
(number~) mode_hicolecmchar::$12 ← (number) 3 ^ (byte~) mode_hicolecmchar::$11
*((byte*) CIA2_PORT_A#0) ← (number~) mode_hicolecmchar::$12
(byte~) mode_hicolecmchar::$13 ← (byte) VIC_DEN#0 | (byte) VIC_RSEL#0
(byte~) mode_hicolecmchar::$14 ← (byte~) mode_hicolecmchar::$13 | (byte) VIC_ECM#0
(number~) mode_hicolecmchar::$15 ← (byte~) mode_hicolecmchar::$14 | (number) 3
*((byte*) VIC_CONTROL#0) ← (number~) mode_hicolecmchar::$15
*((byte*) VIC_CONTROL2#0) ← (byte) VIC_CSEL#0
(word~) mode_hicolecmchar::$16 ← ((word)) (byte*) mode_hicolecmchar::SCREEN#0
(number~) mode_hicolecmchar::$17 ← (word~) mode_hicolecmchar::$16 & (number) $3fff
(number~) mode_hicolecmchar::$18 ← (number~) mode_hicolecmchar::$17 / (number) $40
(word~) mode_hicolecmchar::$19 ← ((word)) (byte*) mode_hicolecmchar::CHARSET#0
(number~) mode_hicolecmchar::$20 ← (word~) mode_hicolecmchar::$19 & (number) $3fff
(number~) mode_hicolecmchar::$21 ← (number~) mode_hicolecmchar::$20 / (number) $400
(number~) mode_hicolecmchar::$22 ← (number~) mode_hicolecmchar::$18 | (number~) mode_hicolecmchar::$21
(byte~) mode_hicolecmchar::$23 ← ((byte)) (number~) mode_hicolecmchar::$22
*((byte*) VIC_MEMORY#0) ← (byte~) mode_hicolecmchar::$23
(byte) mode_hicolecmchar::i#0 ← (byte) 0
to:mode_hicolecmchar::@1
mode_hicolecmchar::@1: scope:[mode_hicolecmchar] from mode_hicolecmchar mode_hicolecmchar::@1
(byte) dtv_control#227 ← phi( mode_hicolecmchar/(byte) dtv_control#33 mode_hicolecmchar::@1/(byte) dtv_control#227 )
(byte) mode_hicolecmchar::i#2 ← phi( mode_hicolecmchar/(byte) mode_hicolecmchar::i#0 mode_hicolecmchar::@1/(byte) mode_hicolecmchar::i#1 )
*((byte*) DTV_PALETTE#0 + (byte) mode_hicolecmchar::i#2) ← (byte) mode_hicolecmchar::i#2
(byte) mode_hicolecmchar::i#1 ← (byte) mode_hicolecmchar::i#2 + rangenext(0,$f)
(bool~) mode_hicolecmchar::$25 ← (byte) mode_hicolecmchar::i#1 != rangelast(0,$f)
if((bool~) mode_hicolecmchar::$25) goto mode_hicolecmchar::@1
to:mode_hicolecmchar::@2
mode_hicolecmchar::@2: scope:[mode_hicolecmchar] from mode_hicolecmchar::@1
(byte) dtv_control#211 ← phi( mode_hicolecmchar::@1/(byte) dtv_control#227 )
*((byte*) BORDERCOL#0) ← (number) 0
*((byte*) BGCOL1#0) ← (number) $50
*((byte*) BGCOL2#0) ← (number) $54
*((byte*) BGCOL3#0) ← (number) $58
*((byte*) BGCOL4#0) ← (number) $5c
(byte*) mode_hicolecmchar::col#0 ← (byte*) mode_hicolecmchar::COLORS#0
(byte*) mode_hicolecmchar::ch#0 ← (byte*) mode_hicolecmchar::SCREEN#0
(byte) mode_hicolecmchar::cy#0 ← (byte) 0
to:mode_hicolecmchar::@3
mode_hicolecmchar::@3: scope:[mode_hicolecmchar] from mode_hicolecmchar::@2 mode_hicolecmchar::@5
(byte) dtv_control#196 ← phi( mode_hicolecmchar::@2/(byte) dtv_control#211 mode_hicolecmchar::@5/(byte) dtv_control#152 )
(byte*) mode_hicolecmchar::ch#3 ← phi( mode_hicolecmchar::@2/(byte*) mode_hicolecmchar::ch#0 mode_hicolecmchar::@5/(byte*) mode_hicolecmchar::ch#4 )
(byte*) mode_hicolecmchar::col#3 ← phi( mode_hicolecmchar::@2/(byte*) mode_hicolecmchar::col#0 mode_hicolecmchar::@5/(byte*) mode_hicolecmchar::col#4 )
(byte) mode_hicolecmchar::cy#4 ← phi( mode_hicolecmchar::@2/(byte) mode_hicolecmchar::cy#0 mode_hicolecmchar::@5/(byte) mode_hicolecmchar::cy#1 )
(byte) mode_hicolecmchar::cx#0 ← (byte) 0
to:mode_hicolecmchar::@4
mode_hicolecmchar::@4: scope:[mode_hicolecmchar] from mode_hicolecmchar::@3 mode_hicolecmchar::@4
(byte) dtv_control#181 ← phi( mode_hicolecmchar::@3/(byte) dtv_control#196 mode_hicolecmchar::@4/(byte) dtv_control#181 )
(byte*) mode_hicolecmchar::ch#2 ← phi( mode_hicolecmchar::@3/(byte*) mode_hicolecmchar::ch#3 mode_hicolecmchar::@4/(byte*) mode_hicolecmchar::ch#1 )
(byte*) mode_hicolecmchar::col#2 ← phi( mode_hicolecmchar::@3/(byte*) mode_hicolecmchar::col#3 mode_hicolecmchar::@4/(byte*) mode_hicolecmchar::col#1 )
(byte) mode_hicolecmchar::cx#2 ← phi( mode_hicolecmchar::@3/(byte) mode_hicolecmchar::cx#0 mode_hicolecmchar::@4/(byte) mode_hicolecmchar::cx#1 )
(byte) mode_hicolecmchar::cy#2 ← phi( mode_hicolecmchar::@3/(byte) mode_hicolecmchar::cy#4 mode_hicolecmchar::@4/(byte) mode_hicolecmchar::cy#2 )
(number~) mode_hicolecmchar::$26 ← (byte) mode_hicolecmchar::cy#2 & (number) $f
(number~) mode_hicolecmchar::$27 ← (number~) mode_hicolecmchar::$26 * (number) $10
(number~) mode_hicolecmchar::$28 ← (byte) mode_hicolecmchar::cx#2 & (number) $f
(number~) mode_hicolecmchar::$29 ← (number~) mode_hicolecmchar::$27 | (number~) mode_hicolecmchar::$28
(byte) mode_hicolecmchar::v#0 ← (number~) mode_hicolecmchar::$29
*((byte*) mode_hicolecmchar::col#2) ← (byte) mode_hicolecmchar::v#0
(byte*) mode_hicolecmchar::col#1 ← ++ (byte*) mode_hicolecmchar::col#2
*((byte*) mode_hicolecmchar::ch#2) ← (byte) mode_hicolecmchar::v#0
(byte*) mode_hicolecmchar::ch#1 ← ++ (byte*) mode_hicolecmchar::ch#2
(byte) mode_hicolecmchar::cx#1 ← (byte) mode_hicolecmchar::cx#2 + rangenext(0,$27)
(bool~) mode_hicolecmchar::$30 ← (byte) mode_hicolecmchar::cx#1 != rangelast(0,$27)
if((bool~) mode_hicolecmchar::$30) goto mode_hicolecmchar::@4
to:mode_hicolecmchar::@5
mode_hicolecmchar::@5: scope:[mode_hicolecmchar] from mode_hicolecmchar::@4
(byte) dtv_control#152 ← phi( mode_hicolecmchar::@4/(byte) dtv_control#181 )
(byte*) mode_hicolecmchar::ch#4 ← phi( mode_hicolecmchar::@4/(byte*) mode_hicolecmchar::ch#1 )
(byte*) mode_hicolecmchar::col#4 ← phi( mode_hicolecmchar::@4/(byte*) mode_hicolecmchar::col#1 )
(byte) mode_hicolecmchar::cy#3 ← phi( mode_hicolecmchar::@4/(byte) mode_hicolecmchar::cy#2 )
(byte) mode_hicolecmchar::cy#1 ← (byte) mode_hicolecmchar::cy#3 + rangenext(0,$18)
(bool~) mode_hicolecmchar::$31 ← (byte) mode_hicolecmchar::cy#1 != rangelast(0,$18)
if((bool~) mode_hicolecmchar::$31) goto mode_hicolecmchar::@3
to:mode_hicolecmchar::@6
mode_hicolecmchar::@6: scope:[mode_hicolecmchar] from mode_hicolecmchar::@5
(byte) dtv_control#122 ← phi( mode_hicolecmchar::@5/(byte) dtv_control#152 )
call mode_ctrl
to:mode_hicolecmchar::@7
mode_hicolecmchar::@7: scope:[mode_hicolecmchar] from mode_hicolecmchar::@6
(byte) dtv_control#83 ← phi( mode_hicolecmchar::@6/(byte) dtv_control#16 )
(byte) dtv_control#34 ← (byte) dtv_control#83
to:mode_hicolecmchar::@return
mode_hicolecmchar::@return: scope:[mode_hicolecmchar] from mode_hicolecmchar::@7
(byte) dtv_control#84 ← phi( mode_hicolecmchar::@7/(byte) dtv_control#34 )
(byte) dtv_control#35 ← (byte) dtv_control#84
return
to:@return
mode_hicolmcchar: scope:[mode_hicolmcchar] from menu::@38
(byte*) mode_hicolmcchar::SCREEN#0 ← ((byte*)) (number) $8000
(byte*) mode_hicolmcchar::CHARSET#0 ← ((byte*)) (number) $9000
(byte*) mode_hicolmcchar::COLORS#0 ← ((byte*)) (number) $8400
(dword~) mode_hicolmcchar::$0 ← ((dword)) (byte*) mode_hicolmcchar::CHARSET#0
(number~) mode_hicolmcchar::$1 ← (dword~) mode_hicolmcchar::$0 / (number) $10000
(byte~) mode_hicolmcchar::$2 ← ((byte)) (number~) mode_hicolmcchar::$1
*((byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte~) mode_hicolmcchar::$2
(byte*~) mode_hicolmcchar::$3 ← (byte*) mode_hicolmcchar::COLORS#0 / (number) $400
(word~) mode_hicolmcchar::$4 ← ((word)) (byte*~) mode_hicolmcchar::$3
(byte~) mode_hicolmcchar::$5 ← < (word~) mode_hicolmcchar::$4
*((byte*) DTV_COLOR_BANK_LO#0) ← (byte~) mode_hicolmcchar::$5
(byte*~) mode_hicolmcchar::$6 ← (byte*) mode_hicolmcchar::COLORS#0 / (number) $400
(word~) mode_hicolmcchar::$7 ← ((word)) (byte*~) mode_hicolmcchar::$6
(byte~) mode_hicolmcchar::$8 ← > (word~) mode_hicolmcchar::$7
*((byte*) DTV_COLOR_BANK_HI#0) ← (byte~) mode_hicolmcchar::$8
(byte) dtv_control#36 ← (byte) DTV_HIGHCOLOR#0
*((byte*) DTV_CONTROL#0) ← (byte) DTV_HIGHCOLOR#0
*((byte*) CIA2_PORT_A_DDR#0) ← (number) 3
(word~) mode_hicolmcchar::$9 ← ((word)) (byte*) mode_hicolmcchar::CHARSET#0
(number~) mode_hicolmcchar::$10 ← (word~) mode_hicolmcchar::$9 / (number) $4000
(byte~) mode_hicolmcchar::$11 ← ((byte)) (number~) mode_hicolmcchar::$10
(number~) mode_hicolmcchar::$12 ← (number) 3 ^ (byte~) mode_hicolmcchar::$11
*((byte*) CIA2_PORT_A#0) ← (number~) mode_hicolmcchar::$12
(byte~) mode_hicolmcchar::$13 ← (byte) VIC_DEN#0 | (byte) VIC_RSEL#0
(number~) mode_hicolmcchar::$14 ← (byte~) mode_hicolmcchar::$13 | (number) 3
*((byte*) VIC_CONTROL#0) ← (number~) mode_hicolmcchar::$14
(byte~) mode_hicolmcchar::$15 ← (byte) VIC_CSEL#0 | (byte) VIC_MCM#0
*((byte*) VIC_CONTROL2#0) ← (byte~) mode_hicolmcchar::$15
(word~) mode_hicolmcchar::$16 ← ((word)) (byte*) mode_hicolmcchar::SCREEN#0
(number~) mode_hicolmcchar::$17 ← (word~) mode_hicolmcchar::$16 & (number) $3fff
(number~) mode_hicolmcchar::$18 ← (number~) mode_hicolmcchar::$17 / (number) $40
(word~) mode_hicolmcchar::$19 ← ((word)) (byte*) mode_hicolmcchar::CHARSET#0
(number~) mode_hicolmcchar::$20 ← (word~) mode_hicolmcchar::$19 & (number) $3fff
(number~) mode_hicolmcchar::$21 ← (number~) mode_hicolmcchar::$20 / (number) $400
(number~) mode_hicolmcchar::$22 ← (number~) mode_hicolmcchar::$18 | (number~) mode_hicolmcchar::$21
(byte~) mode_hicolmcchar::$23 ← ((byte)) (number~) mode_hicolmcchar::$22
*((byte*) VIC_MEMORY#0) ← (byte~) mode_hicolmcchar::$23
(byte) mode_hicolmcchar::i#0 ← (byte) 0
to:mode_hicolmcchar::@1
mode_hicolmcchar::@1: scope:[mode_hicolmcchar] from mode_hicolmcchar mode_hicolmcchar::@1
(byte) dtv_control#228 ← phi( mode_hicolmcchar/(byte) dtv_control#36 mode_hicolmcchar::@1/(byte) dtv_control#228 )
(byte) mode_hicolmcchar::i#2 ← phi( mode_hicolmcchar/(byte) mode_hicolmcchar::i#0 mode_hicolmcchar::@1/(byte) mode_hicolmcchar::i#1 )
*((byte*) DTV_PALETTE#0 + (byte) mode_hicolmcchar::i#2) ← (byte) mode_hicolmcchar::i#2
(byte) mode_hicolmcchar::i#1 ← (byte) mode_hicolmcchar::i#2 + rangenext(0,$f)
(bool~) mode_hicolmcchar::$25 ← (byte) mode_hicolmcchar::i#1 != rangelast(0,$f)
if((bool~) mode_hicolmcchar::$25) goto mode_hicolmcchar::@1
to:mode_hicolmcchar::@2
mode_hicolmcchar::@2: scope:[mode_hicolmcchar] from mode_hicolmcchar::@1
(byte) dtv_control#212 ← phi( mode_hicolmcchar::@1/(byte) dtv_control#228 )
*((byte*) BORDERCOL#0) ← (number) 0
*((byte*) BGCOL1#0) ← (number) $50
*((byte*) BGCOL2#0) ← (number) $54
*((byte*) BGCOL3#0) ← (number) $58
(byte*) mode_hicolmcchar::col#0 ← (byte*) mode_hicolmcchar::COLORS#0
(byte*) mode_hicolmcchar::ch#0 ← (byte*) mode_hicolmcchar::SCREEN#0
(byte) mode_hicolmcchar::cy#0 ← (byte) 0
to:mode_hicolmcchar::@3
mode_hicolmcchar::@3: scope:[mode_hicolmcchar] from mode_hicolmcchar::@2 mode_hicolmcchar::@5
(byte) dtv_control#197 ← phi( mode_hicolmcchar::@2/(byte) dtv_control#212 mode_hicolmcchar::@5/(byte) dtv_control#153 )
(byte*) mode_hicolmcchar::ch#3 ← phi( mode_hicolmcchar::@2/(byte*) mode_hicolmcchar::ch#0 mode_hicolmcchar::@5/(byte*) mode_hicolmcchar::ch#4 )
(byte*) mode_hicolmcchar::col#3 ← phi( mode_hicolmcchar::@2/(byte*) mode_hicolmcchar::col#0 mode_hicolmcchar::@5/(byte*) mode_hicolmcchar::col#4 )
(byte) mode_hicolmcchar::cy#4 ← phi( mode_hicolmcchar::@2/(byte) mode_hicolmcchar::cy#0 mode_hicolmcchar::@5/(byte) mode_hicolmcchar::cy#1 )
(byte) mode_hicolmcchar::cx#0 ← (byte) 0
to:mode_hicolmcchar::@4
mode_hicolmcchar::@4: scope:[mode_hicolmcchar] from mode_hicolmcchar::@3 mode_hicolmcchar::@4
(byte) dtv_control#182 ← phi( mode_hicolmcchar::@3/(byte) dtv_control#197 mode_hicolmcchar::@4/(byte) dtv_control#182 )
(byte*) mode_hicolmcchar::ch#2 ← phi( mode_hicolmcchar::@3/(byte*) mode_hicolmcchar::ch#3 mode_hicolmcchar::@4/(byte*) mode_hicolmcchar::ch#1 )
(byte*) mode_hicolmcchar::col#2 ← phi( mode_hicolmcchar::@3/(byte*) mode_hicolmcchar::col#3 mode_hicolmcchar::@4/(byte*) mode_hicolmcchar::col#1 )
(byte) mode_hicolmcchar::cx#2 ← phi( mode_hicolmcchar::@3/(byte) mode_hicolmcchar::cx#0 mode_hicolmcchar::@4/(byte) mode_hicolmcchar::cx#1 )
(byte) mode_hicolmcchar::cy#2 ← phi( mode_hicolmcchar::@3/(byte) mode_hicolmcchar::cy#4 mode_hicolmcchar::@4/(byte) mode_hicolmcchar::cy#2 )
(number~) mode_hicolmcchar::$26 ← (byte) mode_hicolmcchar::cy#2 & (number) $f
(number~) mode_hicolmcchar::$27 ← (number~) mode_hicolmcchar::$26 * (number) $10
(number~) mode_hicolmcchar::$28 ← (byte) mode_hicolmcchar::cx#2 & (number) $f
(number~) mode_hicolmcchar::$29 ← (number~) mode_hicolmcchar::$27 | (number~) mode_hicolmcchar::$28
(byte) mode_hicolmcchar::v#0 ← (number~) mode_hicolmcchar::$29
*((byte*) mode_hicolmcchar::col#2) ← (byte) mode_hicolmcchar::v#0
(byte*) mode_hicolmcchar::col#1 ← ++ (byte*) mode_hicolmcchar::col#2
*((byte*) mode_hicolmcchar::ch#2) ← (byte) mode_hicolmcchar::v#0
(byte*) mode_hicolmcchar::ch#1 ← ++ (byte*) mode_hicolmcchar::ch#2
(byte) mode_hicolmcchar::cx#1 ← (byte) mode_hicolmcchar::cx#2 + rangenext(0,$27)
(bool~) mode_hicolmcchar::$30 ← (byte) mode_hicolmcchar::cx#1 != rangelast(0,$27)
if((bool~) mode_hicolmcchar::$30) goto mode_hicolmcchar::@4
to:mode_hicolmcchar::@5
mode_hicolmcchar::@5: scope:[mode_hicolmcchar] from mode_hicolmcchar::@4
(byte) dtv_control#153 ← phi( mode_hicolmcchar::@4/(byte) dtv_control#182 )
(byte*) mode_hicolmcchar::ch#4 ← phi( mode_hicolmcchar::@4/(byte*) mode_hicolmcchar::ch#1 )
(byte*) mode_hicolmcchar::col#4 ← phi( mode_hicolmcchar::@4/(byte*) mode_hicolmcchar::col#1 )
(byte) mode_hicolmcchar::cy#3 ← phi( mode_hicolmcchar::@4/(byte) mode_hicolmcchar::cy#2 )
(byte) mode_hicolmcchar::cy#1 ← (byte) mode_hicolmcchar::cy#3 + rangenext(0,$18)
(bool~) mode_hicolmcchar::$31 ← (byte) mode_hicolmcchar::cy#1 != rangelast(0,$18)
if((bool~) mode_hicolmcchar::$31) goto mode_hicolmcchar::@3
to:mode_hicolmcchar::@6
mode_hicolmcchar::@6: scope:[mode_hicolmcchar] from mode_hicolmcchar::@5
(byte) dtv_control#123 ← phi( mode_hicolmcchar::@5/(byte) dtv_control#153 )
call mode_ctrl
to:mode_hicolmcchar::@7
mode_hicolmcchar::@7: scope:[mode_hicolmcchar] from mode_hicolmcchar::@6
(byte) dtv_control#85 ← phi( mode_hicolmcchar::@6/(byte) dtv_control#16 )
(byte) dtv_control#37 ← (byte) dtv_control#85
to:mode_hicolmcchar::@return
mode_hicolmcchar::@return: scope:[mode_hicolmcchar] from mode_hicolmcchar::@7
(byte) dtv_control#86 ← phi( mode_hicolmcchar::@7/(byte) dtv_control#37 )
(byte) dtv_control#38 ← (byte) dtv_control#86
return
to:@return
mode_twoplanebitmap: scope:[mode_twoplanebitmap] from menu::@42
(byte*) mode_twoplanebitmap::PLANEA#0 ← ((byte*)) (number) $4000
(byte*) mode_twoplanebitmap::PLANEB#0 ← ((byte*)) (number) $6000
(byte*) mode_twoplanebitmap::COLORS#0 ← ((byte*)) (number) $8000
(byte~) mode_twoplanebitmap::$0 ← (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0
(byte) dtv_control#39 ← (byte~) mode_twoplanebitmap::$0
(byte~) mode_twoplanebitmap::$1 ← (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0
*((byte*) DTV_CONTROL#0) ← (byte~) mode_twoplanebitmap::$1
(byte~) mode_twoplanebitmap::$2 ← (byte) VIC_ECM#0 | (byte) VIC_BMM#0
(byte~) mode_twoplanebitmap::$3 ← (byte~) mode_twoplanebitmap::$2 | (byte) VIC_DEN#0
(byte~) mode_twoplanebitmap::$4 ← (byte~) mode_twoplanebitmap::$3 | (byte) VIC_RSEL#0
(number~) mode_twoplanebitmap::$5 ← (byte~) mode_twoplanebitmap::$4 | (number) 3
*((byte*) VIC_CONTROL#0) ← (number~) mode_twoplanebitmap::$5
*((byte*) VIC_CONTROL2#0) ← (byte) VIC_CSEL#0
(byte~) mode_twoplanebitmap::$6 ← < (byte*) mode_twoplanebitmap::PLANEA#0
*((byte*) DTV_PLANEA_START_LO#0) ← (byte~) mode_twoplanebitmap::$6
(byte~) mode_twoplanebitmap::$7 ← > (byte*) mode_twoplanebitmap::PLANEA#0
*((byte*) DTV_PLANEA_START_MI#0) ← (byte~) mode_twoplanebitmap::$7
*((byte*) DTV_PLANEA_START_HI#0) ← (number) 0
*((byte*) DTV_PLANEA_STEP#0) ← (number) 1
*((byte*) DTV_PLANEA_MODULO_LO#0) ← (number) 0
*((byte*) DTV_PLANEA_MODULO_HI#0) ← (number) 0
(byte~) mode_twoplanebitmap::$8 ← < (byte*) mode_twoplanebitmap::PLANEB#0
*((byte*) DTV_PLANEB_START_LO#0) ← (byte~) mode_twoplanebitmap::$8
(byte~) mode_twoplanebitmap::$9 ← > (byte*) mode_twoplanebitmap::PLANEB#0
*((byte*) DTV_PLANEB_START_MI#0) ← (byte~) mode_twoplanebitmap::$9
*((byte*) DTV_PLANEB_START_HI#0) ← (number) 0
*((byte*) DTV_PLANEB_STEP#0) ← (number) 1
*((byte*) DTV_PLANEB_MODULO_LO#0) ← (number) 0
*((byte*) DTV_PLANEB_MODULO_HI#0) ← (number) 0
(byte*~) mode_twoplanebitmap::$10 ← (byte*) mode_twoplanebitmap::COLORS#0 / (number) $400
(byte~) mode_twoplanebitmap::$11 ← < (byte*~) mode_twoplanebitmap::$10
*((byte*) DTV_COLOR_BANK_LO#0) ← (byte~) mode_twoplanebitmap::$11
(byte*~) mode_twoplanebitmap::$12 ← (byte*) mode_twoplanebitmap::COLORS#0 / (number) $400
(byte~) mode_twoplanebitmap::$13 ← > (byte*~) mode_twoplanebitmap::$12
*((byte*) DTV_COLOR_BANK_HI#0) ← (byte~) mode_twoplanebitmap::$13
(byte) mode_twoplanebitmap::i#0 ← (byte) 0
to:mode_twoplanebitmap::@1
mode_twoplanebitmap::@1: scope:[mode_twoplanebitmap] from mode_twoplanebitmap mode_twoplanebitmap::@1
(byte) dtv_control#290 ← phi( mode_twoplanebitmap/(byte) dtv_control#39 mode_twoplanebitmap::@1/(byte) dtv_control#290 )
(byte) mode_twoplanebitmap::i#2 ← phi( mode_twoplanebitmap/(byte) mode_twoplanebitmap::i#0 mode_twoplanebitmap::@1/(byte) mode_twoplanebitmap::i#1 )
*((byte*) DTV_PALETTE#0 + (byte) mode_twoplanebitmap::i#2) ← (byte) mode_twoplanebitmap::i#2
(byte) mode_twoplanebitmap::i#1 ← (byte) mode_twoplanebitmap::i#2 + rangenext(0,$f)
(bool~) mode_twoplanebitmap::$15 ← (byte) mode_twoplanebitmap::i#1 != rangelast(0,$f)
if((bool~) mode_twoplanebitmap::$15) goto mode_twoplanebitmap::@1
to:mode_twoplanebitmap::@2
mode_twoplanebitmap::@2: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@1
(byte) dtv_control#289 ← phi( mode_twoplanebitmap::@1/(byte) dtv_control#290 )
*((byte*) BORDERCOL#0) ← (number) 0
*((byte*) BGCOL1#0) ← (number) $70
*((byte*) BGCOL2#0) ← (number) $d4
(byte*) mode_twoplanebitmap::col#0 ← (byte*) mode_twoplanebitmap::COLORS#0
(byte) mode_twoplanebitmap::cy#0 ← (byte) 0
to:mode_twoplanebitmap::@3
mode_twoplanebitmap::@3: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@2 mode_twoplanebitmap::@5
(byte) dtv_control#286 ← phi( mode_twoplanebitmap::@2/(byte) dtv_control#289 mode_twoplanebitmap::@5/(byte) dtv_control#276 )
(byte*) mode_twoplanebitmap::col#3 ← phi( mode_twoplanebitmap::@2/(byte*) mode_twoplanebitmap::col#0 mode_twoplanebitmap::@5/(byte*) mode_twoplanebitmap::col#4 )
(byte) mode_twoplanebitmap::cy#4 ← phi( mode_twoplanebitmap::@2/(byte) mode_twoplanebitmap::cy#0 mode_twoplanebitmap::@5/(byte) mode_twoplanebitmap::cy#1 )
(byte) mode_twoplanebitmap::cx#0 ← (byte) 0
to:mode_twoplanebitmap::@4
mode_twoplanebitmap::@4: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@3 mode_twoplanebitmap::@4
(byte) dtv_control#282 ← phi( mode_twoplanebitmap::@3/(byte) dtv_control#286 mode_twoplanebitmap::@4/(byte) dtv_control#282 )
(byte*) mode_twoplanebitmap::col#2 ← phi( mode_twoplanebitmap::@3/(byte*) mode_twoplanebitmap::col#3 mode_twoplanebitmap::@4/(byte*) mode_twoplanebitmap::col#1 )
(byte) mode_twoplanebitmap::cx#2 ← phi( mode_twoplanebitmap::@3/(byte) mode_twoplanebitmap::cx#0 mode_twoplanebitmap::@4/(byte) mode_twoplanebitmap::cx#1 )
(byte) mode_twoplanebitmap::cy#2 ← phi( mode_twoplanebitmap::@3/(byte) mode_twoplanebitmap::cy#4 mode_twoplanebitmap::@4/(byte) mode_twoplanebitmap::cy#2 )
(number~) mode_twoplanebitmap::$16 ← (byte) mode_twoplanebitmap::cy#2 & (number) $f
(number~) mode_twoplanebitmap::$17 ← (number~) mode_twoplanebitmap::$16 * (number) $10
(number~) mode_twoplanebitmap::$18 ← (byte) mode_twoplanebitmap::cx#2 & (number) $f
(number~) mode_twoplanebitmap::$19 ← (number~) mode_twoplanebitmap::$17 | (number~) mode_twoplanebitmap::$18
*((byte*) mode_twoplanebitmap::col#2) ← (number~) mode_twoplanebitmap::$19
(byte*) mode_twoplanebitmap::col#1 ← ++ (byte*) mode_twoplanebitmap::col#2
(byte) mode_twoplanebitmap::cx#1 ← (byte) mode_twoplanebitmap::cx#2 + rangenext(0,$27)
(bool~) mode_twoplanebitmap::$20 ← (byte) mode_twoplanebitmap::cx#1 != rangelast(0,$27)
if((bool~) mode_twoplanebitmap::$20) goto mode_twoplanebitmap::@4
to:mode_twoplanebitmap::@5
mode_twoplanebitmap::@5: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@4
(byte) dtv_control#276 ← phi( mode_twoplanebitmap::@4/(byte) dtv_control#282 )
(byte*) mode_twoplanebitmap::col#4 ← phi( mode_twoplanebitmap::@4/(byte*) mode_twoplanebitmap::col#1 )
(byte) mode_twoplanebitmap::cy#3 ← phi( mode_twoplanebitmap::@4/(byte) mode_twoplanebitmap::cy#2 )
(byte) mode_twoplanebitmap::cy#1 ← (byte) mode_twoplanebitmap::cy#3 + rangenext(0,$18)
(bool~) mode_twoplanebitmap::$21 ← (byte) mode_twoplanebitmap::cy#1 != rangelast(0,$18)
if((bool~) mode_twoplanebitmap::$21) goto mode_twoplanebitmap::@3
to:mode_twoplanebitmap::@6
mode_twoplanebitmap::@6: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@5
(byte) dtv_control#271 ← phi( mode_twoplanebitmap::@5/(byte) dtv_control#276 )
(byte*) mode_twoplanebitmap::gfxa#0 ← (byte*) mode_twoplanebitmap::PLANEA#0
(byte) mode_twoplanebitmap::ay#0 ← (byte) 0
to:mode_twoplanebitmap::@7
mode_twoplanebitmap::@7: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@13 mode_twoplanebitmap::@6
(byte) dtv_control#265 ← phi( mode_twoplanebitmap::@13/(byte) dtv_control#229 mode_twoplanebitmap::@6/(byte) dtv_control#271 )
(byte*) mode_twoplanebitmap::gfxa#7 ← phi( mode_twoplanebitmap::@13/(byte*) mode_twoplanebitmap::gfxa#8 mode_twoplanebitmap::@6/(byte*) mode_twoplanebitmap::gfxa#0 )
(byte) mode_twoplanebitmap::ay#5 ← phi( mode_twoplanebitmap::@13/(byte) mode_twoplanebitmap::ay#1 mode_twoplanebitmap::@6/(byte) mode_twoplanebitmap::ay#0 )
(byte) mode_twoplanebitmap::ax#0 ← (byte) 0
to:mode_twoplanebitmap::@8
mode_twoplanebitmap::@8: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@10 mode_twoplanebitmap::@7
(byte) dtv_control#258 ← phi( mode_twoplanebitmap::@10/(byte) dtv_control#240 mode_twoplanebitmap::@7/(byte) dtv_control#265 )
(byte) mode_twoplanebitmap::ax#5 ← phi( mode_twoplanebitmap::@10/(byte) mode_twoplanebitmap::ax#1 mode_twoplanebitmap::@7/(byte) mode_twoplanebitmap::ax#0 )
(byte*) mode_twoplanebitmap::gfxa#5 ← phi( mode_twoplanebitmap::@10/(byte*) mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::@7/(byte*) mode_twoplanebitmap::gfxa#7 )
(byte) mode_twoplanebitmap::ay#2 ← phi( mode_twoplanebitmap::@10/(byte) mode_twoplanebitmap::ay#4 mode_twoplanebitmap::@7/(byte) mode_twoplanebitmap::ay#5 )
(number~) mode_twoplanebitmap::$22 ← (byte) mode_twoplanebitmap::ay#2 & (number) 4
(bool~) mode_twoplanebitmap::$23 ← (number~) mode_twoplanebitmap::$22 == (number) 0
if((bool~) mode_twoplanebitmap::$23) goto mode_twoplanebitmap::@9
to:mode_twoplanebitmap::@11
mode_twoplanebitmap::@9: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@8
(byte) dtv_control#249 ← phi( mode_twoplanebitmap::@8/(byte) dtv_control#258 )
(byte) mode_twoplanebitmap::ay#7 ← phi( mode_twoplanebitmap::@8/(byte) mode_twoplanebitmap::ay#2 )
(byte) mode_twoplanebitmap::ax#4 ← phi( mode_twoplanebitmap::@8/(byte) mode_twoplanebitmap::ax#5 )
(byte*) mode_twoplanebitmap::gfxa#3 ← phi( mode_twoplanebitmap::@8/(byte*) mode_twoplanebitmap::gfxa#5 )
*((byte*) mode_twoplanebitmap::gfxa#3) ← (number) 0
(byte*) mode_twoplanebitmap::gfxa#1 ← ++ (byte*) mode_twoplanebitmap::gfxa#3
to:mode_twoplanebitmap::@10
mode_twoplanebitmap::@11: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@8
(byte) dtv_control#248 ← phi( mode_twoplanebitmap::@8/(byte) dtv_control#258 )
(byte) mode_twoplanebitmap::ay#6 ← phi( mode_twoplanebitmap::@8/(byte) mode_twoplanebitmap::ay#2 )
(byte) mode_twoplanebitmap::ax#3 ← phi( mode_twoplanebitmap::@8/(byte) mode_twoplanebitmap::ax#5 )
(byte*) mode_twoplanebitmap::gfxa#4 ← phi( mode_twoplanebitmap::@8/(byte*) mode_twoplanebitmap::gfxa#5 )
*((byte*) mode_twoplanebitmap::gfxa#4) ← (number) $ff
(byte*) mode_twoplanebitmap::gfxa#2 ← ++ (byte*) mode_twoplanebitmap::gfxa#4
to:mode_twoplanebitmap::@10
mode_twoplanebitmap::@10: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@11 mode_twoplanebitmap::@9
(byte) dtv_control#240 ← phi( mode_twoplanebitmap::@11/(byte) dtv_control#248 mode_twoplanebitmap::@9/(byte) dtv_control#249 )
(byte*) mode_twoplanebitmap::gfxa#6 ← phi( mode_twoplanebitmap::@11/(byte*) mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::@9/(byte*) mode_twoplanebitmap::gfxa#1 )
(byte) mode_twoplanebitmap::ay#4 ← phi( mode_twoplanebitmap::@11/(byte) mode_twoplanebitmap::ay#6 mode_twoplanebitmap::@9/(byte) mode_twoplanebitmap::ay#7 )
(byte) mode_twoplanebitmap::ax#2 ← phi( mode_twoplanebitmap::@11/(byte) mode_twoplanebitmap::ax#3 mode_twoplanebitmap::@9/(byte) mode_twoplanebitmap::ax#4 )
(byte) mode_twoplanebitmap::ax#1 ← (byte) mode_twoplanebitmap::ax#2 + rangenext(0,$27)
(bool~) mode_twoplanebitmap::$24 ← (byte) mode_twoplanebitmap::ax#1 != rangelast(0,$27)
if((bool~) mode_twoplanebitmap::$24) goto mode_twoplanebitmap::@8
to:mode_twoplanebitmap::@13
mode_twoplanebitmap::@13: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@10
(byte) dtv_control#229 ← phi( mode_twoplanebitmap::@10/(byte) dtv_control#240 )
(byte*) mode_twoplanebitmap::gfxa#8 ← phi( mode_twoplanebitmap::@10/(byte*) mode_twoplanebitmap::gfxa#6 )
(byte) mode_twoplanebitmap::ay#3 ← phi( mode_twoplanebitmap::@10/(byte) mode_twoplanebitmap::ay#4 )
(byte) mode_twoplanebitmap::ay#1 ← (byte) mode_twoplanebitmap::ay#3 + rangenext(0,$c7)
(bool~) mode_twoplanebitmap::$25 ← (byte) mode_twoplanebitmap::ay#1 != rangelast(0,$c7)
if((bool~) mode_twoplanebitmap::$25) goto mode_twoplanebitmap::@7
to:mode_twoplanebitmap::@14
mode_twoplanebitmap::@14: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@13
(byte) dtv_control#213 ← phi( mode_twoplanebitmap::@13/(byte) dtv_control#229 )
(byte*) mode_twoplanebitmap::gfxb#0 ← (byte*) mode_twoplanebitmap::PLANEB#0
(byte) mode_twoplanebitmap::by#0 ← (byte) 0
to:mode_twoplanebitmap::@15
mode_twoplanebitmap::@15: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@14 mode_twoplanebitmap::@17
(byte) dtv_control#198 ← phi( mode_twoplanebitmap::@14/(byte) dtv_control#213 mode_twoplanebitmap::@17/(byte) dtv_control#154 )
(byte) mode_twoplanebitmap::by#4 ← phi( mode_twoplanebitmap::@14/(byte) mode_twoplanebitmap::by#0 mode_twoplanebitmap::@17/(byte) mode_twoplanebitmap::by#1 )
(byte*) mode_twoplanebitmap::gfxb#3 ← phi( mode_twoplanebitmap::@14/(byte*) mode_twoplanebitmap::gfxb#0 mode_twoplanebitmap::@17/(byte*) mode_twoplanebitmap::gfxb#4 )
(byte) mode_twoplanebitmap::bx#0 ← (byte) 0
to:mode_twoplanebitmap::@16
mode_twoplanebitmap::@16: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@15 mode_twoplanebitmap::@16
(byte) dtv_control#183 ← phi( mode_twoplanebitmap::@15/(byte) dtv_control#198 mode_twoplanebitmap::@16/(byte) dtv_control#183 )
(byte) mode_twoplanebitmap::by#3 ← phi( mode_twoplanebitmap::@15/(byte) mode_twoplanebitmap::by#4 mode_twoplanebitmap::@16/(byte) mode_twoplanebitmap::by#3 )
(byte) mode_twoplanebitmap::bx#2 ← phi( mode_twoplanebitmap::@15/(byte) mode_twoplanebitmap::bx#0 mode_twoplanebitmap::@16/(byte) mode_twoplanebitmap::bx#1 )
(byte*) mode_twoplanebitmap::gfxb#2 ← phi( mode_twoplanebitmap::@15/(byte*) mode_twoplanebitmap::gfxb#3 mode_twoplanebitmap::@16/(byte*) mode_twoplanebitmap::gfxb#1 )
*((byte*) mode_twoplanebitmap::gfxb#2) ← (number) $f
(byte*) mode_twoplanebitmap::gfxb#1 ← ++ (byte*) mode_twoplanebitmap::gfxb#2
(byte) mode_twoplanebitmap::bx#1 ← (byte) mode_twoplanebitmap::bx#2 + rangenext(0,$27)
(bool~) mode_twoplanebitmap::$26 ← (byte) mode_twoplanebitmap::bx#1 != rangelast(0,$27)
if((bool~) mode_twoplanebitmap::$26) goto mode_twoplanebitmap::@16
to:mode_twoplanebitmap::@17
mode_twoplanebitmap::@17: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@16
(byte) dtv_control#154 ← phi( mode_twoplanebitmap::@16/(byte) dtv_control#183 )
(byte*) mode_twoplanebitmap::gfxb#4 ← phi( mode_twoplanebitmap::@16/(byte*) mode_twoplanebitmap::gfxb#1 )
(byte) mode_twoplanebitmap::by#2 ← phi( mode_twoplanebitmap::@16/(byte) mode_twoplanebitmap::by#3 )
(byte) mode_twoplanebitmap::by#1 ← (byte) mode_twoplanebitmap::by#2 + rangenext(0,$c7)
(bool~) mode_twoplanebitmap::$27 ← (byte) mode_twoplanebitmap::by#1 != rangelast(0,$c7)
if((bool~) mode_twoplanebitmap::$27) goto mode_twoplanebitmap::@15
to:mode_twoplanebitmap::@18
mode_twoplanebitmap::@18: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@17
(byte) dtv_control#124 ← phi( mode_twoplanebitmap::@17/(byte) dtv_control#154 )
call mode_ctrl
to:mode_twoplanebitmap::@19
mode_twoplanebitmap::@19: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@18
(byte) dtv_control#87 ← phi( mode_twoplanebitmap::@18/(byte) dtv_control#16 )
(byte) dtv_control#40 ← (byte) dtv_control#87
to:mode_twoplanebitmap::@return
mode_twoplanebitmap::@return: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@19
(byte) dtv_control#88 ← phi( mode_twoplanebitmap::@19/(byte) dtv_control#40 )
(byte) dtv_control#41 ← (byte) dtv_control#88
return
to:@return
mode_sixsfred: scope:[mode_sixsfred] from menu::@44
(byte*) mode_sixsfred::PLANEA#0 ← ((byte*)) (number) $4000
(byte*) mode_sixsfred::PLANEB#0 ← ((byte*)) (number) $6000
(byte*) mode_sixsfred::COLORS#0 ← ((byte*)) (number) $8000
(byte~) mode_sixsfred::$0 ← (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0
(byte) dtv_control#42 ← (byte~) mode_sixsfred::$0
(byte~) mode_sixsfred::$1 ← (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0
*((byte*) DTV_CONTROL#0) ← (byte~) mode_sixsfred::$1
(byte~) mode_sixsfred::$2 ← (byte) VIC_ECM#0 | (byte) VIC_BMM#0
(byte~) mode_sixsfred::$3 ← (byte~) mode_sixsfred::$2 | (byte) VIC_DEN#0
(byte~) mode_sixsfred::$4 ← (byte~) mode_sixsfred::$3 | (byte) VIC_RSEL#0
(number~) mode_sixsfred::$5 ← (byte~) mode_sixsfred::$4 | (number) 3
*((byte*) VIC_CONTROL#0) ← (number~) mode_sixsfred::$5
(byte~) mode_sixsfred::$6 ← (byte) VIC_MCM#0 | (byte) VIC_CSEL#0
*((byte*) VIC_CONTROL2#0) ← (byte~) mode_sixsfred::$6
(byte~) mode_sixsfred::$7 ← < (byte*) mode_sixsfred::PLANEA#0
*((byte*) DTV_PLANEA_START_LO#0) ← (byte~) mode_sixsfred::$7
(byte~) mode_sixsfred::$8 ← > (byte*) mode_sixsfred::PLANEA#0
*((byte*) DTV_PLANEA_START_MI#0) ← (byte~) mode_sixsfred::$8
*((byte*) DTV_PLANEA_START_HI#0) ← (number) 0
*((byte*) DTV_PLANEA_STEP#0) ← (number) 1
*((byte*) DTV_PLANEA_MODULO_LO#0) ← (number) 0
*((byte*) DTV_PLANEA_MODULO_HI#0) ← (number) 0
(byte~) mode_sixsfred::$9 ← < (byte*) mode_sixsfred::PLANEB#0
*((byte*) DTV_PLANEB_START_LO#0) ← (byte~) mode_sixsfred::$9
(byte~) mode_sixsfred::$10 ← > (byte*) mode_sixsfred::PLANEB#0
*((byte*) DTV_PLANEB_START_MI#0) ← (byte~) mode_sixsfred::$10
*((byte*) DTV_PLANEB_START_HI#0) ← (number) 0
*((byte*) DTV_PLANEB_STEP#0) ← (number) 1
*((byte*) DTV_PLANEB_MODULO_LO#0) ← (number) 0
*((byte*) DTV_PLANEB_MODULO_HI#0) ← (number) 0
(byte*~) mode_sixsfred::$11 ← (byte*) mode_sixsfred::COLORS#0 / (number) $400
(byte~) mode_sixsfred::$12 ← < (byte*~) mode_sixsfred::$11
*((byte*) DTV_COLOR_BANK_LO#0) ← (byte~) mode_sixsfred::$12
(byte*~) mode_sixsfred::$13 ← (byte*) mode_sixsfred::COLORS#0 / (number) $400
(byte~) mode_sixsfred::$14 ← > (byte*~) mode_sixsfred::$13
*((byte*) DTV_COLOR_BANK_HI#0) ← (byte~) mode_sixsfred::$14
(byte) mode_sixsfred::i#0 ← (byte) 0
to:mode_sixsfred::@1
mode_sixsfred::@1: scope:[mode_sixsfred] from mode_sixsfred mode_sixsfred::@1
(byte) dtv_control#287 ← phi( mode_sixsfred/(byte) dtv_control#42 mode_sixsfred::@1/(byte) dtv_control#287 )
(byte) mode_sixsfred::i#2 ← phi( mode_sixsfred/(byte) mode_sixsfred::i#0 mode_sixsfred::@1/(byte) mode_sixsfred::i#1 )
*((byte*) DTV_PALETTE#0 + (byte) mode_sixsfred::i#2) ← (byte) mode_sixsfred::i#2
(byte) mode_sixsfred::i#1 ← (byte) mode_sixsfred::i#2 + rangenext(0,$f)
(bool~) mode_sixsfred::$16 ← (byte) mode_sixsfred::i#1 != rangelast(0,$f)
if((bool~) mode_sixsfred::$16) goto mode_sixsfred::@1
to:mode_sixsfred::@2
mode_sixsfred::@2: scope:[mode_sixsfred] from mode_sixsfred::@1
(byte) dtv_control#283 ← phi( mode_sixsfred::@1/(byte) dtv_control#287 )
*((byte*) BORDERCOL#0) ← (number) 0
(byte*) mode_sixsfred::col#0 ← (byte*) mode_sixsfred::COLORS#0
(byte) mode_sixsfred::cy#0 ← (byte) 0
to:mode_sixsfred::@3
mode_sixsfred::@3: scope:[mode_sixsfred] from mode_sixsfred::@2 mode_sixsfred::@5
(byte) dtv_control#277 ← phi( mode_sixsfred::@2/(byte) dtv_control#283 mode_sixsfred::@5/(byte) dtv_control#266 )
(byte*) mode_sixsfred::col#3 ← phi( mode_sixsfred::@2/(byte*) mode_sixsfred::col#0 mode_sixsfred::@5/(byte*) mode_sixsfred::col#4 )
(byte) mode_sixsfred::cy#4 ← phi( mode_sixsfred::@2/(byte) mode_sixsfred::cy#0 mode_sixsfred::@5/(byte) mode_sixsfred::cy#1 )
(byte) mode_sixsfred::cx#0 ← (byte) 0
to:mode_sixsfred::@4
mode_sixsfred::@4: scope:[mode_sixsfred] from mode_sixsfred::@3 mode_sixsfred::@4
(byte) dtv_control#272 ← phi( mode_sixsfred::@3/(byte) dtv_control#277 mode_sixsfred::@4/(byte) dtv_control#272 )
(byte*) mode_sixsfred::col#2 ← phi( mode_sixsfred::@3/(byte*) mode_sixsfred::col#3 mode_sixsfred::@4/(byte*) mode_sixsfred::col#1 )
(byte) mode_sixsfred::cy#2 ← phi( mode_sixsfred::@3/(byte) mode_sixsfred::cy#4 mode_sixsfred::@4/(byte) mode_sixsfred::cy#2 )
(byte) mode_sixsfred::cx#2 ← phi( mode_sixsfred::@3/(byte) mode_sixsfred::cx#0 mode_sixsfred::@4/(byte) mode_sixsfred::cx#1 )
(byte~) mode_sixsfred::$17 ← (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#2
(number~) mode_sixsfred::$18 ← (byte~) mode_sixsfred::$17 & (number) $f
*((byte*) mode_sixsfred::col#2) ← (number~) mode_sixsfred::$18
(byte*) mode_sixsfred::col#1 ← ++ (byte*) mode_sixsfred::col#2
(byte) mode_sixsfred::cx#1 ← (byte) mode_sixsfred::cx#2 + rangenext(0,$27)
(bool~) mode_sixsfred::$19 ← (byte) mode_sixsfred::cx#1 != rangelast(0,$27)
if((bool~) mode_sixsfred::$19) goto mode_sixsfred::@4
to:mode_sixsfred::@5
mode_sixsfred::@5: scope:[mode_sixsfred] from mode_sixsfred::@4
(byte) dtv_control#266 ← phi( mode_sixsfred::@4/(byte) dtv_control#272 )
(byte*) mode_sixsfred::col#4 ← phi( mode_sixsfred::@4/(byte*) mode_sixsfred::col#1 )
(byte) mode_sixsfred::cy#3 ← phi( mode_sixsfred::@4/(byte) mode_sixsfred::cy#2 )
(byte) mode_sixsfred::cy#1 ← (byte) mode_sixsfred::cy#3 + rangenext(0,$18)
(bool~) mode_sixsfred::$20 ← (byte) mode_sixsfred::cy#1 != rangelast(0,$18)
if((bool~) mode_sixsfred::$20) goto mode_sixsfred::@3
to:mode_sixsfred::@6
mode_sixsfred::@6: scope:[mode_sixsfred] from mode_sixsfred::@5
(byte) dtv_control#259 ← phi( mode_sixsfred::@5/(byte) dtv_control#266 )
(byte*) mode_sixsfred::gfxa#0 ← (byte*) mode_sixsfred::PLANEA#0
(byte[]) mode_sixsfred::row_bitmask#0 ← { (number) 0, (number) $55, (number) $aa, (number) $ff }
(byte) mode_sixsfred::ay#0 ← (byte) 0
to:mode_sixsfred::@7
mode_sixsfred::@7: scope:[mode_sixsfred] from mode_sixsfred::@6 mode_sixsfred::@9
(byte) dtv_control#250 ← phi( mode_sixsfred::@6/(byte) dtv_control#259 mode_sixsfred::@9/(byte) dtv_control#230 )
(byte*) mode_sixsfred::gfxa#3 ← phi( mode_sixsfred::@6/(byte*) mode_sixsfred::gfxa#0 mode_sixsfred::@9/(byte*) mode_sixsfred::gfxa#4 )
(byte) mode_sixsfred::ay#4 ← phi( mode_sixsfred::@6/(byte) mode_sixsfred::ay#0 mode_sixsfred::@9/(byte) mode_sixsfred::ay#1 )
(byte) mode_sixsfred::ax#0 ← (byte) 0
to:mode_sixsfred::@8
mode_sixsfred::@8: scope:[mode_sixsfred] from mode_sixsfred::@7 mode_sixsfred::@8
(byte) dtv_control#241 ← phi( mode_sixsfred::@7/(byte) dtv_control#250 mode_sixsfred::@8/(byte) dtv_control#241 )
(byte) mode_sixsfred::ax#2 ← phi( mode_sixsfred::@7/(byte) mode_sixsfred::ax#0 mode_sixsfred::@8/(byte) mode_sixsfred::ax#1 )
(byte*) mode_sixsfred::gfxa#2 ← phi( mode_sixsfred::@7/(byte*) mode_sixsfred::gfxa#3 mode_sixsfred::@8/(byte*) mode_sixsfred::gfxa#1 )
(byte) mode_sixsfred::ay#2 ← phi( mode_sixsfred::@7/(byte) mode_sixsfred::ay#4 mode_sixsfred::@8/(byte) mode_sixsfred::ay#2 )
(number~) mode_sixsfred::$21 ← (byte) mode_sixsfred::ay#2 / (number) 2
(number~) mode_sixsfred::$22 ← (number~) mode_sixsfred::$21 & (number) 3
(byte) mode_sixsfred::row#0 ← (number~) mode_sixsfred::$22
*((byte*) mode_sixsfred::gfxa#2) ← *((byte[]) mode_sixsfred::row_bitmask#0 + (byte) mode_sixsfred::row#0)
(byte*) mode_sixsfred::gfxa#1 ← ++ (byte*) mode_sixsfred::gfxa#2
(byte) mode_sixsfred::ax#1 ← (byte) mode_sixsfred::ax#2 + rangenext(0,$27)
(bool~) mode_sixsfred::$23 ← (byte) mode_sixsfred::ax#1 != rangelast(0,$27)
if((bool~) mode_sixsfred::$23) goto mode_sixsfred::@8
to:mode_sixsfred::@9
mode_sixsfred::@9: scope:[mode_sixsfred] from mode_sixsfred::@8
(byte) dtv_control#230 ← phi( mode_sixsfred::@8/(byte) dtv_control#241 )
(byte*) mode_sixsfred::gfxa#4 ← phi( mode_sixsfred::@8/(byte*) mode_sixsfred::gfxa#1 )
(byte) mode_sixsfred::ay#3 ← phi( mode_sixsfred::@8/(byte) mode_sixsfred::ay#2 )
(byte) mode_sixsfred::ay#1 ← (byte) mode_sixsfred::ay#3 + rangenext(0,$c7)
(bool~) mode_sixsfred::$24 ← (byte) mode_sixsfred::ay#1 != rangelast(0,$c7)
if((bool~) mode_sixsfred::$24) goto mode_sixsfred::@7
to:mode_sixsfred::@10
mode_sixsfred::@10: scope:[mode_sixsfred] from mode_sixsfred::@9
(byte) dtv_control#214 ← phi( mode_sixsfred::@9/(byte) dtv_control#230 )
(byte*) mode_sixsfred::gfxb#0 ← (byte*) mode_sixsfred::PLANEB#0
(byte) mode_sixsfred::by#0 ← (byte) 0
to:mode_sixsfred::@11
mode_sixsfred::@11: scope:[mode_sixsfred] from mode_sixsfred::@10 mode_sixsfred::@13
(byte) dtv_control#199 ← phi( mode_sixsfred::@10/(byte) dtv_control#214 mode_sixsfred::@13/(byte) dtv_control#155 )
(byte) mode_sixsfred::by#4 ← phi( mode_sixsfred::@10/(byte) mode_sixsfred::by#0 mode_sixsfred::@13/(byte) mode_sixsfred::by#1 )
(byte*) mode_sixsfred::gfxb#3 ← phi( mode_sixsfred::@10/(byte*) mode_sixsfred::gfxb#0 mode_sixsfred::@13/(byte*) mode_sixsfred::gfxb#4 )
(byte) mode_sixsfred::bx#0 ← (byte) 0
to:mode_sixsfred::@12
mode_sixsfred::@12: scope:[mode_sixsfred] from mode_sixsfred::@11 mode_sixsfred::@12
(byte) dtv_control#184 ← phi( mode_sixsfred::@11/(byte) dtv_control#199 mode_sixsfred::@12/(byte) dtv_control#184 )
(byte) mode_sixsfred::by#3 ← phi( mode_sixsfred::@11/(byte) mode_sixsfred::by#4 mode_sixsfred::@12/(byte) mode_sixsfred::by#3 )
(byte) mode_sixsfred::bx#2 ← phi( mode_sixsfred::@11/(byte) mode_sixsfred::bx#0 mode_sixsfred::@12/(byte) mode_sixsfred::bx#1 )
(byte*) mode_sixsfred::gfxb#2 ← phi( mode_sixsfred::@11/(byte*) mode_sixsfred::gfxb#3 mode_sixsfred::@12/(byte*) mode_sixsfred::gfxb#1 )
*((byte*) mode_sixsfred::gfxb#2) ← (number) $1b
(byte*) mode_sixsfred::gfxb#1 ← ++ (byte*) mode_sixsfred::gfxb#2
(byte) mode_sixsfred::bx#1 ← (byte) mode_sixsfred::bx#2 + rangenext(0,$27)
(bool~) mode_sixsfred::$25 ← (byte) mode_sixsfred::bx#1 != rangelast(0,$27)
if((bool~) mode_sixsfred::$25) goto mode_sixsfred::@12
to:mode_sixsfred::@13
mode_sixsfred::@13: scope:[mode_sixsfred] from mode_sixsfred::@12
(byte) dtv_control#155 ← phi( mode_sixsfred::@12/(byte) dtv_control#184 )
(byte*) mode_sixsfred::gfxb#4 ← phi( mode_sixsfred::@12/(byte*) mode_sixsfred::gfxb#1 )
(byte) mode_sixsfred::by#2 ← phi( mode_sixsfred::@12/(byte) mode_sixsfred::by#3 )
(byte) mode_sixsfred::by#1 ← (byte) mode_sixsfred::by#2 + rangenext(0,$c7)
(bool~) mode_sixsfred::$26 ← (byte) mode_sixsfred::by#1 != rangelast(0,$c7)
if((bool~) mode_sixsfred::$26) goto mode_sixsfred::@11
to:mode_sixsfred::@14
mode_sixsfred::@14: scope:[mode_sixsfred] from mode_sixsfred::@13
(byte) dtv_control#125 ← phi( mode_sixsfred::@13/(byte) dtv_control#155 )
call mode_ctrl
to:mode_sixsfred::@15
mode_sixsfred::@15: scope:[mode_sixsfred] from mode_sixsfred::@14
(byte) dtv_control#89 ← phi( mode_sixsfred::@14/(byte) dtv_control#16 )
(byte) dtv_control#43 ← (byte) dtv_control#89
to:mode_sixsfred::@return
mode_sixsfred::@return: scope:[mode_sixsfred] from mode_sixsfred::@15
(byte) dtv_control#90 ← phi( mode_sixsfred::@15/(byte) dtv_control#43 )
(byte) dtv_control#44 ← (byte) dtv_control#90
return
to:@return
mode_sixsfred2: scope:[mode_sixsfred2] from menu::@40
(byte*) mode_sixsfred2::PLANEA#0 ← ((byte*)) (number) $4000
(byte*) mode_sixsfred2::PLANEB#0 ← ((byte*)) (number) $6000
(byte*) mode_sixsfred2::COLORS#0 ← ((byte*)) (number) $8000
(byte) dtv_control#45 ← (byte) DTV_LINEAR#0
*((byte*) DTV_CONTROL#0) ← (byte) DTV_LINEAR#0
(byte~) mode_sixsfred2::$0 ← (byte) VIC_ECM#0 | (byte) VIC_BMM#0
(byte~) mode_sixsfred2::$1 ← (byte~) mode_sixsfred2::$0 | (byte) VIC_DEN#0
(byte~) mode_sixsfred2::$2 ← (byte~) mode_sixsfred2::$1 | (byte) VIC_RSEL#0
(number~) mode_sixsfred2::$3 ← (byte~) mode_sixsfred2::$2 | (number) 3
*((byte*) VIC_CONTROL#0) ← (number~) mode_sixsfred2::$3
(byte~) mode_sixsfred2::$4 ← (byte) VIC_MCM#0 | (byte) VIC_CSEL#0
*((byte*) VIC_CONTROL2#0) ← (byte~) mode_sixsfred2::$4
(byte~) mode_sixsfred2::$5 ← < (byte*) mode_sixsfred2::PLANEA#0
*((byte*) DTV_PLANEA_START_LO#0) ← (byte~) mode_sixsfred2::$5
(byte~) mode_sixsfred2::$6 ← > (byte*) mode_sixsfred2::PLANEA#0
*((byte*) DTV_PLANEA_START_MI#0) ← (byte~) mode_sixsfred2::$6
*((byte*) DTV_PLANEA_START_HI#0) ← (number) 0
*((byte*) DTV_PLANEA_STEP#0) ← (number) 1
*((byte*) DTV_PLANEA_MODULO_LO#0) ← (number) 0
*((byte*) DTV_PLANEA_MODULO_HI#0) ← (number) 0
(byte~) mode_sixsfred2::$7 ← < (byte*) mode_sixsfred2::PLANEB#0
*((byte*) DTV_PLANEB_START_LO#0) ← (byte~) mode_sixsfred2::$7
(byte~) mode_sixsfred2::$8 ← > (byte*) mode_sixsfred2::PLANEB#0
*((byte*) DTV_PLANEB_START_MI#0) ← (byte~) mode_sixsfred2::$8
*((byte*) DTV_PLANEB_START_HI#0) ← (number) 0
*((byte*) DTV_PLANEB_STEP#0) ← (number) 1
*((byte*) DTV_PLANEB_MODULO_LO#0) ← (number) 0
*((byte*) DTV_PLANEB_MODULO_HI#0) ← (number) 0
(byte*~) mode_sixsfred2::$9 ← (byte*) mode_sixsfred2::COLORS#0 / (number) $400
(byte~) mode_sixsfred2::$10 ← < (byte*~) mode_sixsfred2::$9
*((byte*) DTV_COLOR_BANK_LO#0) ← (byte~) mode_sixsfred2::$10
(byte*~) mode_sixsfred2::$11 ← (byte*) mode_sixsfred2::COLORS#0 / (number) $400
(byte~) mode_sixsfred2::$12 ← > (byte*~) mode_sixsfred2::$11
*((byte*) DTV_COLOR_BANK_HI#0) ← (byte~) mode_sixsfred2::$12
(byte) mode_sixsfred2::i#0 ← (byte) 0
to:mode_sixsfred2::@1
mode_sixsfred2::@1: scope:[mode_sixsfred2] from mode_sixsfred2 mode_sixsfred2::@1
(byte) dtv_control#288 ← phi( mode_sixsfred2/(byte) dtv_control#45 mode_sixsfred2::@1/(byte) dtv_control#288 )
(byte) mode_sixsfred2::i#2 ← phi( mode_sixsfred2/(byte) mode_sixsfred2::i#0 mode_sixsfred2::@1/(byte) mode_sixsfred2::i#1 )
*((byte*) DTV_PALETTE#0 + (byte) mode_sixsfred2::i#2) ← (byte) mode_sixsfred2::i#2
(byte) mode_sixsfred2::i#1 ← (byte) mode_sixsfred2::i#2 + rangenext(0,$f)
(bool~) mode_sixsfred2::$14 ← (byte) mode_sixsfred2::i#1 != rangelast(0,$f)
if((bool~) mode_sixsfred2::$14) goto mode_sixsfred2::@1
to:mode_sixsfred2::@2
mode_sixsfred2::@2: scope:[mode_sixsfred2] from mode_sixsfred2::@1
(byte) dtv_control#284 ← phi( mode_sixsfred2::@1/(byte) dtv_control#288 )
*((byte*) BORDERCOL#0) ← (number) 0
(byte*) mode_sixsfred2::col#0 ← (byte*) mode_sixsfred2::COLORS#0
(byte) mode_sixsfred2::cy#0 ← (byte) 0
to:mode_sixsfred2::@3
mode_sixsfred2::@3: scope:[mode_sixsfred2] from mode_sixsfred2::@2 mode_sixsfred2::@5
(byte) dtv_control#278 ← phi( mode_sixsfred2::@2/(byte) dtv_control#284 mode_sixsfred2::@5/(byte) dtv_control#267 )
(byte*) mode_sixsfred2::col#3 ← phi( mode_sixsfred2::@2/(byte*) mode_sixsfred2::col#0 mode_sixsfred2::@5/(byte*) mode_sixsfred2::col#4 )
(byte) mode_sixsfred2::cy#4 ← phi( mode_sixsfred2::@2/(byte) mode_sixsfred2::cy#0 mode_sixsfred2::@5/(byte) mode_sixsfred2::cy#1 )
(byte) mode_sixsfred2::cx#0 ← (byte) 0
to:mode_sixsfred2::@4
mode_sixsfred2::@4: scope:[mode_sixsfred2] from mode_sixsfred2::@3 mode_sixsfred2::@4
(byte) dtv_control#273 ← phi( mode_sixsfred2::@3/(byte) dtv_control#278 mode_sixsfred2::@4/(byte) dtv_control#273 )
(byte*) mode_sixsfred2::col#2 ← phi( mode_sixsfred2::@3/(byte*) mode_sixsfred2::col#3 mode_sixsfred2::@4/(byte*) mode_sixsfred2::col#1 )
(byte) mode_sixsfred2::cy#2 ← phi( mode_sixsfred2::@3/(byte) mode_sixsfred2::cy#4 mode_sixsfred2::@4/(byte) mode_sixsfred2::cy#2 )
(byte) mode_sixsfred2::cx#2 ← phi( mode_sixsfred2::@3/(byte) mode_sixsfred2::cx#0 mode_sixsfred2::@4/(byte) mode_sixsfred2::cx#1 )
(number~) mode_sixsfred2::$15 ← (byte) mode_sixsfred2::cx#2 & (number) 3
(number~) mode_sixsfred2::$16 ← (number~) mode_sixsfred2::$15 * (number) $10
(number~) mode_sixsfred2::$17 ← (byte) mode_sixsfred2::cy#2 & (number) 3
(number~) mode_sixsfred2::$18 ← (number~) mode_sixsfred2::$16 | (number~) mode_sixsfred2::$17
*((byte*) mode_sixsfred2::col#2) ← (number~) mode_sixsfred2::$18
(byte*) mode_sixsfred2::col#1 ← ++ (byte*) mode_sixsfred2::col#2
(byte) mode_sixsfred2::cx#1 ← (byte) mode_sixsfred2::cx#2 + rangenext(0,$27)
(bool~) mode_sixsfred2::$19 ← (byte) mode_sixsfred2::cx#1 != rangelast(0,$27)
if((bool~) mode_sixsfred2::$19) goto mode_sixsfred2::@4
to:mode_sixsfred2::@5
mode_sixsfred2::@5: scope:[mode_sixsfred2] from mode_sixsfred2::@4
(byte) dtv_control#267 ← phi( mode_sixsfred2::@4/(byte) dtv_control#273 )
(byte*) mode_sixsfred2::col#4 ← phi( mode_sixsfred2::@4/(byte*) mode_sixsfred2::col#1 )
(byte) mode_sixsfred2::cy#3 ← phi( mode_sixsfred2::@4/(byte) mode_sixsfred2::cy#2 )
(byte) mode_sixsfred2::cy#1 ← (byte) mode_sixsfred2::cy#3 + rangenext(0,$18)
(bool~) mode_sixsfred2::$20 ← (byte) mode_sixsfred2::cy#1 != rangelast(0,$18)
if((bool~) mode_sixsfred2::$20) goto mode_sixsfred2::@3
to:mode_sixsfred2::@6
mode_sixsfred2::@6: scope:[mode_sixsfred2] from mode_sixsfred2::@5
(byte) dtv_control#260 ← phi( mode_sixsfred2::@5/(byte) dtv_control#267 )
(byte*) mode_sixsfred2::gfxa#0 ← (byte*) mode_sixsfred2::PLANEA#0
(byte[]) mode_sixsfred2::row_bitmask#0 ← { (number) 0, (number) $55, (number) $aa, (number) $ff }
(byte) mode_sixsfred2::ay#0 ← (byte) 0
to:mode_sixsfred2::@7
mode_sixsfred2::@7: scope:[mode_sixsfred2] from mode_sixsfred2::@6 mode_sixsfred2::@9
(byte) dtv_control#251 ← phi( mode_sixsfred2::@6/(byte) dtv_control#260 mode_sixsfred2::@9/(byte) dtv_control#231 )
(byte*) mode_sixsfred2::gfxa#3 ← phi( mode_sixsfred2::@6/(byte*) mode_sixsfred2::gfxa#0 mode_sixsfred2::@9/(byte*) mode_sixsfred2::gfxa#4 )
(byte) mode_sixsfred2::ay#4 ← phi( mode_sixsfred2::@6/(byte) mode_sixsfred2::ay#0 mode_sixsfred2::@9/(byte) mode_sixsfred2::ay#1 )
(byte) mode_sixsfred2::ax#0 ← (byte) 0
to:mode_sixsfred2::@8
mode_sixsfred2::@8: scope:[mode_sixsfred2] from mode_sixsfred2::@7 mode_sixsfred2::@8
(byte) dtv_control#242 ← phi( mode_sixsfred2::@7/(byte) dtv_control#251 mode_sixsfred2::@8/(byte) dtv_control#242 )
(byte) mode_sixsfred2::ax#2 ← phi( mode_sixsfred2::@7/(byte) mode_sixsfred2::ax#0 mode_sixsfred2::@8/(byte) mode_sixsfred2::ax#1 )
(byte*) mode_sixsfred2::gfxa#2 ← phi( mode_sixsfred2::@7/(byte*) mode_sixsfred2::gfxa#3 mode_sixsfred2::@8/(byte*) mode_sixsfred2::gfxa#1 )
(byte) mode_sixsfred2::ay#2 ← phi( mode_sixsfred2::@7/(byte) mode_sixsfred2::ay#4 mode_sixsfred2::@8/(byte) mode_sixsfred2::ay#2 )
(number~) mode_sixsfred2::$21 ← (byte) mode_sixsfred2::ay#2 / (number) 2
(number~) mode_sixsfred2::$22 ← (number~) mode_sixsfred2::$21 & (number) 3
(byte) mode_sixsfred2::row#0 ← (number~) mode_sixsfred2::$22
*((byte*) mode_sixsfred2::gfxa#2) ← *((byte[]) mode_sixsfred2::row_bitmask#0 + (byte) mode_sixsfred2::row#0)
(byte*) mode_sixsfred2::gfxa#1 ← ++ (byte*) mode_sixsfred2::gfxa#2
(byte) mode_sixsfred2::ax#1 ← (byte) mode_sixsfred2::ax#2 + rangenext(0,$27)
(bool~) mode_sixsfred2::$23 ← (byte) mode_sixsfred2::ax#1 != rangelast(0,$27)
if((bool~) mode_sixsfred2::$23) goto mode_sixsfred2::@8
to:mode_sixsfred2::@9
mode_sixsfred2::@9: scope:[mode_sixsfred2] from mode_sixsfred2::@8
(byte) dtv_control#231 ← phi( mode_sixsfred2::@8/(byte) dtv_control#242 )
(byte*) mode_sixsfred2::gfxa#4 ← phi( mode_sixsfred2::@8/(byte*) mode_sixsfred2::gfxa#1 )
(byte) mode_sixsfred2::ay#3 ← phi( mode_sixsfred2::@8/(byte) mode_sixsfred2::ay#2 )
(byte) mode_sixsfred2::ay#1 ← (byte) mode_sixsfred2::ay#3 + rangenext(0,$c7)
(bool~) mode_sixsfred2::$24 ← (byte) mode_sixsfred2::ay#1 != rangelast(0,$c7)
if((bool~) mode_sixsfred2::$24) goto mode_sixsfred2::@7
to:mode_sixsfred2::@10
mode_sixsfred2::@10: scope:[mode_sixsfred2] from mode_sixsfred2::@9
(byte) dtv_control#215 ← phi( mode_sixsfred2::@9/(byte) dtv_control#231 )
(byte*) mode_sixsfred2::gfxb#0 ← (byte*) mode_sixsfred2::PLANEB#0
(byte) mode_sixsfred2::by#0 ← (byte) 0
to:mode_sixsfred2::@11
mode_sixsfred2::@11: scope:[mode_sixsfred2] from mode_sixsfred2::@10 mode_sixsfred2::@13
(byte) dtv_control#200 ← phi( mode_sixsfred2::@10/(byte) dtv_control#215 mode_sixsfred2::@13/(byte) dtv_control#156 )
(byte) mode_sixsfred2::by#4 ← phi( mode_sixsfred2::@10/(byte) mode_sixsfred2::by#0 mode_sixsfred2::@13/(byte) mode_sixsfred2::by#1 )
(byte*) mode_sixsfred2::gfxb#3 ← phi( mode_sixsfred2::@10/(byte*) mode_sixsfred2::gfxb#0 mode_sixsfred2::@13/(byte*) mode_sixsfred2::gfxb#4 )
(byte) mode_sixsfred2::bx#0 ← (byte) 0
to:mode_sixsfred2::@12
mode_sixsfred2::@12: scope:[mode_sixsfred2] from mode_sixsfred2::@11 mode_sixsfred2::@12
(byte) dtv_control#185 ← phi( mode_sixsfred2::@11/(byte) dtv_control#200 mode_sixsfred2::@12/(byte) dtv_control#185 )
(byte) mode_sixsfred2::by#3 ← phi( mode_sixsfred2::@11/(byte) mode_sixsfred2::by#4 mode_sixsfred2::@12/(byte) mode_sixsfred2::by#3 )
(byte) mode_sixsfred2::bx#2 ← phi( mode_sixsfred2::@11/(byte) mode_sixsfred2::bx#0 mode_sixsfred2::@12/(byte) mode_sixsfred2::bx#1 )
(byte*) mode_sixsfred2::gfxb#2 ← phi( mode_sixsfred2::@11/(byte*) mode_sixsfred2::gfxb#3 mode_sixsfred2::@12/(byte*) mode_sixsfred2::gfxb#1 )
*((byte*) mode_sixsfred2::gfxb#2) ← (number) $1b
(byte*) mode_sixsfred2::gfxb#1 ← ++ (byte*) mode_sixsfred2::gfxb#2
(byte) mode_sixsfred2::bx#1 ← (byte) mode_sixsfred2::bx#2 + rangenext(0,$27)
(bool~) mode_sixsfred2::$25 ← (byte) mode_sixsfred2::bx#1 != rangelast(0,$27)
if((bool~) mode_sixsfred2::$25) goto mode_sixsfred2::@12
to:mode_sixsfred2::@13
mode_sixsfred2::@13: scope:[mode_sixsfred2] from mode_sixsfred2::@12
(byte) dtv_control#156 ← phi( mode_sixsfred2::@12/(byte) dtv_control#185 )
(byte*) mode_sixsfred2::gfxb#4 ← phi( mode_sixsfred2::@12/(byte*) mode_sixsfred2::gfxb#1 )
(byte) mode_sixsfred2::by#2 ← phi( mode_sixsfred2::@12/(byte) mode_sixsfred2::by#3 )
(byte) mode_sixsfred2::by#1 ← (byte) mode_sixsfred2::by#2 + rangenext(0,$c7)
(bool~) mode_sixsfred2::$26 ← (byte) mode_sixsfred2::by#1 != rangelast(0,$c7)
if((bool~) mode_sixsfred2::$26) goto mode_sixsfred2::@11
to:mode_sixsfred2::@14
mode_sixsfred2::@14: scope:[mode_sixsfred2] from mode_sixsfred2::@13
(byte) dtv_control#126 ← phi( mode_sixsfred2::@13/(byte) dtv_control#156 )
call mode_ctrl
to:mode_sixsfred2::@15
mode_sixsfred2::@15: scope:[mode_sixsfred2] from mode_sixsfred2::@14
(byte) dtv_control#91 ← phi( mode_sixsfred2::@14/(byte) dtv_control#16 )
(byte) dtv_control#46 ← (byte) dtv_control#91
to:mode_sixsfred2::@return
mode_sixsfred2::@return: scope:[mode_sixsfred2] from mode_sixsfred2::@15
(byte) dtv_control#92 ← phi( mode_sixsfred2::@15/(byte) dtv_control#46 )
(byte) dtv_control#47 ← (byte) dtv_control#92
return
to:@return
mode_8bpppixelcell: scope:[mode_8bpppixelcell] from menu::@46
(byte*) mode_8bpppixelcell::PLANEA#0 ← ((byte*)) (number) $3c00
(byte*) mode_8bpppixelcell::PLANEB#0 ← ((byte*)) (number) $4000
(byte~) mode_8bpppixelcell::$0 ← (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0
(byte~) mode_8bpppixelcell::$1 ← (byte~) mode_8bpppixelcell::$0 | (byte) DTV_CHUNKY#0
(byte) dtv_control#48 ← (byte~) mode_8bpppixelcell::$1
(byte~) mode_8bpppixelcell::$2 ← (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0
(byte~) mode_8bpppixelcell::$3 ← (byte~) mode_8bpppixelcell::$2 | (byte) DTV_CHUNKY#0
*((byte*) DTV_CONTROL#0) ← (byte~) mode_8bpppixelcell::$3
(byte~) mode_8bpppixelcell::$4 ← (byte) VIC_ECM#0 | (byte) VIC_DEN#0
(byte~) mode_8bpppixelcell::$5 ← (byte~) mode_8bpppixelcell::$4 | (byte) VIC_RSEL#0
(number~) mode_8bpppixelcell::$6 ← (byte~) mode_8bpppixelcell::$5 | (number) 3
*((byte*) VIC_CONTROL#0) ← (number~) mode_8bpppixelcell::$6
(byte~) mode_8bpppixelcell::$7 ← (byte) VIC_MCM#0 | (byte) VIC_CSEL#0
*((byte*) VIC_CONTROL2#0) ← (byte~) mode_8bpppixelcell::$7
(byte~) mode_8bpppixelcell::$8 ← < (byte*) mode_8bpppixelcell::PLANEA#0
*((byte*) DTV_PLANEA_START_LO#0) ← (byte~) mode_8bpppixelcell::$8
(byte~) mode_8bpppixelcell::$9 ← > (byte*) mode_8bpppixelcell::PLANEA#0
*((byte*) DTV_PLANEA_START_MI#0) ← (byte~) mode_8bpppixelcell::$9
*((byte*) DTV_PLANEA_START_HI#0) ← (number) 0
*((byte*) DTV_PLANEA_STEP#0) ← (number) 1
*((byte*) DTV_PLANEA_MODULO_LO#0) ← (number) 0
*((byte*) DTV_PLANEA_MODULO_HI#0) ← (number) 0
(byte~) mode_8bpppixelcell::$10 ← < (byte*) mode_8bpppixelcell::PLANEB#0
*((byte*) DTV_PLANEB_START_LO#0) ← (byte~) mode_8bpppixelcell::$10
(byte~) mode_8bpppixelcell::$11 ← > (byte*) mode_8bpppixelcell::PLANEB#0
*((byte*) DTV_PLANEB_START_MI#0) ← (byte~) mode_8bpppixelcell::$11
*((byte*) DTV_PLANEB_START_HI#0) ← (number) 0
*((byte*) DTV_PLANEB_STEP#0) ← (number) 0
*((byte*) DTV_PLANEB_MODULO_LO#0) ← (number) 0
*((byte*) DTV_PLANEB_MODULO_HI#0) ← (number) 0
*((byte*) BORDERCOL#0) ← (number) 0
(byte) mode_8bpppixelcell::i#0 ← (byte) 0
to:mode_8bpppixelcell::@1
mode_8bpppixelcell::@1: scope:[mode_8bpppixelcell] from mode_8bpppixelcell mode_8bpppixelcell::@1
(byte) dtv_control#285 ← phi( mode_8bpppixelcell/(byte) dtv_control#48 mode_8bpppixelcell::@1/(byte) dtv_control#285 )
(byte) mode_8bpppixelcell::i#2 ← phi( mode_8bpppixelcell/(byte) mode_8bpppixelcell::i#0 mode_8bpppixelcell::@1/(byte) mode_8bpppixelcell::i#1 )
*((byte*) DTV_PALETTE#0 + (byte) mode_8bpppixelcell::i#2) ← (byte) mode_8bpppixelcell::i#2
(byte) mode_8bpppixelcell::i#1 ← (byte) mode_8bpppixelcell::i#2 + rangenext(0,$f)
(bool~) mode_8bpppixelcell::$13 ← (byte) mode_8bpppixelcell::i#1 != rangelast(0,$f)
if((bool~) mode_8bpppixelcell::$13) goto mode_8bpppixelcell::@1
to:mode_8bpppixelcell::@2
mode_8bpppixelcell::@2: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@1
(byte) dtv_control#279 ← phi( mode_8bpppixelcell::@1/(byte) dtv_control#285 )
(byte*) mode_8bpppixelcell::gfxa#0 ← (byte*) mode_8bpppixelcell::PLANEA#0
(byte) mode_8bpppixelcell::ay#0 ← (byte) 0
to:mode_8bpppixelcell::@3
mode_8bpppixelcell::@3: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@2 mode_8bpppixelcell::@5
(byte) dtv_control#274 ← phi( mode_8bpppixelcell::@2/(byte) dtv_control#279 mode_8bpppixelcell::@5/(byte) dtv_control#261 )
(byte*) mode_8bpppixelcell::gfxa#3 ← phi( mode_8bpppixelcell::@2/(byte*) mode_8bpppixelcell::gfxa#0 mode_8bpppixelcell::@5/(byte*) mode_8bpppixelcell::gfxa#4 )
(byte) mode_8bpppixelcell::ay#4 ← phi( mode_8bpppixelcell::@2/(byte) mode_8bpppixelcell::ay#0 mode_8bpppixelcell::@5/(byte) mode_8bpppixelcell::ay#1 )
(byte) mode_8bpppixelcell::ax#0 ← (byte) 0
to:mode_8bpppixelcell::@4
mode_8bpppixelcell::@4: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@3 mode_8bpppixelcell::@4
(byte) dtv_control#268 ← phi( mode_8bpppixelcell::@3/(byte) dtv_control#274 mode_8bpppixelcell::@4/(byte) dtv_control#268 )
(byte*) mode_8bpppixelcell::gfxa#2 ← phi( mode_8bpppixelcell::@3/(byte*) mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::@4/(byte*) mode_8bpppixelcell::gfxa#1 )
(byte) mode_8bpppixelcell::ax#2 ← phi( mode_8bpppixelcell::@3/(byte) mode_8bpppixelcell::ax#0 mode_8bpppixelcell::@4/(byte) mode_8bpppixelcell::ax#1 )
(byte) mode_8bpppixelcell::ay#2 ← phi( mode_8bpppixelcell::@3/(byte) mode_8bpppixelcell::ay#4 mode_8bpppixelcell::@4/(byte) mode_8bpppixelcell::ay#2 )
(number~) mode_8bpppixelcell::$14 ← (byte) mode_8bpppixelcell::ay#2 & (number) $f
(number~) mode_8bpppixelcell::$15 ← (number~) mode_8bpppixelcell::$14 * (number) $10
(number~) mode_8bpppixelcell::$16 ← (byte) mode_8bpppixelcell::ax#2 & (number) $f
(number~) mode_8bpppixelcell::$17 ← (number~) mode_8bpppixelcell::$15 | (number~) mode_8bpppixelcell::$16
*((byte*) mode_8bpppixelcell::gfxa#2) ← (number~) mode_8bpppixelcell::$17
(byte*) mode_8bpppixelcell::gfxa#1 ← ++ (byte*) mode_8bpppixelcell::gfxa#2
(byte) mode_8bpppixelcell::ax#1 ← (byte) mode_8bpppixelcell::ax#2 + rangenext(0,$27)
(bool~) mode_8bpppixelcell::$18 ← (byte) mode_8bpppixelcell::ax#1 != rangelast(0,$27)
if((bool~) mode_8bpppixelcell::$18) goto mode_8bpppixelcell::@4
to:mode_8bpppixelcell::@5
mode_8bpppixelcell::@5: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@4
(byte) dtv_control#261 ← phi( mode_8bpppixelcell::@4/(byte) dtv_control#268 )
(byte*) mode_8bpppixelcell::gfxa#4 ← phi( mode_8bpppixelcell::@4/(byte*) mode_8bpppixelcell::gfxa#1 )
(byte) mode_8bpppixelcell::ay#3 ← phi( mode_8bpppixelcell::@4/(byte) mode_8bpppixelcell::ay#2 )
(byte) mode_8bpppixelcell::ay#1 ← (byte) mode_8bpppixelcell::ay#3 + rangenext(0,$18)
(bool~) mode_8bpppixelcell::$19 ← (byte) mode_8bpppixelcell::ay#1 != rangelast(0,$18)
if((bool~) mode_8bpppixelcell::$19) goto mode_8bpppixelcell::@3
to:mode_8bpppixelcell::@6
mode_8bpppixelcell::@6: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@5
(byte) dtv_control#252 ← phi( mode_8bpppixelcell::@5/(byte) dtv_control#261 )
*((byte*) PROCPORT#0) ← (byte) PROCPORT_RAM_CHARROM#0
(byte*) mode_8bpppixelcell::CHARGEN#0 ← ((byte*)) (number) $d000
(byte*) mode_8bpppixelcell::gfxb#0 ← (byte*) mode_8bpppixelcell::PLANEB#0
(byte*) mode_8bpppixelcell::chargen#0 ← (byte*) mode_8bpppixelcell::CHARGEN#0
(byte) mode_8bpppixelcell::col#0 ← (number) 0
(byte) mode_8bpppixelcell::ch#0 ← (byte) 0
to:mode_8bpppixelcell::@7
mode_8bpppixelcell::@7: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@13 mode_8bpppixelcell::@6
(byte) dtv_control#243 ← phi( mode_8bpppixelcell::@13/(byte) dtv_control#157 mode_8bpppixelcell::@6/(byte) dtv_control#252 )
(byte) mode_8bpppixelcell::ch#8 ← phi( mode_8bpppixelcell::@13/(byte) mode_8bpppixelcell::ch#1 mode_8bpppixelcell::@6/(byte) mode_8bpppixelcell::ch#0 )
(byte) mode_8bpppixelcell::col#7 ← phi( mode_8bpppixelcell::@13/(byte) mode_8bpppixelcell::col#8 mode_8bpppixelcell::@6/(byte) mode_8bpppixelcell::col#0 )
(byte*) mode_8bpppixelcell::gfxb#7 ← phi( mode_8bpppixelcell::@13/(byte*) mode_8bpppixelcell::gfxb#8 mode_8bpppixelcell::@6/(byte*) mode_8bpppixelcell::gfxb#0 )
(byte*) mode_8bpppixelcell::chargen#4 ← phi( mode_8bpppixelcell::@13/(byte*) mode_8bpppixelcell::chargen#5 mode_8bpppixelcell::@6/(byte*) mode_8bpppixelcell::chargen#0 )
(byte) mode_8bpppixelcell::cr#0 ← (byte) 0
to:mode_8bpppixelcell::@8
mode_8bpppixelcell::@8: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@12 mode_8bpppixelcell::@7
(byte) dtv_control#232 ← phi( mode_8bpppixelcell::@12/(byte) dtv_control#186 mode_8bpppixelcell::@7/(byte) dtv_control#243 )
(byte) mode_8bpppixelcell::ch#7 ← phi( mode_8bpppixelcell::@12/(byte) mode_8bpppixelcell::ch#3 mode_8bpppixelcell::@7/(byte) mode_8bpppixelcell::ch#8 )
(byte) mode_8bpppixelcell::cr#6 ← phi( mode_8bpppixelcell::@12/(byte) mode_8bpppixelcell::cr#1 mode_8bpppixelcell::@7/(byte) mode_8bpppixelcell::cr#0 )
(byte) mode_8bpppixelcell::col#5 ← phi( mode_8bpppixelcell::@12/(byte) mode_8bpppixelcell::col#6 mode_8bpppixelcell::@7/(byte) mode_8bpppixelcell::col#7 )
(byte*) mode_8bpppixelcell::gfxb#5 ← phi( mode_8bpppixelcell::@12/(byte*) mode_8bpppixelcell::gfxb#6 mode_8bpppixelcell::@7/(byte*) mode_8bpppixelcell::gfxb#7 )
(byte*) mode_8bpppixelcell::chargen#2 ← phi( mode_8bpppixelcell::@12/(byte*) mode_8bpppixelcell::chargen#3 mode_8bpppixelcell::@7/(byte*) mode_8bpppixelcell::chargen#4 )
(byte) mode_8bpppixelcell::bits#0 ← *((byte*) mode_8bpppixelcell::chargen#2)
(byte*) mode_8bpppixelcell::chargen#1 ← ++ (byte*) mode_8bpppixelcell::chargen#2
(byte) mode_8bpppixelcell::cp#0 ← (byte) 0
to:mode_8bpppixelcell::@9
mode_8bpppixelcell::@9: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@10 mode_8bpppixelcell::@8
(byte) dtv_control#217 ← phi( mode_8bpppixelcell::@10/(byte) dtv_control#201 mode_8bpppixelcell::@8/(byte) dtv_control#232 )
(byte) mode_8bpppixelcell::ch#6 ← phi( mode_8bpppixelcell::@10/(byte) mode_8bpppixelcell::ch#4 mode_8bpppixelcell::@8/(byte) mode_8bpppixelcell::ch#7 )
(byte*) mode_8bpppixelcell::chargen#8 ← phi( mode_8bpppixelcell::@10/(byte*) mode_8bpppixelcell::chargen#6 mode_8bpppixelcell::@8/(byte*) mode_8bpppixelcell::chargen#1 )
(byte) mode_8bpppixelcell::cr#5 ← phi( mode_8bpppixelcell::@10/(byte) mode_8bpppixelcell::cr#3 mode_8bpppixelcell::@8/(byte) mode_8bpppixelcell::cr#6 )
(byte) mode_8bpppixelcell::cp#4 ← phi( mode_8bpppixelcell::@10/(byte) mode_8bpppixelcell::cp#1 mode_8bpppixelcell::@8/(byte) mode_8bpppixelcell::cp#0 )
(byte) mode_8bpppixelcell::col#4 ← phi( mode_8bpppixelcell::@10/(byte) mode_8bpppixelcell::col#1 mode_8bpppixelcell::@8/(byte) mode_8bpppixelcell::col#5 )
(byte*) mode_8bpppixelcell::gfxb#4 ← phi( mode_8bpppixelcell::@10/(byte*) mode_8bpppixelcell::gfxb#1 mode_8bpppixelcell::@8/(byte*) mode_8bpppixelcell::gfxb#5 )
(byte) mode_8bpppixelcell::bits#2 ← phi( mode_8bpppixelcell::@10/(byte) mode_8bpppixelcell::bits#1 mode_8bpppixelcell::@8/(byte) mode_8bpppixelcell::bits#0 )
(byte) mode_8bpppixelcell::c#0 ← (number) 0
(number~) mode_8bpppixelcell::$20 ← (byte) mode_8bpppixelcell::bits#2 & (number) $80
(bool~) mode_8bpppixelcell::$21 ← (number~) mode_8bpppixelcell::$20 != (number) 0
(bool~) mode_8bpppixelcell::$22 ← ! (bool~) mode_8bpppixelcell::$21
if((bool~) mode_8bpppixelcell::$22) goto mode_8bpppixelcell::@10
to:mode_8bpppixelcell::@11
mode_8bpppixelcell::@10: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@11 mode_8bpppixelcell::@9
(byte) dtv_control#201 ← phi( mode_8bpppixelcell::@11/(byte) dtv_control#216 mode_8bpppixelcell::@9/(byte) dtv_control#217 )
(byte) mode_8bpppixelcell::ch#4 ← phi( mode_8bpppixelcell::@11/(byte) mode_8bpppixelcell::ch#5 mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::ch#6 )
(byte*) mode_8bpppixelcell::chargen#6 ← phi( mode_8bpppixelcell::@11/(byte*) mode_8bpppixelcell::chargen#7 mode_8bpppixelcell::@9/(byte*) mode_8bpppixelcell::chargen#8 )
(byte) mode_8bpppixelcell::cr#3 ← phi( mode_8bpppixelcell::@11/(byte) mode_8bpppixelcell::cr#4 mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::cr#5 )
(byte) mode_8bpppixelcell::cp#2 ← phi( mode_8bpppixelcell::@11/(byte) mode_8bpppixelcell::cp#3 mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::cp#4 )
(byte) mode_8bpppixelcell::col#2 ← phi( mode_8bpppixelcell::@11/(byte) mode_8bpppixelcell::col#3 mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::col#4 )
(byte) mode_8bpppixelcell::bits#3 ← phi( mode_8bpppixelcell::@11/(byte) mode_8bpppixelcell::bits#4 mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::bits#2 )
(byte*) mode_8bpppixelcell::gfxb#2 ← phi( mode_8bpppixelcell::@11/(byte*) mode_8bpppixelcell::gfxb#3 mode_8bpppixelcell::@9/(byte*) mode_8bpppixelcell::gfxb#4 )
(byte) mode_8bpppixelcell::c#2 ← phi( mode_8bpppixelcell::@11/(byte) mode_8bpppixelcell::c#1 mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::c#0 )
*((byte*) mode_8bpppixelcell::gfxb#2) ← (byte) mode_8bpppixelcell::c#2
(byte*) mode_8bpppixelcell::gfxb#1 ← ++ (byte*) mode_8bpppixelcell::gfxb#2
(number~) mode_8bpppixelcell::$23 ← (byte) mode_8bpppixelcell::bits#3 * (number) 2
(byte) mode_8bpppixelcell::bits#1 ← (number~) mode_8bpppixelcell::$23
(byte) mode_8bpppixelcell::col#1 ← ++ (byte) mode_8bpppixelcell::col#2
(byte) mode_8bpppixelcell::cp#1 ← (byte) mode_8bpppixelcell::cp#2 + rangenext(0,7)
(bool~) mode_8bpppixelcell::$24 ← (byte) mode_8bpppixelcell::cp#1 != rangelast(0,7)
if((bool~) mode_8bpppixelcell::$24) goto mode_8bpppixelcell::@9
to:mode_8bpppixelcell::@12
mode_8bpppixelcell::@11: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@9
(byte) dtv_control#216 ← phi( mode_8bpppixelcell::@9/(byte) dtv_control#217 )
(byte) mode_8bpppixelcell::ch#5 ← phi( mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::ch#6 )
(byte*) mode_8bpppixelcell::chargen#7 ← phi( mode_8bpppixelcell::@9/(byte*) mode_8bpppixelcell::chargen#8 )
(byte) mode_8bpppixelcell::cr#4 ← phi( mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::cr#5 )
(byte) mode_8bpppixelcell::cp#3 ← phi( mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::cp#4 )
(byte) mode_8bpppixelcell::bits#4 ← phi( mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::bits#2 )
(byte*) mode_8bpppixelcell::gfxb#3 ← phi( mode_8bpppixelcell::@9/(byte*) mode_8bpppixelcell::gfxb#4 )
(byte) mode_8bpppixelcell::col#3 ← phi( mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::col#4 )
(byte) mode_8bpppixelcell::c#1 ← (byte) mode_8bpppixelcell::col#3
to:mode_8bpppixelcell::@10
mode_8bpppixelcell::@12: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@10
(byte) dtv_control#186 ← phi( mode_8bpppixelcell::@10/(byte) dtv_control#201 )
(byte) mode_8bpppixelcell::col#6 ← phi( mode_8bpppixelcell::@10/(byte) mode_8bpppixelcell::col#1 )
(byte*) mode_8bpppixelcell::gfxb#6 ← phi( mode_8bpppixelcell::@10/(byte*) mode_8bpppixelcell::gfxb#1 )
(byte) mode_8bpppixelcell::ch#3 ← phi( mode_8bpppixelcell::@10/(byte) mode_8bpppixelcell::ch#4 )
(byte*) mode_8bpppixelcell::chargen#3 ← phi( mode_8bpppixelcell::@10/(byte*) mode_8bpppixelcell::chargen#6 )
(byte) mode_8bpppixelcell::cr#2 ← phi( mode_8bpppixelcell::@10/(byte) mode_8bpppixelcell::cr#3 )
(byte) mode_8bpppixelcell::cr#1 ← (byte) mode_8bpppixelcell::cr#2 + rangenext(0,7)
(bool~) mode_8bpppixelcell::$25 ← (byte) mode_8bpppixelcell::cr#1 != rangelast(0,7)
if((bool~) mode_8bpppixelcell::$25) goto mode_8bpppixelcell::@8
to:mode_8bpppixelcell::@13
mode_8bpppixelcell::@13: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@12
(byte) mode_8bpppixelcell::col#8 ← phi( mode_8bpppixelcell::@12/(byte) mode_8bpppixelcell::col#6 )
(byte*) mode_8bpppixelcell::gfxb#8 ← phi( mode_8bpppixelcell::@12/(byte*) mode_8bpppixelcell::gfxb#6 )
(byte) dtv_control#157 ← phi( mode_8bpppixelcell::@12/(byte) dtv_control#186 )
(byte*) mode_8bpppixelcell::chargen#5 ← phi( mode_8bpppixelcell::@12/(byte*) mode_8bpppixelcell::chargen#3 )
(byte) mode_8bpppixelcell::ch#2 ← phi( mode_8bpppixelcell::@12/(byte) mode_8bpppixelcell::ch#3 )
(byte) mode_8bpppixelcell::ch#1 ← (byte) mode_8bpppixelcell::ch#2 + rangenext(0,$ff)
(bool~) mode_8bpppixelcell::$26 ← (byte) mode_8bpppixelcell::ch#1 != rangelast(0,$ff)
if((bool~) mode_8bpppixelcell::$26) goto mode_8bpppixelcell::@7
to:mode_8bpppixelcell::@14
mode_8bpppixelcell::@14: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@13
(byte) dtv_control#127 ← phi( mode_8bpppixelcell::@13/(byte) dtv_control#157 )
*((byte*) PROCPORT#0) ← (byte) PROCPORT_RAM_IO#0
call mode_ctrl
to:mode_8bpppixelcell::@15
mode_8bpppixelcell::@15: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@14
(byte) dtv_control#93 ← phi( mode_8bpppixelcell::@14/(byte) dtv_control#16 )
(byte) dtv_control#49 ← (byte) dtv_control#93
to:mode_8bpppixelcell::@return
mode_8bpppixelcell::@return: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@15
(byte) dtv_control#94 ← phi( mode_8bpppixelcell::@15/(byte) dtv_control#49 )
(byte) dtv_control#50 ← (byte) dtv_control#94
return
to:@return
mode_8bppchunkybmm: scope:[mode_8bppchunkybmm] from menu::@48
(dword) mode_8bppchunkybmm::PLANEB#0 ← (number) $20000
(byte~) mode_8bppchunkybmm::$0 ← (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0
(byte~) mode_8bppchunkybmm::$1 ← (byte~) mode_8bppchunkybmm::$0 | (byte) DTV_CHUNKY#0
(byte~) mode_8bppchunkybmm::$2 ← (byte~) mode_8bppchunkybmm::$1 | (byte) DTV_COLORRAM_OFF#0
(byte) dtv_control#51 ← (byte~) mode_8bppchunkybmm::$2
(byte~) mode_8bppchunkybmm::$3 ← (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0
(byte~) mode_8bppchunkybmm::$4 ← (byte~) mode_8bppchunkybmm::$3 | (byte) DTV_CHUNKY#0
(byte~) mode_8bppchunkybmm::$5 ← (byte~) mode_8bppchunkybmm::$4 | (byte) DTV_COLORRAM_OFF#0
*((byte*) DTV_CONTROL#0) ← (byte~) mode_8bppchunkybmm::$5
(byte~) mode_8bppchunkybmm::$6 ← (byte) VIC_ECM#0 | (byte) VIC_DEN#0
(byte~) mode_8bppchunkybmm::$7 ← (byte~) mode_8bppchunkybmm::$6 | (byte) VIC_RSEL#0
(number~) mode_8bppchunkybmm::$8 ← (byte~) mode_8bppchunkybmm::$7 | (number) 3
*((byte*) VIC_CONTROL#0) ← (number~) mode_8bppchunkybmm::$8
(byte~) mode_8bppchunkybmm::$9 ← (byte) VIC_MCM#0 | (byte) VIC_CSEL#0
*((byte*) VIC_CONTROL2#0) ← (byte~) mode_8bppchunkybmm::$9
(word~) mode_8bppchunkybmm::$10 ← < (dword) mode_8bppchunkybmm::PLANEB#0
(byte~) mode_8bppchunkybmm::$11 ← < (word~) mode_8bppchunkybmm::$10
*((byte*) DTV_PLANEB_START_LO#0) ← (byte~) mode_8bppchunkybmm::$11
(word~) mode_8bppchunkybmm::$12 ← < (dword) mode_8bppchunkybmm::PLANEB#0
(byte~) mode_8bppchunkybmm::$13 ← > (word~) mode_8bppchunkybmm::$12
*((byte*) DTV_PLANEB_START_MI#0) ← (byte~) mode_8bppchunkybmm::$13
(word~) mode_8bppchunkybmm::$14 ← > (dword) mode_8bppchunkybmm::PLANEB#0
(byte~) mode_8bppchunkybmm::$15 ← < (word~) mode_8bppchunkybmm::$14
*((byte*) DTV_PLANEB_START_HI#0) ← (byte~) mode_8bppchunkybmm::$15
*((byte*) DTV_PLANEB_STEP#0) ← (number) 8
*((byte*) DTV_PLANEB_MODULO_LO#0) ← (number) 0
*((byte*) DTV_PLANEB_MODULO_HI#0) ← (number) 0
*((byte*) BORDERCOL#0) ← (number) 0
(byte) mode_8bppchunkybmm::i#0 ← (byte) 0
to:mode_8bppchunkybmm::@1
mode_8bppchunkybmm::@1: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm mode_8bppchunkybmm::@1
(byte) dtv_control#262 ← phi( mode_8bppchunkybmm/(byte) dtv_control#51 mode_8bppchunkybmm::@1/(byte) dtv_control#262 )
(byte) mode_8bppchunkybmm::i#2 ← phi( mode_8bppchunkybmm/(byte) mode_8bppchunkybmm::i#0 mode_8bppchunkybmm::@1/(byte) mode_8bppchunkybmm::i#1 )
*((byte*) DTV_PALETTE#0 + (byte) mode_8bppchunkybmm::i#2) ← (byte) mode_8bppchunkybmm::i#2
(byte) mode_8bppchunkybmm::i#1 ← (byte) mode_8bppchunkybmm::i#2 + rangenext(0,$f)
(bool~) mode_8bppchunkybmm::$22 ← (byte) mode_8bppchunkybmm::i#1 != rangelast(0,$f)
if((bool~) mode_8bppchunkybmm::$22) goto mode_8bppchunkybmm::@1
to:mode_8bppchunkybmm::@2
mode_8bppchunkybmm::@2: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@1
(byte) dtv_control#253 ← phi( mode_8bppchunkybmm::@1/(byte) dtv_control#262 )
(number~) mode_8bppchunkybmm::$16 ← (dword) mode_8bppchunkybmm::PLANEB#0 / (number) $4000
(byte~) mode_8bppchunkybmm::$17 ← ((byte)) (number~) mode_8bppchunkybmm::$16
(byte) mode_8bppchunkybmm::gfxbCpuBank#0 ← (byte~) mode_8bppchunkybmm::$17
(byte) dtvSetCpuBankSegment1::cpuBankIdx#0 ← (byte) mode_8bppchunkybmm::gfxbCpuBank#0
call dtvSetCpuBankSegment1
to:mode_8bppchunkybmm::@9
mode_8bppchunkybmm::@9: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@2
(byte) dtv_control#244 ← phi( mode_8bppchunkybmm::@2/(byte) dtv_control#253 )
(byte) mode_8bppchunkybmm::gfxbCpuBank#3 ← phi( mode_8bppchunkybmm::@2/(byte) mode_8bppchunkybmm::gfxbCpuBank#0 )
(byte) mode_8bppchunkybmm::gfxbCpuBank#1 ← ++ (byte) mode_8bppchunkybmm::gfxbCpuBank#3
(byte*) mode_8bppchunkybmm::gfxb#0 ← ((byte*)) (number) $4000
(byte) mode_8bppchunkybmm::y#0 ← (byte) 0
to:mode_8bppchunkybmm::@3
mode_8bppchunkybmm::@3: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@7 mode_8bppchunkybmm::@9
(byte) dtv_control#233 ← phi( mode_8bppchunkybmm::@7/(byte) dtv_control#187 mode_8bppchunkybmm::@9/(byte) dtv_control#244 )
(byte) mode_8bppchunkybmm::gfxbCpuBank#7 ← phi( mode_8bppchunkybmm::@7/(byte) mode_8bppchunkybmm::gfxbCpuBank#9 mode_8bppchunkybmm::@9/(byte) mode_8bppchunkybmm::gfxbCpuBank#1 )
(byte) mode_8bppchunkybmm::y#6 ← phi( mode_8bppchunkybmm::@7/(byte) mode_8bppchunkybmm::y#1 mode_8bppchunkybmm::@9/(byte) mode_8bppchunkybmm::y#0 )
(byte*) mode_8bppchunkybmm::gfxb#5 ← phi( mode_8bppchunkybmm::@7/(byte*) mode_8bppchunkybmm::gfxb#6 mode_8bppchunkybmm::@9/(byte*) mode_8bppchunkybmm::gfxb#0 )
(word) mode_8bppchunkybmm::x#0 ← (word) 0
to:mode_8bppchunkybmm::@4
mode_8bppchunkybmm::@4: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@3 mode_8bppchunkybmm::@5
(byte) dtv_control#219 ← phi( mode_8bppchunkybmm::@3/(byte) dtv_control#233 mode_8bppchunkybmm::@5/(byte) dtv_control#202 )
(byte) mode_8bppchunkybmm::gfxbCpuBank#6 ← phi( mode_8bppchunkybmm::@3/(byte) mode_8bppchunkybmm::gfxbCpuBank#7 mode_8bppchunkybmm::@5/(byte) mode_8bppchunkybmm::gfxbCpuBank#8 )
(byte) mode_8bppchunkybmm::y#5 ← phi( mode_8bppchunkybmm::@3/(byte) mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::@5/(byte) mode_8bppchunkybmm::y#2 )
(word) mode_8bppchunkybmm::x#4 ← phi( mode_8bppchunkybmm::@3/(word) mode_8bppchunkybmm::x#0 mode_8bppchunkybmm::@5/(word) mode_8bppchunkybmm::x#1 )
(byte*) mode_8bppchunkybmm::gfxb#3 ← phi( mode_8bppchunkybmm::@3/(byte*) mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::@5/(byte*) mode_8bppchunkybmm::gfxb#1 )
(bool~) mode_8bppchunkybmm::$23 ← (byte*) mode_8bppchunkybmm::gfxb#3 == (number) $8000
(bool~) mode_8bppchunkybmm::$24 ← ! (bool~) mode_8bppchunkybmm::$23
if((bool~) mode_8bppchunkybmm::$24) goto mode_8bppchunkybmm::@5
to:mode_8bppchunkybmm::@6
mode_8bppchunkybmm::@5: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@10 mode_8bppchunkybmm::@4
(byte) dtv_control#202 ← phi( mode_8bppchunkybmm::@10/(byte) dtv_control#218 mode_8bppchunkybmm::@4/(byte) dtv_control#219 )
(byte) mode_8bppchunkybmm::gfxbCpuBank#8 ← phi( mode_8bppchunkybmm::@10/(byte) mode_8bppchunkybmm::gfxbCpuBank#2 mode_8bppchunkybmm::@4/(byte) mode_8bppchunkybmm::gfxbCpuBank#6 )
(byte*) mode_8bppchunkybmm::gfxb#4 ← phi( mode_8bppchunkybmm::@10/(byte*) mode_8bppchunkybmm::gfxb#2 mode_8bppchunkybmm::@4/(byte*) mode_8bppchunkybmm::gfxb#3 )
(byte) mode_8bppchunkybmm::y#2 ← phi( mode_8bppchunkybmm::@10/(byte) mode_8bppchunkybmm::y#4 mode_8bppchunkybmm::@4/(byte) mode_8bppchunkybmm::y#5 )
(word) mode_8bppchunkybmm::x#2 ← phi( mode_8bppchunkybmm::@10/(word) mode_8bppchunkybmm::x#3 mode_8bppchunkybmm::@4/(word) mode_8bppchunkybmm::x#4 )
(word~) mode_8bppchunkybmm::$26 ← (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#2
(byte~) mode_8bppchunkybmm::$27 ← ((byte)) (word~) mode_8bppchunkybmm::$26
(byte) mode_8bppchunkybmm::c#0 ← (byte~) mode_8bppchunkybmm::$27
*((byte*) mode_8bppchunkybmm::gfxb#4) ← (byte) mode_8bppchunkybmm::c#0
(byte*) mode_8bppchunkybmm::gfxb#1 ← ++ (byte*) mode_8bppchunkybmm::gfxb#4
(word) mode_8bppchunkybmm::x#1 ← (word) mode_8bppchunkybmm::x#2 + rangenext(0,$13f)
(bool~) mode_8bppchunkybmm::$28 ← (word) mode_8bppchunkybmm::x#1 != rangelast(0,$13f)
if((bool~) mode_8bppchunkybmm::$28) goto mode_8bppchunkybmm::@4
to:mode_8bppchunkybmm::@7
mode_8bppchunkybmm::@6: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@4
(byte) dtv_control#234 ← phi( mode_8bppchunkybmm::@4/(byte) dtv_control#219 )
(byte) mode_8bppchunkybmm::y#7 ← phi( mode_8bppchunkybmm::@4/(byte) mode_8bppchunkybmm::y#5 )
(word) mode_8bppchunkybmm::x#5 ← phi( mode_8bppchunkybmm::@4/(word) mode_8bppchunkybmm::x#4 )
(byte) mode_8bppchunkybmm::gfxbCpuBank#4 ← phi( mode_8bppchunkybmm::@4/(byte) mode_8bppchunkybmm::gfxbCpuBank#6 )
(byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ← (byte) mode_8bppchunkybmm::gfxbCpuBank#4
call dtvSetCpuBankSegment1
to:mode_8bppchunkybmm::@10
mode_8bppchunkybmm::@10: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@6
(byte) dtv_control#218 ← phi( mode_8bppchunkybmm::@6/(byte) dtv_control#234 )
(byte) mode_8bppchunkybmm::y#4 ← phi( mode_8bppchunkybmm::@6/(byte) mode_8bppchunkybmm::y#7 )
(word) mode_8bppchunkybmm::x#3 ← phi( mode_8bppchunkybmm::@6/(word) mode_8bppchunkybmm::x#5 )
(byte) mode_8bppchunkybmm::gfxbCpuBank#5 ← phi( mode_8bppchunkybmm::@6/(byte) mode_8bppchunkybmm::gfxbCpuBank#4 )
(byte) mode_8bppchunkybmm::gfxbCpuBank#2 ← ++ (byte) mode_8bppchunkybmm::gfxbCpuBank#5
(byte*) mode_8bppchunkybmm::gfxb#2 ← ((byte*)) (number) $4000
to:mode_8bppchunkybmm::@5
mode_8bppchunkybmm::@7: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@5
(byte) dtv_control#187 ← phi( mode_8bppchunkybmm::@5/(byte) dtv_control#202 )
(byte) mode_8bppchunkybmm::gfxbCpuBank#9 ← phi( mode_8bppchunkybmm::@5/(byte) mode_8bppchunkybmm::gfxbCpuBank#8 )
(byte*) mode_8bppchunkybmm::gfxb#6 ← phi( mode_8bppchunkybmm::@5/(byte*) mode_8bppchunkybmm::gfxb#1 )
(byte) mode_8bppchunkybmm::y#3 ← phi( mode_8bppchunkybmm::@5/(byte) mode_8bppchunkybmm::y#2 )
(byte) mode_8bppchunkybmm::y#1 ← (byte) mode_8bppchunkybmm::y#3 + rangenext(0,$c7)
(bool~) mode_8bppchunkybmm::$29 ← (byte) mode_8bppchunkybmm::y#1 != rangelast(0,$c7)
if((bool~) mode_8bppchunkybmm::$29) goto mode_8bppchunkybmm::@3
to:mode_8bppchunkybmm::@8
mode_8bppchunkybmm::@8: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@7
(byte) dtv_control#158 ← phi( mode_8bppchunkybmm::@7/(byte) dtv_control#187 )
(byte~) mode_8bppchunkybmm::$19 ← ((byte)) (number) $4000/(number) $4000
(byte) dtvSetCpuBankSegment1::cpuBankIdx#2 ← (byte~) mode_8bppchunkybmm::$19
call dtvSetCpuBankSegment1
to:mode_8bppchunkybmm::@11
mode_8bppchunkybmm::@11: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@8
(byte) dtv_control#128 ← phi( mode_8bppchunkybmm::@8/(byte) dtv_control#158 )
call mode_ctrl
to:mode_8bppchunkybmm::@12
mode_8bppchunkybmm::@12: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@11
(byte) dtv_control#95 ← phi( mode_8bppchunkybmm::@11/(byte) dtv_control#16 )
(byte) dtv_control#52 ← (byte) dtv_control#95
to:mode_8bppchunkybmm::@return
mode_8bppchunkybmm::@return: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@12
(byte) dtv_control#96 ← phi( mode_8bppchunkybmm::@12/(byte) dtv_control#52 )
(byte) dtv_control#53 ← (byte) dtv_control#96
return
to:@return
@71: scope:[] from @58
(byte) dtv_control#129 ← phi( @58/(byte) dtv_control#15 )
(byte*) print_char_cursor#51 ← phi( @58/(byte*) print_char_cursor#69 )
(byte*) print_line_cursor#49 ← phi( @58/(byte*) print_line_cursor#67 )
(byte*) print_screen#32 ← phi( @58/(byte*) print_screen#49 )
call main
to:@72
@72: scope:[] from @71
(byte) dtv_control#97 ← phi( @71/(byte) dtv_control#1 )
(byte*) print_char_cursor#30 ← phi( @71/(byte*) print_char_cursor#11 )
(byte*) print_line_cursor#29 ← phi( @71/(byte*) print_line_cursor#10 )
(byte*) print_screen#15 ← phi( @71/(byte*) print_screen#4 )
(byte*) print_screen#7 ← (byte*) print_screen#15
(byte*) print_line_cursor#15 ← (byte*) print_line_cursor#29
(byte*) print_char_cursor#16 ← (byte*) print_char_cursor#30
(byte) dtv_control#54 ← (byte) dtv_control#97
to:@end
@end: scope:[] from @72
SYMBOL TABLE SSA
(const string) $1 = (string) "C64DTV Graphics Modes CCLHBME@ OHIIMCC@ LUNCMMM@----------------------------------------@1. Standard Char (V) 0000000@2. Extended Color Char (V) 0000001@3. Multicolor Char (V) 0000010@4. Standard Bitmap (V) 0000100@5. Multicolor Bitmap (V) 0000110@6. High Color Standard Char (H) 0001000@7. High Extended Color Char (H) 0001001@8. High Multicolor Char (H) 0001010@9. High Multicolor Bitmap (H) 0001110@a. Sixs Fred 2 (D) 0010111@b. Two Plane Bitmap (D) 0011101@c. Sixs Fred (2 Plane MC BM) (D) 0011111@d. 8bpp Pixel Cell (D) 0111011@e. Chunky 8bpp Bitmap (D) 1111011@----------------------------------------@ (V) vicII (H) vicII+hicol (D) c64dtv@"
(label) @17
(label) @4
(label) @41
(label) @48
(label) @57
(label) @58
(label) @71
(label) @72
(label) @begin
(label) @end
(byte*) BGCOL
(byte*) BGCOL#0
(byte*) BGCOL1
(byte*) BGCOL1#0
(byte*) BGCOL2
(byte*) BGCOL2#0
(byte*) BGCOL3
(byte*) BGCOL3#0
(byte*) BGCOL4
(byte*) BGCOL4#0
(byte) BLACK
(byte) BLACK#0
(byte) BLUE
(byte) BLUE#0
(byte*) BORDERCOL
(byte*) BORDERCOL#0
(byte*) CIA1_PORT_A
(byte*) CIA1_PORT_A#0
(byte*) CIA1_PORT_B
(byte*) CIA1_PORT_B#0
(byte*) CIA2_PORT_A
(byte*) CIA2_PORT_A#0
(byte*) CIA2_PORT_A_DDR
(byte*) CIA2_PORT_A_DDR#0
(byte*) COLS
(byte*) COLS#0
(byte) DTV_BORDER_OFF
(byte) DTV_BORDER_OFF#0
(byte) DTV_CHUNKY
(byte) DTV_CHUNKY#0
(byte) DTV_COLORRAM_OFF
(byte) DTV_COLORRAM_OFF#0
(dword) DTV_COLOR_BANK_DEFAULT
(dword) DTV_COLOR_BANK_DEFAULT#0
(byte*) DTV_COLOR_BANK_HI
(byte*) DTV_COLOR_BANK_HI#0
(byte*) DTV_COLOR_BANK_LO
(byte*) DTV_COLOR_BANK_LO#0
(byte*) DTV_CONTROL
(byte*) DTV_CONTROL#0
(byte*) DTV_FEATURE
(byte*) DTV_FEATURE#0
(byte) DTV_FEATURE_ENABLE
(byte) DTV_FEATURE_ENABLE#0
(byte*) DTV_GRAPHICS_VIC_BANK
(byte*) DTV_GRAPHICS_VIC_BANK#0
(byte) DTV_HIGHCOLOR
(byte) DTV_HIGHCOLOR#0
(byte) DTV_LINEAR
(byte) DTV_LINEAR#0
(byte) DTV_OVERSCAN
(byte) DTV_OVERSCAN#0
(byte*) DTV_PALETTE
(byte*) DTV_PALETTE#0
(byte[$10]) DTV_PALETTE_DEFAULT
(byte[$10]) DTV_PALETTE_DEFAULT#0
(byte*) DTV_PLANEA_MODULO_HI
(byte*) DTV_PLANEA_MODULO_HI#0
(byte*) DTV_PLANEA_MODULO_LO
(byte*) DTV_PLANEA_MODULO_LO#0
(byte*) DTV_PLANEA_START_HI
(byte*) DTV_PLANEA_START_HI#0
(byte*) DTV_PLANEA_START_LO
(byte*) DTV_PLANEA_START_LO#0
(byte*) DTV_PLANEA_START_MI
(byte*) DTV_PLANEA_START_MI#0
(byte*) DTV_PLANEA_STEP
(byte*) DTV_PLANEA_STEP#0
(byte*) DTV_PLANEB_MODULO_HI
(byte*) DTV_PLANEB_MODULO_HI#0
(byte*) DTV_PLANEB_MODULO_LO
(byte*) DTV_PLANEB_MODULO_LO#0
(byte*) DTV_PLANEB_START_HI
(byte*) DTV_PLANEB_START_HI#0
(byte*) DTV_PLANEB_START_LO
(byte*) DTV_PLANEB_START_LO#0
(byte*) DTV_PLANEB_START_MI
(byte*) DTV_PLANEB_START_MI#0
(byte*) DTV_PLANEB_STEP
(byte*) DTV_PLANEB_STEP#0
(byte) GREEN
(byte) GREEN#0
(byte) KEY_0
(byte) KEY_0#0
(byte) KEY_1
(byte) KEY_1#0
(byte) KEY_2
(byte) KEY_2#0
(byte) KEY_3
(byte) KEY_3#0
(byte) KEY_4
(byte) KEY_4#0
(byte) KEY_6
(byte) KEY_6#0
(byte) KEY_7
(byte) KEY_7#0
(byte) KEY_8
(byte) KEY_8#0
(byte) KEY_A
(byte) KEY_A#0
(byte) KEY_B
(byte) KEY_B#0
(byte) KEY_C
(byte) KEY_C#0
(byte) KEY_D
(byte) KEY_D#0
(byte) KEY_E
(byte) KEY_E#0
(byte) KEY_H
(byte) KEY_H#0
(byte) KEY_L
(byte) KEY_L#0
(byte) KEY_O
(byte) KEY_O#0
(byte) KEY_SPACE
(byte) KEY_SPACE#0
(byte) KEY_U
(byte) KEY_U#0
(byte) LIGHT_GREEN
(byte) LIGHT_GREEN#0
(byte[]) MENU_TEXT
(byte[]) MENU_TEXT#0
(byte*) PROCPORT
(byte*) PROCPORT#0
(byte*) PROCPORT_DDR
(byte*) PROCPORT_DDR#0
(byte) PROCPORT_DDR_MEMORY_MASK
(byte) PROCPORT_DDR_MEMORY_MASK#0
(byte) PROCPORT_RAM_CHARROM
(byte) PROCPORT_RAM_CHARROM#0
(byte) PROCPORT_RAM_IO
(byte) PROCPORT_RAM_IO#0
(const byte) RADIX::BINARY = (number) 2
(const byte) RADIX::DECIMAL = (number) $a
(const byte) RADIX::HEXADECIMAL = (number) $10
(const byte) RADIX::OCTAL = (number) 8
(byte*) RASTER
(byte*) RASTER#0
(byte) VIC_BMM
(byte) VIC_BMM#0
(byte*) VIC_CONTROL
(byte*) VIC_CONTROL#0
(byte*) VIC_CONTROL2
(byte*) VIC_CONTROL2#0
(byte) VIC_CSEL
(byte) VIC_CSEL#0
(byte) VIC_DEN
(byte) VIC_DEN#0
(byte) VIC_ECM
(byte) VIC_ECM#0
(byte) VIC_MCM
(byte) VIC_MCM#0
(byte*) VIC_MEMORY
(byte*) VIC_MEMORY#0
(byte) VIC_RSEL
(byte) VIC_RSEL#0
(void()) bitmap_clear()
(byte*~) bitmap_clear::$0
(bool~) bitmap_clear::$1
(bool~) bitmap_clear::$2
(label) bitmap_clear::@1
(label) bitmap_clear::@2
(label) bitmap_clear::@3
(label) bitmap_clear::@return
(byte*) bitmap_clear::bitmap
(byte*) bitmap_clear::bitmap#0
(byte*) bitmap_clear::bitmap#1
(byte*) bitmap_clear::bitmap#2
(byte*) bitmap_clear::bitmap#3
(byte*) bitmap_clear::bitmap#4
(byte) bitmap_clear::x
(byte) bitmap_clear::x#0
(byte) bitmap_clear::x#1
(byte) bitmap_clear::x#2
(byte) bitmap_clear::y
(byte) bitmap_clear::y#0
(byte) bitmap_clear::y#1
(byte) bitmap_clear::y#2
(byte) bitmap_clear::y#3
(byte) bitmap_clear::y#4
(void()) bitmap_init((byte*) bitmap_init::bitmap)
(number~) bitmap_init::$0
(byte~) bitmap_init::$1
(number~) bitmap_init::$10
(bool~) bitmap_init::$11
(bool~) bitmap_init::$12
(byte*~) bitmap_init::$13
(bool~) bitmap_init::$14
(byte~) bitmap_init::$2
(bool~) bitmap_init::$3
(bool~) bitmap_init::$4
(bool~) bitmap_init::$5
(number~) bitmap_init::$6
(byte~) bitmap_init::$7
(number~) bitmap_init::$8
(byte~) bitmap_init::$9
(label) bitmap_init::@1
(label) bitmap_init::@2
(label) bitmap_init::@3
(label) bitmap_init::@4
(label) bitmap_init::@5
(label) bitmap_init::@6
(label) bitmap_init::@7
(label) bitmap_init::@return
(byte*) bitmap_init::bitmap
(byte*) bitmap_init::bitmap#0
(byte*) bitmap_init::bitmap#1
(byte*) bitmap_init::bitmap#2
(byte*) bitmap_init::bitmap#3
(byte*) bitmap_init::bitmap#4
(byte) bitmap_init::bits
(byte) bitmap_init::bits#0
(byte) bitmap_init::bits#1
(byte) bitmap_init::bits#2
(byte) bitmap_init::bits#3
(byte) bitmap_init::bits#4
(byte) bitmap_init::x
(byte) bitmap_init::x#0
(byte) bitmap_init::x#1
(byte) bitmap_init::x#2
(byte) bitmap_init::x#3
(byte) bitmap_init::x#4
(byte) bitmap_init::y
(byte) bitmap_init::y#0
(byte) bitmap_init::y#1
(byte) bitmap_init::y#2
(byte) bitmap_init::y#3
(byte) bitmap_init::y#4
(byte*) bitmap_init::yoffs
(byte*) bitmap_init::yoffs#0
(byte*) bitmap_init::yoffs#1
(byte*) bitmap_init::yoffs#2
(byte*) bitmap_init::yoffs#3
(byte*) bitmap_init::yoffs#4
(void()) bitmap_line((byte) bitmap_line::x0 , (byte) bitmap_line::x1 , (byte) bitmap_line::y0 , (byte) bitmap_line::y1)
(bool~) bitmap_line::$0
(byte~) bitmap_line::$1
(byte~) bitmap_line::$11
(bool~) bitmap_line::$12
(byte~) bitmap_line::$13
(bool~) bitmap_line::$14
(byte~) bitmap_line::$17
(bool~) bitmap_line::$18
(bool~) bitmap_line::$2
(byte~) bitmap_line::$3
(bool~) bitmap_line::$4
(byte~) bitmap_line::$7
(bool~) bitmap_line::$8
(label) bitmap_line::@1
(label) bitmap_line::@10
(label) bitmap_line::@11
(label) bitmap_line::@15
(label) bitmap_line::@17
(label) bitmap_line::@20
(label) bitmap_line::@21
(label) bitmap_line::@25
(label) bitmap_line::@27
(label) bitmap_line::@29
(label) bitmap_line::@3
(label) bitmap_line::@30
(label) bitmap_line::@31
(label) bitmap_line::@32
(label) bitmap_line::@33
(label) bitmap_line::@34
(label) bitmap_line::@35
(label) bitmap_line::@36
(label) bitmap_line::@4
(label) bitmap_line::@5
(label) bitmap_line::@7
(label) bitmap_line::@8
(label) bitmap_line::@return
(byte) bitmap_line::x0
(byte) bitmap_line::x0#0
(byte) bitmap_line::x0#1
(byte) bitmap_line::x0#10
(byte) bitmap_line::x0#11
(byte) bitmap_line::x0#12
(byte) bitmap_line::x0#13
(byte) bitmap_line::x0#2
(byte) bitmap_line::x0#3
(byte) bitmap_line::x0#4
(byte) bitmap_line::x0#5
(byte) bitmap_line::x0#6
(byte) bitmap_line::x0#7
(byte) bitmap_line::x0#8
(byte) bitmap_line::x0#9
(byte) bitmap_line::x1
(byte) bitmap_line::x1#0
(byte) bitmap_line::x1#1
(byte) bitmap_line::x1#10
(byte) bitmap_line::x1#11
(byte) bitmap_line::x1#12
(byte) bitmap_line::x1#13
(byte) bitmap_line::x1#2
(byte) bitmap_line::x1#3
(byte) bitmap_line::x1#4
(byte) bitmap_line::x1#5
(byte) bitmap_line::x1#6
(byte) bitmap_line::x1#7
(byte) bitmap_line::x1#8
(byte) bitmap_line::x1#9
(byte) bitmap_line::xd
(byte) bitmap_line::xd#0
(byte) bitmap_line::xd#1
(byte) bitmap_line::xd#10
(byte) bitmap_line::xd#11
(byte) bitmap_line::xd#12
(byte) bitmap_line::xd#13
(byte) bitmap_line::xd#14
(byte) bitmap_line::xd#2
(byte) bitmap_line::xd#3
(byte) bitmap_line::xd#4
(byte) bitmap_line::xd#5
(byte) bitmap_line::xd#6
(byte) bitmap_line::xd#7
(byte) bitmap_line::xd#8
(byte) bitmap_line::xd#9
(byte) bitmap_line::y0
(byte) bitmap_line::y0#0
(byte) bitmap_line::y0#1
(byte) bitmap_line::y0#10
(byte) bitmap_line::y0#11
(byte) bitmap_line::y0#12
(byte) bitmap_line::y0#13
(byte) bitmap_line::y0#2
(byte) bitmap_line::y0#3
(byte) bitmap_line::y0#4
(byte) bitmap_line::y0#5
(byte) bitmap_line::y0#6
(byte) bitmap_line::y0#7
(byte) bitmap_line::y0#8
(byte) bitmap_line::y0#9
(byte) bitmap_line::y1
(byte) bitmap_line::y1#0
(byte) bitmap_line::y1#1
(byte) bitmap_line::y1#10
(byte) bitmap_line::y1#11
(byte) bitmap_line::y1#12
(byte) bitmap_line::y1#13
(byte) bitmap_line::y1#2
(byte) bitmap_line::y1#3
(byte) bitmap_line::y1#4
(byte) bitmap_line::y1#5
(byte) bitmap_line::y1#6
(byte) bitmap_line::y1#7
(byte) bitmap_line::y1#8
(byte) bitmap_line::y1#9
(byte) bitmap_line::yd
(byte) bitmap_line::yd#0
(byte) bitmap_line::yd#1
(byte) bitmap_line::yd#10
(byte) bitmap_line::yd#11
(byte) bitmap_line::yd#12
(byte) bitmap_line::yd#2
(byte) bitmap_line::yd#3
(byte) bitmap_line::yd#4
(byte) bitmap_line::yd#5
(byte) bitmap_line::yd#6
(byte) bitmap_line::yd#7
(byte) bitmap_line::yd#8
(byte) bitmap_line::yd#9
(void()) bitmap_line_xdyd((byte) bitmap_line_xdyd::x , (byte) bitmap_line_xdyd::y , (byte) bitmap_line_xdyd::x1 , (byte) bitmap_line_xdyd::xd , (byte) bitmap_line_xdyd::yd)
(byte~) bitmap_line_xdyd::$0
(byte~) bitmap_line_xdyd::$2
(bool~) bitmap_line_xdyd::$3
(bool~) bitmap_line_xdyd::$4
(byte~) bitmap_line_xdyd::$5
(number~) bitmap_line_xdyd::$6
(bool~) bitmap_line_xdyd::$7
(label) bitmap_line_xdyd::@1
(label) bitmap_line_xdyd::@2
(label) bitmap_line_xdyd::@3
(label) bitmap_line_xdyd::@5
(label) bitmap_line_xdyd::@return
(byte) bitmap_line_xdyd::e
(byte) bitmap_line_xdyd::e#0
(byte) bitmap_line_xdyd::e#1
(byte) bitmap_line_xdyd::e#2
(byte) bitmap_line_xdyd::e#3
(byte) bitmap_line_xdyd::e#4
(byte) bitmap_line_xdyd::e#5
(byte) bitmap_line_xdyd::e#6
(byte) bitmap_line_xdyd::x
(byte) bitmap_line_xdyd::x#0
(byte) bitmap_line_xdyd::x#1
(byte) bitmap_line_xdyd::x#2
(byte) bitmap_line_xdyd::x#3
(byte) bitmap_line_xdyd::x#4
(byte) bitmap_line_xdyd::x#5
(byte) bitmap_line_xdyd::x#6
(byte) bitmap_line_xdyd::x#7
(byte) bitmap_line_xdyd::x1
(byte) bitmap_line_xdyd::x1#0
(byte) bitmap_line_xdyd::x1#1
(byte) bitmap_line_xdyd::x1#2
(byte) bitmap_line_xdyd::x1#3
(byte) bitmap_line_xdyd::x1#4
(byte) bitmap_line_xdyd::x1#5
(byte) bitmap_line_xdyd::x1#6
(byte) bitmap_line_xdyd::xd
(byte) bitmap_line_xdyd::xd#0
(byte) bitmap_line_xdyd::xd#1
(byte) bitmap_line_xdyd::xd#2
(byte) bitmap_line_xdyd::xd#3
(byte) bitmap_line_xdyd::xd#4
(byte) bitmap_line_xdyd::xd#5
(byte) bitmap_line_xdyd::xd#6
(byte) bitmap_line_xdyd::y
(byte) bitmap_line_xdyd::y#0
(byte) bitmap_line_xdyd::y#1
(byte) bitmap_line_xdyd::y#2
(byte) bitmap_line_xdyd::y#3
(byte) bitmap_line_xdyd::y#4
(byte) bitmap_line_xdyd::y#5
(byte) bitmap_line_xdyd::y#6
(byte) bitmap_line_xdyd::y#7
(byte) bitmap_line_xdyd::yd
(byte) bitmap_line_xdyd::yd#0
(byte) bitmap_line_xdyd::yd#1
(byte) bitmap_line_xdyd::yd#2
(byte) bitmap_line_xdyd::yd#3
(byte) bitmap_line_xdyd::yd#4
(byte) bitmap_line_xdyd::yd#5
(byte) bitmap_line_xdyd::yd#6
(void()) bitmap_line_xdyi((byte) bitmap_line_xdyi::x , (byte) bitmap_line_xdyi::y , (byte) bitmap_line_xdyi::x1 , (byte) bitmap_line_xdyi::xd , (byte) bitmap_line_xdyi::yd)
(byte~) bitmap_line_xdyi::$0
(byte~) bitmap_line_xdyi::$2
(bool~) bitmap_line_xdyi::$3
(bool~) bitmap_line_xdyi::$4
(byte~) bitmap_line_xdyi::$5
(number~) bitmap_line_xdyi::$6
(bool~) bitmap_line_xdyi::$7
(label) bitmap_line_xdyi::@1
(label) bitmap_line_xdyi::@2
(label) bitmap_line_xdyi::@3
(label) bitmap_line_xdyi::@5
(label) bitmap_line_xdyi::@return
(byte) bitmap_line_xdyi::e
(byte) bitmap_line_xdyi::e#0
(byte) bitmap_line_xdyi::e#1
(byte) bitmap_line_xdyi::e#2
(byte) bitmap_line_xdyi::e#3
(byte) bitmap_line_xdyi::e#4
(byte) bitmap_line_xdyi::e#5
(byte) bitmap_line_xdyi::e#6
(byte) bitmap_line_xdyi::x
(byte) bitmap_line_xdyi::x#0
(byte) bitmap_line_xdyi::x#1
(byte) bitmap_line_xdyi::x#2
(byte) bitmap_line_xdyi::x#3
(byte) bitmap_line_xdyi::x#4
(byte) bitmap_line_xdyi::x#5
(byte) bitmap_line_xdyi::x#6
(byte) bitmap_line_xdyi::x#7
(byte) bitmap_line_xdyi::x1
(byte) bitmap_line_xdyi::x1#0
(byte) bitmap_line_xdyi::x1#1
(byte) bitmap_line_xdyi::x1#2
(byte) bitmap_line_xdyi::x1#3
(byte) bitmap_line_xdyi::x1#4
(byte) bitmap_line_xdyi::x1#5
(byte) bitmap_line_xdyi::x1#6
(byte) bitmap_line_xdyi::xd
(byte) bitmap_line_xdyi::xd#0
(byte) bitmap_line_xdyi::xd#1
(byte) bitmap_line_xdyi::xd#2
(byte) bitmap_line_xdyi::xd#3
(byte) bitmap_line_xdyi::xd#4
(byte) bitmap_line_xdyi::xd#5
(byte) bitmap_line_xdyi::xd#6
(byte) bitmap_line_xdyi::y
(byte) bitmap_line_xdyi::y#0
(byte) bitmap_line_xdyi::y#1
(byte) bitmap_line_xdyi::y#2
(byte) bitmap_line_xdyi::y#3
(byte) bitmap_line_xdyi::y#4
(byte) bitmap_line_xdyi::y#5
(byte) bitmap_line_xdyi::y#6
(byte) bitmap_line_xdyi::y#7
(byte) bitmap_line_xdyi::yd
(byte) bitmap_line_xdyi::yd#0
(byte) bitmap_line_xdyi::yd#1
(byte) bitmap_line_xdyi::yd#2
(byte) bitmap_line_xdyi::yd#3
(byte) bitmap_line_xdyi::yd#4
(byte) bitmap_line_xdyi::yd#5
(byte) bitmap_line_xdyi::yd#6
(void()) bitmap_line_ydxd((byte) bitmap_line_ydxd::y , (byte) bitmap_line_ydxd::x , (byte) bitmap_line_ydxd::y1 , (byte) bitmap_line_ydxd::yd , (byte) bitmap_line_ydxd::xd)
(byte~) bitmap_line_ydxd::$0
(byte~) bitmap_line_ydxd::$2
(bool~) bitmap_line_ydxd::$3
(bool~) bitmap_line_ydxd::$4
(byte~) bitmap_line_ydxd::$5
(number~) bitmap_line_ydxd::$6
(bool~) bitmap_line_ydxd::$7
(label) bitmap_line_ydxd::@1
(label) bitmap_line_ydxd::@2
(label) bitmap_line_ydxd::@3
(label) bitmap_line_ydxd::@5
(label) bitmap_line_ydxd::@return
(byte) bitmap_line_ydxd::e
(byte) bitmap_line_ydxd::e#0
(byte) bitmap_line_ydxd::e#1
(byte) bitmap_line_ydxd::e#2
(byte) bitmap_line_ydxd::e#3
(byte) bitmap_line_ydxd::e#4
(byte) bitmap_line_ydxd::e#5
(byte) bitmap_line_ydxd::e#6
(byte) bitmap_line_ydxd::x
(byte) bitmap_line_ydxd::x#0
(byte) bitmap_line_ydxd::x#1
(byte) bitmap_line_ydxd::x#2
(byte) bitmap_line_ydxd::x#3
(byte) bitmap_line_ydxd::x#4
(byte) bitmap_line_ydxd::x#5
(byte) bitmap_line_ydxd::x#6
(byte) bitmap_line_ydxd::x#7
(byte) bitmap_line_ydxd::xd
(byte) bitmap_line_ydxd::xd#0
(byte) bitmap_line_ydxd::xd#1
(byte) bitmap_line_ydxd::xd#2
(byte) bitmap_line_ydxd::xd#3
(byte) bitmap_line_ydxd::xd#4
(byte) bitmap_line_ydxd::xd#5
(byte) bitmap_line_ydxd::xd#6
(byte) bitmap_line_ydxd::y
(byte) bitmap_line_ydxd::y#0
(byte) bitmap_line_ydxd::y#1
(byte) bitmap_line_ydxd::y#2
(byte) bitmap_line_ydxd::y#3
(byte) bitmap_line_ydxd::y#4
(byte) bitmap_line_ydxd::y#5
(byte) bitmap_line_ydxd::y#6
(byte) bitmap_line_ydxd::y#7
(byte) bitmap_line_ydxd::y#8
(byte) bitmap_line_ydxd::y1
(byte) bitmap_line_ydxd::y1#0
(byte) bitmap_line_ydxd::y1#1
(byte) bitmap_line_ydxd::y1#2
(byte) bitmap_line_ydxd::y1#3
(byte) bitmap_line_ydxd::y1#4
(byte) bitmap_line_ydxd::y1#5
(byte) bitmap_line_ydxd::y1#6
(byte) bitmap_line_ydxd::yd
(byte) bitmap_line_ydxd::yd#0
(byte) bitmap_line_ydxd::yd#1
(byte) bitmap_line_ydxd::yd#2
(byte) bitmap_line_ydxd::yd#3
(byte) bitmap_line_ydxd::yd#4
(byte) bitmap_line_ydxd::yd#5
(byte) bitmap_line_ydxd::yd#6
(void()) bitmap_line_ydxi((byte) bitmap_line_ydxi::y , (byte) bitmap_line_ydxi::x , (byte) bitmap_line_ydxi::y1 , (byte) bitmap_line_ydxi::yd , (byte) bitmap_line_ydxi::xd)
(byte~) bitmap_line_ydxi::$0
(byte~) bitmap_line_ydxi::$2
(bool~) bitmap_line_ydxi::$3
(bool~) bitmap_line_ydxi::$4
(byte~) bitmap_line_ydxi::$5
(number~) bitmap_line_ydxi::$6
(bool~) bitmap_line_ydxi::$7
(label) bitmap_line_ydxi::@1
(label) bitmap_line_ydxi::@2
(label) bitmap_line_ydxi::@3
(label) bitmap_line_ydxi::@5
(label) bitmap_line_ydxi::@return
(byte) bitmap_line_ydxi::e
(byte) bitmap_line_ydxi::e#0
(byte) bitmap_line_ydxi::e#1
(byte) bitmap_line_ydxi::e#2
(byte) bitmap_line_ydxi::e#3
(byte) bitmap_line_ydxi::e#4
(byte) bitmap_line_ydxi::e#5
(byte) bitmap_line_ydxi::e#6
(byte) bitmap_line_ydxi::x
(byte) bitmap_line_ydxi::x#0
(byte) bitmap_line_ydxi::x#1
(byte) bitmap_line_ydxi::x#2
(byte) bitmap_line_ydxi::x#3
(byte) bitmap_line_ydxi::x#4
(byte) bitmap_line_ydxi::x#5
(byte) bitmap_line_ydxi::x#6
(byte) bitmap_line_ydxi::x#7
(byte) bitmap_line_ydxi::xd
(byte) bitmap_line_ydxi::xd#0
(byte) bitmap_line_ydxi::xd#1
(byte) bitmap_line_ydxi::xd#2
(byte) bitmap_line_ydxi::xd#3
(byte) bitmap_line_ydxi::xd#4
(byte) bitmap_line_ydxi::xd#5
(byte) bitmap_line_ydxi::xd#6
(byte) bitmap_line_ydxi::y
(byte) bitmap_line_ydxi::y#0
(byte) bitmap_line_ydxi::y#1
(byte) bitmap_line_ydxi::y#2
(byte) bitmap_line_ydxi::y#3
(byte) bitmap_line_ydxi::y#4
(byte) bitmap_line_ydxi::y#5
(byte) bitmap_line_ydxi::y#6
(byte) bitmap_line_ydxi::y#7
(byte) bitmap_line_ydxi::y1
(byte) bitmap_line_ydxi::y1#0
(byte) bitmap_line_ydxi::y1#1
(byte) bitmap_line_ydxi::y1#2
(byte) bitmap_line_ydxi::y1#3
(byte) bitmap_line_ydxi::y1#4
(byte) bitmap_line_ydxi::y1#5
(byte) bitmap_line_ydxi::y1#6
(byte) bitmap_line_ydxi::yd
(byte) bitmap_line_ydxi::yd#0
(byte) bitmap_line_ydxi::yd#1
(byte) bitmap_line_ydxi::yd#2
(byte) bitmap_line_ydxi::yd#3
(byte) bitmap_line_ydxi::yd#4
(byte) bitmap_line_ydxi::yd#5
(byte) bitmap_line_ydxi::yd#6
(void()) bitmap_plot((byte) bitmap_plot::x , (byte) bitmap_plot::y)
(word~) bitmap_plot::$0
(byte~) bitmap_plot::$1
(label) bitmap_plot::@return
(byte*) bitmap_plot::plotter
(byte*) bitmap_plot::plotter#0
(word) bitmap_plot::plotter_x
(word) bitmap_plot::plotter_x#0
(word) bitmap_plot::plotter_y
(word) bitmap_plot::plotter_y#0
(byte) bitmap_plot::x
(byte) bitmap_plot::x#0
(byte) bitmap_plot::x#1
(byte) bitmap_plot::x#2
(byte) bitmap_plot::x#3
(byte) bitmap_plot::x#4
(byte) bitmap_plot::y
(byte) bitmap_plot::y#0
(byte) bitmap_plot::y#1
(byte) bitmap_plot::y#2
(byte) bitmap_plot::y#3
(byte) bitmap_plot::y#4
(byte[$100]) bitmap_plot_bit
(byte[$100]) bitmap_plot_bit#0
(byte[$100]) bitmap_plot_xhi
(byte[$100]) bitmap_plot_xhi#0
(byte[$100]) bitmap_plot_xlo
(byte[$100]) bitmap_plot_xlo#0
(byte[$100]) bitmap_plot_yhi
(byte[$100]) bitmap_plot_yhi#0
(byte[$100]) bitmap_plot_ylo
(byte[$100]) bitmap_plot_ylo#0
(void()) dtvSetCpuBankSegment1((byte) dtvSetCpuBankSegment1::cpuBankIdx)
(label) dtvSetCpuBankSegment1::@return
(byte*) dtvSetCpuBankSegment1::cpuBank
(byte*) dtvSetCpuBankSegment1::cpuBank#0
(byte) dtvSetCpuBankSegment1::cpuBankIdx
(byte) dtvSetCpuBankSegment1::cpuBankIdx#0
(byte) dtvSetCpuBankSegment1::cpuBankIdx#1
(byte) dtvSetCpuBankSegment1::cpuBankIdx#2
(byte) dtvSetCpuBankSegment1::cpuBankIdx#3
(byte) dtv_control
(byte) dtv_control#0
(byte) dtv_control#1
(byte) dtv_control#10
(byte) dtv_control#100
(byte) dtv_control#101
(byte) dtv_control#102
(byte) dtv_control#103
(byte) dtv_control#104
(byte) dtv_control#105
(byte) dtv_control#106
(byte) dtv_control#107
(byte) dtv_control#108
(byte) dtv_control#109
(byte) dtv_control#11
(byte) dtv_control#110
(byte) dtv_control#111
(byte) dtv_control#112
(byte) dtv_control#113
(byte) dtv_control#114
(byte) dtv_control#115
(byte) dtv_control#116
(byte) dtv_control#117
(byte) dtv_control#118
(byte) dtv_control#119
(byte) dtv_control#12
(byte) dtv_control#120
(byte) dtv_control#121
(byte) dtv_control#122
(byte) dtv_control#123
(byte) dtv_control#124
(byte) dtv_control#125
(byte) dtv_control#126
(byte) dtv_control#127
(byte) dtv_control#128
(byte) dtv_control#129
(byte) dtv_control#13
(byte) dtv_control#130
(byte) dtv_control#131
(byte) dtv_control#132
(byte) dtv_control#133
(byte) dtv_control#134
(byte) dtv_control#135
(byte) dtv_control#136
(byte) dtv_control#137
(byte) dtv_control#138
(byte) dtv_control#139
(byte) dtv_control#14
(byte) dtv_control#140
(byte) dtv_control#141
(byte) dtv_control#142
(byte) dtv_control#143
(byte) dtv_control#144
(byte) dtv_control#145
(byte) dtv_control#146
(byte) dtv_control#147
(byte) dtv_control#148
(byte) dtv_control#149
(byte) dtv_control#15
(byte) dtv_control#150
(byte) dtv_control#151
(byte) dtv_control#152
(byte) dtv_control#153
(byte) dtv_control#154
(byte) dtv_control#155
(byte) dtv_control#156
(byte) dtv_control#157
(byte) dtv_control#158
(byte) dtv_control#159
(byte) dtv_control#16
(byte) dtv_control#160
(byte) dtv_control#161
(byte) dtv_control#162
(byte) dtv_control#163
(byte) dtv_control#164
(byte) dtv_control#165
(byte) dtv_control#166
(byte) dtv_control#167
(byte) dtv_control#168
(byte) dtv_control#169
(byte) dtv_control#17
(byte) dtv_control#170
(byte) dtv_control#171
(byte) dtv_control#172
(byte) dtv_control#173
(byte) dtv_control#174
(byte) dtv_control#175
(byte) dtv_control#176
(byte) dtv_control#177
(byte) dtv_control#178
(byte) dtv_control#179
(byte) dtv_control#18
(byte) dtv_control#180
(byte) dtv_control#181
(byte) dtv_control#182
(byte) dtv_control#183
(byte) dtv_control#184
(byte) dtv_control#185
(byte) dtv_control#186
(byte) dtv_control#187
(byte) dtv_control#188
(byte) dtv_control#189
(byte) dtv_control#19
(byte) dtv_control#190
(byte) dtv_control#191
(byte) dtv_control#192
(byte) dtv_control#193
(byte) dtv_control#194
(byte) dtv_control#195
(byte) dtv_control#196
(byte) dtv_control#197
(byte) dtv_control#198
(byte) dtv_control#199
(byte) dtv_control#2
(byte) dtv_control#20
(byte) dtv_control#200
(byte) dtv_control#201
(byte) dtv_control#202
(byte) dtv_control#203
(byte) dtv_control#204
(byte) dtv_control#205
(byte) dtv_control#206
(byte) dtv_control#207
(byte) dtv_control#208
(byte) dtv_control#209
(byte) dtv_control#21
(byte) dtv_control#210
(byte) dtv_control#211
(byte) dtv_control#212
(byte) dtv_control#213
(byte) dtv_control#214
(byte) dtv_control#215
(byte) dtv_control#216
(byte) dtv_control#217
(byte) dtv_control#218
(byte) dtv_control#219
(byte) dtv_control#22
(byte) dtv_control#220
(byte) dtv_control#221
(byte) dtv_control#222
(byte) dtv_control#223
(byte) dtv_control#224
(byte) dtv_control#225
(byte) dtv_control#226
(byte) dtv_control#227
(byte) dtv_control#228
(byte) dtv_control#229
(byte) dtv_control#23
(byte) dtv_control#230
(byte) dtv_control#231
(byte) dtv_control#232
(byte) dtv_control#233
(byte) dtv_control#234
(byte) dtv_control#235
(byte) dtv_control#236
(byte) dtv_control#237
(byte) dtv_control#238
(byte) dtv_control#239
(byte) dtv_control#24
(byte) dtv_control#240
(byte) dtv_control#241
(byte) dtv_control#242
(byte) dtv_control#243
(byte) dtv_control#244
(byte) dtv_control#245
(byte) dtv_control#246
(byte) dtv_control#247
(byte) dtv_control#248
(byte) dtv_control#249
(byte) dtv_control#25
(byte) dtv_control#250
(byte) dtv_control#251
(byte) dtv_control#252
(byte) dtv_control#253
(byte) dtv_control#254
(byte) dtv_control#255
(byte) dtv_control#256
(byte) dtv_control#257
(byte) dtv_control#258
(byte) dtv_control#259
(byte) dtv_control#26
(byte) dtv_control#260
(byte) dtv_control#261
(byte) dtv_control#262
(byte) dtv_control#263
(byte) dtv_control#264
(byte) dtv_control#265
(byte) dtv_control#266
(byte) dtv_control#267
(byte) dtv_control#268
(byte) dtv_control#269
(byte) dtv_control#27
(byte) dtv_control#270
(byte) dtv_control#271
(byte) dtv_control#272
(byte) dtv_control#273
(byte) dtv_control#274
(byte) dtv_control#275
(byte) dtv_control#276
(byte) dtv_control#277
(byte) dtv_control#278
(byte) dtv_control#279
(byte) dtv_control#28
(byte) dtv_control#280
(byte) dtv_control#281
(byte) dtv_control#282
(byte) dtv_control#283
(byte) dtv_control#284
(byte) dtv_control#285
(byte) dtv_control#286
(byte) dtv_control#287
(byte) dtv_control#288
(byte) dtv_control#289
(byte) dtv_control#29
(byte) dtv_control#290
(byte) dtv_control#3
(byte) dtv_control#30
(byte) dtv_control#31
(byte) dtv_control#32
(byte) dtv_control#33
(byte) dtv_control#34
(byte) dtv_control#35
(byte) dtv_control#36
(byte) dtv_control#37
(byte) dtv_control#38
(byte) dtv_control#39
(byte) dtv_control#4
(byte) dtv_control#40
(byte) dtv_control#41
(byte) dtv_control#42
(byte) dtv_control#43
(byte) dtv_control#44
(byte) dtv_control#45
(byte) dtv_control#46
(byte) dtv_control#47
(byte) dtv_control#48
(byte) dtv_control#49
(byte) dtv_control#5
(byte) dtv_control#50
(byte) dtv_control#51
(byte) dtv_control#52
(byte) dtv_control#53
(byte) dtv_control#54
(byte) dtv_control#55
(byte) dtv_control#56
(byte) dtv_control#57
(byte) dtv_control#58
(byte) dtv_control#59
(byte) dtv_control#6
(byte) dtv_control#60
(byte) dtv_control#61
(byte) dtv_control#62
(byte) dtv_control#63
(byte) dtv_control#64
(byte) dtv_control#65
(byte) dtv_control#66
(byte) dtv_control#67
(byte) dtv_control#68
(byte) dtv_control#69
(byte) dtv_control#7
(byte) dtv_control#70
(byte) dtv_control#71
(byte) dtv_control#72
(byte) dtv_control#73
(byte) dtv_control#74
(byte) dtv_control#75
(byte) dtv_control#76
(byte) dtv_control#77
(byte) dtv_control#78
(byte) dtv_control#79
(byte) dtv_control#8
(byte) dtv_control#80
(byte) dtv_control#81
(byte) dtv_control#82
(byte) dtv_control#83
(byte) dtv_control#84
(byte) dtv_control#85
(byte) dtv_control#86
(byte) dtv_control#87
(byte) dtv_control#88
(byte) dtv_control#89
(byte) dtv_control#9
(byte) dtv_control#90
(byte) dtv_control#91
(byte) dtv_control#92
(byte) dtv_control#93
(byte) dtv_control#94
(byte) dtv_control#95
(byte) dtv_control#96
(byte) dtv_control#97
(byte) dtv_control#98
(byte) dtv_control#99
(byte()) keyboard_key_pressed((byte) keyboard_key_pressed::key)
(number~) keyboard_key_pressed::$0
(byte~) keyboard_key_pressed::$1
(byte~) keyboard_key_pressed::$2
(byte~) keyboard_key_pressed::$3
(label) keyboard_key_pressed::@2
(label) keyboard_key_pressed::@return
(byte) keyboard_key_pressed::colidx
(byte) keyboard_key_pressed::colidx#0
(byte) keyboard_key_pressed::colidx#1
(byte) keyboard_key_pressed::key
(byte) keyboard_key_pressed::key#0
(byte) keyboard_key_pressed::key#1
(byte) keyboard_key_pressed::key#10
(byte) keyboard_key_pressed::key#11
(byte) keyboard_key_pressed::key#12
(byte) keyboard_key_pressed::key#13
(byte) keyboard_key_pressed::key#14
(byte) keyboard_key_pressed::key#15
(byte) keyboard_key_pressed::key#16
(byte) keyboard_key_pressed::key#17
(byte) keyboard_key_pressed::key#18
(byte) keyboard_key_pressed::key#19
(byte) keyboard_key_pressed::key#2
(byte) keyboard_key_pressed::key#20
(byte) keyboard_key_pressed::key#3
(byte) keyboard_key_pressed::key#4
(byte) keyboard_key_pressed::key#5
(byte) keyboard_key_pressed::key#6
(byte) keyboard_key_pressed::key#7
(byte) keyboard_key_pressed::key#8
(byte) keyboard_key_pressed::key#9
(byte) keyboard_key_pressed::return
(byte) keyboard_key_pressed::return#0
(byte) keyboard_key_pressed::return#1
(byte) keyboard_key_pressed::return#10
(byte) keyboard_key_pressed::return#11
(byte) keyboard_key_pressed::return#12
(byte) keyboard_key_pressed::return#13
(byte) keyboard_key_pressed::return#14
(byte) keyboard_key_pressed::return#15
(byte) keyboard_key_pressed::return#16
(byte) keyboard_key_pressed::return#17
(byte) keyboard_key_pressed::return#18
(byte) keyboard_key_pressed::return#19
(byte) keyboard_key_pressed::return#2
(byte) keyboard_key_pressed::return#20
(byte) keyboard_key_pressed::return#21
(byte) keyboard_key_pressed::return#22
(byte) keyboard_key_pressed::return#23
(byte) keyboard_key_pressed::return#24
(byte) keyboard_key_pressed::return#25
(byte) keyboard_key_pressed::return#26
(byte) keyboard_key_pressed::return#27
(byte) keyboard_key_pressed::return#28
(byte) keyboard_key_pressed::return#29
(byte) keyboard_key_pressed::return#3
(byte) keyboard_key_pressed::return#30
(byte) keyboard_key_pressed::return#31
(byte) keyboard_key_pressed::return#32
(byte) keyboard_key_pressed::return#33
(byte) keyboard_key_pressed::return#34
(byte) keyboard_key_pressed::return#35
(byte) keyboard_key_pressed::return#36
(byte) keyboard_key_pressed::return#37
(byte) keyboard_key_pressed::return#38
(byte) keyboard_key_pressed::return#39
(byte) keyboard_key_pressed::return#4
(byte) keyboard_key_pressed::return#40
(byte) keyboard_key_pressed::return#41
(byte) keyboard_key_pressed::return#42
(byte) keyboard_key_pressed::return#5
(byte) keyboard_key_pressed::return#6
(byte) keyboard_key_pressed::return#7
(byte) keyboard_key_pressed::return#8
(byte) keyboard_key_pressed::return#9
(byte) keyboard_key_pressed::rowidx
(byte) keyboard_key_pressed::rowidx#0
(byte[8]) keyboard_matrix_col_bitmask
(byte[8]) keyboard_matrix_col_bitmask#0
(byte()) keyboard_matrix_read((byte) keyboard_matrix_read::rowid)
(byte~) keyboard_matrix_read::$0
(label) keyboard_matrix_read::@return
(byte) keyboard_matrix_read::return
(byte) keyboard_matrix_read::return#0
(byte) keyboard_matrix_read::return#1
(byte) keyboard_matrix_read::return#2
(byte) keyboard_matrix_read::return#3
(byte) keyboard_matrix_read::return#4
(byte) keyboard_matrix_read::row_pressed_bits
(byte) keyboard_matrix_read::row_pressed_bits#0
(byte) keyboard_matrix_read::rowid
(byte) keyboard_matrix_read::rowid#0
(byte) keyboard_matrix_read::rowid#1
(byte[8]) keyboard_matrix_row_bitmask
(byte[8]) keyboard_matrix_row_bitmask#0
(void()) main()
(label) main::@1
(label) main::@2
(label) main::@7
(label) main::@return
(void*()) memset((void*) memset::str , (byte) memset::c , (word) memset::num)
(bool~) memset::$0
(bool~) memset::$1
(byte*~) memset::$2
(byte*~) memset::$3
(bool~) memset::$4
(label) memset::@1
(label) memset::@2
(label) memset::@4
(label) memset::@5
(label) memset::@return
(byte) memset::c
(byte) memset::c#0
(byte) memset::c#1
(byte) memset::c#2
(byte) memset::c#3
(byte) memset::c#4
(byte*) memset::dst
(byte*) memset::dst#0
(byte*) memset::dst#1
(byte*) memset::dst#2
(byte*) memset::dst#3
(byte*) memset::end
(byte*) memset::end#0
(byte*) memset::end#1
(byte*) memset::end#2
(word) memset::num
(word) memset::num#0
(word) memset::num#1
(word) memset::num#2
(void*) memset::return
(void*) memset::return#0
(void*) memset::return#1
(void*) memset::return#2
(void*) memset::return#3
(void*) memset::str
(void*) memset::str#0
(void*) memset::str#1
(void*) memset::str#2
(void*) memset::str#3
(void*) memset::str#4
(void*) memset::str#5
(void()) menu()
(dword~) menu::$0
(number~) menu::$1
(number~) menu::$10
(byte~) menu::$11
(number~) menu::$12
(byte~) menu::$13
(number~) menu::$14
(word~) menu::$15
(number~) menu::$16
(number~) menu::$17
(word~) menu::$18
(number~) menu::$19
(byte~) menu::$2
(number~) menu::$20
(number~) menu::$21
(byte~) menu::$22
(bool~) menu::$26
(byte*~) menu::$27
(bool~) menu::$28
(byte~) menu::$29
(number~) menu::$3
(bool~) menu::$30
(bool~) menu::$31
(byte~) menu::$33
(bool~) menu::$34
(bool~) menu::$35
(byte~) menu::$37
(bool~) menu::$38
(bool~) menu::$39
(word~) menu::$4
(byte~) menu::$41
(bool~) menu::$42
(bool~) menu::$43
(byte~) menu::$45
(bool~) menu::$46
(bool~) menu::$47
(byte~) menu::$49
(byte~) menu::$5
(bool~) menu::$50
(bool~) menu::$51
(byte~) menu::$53
(bool~) menu::$54
(bool~) menu::$55
(byte~) menu::$57
(bool~) menu::$58
(bool~) menu::$59
(number~) menu::$6
(byte~) menu::$61
(bool~) menu::$62
(bool~) menu::$63
(byte~) menu::$65
(bool~) menu::$66
(bool~) menu::$67
(byte~) menu::$69
(word~) menu::$7
(bool~) menu::$70
(bool~) menu::$71
(byte~) menu::$73
(bool~) menu::$74
(bool~) menu::$75
(byte~) menu::$8
(word~) menu::$9
(label) menu::@1
(label) menu::@10
(label) menu::@12
(label) menu::@13
(label) menu::@14
(label) menu::@15
(label) menu::@16
(label) menu::@17
(label) menu::@18
(label) menu::@19
(label) menu::@2
(label) menu::@20
(label) menu::@21
(label) menu::@22
(label) menu::@26
(label) menu::@28
(label) menu::@3
(label) menu::@30
(label) menu::@32
(label) menu::@34
(label) menu::@36
(label) menu::@38
(label) menu::@4
(label) menu::@40
(label) menu::@42
(label) menu::@44
(label) menu::@46
(label) menu::@48
(label) menu::@5
(label) menu::@51
(label) menu::@52
(label) menu::@53
(label) menu::@54
(label) menu::@55
(label) menu::@56
(label) menu::@57
(label) menu::@58
(label) menu::@59
(label) menu::@60
(label) menu::@61
(label) menu::@62
(label) menu::@63
(label) menu::@64
(label) menu::@65
(label) menu::@66
(label) menu::@67
(label) menu::@68
(label) menu::@69
(label) menu::@70
(label) menu::@71
(label) menu::@72
(label) menu::@73
(label) menu::@74
(label) menu::@75
(label) menu::@76
(label) menu::@77
(label) menu::@9
(label) menu::@return
(byte*) menu::CHARSET
(byte*) menu::CHARSET#0
(byte*) menu::SCREEN
(byte*) menu::SCREEN#0
(byte*) menu::c
(byte*) menu::c#0
(byte*) menu::c#1
(byte*) menu::c#2
(byte*) menu::c#3
(byte) menu::i
(byte) menu::i#0
(byte) menu::i#1
(byte) menu::i#2
(void()) mode_8bppchunkybmm()
(byte~) mode_8bppchunkybmm::$0
(byte~) mode_8bppchunkybmm::$1
(word~) mode_8bppchunkybmm::$10
(byte~) mode_8bppchunkybmm::$11
(word~) mode_8bppchunkybmm::$12
(byte~) mode_8bppchunkybmm::$13
(word~) mode_8bppchunkybmm::$14
(byte~) mode_8bppchunkybmm::$15
(number~) mode_8bppchunkybmm::$16
(byte~) mode_8bppchunkybmm::$17
(byte~) mode_8bppchunkybmm::$19
(byte~) mode_8bppchunkybmm::$2
(bool~) mode_8bppchunkybmm::$22
(bool~) mode_8bppchunkybmm::$23
(bool~) mode_8bppchunkybmm::$24
(word~) mode_8bppchunkybmm::$26
(byte~) mode_8bppchunkybmm::$27
(bool~) mode_8bppchunkybmm::$28
(bool~) mode_8bppchunkybmm::$29
(byte~) mode_8bppchunkybmm::$3
(byte~) mode_8bppchunkybmm::$4
(byte~) mode_8bppchunkybmm::$5
(byte~) mode_8bppchunkybmm::$6
(byte~) mode_8bppchunkybmm::$7
(number~) mode_8bppchunkybmm::$8
(byte~) mode_8bppchunkybmm::$9
(label) mode_8bppchunkybmm::@1
(label) mode_8bppchunkybmm::@10
(label) mode_8bppchunkybmm::@11
(label) mode_8bppchunkybmm::@12
(label) mode_8bppchunkybmm::@2
(label) mode_8bppchunkybmm::@3
(label) mode_8bppchunkybmm::@4
(label) mode_8bppchunkybmm::@5
(label) mode_8bppchunkybmm::@6
(label) mode_8bppchunkybmm::@7
(label) mode_8bppchunkybmm::@8
(label) mode_8bppchunkybmm::@9
(label) mode_8bppchunkybmm::@return
(dword) mode_8bppchunkybmm::PLANEB
(dword) mode_8bppchunkybmm::PLANEB#0
(byte) mode_8bppchunkybmm::c
(byte) mode_8bppchunkybmm::c#0
(byte*) mode_8bppchunkybmm::gfxb
(byte*) mode_8bppchunkybmm::gfxb#0
(byte*) mode_8bppchunkybmm::gfxb#1
(byte*) mode_8bppchunkybmm::gfxb#2
(byte*) mode_8bppchunkybmm::gfxb#3
(byte*) mode_8bppchunkybmm::gfxb#4
(byte*) mode_8bppchunkybmm::gfxb#5
(byte*) mode_8bppchunkybmm::gfxb#6
(byte) mode_8bppchunkybmm::gfxbCpuBank
(byte) mode_8bppchunkybmm::gfxbCpuBank#0
(byte) mode_8bppchunkybmm::gfxbCpuBank#1
(byte) mode_8bppchunkybmm::gfxbCpuBank#2
(byte) mode_8bppchunkybmm::gfxbCpuBank#3
(byte) mode_8bppchunkybmm::gfxbCpuBank#4
(byte) mode_8bppchunkybmm::gfxbCpuBank#5
(byte) mode_8bppchunkybmm::gfxbCpuBank#6
(byte) mode_8bppchunkybmm::gfxbCpuBank#7
(byte) mode_8bppchunkybmm::gfxbCpuBank#8
(byte) mode_8bppchunkybmm::gfxbCpuBank#9
(byte) mode_8bppchunkybmm::i
(byte) mode_8bppchunkybmm::i#0
(byte) mode_8bppchunkybmm::i#1
(byte) mode_8bppchunkybmm::i#2
(word) mode_8bppchunkybmm::x
(word) mode_8bppchunkybmm::x#0
(word) mode_8bppchunkybmm::x#1
(word) mode_8bppchunkybmm::x#2
(word) mode_8bppchunkybmm::x#3
(word) mode_8bppchunkybmm::x#4
(word) mode_8bppchunkybmm::x#5
(byte) mode_8bppchunkybmm::y
(byte) mode_8bppchunkybmm::y#0
(byte) mode_8bppchunkybmm::y#1
(byte) mode_8bppchunkybmm::y#2
(byte) mode_8bppchunkybmm::y#3
(byte) mode_8bppchunkybmm::y#4
(byte) mode_8bppchunkybmm::y#5
(byte) mode_8bppchunkybmm::y#6
(byte) mode_8bppchunkybmm::y#7
(void()) mode_8bpppixelcell()
(byte~) mode_8bpppixelcell::$0
(byte~) mode_8bpppixelcell::$1
(byte~) mode_8bpppixelcell::$10
(byte~) mode_8bpppixelcell::$11
(bool~) mode_8bpppixelcell::$13
(number~) mode_8bpppixelcell::$14
(number~) mode_8bpppixelcell::$15
(number~) mode_8bpppixelcell::$16
(number~) mode_8bpppixelcell::$17
(bool~) mode_8bpppixelcell::$18
(bool~) mode_8bpppixelcell::$19
(byte~) mode_8bpppixelcell::$2
(number~) mode_8bpppixelcell::$20
(bool~) mode_8bpppixelcell::$21
(bool~) mode_8bpppixelcell::$22
(number~) mode_8bpppixelcell::$23
(bool~) mode_8bpppixelcell::$24
(bool~) mode_8bpppixelcell::$25
(bool~) mode_8bpppixelcell::$26
(byte~) mode_8bpppixelcell::$3
(byte~) mode_8bpppixelcell::$4
(byte~) mode_8bpppixelcell::$5
(number~) mode_8bpppixelcell::$6
(byte~) mode_8bpppixelcell::$7
(byte~) mode_8bpppixelcell::$8
(byte~) mode_8bpppixelcell::$9
(label) mode_8bpppixelcell::@1
(label) mode_8bpppixelcell::@10
(label) mode_8bpppixelcell::@11
(label) mode_8bpppixelcell::@12
(label) mode_8bpppixelcell::@13
(label) mode_8bpppixelcell::@14
(label) mode_8bpppixelcell::@15
(label) mode_8bpppixelcell::@2
(label) mode_8bpppixelcell::@3
(label) mode_8bpppixelcell::@4
(label) mode_8bpppixelcell::@5
(label) mode_8bpppixelcell::@6
(label) mode_8bpppixelcell::@7
(label) mode_8bpppixelcell::@8
(label) mode_8bpppixelcell::@9
(label) mode_8bpppixelcell::@return
(byte*) mode_8bpppixelcell::CHARGEN
(byte*) mode_8bpppixelcell::CHARGEN#0
(byte*) mode_8bpppixelcell::PLANEA
(byte*) mode_8bpppixelcell::PLANEA#0
(byte*) mode_8bpppixelcell::PLANEB
(byte*) mode_8bpppixelcell::PLANEB#0
(byte) mode_8bpppixelcell::ax
(byte) mode_8bpppixelcell::ax#0
(byte) mode_8bpppixelcell::ax#1
(byte) mode_8bpppixelcell::ax#2
(byte) mode_8bpppixelcell::ay
(byte) mode_8bpppixelcell::ay#0
(byte) mode_8bpppixelcell::ay#1
(byte) mode_8bpppixelcell::ay#2
(byte) mode_8bpppixelcell::ay#3
(byte) mode_8bpppixelcell::ay#4
(byte) mode_8bpppixelcell::bits
(byte) mode_8bpppixelcell::bits#0
(byte) mode_8bpppixelcell::bits#1
(byte) mode_8bpppixelcell::bits#2
(byte) mode_8bpppixelcell::bits#3
(byte) mode_8bpppixelcell::bits#4
(byte) mode_8bpppixelcell::c
(byte) mode_8bpppixelcell::c#0
(byte) mode_8bpppixelcell::c#1
(byte) mode_8bpppixelcell::c#2
(byte) mode_8bpppixelcell::ch
(byte) mode_8bpppixelcell::ch#0
(byte) mode_8bpppixelcell::ch#1
(byte) mode_8bpppixelcell::ch#2
(byte) mode_8bpppixelcell::ch#3
(byte) mode_8bpppixelcell::ch#4
(byte) mode_8bpppixelcell::ch#5
(byte) mode_8bpppixelcell::ch#6
(byte) mode_8bpppixelcell::ch#7
(byte) mode_8bpppixelcell::ch#8
(byte*) mode_8bpppixelcell::chargen
(byte*) mode_8bpppixelcell::chargen#0
(byte*) mode_8bpppixelcell::chargen#1
(byte*) mode_8bpppixelcell::chargen#2
(byte*) mode_8bpppixelcell::chargen#3
(byte*) mode_8bpppixelcell::chargen#4
(byte*) mode_8bpppixelcell::chargen#5
(byte*) mode_8bpppixelcell::chargen#6
(byte*) mode_8bpppixelcell::chargen#7
(byte*) mode_8bpppixelcell::chargen#8
(byte) mode_8bpppixelcell::col
(byte) mode_8bpppixelcell::col#0
(byte) mode_8bpppixelcell::col#1
(byte) mode_8bpppixelcell::col#2
(byte) mode_8bpppixelcell::col#3
(byte) mode_8bpppixelcell::col#4
(byte) mode_8bpppixelcell::col#5
(byte) mode_8bpppixelcell::col#6
(byte) mode_8bpppixelcell::col#7
(byte) mode_8bpppixelcell::col#8
(byte) mode_8bpppixelcell::cp
(byte) mode_8bpppixelcell::cp#0
(byte) mode_8bpppixelcell::cp#1
(byte) mode_8bpppixelcell::cp#2
(byte) mode_8bpppixelcell::cp#3
(byte) mode_8bpppixelcell::cp#4
(byte) mode_8bpppixelcell::cr
(byte) mode_8bpppixelcell::cr#0
(byte) mode_8bpppixelcell::cr#1
(byte) mode_8bpppixelcell::cr#2
(byte) mode_8bpppixelcell::cr#3
(byte) mode_8bpppixelcell::cr#4
(byte) mode_8bpppixelcell::cr#5
(byte) mode_8bpppixelcell::cr#6
(byte*) mode_8bpppixelcell::gfxa
(byte*) mode_8bpppixelcell::gfxa#0
(byte*) mode_8bpppixelcell::gfxa#1
(byte*) mode_8bpppixelcell::gfxa#2
(byte*) mode_8bpppixelcell::gfxa#3
(byte*) mode_8bpppixelcell::gfxa#4
(byte*) mode_8bpppixelcell::gfxb
(byte*) mode_8bpppixelcell::gfxb#0
(byte*) mode_8bpppixelcell::gfxb#1
(byte*) mode_8bpppixelcell::gfxb#2
(byte*) mode_8bpppixelcell::gfxb#3
(byte*) mode_8bpppixelcell::gfxb#4
(byte*) mode_8bpppixelcell::gfxb#5
(byte*) mode_8bpppixelcell::gfxb#6
(byte*) mode_8bpppixelcell::gfxb#7
(byte*) mode_8bpppixelcell::gfxb#8
(byte) mode_8bpppixelcell::i
(byte) mode_8bpppixelcell::i#0
(byte) mode_8bpppixelcell::i#1
(byte) mode_8bpppixelcell::i#2
(void()) mode_ctrl()
(bool~) mode_ctrl::$0
(byte~) mode_ctrl::$1
(bool~) mode_ctrl::$10
(byte~) mode_ctrl::$11
(byte~) mode_ctrl::$12
(bool~) mode_ctrl::$13
(bool~) mode_ctrl::$14
(byte~) mode_ctrl::$15
(byte~) mode_ctrl::$16
(bool~) mode_ctrl::$17
(bool~) mode_ctrl::$18
(byte~) mode_ctrl::$19
(bool~) mode_ctrl::$2
(byte~) mode_ctrl::$20
(bool~) mode_ctrl::$21
(bool~) mode_ctrl::$22
(byte~) mode_ctrl::$23
(byte~) mode_ctrl::$24
(bool~) mode_ctrl::$25
(bool~) mode_ctrl::$26
(byte~) mode_ctrl::$27
(byte~) mode_ctrl::$28
(bool~) mode_ctrl::$29
(bool~) mode_ctrl::$3
(bool~) mode_ctrl::$30
(bool~) mode_ctrl::$31
(bool~) mode_ctrl::$32
(byte~) mode_ctrl::$4
(bool~) mode_ctrl::$5
(bool~) mode_ctrl::$6
(byte~) mode_ctrl::$7
(byte~) mode_ctrl::$8
(bool~) mode_ctrl::$9
(label) mode_ctrl::@1
(label) mode_ctrl::@12
(label) mode_ctrl::@13
(label) mode_ctrl::@14
(label) mode_ctrl::@15
(label) mode_ctrl::@16
(label) mode_ctrl::@17
(label) mode_ctrl::@18
(label) mode_ctrl::@19
(label) mode_ctrl::@23
(label) mode_ctrl::@24
(label) mode_ctrl::@25
(label) mode_ctrl::@26
(label) mode_ctrl::@27
(label) mode_ctrl::@28
(label) mode_ctrl::@29
(label) mode_ctrl::@30
(label) mode_ctrl::@32
(label) mode_ctrl::@33
(label) mode_ctrl::@34
(label) mode_ctrl::@35
(label) mode_ctrl::@36
(label) mode_ctrl::@37
(label) mode_ctrl::@38
(label) mode_ctrl::@39
(label) mode_ctrl::@4
(label) mode_ctrl::@6
(label) mode_ctrl::@return
(byte) mode_ctrl::ctrl
(byte) mode_ctrl::ctrl#0
(byte) mode_ctrl::ctrl#1
(byte) mode_ctrl::ctrl#10
(byte) mode_ctrl::ctrl#11
(byte) mode_ctrl::ctrl#12
(byte) mode_ctrl::ctrl#13
(byte) mode_ctrl::ctrl#14
(byte) mode_ctrl::ctrl#15
(byte) mode_ctrl::ctrl#16
(byte) mode_ctrl::ctrl#17
(byte) mode_ctrl::ctrl#18
(byte) mode_ctrl::ctrl#19
(byte) mode_ctrl::ctrl#2
(byte) mode_ctrl::ctrl#20
(byte) mode_ctrl::ctrl#21
(byte) mode_ctrl::ctrl#22
(byte) mode_ctrl::ctrl#23
(byte) mode_ctrl::ctrl#24
(byte) mode_ctrl::ctrl#25
(byte) mode_ctrl::ctrl#26
(byte) mode_ctrl::ctrl#27
(byte) mode_ctrl::ctrl#28
(byte) mode_ctrl::ctrl#3
(byte) mode_ctrl::ctrl#4
(byte) mode_ctrl::ctrl#5
(byte) mode_ctrl::ctrl#6
(byte) mode_ctrl::ctrl#7
(byte) mode_ctrl::ctrl#8
(byte) mode_ctrl::ctrl#9
(void()) mode_ecmchar()
(dword~) mode_ecmchar::$0
(number~) mode_ecmchar::$1
(number~) mode_ecmchar::$10
(byte~) mode_ecmchar::$11
(number~) mode_ecmchar::$12
(byte~) mode_ecmchar::$13
(byte~) mode_ecmchar::$14
(number~) mode_ecmchar::$15
(word~) mode_ecmchar::$16
(number~) mode_ecmchar::$17
(number~) mode_ecmchar::$18
(word~) mode_ecmchar::$19
(byte~) mode_ecmchar::$2
(number~) mode_ecmchar::$20
(number~) mode_ecmchar::$21
(number~) mode_ecmchar::$22
(byte~) mode_ecmchar::$23
(bool~) mode_ecmchar::$25
(byte~) mode_ecmchar::$26
(number~) mode_ecmchar::$27
(number~) mode_ecmchar::$28
(number~) mode_ecmchar::$29
(number~) mode_ecmchar::$3
(number~) mode_ecmchar::$30
(number~) mode_ecmchar::$31
(bool~) mode_ecmchar::$32
(bool~) mode_ecmchar::$33
(word~) mode_ecmchar::$4
(byte~) mode_ecmchar::$5
(number~) mode_ecmchar::$6
(word~) mode_ecmchar::$7
(byte~) mode_ecmchar::$8
(word~) mode_ecmchar::$9
(label) mode_ecmchar::@1
(label) mode_ecmchar::@2
(label) mode_ecmchar::@3
(label) mode_ecmchar::@4
(label) mode_ecmchar::@5
(label) mode_ecmchar::@6
(label) mode_ecmchar::@7
(label) mode_ecmchar::@return
(byte*) mode_ecmchar::CHARSET
(byte*) mode_ecmchar::CHARSET#0
(byte*) mode_ecmchar::COLORS
(byte*) mode_ecmchar::COLORS#0
(byte*) mode_ecmchar::SCREEN
(byte*) mode_ecmchar::SCREEN#0
(byte*) mode_ecmchar::ch
(byte*) mode_ecmchar::ch#0
(byte*) mode_ecmchar::ch#1
(byte*) mode_ecmchar::ch#2
(byte*) mode_ecmchar::ch#3
(byte*) mode_ecmchar::ch#4
(byte*) mode_ecmchar::col
(byte*) mode_ecmchar::col#0
(byte*) mode_ecmchar::col#1
(byte*) mode_ecmchar::col#2
(byte*) mode_ecmchar::col#3
(byte*) mode_ecmchar::col#4
(byte) mode_ecmchar::cx
(byte) mode_ecmchar::cx#0
(byte) mode_ecmchar::cx#1
(byte) mode_ecmchar::cx#2
(byte) mode_ecmchar::cy
(byte) mode_ecmchar::cy#0
(byte) mode_ecmchar::cy#1
(byte) mode_ecmchar::cy#2
(byte) mode_ecmchar::cy#3
(byte) mode_ecmchar::cy#4
(byte) mode_ecmchar::i
(byte) mode_ecmchar::i#0
(byte) mode_ecmchar::i#1
(byte) mode_ecmchar::i#2
(void()) mode_hicolecmchar()
(dword~) mode_hicolecmchar::$0
(number~) mode_hicolecmchar::$1
(number~) mode_hicolecmchar::$10
(byte~) mode_hicolecmchar::$11
(number~) mode_hicolecmchar::$12
(byte~) mode_hicolecmchar::$13
(byte~) mode_hicolecmchar::$14
(number~) mode_hicolecmchar::$15
(word~) mode_hicolecmchar::$16
(number~) mode_hicolecmchar::$17
(number~) mode_hicolecmchar::$18
(word~) mode_hicolecmchar::$19
(byte~) mode_hicolecmchar::$2
(number~) mode_hicolecmchar::$20
(number~) mode_hicolecmchar::$21
(number~) mode_hicolecmchar::$22
(byte~) mode_hicolecmchar::$23
(bool~) mode_hicolecmchar::$25
(number~) mode_hicolecmchar::$26
(number~) mode_hicolecmchar::$27
(number~) mode_hicolecmchar::$28
(number~) mode_hicolecmchar::$29
(byte*~) mode_hicolecmchar::$3
(bool~) mode_hicolecmchar::$30
(bool~) mode_hicolecmchar::$31
(word~) mode_hicolecmchar::$4
(byte~) mode_hicolecmchar::$5
(byte*~) mode_hicolecmchar::$6
(word~) mode_hicolecmchar::$7
(byte~) mode_hicolecmchar::$8
(word~) mode_hicolecmchar::$9
(label) mode_hicolecmchar::@1
(label) mode_hicolecmchar::@2
(label) mode_hicolecmchar::@3
(label) mode_hicolecmchar::@4
(label) mode_hicolecmchar::@5
(label) mode_hicolecmchar::@6
(label) mode_hicolecmchar::@7
(label) mode_hicolecmchar::@return
(byte*) mode_hicolecmchar::CHARSET
(byte*) mode_hicolecmchar::CHARSET#0
(byte*) mode_hicolecmchar::COLORS
(byte*) mode_hicolecmchar::COLORS#0
(byte*) mode_hicolecmchar::SCREEN
(byte*) mode_hicolecmchar::SCREEN#0
(byte*) mode_hicolecmchar::ch
(byte*) mode_hicolecmchar::ch#0
(byte*) mode_hicolecmchar::ch#1
(byte*) mode_hicolecmchar::ch#2
(byte*) mode_hicolecmchar::ch#3
(byte*) mode_hicolecmchar::ch#4
(byte*) mode_hicolecmchar::col
(byte*) mode_hicolecmchar::col#0
(byte*) mode_hicolecmchar::col#1
(byte*) mode_hicolecmchar::col#2
(byte*) mode_hicolecmchar::col#3
(byte*) mode_hicolecmchar::col#4
(byte) mode_hicolecmchar::cx
(byte) mode_hicolecmchar::cx#0
(byte) mode_hicolecmchar::cx#1
(byte) mode_hicolecmchar::cx#2
(byte) mode_hicolecmchar::cy
(byte) mode_hicolecmchar::cy#0
(byte) mode_hicolecmchar::cy#1
(byte) mode_hicolecmchar::cy#2
(byte) mode_hicolecmchar::cy#3
(byte) mode_hicolecmchar::cy#4
(byte) mode_hicolecmchar::i
(byte) mode_hicolecmchar::i#0
(byte) mode_hicolecmchar::i#1
(byte) mode_hicolecmchar::i#2
(byte) mode_hicolecmchar::v
(byte) mode_hicolecmchar::v#0
(void()) mode_hicolmcchar()
(dword~) mode_hicolmcchar::$0
(number~) mode_hicolmcchar::$1
(number~) mode_hicolmcchar::$10
(byte~) mode_hicolmcchar::$11
(number~) mode_hicolmcchar::$12
(byte~) mode_hicolmcchar::$13
(number~) mode_hicolmcchar::$14
(byte~) mode_hicolmcchar::$15
(word~) mode_hicolmcchar::$16
(number~) mode_hicolmcchar::$17
(number~) mode_hicolmcchar::$18
(word~) mode_hicolmcchar::$19
(byte~) mode_hicolmcchar::$2
(number~) mode_hicolmcchar::$20
(number~) mode_hicolmcchar::$21
(number~) mode_hicolmcchar::$22
(byte~) mode_hicolmcchar::$23
(bool~) mode_hicolmcchar::$25
(number~) mode_hicolmcchar::$26
(number~) mode_hicolmcchar::$27
(number~) mode_hicolmcchar::$28
(number~) mode_hicolmcchar::$29
(byte*~) mode_hicolmcchar::$3
(bool~) mode_hicolmcchar::$30
(bool~) mode_hicolmcchar::$31
(word~) mode_hicolmcchar::$4
(byte~) mode_hicolmcchar::$5
(byte*~) mode_hicolmcchar::$6
(word~) mode_hicolmcchar::$7
(byte~) mode_hicolmcchar::$8
(word~) mode_hicolmcchar::$9
(label) mode_hicolmcchar::@1
(label) mode_hicolmcchar::@2
(label) mode_hicolmcchar::@3
(label) mode_hicolmcchar::@4
(label) mode_hicolmcchar::@5
(label) mode_hicolmcchar::@6
(label) mode_hicolmcchar::@7
(label) mode_hicolmcchar::@return
(byte*) mode_hicolmcchar::CHARSET
(byte*) mode_hicolmcchar::CHARSET#0
(byte*) mode_hicolmcchar::COLORS
(byte*) mode_hicolmcchar::COLORS#0
(byte*) mode_hicolmcchar::SCREEN
(byte*) mode_hicolmcchar::SCREEN#0
(byte*) mode_hicolmcchar::ch
(byte*) mode_hicolmcchar::ch#0
(byte*) mode_hicolmcchar::ch#1
(byte*) mode_hicolmcchar::ch#2
(byte*) mode_hicolmcchar::ch#3
(byte*) mode_hicolmcchar::ch#4
(byte*) mode_hicolmcchar::col
(byte*) mode_hicolmcchar::col#0
(byte*) mode_hicolmcchar::col#1
(byte*) mode_hicolmcchar::col#2
(byte*) mode_hicolmcchar::col#3
(byte*) mode_hicolmcchar::col#4
(byte) mode_hicolmcchar::cx
(byte) mode_hicolmcchar::cx#0
(byte) mode_hicolmcchar::cx#1
(byte) mode_hicolmcchar::cx#2
(byte) mode_hicolmcchar::cy
(byte) mode_hicolmcchar::cy#0
(byte) mode_hicolmcchar::cy#1
(byte) mode_hicolmcchar::cy#2
(byte) mode_hicolmcchar::cy#3
(byte) mode_hicolmcchar::cy#4
(byte) mode_hicolmcchar::i
(byte) mode_hicolmcchar::i#0
(byte) mode_hicolmcchar::i#1
(byte) mode_hicolmcchar::i#2
(byte) mode_hicolmcchar::v
(byte) mode_hicolmcchar::v#0
(void()) mode_hicolstdchar()
(dword~) mode_hicolstdchar::$0
(number~) mode_hicolstdchar::$1
(number~) mode_hicolstdchar::$10
(byte~) mode_hicolstdchar::$11
(number~) mode_hicolstdchar::$12
(byte~) mode_hicolstdchar::$13
(number~) mode_hicolstdchar::$14
(word~) mode_hicolstdchar::$15
(number~) mode_hicolstdchar::$16
(number~) mode_hicolstdchar::$17
(word~) mode_hicolstdchar::$18
(number~) mode_hicolstdchar::$19
(byte~) mode_hicolstdchar::$2
(number~) mode_hicolstdchar::$20
(number~) mode_hicolstdchar::$21
(byte~) mode_hicolstdchar::$22
(bool~) mode_hicolstdchar::$24
(number~) mode_hicolstdchar::$25
(number~) mode_hicolstdchar::$26
(number~) mode_hicolstdchar::$27
(number~) mode_hicolstdchar::$28
(bool~) mode_hicolstdchar::$29
(byte*~) mode_hicolstdchar::$3
(bool~) mode_hicolstdchar::$30
(word~) mode_hicolstdchar::$4
(byte~) mode_hicolstdchar::$5
(byte*~) mode_hicolstdchar::$6
(word~) mode_hicolstdchar::$7
(byte~) mode_hicolstdchar::$8
(word~) mode_hicolstdchar::$9
(label) mode_hicolstdchar::@1
(label) mode_hicolstdchar::@2
(label) mode_hicolstdchar::@3
(label) mode_hicolstdchar::@4
(label) mode_hicolstdchar::@5
(label) mode_hicolstdchar::@6
(label) mode_hicolstdchar::@7
(label) mode_hicolstdchar::@return
(byte*) mode_hicolstdchar::CHARSET
(byte*) mode_hicolstdchar::CHARSET#0
(byte*) mode_hicolstdchar::COLORS
(byte*) mode_hicolstdchar::COLORS#0
(byte*) mode_hicolstdchar::SCREEN
(byte*) mode_hicolstdchar::SCREEN#0
(byte*) mode_hicolstdchar::ch
(byte*) mode_hicolstdchar::ch#0
(byte*) mode_hicolstdchar::ch#1
(byte*) mode_hicolstdchar::ch#2
(byte*) mode_hicolstdchar::ch#3
(byte*) mode_hicolstdchar::ch#4
(byte*) mode_hicolstdchar::col
(byte*) mode_hicolstdchar::col#0
(byte*) mode_hicolstdchar::col#1
(byte*) mode_hicolstdchar::col#2
(byte*) mode_hicolstdchar::col#3
(byte*) mode_hicolstdchar::col#4
(byte) mode_hicolstdchar::cx
(byte) mode_hicolstdchar::cx#0
(byte) mode_hicolstdchar::cx#1
(byte) mode_hicolstdchar::cx#2
(byte) mode_hicolstdchar::cy
(byte) mode_hicolstdchar::cy#0
(byte) mode_hicolstdchar::cy#1
(byte) mode_hicolstdchar::cy#2
(byte) mode_hicolstdchar::cy#3
(byte) mode_hicolstdchar::cy#4
(byte) mode_hicolstdchar::i
(byte) mode_hicolstdchar::i#0
(byte) mode_hicolstdchar::i#1
(byte) mode_hicolstdchar::i#2
(byte) mode_hicolstdchar::v
(byte) mode_hicolstdchar::v#0
(void()) mode_mcchar()
(dword~) mode_mcchar::$0
(number~) mode_mcchar::$1
(number~) mode_mcchar::$10
(byte~) mode_mcchar::$11
(number~) mode_mcchar::$12
(byte~) mode_mcchar::$13
(number~) mode_mcchar::$14
(byte~) mode_mcchar::$15
(word~) mode_mcchar::$16
(number~) mode_mcchar::$17
(number~) mode_mcchar::$18
(word~) mode_mcchar::$19
(byte~) mode_mcchar::$2
(number~) mode_mcchar::$20
(number~) mode_mcchar::$21
(number~) mode_mcchar::$22
(byte~) mode_mcchar::$23
(bool~) mode_mcchar::$25
(byte~) mode_mcchar::$26
(number~) mode_mcchar::$27
(number~) mode_mcchar::$28
(number~) mode_mcchar::$29
(number~) mode_mcchar::$3
(number~) mode_mcchar::$30
(number~) mode_mcchar::$31
(bool~) mode_mcchar::$32
(bool~) mode_mcchar::$33
(word~) mode_mcchar::$4
(byte~) mode_mcchar::$5
(number~) mode_mcchar::$6
(word~) mode_mcchar::$7
(byte~) mode_mcchar::$8
(word~) mode_mcchar::$9
(label) mode_mcchar::@1
(label) mode_mcchar::@2
(label) mode_mcchar::@3
(label) mode_mcchar::@4
(label) mode_mcchar::@5
(label) mode_mcchar::@6
(label) mode_mcchar::@7
(label) mode_mcchar::@return
(byte*) mode_mcchar::CHARSET
(byte*) mode_mcchar::CHARSET#0
(byte*) mode_mcchar::COLORS
(byte*) mode_mcchar::COLORS#0
(byte*) mode_mcchar::SCREEN
(byte*) mode_mcchar::SCREEN#0
(byte*) mode_mcchar::ch
(byte*) mode_mcchar::ch#0
(byte*) mode_mcchar::ch#1
(byte*) mode_mcchar::ch#2
(byte*) mode_mcchar::ch#3
(byte*) mode_mcchar::ch#4
(byte*) mode_mcchar::col
(byte*) mode_mcchar::col#0
(byte*) mode_mcchar::col#1
(byte*) mode_mcchar::col#2
(byte*) mode_mcchar::col#3
(byte*) mode_mcchar::col#4
(byte) mode_mcchar::cx
(byte) mode_mcchar::cx#0
(byte) mode_mcchar::cx#1
(byte) mode_mcchar::cx#2
(byte) mode_mcchar::cy
(byte) mode_mcchar::cy#0
(byte) mode_mcchar::cy#1
(byte) mode_mcchar::cy#2
(byte) mode_mcchar::cy#3
(byte) mode_mcchar::cy#4
(byte) mode_mcchar::i
(byte) mode_mcchar::i#0
(byte) mode_mcchar::i#1
(byte) mode_mcchar::i#2
(void()) mode_sixsfred()
(byte~) mode_sixsfred::$0
(byte~) mode_sixsfred::$1
(byte~) mode_sixsfred::$10
(byte*~) mode_sixsfred::$11
(byte~) mode_sixsfred::$12
(byte*~) mode_sixsfred::$13
(byte~) mode_sixsfred::$14
(bool~) mode_sixsfred::$16
(byte~) mode_sixsfred::$17
(number~) mode_sixsfred::$18
(bool~) mode_sixsfred::$19
(byte~) mode_sixsfred::$2
(bool~) mode_sixsfred::$20
(number~) mode_sixsfred::$21
(number~) mode_sixsfred::$22
(bool~) mode_sixsfred::$23
(bool~) mode_sixsfred::$24
(bool~) mode_sixsfred::$25
(bool~) mode_sixsfred::$26
(byte~) mode_sixsfred::$3
(byte~) mode_sixsfred::$4
(number~) mode_sixsfred::$5
(byte~) mode_sixsfred::$6
(byte~) mode_sixsfred::$7
(byte~) mode_sixsfred::$8
(byte~) mode_sixsfred::$9
(label) mode_sixsfred::@1
(label) mode_sixsfred::@10
(label) mode_sixsfred::@11
(label) mode_sixsfred::@12
(label) mode_sixsfred::@13
(label) mode_sixsfred::@14
(label) mode_sixsfred::@15
(label) mode_sixsfred::@2
(label) mode_sixsfred::@3
(label) mode_sixsfred::@4
(label) mode_sixsfred::@5
(label) mode_sixsfred::@6
(label) mode_sixsfred::@7
(label) mode_sixsfred::@8
(label) mode_sixsfred::@9
(label) mode_sixsfred::@return
(byte*) mode_sixsfred::COLORS
(byte*) mode_sixsfred::COLORS#0
(byte*) mode_sixsfred::PLANEA
(byte*) mode_sixsfred::PLANEA#0
(byte*) mode_sixsfred::PLANEB
(byte*) mode_sixsfred::PLANEB#0
(byte) mode_sixsfred::ax
(byte) mode_sixsfred::ax#0
(byte) mode_sixsfred::ax#1
(byte) mode_sixsfred::ax#2
(byte) mode_sixsfred::ay
(byte) mode_sixsfred::ay#0
(byte) mode_sixsfred::ay#1
(byte) mode_sixsfred::ay#2
(byte) mode_sixsfred::ay#3
(byte) mode_sixsfred::ay#4
(byte) mode_sixsfred::bx
(byte) mode_sixsfred::bx#0
(byte) mode_sixsfred::bx#1
(byte) mode_sixsfred::bx#2
(byte) mode_sixsfred::by
(byte) mode_sixsfred::by#0
(byte) mode_sixsfred::by#1
(byte) mode_sixsfred::by#2
(byte) mode_sixsfred::by#3
(byte) mode_sixsfred::by#4
(byte*) mode_sixsfred::col
(byte*) mode_sixsfred::col#0
(byte*) mode_sixsfred::col#1
(byte*) mode_sixsfred::col#2
(byte*) mode_sixsfred::col#3
(byte*) mode_sixsfred::col#4
(byte) mode_sixsfred::cx
(byte) mode_sixsfred::cx#0
(byte) mode_sixsfred::cx#1
(byte) mode_sixsfred::cx#2
(byte) mode_sixsfred::cy
(byte) mode_sixsfred::cy#0
(byte) mode_sixsfred::cy#1
(byte) mode_sixsfred::cy#2
(byte) mode_sixsfred::cy#3
(byte) mode_sixsfred::cy#4
(byte*) mode_sixsfred::gfxa
(byte*) mode_sixsfred::gfxa#0
(byte*) mode_sixsfred::gfxa#1
(byte*) mode_sixsfred::gfxa#2
(byte*) mode_sixsfred::gfxa#3
(byte*) mode_sixsfred::gfxa#4
(byte*) mode_sixsfred::gfxb
(byte*) mode_sixsfred::gfxb#0
(byte*) mode_sixsfred::gfxb#1
(byte*) mode_sixsfred::gfxb#2
(byte*) mode_sixsfred::gfxb#3
(byte*) mode_sixsfred::gfxb#4
(byte) mode_sixsfred::i
(byte) mode_sixsfred::i#0
(byte) mode_sixsfred::i#1
(byte) mode_sixsfred::i#2
(byte) mode_sixsfred::row
(byte) mode_sixsfred::row#0
(byte[]) mode_sixsfred::row_bitmask
(byte[]) mode_sixsfred::row_bitmask#0
(void()) mode_sixsfred2()
(byte~) mode_sixsfred2::$0
(byte~) mode_sixsfred2::$1
(byte~) mode_sixsfred2::$10
(byte*~) mode_sixsfred2::$11
(byte~) mode_sixsfred2::$12
(bool~) mode_sixsfred2::$14
(number~) mode_sixsfred2::$15
(number~) mode_sixsfred2::$16
(number~) mode_sixsfred2::$17
(number~) mode_sixsfred2::$18
(bool~) mode_sixsfred2::$19
(byte~) mode_sixsfred2::$2
(bool~) mode_sixsfred2::$20
(number~) mode_sixsfred2::$21
(number~) mode_sixsfred2::$22
(bool~) mode_sixsfred2::$23
(bool~) mode_sixsfred2::$24
(bool~) mode_sixsfred2::$25
(bool~) mode_sixsfred2::$26
(number~) mode_sixsfred2::$3
(byte~) mode_sixsfred2::$4
(byte~) mode_sixsfred2::$5
(byte~) mode_sixsfred2::$6
(byte~) mode_sixsfred2::$7
(byte~) mode_sixsfred2::$8
(byte*~) mode_sixsfred2::$9
(label) mode_sixsfred2::@1
(label) mode_sixsfred2::@10
(label) mode_sixsfred2::@11
(label) mode_sixsfred2::@12
(label) mode_sixsfred2::@13
(label) mode_sixsfred2::@14
(label) mode_sixsfred2::@15
(label) mode_sixsfred2::@2
(label) mode_sixsfred2::@3
(label) mode_sixsfred2::@4
(label) mode_sixsfred2::@5
(label) mode_sixsfred2::@6
(label) mode_sixsfred2::@7
(label) mode_sixsfred2::@8
(label) mode_sixsfred2::@9
(label) mode_sixsfred2::@return
(byte*) mode_sixsfred2::COLORS
(byte*) mode_sixsfred2::COLORS#0
(byte*) mode_sixsfred2::PLANEA
(byte*) mode_sixsfred2::PLANEA#0
(byte*) mode_sixsfred2::PLANEB
(byte*) mode_sixsfred2::PLANEB#0
(byte) mode_sixsfred2::ax
(byte) mode_sixsfred2::ax#0
(byte) mode_sixsfred2::ax#1
(byte) mode_sixsfred2::ax#2
(byte) mode_sixsfred2::ay
(byte) mode_sixsfred2::ay#0
(byte) mode_sixsfred2::ay#1
(byte) mode_sixsfred2::ay#2
(byte) mode_sixsfred2::ay#3
(byte) mode_sixsfred2::ay#4
(byte) mode_sixsfred2::bx
(byte) mode_sixsfred2::bx#0
(byte) mode_sixsfred2::bx#1
(byte) mode_sixsfred2::bx#2
(byte) mode_sixsfred2::by
(byte) mode_sixsfred2::by#0
(byte) mode_sixsfred2::by#1
(byte) mode_sixsfred2::by#2
(byte) mode_sixsfred2::by#3
(byte) mode_sixsfred2::by#4
(byte*) mode_sixsfred2::col
(byte*) mode_sixsfred2::col#0
(byte*) mode_sixsfred2::col#1
(byte*) mode_sixsfred2::col#2
(byte*) mode_sixsfred2::col#3
(byte*) mode_sixsfred2::col#4
(byte) mode_sixsfred2::cx
(byte) mode_sixsfred2::cx#0
(byte) mode_sixsfred2::cx#1
(byte) mode_sixsfred2::cx#2
(byte) mode_sixsfred2::cy
(byte) mode_sixsfred2::cy#0
(byte) mode_sixsfred2::cy#1
(byte) mode_sixsfred2::cy#2
(byte) mode_sixsfred2::cy#3
(byte) mode_sixsfred2::cy#4
(byte*) mode_sixsfred2::gfxa
(byte*) mode_sixsfred2::gfxa#0
(byte*) mode_sixsfred2::gfxa#1
(byte*) mode_sixsfred2::gfxa#2
(byte*) mode_sixsfred2::gfxa#3
(byte*) mode_sixsfred2::gfxa#4
(byte*) mode_sixsfred2::gfxb
(byte*) mode_sixsfred2::gfxb#0
(byte*) mode_sixsfred2::gfxb#1
(byte*) mode_sixsfred2::gfxb#2
(byte*) mode_sixsfred2::gfxb#3
(byte*) mode_sixsfred2::gfxb#4
(byte) mode_sixsfred2::i
(byte) mode_sixsfred2::i#0
(byte) mode_sixsfred2::i#1
(byte) mode_sixsfred2::i#2
(byte) mode_sixsfred2::row
(byte) mode_sixsfred2::row#0
(byte[]) mode_sixsfred2::row_bitmask
(byte[]) mode_sixsfred2::row_bitmask#0
(void()) mode_stdbitmap()
(dword~) mode_stdbitmap::$0
(number~) mode_stdbitmap::$1
(word~) mode_stdbitmap::$10
(number~) mode_stdbitmap::$11
(number~) mode_stdbitmap::$12
(word~) mode_stdbitmap::$13
(number~) mode_stdbitmap::$14
(number~) mode_stdbitmap::$15
(number~) mode_stdbitmap::$16
(byte~) mode_stdbitmap::$17
(byte~) mode_stdbitmap::$2
(bool~) mode_stdbitmap::$21
(byte~) mode_stdbitmap::$22
(number~) mode_stdbitmap::$23
(number~) mode_stdbitmap::$24
(number~) mode_stdbitmap::$25
(number~) mode_stdbitmap::$26
(bool~) mode_stdbitmap::$27
(bool~) mode_stdbitmap::$28
(bool~) mode_stdbitmap::$29
(word~) mode_stdbitmap::$3
(number~) mode_stdbitmap::$30
(number~) mode_stdbitmap::$31
(number~) mode_stdbitmap::$4
(byte~) mode_stdbitmap::$5
(number~) mode_stdbitmap::$6
(byte~) mode_stdbitmap::$7
(byte~) mode_stdbitmap::$8
(number~) mode_stdbitmap::$9
(label) mode_stdbitmap::@1
(label) mode_stdbitmap::@13
(label) mode_stdbitmap::@14
(label) mode_stdbitmap::@15
(label) mode_stdbitmap::@16
(label) mode_stdbitmap::@2
(label) mode_stdbitmap::@3
(label) mode_stdbitmap::@4
(label) mode_stdbitmap::@5
(label) mode_stdbitmap::@6
(label) mode_stdbitmap::@7
(label) mode_stdbitmap::@8
(label) mode_stdbitmap::@9
(label) mode_stdbitmap::@return
(byte*) mode_stdbitmap::BITMAP
(byte*) mode_stdbitmap::BITMAP#0
(byte*) mode_stdbitmap::SCREEN
(byte*) mode_stdbitmap::SCREEN#0
(byte*) mode_stdbitmap::ch
(byte*) mode_stdbitmap::ch#0
(byte*) mode_stdbitmap::ch#1
(byte*) mode_stdbitmap::ch#2
(byte*) mode_stdbitmap::ch#3
(byte*) mode_stdbitmap::ch#4
(byte) mode_stdbitmap::col
(byte) mode_stdbitmap::col#0
(byte) mode_stdbitmap::col2
(byte) mode_stdbitmap::col2#0
(byte) mode_stdbitmap::cx
(byte) mode_stdbitmap::cx#0
(byte) mode_stdbitmap::cx#1
(byte) mode_stdbitmap::cx#2
(byte) mode_stdbitmap::cy
(byte) mode_stdbitmap::cy#0
(byte) mode_stdbitmap::cy#1
(byte) mode_stdbitmap::cy#2
(byte) mode_stdbitmap::cy#3
(byte) mode_stdbitmap::cy#4
(byte) mode_stdbitmap::i
(byte) mode_stdbitmap::i#0
(byte) mode_stdbitmap::i#1
(byte) mode_stdbitmap::i#2
(byte) mode_stdbitmap::l
(byte) mode_stdbitmap::l#0
(byte) mode_stdbitmap::l#1
(byte) mode_stdbitmap::l#2
(byte) mode_stdbitmap::l#3
(byte) mode_stdbitmap::l#4
(byte) mode_stdbitmap::lines_cnt
(byte) mode_stdbitmap::lines_cnt#0
(byte[]) mode_stdbitmap::lines_x
(byte[]) mode_stdbitmap::lines_x#0
(byte[]) mode_stdbitmap::lines_y
(byte[]) mode_stdbitmap::lines_y#0
(void()) mode_stdchar()
(dword~) mode_stdchar::$0
(number~) mode_stdchar::$1
(number~) mode_stdchar::$10
(byte~) mode_stdchar::$11
(number~) mode_stdchar::$12
(byte~) mode_stdchar::$13
(number~) mode_stdchar::$14
(word~) mode_stdchar::$15
(number~) mode_stdchar::$16
(number~) mode_stdchar::$17
(word~) mode_stdchar::$18
(number~) mode_stdchar::$19
(byte~) mode_stdchar::$2
(number~) mode_stdchar::$20
(number~) mode_stdchar::$21
(byte~) mode_stdchar::$22
(bool~) mode_stdchar::$24
(byte~) mode_stdchar::$25
(number~) mode_stdchar::$26
(number~) mode_stdchar::$27
(number~) mode_stdchar::$28
(number~) mode_stdchar::$29
(number~) mode_stdchar::$3
(number~) mode_stdchar::$30
(bool~) mode_stdchar::$31
(bool~) mode_stdchar::$32
(word~) mode_stdchar::$4
(byte~) mode_stdchar::$5
(number~) mode_stdchar::$6
(word~) mode_stdchar::$7
(byte~) mode_stdchar::$8
(word~) mode_stdchar::$9
(label) mode_stdchar::@1
(label) mode_stdchar::@2
(label) mode_stdchar::@3
(label) mode_stdchar::@4
(label) mode_stdchar::@5
(label) mode_stdchar::@6
(label) mode_stdchar::@7
(label) mode_stdchar::@return
(byte*) mode_stdchar::CHARSET
(byte*) mode_stdchar::CHARSET#0
(byte*) mode_stdchar::COLORS
(byte*) mode_stdchar::COLORS#0
(byte*) mode_stdchar::SCREEN
(byte*) mode_stdchar::SCREEN#0
(byte*) mode_stdchar::ch
(byte*) mode_stdchar::ch#0
(byte*) mode_stdchar::ch#1
(byte*) mode_stdchar::ch#2
(byte*) mode_stdchar::ch#3
(byte*) mode_stdchar::ch#4
(byte*) mode_stdchar::col
(byte*) mode_stdchar::col#0
(byte*) mode_stdchar::col#1
(byte*) mode_stdchar::col#2
(byte*) mode_stdchar::col#3
(byte*) mode_stdchar::col#4
(byte) mode_stdchar::cx
(byte) mode_stdchar::cx#0
(byte) mode_stdchar::cx#1
(byte) mode_stdchar::cx#2
(byte) mode_stdchar::cy
(byte) mode_stdchar::cy#0
(byte) mode_stdchar::cy#1
(byte) mode_stdchar::cy#2
(byte) mode_stdchar::cy#3
(byte) mode_stdchar::cy#4
(byte) mode_stdchar::i
(byte) mode_stdchar::i#0
(byte) mode_stdchar::i#1
(byte) mode_stdchar::i#2
(void()) mode_twoplanebitmap()
(byte~) mode_twoplanebitmap::$0
(byte~) mode_twoplanebitmap::$1
(byte*~) mode_twoplanebitmap::$10
(byte~) mode_twoplanebitmap::$11
(byte*~) mode_twoplanebitmap::$12
(byte~) mode_twoplanebitmap::$13
(bool~) mode_twoplanebitmap::$15
(number~) mode_twoplanebitmap::$16
(number~) mode_twoplanebitmap::$17
(number~) mode_twoplanebitmap::$18
(number~) mode_twoplanebitmap::$19
(byte~) mode_twoplanebitmap::$2
(bool~) mode_twoplanebitmap::$20
(bool~) mode_twoplanebitmap::$21
(number~) mode_twoplanebitmap::$22
(bool~) mode_twoplanebitmap::$23
(bool~) mode_twoplanebitmap::$24
(bool~) mode_twoplanebitmap::$25
(bool~) mode_twoplanebitmap::$26
(bool~) mode_twoplanebitmap::$27
(byte~) mode_twoplanebitmap::$3
(byte~) mode_twoplanebitmap::$4
(number~) mode_twoplanebitmap::$5
(byte~) mode_twoplanebitmap::$6
(byte~) mode_twoplanebitmap::$7
(byte~) mode_twoplanebitmap::$8
(byte~) mode_twoplanebitmap::$9
(label) mode_twoplanebitmap::@1
(label) mode_twoplanebitmap::@10
(label) mode_twoplanebitmap::@11
(label) mode_twoplanebitmap::@13
(label) mode_twoplanebitmap::@14
(label) mode_twoplanebitmap::@15
(label) mode_twoplanebitmap::@16
(label) mode_twoplanebitmap::@17
(label) mode_twoplanebitmap::@18
(label) mode_twoplanebitmap::@19
(label) mode_twoplanebitmap::@2
(label) mode_twoplanebitmap::@3
(label) mode_twoplanebitmap::@4
(label) mode_twoplanebitmap::@5
(label) mode_twoplanebitmap::@6
(label) mode_twoplanebitmap::@7
(label) mode_twoplanebitmap::@8
(label) mode_twoplanebitmap::@9
(label) mode_twoplanebitmap::@return
(byte*) mode_twoplanebitmap::COLORS
(byte*) mode_twoplanebitmap::COLORS#0
(byte*) mode_twoplanebitmap::PLANEA
(byte*) mode_twoplanebitmap::PLANEA#0
(byte*) mode_twoplanebitmap::PLANEB
(byte*) mode_twoplanebitmap::PLANEB#0
(byte) mode_twoplanebitmap::ax
(byte) mode_twoplanebitmap::ax#0
(byte) mode_twoplanebitmap::ax#1
(byte) mode_twoplanebitmap::ax#2
(byte) mode_twoplanebitmap::ax#3
(byte) mode_twoplanebitmap::ax#4
(byte) mode_twoplanebitmap::ax#5
(byte) mode_twoplanebitmap::ay
(byte) mode_twoplanebitmap::ay#0
(byte) mode_twoplanebitmap::ay#1
(byte) mode_twoplanebitmap::ay#2
(byte) mode_twoplanebitmap::ay#3
(byte) mode_twoplanebitmap::ay#4
(byte) mode_twoplanebitmap::ay#5
(byte) mode_twoplanebitmap::ay#6
(byte) mode_twoplanebitmap::ay#7
(byte) mode_twoplanebitmap::bx
(byte) mode_twoplanebitmap::bx#0
(byte) mode_twoplanebitmap::bx#1
(byte) mode_twoplanebitmap::bx#2
(byte) mode_twoplanebitmap::by
(byte) mode_twoplanebitmap::by#0
(byte) mode_twoplanebitmap::by#1
(byte) mode_twoplanebitmap::by#2
(byte) mode_twoplanebitmap::by#3
(byte) mode_twoplanebitmap::by#4
(byte*) mode_twoplanebitmap::col
(byte*) mode_twoplanebitmap::col#0
(byte*) mode_twoplanebitmap::col#1
(byte*) mode_twoplanebitmap::col#2
(byte*) mode_twoplanebitmap::col#3
(byte*) mode_twoplanebitmap::col#4
(byte) mode_twoplanebitmap::cx
(byte) mode_twoplanebitmap::cx#0
(byte) mode_twoplanebitmap::cx#1
(byte) mode_twoplanebitmap::cx#2
(byte) mode_twoplanebitmap::cy
(byte) mode_twoplanebitmap::cy#0
(byte) mode_twoplanebitmap::cy#1
(byte) mode_twoplanebitmap::cy#2
(byte) mode_twoplanebitmap::cy#3
(byte) mode_twoplanebitmap::cy#4
(byte*) mode_twoplanebitmap::gfxa
(byte*) mode_twoplanebitmap::gfxa#0
(byte*) mode_twoplanebitmap::gfxa#1
(byte*) mode_twoplanebitmap::gfxa#2
(byte*) mode_twoplanebitmap::gfxa#3
(byte*) mode_twoplanebitmap::gfxa#4
(byte*) mode_twoplanebitmap::gfxa#5
(byte*) mode_twoplanebitmap::gfxa#6
(byte*) mode_twoplanebitmap::gfxa#7
(byte*) mode_twoplanebitmap::gfxa#8
(byte*) mode_twoplanebitmap::gfxb
(byte*) mode_twoplanebitmap::gfxb#0
(byte*) mode_twoplanebitmap::gfxb#1
(byte*) mode_twoplanebitmap::gfxb#2
(byte*) mode_twoplanebitmap::gfxb#3
(byte*) mode_twoplanebitmap::gfxb#4
(byte) mode_twoplanebitmap::i
(byte) mode_twoplanebitmap::i#0
(byte) mode_twoplanebitmap::i#1
(byte) mode_twoplanebitmap::i#2
(byte*) print_char_cursor
(byte*) print_char_cursor#0
(byte*) print_char_cursor#1
(byte*) print_char_cursor#10
(byte*) print_char_cursor#11
(byte*) print_char_cursor#12
(byte*) print_char_cursor#13
(byte*) print_char_cursor#14
(byte*) print_char_cursor#15
(byte*) print_char_cursor#16
(byte*) print_char_cursor#17
(byte*) print_char_cursor#18
(byte*) print_char_cursor#19
(byte*) print_char_cursor#2
(byte*) print_char_cursor#20
(byte*) print_char_cursor#21
(byte*) print_char_cursor#22
(byte*) print_char_cursor#23
(byte*) print_char_cursor#24
(byte*) print_char_cursor#25
(byte*) print_char_cursor#26
(byte*) print_char_cursor#27
(byte*) print_char_cursor#28
(byte*) print_char_cursor#29
(byte*) print_char_cursor#3
(byte*) print_char_cursor#30
(byte*) print_char_cursor#31
(byte*) print_char_cursor#32
(byte*) print_char_cursor#33
(byte*) print_char_cursor#34
(byte*) print_char_cursor#35
(byte*) print_char_cursor#36
(byte*) print_char_cursor#37
(byte*) print_char_cursor#38
(byte*) print_char_cursor#39
(byte*) print_char_cursor#4
(byte*) print_char_cursor#40
(byte*) print_char_cursor#41
(byte*) print_char_cursor#42
(byte*) print_char_cursor#43
(byte*) print_char_cursor#44
(byte*) print_char_cursor#45
(byte*) print_char_cursor#46
(byte*) print_char_cursor#47
(byte*) print_char_cursor#48
(byte*) print_char_cursor#49
(byte*) print_char_cursor#5
(byte*) print_char_cursor#50
(byte*) print_char_cursor#51
(byte*) print_char_cursor#52
(byte*) print_char_cursor#53
(byte*) print_char_cursor#54
(byte*) print_char_cursor#55
(byte*) print_char_cursor#56
(byte*) print_char_cursor#57
(byte*) print_char_cursor#58
(byte*) print_char_cursor#59
(byte*) print_char_cursor#6
(byte*) print_char_cursor#60
(byte*) print_char_cursor#61
(byte*) print_char_cursor#62
(byte*) print_char_cursor#63
(byte*) print_char_cursor#64
(byte*) print_char_cursor#65
(byte*) print_char_cursor#66
(byte*) print_char_cursor#67
(byte*) print_char_cursor#68
(byte*) print_char_cursor#69
(byte*) print_char_cursor#7
(byte*) print_char_cursor#70
(byte*) print_char_cursor#71
(byte*) print_char_cursor#72
(byte*) print_char_cursor#73
(byte*) print_char_cursor#74
(byte*) print_char_cursor#75
(byte*) print_char_cursor#76
(byte*) print_char_cursor#77
(byte*) print_char_cursor#78
(byte*) print_char_cursor#79
(byte*) print_char_cursor#8
(byte*) print_char_cursor#80
(byte*) print_char_cursor#81
(byte*) print_char_cursor#82
(byte*) print_char_cursor#83
(byte*) print_char_cursor#84
(byte*) print_char_cursor#85
(byte*) print_char_cursor#86
(byte*) print_char_cursor#87
(byte*) print_char_cursor#88
(byte*) print_char_cursor#89
(byte*) print_char_cursor#9
(byte*) print_char_cursor#90
(byte*) print_char_cursor#91
(byte*) print_char_cursor#92
(byte*) print_char_cursor#93
(byte*) print_char_cursor#94
(byte*) print_char_cursor#95
(byte*) print_char_cursor#96
(byte*) print_char_cursor#97
(byte*) print_char_cursor#98
(byte*) print_char_cursor#99
(void()) print_cls()
(label) print_cls::@1
(label) print_cls::@return
(byte*) print_line_cursor
(byte*) print_line_cursor#0
(byte*) print_line_cursor#1
(byte*) print_line_cursor#10
(byte*) print_line_cursor#11
(byte*) print_line_cursor#12
(byte*) print_line_cursor#13
(byte*) print_line_cursor#14
(byte*) print_line_cursor#15
(byte*) print_line_cursor#16
(byte*) print_line_cursor#17
(byte*) print_line_cursor#18
(byte*) print_line_cursor#19
(byte*) print_line_cursor#2
(byte*) print_line_cursor#20
(byte*) print_line_cursor#21
(byte*) print_line_cursor#22
(byte*) print_line_cursor#23
(byte*) print_line_cursor#24
(byte*) print_line_cursor#25
(byte*) print_line_cursor#26
(byte*) print_line_cursor#27
(byte*) print_line_cursor#28
(byte*) print_line_cursor#29
(byte*) print_line_cursor#3
(byte*) print_line_cursor#30
(byte*) print_line_cursor#31
(byte*) print_line_cursor#32
(byte*) print_line_cursor#33
(byte*) print_line_cursor#34
(byte*) print_line_cursor#35
(byte*) print_line_cursor#36
(byte*) print_line_cursor#37
(byte*) print_line_cursor#38
(byte*) print_line_cursor#39
(byte*) print_line_cursor#4
(byte*) print_line_cursor#40
(byte*) print_line_cursor#41
(byte*) print_line_cursor#42
(byte*) print_line_cursor#43
(byte*) print_line_cursor#44
(byte*) print_line_cursor#45
(byte*) print_line_cursor#46
(byte*) print_line_cursor#47
(byte*) print_line_cursor#48
(byte*) print_line_cursor#49
(byte*) print_line_cursor#5
(byte*) print_line_cursor#50
(byte*) print_line_cursor#51
(byte*) print_line_cursor#52
(byte*) print_line_cursor#53
(byte*) print_line_cursor#54
(byte*) print_line_cursor#55
(byte*) print_line_cursor#56
(byte*) print_line_cursor#57
(byte*) print_line_cursor#58
(byte*) print_line_cursor#59
(byte*) print_line_cursor#6
(byte*) print_line_cursor#60
(byte*) print_line_cursor#61
(byte*) print_line_cursor#62
(byte*) print_line_cursor#63
(byte*) print_line_cursor#64
(byte*) print_line_cursor#65
(byte*) print_line_cursor#66
(byte*) print_line_cursor#67
(byte*) print_line_cursor#68
(byte*) print_line_cursor#69
(byte*) print_line_cursor#7
(byte*) print_line_cursor#70
(byte*) print_line_cursor#71
(byte*) print_line_cursor#72
(byte*) print_line_cursor#73
(byte*) print_line_cursor#74
(byte*) print_line_cursor#75
(byte*) print_line_cursor#76
(byte*) print_line_cursor#77
(byte*) print_line_cursor#78
(byte*) print_line_cursor#79
(byte*) print_line_cursor#8
(byte*) print_line_cursor#80
(byte*) print_line_cursor#81
(byte*) print_line_cursor#82
(byte*) print_line_cursor#83
(byte*) print_line_cursor#84
(byte*) print_line_cursor#85
(byte*) print_line_cursor#86
(byte*) print_line_cursor#87
(byte*) print_line_cursor#88
(byte*) print_line_cursor#89
(byte*) print_line_cursor#9
(byte*) print_line_cursor#90
(byte*) print_line_cursor#91
(byte*) print_line_cursor#92
(byte*) print_line_cursor#93
(byte*) print_line_cursor#94
(byte*) print_line_cursor#95
(byte*) print_line_cursor#96
(byte*) print_line_cursor#97
(byte*) print_line_cursor#98
(byte*) print_line_cursor#99
(void()) print_ln()
(byte*~) print_ln::$0
(bool~) print_ln::$1
(label) print_ln::@1
(label) print_ln::@2
(label) print_ln::@return
(byte*) print_screen
(byte*) print_screen#0
(byte*) print_screen#1
(byte*) print_screen#10
(byte*) print_screen#11
(byte*) print_screen#12
(byte*) print_screen#13
(byte*) print_screen#14
(byte*) print_screen#15
(byte*) print_screen#16
(byte*) print_screen#17
(byte*) print_screen#18
(byte*) print_screen#19
(byte*) print_screen#2
(byte*) print_screen#20
(byte*) print_screen#21
(byte*) print_screen#22
(byte*) print_screen#23
(byte*) print_screen#24
(byte*) print_screen#25
(byte*) print_screen#26
(byte*) print_screen#27
(byte*) print_screen#28
(byte*) print_screen#29
(byte*) print_screen#3
(byte*) print_screen#30
(byte*) print_screen#31
(byte*) print_screen#32
(byte*) print_screen#33
(byte*) print_screen#34
(byte*) print_screen#35
(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#41
(byte*) print_screen#42
(byte*) print_screen#43
(byte*) print_screen#44
(byte*) print_screen#45
(byte*) print_screen#46
(byte*) print_screen#47
(byte*) print_screen#48
(byte*) print_screen#49
(byte*) print_screen#5
(byte*) print_screen#50
(byte*) print_screen#51
(byte*) print_screen#52
(byte*) print_screen#53
(byte*) print_screen#54
(byte*) print_screen#55
(byte*) print_screen#56
(byte*) print_screen#57
(byte*) print_screen#58
(byte*) print_screen#59
(byte*) print_screen#6
(byte*) print_screen#60
(byte*) print_screen#61
(byte*) print_screen#62
(byte*) print_screen#63
(byte*) print_screen#64
(byte*) print_screen#65
(byte*) print_screen#66
(byte*) print_screen#67
(byte*) print_screen#68
(byte*) print_screen#69
(byte*) print_screen#7
(byte*) print_screen#70
(byte*) print_screen#71
(byte*) print_screen#72
(byte*) print_screen#73
(byte*) print_screen#74
(byte*) print_screen#75
(byte*) print_screen#76
(byte*) print_screen#77
(byte*) print_screen#78
(byte*) print_screen#79
(byte*) print_screen#8
(byte*) print_screen#80
(byte*) print_screen#9
(void()) print_set_screen((byte*) print_set_screen::screen)
(label) print_set_screen::@return
(byte*) print_set_screen::screen
(byte*) print_set_screen::screen#0
(byte*) print_set_screen::screen#1
(void()) print_str_lines((byte*) print_str_lines::str)
(bool~) print_str_lines::$0
(bool~) print_str_lines::$2
(bool~) print_str_lines::$3
(bool~) print_str_lines::$4
(label) print_str_lines::@1
(label) print_str_lines::@11
(label) print_str_lines::@4
(label) print_str_lines::@5
(label) print_str_lines::@6
(label) print_str_lines::@7
(label) print_str_lines::@return
(byte) print_str_lines::ch
(byte) print_str_lines::ch#0
(byte) print_str_lines::ch#1
(byte) print_str_lines::ch#2
(byte*) print_str_lines::str
(byte*) print_str_lines::str#0
(byte*) print_str_lines::str#1
(byte*) print_str_lines::str#2
(byte*) print_str_lines::str#3
(byte*) print_str_lines::str#4
(byte*) print_str_lines::str#5
(byte*) print_str_lines::str#6
(byte*) print_str_lines::str#7
(byte*) print_str_lines::str#8
Fixing inline constructor with bitmap_clear::$3 ← (byte)*(bitmap_plot_xhi#0 + 0) w= (byte)*(bitmap_plot_xlo#0 + 0)
Fixing inline constructor with bitmap_plot::$2 ← (byte)*(bitmap_plot_xhi#0 + bitmap_plot::x#4) w= (byte)*(bitmap_plot_xlo#0 + bitmap_plot::x#4)
Fixing inline constructor with bitmap_plot::$3 ← (byte)*(bitmap_plot_yhi#0 + bitmap_plot::y#4) w= (byte)*(bitmap_plot_ylo#0 + bitmap_plot::y#4)
Successful SSA optimization Pass2FixInlineConstructors
Adding number conversion cast (unumber) 7 in (byte) PROCPORT_DDR_MEMORY_MASK#0 ← (number) 7
Adding number conversion cast (unumber) 5 in (byte) PROCPORT_RAM_IO#0 ← (number) 5
Adding number conversion cast (unumber) 1 in (byte) PROCPORT_RAM_CHARROM#0 ← (number) 1
Adding number conversion cast (unumber) $40 in (byte) VIC_ECM#0 ← (number) $40
Adding number conversion cast (unumber) $20 in (byte) VIC_BMM#0 ← (number) $20
Adding number conversion cast (unumber) $10 in (byte) VIC_DEN#0 ← (number) $10
Adding number conversion cast (unumber) 8 in (byte) VIC_RSEL#0 ← (number) 8
Adding number conversion cast (unumber) $10 in (byte) VIC_MCM#0 ← (number) $10
Adding number conversion cast (unumber) 8 in (byte) VIC_CSEL#0 ← (number) 8
Adding number conversion cast (unumber) 0 in (byte) BLACK#0 ← (number) 0
Adding number conversion cast (unumber) 5 in (byte) GREEN#0 ← (number) 5
Adding number conversion cast (unumber) 6 in (byte) BLUE#0 ← (number) 6
Adding number conversion cast (unumber) $d in (byte) LIGHT_GREEN#0 ← (number) $d
Adding number conversion cast (unumber) 1 in (byte) DTV_FEATURE_ENABLE#0 ← (number) 1
Adding number conversion cast (unumber) 1 in (byte) DTV_LINEAR#0 ← (number) 1
Adding number conversion cast (unumber) 2 in (byte) DTV_BORDER_OFF#0 ← (number) 2
Adding number conversion cast (unumber) 4 in (byte) DTV_HIGHCOLOR#0 ← (number) 4
Adding number conversion cast (unumber) 8 in (byte) DTV_OVERSCAN#0 ← (number) 8
Adding number conversion cast (unumber) $10 in (byte) DTV_COLORRAM_OFF#0 ← (number) $10
Adding number conversion cast (unumber) $40 in (byte) DTV_CHUNKY#0 ← (number) $40
Adding number conversion cast (unumber) $1d800 in (dword) DTV_COLOR_BANK_DEFAULT#0 ← (number) $1d800
Adding number conversion cast (unumber) 0 in (bool~) memset::$0 ← (word) memset::num#1 > (number) 0
Adding number conversion cast (unumber) 0 in (bool~) print_str_lines::$2 ← (number) 0 != *((byte*) print_str_lines::str#2)
Adding number conversion cast (unumber) 0 in (bool~) print_str_lines::$4 ← (number) 0 != (byte) print_str_lines::ch#0
Adding number conversion cast (unumber) 0 in (bool~) print_str_lines::$3 ← (number) 0 != (byte) print_str_lines::ch#1
Adding number conversion cast (unumber) $28 in (byte*~) print_ln::$0 ← (byte*) print_line_cursor#18 + (number) $28
Adding number conversion cast (unumber) $3e8 in (word) memset::num#0 ← (number) $3e8
Adding number conversion cast (unumber) 8 in (byte) KEY_3#0 ← (number) 8
Adding number conversion cast (unumber) $a in (byte) KEY_A#0 ← (number) $a
Adding number conversion cast (unumber) $b in (byte) KEY_4#0 ← (number) $b
Adding number conversion cast (unumber) $e in (byte) KEY_E#0 ← (number) $e
Adding number conversion cast (unumber) $12 in (byte) KEY_D#0 ← (number) $12
Adding number conversion cast (unumber) $13 in (byte) KEY_6#0 ← (number) $13
Adding number conversion cast (unumber) $14 in (byte) KEY_C#0 ← (number) $14
Adding number conversion cast (unumber) $18 in (byte) KEY_7#0 ← (number) $18
Adding number conversion cast (unumber) $1b in (byte) KEY_8#0 ← (number) $1b
Adding number conversion cast (unumber) $1c in (byte) KEY_B#0 ← (number) $1c
Adding number conversion cast (unumber) $1d in (byte) KEY_H#0 ← (number) $1d
Adding number conversion cast (unumber) $1e in (byte) KEY_U#0 ← (number) $1e
Adding number conversion cast (unumber) $23 in (byte) KEY_0#0 ← (number) $23
Adding number conversion cast (unumber) $26 in (byte) KEY_O#0 ← (number) $26
Adding number conversion cast (unumber) $2a in (byte) KEY_L#0 ← (number) $2a
Adding number conversion cast (unumber) $38 in (byte) KEY_1#0 ← (number) $38
Adding number conversion cast (unumber) $3b in (byte) KEY_2#0 ← (number) $3b
Adding number conversion cast (unumber) $3c in (byte) KEY_SPACE#0 ← (number) $3c
Adding number conversion cast (unumber) 7 in (number~) keyboard_key_pressed::$0 ← (byte) keyboard_key_pressed::key#20 & (number) 7
Adding number conversion cast (unumber) keyboard_key_pressed::$0 in (number~) keyboard_key_pressed::$0 ← (byte) keyboard_key_pressed::key#20 & (unumber)(number) 7
Adding number conversion cast (unumber) 3 in (byte~) keyboard_key_pressed::$1 ← (byte) keyboard_key_pressed::key#20 >> (number) 3
Adding number conversion cast (unumber) $80 in (byte) bitmap_init::bits#0 ← (number) $80
Adding number conversion cast (unumber) $f8 in (number~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (number) $f8
Adding number conversion cast (unumber) bitmap_init::$0 in (number~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (unumber)(number) $f8
Adding number conversion cast (unumber) 1 in (byte~) bitmap_init::$2 ← (byte) bitmap_init::bits#3 >> (number) 1
Adding number conversion cast (unumber) 0 in (bool~) bitmap_init::$3 ← (byte) bitmap_init::bits#1 == (number) 0
Adding number conversion cast (unumber) $80 in (byte) bitmap_init::bits#2 ← (number) $80
Adding number conversion cast (unumber) 7 in (number~) bitmap_init::$6 ← (byte) bitmap_init::y#2 & (number) 7
Adding number conversion cast (unumber) bitmap_init::$6 in (number~) bitmap_init::$6 ← (byte) bitmap_init::y#2 & (unumber)(number) 7
Adding number conversion cast (unumber) bitmap_init::$8 in (number~) bitmap_init::$8 ← (unumber~) bitmap_init::$6 | (byte~) bitmap_init::$7
Adding number conversion cast (unumber) 7 in (number~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (number) 7
Adding number conversion cast (unumber) bitmap_init::$10 in (number~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (unumber)(number) 7
Adding number conversion cast (unumber) 7 in (bool~) bitmap_init::$11 ← (unumber~) bitmap_init::$10 == (number) 7
Adding number conversion cast (unumber) $28*8 in (byte*~) bitmap_init::$13 ← (byte*) bitmap_init::yoffs#3 + (number) $28*(number) 8
Adding number conversion cast (unumber) 0 in (var) bitmap_clear::$3 ← (byte)*((byte[$100]) bitmap_plot_xhi#0 + (number) 0) w= (byte)*((byte[$100]) bitmap_plot_xlo#0 + (number) 0)
Adding number conversion cast (unumber) 0 in (var) bitmap_clear::$3 ← (byte)*((byte[$100]) bitmap_plot_xhi#0 + (unumber)(number) 0) w= (byte)*((byte[$100]) bitmap_plot_xlo#0 + (number) 0)
Adding number conversion cast (unumber) 0 in *((byte*) bitmap_clear::bitmap#2) ← (number) 0
Adding number conversion cast (unumber) 1 in (byte~) bitmap_line_xdyi::$0 ← (byte) bitmap_line_xdyi::yd#2 >> (number) 1
Adding number conversion cast (unumber) 1 in (number~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#2 + (number) 1
Adding number conversion cast (unumber) bitmap_line_xdyi::$6 in (number~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#2 + (unumber)(number) 1
Adding number conversion cast (unumber) 1 in (byte~) bitmap_line_xdyd::$0 ← (byte) bitmap_line_xdyd::yd#2 >> (number) 1
Adding number conversion cast (unumber) 1 in (number~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#2 + (number) 1
Adding number conversion cast (unumber) bitmap_line_xdyd::$6 in (number~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#2 + (unumber)(number) 1
Adding number conversion cast (unumber) 1 in (byte~) bitmap_line_ydxi::$0 ← (byte) bitmap_line_ydxi::xd#2 >> (number) 1
Adding number conversion cast (unumber) 1 in (number~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#2 + (number) 1
Adding number conversion cast (unumber) bitmap_line_ydxi::$6 in (number~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#2 + (unumber)(number) 1
Adding number conversion cast (unumber) 1 in (byte~) bitmap_line_ydxd::$0 ← (byte) bitmap_line_ydxd::xd#2 >> (number) 1
Adding number conversion cast (unumber) 1 in (number~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#2 + (number) 1
Adding number conversion cast (unumber) bitmap_line_ydxd::$6 in (number~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#2 + (unumber)(number) 1
Adding number conversion cast (unumber) $10000 in (number~) menu::$1 ← (dword~) menu::$0 / (number) $10000
Adding number conversion cast (unumber) menu::$1 in (number~) menu::$1 ← (dword~) menu::$0 / (unumber)(number) $10000
Adding number conversion cast (unumber) $400 in (number~) menu::$3 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (number) $400
Adding number conversion cast (unumber) menu::$3 in (number~) menu::$3 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (unumber)(number) $400
Adding number conversion cast (unumber) $400 in (number~) menu::$6 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (number) $400
Adding number conversion cast (unumber) menu::$6 in (number~) menu::$6 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (unumber)(number) $400
Adding number conversion cast (unumber) 0 in *((byte*) DTV_CONTROL#0) ← (number) 0
Adding number conversion cast (unumber) 3 in *((byte*) CIA2_PORT_A_DDR#0) ← (number) 3
Adding number conversion cast (unumber) $4000 in (number~) menu::$10 ← (word~) menu::$9 / (number) $4000
Adding number conversion cast (unumber) menu::$10 in (number~) menu::$10 ← (word~) menu::$9 / (unumber)(number) $4000
Adding number conversion cast (unumber) 3 in (number~) menu::$12 ← (number) 3 ^ (byte~) menu::$11
Adding number conversion cast (unumber) menu::$12 in (number~) menu::$12 ← (unumber)(number) 3 ^ (byte~) menu::$11
Adding number conversion cast (unumber) 3 in (number~) menu::$14 ← (byte~) menu::$13 | (number) 3
Adding number conversion cast (unumber) menu::$14 in (number~) menu::$14 ← (byte~) menu::$13 | (unumber)(number) 3
Adding number conversion cast (unumber) $3fff in (number~) menu::$16 ← (word~) menu::$15 & (number) $3fff
Adding number conversion cast (unumber) menu::$16 in (number~) menu::$16 ← (word~) menu::$15 & (unumber)(number) $3fff
Adding number conversion cast (unumber) $40 in (number~) menu::$17 ← (unumber~) menu::$16 / (number) $40
Adding number conversion cast (unumber) menu::$17 in (number~) menu::$17 ← (unumber~) menu::$16 / (unumber)(number) $40
Adding number conversion cast (unumber) $3fff in (number~) menu::$19 ← (word~) menu::$18 & (number) $3fff
Adding number conversion cast (unumber) menu::$19 in (number~) menu::$19 ← (word~) menu::$18 & (unumber)(number) $3fff
Adding number conversion cast (unumber) $400 in (number~) menu::$20 ← (unumber~) menu::$19 / (number) $400
Adding number conversion cast (unumber) menu::$20 in (number~) menu::$20 ← (unumber~) menu::$19 / (unumber)(number) $400
Adding number conversion cast (unumber) menu::$21 in (number~) menu::$21 ← (unumber~) menu::$17 | (unumber~) menu::$20
Adding number conversion cast (unumber) $3e8 in (byte*~) menu::$27 ← (byte*) COLS#0 + (number) $3e8
Adding number conversion cast (unumber) 0 in *((byte*) BGCOL#0) ← (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) BORDERCOL#0) ← (number) 0
Adding number conversion cast (unumber) 0 in (bool~) menu::$30 ← (byte~) menu::$29 != (number) 0
Adding number conversion cast (unumber) 0 in (bool~) menu::$34 ← (byte~) menu::$33 != (number) 0
Adding number conversion cast (unumber) 0 in (bool~) menu::$38 ← (byte~) menu::$37 != (number) 0
Adding number conversion cast (unumber) 0 in (bool~) menu::$42 ← (byte~) menu::$41 != (number) 0
Adding number conversion cast (unumber) 0 in (bool~) menu::$46 ← (byte~) menu::$45 != (number) 0
Adding number conversion cast (unumber) 0 in (bool~) menu::$50 ← (byte~) menu::$49 != (number) 0
Adding number conversion cast (unumber) 0 in (bool~) menu::$54 ← (byte~) menu::$53 != (number) 0
Adding number conversion cast (unumber) 0 in (bool~) menu::$58 ← (byte~) menu::$57 != (number) 0
Adding number conversion cast (unumber) 0 in (bool~) menu::$62 ← (byte~) menu::$61 != (number) 0
Adding number conversion cast (unumber) 0 in (bool~) menu::$66 ← (byte~) menu::$65 != (number) 0
Adding number conversion cast (unumber) 0 in (bool~) menu::$70 ← (byte~) menu::$69 != (number) 0
Adding number conversion cast (unumber) 0 in (bool~) menu::$74 ← (byte~) menu::$73 != (number) 0
Adding number conversion cast (unumber) 0 in (byte) dtv_control#15 ← (number) 0
Adding number conversion cast (unumber) $ff in (bool~) mode_ctrl::$0 ← *((byte*) RASTER#0) != (number) $ff
Adding number conversion cast (unumber) 0 in (bool~) mode_ctrl::$2 ← (byte~) mode_ctrl::$1 != (number) 0
Adding number conversion cast (unumber) 0 in (bool~) mode_ctrl::$5 ← (byte~) mode_ctrl::$4 != (number) 0
Adding number conversion cast (unumber) 0 in (bool~) mode_ctrl::$9 ← (byte~) mode_ctrl::$8 != (number) 0
Adding number conversion cast (unumber) 0 in (bool~) mode_ctrl::$13 ← (byte~) mode_ctrl::$12 != (number) 0
Adding number conversion cast (unumber) 0 in (bool~) mode_ctrl::$17 ← (byte~) mode_ctrl::$16 != (number) 0
Adding number conversion cast (unumber) 0 in (bool~) mode_ctrl::$21 ← (byte~) mode_ctrl::$20 != (number) 0
Adding number conversion cast (unumber) 0 in (bool~) mode_ctrl::$25 ← (byte~) mode_ctrl::$24 != (number) 0
Adding number conversion cast (unumber) 0 in (bool~) mode_ctrl::$29 ← (byte~) mode_ctrl::$28 != (number) 0
Adding number conversion cast (unumber) 0 in (byte) mode_ctrl::ctrl#7 ← (number) 0
Adding number conversion cast (unumber) $10000 in (number~) mode_stdchar::$1 ← (dword~) mode_stdchar::$0 / (number) $10000
Adding number conversion cast (unumber) mode_stdchar::$1 in (number~) mode_stdchar::$1 ← (dword~) mode_stdchar::$0 / (unumber)(number) $10000
Adding number conversion cast (unumber) $400 in (number~) mode_stdchar::$3 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (number) $400
Adding number conversion cast (unumber) mode_stdchar::$3 in (number~) mode_stdchar::$3 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (unumber)(number) $400
Adding number conversion cast (unumber) $400 in (number~) mode_stdchar::$6 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (number) $400
Adding number conversion cast (unumber) mode_stdchar::$6 in (number~) mode_stdchar::$6 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (unumber)(number) $400
Adding number conversion cast (unumber) 0 in (byte) dtv_control#18 ← (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) DTV_CONTROL#0) ← (number) 0
Adding number conversion cast (unumber) 3 in *((byte*) CIA2_PORT_A_DDR#0) ← (number) 3
Adding number conversion cast (unumber) $4000 in (number~) mode_stdchar::$10 ← (word~) mode_stdchar::$9 / (number) $4000
Adding number conversion cast (unumber) mode_stdchar::$10 in (number~) mode_stdchar::$10 ← (word~) mode_stdchar::$9 / (unumber)(number) $4000
Adding number conversion cast (unumber) 3 in (number~) mode_stdchar::$12 ← (number) 3 ^ (byte~) mode_stdchar::$11
Adding number conversion cast (unumber) mode_stdchar::$12 in (number~) mode_stdchar::$12 ← (unumber)(number) 3 ^ (byte~) mode_stdchar::$11
Adding number conversion cast (unumber) 3 in (number~) mode_stdchar::$14 ← (byte~) mode_stdchar::$13 | (number) 3
Adding number conversion cast (unumber) mode_stdchar::$14 in (number~) mode_stdchar::$14 ← (byte~) mode_stdchar::$13 | (unumber)(number) 3
Adding number conversion cast (unumber) $3fff in (number~) mode_stdchar::$16 ← (word~) mode_stdchar::$15 & (number) $3fff
Adding number conversion cast (unumber) mode_stdchar::$16 in (number~) mode_stdchar::$16 ← (word~) mode_stdchar::$15 & (unumber)(number) $3fff
Adding number conversion cast (unumber) $40 in (number~) mode_stdchar::$17 ← (unumber~) mode_stdchar::$16 / (number) $40
Adding number conversion cast (unumber) mode_stdchar::$17 in (number~) mode_stdchar::$17 ← (unumber~) mode_stdchar::$16 / (unumber)(number) $40
Adding number conversion cast (unumber) $3fff in (number~) mode_stdchar::$19 ← (word~) mode_stdchar::$18 & (number) $3fff
Adding number conversion cast (unumber) mode_stdchar::$19 in (number~) mode_stdchar::$19 ← (word~) mode_stdchar::$18 & (unumber)(number) $3fff
Adding number conversion cast (unumber) $400 in (number~) mode_stdchar::$20 ← (unumber~) mode_stdchar::$19 / (number) $400
Adding number conversion cast (unumber) mode_stdchar::$20 in (number~) mode_stdchar::$20 ← (unumber~) mode_stdchar::$19 / (unumber)(number) $400
Adding number conversion cast (unumber) mode_stdchar::$21 in (number~) mode_stdchar::$21 ← (unumber~) mode_stdchar::$17 | (unumber~) mode_stdchar::$20
Adding number conversion cast (unumber) 0 in *((byte*) BGCOL#0) ← (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) BORDERCOL#0) ← (number) 0
Adding number conversion cast (unumber) $f in (number~) mode_stdchar::$26 ← (byte~) mode_stdchar::$25 & (number) $f
Adding number conversion cast (unumber) mode_stdchar::$26 in (number~) mode_stdchar::$26 ← (byte~) mode_stdchar::$25 & (unumber)(number) $f
Adding number conversion cast (unumber) $f in (number~) mode_stdchar::$27 ← (byte) mode_stdchar::cy#2 & (number) $f
Adding number conversion cast (unumber) mode_stdchar::$27 in (number~) mode_stdchar::$27 ← (byte) mode_stdchar::cy#2 & (unumber)(number) $f
Adding number conversion cast (unumber) $10 in (number~) mode_stdchar::$28 ← (unumber~) mode_stdchar::$27 * (number) $10
Adding number conversion cast (unumber) mode_stdchar::$28 in (number~) mode_stdchar::$28 ← (unumber~) mode_stdchar::$27 * (unumber)(number) $10
Adding number conversion cast (unumber) $f in (number~) mode_stdchar::$29 ← (byte) mode_stdchar::cx#2 & (number) $f
Adding number conversion cast (unumber) mode_stdchar::$29 in (number~) mode_stdchar::$29 ← (byte) mode_stdchar::cx#2 & (unumber)(number) $f
Adding number conversion cast (unumber) mode_stdchar::$30 in (number~) mode_stdchar::$30 ← (unumber~) mode_stdchar::$28 | (unumber~) mode_stdchar::$29
Adding number conversion cast (unumber) $10000 in (number~) mode_ecmchar::$1 ← (dword~) mode_ecmchar::$0 / (number) $10000
Adding number conversion cast (unumber) mode_ecmchar::$1 in (number~) mode_ecmchar::$1 ← (dword~) mode_ecmchar::$0 / (unumber)(number) $10000
Adding number conversion cast (unumber) $400 in (number~) mode_ecmchar::$3 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (number) $400
Adding number conversion cast (unumber) mode_ecmchar::$3 in (number~) mode_ecmchar::$3 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (unumber)(number) $400
Adding number conversion cast (unumber) $400 in (number~) mode_ecmchar::$6 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (number) $400
Adding number conversion cast (unumber) mode_ecmchar::$6 in (number~) mode_ecmchar::$6 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (unumber)(number) $400
Adding number conversion cast (unumber) 0 in (byte) dtv_control#21 ← (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) DTV_CONTROL#0) ← (number) 0
Adding number conversion cast (unumber) 3 in *((byte*) CIA2_PORT_A_DDR#0) ← (number) 3
Adding number conversion cast (unumber) $4000 in (number~) mode_ecmchar::$10 ← (word~) mode_ecmchar::$9 / (number) $4000
Adding number conversion cast (unumber) mode_ecmchar::$10 in (number~) mode_ecmchar::$10 ← (word~) mode_ecmchar::$9 / (unumber)(number) $4000
Adding number conversion cast (unumber) 3 in (number~) mode_ecmchar::$12 ← (number) 3 ^ (byte~) mode_ecmchar::$11
Adding number conversion cast (unumber) mode_ecmchar::$12 in (number~) mode_ecmchar::$12 ← (unumber)(number) 3 ^ (byte~) mode_ecmchar::$11
Adding number conversion cast (unumber) 3 in (number~) mode_ecmchar::$15 ← (byte~) mode_ecmchar::$14 | (number) 3
Adding number conversion cast (unumber) mode_ecmchar::$15 in (number~) mode_ecmchar::$15 ← (byte~) mode_ecmchar::$14 | (unumber)(number) 3
Adding number conversion cast (unumber) $3fff in (number~) mode_ecmchar::$17 ← (word~) mode_ecmchar::$16 & (number) $3fff
Adding number conversion cast (unumber) mode_ecmchar::$17 in (number~) mode_ecmchar::$17 ← (word~) mode_ecmchar::$16 & (unumber)(number) $3fff
Adding number conversion cast (unumber) $40 in (number~) mode_ecmchar::$18 ← (unumber~) mode_ecmchar::$17 / (number) $40
Adding number conversion cast (unumber) mode_ecmchar::$18 in (number~) mode_ecmchar::$18 ← (unumber~) mode_ecmchar::$17 / (unumber)(number) $40
Adding number conversion cast (unumber) $3fff in (number~) mode_ecmchar::$20 ← (word~) mode_ecmchar::$19 & (number) $3fff
Adding number conversion cast (unumber) mode_ecmchar::$20 in (number~) mode_ecmchar::$20 ← (word~) mode_ecmchar::$19 & (unumber)(number) $3fff
Adding number conversion cast (unumber) $400 in (number~) mode_ecmchar::$21 ← (unumber~) mode_ecmchar::$20 / (number) $400
Adding number conversion cast (unumber) mode_ecmchar::$21 in (number~) mode_ecmchar::$21 ← (unumber~) mode_ecmchar::$20 / (unumber)(number) $400
Adding number conversion cast (unumber) mode_ecmchar::$22 in (number~) mode_ecmchar::$22 ← (unumber~) mode_ecmchar::$18 | (unumber~) mode_ecmchar::$21
Adding number conversion cast (unumber) 0 in *((byte*) BORDERCOL#0) ← (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) BGCOL1#0) ← (number) 0
Adding number conversion cast (unumber) 2 in *((byte*) BGCOL2#0) ← (number) 2
Adding number conversion cast (unumber) 5 in *((byte*) BGCOL3#0) ← (number) 5
Adding number conversion cast (unumber) 6 in *((byte*) BGCOL4#0) ← (number) 6
Adding number conversion cast (unumber) $f in (number~) mode_ecmchar::$27 ← (byte~) mode_ecmchar::$26 & (number) $f
Adding number conversion cast (unumber) mode_ecmchar::$27 in (number~) mode_ecmchar::$27 ← (byte~) mode_ecmchar::$26 & (unumber)(number) $f
Adding number conversion cast (unumber) $f in (number~) mode_ecmchar::$28 ← (byte) mode_ecmchar::cy#2 & (number) $f
Adding number conversion cast (unumber) mode_ecmchar::$28 in (number~) mode_ecmchar::$28 ← (byte) mode_ecmchar::cy#2 & (unumber)(number) $f
Adding number conversion cast (unumber) $10 in (number~) mode_ecmchar::$29 ← (unumber~) mode_ecmchar::$28 * (number) $10
Adding number conversion cast (unumber) mode_ecmchar::$29 in (number~) mode_ecmchar::$29 ← (unumber~) mode_ecmchar::$28 * (unumber)(number) $10
Adding number conversion cast (unumber) $f in (number~) mode_ecmchar::$30 ← (byte) mode_ecmchar::cx#2 & (number) $f
Adding number conversion cast (unumber) mode_ecmchar::$30 in (number~) mode_ecmchar::$30 ← (byte) mode_ecmchar::cx#2 & (unumber)(number) $f
Adding number conversion cast (unumber) mode_ecmchar::$31 in (number~) mode_ecmchar::$31 ← (unumber~) mode_ecmchar::$29 | (unumber~) mode_ecmchar::$30
Adding number conversion cast (unumber) $10000 in (number~) mode_mcchar::$1 ← (dword~) mode_mcchar::$0 / (number) $10000
Adding number conversion cast (unumber) mode_mcchar::$1 in (number~) mode_mcchar::$1 ← (dword~) mode_mcchar::$0 / (unumber)(number) $10000
Adding number conversion cast (unumber) $400 in (number~) mode_mcchar::$3 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (number) $400
Adding number conversion cast (unumber) mode_mcchar::$3 in (number~) mode_mcchar::$3 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (unumber)(number) $400
Adding number conversion cast (unumber) $400 in (number~) mode_mcchar::$6 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (number) $400
Adding number conversion cast (unumber) mode_mcchar::$6 in (number~) mode_mcchar::$6 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (unumber)(number) $400
Adding number conversion cast (unumber) 0 in (byte) dtv_control#24 ← (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) DTV_CONTROL#0) ← (number) 0
Adding number conversion cast (unumber) 3 in *((byte*) CIA2_PORT_A_DDR#0) ← (number) 3
Adding number conversion cast (unumber) $4000 in (number~) mode_mcchar::$10 ← (word~) mode_mcchar::$9 / (number) $4000
Adding number conversion cast (unumber) mode_mcchar::$10 in (number~) mode_mcchar::$10 ← (word~) mode_mcchar::$9 / (unumber)(number) $4000
Adding number conversion cast (unumber) 3 in (number~) mode_mcchar::$12 ← (number) 3 ^ (byte~) mode_mcchar::$11
Adding number conversion cast (unumber) mode_mcchar::$12 in (number~) mode_mcchar::$12 ← (unumber)(number) 3 ^ (byte~) mode_mcchar::$11
Adding number conversion cast (unumber) 3 in (number~) mode_mcchar::$14 ← (byte~) mode_mcchar::$13 | (number) 3
Adding number conversion cast (unumber) mode_mcchar::$14 in (number~) mode_mcchar::$14 ← (byte~) mode_mcchar::$13 | (unumber)(number) 3
Adding number conversion cast (unumber) $3fff in (number~) mode_mcchar::$17 ← (word~) mode_mcchar::$16 & (number) $3fff
Adding number conversion cast (unumber) mode_mcchar::$17 in (number~) mode_mcchar::$17 ← (word~) mode_mcchar::$16 & (unumber)(number) $3fff
Adding number conversion cast (unumber) $40 in (number~) mode_mcchar::$18 ← (unumber~) mode_mcchar::$17 / (number) $40
Adding number conversion cast (unumber) mode_mcchar::$18 in (number~) mode_mcchar::$18 ← (unumber~) mode_mcchar::$17 / (unumber)(number) $40
Adding number conversion cast (unumber) $3fff in (number~) mode_mcchar::$20 ← (word~) mode_mcchar::$19 & (number) $3fff
Adding number conversion cast (unumber) mode_mcchar::$20 in (number~) mode_mcchar::$20 ← (word~) mode_mcchar::$19 & (unumber)(number) $3fff
Adding number conversion cast (unumber) $400 in (number~) mode_mcchar::$21 ← (unumber~) mode_mcchar::$20 / (number) $400
Adding number conversion cast (unumber) mode_mcchar::$21 in (number~) mode_mcchar::$21 ← (unumber~) mode_mcchar::$20 / (unumber)(number) $400
Adding number conversion cast (unumber) mode_mcchar::$22 in (number~) mode_mcchar::$22 ← (unumber~) mode_mcchar::$18 | (unumber~) mode_mcchar::$21
Adding number conversion cast (unumber) 0 in *((byte*) BORDERCOL#0) ← (number) 0
Adding number conversion cast (unumber) $f in (number~) mode_mcchar::$27 ← (byte~) mode_mcchar::$26 & (number) $f
Adding number conversion cast (unumber) mode_mcchar::$27 in (number~) mode_mcchar::$27 ← (byte~) mode_mcchar::$26 & (unumber)(number) $f
Adding number conversion cast (unumber) $f in (number~) mode_mcchar::$28 ← (byte) mode_mcchar::cy#2 & (number) $f
Adding number conversion cast (unumber) mode_mcchar::$28 in (number~) mode_mcchar::$28 ← (byte) mode_mcchar::cy#2 & (unumber)(number) $f
Adding number conversion cast (unumber) $10 in (number~) mode_mcchar::$29 ← (unumber~) mode_mcchar::$28 * (number) $10
Adding number conversion cast (unumber) mode_mcchar::$29 in (number~) mode_mcchar::$29 ← (unumber~) mode_mcchar::$28 * (unumber)(number) $10
Adding number conversion cast (unumber) $f in (number~) mode_mcchar::$30 ← (byte) mode_mcchar::cx#2 & (number) $f
Adding number conversion cast (unumber) mode_mcchar::$30 in (number~) mode_mcchar::$30 ← (byte) mode_mcchar::cx#2 & (unumber)(number) $f
Adding number conversion cast (unumber) mode_mcchar::$31 in (number~) mode_mcchar::$31 ← (unumber~) mode_mcchar::$29 | (unumber~) mode_mcchar::$30
Adding number conversion cast (unumber) $10000 in (number~) mode_stdbitmap::$1 ← (dword~) mode_stdbitmap::$0 / (number) $10000
Adding number conversion cast (unumber) mode_stdbitmap::$1 in (number~) mode_stdbitmap::$1 ← (dword~) mode_stdbitmap::$0 / (unumber)(number) $10000
Adding number conversion cast (unumber) 0 in (byte) dtv_control#27 ← (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) DTV_CONTROL#0) ← (number) 0
Adding number conversion cast (unumber) 3 in *((byte*) CIA2_PORT_A_DDR#0) ← (number) 3
Adding number conversion cast (unumber) $4000 in (number~) mode_stdbitmap::$4 ← (word~) mode_stdbitmap::$3 / (number) $4000
Adding number conversion cast (unumber) mode_stdbitmap::$4 in (number~) mode_stdbitmap::$4 ← (word~) mode_stdbitmap::$3 / (unumber)(number) $4000
Adding number conversion cast (unumber) 3 in (number~) mode_stdbitmap::$6 ← (number) 3 ^ (byte~) mode_stdbitmap::$5
Adding number conversion cast (unumber) mode_stdbitmap::$6 in (number~) mode_stdbitmap::$6 ← (unumber)(number) 3 ^ (byte~) mode_stdbitmap::$5
Adding number conversion cast (unumber) 3 in (number~) mode_stdbitmap::$9 ← (byte~) mode_stdbitmap::$8 | (number) 3
Adding number conversion cast (unumber) mode_stdbitmap::$9 in (number~) mode_stdbitmap::$9 ← (byte~) mode_stdbitmap::$8 | (unumber)(number) 3
Adding number conversion cast (unumber) $3fff in (number~) mode_stdbitmap::$11 ← (word~) mode_stdbitmap::$10 & (number) $3fff
Adding number conversion cast (unumber) mode_stdbitmap::$11 in (number~) mode_stdbitmap::$11 ← (word~) mode_stdbitmap::$10 & (unumber)(number) $3fff
Adding number conversion cast (unumber) $40 in (number~) mode_stdbitmap::$12 ← (unumber~) mode_stdbitmap::$11 / (number) $40
Adding number conversion cast (unumber) mode_stdbitmap::$12 in (number~) mode_stdbitmap::$12 ← (unumber~) mode_stdbitmap::$11 / (unumber)(number) $40
Adding number conversion cast (unumber) $3fff in (number~) mode_stdbitmap::$14 ← (word~) mode_stdbitmap::$13 & (number) $3fff
Adding number conversion cast (unumber) mode_stdbitmap::$14 in (number~) mode_stdbitmap::$14 ← (word~) mode_stdbitmap::$13 & (unumber)(number) $3fff
Adding number conversion cast (unumber) $400 in (number~) mode_stdbitmap::$15 ← (unumber~) mode_stdbitmap::$14 / (number) $400
Adding number conversion cast (unumber) mode_stdbitmap::$15 in (number~) mode_stdbitmap::$15 ← (unumber~) mode_stdbitmap::$14 / (unumber)(number) $400
Adding number conversion cast (unumber) mode_stdbitmap::$16 in (number~) mode_stdbitmap::$16 ← (unumber~) mode_stdbitmap::$12 | (unumber~) mode_stdbitmap::$15
Adding number conversion cast (unumber) $f in (number~) mode_stdbitmap::$23 ← (byte~) mode_stdbitmap::$22 & (number) $f
Adding number conversion cast (unumber) mode_stdbitmap::$23 in (number~) mode_stdbitmap::$23 ← (byte~) mode_stdbitmap::$22 & (unumber)(number) $f
Adding number conversion cast (unumber) $f in (number~) mode_stdbitmap::$24 ← (number) $f - (byte) mode_stdbitmap::col#0
Adding number conversion cast (unumber) mode_stdbitmap::$24 in (number~) mode_stdbitmap::$24 ← (unumber)(number) $f - (byte) mode_stdbitmap::col#0
Adding number conversion cast (unumber) $10 in (number~) mode_stdbitmap::$25 ← (byte) mode_stdbitmap::col#0 * (number) $10
Adding number conversion cast (unumber) mode_stdbitmap::$25 in (number~) mode_stdbitmap::$25 ← (byte) mode_stdbitmap::col#0 * (unumber)(number) $10
Adding number conversion cast (unumber) mode_stdbitmap::$26 in (number~) mode_stdbitmap::$26 ← (unumber~) mode_stdbitmap::$25 | (byte) mode_stdbitmap::col2#0
Adding number conversion cast (unumber) 9 in (byte) mode_stdbitmap::lines_cnt#0 ← (number) 9
Adding number conversion cast (unumber) 0 in (byte) mode_stdbitmap::l#0 ← (number) 0
Adding number conversion cast (unumber) 1 in (number~) mode_stdbitmap::$30 ← (byte) mode_stdbitmap::l#3 + (number) 1
Adding number conversion cast (unumber) mode_stdbitmap::$30 in (number~) mode_stdbitmap::$30 ← (byte) mode_stdbitmap::l#3 + (unumber)(number) 1
Adding number conversion cast (unumber) 1 in (number~) mode_stdbitmap::$31 ← (byte) mode_stdbitmap::l#3 + (number) 1
Adding number conversion cast (unumber) mode_stdbitmap::$31 in (number~) mode_stdbitmap::$31 ← (byte) mode_stdbitmap::l#3 + (unumber)(number) 1
Adding number conversion cast (unumber) $10000 in (number~) mode_hicolstdchar::$1 ← (dword~) mode_hicolstdchar::$0 / (number) $10000
Adding number conversion cast (unumber) mode_hicolstdchar::$1 in (number~) mode_hicolstdchar::$1 ← (dword~) mode_hicolstdchar::$0 / (unumber)(number) $10000
Adding number conversion cast (unumber) $400 in (byte*~) mode_hicolstdchar::$3 ← (byte*) mode_hicolstdchar::COLORS#0 / (number) $400
Adding number conversion cast (unumber) $400 in (byte*~) mode_hicolstdchar::$6 ← (byte*) mode_hicolstdchar::COLORS#0 / (number) $400
Adding number conversion cast (unumber) 3 in *((byte*) CIA2_PORT_A_DDR#0) ← (number) 3
Adding number conversion cast (unumber) $4000 in (number~) mode_hicolstdchar::$10 ← (word~) mode_hicolstdchar::$9 / (number) $4000
Adding number conversion cast (unumber) mode_hicolstdchar::$10 in (number~) mode_hicolstdchar::$10 ← (word~) mode_hicolstdchar::$9 / (unumber)(number) $4000
Adding number conversion cast (unumber) 3 in (number~) mode_hicolstdchar::$12 ← (number) 3 ^ (byte~) mode_hicolstdchar::$11
Adding number conversion cast (unumber) mode_hicolstdchar::$12 in (number~) mode_hicolstdchar::$12 ← (unumber)(number) 3 ^ (byte~) mode_hicolstdchar::$11
Adding number conversion cast (unumber) 3 in (number~) mode_hicolstdchar::$14 ← (byte~) mode_hicolstdchar::$13 | (number) 3
Adding number conversion cast (unumber) mode_hicolstdchar::$14 in (number~) mode_hicolstdchar::$14 ← (byte~) mode_hicolstdchar::$13 | (unumber)(number) 3
Adding number conversion cast (unumber) $3fff in (number~) mode_hicolstdchar::$16 ← (word~) mode_hicolstdchar::$15 & (number) $3fff
Adding number conversion cast (unumber) mode_hicolstdchar::$16 in (number~) mode_hicolstdchar::$16 ← (word~) mode_hicolstdchar::$15 & (unumber)(number) $3fff
Adding number conversion cast (unumber) $40 in (number~) mode_hicolstdchar::$17 ← (unumber~) mode_hicolstdchar::$16 / (number) $40
Adding number conversion cast (unumber) mode_hicolstdchar::$17 in (number~) mode_hicolstdchar::$17 ← (unumber~) mode_hicolstdchar::$16 / (unumber)(number) $40
Adding number conversion cast (unumber) $3fff in (number~) mode_hicolstdchar::$19 ← (word~) mode_hicolstdchar::$18 & (number) $3fff
Adding number conversion cast (unumber) mode_hicolstdchar::$19 in (number~) mode_hicolstdchar::$19 ← (word~) mode_hicolstdchar::$18 & (unumber)(number) $3fff
Adding number conversion cast (unumber) $400 in (number~) mode_hicolstdchar::$20 ← (unumber~) mode_hicolstdchar::$19 / (number) $400
Adding number conversion cast (unumber) mode_hicolstdchar::$20 in (number~) mode_hicolstdchar::$20 ← (unumber~) mode_hicolstdchar::$19 / (unumber)(number) $400
Adding number conversion cast (unumber) mode_hicolstdchar::$21 in (number~) mode_hicolstdchar::$21 ← (unumber~) mode_hicolstdchar::$17 | (unumber~) mode_hicolstdchar::$20
Adding number conversion cast (unumber) 0 in *((byte*) BGCOL#0) ← (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) BORDERCOL#0) ← (number) 0
Adding number conversion cast (unumber) $f in (number~) mode_hicolstdchar::$25 ← (byte) mode_hicolstdchar::cy#2 & (number) $f
Adding number conversion cast (unumber) mode_hicolstdchar::$25 in (number~) mode_hicolstdchar::$25 ← (byte) mode_hicolstdchar::cy#2 & (unumber)(number) $f
Adding number conversion cast (unumber) $10 in (number~) mode_hicolstdchar::$26 ← (unumber~) mode_hicolstdchar::$25 * (number) $10
Adding number conversion cast (unumber) mode_hicolstdchar::$26 in (number~) mode_hicolstdchar::$26 ← (unumber~) mode_hicolstdchar::$25 * (unumber)(number) $10
Adding number conversion cast (unumber) $f in (number~) mode_hicolstdchar::$27 ← (byte) mode_hicolstdchar::cx#2 & (number) $f
Adding number conversion cast (unumber) mode_hicolstdchar::$27 in (number~) mode_hicolstdchar::$27 ← (byte) mode_hicolstdchar::cx#2 & (unumber)(number) $f
Adding number conversion cast (unumber) mode_hicolstdchar::$28 in (number~) mode_hicolstdchar::$28 ← (unumber~) mode_hicolstdchar::$26 | (unumber~) mode_hicolstdchar::$27
Adding number conversion cast (unumber) $10000 in (number~) mode_hicolecmchar::$1 ← (dword~) mode_hicolecmchar::$0 / (number) $10000
Adding number conversion cast (unumber) mode_hicolecmchar::$1 in (number~) mode_hicolecmchar::$1 ← (dword~) mode_hicolecmchar::$0 / (unumber)(number) $10000
Adding number conversion cast (unumber) $400 in (byte*~) mode_hicolecmchar::$3 ← (byte*) mode_hicolecmchar::COLORS#0 / (number) $400
Adding number conversion cast (unumber) $400 in (byte*~) mode_hicolecmchar::$6 ← (byte*) mode_hicolecmchar::COLORS#0 / (number) $400
Adding number conversion cast (unumber) 3 in *((byte*) CIA2_PORT_A_DDR#0) ← (number) 3
Adding number conversion cast (unumber) $4000 in (number~) mode_hicolecmchar::$10 ← (word~) mode_hicolecmchar::$9 / (number) $4000
Adding number conversion cast (unumber) mode_hicolecmchar::$10 in (number~) mode_hicolecmchar::$10 ← (word~) mode_hicolecmchar::$9 / (unumber)(number) $4000
Adding number conversion cast (unumber) 3 in (number~) mode_hicolecmchar::$12 ← (number) 3 ^ (byte~) mode_hicolecmchar::$11
Adding number conversion cast (unumber) mode_hicolecmchar::$12 in (number~) mode_hicolecmchar::$12 ← (unumber)(number) 3 ^ (byte~) mode_hicolecmchar::$11
Adding number conversion cast (unumber) 3 in (number~) mode_hicolecmchar::$15 ← (byte~) mode_hicolecmchar::$14 | (number) 3
Adding number conversion cast (unumber) mode_hicolecmchar::$15 in (number~) mode_hicolecmchar::$15 ← (byte~) mode_hicolecmchar::$14 | (unumber)(number) 3
Adding number conversion cast (unumber) $3fff in (number~) mode_hicolecmchar::$17 ← (word~) mode_hicolecmchar::$16 & (number) $3fff
Adding number conversion cast (unumber) mode_hicolecmchar::$17 in (number~) mode_hicolecmchar::$17 ← (word~) mode_hicolecmchar::$16 & (unumber)(number) $3fff
Adding number conversion cast (unumber) $40 in (number~) mode_hicolecmchar::$18 ← (unumber~) mode_hicolecmchar::$17 / (number) $40
Adding number conversion cast (unumber) mode_hicolecmchar::$18 in (number~) mode_hicolecmchar::$18 ← (unumber~) mode_hicolecmchar::$17 / (unumber)(number) $40
Adding number conversion cast (unumber) $3fff in (number~) mode_hicolecmchar::$20 ← (word~) mode_hicolecmchar::$19 & (number) $3fff
Adding number conversion cast (unumber) mode_hicolecmchar::$20 in (number~) mode_hicolecmchar::$20 ← (word~) mode_hicolecmchar::$19 & (unumber)(number) $3fff
Adding number conversion cast (unumber) $400 in (number~) mode_hicolecmchar::$21 ← (unumber~) mode_hicolecmchar::$20 / (number) $400
Adding number conversion cast (unumber) mode_hicolecmchar::$21 in (number~) mode_hicolecmchar::$21 ← (unumber~) mode_hicolecmchar::$20 / (unumber)(number) $400
Adding number conversion cast (unumber) mode_hicolecmchar::$22 in (number~) mode_hicolecmchar::$22 ← (unumber~) mode_hicolecmchar::$18 | (unumber~) mode_hicolecmchar::$21
Adding number conversion cast (unumber) 0 in *((byte*) BORDERCOL#0) ← (number) 0
Adding number conversion cast (unumber) $50 in *((byte*) BGCOL1#0) ← (number) $50
Adding number conversion cast (unumber) $54 in *((byte*) BGCOL2#0) ← (number) $54
Adding number conversion cast (unumber) $58 in *((byte*) BGCOL3#0) ← (number) $58
Adding number conversion cast (unumber) $5c in *((byte*) BGCOL4#0) ← (number) $5c
Adding number conversion cast (unumber) $f in (number~) mode_hicolecmchar::$26 ← (byte) mode_hicolecmchar::cy#2 & (number) $f
Adding number conversion cast (unumber) mode_hicolecmchar::$26 in (number~) mode_hicolecmchar::$26 ← (byte) mode_hicolecmchar::cy#2 & (unumber)(number) $f
Adding number conversion cast (unumber) $10 in (number~) mode_hicolecmchar::$27 ← (unumber~) mode_hicolecmchar::$26 * (number) $10
Adding number conversion cast (unumber) mode_hicolecmchar::$27 in (number~) mode_hicolecmchar::$27 ← (unumber~) mode_hicolecmchar::$26 * (unumber)(number) $10
Adding number conversion cast (unumber) $f in (number~) mode_hicolecmchar::$28 ← (byte) mode_hicolecmchar::cx#2 & (number) $f
Adding number conversion cast (unumber) mode_hicolecmchar::$28 in (number~) mode_hicolecmchar::$28 ← (byte) mode_hicolecmchar::cx#2 & (unumber)(number) $f
Adding number conversion cast (unumber) mode_hicolecmchar::$29 in (number~) mode_hicolecmchar::$29 ← (unumber~) mode_hicolecmchar::$27 | (unumber~) mode_hicolecmchar::$28
Adding number conversion cast (unumber) $10000 in (number~) mode_hicolmcchar::$1 ← (dword~) mode_hicolmcchar::$0 / (number) $10000
Adding number conversion cast (unumber) mode_hicolmcchar::$1 in (number~) mode_hicolmcchar::$1 ← (dword~) mode_hicolmcchar::$0 / (unumber)(number) $10000
Adding number conversion cast (unumber) $400 in (byte*~) mode_hicolmcchar::$3 ← (byte*) mode_hicolmcchar::COLORS#0 / (number) $400
Adding number conversion cast (unumber) $400 in (byte*~) mode_hicolmcchar::$6 ← (byte*) mode_hicolmcchar::COLORS#0 / (number) $400
Adding number conversion cast (unumber) 3 in *((byte*) CIA2_PORT_A_DDR#0) ← (number) 3
Adding number conversion cast (unumber) $4000 in (number~) mode_hicolmcchar::$10 ← (word~) mode_hicolmcchar::$9 / (number) $4000
Adding number conversion cast (unumber) mode_hicolmcchar::$10 in (number~) mode_hicolmcchar::$10 ← (word~) mode_hicolmcchar::$9 / (unumber)(number) $4000
Adding number conversion cast (unumber) 3 in (number~) mode_hicolmcchar::$12 ← (number) 3 ^ (byte~) mode_hicolmcchar::$11
Adding number conversion cast (unumber) mode_hicolmcchar::$12 in (number~) mode_hicolmcchar::$12 ← (unumber)(number) 3 ^ (byte~) mode_hicolmcchar::$11
Adding number conversion cast (unumber) 3 in (number~) mode_hicolmcchar::$14 ← (byte~) mode_hicolmcchar::$13 | (number) 3
Adding number conversion cast (unumber) mode_hicolmcchar::$14 in (number~) mode_hicolmcchar::$14 ← (byte~) mode_hicolmcchar::$13 | (unumber)(number) 3
Adding number conversion cast (unumber) $3fff in (number~) mode_hicolmcchar::$17 ← (word~) mode_hicolmcchar::$16 & (number) $3fff
Adding number conversion cast (unumber) mode_hicolmcchar::$17 in (number~) mode_hicolmcchar::$17 ← (word~) mode_hicolmcchar::$16 & (unumber)(number) $3fff
Adding number conversion cast (unumber) $40 in (number~) mode_hicolmcchar::$18 ← (unumber~) mode_hicolmcchar::$17 / (number) $40
Adding number conversion cast (unumber) mode_hicolmcchar::$18 in (number~) mode_hicolmcchar::$18 ← (unumber~) mode_hicolmcchar::$17 / (unumber)(number) $40
Adding number conversion cast (unumber) $3fff in (number~) mode_hicolmcchar::$20 ← (word~) mode_hicolmcchar::$19 & (number) $3fff
Adding number conversion cast (unumber) mode_hicolmcchar::$20 in (number~) mode_hicolmcchar::$20 ← (word~) mode_hicolmcchar::$19 & (unumber)(number) $3fff
Adding number conversion cast (unumber) $400 in (number~) mode_hicolmcchar::$21 ← (unumber~) mode_hicolmcchar::$20 / (number) $400
Adding number conversion cast (unumber) mode_hicolmcchar::$21 in (number~) mode_hicolmcchar::$21 ← (unumber~) mode_hicolmcchar::$20 / (unumber)(number) $400
Adding number conversion cast (unumber) mode_hicolmcchar::$22 in (number~) mode_hicolmcchar::$22 ← (unumber~) mode_hicolmcchar::$18 | (unumber~) mode_hicolmcchar::$21
Adding number conversion cast (unumber) 0 in *((byte*) BORDERCOL#0) ← (number) 0
Adding number conversion cast (unumber) $50 in *((byte*) BGCOL1#0) ← (number) $50
Adding number conversion cast (unumber) $54 in *((byte*) BGCOL2#0) ← (number) $54
Adding number conversion cast (unumber) $58 in *((byte*) BGCOL3#0) ← (number) $58
Adding number conversion cast (unumber) $f in (number~) mode_hicolmcchar::$26 ← (byte) mode_hicolmcchar::cy#2 & (number) $f
Adding number conversion cast (unumber) mode_hicolmcchar::$26 in (number~) mode_hicolmcchar::$26 ← (byte) mode_hicolmcchar::cy#2 & (unumber)(number) $f
Adding number conversion cast (unumber) $10 in (number~) mode_hicolmcchar::$27 ← (unumber~) mode_hicolmcchar::$26 * (number) $10
Adding number conversion cast (unumber) mode_hicolmcchar::$27 in (number~) mode_hicolmcchar::$27 ← (unumber~) mode_hicolmcchar::$26 * (unumber)(number) $10
Adding number conversion cast (unumber) $f in (number~) mode_hicolmcchar::$28 ← (byte) mode_hicolmcchar::cx#2 & (number) $f
Adding number conversion cast (unumber) mode_hicolmcchar::$28 in (number~) mode_hicolmcchar::$28 ← (byte) mode_hicolmcchar::cx#2 & (unumber)(number) $f
Adding number conversion cast (unumber) mode_hicolmcchar::$29 in (number~) mode_hicolmcchar::$29 ← (unumber~) mode_hicolmcchar::$27 | (unumber~) mode_hicolmcchar::$28
Adding number conversion cast (unumber) 3 in (number~) mode_twoplanebitmap::$5 ← (byte~) mode_twoplanebitmap::$4 | (number) 3
Adding number conversion cast (unumber) mode_twoplanebitmap::$5 in (number~) mode_twoplanebitmap::$5 ← (byte~) mode_twoplanebitmap::$4 | (unumber)(number) 3
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEA_START_HI#0) ← (number) 0
Adding number conversion cast (unumber) 1 in *((byte*) DTV_PLANEA_STEP#0) ← (number) 1
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEA_MODULO_LO#0) ← (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEA_MODULO_HI#0) ← (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEB_START_HI#0) ← (number) 0
Adding number conversion cast (unumber) 1 in *((byte*) DTV_PLANEB_STEP#0) ← (number) 1
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEB_MODULO_LO#0) ← (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEB_MODULO_HI#0) ← (number) 0
Adding number conversion cast (unumber) $400 in (byte*~) mode_twoplanebitmap::$10 ← (byte*) mode_twoplanebitmap::COLORS#0 / (number) $400
Adding number conversion cast (unumber) $400 in (byte*~) mode_twoplanebitmap::$12 ← (byte*) mode_twoplanebitmap::COLORS#0 / (number) $400
Adding number conversion cast (unumber) 0 in *((byte*) BORDERCOL#0) ← (number) 0
Adding number conversion cast (unumber) $70 in *((byte*) BGCOL1#0) ← (number) $70
Adding number conversion cast (unumber) $d4 in *((byte*) BGCOL2#0) ← (number) $d4
Adding number conversion cast (unumber) $f in (number~) mode_twoplanebitmap::$16 ← (byte) mode_twoplanebitmap::cy#2 & (number) $f
Adding number conversion cast (unumber) mode_twoplanebitmap::$16 in (number~) mode_twoplanebitmap::$16 ← (byte) mode_twoplanebitmap::cy#2 & (unumber)(number) $f
Adding number conversion cast (unumber) $10 in (number~) mode_twoplanebitmap::$17 ← (unumber~) mode_twoplanebitmap::$16 * (number) $10
Adding number conversion cast (unumber) mode_twoplanebitmap::$17 in (number~) mode_twoplanebitmap::$17 ← (unumber~) mode_twoplanebitmap::$16 * (unumber)(number) $10
Adding number conversion cast (unumber) $f in (number~) mode_twoplanebitmap::$18 ← (byte) mode_twoplanebitmap::cx#2 & (number) $f
Adding number conversion cast (unumber) mode_twoplanebitmap::$18 in (number~) mode_twoplanebitmap::$18 ← (byte) mode_twoplanebitmap::cx#2 & (unumber)(number) $f
Adding number conversion cast (unumber) mode_twoplanebitmap::$19 in (number~) mode_twoplanebitmap::$19 ← (unumber~) mode_twoplanebitmap::$17 | (unumber~) mode_twoplanebitmap::$18
Adding number conversion cast (unumber) 4 in (number~) mode_twoplanebitmap::$22 ← (byte) mode_twoplanebitmap::ay#2 & (number) 4
Adding number conversion cast (unumber) mode_twoplanebitmap::$22 in (number~) mode_twoplanebitmap::$22 ← (byte) mode_twoplanebitmap::ay#2 & (unumber)(number) 4
Adding number conversion cast (unumber) 0 in (bool~) mode_twoplanebitmap::$23 ← (unumber~) mode_twoplanebitmap::$22 == (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) mode_twoplanebitmap::gfxa#3) ← (number) 0
Adding number conversion cast (unumber) $ff in *((byte*) mode_twoplanebitmap::gfxa#4) ← (number) $ff
Adding number conversion cast (unumber) $f in *((byte*) mode_twoplanebitmap::gfxb#2) ← (number) $f
Adding number conversion cast (unumber) 3 in (number~) mode_sixsfred::$5 ← (byte~) mode_sixsfred::$4 | (number) 3
Adding number conversion cast (unumber) mode_sixsfred::$5 in (number~) mode_sixsfred::$5 ← (byte~) mode_sixsfred::$4 | (unumber)(number) 3
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEA_START_HI#0) ← (number) 0
Adding number conversion cast (unumber) 1 in *((byte*) DTV_PLANEA_STEP#0) ← (number) 1
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEA_MODULO_LO#0) ← (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEA_MODULO_HI#0) ← (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEB_START_HI#0) ← (number) 0
Adding number conversion cast (unumber) 1 in *((byte*) DTV_PLANEB_STEP#0) ← (number) 1
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEB_MODULO_LO#0) ← (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEB_MODULO_HI#0) ← (number) 0
Adding number conversion cast (unumber) $400 in (byte*~) mode_sixsfred::$11 ← (byte*) mode_sixsfred::COLORS#0 / (number) $400
Adding number conversion cast (unumber) $400 in (byte*~) mode_sixsfred::$13 ← (byte*) mode_sixsfred::COLORS#0 / (number) $400
Adding number conversion cast (unumber) 0 in *((byte*) BORDERCOL#0) ← (number) 0
Adding number conversion cast (unumber) $f in (number~) mode_sixsfred::$18 ← (byte~) mode_sixsfred::$17 & (number) $f
Adding number conversion cast (unumber) mode_sixsfred::$18 in (number~) mode_sixsfred::$18 ← (byte~) mode_sixsfred::$17 & (unumber)(number) $f
Adding number conversion cast (unumber) 2 in (number~) mode_sixsfred::$21 ← (byte) mode_sixsfred::ay#2 / (number) 2
Adding number conversion cast (unumber) mode_sixsfred::$21 in (number~) mode_sixsfred::$21 ← (byte) mode_sixsfred::ay#2 / (unumber)(number) 2
Adding number conversion cast (unumber) 3 in (number~) mode_sixsfred::$22 ← (unumber~) mode_sixsfred::$21 & (number) 3
Adding number conversion cast (unumber) mode_sixsfred::$22 in (number~) mode_sixsfred::$22 ← (unumber~) mode_sixsfred::$21 & (unumber)(number) 3
Adding number conversion cast (unumber) $1b in *((byte*) mode_sixsfred::gfxb#2) ← (number) $1b
Adding number conversion cast (unumber) 3 in (number~) mode_sixsfred2::$3 ← (byte~) mode_sixsfred2::$2 | (number) 3
Adding number conversion cast (unumber) mode_sixsfred2::$3 in (number~) mode_sixsfred2::$3 ← (byte~) mode_sixsfred2::$2 | (unumber)(number) 3
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEA_START_HI#0) ← (number) 0
Adding number conversion cast (unumber) 1 in *((byte*) DTV_PLANEA_STEP#0) ← (number) 1
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEA_MODULO_LO#0) ← (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEA_MODULO_HI#0) ← (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEB_START_HI#0) ← (number) 0
Adding number conversion cast (unumber) 1 in *((byte*) DTV_PLANEB_STEP#0) ← (number) 1
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEB_MODULO_LO#0) ← (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEB_MODULO_HI#0) ← (number) 0
Adding number conversion cast (unumber) $400 in (byte*~) mode_sixsfred2::$9 ← (byte*) mode_sixsfred2::COLORS#0 / (number) $400
Adding number conversion cast (unumber) $400 in (byte*~) mode_sixsfred2::$11 ← (byte*) mode_sixsfred2::COLORS#0 / (number) $400
Adding number conversion cast (unumber) 0 in *((byte*) BORDERCOL#0) ← (number) 0
Adding number conversion cast (unumber) 3 in (number~) mode_sixsfred2::$15 ← (byte) mode_sixsfred2::cx#2 & (number) 3
Adding number conversion cast (unumber) mode_sixsfred2::$15 in (number~) mode_sixsfred2::$15 ← (byte) mode_sixsfred2::cx#2 & (unumber)(number) 3
Adding number conversion cast (unumber) $10 in (number~) mode_sixsfred2::$16 ← (unumber~) mode_sixsfred2::$15 * (number) $10
Adding number conversion cast (unumber) mode_sixsfred2::$16 in (number~) mode_sixsfred2::$16 ← (unumber~) mode_sixsfred2::$15 * (unumber)(number) $10
Adding number conversion cast (unumber) 3 in (number~) mode_sixsfred2::$17 ← (byte) mode_sixsfred2::cy#2 & (number) 3
Adding number conversion cast (unumber) mode_sixsfred2::$17 in (number~) mode_sixsfred2::$17 ← (byte) mode_sixsfred2::cy#2 & (unumber)(number) 3
Adding number conversion cast (unumber) mode_sixsfred2::$18 in (number~) mode_sixsfred2::$18 ← (unumber~) mode_sixsfred2::$16 | (unumber~) mode_sixsfred2::$17
Adding number conversion cast (unumber) 2 in (number~) mode_sixsfred2::$21 ← (byte) mode_sixsfred2::ay#2 / (number) 2
Adding number conversion cast (unumber) mode_sixsfred2::$21 in (number~) mode_sixsfred2::$21 ← (byte) mode_sixsfred2::ay#2 / (unumber)(number) 2
Adding number conversion cast (unumber) 3 in (number~) mode_sixsfred2::$22 ← (unumber~) mode_sixsfred2::$21 & (number) 3
Adding number conversion cast (unumber) mode_sixsfred2::$22 in (number~) mode_sixsfred2::$22 ← (unumber~) mode_sixsfred2::$21 & (unumber)(number) 3
Adding number conversion cast (unumber) $1b in *((byte*) mode_sixsfred2::gfxb#2) ← (number) $1b
Adding number conversion cast (unumber) 3 in (number~) mode_8bpppixelcell::$6 ← (byte~) mode_8bpppixelcell::$5 | (number) 3
Adding number conversion cast (unumber) mode_8bpppixelcell::$6 in (number~) mode_8bpppixelcell::$6 ← (byte~) mode_8bpppixelcell::$5 | (unumber)(number) 3
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEA_START_HI#0) ← (number) 0
Adding number conversion cast (unumber) 1 in *((byte*) DTV_PLANEA_STEP#0) ← (number) 1
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEA_MODULO_LO#0) ← (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEA_MODULO_HI#0) ← (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEB_START_HI#0) ← (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEB_STEP#0) ← (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEB_MODULO_LO#0) ← (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEB_MODULO_HI#0) ← (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) BORDERCOL#0) ← (number) 0
Adding number conversion cast (unumber) $f in (number~) mode_8bpppixelcell::$14 ← (byte) mode_8bpppixelcell::ay#2 & (number) $f
Adding number conversion cast (unumber) mode_8bpppixelcell::$14 in (number~) mode_8bpppixelcell::$14 ← (byte) mode_8bpppixelcell::ay#2 & (unumber)(number) $f
Adding number conversion cast (unumber) $10 in (number~) mode_8bpppixelcell::$15 ← (unumber~) mode_8bpppixelcell::$14 * (number) $10
Adding number conversion cast (unumber) mode_8bpppixelcell::$15 in (number~) mode_8bpppixelcell::$15 ← (unumber~) mode_8bpppixelcell::$14 * (unumber)(number) $10
Adding number conversion cast (unumber) $f in (number~) mode_8bpppixelcell::$16 ← (byte) mode_8bpppixelcell::ax#2 & (number) $f
Adding number conversion cast (unumber) mode_8bpppixelcell::$16 in (number~) mode_8bpppixelcell::$16 ← (byte) mode_8bpppixelcell::ax#2 & (unumber)(number) $f
Adding number conversion cast (unumber) mode_8bpppixelcell::$17 in (number~) mode_8bpppixelcell::$17 ← (unumber~) mode_8bpppixelcell::$15 | (unumber~) mode_8bpppixelcell::$16
Adding number conversion cast (unumber) 0 in (byte) mode_8bpppixelcell::col#0 ← (number) 0
Adding number conversion cast (unumber) 0 in (byte) mode_8bpppixelcell::c#0 ← (number) 0
Adding number conversion cast (unumber) $80 in (number~) mode_8bpppixelcell::$20 ← (byte) mode_8bpppixelcell::bits#2 & (number) $80
Adding number conversion cast (unumber) mode_8bpppixelcell::$20 in (number~) mode_8bpppixelcell::$20 ← (byte) mode_8bpppixelcell::bits#2 & (unumber)(number) $80
Adding number conversion cast (unumber) 0 in (bool~) mode_8bpppixelcell::$21 ← (unumber~) mode_8bpppixelcell::$20 != (number) 0
Adding number conversion cast (unumber) 2 in (number~) mode_8bpppixelcell::$23 ← (byte) mode_8bpppixelcell::bits#3 * (number) 2
Adding number conversion cast (unumber) mode_8bpppixelcell::$23 in (number~) mode_8bpppixelcell::$23 ← (byte) mode_8bpppixelcell::bits#3 * (unumber)(number) 2
Adding number conversion cast (unumber) $20000 in (dword) mode_8bppchunkybmm::PLANEB#0 ← (number) $20000
Adding number conversion cast (unumber) 3 in (number~) mode_8bppchunkybmm::$8 ← (byte~) mode_8bppchunkybmm::$7 | (number) 3
Adding number conversion cast (unumber) mode_8bppchunkybmm::$8 in (number~) mode_8bppchunkybmm::$8 ← (byte~) mode_8bppchunkybmm::$7 | (unumber)(number) 3
Adding number conversion cast (unumber) 8 in *((byte*) DTV_PLANEB_STEP#0) ← (number) 8
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEB_MODULO_LO#0) ← (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) DTV_PLANEB_MODULO_HI#0) ← (number) 0
Adding number conversion cast (unumber) 0 in *((byte*) BORDERCOL#0) ← (number) 0
Adding number conversion cast (unumber) $4000 in (number~) mode_8bppchunkybmm::$16 ← (dword) mode_8bppchunkybmm::PLANEB#0 / (number) $4000
Adding number conversion cast (unumber) mode_8bppchunkybmm::$16 in (number~) mode_8bppchunkybmm::$16 ← (dword) mode_8bppchunkybmm::PLANEB#0 / (unumber)(number) $4000
Adding number conversion cast (unumber) $8000 in (bool~) mode_8bppchunkybmm::$23 ← (byte*) mode_8bppchunkybmm::gfxb#3 == (number) $8000
Successful SSA optimization PassNAddNumberTypeConversions
Added casts to value list in (byte[$10]) DTV_PALETTE_DEFAULT#0 ← (byte[$10]){ (byte)(number) 0, (byte)(number) $f, (byte)(number) $36, (byte)(number) $be, (byte)(number) $58, (byte)(number) $db, (byte)(number) $86, (byte)(number) $ff, (byte)(number) $29, (byte)(number) $26, (byte)(number) $3b, (byte)(number) 5, (byte)(number) 7, (byte)(number) $df, (byte)(number) $9a, (byte)(number) $a }
Added casts to value list in (byte[8]) keyboard_matrix_row_bitmask#0 ← (byte[8]){ (byte)(number) $fe, (byte)(number) $fd, (byte)(number) $fb, (byte)(number) $f7, (byte)(number) $ef, (byte)(number) $df, (byte)(number) $bf, (byte)(number) $7f }
Added casts to value list in (byte[8]) keyboard_matrix_col_bitmask#0 ← (byte[8]){ (byte)(number) 1, (byte)(number) 2, (byte)(number) 4, (byte)(number) 8, (byte)(number) $10, (byte)(number) $20, (byte)(number) $40, (byte)(number) $80 }
Added casts to value list in (byte[]) mode_stdbitmap::lines_x#0 ← (byte[]){ (byte)(number) 0, (byte)(number) $ff, (byte)(number) $ff, (byte)(number) 0, (byte)(number) 0, (byte)(number) $80, (byte)(number) $ff, (byte)(number) $80, (byte)(number) 0, (byte)(number) $80 }
Added casts to value list in (byte[]) mode_stdbitmap::lines_y#0 ← (byte[]){ (byte)(number) 0, (byte)(number) 0, (byte)(number) $c7, (byte)(number) $c7, (byte)(number) 0, (byte)(number) 0, (byte)(number) $64, (byte)(number) $c7, (byte)(number) $64, (byte)(number) 0 }
Added casts to value list in (byte[]) mode_sixsfred::row_bitmask#0 ← (byte[]){ (byte)(number) 0, (byte)(number) $55, (byte)(number) $aa, (byte)(number) $ff }
Added casts to value list in (byte[]) mode_sixsfred2::row_bitmask#0 ← (byte[]){ (byte)(number) 0, (byte)(number) $55, (byte)(number) $aa, (byte)(number) $ff }
Successful SSA optimization PassNAddInitializerValueListTypeCasts
Inlining cast (byte*) PROCPORT_DDR#0 ← (byte*)(number) 0
Inlining cast (byte) PROCPORT_DDR_MEMORY_MASK#0 ← (unumber)(number) 7
Inlining cast (byte*) PROCPORT#0 ← (byte*)(number) 1
Inlining cast (byte) PROCPORT_RAM_IO#0 ← (unumber)(number) 5
Inlining cast (byte) PROCPORT_RAM_CHARROM#0 ← (unumber)(number) 1
Inlining cast (byte*) RASTER#0 ← (byte*)(number) $d012
Inlining cast (byte*) BORDERCOL#0 ← (byte*)(number) $d020
Inlining cast (byte*) BGCOL#0 ← (byte*)(number) $d021
Inlining cast (byte*) BGCOL1#0 ← (byte*)(number) $d021
Inlining cast (byte*) BGCOL2#0 ← (byte*)(number) $d022
Inlining cast (byte*) BGCOL3#0 ← (byte*)(number) $d023
Inlining cast (byte*) BGCOL4#0 ← (byte*)(number) $d024
Inlining cast (byte*) VIC_CONTROL#0 ← (byte*)(number) $d011
Inlining cast (byte) VIC_ECM#0 ← (unumber)(number) $40
Inlining cast (byte) VIC_BMM#0 ← (unumber)(number) $20
Inlining cast (byte) VIC_DEN#0 ← (unumber)(number) $10
Inlining cast (byte) VIC_RSEL#0 ← (unumber)(number) 8
Inlining cast (byte*) VIC_CONTROL2#0 ← (byte*)(number) $d016
Inlining cast (byte) VIC_MCM#0 ← (unumber)(number) $10
Inlining cast (byte) VIC_CSEL#0 ← (unumber)(number) 8
Inlining cast (byte*) VIC_MEMORY#0 ← (byte*)(number) $d018
Inlining cast (byte*) COLS#0 ← (byte*)(number) $d800
Inlining cast (byte*) CIA1_PORT_A#0 ← (byte*)(number) $dc00
Inlining cast (byte*) CIA1_PORT_B#0 ← (byte*)(number) $dc01
Inlining cast (byte*) CIA2_PORT_A#0 ← (byte*)(number) $dd00
Inlining cast (byte*) CIA2_PORT_A_DDR#0 ← (byte*)(number) $dd02
Inlining cast (byte) BLACK#0 ← (unumber)(number) 0
Inlining cast (byte) GREEN#0 ← (unumber)(number) 5
Inlining cast (byte) BLUE#0 ← (unumber)(number) 6
Inlining cast (byte) LIGHT_GREEN#0 ← (unumber)(number) $d
Inlining cast (byte*) DTV_FEATURE#0 ← (byte*)(number) $d03f
Inlining cast (byte) DTV_FEATURE_ENABLE#0 ← (unumber)(number) 1
Inlining cast (byte*) DTV_CONTROL#0 ← (byte*)(number) $d03c
Inlining cast (byte) DTV_LINEAR#0 ← (unumber)(number) 1
Inlining cast (byte) DTV_BORDER_OFF#0 ← (unumber)(number) 2
Inlining cast (byte) DTV_HIGHCOLOR#0 ← (unumber)(number) 4
Inlining cast (byte) DTV_OVERSCAN#0 ← (unumber)(number) 8
Inlining cast (byte) DTV_COLORRAM_OFF#0 ← (unumber)(number) $10
Inlining cast (byte) DTV_CHUNKY#0 ← (unumber)(number) $40
Inlining cast (byte*) DTV_PALETTE#0 ← (byte*)(number) $d200
Inlining cast (byte*) DTV_PLANEA_START_LO#0 ← (byte*)(number) $d03a
Inlining cast (byte*) DTV_PLANEA_START_MI#0 ← (byte*)(number) $d03b
Inlining cast (byte*) DTV_PLANEA_START_HI#0 ← (byte*)(number) $d045
Inlining cast (byte*) DTV_PLANEA_STEP#0 ← (byte*)(number) $d046
Inlining cast (byte*) DTV_PLANEA_MODULO_LO#0 ← (byte*)(number) $d038
Inlining cast (byte*) DTV_PLANEA_MODULO_HI#0 ← (byte*)(number) $d039
Inlining cast (byte*) DTV_PLANEB_START_LO#0 ← (byte*)(number) $d049
Inlining cast (byte*) DTV_PLANEB_START_MI#0 ← (byte*)(number) $d04a
Inlining cast (byte*) DTV_PLANEB_START_HI#0 ← (byte*)(number) $d04b
Inlining cast (byte*) DTV_PLANEB_STEP#0 ← (byte*)(number) $d04c
Inlining cast (byte*) DTV_PLANEB_MODULO_LO#0 ← (byte*)(number) $d047
Inlining cast (byte*) DTV_PLANEB_MODULO_HI#0 ← (byte*)(number) $d048
Inlining cast (byte*) DTV_COLOR_BANK_LO#0 ← (byte*)(number) $d036
Inlining cast (byte*) DTV_COLOR_BANK_HI#0 ← (byte*)(number) $d037
Inlining cast (dword) DTV_COLOR_BANK_DEFAULT#0 ← (unumber)(number) $1d800
Inlining cast (byte*) DTV_GRAPHICS_VIC_BANK#0 ← (byte*)(number) $d03d
Inlining cast (byte*) dtvSetCpuBankSegment1::cpuBank#0 ← (byte*)(number) $ff
Inlining cast (byte*~) memset::$2 ← (byte*)(void*) memset::str#2
Inlining cast (byte*) memset::dst#0 ← (byte*)(void*) memset::str#2
Inlining cast (byte*) print_screen#0 ← (byte*)(number) $400
Inlining cast (word) memset::num#0 ← (unumber)(number) $3e8
Inlining cast (byte) KEY_3#0 ← (unumber)(number) 8
Inlining cast (byte) KEY_A#0 ← (unumber)(number) $a
Inlining cast (byte) KEY_4#0 ← (unumber)(number) $b
Inlining cast (byte) KEY_E#0 ← (unumber)(number) $e
Inlining cast (byte) KEY_D#0 ← (unumber)(number) $12
Inlining cast (byte) KEY_6#0 ← (unumber)(number) $13
Inlining cast (byte) KEY_C#0 ← (unumber)(number) $14
Inlining cast (byte) KEY_7#0 ← (unumber)(number) $18
Inlining cast (byte) KEY_8#0 ← (unumber)(number) $1b
Inlining cast (byte) KEY_B#0 ← (unumber)(number) $1c
Inlining cast (byte) KEY_H#0 ← (unumber)(number) $1d
Inlining cast (byte) KEY_U#0 ← (unumber)(number) $1e
Inlining cast (byte) KEY_0#0 ← (unumber)(number) $23
Inlining cast (byte) KEY_O#0 ← (unumber)(number) $26
Inlining cast (byte) KEY_L#0 ← (unumber)(number) $2a
Inlining cast (byte) KEY_1#0 ← (unumber)(number) $38
Inlining cast (byte) KEY_2#0 ← (unumber)(number) $3b
Inlining cast (byte) KEY_SPACE#0 ← (unumber)(number) $3c
Inlining cast (byte) bitmap_init::bits#0 ← (unumber)(number) $80
Inlining cast (byte) bitmap_init::bits#2 ← (unumber)(number) $80
Inlining cast (byte*) bitmap_init::yoffs#0 ← (byte*)(number) 0
Inlining cast *((byte*) bitmap_clear::bitmap#2) ← (unumber)(number) 0
Inlining cast (byte*) bitmap_plot::plotter#0 ← (byte*)(word~) bitmap_plot::$0
Inlining cast (byte*) menu::SCREEN#0 ← (byte*)(number) $8000
Inlining cast (byte*) menu::CHARSET#0 ← (byte*)(number) $9800
Inlining cast (dword~) menu::$0 ← (dword)(byte*) menu::CHARSET#0
Inlining cast (byte~) menu::$2 ← (byte)(unumber~) menu::$1
Inlining cast (word~) menu::$4 ← (word)(unumber~) menu::$3
Inlining cast (word~) menu::$7 ← (word)(unumber~) menu::$6
Inlining cast *((byte*) DTV_CONTROL#0) ← (unumber)(number) 0
Inlining cast *((byte*) CIA2_PORT_A_DDR#0) ← (unumber)(number) 3
Inlining cast (word~) menu::$9 ← (word)(byte*) menu::CHARSET#0
Inlining cast (byte~) menu::$11 ← (byte)(unumber~) menu::$10
Inlining cast (word~) menu::$15 ← (word)(byte*) menu::SCREEN#0
Inlining cast (word~) menu::$18 ← (word)(byte*) menu::CHARSET#0
Inlining cast (byte~) menu::$22 ← (byte)(unumber~) menu::$21
Inlining cast *((byte*) BGCOL#0) ← (unumber)(number) 0
Inlining cast *((byte*) BORDERCOL#0) ← (unumber)(number) 0
Inlining cast (byte) dtv_control#15 ← (unumber)(number) 0
Inlining cast (byte) mode_ctrl::ctrl#7 ← (unumber)(number) 0
Inlining cast (byte*) mode_stdchar::SCREEN#0 ← (byte*)(number) $8000
Inlining cast (byte*) mode_stdchar::CHARSET#0 ← (byte*)(number) $9000
Inlining cast (byte*) mode_stdchar::COLORS#0 ← (byte*)(number) $d800
Inlining cast (dword~) mode_stdchar::$0 ← (dword)(byte*) mode_stdchar::CHARSET#0
Inlining cast (byte~) mode_stdchar::$2 ← (byte)(unumber~) mode_stdchar::$1
Inlining cast (word~) mode_stdchar::$4 ← (word)(unumber~) mode_stdchar::$3
Inlining cast (word~) mode_stdchar::$7 ← (word)(unumber~) mode_stdchar::$6
Inlining cast (byte) dtv_control#18 ← (unumber)(number) 0
Inlining cast *((byte*) DTV_CONTROL#0) ← (unumber)(number) 0
Inlining cast *((byte*) CIA2_PORT_A_DDR#0) ← (unumber)(number) 3
Inlining cast (word~) mode_stdchar::$9 ← (word)(byte*) mode_stdchar::CHARSET#0
Inlining cast (byte~) mode_stdchar::$11 ← (byte)(unumber~) mode_stdchar::$10
Inlining cast (word~) mode_stdchar::$15 ← (word)(byte*) mode_stdchar::SCREEN#0
Inlining cast (word~) mode_stdchar::$18 ← (word)(byte*) mode_stdchar::CHARSET#0
Inlining cast (byte~) mode_stdchar::$22 ← (byte)(unumber~) mode_stdchar::$21
Inlining cast *((byte*) BGCOL#0) ← (unumber)(number) 0
Inlining cast *((byte*) BORDERCOL#0) ← (unumber)(number) 0
Inlining cast (byte*) mode_ecmchar::SCREEN#0 ← (byte*)(number) $8000
Inlining cast (byte*) mode_ecmchar::CHARSET#0 ← (byte*)(number) $9000
Inlining cast (byte*) mode_ecmchar::COLORS#0 ← (byte*)(number) $d800
Inlining cast (dword~) mode_ecmchar::$0 ← (dword)(byte*) mode_ecmchar::CHARSET#0
Inlining cast (byte~) mode_ecmchar::$2 ← (byte)(unumber~) mode_ecmchar::$1
Inlining cast (word~) mode_ecmchar::$4 ← (word)(unumber~) mode_ecmchar::$3
Inlining cast (word~) mode_ecmchar::$7 ← (word)(unumber~) mode_ecmchar::$6
Inlining cast (byte) dtv_control#21 ← (unumber)(number) 0
Inlining cast *((byte*) DTV_CONTROL#0) ← (unumber)(number) 0
Inlining cast *((byte*) CIA2_PORT_A_DDR#0) ← (unumber)(number) 3
Inlining cast (word~) mode_ecmchar::$9 ← (word)(byte*) mode_ecmchar::CHARSET#0
Inlining cast (byte~) mode_ecmchar::$11 ← (byte)(unumber~) mode_ecmchar::$10
Inlining cast (word~) mode_ecmchar::$16 ← (word)(byte*) mode_ecmchar::SCREEN#0
Inlining cast (word~) mode_ecmchar::$19 ← (word)(byte*) mode_ecmchar::CHARSET#0
Inlining cast (byte~) mode_ecmchar::$23 ← (byte)(unumber~) mode_ecmchar::$22
Inlining cast *((byte*) BORDERCOL#0) ← (unumber)(number) 0
Inlining cast *((byte*) BGCOL1#0) ← (unumber)(number) 0
Inlining cast *((byte*) BGCOL2#0) ← (unumber)(number) 2
Inlining cast *((byte*) BGCOL3#0) ← (unumber)(number) 5
Inlining cast *((byte*) BGCOL4#0) ← (unumber)(number) 6
Inlining cast (byte*) mode_mcchar::SCREEN#0 ← (byte*)(number) $8000
Inlining cast (byte*) mode_mcchar::CHARSET#0 ← (byte*)(number) $9000
Inlining cast (byte*) mode_mcchar::COLORS#0 ← (byte*)(number) $d800
Inlining cast (dword~) mode_mcchar::$0 ← (dword)(byte*) mode_mcchar::CHARSET#0
Inlining cast (byte~) mode_mcchar::$2 ← (byte)(unumber~) mode_mcchar::$1
Inlining cast (word~) mode_mcchar::$4 ← (word)(unumber~) mode_mcchar::$3
Inlining cast (word~) mode_mcchar::$7 ← (word)(unumber~) mode_mcchar::$6
Inlining cast (byte) dtv_control#24 ← (unumber)(number) 0
Inlining cast *((byte*) DTV_CONTROL#0) ← (unumber)(number) 0
Inlining cast *((byte*) CIA2_PORT_A_DDR#0) ← (unumber)(number) 3
Inlining cast (word~) mode_mcchar::$9 ← (word)(byte*) mode_mcchar::CHARSET#0
Inlining cast (byte~) mode_mcchar::$11 ← (byte)(unumber~) mode_mcchar::$10
Inlining cast (word~) mode_mcchar::$16 ← (word)(byte*) mode_mcchar::SCREEN#0
Inlining cast (word~) mode_mcchar::$19 ← (word)(byte*) mode_mcchar::CHARSET#0
Inlining cast (byte~) mode_mcchar::$23 ← (byte)(unumber~) mode_mcchar::$22
Inlining cast *((byte*) BORDERCOL#0) ← (unumber)(number) 0
Inlining cast (byte*) mode_stdbitmap::SCREEN#0 ← (byte*)(number) $4000
Inlining cast (byte*) mode_stdbitmap::BITMAP#0 ← (byte*)(number) $6000
Inlining cast (dword~) mode_stdbitmap::$0 ← (dword)(byte*) mode_stdbitmap::BITMAP#0
Inlining cast (byte~) mode_stdbitmap::$2 ← (byte)(unumber~) mode_stdbitmap::$1
Inlining cast (byte) dtv_control#27 ← (unumber)(number) 0
Inlining cast *((byte*) DTV_CONTROL#0) ← (unumber)(number) 0
Inlining cast *((byte*) CIA2_PORT_A_DDR#0) ← (unumber)(number) 3
Inlining cast (word~) mode_stdbitmap::$3 ← (word)(byte*) mode_stdbitmap::BITMAP#0
Inlining cast (byte~) mode_stdbitmap::$5 ← (byte)(unumber~) mode_stdbitmap::$4
Inlining cast (word~) mode_stdbitmap::$10 ← (word)(byte*) mode_stdbitmap::SCREEN#0
Inlining cast (word~) mode_stdbitmap::$13 ← (word)(byte*) mode_stdbitmap::BITMAP#0
Inlining cast (byte~) mode_stdbitmap::$17 ← (byte)(unumber~) mode_stdbitmap::$16
Inlining cast (byte) mode_stdbitmap::lines_cnt#0 ← (unumber)(number) 9
Inlining cast (byte) mode_stdbitmap::l#0 ← (unumber)(number) 0
Inlining cast (byte*) mode_hicolstdchar::SCREEN#0 ← (byte*)(number) $8000
Inlining cast (byte*) mode_hicolstdchar::CHARSET#0 ← (byte*)(number) $9000
Inlining cast (byte*) mode_hicolstdchar::COLORS#0 ← (byte*)(number) $8400
Inlining cast (dword~) mode_hicolstdchar::$0 ← (dword)(byte*) mode_hicolstdchar::CHARSET#0
Inlining cast (byte~) mode_hicolstdchar::$2 ← (byte)(unumber~) mode_hicolstdchar::$1
Inlining cast (word~) mode_hicolstdchar::$4 ← (word)(byte*~) mode_hicolstdchar::$3
Inlining cast (word~) mode_hicolstdchar::$7 ← (word)(byte*~) mode_hicolstdchar::$6
Inlining cast *((byte*) CIA2_PORT_A_DDR#0) ← (unumber)(number) 3
Inlining cast (word~) mode_hicolstdchar::$9 ← (word)(byte*) mode_hicolstdchar::CHARSET#0
Inlining cast (byte~) mode_hicolstdchar::$11 ← (byte)(unumber~) mode_hicolstdchar::$10
Inlining cast (word~) mode_hicolstdchar::$15 ← (word)(byte*) mode_hicolstdchar::SCREEN#0
Inlining cast (word~) mode_hicolstdchar::$18 ← (word)(byte*) mode_hicolstdchar::CHARSET#0
Inlining cast (byte~) mode_hicolstdchar::$22 ← (byte)(unumber~) mode_hicolstdchar::$21
Inlining cast *((byte*) BGCOL#0) ← (unumber)(number) 0
Inlining cast *((byte*) BORDERCOL#0) ← (unumber)(number) 0
Inlining cast (byte*) mode_hicolecmchar::SCREEN#0 ← (byte*)(number) $8000
Inlining cast (byte*) mode_hicolecmchar::CHARSET#0 ← (byte*)(number) $9000
Inlining cast (byte*) mode_hicolecmchar::COLORS#0 ← (byte*)(number) $8400
Inlining cast (dword~) mode_hicolecmchar::$0 ← (dword)(byte*) mode_hicolecmchar::CHARSET#0
Inlining cast (byte~) mode_hicolecmchar::$2 ← (byte)(unumber~) mode_hicolecmchar::$1
Inlining cast (word~) mode_hicolecmchar::$4 ← (word)(byte*~) mode_hicolecmchar::$3
Inlining cast (word~) mode_hicolecmchar::$7 ← (word)(byte*~) mode_hicolecmchar::$6
Inlining cast *((byte*) CIA2_PORT_A_DDR#0) ← (unumber)(number) 3
Inlining cast (word~) mode_hicolecmchar::$9 ← (word)(byte*) mode_hicolecmchar::CHARSET#0
Inlining cast (byte~) mode_hicolecmchar::$11 ← (byte)(unumber~) mode_hicolecmchar::$10
Inlining cast (word~) mode_hicolecmchar::$16 ← (word)(byte*) mode_hicolecmchar::SCREEN#0
Inlining cast (word~) mode_hicolecmchar::$19 ← (word)(byte*) mode_hicolecmchar::CHARSET#0
Inlining cast (byte~) mode_hicolecmchar::$23 ← (byte)(unumber~) mode_hicolecmchar::$22
Inlining cast *((byte*) BORDERCOL#0) ← (unumber)(number) 0
Inlining cast *((byte*) BGCOL1#0) ← (unumber)(number) $50
Inlining cast *((byte*) BGCOL2#0) ← (unumber)(number) $54
Inlining cast *((byte*) BGCOL3#0) ← (unumber)(number) $58
Inlining cast *((byte*) BGCOL4#0) ← (unumber)(number) $5c
Inlining cast (byte*) mode_hicolmcchar::SCREEN#0 ← (byte*)(number) $8000
Inlining cast (byte*) mode_hicolmcchar::CHARSET#0 ← (byte*)(number) $9000
Inlining cast (byte*) mode_hicolmcchar::COLORS#0 ← (byte*)(number) $8400
Inlining cast (dword~) mode_hicolmcchar::$0 ← (dword)(byte*) mode_hicolmcchar::CHARSET#0
Inlining cast (byte~) mode_hicolmcchar::$2 ← (byte)(unumber~) mode_hicolmcchar::$1
Inlining cast (word~) mode_hicolmcchar::$4 ← (word)(byte*~) mode_hicolmcchar::$3
Inlining cast (word~) mode_hicolmcchar::$7 ← (word)(byte*~) mode_hicolmcchar::$6
Inlining cast *((byte*) CIA2_PORT_A_DDR#0) ← (unumber)(number) 3
Inlining cast (word~) mode_hicolmcchar::$9 ← (word)(byte*) mode_hicolmcchar::CHARSET#0
Inlining cast (byte~) mode_hicolmcchar::$11 ← (byte)(unumber~) mode_hicolmcchar::$10
Inlining cast (word~) mode_hicolmcchar::$16 ← (word)(byte*) mode_hicolmcchar::SCREEN#0
Inlining cast (word~) mode_hicolmcchar::$19 ← (word)(byte*) mode_hicolmcchar::CHARSET#0
Inlining cast (byte~) mode_hicolmcchar::$23 ← (byte)(unumber~) mode_hicolmcchar::$22
Inlining cast *((byte*) BORDERCOL#0) ← (unumber)(number) 0
Inlining cast *((byte*) BGCOL1#0) ← (unumber)(number) $50
Inlining cast *((byte*) BGCOL2#0) ← (unumber)(number) $54
Inlining cast *((byte*) BGCOL3#0) ← (unumber)(number) $58
Inlining cast (byte*) mode_twoplanebitmap::PLANEA#0 ← (byte*)(number) $4000
Inlining cast (byte*) mode_twoplanebitmap::PLANEB#0 ← (byte*)(number) $6000
Inlining cast (byte*) mode_twoplanebitmap::COLORS#0 ← (byte*)(number) $8000
Inlining cast *((byte*) DTV_PLANEA_START_HI#0) ← (unumber)(number) 0
Inlining cast *((byte*) DTV_PLANEA_STEP#0) ← (unumber)(number) 1
Inlining cast *((byte*) DTV_PLANEA_MODULO_LO#0) ← (unumber)(number) 0
Inlining cast *((byte*) DTV_PLANEA_MODULO_HI#0) ← (unumber)(number) 0
Inlining cast *((byte*) DTV_PLANEB_START_HI#0) ← (unumber)(number) 0
Inlining cast *((byte*) DTV_PLANEB_STEP#0) ← (unumber)(number) 1
Inlining cast *((byte*) DTV_PLANEB_MODULO_LO#0) ← (unumber)(number) 0
Inlining cast *((byte*) DTV_PLANEB_MODULO_HI#0) ← (unumber)(number) 0
Inlining cast *((byte*) BORDERCOL#0) ← (unumber)(number) 0
Inlining cast *((byte*) BGCOL1#0) ← (unumber)(number) $70
Inlining cast *((byte*) BGCOL2#0) ← (unumber)(number) $d4
Inlining cast *((byte*) mode_twoplanebitmap::gfxa#3) ← (unumber)(number) 0
Inlining cast *((byte*) mode_twoplanebitmap::gfxa#4) ← (unumber)(number) $ff
Inlining cast *((byte*) mode_twoplanebitmap::gfxb#2) ← (unumber)(number) $f
Inlining cast (byte*) mode_sixsfred::PLANEA#0 ← (byte*)(number) $4000
Inlining cast (byte*) mode_sixsfred::PLANEB#0 ← (byte*)(number) $6000
Inlining cast (byte*) mode_sixsfred::COLORS#0 ← (byte*)(number) $8000
Inlining cast *((byte*) DTV_PLANEA_START_HI#0) ← (unumber)(number) 0
Inlining cast *((byte*) DTV_PLANEA_STEP#0) ← (unumber)(number) 1
Inlining cast *((byte*) DTV_PLANEA_MODULO_LO#0) ← (unumber)(number) 0
Inlining cast *((byte*) DTV_PLANEA_MODULO_HI#0) ← (unumber)(number) 0
Inlining cast *((byte*) DTV_PLANEB_START_HI#0) ← (unumber)(number) 0
Inlining cast *((byte*) DTV_PLANEB_STEP#0) ← (unumber)(number) 1
Inlining cast *((byte*) DTV_PLANEB_MODULO_LO#0) ← (unumber)(number) 0
Inlining cast *((byte*) DTV_PLANEB_MODULO_HI#0) ← (unumber)(number) 0
Inlining cast *((byte*) BORDERCOL#0) ← (unumber)(number) 0
Inlining cast *((byte*) mode_sixsfred::gfxb#2) ← (unumber)(number) $1b
Inlining cast (byte*) mode_sixsfred2::PLANEA#0 ← (byte*)(number) $4000
Inlining cast (byte*) mode_sixsfred2::PLANEB#0 ← (byte*)(number) $6000
Inlining cast (byte*) mode_sixsfred2::COLORS#0 ← (byte*)(number) $8000
Inlining cast *((byte*) DTV_PLANEA_START_HI#0) ← (unumber)(number) 0
Inlining cast *((byte*) DTV_PLANEA_STEP#0) ← (unumber)(number) 1
Inlining cast *((byte*) DTV_PLANEA_MODULO_LO#0) ← (unumber)(number) 0
Inlining cast *((byte*) DTV_PLANEA_MODULO_HI#0) ← (unumber)(number) 0
Inlining cast *((byte*) DTV_PLANEB_START_HI#0) ← (unumber)(number) 0
Inlining cast *((byte*) DTV_PLANEB_STEP#0) ← (unumber)(number) 1
Inlining cast *((byte*) DTV_PLANEB_MODULO_LO#0) ← (unumber)(number) 0
Inlining cast *((byte*) DTV_PLANEB_MODULO_HI#0) ← (unumber)(number) 0
Inlining cast *((byte*) BORDERCOL#0) ← (unumber)(number) 0
Inlining cast *((byte*) mode_sixsfred2::gfxb#2) ← (unumber)(number) $1b
Inlining cast (byte*) mode_8bpppixelcell::PLANEA#0 ← (byte*)(number) $3c00
Inlining cast (byte*) mode_8bpppixelcell::PLANEB#0 ← (byte*)(number) $4000
Inlining cast *((byte*) DTV_PLANEA_START_HI#0) ← (unumber)(number) 0
Inlining cast *((byte*) DTV_PLANEA_STEP#0) ← (unumber)(number) 1
Inlining cast *((byte*) DTV_PLANEA_MODULO_LO#0) ← (unumber)(number) 0
Inlining cast *((byte*) DTV_PLANEA_MODULO_HI#0) ← (unumber)(number) 0
Inlining cast *((byte*) DTV_PLANEB_START_HI#0) ← (unumber)(number) 0
Inlining cast *((byte*) DTV_PLANEB_STEP#0) ← (unumber)(number) 0
Inlining cast *((byte*) DTV_PLANEB_MODULO_LO#0) ← (unumber)(number) 0
Inlining cast *((byte*) DTV_PLANEB_MODULO_HI#0) ← (unumber)(number) 0
Inlining cast *((byte*) BORDERCOL#0) ← (unumber)(number) 0
Inlining cast (byte*) mode_8bpppixelcell::CHARGEN#0 ← (byte*)(number) $d000
Inlining cast (byte) mode_8bpppixelcell::col#0 ← (unumber)(number) 0
Inlining cast (byte) mode_8bpppixelcell::c#0 ← (unumber)(number) 0
Inlining cast (dword) mode_8bppchunkybmm::PLANEB#0 ← (unumber)(number) $20000
Inlining cast *((byte*) DTV_PLANEB_STEP#0) ← (unumber)(number) 8
Inlining cast *((byte*) DTV_PLANEB_MODULO_LO#0) ← (unumber)(number) 0
Inlining cast *((byte*) DTV_PLANEB_MODULO_HI#0) ← (unumber)(number) 0
Inlining cast *((byte*) BORDERCOL#0) ← (unumber)(number) 0
Inlining cast (byte~) mode_8bppchunkybmm::$17 ← (byte)(unumber~) mode_8bppchunkybmm::$16
Inlining cast (byte*) mode_8bppchunkybmm::gfxb#0 ← (byte*)(number) $4000
Inlining cast (byte~) mode_8bppchunkybmm::$27 ← (byte)(word~) mode_8bppchunkybmm::$26
Inlining cast (byte*) mode_8bppchunkybmm::gfxb#2 ← (byte*)(number) $4000
Inlining cast (byte~) mode_8bppchunkybmm::$19 ← (byte)(number) $4000/(number) $4000
Successful SSA optimization Pass2InlineCast
Simplifying constant pointer cast (byte*) 0
Simplifying constant integer cast 7
Simplifying constant pointer cast (byte*) 1
Simplifying constant integer cast 5
Simplifying constant integer cast 1
Simplifying constant pointer cast (byte*) 53266
Simplifying constant pointer cast (byte*) 53280
Simplifying constant pointer cast (byte*) 53281
Simplifying constant pointer cast (byte*) 53281
Simplifying constant pointer cast (byte*) 53282
Simplifying constant pointer cast (byte*) 53283
Simplifying constant pointer cast (byte*) 53284
Simplifying constant pointer cast (byte*) 53265
Simplifying constant integer cast $40
Simplifying constant integer cast $20
Simplifying constant integer cast $10
Simplifying constant integer cast 8
Simplifying constant pointer cast (byte*) 53270
Simplifying constant integer cast $10
Simplifying constant integer cast 8
Simplifying constant pointer cast (byte*) 53272
Simplifying constant pointer cast (byte*) 55296
Simplifying constant pointer cast (byte*) 56320
Simplifying constant pointer cast (byte*) 56321
Simplifying constant pointer cast (byte*) 56576
Simplifying constant pointer cast (byte*) 56578
Simplifying constant integer cast 0
Simplifying constant integer cast 5
Simplifying constant integer cast 6
Simplifying constant integer cast $d
Simplifying constant pointer cast (byte*) 53311
Simplifying constant integer cast 1
Simplifying constant pointer cast (byte*) 53308
Simplifying constant integer cast 1
Simplifying constant integer cast 2
Simplifying constant integer cast 4
Simplifying constant integer cast 8
Simplifying constant integer cast $10
Simplifying constant integer cast $40
Simplifying constant pointer cast (byte*) 53760
Simplifying constant integer cast 0
Simplifying constant integer cast $f
Simplifying constant integer cast $36
Simplifying constant integer cast $be
Simplifying constant integer cast $58
Simplifying constant integer cast $db
Simplifying constant integer cast $86
Simplifying constant integer cast $ff
Simplifying constant integer cast $29
Simplifying constant integer cast $26
Simplifying constant integer cast $3b
Simplifying constant integer cast 5
Simplifying constant integer cast 7
Simplifying constant integer cast $df
Simplifying constant integer cast $9a
Simplifying constant integer cast $a
Simplifying constant pointer cast (byte*) 53306
Simplifying constant pointer cast (byte*) 53307
Simplifying constant pointer cast (byte*) 53317
Simplifying constant pointer cast (byte*) 53318
Simplifying constant pointer cast (byte*) 53304
Simplifying constant pointer cast (byte*) 53305
Simplifying constant pointer cast (byte*) 53321
Simplifying constant pointer cast (byte*) 53322
Simplifying constant pointer cast (byte*) 53323
Simplifying constant pointer cast (byte*) 53324
Simplifying constant pointer cast (byte*) 53319
Simplifying constant pointer cast (byte*) 53320
Simplifying constant pointer cast (byte*) 53302
Simplifying constant pointer cast (byte*) 53303
Simplifying constant integer cast $1d800
Simplifying constant pointer cast (byte*) 53309
Simplifying constant pointer cast (byte*) 255
Simplifying constant integer cast 0
Simplifying constant pointer cast (byte*) 1024
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast $28
Simplifying constant integer cast $3e8
Simplifying constant integer cast 8
Simplifying constant integer cast $a
Simplifying constant integer cast $b
Simplifying constant integer cast $e
Simplifying constant integer cast $12
Simplifying constant integer cast $13
Simplifying constant integer cast $14
Simplifying constant integer cast $18
Simplifying constant integer cast $1b
Simplifying constant integer cast $1c
Simplifying constant integer cast $1d
Simplifying constant integer cast $1e
Simplifying constant integer cast $23
Simplifying constant integer cast $26
Simplifying constant integer cast $2a
Simplifying constant integer cast $38
Simplifying constant integer cast $3b
Simplifying constant integer cast $3c
Simplifying constant integer cast $fe
Simplifying constant integer cast $fd
Simplifying constant integer cast $fb
Simplifying constant integer cast $f7
Simplifying constant integer cast $ef
Simplifying constant integer cast $df
Simplifying constant integer cast $bf
Simplifying constant integer cast $7f
Simplifying constant integer cast 1
Simplifying constant integer cast 2
Simplifying constant integer cast 4
Simplifying constant integer cast 8
Simplifying constant integer cast $10
Simplifying constant integer cast $20
Simplifying constant integer cast $40
Simplifying constant integer cast $80
Simplifying constant integer cast 7
Simplifying constant integer cast 3
Simplifying constant integer cast $80
Simplifying constant integer cast $f8
Simplifying constant integer cast 1
Simplifying constant integer cast 0
Simplifying constant integer cast $80
Simplifying constant pointer cast (byte*) 0
Simplifying constant integer cast 7
Simplifying constant integer cast 7
Simplifying constant integer cast 7
Simplifying constant integer cast *((byte[$100]) bitmap_plot_xhi#0 + (unumber)(number) 0)
Simplifying constant integer cast 0
Simplifying constant integer cast *((byte[$100]) bitmap_plot_xlo#0 + (unumber)(number) 0)
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast *((byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4)
Simplifying constant integer cast *((byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4)
Simplifying constant integer cast *((byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4)
Simplifying constant integer cast *((byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4)
Simplifying constant integer cast 1
Simplifying constant integer cast 1
Simplifying constant integer cast 1
Simplifying constant integer cast 1
Simplifying constant integer cast 1
Simplifying constant integer cast 1
Simplifying constant integer cast 1
Simplifying constant integer cast 1
Simplifying constant pointer cast (byte*) 32768
Simplifying constant pointer cast (byte*) 38912
Simplifying constant integer cast $10000
Simplifying constant integer cast $400
Simplifying constant integer cast $400
Simplifying constant integer cast 0
Simplifying constant integer cast 3
Simplifying constant integer cast $4000
Simplifying constant integer cast 3
Simplifying constant integer cast 3
Simplifying constant integer cast $3fff
Simplifying constant integer cast $40
Simplifying constant integer cast $3fff
Simplifying constant integer cast $400
Simplifying constant integer cast $3e8
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast $ff
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant pointer cast (byte*) 32768
Simplifying constant pointer cast (byte*) 36864
Simplifying constant pointer cast (byte*) 55296
Simplifying constant integer cast $10000
Simplifying constant integer cast $400
Simplifying constant integer cast $400
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 3
Simplifying constant integer cast $4000
Simplifying constant integer cast 3
Simplifying constant integer cast 3
Simplifying constant integer cast $3fff
Simplifying constant integer cast $40
Simplifying constant integer cast $3fff
Simplifying constant integer cast $400
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast $f
Simplifying constant integer cast $f
Simplifying constant integer cast $10
Simplifying constant integer cast $f
Simplifying constant pointer cast (byte*) 32768
Simplifying constant pointer cast (byte*) 36864
Simplifying constant pointer cast (byte*) 55296
Simplifying constant integer cast $10000
Simplifying constant integer cast $400
Simplifying constant integer cast $400
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 3
Simplifying constant integer cast $4000
Simplifying constant integer cast 3
Simplifying constant integer cast 3
Simplifying constant integer cast $3fff
Simplifying constant integer cast $40
Simplifying constant integer cast $3fff
Simplifying constant integer cast $400
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 2
Simplifying constant integer cast 5
Simplifying constant integer cast 6
Simplifying constant integer cast $f
Simplifying constant integer cast $f
Simplifying constant integer cast $10
Simplifying constant integer cast $f
Simplifying constant pointer cast (byte*) 32768
Simplifying constant pointer cast (byte*) 36864
Simplifying constant pointer cast (byte*) 55296
Simplifying constant integer cast $10000
Simplifying constant integer cast $400
Simplifying constant integer cast $400
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 3
Simplifying constant integer cast $4000
Simplifying constant integer cast 3
Simplifying constant integer cast 3
Simplifying constant integer cast $3fff
Simplifying constant integer cast $40
Simplifying constant integer cast $3fff
Simplifying constant integer cast $400
Simplifying constant integer cast 0
Simplifying constant integer cast $f
Simplifying constant integer cast $f
Simplifying constant integer cast $10
Simplifying constant integer cast $f
Simplifying constant pointer cast (byte*) 16384
Simplifying constant pointer cast (byte*) 24576
Simplifying constant integer cast $10000
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 3
Simplifying constant integer cast $4000
Simplifying constant integer cast 3
Simplifying constant integer cast 3
Simplifying constant integer cast $3fff
Simplifying constant integer cast $40
Simplifying constant integer cast $3fff
Simplifying constant integer cast $400
Simplifying constant integer cast $f
Simplifying constant integer cast $f
Simplifying constant integer cast $10
Simplifying constant integer cast 0
Simplifying constant integer cast $ff
Simplifying constant integer cast $ff
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast $80
Simplifying constant integer cast $ff
Simplifying constant integer cast $80
Simplifying constant integer cast 0
Simplifying constant integer cast $80
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast $c7
Simplifying constant integer cast $c7
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast $64
Simplifying constant integer cast $c7
Simplifying constant integer cast $64
Simplifying constant integer cast 0
Simplifying constant integer cast 9
Simplifying constant integer cast 0
Simplifying constant integer cast 1
Simplifying constant integer cast 1
Simplifying constant pointer cast (byte*) 32768
Simplifying constant pointer cast (byte*) 36864
Simplifying constant pointer cast (byte*) 33792
Simplifying constant integer cast $10000
Simplifying constant integer cast $400
Simplifying constant integer cast $400
Simplifying constant integer cast 3
Simplifying constant integer cast $4000
Simplifying constant integer cast 3
Simplifying constant integer cast 3
Simplifying constant integer cast $3fff
Simplifying constant integer cast $40
Simplifying constant integer cast $3fff
Simplifying constant integer cast $400
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast $f
Simplifying constant integer cast $10
Simplifying constant integer cast $f
Simplifying constant pointer cast (byte*) 32768
Simplifying constant pointer cast (byte*) 36864
Simplifying constant pointer cast (byte*) 33792
Simplifying constant integer cast $10000
Simplifying constant integer cast $400
Simplifying constant integer cast $400
Simplifying constant integer cast 3
Simplifying constant integer cast $4000
Simplifying constant integer cast 3
Simplifying constant integer cast 3
Simplifying constant integer cast $3fff
Simplifying constant integer cast $40
Simplifying constant integer cast $3fff
Simplifying constant integer cast $400
Simplifying constant integer cast 0
Simplifying constant integer cast $50
Simplifying constant integer cast $54
Simplifying constant integer cast $58
Simplifying constant integer cast $5c
Simplifying constant integer cast $f
Simplifying constant integer cast $10
Simplifying constant integer cast $f
Simplifying constant pointer cast (byte*) 32768
Simplifying constant pointer cast (byte*) 36864
Simplifying constant pointer cast (byte*) 33792
Simplifying constant integer cast $10000
Simplifying constant integer cast $400
Simplifying constant integer cast $400
Simplifying constant integer cast 3
Simplifying constant integer cast $4000
Simplifying constant integer cast 3
Simplifying constant integer cast 3
Simplifying constant integer cast $3fff
Simplifying constant integer cast $40
Simplifying constant integer cast $3fff
Simplifying constant integer cast $400
Simplifying constant integer cast 0
Simplifying constant integer cast $50
Simplifying constant integer cast $54
Simplifying constant integer cast $58
Simplifying constant integer cast $f
Simplifying constant integer cast $10
Simplifying constant integer cast $f
Simplifying constant pointer cast (byte*) 16384
Simplifying constant pointer cast (byte*) 24576
Simplifying constant pointer cast (byte*) 32768
Simplifying constant integer cast 3
Simplifying constant integer cast 0
Simplifying constant integer cast 1
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 1
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast $400
Simplifying constant integer cast $400
Simplifying constant integer cast 0
Simplifying constant integer cast $70
Simplifying constant integer cast $d4
Simplifying constant integer cast $f
Simplifying constant integer cast $10
Simplifying constant integer cast $f
Simplifying constant integer cast 4
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast $ff
Simplifying constant integer cast $f
Simplifying constant pointer cast (byte*) 16384
Simplifying constant pointer cast (byte*) 24576
Simplifying constant pointer cast (byte*) 32768
Simplifying constant integer cast 3
Simplifying constant integer cast 0
Simplifying constant integer cast 1
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 1
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast $400
Simplifying constant integer cast $400
Simplifying constant integer cast 0
Simplifying constant integer cast $f
Simplifying constant integer cast 0
Simplifying constant integer cast $55
Simplifying constant integer cast $aa
Simplifying constant integer cast $ff
Simplifying constant integer cast 2
Simplifying constant integer cast 3
Simplifying constant integer cast $1b
Simplifying constant pointer cast (byte*) 16384
Simplifying constant pointer cast (byte*) 24576
Simplifying constant pointer cast (byte*) 32768
Simplifying constant integer cast 3
Simplifying constant integer cast 0
Simplifying constant integer cast 1
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 1
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast $400
Simplifying constant integer cast $400
Simplifying constant integer cast 0
Simplifying constant integer cast 3
Simplifying constant integer cast $10
Simplifying constant integer cast 3
Simplifying constant integer cast 0
Simplifying constant integer cast $55
Simplifying constant integer cast $aa
Simplifying constant integer cast $ff
Simplifying constant integer cast 2
Simplifying constant integer cast 3
Simplifying constant integer cast $1b
Simplifying constant pointer cast (byte*) 15360
Simplifying constant pointer cast (byte*) 16384
Simplifying constant integer cast 3
Simplifying constant integer cast 0
Simplifying constant integer cast 1
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast $f
Simplifying constant integer cast $10
Simplifying constant integer cast $f
Simplifying constant pointer cast (byte*) 53248
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast $80
Simplifying constant integer cast 0
Simplifying constant integer cast 2
Simplifying constant integer cast $20000
Simplifying constant integer cast 3
Simplifying constant integer cast 8
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast $4000
Simplifying constant pointer cast (byte*) 16384
Simplifying constant integer cast $8000
Simplifying constant pointer cast (byte*) 16384
Successful SSA optimization PassNCastSimplification
Finalized unsigned number type (byte) 7
Finalized unsigned number type (byte) 5
Finalized unsigned number type (byte) 1
Finalized unsigned number type (byte) $40
Finalized unsigned number type (byte) $20
Finalized unsigned number type (byte) $10
Finalized unsigned number type (byte) 8
Finalized unsigned number type (byte) $10
Finalized unsigned number type (byte) 8
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 5
Finalized unsigned number type (byte) 6
Finalized unsigned number type (byte) $d
Finalized unsigned number type (byte) 1
Finalized unsigned number type (byte) 1
Finalized unsigned number type (byte) 2
Finalized unsigned number type (byte) 4
Finalized unsigned number type (byte) 8
Finalized unsigned number type (byte) $10
Finalized unsigned number type (byte) $40
Finalized unsigned number type (dword) $1d800
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) $28
Finalized unsigned number type (word) $3e8
Finalized unsigned number type (byte) 8
Finalized unsigned number type (byte) $a
Finalized unsigned number type (byte) $b
Finalized unsigned number type (byte) $e
Finalized unsigned number type (byte) $12
Finalized unsigned number type (byte) $13
Finalized unsigned number type (byte) $14
Finalized unsigned number type (byte) $18
Finalized unsigned number type (byte) $1b
Finalized unsigned number type (byte) $1c
Finalized unsigned number type (byte) $1d
Finalized unsigned number type (byte) $1e
Finalized unsigned number type (byte) $23
Finalized unsigned number type (byte) $26
Finalized unsigned number type (byte) $2a
Finalized unsigned number type (byte) $38
Finalized unsigned number type (byte) $3b
Finalized unsigned number type (byte) $3c
Finalized unsigned number type (byte) 7
Finalized unsigned number type (byte) 3
Finalized unsigned number type (byte) $80
Finalized unsigned number type (byte) $f8
Finalized unsigned number type (byte) 1
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) $80
Finalized unsigned number type (byte) 7
Finalized unsigned number type (byte) 7
Finalized unsigned number type (byte) 7
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 1
Finalized unsigned number type (byte) 1
Finalized unsigned number type (byte) 1
Finalized unsigned number type (byte) 1
Finalized unsigned number type (byte) 1
Finalized unsigned number type (byte) 1
Finalized unsigned number type (byte) 1
Finalized unsigned number type (byte) 1
Finalized unsigned number type (dword) $10000
Finalized unsigned number type (word) $400
Finalized unsigned number type (word) $400
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 3
Finalized unsigned number type (word) $4000
Finalized unsigned number type (byte) 3
Finalized unsigned number type (byte) 3
Finalized unsigned number type (word) $3fff
Finalized unsigned number type (byte) $40
Finalized unsigned number type (word) $3fff
Finalized unsigned number type (word) $400
Finalized unsigned number type (word) $3e8
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) $ff
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (dword) $10000
Finalized unsigned number type (word) $400
Finalized unsigned number type (word) $400
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 3
Finalized unsigned number type (word) $4000
Finalized unsigned number type (byte) 3
Finalized unsigned number type (byte) 3
Finalized unsigned number type (word) $3fff
Finalized unsigned number type (byte) $40
Finalized unsigned number type (word) $3fff
Finalized unsigned number type (word) $400
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) $f
Finalized unsigned number type (byte) $f
Finalized unsigned number type (byte) $10
Finalized unsigned number type (byte) $f
Finalized unsigned number type (dword) $10000
Finalized unsigned number type (word) $400
Finalized unsigned number type (word) $400
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 3
Finalized unsigned number type (word) $4000
Finalized unsigned number type (byte) 3
Finalized unsigned number type (byte) 3
Finalized unsigned number type (word) $3fff
Finalized unsigned number type (byte) $40
Finalized unsigned number type (word) $3fff
Finalized unsigned number type (word) $400
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 2
Finalized unsigned number type (byte) 5
Finalized unsigned number type (byte) 6
Finalized unsigned number type (byte) $f
Finalized unsigned number type (byte) $f
Finalized unsigned number type (byte) $10
Finalized unsigned number type (byte) $f
Finalized unsigned number type (dword) $10000
Finalized unsigned number type (word) $400
Finalized unsigned number type (word) $400
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 3
Finalized unsigned number type (word) $4000
Finalized unsigned number type (byte) 3
Finalized unsigned number type (byte) 3
Finalized unsigned number type (word) $3fff
Finalized unsigned number type (byte) $40
Finalized unsigned number type (word) $3fff
Finalized unsigned number type (word) $400
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) $f
Finalized unsigned number type (byte) $f
Finalized unsigned number type (byte) $10
Finalized unsigned number type (byte) $f
Finalized unsigned number type (dword) $10000
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 3
Finalized unsigned number type (word) $4000
Finalized unsigned number type (byte) 3
Finalized unsigned number type (byte) 3
Finalized unsigned number type (word) $3fff
Finalized unsigned number type (byte) $40
Finalized unsigned number type (word) $3fff
Finalized unsigned number type (word) $400
Finalized unsigned number type (byte) $f
Finalized unsigned number type (byte) $f
Finalized unsigned number type (byte) $10
Finalized unsigned number type (byte) 9
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 1
Finalized unsigned number type (byte) 1
Finalized unsigned number type (dword) $10000
Finalized unsigned number type (word) $400
Finalized unsigned number type (word) $400
Finalized unsigned number type (byte) 3
Finalized unsigned number type (word) $4000
Finalized unsigned number type (byte) 3
Finalized unsigned number type (byte) 3
Finalized unsigned number type (word) $3fff
Finalized unsigned number type (byte) $40
Finalized unsigned number type (word) $3fff
Finalized unsigned number type (word) $400
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) $f
Finalized unsigned number type (byte) $10
Finalized unsigned number type (byte) $f
Finalized unsigned number type (dword) $10000
Finalized unsigned number type (word) $400
Finalized unsigned number type (word) $400
Finalized unsigned number type (byte) 3
Finalized unsigned number type (word) $4000
Finalized unsigned number type (byte) 3
Finalized unsigned number type (byte) 3
Finalized unsigned number type (word) $3fff
Finalized unsigned number type (byte) $40
Finalized unsigned number type (word) $3fff
Finalized unsigned number type (word) $400
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) $50
Finalized unsigned number type (byte) $54
Finalized unsigned number type (byte) $58
Finalized unsigned number type (byte) $5c
Finalized unsigned number type (byte) $f
Finalized unsigned number type (byte) $10
Finalized unsigned number type (byte) $f
Finalized unsigned number type (dword) $10000
Finalized unsigned number type (word) $400
Finalized unsigned number type (word) $400
Finalized unsigned number type (byte) 3
Finalized unsigned number type (word) $4000
Finalized unsigned number type (byte) 3
Finalized unsigned number type (byte) 3
Finalized unsigned number type (word) $3fff
Finalized unsigned number type (byte) $40
Finalized unsigned number type (word) $3fff
Finalized unsigned number type (word) $400
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) $50
Finalized unsigned number type (byte) $54
Finalized unsigned number type (byte) $58
Finalized unsigned number type (byte) $f
Finalized unsigned number type (byte) $10
Finalized unsigned number type (byte) $f
Finalized unsigned number type (byte) 3
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 1
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 1
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (word) $400
Finalized unsigned number type (word) $400
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) $70
Finalized unsigned number type (byte) $d4
Finalized unsigned number type (byte) $f
Finalized unsigned number type (byte) $10
Finalized unsigned number type (byte) $f
Finalized unsigned number type (byte) 4
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) $ff
Finalized unsigned number type (byte) $f
Finalized unsigned number type (byte) 3
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 1
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 1
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (word) $400
Finalized unsigned number type (word) $400
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) $f
Finalized unsigned number type (byte) 2
Finalized unsigned number type (byte) 3
Finalized unsigned number type (byte) $1b
Finalized unsigned number type (byte) 3
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 1
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 1
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (word) $400
Finalized unsigned number type (word) $400
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 3
Finalized unsigned number type (byte) $10
Finalized unsigned number type (byte) 3
Finalized unsigned number type (byte) 2
Finalized unsigned number type (byte) 3
Finalized unsigned number type (byte) $1b
Finalized unsigned number type (byte) 3
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 1
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) $f
Finalized unsigned number type (byte) $10
Finalized unsigned number type (byte) $f
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) $80
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 2
Finalized unsigned number type (dword) $20000
Finalized unsigned number type (byte) 3
Finalized unsigned number type (byte) 8
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (word) $4000
Finalized unsigned number type (word) $8000
Successful SSA optimization PassNFinalizeNumberTypeConversions
Inferred type updated to byte in (unumber~) keyboard_key_pressed::$0 ← (byte) keyboard_key_pressed::key#20 & (byte) 7
Inferred type updated to byte in (unumber~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (byte) $f8
Inferred type updated to byte in (unumber~) bitmap_init::$6 ← (byte) bitmap_init::y#2 & (byte) 7
Inferred type updated to byte in (unumber~) bitmap_init::$8 ← (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7
Inferred type updated to byte in (unumber~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte) 7
Inferred type updated to byte in (unumber~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#2 + (byte) 1
Inferred type updated to byte in (unumber~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#2 + (byte) 1
Inferred type updated to byte in (unumber~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#2 + (byte) 1
Inferred type updated to byte in (unumber~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#2 + (byte) 1
Inferred type updated to dword in (unumber~) menu::$1 ← (dword~) menu::$0 / (dword) $10000
Inferred type updated to dword in (unumber~) menu::$3 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (word) $400
Inferred type updated to dword in (unumber~) menu::$6 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (word) $400
Inferred type updated to word in (unumber~) menu::$10 ← (word~) menu::$9 / (word) $4000
Inferred type updated to byte in (unumber~) menu::$12 ← (byte) 3 ^ (byte~) menu::$11
Inferred type updated to byte in (unumber~) menu::$14 ← (byte~) menu::$13 | (byte) 3
Inferred type updated to word in (unumber~) menu::$16 ← (word~) menu::$15 & (word) $3fff
Inferred type updated to word in (unumber~) menu::$17 ← (word~) menu::$16 / (byte) $40
Inferred type updated to word in (unumber~) menu::$19 ← (word~) menu::$18 & (word) $3fff
Inferred type updated to word in (unumber~) menu::$20 ← (word~) menu::$19 / (word) $400
Inferred type updated to word in (unumber~) menu::$21 ← (word~) menu::$17 | (word~) menu::$20
Inferred type updated to dword in (unumber~) mode_stdchar::$1 ← (dword~) mode_stdchar::$0 / (dword) $10000
Inferred type updated to dword in (unumber~) mode_stdchar::$3 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (word) $400
Inferred type updated to dword in (unumber~) mode_stdchar::$6 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (word) $400
Inferred type updated to word in (unumber~) mode_stdchar::$10 ← (word~) mode_stdchar::$9 / (word) $4000
Inferred type updated to byte in (unumber~) mode_stdchar::$12 ← (byte) 3 ^ (byte~) mode_stdchar::$11
Inferred type updated to byte in (unumber~) mode_stdchar::$14 ← (byte~) mode_stdchar::$13 | (byte) 3
Inferred type updated to word in (unumber~) mode_stdchar::$16 ← (word~) mode_stdchar::$15 & (word) $3fff
Inferred type updated to word in (unumber~) mode_stdchar::$17 ← (word~) mode_stdchar::$16 / (byte) $40
Inferred type updated to word in (unumber~) mode_stdchar::$19 ← (word~) mode_stdchar::$18 & (word) $3fff
Inferred type updated to word in (unumber~) mode_stdchar::$20 ← (word~) mode_stdchar::$19 / (word) $400
Inferred type updated to word in (unumber~) mode_stdchar::$21 ← (word~) mode_stdchar::$17 | (word~) mode_stdchar::$20
Inferred type updated to byte in (unumber~) mode_stdchar::$26 ← (byte~) mode_stdchar::$25 & (byte) $f
Inferred type updated to byte in (unumber~) mode_stdchar::$27 ← (byte) mode_stdchar::cy#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_stdchar::$28 ← (byte~) mode_stdchar::$27 * (byte) $10
Inferred type updated to byte in (unumber~) mode_stdchar::$29 ← (byte) mode_stdchar::cx#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_stdchar::$30 ← (byte~) mode_stdchar::$28 | (byte~) mode_stdchar::$29
Inferred type updated to dword in (unumber~) mode_ecmchar::$1 ← (dword~) mode_ecmchar::$0 / (dword) $10000
Inferred type updated to dword in (unumber~) mode_ecmchar::$3 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (word) $400
Inferred type updated to dword in (unumber~) mode_ecmchar::$6 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (word) $400
Inferred type updated to word in (unumber~) mode_ecmchar::$10 ← (word~) mode_ecmchar::$9 / (word) $4000
Inferred type updated to byte in (unumber~) mode_ecmchar::$12 ← (byte) 3 ^ (byte~) mode_ecmchar::$11
Inferred type updated to byte in (unumber~) mode_ecmchar::$15 ← (byte~) mode_ecmchar::$14 | (byte) 3
Inferred type updated to word in (unumber~) mode_ecmchar::$17 ← (word~) mode_ecmchar::$16 & (word) $3fff
Inferred type updated to word in (unumber~) mode_ecmchar::$18 ← (word~) mode_ecmchar::$17 / (byte) $40
Inferred type updated to word in (unumber~) mode_ecmchar::$20 ← (word~) mode_ecmchar::$19 & (word) $3fff
Inferred type updated to word in (unumber~) mode_ecmchar::$21 ← (word~) mode_ecmchar::$20 / (word) $400
Inferred type updated to word in (unumber~) mode_ecmchar::$22 ← (word~) mode_ecmchar::$18 | (word~) mode_ecmchar::$21
Inferred type updated to byte in (unumber~) mode_ecmchar::$27 ← (byte~) mode_ecmchar::$26 & (byte) $f
Inferred type updated to byte in (unumber~) mode_ecmchar::$28 ← (byte) mode_ecmchar::cy#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_ecmchar::$29 ← (byte~) mode_ecmchar::$28 * (byte) $10
Inferred type updated to byte in (unumber~) mode_ecmchar::$30 ← (byte) mode_ecmchar::cx#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_ecmchar::$31 ← (byte~) mode_ecmchar::$29 | (byte~) mode_ecmchar::$30
Inferred type updated to dword in (unumber~) mode_mcchar::$1 ← (dword~) mode_mcchar::$0 / (dword) $10000
Inferred type updated to dword in (unumber~) mode_mcchar::$3 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (word) $400
Inferred type updated to dword in (unumber~) mode_mcchar::$6 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (word) $400
Inferred type updated to word in (unumber~) mode_mcchar::$10 ← (word~) mode_mcchar::$9 / (word) $4000
Inferred type updated to byte in (unumber~) mode_mcchar::$12 ← (byte) 3 ^ (byte~) mode_mcchar::$11
Inferred type updated to byte in (unumber~) mode_mcchar::$14 ← (byte~) mode_mcchar::$13 | (byte) 3
Inferred type updated to word in (unumber~) mode_mcchar::$17 ← (word~) mode_mcchar::$16 & (word) $3fff
Inferred type updated to word in (unumber~) mode_mcchar::$18 ← (word~) mode_mcchar::$17 / (byte) $40
Inferred type updated to word in (unumber~) mode_mcchar::$20 ← (word~) mode_mcchar::$19 & (word) $3fff
Inferred type updated to word in (unumber~) mode_mcchar::$21 ← (word~) mode_mcchar::$20 / (word) $400
Inferred type updated to word in (unumber~) mode_mcchar::$22 ← (word~) mode_mcchar::$18 | (word~) mode_mcchar::$21
Inferred type updated to byte in (unumber~) mode_mcchar::$27 ← (byte~) mode_mcchar::$26 & (byte) $f
Inferred type updated to byte in (unumber~) mode_mcchar::$28 ← (byte) mode_mcchar::cy#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_mcchar::$29 ← (byte~) mode_mcchar::$28 * (byte) $10
Inferred type updated to byte in (unumber~) mode_mcchar::$30 ← (byte) mode_mcchar::cx#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_mcchar::$31 ← (byte~) mode_mcchar::$29 | (byte~) mode_mcchar::$30
Inferred type updated to dword in (unumber~) mode_stdbitmap::$1 ← (dword~) mode_stdbitmap::$0 / (dword) $10000
Inferred type updated to word in (unumber~) mode_stdbitmap::$4 ← (word~) mode_stdbitmap::$3 / (word) $4000
Inferred type updated to byte in (unumber~) mode_stdbitmap::$6 ← (byte) 3 ^ (byte~) mode_stdbitmap::$5
Inferred type updated to byte in (unumber~) mode_stdbitmap::$9 ← (byte~) mode_stdbitmap::$8 | (byte) 3
Inferred type updated to word in (unumber~) mode_stdbitmap::$11 ← (word~) mode_stdbitmap::$10 & (word) $3fff
Inferred type updated to word in (unumber~) mode_stdbitmap::$12 ← (word~) mode_stdbitmap::$11 / (byte) $40
Inferred type updated to word in (unumber~) mode_stdbitmap::$14 ← (word~) mode_stdbitmap::$13 & (word) $3fff
Inferred type updated to word in (unumber~) mode_stdbitmap::$15 ← (word~) mode_stdbitmap::$14 / (word) $400
Inferred type updated to word in (unumber~) mode_stdbitmap::$16 ← (word~) mode_stdbitmap::$12 | (word~) mode_stdbitmap::$15
Inferred type updated to byte in (unumber~) mode_stdbitmap::$23 ← (byte~) mode_stdbitmap::$22 & (byte) $f
Inferred type updated to byte in (unumber~) mode_stdbitmap::$24 ← (byte) $f - (byte) mode_stdbitmap::col#0
Inferred type updated to byte in (unumber~) mode_stdbitmap::$25 ← (byte) mode_stdbitmap::col#0 * (byte) $10
Inferred type updated to byte in (unumber~) mode_stdbitmap::$26 ← (byte~) mode_stdbitmap::$25 | (byte) mode_stdbitmap::col2#0
Inferred type updated to byte in (unumber~) mode_stdbitmap::$30 ← (byte) mode_stdbitmap::l#3 + (byte) 1
Inferred type updated to byte in (unumber~) mode_stdbitmap::$31 ← (byte) mode_stdbitmap::l#3 + (byte) 1
Inferred type updated to dword in (unumber~) mode_hicolstdchar::$1 ← (dword~) mode_hicolstdchar::$0 / (dword) $10000
Inferred type updated to word in (unumber~) mode_hicolstdchar::$10 ← (word~) mode_hicolstdchar::$9 / (word) $4000
Inferred type updated to byte in (unumber~) mode_hicolstdchar::$12 ← (byte) 3 ^ (byte~) mode_hicolstdchar::$11
Inferred type updated to byte in (unumber~) mode_hicolstdchar::$14 ← (byte~) mode_hicolstdchar::$13 | (byte) 3
Inferred type updated to word in (unumber~) mode_hicolstdchar::$16 ← (word~) mode_hicolstdchar::$15 & (word) $3fff
Inferred type updated to word in (unumber~) mode_hicolstdchar::$17 ← (word~) mode_hicolstdchar::$16 / (byte) $40
Inferred type updated to word in (unumber~) mode_hicolstdchar::$19 ← (word~) mode_hicolstdchar::$18 & (word) $3fff
Inferred type updated to word in (unumber~) mode_hicolstdchar::$20 ← (word~) mode_hicolstdchar::$19 / (word) $400
Inferred type updated to word in (unumber~) mode_hicolstdchar::$21 ← (word~) mode_hicolstdchar::$17 | (word~) mode_hicolstdchar::$20
Inferred type updated to byte in (unumber~) mode_hicolstdchar::$25 ← (byte) mode_hicolstdchar::cy#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_hicolstdchar::$26 ← (byte~) mode_hicolstdchar::$25 * (byte) $10
Inferred type updated to byte in (unumber~) mode_hicolstdchar::$27 ← (byte) mode_hicolstdchar::cx#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_hicolstdchar::$28 ← (byte~) mode_hicolstdchar::$26 | (byte~) mode_hicolstdchar::$27
Inferred type updated to dword in (unumber~) mode_hicolecmchar::$1 ← (dword~) mode_hicolecmchar::$0 / (dword) $10000
Inferred type updated to word in (unumber~) mode_hicolecmchar::$10 ← (word~) mode_hicolecmchar::$9 / (word) $4000
Inferred type updated to byte in (unumber~) mode_hicolecmchar::$12 ← (byte) 3 ^ (byte~) mode_hicolecmchar::$11
Inferred type updated to byte in (unumber~) mode_hicolecmchar::$15 ← (byte~) mode_hicolecmchar::$14 | (byte) 3
Inferred type updated to word in (unumber~) mode_hicolecmchar::$17 ← (word~) mode_hicolecmchar::$16 & (word) $3fff
Inferred type updated to word in (unumber~) mode_hicolecmchar::$18 ← (word~) mode_hicolecmchar::$17 / (byte) $40
Inferred type updated to word in (unumber~) mode_hicolecmchar::$20 ← (word~) mode_hicolecmchar::$19 & (word) $3fff
Inferred type updated to word in (unumber~) mode_hicolecmchar::$21 ← (word~) mode_hicolecmchar::$20 / (word) $400
Inferred type updated to word in (unumber~) mode_hicolecmchar::$22 ← (word~) mode_hicolecmchar::$18 | (word~) mode_hicolecmchar::$21
Inferred type updated to byte in (unumber~) mode_hicolecmchar::$26 ← (byte) mode_hicolecmchar::cy#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_hicolecmchar::$27 ← (byte~) mode_hicolecmchar::$26 * (byte) $10
Inferred type updated to byte in (unumber~) mode_hicolecmchar::$28 ← (byte) mode_hicolecmchar::cx#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_hicolecmchar::$29 ← (byte~) mode_hicolecmchar::$27 | (byte~) mode_hicolecmchar::$28
Inferred type updated to dword in (unumber~) mode_hicolmcchar::$1 ← (dword~) mode_hicolmcchar::$0 / (dword) $10000
Inferred type updated to word in (unumber~) mode_hicolmcchar::$10 ← (word~) mode_hicolmcchar::$9 / (word) $4000
Inferred type updated to byte in (unumber~) mode_hicolmcchar::$12 ← (byte) 3 ^ (byte~) mode_hicolmcchar::$11
Inferred type updated to byte in (unumber~) mode_hicolmcchar::$14 ← (byte~) mode_hicolmcchar::$13 | (byte) 3
Inferred type updated to word in (unumber~) mode_hicolmcchar::$17 ← (word~) mode_hicolmcchar::$16 & (word) $3fff
Inferred type updated to word in (unumber~) mode_hicolmcchar::$18 ← (word~) mode_hicolmcchar::$17 / (byte) $40
Inferred type updated to word in (unumber~) mode_hicolmcchar::$20 ← (word~) mode_hicolmcchar::$19 & (word) $3fff
Inferred type updated to word in (unumber~) mode_hicolmcchar::$21 ← (word~) mode_hicolmcchar::$20 / (word) $400
Inferred type updated to word in (unumber~) mode_hicolmcchar::$22 ← (word~) mode_hicolmcchar::$18 | (word~) mode_hicolmcchar::$21
Inferred type updated to byte in (unumber~) mode_hicolmcchar::$26 ← (byte) mode_hicolmcchar::cy#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_hicolmcchar::$27 ← (byte~) mode_hicolmcchar::$26 * (byte) $10
Inferred type updated to byte in (unumber~) mode_hicolmcchar::$28 ← (byte) mode_hicolmcchar::cx#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_hicolmcchar::$29 ← (byte~) mode_hicolmcchar::$27 | (byte~) mode_hicolmcchar::$28
Inferred type updated to byte in (unumber~) mode_twoplanebitmap::$5 ← (byte~) mode_twoplanebitmap::$4 | (byte) 3
Inferred type updated to byte in (unumber~) mode_twoplanebitmap::$16 ← (byte) mode_twoplanebitmap::cy#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_twoplanebitmap::$17 ← (byte~) mode_twoplanebitmap::$16 * (byte) $10
Inferred type updated to byte in (unumber~) mode_twoplanebitmap::$18 ← (byte) mode_twoplanebitmap::cx#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_twoplanebitmap::$19 ← (byte~) mode_twoplanebitmap::$17 | (byte~) mode_twoplanebitmap::$18
Inferred type updated to byte in (unumber~) mode_twoplanebitmap::$22 ← (byte) mode_twoplanebitmap::ay#2 & (byte) 4
Inferred type updated to byte in (unumber~) mode_sixsfred::$5 ← (byte~) mode_sixsfred::$4 | (byte) 3
Inferred type updated to byte in (unumber~) mode_sixsfred::$18 ← (byte~) mode_sixsfred::$17 & (byte) $f
Inferred type updated to byte in (unumber~) mode_sixsfred::$21 ← (byte) mode_sixsfred::ay#2 / (byte) 2
Inferred type updated to byte in (unumber~) mode_sixsfred::$22 ← (byte~) mode_sixsfred::$21 & (byte) 3
Inferred type updated to byte in (unumber~) mode_sixsfred2::$3 ← (byte~) mode_sixsfred2::$2 | (byte) 3
Inferred type updated to byte in (unumber~) mode_sixsfred2::$15 ← (byte) mode_sixsfred2::cx#2 & (byte) 3
Inferred type updated to byte in (unumber~) mode_sixsfred2::$16 ← (byte~) mode_sixsfred2::$15 * (byte) $10
Inferred type updated to byte in (unumber~) mode_sixsfred2::$17 ← (byte) mode_sixsfred2::cy#2 & (byte) 3
Inferred type updated to byte in (unumber~) mode_sixsfred2::$18 ← (byte~) mode_sixsfred2::$16 | (byte~) mode_sixsfred2::$17
Inferred type updated to byte in (unumber~) mode_sixsfred2::$21 ← (byte) mode_sixsfred2::ay#2 / (byte) 2
Inferred type updated to byte in (unumber~) mode_sixsfred2::$22 ← (byte~) mode_sixsfred2::$21 & (byte) 3
Inferred type updated to byte in (unumber~) mode_8bpppixelcell::$6 ← (byte~) mode_8bpppixelcell::$5 | (byte) 3
Inferred type updated to byte in (unumber~) mode_8bpppixelcell::$14 ← (byte) mode_8bpppixelcell::ay#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_8bpppixelcell::$15 ← (byte~) mode_8bpppixelcell::$14 * (byte) $10
Inferred type updated to byte in (unumber~) mode_8bpppixelcell::$16 ← (byte) mode_8bpppixelcell::ax#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_8bpppixelcell::$17 ← (byte~) mode_8bpppixelcell::$15 | (byte~) mode_8bpppixelcell::$16
Inferred type updated to byte in (unumber~) mode_8bpppixelcell::$20 ← (byte) mode_8bpppixelcell::bits#2 & (byte) $80
Inferred type updated to byte in (unumber~) mode_8bpppixelcell::$23 ← (byte) mode_8bpppixelcell::bits#3 * (byte) 2
Inferred type updated to byte in (unumber~) mode_8bppchunkybmm::$8 ← (byte~) mode_8bppchunkybmm::$7 | (byte) 3
Inferred type updated to dword in (unumber~) mode_8bppchunkybmm::$16 ← (dword) mode_8bppchunkybmm::PLANEB#0 / (word) $4000
Adding pointer type conversion cast (byte*) bitmap_clear::$0 in (byte*~) bitmap_clear::$0 ← (word~) bitmap_clear::$3
Successful SSA optimization PassNAddTypeConversionAssignment
Inversing boolean not [64] (bool~) memset::$1 ← (word) memset::num#1 <= (byte) 0 from [63] (bool~) memset::$0 ← (word) memset::num#1 > (byte) 0
Inversing boolean not [93] (bool~) print_str_lines::$0 ← (byte) 0 == (byte) print_str_lines::ch#0 from [92] (bool~) print_str_lines::$4 ← (byte) 0 != (byte) print_str_lines::ch#0
Inversing boolean not [206] (bool~) bitmap_init::$4 ← (byte) bitmap_init::bits#1 != (byte) 0 from [205] (bool~) bitmap_init::$3 ← (byte) bitmap_init::bits#1 == (byte) 0
Inversing boolean not [225] (bool~) bitmap_init::$12 ← (byte~) bitmap_init::$10 != (byte) 7 from [224] (bool~) bitmap_init::$11 ← (byte~) bitmap_init::$10 == (byte) 7
Inversing boolean not [366] (bool~) bitmap_line_xdyi::$4 ← (byte) bitmap_line_xdyi::xd#2 >= (byte) bitmap_line_xdyi::e#1 from [365] (bool~) bitmap_line_xdyi::$3 ← (byte) bitmap_line_xdyi::xd#2 < (byte) bitmap_line_xdyi::e#1
Inversing boolean not [389] (bool~) bitmap_line_xdyd::$4 ← (byte) bitmap_line_xdyd::xd#2 >= (byte) bitmap_line_xdyd::e#1 from [388] (bool~) bitmap_line_xdyd::$3 ← (byte) bitmap_line_xdyd::xd#2 < (byte) bitmap_line_xdyd::e#1
Inversing boolean not [412] (bool~) bitmap_line_ydxi::$4 ← (byte) bitmap_line_ydxi::yd#2 >= (byte) bitmap_line_ydxi::e#1 from [411] (bool~) bitmap_line_ydxi::$3 ← (byte) bitmap_line_ydxi::yd#2 < (byte) bitmap_line_ydxi::e#1
Inversing boolean not [436] (bool~) bitmap_line_ydxd::$4 ← (byte) bitmap_line_ydxd::yd#2 >= (byte) bitmap_line_ydxd::e#1 from [435] (bool~) bitmap_line_ydxd::$3 ← (byte) bitmap_line_ydxd::yd#2 < (byte) bitmap_line_ydxd::e#1
Inversing boolean not [546] (bool~) menu::$31 ← (byte~) menu::$29 == (byte) 0 from [545] (bool~) menu::$30 ← (byte~) menu::$29 != (byte) 0
Inversing boolean not [555] (bool~) menu::$35 ← (byte~) menu::$33 == (byte) 0 from [554] (bool~) menu::$34 ← (byte~) menu::$33 != (byte) 0
Inversing boolean not [574] (bool~) menu::$39 ← (byte~) menu::$37 == (byte) 0 from [573] (bool~) menu::$38 ← (byte~) menu::$37 != (byte) 0
Inversing boolean not [587] (bool~) menu::$43 ← (byte~) menu::$41 == (byte) 0 from [586] (bool~) menu::$42 ← (byte~) menu::$41 != (byte) 0
Inversing boolean not [600] (bool~) menu::$47 ← (byte~) menu::$45 == (byte) 0 from [599] (bool~) menu::$46 ← (byte~) menu::$45 != (byte) 0
Inversing boolean not [613] (bool~) menu::$51 ← (byte~) menu::$49 == (byte) 0 from [612] (bool~) menu::$50 ← (byte~) menu::$49 != (byte) 0
Inversing boolean not [626] (bool~) menu::$55 ← (byte~) menu::$53 == (byte) 0 from [625] (bool~) menu::$54 ← (byte~) menu::$53 != (byte) 0
Inversing boolean not [639] (bool~) menu::$59 ← (byte~) menu::$57 == (byte) 0 from [638] (bool~) menu::$58 ← (byte~) menu::$57 != (byte) 0
Inversing boolean not [652] (bool~) menu::$63 ← (byte~) menu::$61 == (byte) 0 from [651] (bool~) menu::$62 ← (byte~) menu::$61 != (byte) 0
Inversing boolean not [665] (bool~) menu::$67 ← (byte~) menu::$65 == (byte) 0 from [664] (bool~) menu::$66 ← (byte~) menu::$65 != (byte) 0
Inversing boolean not [678] (bool~) menu::$71 ← (byte~) menu::$69 == (byte) 0 from [677] (bool~) menu::$70 ← (byte~) menu::$69 != (byte) 0
Inversing boolean not [691] (bool~) menu::$75 ← (byte~) menu::$73 == (byte) 0 from [690] (bool~) menu::$74 ← (byte~) menu::$73 != (byte) 0
Inversing boolean not [716] (bool~) mode_ctrl::$3 ← (byte~) mode_ctrl::$1 == (byte) 0 from [715] (bool~) mode_ctrl::$2 ← (byte~) mode_ctrl::$1 != (byte) 0
Inversing boolean not [726] (bool~) mode_ctrl::$6 ← (byte~) mode_ctrl::$4 == (byte) 0 from [725] (bool~) mode_ctrl::$5 ← (byte~) mode_ctrl::$4 != (byte) 0
Inversing boolean not [738] (bool~) mode_ctrl::$10 ← (byte~) mode_ctrl::$8 == (byte) 0 from [737] (bool~) mode_ctrl::$9 ← (byte~) mode_ctrl::$8 != (byte) 0
Inversing boolean not [750] (bool~) mode_ctrl::$14 ← (byte~) mode_ctrl::$12 == (byte) 0 from [749] (bool~) mode_ctrl::$13 ← (byte~) mode_ctrl::$12 != (byte) 0
Inversing boolean not [762] (bool~) mode_ctrl::$18 ← (byte~) mode_ctrl::$16 == (byte) 0 from [761] (bool~) mode_ctrl::$17 ← (byte~) mode_ctrl::$16 != (byte) 0
Inversing boolean not [774] (bool~) mode_ctrl::$22 ← (byte~) mode_ctrl::$20 == (byte) 0 from [773] (bool~) mode_ctrl::$21 ← (byte~) mode_ctrl::$20 != (byte) 0
Inversing boolean not [786] (bool~) mode_ctrl::$26 ← (byte~) mode_ctrl::$24 == (byte) 0 from [785] (bool~) mode_ctrl::$25 ← (byte~) mode_ctrl::$24 != (byte) 0
Inversing boolean not [798] (bool~) mode_ctrl::$30 ← (byte~) mode_ctrl::$28 == (byte) 0 from [797] (bool~) mode_ctrl::$29 ← (byte~) mode_ctrl::$28 != (byte) 0
Inversing boolean not [805] (bool~) mode_ctrl::$32 ← (byte) mode_ctrl::ctrl#14 == (byte) dtv_control#72 from [804] (bool~) mode_ctrl::$31 ← (byte) mode_ctrl::ctrl#14 != (byte) dtv_control#72
Inversing boolean not [1745] (bool~) mode_8bpppixelcell::$22 ← (byte~) mode_8bpppixelcell::$20 == (byte) 0 from [1744] (bool~) mode_8bpppixelcell::$21 ← (byte~) mode_8bpppixelcell::$20 != (byte) 0
Inversing boolean not [1822] (bool~) mode_8bppchunkybmm::$24 ← (byte*) mode_8bppchunkybmm::gfxb#3 != (word) $8000 from [1821] (bool~) mode_8bppchunkybmm::$23 ← (byte*) mode_8bppchunkybmm::gfxb#3 == (word) $8000
Successful SSA optimization Pass2UnaryNotSimplification
Alias (void*) memset::return#0 = (void*) memset::str#1 (void*) memset::return#3 (void*) memset::return#1
Alias (void*) memset::str#2 = (void*) memset::str#3
Alias (word) memset::num#1 = (word) memset::num#2
Alias (byte) memset::c#3 = (byte) memset::c#4
Alias (byte*) memset::end#0 = (byte*~) memset::$3
Alias (byte) memset::c#1 = (byte) memset::c#2
Alias (byte*) memset::dst#2 = (byte*) memset::dst#3
Alias (byte*) memset::end#1 = (byte*) memset::end#2
Alias (void*) memset::str#4 = (void*) memset::str#5
Alias (byte*) print_screen#0 = (byte*) print_line_cursor#0 (byte*) print_char_cursor#0 (byte*) print_screen#79 (byte*) print_line_cursor#98 (byte*) print_char_cursor#98 (byte*) print_screen#66 (byte*) print_line_cursor#85 (byte*) print_char_cursor#85 (byte*) print_screen#65 (byte*) print_line_cursor#84 (byte*) print_char_cursor#84 (byte*) print_screen#49 (byte*) print_line_cursor#67 (byte*) print_char_cursor#69 (byte*) print_screen#32 (byte*) print_line_cursor#49 (byte*) print_char_cursor#51
Alias (byte) print_str_lines::ch#0 = (byte) print_str_lines::ch#2
Alias (byte*) print_char_cursor#17 = (byte*) print_char_cursor#31
Alias (byte*) print_str_lines::str#0 = (byte*) print_str_lines::str#7
Alias (byte*) print_line_cursor#68 = (byte*) print_line_cursor#69
Alias (byte*) print_line_cursor#30 = (byte*) print_line_cursor#51
Alias (byte*) print_char_cursor#32 = (byte*) print_char_cursor#53
Alias (byte*) print_str_lines::str#5 = (byte*) print_str_lines::str#8 (byte*) print_str_lines::str#6
Alias (byte*) print_line_cursor#1 = (byte*) print_line_cursor#16
Alias (byte*) print_char_cursor#18 = (byte*) print_char_cursor#2
Alias (byte*) print_char_cursor#19 = (byte*) print_char_cursor#33 (byte*) print_char_cursor#3
Alias (byte*) print_line_cursor#17 = (byte*) print_line_cursor#31 (byte*) print_line_cursor#2
Alias (byte*) print_line_cursor#19 = (byte*) print_line_cursor#3 (byte*~) print_ln::$0 (byte*) print_char_cursor#4 (byte*) print_line_cursor#20 (byte*) print_char_cursor#21 (byte*) print_line_cursor#4 (byte*) print_char_cursor#5
Alias (byte*) print_line_cursor#21 = (byte*) print_screen#9 (byte*) print_screen#8 (byte*) print_line_cursor#5 (byte*) print_char_cursor#6 (byte*) print_char_cursor#22 (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#10 (byte*) print_line_cursor#22 (byte*) print_char_cursor#23 (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) keyboard_key_pressed::colidx#0 = (byte~) keyboard_key_pressed::$0 (byte) keyboard_key_pressed::colidx#1
Alias (byte) keyboard_key_pressed::rowidx#0 = (byte~) keyboard_key_pressed::$1
Alias (byte) keyboard_matrix_read::return#2 = (byte) keyboard_matrix_read::return#4
Alias (byte) keyboard_key_pressed::return#0 = (byte~) keyboard_key_pressed::$3 (byte) keyboard_key_pressed::return#22 (byte) keyboard_key_pressed::return#1
Alias (byte) bitmap_init::bits#1 = (byte~) bitmap_init::$2
Alias (byte) bitmap_init::x#2 = (byte) bitmap_init::x#4
Alias (byte*) bitmap_init::bitmap#1 = (byte*) bitmap_init::bitmap#4
Alias (byte*) bitmap_init::yoffs#2 = (byte*) bitmap_init::yoffs#3
Alias (byte) bitmap_init::y#2 = (byte) bitmap_init::y#4
Alias (byte*) bitmap_init::yoffs#1 = (byte*~) bitmap_init::$13
Alias (byte*) bitmap_clear::bitmap#0 = (byte*~) bitmap_clear::$0
Alias (byte) bitmap_clear::y#2 = (byte) bitmap_clear::y#3
Alias (byte*) bitmap_clear::bitmap#1 = (byte*) bitmap_clear::bitmap#4
Alias (word) bitmap_plot::plotter_x#0 = (word~) bitmap_plot::$2
Alias (word) bitmap_plot::plotter_y#0 = (word~) bitmap_plot::$3
Alias (byte) bitmap_line::x1#1 = (byte) bitmap_line::x1#2 (byte) bitmap_line::x1#3 (byte) bitmap_line::x1#11 (byte) bitmap_line::x1#10 (byte) bitmap_line::x1#4 (byte) bitmap_line::x1#5 (byte) bitmap_line::x1#6 (byte) bitmap_line::x1#13 (byte) bitmap_line::x1#12 (byte) bitmap_line::x1#7 (byte) bitmap_line::x1#8 (byte) bitmap_line::x1#9
Alias (byte) bitmap_line::x0#1 = (byte) bitmap_line::x0#2 (byte) bitmap_line::x0#3 (byte) bitmap_line::x0#11 (byte) bitmap_line::x0#10 (byte) bitmap_line::x0#4 (byte) bitmap_line::x0#5 (byte) bitmap_line::x0#6 (byte) bitmap_line::x0#13 (byte) bitmap_line::x0#12 (byte) bitmap_line::x0#7 (byte) bitmap_line::x0#8 (byte) bitmap_line::x0#9
Alias (byte) bitmap_line::y0#1 = (byte) bitmap_line::y0#13 (byte) bitmap_line::y0#2 (byte) bitmap_line::y0#3 (byte) bitmap_line::y0#4 (byte) bitmap_line::y0#5 (byte) bitmap_line::y0#6 (byte) bitmap_line::y0#7 (byte) bitmap_line::y0#8 (byte) bitmap_line::y0#9 (byte) bitmap_line::y0#10 (byte) bitmap_line::y0#11 (byte) bitmap_line::y0#12
Alias (byte) bitmap_line::y1#1 = (byte) bitmap_line::y1#13 (byte) bitmap_line::y1#2 (byte) bitmap_line::y1#3 (byte) bitmap_line::y1#4 (byte) bitmap_line::y1#5 (byte) bitmap_line::y1#6 (byte) bitmap_line::y1#7 (byte) bitmap_line::y1#8 (byte) bitmap_line::y1#9 (byte) bitmap_line::y1#10 (byte) bitmap_line::y1#11 (byte) bitmap_line::y1#12
Alias (byte) bitmap_line::xd#1 = (byte~) bitmap_line::$11 (byte) bitmap_line::xd#9 (byte) bitmap_line::xd#10 (byte) bitmap_line::xd#11 (byte) bitmap_line::xd#12 (byte) bitmap_line::xd#13 (byte) bitmap_line::xd#14
Alias (byte) bitmap_line::xd#2 = (byte~) bitmap_line::$1 (byte) bitmap_line::xd#3 (byte) bitmap_line::xd#4 (byte) bitmap_line::xd#5 (byte) bitmap_line::xd#6 (byte) bitmap_line::xd#7 (byte) bitmap_line::xd#8
Alias (byte) bitmap_line::yd#1 = (byte~) bitmap_line::$7 (byte) bitmap_line::yd#7 (byte) bitmap_line::yd#8
Alias (byte) bitmap_line::yd#2 = (byte~) bitmap_line::$3 (byte) bitmap_line::yd#5 (byte) bitmap_line::yd#6
Alias (byte) bitmap_line::yd#11 = (byte) bitmap_line::yd#3 (byte~) bitmap_line::$17 (byte) bitmap_line::yd#12
Alias (byte) bitmap_line::yd#10 = (byte) bitmap_line::yd#4 (byte~) bitmap_line::$13 (byte) bitmap_line::yd#9
Alias (byte) bitmap_line_xdyi::e#0 = (byte~) bitmap_line_xdyi::$0
Alias (byte) bitmap_line_xdyi::x#3 = (byte) bitmap_line_xdyi::x#4
Alias (byte) bitmap_line_xdyi::e#3 = (byte) bitmap_line_xdyi::e#5
Alias (byte) bitmap_line_xdyi::yd#3 = (byte) bitmap_line_xdyi::yd#4 (byte) bitmap_line_xdyi::yd#6
Alias (byte) bitmap_line_xdyi::xd#2 = (byte) bitmap_line_xdyi::xd#4 (byte) bitmap_line_xdyi::xd#3
Alias (byte) bitmap_line_xdyi::x1#3 = (byte) bitmap_line_xdyi::x1#4 (byte) bitmap_line_xdyi::x1#5
Alias (byte) bitmap_line_xdyi::y#3 = (byte) bitmap_line_xdyi::y#7 (byte) bitmap_line_xdyi::y#4
Alias (byte) bitmap_line_xdyi::e#1 = (byte~) bitmap_line_xdyi::$2 (byte) bitmap_line_xdyi::e#4
Alias (byte) bitmap_line_xdyi::x#2 = (byte) bitmap_line_xdyi::x#7
Alias (byte) bitmap_line_xdyi::e#2 = (byte~) bitmap_line_xdyi::$5
Alias (byte) bitmap_line_xdyd::e#0 = (byte~) bitmap_line_xdyd::$0
Alias (byte) bitmap_line_xdyd::x#3 = (byte) bitmap_line_xdyd::x#4
Alias (byte) bitmap_line_xdyd::e#3 = (byte) bitmap_line_xdyd::e#5
Alias (byte) bitmap_line_xdyd::yd#3 = (byte) bitmap_line_xdyd::yd#4 (byte) bitmap_line_xdyd::yd#6
Alias (byte) bitmap_line_xdyd::xd#2 = (byte) bitmap_line_xdyd::xd#4 (byte) bitmap_line_xdyd::xd#3
Alias (byte) bitmap_line_xdyd::x1#3 = (byte) bitmap_line_xdyd::x1#4 (byte) bitmap_line_xdyd::x1#5
Alias (byte) bitmap_line_xdyd::y#3 = (byte) bitmap_line_xdyd::y#7 (byte) bitmap_line_xdyd::y#4
Alias (byte) bitmap_line_xdyd::e#1 = (byte~) bitmap_line_xdyd::$2 (byte) bitmap_line_xdyd::e#4
Alias (byte) bitmap_line_xdyd::x#2 = (byte) bitmap_line_xdyd::x#7
Alias (byte) bitmap_line_xdyd::e#2 = (byte~) bitmap_line_xdyd::$5
Alias (byte) bitmap_line_ydxi::e#0 = (byte~) bitmap_line_ydxi::$0
Alias (byte) bitmap_line_ydxi::y#3 = (byte) bitmap_line_ydxi::y#4
Alias (byte) bitmap_line_ydxi::e#3 = (byte) bitmap_line_ydxi::e#5
Alias (byte) bitmap_line_ydxi::xd#3 = (byte) bitmap_line_ydxi::xd#4 (byte) bitmap_line_ydxi::xd#6
Alias (byte) bitmap_line_ydxi::yd#2 = (byte) bitmap_line_ydxi::yd#4 (byte) bitmap_line_ydxi::yd#3
Alias (byte) bitmap_line_ydxi::y1#3 = (byte) bitmap_line_ydxi::y1#4 (byte) bitmap_line_ydxi::y1#5
Alias (byte) bitmap_line_ydxi::x#3 = (byte) bitmap_line_ydxi::x#7 (byte) bitmap_line_ydxi::x#4
Alias (byte) bitmap_line_ydxi::e#1 = (byte~) bitmap_line_ydxi::$2 (byte) bitmap_line_ydxi::e#4
Alias (byte) bitmap_line_ydxi::y#2 = (byte) bitmap_line_ydxi::y#7
Alias (byte) bitmap_line_ydxi::e#2 = (byte~) bitmap_line_ydxi::$5
Alias (byte) bitmap_line_ydxd::e#0 = (byte~) bitmap_line_ydxd::$0
Alias (byte) bitmap_line_ydxd::y#2 = (byte) bitmap_line_ydxd::y#5 (byte) bitmap_line_ydxd::y#4
Alias (byte) bitmap_line_ydxd::e#3 = (byte) bitmap_line_ydxd::e#5
Alias (byte) bitmap_line_ydxd::xd#3 = (byte) bitmap_line_ydxd::xd#4 (byte) bitmap_line_ydxd::xd#6
Alias (byte) bitmap_line_ydxd::yd#2 = (byte) bitmap_line_ydxd::yd#4 (byte) bitmap_line_ydxd::yd#3
Alias (byte) bitmap_line_ydxd::y1#3 = (byte) bitmap_line_ydxd::y1#4 (byte) bitmap_line_ydxd::y1#5
Alias (byte) bitmap_line_ydxd::x#3 = (byte) bitmap_line_ydxd::x#7 (byte) bitmap_line_ydxd::x#4
Alias (byte) bitmap_line_ydxd::e#1 = (byte~) bitmap_line_ydxd::$2 (byte) bitmap_line_ydxd::e#4
Alias (byte) bitmap_line_ydxd::y#3 = (byte) bitmap_line_ydxd::y#8
Alias (byte) bitmap_line_ydxd::e#2 = (byte~) bitmap_line_ydxd::$5
Alias (byte*) print_screen#12 = (byte*) print_screen#16 (byte*) print_screen#17 (byte*) print_screen#4
Alias (byte*) print_line_cursor#10 = (byte*) print_line_cursor#33 (byte*) print_line_cursor#34 (byte*) print_line_cursor#24
Alias (byte*) print_char_cursor#11 = (byte*) print_char_cursor#35 (byte*) print_char_cursor#36 (byte*) print_char_cursor#25
Alias (byte) dtv_control#1 = (byte) dtv_control#98 (byte) dtv_control#99 (byte) dtv_control#56
Alias (byte*) print_screen#11 = (byte*) print_screen#3
Alias (byte*) print_line_cursor#23 = (byte*) print_line_cursor#9
Alias (byte*) print_char_cursor#10 = (byte*) print_char_cursor#24
Alias (byte) dtv_control#0 = (byte) dtv_control#55
Alias (byte*) print_screen#50 = (byte*) print_screen#67
Alias (byte*) print_line_cursor#70 = (byte*) print_line_cursor#86
Alias (byte*) print_char_cursor#70 = (byte*) print_char_cursor#86
Alias (byte) dtv_control#235 = (byte) dtv_control#245
Alias (byte*) menu::c#2 = (byte*) menu::c#3
Alias (byte*) print_screen#18 = (byte*) print_screen#51 (byte*) print_screen#34
Alias (byte*) print_line_cursor#35 = (byte*) print_line_cursor#71 (byte*) print_line_cursor#53
Alias (byte*) print_char_cursor#37 = (byte*) print_char_cursor#71 (byte*) print_char_cursor#55
Alias (byte) dtv_control#131 = (byte) dtv_control#236 (byte) dtv_control#220 (byte) dtv_control#203 (byte) dtv_control#188 (byte) dtv_control#159
Alias (byte*) print_screen#13 = (byte*) print_screen#5 (byte*) print_screen#52 (byte*) print_screen#35
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_line_cursor#12 = (byte*) print_line_cursor#26
Alias (byte*) print_char_cursor#13 = (byte*) print_char_cursor#27
Alias (byte*) print_char_cursor#14 = (byte*) print_char_cursor#28
Alias (byte*) print_line_cursor#13 = (byte*) print_line_cursor#27
Alias (byte) dtv_control#100 = (byte) dtv_control#160 (byte) dtv_control#101 (byte) dtv_control#133 (byte) dtv_control#161 (byte) dtv_control#134 (byte) dtv_control#162 (byte) dtv_control#135 (byte) dtv_control#102 (byte) dtv_control#163 (byte) dtv_control#136 (byte) dtv_control#103 (byte) dtv_control#164 (byte) dtv_control#137 (byte) dtv_control#104 (byte) dtv_control#165 (byte) dtv_control#138 (byte) dtv_control#105 (byte) dtv_control#166 (byte) dtv_control#139 (byte) dtv_control#106 (byte) dtv_control#167 (byte) dtv_control#140 (byte) dtv_control#107 (byte) dtv_control#168 (byte) dtv_control#141 (byte) dtv_control#108 (byte) dtv_control#169 (byte) dtv_control#142 (byte) dtv_control#109 (byte) dtv_control#170 (byte) dtv_control#143 (byte) dtv_control#110 (byte) dtv_control#171 (byte) dtv_control#132 (byte) dtv_control#111 (byte) dtv_control#112
Alias (byte*) print_screen#19 = (byte*) print_screen#68 (byte*) print_screen#31 (byte*) print_screen#53 (byte*) print_screen#69 (byte*) print_screen#54 (byte*) print_screen#37 (byte*) print_screen#70 (byte*) print_screen#55 (byte*) print_screen#38 (byte*) print_screen#20 (byte*) print_screen#71 (byte*) print_screen#56 (byte*) print_screen#39 (byte*) print_screen#21 (byte*) print_screen#72 (byte*) print_screen#57 (byte*) print_screen#40 (byte*) print_screen#22 (byte*) print_screen#73 (byte*) print_screen#58 (byte*) print_screen#41 (byte*) print_screen#23 (byte*) print_screen#74 (byte*) print_screen#59 (byte*) print_screen#42 (byte*) print_screen#24 (byte*) print_screen#75 (byte*) print_screen#60 (byte*) print_screen#43 (byte*) print_screen#25 (byte*) print_screen#76 (byte*) print_screen#61 (byte*) print_screen#44 (byte*) print_screen#26 (byte*) print_screen#77 (byte*) print_screen#62 (byte*) print_screen#45 (byte*) print_screen#27 (byte*) print_screen#78 (byte*) print_screen#64 (byte*) print_screen#46 (byte*) print_screen#28 (byte*) print_screen#63 (byte*) print_screen#36 (byte*) print_screen#47 (byte*) print_screen#29 (byte*) print_screen#48 (byte*) print_screen#30
Alias (byte*) print_line_cursor#36 = (byte*) print_line_cursor#87 (byte*) print_line_cursor#48 (byte*) print_line_cursor#72 (byte*) print_line_cursor#88 (byte*) print_line_cursor#73 (byte*) print_line_cursor#55 (byte*) print_line_cursor#89 (byte*) print_line_cursor#74 (byte*) print_line_cursor#56 (byte*) print_line_cursor#37 (byte*) print_line_cursor#90 (byte*) print_line_cursor#75 (byte*) print_line_cursor#57 (byte*) print_line_cursor#38 (byte*) print_line_cursor#91 (byte*) print_line_cursor#76 (byte*) print_line_cursor#58 (byte*) print_line_cursor#39 (byte*) print_line_cursor#92 (byte*) print_line_cursor#77 (byte*) print_line_cursor#59 (byte*) print_line_cursor#40 (byte*) print_line_cursor#93 (byte*) print_line_cursor#78 (byte*) print_line_cursor#60 (byte*) print_line_cursor#41 (byte*) print_line_cursor#94 (byte*) print_line_cursor#79 (byte*) print_line_cursor#61 (byte*) print_line_cursor#42 (byte*) print_line_cursor#95 (byte*) print_line_cursor#80 (byte*) print_line_cursor#62 (byte*) print_line_cursor#43 (byte*) print_line_cursor#96 (byte*) print_line_cursor#81 (byte*) print_line_cursor#63 (byte*) print_line_cursor#44 (byte*) print_line_cursor#97 (byte*) print_line_cursor#83 (byte*) print_line_cursor#64 (byte*) print_line_cursor#45 (byte*) print_line_cursor#82 (byte*) print_line_cursor#54 (byte*) print_line_cursor#65 (byte*) print_line_cursor#46 (byte*) print_line_cursor#66 (byte*) print_line_cursor#47
Alias (byte*) print_char_cursor#38 = (byte*) print_char_cursor#87 (byte*) print_char_cursor#50 (byte*) print_char_cursor#72 (byte*) print_char_cursor#88 (byte*) print_char_cursor#73 (byte*) print_char_cursor#57 (byte*) print_char_cursor#89 (byte*) print_char_cursor#74 (byte*) print_char_cursor#58 (byte*) print_char_cursor#39 (byte*) print_char_cursor#90 (byte*) print_char_cursor#75 (byte*) print_char_cursor#59 (byte*) print_char_cursor#40 (byte*) print_char_cursor#91 (byte*) print_char_cursor#76 (byte*) print_char_cursor#60 (byte*) print_char_cursor#41 (byte*) print_char_cursor#92 (byte*) print_char_cursor#77 (byte*) print_char_cursor#61 (byte*) print_char_cursor#42 (byte*) print_char_cursor#93 (byte*) print_char_cursor#78 (byte*) print_char_cursor#62 (byte*) print_char_cursor#43 (byte*) print_char_cursor#94 (byte*) print_char_cursor#79 (byte*) print_char_cursor#63 (byte*) print_char_cursor#44 (byte*) print_char_cursor#95 (byte*) print_char_cursor#80 (byte*) print_char_cursor#64 (byte*) print_char_cursor#45 (byte*) print_char_cursor#96 (byte*) print_char_cursor#81 (byte*) print_char_cursor#65 (byte*) print_char_cursor#46 (byte*) print_char_cursor#97 (byte*) print_char_cursor#83 (byte*) print_char_cursor#66 (byte*) print_char_cursor#47 (byte*) print_char_cursor#82 (byte*) print_char_cursor#56 (byte*) print_char_cursor#67 (byte*) print_char_cursor#48 (byte*) print_char_cursor#68 (byte*) print_char_cursor#49
Alias (byte) keyboard_key_pressed::return#2 = (byte) keyboard_key_pressed::return#23
Alias (byte) keyboard_key_pressed::return#24 = (byte) keyboard_key_pressed::return#3
Alias (byte) dtv_control#2 = (byte) dtv_control#57
Alias (byte*) print_screen#14 = (byte*) print_screen#6
Alias (byte*) print_line_cursor#14 = (byte*) print_line_cursor#28
Alias (byte*) print_char_cursor#15 = (byte*) print_char_cursor#29
Alias (byte) dtv_control#3 = (byte) dtv_control#58
Alias (byte) keyboard_key_pressed::return#25 = (byte) keyboard_key_pressed::return#4
Alias (byte) dtv_control#4 = (byte) dtv_control#59
Alias (byte) keyboard_key_pressed::return#26 = (byte) keyboard_key_pressed::return#5
Alias (byte) dtv_control#5 = (byte) dtv_control#60
Alias (byte) keyboard_key_pressed::return#27 = (byte) keyboard_key_pressed::return#6
Alias (byte) dtv_control#6 = (byte) dtv_control#61
Alias (byte) keyboard_key_pressed::return#28 = (byte) keyboard_key_pressed::return#7
Alias (byte) dtv_control#62 = (byte) dtv_control#7
Alias (byte) keyboard_key_pressed::return#29 = (byte) keyboard_key_pressed::return#8
Alias (byte) dtv_control#63 = (byte) dtv_control#8
Alias (byte) keyboard_key_pressed::return#30 = (byte) keyboard_key_pressed::return#9
Alias (byte) dtv_control#64 = (byte) dtv_control#9
Alias (byte) keyboard_key_pressed::return#10 = (byte) keyboard_key_pressed::return#31
Alias (byte) dtv_control#10 = (byte) dtv_control#65
Alias (byte) keyboard_key_pressed::return#11 = (byte) keyboard_key_pressed::return#32
Alias (byte) dtv_control#11 = (byte) dtv_control#66
Alias (byte) keyboard_key_pressed::return#12 = (byte) keyboard_key_pressed::return#33
Alias (byte) dtv_control#12 = (byte) dtv_control#67
Alias (byte) keyboard_key_pressed::return#13 = (byte) keyboard_key_pressed::return#34
Alias (byte) dtv_control#13 = (byte) dtv_control#68
Alias (byte) dtv_control#14 = (byte) dtv_control#69
Alias (byte) dtv_control#113 = (byte) dtv_control#145 (byte) dtv_control#172 (byte) dtv_control#70 (byte) dtv_control#281 (byte) dtv_control#280
Alias (byte) keyboard_key_pressed::return#14 = (byte) keyboard_key_pressed::return#35
Alias (byte) keyboard_key_pressed::return#15 = (byte) keyboard_key_pressed::return#36
Alias (byte) mode_ctrl::ctrl#0 = (byte) mode_ctrl::ctrl#16 (byte) mode_ctrl::ctrl#8
Alias (byte) dtv_control#16 = (byte) dtv_control#71
Alias (byte) keyboard_key_pressed::return#16 = (byte) keyboard_key_pressed::return#37
Alias (byte) mode_ctrl::ctrl#17 = (byte) mode_ctrl::ctrl#23 (byte) mode_ctrl::ctrl#9
Alias (byte) dtv_control#269 = (byte) dtv_control#270 (byte) dtv_control#275
Alias (byte) mode_ctrl::ctrl#1 = (byte~) mode_ctrl::$7
Alias (byte) keyboard_key_pressed::return#17 = (byte) keyboard_key_pressed::return#38
Alias (byte) mode_ctrl::ctrl#10 = (byte) mode_ctrl::ctrl#18 (byte) mode_ctrl::ctrl#24
Alias (byte) dtv_control#255 = (byte) dtv_control#256 (byte) dtv_control#263
Alias (byte) mode_ctrl::ctrl#2 = (byte~) mode_ctrl::$11
Alias (byte) keyboard_key_pressed::return#18 = (byte) keyboard_key_pressed::return#39
Alias (byte) mode_ctrl::ctrl#11 = (byte) mode_ctrl::ctrl#19 (byte) mode_ctrl::ctrl#25
Alias (byte) dtv_control#237 = (byte) dtv_control#238 (byte) dtv_control#246
Alias (byte) mode_ctrl::ctrl#3 = (byte~) mode_ctrl::$15
Alias (byte) keyboard_key_pressed::return#19 = (byte) keyboard_key_pressed::return#40
Alias (byte) mode_ctrl::ctrl#12 = (byte) mode_ctrl::ctrl#20 (byte) mode_ctrl::ctrl#26
Alias (byte) dtv_control#204 = (byte) dtv_control#205 (byte) dtv_control#221
Alias (byte) mode_ctrl::ctrl#4 = (byte~) mode_ctrl::$19
Alias (byte) keyboard_key_pressed::return#20 = (byte) keyboard_key_pressed::return#41
Alias (byte) mode_ctrl::ctrl#13 = (byte) mode_ctrl::ctrl#21 (byte) mode_ctrl::ctrl#27
Alias (byte) dtv_control#173 = (byte) dtv_control#174 (byte) dtv_control#189
Alias (byte) mode_ctrl::ctrl#5 = (byte~) mode_ctrl::$23
Alias (byte) keyboard_key_pressed::return#21 = (byte) keyboard_key_pressed::return#42
Alias (byte) mode_ctrl::ctrl#22 = (byte) mode_ctrl::ctrl#28
Alias (byte) dtv_control#115 = (byte) dtv_control#116 (byte) dtv_control#146
Alias (byte) mode_ctrl::ctrl#6 = (byte~) mode_ctrl::$27
Alias (byte) mode_ctrl::ctrl#14 = (byte) mode_ctrl::ctrl#15
Alias (byte) dtv_control#206 = (byte) dtv_control#222
Alias (byte*) mode_stdchar::COLORS#0 = (byte*) mode_stdchar::col#0
Alias (byte*) mode_stdchar::SCREEN#0 = (byte*) mode_stdchar::ch#0
Alias (byte) mode_stdchar::cy#2 = (byte) mode_stdchar::cy#3
Alias (byte*) mode_stdchar::col#1 = (byte*) mode_stdchar::col#4
Alias (byte*) mode_stdchar::ch#1 = (byte*) mode_stdchar::ch#4
Alias (byte) dtv_control#117 = (byte) dtv_control#147 (byte) dtv_control#175
Alias (byte) dtv_control#19 = (byte) dtv_control#73 (byte) dtv_control#74 (byte) dtv_control#20
Alias (byte) dtv_control#207 = (byte) dtv_control#223
Alias (byte*) mode_ecmchar::COLORS#0 = (byte*) mode_ecmchar::col#0
Alias (byte*) mode_ecmchar::SCREEN#0 = (byte*) mode_ecmchar::ch#0
Alias (byte) mode_ecmchar::cy#2 = (byte) mode_ecmchar::cy#3
Alias (byte*) mode_ecmchar::col#1 = (byte*) mode_ecmchar::col#4
Alias (byte*) mode_ecmchar::ch#1 = (byte*) mode_ecmchar::ch#4
Alias (byte) dtv_control#118 = (byte) dtv_control#148 (byte) dtv_control#176
Alias (byte) dtv_control#22 = (byte) dtv_control#75 (byte) dtv_control#76 (byte) dtv_control#23
Alias (byte) dtv_control#208 = (byte) dtv_control#224
Alias (byte*) mode_mcchar::COLORS#0 = (byte*) mode_mcchar::col#0
Alias (byte*) mode_mcchar::SCREEN#0 = (byte*) mode_mcchar::ch#0
Alias (byte) mode_mcchar::cy#2 = (byte) mode_mcchar::cy#3
Alias (byte*) mode_mcchar::col#1 = (byte*) mode_mcchar::col#4
Alias (byte*) mode_mcchar::ch#1 = (byte*) mode_mcchar::ch#4
Alias (byte) dtv_control#119 = (byte) dtv_control#149 (byte) dtv_control#177
Alias (byte) dtv_control#25 = (byte) dtv_control#77 (byte) dtv_control#78 (byte) dtv_control#26
Alias (byte) dtv_control#257 = (byte) dtv_control#264
Alias (byte*) mode_stdbitmap::SCREEN#0 = (byte*) mode_stdbitmap::ch#0
Alias (byte) mode_stdbitmap::col#0 = (byte~) mode_stdbitmap::$23
Alias (byte) mode_stdbitmap::col2#0 = (byte~) mode_stdbitmap::$24
Alias (byte) mode_stdbitmap::cy#2 = (byte) mode_stdbitmap::cy#3
Alias (byte*) mode_stdbitmap::ch#1 = (byte*) mode_stdbitmap::ch#4
Alias (byte) dtv_control#178 = (byte) dtv_control#225 (byte) dtv_control#239 (byte) dtv_control#209 (byte) dtv_control#193
Alias (byte) mode_stdbitmap::l#2 = (byte) mode_stdbitmap::l#3 (byte) mode_stdbitmap::l#4
Alias (byte) dtv_control#120 = (byte) dtv_control#194 (byte) dtv_control#150 (byte) dtv_control#179
Alias (byte) dtv_control#28 = (byte) dtv_control#79 (byte) dtv_control#80 (byte) dtv_control#29
Alias (byte) dtv_control#210 = (byte) dtv_control#226
Alias (byte*) mode_hicolstdchar::COLORS#0 = (byte*) mode_hicolstdchar::col#0
Alias (byte*) mode_hicolstdchar::SCREEN#0 = (byte*) mode_hicolstdchar::ch#0
Alias (byte) mode_hicolstdchar::v#0 = (byte~) mode_hicolstdchar::$28
Alias (byte) mode_hicolstdchar::cy#2 = (byte) mode_hicolstdchar::cy#3
Alias (byte*) mode_hicolstdchar::col#1 = (byte*) mode_hicolstdchar::col#4
Alias (byte*) mode_hicolstdchar::ch#1 = (byte*) mode_hicolstdchar::ch#4
Alias (byte) dtv_control#121 = (byte) dtv_control#151 (byte) dtv_control#180
Alias (byte) dtv_control#31 = (byte) dtv_control#81 (byte) dtv_control#82 (byte) dtv_control#32
Alias (byte) dtv_control#211 = (byte) dtv_control#227
Alias (byte*) mode_hicolecmchar::COLORS#0 = (byte*) mode_hicolecmchar::col#0
Alias (byte*) mode_hicolecmchar::SCREEN#0 = (byte*) mode_hicolecmchar::ch#0
Alias (byte) mode_hicolecmchar::v#0 = (byte~) mode_hicolecmchar::$29
Alias (byte) mode_hicolecmchar::cy#2 = (byte) mode_hicolecmchar::cy#3
Alias (byte*) mode_hicolecmchar::col#1 = (byte*) mode_hicolecmchar::col#4
Alias (byte*) mode_hicolecmchar::ch#1 = (byte*) mode_hicolecmchar::ch#4
Alias (byte) dtv_control#122 = (byte) dtv_control#152 (byte) dtv_control#181
Alias (byte) dtv_control#34 = (byte) dtv_control#83 (byte) dtv_control#84 (byte) dtv_control#35
Alias (byte) dtv_control#212 = (byte) dtv_control#228
Alias (byte*) mode_hicolmcchar::COLORS#0 = (byte*) mode_hicolmcchar::col#0
Alias (byte*) mode_hicolmcchar::SCREEN#0 = (byte*) mode_hicolmcchar::ch#0
Alias (byte) mode_hicolmcchar::v#0 = (byte~) mode_hicolmcchar::$29
Alias (byte) mode_hicolmcchar::cy#2 = (byte) mode_hicolmcchar::cy#3
Alias (byte*) mode_hicolmcchar::col#1 = (byte*) mode_hicolmcchar::col#4
Alias (byte*) mode_hicolmcchar::ch#1 = (byte*) mode_hicolmcchar::ch#4
Alias (byte) dtv_control#123 = (byte) dtv_control#153 (byte) dtv_control#182
Alias (byte) dtv_control#37 = (byte) dtv_control#85 (byte) dtv_control#86 (byte) dtv_control#38
Alias (byte) dtv_control#39 = (byte~) mode_twoplanebitmap::$0
Alias (byte) dtv_control#289 = (byte) dtv_control#290
Alias (byte*) mode_twoplanebitmap::COLORS#0 = (byte*) mode_twoplanebitmap::col#0
Alias (byte) mode_twoplanebitmap::cy#2 = (byte) mode_twoplanebitmap::cy#3
Alias (byte*) mode_twoplanebitmap::col#1 = (byte*) mode_twoplanebitmap::col#4
Alias (byte) dtv_control#271 = (byte) dtv_control#276 (byte) dtv_control#282
Alias (byte*) mode_twoplanebitmap::PLANEA#0 = (byte*) mode_twoplanebitmap::gfxa#0
Alias (byte*) mode_twoplanebitmap::gfxa#3 = (byte*) mode_twoplanebitmap::gfxa#5 (byte*) mode_twoplanebitmap::gfxa#4
Alias (byte) mode_twoplanebitmap::ax#3 = (byte) mode_twoplanebitmap::ax#4 (byte) mode_twoplanebitmap::ax#5
Alias (byte) mode_twoplanebitmap::ay#2 = (byte) mode_twoplanebitmap::ay#7 (byte) mode_twoplanebitmap::ay#6
Alias (byte) dtv_control#248 = (byte) dtv_control#249 (byte) dtv_control#258
Alias (byte) mode_twoplanebitmap::ay#3 = (byte) mode_twoplanebitmap::ay#4
Alias (byte*) mode_twoplanebitmap::gfxa#6 = (byte*) mode_twoplanebitmap::gfxa#8
Alias (byte) dtv_control#213 = (byte) dtv_control#229 (byte) dtv_control#240
Alias (byte*) mode_twoplanebitmap::PLANEB#0 = (byte*) mode_twoplanebitmap::gfxb#0
Alias (byte) mode_twoplanebitmap::by#2 = (byte) mode_twoplanebitmap::by#3
Alias (byte*) mode_twoplanebitmap::gfxb#1 = (byte*) mode_twoplanebitmap::gfxb#4
Alias (byte) dtv_control#124 = (byte) dtv_control#154 (byte) dtv_control#183
Alias (byte) dtv_control#40 = (byte) dtv_control#87 (byte) dtv_control#88 (byte) dtv_control#41
Alias (byte) dtv_control#42 = (byte~) mode_sixsfred::$0
Alias (byte) dtv_control#283 = (byte) dtv_control#287
Alias (byte*) mode_sixsfred::COLORS#0 = (byte*) mode_sixsfred::col#0
Alias (byte) mode_sixsfred::cy#2 = (byte) mode_sixsfred::cy#3
Alias (byte*) mode_sixsfred::col#1 = (byte*) mode_sixsfred::col#4
Alias (byte) dtv_control#259 = (byte) dtv_control#266 (byte) dtv_control#272
Alias (byte*) mode_sixsfred::PLANEA#0 = (byte*) mode_sixsfred::gfxa#0
Alias (byte) mode_sixsfred::row#0 = (byte~) mode_sixsfred::$22
Alias (byte) mode_sixsfred::ay#2 = (byte) mode_sixsfred::ay#3
Alias (byte*) mode_sixsfred::gfxa#1 = (byte*) mode_sixsfred::gfxa#4
Alias (byte) dtv_control#214 = (byte) dtv_control#230 (byte) dtv_control#241
Alias (byte*) mode_sixsfred::PLANEB#0 = (byte*) mode_sixsfred::gfxb#0
Alias (byte) mode_sixsfred::by#2 = (byte) mode_sixsfred::by#3
Alias (byte*) mode_sixsfred::gfxb#1 = (byte*) mode_sixsfred::gfxb#4
Alias (byte) dtv_control#125 = (byte) dtv_control#155 (byte) dtv_control#184
Alias (byte) dtv_control#43 = (byte) dtv_control#89 (byte) dtv_control#90 (byte) dtv_control#44
Alias (byte) dtv_control#284 = (byte) dtv_control#288
Alias (byte*) mode_sixsfred2::COLORS#0 = (byte*) mode_sixsfred2::col#0
Alias (byte) mode_sixsfred2::cy#2 = (byte) mode_sixsfred2::cy#3
Alias (byte*) mode_sixsfred2::col#1 = (byte*) mode_sixsfred2::col#4
Alias (byte) dtv_control#260 = (byte) dtv_control#267 (byte) dtv_control#273
Alias (byte*) mode_sixsfred2::PLANEA#0 = (byte*) mode_sixsfred2::gfxa#0
Alias (byte) mode_sixsfred2::row#0 = (byte~) mode_sixsfred2::$22
Alias (byte) mode_sixsfred2::ay#2 = (byte) mode_sixsfred2::ay#3
Alias (byte*) mode_sixsfred2::gfxa#1 = (byte*) mode_sixsfred2::gfxa#4
Alias (byte) dtv_control#215 = (byte) dtv_control#231 (byte) dtv_control#242
Alias (byte*) mode_sixsfred2::PLANEB#0 = (byte*) mode_sixsfred2::gfxb#0
Alias (byte) mode_sixsfred2::by#2 = (byte) mode_sixsfred2::by#3
Alias (byte*) mode_sixsfred2::gfxb#1 = (byte*) mode_sixsfred2::gfxb#4
Alias (byte) dtv_control#126 = (byte) dtv_control#156 (byte) dtv_control#185
Alias (byte) dtv_control#46 = (byte) dtv_control#91 (byte) dtv_control#92 (byte) dtv_control#47
Alias (byte) dtv_control#48 = (byte~) mode_8bpppixelcell::$1
Alias (byte) dtv_control#279 = (byte) dtv_control#285
Alias (byte*) mode_8bpppixelcell::PLANEA#0 = (byte*) mode_8bpppixelcell::gfxa#0
Alias (byte) mode_8bpppixelcell::ay#2 = (byte) mode_8bpppixelcell::ay#3
Alias (byte*) mode_8bpppixelcell::gfxa#1 = (byte*) mode_8bpppixelcell::gfxa#4
Alias (byte) dtv_control#252 = (byte) dtv_control#261 (byte) dtv_control#268
Alias (byte*) mode_8bpppixelcell::PLANEB#0 = (byte*) mode_8bpppixelcell::gfxb#0
Alias (byte*) mode_8bpppixelcell::CHARGEN#0 = (byte*) mode_8bpppixelcell::chargen#0
Alias (byte) mode_8bpppixelcell::bits#1 = (byte~) mode_8bpppixelcell::$23
Alias (byte) mode_8bpppixelcell::col#3 = (byte) mode_8bpppixelcell::col#4 (byte) mode_8bpppixelcell::c#1
Alias (byte*) mode_8bpppixelcell::gfxb#3 = (byte*) mode_8bpppixelcell::gfxb#4
Alias (byte) mode_8bpppixelcell::bits#2 = (byte) mode_8bpppixelcell::bits#4
Alias (byte) mode_8bpppixelcell::cp#3 = (byte) mode_8bpppixelcell::cp#4
Alias (byte) mode_8bpppixelcell::cr#4 = (byte) mode_8bpppixelcell::cr#5
Alias (byte*) mode_8bpppixelcell::chargen#7 = (byte*) mode_8bpppixelcell::chargen#8
Alias (byte) mode_8bpppixelcell::ch#5 = (byte) mode_8bpppixelcell::ch#6
Alias (byte) dtv_control#216 = (byte) dtv_control#217
Alias (byte) mode_8bpppixelcell::cr#2 = (byte) mode_8bpppixelcell::cr#3
Alias (byte*) mode_8bpppixelcell::chargen#3 = (byte*) mode_8bpppixelcell::chargen#6 (byte*) mode_8bpppixelcell::chargen#5
Alias (byte) mode_8bpppixelcell::ch#2 = (byte) mode_8bpppixelcell::ch#3 (byte) mode_8bpppixelcell::ch#4
Alias (byte*) mode_8bpppixelcell::gfxb#1 = (byte*) mode_8bpppixelcell::gfxb#6 (byte*) mode_8bpppixelcell::gfxb#8
Alias (byte) mode_8bpppixelcell::col#1 = (byte) mode_8bpppixelcell::col#6 (byte) mode_8bpppixelcell::col#8
Alias (byte) dtv_control#127 = (byte) dtv_control#186 (byte) dtv_control#201 (byte) dtv_control#157
Alias (byte) dtv_control#49 = (byte) dtv_control#93 (byte) dtv_control#94 (byte) dtv_control#50
Alias (byte) dtv_control#51 = (byte~) mode_8bppchunkybmm::$2
Alias (byte) dtv_control#244 = (byte) dtv_control#253 (byte) dtv_control#262
Alias (byte) mode_8bppchunkybmm::gfxbCpuBank#0 = (byte~) mode_8bppchunkybmm::$17 (byte) mode_8bppchunkybmm::gfxbCpuBank#3
Alias (byte) mode_8bppchunkybmm::c#0 = (byte~) mode_8bppchunkybmm::$27
Alias (byte) mode_8bppchunkybmm::gfxbCpuBank#4 = (byte) mode_8bppchunkybmm::gfxbCpuBank#6 (byte) mode_8bppchunkybmm::gfxbCpuBank#5
Alias (word) mode_8bppchunkybmm::x#3 = (word) mode_8bppchunkybmm::x#5 (word) mode_8bppchunkybmm::x#4
Alias (byte) mode_8bppchunkybmm::y#4 = (byte) mode_8bppchunkybmm::y#7 (byte) mode_8bppchunkybmm::y#5
Alias (byte) dtv_control#218 = (byte) dtv_control#234 (byte) dtv_control#219
Alias (byte) mode_8bppchunkybmm::y#2 = (byte) mode_8bppchunkybmm::y#3
Alias (byte*) mode_8bppchunkybmm::gfxb#1 = (byte*) mode_8bppchunkybmm::gfxb#6
Alias (byte) mode_8bppchunkybmm::gfxbCpuBank#8 = (byte) mode_8bppchunkybmm::gfxbCpuBank#9
Alias (byte) dtv_control#128 = (byte) dtv_control#187 (byte) dtv_control#202 (byte) dtv_control#158
Alias (byte) dtvSetCpuBankSegment1::cpuBankIdx#2 = (byte~) mode_8bppchunkybmm::$19
Alias (byte) dtv_control#52 = (byte) dtv_control#95 (byte) dtv_control#96 (byte) dtv_control#53
Alias (byte) dtv_control#129 = (byte) dtv_control#15
Alias (byte*) print_screen#15 = (byte*) print_screen#7
Alias (byte*) print_line_cursor#15 = (byte*) print_line_cursor#29
Alias (byte*) print_char_cursor#16 = (byte*) print_char_cursor#30
Alias (byte) dtv_control#54 = (byte) dtv_control#97
Successful SSA optimization Pass2AliasElimination
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#5
Alias (byte*) print_line_cursor#30 = (byte*) print_line_cursor#68
Alias (byte) bitmap_init::x#2 = (byte) bitmap_init::x#3
Alias (byte*) bitmap_init::bitmap#1 = (byte*) bitmap_init::bitmap#3
Alias (byte) bitmap_init::y#2 = (byte) bitmap_init::y#3
Alias (byte) bitmap_line_xdyi::x1#2 = (byte) bitmap_line_xdyi::x1#3
Alias (byte) bitmap_line_xdyi::x#2 = (byte) bitmap_line_xdyi::x#5
Alias (byte) bitmap_line_xdyi::yd#3 = (byte) bitmap_line_xdyi::yd#5
Alias (byte) bitmap_line_xdyi::xd#2 = (byte) bitmap_line_xdyi::xd#6
Alias (byte) bitmap_line_xdyd::x1#2 = (byte) bitmap_line_xdyd::x1#3
Alias (byte) bitmap_line_xdyd::x#2 = (byte) bitmap_line_xdyd::x#5
Alias (byte) bitmap_line_xdyd::yd#3 = (byte) bitmap_line_xdyd::yd#5
Alias (byte) bitmap_line_xdyd::xd#2 = (byte) bitmap_line_xdyd::xd#6
Alias (byte) bitmap_line_ydxi::y1#2 = (byte) bitmap_line_ydxi::y1#3
Alias (byte) bitmap_line_ydxi::y#2 = (byte) bitmap_line_ydxi::y#5
Alias (byte) bitmap_line_ydxi::xd#3 = (byte) bitmap_line_ydxi::xd#5
Alias (byte) bitmap_line_ydxi::yd#2 = (byte) bitmap_line_ydxi::yd#6
Alias (byte) bitmap_line_ydxd::y1#2 = (byte) bitmap_line_ydxd::y1#3
Alias (byte) bitmap_line_ydxd::y#3 = (byte) bitmap_line_ydxd::y#6
Alias (byte) bitmap_line_ydxd::xd#3 = (byte) bitmap_line_ydxd::xd#5
Alias (byte) bitmap_line_ydxd::yd#2 = (byte) bitmap_line_ydxd::yd#6
Alias (byte*) print_screen#14 = (byte*) print_screen#19
Alias (byte*) print_line_cursor#14 = (byte*) print_line_cursor#36
Alias (byte*) print_char_cursor#15 = (byte*) print_char_cursor#38
Alias (byte) dtv_control#113 = (byte) dtv_control#269 (byte) dtv_control#255 (byte) dtv_control#237 (byte) dtv_control#204 (byte) dtv_control#173 (byte) dtv_control#115 (byte) dtv_control#72
Alias (byte) mode_twoplanebitmap::ax#2 = (byte) mode_twoplanebitmap::ax#3
Alias (byte) mode_twoplanebitmap::ay#2 = (byte) mode_twoplanebitmap::ay#3
Alias (byte) dtv_control#213 = (byte) dtv_control#248
Alias (byte*) mode_8bpppixelcell::gfxb#2 = (byte*) mode_8bpppixelcell::gfxb#3
Alias (byte) mode_8bpppixelcell::bits#2 = (byte) mode_8bpppixelcell::bits#3
Alias (byte) mode_8bpppixelcell::col#2 = (byte) mode_8bpppixelcell::col#3
Alias (byte) mode_8bpppixelcell::cp#2 = (byte) mode_8bpppixelcell::cp#3
Alias (byte) mode_8bpppixelcell::cr#2 = (byte) mode_8bpppixelcell::cr#4
Alias (byte*) mode_8bpppixelcell::chargen#3 = (byte*) mode_8bpppixelcell::chargen#7
Alias (byte) mode_8bpppixelcell::ch#2 = (byte) mode_8bpppixelcell::ch#5
Alias (byte) dtv_control#127 = (byte) dtv_control#216
Alias (word) mode_8bppchunkybmm::x#2 = (word) mode_8bppchunkybmm::x#3
Alias (byte) mode_8bppchunkybmm::y#2 = (byte) mode_8bppchunkybmm::y#4
Alias (byte) dtv_control#128 = (byte) dtv_control#218
Successful SSA optimization Pass2AliasElimination
Identical Phi Values (word) memset::num#1 (word) memset::num#0
Identical Phi Values (void*) memset::str#2 (void*) memset::str#0
Identical Phi Values (byte) memset::c#3 (byte) memset::c#0
Identical Phi Values (byte*) memset::end#1 (byte*) memset::end#0
Identical Phi Values (void*) memset::str#4 (void*) memset::str#2
Identical Phi Values (byte) memset::c#1 (byte) memset::c#3
Identical Phi Values (byte*) print_str_lines::str#4 (byte*) print_str_lines::str#1
Identical Phi Values (byte*) print_char_cursor#52 (byte*) print_char_cursor#13
Identical Phi Values (byte*) print_line_cursor#50 (byte*) print_line_cursor#12
Identical Phi Values (byte*) print_line_cursor#30 (byte*) print_line_cursor#17
Identical Phi Values (byte*) print_line_cursor#1 (byte*) print_line_cursor#19
Identical Phi Values (byte*) print_char_cursor#18 (byte*) print_line_cursor#19
Identical Phi Values (byte*) print_line_cursor#32 (byte*) print_line_cursor#30
Identical Phi Values (byte*) print_char_cursor#34 (byte*) print_char_cursor#32
Identical Phi Values (byte*) print_char_cursor#20 (byte*) print_char_cursor#34
Identical Phi Values (byte*) print_line_cursor#21 (byte*) print_screen#13
Identical Phi Values (byte*) print_set_screen::screen#1 (byte*) print_set_screen::screen#0
Identical Phi Values (byte) keyboard_matrix_read::rowid#1 (byte) keyboard_matrix_read::rowid#0
Identical Phi Values (byte*) bitmap_init::bitmap#2 (byte*) bitmap_init::bitmap#0
Identical Phi Values (byte*) bitmap_init::bitmap#1 (byte*) bitmap_init::bitmap#2
Identical Phi Values (byte) bitmap_clear::y#2 (byte) bitmap_clear::y#4
Identical Phi Values (byte) bitmap_line::x0#1 (byte) bitmap_line::x0#0
Identical Phi Values (byte) bitmap_line::x1#1 (byte) bitmap_line::x1#0
Identical Phi Values (byte) bitmap_line::y0#1 (byte) bitmap_line::y0#0
Identical Phi Values (byte) bitmap_line::y1#1 (byte) bitmap_line::y1#0
Identical Phi Values (byte) bitmap_line_xdyi::yd#3 (byte) bitmap_line_xdyi::yd#2
Identical Phi Values (byte) bitmap_line_xdyi::xd#2 (byte) bitmap_line_xdyi::xd#5
Identical Phi Values (byte) bitmap_line_xdyi::x1#2 (byte) bitmap_line_xdyi::x1#6
Identical Phi Values (byte) bitmap_line_xdyd::yd#3 (byte) bitmap_line_xdyd::yd#2
Identical Phi Values (byte) bitmap_line_xdyd::xd#2 (byte) bitmap_line_xdyd::xd#5
Identical Phi Values (byte) bitmap_line_xdyd::x1#2 (byte) bitmap_line_xdyd::x1#6
Identical Phi Values (byte) bitmap_line_ydxi::xd#3 (byte) bitmap_line_ydxi::xd#2
Identical Phi Values (byte) bitmap_line_ydxi::yd#2 (byte) bitmap_line_ydxi::yd#5
Identical Phi Values (byte) bitmap_line_ydxi::y1#2 (byte) bitmap_line_ydxi::y1#6
Identical Phi Values (byte) bitmap_line_ydxd::xd#3 (byte) bitmap_line_ydxd::xd#2
Identical Phi Values (byte) bitmap_line_ydxd::yd#2 (byte) bitmap_line_ydxd::yd#5
Identical Phi Values (byte) bitmap_line_ydxd::y1#2 (byte) bitmap_line_ydxd::y1#6
Identical Phi Values (byte*) print_screen#33 (byte*) print_screen#0
Identical Phi Values (byte*) print_line_cursor#52 (byte*) print_screen#0
Identical Phi Values (byte*) print_char_cursor#54 (byte*) print_screen#0
Identical Phi Values (byte) dtv_control#130 (byte) dtv_control#129
Identical Phi Values (byte*) print_screen#11 (byte*) print_screen#14
Identical Phi Values (byte*) print_line_cursor#23 (byte*) print_line_cursor#14
Identical Phi Values (byte*) print_char_cursor#10 (byte*) print_char_cursor#15
Identical Phi Values (byte) dtv_control#0 (byte) dtv_control#3
Identical Phi Values (byte*) print_screen#80 (byte*) print_screen#12
Identical Phi Values (byte*) print_line_cursor#99 (byte*) print_line_cursor#10
Identical Phi Values (byte*) print_char_cursor#99 (byte*) print_char_cursor#11
Identical Phi Values (byte) dtv_control#254 (byte) dtv_control#1
Identical Phi Values (byte*) print_screen#50 (byte*) print_screen#80
Identical Phi Values (byte*) print_line_cursor#70 (byte*) print_line_cursor#99
Identical Phi Values (byte*) print_char_cursor#70 (byte*) print_char_cursor#99
Identical Phi Values (byte) dtv_control#235 (byte) dtv_control#254
Identical Phi Values (byte*) print_screen#18 (byte*) print_screen#50
Identical Phi Values (byte*) print_line_cursor#35 (byte*) print_line_cursor#70
Identical Phi Values (byte*) print_char_cursor#37 (byte*) print_char_cursor#70
Identical Phi Values (byte) dtv_control#131 (byte) dtv_control#235
Identical Phi Values (byte*) print_screen#13 (byte*) print_screen#1
Identical Phi Values (byte*) print_line_cursor#11 (byte*) print_screen#1
Identical Phi Values (byte*) print_char_cursor#12 (byte*) print_screen#1
Identical Phi Values (byte*) print_line_cursor#12 (byte*) print_line_cursor#21
Identical Phi Values (byte*) print_char_cursor#13 (byte*) print_line_cursor#21
Identical Phi Values (byte*) print_char_cursor#14 (byte*) print_char_cursor#19
Identical Phi Values (byte*) print_line_cursor#13 (byte*) print_line_cursor#17
Identical Phi Values (byte*) print_screen#14 (byte*) print_screen#13
Identical Phi Values (byte*) print_line_cursor#14 (byte*) print_line_cursor#13
Identical Phi Values (byte*) print_char_cursor#15 (byte*) print_char_cursor#14
Identical Phi Values (byte) dtv_control#100 (byte) dtv_control#131
Identical Phi Values (byte) dtv_control#2 (byte) dtv_control#19
Identical Phi Values (byte) dtv_control#4 (byte) dtv_control#22
Identical Phi Values (byte) dtv_control#5 (byte) dtv_control#25
Identical Phi Values (byte) dtv_control#6 (byte) dtv_control#28
Identical Phi Values (byte) dtv_control#62 (byte) dtv_control#31
Identical Phi Values (byte) dtv_control#63 (byte) dtv_control#34
Identical Phi Values (byte) dtv_control#64 (byte) dtv_control#37
Identical Phi Values (byte) dtv_control#10 (byte) dtv_control#46
Identical Phi Values (byte) dtv_control#11 (byte) dtv_control#40
Identical Phi Values (byte) dtv_control#12 (byte) dtv_control#43
Identical Phi Values (byte) dtv_control#13 (byte) dtv_control#49
Identical Phi Values (byte) dtv_control#14 (byte) dtv_control#52
Identical Phi Values (byte) dtv_control#113 (byte) dtv_control#114
Identical Phi Values (byte) dtv_control#206 (byte) dtv_control#18
Identical Phi Values (byte) mode_stdchar::cy#2 (byte) mode_stdchar::cy#4
Identical Phi Values (byte) dtv_control#117 (byte) dtv_control#190
Identical Phi Values (byte) dtv_control#19 (byte) dtv_control#16
Identical Phi Values (byte) dtv_control#207 (byte) dtv_control#21
Identical Phi Values (byte) mode_ecmchar::cy#2 (byte) mode_ecmchar::cy#4
Identical Phi Values (byte) dtv_control#118 (byte) dtv_control#191
Identical Phi Values (byte) dtv_control#22 (byte) dtv_control#16
Identical Phi Values (byte) dtv_control#208 (byte) dtv_control#24
Identical Phi Values (byte) mode_mcchar::cy#2 (byte) mode_mcchar::cy#4
Identical Phi Values (byte) dtv_control#119 (byte) dtv_control#192
Identical Phi Values (byte) dtv_control#25 (byte) dtv_control#16
Identical Phi Values (byte) dtv_control#257 (byte) dtv_control#27
Identical Phi Values (byte) mode_stdbitmap::cy#2 (byte) mode_stdbitmap::cy#4
Identical Phi Values (byte) dtv_control#178 (byte) dtv_control#247
Identical Phi Values (byte) dtv_control#120 (byte) dtv_control#178
Identical Phi Values (byte) dtv_control#28 (byte) dtv_control#16
Identical Phi Values (byte) dtv_control#210 (byte) dtv_control#30
Identical Phi Values (byte) mode_hicolstdchar::cy#2 (byte) mode_hicolstdchar::cy#4
Identical Phi Values (byte) dtv_control#121 (byte) dtv_control#195
Identical Phi Values (byte) dtv_control#31 (byte) dtv_control#16
Identical Phi Values (byte) dtv_control#211 (byte) dtv_control#33
Identical Phi Values (byte) mode_hicolecmchar::cy#2 (byte) mode_hicolecmchar::cy#4
Identical Phi Values (byte) dtv_control#122 (byte) dtv_control#196
Identical Phi Values (byte) dtv_control#34 (byte) dtv_control#16
Identical Phi Values (byte) dtv_control#212 (byte) dtv_control#36
Identical Phi Values (byte) mode_hicolmcchar::cy#2 (byte) mode_hicolmcchar::cy#4
Identical Phi Values (byte) dtv_control#123 (byte) dtv_control#197
Identical Phi Values (byte) dtv_control#37 (byte) dtv_control#16
Identical Phi Values (byte) dtv_control#289 (byte) dtv_control#39
Identical Phi Values (byte) mode_twoplanebitmap::cy#2 (byte) mode_twoplanebitmap::cy#4
Identical Phi Values (byte) dtv_control#271 (byte) dtv_control#286
Identical Phi Values (byte) mode_twoplanebitmap::ay#2 (byte) mode_twoplanebitmap::ay#5
Identical Phi Values (byte) dtv_control#213 (byte) dtv_control#265
Identical Phi Values (byte) mode_twoplanebitmap::by#2 (byte) mode_twoplanebitmap::by#4
Identical Phi Values (byte) dtv_control#124 (byte) dtv_control#198
Identical Phi Values (byte) dtv_control#40 (byte) dtv_control#16
Identical Phi Values (byte) dtv_control#283 (byte) dtv_control#42
Identical Phi Values (byte) mode_sixsfred::cy#2 (byte) mode_sixsfred::cy#4
Identical Phi Values (byte) dtv_control#259 (byte) dtv_control#277
Identical Phi Values (byte) mode_sixsfred::ay#2 (byte) mode_sixsfred::ay#4
Identical Phi Values (byte) dtv_control#214 (byte) dtv_control#250
Identical Phi Values (byte) mode_sixsfred::by#2 (byte) mode_sixsfred::by#4
Identical Phi Values (byte) dtv_control#125 (byte) dtv_control#199
Identical Phi Values (byte) dtv_control#43 (byte) dtv_control#16
Identical Phi Values (byte) dtv_control#284 (byte) dtv_control#45
Identical Phi Values (byte) mode_sixsfred2::cy#2 (byte) mode_sixsfred2::cy#4
Identical Phi Values (byte) dtv_control#260 (byte) dtv_control#278
Identical Phi Values (byte) mode_sixsfred2::ay#2 (byte) mode_sixsfred2::ay#4
Identical Phi Values (byte) dtv_control#215 (byte) dtv_control#251
Identical Phi Values (byte) mode_sixsfred2::by#2 (byte) mode_sixsfred2::by#4
Identical Phi Values (byte) dtv_control#126 (byte) dtv_control#200
Identical Phi Values (byte) dtv_control#46 (byte) dtv_control#16
Identical Phi Values (byte) dtv_control#279 (byte) dtv_control#48
Identical Phi Values (byte) mode_8bpppixelcell::ay#2 (byte) mode_8bpppixelcell::ay#4
Identical Phi Values (byte) dtv_control#252 (byte) dtv_control#274
Identical Phi Values (byte) mode_8bpppixelcell::cr#2 (byte) mode_8bpppixelcell::cr#6
Identical Phi Values (byte*) mode_8bpppixelcell::chargen#3 (byte*) mode_8bpppixelcell::chargen#1
Identical Phi Values (byte) mode_8bpppixelcell::ch#2 (byte) mode_8bpppixelcell::ch#7
Identical Phi Values (byte) dtv_control#127 (byte) dtv_control#232
Identical Phi Values (byte) dtv_control#49 (byte) dtv_control#16
Identical Phi Values (byte) dtv_control#244 (byte) dtv_control#51
Identical Phi Values (byte) mode_8bppchunkybmm::y#2 (byte) mode_8bppchunkybmm::y#6
Identical Phi Values (byte) dtv_control#128 (byte) dtv_control#233
Identical Phi Values (byte) dtv_control#52 (byte) dtv_control#16
Identical Phi Values (byte*) print_screen#15 (byte*) print_screen#12
Identical Phi Values (byte*) print_line_cursor#15 (byte*) print_line_cursor#10
Identical Phi Values (byte*) print_char_cursor#16 (byte*) print_char_cursor#11
Identical Phi Values (byte) dtv_control#54 (byte) dtv_control#1
Successful SSA optimization Pass2IdenticalPhiElimination
Identical Phi Values (void*) memset::return#0 (void*) memset::str#0
Identical Phi Values (byte) dtv_control#16 (byte) dtv_control#114
Identical Phi Values (byte) dtv_control#190 (byte) dtv_control#18
Identical Phi Values (byte) dtv_control#191 (byte) dtv_control#21
Identical Phi Values (byte) dtv_control#192 (byte) dtv_control#24
Identical Phi Values (byte) dtv_control#247 (byte) dtv_control#27
Identical Phi Values (byte) dtv_control#195 (byte) dtv_control#30
Identical Phi Values (byte) dtv_control#196 (byte) dtv_control#33
Identical Phi Values (byte) dtv_control#197 (byte) dtv_control#36
Identical Phi Values (byte) dtv_control#286 (byte) dtv_control#39
Identical Phi Values (byte) dtv_control#265 (byte) dtv_control#286
Identical Phi Values (byte) dtv_control#198 (byte) dtv_control#265
Identical Phi Values (byte) dtv_control#277 (byte) dtv_control#42
Identical Phi Values (byte) dtv_control#250 (byte) dtv_control#277
Identical Phi Values (byte) dtv_control#199 (byte) dtv_control#250
Identical Phi Values (byte) dtv_control#278 (byte) dtv_control#45
Identical Phi Values (byte) dtv_control#251 (byte) dtv_control#278
Identical Phi Values (byte) dtv_control#200 (byte) dtv_control#251
Identical Phi Values (byte) dtv_control#274 (byte) dtv_control#48
Identical Phi Values (byte) mode_8bpppixelcell::ch#7 (byte) mode_8bpppixelcell::ch#8
Identical Phi Values (byte) dtv_control#232 (byte) dtv_control#243
Identical Phi Values (byte) dtv_control#233 (byte) dtv_control#51
Successful SSA optimization Pass2IdenticalPhiElimination
Identical Phi Values (byte) dtv_control#243 (byte) dtv_control#48
Successful SSA optimization Pass2IdenticalPhiElimination
Identified duplicate assignment right side [223] (byte~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte) 7
Identified duplicate assignment right side [480] (dword~) menu::$6 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (word) $400
Identified duplicate assignment right side [824] (dword~) mode_stdchar::$6 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (word) $400
Identified duplicate assignment right side [899] (dword~) mode_ecmchar::$6 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (word) $400
Identified duplicate assignment right side [978] (dword~) mode_mcchar::$6 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (word) $400
Identified duplicate assignment right side [1144] (byte*~) mode_hicolstdchar::$6 ← (byte*) mode_hicolstdchar::COLORS#0 / (word) $400
Identified duplicate assignment right side [1218] (byte*~) mode_hicolecmchar::$6 ← (byte*) mode_hicolecmchar::COLORS#0 / (word) $400
Identified duplicate assignment right side [1296] (byte*~) mode_hicolmcchar::$6 ← (byte*) mode_hicolmcchar::COLORS#0 / (word) $400
Identified duplicate assignment right side [1367] (byte~) mode_twoplanebitmap::$1 ← (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0
Identified duplicate assignment right side [1394] (byte*~) mode_twoplanebitmap::$12 ← (byte*) mode_twoplanebitmap::COLORS#0 / (word) $400
Identified duplicate assignment right side [1475] (byte~) mode_sixsfred::$1 ← (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0
Identified duplicate assignment right side [1503] (byte*~) mode_sixsfred::$13 ← (byte*) mode_sixsfred::COLORS#0 / (word) $400
Identified duplicate assignment right side [1602] (byte*~) mode_sixsfred2::$11 ← (byte*) mode_sixsfred2::COLORS#0 / (word) $400
Identified duplicate assignment right side [1677] (byte~) mode_8bpppixelcell::$2 ← (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0
Identified duplicate assignment right side [1779] (byte~) mode_8bppchunkybmm::$3 ← (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0
Identified duplicate assignment right side [1792] (word~) mode_8bppchunkybmm::$12 ← < (dword) mode_8bppchunkybmm::PLANEB#0
Successful SSA optimization Pass2DuplicateRValueIdentification
Simple Condition (bool~) memset::$1 [65] if((word) memset::num#0<=(byte) 0) goto memset::@1
Simple Condition (bool~) memset::$4 [75] if((byte*) memset::dst#2!=(byte*) memset::end#0) goto memset::@5
Simple Condition (bool~) print_str_lines::$2 [88] if((byte) 0!=*((byte*) print_str_lines::str#2)) goto print_str_lines::@4
Simple Condition (bool~) print_str_lines::$0 [94] if((byte) 0==(byte) print_str_lines::ch#0) goto print_str_lines::@5
Simple Condition (bool~) print_str_lines::$3 [97] if((byte) 0!=(byte) print_str_lines::ch#0) goto print_str_lines::@4
Simple Condition (bool~) print_ln::$1 [115] if((byte*) print_line_cursor#19<(byte*) print_char_cursor#32) goto print_ln::@1
Simple Condition (bool~) bitmap_init::$4 [207] if((byte) bitmap_init::bits#1!=(byte) 0) goto bitmap_init::@2
Simple Condition (bool~) bitmap_init::$5 [211] if((byte) bitmap_init::x#1!=rangelast(0,$ff)) goto bitmap_init::@1
Simple Condition (bool~) bitmap_init::$12 [226] if((byte~) bitmap_init::$10!=(byte) 7) goto bitmap_init::@6
Simple Condition (bool~) bitmap_init::$14 [230] if((byte) bitmap_init::y#1!=rangelast(0,$ff)) goto bitmap_init::@5
Simple Condition (bool~) bitmap_clear::$1 [246] if((byte) bitmap_clear::x#1!=rangelast(0,$c7)) goto bitmap_clear::@2
Simple Condition (bool~) bitmap_clear::$2 [250] if((byte) bitmap_clear::y#1!=rangelast(0,$27)) goto bitmap_clear::@1
Simple Condition (bool~) bitmap_line::$0 [266] if((byte) bitmap_line::x0#0<(byte) bitmap_line::x1#0) goto bitmap_line::@1
Simple Condition (bool~) bitmap_line::$12 [271] if((byte) bitmap_line::y0#0<(byte) bitmap_line::y1#0) goto bitmap_line::@20
Simple Condition (bool~) bitmap_line::$2 [276] if((byte) bitmap_line::y0#0<(byte) bitmap_line::y1#0) goto bitmap_line::@10
Simple Condition (bool~) bitmap_line::$8 [281] if((byte) bitmap_line::yd#1<(byte) bitmap_line::xd#2) goto bitmap_line::@15
Simple Condition (bool~) bitmap_line::$4 [286] if((byte) bitmap_line::yd#2<(byte) bitmap_line::xd#2) goto bitmap_line::@11
Simple Condition (bool~) bitmap_line::$18 [319] if((byte) bitmap_line::yd#11<(byte) bitmap_line::xd#1) goto bitmap_line::@25
Simple Condition (bool~) bitmap_line::$14 [324] if((byte) bitmap_line::yd#10<(byte) bitmap_line::xd#1) goto bitmap_line::@21
Simple Condition (bool~) bitmap_line_xdyi::$4 [367] if((byte) bitmap_line_xdyi::xd#5>=(byte) bitmap_line_xdyi::e#1) goto bitmap_line_xdyi::@2
Simple Condition (bool~) bitmap_line_xdyi::$7 [371] if((byte) bitmap_line_xdyi::x#2!=(byte~) bitmap_line_xdyi::$6) goto bitmap_line_xdyi::@1
Simple Condition (bool~) bitmap_line_xdyd::$4 [390] if((byte) bitmap_line_xdyd::xd#5>=(byte) bitmap_line_xdyd::e#1) goto bitmap_line_xdyd::@2
Simple Condition (bool~) bitmap_line_xdyd::$7 [394] if((byte) bitmap_line_xdyd::x#2!=(byte~) bitmap_line_xdyd::$6) goto bitmap_line_xdyd::@1
Simple Condition (bool~) bitmap_line_ydxi::$4 [413] if((byte) bitmap_line_ydxi::yd#5>=(byte) bitmap_line_ydxi::e#1) goto bitmap_line_ydxi::@2
Simple Condition (bool~) bitmap_line_ydxi::$7 [417] if((byte) bitmap_line_ydxi::y#2!=(byte~) bitmap_line_ydxi::$6) goto bitmap_line_ydxi::@1
Simple Condition (bool~) bitmap_line_ydxd::$4 [437] if((byte) bitmap_line_ydxd::yd#5>=(byte) bitmap_line_ydxd::e#1) goto bitmap_line_ydxd::@2
Simple Condition (bool~) bitmap_line_ydxd::$7 [441] if((byte) bitmap_line_ydxd::y#3!=(byte~) bitmap_line_ydxd::$6) goto bitmap_line_ydxd::@1
Simple Condition (bool~) menu::$26 [509] if((byte) menu::i#1!=rangelast(0,$f)) goto menu::@1
Simple Condition (bool~) menu::$28 [515] if((byte*) menu::c#2!=(byte*~) menu::$27) goto menu::@4
Simple Condition (bool~) menu::$31 [547] if((byte~) menu::$29==(byte) 0) goto menu::@12
Simple Condition (bool~) menu::$35 [556] if((byte~) menu::$33==(byte) 0) goto menu::@13
Simple Condition (bool~) menu::$39 [575] if((byte~) menu::$37==(byte) 0) goto menu::@14
Simple Condition (bool~) menu::$43 [588] if((byte~) menu::$41==(byte) 0) goto menu::@15
Simple Condition (bool~) menu::$47 [601] if((byte~) menu::$45==(byte) 0) goto menu::@16
Simple Condition (bool~) menu::$51 [614] if((byte~) menu::$49==(byte) 0) goto menu::@17
Simple Condition (bool~) menu::$55 [627] if((byte~) menu::$53==(byte) 0) goto menu::@18
Simple Condition (bool~) menu::$59 [640] if((byte~) menu::$57==(byte) 0) goto menu::@19
Simple Condition (bool~) menu::$63 [653] if((byte~) menu::$61==(byte) 0) goto menu::@20
Simple Condition (bool~) menu::$67 [666] if((byte~) menu::$65==(byte) 0) goto menu::@21
Simple Condition (bool~) menu::$71 [679] if((byte~) menu::$69==(byte) 0) goto menu::@22
Simple Condition (bool~) menu::$75 [692] if((byte~) menu::$73==(byte) 0) goto menu::@9
Simple Condition (bool~) mode_ctrl::$0 [708] if(*((byte*) RASTER#0)!=(byte) $ff) goto mode_ctrl::@4
Simple Condition (bool~) mode_ctrl::$3 [717] if((byte~) mode_ctrl::$1==(byte) 0) goto mode_ctrl::@12
Simple Condition (bool~) mode_ctrl::$6 [727] if((byte~) mode_ctrl::$4==(byte) 0) goto mode_ctrl::@13
Simple Condition (bool~) mode_ctrl::$10 [739] if((byte~) mode_ctrl::$8==(byte) 0) goto mode_ctrl::@14
Simple Condition (bool~) mode_ctrl::$14 [751] if((byte~) mode_ctrl::$12==(byte) 0) goto mode_ctrl::@15
Simple Condition (bool~) mode_ctrl::$18 [763] if((byte~) mode_ctrl::$16==(byte) 0) goto mode_ctrl::@16
Simple Condition (bool~) mode_ctrl::$22 [775] if((byte~) mode_ctrl::$20==(byte) 0) goto mode_ctrl::@17
Simple Condition (bool~) mode_ctrl::$26 [787] if((byte~) mode_ctrl::$24==(byte) 0) goto mode_ctrl::@18
Simple Condition (bool~) mode_ctrl::$30 [799] if((byte~) mode_ctrl::$28==(byte) 0) goto mode_ctrl::@19
Simple Condition (bool~) mode_ctrl::$32 [806] if((byte) mode_ctrl::ctrl#14==(byte) dtv_control#114) goto mode_ctrl::@1
Simple Condition (bool~) mode_stdchar::$24 [854] if((byte) mode_stdchar::i#1!=rangelast(0,$f)) goto mode_stdchar::@1
Simple Condition (bool~) mode_stdchar::$31 [876] if((byte) mode_stdchar::cx#1!=rangelast(0,$27)) goto mode_stdchar::@4
Simple Condition (bool~) mode_stdchar::$32 [880] if((byte) mode_stdchar::cy#1!=rangelast(0,$18)) goto mode_stdchar::@3
Simple Condition (bool~) mode_ecmchar::$25 [930] if((byte) mode_ecmchar::i#1!=rangelast(0,$f)) goto mode_ecmchar::@1
Simple Condition (bool~) mode_ecmchar::$32 [955] if((byte) mode_ecmchar::cx#1!=rangelast(0,$27)) goto mode_ecmchar::@4
Simple Condition (bool~) mode_ecmchar::$33 [959] if((byte) mode_ecmchar::cy#1!=rangelast(0,$18)) goto mode_ecmchar::@3
Simple Condition (bool~) mode_mcchar::$25 [1009] if((byte) mode_mcchar::i#1!=rangelast(0,$f)) goto mode_mcchar::@1
Simple Condition (bool~) mode_mcchar::$32 [1033] if((byte) mode_mcchar::cx#1!=rangelast(0,$27)) goto mode_mcchar::@4
Simple Condition (bool~) mode_mcchar::$33 [1037] if((byte) mode_mcchar::cy#1!=rangelast(0,$18)) goto mode_mcchar::@3
Simple Condition (bool~) mode_stdbitmap::$21 [1078] if((byte) mode_stdbitmap::i#1!=rangelast(0,$f)) goto mode_stdbitmap::@1
Simple Condition (bool~) mode_stdbitmap::$27 [1098] if((byte) mode_stdbitmap::cx#1!=rangelast(0,$27)) goto mode_stdbitmap::@4
Simple Condition (bool~) mode_stdbitmap::$28 [1102] if((byte) mode_stdbitmap::cy#1!=rangelast(0,$18)) goto mode_stdbitmap::@3
Simple Condition (bool~) mode_stdbitmap::$29 [1115] if((byte) mode_stdbitmap::l#2<(byte) mode_stdbitmap::lines_cnt#0) goto mode_stdbitmap::@8
Simple Condition (bool~) mode_hicolstdchar::$24 [1174] if((byte) mode_hicolstdchar::i#1!=rangelast(0,$f)) goto mode_hicolstdchar::@1
Simple Condition (bool~) mode_hicolstdchar::$29 [1195] if((byte) mode_hicolstdchar::cx#1!=rangelast(0,$27)) goto mode_hicolstdchar::@4
Simple Condition (bool~) mode_hicolstdchar::$30 [1199] if((byte) mode_hicolstdchar::cy#1!=rangelast(0,$18)) goto mode_hicolstdchar::@3
Simple Condition (bool~) mode_hicolecmchar::$25 [1249] if((byte) mode_hicolecmchar::i#1!=rangelast(0,$f)) goto mode_hicolecmchar::@1
Simple Condition (bool~) mode_hicolecmchar::$30 [1273] if((byte) mode_hicolecmchar::cx#1!=rangelast(0,$27)) goto mode_hicolecmchar::@4
Simple Condition (bool~) mode_hicolecmchar::$31 [1277] if((byte) mode_hicolecmchar::cy#1!=rangelast(0,$18)) goto mode_hicolecmchar::@3
Simple Condition (bool~) mode_hicolmcchar::$25 [1327] if((byte) mode_hicolmcchar::i#1!=rangelast(0,$f)) goto mode_hicolmcchar::@1
Simple Condition (bool~) mode_hicolmcchar::$30 [1350] if((byte) mode_hicolmcchar::cx#1!=rangelast(0,$27)) goto mode_hicolmcchar::@4
Simple Condition (bool~) mode_hicolmcchar::$31 [1354] if((byte) mode_hicolmcchar::cy#1!=rangelast(0,$18)) goto mode_hicolmcchar::@3
Simple Condition (bool~) mode_twoplanebitmap::$15 [1402] if((byte) mode_twoplanebitmap::i#1!=rangelast(0,$f)) goto mode_twoplanebitmap::@1
Simple Condition (bool~) mode_twoplanebitmap::$20 [1420] if((byte) mode_twoplanebitmap::cx#1!=rangelast(0,$27)) goto mode_twoplanebitmap::@4
Simple Condition (bool~) mode_twoplanebitmap::$21 [1424] if((byte) mode_twoplanebitmap::cy#1!=rangelast(0,$18)) goto mode_twoplanebitmap::@3
Simple Condition (bool~) mode_twoplanebitmap::$23 [1433] if((byte~) mode_twoplanebitmap::$22==(byte) 0) goto mode_twoplanebitmap::@9
Simple Condition (bool~) mode_twoplanebitmap::$24 [1443] if((byte) mode_twoplanebitmap::ax#1!=rangelast(0,$27)) goto mode_twoplanebitmap::@8
Simple Condition (bool~) mode_twoplanebitmap::$25 [1447] if((byte) mode_twoplanebitmap::ay#1!=rangelast(0,$c7)) goto mode_twoplanebitmap::@7
Simple Condition (bool~) mode_twoplanebitmap::$26 [1458] if((byte) mode_twoplanebitmap::bx#1!=rangelast(0,$27)) goto mode_twoplanebitmap::@16
Simple Condition (bool~) mode_twoplanebitmap::$27 [1462] if((byte) mode_twoplanebitmap::by#1!=rangelast(0,$c7)) goto mode_twoplanebitmap::@15
Simple Condition (bool~) mode_sixsfred::$16 [1511] if((byte) mode_sixsfred::i#1!=rangelast(0,$f)) goto mode_sixsfred::@1
Simple Condition (bool~) mode_sixsfred::$19 [1525] if((byte) mode_sixsfred::cx#1!=rangelast(0,$27)) goto mode_sixsfred::@4
Simple Condition (bool~) mode_sixsfred::$20 [1529] if((byte) mode_sixsfred::cy#1!=rangelast(0,$18)) goto mode_sixsfred::@3
Simple Condition (bool~) mode_sixsfred::$23 [1544] if((byte) mode_sixsfred::ax#1!=rangelast(0,$27)) goto mode_sixsfred::@8
Simple Condition (bool~) mode_sixsfred::$24 [1548] if((byte) mode_sixsfred::ay#1!=rangelast(0,$c7)) goto mode_sixsfred::@7
Simple Condition (bool~) mode_sixsfred::$25 [1559] if((byte) mode_sixsfred::bx#1!=rangelast(0,$27)) goto mode_sixsfred::@12
Simple Condition (bool~) mode_sixsfred::$26 [1563] if((byte) mode_sixsfred::by#1!=rangelast(0,$c7)) goto mode_sixsfred::@11
Simple Condition (bool~) mode_sixsfred2::$14 [1610] if((byte) mode_sixsfred2::i#1!=rangelast(0,$f)) goto mode_sixsfred2::@1
Simple Condition (bool~) mode_sixsfred2::$19 [1626] if((byte) mode_sixsfred2::cx#1!=rangelast(0,$27)) goto mode_sixsfred2::@4
Simple Condition (bool~) mode_sixsfred2::$20 [1630] if((byte) mode_sixsfred2::cy#1!=rangelast(0,$18)) goto mode_sixsfred2::@3
Simple Condition (bool~) mode_sixsfred2::$23 [1645] if((byte) mode_sixsfred2::ax#1!=rangelast(0,$27)) goto mode_sixsfred2::@8
Simple Condition (bool~) mode_sixsfred2::$24 [1649] if((byte) mode_sixsfred2::ay#1!=rangelast(0,$c7)) goto mode_sixsfred2::@7
Simple Condition (bool~) mode_sixsfred2::$25 [1660] if((byte) mode_sixsfred2::bx#1!=rangelast(0,$27)) goto mode_sixsfred2::@12
Simple Condition (bool~) mode_sixsfred2::$26 [1664] if((byte) mode_sixsfred2::by#1!=rangelast(0,$c7)) goto mode_sixsfred2::@11
Simple Condition (bool~) mode_8bpppixelcell::$13 [1708] if((byte) mode_8bpppixelcell::i#1!=rangelast(0,$f)) goto mode_8bpppixelcell::@1
Simple Condition (bool~) mode_8bpppixelcell::$18 [1723] if((byte) mode_8bpppixelcell::ax#1!=rangelast(0,$27)) goto mode_8bpppixelcell::@4
Simple Condition (bool~) mode_8bpppixelcell::$19 [1727] if((byte) mode_8bpppixelcell::ay#1!=rangelast(0,$18)) goto mode_8bpppixelcell::@3
Simple Condition (bool~) mode_8bpppixelcell::$22 [1746] if((byte~) mode_8bpppixelcell::$20==(byte) 0) goto mode_8bpppixelcell::@10
Simple Condition (bool~) mode_8bpppixelcell::$24 [1755] if((byte) mode_8bpppixelcell::cp#1!=rangelast(0,7)) goto mode_8bpppixelcell::@9
Simple Condition (bool~) mode_8bpppixelcell::$25 [1761] if((byte) mode_8bpppixelcell::cr#1!=rangelast(0,7)) goto mode_8bpppixelcell::@8
Simple Condition (bool~) mode_8bpppixelcell::$26 [1765] if((byte) mode_8bpppixelcell::ch#1!=rangelast(0,$ff)) goto mode_8bpppixelcell::@7
Simple Condition (bool~) mode_8bppchunkybmm::$22 [1807] if((byte) mode_8bppchunkybmm::i#1!=rangelast(0,$f)) goto mode_8bppchunkybmm::@1
Simple Condition (bool~) mode_8bppchunkybmm::$24 [1823] if((byte*) mode_8bppchunkybmm::gfxb#3!=(word) $8000) goto mode_8bppchunkybmm::@5
Simple Condition (bool~) mode_8bppchunkybmm::$28 [1832] if((word) mode_8bppchunkybmm::x#1!=rangelast(0,$13f)) goto mode_8bppchunkybmm::@4
Simple Condition (bool~) mode_8bppchunkybmm::$29 [1842] if((byte) mode_8bppchunkybmm::y#1!=rangelast(0,$c7)) goto mode_8bppchunkybmm::@3
Successful SSA optimization Pass2ConditionalJumpSimplification
Constant right-side identified [189] (byte[$100]) bitmap_plot_xlo#0 ← { fill( $100, 0) }
Constant right-side identified [190] (byte[$100]) bitmap_plot_xhi#0 ← { fill( $100, 0) }
Constant right-side identified [191] (byte[$100]) bitmap_plot_ylo#0 ← { fill( $100, 0) }
Constant right-side identified [192] (byte[$100]) bitmap_plot_yhi#0 ← { fill( $100, 0) }
Constant right-side identified [193] (byte[$100]) bitmap_plot_bit#0 ← { fill( $100, 0) }
Constant right-side identified [1844] (byte) dtvSetCpuBankSegment1::cpuBankIdx#2 ← (byte)(number) $4000/(number) $4000
Successful SSA optimization Pass2ConstantRValueConsolidation
Identified constant from value list (byte[$10]) { (byte) 0, (byte) $f, (byte) $36, (byte) $be, (byte) $58, (byte) $db, (byte) $86, (byte) $ff, (byte) $29, (byte) $26, (byte) $3b, (byte) 5, (byte) 7, (byte) $df, (byte) $9a, (byte) $a }
Identified constant from value list (byte[8]) { (byte) $fe, (byte) $fd, (byte) $fb, (byte) $f7, (byte) $ef, (byte) $df, (byte) $bf, (byte) $7f }
Identified constant from value list (byte[8]) { (byte) 1, (byte) 2, (byte) 4, (byte) 8, (byte) $10, (byte) $20, (byte) $40, (byte) $80 }
Identified constant from value list (byte[]) { (byte) 0, (byte) $ff, (byte) $ff, (byte) 0, (byte) 0, (byte) $80, (byte) $ff, (byte) $80, (byte) 0, (byte) $80 }
Identified constant from value list (byte[]) { (byte) 0, (byte) 0, (byte) $c7, (byte) $c7, (byte) 0, (byte) 0, (byte) $64, (byte) $c7, (byte) $64, (byte) 0 }
Identified constant from value list (byte[]) { (byte) 0, (byte) $55, (byte) $aa, (byte) $ff }
Identified constant from value list (byte[]) { (byte) 0, (byte) $55, (byte) $aa, (byte) $ff }
Successful SSA optimization Pass2ConstantInitializerValueLists
Constant (const byte*) PROCPORT_DDR#0 = (byte*) 0
Constant (const byte) PROCPORT_DDR_MEMORY_MASK#0 = 7
Constant (const byte*) PROCPORT#0 = (byte*) 1
Constant (const byte) PROCPORT_RAM_IO#0 = 5
Constant (const byte) PROCPORT_RAM_CHARROM#0 = 1
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
Constant (const byte*) BGCOL3#0 = (byte*) 53283
Constant (const byte*) BGCOL4#0 = (byte*) 53284
Constant (const byte*) VIC_CONTROL#0 = (byte*) 53265
Constant (const byte) VIC_ECM#0 = $40
Constant (const byte) VIC_BMM#0 = $20
Constant (const byte) VIC_DEN#0 = $10
Constant (const byte) VIC_RSEL#0 = 8
Constant (const byte*) VIC_CONTROL2#0 = (byte*) 53270
Constant (const byte) VIC_MCM#0 = $10
Constant (const byte) VIC_CSEL#0 = 8
Constant (const byte*) VIC_MEMORY#0 = (byte*) 53272
Constant (const byte*) COLS#0 = (byte*) 55296
Constant (const byte*) CIA1_PORT_A#0 = (byte*) 56320
Constant (const byte*) CIA1_PORT_B#0 = (byte*) 56321
Constant (const byte*) CIA2_PORT_A#0 = (byte*) 56576
Constant (const byte*) CIA2_PORT_A_DDR#0 = (byte*) 56578
Constant (const byte) BLACK#0 = 0
Constant (const byte) GREEN#0 = 5
Constant (const byte) BLUE#0 = 6
Constant (const byte) LIGHT_GREEN#0 = $d
Constant (const byte*) DTV_FEATURE#0 = (byte*) 53311
Constant (const byte) DTV_FEATURE_ENABLE#0 = 1
Constant (const byte*) DTV_CONTROL#0 = (byte*) 53308
Constant (const byte) DTV_LINEAR#0 = 1
Constant (const byte) DTV_BORDER_OFF#0 = 2
Constant (const byte) DTV_HIGHCOLOR#0 = 4
Constant (const byte) DTV_OVERSCAN#0 = 8
Constant (const byte) DTV_COLORRAM_OFF#0 = $10
Constant (const byte) DTV_CHUNKY#0 = $40
Constant (const byte*) DTV_PALETTE#0 = (byte*) 53760
Constant (const byte[$10]) DTV_PALETTE_DEFAULT#0 = { 0, $f, $36, $be, $58, $db, $86, $ff, $29, $26, $3b, 5, 7, $df, $9a, $a }
Constant (const byte*) DTV_PLANEA_START_LO#0 = (byte*) 53306
Constant (const byte*) DTV_PLANEA_START_MI#0 = (byte*) 53307
Constant (const byte*) DTV_PLANEA_START_HI#0 = (byte*) 53317
Constant (const byte*) DTV_PLANEA_STEP#0 = (byte*) 53318
Constant (const byte*) DTV_PLANEA_MODULO_LO#0 = (byte*) 53304
Constant (const byte*) DTV_PLANEA_MODULO_HI#0 = (byte*) 53305
Constant (const byte*) DTV_PLANEB_START_LO#0 = (byte*) 53321
Constant (const byte*) DTV_PLANEB_START_MI#0 = (byte*) 53322
Constant (const byte*) DTV_PLANEB_START_HI#0 = (byte*) 53323
Constant (const byte*) DTV_PLANEB_STEP#0 = (byte*) 53324
Constant (const byte*) DTV_PLANEB_MODULO_LO#0 = (byte*) 53319
Constant (const byte*) DTV_PLANEB_MODULO_HI#0 = (byte*) 53320
Constant (const byte*) DTV_COLOR_BANK_LO#0 = (byte*) 53302
Constant (const byte*) DTV_COLOR_BANK_HI#0 = (byte*) 53303
Constant (const dword) DTV_COLOR_BANK_DEFAULT#0 = $1d800
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 byte) memset::c#0 = ' '
Constant (const word) memset::num#0 = $3e8
Constant (const byte) KEY_3#0 = 8
Constant (const byte) KEY_A#0 = $a
Constant (const byte) KEY_4#0 = $b
Constant (const byte) KEY_E#0 = $e
Constant (const byte) KEY_D#0 = $12
Constant (const byte) KEY_6#0 = $13
Constant (const byte) KEY_C#0 = $14
Constant (const byte) KEY_7#0 = $18
Constant (const byte) KEY_8#0 = $1b
Constant (const byte) KEY_B#0 = $1c
Constant (const byte) KEY_H#0 = $1d
Constant (const byte) KEY_U#0 = $1e
Constant (const byte) KEY_0#0 = $23
Constant (const byte) KEY_O#0 = $26
Constant (const byte) KEY_L#0 = $2a
Constant (const byte) KEY_1#0 = $38
Constant (const byte) KEY_2#0 = $3b
Constant (const byte) KEY_SPACE#0 = $3c
Constant (const byte[8]) keyboard_matrix_row_bitmask#0 = { $fe, $fd, $fb, $f7, $ef, $df, $bf, $7f }
Constant (const byte[8]) keyboard_matrix_col_bitmask#0 = { 1, 2, 4, 8, $10, $20, $40, $80 }
Constant (const byte[$100]) bitmap_plot_xlo#0 = { fill( $100, 0) }
Constant (const byte[$100]) bitmap_plot_xhi#0 = { fill( $100, 0) }
Constant (const byte[$100]) bitmap_plot_ylo#0 = { fill( $100, 0) }
Constant (const byte[$100]) bitmap_plot_yhi#0 = { fill( $100, 0) }
Constant (const byte[$100]) bitmap_plot_bit#0 = { fill( $100, 0) }
Constant (const byte) bitmap_init::bits#0 = $80
Constant (const byte) bitmap_init::x#0 = 0
Constant (const byte) bitmap_init::bits#2 = $80
Constant (const byte*) bitmap_init::yoffs#0 = (byte*) 0
Constant (const byte) bitmap_init::y#0 = 0
Constant (const byte) bitmap_clear::y#0 = 0
Constant (const byte) bitmap_clear::x#0 = 0
Constant (const byte) bitmap_line::xd#0 = 0
Constant (const byte) bitmap_line::yd#0 = 0
Constant (const byte[]) MENU_TEXT#0 = $1
Constant (const byte*) menu::SCREEN#0 = (byte*) 32768
Constant (const byte*) menu::CHARSET#0 = (byte*) 38912
Constant (const byte) menu::i#0 = 0
Constant (const byte) dtv_control#129 = 0
Constant (const byte) mode_ctrl::ctrl#7 = 0
Constant (const byte*) mode_stdchar::SCREEN#0 = (byte*) 32768
Constant (const byte*) mode_stdchar::CHARSET#0 = (byte*) 36864
Constant (const byte*) mode_stdchar::COLORS#0 = (byte*) 55296
Constant (const byte) dtv_control#18 = 0
Constant (const byte) mode_stdchar::i#0 = 0
Constant (const byte) mode_stdchar::cy#0 = 0
Constant (const byte) mode_stdchar::cx#0 = 0
Constant (const byte*) mode_ecmchar::SCREEN#0 = (byte*) 32768
Constant (const byte*) mode_ecmchar::CHARSET#0 = (byte*) 36864
Constant (const byte*) mode_ecmchar::COLORS#0 = (byte*) 55296
Constant (const byte) dtv_control#21 = 0
Constant (const byte) mode_ecmchar::i#0 = 0
Constant (const byte) mode_ecmchar::cy#0 = 0
Constant (const byte) mode_ecmchar::cx#0 = 0
Constant (const byte*) mode_mcchar::SCREEN#0 = (byte*) 32768
Constant (const byte*) mode_mcchar::CHARSET#0 = (byte*) 36864
Constant (const byte*) mode_mcchar::COLORS#0 = (byte*) 55296
Constant (const byte) dtv_control#24 = 0
Constant (const byte) mode_mcchar::i#0 = 0
Constant (const byte) mode_mcchar::cy#0 = 0
Constant (const byte) mode_mcchar::cx#0 = 0
Constant (const byte*) mode_stdbitmap::SCREEN#0 = (byte*) 16384
Constant (const byte*) mode_stdbitmap::BITMAP#0 = (byte*) 24576
Constant (const byte) dtv_control#27 = 0
Constant (const byte) mode_stdbitmap::i#0 = 0
Constant (const byte) mode_stdbitmap::cy#0 = 0
Constant (const byte) mode_stdbitmap::cx#0 = 0
Constant (const byte[]) mode_stdbitmap::lines_x#0 = { 0, $ff, $ff, 0, 0, $80, $ff, $80, 0, $80 }
Constant (const byte[]) mode_stdbitmap::lines_y#0 = { 0, 0, $c7, $c7, 0, 0, $64, $c7, $64, 0 }
Constant (const byte) mode_stdbitmap::lines_cnt#0 = 9
Constant (const byte) mode_stdbitmap::l#0 = 0
Constant (const byte*) mode_hicolstdchar::SCREEN#0 = (byte*) 32768
Constant (const byte*) mode_hicolstdchar::CHARSET#0 = (byte*) 36864
Constant (const byte*) mode_hicolstdchar::COLORS#0 = (byte*) 33792
Constant (const byte) mode_hicolstdchar::i#0 = 0
Constant (const byte) mode_hicolstdchar::cy#0 = 0
Constant (const byte) mode_hicolstdchar::cx#0 = 0
Constant (const byte*) mode_hicolecmchar::SCREEN#0 = (byte*) 32768
Constant (const byte*) mode_hicolecmchar::CHARSET#0 = (byte*) 36864
Constant (const byte*) mode_hicolecmchar::COLORS#0 = (byte*) 33792
Constant (const byte) mode_hicolecmchar::i#0 = 0
Constant (const byte) mode_hicolecmchar::cy#0 = 0
Constant (const byte) mode_hicolecmchar::cx#0 = 0
Constant (const byte*) mode_hicolmcchar::SCREEN#0 = (byte*) 32768
Constant (const byte*) mode_hicolmcchar::CHARSET#0 = (byte*) 36864
Constant (const byte*) mode_hicolmcchar::COLORS#0 = (byte*) 33792
Constant (const byte) mode_hicolmcchar::i#0 = 0
Constant (const byte) mode_hicolmcchar::cy#0 = 0
Constant (const byte) mode_hicolmcchar::cx#0 = 0
Constant (const byte*) mode_twoplanebitmap::PLANEA#0 = (byte*) 16384
Constant (const byte*) mode_twoplanebitmap::PLANEB#0 = (byte*) 24576
Constant (const byte*) mode_twoplanebitmap::COLORS#0 = (byte*) 32768
Constant (const byte) mode_twoplanebitmap::i#0 = 0
Constant (const byte) mode_twoplanebitmap::cy#0 = 0
Constant (const byte) mode_twoplanebitmap::cx#0 = 0
Constant (const byte) mode_twoplanebitmap::ay#0 = 0
Constant (const byte) mode_twoplanebitmap::ax#0 = 0
Constant (const byte) mode_twoplanebitmap::by#0 = 0
Constant (const byte) mode_twoplanebitmap::bx#0 = 0
Constant (const byte*) mode_sixsfred::PLANEA#0 = (byte*) 16384
Constant (const byte*) mode_sixsfred::PLANEB#0 = (byte*) 24576
Constant (const byte*) mode_sixsfred::COLORS#0 = (byte*) 32768
Constant (const byte) mode_sixsfred::i#0 = 0
Constant (const byte) mode_sixsfred::cy#0 = 0
Constant (const byte) mode_sixsfred::cx#0 = 0
Constant (const byte[]) mode_sixsfred::row_bitmask#0 = { 0, $55, $aa, $ff }
Constant (const byte) mode_sixsfred::ay#0 = 0
Constant (const byte) mode_sixsfred::ax#0 = 0
Constant (const byte) mode_sixsfred::by#0 = 0
Constant (const byte) mode_sixsfred::bx#0 = 0
Constant (const byte*) mode_sixsfred2::PLANEA#0 = (byte*) 16384
Constant (const byte*) mode_sixsfred2::PLANEB#0 = (byte*) 24576
Constant (const byte*) mode_sixsfred2::COLORS#0 = (byte*) 32768
Constant (const byte) mode_sixsfred2::i#0 = 0
Constant (const byte) mode_sixsfred2::cy#0 = 0
Constant (const byte) mode_sixsfred2::cx#0 = 0
Constant (const byte[]) mode_sixsfred2::row_bitmask#0 = { 0, $55, $aa, $ff }
Constant (const byte) mode_sixsfred2::ay#0 = 0
Constant (const byte) mode_sixsfred2::ax#0 = 0
Constant (const byte) mode_sixsfred2::by#0 = 0
Constant (const byte) mode_sixsfred2::bx#0 = 0
Constant (const byte*) mode_8bpppixelcell::PLANEA#0 = (byte*) 15360
Constant (const byte*) mode_8bpppixelcell::PLANEB#0 = (byte*) 16384
Constant (const byte) mode_8bpppixelcell::i#0 = 0
Constant (const byte) mode_8bpppixelcell::ay#0 = 0
Constant (const byte) mode_8bpppixelcell::ax#0 = 0
Constant (const byte*) mode_8bpppixelcell::CHARGEN#0 = (byte*) 53248
Constant (const byte) mode_8bpppixelcell::col#0 = 0
Constant (const byte) mode_8bpppixelcell::ch#0 = 0
Constant (const byte) mode_8bpppixelcell::cr#0 = 0
Constant (const byte) mode_8bpppixelcell::cp#0 = 0
Constant (const byte) mode_8bpppixelcell::c#0 = 0
Constant (const dword) mode_8bppchunkybmm::PLANEB#0 = $20000
Constant (const byte) mode_8bppchunkybmm::i#0 = 0
Constant (const byte*) mode_8bppchunkybmm::gfxb#0 = (byte*) 16384
Constant (const byte) mode_8bppchunkybmm::y#0 = 0
Constant (const word) mode_8bppchunkybmm::x#0 = 0
Constant (const byte*) mode_8bppchunkybmm::gfxb#2 = (byte*) 16384
Constant (const byte) dtvSetCpuBankSegment1::cpuBankIdx#2 = (byte)$4000/$4000
Successful SSA optimization Pass2ConstantIdentification
Constant (const byte*) menu::c#0 = COLS#0
Constant (const byte*) print_set_screen::screen#0 = menu::SCREEN#0
Constant (const byte*) print_str_lines::str#1 = MENU_TEXT#0
Constant (const byte) keyboard_key_pressed::key#0 = KEY_1#0
Constant (const byte) keyboard_key_pressed::key#1 = KEY_2#0
Constant (const byte) keyboard_key_pressed::key#2 = KEY_3#0
Constant (const byte) keyboard_key_pressed::key#3 = KEY_4#0
Constant (const byte) keyboard_key_pressed::key#4 = KEY_6#0
Constant (const byte) keyboard_key_pressed::key#5 = KEY_7#0
Constant (const byte) keyboard_key_pressed::key#6 = KEY_8#0
Constant (const byte) keyboard_key_pressed::key#7 = KEY_A#0
Constant (const byte) keyboard_key_pressed::key#8 = KEY_B#0
Constant (const byte) keyboard_key_pressed::key#9 = KEY_C#0
Constant (const byte) keyboard_key_pressed::key#10 = KEY_D#0
Constant (const byte) keyboard_key_pressed::key#11 = KEY_E#0
Constant (const byte) keyboard_key_pressed::key#12 = KEY_SPACE#0
Constant (const byte) keyboard_key_pressed::key#13 = KEY_L#0
Constant (const byte) keyboard_key_pressed::key#14 = KEY_H#0
Constant (const byte) keyboard_key_pressed::key#15 = KEY_O#0
Constant (const byte) keyboard_key_pressed::key#16 = KEY_B#0
Constant (const byte) keyboard_key_pressed::key#17 = KEY_U#0
Constant (const byte) keyboard_key_pressed::key#18 = KEY_C#0
Constant (const byte) keyboard_key_pressed::key#19 = KEY_0#0
Constant (const byte*) bitmap_init::bitmap#0 = mode_stdbitmap::BITMAP#0
Constant (const byte) dtv_control#30 = DTV_HIGHCOLOR#0
Constant (const byte) dtv_control#33 = DTV_HIGHCOLOR#0
Constant (const byte) dtv_control#36 = DTV_HIGHCOLOR#0
Constant (const byte) dtv_control#45 = DTV_LINEAR#0
Successful SSA optimization Pass2ConstantIdentification
Constant (const byte*) print_screen#1 = print_set_screen::screen#0
Successful SSA optimization Pass2ConstantIdentification
Constant value identified (void*)print_screen#1 in [123] (void*) memset::str#0 ← (void*)(const byte*) print_screen#1
Constant value identified (dword)menu::CHARSET#0 in [472] (dword~) menu::$0 ← (dword)(const byte*) menu::CHARSET#0
Constant value identified (word)menu::CHARSET#0 in [486] (word~) menu::$9 ← (word)(const byte*) menu::CHARSET#0
Constant value identified (word)menu::SCREEN#0 in [495] (word~) menu::$15 ← (word)(const byte*) menu::SCREEN#0
Constant value identified (word)menu::CHARSET#0 in [498] (word~) menu::$18 ← (word)(const byte*) menu::CHARSET#0
Constant value identified (dword)mode_stdchar::CHARSET#0 in [816] (dword~) mode_stdchar::$0 ← (dword)(const byte*) mode_stdchar::CHARSET#0
Constant value identified (word)mode_stdchar::CHARSET#0 in [831] (word~) mode_stdchar::$9 ← (word)(const byte*) mode_stdchar::CHARSET#0
Constant value identified (word)mode_stdchar::SCREEN#0 in [840] (word~) mode_stdchar::$15 ← (word)(const byte*) mode_stdchar::SCREEN#0
Constant value identified (word)mode_stdchar::CHARSET#0 in [843] (word~) mode_stdchar::$18 ← (word)(const byte*) mode_stdchar::CHARSET#0
Constant value identified (dword)mode_ecmchar::CHARSET#0 in [891] (dword~) mode_ecmchar::$0 ← (dword)(const byte*) mode_ecmchar::CHARSET#0
Constant value identified (word)mode_ecmchar::CHARSET#0 in [906] (word~) mode_ecmchar::$9 ← (word)(const byte*) mode_ecmchar::CHARSET#0
Constant value identified (word)mode_ecmchar::SCREEN#0 in [916] (word~) mode_ecmchar::$16 ← (word)(const byte*) mode_ecmchar::SCREEN#0
Constant value identified (word)mode_ecmchar::CHARSET#0 in [919] (word~) mode_ecmchar::$19 ← (word)(const byte*) mode_ecmchar::CHARSET#0
Constant value identified (dword)mode_mcchar::CHARSET#0 in [970] (dword~) mode_mcchar::$0 ← (dword)(const byte*) mode_mcchar::CHARSET#0
Constant value identified (word)mode_mcchar::CHARSET#0 in [985] (word~) mode_mcchar::$9 ← (word)(const byte*) mode_mcchar::CHARSET#0
Constant value identified (word)mode_mcchar::SCREEN#0 in [995] (word~) mode_mcchar::$16 ← (word)(const byte*) mode_mcchar::SCREEN#0
Constant value identified (word)mode_mcchar::CHARSET#0 in [998] (word~) mode_mcchar::$19 ← (word)(const byte*) mode_mcchar::CHARSET#0
Constant value identified (dword)mode_stdbitmap::BITMAP#0 in [1047] (dword~) mode_stdbitmap::$0 ← (dword)(const byte*) mode_stdbitmap::BITMAP#0
Constant value identified (word)mode_stdbitmap::BITMAP#0 in [1054] (word~) mode_stdbitmap::$3 ← (word)(const byte*) mode_stdbitmap::BITMAP#0
Constant value identified (word)mode_stdbitmap::SCREEN#0 in [1064] (word~) mode_stdbitmap::$10 ← (word)(const byte*) mode_stdbitmap::SCREEN#0
Constant value identified (word)mode_stdbitmap::BITMAP#0 in [1067] (word~) mode_stdbitmap::$13 ← (word)(const byte*) mode_stdbitmap::BITMAP#0
Constant value identified (dword)mode_hicolstdchar::CHARSET#0 in [1136] (dword~) mode_hicolstdchar::$0 ← (dword)(const byte*) mode_hicolstdchar::CHARSET#0
Constant value identified (word)mode_hicolstdchar::CHARSET#0 in [1151] (word~) mode_hicolstdchar::$9 ← (word)(const byte*) mode_hicolstdchar::CHARSET#0
Constant value identified (word)mode_hicolstdchar::SCREEN#0 in [1160] (word~) mode_hicolstdchar::$15 ← (word)(const byte*) mode_hicolstdchar::SCREEN#0
Constant value identified (word)mode_hicolstdchar::CHARSET#0 in [1163] (word~) mode_hicolstdchar::$18 ← (word)(const byte*) mode_hicolstdchar::CHARSET#0
Constant value identified (dword)mode_hicolecmchar::CHARSET#0 in [1210] (dword~) mode_hicolecmchar::$0 ← (dword)(const byte*) mode_hicolecmchar::CHARSET#0
Constant value identified (word)mode_hicolecmchar::CHARSET#0 in [1225] (word~) mode_hicolecmchar::$9 ← (word)(const byte*) mode_hicolecmchar::CHARSET#0
Constant value identified (word)mode_hicolecmchar::SCREEN#0 in [1235] (word~) mode_hicolecmchar::$16 ← (word)(const byte*) mode_hicolecmchar::SCREEN#0
Constant value identified (word)mode_hicolecmchar::CHARSET#0 in [1238] (word~) mode_hicolecmchar::$19 ← (word)(const byte*) mode_hicolecmchar::CHARSET#0
Constant value identified (dword)mode_hicolmcchar::CHARSET#0 in [1288] (dword~) mode_hicolmcchar::$0 ← (dword)(const byte*) mode_hicolmcchar::CHARSET#0
Constant value identified (word)mode_hicolmcchar::CHARSET#0 in [1303] (word~) mode_hicolmcchar::$9 ← (word)(const byte*) mode_hicolmcchar::CHARSET#0
Constant value identified (word)mode_hicolmcchar::SCREEN#0 in [1313] (word~) mode_hicolmcchar::$16 ← (word)(const byte*) mode_hicolmcchar::SCREEN#0
Constant value identified (word)mode_hicolmcchar::CHARSET#0 in [1316] (word~) mode_hicolmcchar::$19 ← (word)(const byte*) mode_hicolmcchar::CHARSET#0
Successful SSA optimization Pass2ConstantValues
if() condition always false - eliminating [65] if((const word) memset::num#0<=(byte) 0) goto memset::@1
if() condition always true - replacing block destination [453] if(true) goto main::@2
Removing PHI-reference to removed block (menu::@9) in block menu::@return
if() condition always true - replacing block destination [538] if(true) goto menu::@10
if() condition always true - replacing block destination [705] if(true) goto mode_ctrl::@4
Successful SSA optimization Pass2ConstantIfs
Resolved ranged next value [209] bitmap_init::x#1 ← ++ bitmap_init::x#2 to ++
Resolved ranged comparison value [211] if(bitmap_init::x#1!=rangelast(0,$ff)) goto bitmap_init::@1 to (number) 0
Resolved ranged next value [228] bitmap_init::y#1 ← ++ bitmap_init::y#2 to ++
Resolved ranged comparison value [230] if(bitmap_init::y#1!=rangelast(0,$ff)) goto bitmap_init::@5 to (number) 0
Resolved ranged next value [244] bitmap_clear::x#1 ← ++ bitmap_clear::x#2 to ++
Resolved ranged comparison value [246] if(bitmap_clear::x#1!=rangelast(0,$c7)) goto bitmap_clear::@2 to (number) $c8
Resolved ranged next value [248] bitmap_clear::y#1 ← ++ bitmap_clear::y#4 to ++
Resolved ranged comparison value [250] if(bitmap_clear::y#1!=rangelast(0,$27)) goto bitmap_clear::@1 to (number) $28
Resolved ranged next value [507] menu::i#1 ← ++ menu::i#2 to ++
Resolved ranged comparison value [509] if(menu::i#1!=rangelast(0,$f)) goto menu::@1 to (number) $10
Resolved ranged next value [852] mode_stdchar::i#1 ← ++ mode_stdchar::i#2 to ++
Resolved ranged comparison value [854] if(mode_stdchar::i#1!=rangelast(0,$f)) goto mode_stdchar::@1 to (number) $10
Resolved ranged next value [874] mode_stdchar::cx#1 ← ++ mode_stdchar::cx#2 to ++
Resolved ranged comparison value [876] if(mode_stdchar::cx#1!=rangelast(0,$27)) goto mode_stdchar::@4 to (number) $28
Resolved ranged next value [878] mode_stdchar::cy#1 ← ++ mode_stdchar::cy#4 to ++
Resolved ranged comparison value [880] if(mode_stdchar::cy#1!=rangelast(0,$18)) goto mode_stdchar::@3 to (number) $19
Resolved ranged next value [928] mode_ecmchar::i#1 ← ++ mode_ecmchar::i#2 to ++
Resolved ranged comparison value [930] if(mode_ecmchar::i#1!=rangelast(0,$f)) goto mode_ecmchar::@1 to (number) $10
Resolved ranged next value [953] mode_ecmchar::cx#1 ← ++ mode_ecmchar::cx#2 to ++
Resolved ranged comparison value [955] if(mode_ecmchar::cx#1!=rangelast(0,$27)) goto mode_ecmchar::@4 to (number) $28
Resolved ranged next value [957] mode_ecmchar::cy#1 ← ++ mode_ecmchar::cy#4 to ++
Resolved ranged comparison value [959] if(mode_ecmchar::cy#1!=rangelast(0,$18)) goto mode_ecmchar::@3 to (number) $19
Resolved ranged next value [1007] mode_mcchar::i#1 ← ++ mode_mcchar::i#2 to ++
Resolved ranged comparison value [1009] if(mode_mcchar::i#1!=rangelast(0,$f)) goto mode_mcchar::@1 to (number) $10
Resolved ranged next value [1031] mode_mcchar::cx#1 ← ++ mode_mcchar::cx#2 to ++
Resolved ranged comparison value [1033] if(mode_mcchar::cx#1!=rangelast(0,$27)) goto mode_mcchar::@4 to (number) $28
Resolved ranged next value [1035] mode_mcchar::cy#1 ← ++ mode_mcchar::cy#4 to ++
Resolved ranged comparison value [1037] if(mode_mcchar::cy#1!=rangelast(0,$18)) goto mode_mcchar::@3 to (number) $19
Resolved ranged next value [1076] mode_stdbitmap::i#1 ← ++ mode_stdbitmap::i#2 to ++
Resolved ranged comparison value [1078] if(mode_stdbitmap::i#1!=rangelast(0,$f)) goto mode_stdbitmap::@1 to (number) $10
Resolved ranged next value [1096] mode_stdbitmap::cx#1 ← ++ mode_stdbitmap::cx#2 to ++
Resolved ranged comparison value [1098] if(mode_stdbitmap::cx#1!=rangelast(0,$27)) goto mode_stdbitmap::@4 to (number) $28
Resolved ranged next value [1100] mode_stdbitmap::cy#1 ← ++ mode_stdbitmap::cy#4 to ++
Resolved ranged comparison value [1102] if(mode_stdbitmap::cy#1!=rangelast(0,$18)) goto mode_stdbitmap::@3 to (number) $19
Resolved ranged next value [1172] mode_hicolstdchar::i#1 ← ++ mode_hicolstdchar::i#2 to ++
Resolved ranged comparison value [1174] if(mode_hicolstdchar::i#1!=rangelast(0,$f)) goto mode_hicolstdchar::@1 to (number) $10
Resolved ranged next value [1193] mode_hicolstdchar::cx#1 ← ++ mode_hicolstdchar::cx#2 to ++
Resolved ranged comparison value [1195] if(mode_hicolstdchar::cx#1!=rangelast(0,$27)) goto mode_hicolstdchar::@4 to (number) $28
Resolved ranged next value [1197] mode_hicolstdchar::cy#1 ← ++ mode_hicolstdchar::cy#4 to ++
Resolved ranged comparison value [1199] if(mode_hicolstdchar::cy#1!=rangelast(0,$18)) goto mode_hicolstdchar::@3 to (number) $19
Resolved ranged next value [1247] mode_hicolecmchar::i#1 ← ++ mode_hicolecmchar::i#2 to ++
Resolved ranged comparison value [1249] if(mode_hicolecmchar::i#1!=rangelast(0,$f)) goto mode_hicolecmchar::@1 to (number) $10
Resolved ranged next value [1271] mode_hicolecmchar::cx#1 ← ++ mode_hicolecmchar::cx#2 to ++
Resolved ranged comparison value [1273] if(mode_hicolecmchar::cx#1!=rangelast(0,$27)) goto mode_hicolecmchar::@4 to (number) $28
Resolved ranged next value [1275] mode_hicolecmchar::cy#1 ← ++ mode_hicolecmchar::cy#4 to ++
Resolved ranged comparison value [1277] if(mode_hicolecmchar::cy#1!=rangelast(0,$18)) goto mode_hicolecmchar::@3 to (number) $19
Resolved ranged next value [1325] mode_hicolmcchar::i#1 ← ++ mode_hicolmcchar::i#2 to ++
Resolved ranged comparison value [1327] if(mode_hicolmcchar::i#1!=rangelast(0,$f)) goto mode_hicolmcchar::@1 to (number) $10
Resolved ranged next value [1348] mode_hicolmcchar::cx#1 ← ++ mode_hicolmcchar::cx#2 to ++
Resolved ranged comparison value [1350] if(mode_hicolmcchar::cx#1!=rangelast(0,$27)) goto mode_hicolmcchar::@4 to (number) $28
Resolved ranged next value [1352] mode_hicolmcchar::cy#1 ← ++ mode_hicolmcchar::cy#4 to ++
Resolved ranged comparison value [1354] if(mode_hicolmcchar::cy#1!=rangelast(0,$18)) goto mode_hicolmcchar::@3 to (number) $19
Resolved ranged next value [1400] mode_twoplanebitmap::i#1 ← ++ mode_twoplanebitmap::i#2 to ++
Resolved ranged comparison value [1402] if(mode_twoplanebitmap::i#1!=rangelast(0,$f)) goto mode_twoplanebitmap::@1 to (number) $10
Resolved ranged next value [1418] mode_twoplanebitmap::cx#1 ← ++ mode_twoplanebitmap::cx#2 to ++
Resolved ranged comparison value [1420] if(mode_twoplanebitmap::cx#1!=rangelast(0,$27)) goto mode_twoplanebitmap::@4 to (number) $28
Resolved ranged next value [1422] mode_twoplanebitmap::cy#1 ← ++ mode_twoplanebitmap::cy#4 to ++
Resolved ranged comparison value [1424] if(mode_twoplanebitmap::cy#1!=rangelast(0,$18)) goto mode_twoplanebitmap::@3 to (number) $19
Resolved ranged next value [1441] mode_twoplanebitmap::ax#1 ← ++ mode_twoplanebitmap::ax#2 to ++
Resolved ranged comparison value [1443] if(mode_twoplanebitmap::ax#1!=rangelast(0,$27)) goto mode_twoplanebitmap::@8 to (number) $28
Resolved ranged next value [1445] mode_twoplanebitmap::ay#1 ← ++ mode_twoplanebitmap::ay#5 to ++
Resolved ranged comparison value [1447] if(mode_twoplanebitmap::ay#1!=rangelast(0,$c7)) goto mode_twoplanebitmap::@7 to (number) $c8
Resolved ranged next value [1456] mode_twoplanebitmap::bx#1 ← ++ mode_twoplanebitmap::bx#2 to ++
Resolved ranged comparison value [1458] if(mode_twoplanebitmap::bx#1!=rangelast(0,$27)) goto mode_twoplanebitmap::@16 to (number) $28
Resolved ranged next value [1460] mode_twoplanebitmap::by#1 ← ++ mode_twoplanebitmap::by#4 to ++
Resolved ranged comparison value [1462] if(mode_twoplanebitmap::by#1!=rangelast(0,$c7)) goto mode_twoplanebitmap::@15 to (number) $c8
Resolved ranged next value [1509] mode_sixsfred::i#1 ← ++ mode_sixsfred::i#2 to ++
Resolved ranged comparison value [1511] if(mode_sixsfred::i#1!=rangelast(0,$f)) goto mode_sixsfred::@1 to (number) $10
Resolved ranged next value [1523] mode_sixsfred::cx#1 ← ++ mode_sixsfred::cx#2 to ++
Resolved ranged comparison value [1525] if(mode_sixsfred::cx#1!=rangelast(0,$27)) goto mode_sixsfred::@4 to (number) $28
Resolved ranged next value [1527] mode_sixsfred::cy#1 ← ++ mode_sixsfred::cy#4 to ++
Resolved ranged comparison value [1529] if(mode_sixsfred::cy#1!=rangelast(0,$18)) goto mode_sixsfred::@3 to (number) $19
Resolved ranged next value [1542] mode_sixsfred::ax#1 ← ++ mode_sixsfred::ax#2 to ++
Resolved ranged comparison value [1544] if(mode_sixsfred::ax#1!=rangelast(0,$27)) goto mode_sixsfred::@8 to (number) $28
Resolved ranged next value [1546] mode_sixsfred::ay#1 ← ++ mode_sixsfred::ay#4 to ++
Resolved ranged comparison value [1548] if(mode_sixsfred::ay#1!=rangelast(0,$c7)) goto mode_sixsfred::@7 to (number) $c8
Resolved ranged next value [1557] mode_sixsfred::bx#1 ← ++ mode_sixsfred::bx#2 to ++
Resolved ranged comparison value [1559] if(mode_sixsfred::bx#1!=rangelast(0,$27)) goto mode_sixsfred::@12 to (number) $28
Resolved ranged next value [1561] mode_sixsfred::by#1 ← ++ mode_sixsfred::by#4 to ++
Resolved ranged comparison value [1563] if(mode_sixsfred::by#1!=rangelast(0,$c7)) goto mode_sixsfred::@11 to (number) $c8
Resolved ranged next value [1608] mode_sixsfred2::i#1 ← ++ mode_sixsfred2::i#2 to ++
Resolved ranged comparison value [1610] if(mode_sixsfred2::i#1!=rangelast(0,$f)) goto mode_sixsfred2::@1 to (number) $10
Resolved ranged next value [1624] mode_sixsfred2::cx#1 ← ++ mode_sixsfred2::cx#2 to ++
Resolved ranged comparison value [1626] if(mode_sixsfred2::cx#1!=rangelast(0,$27)) goto mode_sixsfred2::@4 to (number) $28
Resolved ranged next value [1628] mode_sixsfred2::cy#1 ← ++ mode_sixsfred2::cy#4 to ++
Resolved ranged comparison value [1630] if(mode_sixsfred2::cy#1!=rangelast(0,$18)) goto mode_sixsfred2::@3 to (number) $19
Resolved ranged next value [1643] mode_sixsfred2::ax#1 ← ++ mode_sixsfred2::ax#2 to ++
Resolved ranged comparison value [1645] if(mode_sixsfred2::ax#1!=rangelast(0,$27)) goto mode_sixsfred2::@8 to (number) $28
Resolved ranged next value [1647] mode_sixsfred2::ay#1 ← ++ mode_sixsfred2::ay#4 to ++
Resolved ranged comparison value [1649] if(mode_sixsfred2::ay#1!=rangelast(0,$c7)) goto mode_sixsfred2::@7 to (number) $c8
Resolved ranged next value [1658] mode_sixsfred2::bx#1 ← ++ mode_sixsfred2::bx#2 to ++
Resolved ranged comparison value [1660] if(mode_sixsfred2::bx#1!=rangelast(0,$27)) goto mode_sixsfred2::@12 to (number) $28
Resolved ranged next value [1662] mode_sixsfred2::by#1 ← ++ mode_sixsfred2::by#4 to ++
Resolved ranged comparison value [1664] if(mode_sixsfred2::by#1!=rangelast(0,$c7)) goto mode_sixsfred2::@11 to (number) $c8
Resolved ranged next value [1706] mode_8bpppixelcell::i#1 ← ++ mode_8bpppixelcell::i#2 to ++
Resolved ranged comparison value [1708] if(mode_8bpppixelcell::i#1!=rangelast(0,$f)) goto mode_8bpppixelcell::@1 to (number) $10
Resolved ranged next value [1721] mode_8bpppixelcell::ax#1 ← ++ mode_8bpppixelcell::ax#2 to ++
Resolved ranged comparison value [1723] if(mode_8bpppixelcell::ax#1!=rangelast(0,$27)) goto mode_8bpppixelcell::@4 to (number) $28
Resolved ranged next value [1725] mode_8bpppixelcell::ay#1 ← ++ mode_8bpppixelcell::ay#4 to ++
Resolved ranged comparison value [1727] if(mode_8bpppixelcell::ay#1!=rangelast(0,$18)) goto mode_8bpppixelcell::@3 to (number) $19
Resolved ranged next value [1753] mode_8bpppixelcell::cp#1 ← ++ mode_8bpppixelcell::cp#2 to ++
Resolved ranged comparison value [1755] if(mode_8bpppixelcell::cp#1!=rangelast(0,7)) goto mode_8bpppixelcell::@9 to (number) 8
Resolved ranged next value [1759] mode_8bpppixelcell::cr#1 ← ++ mode_8bpppixelcell::cr#6 to ++
Resolved ranged comparison value [1761] if(mode_8bpppixelcell::cr#1!=rangelast(0,7)) goto mode_8bpppixelcell::@8 to (number) 8
Resolved ranged next value [1763] mode_8bpppixelcell::ch#1 ← ++ mode_8bpppixelcell::ch#8 to ++
Resolved ranged comparison value [1765] if(mode_8bpppixelcell::ch#1!=rangelast(0,$ff)) goto mode_8bpppixelcell::@7 to (number) 0
Resolved ranged next value [1805] mode_8bppchunkybmm::i#1 ← ++ mode_8bppchunkybmm::i#2 to ++
Resolved ranged comparison value [1807] if(mode_8bppchunkybmm::i#1!=rangelast(0,$f)) goto mode_8bppchunkybmm::@1 to (number) $10
Resolved ranged next value [1830] mode_8bppchunkybmm::x#1 ← ++ mode_8bppchunkybmm::x#2 to ++
Resolved ranged comparison value [1832] if(mode_8bppchunkybmm::x#1!=rangelast(0,$13f)) goto mode_8bppchunkybmm::@4 to (number) $140
Resolved ranged next value [1840] mode_8bppchunkybmm::y#1 ← ++ mode_8bppchunkybmm::y#6 to ++
Resolved ranged comparison value [1842] if(mode_8bppchunkybmm::y#1!=rangelast(0,$c7)) goto mode_8bppchunkybmm::@3 to (number) $c8
Simplifying expression containing zero bitmap_plot_xhi#0 in [235] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_xhi#0 + (byte) 0) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) 0)
Simplifying expression containing zero bitmap_plot_xlo#0 in [235] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) 0)
Successful SSA optimization PassNSimplifyExpressionWithZero
Eliminating unused variable (void*) memset::return#2 and assignment [30] (void*) memset::return#2 ← (void*) memset::str#0
Eliminating unused variable - keeping the phi block (byte*) print_screen#12
Eliminating unused variable - keeping the phi block (byte*) print_line_cursor#10
Eliminating unused variable - keeping the phi block (byte*) print_char_cursor#11
Eliminating unused variable - keeping the phi block (byte) dtv_control#1
Eliminating unused constant (const byte) bitmap_line::xd#0
Eliminating unused constant (const byte) bitmap_line::yd#0
Successful SSA optimization PassNEliminateUnusedVars
Eliminating unused variable - keeping the phi block (byte) dtv_control#3
Eliminating unused constant (const byte*) print_screen#0
Eliminating unused constant (const byte) dtv_control#129
Successful SSA optimization PassNEliminateUnusedVars
Removing unused block main::@return
Successful SSA optimization Pass2EliminateUnusedBlocks
Adding number conversion cast (unumber) 0 in if((byte) bitmap_init::x#1!=(number) 0) goto bitmap_init::@1
Adding number conversion cast (unumber) 0 in if((byte) bitmap_init::y#1!=(number) 0) goto bitmap_init::@5
Adding number conversion cast (unumber) $c8 in if((byte) bitmap_clear::x#1!=(number) $c8) goto bitmap_clear::@2
Adding number conversion cast (unumber) $28 in if((byte) bitmap_clear::y#1!=(number) $28) goto bitmap_clear::@1
Adding number conversion cast (unumber) $10 in if((byte) menu::i#1!=(number) $10) goto menu::@1
Adding number conversion cast (unumber) $10 in if((byte) mode_stdchar::i#1!=(number) $10) goto mode_stdchar::@1
Adding number conversion cast (unumber) $28 in if((byte) mode_stdchar::cx#1!=(number) $28) goto mode_stdchar::@4
Adding number conversion cast (unumber) $19 in if((byte) mode_stdchar::cy#1!=(number) $19) goto mode_stdchar::@3
Adding number conversion cast (unumber) $10 in if((byte) mode_ecmchar::i#1!=(number) $10) goto mode_ecmchar::@1
Adding number conversion cast (unumber) $28 in if((byte) mode_ecmchar::cx#1!=(number) $28) goto mode_ecmchar::@4
Adding number conversion cast (unumber) $19 in if((byte) mode_ecmchar::cy#1!=(number) $19) goto mode_ecmchar::@3
Adding number conversion cast (unumber) $10 in if((byte) mode_mcchar::i#1!=(number) $10) goto mode_mcchar::@1
Adding number conversion cast (unumber) $28 in if((byte) mode_mcchar::cx#1!=(number) $28) goto mode_mcchar::@4
Adding number conversion cast (unumber) $19 in if((byte) mode_mcchar::cy#1!=(number) $19) goto mode_mcchar::@3
Adding number conversion cast (unumber) $10 in if((byte) mode_stdbitmap::i#1!=(number) $10) goto mode_stdbitmap::@1
Adding number conversion cast (unumber) $28 in if((byte) mode_stdbitmap::cx#1!=(number) $28) goto mode_stdbitmap::@4
Adding number conversion cast (unumber) $19 in if((byte) mode_stdbitmap::cy#1!=(number) $19) goto mode_stdbitmap::@3
Adding number conversion cast (unumber) $10 in if((byte) mode_hicolstdchar::i#1!=(number) $10) goto mode_hicolstdchar::@1
Adding number conversion cast (unumber) $28 in if((byte) mode_hicolstdchar::cx#1!=(number) $28) goto mode_hicolstdchar::@4
Adding number conversion cast (unumber) $19 in if((byte) mode_hicolstdchar::cy#1!=(number) $19) goto mode_hicolstdchar::@3
Adding number conversion cast (unumber) $10 in if((byte) mode_hicolecmchar::i#1!=(number) $10) goto mode_hicolecmchar::@1
Adding number conversion cast (unumber) $28 in if((byte) mode_hicolecmchar::cx#1!=(number) $28) goto mode_hicolecmchar::@4
Adding number conversion cast (unumber) $19 in if((byte) mode_hicolecmchar::cy#1!=(number) $19) goto mode_hicolecmchar::@3
Adding number conversion cast (unumber) $10 in if((byte) mode_hicolmcchar::i#1!=(number) $10) goto mode_hicolmcchar::@1
Adding number conversion cast (unumber) $28 in if((byte) mode_hicolmcchar::cx#1!=(number) $28) goto mode_hicolmcchar::@4
Adding number conversion cast (unumber) $19 in if((byte) mode_hicolmcchar::cy#1!=(number) $19) goto mode_hicolmcchar::@3
Adding number conversion cast (unumber) $10 in if((byte) mode_twoplanebitmap::i#1!=(number) $10) goto mode_twoplanebitmap::@1
Adding number conversion cast (unumber) $28 in if((byte) mode_twoplanebitmap::cx#1!=(number) $28) goto mode_twoplanebitmap::@4
Adding number conversion cast (unumber) $19 in if((byte) mode_twoplanebitmap::cy#1!=(number) $19) goto mode_twoplanebitmap::@3
Adding number conversion cast (unumber) $28 in if((byte) mode_twoplanebitmap::ax#1!=(number) $28) goto mode_twoplanebitmap::@8
Adding number conversion cast (unumber) $c8 in if((byte) mode_twoplanebitmap::ay#1!=(number) $c8) goto mode_twoplanebitmap::@7
Adding number conversion cast (unumber) $28 in if((byte) mode_twoplanebitmap::bx#1!=(number) $28) goto mode_twoplanebitmap::@16
Adding number conversion cast (unumber) $c8 in if((byte) mode_twoplanebitmap::by#1!=(number) $c8) goto mode_twoplanebitmap::@15
Adding number conversion cast (unumber) $10 in if((byte) mode_sixsfred::i#1!=(number) $10) goto mode_sixsfred::@1
Adding number conversion cast (unumber) $28 in if((byte) mode_sixsfred::cx#1!=(number) $28) goto mode_sixsfred::@4
Adding number conversion cast (unumber) $19 in if((byte) mode_sixsfred::cy#1!=(number) $19) goto mode_sixsfred::@3
Adding number conversion cast (unumber) $28 in if((byte) mode_sixsfred::ax#1!=(number) $28) goto mode_sixsfred::@8
Adding number conversion cast (unumber) $c8 in if((byte) mode_sixsfred::ay#1!=(number) $c8) goto mode_sixsfred::@7
Adding number conversion cast (unumber) $28 in if((byte) mode_sixsfred::bx#1!=(number) $28) goto mode_sixsfred::@12
Adding number conversion cast (unumber) $c8 in if((byte) mode_sixsfred::by#1!=(number) $c8) goto mode_sixsfred::@11
Adding number conversion cast (unumber) $10 in if((byte) mode_sixsfred2::i#1!=(number) $10) goto mode_sixsfred2::@1
Adding number conversion cast (unumber) $28 in if((byte) mode_sixsfred2::cx#1!=(number) $28) goto mode_sixsfred2::@4
Adding number conversion cast (unumber) $19 in if((byte) mode_sixsfred2::cy#1!=(number) $19) goto mode_sixsfred2::@3
Adding number conversion cast (unumber) $28 in if((byte) mode_sixsfred2::ax#1!=(number) $28) goto mode_sixsfred2::@8
Adding number conversion cast (unumber) $c8 in if((byte) mode_sixsfred2::ay#1!=(number) $c8) goto mode_sixsfred2::@7
Adding number conversion cast (unumber) $28 in if((byte) mode_sixsfred2::bx#1!=(number) $28) goto mode_sixsfred2::@12
Adding number conversion cast (unumber) $c8 in if((byte) mode_sixsfred2::by#1!=(number) $c8) goto mode_sixsfred2::@11
Adding number conversion cast (unumber) $10 in if((byte) mode_8bpppixelcell::i#1!=(number) $10) goto mode_8bpppixelcell::@1
Adding number conversion cast (unumber) $28 in if((byte) mode_8bpppixelcell::ax#1!=(number) $28) goto mode_8bpppixelcell::@4
Adding number conversion cast (unumber) $19 in if((byte) mode_8bpppixelcell::ay#1!=(number) $19) goto mode_8bpppixelcell::@3
Adding number conversion cast (unumber) 8 in if((byte) mode_8bpppixelcell::cp#1!=(number) 8) goto mode_8bpppixelcell::@9
Adding number conversion cast (unumber) 8 in if((byte) mode_8bpppixelcell::cr#1!=(number) 8) goto mode_8bpppixelcell::@8
Adding number conversion cast (unumber) 0 in if((byte) mode_8bpppixelcell::ch#1!=(number) 0) goto mode_8bpppixelcell::@7
Adding number conversion cast (unumber) $10 in if((byte) mode_8bppchunkybmm::i#1!=(number) $10) goto mode_8bppchunkybmm::@1
Adding number conversion cast (unumber) $140 in if((word) mode_8bppchunkybmm::x#1!=(number) $140) goto mode_8bppchunkybmm::@4
Adding number conversion cast (unumber) $c8 in if((byte) mode_8bppchunkybmm::y#1!=(number) $c8) goto mode_8bppchunkybmm::@3
Successful SSA optimization PassNAddNumberTypeConversions
Inlining cast (byte*) bitmap_clear::bitmap#0 ← (byte*)(word~) bitmap_clear::$3
Successful SSA optimization Pass2InlineCast
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast $c8
Simplifying constant integer cast $28
Simplifying constant integer cast $10
Simplifying constant integer cast $10
Simplifying constant integer cast $28
Simplifying constant integer cast $19
Simplifying constant integer cast $10
Simplifying constant integer cast $28
Simplifying constant integer cast $19
Simplifying constant integer cast $10
Simplifying constant integer cast $28
Simplifying constant integer cast $19
Simplifying constant integer cast $10
Simplifying constant integer cast $28
Simplifying constant integer cast $19
Simplifying constant integer cast $10
Simplifying constant integer cast $28
Simplifying constant integer cast $19
Simplifying constant integer cast $10
Simplifying constant integer cast $28
Simplifying constant integer cast $19
Simplifying constant integer cast $10
Simplifying constant integer cast $28
Simplifying constant integer cast $19
Simplifying constant integer cast $10
Simplifying constant integer cast $28
Simplifying constant integer cast $19
Simplifying constant integer cast $28
Simplifying constant integer cast $c8
Simplifying constant integer cast $28
Simplifying constant integer cast $c8
Simplifying constant integer cast $10
Simplifying constant integer cast $28
Simplifying constant integer cast $19
Simplifying constant integer cast $28
Simplifying constant integer cast $c8
Simplifying constant integer cast $28
Simplifying constant integer cast $c8
Simplifying constant integer cast $10
Simplifying constant integer cast $28
Simplifying constant integer cast $19
Simplifying constant integer cast $28
Simplifying constant integer cast $c8
Simplifying constant integer cast $28
Simplifying constant integer cast $c8
Simplifying constant integer cast $10
Simplifying constant integer cast $28
Simplifying constant integer cast $19
Simplifying constant integer cast 8
Simplifying constant integer cast 8
Simplifying constant integer cast 0
Simplifying constant integer cast $10
Simplifying constant integer cast $140
Simplifying constant integer cast $c8
Successful SSA optimization PassNCastSimplification
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) $c8
Finalized unsigned number type (byte) $28
Finalized unsigned number type (byte) $10
Finalized unsigned number type (byte) $10
Finalized unsigned number type (byte) $28
Finalized unsigned number type (byte) $19
Finalized unsigned number type (byte) $10
Finalized unsigned number type (byte) $28
Finalized unsigned number type (byte) $19
Finalized unsigned number type (byte) $10
Finalized unsigned number type (byte) $28
Finalized unsigned number type (byte) $19
Finalized unsigned number type (byte) $10
Finalized unsigned number type (byte) $28
Finalized unsigned number type (byte) $19
Finalized unsigned number type (byte) $10
Finalized unsigned number type (byte) $28
Finalized unsigned number type (byte) $19
Finalized unsigned number type (byte) $10
Finalized unsigned number type (byte) $28
Finalized unsigned number type (byte) $19
Finalized unsigned number type (byte) $10
Finalized unsigned number type (byte) $28
Finalized unsigned number type (byte) $19
Finalized unsigned number type (byte) $10
Finalized unsigned number type (byte) $28
Finalized unsigned number type (byte) $19
Finalized unsigned number type (byte) $28
Finalized unsigned number type (byte) $c8
Finalized unsigned number type (byte) $28
Finalized unsigned number type (byte) $c8
Finalized unsigned number type (byte) $10
Finalized unsigned number type (byte) $28
Finalized unsigned number type (byte) $19
Finalized unsigned number type (byte) $28
Finalized unsigned number type (byte) $c8
Finalized unsigned number type (byte) $28
Finalized unsigned number type (byte) $c8
Finalized unsigned number type (byte) $10
Finalized unsigned number type (byte) $28
Finalized unsigned number type (byte) $19
Finalized unsigned number type (byte) $28
Finalized unsigned number type (byte) $c8
Finalized unsigned number type (byte) $28
Finalized unsigned number type (byte) $c8
Finalized unsigned number type (byte) $10
Finalized unsigned number type (byte) $28
Finalized unsigned number type (byte) $19
Finalized unsigned number type (byte) 8
Finalized unsigned number type (byte) 8
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) $10
Finalized unsigned number type (word) $140
Finalized unsigned number type (byte) $c8
Successful SSA optimization PassNFinalizeNumberTypeConversions
Alias (byte~) bitmap_init::$10 = (byte~) bitmap_init::$6
Alias (dword~) menu::$6 = (dword~) menu::$3
Alias (dword~) mode_stdchar::$6 = (dword~) mode_stdchar::$3
Alias (dword~) mode_ecmchar::$6 = (dword~) mode_ecmchar::$3
Alias (dword~) mode_mcchar::$6 = (dword~) mode_mcchar::$3
Alias (byte*~) mode_hicolstdchar::$6 = (byte*~) mode_hicolstdchar::$3
Alias (byte*~) mode_hicolecmchar::$6 = (byte*~) mode_hicolecmchar::$3
Alias (byte*~) mode_hicolmcchar::$6 = (byte*~) mode_hicolmcchar::$3
Alias (byte*~) mode_twoplanebitmap::$12 = (byte*~) mode_twoplanebitmap::$10
Alias (byte*~) mode_sixsfred::$13 = (byte*~) mode_sixsfred::$11
Alias (byte*~) mode_sixsfred2::$11 = (byte*~) mode_sixsfred2::$9
Alias (byte~) mode_8bpppixelcell::$2 = (byte~) mode_8bpppixelcell::$0
Alias (byte~) mode_8bppchunkybmm::$3 = (byte~) mode_8bppchunkybmm::$0
Alias (word~) mode_8bppchunkybmm::$12 = (word~) mode_8bppchunkybmm::$10
Successful SSA optimization Pass2AliasElimination
Identified duplicate assignment right side [990] (byte~) mode_8bpppixelcell::$3 ← (byte~) mode_8bpppixelcell::$2 | (const byte) DTV_CHUNKY#0
Identified duplicate assignment right side [1057] (byte~) mode_8bppchunkybmm::$4 ← (byte~) mode_8bppchunkybmm::$3 | (const byte) DTV_CHUNKY#0
Successful SSA optimization Pass2DuplicateRValueIdentification
Constant right-side identified [47] (byte~) bitmap_init::$1 ← > (const byte*) bitmap_init::bitmap#0
Constant right-side identified [220] (dword~) menu::$6 ← (const dword) DTV_COLOR_BANK_DEFAULT#0 / (word) $400
Constant right-side identified [235] (byte~) menu::$13 ← (const byte) VIC_DEN#0 | (const byte) VIC_RSEL#0
Constant right-side identified [253] (byte*~) menu::$27 ← (const byte*) COLS#0 + (word) $3e8
Constant right-side identified [382] (dword~) mode_stdchar::$6 ← (const dword) DTV_COLOR_BANK_DEFAULT#0 / (word) $400
Constant right-side identified [397] (byte~) mode_stdchar::$13 ← (const byte) VIC_DEN#0 | (const byte) VIC_RSEL#0
Constant right-side identified [438] (dword~) mode_ecmchar::$6 ← (const dword) DTV_COLOR_BANK_DEFAULT#0 / (word) $400
Constant right-side identified [453] (byte~) mode_ecmchar::$13 ← (const byte) VIC_DEN#0 | (const byte) VIC_RSEL#0
Constant right-side identified [498] (dword~) mode_mcchar::$6 ← (const dword) DTV_COLOR_BANK_DEFAULT#0 / (word) $400
Constant right-side identified [513] (byte~) mode_mcchar::$13 ← (const byte) VIC_DEN#0 | (const byte) VIC_RSEL#0
Constant right-side identified [516] (byte~) mode_mcchar::$15 ← (const byte) VIC_CSEL#0 | (const byte) VIC_MCM#0
Constant right-side identified [564] (byte~) mode_stdbitmap::$7 ← (const byte) VIC_BMM#0 | (const byte) VIC_DEN#0
Constant right-side identified [615] (byte*~) mode_hicolstdchar::$6 ← (const byte*) mode_hicolstdchar::COLORS#0 / (word) $400
Constant right-side identified [630] (byte~) mode_hicolstdchar::$13 ← (const byte) VIC_DEN#0 | (const byte) VIC_RSEL#0
Constant right-side identified [669] (byte*~) mode_hicolecmchar::$6 ← (const byte*) mode_hicolecmchar::COLORS#0 / (word) $400
Constant right-side identified [684] (byte~) mode_hicolecmchar::$13 ← (const byte) VIC_DEN#0 | (const byte) VIC_RSEL#0
Constant right-side identified [727] (byte*~) mode_hicolmcchar::$6 ← (const byte*) mode_hicolmcchar::COLORS#0 / (word) $400
Constant right-side identified [742] (byte~) mode_hicolmcchar::$13 ← (const byte) VIC_DEN#0 | (const byte) VIC_RSEL#0
Constant right-side identified [745] (byte~) mode_hicolmcchar::$15 ← (const byte) VIC_CSEL#0 | (const byte) VIC_MCM#0
Constant right-side identified [780] (byte) dtv_control#39 ← (const byte) DTV_HIGHCOLOR#0 | (const byte) DTV_LINEAR#0
Constant right-side identified [783] (byte~) mode_twoplanebitmap::$2 ← (const byte) VIC_ECM#0 | (const byte) VIC_BMM#0
Constant right-side identified [789] (byte~) mode_twoplanebitmap::$6 ← < (const byte*) mode_twoplanebitmap::PLANEA#0
Constant right-side identified [791] (byte~) mode_twoplanebitmap::$7 ← > (const byte*) mode_twoplanebitmap::PLANEA#0
Constant right-side identified [797] (byte~) mode_twoplanebitmap::$8 ← < (const byte*) mode_twoplanebitmap::PLANEB#0
Constant right-side identified [799] (byte~) mode_twoplanebitmap::$9 ← > (const byte*) mode_twoplanebitmap::PLANEB#0
Constant right-side identified [805] (byte*~) mode_twoplanebitmap::$12 ← (const byte*) mode_twoplanebitmap::COLORS#0 / (word) $400
Constant right-side identified [853] (byte) dtv_control#42 ← (const byte) DTV_HIGHCOLOR#0 | (const byte) DTV_LINEAR#0
Constant right-side identified [856] (byte~) mode_sixsfred::$2 ← (const byte) VIC_ECM#0 | (const byte) VIC_BMM#0
Constant right-side identified [861] (byte~) mode_sixsfred::$6 ← (const byte) VIC_MCM#0 | (const byte) VIC_CSEL#0
Constant right-side identified [863] (byte~) mode_sixsfred::$7 ← < (const byte*) mode_sixsfred::PLANEA#0
Constant right-side identified [865] (byte~) mode_sixsfred::$8 ← > (const byte*) mode_sixsfred::PLANEA#0
Constant right-side identified [871] (byte~) mode_sixsfred::$9 ← < (const byte*) mode_sixsfred::PLANEB#0
Constant right-side identified [873] (byte~) mode_sixsfred::$10 ← > (const byte*) mode_sixsfred::PLANEB#0
Constant right-side identified [879] (byte*~) mode_sixsfred::$13 ← (const byte*) mode_sixsfred::COLORS#0 / (word) $400
Constant right-side identified [921] (byte~) mode_sixsfred2::$0 ← (const byte) VIC_ECM#0 | (const byte) VIC_BMM#0
Constant right-side identified [926] (byte~) mode_sixsfred2::$4 ← (const byte) VIC_MCM#0 | (const byte) VIC_CSEL#0
Constant right-side identified [928] (byte~) mode_sixsfred2::$5 ← < (const byte*) mode_sixsfred2::PLANEA#0
Constant right-side identified [930] (byte~) mode_sixsfred2::$6 ← > (const byte*) mode_sixsfred2::PLANEA#0
Constant right-side identified [936] (byte~) mode_sixsfred2::$7 ← < (const byte*) mode_sixsfred2::PLANEB#0
Constant right-side identified [938] (byte~) mode_sixsfred2::$8 ← > (const byte*) mode_sixsfred2::PLANEB#0
Constant right-side identified [944] (byte*~) mode_sixsfred2::$11 ← (const byte*) mode_sixsfred2::COLORS#0 / (word) $400
Constant right-side identified [987] (byte~) mode_8bpppixelcell::$2 ← (const byte) DTV_HIGHCOLOR#0 | (const byte) DTV_LINEAR#0
Constant right-side identified [992] (byte~) mode_8bpppixelcell::$4 ← (const byte) VIC_ECM#0 | (const byte) VIC_DEN#0
Constant right-side identified [996] (byte~) mode_8bpppixelcell::$7 ← (const byte) VIC_MCM#0 | (const byte) VIC_CSEL#0
Constant right-side identified [998] (byte~) mode_8bpppixelcell::$8 ← < (const byte*) mode_8bpppixelcell::PLANEA#0
Constant right-side identified [1000] (byte~) mode_8bpppixelcell::$9 ← > (const byte*) mode_8bpppixelcell::PLANEA#0
Constant right-side identified [1006] (byte~) mode_8bpppixelcell::$10 ← < (const byte*) mode_8bpppixelcell::PLANEB#0
Constant right-side identified [1008] (byte~) mode_8bpppixelcell::$11 ← > (const byte*) mode_8bpppixelcell::PLANEB#0
Constant right-side identified [1053] (byte~) mode_8bppchunkybmm::$3 ← (const byte) DTV_HIGHCOLOR#0 | (const byte) DTV_LINEAR#0
Constant right-side identified [1060] (byte~) mode_8bppchunkybmm::$6 ← (const byte) VIC_ECM#0 | (const byte) VIC_DEN#0
Constant right-side identified [1064] (byte~) mode_8bppchunkybmm::$9 ← (const byte) VIC_MCM#0 | (const byte) VIC_CSEL#0
Constant right-side identified [1066] (word~) mode_8bppchunkybmm::$12 ← < (const dword) mode_8bppchunkybmm::PLANEB#0
Constant right-side identified [1072] (word~) mode_8bppchunkybmm::$14 ← > (const dword) mode_8bppchunkybmm::PLANEB#0
Constant right-side identified [1083] (dword~) mode_8bppchunkybmm::$16 ← (const dword) mode_8bppchunkybmm::PLANEB#0 / (word) $4000
Successful SSA optimization Pass2ConstantRValueConsolidation
Constant (const void*) memset::str#0 = (void*)print_screen#1
Constant (const byte) bitmap_init::$1 = >bitmap_init::bitmap#0
Constant (const dword) menu::$0 = (dword)menu::CHARSET#0
Constant (const dword) menu::$6 = DTV_COLOR_BANK_DEFAULT#0/$400
Constant (const word) menu::$9 = (word)menu::CHARSET#0
Constant (const byte) menu::$13 = VIC_DEN#0|VIC_RSEL#0
Constant (const word) menu::$15 = (word)menu::SCREEN#0
Constant (const word) menu::$18 = (word)menu::CHARSET#0
Constant (const byte*) menu::$27 = COLS#0+$3e8
Constant (const dword) mode_stdchar::$0 = (dword)mode_stdchar::CHARSET#0
Constant (const dword) mode_stdchar::$6 = DTV_COLOR_BANK_DEFAULT#0/$400
Constant (const word) mode_stdchar::$9 = (word)mode_stdchar::CHARSET#0
Constant (const byte) mode_stdchar::$13 = VIC_DEN#0|VIC_RSEL#0
Constant (const word) mode_stdchar::$15 = (word)mode_stdchar::SCREEN#0
Constant (const word) mode_stdchar::$18 = (word)mode_stdchar::CHARSET#0
Constant (const dword) mode_ecmchar::$0 = (dword)mode_ecmchar::CHARSET#0
Constant (const dword) mode_ecmchar::$6 = DTV_COLOR_BANK_DEFAULT#0/$400
Constant (const word) mode_ecmchar::$9 = (word)mode_ecmchar::CHARSET#0
Constant (const byte) mode_ecmchar::$13 = VIC_DEN#0|VIC_RSEL#0
Constant (const word) mode_ecmchar::$16 = (word)mode_ecmchar::SCREEN#0
Constant (const word) mode_ecmchar::$19 = (word)mode_ecmchar::CHARSET#0
Constant (const dword) mode_mcchar::$0 = (dword)mode_mcchar::CHARSET#0
Constant (const dword) mode_mcchar::$6 = DTV_COLOR_BANK_DEFAULT#0/$400
Constant (const word) mode_mcchar::$9 = (word)mode_mcchar::CHARSET#0
Constant (const byte) mode_mcchar::$13 = VIC_DEN#0|VIC_RSEL#0
Constant (const byte) mode_mcchar::$15 = VIC_CSEL#0|VIC_MCM#0
Constant (const word) mode_mcchar::$16 = (word)mode_mcchar::SCREEN#0
Constant (const word) mode_mcchar::$19 = (word)mode_mcchar::CHARSET#0
Constant (const dword) mode_stdbitmap::$0 = (dword)mode_stdbitmap::BITMAP#0
Constant (const word) mode_stdbitmap::$3 = (word)mode_stdbitmap::BITMAP#0
Constant (const byte) mode_stdbitmap::$7 = VIC_BMM#0|VIC_DEN#0
Constant (const word) mode_stdbitmap::$10 = (word)mode_stdbitmap::SCREEN#0
Constant (const word) mode_stdbitmap::$13 = (word)mode_stdbitmap::BITMAP#0
Constant (const dword) mode_hicolstdchar::$0 = (dword)mode_hicolstdchar::CHARSET#0
Constant (const byte*) mode_hicolstdchar::$6 = mode_hicolstdchar::COLORS#0/$400
Constant (const word) mode_hicolstdchar::$9 = (word)mode_hicolstdchar::CHARSET#0
Constant (const byte) mode_hicolstdchar::$13 = VIC_DEN#0|VIC_RSEL#0
Constant (const word) mode_hicolstdchar::$15 = (word)mode_hicolstdchar::SCREEN#0
Constant (const word) mode_hicolstdchar::$18 = (word)mode_hicolstdchar::CHARSET#0
Constant (const dword) mode_hicolecmchar::$0 = (dword)mode_hicolecmchar::CHARSET#0
Constant (const byte*) mode_hicolecmchar::$6 = mode_hicolecmchar::COLORS#0/$400
Constant (const word) mode_hicolecmchar::$9 = (word)mode_hicolecmchar::CHARSET#0
Constant (const byte) mode_hicolecmchar::$13 = VIC_DEN#0|VIC_RSEL#0
Constant (const word) mode_hicolecmchar::$16 = (word)mode_hicolecmchar::SCREEN#0
Constant (const word) mode_hicolecmchar::$19 = (word)mode_hicolecmchar::CHARSET#0
Constant (const dword) mode_hicolmcchar::$0 = (dword)mode_hicolmcchar::CHARSET#0
Constant (const byte*) mode_hicolmcchar::$6 = mode_hicolmcchar::COLORS#0/$400
Constant (const word) mode_hicolmcchar::$9 = (word)mode_hicolmcchar::CHARSET#0
Constant (const byte) mode_hicolmcchar::$13 = VIC_DEN#0|VIC_RSEL#0
Constant (const byte) mode_hicolmcchar::$15 = VIC_CSEL#0|VIC_MCM#0
Constant (const word) mode_hicolmcchar::$16 = (word)mode_hicolmcchar::SCREEN#0
Constant (const word) mode_hicolmcchar::$19 = (word)mode_hicolmcchar::CHARSET#0
Constant (const byte) dtv_control#39 = DTV_HIGHCOLOR#0|DTV_LINEAR#0
Constant (const byte) mode_twoplanebitmap::$2 = VIC_ECM#0|VIC_BMM#0
Constant (const byte) mode_twoplanebitmap::$6 = <mode_twoplanebitmap::PLANEA#0
Constant (const byte) mode_twoplanebitmap::$7 = >mode_twoplanebitmap::PLANEA#0
Constant (const byte) mode_twoplanebitmap::$8 = <mode_twoplanebitmap::PLANEB#0
Constant (const byte) mode_twoplanebitmap::$9 = >mode_twoplanebitmap::PLANEB#0
Constant (const byte*) mode_twoplanebitmap::$12 = mode_twoplanebitmap::COLORS#0/$400
Constant (const byte) dtv_control#42 = DTV_HIGHCOLOR#0|DTV_LINEAR#0
Constant (const byte) mode_sixsfred::$2 = VIC_ECM#0|VIC_BMM#0
Constant (const byte) mode_sixsfred::$6 = VIC_MCM#0|VIC_CSEL#0
Constant (const byte) mode_sixsfred::$7 = <mode_sixsfred::PLANEA#0
Constant (const byte) mode_sixsfred::$8 = >mode_sixsfred::PLANEA#0
Constant (const byte) mode_sixsfred::$9 = <mode_sixsfred::PLANEB#0
Constant (const byte) mode_sixsfred::$10 = >mode_sixsfred::PLANEB#0
Constant (const byte*) mode_sixsfred::$13 = mode_sixsfred::COLORS#0/$400
Constant (const byte) mode_sixsfred2::$0 = VIC_ECM#0|VIC_BMM#0
Constant (const byte) mode_sixsfred2::$4 = VIC_MCM#0|VIC_CSEL#0
Constant (const byte) mode_sixsfred2::$5 = <mode_sixsfred2::PLANEA#0
Constant (const byte) mode_sixsfred2::$6 = >mode_sixsfred2::PLANEA#0
Constant (const byte) mode_sixsfred2::$7 = <mode_sixsfred2::PLANEB#0
Constant (const byte) mode_sixsfred2::$8 = >mode_sixsfred2::PLANEB#0
Constant (const byte*) mode_sixsfred2::$11 = mode_sixsfred2::COLORS#0/$400
Constant (const byte) mode_8bpppixelcell::$2 = DTV_HIGHCOLOR#0|DTV_LINEAR#0
Constant (const byte) mode_8bpppixelcell::$4 = VIC_ECM#0|VIC_DEN#0
Constant (const byte) mode_8bpppixelcell::$7 = VIC_MCM#0|VIC_CSEL#0
Constant (const byte) mode_8bpppixelcell::$8 = <mode_8bpppixelcell::PLANEA#0
Constant (const byte) mode_8bpppixelcell::$9 = >mode_8bpppixelcell::PLANEA#0
Constant (const byte) mode_8bpppixelcell::$10 = <mode_8bpppixelcell::PLANEB#0
Constant (const byte) mode_8bpppixelcell::$11 = >mode_8bpppixelcell::PLANEB#0
Constant (const byte) mode_8bppchunkybmm::$3 = DTV_HIGHCOLOR#0|DTV_LINEAR#0
Constant (const byte) mode_8bppchunkybmm::$6 = VIC_ECM#0|VIC_DEN#0
Constant (const byte) mode_8bppchunkybmm::$9 = VIC_MCM#0|VIC_CSEL#0
Constant (const word) mode_8bppchunkybmm::$12 = <mode_8bppchunkybmm::PLANEB#0
Constant (const word) mode_8bppchunkybmm::$14 = >mode_8bppchunkybmm::PLANEB#0
Constant (const dword) mode_8bppchunkybmm::$16 = mode_8bppchunkybmm::PLANEB#0/$4000
Successful SSA optimization Pass2ConstantIdentification
Constant (const byte) mode_twoplanebitmap::$1 = dtv_control#39
Constant (const byte) mode_sixsfred::$1 = dtv_control#42
Successful SSA optimization Pass2ConstantIdentification
Constant value identified (byte*)memset::str#0 in [4] (byte*~) memset::$2 ← (byte*)(const void*) memset::str#0
Constant value identified (byte*)memset::str#0 in [6] (byte*) memset::dst#0 ← (byte*)(const void*) memset::str#0
Constant value identified (word)menu::$6 in [221] (word~) menu::$4 ← (word)(const dword) menu::$6
Constant value identified (word)menu::$6 in [225] (word~) menu::$7 ← (word)(const dword) menu::$6
Constant value identified (word)mode_stdchar::$6 in [383] (word~) mode_stdchar::$4 ← (word)(const dword) mode_stdchar::$6
Constant value identified (word)mode_stdchar::$6 in [387] (word~) mode_stdchar::$7 ← (word)(const dword) mode_stdchar::$6
Constant value identified (word)mode_ecmchar::$6 in [439] (word~) mode_ecmchar::$4 ← (word)(const dword) mode_ecmchar::$6
Constant value identified (word)mode_ecmchar::$6 in [443] (word~) mode_ecmchar::$7 ← (word)(const dword) mode_ecmchar::$6
Constant value identified (word)mode_mcchar::$6 in [499] (word~) mode_mcchar::$4 ← (word)(const dword) mode_mcchar::$6
Constant value identified (word)mode_mcchar::$6 in [503] (word~) mode_mcchar::$7 ← (word)(const dword) mode_mcchar::$6
Constant value identified (word)mode_hicolstdchar::$6 in [616] (word~) mode_hicolstdchar::$4 ← (word)(const byte*) mode_hicolstdchar::$6
Constant value identified (word)mode_hicolstdchar::$6 in [620] (word~) mode_hicolstdchar::$7 ← (word)(const byte*) mode_hicolstdchar::$6
Constant value identified (word)mode_hicolecmchar::$6 in [670] (word~) mode_hicolecmchar::$4 ← (word)(const byte*) mode_hicolecmchar::$6
Constant value identified (word)mode_hicolecmchar::$6 in [674] (word~) mode_hicolecmchar::$7 ← (word)(const byte*) mode_hicolecmchar::$6
Constant value identified (word)mode_hicolmcchar::$6 in [728] (word~) mode_hicolmcchar::$4 ← (word)(const byte*) mode_hicolmcchar::$6
Constant value identified (word)mode_hicolmcchar::$6 in [732] (word~) mode_hicolmcchar::$7 ← (word)(const byte*) mode_hicolmcchar::$6
Constant value identified (byte)mode_8bppchunkybmm::$16 in [1084] (byte) mode_8bppchunkybmm::gfxbCpuBank#0 ← (byte)(const dword) mode_8bppchunkybmm::$16
Successful SSA optimization Pass2ConstantValues
Simplifying constant evaluating to zero <(const byte*) mode_twoplanebitmap::PLANEA#0 in
Simplifying constant evaluating to zero <(const byte*) mode_twoplanebitmap::PLANEB#0 in
Simplifying constant evaluating to zero <(const byte*) mode_sixsfred::PLANEA#0 in
Simplifying constant evaluating to zero <(const byte*) mode_sixsfred::PLANEB#0 in
Simplifying constant evaluating to zero <(const byte*) mode_sixsfred2::PLANEA#0 in
Simplifying constant evaluating to zero <(const byte*) mode_sixsfred2::PLANEB#0 in
Simplifying constant evaluating to zero <(const byte*) mode_8bpppixelcell::PLANEA#0 in
Simplifying constant evaluating to zero <(const byte*) mode_8bpppixelcell::PLANEB#0 in
Simplifying constant evaluating to zero <(const dword) mode_8bppchunkybmm::PLANEB#0 in
Successful SSA optimization PassNSimplifyConstantZero
Alias (byte~) mode_8bppchunkybmm::$4 = (byte~) mode_8bppchunkybmm::$1
Successful SSA optimization Pass2AliasElimination
Identified duplicate assignment right side [959] (byte~) mode_8bppchunkybmm::$5 ← (byte~) mode_8bppchunkybmm::$4 | (const byte) DTV_COLORRAM_OFF#0
Successful SSA optimization Pass2DuplicateRValueIdentification
Constant right-side identified [212] (dword~) menu::$1 ← (const dword) menu::$0 / (dword) $10000
Constant right-side identified [223] (word~) menu::$10 ← (const word) menu::$9 / (word) $4000
Constant right-side identified [227] (byte~) menu::$14 ← (const byte) menu::$13 | (byte) 3
Constant right-side identified [230] (word~) menu::$16 ← (const word) menu::$15 & (word) $3fff
Constant right-side identified [232] (word~) menu::$19 ← (const word) menu::$18 & (word) $3fff
Constant right-side identified [365] (dword~) mode_stdchar::$1 ← (const dword) mode_stdchar::$0 / (dword) $10000
Constant right-side identified [376] (word~) mode_stdchar::$10 ← (const word) mode_stdchar::$9 / (word) $4000
Constant right-side identified [380] (byte~) mode_stdchar::$14 ← (const byte) mode_stdchar::$13 | (byte) 3
Constant right-side identified [383] (word~) mode_stdchar::$16 ← (const word) mode_stdchar::$15 & (word) $3fff
Constant right-side identified [385] (word~) mode_stdchar::$19 ← (const word) mode_stdchar::$18 & (word) $3fff
Constant right-side identified [414] (dword~) mode_ecmchar::$1 ← (const dword) mode_ecmchar::$0 / (dword) $10000
Constant right-side identified [425] (word~) mode_ecmchar::$10 ← (const word) mode_ecmchar::$9 / (word) $4000
Constant right-side identified [429] (byte~) mode_ecmchar::$14 ← (const byte) mode_ecmchar::$13 | (const byte) VIC_ECM#0
Constant right-side identified [433] (word~) mode_ecmchar::$17 ← (const word) mode_ecmchar::$16 & (word) $3fff
Constant right-side identified [435] (word~) mode_ecmchar::$20 ← (const word) mode_ecmchar::$19 & (word) $3fff
Constant right-side identified [467] (dword~) mode_mcchar::$1 ← (const dword) mode_mcchar::$0 / (dword) $10000
Constant right-side identified [478] (word~) mode_mcchar::$10 ← (const word) mode_mcchar::$9 / (word) $4000
Constant right-side identified [482] (byte~) mode_mcchar::$14 ← (const byte) mode_mcchar::$13 | (byte) 3
Constant right-side identified [485] (word~) mode_mcchar::$17 ← (const word) mode_mcchar::$16 & (word) $3fff
Constant right-side identified [487] (word~) mode_mcchar::$20 ← (const word) mode_mcchar::$19 & (word) $3fff
Constant right-side identified [518] (dword~) mode_stdbitmap::$1 ← (const dword) mode_stdbitmap::$0 / (dword) $10000
Constant right-side identified [523] (word~) mode_stdbitmap::$4 ← (const word) mode_stdbitmap::$3 / (word) $4000
Constant right-side identified [527] (byte~) mode_stdbitmap::$8 ← (const byte) mode_stdbitmap::$7 | (const byte) VIC_RSEL#0
Constant right-side identified [531] (word~) mode_stdbitmap::$11 ← (const word) mode_stdbitmap::$10 & (word) $3fff
Constant right-side identified [533] (word~) mode_stdbitmap::$14 ← (const word) mode_stdbitmap::$13 & (word) $3fff
Constant right-side identified [571] (dword~) mode_hicolstdchar::$1 ← (const dword) mode_hicolstdchar::$0 / (dword) $10000
Constant right-side identified [582] (word~) mode_hicolstdchar::$10 ← (const word) mode_hicolstdchar::$9 / (word) $4000
Constant right-side identified [586] (byte~) mode_hicolstdchar::$14 ← (const byte) mode_hicolstdchar::$13 | (byte) 3
Constant right-side identified [589] (word~) mode_hicolstdchar::$16 ← (const word) mode_hicolstdchar::$15 & (word) $3fff
Constant right-side identified [591] (word~) mode_hicolstdchar::$19 ← (const word) mode_hicolstdchar::$18 & (word) $3fff
Constant right-side identified [618] (dword~) mode_hicolecmchar::$1 ← (const dword) mode_hicolecmchar::$0 / (dword) $10000
Constant right-side identified [629] (word~) mode_hicolecmchar::$10 ← (const word) mode_hicolecmchar::$9 / (word) $4000
Constant right-side identified [633] (byte~) mode_hicolecmchar::$14 ← (const byte) mode_hicolecmchar::$13 | (const byte) VIC_ECM#0
Constant right-side identified [637] (word~) mode_hicolecmchar::$17 ← (const word) mode_hicolecmchar::$16 & (word) $3fff
Constant right-side identified [639] (word~) mode_hicolecmchar::$20 ← (const word) mode_hicolecmchar::$19 & (word) $3fff
Constant right-side identified [669] (dword~) mode_hicolmcchar::$1 ← (const dword) mode_hicolmcchar::$0 / (dword) $10000
Constant right-side identified [680] (word~) mode_hicolmcchar::$10 ← (const word) mode_hicolmcchar::$9 / (word) $4000
Constant right-side identified [684] (byte~) mode_hicolmcchar::$14 ← (const byte) mode_hicolmcchar::$13 | (byte) 3
Constant right-side identified [687] (word~) mode_hicolmcchar::$17 ← (const word) mode_hicolmcchar::$16 & (word) $3fff
Constant right-side identified [689] (word~) mode_hicolmcchar::$20 ← (const word) mode_hicolmcchar::$19 & (word) $3fff
Constant right-side identified [719] (byte~) mode_twoplanebitmap::$3 ← (const byte) mode_twoplanebitmap::$2 | (const byte) VIC_DEN#0
Constant right-side identified [736] (byte~) mode_twoplanebitmap::$11 ← < (const byte*) mode_twoplanebitmap::$12
Constant right-side identified [738] (byte~) mode_twoplanebitmap::$13 ← > (const byte*) mode_twoplanebitmap::$12
Constant right-side identified [783] (byte~) mode_sixsfred::$3 ← (const byte) mode_sixsfred::$2 | (const byte) VIC_DEN#0
Constant right-side identified [800] (byte~) mode_sixsfred::$12 ← < (const byte*) mode_sixsfred::$13
Constant right-side identified [802] (byte~) mode_sixsfred::$14 ← > (const byte*) mode_sixsfred::$13
Constant right-side identified [840] (byte~) mode_sixsfred2::$1 ← (const byte) mode_sixsfred2::$0 | (const byte) VIC_DEN#0
Constant right-side identified [857] (byte~) mode_sixsfred2::$10 ← < (const byte*) mode_sixsfred2::$11
Constant right-side identified [859] (byte~) mode_sixsfred2::$12 ← > (const byte*) mode_sixsfred2::$11
Constant right-side identified [898] (byte) dtv_control#48 ← (const byte) mode_8bpppixelcell::$2 | (const byte) DTV_CHUNKY#0
Constant right-side identified [901] (byte~) mode_8bpppixelcell::$5 ← (const byte) mode_8bpppixelcell::$4 | (const byte) VIC_RSEL#0
Constant right-side identified [956] (byte~) mode_8bppchunkybmm::$4 ← (const byte) mode_8bppchunkybmm::$3 | (const byte) DTV_CHUNKY#0
Constant right-side identified [961] (byte~) mode_8bppchunkybmm::$7 ← (const byte) mode_8bppchunkybmm::$6 | (const byte) VIC_RSEL#0
Constant right-side identified [965] (byte~) mode_8bppchunkybmm::$11 ← < (const word) mode_8bppchunkybmm::$12
Constant right-side identified [967] (byte~) mode_8bppchunkybmm::$13 ← > (const word) mode_8bppchunkybmm::$12
Constant right-side identified [969] (byte~) mode_8bppchunkybmm::$15 ← < (const word) mode_8bppchunkybmm::$14
Successful SSA optimization Pass2ConstantRValueConsolidation
Constant (const byte*) memset::$2 = (byte*)memset::str#0
Constant (const byte*) memset::dst#0 = (byte*)memset::str#0
Constant (const dword) menu::$1 = menu::$0/$10000
Constant (const word) menu::$4 = (word)menu::$6
Constant (const word) menu::$7 = (word)menu::$6
Constant (const word) menu::$10 = menu::$9/$4000
Constant (const byte) menu::$14 = menu::$13|3
Constant (const word) menu::$16 = menu::$15&$3fff
Constant (const word) menu::$19 = menu::$18&$3fff
Constant (const dword) mode_stdchar::$1 = mode_stdchar::$0/$10000
Constant (const word) mode_stdchar::$4 = (word)mode_stdchar::$6
Constant (const word) mode_stdchar::$7 = (word)mode_stdchar::$6
Constant (const word) mode_stdchar::$10 = mode_stdchar::$9/$4000
Constant (const byte) mode_stdchar::$14 = mode_stdchar::$13|3
Constant (const word) mode_stdchar::$16 = mode_stdchar::$15&$3fff
Constant (const word) mode_stdchar::$19 = mode_stdchar::$18&$3fff
Constant (const dword) mode_ecmchar::$1 = mode_ecmchar::$0/$10000
Constant (const word) mode_ecmchar::$4 = (word)mode_ecmchar::$6
Constant (const word) mode_ecmchar::$7 = (word)mode_ecmchar::$6
Constant (const word) mode_ecmchar::$10 = mode_ecmchar::$9/$4000
Constant (const byte) mode_ecmchar::$14 = mode_ecmchar::$13|VIC_ECM#0
Constant (const word) mode_ecmchar::$17 = mode_ecmchar::$16&$3fff
Constant (const word) mode_ecmchar::$20 = mode_ecmchar::$19&$3fff
Constant (const dword) mode_mcchar::$1 = mode_mcchar::$0/$10000
Constant (const word) mode_mcchar::$4 = (word)mode_mcchar::$6
Constant (const word) mode_mcchar::$7 = (word)mode_mcchar::$6
Constant (const word) mode_mcchar::$10 = mode_mcchar::$9/$4000
Constant (const byte) mode_mcchar::$14 = mode_mcchar::$13|3
Constant (const word) mode_mcchar::$17 = mode_mcchar::$16&$3fff
Constant (const word) mode_mcchar::$20 = mode_mcchar::$19&$3fff
Constant (const dword) mode_stdbitmap::$1 = mode_stdbitmap::$0/$10000
Constant (const word) mode_stdbitmap::$4 = mode_stdbitmap::$3/$4000
Constant (const byte) mode_stdbitmap::$8 = mode_stdbitmap::$7|VIC_RSEL#0
Constant (const word) mode_stdbitmap::$11 = mode_stdbitmap::$10&$3fff
Constant (const word) mode_stdbitmap::$14 = mode_stdbitmap::$13&$3fff
Constant (const dword) mode_hicolstdchar::$1 = mode_hicolstdchar::$0/$10000
Constant (const word) mode_hicolstdchar::$4 = (word)mode_hicolstdchar::$6
Constant (const word) mode_hicolstdchar::$7 = (word)mode_hicolstdchar::$6
Constant (const word) mode_hicolstdchar::$10 = mode_hicolstdchar::$9/$4000
Constant (const byte) mode_hicolstdchar::$14 = mode_hicolstdchar::$13|3
Constant (const word) mode_hicolstdchar::$16 = mode_hicolstdchar::$15&$3fff
Constant (const word) mode_hicolstdchar::$19 = mode_hicolstdchar::$18&$3fff
Constant (const dword) mode_hicolecmchar::$1 = mode_hicolecmchar::$0/$10000
Constant (const word) mode_hicolecmchar::$4 = (word)mode_hicolecmchar::$6
Constant (const word) mode_hicolecmchar::$7 = (word)mode_hicolecmchar::$6
Constant (const word) mode_hicolecmchar::$10 = mode_hicolecmchar::$9/$4000
Constant (const byte) mode_hicolecmchar::$14 = mode_hicolecmchar::$13|VIC_ECM#0
Constant (const word) mode_hicolecmchar::$17 = mode_hicolecmchar::$16&$3fff
Constant (const word) mode_hicolecmchar::$20 = mode_hicolecmchar::$19&$3fff
Constant (const dword) mode_hicolmcchar::$1 = mode_hicolmcchar::$0/$10000
Constant (const word) mode_hicolmcchar::$4 = (word)mode_hicolmcchar::$6
Constant (const word) mode_hicolmcchar::$7 = (word)mode_hicolmcchar::$6
Constant (const word) mode_hicolmcchar::$10 = mode_hicolmcchar::$9/$4000
Constant (const byte) mode_hicolmcchar::$14 = mode_hicolmcchar::$13|3
Constant (const word) mode_hicolmcchar::$17 = mode_hicolmcchar::$16&$3fff
Constant (const word) mode_hicolmcchar::$20 = mode_hicolmcchar::$19&$3fff
Constant (const byte) mode_twoplanebitmap::$3 = mode_twoplanebitmap::$2|VIC_DEN#0
Constant (const byte) mode_twoplanebitmap::$11 = <mode_twoplanebitmap::$12
Constant (const byte) mode_twoplanebitmap::$13 = >mode_twoplanebitmap::$12
Constant (const byte) mode_sixsfred::$3 = mode_sixsfred::$2|VIC_DEN#0
Constant (const byte) mode_sixsfred::$12 = <mode_sixsfred::$13
Constant (const byte) mode_sixsfred::$14 = >mode_sixsfred::$13
Constant (const byte) mode_sixsfred2::$1 = mode_sixsfred2::$0|VIC_DEN#0
Constant (const byte) mode_sixsfred2::$10 = <mode_sixsfred2::$11
Constant (const byte) mode_sixsfred2::$12 = >mode_sixsfred2::$11
Constant (const byte) dtv_control#48 = mode_8bpppixelcell::$2|DTV_CHUNKY#0
Constant (const byte) mode_8bpppixelcell::$5 = mode_8bpppixelcell::$4|VIC_RSEL#0
Constant (const byte) mode_8bppchunkybmm::$4 = mode_8bppchunkybmm::$3|DTV_CHUNKY#0
Constant (const byte) mode_8bppchunkybmm::$7 = mode_8bppchunkybmm::$6|VIC_RSEL#0
Constant (const byte) mode_8bppchunkybmm::$11 = <mode_8bppchunkybmm::$12
Constant (const byte) mode_8bppchunkybmm::$13 = >mode_8bppchunkybmm::$12
Constant (const byte) mode_8bppchunkybmm::$15 = <mode_8bppchunkybmm::$14
Constant (const byte) mode_8bppchunkybmm::gfxbCpuBank#0 = (byte)mode_8bppchunkybmm::$16
Successful SSA optimization Pass2ConstantIdentification
Constant (const byte) mode_8bpppixelcell::$3 = dtv_control#48
Constant (const byte) dtvSetCpuBankSegment1::cpuBankIdx#0 = mode_8bppchunkybmm::gfxbCpuBank#0
Successful SSA optimization Pass2ConstantIdentification
Constant value identified (byte)menu::$1 in [213] (byte~) menu::$2 ← (byte)(const dword) menu::$1
Constant value identified (byte)menu::$10 in [224] (byte~) menu::$11 ← (byte)(const word) menu::$10
Constant value identified (byte)mode_stdchar::$1 in [366] (byte~) mode_stdchar::$2 ← (byte)(const dword) mode_stdchar::$1
Constant value identified (byte)mode_stdchar::$10 in [377] (byte~) mode_stdchar::$11 ← (byte)(const word) mode_stdchar::$10
Constant value identified (byte)mode_ecmchar::$1 in [415] (byte~) mode_ecmchar::$2 ← (byte)(const dword) mode_ecmchar::$1
Constant value identified (byte)mode_ecmchar::$10 in [426] (byte~) mode_ecmchar::$11 ← (byte)(const word) mode_ecmchar::$10
Constant value identified (byte)mode_mcchar::$1 in [468] (byte~) mode_mcchar::$2 ← (byte)(const dword) mode_mcchar::$1
Constant value identified (byte)mode_mcchar::$10 in [479] (byte~) mode_mcchar::$11 ← (byte)(const word) mode_mcchar::$10
Constant value identified (byte)mode_stdbitmap::$1 in [519] (byte~) mode_stdbitmap::$2 ← (byte)(const dword) mode_stdbitmap::$1
Constant value identified (byte)mode_stdbitmap::$4 in [524] (byte~) mode_stdbitmap::$5 ← (byte)(const word) mode_stdbitmap::$4
Constant value identified (byte)mode_hicolstdchar::$1 in [572] (byte~) mode_hicolstdchar::$2 ← (byte)(const dword) mode_hicolstdchar::$1
Constant value identified (byte)mode_hicolstdchar::$10 in [583] (byte~) mode_hicolstdchar::$11 ← (byte)(const word) mode_hicolstdchar::$10
Constant value identified (byte)mode_hicolecmchar::$1 in [619] (byte~) mode_hicolecmchar::$2 ← (byte)(const dword) mode_hicolecmchar::$1
Constant value identified (byte)mode_hicolecmchar::$10 in [630] (byte~) mode_hicolecmchar::$11 ← (byte)(const word) mode_hicolecmchar::$10
Constant value identified (byte)mode_hicolmcchar::$1 in [670] (byte~) mode_hicolmcchar::$2 ← (byte)(const dword) mode_hicolmcchar::$1
Constant value identified (byte)mode_hicolmcchar::$10 in [681] (byte~) mode_hicolmcchar::$11 ← (byte)(const word) mode_hicolmcchar::$10
Successful SSA optimization Pass2ConstantValues
Simplifying constant evaluating to zero (const dword) menu::$0/(dword) $10000 in
Simplifying constant evaluating to zero (const word) menu::$15&(word) $3fff in
Simplifying constant evaluating to zero (const dword) mode_stdchar::$0/(dword) $10000 in
Simplifying constant evaluating to zero (const word) mode_stdchar::$15&(word) $3fff in
Simplifying constant evaluating to zero (const dword) mode_ecmchar::$0/(dword) $10000 in
Simplifying constant evaluating to zero (const word) mode_ecmchar::$16&(word) $3fff in
Simplifying constant evaluating to zero (const dword) mode_mcchar::$0/(dword) $10000 in
Simplifying constant evaluating to zero (const word) mode_mcchar::$16&(word) $3fff in
Simplifying constant evaluating to zero (const dword) mode_stdbitmap::$0/(dword) $10000 in
Simplifying constant evaluating to zero (const word) mode_stdbitmap::$10&(word) $3fff in
Simplifying constant evaluating to zero (const dword) mode_hicolstdchar::$0/(dword) $10000 in
Simplifying constant evaluating to zero (const word) mode_hicolstdchar::$15&(word) $3fff in
Simplifying constant evaluating to zero (const dword) mode_hicolecmchar::$0/(dword) $10000 in
Simplifying constant evaluating to zero (const word) mode_hicolecmchar::$16&(word) $3fff in
Simplifying constant evaluating to zero (const dword) mode_hicolmcchar::$0/(dword) $10000 in
Simplifying constant evaluating to zero (const word) mode_hicolmcchar::$16&(word) $3fff in
Simplifying constant evaluating to zero >(const byte*) mode_twoplanebitmap::$12 in
Simplifying constant evaluating to zero >(const byte*) mode_sixsfred::$13 in
Simplifying constant evaluating to zero >(const byte*) mode_sixsfred2::$11 in
Simplifying constant evaluating to zero <(const word) mode_8bppchunkybmm::$12 in
Simplifying constant evaluating to zero >(const word) mode_8bppchunkybmm::$12 in
Simplifying constant evaluating to zero (byte)(const dword) menu::$1 in [213] (byte~) menu::$2 ← (byte)(const dword) menu::$1
Simplifying constant evaluating to zero (byte)(const dword) mode_stdchar::$1 in [366] (byte~) mode_stdchar::$2 ← (byte)(const dword) mode_stdchar::$1
Simplifying constant evaluating to zero (byte)(const dword) mode_ecmchar::$1 in [415] (byte~) mode_ecmchar::$2 ← (byte)(const dword) mode_ecmchar::$1
Simplifying constant evaluating to zero (byte)(const dword) mode_mcchar::$1 in [468] (byte~) mode_mcchar::$2 ← (byte)(const dword) mode_mcchar::$1
Simplifying constant evaluating to zero (byte)(const dword) mode_stdbitmap::$1 in [519] (byte~) mode_stdbitmap::$2 ← (byte)(const dword) mode_stdbitmap::$1
Simplifying constant evaluating to zero (byte)(const dword) mode_hicolstdchar::$1 in [572] (byte~) mode_hicolstdchar::$2 ← (byte)(const dword) mode_hicolstdchar::$1
Simplifying constant evaluating to zero (byte)(const dword) mode_hicolecmchar::$1 in [619] (byte~) mode_hicolecmchar::$2 ← (byte)(const dword) mode_hicolecmchar::$1
Simplifying constant evaluating to zero (byte)(const dword) mode_hicolmcchar::$1 in [670] (byte~) mode_hicolmcchar::$2 ← (byte)(const dword) mode_hicolmcchar::$1
Successful SSA optimization PassNSimplifyConstantZero
Eliminating unused constant (const dword) menu::$0
Eliminating unused constant (const word) menu::$15
Eliminating unused constant (const dword) menu::$1
Eliminating unused constant (const dword) mode_stdchar::$0
Eliminating unused constant (const word) mode_stdchar::$15
Eliminating unused constant (const dword) mode_stdchar::$1
Eliminating unused constant (const dword) mode_ecmchar::$0
Eliminating unused constant (const word) mode_ecmchar::$16
Eliminating unused constant (const dword) mode_ecmchar::$1
Eliminating unused constant (const dword) mode_mcchar::$0
Eliminating unused constant (const word) mode_mcchar::$16
Eliminating unused constant (const dword) mode_mcchar::$1
Eliminating unused constant (const dword) mode_stdbitmap::$0
Eliminating unused constant (const word) mode_stdbitmap::$10
Eliminating unused constant (const dword) mode_stdbitmap::$1
Eliminating unused constant (const dword) mode_hicolstdchar::$0
Eliminating unused constant (const word) mode_hicolstdchar::$15
Eliminating unused constant (const dword) mode_hicolstdchar::$1
Eliminating unused constant (const dword) mode_hicolecmchar::$0
Eliminating unused constant (const word) mode_hicolecmchar::$16
Eliminating unused constant (const dword) mode_hicolecmchar::$1
Eliminating unused constant (const dword) mode_hicolmcchar::$0
Eliminating unused constant (const word) mode_hicolmcchar::$16
Eliminating unused constant (const dword) mode_hicolmcchar::$1
Eliminating unused constant (const word) mode_8bppchunkybmm::$12
Successful SSA optimization PassNEliminateUnusedVars
Constant right-side identified [4] (byte*) memset::end#0 ← (const byte*) memset::$2 + (const word) memset::num#0
Constant right-side identified [212] (byte~) menu::$5 ← < (const word) menu::$4
Constant right-side identified [214] (byte~) menu::$8 ← > (const word) menu::$7
Constant right-side identified [223] (word~) menu::$17 ← (const word) menu::$16 / (byte) $40
Constant right-side identified [224] (word~) menu::$20 ← (const word) menu::$19 / (word) $400
Constant right-side identified [358] (byte~) mode_stdchar::$5 ← < (const word) mode_stdchar::$4
Constant right-side identified [360] (byte~) mode_stdchar::$8 ← > (const word) mode_stdchar::$7
Constant right-side identified [369] (word~) mode_stdchar::$17 ← (const word) mode_stdchar::$16 / (byte) $40
Constant right-side identified [370] (word~) mode_stdchar::$20 ← (const word) mode_stdchar::$19 / (word) $400
Constant right-side identified [400] (byte~) mode_ecmchar::$5 ← < (const word) mode_ecmchar::$4
Constant right-side identified [402] (byte~) mode_ecmchar::$8 ← > (const word) mode_ecmchar::$7
Constant right-side identified [409] (byte~) mode_ecmchar::$15 ← (const byte) mode_ecmchar::$14 | (byte) 3
Constant right-side identified [412] (word~) mode_ecmchar::$18 ← (const word) mode_ecmchar::$17 / (byte) $40
Constant right-side identified [413] (word~) mode_ecmchar::$21 ← (const word) mode_ecmchar::$20 / (word) $400
Constant right-side identified [446] (byte~) mode_mcchar::$5 ← < (const word) mode_mcchar::$4
Constant right-side identified [448] (byte~) mode_mcchar::$8 ← > (const word) mode_mcchar::$7
Constant right-side identified [457] (word~) mode_mcchar::$18 ← (const word) mode_mcchar::$17 / (byte) $40
Constant right-side identified [458] (word~) mode_mcchar::$21 ← (const word) mode_mcchar::$20 / (word) $400
Constant right-side identified [495] (byte~) mode_stdbitmap::$9 ← (const byte) mode_stdbitmap::$8 | (byte) 3
Constant right-side identified [498] (word~) mode_stdbitmap::$12 ← (const word) mode_stdbitmap::$11 / (byte) $40
Constant right-side identified [499] (word~) mode_stdbitmap::$15 ← (const word) mode_stdbitmap::$14 / (word) $400
Constant right-side identified [538] (byte~) mode_hicolstdchar::$5 ← < (const word) mode_hicolstdchar::$4
Constant right-side identified [540] (byte~) mode_hicolstdchar::$8 ← > (const word) mode_hicolstdchar::$7
Constant right-side identified [549] (word~) mode_hicolstdchar::$17 ← (const word) mode_hicolstdchar::$16 / (byte) $40
Constant right-side identified [550] (word~) mode_hicolstdchar::$20 ← (const word) mode_hicolstdchar::$19 / (word) $400
Constant right-side identified [578] (byte~) mode_hicolecmchar::$5 ← < (const word) mode_hicolecmchar::$4
Constant right-side identified [580] (byte~) mode_hicolecmchar::$8 ← > (const word) mode_hicolecmchar::$7
Constant right-side identified [587] (byte~) mode_hicolecmchar::$15 ← (const byte) mode_hicolecmchar::$14 | (byte) 3
Constant right-side identified [590] (word~) mode_hicolecmchar::$18 ← (const word) mode_hicolecmchar::$17 / (byte) $40
Constant right-side identified [591] (word~) mode_hicolecmchar::$21 ← (const word) mode_hicolecmchar::$20 / (word) $400
Constant right-side identified [622] (byte~) mode_hicolmcchar::$5 ← < (const word) mode_hicolmcchar::$4
Constant right-side identified [624] (byte~) mode_hicolmcchar::$8 ← > (const word) mode_hicolmcchar::$7
Constant right-side identified [633] (word~) mode_hicolmcchar::$18 ← (const word) mode_hicolmcchar::$17 / (byte) $40
Constant right-side identified [634] (word~) mode_hicolmcchar::$21 ← (const word) mode_hicolmcchar::$20 / (word) $400
Constant right-side identified [663] (byte~) mode_twoplanebitmap::$4 ← (const byte) mode_twoplanebitmap::$3 | (const byte) VIC_RSEL#0
Constant right-side identified [724] (byte~) mode_sixsfred::$4 ← (const byte) mode_sixsfred::$3 | (const byte) VIC_RSEL#0
Constant right-side identified [778] (byte~) mode_sixsfred2::$2 ← (const byte) mode_sixsfred2::$1 | (const byte) VIC_RSEL#0
Constant right-side identified [834] (byte~) mode_8bpppixelcell::$6 ← (const byte) mode_8bpppixelcell::$5 | (byte) 3
Constant right-side identified [888] (byte) dtv_control#51 ← (const byte) mode_8bppchunkybmm::$4 | (const byte) DTV_COLORRAM_OFF#0
Constant right-side identified [891] (byte~) mode_8bppchunkybmm::$8 ← (const byte) mode_8bppchunkybmm::$7 | (byte) 3
Constant right-side identified [906] (byte) mode_8bppchunkybmm::gfxbCpuBank#1 ← ++ (const byte) mode_8bppchunkybmm::gfxbCpuBank#0
Successful SSA optimization Pass2ConstantRValueConsolidation
Constant (const byte*) memset::end#0 = memset::$2+memset::num#0
Constant (const byte) menu::$2 = 0
Constant (const byte) menu::$5 = <menu::$4
Constant (const byte) menu::$8 = >menu::$7
Constant (const byte) menu::$11 = (byte)menu::$10
Constant (const word) menu::$17 = menu::$16/$40
Constant (const word) menu::$20 = menu::$19/$400
Constant (const byte) mode_stdchar::$2 = 0
Constant (const byte) mode_stdchar::$5 = <mode_stdchar::$4
Constant (const byte) mode_stdchar::$8 = >mode_stdchar::$7
Constant (const byte) mode_stdchar::$11 = (byte)mode_stdchar::$10
Constant (const word) mode_stdchar::$17 = mode_stdchar::$16/$40
Constant (const word) mode_stdchar::$20 = mode_stdchar::$19/$400
Constant (const byte) mode_ecmchar::$2 = 0
Constant (const byte) mode_ecmchar::$5 = <mode_ecmchar::$4
Constant (const byte) mode_ecmchar::$8 = >mode_ecmchar::$7
Constant (const byte) mode_ecmchar::$11 = (byte)mode_ecmchar::$10
Constant (const byte) mode_ecmchar::$15 = mode_ecmchar::$14|3
Constant (const word) mode_ecmchar::$18 = mode_ecmchar::$17/$40
Constant (const word) mode_ecmchar::$21 = mode_ecmchar::$20/$400
Constant (const byte) mode_mcchar::$2 = 0
Constant (const byte) mode_mcchar::$5 = <mode_mcchar::$4
Constant (const byte) mode_mcchar::$8 = >mode_mcchar::$7
Constant (const byte) mode_mcchar::$11 = (byte)mode_mcchar::$10
Constant (const word) mode_mcchar::$18 = mode_mcchar::$17/$40
Constant (const word) mode_mcchar::$21 = mode_mcchar::$20/$400
Constant (const byte) mode_stdbitmap::$2 = 0
Constant (const byte) mode_stdbitmap::$5 = (byte)mode_stdbitmap::$4
Constant (const byte) mode_stdbitmap::$9 = mode_stdbitmap::$8|3
Constant (const word) mode_stdbitmap::$12 = mode_stdbitmap::$11/$40
Constant (const word) mode_stdbitmap::$15 = mode_stdbitmap::$14/$400
Constant (const byte) mode_hicolstdchar::$2 = 0
Constant (const byte) mode_hicolstdchar::$5 = <mode_hicolstdchar::$4
Constant (const byte) mode_hicolstdchar::$8 = >mode_hicolstdchar::$7
Constant (const byte) mode_hicolstdchar::$11 = (byte)mode_hicolstdchar::$10
Constant (const word) mode_hicolstdchar::$17 = mode_hicolstdchar::$16/$40
Constant (const word) mode_hicolstdchar::$20 = mode_hicolstdchar::$19/$400
Constant (const byte) mode_hicolecmchar::$2 = 0
Constant (const byte) mode_hicolecmchar::$5 = <mode_hicolecmchar::$4
Constant (const byte) mode_hicolecmchar::$8 = >mode_hicolecmchar::$7
Constant (const byte) mode_hicolecmchar::$11 = (byte)mode_hicolecmchar::$10
Constant (const byte) mode_hicolecmchar::$15 = mode_hicolecmchar::$14|3
Constant (const word) mode_hicolecmchar::$18 = mode_hicolecmchar::$17/$40
Constant (const word) mode_hicolecmchar::$21 = mode_hicolecmchar::$20/$400
Constant (const byte) mode_hicolmcchar::$2 = 0
Constant (const byte) mode_hicolmcchar::$5 = <mode_hicolmcchar::$4
Constant (const byte) mode_hicolmcchar::$8 = >mode_hicolmcchar::$7
Constant (const byte) mode_hicolmcchar::$11 = (byte)mode_hicolmcchar::$10
Constant (const word) mode_hicolmcchar::$18 = mode_hicolmcchar::$17/$40
Constant (const word) mode_hicolmcchar::$21 = mode_hicolmcchar::$20/$400
Constant (const byte) mode_twoplanebitmap::$4 = mode_twoplanebitmap::$3|VIC_RSEL#0
Constant (const byte) mode_sixsfred::$4 = mode_sixsfred::$3|VIC_RSEL#0
Constant (const byte) mode_sixsfred2::$2 = mode_sixsfred2::$1|VIC_RSEL#0
Constant (const byte) mode_8bpppixelcell::$6 = mode_8bpppixelcell::$5|3
Constant (const byte) dtv_control#51 = mode_8bppchunkybmm::$4|DTV_COLORRAM_OFF#0
Constant (const byte) mode_8bppchunkybmm::$8 = mode_8bppchunkybmm::$7|3
Constant (const byte) mode_8bppchunkybmm::gfxbCpuBank#1 = ++mode_8bppchunkybmm::gfxbCpuBank#0
Successful SSA optimization Pass2ConstantIdentification
Constant (const byte) mode_8bppchunkybmm::$5 = dtv_control#51
Successful SSA optimization Pass2ConstantIdentification
Simplifying constant evaluating to zero >(const word) menu::$7 in
Simplifying constant evaluating to zero (const word) menu::$16/(byte) $40 in
Simplifying constant evaluating to zero >(const word) mode_stdchar::$7 in
Simplifying constant evaluating to zero (const word) mode_stdchar::$16/(byte) $40 in
Simplifying constant evaluating to zero >(const word) mode_ecmchar::$7 in
Simplifying constant evaluating to zero (const word) mode_ecmchar::$17/(byte) $40 in
Simplifying constant evaluating to zero >(const word) mode_mcchar::$7 in
Simplifying constant evaluating to zero (const word) mode_mcchar::$17/(byte) $40 in
Simplifying constant evaluating to zero (const word) mode_stdbitmap::$11/(byte) $40 in
Simplifying constant evaluating to zero >(const word) mode_hicolstdchar::$7 in
Simplifying constant evaluating to zero (const word) mode_hicolstdchar::$16/(byte) $40 in
Simplifying constant evaluating to zero >(const word) mode_hicolecmchar::$7 in
Simplifying constant evaluating to zero (const word) mode_hicolecmchar::$17/(byte) $40 in
Simplifying constant evaluating to zero >(const word) mode_hicolmcchar::$7 in
Simplifying constant evaluating to zero (const word) mode_hicolmcchar::$17/(byte) $40 in
Successful SSA optimization PassNSimplifyConstantZero
Simplifying expression containing zero menu::$20 in [225] (word~) menu::$21 ← (const word) menu::$17 | (const word) menu::$20
Simplifying expression containing zero mode_stdchar::$20 in [371] (word~) mode_stdchar::$21 ← (const word) mode_stdchar::$17 | (const word) mode_stdchar::$20
Simplifying expression containing zero mode_ecmchar::$21 in [414] (word~) mode_ecmchar::$22 ← (const word) mode_ecmchar::$18 | (const word) mode_ecmchar::$21
Simplifying expression containing zero mode_mcchar::$21 in [459] (word~) mode_mcchar::$22 ← (const word) mode_mcchar::$18 | (const word) mode_mcchar::$21
Simplifying expression containing zero mode_stdbitmap::$15 in [500] (word~) mode_stdbitmap::$16 ← (const word) mode_stdbitmap::$12 | (const word) mode_stdbitmap::$15
Simplifying expression containing zero mode_hicolstdchar::$20 in [551] (word~) mode_hicolstdchar::$21 ← (const word) mode_hicolstdchar::$17 | (const word) mode_hicolstdchar::$20
Simplifying expression containing zero mode_hicolecmchar::$21 in [592] (word~) mode_hicolecmchar::$22 ← (const word) mode_hicolecmchar::$18 | (const word) mode_hicolecmchar::$21
Simplifying expression containing zero mode_hicolmcchar::$21 in [635] (word~) mode_hicolmcchar::$22 ← (const word) mode_hicolmcchar::$18 | (const word) mode_hicolmcchar::$21
Successful SSA optimization PassNSimplifyExpressionWithZero
Eliminating unused constant (const word) menu::$7
Eliminating unused constant (const word) menu::$16
Eliminating unused constant (const word) menu::$17
Eliminating unused constant (const word) mode_stdchar::$7
Eliminating unused constant (const word) mode_stdchar::$16
Eliminating unused constant (const word) mode_stdchar::$17
Eliminating unused constant (const word) mode_ecmchar::$7
Eliminating unused constant (const word) mode_ecmchar::$17
Eliminating unused constant (const word) mode_ecmchar::$18
Eliminating unused constant (const word) mode_mcchar::$7
Eliminating unused constant (const word) mode_mcchar::$17
Eliminating unused constant (const word) mode_mcchar::$18
Eliminating unused constant (const word) mode_stdbitmap::$11
Eliminating unused constant (const word) mode_stdbitmap::$12
Eliminating unused constant (const word) mode_hicolstdchar::$7
Eliminating unused constant (const word) mode_hicolstdchar::$16
Eliminating unused constant (const word) mode_hicolstdchar::$17
Eliminating unused constant (const word) mode_hicolecmchar::$7
Eliminating unused constant (const word) mode_hicolecmchar::$17
Eliminating unused constant (const word) mode_hicolecmchar::$18
Eliminating unused constant (const word) mode_hicolmcchar::$7
Eliminating unused constant (const word) mode_hicolmcchar::$17
Eliminating unused constant (const word) mode_hicolmcchar::$18
Successful SSA optimization PassNEliminateUnusedVars
Constant right-side identified [214] (byte~) menu::$12 ← (byte) 3 ^ (const byte) menu::$11
Constant right-side identified [354] (byte~) mode_stdchar::$12 ← (byte) 3 ^ (const byte) mode_stdchar::$11
Constant right-side identified [390] (byte~) mode_ecmchar::$12 ← (byte) 3 ^ (const byte) mode_ecmchar::$11
Constant right-side identified [429] (byte~) mode_mcchar::$12 ← (byte) 3 ^ (const byte) mode_mcchar::$11
Constant right-side identified [465] (byte~) mode_stdbitmap::$6 ← (byte) 3 ^ (const byte) mode_stdbitmap::$5
Constant right-side identified [510] (byte~) mode_hicolstdchar::$12 ← (byte) 3 ^ (const byte) mode_hicolstdchar::$11
Constant right-side identified [544] (byte~) mode_hicolecmchar::$12 ← (byte) 3 ^ (const byte) mode_hicolecmchar::$11
Constant right-side identified [581] (byte~) mode_hicolmcchar::$12 ← (byte) 3 ^ (const byte) mode_hicolmcchar::$11
Constant right-side identified [613] (byte~) mode_twoplanebitmap::$5 ← (const byte) mode_twoplanebitmap::$4 | (byte) 3
Constant right-side identified [673] (byte~) mode_sixsfred::$5 ← (const byte) mode_sixsfred::$4 | (byte) 3
Constant right-side identified [726] (byte~) mode_sixsfred2::$3 ← (const byte) mode_sixsfred2::$2 | (byte) 3
Successful SSA optimization Pass2ConstantRValueConsolidation
Constant (const byte) menu::$12 = 3^menu::$11
Constant (const word) menu::$21 = menu::$20
Constant (const byte) mode_stdchar::$12 = 3^mode_stdchar::$11
Constant (const word) mode_stdchar::$21 = mode_stdchar::$20
Constant (const byte) mode_ecmchar::$12 = 3^mode_ecmchar::$11
Constant (const word) mode_ecmchar::$22 = mode_ecmchar::$21
Constant (const byte) mode_mcchar::$12 = 3^mode_mcchar::$11
Constant (const word) mode_mcchar::$22 = mode_mcchar::$21
Constant (const byte) mode_stdbitmap::$6 = 3^mode_stdbitmap::$5
Constant (const word) mode_stdbitmap::$16 = mode_stdbitmap::$15
Constant (const byte) mode_hicolstdchar::$12 = 3^mode_hicolstdchar::$11
Constant (const word) mode_hicolstdchar::$21 = mode_hicolstdchar::$20
Constant (const byte) mode_hicolecmchar::$12 = 3^mode_hicolecmchar::$11
Constant (const word) mode_hicolecmchar::$22 = mode_hicolecmchar::$21
Constant (const byte) mode_hicolmcchar::$12 = 3^mode_hicolmcchar::$11
Constant (const word) mode_hicolmcchar::$22 = mode_hicolmcchar::$21
Constant (const byte) mode_twoplanebitmap::$5 = mode_twoplanebitmap::$4|3
Constant (const byte) mode_sixsfred::$5 = mode_sixsfred::$4|3
Constant (const byte) mode_sixsfred2::$3 = mode_sixsfred2::$2|3
Successful SSA optimization Pass2ConstantIdentification
Constant value identified (byte)menu::$21 in [219] (byte~) menu::$22 ← (byte)(const word) menu::$21
Constant value identified (byte)mode_stdchar::$21 in [359] (byte~) mode_stdchar::$22 ← (byte)(const word) mode_stdchar::$21
Constant value identified (byte)mode_ecmchar::$22 in [395] (byte~) mode_ecmchar::$23 ← (byte)(const word) mode_ecmchar::$22
Constant value identified (byte)mode_mcchar::$22 in [434] (byte~) mode_mcchar::$23 ← (byte)(const word) mode_mcchar::$22
Constant value identified (byte)mode_stdbitmap::$16 in [470] (byte~) mode_stdbitmap::$17 ← (byte)(const word) mode_stdbitmap::$16
Constant value identified (byte)mode_hicolstdchar::$21 in [515] (byte~) mode_hicolstdchar::$22 ← (byte)(const word) mode_hicolstdchar::$21
Constant value identified (byte)mode_hicolecmchar::$22 in [549] (byte~) mode_hicolecmchar::$23 ← (byte)(const word) mode_hicolecmchar::$22
Constant value identified (byte)mode_hicolmcchar::$22 in [586] (byte~) mode_hicolmcchar::$23 ← (byte)(const word) mode_hicolmcchar::$22
Successful SSA optimization Pass2ConstantValues
Constant (const byte) menu::$22 = (byte)menu::$21
Constant (const byte) mode_stdchar::$22 = (byte)mode_stdchar::$21
Constant (const byte) mode_ecmchar::$23 = (byte)mode_ecmchar::$22
Constant (const byte) mode_mcchar::$23 = (byte)mode_mcchar::$22
Constant (const byte) mode_stdbitmap::$17 = (byte)mode_stdbitmap::$16
Constant (const byte) mode_hicolstdchar::$22 = (byte)mode_hicolstdchar::$21
Constant (const byte) mode_hicolecmchar::$23 = (byte)mode_hicolecmchar::$22
Constant (const byte) mode_hicolmcchar::$23 = (byte)mode_hicolmcchar::$22
Successful SSA optimization Pass2ConstantIdentification
Inlining Noop Cast [64] (byte*) bitmap_clear::bitmap#0 ← (byte*)(word~) bitmap_clear::$3 keeping bitmap_clear::bitmap#0
Inlining Noop Cast [78] (byte*) bitmap_plot::plotter#0 ← (byte*)(word~) bitmap_plot::$0 keeping bitmap_plot::plotter#0
Successful SSA optimization Pass2NopCastInlining
Rewriting multiplication to use shift [368] (byte~) mode_stdchar::$28 ← (byte~) mode_stdchar::$27 * (byte) $10
Rewriting multiplication to use shift [404] (byte~) mode_ecmchar::$29 ← (byte~) mode_ecmchar::$28 * (byte) $10
Rewriting multiplication to use shift [439] (byte~) mode_mcchar::$29 ← (byte~) mode_mcchar::$28 * (byte) $10
Rewriting multiplication to use shift [468] (byte~) mode_stdbitmap::$25 ← (byte) mode_stdbitmap::col#0 * (byte) $10
Rewriting multiplication to use shift [508] (byte~) mode_hicolstdchar::$26 ← (byte~) mode_hicolstdchar::$25 * (byte) $10
Rewriting multiplication to use shift [542] (byte~) mode_hicolecmchar::$27 ← (byte~) mode_hicolecmchar::$26 * (byte) $10
Rewriting multiplication to use shift [575] (byte~) mode_hicolmcchar::$27 ← (byte~) mode_hicolmcchar::$26 * (byte) $10
Rewriting multiplication to use shift [615] (byte~) mode_twoplanebitmap::$17 ← (byte~) mode_twoplanebitmap::$16 * (byte) $10
Rewriting division to use shift [681] (byte~) mode_sixsfred::$21 ← (byte) mode_sixsfred::ay#4 / (byte) 2
Rewriting multiplication to use shift [724] (byte~) mode_sixsfred2::$16 ← (byte~) mode_sixsfred2::$15 * (byte) $10
Rewriting division to use shift [735] (byte~) mode_sixsfred2::$21 ← (byte) mode_sixsfred2::ay#4 / (byte) 2
Rewriting multiplication to use shift [776] (byte~) mode_8bpppixelcell::$15 ← (byte~) mode_8bpppixelcell::$14 * (byte) $10
Rewriting multiplication to use shift [796] (byte) mode_8bpppixelcell::bits#1 ← (byte) mode_8bpppixelcell::bits#2 * (byte) 2
Successful SSA optimization Pass2MultiplyToShiftRewriting
Inlining constant with var siblings (const byte) dtvSetCpuBankSegment1::cpuBankIdx#2
Inlining constant with var siblings (const byte) dtvSetCpuBankSegment1::cpuBankIdx#0
Inlining constant with var siblings (const byte*) memset::dst#0
Inlining constant with var siblings (const byte*) print_str_lines::str#1
Inlining constant with var siblings (const byte) keyboard_key_pressed::key#0
Inlining constant with var siblings (const byte) keyboard_key_pressed::key#1
Inlining constant with var siblings (const byte) keyboard_key_pressed::key#2
Inlining constant with var siblings (const byte) keyboard_key_pressed::key#3
Inlining constant with var siblings (const byte) keyboard_key_pressed::key#4
Inlining constant with var siblings (const byte) keyboard_key_pressed::key#5
Inlining constant with var siblings (const byte) keyboard_key_pressed::key#6
Inlining constant with var siblings (const byte) keyboard_key_pressed::key#7
Inlining constant with var siblings (const byte) keyboard_key_pressed::key#8
Inlining constant with var siblings (const byte) keyboard_key_pressed::key#9
Inlining constant with var siblings (const byte) keyboard_key_pressed::key#10
Inlining constant with var siblings (const byte) keyboard_key_pressed::key#11
Inlining constant with var siblings (const byte) keyboard_key_pressed::key#12
Inlining constant with var siblings (const byte) keyboard_key_pressed::key#13
Inlining constant with var siblings (const byte) keyboard_key_pressed::key#14
Inlining constant with var siblings (const byte) keyboard_key_pressed::key#15
Inlining constant with var siblings (const byte) keyboard_key_pressed::key#16
Inlining constant with var siblings (const byte) keyboard_key_pressed::key#17
Inlining constant with var siblings (const byte) keyboard_key_pressed::key#18
Inlining constant with var siblings (const byte) keyboard_key_pressed::key#19
Inlining constant with var siblings (const byte) bitmap_init::bits#0
Inlining constant with var siblings (const byte) bitmap_init::x#0
Inlining constant with var siblings (const byte) bitmap_init::bits#2
Inlining constant with var siblings (const byte*) bitmap_init::yoffs#0
Inlining constant with var siblings (const byte) bitmap_init::y#0
Inlining constant with var siblings (const byte) bitmap_clear::y#0
Inlining constant with var siblings (const byte) bitmap_clear::x#0
Inlining constant with var siblings (const byte) menu::i#0
Inlining constant with var siblings (const byte*) menu::c#0
Inlining constant with var siblings (const byte) mode_ctrl::ctrl#7
Inlining constant with var siblings (const byte) mode_stdchar::i#0
Inlining constant with var siblings (const byte) mode_stdchar::cy#0
Inlining constant with var siblings (const byte) mode_stdchar::cx#0
Inlining constant with var siblings (const byte) mode_ecmchar::i#0
Inlining constant with var siblings (const byte) mode_ecmchar::cy#0
Inlining constant with var siblings (const byte) mode_ecmchar::cx#0
Inlining constant with var siblings (const byte) mode_mcchar::i#0
Inlining constant with var siblings (const byte) mode_mcchar::cy#0
Inlining constant with var siblings (const byte) mode_mcchar::cx#0
Inlining constant with var siblings (const byte) mode_stdbitmap::i#0
Inlining constant with var siblings (const byte) mode_stdbitmap::cy#0
Inlining constant with var siblings (const byte) mode_stdbitmap::cx#0
Inlining constant with var siblings (const byte) mode_stdbitmap::l#0
Inlining constant with var siblings (const byte) mode_hicolstdchar::i#0
Inlining constant with var siblings (const byte) mode_hicolstdchar::cy#0
Inlining constant with var siblings (const byte) mode_hicolstdchar::cx#0
Inlining constant with var siblings (const byte) mode_hicolecmchar::i#0
Inlining constant with var siblings (const byte) mode_hicolecmchar::cy#0
Inlining constant with var siblings (const byte) mode_hicolecmchar::cx#0
Inlining constant with var siblings (const byte) mode_hicolmcchar::i#0
Inlining constant with var siblings (const byte) mode_hicolmcchar::cy#0
Inlining constant with var siblings (const byte) mode_hicolmcchar::cx#0
Inlining constant with var siblings (const byte) mode_twoplanebitmap::i#0
Inlining constant with var siblings (const byte) mode_twoplanebitmap::cy#0
Inlining constant with var siblings (const byte) mode_twoplanebitmap::cx#0
Inlining constant with var siblings (const byte) mode_twoplanebitmap::ay#0
Inlining constant with var siblings (const byte) mode_twoplanebitmap::ax#0
Inlining constant with var siblings (const byte) mode_twoplanebitmap::by#0
Inlining constant with var siblings (const byte) mode_twoplanebitmap::bx#0
Inlining constant with var siblings (const byte) mode_sixsfred::i#0
Inlining constant with var siblings (const byte) mode_sixsfred::cy#0
Inlining constant with var siblings (const byte) mode_sixsfred::cx#0
Inlining constant with var siblings (const byte) mode_sixsfred::ay#0
Inlining constant with var siblings (const byte) mode_sixsfred::ax#0
Inlining constant with var siblings (const byte) mode_sixsfred::by#0
Inlining constant with var siblings (const byte) mode_sixsfred::bx#0
Inlining constant with var siblings (const byte) mode_sixsfred2::i#0
Inlining constant with var siblings (const byte) mode_sixsfred2::cy#0
Inlining constant with var siblings (const byte) mode_sixsfred2::cx#0
Inlining constant with var siblings (const byte) mode_sixsfred2::ay#0
Inlining constant with var siblings (const byte) mode_sixsfred2::ax#0
Inlining constant with var siblings (const byte) mode_sixsfred2::by#0
Inlining constant with var siblings (const byte) mode_sixsfred2::bx#0
Inlining constant with var siblings (const byte) mode_8bpppixelcell::i#0
Inlining constant with var siblings (const byte) mode_8bpppixelcell::ay#0
Inlining constant with var siblings (const byte) mode_8bpppixelcell::ax#0
Inlining constant with var siblings (const byte) mode_8bpppixelcell::col#0
Inlining constant with var siblings (const byte) mode_8bpppixelcell::ch#0
Inlining constant with var siblings (const byte) mode_8bpppixelcell::cr#0
Inlining constant with var siblings (const byte) mode_8bpppixelcell::cp#0
Inlining constant with var siblings (const byte) mode_8bpppixelcell::c#0
Inlining constant with var siblings (const byte) mode_8bppchunkybmm::i#0
Inlining constant with var siblings (const byte*) mode_8bppchunkybmm::gfxb#0
Inlining constant with var siblings (const byte) mode_8bppchunkybmm::y#0
Inlining constant with var siblings (const word) mode_8bppchunkybmm::x#0
Inlining constant with var siblings (const byte*) mode_8bppchunkybmm::gfxb#2
Inlining constant with var siblings (const byte) mode_8bppchunkybmm::gfxbCpuBank#0
Inlining constant with var siblings (const byte) mode_8bppchunkybmm::gfxbCpuBank#1
Inlining constant with var siblings (const byte) dtv_control#18
Inlining constant with var siblings (const byte) dtv_control#21
Inlining constant with var siblings (const byte) dtv_control#24
Inlining constant with var siblings (const byte) dtv_control#27
Inlining constant with var siblings (const byte) dtv_control#30
Inlining constant with var siblings (const byte) dtv_control#33
Inlining constant with var siblings (const byte) dtv_control#36
Inlining constant with var siblings (const byte) dtv_control#45
Inlining constant with var siblings (const byte) dtv_control#39
Inlining constant with var siblings (const byte) dtv_control#42
Inlining constant with var siblings (const byte) dtv_control#48
Inlining constant with var siblings (const byte) dtv_control#51
Constant inlined mode_hicolecmchar::cx#0 = (byte) 0
Constant inlined menu::c#0 = (const byte*) COLS#0
Constant inlined mode_stdbitmap::$6 = (byte) 3^(byte)(word)(const byte*) mode_stdbitmap::BITMAP#0/(word) $4000
Constant inlined mode_hicolecmchar::$4 = (word)(const byte*) mode_hicolecmchar::COLORS#0/(word) $400
Constant inlined mode_stdbitmap::$7 = (const byte) VIC_BMM#0|(const byte) VIC_DEN#0
Constant inlined mode_hicolecmchar::$5 = <(word)(const byte*) mode_hicolecmchar::COLORS#0/(word) $400
Constant inlined mode_stdbitmap::$8 = (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0
Constant inlined mode_hicolecmchar::$2 = (byte) 0
Constant inlined mode_stdbitmap::$9 = (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3
Constant inlined mode_hicolecmchar::$8 = (byte) 0
Constant inlined mode_hicolecmchar::$9 = (word)(const byte*) mode_hicolecmchar::CHARSET#0
Constant inlined mode_hicolecmchar::$6 = (const byte*) mode_hicolecmchar::COLORS#0/(word) $400
Constant inlined mode_stdbitmap::$2 = (byte) 0
Constant inlined mode_stdbitmap::$3 = (word)(const byte*) mode_stdbitmap::BITMAP#0
Constant inlined mode_stdbitmap::$4 = (word)(const byte*) mode_stdbitmap::BITMAP#0/(word) $4000
Constant inlined mode_stdbitmap::$5 = (byte)(word)(const byte*) mode_stdbitmap::BITMAP#0/(word) $4000
Constant inlined mode_mcchar::$6 = (const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400
Constant inlined mode_twoplanebitmap::$5 = (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3
Constant inlined mode_twoplanebitmap::$6 = (byte) 0
Constant inlined bitmap_init::yoffs#0 = (byte*) 0
Constant inlined mode_mcchar::$4 = (word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400
Constant inlined mode_twoplanebitmap::$7 = >(const byte*) mode_twoplanebitmap::PLANEA#0
Constant inlined mode_mcchar::$5 = <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400
Constant inlined mode_twoplanebitmap::$8 = (byte) 0
Constant inlined mode_twoplanebitmap::$1 = (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0
Constant inlined mode_twoplanebitmap::$2 = (const byte) VIC_ECM#0|(const byte) VIC_BMM#0
Constant inlined mode_mcchar::$8 = (byte) 0
Constant inlined mode_twoplanebitmap::$3 = (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0
Constant inlined mode_mcchar::$9 = (word)(const byte*) mode_mcchar::CHARSET#0
Constant inlined mode_twoplanebitmap::$4 = (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0
Constant inlined mode_mcchar::$2 = (byte) 0
Constant inlined mode_hicolmcchar::$8 = (byte) 0
Constant inlined mode_hicolmcchar::$6 = (const byte*) mode_hicolmcchar::COLORS#0/(word) $400
Constant inlined mode_hicolmcchar::$5 = <(word)(const byte*) mode_hicolmcchar::COLORS#0/(word) $400
Constant inlined mode_hicolmcchar::$9 = (word)(const byte*) mode_hicolmcchar::CHARSET#0
Constant inlined mode_twoplanebitmap::$9 = >(const byte*) mode_twoplanebitmap::PLANEB#0
Constant inlined mode_hicolecmchar::$15 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte) 3
Constant inlined menu::$9 = (word)(const byte*) menu::CHARSET#0
Constant inlined mode_hicolecmchar::$13 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0
Constant inlined mode_8bpppixelcell::i#0 = (byte) 0
Constant inlined mode_hicolecmchar::$14 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0
Constant inlined mode_hicolecmchar::$11 = (byte)(word)(const byte*) mode_hicolecmchar::CHARSET#0/(word) $4000
Constant inlined menu::$8 = (byte) 0
Constant inlined mode_hicolecmchar::$12 = (byte) 3^(byte)(word)(const byte*) mode_hicolecmchar::CHARSET#0/(word) $4000
Constant inlined menu::$5 = <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400
Constant inlined menu::$6 = (const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400
Constant inlined mode_hicolecmchar::$10 = (word)(const byte*) mode_hicolecmchar::CHARSET#0/(word) $4000
Constant inlined mode_mcchar::$15 = (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0
Constant inlined mode_mcchar::$19 = (word)(const byte*) mode_mcchar::CHARSET#0
Constant inlined mode_hicolecmchar::$19 = (word)(const byte*) mode_hicolecmchar::CHARSET#0
Constant inlined mode_hicolmcchar::$4 = (word)(const byte*) mode_hicolmcchar::COLORS#0/(word) $400
Constant inlined mode_hicolmcchar::$2 = (byte) 0
Constant inlined mode_mcchar::$20 = (word)(const byte*) mode_mcchar::CHARSET#0&(word) $3fff
Constant inlined mode_mcchar::$21 = (word)(const byte*) mode_mcchar::CHARSET#0&(word) $3fff/(word) $400
Constant inlined mode_mcchar::$22 = (word)(const byte*) mode_mcchar::CHARSET#0&(word) $3fff/(word) $400
Constant inlined mode_hicolstdchar::$6 = (const byte*) mode_hicolstdchar::COLORS#0/(word) $400
Constant inlined mode_mcchar::$23 = (byte)(word)(const byte*) mode_mcchar::CHARSET#0&(word) $3fff/(word) $400
Constant inlined mode_hicolstdchar::$8 = (byte) 0
Constant inlined mode_hicolstdchar::$9 = (word)(const byte*) mode_hicolstdchar::CHARSET#0
Constant inlined mode_hicolstdchar::$2 = (byte) 0
Constant inlined menu::$4 = (word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400
Constant inlined mode_hicolstdchar::$4 = (word)(const byte*) mode_hicolstdchar::COLORS#0/(word) $400
Constant inlined menu::$2 = (byte) 0
Constant inlined mode_hicolstdchar::$5 = <(word)(const byte*) mode_hicolstdchar::COLORS#0/(word) $400
Constant inlined mode_stdbitmap::l#0 = (byte) 0
Constant inlined mode_hicolecmchar::$22 = (word)(const byte*) mode_hicolecmchar::CHARSET#0&(word) $3fff/(word) $400
Constant inlined mode_hicolecmchar::$23 = (byte)(word)(const byte*) mode_hicolecmchar::CHARSET#0&(word) $3fff/(word) $400
Constant inlined mode_hicolecmchar::$20 = (word)(const byte*) mode_hicolecmchar::CHARSET#0&(word) $3fff
Constant inlined mode_hicolecmchar::$21 = (word)(const byte*) mode_hicolecmchar::CHARSET#0&(word) $3fff/(word) $400
Constant inlined mode_stdchar::$2 = (byte) 0
Constant inlined mode_stdchar::$5 = <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400
Constant inlined mode_stdchar::$6 = (const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400
Constant inlined mode_stdchar::$4 = (word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400
Constant inlined mode_stdchar::$9 = (word)(const byte*) mode_stdchar::CHARSET#0
Constant inlined mode_stdchar::$8 = (byte) 0
Constant inlined mode_twoplanebitmap::$13 = (byte) 0
Constant inlined mode_twoplanebitmap::$12 = (const byte*) mode_twoplanebitmap::COLORS#0/(word) $400
Constant inlined mode_twoplanebitmap::$11 = <(const byte*) mode_twoplanebitmap::COLORS#0/(word) $400
Constant inlined bitmap_init::y#0 = (byte) 0
Constant inlined mode_sixsfred2::cx#0 = (byte) 0
Constant inlined print_screen#1 = (const byte*) menu::SCREEN#0
Constant inlined $1 = (const byte[]) MENU_TEXT#0
Constant inlined mode_twoplanebitmap::bx#0 = (byte) 0
Constant inlined mode_sixsfred2::bx#0 = (byte) 0
Constant inlined mode_sixsfred::ax#0 = (byte) 0
Constant inlined mode_sixsfred2::cy#0 = (byte) 0
Constant inlined mode_twoplanebitmap::cy#0 = (byte) 0
Constant inlined bitmap_init::x#0 = (byte) 0
Constant inlined mode_8bppchunkybmm::gfxb#2 = (byte*) 16384
Constant inlined mode_hicolmcchar::i#0 = (byte) 0
Constant inlined mode_8bppchunkybmm::gfxbCpuBank#1 = ++(byte)(const dword) mode_8bppchunkybmm::PLANEB#0/(word) $4000
Constant inlined mode_8bppchunkybmm::gfxb#0 = (byte*) 16384
Constant inlined mode_8bppchunkybmm::gfxbCpuBank#0 = (byte)(const dword) mode_8bppchunkybmm::PLANEB#0/(word) $4000
Constant inlined memset::$2 = (byte*)(const void*) memset::str#0
Constant inlined menu::$14 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3
Constant inlined menu::$18 = (word)(const byte*) menu::CHARSET#0
Constant inlined mode_8bpppixelcell::ch#0 = (byte) 0
Constant inlined menu::$19 = (word)(const byte*) menu::CHARSET#0&(word) $3fff
Constant inlined mode_8bpppixelcell::c#0 = (byte) 0
Constant inlined mode_hicolstdchar::i#0 = (byte) 0
Constant inlined mode_sixsfred2::by#0 = (byte) 0
Constant inlined menu::$12 = (byte) 3^(byte)(word)(const byte*) menu::CHARSET#0/(word) $4000
Constant inlined menu::$13 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0
Constant inlined menu::$10 = (word)(const byte*) menu::CHARSET#0/(word) $4000
Constant inlined mode_8bpppixelcell::cp#0 = (byte) 0
Constant inlined menu::$11 = (byte)(word)(const byte*) menu::CHARSET#0/(word) $4000
Constant inlined mode_sixsfred::ay#0 = (byte) 0
Constant inlined mode_ctrl::ctrl#7 = (byte) 0
Constant inlined mode_stdbitmap::$16 = (word)(const byte*) mode_stdbitmap::BITMAP#0&(word) $3fff/(word) $400
Constant inlined mode_8bpppixelcell::$4 = (const byte) VIC_ECM#0|(const byte) VIC_DEN#0
Constant inlined mode_8bpppixelcell::col#0 = (byte) 0
Constant inlined mode_stdbitmap::$15 = (word)(const byte*) mode_stdbitmap::BITMAP#0&(word) $3fff/(word) $400
Constant inlined mode_8bpppixelcell::$5 = (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0
Constant inlined mode_stdbitmap::$14 = (word)(const byte*) mode_stdbitmap::BITMAP#0&(word) $3fff
Constant inlined mode_8bpppixelcell::$2 = (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0
Constant inlined mode_8bpppixelcell::$3 = (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0
Constant inlined mode_stdbitmap::$13 = (word)(const byte*) mode_stdbitmap::BITMAP#0
Constant inlined mode_8bpppixelcell::$8 = (byte) 0
Constant inlined mode_8bpppixelcell::$9 = >(const byte*) mode_8bpppixelcell::PLANEA#0
Constant inlined mode_8bpppixelcell::$6 = (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3
Constant inlined mode_stdbitmap::$17 = (byte)(word)(const byte*) mode_stdbitmap::BITMAP#0&(word) $3fff/(word) $400
Constant inlined mode_8bpppixelcell::$7 = (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0
Constant inlined menu::$27 = (const byte*) COLS#0+(word) $3e8
Constant inlined mode_sixsfred::$10 = >(const byte*) mode_sixsfred::PLANEB#0
Constant inlined mode_sixsfred::$12 = <(const byte*) mode_sixsfred::COLORS#0/(word) $400
Constant inlined mode_sixsfred::$13 = (const byte*) mode_sixsfred::COLORS#0/(word) $400
Constant inlined mode_sixsfred::$14 = (byte) 0
Constant inlined menu::$20 = (word)(const byte*) menu::CHARSET#0&(word) $3fff/(word) $400
Constant inlined mode_twoplanebitmap::cx#0 = (byte) 0
Constant inlined menu::$21 = (word)(const byte*) menu::CHARSET#0&(word) $3fff/(word) $400
Constant inlined menu::$22 = (byte)(word)(const byte*) menu::CHARSET#0&(word) $3fff/(word) $400
Constant inlined mode_8bppchunkybmm::$11 = (byte) 0
Constant inlined dtvSetCpuBankSegment1::cpuBankIdx#0 = (byte)(const dword) mode_8bppchunkybmm::PLANEB#0/(word) $4000
Constant inlined mode_8bppchunkybmm::$13 = (byte) 0
Constant inlined mode_8bppchunkybmm::$14 = >(const dword) mode_8bppchunkybmm::PLANEB#0
Constant inlined dtvSetCpuBankSegment1::cpuBankIdx#2 = (byte)(number) $4000/(number) $4000
Constant inlined mode_twoplanebitmap::ay#0 = (byte) 0
Constant inlined mode_mcchar::i#0 = (byte) 0
Constant inlined mode_sixsfred::bx#0 = (byte) 0
Constant inlined mode_mcchar::cx#0 = (byte) 0
Constant inlined mode_8bppchunkybmm::$15 = <>(const dword) mode_8bppchunkybmm::PLANEB#0
Constant inlined mode_8bppchunkybmm::$16 = (const dword) mode_8bppchunkybmm::PLANEB#0/(word) $4000
Constant inlined mode_8bppchunkybmm::$3 = (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0
Constant inlined mode_hicolecmchar::i#0 = (byte) 0
Constant inlined mode_ecmchar::i#0 = (byte) 0
Constant inlined mode_stdbitmap::i#0 = (byte) 0
Constant inlined mode_stdbitmap::cx#0 = (byte) 0
Constant inlined keyboard_key_pressed::key#0 = (const byte) KEY_1#0
Constant inlined keyboard_key_pressed::key#13 = (const byte) KEY_L#0
Constant inlined keyboard_key_pressed::key#1 = (const byte) KEY_2#0
Constant inlined keyboard_key_pressed::key#14 = (const byte) KEY_H#0
Constant inlined keyboard_key_pressed::key#15 = (const byte) KEY_O#0
Constant inlined keyboard_key_pressed::key#16 = (const byte) KEY_B#0
Constant inlined mode_hicolmcchar::cy#0 = (byte) 0
Constant inlined keyboard_key_pressed::key#4 = (const byte) KEY_6#0
Constant inlined keyboard_key_pressed::key#17 = (const byte) KEY_U#0
Constant inlined keyboard_key_pressed::key#5 = (const byte) KEY_7#0
Constant inlined keyboard_key_pressed::key#18 = (const byte) KEY_C#0
Constant inlined keyboard_key_pressed::key#2 = (const byte) KEY_3#0
Constant inlined keyboard_key_pressed::key#19 = (const byte) KEY_0#0
Constant inlined keyboard_key_pressed::key#3 = (const byte) KEY_4#0
Constant inlined mode_sixsfred::cy#0 = (byte) 0
Constant inlined keyboard_key_pressed::key#8 = (const byte) KEY_B#0
Constant inlined keyboard_key_pressed::key#9 = (const byte) KEY_C#0
Constant inlined keyboard_key_pressed::key#6 = (const byte) KEY_8#0
Constant inlined mode_8bppchunkybmm::$8 = (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3
Constant inlined keyboard_key_pressed::key#7 = (const byte) KEY_A#0
Constant inlined mode_8bppchunkybmm::$9 = (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0
Constant inlined mode_8bppchunkybmm::$6 = (const byte) VIC_ECM#0|(const byte) VIC_DEN#0
Constant inlined mode_ecmchar::cx#0 = (byte) 0
Constant inlined mode_8bppchunkybmm::$7 = (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0
Constant inlined mode_8bppchunkybmm::$4 = (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0
Constant inlined mode_8bppchunkybmm::$5 = (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0
Constant inlined print_str_lines::str#1 = (const byte[]) MENU_TEXT#0
Constant inlined mode_twoplanebitmap::ax#0 = (byte) 0
Constant inlined mode_sixsfred2::ax#0 = (byte) 0
Constant inlined keyboard_key_pressed::key#10 = (const byte) KEY_D#0
Constant inlined keyboard_key_pressed::key#11 = (const byte) KEY_E#0
Constant inlined keyboard_key_pressed::key#12 = (const byte) KEY_SPACE#0
Constant inlined mode_stdchar::$12 = (byte) 3^(byte)(word)(const byte*) mode_stdchar::CHARSET#0/(word) $4000
Constant inlined mode_sixsfred2::$2 = (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0
Constant inlined mode_sixsfred::by#0 = (byte) 0
Constant inlined mode_stdchar::$13 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0
Constant inlined mode_sixsfred2::$3 = (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3
Constant inlined mode_stdchar::$14 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3
Constant inlined mode_sixsfred2::$4 = (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0
Constant inlined mode_sixsfred2::$5 = (byte) 0
Constant inlined mode_sixsfred2::$6 = >(const byte*) mode_sixsfred2::PLANEA#0
Constant inlined mode_sixsfred2::$7 = (byte) 0
Constant inlined mode_stdchar::$18 = (word)(const byte*) mode_stdchar::CHARSET#0
Constant inlined mode_sixsfred2::$8 = >(const byte*) mode_sixsfred2::PLANEB#0
Constant inlined mode_stdchar::$19 = (word)(const byte*) mode_stdchar::CHARSET#0&(word) $3fff
Constant inlined mode_sixsfred2::$11 = (const byte*) mode_sixsfred2::COLORS#0/(word) $400
Constant inlined mode_sixsfred2::$12 = (byte) 0
Constant inlined mode_mcchar::cy#0 = (byte) 0
Constant inlined mode_sixsfred2::$10 = <(const byte*) mode_sixsfred2::COLORS#0/(word) $400
Constant inlined mode_stdchar::$10 = (word)(const byte*) mode_stdchar::CHARSET#0/(word) $4000
Constant inlined mode_sixsfred2::$0 = (const byte) VIC_ECM#0|(const byte) VIC_BMM#0
Constant inlined mode_stdchar::$11 = (byte)(word)(const byte*) mode_stdchar::CHARSET#0/(word) $4000
Constant inlined mode_sixsfred2::$1 = (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0
Constant inlined mode_twoplanebitmap::by#0 = (byte) 0
Constant inlined mode_8bpppixelcell::cr#0 = (byte) 0
Constant inlined mode_stdbitmap::cy#0 = (byte) 0
Constant inlined mode_ecmchar::cy#0 = (byte) 0
Constant inlined mode_8bpppixelcell::ax#0 = (byte) 0
Constant inlined mode_hicolstdchar::$13 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0
Constant inlined mode_hicolstdchar::$14 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3
Constant inlined bitmap_clear::y#0 = (byte) 0
Constant inlined mode_hicolstdchar::cy#0 = (byte) 0
Constant inlined mode_stdchar::$20 = (word)(const byte*) mode_stdchar::CHARSET#0&(word) $3fff/(word) $400
Constant inlined mode_hicolstdchar::$18 = (word)(const byte*) mode_hicolstdchar::CHARSET#0
Constant inlined mode_stdchar::$21 = (word)(const byte*) mode_stdchar::CHARSET#0&(word) $3fff/(word) $400
Constant inlined mode_hicolstdchar::$19 = (word)(const byte*) mode_hicolstdchar::CHARSET#0&(word) $3fff
Constant inlined mode_stdchar::$22 = (byte)(word)(const byte*) mode_stdchar::CHARSET#0&(word) $3fff/(word) $400
Constant inlined mode_hicolmcchar::$12 = (byte) 3^(byte)(word)(const byte*) mode_hicolmcchar::CHARSET#0/(word) $4000
Constant inlined mode_hicolstdchar::$10 = (word)(const byte*) mode_hicolstdchar::CHARSET#0/(word) $4000
Constant inlined mode_hicolmcchar::$13 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0
Constant inlined mode_hicolstdchar::$11 = (byte)(word)(const byte*) mode_hicolstdchar::CHARSET#0/(word) $4000
Constant inlined mode_hicolmcchar::$10 = (word)(const byte*) mode_hicolmcchar::CHARSET#0/(word) $4000
Constant inlined mode_hicolstdchar::$12 = (byte) 3^(byte)(word)(const byte*) mode_hicolstdchar::CHARSET#0/(word) $4000
Constant inlined mode_hicolmcchar::$11 = (byte)(word)(const byte*) mode_hicolmcchar::CHARSET#0/(word) $4000
Constant inlined mode_hicolmcchar::$14 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3
Constant inlined mode_hicolmcchar::$15 = (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0
Constant inlined mode_sixsfred2::ay#0 = (byte) 0
Constant inlined mode_hicolmcchar::$19 = (word)(const byte*) mode_hicolmcchar::CHARSET#0
Constant inlined dtv_control#33 = (const byte) DTV_HIGHCOLOR#0
Constant inlined dtv_control#30 = (const byte) DTV_HIGHCOLOR#0
Constant inlined menu::i#0 = (byte) 0
Constant inlined mode_stdchar::i#0 = (byte) 0
Constant inlined mode_hicolmcchar::$20 = (word)(const byte*) mode_hicolmcchar::CHARSET#0&(word) $3fff
Constant inlined mode_hicolstdchar::$20 = (word)(const byte*) mode_hicolstdchar::CHARSET#0&(word) $3fff/(word) $400
Constant inlined mode_hicolmcchar::$23 = (byte)(word)(const byte*) mode_hicolmcchar::CHARSET#0&(word) $3fff/(word) $400
Constant inlined mode_8bpppixelcell::$10 = (byte) 0
Constant inlined mode_hicolstdchar::$21 = (word)(const byte*) mode_hicolstdchar::CHARSET#0&(word) $3fff/(word) $400
Constant inlined mode_hicolmcchar::$21 = (word)(const byte*) mode_hicolmcchar::CHARSET#0&(word) $3fff/(word) $400
Constant inlined mode_hicolstdchar::$22 = (byte)(word)(const byte*) mode_hicolstdchar::CHARSET#0&(word) $3fff/(word) $400
Constant inlined mode_hicolmcchar::$22 = (word)(const byte*) mode_hicolmcchar::CHARSET#0&(word) $3fff/(word) $400
Constant inlined mode_8bpppixelcell::$11 = >(const byte*) mode_8bpppixelcell::PLANEB#0
Constant inlined dtv_control#27 = (byte) 0
Constant inlined dtv_control#24 = (byte) 0
Constant inlined mode_sixsfred2::i#0 = (byte) 0
Constant inlined dtv_control#21 = (byte) 0
Constant inlined mode_8bppchunkybmm::y#0 = (byte) 0
Constant inlined mode_8bpppixelcell::ay#0 = (byte) 0
Constant inlined mode_sixsfred::i#0 = (byte) 0
Constant inlined bitmap_clear::x#0 = (byte) 0
Constant inlined mode_hicolstdchar::cx#0 = (byte) 0
Constant inlined mode_mcchar::$10 = (word)(const byte*) mode_mcchar::CHARSET#0/(word) $4000
Constant inlined mode_8bppchunkybmm::i#0 = (byte) 0
Constant inlined mode_mcchar::$11 = (byte)(word)(const byte*) mode_mcchar::CHARSET#0/(word) $4000
Constant inlined mode_mcchar::$12 = (byte) 3^(byte)(word)(const byte*) mode_mcchar::CHARSET#0/(word) $4000
Constant inlined mode_mcchar::$13 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0
Constant inlined mode_mcchar::$14 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3
Constant inlined dtv_control#18 = (byte) 0
Constant inlined memset::dst#0 = (byte*)(const void*) memset::str#0
Constant inlined bitmap_init::bitmap#0 = (const byte*) mode_stdbitmap::BITMAP#0
Constant inlined mode_hicolecmchar::cy#0 = (byte) 0
Constant inlined mode_sixsfred::$1 = (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0
Constant inlined dtv_control#51 = (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0
Constant inlined mode_sixsfred::$3 = (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0
Constant inlined mode_sixsfred::$2 = (const byte) VIC_ECM#0|(const byte) VIC_BMM#0
Constant inlined mode_sixsfred::$5 = (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3
Constant inlined mode_sixsfred::$4 = (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0
Constant inlined mode_sixsfred::$7 = (byte) 0
Constant inlined mode_ecmchar::$23 = (byte)(word)(const byte*) mode_ecmchar::CHARSET#0&(word) $3fff/(word) $400
Constant inlined mode_sixsfred::$6 = (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0
Constant inlined bitmap_init::bits#0 = (byte) $80
Constant inlined mode_stdchar::cx#0 = (byte) 0
Constant inlined mode_ecmchar::$22 = (word)(const byte*) mode_ecmchar::CHARSET#0&(word) $3fff/(word) $400
Constant inlined mode_sixsfred::$9 = (byte) 0
Constant inlined mode_ecmchar::$21 = (word)(const byte*) mode_ecmchar::CHARSET#0&(word) $3fff/(word) $400
Constant inlined mode_sixsfred::$8 = >(const byte*) mode_sixsfred::PLANEA#0
Constant inlined bitmap_init::bits#2 = (byte) $80
Constant inlined mode_ecmchar::$20 = (word)(const byte*) mode_ecmchar::CHARSET#0&(word) $3fff
Constant inlined mode_ecmchar::$2 = (byte) 0
Constant inlined mode_ecmchar::$19 = (word)(const byte*) mode_ecmchar::CHARSET#0
Constant inlined print_set_screen::screen#0 = (const byte*) menu::SCREEN#0
Constant inlined mode_ecmchar::$9 = (word)(const byte*) mode_ecmchar::CHARSET#0
Constant inlined mode_ecmchar::$8 = (byte) 0
Constant inlined mode_twoplanebitmap::i#0 = (byte) 0
Constant inlined mode_ecmchar::$6 = (const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400
Constant inlined dtv_control#48 = (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0
Constant inlined mode_ecmchar::$5 = <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400
Constant inlined mode_ecmchar::$4 = (word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400
Constant inlined dtv_control#45 = (const byte) DTV_LINEAR#0
Constant inlined mode_hicolmcchar::cx#0 = (byte) 0
Constant inlined mode_8bppchunkybmm::x#0 = (word) 0
Constant inlined dtv_control#42 = (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0
Constant inlined mode_sixsfred::cx#0 = (byte) 0
Constant inlined mode_ecmchar::$15 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte) 3
Constant inlined mode_ecmchar::$14 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0
Constant inlined mode_ecmchar::$13 = (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0
Constant inlined mode_ecmchar::$12 = (byte) 3^(byte)(word)(const byte*) mode_ecmchar::CHARSET#0/(word) $4000
Constant inlined mode_ecmchar::$11 = (byte)(word)(const byte*) mode_ecmchar::CHARSET#0/(word) $4000
Constant inlined mode_ecmchar::$10 = (word)(const byte*) mode_ecmchar::CHARSET#0/(word) $4000
Constant inlined mode_stdchar::cy#0 = (byte) 0
Constant inlined bitmap_init::$1 = >(const byte*) mode_stdbitmap::BITMAP#0
Constant inlined dtv_control#39 = (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0
Constant inlined dtv_control#36 = (const byte) DTV_HIGHCOLOR#0
Successful SSA optimization Pass2ConstantInlining
Consolidated array index constant in assignment *(mode_stdbitmap::lines_x#0+1 + mode_stdbitmap::$30)
Consolidated array index constant in assignment *(mode_stdbitmap::lines_y#0+1 + mode_stdbitmap::$31)
Successful SSA optimization Pass2ConstantAdditionElimination
Alias (byte) mode_stdbitmap::l#2 = (byte~) mode_stdbitmap::$30 (byte~) mode_stdbitmap::$31
Successful SSA optimization Pass2AliasElimination
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 bitmap_init::@9(between bitmap_init::@2 and bitmap_init::@1)
Added new block during phi lifting bitmap_init::@10(between bitmap_init::@1 and bitmap_init::@2)
Added new block during phi lifting bitmap_init::@11(between bitmap_init::@6 and bitmap_init::@5)
Added new block during phi lifting bitmap_init::@12(between bitmap_init::@5 and bitmap_init::@6)
Added new block during phi lifting bitmap_clear::@5(between bitmap_clear::@3 and bitmap_clear::@1)
Added new block during phi lifting bitmap_clear::@6(between bitmap_clear::@2 and bitmap_clear::@2)
Added new block during phi lifting bitmap_line_xdyi::@6(between bitmap_line_xdyi::@2 and bitmap_line_xdyi::@1)
Added new block during phi lifting bitmap_line_xdyi::@7(between bitmap_line_xdyi::@5 and bitmap_line_xdyi::@2)
Added new block during phi lifting bitmap_line_xdyd::@6(between bitmap_line_xdyd::@2 and bitmap_line_xdyd::@1)
Added new block during phi lifting bitmap_line_xdyd::@7(between bitmap_line_xdyd::@5 and bitmap_line_xdyd::@2)
Added new block during phi lifting bitmap_line_ydxi::@6(between bitmap_line_ydxi::@2 and bitmap_line_ydxi::@1)
Added new block during phi lifting bitmap_line_ydxi::@7(between bitmap_line_ydxi::@5 and bitmap_line_ydxi::@2)
Added new block during phi lifting bitmap_line_ydxd::@6(between bitmap_line_ydxd::@2 and bitmap_line_ydxd::@1)
Added new block during phi lifting bitmap_line_ydxd::@7(between bitmap_line_ydxd::@5 and bitmap_line_ydxd::@2)
Added new block during phi lifting menu::@78(between menu::@1 and menu::@1)
Added new block during phi lifting mode_ctrl::@40(between mode_ctrl::@19 and mode_ctrl::@1)
Added new block during phi lifting mode_ctrl::@41(between mode_ctrl::@33 and mode_ctrl::@13)
Added new block during phi lifting mode_ctrl::@42(between mode_ctrl::@34 and mode_ctrl::@14)
Added new block during phi lifting mode_ctrl::@43(between mode_ctrl::@35 and mode_ctrl::@15)
Added new block during phi lifting mode_ctrl::@44(between mode_ctrl::@36 and mode_ctrl::@16)
Added new block during phi lifting mode_ctrl::@45(between mode_ctrl::@37 and mode_ctrl::@17)
Added new block during phi lifting mode_ctrl::@46(between mode_ctrl::@38 and mode_ctrl::@18)
Added new block during phi lifting mode_ctrl::@47(between mode_ctrl::@39 and mode_ctrl::@19)
Added new block during phi lifting mode_stdchar::@8(between mode_stdchar::@1 and mode_stdchar::@1)
Added new block during phi lifting mode_stdchar::@9(between mode_stdchar::@5 and mode_stdchar::@3)
Added new block during phi lifting mode_stdchar::@10(between mode_stdchar::@4 and mode_stdchar::@4)
Added new block during phi lifting mode_ecmchar::@8(between mode_ecmchar::@1 and mode_ecmchar::@1)
Added new block during phi lifting mode_ecmchar::@9(between mode_ecmchar::@5 and mode_ecmchar::@3)
Added new block during phi lifting mode_ecmchar::@10(between mode_ecmchar::@4 and mode_ecmchar::@4)
Added new block during phi lifting mode_mcchar::@8(between mode_mcchar::@1 and mode_mcchar::@1)
Added new block during phi lifting mode_mcchar::@9(between mode_mcchar::@5 and mode_mcchar::@3)
Added new block during phi lifting mode_mcchar::@10(between mode_mcchar::@4 and mode_mcchar::@4)
Added new block during phi lifting mode_stdbitmap::@17(between mode_stdbitmap::@1 and mode_stdbitmap::@1)
Added new block during phi lifting mode_stdbitmap::@18(between mode_stdbitmap::@5 and mode_stdbitmap::@3)
Added new block during phi lifting mode_stdbitmap::@19(between mode_stdbitmap::@4 and mode_stdbitmap::@4)
Added new block during phi lifting mode_hicolstdchar::@8(between mode_hicolstdchar::@1 and mode_hicolstdchar::@1)
Added new block during phi lifting mode_hicolstdchar::@9(between mode_hicolstdchar::@5 and mode_hicolstdchar::@3)
Added new block during phi lifting mode_hicolstdchar::@10(between mode_hicolstdchar::@4 and mode_hicolstdchar::@4)
Added new block during phi lifting mode_hicolecmchar::@8(between mode_hicolecmchar::@1 and mode_hicolecmchar::@1)
Added new block during phi lifting mode_hicolecmchar::@9(between mode_hicolecmchar::@5 and mode_hicolecmchar::@3)
Added new block during phi lifting mode_hicolecmchar::@10(between mode_hicolecmchar::@4 and mode_hicolecmchar::@4)
Added new block during phi lifting mode_hicolmcchar::@8(between mode_hicolmcchar::@1 and mode_hicolmcchar::@1)
Added new block during phi lifting mode_hicolmcchar::@9(between mode_hicolmcchar::@5 and mode_hicolmcchar::@3)
Added new block during phi lifting mode_hicolmcchar::@10(between mode_hicolmcchar::@4 and mode_hicolmcchar::@4)
Added new block during phi lifting mode_twoplanebitmap::@20(between mode_twoplanebitmap::@1 and mode_twoplanebitmap::@1)
Added new block during phi lifting mode_twoplanebitmap::@21(between mode_twoplanebitmap::@5 and mode_twoplanebitmap::@3)
Added new block during phi lifting mode_twoplanebitmap::@22(between mode_twoplanebitmap::@4 and mode_twoplanebitmap::@4)
Added new block during phi lifting mode_twoplanebitmap::@23(between mode_twoplanebitmap::@13 and mode_twoplanebitmap::@7)
Added new block during phi lifting mode_twoplanebitmap::@24(between mode_twoplanebitmap::@10 and mode_twoplanebitmap::@8)
Added new block during phi lifting mode_twoplanebitmap::@25(between mode_twoplanebitmap::@17 and mode_twoplanebitmap::@15)
Added new block during phi lifting mode_twoplanebitmap::@26(between mode_twoplanebitmap::@16 and mode_twoplanebitmap::@16)
Added new block during phi lifting mode_sixsfred::@16(between mode_sixsfred::@1 and mode_sixsfred::@1)
Added new block during phi lifting mode_sixsfred::@17(between mode_sixsfred::@5 and mode_sixsfred::@3)
Added new block during phi lifting mode_sixsfred::@18(between mode_sixsfred::@4 and mode_sixsfred::@4)
Added new block during phi lifting mode_sixsfred::@19(between mode_sixsfred::@9 and mode_sixsfred::@7)
Added new block during phi lifting mode_sixsfred::@20(between mode_sixsfred::@8 and mode_sixsfred::@8)
Added new block during phi lifting mode_sixsfred::@21(between mode_sixsfred::@13 and mode_sixsfred::@11)
Added new block during phi lifting mode_sixsfred::@22(between mode_sixsfred::@12 and mode_sixsfred::@12)
Added new block during phi lifting mode_sixsfred2::@16(between mode_sixsfred2::@1 and mode_sixsfred2::@1)
Added new block during phi lifting mode_sixsfred2::@17(between mode_sixsfred2::@5 and mode_sixsfred2::@3)
Added new block during phi lifting mode_sixsfred2::@18(between mode_sixsfred2::@4 and mode_sixsfred2::@4)
Added new block during phi lifting mode_sixsfred2::@19(between mode_sixsfred2::@9 and mode_sixsfred2::@7)
Added new block during phi lifting mode_sixsfred2::@20(between mode_sixsfred2::@8 and mode_sixsfred2::@8)
Added new block during phi lifting mode_sixsfred2::@21(between mode_sixsfred2::@13 and mode_sixsfred2::@11)
Added new block during phi lifting mode_sixsfred2::@22(between mode_sixsfred2::@12 and mode_sixsfred2::@12)
Added new block during phi lifting mode_8bpppixelcell::@16(between mode_8bpppixelcell::@1 and mode_8bpppixelcell::@1)
Added new block during phi lifting mode_8bpppixelcell::@17(between mode_8bpppixelcell::@5 and mode_8bpppixelcell::@3)
Added new block during phi lifting mode_8bpppixelcell::@18(between mode_8bpppixelcell::@4 and mode_8bpppixelcell::@4)
Added new block during phi lifting mode_8bpppixelcell::@19(between mode_8bpppixelcell::@13 and mode_8bpppixelcell::@7)
Added new block during phi lifting mode_8bpppixelcell::@20(between mode_8bpppixelcell::@12 and mode_8bpppixelcell::@8)
Added new block during phi lifting mode_8bpppixelcell::@21(between mode_8bpppixelcell::@10 and mode_8bpppixelcell::@9)
Added new block during phi lifting mode_8bppchunkybmm::@13(between mode_8bppchunkybmm::@1 and mode_8bppchunkybmm::@1)
Added new block during phi lifting mode_8bppchunkybmm::@14(between mode_8bppchunkybmm::@7 and mode_8bppchunkybmm::@3)
Added new block during phi lifting mode_8bppchunkybmm::@15(between mode_8bppchunkybmm::@5 and mode_8bppchunkybmm::@4)
Added new block during phi lifting mode_8bppchunkybmm::@16(between mode_8bppchunkybmm::@4 and mode_8bppchunkybmm::@5)
Adding NOP phi() at start of @begin
Adding NOP phi() at start of @4
Adding NOP phi() at start of @17
Adding NOP phi() at start of @41
Adding NOP phi() at start of @48
Adding NOP phi() at start of @57
Adding NOP phi() at start of @58
Adding NOP phi() at start of @71
Adding NOP phi() at start of @72
Adding NOP phi() at start of @end
Adding NOP phi() at start of main::@1
Adding NOP phi() at start of main::@2
Adding NOP phi() at start of main::@7
Adding NOP phi() at start of menu::@2
Adding NOP phi() at start of menu::@51
Adding NOP phi() at start of menu::@52
Adding NOP phi() at start of menu::@53
Adding NOP phi() at start of menu::@9
Adding NOP phi() at start of menu::@10
Adding NOP phi() at start of menu::@26
Adding NOP phi() at start of menu::@56
Adding NOP phi() at start of menu::@12
Adding NOP phi() at start of menu::@28
Adding NOP phi() at start of menu::@58
Adding NOP phi() at start of menu::@13
Adding NOP phi() at start of menu::@30
Adding NOP phi() at start of menu::@60
Adding NOP phi() at start of menu::@14
Adding NOP phi() at start of menu::@32
Adding NOP phi() at start of menu::@62
Adding NOP phi() at start of menu::@15
Adding NOP phi() at start of menu::@34
Adding NOP phi() at start of menu::@64
Adding NOP phi() at start of menu::@16
Adding NOP phi() at start of menu::@36
Adding NOP phi() at start of menu::@66
Adding NOP phi() at start of menu::@17
Adding NOP phi() at start of menu::@38
Adding NOP phi() at start of menu::@68
Adding NOP phi() at start of menu::@18
Adding NOP phi() at start of menu::@40
Adding NOP phi() at start of menu::@70
Adding NOP phi() at start of menu::@19
Adding NOP phi() at start of menu::@42
Adding NOP phi() at start of menu::@72
Adding NOP phi() at start of menu::@20
Adding NOP phi() at start of menu::@44
Adding NOP phi() at start of menu::@74
Adding NOP phi() at start of menu::@21
Adding NOP phi() at start of menu::@46
Adding NOP phi() at start of menu::@76
Adding NOP phi() at start of menu::@22
Adding NOP phi() at start of menu::@48
Adding NOP phi() at start of menu::@77
Adding NOP phi() at start of mode_8bppchunkybmm::@2
Adding NOP phi() at start of mode_8bppchunkybmm::@9
Adding NOP phi() at start of mode_8bppchunkybmm::@8
Adding NOP phi() at start of mode_8bppchunkybmm::@11
Adding NOP phi() at start of mode_8bppchunkybmm::@12
Adding NOP phi() at start of mode_ctrl::@6
Adding NOP phi() at start of mode_ctrl::@29
Adding NOP phi() at start of mode_8bpppixelcell::@2
Adding NOP phi() at start of mode_8bpppixelcell::@15
Adding NOP phi() at start of mode_sixsfred::@6
Adding NOP phi() at start of mode_sixsfred::@10
Adding NOP phi() at start of mode_sixsfred::@14
Adding NOP phi() at start of mode_sixsfred::@15
Adding NOP phi() at start of mode_twoplanebitmap::@6
Adding NOP phi() at start of mode_twoplanebitmap::@14
Adding NOP phi() at start of mode_twoplanebitmap::@18
Adding NOP phi() at start of mode_twoplanebitmap::@19
Adding NOP phi() at start of mode_sixsfred2::@6
Adding NOP phi() at start of mode_sixsfred2::@10
Adding NOP phi() at start of mode_sixsfred2::@14
Adding NOP phi() at start of mode_sixsfred2::@15
Adding NOP phi() at start of mode_hicolmcchar::@6
Adding NOP phi() at start of mode_hicolmcchar::@7
Adding NOP phi() at start of mode_hicolecmchar::@6
Adding NOP phi() at start of mode_hicolecmchar::@7
Adding NOP phi() at start of mode_hicolstdchar::@6
Adding NOP phi() at start of mode_hicolstdchar::@7
Adding NOP phi() at start of mode_stdbitmap::@6
Adding NOP phi() at start of mode_stdbitmap::@13
Adding NOP phi() at start of mode_stdbitmap::@14
Adding NOP phi() at start of mode_stdbitmap::@9
Adding NOP phi() at start of mode_stdbitmap::@16
Adding NOP phi() at start of bitmap_line::@30
Adding NOP phi() at start of bitmap_line::@29
Adding NOP phi() at start of bitmap_line::@32
Adding NOP phi() at start of bitmap_line::@31
Adding NOP phi() at start of bitmap_line::@34
Adding NOP phi() at start of bitmap_line::@33
Adding NOP phi() at start of bitmap_line::@36
Adding NOP phi() at start of bitmap_line::@35
Adding NOP phi() at start of bitmap_init
Adding NOP phi() at start of bitmap_init::@3
Adding NOP phi() at start of bitmap_init::@4
Adding NOP phi() at start of mode_mcchar::@6
Adding NOP phi() at start of mode_mcchar::@7
Adding NOP phi() at start of mode_ecmchar::@6
Adding NOP phi() at start of mode_ecmchar::@7
Adding NOP phi() at start of mode_stdchar::@6
Adding NOP phi() at start of mode_stdchar::@7
Adding NOP phi() at start of print_str_lines
Adding NOP phi() at start of print_str_lines::@7
Adding NOP phi() at start of print_ln::@2
Adding NOP phi() at start of print_cls
Adding NOP phi() at start of print_cls::@1
Adding NOP phi() at start of memset
Adding NOP phi() at start of memset::@2
Adding NOP phi() at start of memset::@1
Adding NOP phi() at start of print_set_screen
CALL GRAPH
Calls in [] to main:8
Calls in [main] to menu:17
Calls in [menu] to print_set_screen:37 print_cls:39 print_str_lines:41 keyboard_key_pressed:45 mode_stdchar:50 keyboard_key_pressed:54 mode_ecmchar:59 keyboard_key_pressed:62 mode_mcchar:67 keyboard_key_pressed:70 mode_stdbitmap:75 keyboard_key_pressed:78 mode_hicolstdchar:83 keyboard_key_pressed:86 mode_hicolecmchar:91 keyboard_key_pressed:94 mode_hicolmcchar:99 keyboard_key_pressed:102 mode_sixsfred2:107 keyboard_key_pressed:110 mode_twoplanebitmap:115 keyboard_key_pressed:118 mode_sixsfred:123 keyboard_key_pressed:126 mode_8bpppixelcell:131 keyboard_key_pressed:134 mode_8bppchunkybmm:139
Calls in [mode_8bppchunkybmm] to dtvSetCpuBankSegment1:160 dtvSetCpuBankSegment1:169 dtvSetCpuBankSegment1:182 mode_ctrl:184
Calls in [mode_ctrl] to keyboard_key_pressed:201 keyboard_key_pressed:207 keyboard_key_pressed:214 keyboard_key_pressed:221 keyboard_key_pressed:228 keyboard_key_pressed:235 keyboard_key_pressed:242 keyboard_key_pressed:249
Calls in [keyboard_key_pressed] to keyboard_matrix_read:272
Calls in [mode_8bpppixelcell] to mode_ctrl:345
Calls in [mode_sixsfred] to mode_ctrl:421
Calls in [mode_twoplanebitmap] to mode_ctrl:499
Calls in [mode_sixsfred2] to mode_ctrl:576
Calls in [mode_hicolmcchar] to mode_ctrl:626
Calls in [mode_hicolecmchar] to mode_ctrl:671
Calls in [mode_hicolstdchar] to mode_ctrl:713
Calls in [mode_stdbitmap] to bitmap_init:751 bitmap_clear:753 mode_ctrl:758 bitmap_line:765
Calls in [bitmap_line] to bitmap_line_ydxi:788 bitmap_line_xdyi:801 bitmap_line_ydxd:815 bitmap_line_xdyd:827 bitmap_line_ydxd:843 bitmap_line_xdyd:855 bitmap_line_ydxi:869 bitmap_line_xdyi:881
Calls in [bitmap_line_xdyi] to bitmap_plot:893
Calls in [bitmap_line_ydxi] to bitmap_plot:927
Calls in [bitmap_line_xdyd] to bitmap_plot:954
Calls in [bitmap_line_ydxd] to bitmap_plot:981
Calls in [mode_mcchar] to mode_ctrl:1083
Calls in [mode_ecmchar] to mode_ctrl:1130
Calls in [mode_stdchar] to mode_ctrl:1174
Calls in [print_str_lines] to print_ln:1200
Calls in [print_cls] to memset:1215
Created 188 initial phi equivalence classes
Coalesced [143] menu::c#4 ← menu::c#1
Coalesced [144] menu::i#3 ← menu::i#1
Coalesced [163] mode_8bppchunkybmm::gfxb#8 ← mode_8bppchunkybmm::gfxb#5
Coalesced [164] mode_8bppchunkybmm::gfxbCpuBank#11 ← mode_8bppchunkybmm::gfxbCpuBank#7
Coalesced [168] dtvSetCpuBankSegment1::cpuBankIdx#4 ← dtvSetCpuBankSegment1::cpuBankIdx#1
Coalesced [171] mode_8bppchunkybmm::gfxbCpuBank#13 ← mode_8bppchunkybmm::gfxbCpuBank#2
Coalesced [187] mode_8bppchunkybmm::gfxb#7 ← mode_8bppchunkybmm::gfxb#1
Coalesced [188] mode_8bppchunkybmm::y#8 ← mode_8bppchunkybmm::y#1
Coalesced [189] mode_8bppchunkybmm::gfxbCpuBank#10 ← mode_8bppchunkybmm::gfxbCpuBank#8
Coalesced (already) [190] mode_8bppchunkybmm::gfxb#9 ← mode_8bppchunkybmm::gfxb#1
Coalesced [191] mode_8bppchunkybmm::x#6 ← mode_8bppchunkybmm::x#1
Coalesced (already) [192] mode_8bppchunkybmm::gfxbCpuBank#12 ← mode_8bppchunkybmm::gfxbCpuBank#8
Coalesced [193] mode_8bppchunkybmm::gfxb#10 ← mode_8bppchunkybmm::gfxb#3
Coalesced (already) [194] mode_8bppchunkybmm::gfxbCpuBank#14 ← mode_8bppchunkybmm::gfxbCpuBank#4
Coalesced [195] mode_8bppchunkybmm::i#3 ← mode_8bppchunkybmm::i#1
Coalesced [197] dtv_control#291 ← dtv_control#144
Coalesced [212] mode_ctrl::ctrl#29 ← mode_ctrl::ctrl#1
Coalesced [219] mode_ctrl::ctrl#31 ← mode_ctrl::ctrl#2
Coalesced [226] mode_ctrl::ctrl#33 ← mode_ctrl::ctrl#3
Coalesced [233] mode_ctrl::ctrl#35 ← mode_ctrl::ctrl#4
Coalesced [240] mode_ctrl::ctrl#37 ← mode_ctrl::ctrl#5
Coalesced [247] mode_ctrl::ctrl#39 ← mode_ctrl::ctrl#6
Coalesced [259] dtv_control#293 ← dtv_control#17
Coalesced (already) [260] dtv_control#292 ← dtv_control#114
Coalesced [261] mode_ctrl::ctrl#41 ← mode_ctrl::ctrl#22
Coalesced [262] mode_ctrl::ctrl#40 ← mode_ctrl::ctrl#13
Coalesced [263] mode_ctrl::ctrl#38 ← mode_ctrl::ctrl#12
Coalesced [264] mode_ctrl::ctrl#36 ← mode_ctrl::ctrl#11
Coalesced [265] mode_ctrl::ctrl#34 ← mode_ctrl::ctrl#10
Coalesced [266] mode_ctrl::ctrl#32 ← mode_ctrl::ctrl#17
Coalesced [267] mode_ctrl::ctrl#30 ← mode_ctrl::ctrl#0
Coalesced [306] mode_8bpppixelcell::gfxa#6 ← mode_8bpppixelcell::gfxa#3
Coalesced [320] mode_8bpppixelcell::chargen#11 ← mode_8bpppixelcell::chargen#4
Coalesced [321] mode_8bpppixelcell::gfxb#11 ← mode_8bpppixelcell::gfxb#7
Coalesced [322] mode_8bpppixelcell::col#11 ← mode_8bpppixelcell::col#7
Coalesced [326] mode_8bpppixelcell::bits#6 ← mode_8bpppixelcell::bits#0
Coalesced [327] mode_8bpppixelcell::gfxb#13 ← mode_8bpppixelcell::gfxb#5
Coalesced [328] mode_8bpppixelcell::col#13 ← mode_8bpppixelcell::col#5
Not coalescing [332] mode_8bpppixelcell::c#3 ← mode_8bpppixelcell::col#2
Coalesced [348] mode_8bpppixelcell::chargen#9 ← mode_8bpppixelcell::chargen#1
Coalesced [349] mode_8bpppixelcell::gfxb#9 ← mode_8bpppixelcell::gfxb#1
Coalesced [350] mode_8bpppixelcell::col#9 ← mode_8bpppixelcell::col#1
Coalesced [351] mode_8bpppixelcell::ch#9 ← mode_8bpppixelcell::ch#1
Coalesced (already) [352] mode_8bpppixelcell::chargen#10 ← mode_8bpppixelcell::chargen#1
Coalesced (already) [353] mode_8bpppixelcell::gfxb#10 ← mode_8bpppixelcell::gfxb#1
Coalesced (already) [354] mode_8bpppixelcell::col#10 ← mode_8bpppixelcell::col#1
Coalesced [355] mode_8bpppixelcell::cr#7 ← mode_8bpppixelcell::cr#1
Coalesced [356] mode_8bpppixelcell::bits#5 ← mode_8bpppixelcell::bits#1
Coalesced (already) [357] mode_8bpppixelcell::gfxb#12 ← mode_8bpppixelcell::gfxb#1
Coalesced (already) [358] mode_8bpppixelcell::col#12 ← mode_8bpppixelcell::col#1
Coalesced [359] mode_8bpppixelcell::cp#5 ← mode_8bpppixelcell::cp#1
Coalesced [360] mode_8bpppixelcell::ay#5 ← mode_8bpppixelcell::ay#1
Coalesced [361] mode_8bpppixelcell::gfxa#5 ← mode_8bpppixelcell::gfxa#1
Coalesced [362] mode_8bpppixelcell::ax#3 ← mode_8bpppixelcell::ax#1
Coalesced (already) [363] mode_8bpppixelcell::gfxa#7 ← mode_8bpppixelcell::gfxa#1
Coalesced [364] mode_8bpppixelcell::i#3 ← mode_8bpppixelcell::i#1
Coalesced [388] mode_sixsfred::col#6 ← mode_sixsfred::col#3
Coalesced [400] mode_sixsfred::gfxa#6 ← mode_sixsfred::gfxa#3
Coalesced [412] mode_sixsfred::gfxb#6 ← mode_sixsfred::gfxb#3
Coalesced [424] mode_sixsfred::gfxb#5 ← mode_sixsfred::gfxb#1
Coalesced [425] mode_sixsfred::by#5 ← mode_sixsfred::by#1
Coalesced (already) [426] mode_sixsfred::gfxb#7 ← mode_sixsfred::gfxb#1
Coalesced [427] mode_sixsfred::bx#3 ← mode_sixsfred::bx#1
Coalesced [428] mode_sixsfred::ay#5 ← mode_sixsfred::ay#1
Coalesced [429] mode_sixsfred::gfxa#5 ← mode_sixsfred::gfxa#1
Coalesced (already) [430] mode_sixsfred::gfxa#7 ← mode_sixsfred::gfxa#1
Coalesced [431] mode_sixsfred::ax#3 ← mode_sixsfred::ax#1
Coalesced [432] mode_sixsfred::cy#5 ← mode_sixsfred::cy#1
Coalesced [433] mode_sixsfred::col#5 ← mode_sixsfred::col#1
Coalesced [434] mode_sixsfred::cx#3 ← mode_sixsfred::cx#1
Coalesced (already) [435] mode_sixsfred::col#7 ← mode_sixsfred::col#1
Coalesced [436] mode_sixsfred::i#3 ← mode_sixsfred::i#1
Coalesced [462] mode_twoplanebitmap::col#6 ← mode_twoplanebitmap::col#3
Coalesced [476] mode_twoplanebitmap::gfxa#11 ← mode_twoplanebitmap::gfxa#7
Coalesced [482] mode_twoplanebitmap::gfxa#12 ← mode_twoplanebitmap::gfxa#2
Coalesced [490] mode_twoplanebitmap::gfxb#6 ← mode_twoplanebitmap::gfxb#3
Coalesced [502] mode_twoplanebitmap::gfxb#5 ← mode_twoplanebitmap::gfxb#1
Coalesced [503] mode_twoplanebitmap::by#5 ← mode_twoplanebitmap::by#1
Coalesced (already) [504] mode_twoplanebitmap::gfxb#7 ← mode_twoplanebitmap::gfxb#1
Coalesced [505] mode_twoplanebitmap::bx#3 ← mode_twoplanebitmap::bx#1
Coalesced [506] mode_twoplanebitmap::ay#8 ← mode_twoplanebitmap::ay#1
Coalesced [507] mode_twoplanebitmap::gfxa#9 ← mode_twoplanebitmap::gfxa#6
Coalesced (already) [508] mode_twoplanebitmap::gfxa#10 ← mode_twoplanebitmap::gfxa#6
Coalesced [509] mode_twoplanebitmap::ax#6 ← mode_twoplanebitmap::ax#1
Coalesced [512] mode_twoplanebitmap::gfxa#13 ← mode_twoplanebitmap::gfxa#1
Coalesced [513] mode_twoplanebitmap::cy#5 ← mode_twoplanebitmap::cy#1
Coalesced [514] mode_twoplanebitmap::col#5 ← mode_twoplanebitmap::col#1
Coalesced [515] mode_twoplanebitmap::cx#3 ← mode_twoplanebitmap::cx#1
Coalesced (already) [516] mode_twoplanebitmap::col#7 ← mode_twoplanebitmap::col#1
Coalesced [517] mode_twoplanebitmap::i#3 ← mode_twoplanebitmap::i#1
Coalesced [541] mode_sixsfred2::col#6 ← mode_sixsfred2::col#3
Coalesced [555] mode_sixsfred2::gfxa#6 ← mode_sixsfred2::gfxa#3
Coalesced [567] mode_sixsfred2::gfxb#6 ← mode_sixsfred2::gfxb#3
Coalesced [579] mode_sixsfred2::gfxb#5 ← mode_sixsfred2::gfxb#1
Coalesced [580] mode_sixsfred2::by#5 ← mode_sixsfred2::by#1
Coalesced (already) [581] mode_sixsfred2::gfxb#7 ← mode_sixsfred2::gfxb#1
Coalesced [582] mode_sixsfred2::bx#3 ← mode_sixsfred2::bx#1
Coalesced [583] mode_sixsfred2::ay#5 ← mode_sixsfred2::ay#1
Coalesced [584] mode_sixsfred2::gfxa#5 ← mode_sixsfred2::gfxa#1
Coalesced (already) [585] mode_sixsfred2::gfxa#7 ← mode_sixsfred2::gfxa#1
Coalesced [586] mode_sixsfred2::ax#3 ← mode_sixsfred2::ax#1
Coalesced [587] mode_sixsfred2::cy#5 ← mode_sixsfred2::cy#1
Coalesced [588] mode_sixsfred2::col#5 ← mode_sixsfred2::col#1
Coalesced [589] mode_sixsfred2::cx#3 ← mode_sixsfred2::cx#1
Coalesced (already) [590] mode_sixsfred2::col#7 ← mode_sixsfred2::col#1
Coalesced [591] mode_sixsfred2::i#3 ← mode_sixsfred2::i#1
Coalesced [610] mode_hicolmcchar::col#6 ← mode_hicolmcchar::col#3
Coalesced [611] mode_hicolmcchar::ch#6 ← mode_hicolmcchar::ch#3
Coalesced [629] mode_hicolmcchar::cy#5 ← mode_hicolmcchar::cy#1
Coalesced [630] mode_hicolmcchar::col#5 ← mode_hicolmcchar::col#1
Coalesced [631] mode_hicolmcchar::ch#5 ← mode_hicolmcchar::ch#1
Coalesced [632] mode_hicolmcchar::cx#3 ← mode_hicolmcchar::cx#1
Coalesced (already) [633] mode_hicolmcchar::col#7 ← mode_hicolmcchar::col#1
Coalesced (already) [634] mode_hicolmcchar::ch#7 ← mode_hicolmcchar::ch#1
Coalesced [635] mode_hicolmcchar::i#3 ← mode_hicolmcchar::i#1
Coalesced [655] mode_hicolecmchar::col#6 ← mode_hicolecmchar::col#3
Coalesced [656] mode_hicolecmchar::ch#6 ← mode_hicolecmchar::ch#3
Coalesced [674] mode_hicolecmchar::cy#5 ← mode_hicolecmchar::cy#1
Coalesced [675] mode_hicolecmchar::col#5 ← mode_hicolecmchar::col#1
Coalesced [676] mode_hicolecmchar::ch#5 ← mode_hicolecmchar::ch#1
Coalesced [677] mode_hicolecmchar::cx#3 ← mode_hicolecmchar::cx#1
Coalesced (already) [678] mode_hicolecmchar::col#7 ← mode_hicolecmchar::col#1
Coalesced (already) [679] mode_hicolecmchar::ch#7 ← mode_hicolecmchar::ch#1
Coalesced [680] mode_hicolecmchar::i#3 ← mode_hicolecmchar::i#1
Coalesced [697] mode_hicolstdchar::col#6 ← mode_hicolstdchar::col#3
Coalesced [698] mode_hicolstdchar::ch#6 ← mode_hicolstdchar::ch#3
Coalesced [716] mode_hicolstdchar::cy#5 ← mode_hicolstdchar::cy#1
Coalesced [717] mode_hicolstdchar::col#5 ← mode_hicolstdchar::col#1
Coalesced [718] mode_hicolstdchar::ch#5 ← mode_hicolstdchar::ch#1
Coalesced [719] mode_hicolstdchar::cx#3 ← mode_hicolstdchar::cx#1
Coalesced (already) [720] mode_hicolstdchar::col#7 ← mode_hicolstdchar::col#1
Coalesced (already) [721] mode_hicolstdchar::ch#7 ← mode_hicolstdchar::ch#1
Coalesced [722] mode_hicolstdchar::i#3 ← mode_hicolstdchar::i#1
Coalesced [737] mode_stdbitmap::ch#6 ← mode_stdbitmap::ch#3
Coalesced [767] mode_stdbitmap::l#5 ← mode_stdbitmap::l#1
Coalesced [768] mode_stdbitmap::cy#5 ← mode_stdbitmap::cy#1
Coalesced [769] mode_stdbitmap::ch#5 ← mode_stdbitmap::ch#1
Coalesced [770] mode_stdbitmap::cx#3 ← mode_stdbitmap::cx#1
Coalesced (already) [771] mode_stdbitmap::ch#7 ← mode_stdbitmap::ch#1
Coalesced [772] mode_stdbitmap::i#3 ← mode_stdbitmap::i#1
Coalesced [783] bitmap_line_ydxi::xd#8 ← bitmap_line_ydxi::xd#0
Coalesced [784] bitmap_line_ydxi::x#9 ← bitmap_line_ydxi::x#0
Coalesced [785] bitmap_line_ydxi::y#9 ← bitmap_line_ydxi::y#0
Coalesced [786] bitmap_line_ydxi::yd#8 ← bitmap_line_ydxi::yd#0
Coalesced [787] bitmap_line_ydxi::y1#8 ← bitmap_line_ydxi::y1#0
Coalesced [796] bitmap_line_xdyi::yd#7 ← bitmap_line_xdyi::yd#0
Coalesced [797] bitmap_line_xdyi::x#8 ← bitmap_line_xdyi::x#0
Coalesced [798] bitmap_line_xdyi::y#8 ← bitmap_line_xdyi::y#0
Coalesced [799] bitmap_line_xdyi::xd#7 ← bitmap_line_xdyi::xd#0
Coalesced [800] bitmap_line_xdyi::x1#7 ← bitmap_line_xdyi::x1#0
Coalesced [810] bitmap_line_ydxd::xd#7 ← bitmap_line_ydxd::xd#0
Coalesced [811] bitmap_line_ydxd::x#8 ← bitmap_line_ydxd::x#0
Coalesced [812] bitmap_line_ydxd::y#9 ← bitmap_line_ydxd::y#0
Coalesced [813] bitmap_line_ydxd::yd#7 ← bitmap_line_ydxd::yd#0
Coalesced [814] bitmap_line_ydxd::y1#7 ← bitmap_line_ydxd::y1#0
Coalesced [822] bitmap_line_xdyd::yd#7 ← bitmap_line_xdyd::yd#0
Coalesced [823] bitmap_line_xdyd::x#8 ← bitmap_line_xdyd::x#0
Coalesced [824] bitmap_line_xdyd::y#8 ← bitmap_line_xdyd::y#0
Coalesced [825] bitmap_line_xdyd::xd#7 ← bitmap_line_xdyd::xd#0
Coalesced [826] bitmap_line_xdyd::x1#7 ← bitmap_line_xdyd::x1#0
Coalesced [838] bitmap_line_ydxd::xd#8 ← bitmap_line_ydxd::xd#1
Coalesced [839] bitmap_line_ydxd::x#9 ← bitmap_line_ydxd::x#1
Coalesced [840] bitmap_line_ydxd::y#10 ← bitmap_line_ydxd::y#1
Coalesced [841] bitmap_line_ydxd::yd#8 ← bitmap_line_ydxd::yd#1
Coalesced [842] bitmap_line_ydxd::y1#8 ← bitmap_line_ydxd::y1#1
Coalesced [850] bitmap_line_xdyd::yd#8 ← bitmap_line_xdyd::yd#1
Coalesced [851] bitmap_line_xdyd::x#9 ← bitmap_line_xdyd::x#1
Coalesced [852] bitmap_line_xdyd::y#9 ← bitmap_line_xdyd::y#1
Coalesced [853] bitmap_line_xdyd::xd#8 ← bitmap_line_xdyd::xd#1
Coalesced [854] bitmap_line_xdyd::x1#8 ← bitmap_line_xdyd::x1#1
Coalesced [864] bitmap_line_ydxi::xd#7 ← bitmap_line_ydxi::xd#1
Coalesced [865] bitmap_line_ydxi::x#8 ← bitmap_line_ydxi::x#1
Coalesced [866] bitmap_line_ydxi::y#8 ← bitmap_line_ydxi::y#1
Coalesced [867] bitmap_line_ydxi::yd#7 ← bitmap_line_ydxi::yd#1
Coalesced [868] bitmap_line_ydxi::y1#7 ← bitmap_line_ydxi::y1#1
Coalesced [876] bitmap_line_xdyi::yd#8 ← bitmap_line_xdyi::yd#1
Coalesced [877] bitmap_line_xdyi::x#9 ← bitmap_line_xdyi::x#1
Coalesced [878] bitmap_line_xdyi::y#9 ← bitmap_line_xdyi::y#1
Coalesced [879] bitmap_line_xdyi::xd#8 ← bitmap_line_xdyi::xd#1
Coalesced [880] bitmap_line_xdyi::x1#8 ← bitmap_line_xdyi::x1#1
Coalesced [885] bitmap_line_xdyi::x#10 ← bitmap_line_xdyi::x#6
Coalesced [886] bitmap_line_xdyi::y#10 ← bitmap_line_xdyi::y#5
Coalesced [887] bitmap_line_xdyi::e#7 ← bitmap_line_xdyi::e#0
Coalesced [891] bitmap_plot::x#6 ← bitmap_plot::x#0
Coalesced [892] bitmap_plot::y#6 ← bitmap_plot::y#0
Coalesced [899] bitmap_line_xdyi::y#12 ← bitmap_line_xdyi::y#2
Coalesced [900] bitmap_line_xdyi::e#9 ← bitmap_line_xdyi::e#2
Coalesced [905] bitmap_line_xdyi::x#11 ← bitmap_line_xdyi::x#2
Coalesced [906] bitmap_line_xdyi::y#11 ← bitmap_line_xdyi::y#6
Coalesced [907] bitmap_line_xdyi::e#8 ← bitmap_line_xdyi::e#6
Coalesced (already) [908] bitmap_line_xdyi::y#13 ← bitmap_line_xdyi::y#3
Coalesced [909] bitmap_line_xdyi::e#10 ← bitmap_line_xdyi::e#1
Coalesced [919] bitmap_line_ydxi::x#10 ← bitmap_line_ydxi::x#5
Coalesced [920] bitmap_line_ydxi::y#10 ← bitmap_line_ydxi::y#6
Coalesced [921] bitmap_line_ydxi::e#7 ← bitmap_line_ydxi::e#0
Coalesced [925] bitmap_plot::x#8 ← bitmap_plot::x#2
Coalesced [926] bitmap_plot::y#8 ← bitmap_plot::y#2
Coalesced [933] bitmap_line_ydxi::x#12 ← bitmap_line_ydxi::x#2
Coalesced [934] bitmap_line_ydxi::e#9 ← bitmap_line_ydxi::e#2
Coalesced [939] bitmap_line_ydxi::x#11 ← bitmap_line_ydxi::x#6
Coalesced [940] bitmap_line_ydxi::y#11 ← bitmap_line_ydxi::y#2
Coalesced [941] bitmap_line_ydxi::e#8 ← bitmap_line_ydxi::e#6
Coalesced (already) [942] bitmap_line_ydxi::x#13 ← bitmap_line_ydxi::x#3
Coalesced [943] bitmap_line_ydxi::e#10 ← bitmap_line_ydxi::e#1
Coalesced [946] bitmap_line_xdyd::x#10 ← bitmap_line_xdyd::x#6
Coalesced [947] bitmap_line_xdyd::y#10 ← bitmap_line_xdyd::y#5
Coalesced [948] bitmap_line_xdyd::e#7 ← bitmap_line_xdyd::e#0
Coalesced [952] bitmap_plot::x#5 ← bitmap_plot::x#1
Coalesced [953] bitmap_plot::y#5 ← bitmap_plot::y#1
Coalesced [960] bitmap_line_xdyd::y#12 ← bitmap_line_xdyd::y#2
Coalesced [961] bitmap_line_xdyd::e#9 ← bitmap_line_xdyd::e#2
Coalesced [966] bitmap_line_xdyd::x#11 ← bitmap_line_xdyd::x#2
Coalesced [967] bitmap_line_xdyd::y#11 ← bitmap_line_xdyd::y#6
Coalesced [968] bitmap_line_xdyd::e#8 ← bitmap_line_xdyd::e#6
Coalesced (already) [969] bitmap_line_xdyd::y#13 ← bitmap_line_xdyd::y#3
Coalesced [970] bitmap_line_xdyd::e#10 ← bitmap_line_xdyd::e#1
Coalesced [973] bitmap_line_ydxd::x#10 ← bitmap_line_ydxd::x#5
Coalesced [974] bitmap_line_ydxd::y#11 ← bitmap_line_ydxd::y#7
Coalesced [975] bitmap_line_ydxd::e#7 ← bitmap_line_ydxd::e#0
Coalesced [979] bitmap_plot::x#7 ← bitmap_plot::x#3
Coalesced [980] bitmap_plot::y#7 ← bitmap_plot::y#3
Coalesced [987] bitmap_line_ydxd::x#12 ← bitmap_line_ydxd::x#2
Coalesced [988] bitmap_line_ydxd::e#9 ← bitmap_line_ydxd::e#2
Coalesced [993] bitmap_line_ydxd::x#11 ← bitmap_line_ydxd::x#6
Coalesced [994] bitmap_line_ydxd::y#12 ← bitmap_line_ydxd::y#3
Coalesced [995] bitmap_line_ydxd::e#8 ← bitmap_line_ydxd::e#6
Coalesced (already) [996] bitmap_line_ydxd::x#13 ← bitmap_line_ydxd::x#3
Coalesced [997] bitmap_line_ydxd::e#10 ← bitmap_line_ydxd::e#1
Coalesced [1001] bitmap_clear::bitmap#7 ← bitmap_clear::bitmap#3
Coalesced [1010] bitmap_clear::bitmap#6 ← bitmap_clear::bitmap#1
Coalesced [1011] bitmap_clear::y#5 ← bitmap_clear::y#1
Coalesced (already) [1012] bitmap_clear::bitmap#8 ← bitmap_clear::bitmap#1
Coalesced [1013] bitmap_clear::x#3 ← bitmap_clear::x#1
Coalesced [1036] bitmap_init::yoffs#7 ← bitmap_init::yoffs#1
Coalesced [1041] bitmap_init::y#5 ← bitmap_init::y#1
Coalesced [1042] bitmap_init::yoffs#5 ← bitmap_init::yoffs#4
Coalesced (already) [1043] bitmap_init::yoffs#6 ← bitmap_init::yoffs#2
Coalesced [1044] bitmap_init::x#5 ← bitmap_init::x#1
Coalesced [1045] bitmap_init::bits#5 ← bitmap_init::bits#4
Coalesced [1046] bitmap_init::bits#6 ← bitmap_init::bits#1
Coalesced [1065] mode_mcchar::col#6 ← mode_mcchar::col#3
Coalesced [1066] mode_mcchar::ch#6 ← mode_mcchar::ch#3
Coalesced [1086] mode_mcchar::cy#5 ← mode_mcchar::cy#1
Coalesced [1087] mode_mcchar::col#5 ← mode_mcchar::col#1
Coalesced [1088] mode_mcchar::ch#5 ← mode_mcchar::ch#1
Coalesced [1089] mode_mcchar::cx#3 ← mode_mcchar::cx#1
Coalesced (already) [1090] mode_mcchar::col#7 ← mode_mcchar::col#1
Coalesced (already) [1091] mode_mcchar::ch#7 ← mode_mcchar::ch#1
Coalesced [1092] mode_mcchar::i#3 ← mode_mcchar::i#1
Coalesced [1112] mode_ecmchar::col#6 ← mode_ecmchar::col#3
Coalesced [1113] mode_ecmchar::ch#6 ← mode_ecmchar::ch#3
Coalesced [1133] mode_ecmchar::cy#5 ← mode_ecmchar::cy#1
Coalesced [1134] mode_ecmchar::col#5 ← mode_ecmchar::col#1
Coalesced [1135] mode_ecmchar::ch#5 ← mode_ecmchar::ch#1
Coalesced [1136] mode_ecmchar::cx#3 ← mode_ecmchar::cx#1
Coalesced (already) [1137] mode_ecmchar::col#7 ← mode_ecmchar::col#1
Coalesced (already) [1138] mode_ecmchar::ch#7 ← mode_ecmchar::ch#1
Coalesced [1139] mode_ecmchar::i#3 ← mode_ecmchar::i#1
Coalesced [1156] mode_stdchar::col#6 ← mode_stdchar::col#3
Coalesced [1157] mode_stdchar::ch#6 ← mode_stdchar::ch#3
Coalesced [1177] mode_stdchar::cy#5 ← mode_stdchar::cy#1
Coalesced [1178] mode_stdchar::col#5 ← mode_stdchar::col#1
Coalesced [1179] mode_stdchar::ch#5 ← mode_stdchar::ch#1
Coalesced [1180] mode_stdchar::cx#3 ← mode_stdchar::cx#1
Coalesced (already) [1181] mode_stdchar::col#7 ← mode_stdchar::col#1
Coalesced (already) [1182] mode_stdchar::ch#7 ← mode_stdchar::ch#1
Coalesced [1183] mode_stdchar::i#3 ← mode_stdchar::i#1
Coalesced [1188] print_str_lines::str#10 ← print_str_lines::str#2
Coalesced [1189] print_char_cursor#101 ← print_char_cursor#19
Coalesced [1196] print_char_cursor#104 ← print_char_cursor#1
Coalesced [1201] print_str_lines::str#9 ← print_str_lines::str#0
Not coalescing [1202] print_char_cursor#100 ← print_line_cursor#19
Coalesced [1203] print_line_cursor#100 ← print_line_cursor#19
Coalesced (already) [1204] print_str_lines::str#11 ← print_str_lines::str#0
Coalesced [1205] print_char_cursor#102 ← print_char_cursor#32
Coalesced (already) [1206] print_char_cursor#103 ← print_char_cursor#17
Coalesced [1207] print_line_cursor#101 ← print_line_cursor#17
Coalesced (already) [1213] print_line_cursor#102 ← print_line_cursor#19
Coalesced [1226] memset::dst#4 ← memset::dst#1
Coalesced down to 125 phi equivalence classes
Culled Empty Block (label) @4
Culled Empty Block (label) @17
Culled Empty Block (label) @41
Culled Empty Block (label) @48
Culled Empty Block (label) @57
Culled Empty Block (label) @58
Culled Empty Block (label) @72
Culled Empty Block (label) main::@1
Culled Empty Block (label) main::@7
Culled Empty Block (label) menu::@2
Culled Empty Block (label) menu::@53
Culled Empty Block (label) menu::@9
Culled Empty Block (label) menu::@56
Culled Empty Block (label) menu::@58
Culled Empty Block (label) menu::@60
Culled Empty Block (label) menu::@62
Culled Empty Block (label) menu::@64
Culled Empty Block (label) menu::@66
Culled Empty Block (label) menu::@68
Culled Empty Block (label) menu::@70
Culled Empty Block (label) menu::@72
Culled Empty Block (label) menu::@74
Culled Empty Block (label) menu::@76
Culled Empty Block (label) menu::@77
Culled Empty Block (label) menu::@78
Culled Empty Block (label) mode_8bppchunkybmm::@9
Culled Empty Block (label) mode_8bppchunkybmm::@12
Culled Empty Block (label) mode_8bppchunkybmm::@14
Culled Empty Block (label) mode_8bppchunkybmm::@15
Culled Empty Block (label) mode_8bppchunkybmm::@16
Culled Empty Block (label) mode_8bppchunkybmm::@13
Culled Empty Block (label) mode_ctrl::@29
Culled Empty Block (label) mode_ctrl::@40
Culled Empty Block (label) mode_ctrl::@46
Culled Empty Block (label) mode_ctrl::@45
Culled Empty Block (label) mode_ctrl::@44
Culled Empty Block (label) mode_ctrl::@43
Culled Empty Block (label) mode_ctrl::@42
Culled Empty Block (label) mode_ctrl::@41
Culled Empty Block (label) mode_8bpppixelcell::@2
Culled Empty Block (label) mode_8bpppixelcell::@15
Culled Empty Block (label) mode_8bpppixelcell::@19
Culled Empty Block (label) mode_8bpppixelcell::@20
Culled Empty Block (label) mode_8bpppixelcell::@21
Culled Empty Block (label) mode_8bpppixelcell::@17
Culled Empty Block (label) mode_8bpppixelcell::@18
Culled Empty Block (label) mode_8bpppixelcell::@16
Culled Empty Block (label) mode_sixsfred::@6
Culled Empty Block (label) mode_sixsfred::@10
Culled Empty Block (label) mode_sixsfred::@15
Culled Empty Block (label) mode_sixsfred::@21
Culled Empty Block (label) mode_sixsfred::@22
Culled Empty Block (label) mode_sixsfred::@19
Culled Empty Block (label) mode_sixsfred::@20
Culled Empty Block (label) mode_sixsfred::@17
Culled Empty Block (label) mode_sixsfred::@18
Culled Empty Block (label) mode_sixsfred::@16
Culled Empty Block (label) mode_twoplanebitmap::@6
Culled Empty Block (label) mode_twoplanebitmap::@14
Culled Empty Block (label) mode_twoplanebitmap::@19
Culled Empty Block (label) mode_twoplanebitmap::@25
Culled Empty Block (label) mode_twoplanebitmap::@26
Culled Empty Block (label) mode_twoplanebitmap::@23
Culled Empty Block (label) mode_twoplanebitmap::@24
Culled Empty Block (label) mode_twoplanebitmap::@21
Culled Empty Block (label) mode_twoplanebitmap::@22
Culled Empty Block (label) mode_twoplanebitmap::@20
Culled Empty Block (label) mode_sixsfred2::@6
Culled Empty Block (label) mode_sixsfred2::@10
Culled Empty Block (label) mode_sixsfred2::@15
Culled Empty Block (label) mode_sixsfred2::@21
Culled Empty Block (label) mode_sixsfred2::@22
Culled Empty Block (label) mode_sixsfred2::@19
Culled Empty Block (label) mode_sixsfred2::@20
Culled Empty Block (label) mode_sixsfred2::@17
Culled Empty Block (label) mode_sixsfred2::@18
Culled Empty Block (label) mode_sixsfred2::@16
Culled Empty Block (label) mode_hicolmcchar::@7
Culled Empty Block (label) mode_hicolmcchar::@9
Culled Empty Block (label) mode_hicolmcchar::@10
Culled Empty Block (label) mode_hicolmcchar::@8
Culled Empty Block (label) mode_hicolecmchar::@7
Culled Empty Block (label) mode_hicolecmchar::@9
Culled Empty Block (label) mode_hicolecmchar::@10
Culled Empty Block (label) mode_hicolecmchar::@8
Culled Empty Block (label) mode_hicolstdchar::@7
Culled Empty Block (label) mode_hicolstdchar::@9
Culled Empty Block (label) mode_hicolstdchar::@10
Culled Empty Block (label) mode_hicolstdchar::@8
Culled Empty Block (label) mode_stdbitmap::@14
Culled Empty Block (label) mode_stdbitmap::@16
Culled Empty Block (label) mode_stdbitmap::@18
Culled Empty Block (label) mode_stdbitmap::@19
Culled Empty Block (label) mode_stdbitmap::@17
Culled Empty Block (label) bitmap_line::@30
Culled Empty Block (label) bitmap_line::@29
Culled Empty Block (label) bitmap_line::@32
Culled Empty Block (label) bitmap_line::@31
Culled Empty Block (label) bitmap_line::@34
Culled Empty Block (label) bitmap_line::@33
Culled Empty Block (label) bitmap_line::@36
Culled Empty Block (label) bitmap_line::@35
Culled Empty Block (label) bitmap_line_xdyi::@6
Culled Empty Block (label) bitmap_line_xdyi::@7
Culled Empty Block (label) bitmap_line_ydxi::@6
Culled Empty Block (label) bitmap_line_ydxi::@7
Culled Empty Block (label) bitmap_line_xdyd::@6
Culled Empty Block (label) bitmap_line_xdyd::@7
Culled Empty Block (label) bitmap_line_ydxd::@6
Culled Empty Block (label) bitmap_line_ydxd::@7
Culled Empty Block (label) bitmap_clear::@5
Culled Empty Block (label) bitmap_clear::@6
Culled Empty Block (label) bitmap_init::@3
Culled Empty Block (label) bitmap_init::@4
Culled Empty Block (label) bitmap_init::@11
Culled Empty Block (label) bitmap_init::@12
Culled Empty Block (label) bitmap_init::@9
Culled Empty Block (label) mode_mcchar::@7
Culled Empty Block (label) mode_mcchar::@9
Culled Empty Block (label) mode_mcchar::@10
Culled Empty Block (label) mode_mcchar::@8
Culled Empty Block (label) mode_ecmchar::@7
Culled Empty Block (label) mode_ecmchar::@9
Culled Empty Block (label) mode_ecmchar::@10
Culled Empty Block (label) mode_ecmchar::@8
Culled Empty Block (label) mode_stdchar::@7
Culled Empty Block (label) mode_stdchar::@9
Culled Empty Block (label) mode_stdchar::@10
Culled Empty Block (label) mode_stdchar::@8
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::@2
Culled Empty Block (label) print_ln::@3
Culled Empty Block (label) print_cls::@1
Culled Empty Block (label) memset::@2
Culled Empty Block (label) memset::@1
Renumbering block @71 to @1
Renumbering block memset::@4 to memset::@1
Renumbering block memset::@5 to memset::@2
Renumbering block print_str_lines::@4 to print_str_lines::@2
Renumbering block print_str_lines::@5 to print_str_lines::@3
Renumbering block print_str_lines::@6 to print_str_lines::@4
Renumbering block print_str_lines::@7 to print_str_lines::@5
Renumbering block print_str_lines::@11 to print_str_lines::@6
Renumbering block keyboard_key_pressed::@2 to keyboard_key_pressed::@1
Renumbering block bitmap_init::@5 to bitmap_init::@3
Renumbering block bitmap_init::@6 to bitmap_init::@4
Renumbering block bitmap_init::@7 to bitmap_init::@5
Renumbering block bitmap_init::@10 to bitmap_init::@6
Renumbering block bitmap_line::@3 to bitmap_line::@2
Renumbering block bitmap_line::@4 to bitmap_line::@3
Renumbering block bitmap_line::@5 to bitmap_line::@4
Renumbering block bitmap_line::@7 to bitmap_line::@5
Renumbering block bitmap_line::@8 to bitmap_line::@6
Renumbering block bitmap_line::@10 to bitmap_line::@7
Renumbering block bitmap_line::@11 to bitmap_line::@8
Renumbering block bitmap_line::@15 to bitmap_line::@9
Renumbering block bitmap_line::@17 to bitmap_line::@10
Renumbering block bitmap_line::@20 to bitmap_line::@11
Renumbering block bitmap_line::@21 to bitmap_line::@12
Renumbering block bitmap_line::@25 to bitmap_line::@13
Renumbering block bitmap_line::@27 to bitmap_line::@14
Renumbering block bitmap_line_xdyi::@5 to bitmap_line_xdyi::@4
Renumbering block bitmap_line_xdyd::@5 to bitmap_line_xdyd::@4
Renumbering block bitmap_line_ydxi::@5 to bitmap_line_ydxi::@4
Renumbering block bitmap_line_ydxd::@5 to bitmap_line_ydxd::@4
Renumbering block main::@2 to main::@1
Renumbering block menu::@3 to menu::@2
Renumbering block menu::@4 to menu::@3
Renumbering block menu::@5 to menu::@4
Renumbering block menu::@10 to menu::@5
Renumbering block menu::@12 to menu::@6
Renumbering block menu::@13 to menu::@7
Renumbering block menu::@14 to menu::@8
Renumbering block menu::@15 to menu::@9
Renumbering block menu::@16 to menu::@10
Renumbering block menu::@17 to menu::@11
Renumbering block menu::@18 to menu::@12
Renumbering block menu::@19 to menu::@13
Renumbering block menu::@20 to menu::@14
Renumbering block menu::@21 to menu::@15
Renumbering block menu::@22 to menu::@16
Renumbering block menu::@26 to menu::@17
Renumbering block menu::@28 to menu::@18
Renumbering block menu::@30 to menu::@19
Renumbering block menu::@32 to menu::@20
Renumbering block menu::@34 to menu::@21
Renumbering block menu::@36 to menu::@22
Renumbering block menu::@38 to menu::@23
Renumbering block menu::@40 to menu::@24
Renumbering block menu::@42 to menu::@25
Renumbering block menu::@44 to menu::@26
Renumbering block menu::@46 to menu::@27
Renumbering block menu::@48 to menu::@28
Renumbering block menu::@51 to menu::@29
Renumbering block menu::@52 to menu::@30
Renumbering block menu::@54 to menu::@31
Renumbering block menu::@55 to menu::@32
Renumbering block menu::@57 to menu::@33
Renumbering block menu::@59 to menu::@34
Renumbering block menu::@61 to menu::@35
Renumbering block menu::@63 to menu::@36
Renumbering block menu::@65 to menu::@37
Renumbering block menu::@67 to menu::@38
Renumbering block menu::@69 to menu::@39
Renumbering block menu::@71 to menu::@40
Renumbering block menu::@73 to menu::@41
Renumbering block menu::@75 to menu::@42
Renumbering block mode_ctrl::@4 to mode_ctrl::@2
Renumbering block mode_ctrl::@6 to mode_ctrl::@3
Renumbering block mode_ctrl::@12 to mode_ctrl::@4
Renumbering block mode_ctrl::@13 to mode_ctrl::@5
Renumbering block mode_ctrl::@14 to mode_ctrl::@6
Renumbering block mode_ctrl::@15 to mode_ctrl::@7
Renumbering block mode_ctrl::@16 to mode_ctrl::@8
Renumbering block mode_ctrl::@17 to mode_ctrl::@9
Renumbering block mode_ctrl::@18 to mode_ctrl::@10
Renumbering block mode_ctrl::@19 to mode_ctrl::@11
Renumbering block mode_ctrl::@23 to mode_ctrl::@12
Renumbering block mode_ctrl::@24 to mode_ctrl::@13
Renumbering block mode_ctrl::@25 to mode_ctrl::@14
Renumbering block mode_ctrl::@26 to mode_ctrl::@15
Renumbering block mode_ctrl::@27 to mode_ctrl::@16
Renumbering block mode_ctrl::@28 to mode_ctrl::@17
Renumbering block mode_ctrl::@30 to mode_ctrl::@18
Renumbering block mode_ctrl::@32 to mode_ctrl::@19
Renumbering block mode_ctrl::@33 to mode_ctrl::@20
Renumbering block mode_ctrl::@34 to mode_ctrl::@21
Renumbering block mode_ctrl::@35 to mode_ctrl::@22
Renumbering block mode_ctrl::@36 to mode_ctrl::@23
Renumbering block mode_ctrl::@37 to mode_ctrl::@24
Renumbering block mode_ctrl::@38 to mode_ctrl::@25
Renumbering block mode_ctrl::@39 to mode_ctrl::@26
Renumbering block mode_ctrl::@47 to mode_ctrl::@27
Renumbering block mode_stdbitmap::@13 to mode_stdbitmap::@10
Renumbering block mode_stdbitmap::@15 to mode_stdbitmap::@11
Renumbering block mode_twoplanebitmap::@7 to mode_twoplanebitmap::@6
Renumbering block mode_twoplanebitmap::@8 to mode_twoplanebitmap::@7
Renumbering block mode_twoplanebitmap::@9 to mode_twoplanebitmap::@8
Renumbering block mode_twoplanebitmap::@10 to mode_twoplanebitmap::@9
Renumbering block mode_twoplanebitmap::@11 to mode_twoplanebitmap::@10
Renumbering block mode_twoplanebitmap::@13 to mode_twoplanebitmap::@11
Renumbering block mode_twoplanebitmap::@15 to mode_twoplanebitmap::@12
Renumbering block mode_twoplanebitmap::@16 to mode_twoplanebitmap::@13
Renumbering block mode_twoplanebitmap::@17 to mode_twoplanebitmap::@14
Renumbering block mode_twoplanebitmap::@18 to mode_twoplanebitmap::@15
Renumbering block mode_sixsfred::@7 to mode_sixsfred::@6
Renumbering block mode_sixsfred::@8 to mode_sixsfred::@7
Renumbering block mode_sixsfred::@9 to mode_sixsfred::@8
Renumbering block mode_sixsfred::@11 to mode_sixsfred::@9
Renumbering block mode_sixsfred::@12 to mode_sixsfred::@10
Renumbering block mode_sixsfred::@13 to mode_sixsfred::@11
Renumbering block mode_sixsfred::@14 to mode_sixsfred::@12
Renumbering block mode_sixsfred2::@7 to mode_sixsfred2::@6
Renumbering block mode_sixsfred2::@8 to mode_sixsfred2::@7
Renumbering block mode_sixsfred2::@9 to mode_sixsfred2::@8
Renumbering block mode_sixsfred2::@11 to mode_sixsfred2::@9
Renumbering block mode_sixsfred2::@12 to mode_sixsfred2::@10
Renumbering block mode_sixsfred2::@13 to mode_sixsfred2::@11
Renumbering block mode_sixsfred2::@14 to mode_sixsfred2::@12
Renumbering block mode_8bpppixelcell::@3 to mode_8bpppixelcell::@2
Renumbering block mode_8bpppixelcell::@4 to mode_8bpppixelcell::@3
Renumbering block mode_8bpppixelcell::@5 to mode_8bpppixelcell::@4
Renumbering block mode_8bpppixelcell::@6 to mode_8bpppixelcell::@5
Renumbering block mode_8bpppixelcell::@7 to mode_8bpppixelcell::@6
Renumbering block mode_8bpppixelcell::@8 to mode_8bpppixelcell::@7
Renumbering block mode_8bpppixelcell::@9 to mode_8bpppixelcell::@8
Renumbering block mode_8bpppixelcell::@10 to mode_8bpppixelcell::@9
Renumbering block mode_8bpppixelcell::@11 to mode_8bpppixelcell::@10
Renumbering block mode_8bpppixelcell::@12 to mode_8bpppixelcell::@11
Renumbering block mode_8bpppixelcell::@13 to mode_8bpppixelcell::@12
Renumbering block mode_8bpppixelcell::@14 to mode_8bpppixelcell::@13
Renumbering block mode_8bppchunkybmm::@10 to mode_8bppchunkybmm::@9
Renumbering block mode_8bppchunkybmm::@11 to mode_8bppchunkybmm::@10
Adding NOP phi() at start of @begin
Adding NOP phi() at start of @1
Adding NOP phi() at start of @end
Adding NOP phi() at start of main::@1
Adding NOP phi() at start of menu::@29
Adding NOP phi() at start of menu::@30
Adding NOP phi() at start of menu::@5
Adding NOP phi() at start of menu::@17
Adding NOP phi() at start of menu::@6
Adding NOP phi() at start of menu::@18
Adding NOP phi() at start of menu::@7
Adding NOP phi() at start of menu::@19
Adding NOP phi() at start of menu::@8
Adding NOP phi() at start of menu::@20
Adding NOP phi() at start of menu::@9
Adding NOP phi() at start of menu::@21
Adding NOP phi() at start of menu::@10
Adding NOP phi() at start of menu::@22
Adding NOP phi() at start of menu::@11
Adding NOP phi() at start of menu::@23
Adding NOP phi() at start of menu::@12
Adding NOP phi() at start of menu::@24
Adding NOP phi() at start of menu::@13
Adding NOP phi() at start of menu::@25
Adding NOP phi() at start of menu::@14
Adding NOP phi() at start of menu::@26
Adding NOP phi() at start of menu::@15
Adding NOP phi() at start of menu::@27
Adding NOP phi() at start of menu::@16
Adding NOP phi() at start of menu::@28
Adding NOP phi() at start of mode_8bppchunkybmm::@2
Adding NOP phi() at start of mode_8bppchunkybmm::@8
Adding NOP phi() at start of mode_8bppchunkybmm::@10
Adding NOP phi() at start of mode_ctrl::@3
Adding NOP phi() at start of mode_ctrl::@27
Adding NOP phi() at start of mode_sixsfred::@12
Adding NOP phi() at start of mode_twoplanebitmap::@15
Adding NOP phi() at start of mode_sixsfred2::@12
Adding NOP phi() at start of mode_hicolmcchar::@6
Adding NOP phi() at start of mode_hicolecmchar::@6
Adding NOP phi() at start of mode_hicolstdchar::@6
Adding NOP phi() at start of mode_stdbitmap::@6
Adding NOP phi() at start of mode_stdbitmap::@10
Adding NOP phi() at start of mode_stdbitmap::@9
Adding NOP phi() at start of bitmap_init
Adding NOP phi() at start of bitmap_init::@6
Adding NOP phi() at start of mode_mcchar::@6
Adding NOP phi() at start of mode_ecmchar::@6
Adding NOP phi() at start of mode_stdchar::@6
Adding NOP phi() at start of print_str_lines
Adding NOP phi() at start of print_str_lines::@5
Adding NOP phi() at start of print_ln
Adding NOP phi() at start of print_cls
Adding NOP phi() at start of memset
Adding NOP phi() at start of print_set_screen
FINAL CONTROL FLOW GRAPH
@begin: scope:[] from
[0] phi()
to:@1
@1: scope:[] from @begin
[1] phi()
[2] call main
to:@end
@end: scope:[] from @1
[3] phi()
main: scope:[main] from @1
asm { sei }
[5] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0
[6] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0
[7] *((const byte*) DTV_FEATURE#0) ← (const byte) DTV_FEATURE_ENABLE#0
to:main::@1
main::@1: scope:[main] from main main::@1
[8] phi()
[9] call menu
to:main::@1
menu: scope:[menu] from main::@1
[10] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0
[11] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400
[12] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0
[13] *((const byte*) DTV_CONTROL#0) ← (byte) 0
[14] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3
[15] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) menu::CHARSET#0/(word) $4000
[16] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3
[17] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0
[18] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) menu::CHARSET#0&(word) $3fff/(word) $400
to:menu::@1
menu::@1: scope:[menu] from menu menu::@1
[19] (byte) menu::i#2 ← phi( menu/(byte) 0 menu::@1/(byte) menu::i#1 )
[20] *((const byte*) DTV_PALETTE#0 + (byte) menu::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) menu::i#2)
[21] (byte) menu::i#1 ← ++ (byte) menu::i#2
[22] if((byte) menu::i#1!=(byte) $10) goto menu::@1
to:menu::@2
menu::@2: scope:[menu] from menu::@1 menu::@3
[23] (byte*) menu::c#2 ← phi( menu::@1/(const byte*) COLS#0 menu::@3/(byte*) menu::c#1 )
[24] if((byte*) menu::c#2!=(const byte*) COLS#0+(word) $3e8) goto menu::@3
to:menu::@4
menu::@4: scope:[menu] from menu::@2
[25] *((const byte*) BGCOL#0) ← (byte) 0
[26] *((const byte*) BORDERCOL#0) ← (byte) 0
[27] call print_set_screen
to:menu::@29
menu::@29: scope:[menu] from menu::@4
[28] phi()
[29] call print_cls
to:menu::@30
menu::@30: scope:[menu] from menu::@29
[30] phi()
[31] call print_str_lines
to:menu::@5
menu::@5: scope:[menu] from menu::@30 menu::@42
[32] phi()
[33] call keyboard_key_pressed
[34] (byte) keyboard_key_pressed::return#2 ← (byte) keyboard_key_pressed::return#0
to:menu::@31
menu::@31: scope:[menu] from menu::@5
[35] (byte~) menu::$29 ← (byte) keyboard_key_pressed::return#2
[36] if((byte~) menu::$29==(byte) 0) goto menu::@6
to:menu::@17
menu::@17: scope:[menu] from menu::@31
[37] phi()
[38] call mode_stdchar
to:menu::@return
menu::@return: scope:[menu] from menu::@17 menu::@18 menu::@19 menu::@20 menu::@21 menu::@22 menu::@23 menu::@24 menu::@25 menu::@26 menu::@27 menu::@28
[39] return
to:@return
menu::@6: scope:[menu] from menu::@31
[40] phi()
[41] call keyboard_key_pressed
[42] (byte) keyboard_key_pressed::return#24 ← (byte) keyboard_key_pressed::return#0
to:menu::@32
menu::@32: scope:[menu] from menu::@6
[43] (byte~) menu::$33 ← (byte) keyboard_key_pressed::return#24
[44] if((byte~) menu::$33==(byte) 0) goto menu::@7
to:menu::@18
menu::@18: scope:[menu] from menu::@32
[45] phi()
[46] call mode_ecmchar
to:menu::@return
menu::@7: scope:[menu] from menu::@32
[47] phi()
[48] call keyboard_key_pressed
[49] (byte) keyboard_key_pressed::return#25 ← (byte) keyboard_key_pressed::return#0
to:menu::@33
menu::@33: scope:[menu] from menu::@7
[50] (byte~) menu::$37 ← (byte) keyboard_key_pressed::return#25
[51] if((byte~) menu::$37==(byte) 0) goto menu::@8
to:menu::@19
menu::@19: scope:[menu] from menu::@33
[52] phi()
[53] call mode_mcchar
to:menu::@return
menu::@8: scope:[menu] from menu::@33
[54] phi()
[55] call keyboard_key_pressed
[56] (byte) keyboard_key_pressed::return#26 ← (byte) keyboard_key_pressed::return#0
to:menu::@34
menu::@34: scope:[menu] from menu::@8
[57] (byte~) menu::$41 ← (byte) keyboard_key_pressed::return#26
[58] if((byte~) menu::$41==(byte) 0) goto menu::@9
to:menu::@20
menu::@20: scope:[menu] from menu::@34
[59] phi()
[60] call mode_stdbitmap
to:menu::@return
menu::@9: scope:[menu] from menu::@34
[61] phi()
[62] call keyboard_key_pressed
[63] (byte) keyboard_key_pressed::return#27 ← (byte) keyboard_key_pressed::return#0
to:menu::@35
menu::@35: scope:[menu] from menu::@9
[64] (byte~) menu::$45 ← (byte) keyboard_key_pressed::return#27
[65] if((byte~) menu::$45==(byte) 0) goto menu::@10
to:menu::@21
menu::@21: scope:[menu] from menu::@35
[66] phi()
[67] call mode_hicolstdchar
to:menu::@return
menu::@10: scope:[menu] from menu::@35
[68] phi()
[69] call keyboard_key_pressed
[70] (byte) keyboard_key_pressed::return#28 ← (byte) keyboard_key_pressed::return#0
to:menu::@36
menu::@36: scope:[menu] from menu::@10
[71] (byte~) menu::$49 ← (byte) keyboard_key_pressed::return#28
[72] if((byte~) menu::$49==(byte) 0) goto menu::@11
to:menu::@22
menu::@22: scope:[menu] from menu::@36
[73] phi()
[74] call mode_hicolecmchar
to:menu::@return
menu::@11: scope:[menu] from menu::@36
[75] phi()
[76] call keyboard_key_pressed
[77] (byte) keyboard_key_pressed::return#29 ← (byte) keyboard_key_pressed::return#0
to:menu::@37
menu::@37: scope:[menu] from menu::@11
[78] (byte~) menu::$53 ← (byte) keyboard_key_pressed::return#29
[79] if((byte~) menu::$53==(byte) 0) goto menu::@12
to:menu::@23
menu::@23: scope:[menu] from menu::@37
[80] phi()
[81] call mode_hicolmcchar
to:menu::@return
menu::@12: scope:[menu] from menu::@37
[82] phi()
[83] call keyboard_key_pressed
[84] (byte) keyboard_key_pressed::return#30 ← (byte) keyboard_key_pressed::return#0
to:menu::@38
menu::@38: scope:[menu] from menu::@12
[85] (byte~) menu::$57 ← (byte) keyboard_key_pressed::return#30
[86] if((byte~) menu::$57==(byte) 0) goto menu::@13
to:menu::@24
menu::@24: scope:[menu] from menu::@38
[87] phi()
[88] call mode_sixsfred2
to:menu::@return
menu::@13: scope:[menu] from menu::@38
[89] phi()
[90] call keyboard_key_pressed
[91] (byte) keyboard_key_pressed::return#10 ← (byte) keyboard_key_pressed::return#0
to:menu::@39
menu::@39: scope:[menu] from menu::@13
[92] (byte~) menu::$61 ← (byte) keyboard_key_pressed::return#10
[93] if((byte~) menu::$61==(byte) 0) goto menu::@14
to:menu::@25
menu::@25: scope:[menu] from menu::@39
[94] phi()
[95] call mode_twoplanebitmap
to:menu::@return
menu::@14: scope:[menu] from menu::@39
[96] phi()
[97] call keyboard_key_pressed
[98] (byte) keyboard_key_pressed::return#11 ← (byte) keyboard_key_pressed::return#0
to:menu::@40
menu::@40: scope:[menu] from menu::@14
[99] (byte~) menu::$65 ← (byte) keyboard_key_pressed::return#11
[100] if((byte~) menu::$65==(byte) 0) goto menu::@15
to:menu::@26
menu::@26: scope:[menu] from menu::@40
[101] phi()
[102] call mode_sixsfred
to:menu::@return
menu::@15: scope:[menu] from menu::@40
[103] phi()
[104] call keyboard_key_pressed
[105] (byte) keyboard_key_pressed::return#12 ← (byte) keyboard_key_pressed::return#0
to:menu::@41
menu::@41: scope:[menu] from menu::@15
[106] (byte~) menu::$69 ← (byte) keyboard_key_pressed::return#12
[107] if((byte~) menu::$69==(byte) 0) goto menu::@16
to:menu::@27
menu::@27: scope:[menu] from menu::@41
[108] phi()
[109] call mode_8bpppixelcell
to:menu::@return
menu::@16: scope:[menu] from menu::@41
[110] phi()
[111] call keyboard_key_pressed
[112] (byte) keyboard_key_pressed::return#13 ← (byte) keyboard_key_pressed::return#0
to:menu::@42
menu::@42: scope:[menu] from menu::@16
[113] (byte~) menu::$73 ← (byte) keyboard_key_pressed::return#13
[114] if((byte~) menu::$73==(byte) 0) goto menu::@5
to:menu::@28
menu::@28: scope:[menu] from menu::@42
[115] phi()
[116] call mode_8bppchunkybmm
to:menu::@return
menu::@3: scope:[menu] from menu::@2
[117] *((byte*) menu::c#2) ← (const byte) LIGHT_GREEN#0
[118] (byte*) menu::c#1 ← ++ (byte*) menu::c#2
to:menu::@2
mode_8bppchunkybmm: scope:[mode_8bppchunkybmm] from menu::@28
[119] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0
[120] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3
[121] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0
[122] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0
[123] *((const byte*) DTV_PLANEB_START_MI#0) ← (byte) 0
[124] *((const byte*) DTV_PLANEB_START_HI#0) ← <>(const dword) mode_8bppchunkybmm::PLANEB#0
[125] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 8
[126] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0
[127] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0
[128] *((const byte*) BORDERCOL#0) ← (byte) 0
to:mode_8bppchunkybmm::@1
mode_8bppchunkybmm::@1: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm mode_8bppchunkybmm::@1
[129] (byte) mode_8bppchunkybmm::i#2 ← phi( mode_8bppchunkybmm/(byte) 0 mode_8bppchunkybmm::@1/(byte) mode_8bppchunkybmm::i#1 )
[130] *((const byte*) DTV_PALETTE#0 + (byte) mode_8bppchunkybmm::i#2) ← (byte) mode_8bppchunkybmm::i#2
[131] (byte) mode_8bppchunkybmm::i#1 ← ++ (byte) mode_8bppchunkybmm::i#2
[132] if((byte) mode_8bppchunkybmm::i#1!=(byte) $10) goto mode_8bppchunkybmm::@1
to:mode_8bppchunkybmm::@2
mode_8bppchunkybmm::@2: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@1
[133] phi()
[134] call dtvSetCpuBankSegment1
to:mode_8bppchunkybmm::@3
mode_8bppchunkybmm::@3: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@2 mode_8bppchunkybmm::@7
[135] (byte) mode_8bppchunkybmm::gfxbCpuBank#7 ← phi( mode_8bppchunkybmm::@7/(byte) mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::@2/++(byte)(const dword) mode_8bppchunkybmm::PLANEB#0/(word) $4000 )
[135] (byte) mode_8bppchunkybmm::y#6 ← phi( mode_8bppchunkybmm::@7/(byte) mode_8bppchunkybmm::y#1 mode_8bppchunkybmm::@2/(byte) 0 )
[135] (byte*) mode_8bppchunkybmm::gfxb#5 ← phi( mode_8bppchunkybmm::@7/(byte*) mode_8bppchunkybmm::gfxb#1 mode_8bppchunkybmm::@2/(byte*) 16384 )
to:mode_8bppchunkybmm::@4
mode_8bppchunkybmm::@4: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@3 mode_8bppchunkybmm::@5
[136] (byte) mode_8bppchunkybmm::gfxbCpuBank#4 ← phi( mode_8bppchunkybmm::@3/(byte) mode_8bppchunkybmm::gfxbCpuBank#7 mode_8bppchunkybmm::@5/(byte) mode_8bppchunkybmm::gfxbCpuBank#8 )
[136] (word) mode_8bppchunkybmm::x#2 ← phi( mode_8bppchunkybmm::@3/(word) 0 mode_8bppchunkybmm::@5/(word) mode_8bppchunkybmm::x#1 )
[136] (byte*) mode_8bppchunkybmm::gfxb#3 ← phi( mode_8bppchunkybmm::@3/(byte*) mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::@5/(byte*) mode_8bppchunkybmm::gfxb#1 )
[137] if((byte*) mode_8bppchunkybmm::gfxb#3!=(word) $8000) goto mode_8bppchunkybmm::@5
to:mode_8bppchunkybmm::@6
mode_8bppchunkybmm::@6: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@4
[138] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ← (byte) mode_8bppchunkybmm::gfxbCpuBank#4
[139] call dtvSetCpuBankSegment1
to:mode_8bppchunkybmm::@9
mode_8bppchunkybmm::@9: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@6
[140] (byte) mode_8bppchunkybmm::gfxbCpuBank#2 ← ++ (byte) mode_8bppchunkybmm::gfxbCpuBank#4
to:mode_8bppchunkybmm::@5
mode_8bppchunkybmm::@5: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@4 mode_8bppchunkybmm::@9
[141] (byte) mode_8bppchunkybmm::gfxbCpuBank#8 ← phi( mode_8bppchunkybmm::@9/(byte) mode_8bppchunkybmm::gfxbCpuBank#2 mode_8bppchunkybmm::@4/(byte) mode_8bppchunkybmm::gfxbCpuBank#4 )
[141] (byte*) mode_8bppchunkybmm::gfxb#4 ← phi( mode_8bppchunkybmm::@9/(byte*) 16384 mode_8bppchunkybmm::@4/(byte*) mode_8bppchunkybmm::gfxb#3 )
[142] (word~) mode_8bppchunkybmm::$26 ← (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#6
[143] (byte) mode_8bppchunkybmm::c#0 ← (byte)(word~) mode_8bppchunkybmm::$26
[144] *((byte*) mode_8bppchunkybmm::gfxb#4) ← (byte) mode_8bppchunkybmm::c#0
[145] (byte*) mode_8bppchunkybmm::gfxb#1 ← ++ (byte*) mode_8bppchunkybmm::gfxb#4
[146] (word) mode_8bppchunkybmm::x#1 ← ++ (word) mode_8bppchunkybmm::x#2
[147] if((word) mode_8bppchunkybmm::x#1!=(word) $140) goto mode_8bppchunkybmm::@4
to:mode_8bppchunkybmm::@7
mode_8bppchunkybmm::@7: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@5
[148] (byte) mode_8bppchunkybmm::y#1 ← ++ (byte) mode_8bppchunkybmm::y#6
[149] if((byte) mode_8bppchunkybmm::y#1!=(byte) $c8) goto mode_8bppchunkybmm::@3
to:mode_8bppchunkybmm::@8
mode_8bppchunkybmm::@8: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@7
[150] phi()
[151] call dtvSetCpuBankSegment1
to:mode_8bppchunkybmm::@10
mode_8bppchunkybmm::@10: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@8
[152] phi()
[153] call mode_ctrl
to:mode_8bppchunkybmm::@return
mode_8bppchunkybmm::@return: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@10
[154] return
to:@return
mode_ctrl: scope:[mode_ctrl] from mode_8bppchunkybmm::@10 mode_8bpppixelcell::@13 mode_ecmchar::@6 mode_hicolecmchar::@6 mode_hicolmcchar::@6 mode_hicolstdchar::@6 mode_mcchar::@6 mode_sixsfred2::@12 mode_sixsfred::@12 mode_stdbitmap::@9 mode_stdchar::@6 mode_twoplanebitmap::@15
[155] (byte) dtv_control#144 ← phi( mode_8bppchunkybmm::@10/(const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0 mode_8bpppixelcell::@13/(const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0 mode_ecmchar::@6/(byte) 0 mode_hicolecmchar::@6/(const byte) DTV_HIGHCOLOR#0 mode_hicolmcchar::@6/(const byte) DTV_HIGHCOLOR#0 mode_hicolstdchar::@6/(const byte) DTV_HIGHCOLOR#0 mode_mcchar::@6/(byte) 0 mode_sixsfred2::@12/(const byte) DTV_LINEAR#0 mode_sixsfred::@12/(const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 mode_stdbitmap::@9/(byte) 0 mode_stdchar::@6/(byte) 0 mode_twoplanebitmap::@15/(const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 )
to:mode_ctrl::@1
mode_ctrl::@1: scope:[mode_ctrl] from mode_ctrl mode_ctrl::@11 mode_ctrl::@18
[156] (byte) dtv_control#114 ← phi( mode_ctrl/(byte) dtv_control#144 mode_ctrl::@11/(byte) dtv_control#114 mode_ctrl::@18/(byte) dtv_control#17 )
to:mode_ctrl::@2
mode_ctrl::@2: scope:[mode_ctrl] from mode_ctrl::@1 mode_ctrl::@2
[157] if(*((const byte*) RASTER#0)!=(byte) $ff) goto mode_ctrl::@2
to:mode_ctrl::@3
mode_ctrl::@3: scope:[mode_ctrl] from mode_ctrl::@2
[158] phi()
[159] call keyboard_key_pressed
[160] (byte) keyboard_key_pressed::return#14 ← (byte) keyboard_key_pressed::return#0
to:mode_ctrl::@19
mode_ctrl::@19: scope:[mode_ctrl] from mode_ctrl::@3
[161] (byte~) mode_ctrl::$1 ← (byte) keyboard_key_pressed::return#14
[162] if((byte~) mode_ctrl::$1==(byte) 0) goto mode_ctrl::@4
to:mode_ctrl::@return
mode_ctrl::@return: scope:[mode_ctrl] from mode_ctrl::@19
[163] return
to:@return
mode_ctrl::@4: scope:[mode_ctrl] from mode_ctrl::@19
[164] (byte) mode_ctrl::ctrl#0 ← (byte) dtv_control#114
[165] call keyboard_key_pressed
[166] (byte) keyboard_key_pressed::return#15 ← (byte) keyboard_key_pressed::return#0
to:mode_ctrl::@20
mode_ctrl::@20: scope:[mode_ctrl] from mode_ctrl::@4
[167] (byte~) mode_ctrl::$4 ← (byte) keyboard_key_pressed::return#15
[168] if((byte~) mode_ctrl::$4==(byte) 0) goto mode_ctrl::@5
to:mode_ctrl::@12
mode_ctrl::@12: scope:[mode_ctrl] from mode_ctrl::@20
[169] (byte) mode_ctrl::ctrl#1 ← (byte) mode_ctrl::ctrl#0 | (const byte) DTV_LINEAR#0
to:mode_ctrl::@5
mode_ctrl::@5: scope:[mode_ctrl] from mode_ctrl::@12 mode_ctrl::@20
[170] (byte) mode_ctrl::ctrl#17 ← phi( mode_ctrl::@12/(byte) mode_ctrl::ctrl#1 mode_ctrl::@20/(byte) mode_ctrl::ctrl#0 )
[171] call keyboard_key_pressed
[172] (byte) keyboard_key_pressed::return#16 ← (byte) keyboard_key_pressed::return#0
to:mode_ctrl::@21
mode_ctrl::@21: scope:[mode_ctrl] from mode_ctrl::@5
[173] (byte~) mode_ctrl::$8 ← (byte) keyboard_key_pressed::return#16
[174] if((byte~) mode_ctrl::$8==(byte) 0) goto mode_ctrl::@6
to:mode_ctrl::@13
mode_ctrl::@13: scope:[mode_ctrl] from mode_ctrl::@21
[175] (byte) mode_ctrl::ctrl#2 ← (byte) mode_ctrl::ctrl#17 | (const byte) DTV_HIGHCOLOR#0
to:mode_ctrl::@6
mode_ctrl::@6: scope:[mode_ctrl] from mode_ctrl::@13 mode_ctrl::@21
[176] (byte) mode_ctrl::ctrl#10 ← phi( mode_ctrl::@13/(byte) mode_ctrl::ctrl#2 mode_ctrl::@21/(byte) mode_ctrl::ctrl#17 )
[177] call keyboard_key_pressed
[178] (byte) keyboard_key_pressed::return#17 ← (byte) keyboard_key_pressed::return#0
to:mode_ctrl::@22
mode_ctrl::@22: scope:[mode_ctrl] from mode_ctrl::@6
[179] (byte~) mode_ctrl::$12 ← (byte) keyboard_key_pressed::return#17
[180] if((byte~) mode_ctrl::$12==(byte) 0) goto mode_ctrl::@7
to:mode_ctrl::@14
mode_ctrl::@14: scope:[mode_ctrl] from mode_ctrl::@22
[181] (byte) mode_ctrl::ctrl#3 ← (byte) mode_ctrl::ctrl#10 | (const byte) DTV_OVERSCAN#0
to:mode_ctrl::@7
mode_ctrl::@7: scope:[mode_ctrl] from mode_ctrl::@14 mode_ctrl::@22
[182] (byte) mode_ctrl::ctrl#11 ← phi( mode_ctrl::@14/(byte) mode_ctrl::ctrl#3 mode_ctrl::@22/(byte) mode_ctrl::ctrl#10 )
[183] call keyboard_key_pressed
[184] (byte) keyboard_key_pressed::return#18 ← (byte) keyboard_key_pressed::return#0
to:mode_ctrl::@23
mode_ctrl::@23: scope:[mode_ctrl] from mode_ctrl::@7
[185] (byte~) mode_ctrl::$16 ← (byte) keyboard_key_pressed::return#18
[186] if((byte~) mode_ctrl::$16==(byte) 0) goto mode_ctrl::@8
to:mode_ctrl::@15
mode_ctrl::@15: scope:[mode_ctrl] from mode_ctrl::@23
[187] (byte) mode_ctrl::ctrl#4 ← (byte) mode_ctrl::ctrl#11 | (const byte) DTV_BORDER_OFF#0
to:mode_ctrl::@8
mode_ctrl::@8: scope:[mode_ctrl] from mode_ctrl::@15 mode_ctrl::@23
[188] (byte) mode_ctrl::ctrl#12 ← phi( mode_ctrl::@15/(byte) mode_ctrl::ctrl#4 mode_ctrl::@23/(byte) mode_ctrl::ctrl#11 )
[189] call keyboard_key_pressed
[190] (byte) keyboard_key_pressed::return#19 ← (byte) keyboard_key_pressed::return#0
to:mode_ctrl::@24
mode_ctrl::@24: scope:[mode_ctrl] from mode_ctrl::@8
[191] (byte~) mode_ctrl::$20 ← (byte) keyboard_key_pressed::return#19
[192] if((byte~) mode_ctrl::$20==(byte) 0) goto mode_ctrl::@9
to:mode_ctrl::@16
mode_ctrl::@16: scope:[mode_ctrl] from mode_ctrl::@24
[193] (byte) mode_ctrl::ctrl#5 ← (byte) mode_ctrl::ctrl#12 | (const byte) DTV_CHUNKY#0
to:mode_ctrl::@9
mode_ctrl::@9: scope:[mode_ctrl] from mode_ctrl::@16 mode_ctrl::@24
[194] (byte) mode_ctrl::ctrl#13 ← phi( mode_ctrl::@16/(byte) mode_ctrl::ctrl#5 mode_ctrl::@24/(byte) mode_ctrl::ctrl#12 )
[195] call keyboard_key_pressed
[196] (byte) keyboard_key_pressed::return#20 ← (byte) keyboard_key_pressed::return#0
to:mode_ctrl::@25
mode_ctrl::@25: scope:[mode_ctrl] from mode_ctrl::@9
[197] (byte~) mode_ctrl::$24 ← (byte) keyboard_key_pressed::return#20
[198] if((byte~) mode_ctrl::$24==(byte) 0) goto mode_ctrl::@10
to:mode_ctrl::@17
mode_ctrl::@17: scope:[mode_ctrl] from mode_ctrl::@25
[199] (byte) mode_ctrl::ctrl#6 ← (byte) mode_ctrl::ctrl#13 | (const byte) DTV_COLORRAM_OFF#0
to:mode_ctrl::@10
mode_ctrl::@10: scope:[mode_ctrl] from mode_ctrl::@17 mode_ctrl::@25
[200] (byte) mode_ctrl::ctrl#22 ← phi( mode_ctrl::@17/(byte) mode_ctrl::ctrl#6 mode_ctrl::@25/(byte) mode_ctrl::ctrl#13 )
[201] call keyboard_key_pressed
[202] (byte) keyboard_key_pressed::return#21 ← (byte) keyboard_key_pressed::return#0
to:mode_ctrl::@26
mode_ctrl::@26: scope:[mode_ctrl] from mode_ctrl::@10
[203] (byte~) mode_ctrl::$28 ← (byte) keyboard_key_pressed::return#21
[204] if((byte~) mode_ctrl::$28==(byte) 0) goto mode_ctrl::@27
to:mode_ctrl::@11
mode_ctrl::@27: scope:[mode_ctrl] from mode_ctrl::@26
[205] phi()
to:mode_ctrl::@11
mode_ctrl::@11: scope:[mode_ctrl] from mode_ctrl::@26 mode_ctrl::@27
[206] (byte) mode_ctrl::ctrl#14 ← phi( mode_ctrl::@26/(byte) 0 mode_ctrl::@27/(byte) mode_ctrl::ctrl#22 )
[207] if((byte) mode_ctrl::ctrl#14==(byte) dtv_control#114) goto mode_ctrl::@1
to:mode_ctrl::@18
mode_ctrl::@18: scope:[mode_ctrl] from mode_ctrl::@11
[208] (byte) dtv_control#17 ← (byte) mode_ctrl::ctrl#14
[209] *((const byte*) DTV_CONTROL#0) ← (byte) mode_ctrl::ctrl#14
[210] *((const byte*) BORDERCOL#0) ← (byte) mode_ctrl::ctrl#14
to:mode_ctrl::@1
keyboard_key_pressed: scope:[keyboard_key_pressed] from menu::@10 menu::@11 menu::@12 menu::@13 menu::@14 menu::@15 menu::@16 menu::@5 menu::@6 menu::@7 menu::@8 menu::@9 mode_ctrl::@10 mode_ctrl::@3 mode_ctrl::@4 mode_ctrl::@5 mode_ctrl::@6 mode_ctrl::@7 mode_ctrl::@8 mode_ctrl::@9
[211] (byte) keyboard_key_pressed::key#20 ← phi( menu::@5/(const byte) KEY_1#0 menu::@6/(const byte) KEY_2#0 menu::@7/(const byte) KEY_3#0 menu::@8/(const byte) KEY_4#0 menu::@9/(const byte) KEY_6#0 menu::@10/(const byte) KEY_7#0 menu::@11/(const byte) KEY_8#0 menu::@12/(const byte) KEY_A#0 menu::@13/(const byte) KEY_B#0 menu::@14/(const byte) KEY_C#0 menu::@15/(const byte) KEY_D#0 menu::@16/(const byte) KEY_E#0 mode_ctrl::@4/(const byte) KEY_L#0 mode_ctrl::@5/(const byte) KEY_H#0 mode_ctrl::@6/(const byte) KEY_O#0 mode_ctrl::@7/(const byte) KEY_B#0 mode_ctrl::@8/(const byte) KEY_U#0 mode_ctrl::@9/(const byte) KEY_C#0 mode_ctrl::@10/(const byte) KEY_0#0 mode_ctrl::@3/(const byte) KEY_SPACE#0 )
[212] (byte) keyboard_key_pressed::colidx#0 ← (byte) keyboard_key_pressed::key#20 & (byte) 7
[213] (byte) keyboard_key_pressed::rowidx#0 ← (byte) keyboard_key_pressed::key#20 >> (byte) 3
[214] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_key_pressed::rowidx#0
[215] call keyboard_matrix_read
[216] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0
to:keyboard_key_pressed::@1
keyboard_key_pressed::@1: scope:[keyboard_key_pressed] from keyboard_key_pressed
[217] (byte~) keyboard_key_pressed::$2 ← (byte) keyboard_matrix_read::return#2
[218] (byte) keyboard_key_pressed::return#0 ← (byte~) keyboard_key_pressed::$2 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#0)
to:keyboard_key_pressed::@return
keyboard_key_pressed::@return: scope:[keyboard_key_pressed] from keyboard_key_pressed::@1
[219] return
to:@return
keyboard_matrix_read: scope:[keyboard_matrix_read] from keyboard_key_pressed
[220] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0)
[221] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0)
to:keyboard_matrix_read::@return
keyboard_matrix_read::@return: scope:[keyboard_matrix_read] from keyboard_matrix_read
[222] return
to:@return
dtvSetCpuBankSegment1: scope:[dtvSetCpuBankSegment1] from mode_8bppchunkybmm::@2 mode_8bppchunkybmm::@6 mode_8bppchunkybmm::@8
[223] (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 ← phi( mode_8bppchunkybmm::@2/(byte)(const dword) mode_8bppchunkybmm::PLANEB#0/(word) $4000 mode_8bppchunkybmm::@6/(byte) dtvSetCpuBankSegment1::cpuBankIdx#1 mode_8bppchunkybmm::@8/(byte)(number) $4000/(number) $4000 )
[224] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ← (byte) dtvSetCpuBankSegment1::cpuBankIdx#3
asm { .byte$32,$dd lda$ff .byte$32,$00 }
to:dtvSetCpuBankSegment1::@return
dtvSetCpuBankSegment1::@return: scope:[dtvSetCpuBankSegment1] from dtvSetCpuBankSegment1
[226] return
to:@return
mode_8bpppixelcell: scope:[mode_8bpppixelcell] from menu::@27
[227] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0
[228] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3
[229] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0
[230] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte) 0
[231] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_8bpppixelcell::PLANEA#0
[232] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte) 0
[233] *((const byte*) DTV_PLANEA_STEP#0) ← (byte) 1
[234] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte) 0
[235] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte) 0
[236] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0
[237] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_8bpppixelcell::PLANEB#0
[238] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte) 0
[239] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 0
[240] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0
[241] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0
[242] *((const byte*) BORDERCOL#0) ← (byte) 0
to:mode_8bpppixelcell::@1
mode_8bpppixelcell::@1: scope:[mode_8bpppixelcell] from mode_8bpppixelcell mode_8bpppixelcell::@1
[243] (byte) mode_8bpppixelcell::i#2 ← phi( mode_8bpppixelcell/(byte) 0 mode_8bpppixelcell::@1/(byte) mode_8bpppixelcell::i#1 )
[244] *((const byte*) DTV_PALETTE#0 + (byte) mode_8bpppixelcell::i#2) ← (byte) mode_8bpppixelcell::i#2
[245] (byte) mode_8bpppixelcell::i#1 ← ++ (byte) mode_8bpppixelcell::i#2
[246] if((byte) mode_8bpppixelcell::i#1!=(byte) $10) goto mode_8bpppixelcell::@1
to:mode_8bpppixelcell::@2
mode_8bpppixelcell::@2: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@1 mode_8bpppixelcell::@4
[247] (byte*) mode_8bpppixelcell::gfxa#3 ← phi( mode_8bpppixelcell::@1/(const byte*) mode_8bpppixelcell::PLANEA#0 mode_8bpppixelcell::@4/(byte*) mode_8bpppixelcell::gfxa#1 )
[247] (byte) mode_8bpppixelcell::ay#4 ← phi( mode_8bpppixelcell::@1/(byte) 0 mode_8bpppixelcell::@4/(byte) mode_8bpppixelcell::ay#1 )
to:mode_8bpppixelcell::@3
mode_8bpppixelcell::@3: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@2 mode_8bpppixelcell::@3
[248] (byte*) mode_8bpppixelcell::gfxa#2 ← phi( mode_8bpppixelcell::@2/(byte*) mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::@3/(byte*) mode_8bpppixelcell::gfxa#1 )
[248] (byte) mode_8bpppixelcell::ax#2 ← phi( mode_8bpppixelcell::@2/(byte) 0 mode_8bpppixelcell::@3/(byte) mode_8bpppixelcell::ax#1 )
[249] (byte~) mode_8bpppixelcell::$14 ← (byte) mode_8bpppixelcell::ay#4 & (byte) $f
[250] (byte~) mode_8bpppixelcell::$15 ← (byte~) mode_8bpppixelcell::$14 << (byte) 4
[251] (byte~) mode_8bpppixelcell::$16 ← (byte) mode_8bpppixelcell::ax#2 & (byte) $f
[252] (byte~) mode_8bpppixelcell::$17 ← (byte~) mode_8bpppixelcell::$15 | (byte~) mode_8bpppixelcell::$16
[253] *((byte*) mode_8bpppixelcell::gfxa#2) ← (byte~) mode_8bpppixelcell::$17
[254] (byte*) mode_8bpppixelcell::gfxa#1 ← ++ (byte*) mode_8bpppixelcell::gfxa#2
[255] (byte) mode_8bpppixelcell::ax#1 ← ++ (byte) mode_8bpppixelcell::ax#2
[256] if((byte) mode_8bpppixelcell::ax#1!=(byte) $28) goto mode_8bpppixelcell::@3
to:mode_8bpppixelcell::@4
mode_8bpppixelcell::@4: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@3
[257] (byte) mode_8bpppixelcell::ay#1 ← ++ (byte) mode_8bpppixelcell::ay#4
[258] if((byte) mode_8bpppixelcell::ay#1!=(byte) $19) goto mode_8bpppixelcell::@2
to:mode_8bpppixelcell::@5
mode_8bpppixelcell::@5: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@4
[259] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_CHARROM#0
to:mode_8bpppixelcell::@6
mode_8bpppixelcell::@6: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@12 mode_8bpppixelcell::@5
[260] (byte) mode_8bpppixelcell::ch#8 ← phi( mode_8bpppixelcell::@12/(byte) mode_8bpppixelcell::ch#1 mode_8bpppixelcell::@5/(byte) 0 )
[260] (byte) mode_8bpppixelcell::col#7 ← phi( mode_8bpppixelcell::@12/(byte) mode_8bpppixelcell::col#1 mode_8bpppixelcell::@5/(byte) 0 )
[260] (byte*) mode_8bpppixelcell::gfxb#7 ← phi( mode_8bpppixelcell::@12/(byte*) mode_8bpppixelcell::gfxb#1 mode_8bpppixelcell::@5/(const byte*) mode_8bpppixelcell::PLANEB#0 )
[260] (byte*) mode_8bpppixelcell::chargen#4 ← phi( mode_8bpppixelcell::@12/(byte*) mode_8bpppixelcell::chargen#1 mode_8bpppixelcell::@5/(const byte*) mode_8bpppixelcell::CHARGEN#0 )
to:mode_8bpppixelcell::@7
mode_8bpppixelcell::@7: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@11 mode_8bpppixelcell::@6
[261] (byte) mode_8bpppixelcell::cr#6 ← phi( mode_8bpppixelcell::@11/(byte) mode_8bpppixelcell::cr#1 mode_8bpppixelcell::@6/(byte) 0 )
[261] (byte) mode_8bpppixelcell::col#5 ← phi( mode_8bpppixelcell::@11/(byte) mode_8bpppixelcell::col#1 mode_8bpppixelcell::@6/(byte) mode_8bpppixelcell::col#7 )
[261] (byte*) mode_8bpppixelcell::gfxb#5 ← phi( mode_8bpppixelcell::@11/(byte*) mode_8bpppixelcell::gfxb#1 mode_8bpppixelcell::@6/(byte*) mode_8bpppixelcell::gfxb#7 )
[261] (byte*) mode_8bpppixelcell::chargen#2 ← phi( mode_8bpppixelcell::@11/(byte*) mode_8bpppixelcell::chargen#1 mode_8bpppixelcell::@6/(byte*) mode_8bpppixelcell::chargen#4 )
[262] (byte) mode_8bpppixelcell::bits#0 ← *((byte*) mode_8bpppixelcell::chargen#2)
[263] (byte*) mode_8bpppixelcell::chargen#1 ← ++ (byte*) mode_8bpppixelcell::chargen#2
to:mode_8bpppixelcell::@8
mode_8bpppixelcell::@8: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@7 mode_8bpppixelcell::@9
[264] (byte) mode_8bpppixelcell::cp#2 ← phi( mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::cp#1 mode_8bpppixelcell::@7/(byte) 0 )
[264] (byte) mode_8bpppixelcell::col#2 ← phi( mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::col#1 mode_8bpppixelcell::@7/(byte) mode_8bpppixelcell::col#5 )
[264] (byte*) mode_8bpppixelcell::gfxb#2 ← phi( mode_8bpppixelcell::@9/(byte*) mode_8bpppixelcell::gfxb#1 mode_8bpppixelcell::@7/(byte*) mode_8bpppixelcell::gfxb#5 )
[264] (byte) mode_8bpppixelcell::bits#2 ← phi( mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::bits#1 mode_8bpppixelcell::@7/(byte) mode_8bpppixelcell::bits#0 )
[265] (byte~) mode_8bpppixelcell::$20 ← (byte) mode_8bpppixelcell::bits#2 & (byte) $80
[266] if((byte~) mode_8bpppixelcell::$20==(byte) 0) goto mode_8bpppixelcell::@9
to:mode_8bpppixelcell::@10
mode_8bpppixelcell::@10: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@8
[267] (byte~) mode_8bpppixelcell::c#3 ← (byte) mode_8bpppixelcell::col#2
to:mode_8bpppixelcell::@9
mode_8bpppixelcell::@9: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@10 mode_8bpppixelcell::@8
[268] (byte) mode_8bpppixelcell::c#2 ← phi( mode_8bpppixelcell::@10/(byte~) mode_8bpppixelcell::c#3 mode_8bpppixelcell::@8/(byte) 0 )
[269] *((byte*) mode_8bpppixelcell::gfxb#2) ← (byte) mode_8bpppixelcell::c#2
[270] (byte*) mode_8bpppixelcell::gfxb#1 ← ++ (byte*) mode_8bpppixelcell::gfxb#2
[271] (byte) mode_8bpppixelcell::bits#1 ← (byte) mode_8bpppixelcell::bits#2 << (byte) 1
[272] (byte) mode_8bpppixelcell::col#1 ← ++ (byte) mode_8bpppixelcell::col#2
[273] (byte) mode_8bpppixelcell::cp#1 ← ++ (byte) mode_8bpppixelcell::cp#2
[274] if((byte) mode_8bpppixelcell::cp#1!=(byte) 8) goto mode_8bpppixelcell::@8
to:mode_8bpppixelcell::@11
mode_8bpppixelcell::@11: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@9
[275] (byte) mode_8bpppixelcell::cr#1 ← ++ (byte) mode_8bpppixelcell::cr#6
[276] if((byte) mode_8bpppixelcell::cr#1!=(byte) 8) goto mode_8bpppixelcell::@7
to:mode_8bpppixelcell::@12
mode_8bpppixelcell::@12: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@11
[277] (byte) mode_8bpppixelcell::ch#1 ← ++ (byte) mode_8bpppixelcell::ch#8
[278] if((byte) mode_8bpppixelcell::ch#1!=(byte) 0) goto mode_8bpppixelcell::@6
to:mode_8bpppixelcell::@13
mode_8bpppixelcell::@13: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@12
[279] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0
[280] call mode_ctrl
to:mode_8bpppixelcell::@return
mode_8bpppixelcell::@return: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@13
[281] return
to:@return
mode_sixsfred: scope:[mode_sixsfred] from menu::@26
[282] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0
[283] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3
[284] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0
[285] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte) 0
[286] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_sixsfred::PLANEA#0
[287] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte) 0
[288] *((const byte*) DTV_PLANEA_STEP#0) ← (byte) 1
[289] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte) 0
[290] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte) 0
[291] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0
[292] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_sixsfred::PLANEB#0
[293] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte) 0
[294] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 1
[295] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0
[296] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0
[297] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_sixsfred::COLORS#0/(word) $400
[298] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0
to:mode_sixsfred::@1
mode_sixsfred::@1: scope:[mode_sixsfred] from mode_sixsfred mode_sixsfred::@1
[299] (byte) mode_sixsfred::i#2 ← phi( mode_sixsfred/(byte) 0 mode_sixsfred::@1/(byte) mode_sixsfred::i#1 )
[300] *((const byte*) DTV_PALETTE#0 + (byte) mode_sixsfred::i#2) ← (byte) mode_sixsfred::i#2
[301] (byte) mode_sixsfred::i#1 ← ++ (byte) mode_sixsfred::i#2
[302] if((byte) mode_sixsfred::i#1!=(byte) $10) goto mode_sixsfred::@1
to:mode_sixsfred::@2
mode_sixsfred::@2: scope:[mode_sixsfred] from mode_sixsfred::@1
[303] *((const byte*) BORDERCOL#0) ← (byte) 0
to:mode_sixsfred::@3
mode_sixsfred::@3: scope:[mode_sixsfred] from mode_sixsfred::@2 mode_sixsfred::@5
[304] (byte*) mode_sixsfred::col#3 ← phi( mode_sixsfred::@2/(const byte*) mode_sixsfred::COLORS#0 mode_sixsfred::@5/(byte*) mode_sixsfred::col#1 )
[304] (byte) mode_sixsfred::cy#4 ← phi( mode_sixsfred::@2/(byte) 0 mode_sixsfred::@5/(byte) mode_sixsfred::cy#1 )
to:mode_sixsfred::@4
mode_sixsfred::@4: scope:[mode_sixsfred] from mode_sixsfred::@3 mode_sixsfred::@4
[305] (byte*) mode_sixsfred::col#2 ← phi( mode_sixsfred::@3/(byte*) mode_sixsfred::col#3 mode_sixsfred::@4/(byte*) mode_sixsfred::col#1 )
[305] (byte) mode_sixsfred::cx#2 ← phi( mode_sixsfred::@3/(byte) 0 mode_sixsfred::@4/(byte) mode_sixsfred::cx#1 )
[306] (byte~) mode_sixsfred::$17 ← (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#4
[307] (byte~) mode_sixsfred::$18 ← (byte~) mode_sixsfred::$17 & (byte) $f
[308] *((byte*) mode_sixsfred::col#2) ← (byte~) mode_sixsfred::$18
[309] (byte*) mode_sixsfred::col#1 ← ++ (byte*) mode_sixsfred::col#2
[310] (byte) mode_sixsfred::cx#1 ← ++ (byte) mode_sixsfred::cx#2
[311] if((byte) mode_sixsfred::cx#1!=(byte) $28) goto mode_sixsfred::@4
to:mode_sixsfred::@5
mode_sixsfred::@5: scope:[mode_sixsfred] from mode_sixsfred::@4
[312] (byte) mode_sixsfred::cy#1 ← ++ (byte) mode_sixsfred::cy#4
[313] if((byte) mode_sixsfred::cy#1!=(byte) $19) goto mode_sixsfred::@3
to:mode_sixsfred::@6
mode_sixsfred::@6: scope:[mode_sixsfred] from mode_sixsfred::@5 mode_sixsfred::@8
[314] (byte*) mode_sixsfred::gfxa#3 ← phi( mode_sixsfred::@5/(const byte*) mode_sixsfred::PLANEA#0 mode_sixsfred::@8/(byte*) mode_sixsfred::gfxa#1 )
[314] (byte) mode_sixsfred::ay#4 ← phi( mode_sixsfred::@5/(byte) 0 mode_sixsfred::@8/(byte) mode_sixsfred::ay#1 )
to:mode_sixsfred::@7
mode_sixsfred::@7: scope:[mode_sixsfred] from mode_sixsfred::@6 mode_sixsfred::@7
[315] (byte) mode_sixsfred::ax#2 ← phi( mode_sixsfred::@6/(byte) 0 mode_sixsfred::@7/(byte) mode_sixsfred::ax#1 )
[315] (byte*) mode_sixsfred::gfxa#2 ← phi( mode_sixsfred::@6/(byte*) mode_sixsfred::gfxa#3 mode_sixsfred::@7/(byte*) mode_sixsfred::gfxa#1 )
[316] (byte~) mode_sixsfred::$21 ← (byte) mode_sixsfred::ay#4 >> (byte) 1
[317] (byte) mode_sixsfred::row#0 ← (byte~) mode_sixsfred::$21 & (byte) 3
[318] *((byte*) mode_sixsfred::gfxa#2) ← *((const byte[]) mode_sixsfred::row_bitmask#0 + (byte) mode_sixsfred::row#0)
[319] (byte*) mode_sixsfred::gfxa#1 ← ++ (byte*) mode_sixsfred::gfxa#2
[320] (byte) mode_sixsfred::ax#1 ← ++ (byte) mode_sixsfred::ax#2
[321] if((byte) mode_sixsfred::ax#1!=(byte) $28) goto mode_sixsfred::@7
to:mode_sixsfred::@8
mode_sixsfred::@8: scope:[mode_sixsfred] from mode_sixsfred::@7
[322] (byte) mode_sixsfred::ay#1 ← ++ (byte) mode_sixsfred::ay#4
[323] if((byte) mode_sixsfred::ay#1!=(byte) $c8) goto mode_sixsfred::@6
to:mode_sixsfred::@9
mode_sixsfred::@9: scope:[mode_sixsfred] from mode_sixsfred::@11 mode_sixsfred::@8
[324] (byte) mode_sixsfred::by#4 ← phi( mode_sixsfred::@8/(byte) 0 mode_sixsfred::@11/(byte) mode_sixsfred::by#1 )
[324] (byte*) mode_sixsfred::gfxb#3 ← phi( mode_sixsfred::@8/(const byte*) mode_sixsfred::PLANEB#0 mode_sixsfred::@11/(byte*) mode_sixsfred::gfxb#1 )
to:mode_sixsfred::@10
mode_sixsfred::@10: scope:[mode_sixsfred] from mode_sixsfred::@10 mode_sixsfred::@9
[325] (byte) mode_sixsfred::bx#2 ← phi( mode_sixsfred::@9/(byte) 0 mode_sixsfred::@10/(byte) mode_sixsfred::bx#1 )
[325] (byte*) mode_sixsfred::gfxb#2 ← phi( mode_sixsfred::@9/(byte*) mode_sixsfred::gfxb#3 mode_sixsfred::@10/(byte*) mode_sixsfred::gfxb#1 )
[326] *((byte*) mode_sixsfred::gfxb#2) ← (byte) $1b
[327] (byte*) mode_sixsfred::gfxb#1 ← ++ (byte*) mode_sixsfred::gfxb#2
[328] (byte) mode_sixsfred::bx#1 ← ++ (byte) mode_sixsfred::bx#2
[329] if((byte) mode_sixsfred::bx#1!=(byte) $28) goto mode_sixsfred::@10
to:mode_sixsfred::@11
mode_sixsfred::@11: scope:[mode_sixsfred] from mode_sixsfred::@10
[330] (byte) mode_sixsfred::by#1 ← ++ (byte) mode_sixsfred::by#4
[331] if((byte) mode_sixsfred::by#1!=(byte) $c8) goto mode_sixsfred::@9
to:mode_sixsfred::@12
mode_sixsfred::@12: scope:[mode_sixsfred] from mode_sixsfred::@11
[332] phi()
[333] call mode_ctrl
to:mode_sixsfred::@return
mode_sixsfred::@return: scope:[mode_sixsfred] from mode_sixsfred::@12
[334] return
to:@return
mode_twoplanebitmap: scope:[mode_twoplanebitmap] from menu::@25
[335] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0
[336] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3
[337] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0
[338] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte) 0
[339] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_twoplanebitmap::PLANEA#0
[340] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte) 0
[341] *((const byte*) DTV_PLANEA_STEP#0) ← (byte) 1
[342] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte) 0
[343] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte) 0
[344] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0
[345] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_twoplanebitmap::PLANEB#0
[346] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte) 0
[347] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 1
[348] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0
[349] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0
[350] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_twoplanebitmap::COLORS#0/(word) $400
[351] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0
to:mode_twoplanebitmap::@1
mode_twoplanebitmap::@1: scope:[mode_twoplanebitmap] from mode_twoplanebitmap mode_twoplanebitmap::@1
[352] (byte) mode_twoplanebitmap::i#2 ← phi( mode_twoplanebitmap/(byte) 0 mode_twoplanebitmap::@1/(byte) mode_twoplanebitmap::i#1 )
[353] *((const byte*) DTV_PALETTE#0 + (byte) mode_twoplanebitmap::i#2) ← (byte) mode_twoplanebitmap::i#2
[354] (byte) mode_twoplanebitmap::i#1 ← ++ (byte) mode_twoplanebitmap::i#2
[355] if((byte) mode_twoplanebitmap::i#1!=(byte) $10) goto mode_twoplanebitmap::@1
to:mode_twoplanebitmap::@2
mode_twoplanebitmap::@2: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@1
[356] *((const byte*) BORDERCOL#0) ← (byte) 0
[357] *((const byte*) BGCOL1#0) ← (byte) $70
[358] *((const byte*) BGCOL2#0) ← (byte) $d4
to:mode_twoplanebitmap::@3
mode_twoplanebitmap::@3: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@2 mode_twoplanebitmap::@5
[359] (byte*) mode_twoplanebitmap::col#3 ← phi( mode_twoplanebitmap::@2/(const byte*) mode_twoplanebitmap::COLORS#0 mode_twoplanebitmap::@5/(byte*) mode_twoplanebitmap::col#1 )
[359] (byte) mode_twoplanebitmap::cy#4 ← phi( mode_twoplanebitmap::@2/(byte) 0 mode_twoplanebitmap::@5/(byte) mode_twoplanebitmap::cy#1 )
to:mode_twoplanebitmap::@4
mode_twoplanebitmap::@4: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@3 mode_twoplanebitmap::@4
[360] (byte*) mode_twoplanebitmap::col#2 ← phi( mode_twoplanebitmap::@3/(byte*) mode_twoplanebitmap::col#3 mode_twoplanebitmap::@4/(byte*) mode_twoplanebitmap::col#1 )
[360] (byte) mode_twoplanebitmap::cx#2 ← phi( mode_twoplanebitmap::@3/(byte) 0 mode_twoplanebitmap::@4/(byte) mode_twoplanebitmap::cx#1 )
[361] (byte~) mode_twoplanebitmap::$16 ← (byte) mode_twoplanebitmap::cy#4 & (byte) $f
[362] (byte~) mode_twoplanebitmap::$17 ← (byte~) mode_twoplanebitmap::$16 << (byte) 4
[363] (byte~) mode_twoplanebitmap::$18 ← (byte) mode_twoplanebitmap::cx#2 & (byte) $f
[364] (byte~) mode_twoplanebitmap::$19 ← (byte~) mode_twoplanebitmap::$17 | (byte~) mode_twoplanebitmap::$18
[365] *((byte*) mode_twoplanebitmap::col#2) ← (byte~) mode_twoplanebitmap::$19
[366] (byte*) mode_twoplanebitmap::col#1 ← ++ (byte*) mode_twoplanebitmap::col#2
[367] (byte) mode_twoplanebitmap::cx#1 ← ++ (byte) mode_twoplanebitmap::cx#2
[368] if((byte) mode_twoplanebitmap::cx#1!=(byte) $28) goto mode_twoplanebitmap::@4
to:mode_twoplanebitmap::@5
mode_twoplanebitmap::@5: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@4
[369] (byte) mode_twoplanebitmap::cy#1 ← ++ (byte) mode_twoplanebitmap::cy#4
[370] if((byte) mode_twoplanebitmap::cy#1!=(byte) $19) goto mode_twoplanebitmap::@3
to:mode_twoplanebitmap::@6
mode_twoplanebitmap::@6: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@11 mode_twoplanebitmap::@5
[371] (byte*) mode_twoplanebitmap::gfxa#7 ← phi( mode_twoplanebitmap::@11/(byte*) mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::@5/(const byte*) mode_twoplanebitmap::PLANEA#0 )
[371] (byte) mode_twoplanebitmap::ay#5 ← phi( mode_twoplanebitmap::@11/(byte) mode_twoplanebitmap::ay#1 mode_twoplanebitmap::@5/(byte) 0 )
to:mode_twoplanebitmap::@7
mode_twoplanebitmap::@7: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@6 mode_twoplanebitmap::@9
[372] (byte) mode_twoplanebitmap::ax#2 ← phi( mode_twoplanebitmap::@9/(byte) mode_twoplanebitmap::ax#1 mode_twoplanebitmap::@6/(byte) 0 )
[372] (byte*) mode_twoplanebitmap::gfxa#3 ← phi( mode_twoplanebitmap::@9/(byte*) mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::@6/(byte*) mode_twoplanebitmap::gfxa#7 )
[373] (byte~) mode_twoplanebitmap::$22 ← (byte) mode_twoplanebitmap::ay#5 & (byte) 4
[374] if((byte~) mode_twoplanebitmap::$22==(byte) 0) goto mode_twoplanebitmap::@8
to:mode_twoplanebitmap::@10
mode_twoplanebitmap::@10: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@7
[375] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte) $ff
[376] (byte*) mode_twoplanebitmap::gfxa#2 ← ++ (byte*) mode_twoplanebitmap::gfxa#3
to:mode_twoplanebitmap::@9
mode_twoplanebitmap::@9: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@10 mode_twoplanebitmap::@8
[377] (byte*) mode_twoplanebitmap::gfxa#6 ← phi( mode_twoplanebitmap::@10/(byte*) mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::@8/(byte*) mode_twoplanebitmap::gfxa#1 )
[378] (byte) mode_twoplanebitmap::ax#1 ← ++ (byte) mode_twoplanebitmap::ax#2
[379] if((byte) mode_twoplanebitmap::ax#1!=(byte) $28) goto mode_twoplanebitmap::@7
to:mode_twoplanebitmap::@11
mode_twoplanebitmap::@11: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@9
[380] (byte) mode_twoplanebitmap::ay#1 ← ++ (byte) mode_twoplanebitmap::ay#5
[381] if((byte) mode_twoplanebitmap::ay#1!=(byte) $c8) goto mode_twoplanebitmap::@6
to:mode_twoplanebitmap::@12
mode_twoplanebitmap::@12: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@11 mode_twoplanebitmap::@14
[382] (byte) mode_twoplanebitmap::by#4 ← phi( mode_twoplanebitmap::@11/(byte) 0 mode_twoplanebitmap::@14/(byte) mode_twoplanebitmap::by#1 )
[382] (byte*) mode_twoplanebitmap::gfxb#3 ← phi( mode_twoplanebitmap::@11/(const byte*) mode_twoplanebitmap::PLANEB#0 mode_twoplanebitmap::@14/(byte*) mode_twoplanebitmap::gfxb#1 )
to:mode_twoplanebitmap::@13
mode_twoplanebitmap::@13: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@12 mode_twoplanebitmap::@13
[383] (byte) mode_twoplanebitmap::bx#2 ← phi( mode_twoplanebitmap::@12/(byte) 0 mode_twoplanebitmap::@13/(byte) mode_twoplanebitmap::bx#1 )
[383] (byte*) mode_twoplanebitmap::gfxb#2 ← phi( mode_twoplanebitmap::@12/(byte*) mode_twoplanebitmap::gfxb#3 mode_twoplanebitmap::@13/(byte*) mode_twoplanebitmap::gfxb#1 )
[384] *((byte*) mode_twoplanebitmap::gfxb#2) ← (byte) $f
[385] (byte*) mode_twoplanebitmap::gfxb#1 ← ++ (byte*) mode_twoplanebitmap::gfxb#2
[386] (byte) mode_twoplanebitmap::bx#1 ← ++ (byte) mode_twoplanebitmap::bx#2
[387] if((byte) mode_twoplanebitmap::bx#1!=(byte) $28) goto mode_twoplanebitmap::@13
to:mode_twoplanebitmap::@14
mode_twoplanebitmap::@14: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@13
[388] (byte) mode_twoplanebitmap::by#1 ← ++ (byte) mode_twoplanebitmap::by#4
[389] if((byte) mode_twoplanebitmap::by#1!=(byte) $c8) goto mode_twoplanebitmap::@12
to:mode_twoplanebitmap::@15
mode_twoplanebitmap::@15: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@14
[390] phi()
[391] call mode_ctrl
to:mode_twoplanebitmap::@return
mode_twoplanebitmap::@return: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@15
[392] return
to:@return
mode_twoplanebitmap::@8: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@7
[393] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte) 0
[394] (byte*) mode_twoplanebitmap::gfxa#1 ← ++ (byte*) mode_twoplanebitmap::gfxa#3
to:mode_twoplanebitmap::@9
mode_sixsfred2: scope:[mode_sixsfred2] from menu::@24
[395] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_LINEAR#0
[396] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3
[397] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0
[398] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte) 0
[399] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_sixsfred2::PLANEA#0
[400] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte) 0
[401] *((const byte*) DTV_PLANEA_STEP#0) ← (byte) 1
[402] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte) 0
[403] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte) 0
[404] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0
[405] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_sixsfred2::PLANEB#0
[406] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte) 0
[407] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 1
[408] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0
[409] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0
[410] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_sixsfred2::COLORS#0/(word) $400
[411] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0
to:mode_sixsfred2::@1
mode_sixsfred2::@1: scope:[mode_sixsfred2] from mode_sixsfred2 mode_sixsfred2::@1
[412] (byte) mode_sixsfred2::i#2 ← phi( mode_sixsfred2/(byte) 0 mode_sixsfred2::@1/(byte) mode_sixsfred2::i#1 )
[413] *((const byte*) DTV_PALETTE#0 + (byte) mode_sixsfred2::i#2) ← (byte) mode_sixsfred2::i#2
[414] (byte) mode_sixsfred2::i#1 ← ++ (byte) mode_sixsfred2::i#2
[415] if((byte) mode_sixsfred2::i#1!=(byte) $10) goto mode_sixsfred2::@1
to:mode_sixsfred2::@2
mode_sixsfred2::@2: scope:[mode_sixsfred2] from mode_sixsfred2::@1
[416] *((const byte*) BORDERCOL#0) ← (byte) 0
to:mode_sixsfred2::@3
mode_sixsfred2::@3: scope:[mode_sixsfred2] from mode_sixsfred2::@2 mode_sixsfred2::@5
[417] (byte*) mode_sixsfred2::col#3 ← phi( mode_sixsfred2::@2/(const byte*) mode_sixsfred2::COLORS#0 mode_sixsfred2::@5/(byte*) mode_sixsfred2::col#1 )
[417] (byte) mode_sixsfred2::cy#4 ← phi( mode_sixsfred2::@2/(byte) 0 mode_sixsfred2::@5/(byte) mode_sixsfred2::cy#1 )
to:mode_sixsfred2::@4
mode_sixsfred2::@4: scope:[mode_sixsfred2] from mode_sixsfred2::@3 mode_sixsfred2::@4
[418] (byte*) mode_sixsfred2::col#2 ← phi( mode_sixsfred2::@3/(byte*) mode_sixsfred2::col#3 mode_sixsfred2::@4/(byte*) mode_sixsfred2::col#1 )
[418] (byte) mode_sixsfred2::cx#2 ← phi( mode_sixsfred2::@3/(byte) 0 mode_sixsfred2::@4/(byte) mode_sixsfred2::cx#1 )
[419] (byte~) mode_sixsfred2::$15 ← (byte) mode_sixsfred2::cx#2 & (byte) 3
[420] (byte~) mode_sixsfred2::$16 ← (byte~) mode_sixsfred2::$15 << (byte) 4
[421] (byte~) mode_sixsfred2::$17 ← (byte) mode_sixsfred2::cy#4 & (byte) 3
[422] (byte~) mode_sixsfred2::$18 ← (byte~) mode_sixsfred2::$16 | (byte~) mode_sixsfred2::$17
[423] *((byte*) mode_sixsfred2::col#2) ← (byte~) mode_sixsfred2::$18
[424] (byte*) mode_sixsfred2::col#1 ← ++ (byte*) mode_sixsfred2::col#2
[425] (byte) mode_sixsfred2::cx#1 ← ++ (byte) mode_sixsfred2::cx#2
[426] if((byte) mode_sixsfred2::cx#1!=(byte) $28) goto mode_sixsfred2::@4
to:mode_sixsfred2::@5
mode_sixsfred2::@5: scope:[mode_sixsfred2] from mode_sixsfred2::@4
[427] (byte) mode_sixsfred2::cy#1 ← ++ (byte) mode_sixsfred2::cy#4
[428] if((byte) mode_sixsfred2::cy#1!=(byte) $19) goto mode_sixsfred2::@3
to:mode_sixsfred2::@6
mode_sixsfred2::@6: scope:[mode_sixsfred2] from mode_sixsfred2::@5 mode_sixsfred2::@8
[429] (byte*) mode_sixsfred2::gfxa#3 ← phi( mode_sixsfred2::@5/(const byte*) mode_sixsfred2::PLANEA#0 mode_sixsfred2::@8/(byte*) mode_sixsfred2::gfxa#1 )
[429] (byte) mode_sixsfred2::ay#4 ← phi( mode_sixsfred2::@5/(byte) 0 mode_sixsfred2::@8/(byte) mode_sixsfred2::ay#1 )
to:mode_sixsfred2::@7
mode_sixsfred2::@7: scope:[mode_sixsfred2] from mode_sixsfred2::@6 mode_sixsfred2::@7
[430] (byte) mode_sixsfred2::ax#2 ← phi( mode_sixsfred2::@6/(byte) 0 mode_sixsfred2::@7/(byte) mode_sixsfred2::ax#1 )
[430] (byte*) mode_sixsfred2::gfxa#2 ← phi( mode_sixsfred2::@6/(byte*) mode_sixsfred2::gfxa#3 mode_sixsfred2::@7/(byte*) mode_sixsfred2::gfxa#1 )
[431] (byte~) mode_sixsfred2::$21 ← (byte) mode_sixsfred2::ay#4 >> (byte) 1
[432] (byte) mode_sixsfred2::row#0 ← (byte~) mode_sixsfred2::$21 & (byte) 3
[433] *((byte*) mode_sixsfred2::gfxa#2) ← *((const byte[]) mode_sixsfred2::row_bitmask#0 + (byte) mode_sixsfred2::row#0)
[434] (byte*) mode_sixsfred2::gfxa#1 ← ++ (byte*) mode_sixsfred2::gfxa#2
[435] (byte) mode_sixsfred2::ax#1 ← ++ (byte) mode_sixsfred2::ax#2
[436] if((byte) mode_sixsfred2::ax#1!=(byte) $28) goto mode_sixsfred2::@7
to:mode_sixsfred2::@8
mode_sixsfred2::@8: scope:[mode_sixsfred2] from mode_sixsfred2::@7
[437] (byte) mode_sixsfred2::ay#1 ← ++ (byte) mode_sixsfred2::ay#4
[438] if((byte) mode_sixsfred2::ay#1!=(byte) $c8) goto mode_sixsfred2::@6
to:mode_sixsfred2::@9
mode_sixsfred2::@9: scope:[mode_sixsfred2] from mode_sixsfred2::@11 mode_sixsfred2::@8
[439] (byte) mode_sixsfred2::by#4 ← phi( mode_sixsfred2::@8/(byte) 0 mode_sixsfred2::@11/(byte) mode_sixsfred2::by#1 )
[439] (byte*) mode_sixsfred2::gfxb#3 ← phi( mode_sixsfred2::@8/(const byte*) mode_sixsfred2::PLANEB#0 mode_sixsfred2::@11/(byte*) mode_sixsfred2::gfxb#1 )
to:mode_sixsfred2::@10
mode_sixsfred2::@10: scope:[mode_sixsfred2] from mode_sixsfred2::@10 mode_sixsfred2::@9
[440] (byte) mode_sixsfred2::bx#2 ← phi( mode_sixsfred2::@9/(byte) 0 mode_sixsfred2::@10/(byte) mode_sixsfred2::bx#1 )
[440] (byte*) mode_sixsfred2::gfxb#2 ← phi( mode_sixsfred2::@9/(byte*) mode_sixsfred2::gfxb#3 mode_sixsfred2::@10/(byte*) mode_sixsfred2::gfxb#1 )
[441] *((byte*) mode_sixsfred2::gfxb#2) ← (byte) $1b
[442] (byte*) mode_sixsfred2::gfxb#1 ← ++ (byte*) mode_sixsfred2::gfxb#2
[443] (byte) mode_sixsfred2::bx#1 ← ++ (byte) mode_sixsfred2::bx#2
[444] if((byte) mode_sixsfred2::bx#1!=(byte) $28) goto mode_sixsfred2::@10
to:mode_sixsfred2::@11
mode_sixsfred2::@11: scope:[mode_sixsfred2] from mode_sixsfred2::@10
[445] (byte) mode_sixsfred2::by#1 ← ++ (byte) mode_sixsfred2::by#4
[446] if((byte) mode_sixsfred2::by#1!=(byte) $c8) goto mode_sixsfred2::@9
to:mode_sixsfred2::@12
mode_sixsfred2::@12: scope:[mode_sixsfred2] from mode_sixsfred2::@11
[447] phi()
[448] call mode_ctrl
to:mode_sixsfred2::@return
mode_sixsfred2::@return: scope:[mode_sixsfred2] from mode_sixsfred2::@12
[449] return
to:@return
mode_hicolmcchar: scope:[mode_hicolmcchar] from menu::@23
[450] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0
[451] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const byte*) mode_hicolmcchar::COLORS#0/(word) $400
[452] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0
[453] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0
[454] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3
[455] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_hicolmcchar::CHARSET#0/(word) $4000
[456] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3
[457] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0
[458] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_hicolmcchar::CHARSET#0&(word) $3fff/(word) $400
to:mode_hicolmcchar::@1
mode_hicolmcchar::@1: scope:[mode_hicolmcchar] from mode_hicolmcchar mode_hicolmcchar::@1
[459] (byte) mode_hicolmcchar::i#2 ← phi( mode_hicolmcchar/(byte) 0 mode_hicolmcchar::@1/(byte) mode_hicolmcchar::i#1 )
[460] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolmcchar::i#2) ← (byte) mode_hicolmcchar::i#2
[461] (byte) mode_hicolmcchar::i#1 ← ++ (byte) mode_hicolmcchar::i#2
[462] if((byte) mode_hicolmcchar::i#1!=(byte) $10) goto mode_hicolmcchar::@1
to:mode_hicolmcchar::@2
mode_hicolmcchar::@2: scope:[mode_hicolmcchar] from mode_hicolmcchar::@1
[463] *((const byte*) BORDERCOL#0) ← (byte) 0
[464] *((const byte*) BGCOL1#0) ← (byte) $50
[465] *((const byte*) BGCOL2#0) ← (byte) $54
[466] *((const byte*) BGCOL3#0) ← (byte) $58
to:mode_hicolmcchar::@3
mode_hicolmcchar::@3: scope:[mode_hicolmcchar] from mode_hicolmcchar::@2 mode_hicolmcchar::@5
[467] (byte*) mode_hicolmcchar::ch#3 ← phi( mode_hicolmcchar::@2/(const byte*) mode_hicolmcchar::SCREEN#0 mode_hicolmcchar::@5/(byte*) mode_hicolmcchar::ch#1 )
[467] (byte*) mode_hicolmcchar::col#3 ← phi( mode_hicolmcchar::@2/(const byte*) mode_hicolmcchar::COLORS#0 mode_hicolmcchar::@5/(byte*) mode_hicolmcchar::col#1 )
[467] (byte) mode_hicolmcchar::cy#4 ← phi( mode_hicolmcchar::@2/(byte) 0 mode_hicolmcchar::@5/(byte) mode_hicolmcchar::cy#1 )
to:mode_hicolmcchar::@4
mode_hicolmcchar::@4: scope:[mode_hicolmcchar] from mode_hicolmcchar::@3 mode_hicolmcchar::@4
[468] (byte*) mode_hicolmcchar::ch#2 ← phi( mode_hicolmcchar::@3/(byte*) mode_hicolmcchar::ch#3 mode_hicolmcchar::@4/(byte*) mode_hicolmcchar::ch#1 )
[468] (byte*) mode_hicolmcchar::col#2 ← phi( mode_hicolmcchar::@3/(byte*) mode_hicolmcchar::col#3 mode_hicolmcchar::@4/(byte*) mode_hicolmcchar::col#1 )
[468] (byte) mode_hicolmcchar::cx#2 ← phi( mode_hicolmcchar::@3/(byte) 0 mode_hicolmcchar::@4/(byte) mode_hicolmcchar::cx#1 )
[469] (byte~) mode_hicolmcchar::$26 ← (byte) mode_hicolmcchar::cy#4 & (byte) $f
[470] (byte~) mode_hicolmcchar::$27 ← (byte~) mode_hicolmcchar::$26 << (byte) 4
[471] (byte~) mode_hicolmcchar::$28 ← (byte) mode_hicolmcchar::cx#2 & (byte) $f
[472] (byte) mode_hicolmcchar::v#0 ← (byte~) mode_hicolmcchar::$27 | (byte~) mode_hicolmcchar::$28
[473] *((byte*) mode_hicolmcchar::col#2) ← (byte) mode_hicolmcchar::v#0
[474] (byte*) mode_hicolmcchar::col#1 ← ++ (byte*) mode_hicolmcchar::col#2
[475] *((byte*) mode_hicolmcchar::ch#2) ← (byte) mode_hicolmcchar::v#0
[476] (byte*) mode_hicolmcchar::ch#1 ← ++ (byte*) mode_hicolmcchar::ch#2
[477] (byte) mode_hicolmcchar::cx#1 ← ++ (byte) mode_hicolmcchar::cx#2
[478] if((byte) mode_hicolmcchar::cx#1!=(byte) $28) goto mode_hicolmcchar::@4
to:mode_hicolmcchar::@5
mode_hicolmcchar::@5: scope:[mode_hicolmcchar] from mode_hicolmcchar::@4
[479] (byte) mode_hicolmcchar::cy#1 ← ++ (byte) mode_hicolmcchar::cy#4
[480] if((byte) mode_hicolmcchar::cy#1!=(byte) $19) goto mode_hicolmcchar::@3
to:mode_hicolmcchar::@6
mode_hicolmcchar::@6: scope:[mode_hicolmcchar] from mode_hicolmcchar::@5
[481] phi()
[482] call mode_ctrl
to:mode_hicolmcchar::@return
mode_hicolmcchar::@return: scope:[mode_hicolmcchar] from mode_hicolmcchar::@6
[483] return
to:@return
mode_hicolecmchar: scope:[mode_hicolecmchar] from menu::@22
[484] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0
[485] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const byte*) mode_hicolecmchar::COLORS#0/(word) $400
[486] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0
[487] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0
[488] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3
[489] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_hicolecmchar::CHARSET#0/(word) $4000
[490] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte) 3
[491] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0
[492] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_hicolecmchar::CHARSET#0&(word) $3fff/(word) $400
to:mode_hicolecmchar::@1
mode_hicolecmchar::@1: scope:[mode_hicolecmchar] from mode_hicolecmchar mode_hicolecmchar::@1
[493] (byte) mode_hicolecmchar::i#2 ← phi( mode_hicolecmchar/(byte) 0 mode_hicolecmchar::@1/(byte) mode_hicolecmchar::i#1 )
[494] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolecmchar::i#2) ← (byte) mode_hicolecmchar::i#2
[495] (byte) mode_hicolecmchar::i#1 ← ++ (byte) mode_hicolecmchar::i#2
[496] if((byte) mode_hicolecmchar::i#1!=(byte) $10) goto mode_hicolecmchar::@1
to:mode_hicolecmchar::@2
mode_hicolecmchar::@2: scope:[mode_hicolecmchar] from mode_hicolecmchar::@1
[497] *((const byte*) BORDERCOL#0) ← (byte) 0
[498] *((const byte*) BGCOL1#0) ← (byte) $50
[499] *((const byte*) BGCOL2#0) ← (byte) $54
[500] *((const byte*) BGCOL3#0) ← (byte) $58
[501] *((const byte*) BGCOL4#0) ← (byte) $5c
to:mode_hicolecmchar::@3
mode_hicolecmchar::@3: scope:[mode_hicolecmchar] from mode_hicolecmchar::@2 mode_hicolecmchar::@5
[502] (byte*) mode_hicolecmchar::ch#3 ← phi( mode_hicolecmchar::@2/(const byte*) mode_hicolecmchar::SCREEN#0 mode_hicolecmchar::@5/(byte*) mode_hicolecmchar::ch#1 )
[502] (byte*) mode_hicolecmchar::col#3 ← phi( mode_hicolecmchar::@2/(const byte*) mode_hicolecmchar::COLORS#0 mode_hicolecmchar::@5/(byte*) mode_hicolecmchar::col#1 )
[502] (byte) mode_hicolecmchar::cy#4 ← phi( mode_hicolecmchar::@2/(byte) 0 mode_hicolecmchar::@5/(byte) mode_hicolecmchar::cy#1 )
to:mode_hicolecmchar::@4
mode_hicolecmchar::@4: scope:[mode_hicolecmchar] from mode_hicolecmchar::@3 mode_hicolecmchar::@4
[503] (byte*) mode_hicolecmchar::ch#2 ← phi( mode_hicolecmchar::@3/(byte*) mode_hicolecmchar::ch#3 mode_hicolecmchar::@4/(byte*) mode_hicolecmchar::ch#1 )
[503] (byte*) mode_hicolecmchar::col#2 ← phi( mode_hicolecmchar::@3/(byte*) mode_hicolecmchar::col#3 mode_hicolecmchar::@4/(byte*) mode_hicolecmchar::col#1 )
[503] (byte) mode_hicolecmchar::cx#2 ← phi( mode_hicolecmchar::@3/(byte) 0 mode_hicolecmchar::@4/(byte) mode_hicolecmchar::cx#1 )
[504] (byte~) mode_hicolecmchar::$26 ← (byte) mode_hicolecmchar::cy#4 & (byte) $f
[505] (byte~) mode_hicolecmchar::$27 ← (byte~) mode_hicolecmchar::$26 << (byte) 4
[506] (byte~) mode_hicolecmchar::$28 ← (byte) mode_hicolecmchar::cx#2 & (byte) $f
[507] (byte) mode_hicolecmchar::v#0 ← (byte~) mode_hicolecmchar::$27 | (byte~) mode_hicolecmchar::$28
[508] *((byte*) mode_hicolecmchar::col#2) ← (byte) mode_hicolecmchar::v#0
[509] (byte*) mode_hicolecmchar::col#1 ← ++ (byte*) mode_hicolecmchar::col#2
[510] *((byte*) mode_hicolecmchar::ch#2) ← (byte) mode_hicolecmchar::v#0
[511] (byte*) mode_hicolecmchar::ch#1 ← ++ (byte*) mode_hicolecmchar::ch#2
[512] (byte) mode_hicolecmchar::cx#1 ← ++ (byte) mode_hicolecmchar::cx#2
[513] if((byte) mode_hicolecmchar::cx#1!=(byte) $28) goto mode_hicolecmchar::@4
to:mode_hicolecmchar::@5
mode_hicolecmchar::@5: scope:[mode_hicolecmchar] from mode_hicolecmchar::@4
[514] (byte) mode_hicolecmchar::cy#1 ← ++ (byte) mode_hicolecmchar::cy#4
[515] if((byte) mode_hicolecmchar::cy#1!=(byte) $19) goto mode_hicolecmchar::@3
to:mode_hicolecmchar::@6
mode_hicolecmchar::@6: scope:[mode_hicolecmchar] from mode_hicolecmchar::@5
[516] phi()
[517] call mode_ctrl
to:mode_hicolecmchar::@return
mode_hicolecmchar::@return: scope:[mode_hicolecmchar] from mode_hicolecmchar::@6
[518] return
to:@return
mode_hicolstdchar: scope:[mode_hicolstdchar] from menu::@21
[519] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0
[520] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const byte*) mode_hicolstdchar::COLORS#0/(word) $400
[521] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0
[522] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0
[523] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3
[524] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_hicolstdchar::CHARSET#0/(word) $4000
[525] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3
[526] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0
[527] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_hicolstdchar::CHARSET#0&(word) $3fff/(word) $400
to:mode_hicolstdchar::@1
mode_hicolstdchar::@1: scope:[mode_hicolstdchar] from mode_hicolstdchar mode_hicolstdchar::@1
[528] (byte) mode_hicolstdchar::i#2 ← phi( mode_hicolstdchar/(byte) 0 mode_hicolstdchar::@1/(byte) mode_hicolstdchar::i#1 )
[529] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolstdchar::i#2) ← (byte) mode_hicolstdchar::i#2
[530] (byte) mode_hicolstdchar::i#1 ← ++ (byte) mode_hicolstdchar::i#2
[531] if((byte) mode_hicolstdchar::i#1!=(byte) $10) goto mode_hicolstdchar::@1
to:mode_hicolstdchar::@2
mode_hicolstdchar::@2: scope:[mode_hicolstdchar] from mode_hicolstdchar::@1
[532] *((const byte*) BGCOL#0) ← (byte) 0
[533] *((const byte*) BORDERCOL#0) ← (byte) 0
to:mode_hicolstdchar::@3
mode_hicolstdchar::@3: scope:[mode_hicolstdchar] from mode_hicolstdchar::@2 mode_hicolstdchar::@5
[534] (byte*) mode_hicolstdchar::ch#3 ← phi( mode_hicolstdchar::@2/(const byte*) mode_hicolstdchar::SCREEN#0 mode_hicolstdchar::@5/(byte*) mode_hicolstdchar::ch#1 )
[534] (byte*) mode_hicolstdchar::col#3 ← phi( mode_hicolstdchar::@2/(const byte*) mode_hicolstdchar::COLORS#0 mode_hicolstdchar::@5/(byte*) mode_hicolstdchar::col#1 )
[534] (byte) mode_hicolstdchar::cy#4 ← phi( mode_hicolstdchar::@2/(byte) 0 mode_hicolstdchar::@5/(byte) mode_hicolstdchar::cy#1 )
to:mode_hicolstdchar::@4
mode_hicolstdchar::@4: scope:[mode_hicolstdchar] from mode_hicolstdchar::@3 mode_hicolstdchar::@4
[535] (byte*) mode_hicolstdchar::ch#2 ← phi( mode_hicolstdchar::@3/(byte*) mode_hicolstdchar::ch#3 mode_hicolstdchar::@4/(byte*) mode_hicolstdchar::ch#1 )
[535] (byte*) mode_hicolstdchar::col#2 ← phi( mode_hicolstdchar::@3/(byte*) mode_hicolstdchar::col#3 mode_hicolstdchar::@4/(byte*) mode_hicolstdchar::col#1 )
[535] (byte) mode_hicolstdchar::cx#2 ← phi( mode_hicolstdchar::@3/(byte) 0 mode_hicolstdchar::@4/(byte) mode_hicolstdchar::cx#1 )
[536] (byte~) mode_hicolstdchar::$25 ← (byte) mode_hicolstdchar::cy#4 & (byte) $f
[537] (byte~) mode_hicolstdchar::$26 ← (byte~) mode_hicolstdchar::$25 << (byte) 4
[538] (byte~) mode_hicolstdchar::$27 ← (byte) mode_hicolstdchar::cx#2 & (byte) $f
[539] (byte) mode_hicolstdchar::v#0 ← (byte~) mode_hicolstdchar::$26 | (byte~) mode_hicolstdchar::$27
[540] *((byte*) mode_hicolstdchar::col#2) ← (byte) mode_hicolstdchar::v#0
[541] (byte*) mode_hicolstdchar::col#1 ← ++ (byte*) mode_hicolstdchar::col#2
[542] *((byte*) mode_hicolstdchar::ch#2) ← (byte) mode_hicolstdchar::v#0
[543] (byte*) mode_hicolstdchar::ch#1 ← ++ (byte*) mode_hicolstdchar::ch#2
[544] (byte) mode_hicolstdchar::cx#1 ← ++ (byte) mode_hicolstdchar::cx#2
[545] if((byte) mode_hicolstdchar::cx#1!=(byte) $28) goto mode_hicolstdchar::@4
to:mode_hicolstdchar::@5
mode_hicolstdchar::@5: scope:[mode_hicolstdchar] from mode_hicolstdchar::@4
[546] (byte) mode_hicolstdchar::cy#1 ← ++ (byte) mode_hicolstdchar::cy#4
[547] if((byte) mode_hicolstdchar::cy#1!=(byte) $19) goto mode_hicolstdchar::@3
to:mode_hicolstdchar::@6
mode_hicolstdchar::@6: scope:[mode_hicolstdchar] from mode_hicolstdchar::@5
[548] phi()
[549] call mode_ctrl
to:mode_hicolstdchar::@return
mode_hicolstdchar::@return: scope:[mode_hicolstdchar] from mode_hicolstdchar::@6
[550] return
to:@return
mode_stdbitmap: scope:[mode_stdbitmap] from menu::@20
[551] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0
[552] *((const byte*) DTV_CONTROL#0) ← (byte) 0
[553] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3
[554] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_stdbitmap::BITMAP#0/(word) $4000
[555] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3
[556] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0
[557] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_stdbitmap::BITMAP#0&(word) $3fff/(word) $400
to:mode_stdbitmap::@1
mode_stdbitmap::@1: scope:[mode_stdbitmap] from mode_stdbitmap mode_stdbitmap::@1
[558] (byte) mode_stdbitmap::i#2 ← phi( mode_stdbitmap/(byte) 0 mode_stdbitmap::@1/(byte) mode_stdbitmap::i#1 )
[559] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdbitmap::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdbitmap::i#2)
[560] (byte) mode_stdbitmap::i#1 ← ++ (byte) mode_stdbitmap::i#2
[561] if((byte) mode_stdbitmap::i#1!=(byte) $10) goto mode_stdbitmap::@1
to:mode_stdbitmap::@2
mode_stdbitmap::@2: scope:[mode_stdbitmap] from mode_stdbitmap::@1
[562] *((const byte*) BGCOL#0) ← (const byte) BLACK#0
[563] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0
to:mode_stdbitmap::@3
mode_stdbitmap::@3: scope:[mode_stdbitmap] from mode_stdbitmap::@2 mode_stdbitmap::@5
[564] (byte*) mode_stdbitmap::ch#3 ← phi( mode_stdbitmap::@2/(const byte*) mode_stdbitmap::SCREEN#0 mode_stdbitmap::@5/(byte*) mode_stdbitmap::ch#1 )
[564] (byte) mode_stdbitmap::cy#4 ← phi( mode_stdbitmap::@2/(byte) 0 mode_stdbitmap::@5/(byte) mode_stdbitmap::cy#1 )
to:mode_stdbitmap::@4
mode_stdbitmap::@4: scope:[mode_stdbitmap] from mode_stdbitmap::@3 mode_stdbitmap::@4
[565] (byte*) mode_stdbitmap::ch#2 ← phi( mode_stdbitmap::@3/(byte*) mode_stdbitmap::ch#3 mode_stdbitmap::@4/(byte*) mode_stdbitmap::ch#1 )
[565] (byte) mode_stdbitmap::cx#2 ← phi( mode_stdbitmap::@3/(byte) 0 mode_stdbitmap::@4/(byte) mode_stdbitmap::cx#1 )
[566] (byte~) mode_stdbitmap::$22 ← (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#4
[567] (byte) mode_stdbitmap::col#0 ← (byte~) mode_stdbitmap::$22 & (byte) $f
[568] (byte) mode_stdbitmap::col2#0 ← (byte) $f - (byte) mode_stdbitmap::col#0
[569] (byte~) mode_stdbitmap::$25 ← (byte) mode_stdbitmap::col#0 << (byte) 4
[570] (byte~) mode_stdbitmap::$26 ← (byte~) mode_stdbitmap::$25 | (byte) mode_stdbitmap::col2#0
[571] *((byte*) mode_stdbitmap::ch#2) ← (byte~) mode_stdbitmap::$26
[572] (byte*) mode_stdbitmap::ch#1 ← ++ (byte*) mode_stdbitmap::ch#2
[573] (byte) mode_stdbitmap::cx#1 ← ++ (byte) mode_stdbitmap::cx#2
[574] if((byte) mode_stdbitmap::cx#1!=(byte) $28) goto mode_stdbitmap::@4
to:mode_stdbitmap::@5
mode_stdbitmap::@5: scope:[mode_stdbitmap] from mode_stdbitmap::@4
[575] (byte) mode_stdbitmap::cy#1 ← ++ (byte) mode_stdbitmap::cy#4
[576] if((byte) mode_stdbitmap::cy#1!=(byte) $19) goto mode_stdbitmap::@3
to:mode_stdbitmap::@6
mode_stdbitmap::@6: scope:[mode_stdbitmap] from mode_stdbitmap::@5
[577] phi()
[578] call bitmap_init
to:mode_stdbitmap::@10
mode_stdbitmap::@10: scope:[mode_stdbitmap] from mode_stdbitmap::@6
[579] phi()
[580] call bitmap_clear
to:mode_stdbitmap::@7
mode_stdbitmap::@7: scope:[mode_stdbitmap] from mode_stdbitmap::@10 mode_stdbitmap::@11
[581] (byte) mode_stdbitmap::l#2 ← phi( mode_stdbitmap::@10/(byte) 0 mode_stdbitmap::@11/(byte) mode_stdbitmap::l#1 )
[582] if((byte) mode_stdbitmap::l#2<(const byte) mode_stdbitmap::lines_cnt#0) goto mode_stdbitmap::@8
to:mode_stdbitmap::@9
mode_stdbitmap::@9: scope:[mode_stdbitmap] from mode_stdbitmap::@7
[583] phi()
[584] call mode_ctrl
to:mode_stdbitmap::@return
mode_stdbitmap::@return: scope:[mode_stdbitmap] from mode_stdbitmap::@9
[585] return
to:@return
mode_stdbitmap::@8: scope:[mode_stdbitmap] from mode_stdbitmap::@7
[586] (byte) bitmap_line::x0#0 ← *((const byte[]) mode_stdbitmap::lines_x#0 + (byte) mode_stdbitmap::l#2)
[587] (byte) bitmap_line::x1#0 ← *((const byte[]) mode_stdbitmap::lines_x#0+(byte) 1 + (byte) mode_stdbitmap::l#2)
[588] (byte) bitmap_line::y0#0 ← *((const byte[]) mode_stdbitmap::lines_y#0 + (byte) mode_stdbitmap::l#2)
[589] (byte) bitmap_line::y1#0 ← *((const byte[]) mode_stdbitmap::lines_y#0+(byte) 1 + (byte) mode_stdbitmap::l#2)
[590] call bitmap_line
to:mode_stdbitmap::@11
mode_stdbitmap::@11: scope:[mode_stdbitmap] from mode_stdbitmap::@8
[591] (byte) mode_stdbitmap::l#1 ← ++ (byte) mode_stdbitmap::l#2
to:mode_stdbitmap::@7
bitmap_line: scope:[bitmap_line] from mode_stdbitmap::@8
[592] if((byte) bitmap_line::x0#0<(byte) bitmap_line::x1#0) goto bitmap_line::@1
to:bitmap_line::@2
bitmap_line::@2: scope:[bitmap_line] from bitmap_line
[593] (byte) bitmap_line::xd#2 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0
[594] if((byte) bitmap_line::y0#0<(byte) bitmap_line::y1#0) goto bitmap_line::@7
to:bitmap_line::@3
bitmap_line::@3: scope:[bitmap_line] from bitmap_line::@2
[595] (byte) bitmap_line::yd#2 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0
[596] if((byte) bitmap_line::yd#2<(byte) bitmap_line::xd#2) goto bitmap_line::@8
to:bitmap_line::@4
bitmap_line::@4: scope:[bitmap_line] from bitmap_line::@3
[597] (byte) bitmap_line_ydxi::y#0 ← (byte) bitmap_line::y1#0
[598] (byte) bitmap_line_ydxi::x#0 ← (byte) bitmap_line::x1#0
[599] (byte) bitmap_line_ydxi::y1#0 ← (byte) bitmap_line::y0#0
[600] (byte) bitmap_line_ydxi::yd#0 ← (byte) bitmap_line::yd#2
[601] (byte) bitmap_line_ydxi::xd#0 ← (byte) bitmap_line::xd#2
[602] call bitmap_line_ydxi
to:bitmap_line::@return
bitmap_line::@return: scope:[bitmap_line] from bitmap_line::@10 bitmap_line::@12 bitmap_line::@13 bitmap_line::@14 bitmap_line::@4 bitmap_line::@6 bitmap_line::@8 bitmap_line::@9
[603] return
to:@return
bitmap_line::@8: scope:[bitmap_line] from bitmap_line::@3
[604] (byte) bitmap_line_xdyi::x#0 ← (byte) bitmap_line::x1#0
[605] (byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y1#0
[606] (byte) bitmap_line_xdyi::x1#0 ← (byte) bitmap_line::x0#0
[607] (byte) bitmap_line_xdyi::xd#0 ← (byte) bitmap_line::xd#2
[608] (byte) bitmap_line_xdyi::yd#0 ← (byte) bitmap_line::yd#2
[609] call bitmap_line_xdyi
to:bitmap_line::@return
bitmap_line::@7: scope:[bitmap_line] from bitmap_line::@2
[610] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0
[611] if((byte) bitmap_line::yd#1<(byte) bitmap_line::xd#2) goto bitmap_line::@9
to:bitmap_line::@10
bitmap_line::@10: scope:[bitmap_line] from bitmap_line::@7
[612] (byte) bitmap_line_ydxd::y#0 ← (byte) bitmap_line::y0#0
[613] (byte) bitmap_line_ydxd::x#0 ← (byte) bitmap_line::x0#0
[614] (byte) bitmap_line_ydxd::y1#0 ← (byte) bitmap_line::y1#0
[615] (byte) bitmap_line_ydxd::yd#0 ← (byte) bitmap_line::yd#1
[616] (byte) bitmap_line_ydxd::xd#0 ← (byte) bitmap_line::xd#2
[617] call bitmap_line_ydxd
to:bitmap_line::@return
bitmap_line::@9: scope:[bitmap_line] from bitmap_line::@7
[618] (byte) bitmap_line_xdyd::x#0 ← (byte) bitmap_line::x1#0
[619] (byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y1#0
[620] (byte) bitmap_line_xdyd::x1#0 ← (byte) bitmap_line::x0#0
[621] (byte) bitmap_line_xdyd::xd#0 ← (byte) bitmap_line::xd#2
[622] (byte) bitmap_line_xdyd::yd#0 ← (byte) bitmap_line::yd#1
[623] call bitmap_line_xdyd
to:bitmap_line::@return
bitmap_line::@1: scope:[bitmap_line] from bitmap_line
[624] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0
[625] if((byte) bitmap_line::y0#0<(byte) bitmap_line::y1#0) goto bitmap_line::@11
to:bitmap_line::@5
bitmap_line::@5: scope:[bitmap_line] from bitmap_line::@1
[626] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0
[627] if((byte) bitmap_line::yd#10<(byte) bitmap_line::xd#1) goto bitmap_line::@12
to:bitmap_line::@6
bitmap_line::@6: scope:[bitmap_line] from bitmap_line::@5
[628] (byte) bitmap_line_ydxd::y#1 ← (byte) bitmap_line::y1#0
[629] (byte) bitmap_line_ydxd::x#1 ← (byte) bitmap_line::x1#0
[630] (byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y0#0
[631] (byte) bitmap_line_ydxd::yd#1 ← (byte) bitmap_line::yd#10
[632] (byte) bitmap_line_ydxd::xd#1 ← (byte) bitmap_line::xd#1
[633] call bitmap_line_ydxd
to:bitmap_line::@return
bitmap_line::@12: scope:[bitmap_line] from bitmap_line::@5
[634] (byte) bitmap_line_xdyd::x#1 ← (byte) bitmap_line::x0#0
[635] (byte) bitmap_line_xdyd::y#1 ← (byte) bitmap_line::y0#0
[636] (byte) bitmap_line_xdyd::x1#1 ← (byte) bitmap_line::x1#0
[637] (byte) bitmap_line_xdyd::xd#1 ← (byte) bitmap_line::xd#1
[638] (byte) bitmap_line_xdyd::yd#1 ← (byte) bitmap_line::yd#10
[639] call bitmap_line_xdyd
to:bitmap_line::@return
bitmap_line::@11: scope:[bitmap_line] from bitmap_line::@1
[640] (byte) bitmap_line::yd#11 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0
[641] if((byte) bitmap_line::yd#11<(byte) bitmap_line::xd#1) goto bitmap_line::@13
to:bitmap_line::@14
bitmap_line::@14: scope:[bitmap_line] from bitmap_line::@11
[642] (byte) bitmap_line_ydxi::y#1 ← (byte) bitmap_line::y0#0
[643] (byte) bitmap_line_ydxi::x#1 ← (byte) bitmap_line::x0#0
[644] (byte) bitmap_line_ydxi::y1#1 ← (byte) bitmap_line::y1#0
[645] (byte) bitmap_line_ydxi::yd#1 ← (byte) bitmap_line::yd#11
[646] (byte) bitmap_line_ydxi::xd#1 ← (byte) bitmap_line::xd#1
[647] call bitmap_line_ydxi
to:bitmap_line::@return
bitmap_line::@13: scope:[bitmap_line] from bitmap_line::@11
[648] (byte) bitmap_line_xdyi::x#1 ← (byte) bitmap_line::x0#0
[649] (byte) bitmap_line_xdyi::y#1 ← (byte) bitmap_line::y0#0
[650] (byte) bitmap_line_xdyi::x1#1 ← (byte) bitmap_line::x1#0
[651] (byte) bitmap_line_xdyi::xd#1 ← (byte) bitmap_line::xd#1
[652] (byte) bitmap_line_xdyi::yd#1 ← (byte) bitmap_line::yd#11
[653] call bitmap_line_xdyi
to:bitmap_line::@return
bitmap_line_xdyi: scope:[bitmap_line_xdyi] from bitmap_line::@13 bitmap_line::@8
[654] (byte) bitmap_line_xdyi::x1#6 ← phi( bitmap_line::@8/(byte) bitmap_line_xdyi::x1#0 bitmap_line::@13/(byte) bitmap_line_xdyi::x1#1 )
[654] (byte) bitmap_line_xdyi::xd#5 ← phi( bitmap_line::@8/(byte) bitmap_line_xdyi::xd#0 bitmap_line::@13/(byte) bitmap_line_xdyi::xd#1 )
[654] (byte) bitmap_line_xdyi::y#5 ← phi( bitmap_line::@8/(byte) bitmap_line_xdyi::y#0 bitmap_line::@13/(byte) bitmap_line_xdyi::y#1 )
[654] (byte) bitmap_line_xdyi::x#6 ← phi( bitmap_line::@8/(byte) bitmap_line_xdyi::x#0 bitmap_line::@13/(byte) bitmap_line_xdyi::x#1 )
[654] (byte) bitmap_line_xdyi::yd#2 ← phi( bitmap_line::@8/(byte) bitmap_line_xdyi::yd#0 bitmap_line::@13/(byte) bitmap_line_xdyi::yd#1 )
[655] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte) 1
to:bitmap_line_xdyi::@1
bitmap_line_xdyi::@1: scope:[bitmap_line_xdyi] from bitmap_line_xdyi bitmap_line_xdyi::@2
[656] (byte) bitmap_line_xdyi::e#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::e#0 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::e#6 )
[656] (byte) bitmap_line_xdyi::y#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::y#5 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::y#6 )
[656] (byte) bitmap_line_xdyi::x#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::x#6 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::x#2 )
[657] (byte) bitmap_plot::x#0 ← (byte) bitmap_line_xdyi::x#3
[658] (byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3
[659] call bitmap_plot
to:bitmap_line_xdyi::@4
bitmap_line_xdyi::@4: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@1
[660] (byte) bitmap_line_xdyi::x#2 ← ++ (byte) bitmap_line_xdyi::x#3
[661] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2
[662] if((byte) bitmap_line_xdyi::xd#5>=(byte) bitmap_line_xdyi::e#1) goto bitmap_line_xdyi::@2
to:bitmap_line_xdyi::@3
bitmap_line_xdyi::@3: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@4
[663] (byte) bitmap_line_xdyi::y#2 ← ++ (byte) bitmap_line_xdyi::y#3
[664] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5
to:bitmap_line_xdyi::@2
bitmap_line_xdyi::@2: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@3 bitmap_line_xdyi::@4
[665] (byte) bitmap_line_xdyi::e#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::e#2 bitmap_line_xdyi::@4/(byte) bitmap_line_xdyi::e#1 )
[665] (byte) bitmap_line_xdyi::y#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::y#2 bitmap_line_xdyi::@4/(byte) bitmap_line_xdyi::y#3 )
[666] (byte~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#6 + (byte) 1
[667] if((byte) bitmap_line_xdyi::x#2!=(byte~) bitmap_line_xdyi::$6) goto bitmap_line_xdyi::@1
to:bitmap_line_xdyi::@return
bitmap_line_xdyi::@return: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@2
[668] return
to:@return
bitmap_plot: scope:[bitmap_plot] from bitmap_line_xdyd::@1 bitmap_line_xdyi::@1 bitmap_line_ydxd::@1 bitmap_line_ydxi::@1
[669] (byte) bitmap_plot::y#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::y#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::y#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::y#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::y#2 )
[669] (byte) bitmap_plot::x#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::x#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::x#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::x#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::x#2 )
[670] (word) bitmap_plot::plotter_x#0 ← *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4)
[671] (word) bitmap_plot::plotter_y#0 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4)
[672] (word) bitmap_plot::plotter#0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0
[673] (byte~) bitmap_plot::$1 ← *((byte*)(word) bitmap_plot::plotter#0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4)
[674] *((byte*)(word) bitmap_plot::plotter#0) ← (byte~) bitmap_plot::$1
to:bitmap_plot::@return
bitmap_plot::@return: scope:[bitmap_plot] from bitmap_plot
[675] return
to:@return
bitmap_line_ydxi: scope:[bitmap_line_ydxi] from bitmap_line::@14 bitmap_line::@4
[676] (byte) bitmap_line_ydxi::y1#6 ← phi( bitmap_line::@14/(byte) bitmap_line_ydxi::y1#1 bitmap_line::@4/(byte) bitmap_line_ydxi::y1#0 )
[676] (byte) bitmap_line_ydxi::yd#5 ← phi( bitmap_line::@14/(byte) bitmap_line_ydxi::yd#1 bitmap_line::@4/(byte) bitmap_line_ydxi::yd#0 )
[676] (byte) bitmap_line_ydxi::y#6 ← phi( bitmap_line::@14/(byte) bitmap_line_ydxi::y#1 bitmap_line::@4/(byte) bitmap_line_ydxi::y#0 )
[676] (byte) bitmap_line_ydxi::x#5 ← phi( bitmap_line::@14/(byte) bitmap_line_ydxi::x#1 bitmap_line::@4/(byte) bitmap_line_ydxi::x#0 )
[676] (byte) bitmap_line_ydxi::xd#2 ← phi( bitmap_line::@14/(byte) bitmap_line_ydxi::xd#1 bitmap_line::@4/(byte) bitmap_line_ydxi::xd#0 )
[677] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte) 1
to:bitmap_line_ydxi::@1
bitmap_line_ydxi::@1: scope:[bitmap_line_ydxi] from bitmap_line_ydxi bitmap_line_ydxi::@2
[678] (byte) bitmap_line_ydxi::e#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::e#0 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::e#6 )
[678] (byte) bitmap_line_ydxi::y#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::y#6 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::y#2 )
[678] (byte) bitmap_line_ydxi::x#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::x#5 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::x#6 )
[679] (byte) bitmap_plot::x#2 ← (byte) bitmap_line_ydxi::x#3
[680] (byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3
[681] call bitmap_plot
to:bitmap_line_ydxi::@4
bitmap_line_ydxi::@4: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@1
[682] (byte) bitmap_line_ydxi::y#2 ← ++ (byte) bitmap_line_ydxi::y#3
[683] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2
[684] if((byte) bitmap_line_ydxi::yd#5>=(byte) bitmap_line_ydxi::e#1) goto bitmap_line_ydxi::@2
to:bitmap_line_ydxi::@3
bitmap_line_ydxi::@3: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@4
[685] (byte) bitmap_line_ydxi::x#2 ← ++ (byte) bitmap_line_ydxi::x#3
[686] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5
to:bitmap_line_ydxi::@2
bitmap_line_ydxi::@2: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@3 bitmap_line_ydxi::@4
[687] (byte) bitmap_line_ydxi::e#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::e#2 bitmap_line_ydxi::@4/(byte) bitmap_line_ydxi::e#1 )
[687] (byte) bitmap_line_ydxi::x#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::x#2 bitmap_line_ydxi::@4/(byte) bitmap_line_ydxi::x#3 )
[688] (byte~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#6 + (byte) 1
[689] if((byte) bitmap_line_ydxi::y#2!=(byte~) bitmap_line_ydxi::$6) goto bitmap_line_ydxi::@1
to:bitmap_line_ydxi::@return
bitmap_line_ydxi::@return: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@2
[690] return
to:@return
bitmap_line_xdyd: scope:[bitmap_line_xdyd] from bitmap_line::@12 bitmap_line::@9
[691] (byte) bitmap_line_xdyd::x1#6 ← phi( bitmap_line::@9/(byte) bitmap_line_xdyd::x1#0 bitmap_line::@12/(byte) bitmap_line_xdyd::x1#1 )
[691] (byte) bitmap_line_xdyd::xd#5 ← phi( bitmap_line::@9/(byte) bitmap_line_xdyd::xd#0 bitmap_line::@12/(byte) bitmap_line_xdyd::xd#1 )
[691] (byte) bitmap_line_xdyd::y#5 ← phi( bitmap_line::@9/(byte) bitmap_line_xdyd::y#0 bitmap_line::@12/(byte) bitmap_line_xdyd::y#1 )
[691] (byte) bitmap_line_xdyd::x#6 ← phi( bitmap_line::@9/(byte) bitmap_line_xdyd::x#0 bitmap_line::@12/(byte) bitmap_line_xdyd::x#1 )
[691] (byte) bitmap_line_xdyd::yd#2 ← phi( bitmap_line::@9/(byte) bitmap_line_xdyd::yd#0 bitmap_line::@12/(byte) bitmap_line_xdyd::yd#1 )
[692] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte) 1
to:bitmap_line_xdyd::@1
bitmap_line_xdyd::@1: scope:[bitmap_line_xdyd] from bitmap_line_xdyd bitmap_line_xdyd::@2
[693] (byte) bitmap_line_xdyd::e#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::e#0 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::e#6 )
[693] (byte) bitmap_line_xdyd::y#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::y#5 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::y#6 )
[693] (byte) bitmap_line_xdyd::x#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::x#6 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::x#2 )
[694] (byte) bitmap_plot::x#1 ← (byte) bitmap_line_xdyd::x#3
[695] (byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3
[696] call bitmap_plot
to:bitmap_line_xdyd::@4
bitmap_line_xdyd::@4: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@1
[697] (byte) bitmap_line_xdyd::x#2 ← ++ (byte) bitmap_line_xdyd::x#3
[698] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2
[699] if((byte) bitmap_line_xdyd::xd#5>=(byte) bitmap_line_xdyd::e#1) goto bitmap_line_xdyd::@2
to:bitmap_line_xdyd::@3
bitmap_line_xdyd::@3: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@4
[700] (byte) bitmap_line_xdyd::y#2 ← -- (byte) bitmap_line_xdyd::y#3
[701] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5
to:bitmap_line_xdyd::@2
bitmap_line_xdyd::@2: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@3 bitmap_line_xdyd::@4
[702] (byte) bitmap_line_xdyd::e#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::e#2 bitmap_line_xdyd::@4/(byte) bitmap_line_xdyd::e#1 )
[702] (byte) bitmap_line_xdyd::y#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::y#2 bitmap_line_xdyd::@4/(byte) bitmap_line_xdyd::y#3 )
[703] (byte~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#6 + (byte) 1
[704] if((byte) bitmap_line_xdyd::x#2!=(byte~) bitmap_line_xdyd::$6) goto bitmap_line_xdyd::@1
to:bitmap_line_xdyd::@return
bitmap_line_xdyd::@return: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@2
[705] return
to:@return
bitmap_line_ydxd: scope:[bitmap_line_ydxd] from bitmap_line::@10 bitmap_line::@6
[706] (byte) bitmap_line_ydxd::y1#6 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::y1#0 bitmap_line::@6/(byte) bitmap_line_ydxd::y1#1 )
[706] (byte) bitmap_line_ydxd::yd#5 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::yd#0 bitmap_line::@6/(byte) bitmap_line_ydxd::yd#1 )
[706] (byte) bitmap_line_ydxd::y#7 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::y#0 bitmap_line::@6/(byte) bitmap_line_ydxd::y#1 )
[706] (byte) bitmap_line_ydxd::x#5 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::x#0 bitmap_line::@6/(byte) bitmap_line_ydxd::x#1 )
[706] (byte) bitmap_line_ydxd::xd#2 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::xd#0 bitmap_line::@6/(byte) bitmap_line_ydxd::xd#1 )
[707] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte) 1
to:bitmap_line_ydxd::@1
bitmap_line_ydxd::@1: scope:[bitmap_line_ydxd] from bitmap_line_ydxd bitmap_line_ydxd::@2
[708] (byte) bitmap_line_ydxd::e#3 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::e#0 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::e#6 )
[708] (byte) bitmap_line_ydxd::y#2 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::y#7 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::y#3 )
[708] (byte) bitmap_line_ydxd::x#3 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::x#5 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::x#6 )
[709] (byte) bitmap_plot::x#3 ← (byte) bitmap_line_ydxd::x#3
[710] (byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#2
[711] call bitmap_plot
to:bitmap_line_ydxd::@4
bitmap_line_ydxd::@4: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@1
[712] (byte) bitmap_line_ydxd::y#3 ← ++ (byte) bitmap_line_ydxd::y#2
[713] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2
[714] if((byte) bitmap_line_ydxd::yd#5>=(byte) bitmap_line_ydxd::e#1) goto bitmap_line_ydxd::@2
to:bitmap_line_ydxd::@3
bitmap_line_ydxd::@3: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@4
[715] (byte) bitmap_line_ydxd::x#2 ← -- (byte) bitmap_line_ydxd::x#3
[716] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5
to:bitmap_line_ydxd::@2
bitmap_line_ydxd::@2: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@3 bitmap_line_ydxd::@4
[717] (byte) bitmap_line_ydxd::e#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::e#2 bitmap_line_ydxd::@4/(byte) bitmap_line_ydxd::e#1 )
[717] (byte) bitmap_line_ydxd::x#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::x#2 bitmap_line_ydxd::@4/(byte) bitmap_line_ydxd::x#3 )
[718] (byte~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#6 + (byte) 1
[719] if((byte) bitmap_line_ydxd::y#3!=(byte~) bitmap_line_ydxd::$6) goto bitmap_line_ydxd::@1
to:bitmap_line_ydxd::@return
bitmap_line_ydxd::@return: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@2
[720] return
to:@return
bitmap_clear: scope:[bitmap_clear] from mode_stdbitmap::@10
[721] (word) bitmap_clear::bitmap#0 ← *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0)
[722] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word) bitmap_clear::bitmap#0
to:bitmap_clear::@1
bitmap_clear::@1: scope:[bitmap_clear] from bitmap_clear bitmap_clear::@3
[723] (byte) bitmap_clear::y#4 ← phi( bitmap_clear/(byte) 0 bitmap_clear::@3/(byte) bitmap_clear::y#1 )
[723] (byte*) bitmap_clear::bitmap#3 ← phi( bitmap_clear/(byte*~) bitmap_clear::bitmap#5 bitmap_clear::@3/(byte*) bitmap_clear::bitmap#1 )
to:bitmap_clear::@2
bitmap_clear::@2: scope:[bitmap_clear] from bitmap_clear::@1 bitmap_clear::@2
[724] (byte) bitmap_clear::x#2 ← phi( bitmap_clear::@1/(byte) 0 bitmap_clear::@2/(byte) bitmap_clear::x#1 )
[724] (byte*) bitmap_clear::bitmap#2 ← phi( bitmap_clear::@1/(byte*) bitmap_clear::bitmap#3 bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 )
[725] *((byte*) bitmap_clear::bitmap#2) ← (byte) 0
[726] (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2
[727] (byte) bitmap_clear::x#1 ← ++ (byte) bitmap_clear::x#2
[728] if((byte) bitmap_clear::x#1!=(byte) $c8) goto bitmap_clear::@2
to:bitmap_clear::@3
bitmap_clear::@3: scope:[bitmap_clear] from bitmap_clear::@2
[729] (byte) bitmap_clear::y#1 ← ++ (byte) bitmap_clear::y#4
[730] if((byte) bitmap_clear::y#1!=(byte) $28) goto bitmap_clear::@1
to:bitmap_clear::@return
bitmap_clear::@return: scope:[bitmap_clear] from bitmap_clear::@3
[731] return
to:@return
bitmap_init: scope:[bitmap_init] from mode_stdbitmap::@6
[732] phi()
to:bitmap_init::@1
bitmap_init::@1: scope:[bitmap_init] from bitmap_init bitmap_init::@2
[733] (byte) bitmap_init::bits#3 ← phi( bitmap_init/(byte) $80 bitmap_init::@2/(byte) bitmap_init::bits#4 )
[733] (byte) bitmap_init::x#2 ← phi( bitmap_init/(byte) 0 bitmap_init::@2/(byte) bitmap_init::x#1 )
[734] (byte~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (byte) $f8
[735] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$0
[736] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← >(const byte*) mode_stdbitmap::BITMAP#0
[737] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3
[738] (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte) 1
[739] if((byte) bitmap_init::bits#1!=(byte) 0) goto bitmap_init::@6
to:bitmap_init::@2
bitmap_init::@6: scope:[bitmap_init] from bitmap_init::@1
[740] phi()
to:bitmap_init::@2
bitmap_init::@2: scope:[bitmap_init] from bitmap_init::@1 bitmap_init::@6
[741] (byte) bitmap_init::bits#4 ← phi( bitmap_init::@6/(byte) bitmap_init::bits#1 bitmap_init::@1/(byte) $80 )
[742] (byte) bitmap_init::x#1 ← ++ (byte) bitmap_init::x#2
[743] if((byte) bitmap_init::x#1!=(byte) 0) goto bitmap_init::@1
to:bitmap_init::@3
bitmap_init::@3: scope:[bitmap_init] from bitmap_init::@2 bitmap_init::@4
[744] (byte*) bitmap_init::yoffs#2 ← phi( bitmap_init::@2/(byte*) 0 bitmap_init::@4/(byte*) bitmap_init::yoffs#4 )
[744] (byte) bitmap_init::y#2 ← phi( bitmap_init::@2/(byte) 0 bitmap_init::@4/(byte) bitmap_init::y#1 )
[745] (byte~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte) 7
[746] (byte~) bitmap_init::$7 ← < (byte*) bitmap_init::yoffs#2
[747] (byte~) bitmap_init::$8 ← (byte~) bitmap_init::$10 | (byte~) bitmap_init::$7
[748] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$8
[749] (byte~) bitmap_init::$9 ← > (byte*) bitmap_init::yoffs#2
[750] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$9
[751] if((byte~) bitmap_init::$10!=(byte) 7) goto bitmap_init::@4
to:bitmap_init::@5
bitmap_init::@5: scope:[bitmap_init] from bitmap_init::@3
[752] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (word)(number) $28*(number) 8
to:bitmap_init::@4
bitmap_init::@4: scope:[bitmap_init] from bitmap_init::@3 bitmap_init::@5
[753] (byte*) bitmap_init::yoffs#4 ← phi( bitmap_init::@3/(byte*) bitmap_init::yoffs#2 bitmap_init::@5/(byte*) bitmap_init::yoffs#1 )
[754] (byte) bitmap_init::y#1 ← ++ (byte) bitmap_init::y#2
[755] if((byte) bitmap_init::y#1!=(byte) 0) goto bitmap_init::@3
to:bitmap_init::@return
bitmap_init::@return: scope:[bitmap_init] from bitmap_init::@4
[756] return
to:@return
mode_mcchar: scope:[mode_mcchar] from menu::@19
[757] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0
[758] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400
[759] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0
[760] *((const byte*) DTV_CONTROL#0) ← (byte) 0
[761] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3
[762] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_mcchar::CHARSET#0/(word) $4000
[763] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3
[764] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0
[765] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_mcchar::CHARSET#0&(word) $3fff/(word) $400
to:mode_mcchar::@1
mode_mcchar::@1: scope:[mode_mcchar] from mode_mcchar mode_mcchar::@1
[766] (byte) mode_mcchar::i#2 ← phi( mode_mcchar/(byte) 0 mode_mcchar::@1/(byte) mode_mcchar::i#1 )
[767] *((const byte*) DTV_PALETTE#0 + (byte) mode_mcchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_mcchar::i#2)
[768] (byte) mode_mcchar::i#1 ← ++ (byte) mode_mcchar::i#2
[769] if((byte) mode_mcchar::i#1!=(byte) $10) goto mode_mcchar::@1
to:mode_mcchar::@2
mode_mcchar::@2: scope:[mode_mcchar] from mode_mcchar::@1
[770] *((const byte*) BORDERCOL#0) ← (byte) 0
[771] *((const byte*) BGCOL1#0) ← (const byte) BLACK#0
[772] *((const byte*) BGCOL2#0) ← (const byte) GREEN#0
[773] *((const byte*) BGCOL3#0) ← (const byte) BLUE#0
to:mode_mcchar::@3
mode_mcchar::@3: scope:[mode_mcchar] from mode_mcchar::@2 mode_mcchar::@5
[774] (byte*) mode_mcchar::ch#3 ← phi( mode_mcchar::@2/(const byte*) mode_mcchar::SCREEN#0 mode_mcchar::@5/(byte*) mode_mcchar::ch#1 )
[774] (byte*) mode_mcchar::col#3 ← phi( mode_mcchar::@2/(const byte*) mode_mcchar::COLORS#0 mode_mcchar::@5/(byte*) mode_mcchar::col#1 )
[774] (byte) mode_mcchar::cy#4 ← phi( mode_mcchar::@2/(byte) 0 mode_mcchar::@5/(byte) mode_mcchar::cy#1 )
to:mode_mcchar::@4
mode_mcchar::@4: scope:[mode_mcchar] from mode_mcchar::@3 mode_mcchar::@4
[775] (byte*) mode_mcchar::ch#2 ← phi( mode_mcchar::@3/(byte*) mode_mcchar::ch#3 mode_mcchar::@4/(byte*) mode_mcchar::ch#1 )
[775] (byte*) mode_mcchar::col#2 ← phi( mode_mcchar::@3/(byte*) mode_mcchar::col#3 mode_mcchar::@4/(byte*) mode_mcchar::col#1 )
[775] (byte) mode_mcchar::cx#2 ← phi( mode_mcchar::@3/(byte) 0 mode_mcchar::@4/(byte) mode_mcchar::cx#1 )
[776] (byte~) mode_mcchar::$26 ← (byte) mode_mcchar::cx#2 + (byte) mode_mcchar::cy#4
[777] (byte~) mode_mcchar::$27 ← (byte~) mode_mcchar::$26 & (byte) $f
[778] *((byte*) mode_mcchar::col#2) ← (byte~) mode_mcchar::$27
[779] (byte*) mode_mcchar::col#1 ← ++ (byte*) mode_mcchar::col#2
[780] (byte~) mode_mcchar::$28 ← (byte) mode_mcchar::cy#4 & (byte) $f
[781] (byte~) mode_mcchar::$29 ← (byte~) mode_mcchar::$28 << (byte) 4
[782] (byte~) mode_mcchar::$30 ← (byte) mode_mcchar::cx#2 & (byte) $f
[783] (byte~) mode_mcchar::$31 ← (byte~) mode_mcchar::$29 | (byte~) mode_mcchar::$30
[784] *((byte*) mode_mcchar::ch#2) ← (byte~) mode_mcchar::$31
[785] (byte*) mode_mcchar::ch#1 ← ++ (byte*) mode_mcchar::ch#2
[786] (byte) mode_mcchar::cx#1 ← ++ (byte) mode_mcchar::cx#2
[787] if((byte) mode_mcchar::cx#1!=(byte) $28) goto mode_mcchar::@4
to:mode_mcchar::@5
mode_mcchar::@5: scope:[mode_mcchar] from mode_mcchar::@4
[788] (byte) mode_mcchar::cy#1 ← ++ (byte) mode_mcchar::cy#4
[789] if((byte) mode_mcchar::cy#1!=(byte) $19) goto mode_mcchar::@3
to:mode_mcchar::@6
mode_mcchar::@6: scope:[mode_mcchar] from mode_mcchar::@5
[790] phi()
[791] call mode_ctrl
to:mode_mcchar::@return
mode_mcchar::@return: scope:[mode_mcchar] from mode_mcchar::@6
[792] return
to:@return
mode_ecmchar: scope:[mode_ecmchar] from menu::@18
[793] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0
[794] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400
[795] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0
[796] *((const byte*) DTV_CONTROL#0) ← (byte) 0
[797] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3
[798] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_ecmchar::CHARSET#0/(word) $4000
[799] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte) 3
[800] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0
[801] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_ecmchar::CHARSET#0&(word) $3fff/(word) $400
to:mode_ecmchar::@1
mode_ecmchar::@1: scope:[mode_ecmchar] from mode_ecmchar mode_ecmchar::@1
[802] (byte) mode_ecmchar::i#2 ← phi( mode_ecmchar/(byte) 0 mode_ecmchar::@1/(byte) mode_ecmchar::i#1 )
[803] *((const byte*) DTV_PALETTE#0 + (byte) mode_ecmchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_ecmchar::i#2)
[804] (byte) mode_ecmchar::i#1 ← ++ (byte) mode_ecmchar::i#2
[805] if((byte) mode_ecmchar::i#1!=(byte) $10) goto mode_ecmchar::@1
to:mode_ecmchar::@2
mode_ecmchar::@2: scope:[mode_ecmchar] from mode_ecmchar::@1
[806] *((const byte*) BORDERCOL#0) ← (byte) 0
[807] *((const byte*) BGCOL1#0) ← (byte) 0
[808] *((const byte*) BGCOL2#0) ← (byte) 2
[809] *((const byte*) BGCOL3#0) ← (byte) 5
[810] *((const byte*) BGCOL4#0) ← (byte) 6
to:mode_ecmchar::@3
mode_ecmchar::@3: scope:[mode_ecmchar] from mode_ecmchar::@2 mode_ecmchar::@5
[811] (byte*) mode_ecmchar::ch#3 ← phi( mode_ecmchar::@2/(const byte*) mode_ecmchar::SCREEN#0 mode_ecmchar::@5/(byte*) mode_ecmchar::ch#1 )
[811] (byte*) mode_ecmchar::col#3 ← phi( mode_ecmchar::@2/(const byte*) mode_ecmchar::COLORS#0 mode_ecmchar::@5/(byte*) mode_ecmchar::col#1 )
[811] (byte) mode_ecmchar::cy#4 ← phi( mode_ecmchar::@2/(byte) 0 mode_ecmchar::@5/(byte) mode_ecmchar::cy#1 )
to:mode_ecmchar::@4
mode_ecmchar::@4: scope:[mode_ecmchar] from mode_ecmchar::@3 mode_ecmchar::@4
[812] (byte*) mode_ecmchar::ch#2 ← phi( mode_ecmchar::@3/(byte*) mode_ecmchar::ch#3 mode_ecmchar::@4/(byte*) mode_ecmchar::ch#1 )
[812] (byte*) mode_ecmchar::col#2 ← phi( mode_ecmchar::@3/(byte*) mode_ecmchar::col#3 mode_ecmchar::@4/(byte*) mode_ecmchar::col#1 )
[812] (byte) mode_ecmchar::cx#2 ← phi( mode_ecmchar::@3/(byte) 0 mode_ecmchar::@4/(byte) mode_ecmchar::cx#1 )
[813] (byte~) mode_ecmchar::$26 ← (byte) mode_ecmchar::cx#2 + (byte) mode_ecmchar::cy#4
[814] (byte~) mode_ecmchar::$27 ← (byte~) mode_ecmchar::$26 & (byte) $f
[815] *((byte*) mode_ecmchar::col#2) ← (byte~) mode_ecmchar::$27
[816] (byte*) mode_ecmchar::col#1 ← ++ (byte*) mode_ecmchar::col#2
[817] (byte~) mode_ecmchar::$28 ← (byte) mode_ecmchar::cy#4 & (byte) $f
[818] (byte~) mode_ecmchar::$29 ← (byte~) mode_ecmchar::$28 << (byte) 4
[819] (byte~) mode_ecmchar::$30 ← (byte) mode_ecmchar::cx#2 & (byte) $f
[820] (byte~) mode_ecmchar::$31 ← (byte~) mode_ecmchar::$29 | (byte~) mode_ecmchar::$30
[821] *((byte*) mode_ecmchar::ch#2) ← (byte~) mode_ecmchar::$31
[822] (byte*) mode_ecmchar::ch#1 ← ++ (byte*) mode_ecmchar::ch#2
[823] (byte) mode_ecmchar::cx#1 ← ++ (byte) mode_ecmchar::cx#2
[824] if((byte) mode_ecmchar::cx#1!=(byte) $28) goto mode_ecmchar::@4
to:mode_ecmchar::@5
mode_ecmchar::@5: scope:[mode_ecmchar] from mode_ecmchar::@4
[825] (byte) mode_ecmchar::cy#1 ← ++ (byte) mode_ecmchar::cy#4
[826] if((byte) mode_ecmchar::cy#1!=(byte) $19) goto mode_ecmchar::@3
to:mode_ecmchar::@6
mode_ecmchar::@6: scope:[mode_ecmchar] from mode_ecmchar::@5
[827] phi()
[828] call mode_ctrl
to:mode_ecmchar::@return
mode_ecmchar::@return: scope:[mode_ecmchar] from mode_ecmchar::@6
[829] return
to:@return
mode_stdchar: scope:[mode_stdchar] from menu::@17
[830] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0
[831] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400
[832] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0
[833] *((const byte*) DTV_CONTROL#0) ← (byte) 0
[834] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3
[835] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_stdchar::CHARSET#0/(word) $4000
[836] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3
[837] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0
[838] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_stdchar::CHARSET#0&(word) $3fff/(word) $400
to:mode_stdchar::@1
mode_stdchar::@1: scope:[mode_stdchar] from mode_stdchar mode_stdchar::@1
[839] (byte) mode_stdchar::i#2 ← phi( mode_stdchar/(byte) 0 mode_stdchar::@1/(byte) mode_stdchar::i#1 )
[840] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdchar::i#2)
[841] (byte) mode_stdchar::i#1 ← ++ (byte) mode_stdchar::i#2
[842] if((byte) mode_stdchar::i#1!=(byte) $10) goto mode_stdchar::@1
to:mode_stdchar::@2
mode_stdchar::@2: scope:[mode_stdchar] from mode_stdchar::@1
[843] *((const byte*) BGCOL#0) ← (byte) 0
[844] *((const byte*) BORDERCOL#0) ← (byte) 0
to:mode_stdchar::@3
mode_stdchar::@3: scope:[mode_stdchar] from mode_stdchar::@2 mode_stdchar::@5
[845] (byte*) mode_stdchar::ch#3 ← phi( mode_stdchar::@2/(const byte*) mode_stdchar::SCREEN#0 mode_stdchar::@5/(byte*) mode_stdchar::ch#1 )
[845] (byte*) mode_stdchar::col#3 ← phi( mode_stdchar::@2/(const byte*) mode_stdchar::COLORS#0 mode_stdchar::@5/(byte*) mode_stdchar::col#1 )
[845] (byte) mode_stdchar::cy#4 ← phi( mode_stdchar::@2/(byte) 0 mode_stdchar::@5/(byte) mode_stdchar::cy#1 )
to:mode_stdchar::@4
mode_stdchar::@4: scope:[mode_stdchar] from mode_stdchar::@3 mode_stdchar::@4
[846] (byte*) mode_stdchar::ch#2 ← phi( mode_stdchar::@3/(byte*) mode_stdchar::ch#3 mode_stdchar::@4/(byte*) mode_stdchar::ch#1 )
[846] (byte*) mode_stdchar::col#2 ← phi( mode_stdchar::@3/(byte*) mode_stdchar::col#3 mode_stdchar::@4/(byte*) mode_stdchar::col#1 )
[846] (byte) mode_stdchar::cx#2 ← phi( mode_stdchar::@3/(byte) 0 mode_stdchar::@4/(byte) mode_stdchar::cx#1 )
[847] (byte~) mode_stdchar::$25 ← (byte) mode_stdchar::cx#2 + (byte) mode_stdchar::cy#4
[848] (byte~) mode_stdchar::$26 ← (byte~) mode_stdchar::$25 & (byte) $f
[849] *((byte*) mode_stdchar::col#2) ← (byte~) mode_stdchar::$26
[850] (byte*) mode_stdchar::col#1 ← ++ (byte*) mode_stdchar::col#2
[851] (byte~) mode_stdchar::$27 ← (byte) mode_stdchar::cy#4 & (byte) $f
[852] (byte~) mode_stdchar::$28 ← (byte~) mode_stdchar::$27 << (byte) 4
[853] (byte~) mode_stdchar::$29 ← (byte) mode_stdchar::cx#2 & (byte) $f
[854] (byte~) mode_stdchar::$30 ← (byte~) mode_stdchar::$28 | (byte~) mode_stdchar::$29
[855] *((byte*) mode_stdchar::ch#2) ← (byte~) mode_stdchar::$30
[856] (byte*) mode_stdchar::ch#1 ← ++ (byte*) mode_stdchar::ch#2
[857] (byte) mode_stdchar::cx#1 ← ++ (byte) mode_stdchar::cx#2
[858] if((byte) mode_stdchar::cx#1!=(byte) $28) goto mode_stdchar::@4
to:mode_stdchar::@5
mode_stdchar::@5: scope:[mode_stdchar] from mode_stdchar::@4
[859] (byte) mode_stdchar::cy#1 ← ++ (byte) mode_stdchar::cy#4
[860] if((byte) mode_stdchar::cy#1!=(byte) $19) goto mode_stdchar::@3
to:mode_stdchar::@6
mode_stdchar::@6: scope:[mode_stdchar] from mode_stdchar::@5
[861] phi()
[862] call mode_ctrl
to:mode_stdchar::@return
mode_stdchar::@return: scope:[mode_stdchar] from mode_stdchar::@6
[863] return
to:@return
print_str_lines: scope:[print_str_lines] from menu::@30
[864] phi()
to:print_str_lines::@1
print_str_lines::@1: scope:[print_str_lines] from print_str_lines print_str_lines::@6
[865] (byte*) print_line_cursor#17 ← phi( print_str_lines/(const byte*) menu::SCREEN#0 print_str_lines::@6/(byte*) print_line_cursor#19 )
[865] (byte*) print_char_cursor#19 ← phi( print_str_lines/(const byte*) menu::SCREEN#0 print_str_lines::@6/(byte*~) print_char_cursor#100 )
[865] (byte*) print_str_lines::str#2 ← phi( print_str_lines/(const byte[]) MENU_TEXT#0 print_str_lines::@6/(byte*) print_str_lines::str#0 )
[866] if((byte) 0!=*((byte*) print_str_lines::str#2)) goto print_str_lines::@2
to:print_str_lines::@return
print_str_lines::@return: scope:[print_str_lines] from print_str_lines::@1
[867] return
to:@return
print_str_lines::@2: scope:[print_str_lines] from print_str_lines::@1 print_str_lines::@3
[868] (byte*) print_char_cursor#17 ← phi( print_str_lines::@1/(byte*) print_char_cursor#19 print_str_lines::@3/(byte*) print_char_cursor#32 )
[868] (byte*) print_str_lines::str#3 ← phi( print_str_lines::@1/(byte*) print_str_lines::str#2 print_str_lines::@3/(byte*) print_str_lines::str#0 )
[869] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#3)
[870] (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#3
[871] if((byte) 0==(byte) print_str_lines::ch#0) goto print_str_lines::@3
to:print_str_lines::@4
print_str_lines::@4: scope:[print_str_lines] from print_str_lines::@2
[872] *((byte*) print_char_cursor#17) ← (byte) print_str_lines::ch#0
[873] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#17
to:print_str_lines::@3
print_str_lines::@3: scope:[print_str_lines] from print_str_lines::@2 print_str_lines::@4
[874] (byte*) print_char_cursor#32 ← phi( print_str_lines::@2/(byte*) print_char_cursor#17 print_str_lines::@4/(byte*) print_char_cursor#1 )
[875] if((byte) 0!=(byte) print_str_lines::ch#0) goto print_str_lines::@2
to:print_str_lines::@5
print_str_lines::@5: scope:[print_str_lines] from print_str_lines::@3
[876] phi()
[877] call print_ln
to:print_str_lines::@6
print_str_lines::@6: scope:[print_str_lines] from print_str_lines::@5
[878] (byte*~) print_char_cursor#100 ← (byte*) print_line_cursor#19
to:print_str_lines::@1
print_ln: scope:[print_ln] from print_str_lines::@5
[879] phi()
to:print_ln::@1
print_ln::@1: scope:[print_ln] from print_ln print_ln::@1
[880] (byte*) print_line_cursor#18 ← phi( print_ln/(byte*) print_line_cursor#17 print_ln::@1/(byte*) print_line_cursor#19 )
[881] (byte*) print_line_cursor#19 ← (byte*) print_line_cursor#18 + (byte) $28
[882] if((byte*) print_line_cursor#19<(byte*) print_char_cursor#32) goto print_ln::@1
to:print_ln::@return
print_ln::@return: scope:[print_ln] from print_ln::@1
[883] return
to:@return
print_cls: scope:[print_cls] from menu::@29
[884] phi()
[885] call memset
to:print_cls::@return
print_cls::@return: scope:[print_cls] from print_cls
[886] return
to:@return
memset: scope:[memset] from print_cls
[887] phi()
to:memset::@1
memset::@1: scope:[memset] from memset memset::@2
[888] (byte*) memset::dst#2 ← phi( memset/(byte*)(const void*) memset::str#0 memset::@2/(byte*) memset::dst#1 )
[889] if((byte*) memset::dst#2!=(const byte*) memset::end#0) goto memset::@2
to:memset::@return
memset::@return: scope:[memset] from memset::@1
[890] return
to:@return
memset::@2: scope:[memset] from memset::@1
[891] *((byte*) memset::dst#2) ← (const byte) memset::c#0
[892] (byte*) memset::dst#1 ← ++ (byte*) memset::dst#2
to:memset::@1
print_set_screen: scope:[print_set_screen] from menu::@4
[893] phi()
to:print_set_screen::@return
print_set_screen::@return: scope:[print_set_screen] from print_set_screen
[894] return
to:@return
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@11 blocks: mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@18 blocks: mode_ctrl::@18 mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@11 blocks: mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@18 blocks: mode_ctrl::@18 mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@11 blocks: mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@18 blocks: mode_ctrl::@18 mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@11 blocks: mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@18 blocks: mode_ctrl::@18 mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@11 blocks: mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@18 blocks: mode_ctrl::@18 mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@11 blocks: mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@18 blocks: mode_ctrl::@18 mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@11 blocks: mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@18 blocks: mode_ctrl::@18 mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@11 blocks: mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@18 blocks: mode_ctrl::@18 mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@11 blocks: mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@18 blocks: mode_ctrl::@18 mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@11 blocks: mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@18 blocks: mode_ctrl::@18 mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@11 blocks: mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@18 blocks: mode_ctrl::@18 mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@11 blocks: mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@18 blocks: mode_ctrl::@18 mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@11 blocks: mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@18 blocks: mode_ctrl::@18 mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@11 blocks: mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@18 blocks: mode_ctrl::@18 mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@11 blocks: mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@18 blocks: mode_ctrl::@18 mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@11 blocks: mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
null depth in calling loop Loop head: mode_ctrl::@1 tails: mode_ctrl::@18 blocks: mode_ctrl::@18 mode_ctrl::@11 mode_ctrl::@26 mode_ctrl::@27 mode_ctrl::@10 mode_ctrl::@17 mode_ctrl::@25 mode_ctrl::@9 mode_ctrl::@16 mode_ctrl::@24 mode_ctrl::@8 mode_ctrl::@15 mode_ctrl::@23 mode_ctrl::@7 mode_ctrl::@14 mode_ctrl::@22 mode_ctrl::@6 mode_ctrl::@13 mode_ctrl::@21 mode_ctrl::@5 mode_ctrl::@12 mode_ctrl::@20 mode_ctrl::@4 mode_ctrl::@19 mode_ctrl::@3 mode_ctrl::@2 mode_ctrl::@1 in scope keyboard_key_pressed
VARIABLE REGISTER WEIGHTS
(byte*) BGCOL
(byte*) BGCOL1
(byte*) BGCOL2
(byte*) BGCOL3
(byte*) BGCOL4
(byte) BLACK
(byte) BLUE
(byte*) BORDERCOL
(byte*) CIA1_PORT_A
(byte*) CIA1_PORT_B
(byte*) CIA2_PORT_A
(byte*) CIA2_PORT_A_DDR
(byte*) COLS
(byte) DTV_BORDER_OFF
(byte) DTV_CHUNKY
(byte) DTV_COLORRAM_OFF
(dword) DTV_COLOR_BANK_DEFAULT
(byte*) DTV_COLOR_BANK_HI
(byte*) DTV_COLOR_BANK_LO
(byte*) DTV_CONTROL
(byte*) DTV_FEATURE
(byte) DTV_FEATURE_ENABLE
(byte*) DTV_GRAPHICS_VIC_BANK
(byte) DTV_HIGHCOLOR
(byte) DTV_LINEAR
(byte) DTV_OVERSCAN
(byte*) DTV_PALETTE
(byte[$10]) DTV_PALETTE_DEFAULT
(byte*) DTV_PLANEA_MODULO_HI
(byte*) DTV_PLANEA_MODULO_LO
(byte*) DTV_PLANEA_START_HI
(byte*) DTV_PLANEA_START_LO
(byte*) DTV_PLANEA_START_MI
(byte*) DTV_PLANEA_STEP
(byte*) DTV_PLANEB_MODULO_HI
(byte*) DTV_PLANEB_MODULO_LO
(byte*) DTV_PLANEB_START_HI
(byte*) DTV_PLANEB_START_LO
(byte*) DTV_PLANEB_START_MI
(byte*) DTV_PLANEB_STEP
(byte) GREEN
(byte) KEY_0
(byte) KEY_1
(byte) KEY_2
(byte) KEY_3
(byte) KEY_4
(byte) KEY_6
(byte) KEY_7
(byte) KEY_8
(byte) KEY_A
(byte) KEY_B
(byte) KEY_C
(byte) KEY_D
(byte) KEY_E
(byte) KEY_H
(byte) KEY_L
(byte) KEY_O
(byte) KEY_SPACE
(byte) KEY_U
(byte) LIGHT_GREEN
(byte[]) MENU_TEXT
(byte*) PROCPORT
(byte*) PROCPORT_DDR
(byte) PROCPORT_DDR_MEMORY_MASK
(byte) PROCPORT_RAM_CHARROM
(byte) PROCPORT_RAM_IO
(byte*) RASTER
(byte) VIC_BMM
(byte*) VIC_CONTROL
(byte*) VIC_CONTROL2
(byte) VIC_CSEL
(byte) VIC_DEN
(byte) VIC_ECM
(byte) VIC_MCM
(byte*) VIC_MEMORY
(byte) VIC_RSEL
(void()) bitmap_clear()
(byte*) bitmap_clear::bitmap
(word) bitmap_clear::bitmap#0 2.0
(byte*) bitmap_clear::bitmap#1 420.59999999999997
(byte*) bitmap_clear::bitmap#2 1552.0
(byte*) bitmap_clear::bitmap#3 204.0
(byte*~) bitmap_clear::bitmap#5 4.0
(byte) bitmap_clear::x
(byte) bitmap_clear::x#1 1501.5
(byte) bitmap_clear::x#2 667.3333333333334
(byte) bitmap_clear::y
(byte) bitmap_clear::y#1 151.5
(byte) bitmap_clear::y#4 33.666666666666664
(void()) bitmap_init((byte*) bitmap_init::bitmap)
(byte~) bitmap_init::$0 202.0
(byte~) bitmap_init::$10 50.5
(byte~) bitmap_init::$7 202.0
(byte~) bitmap_init::$8 202.0
(byte~) bitmap_init::$9 202.0
(byte*) bitmap_init::bitmap
(byte) bitmap_init::bits
(byte) bitmap_init::bits#1 101.0
(byte) bitmap_init::bits#3 60.599999999999994
(byte) bitmap_init::bits#4 67.33333333333333
(byte) bitmap_init::x
(byte) bitmap_init::x#1 151.5
(byte) bitmap_init::x#2 67.33333333333333
(byte) bitmap_init::y
(byte) bitmap_init::y#1 151.5
(byte) bitmap_init::y#2 50.5
(byte*) bitmap_init::yoffs
(byte*) bitmap_init::yoffs#1 202.0
(byte*) bitmap_init::yoffs#2 63.125
(byte*) bitmap_init::yoffs#4 101.0
(void()) bitmap_line((byte) bitmap_line::x0 , (byte) bitmap_line::x1 , (byte) bitmap_line::y0 , (byte) bitmap_line::y1)
(byte) bitmap_line::x0
(byte) bitmap_line::x0#0 5.173913043478264
(byte) bitmap_line::x1
(byte) bitmap_line::x1#0 5.409090909090908
(byte) bitmap_line::xd
(byte) bitmap_line::xd#1 0.7
(byte) bitmap_line::xd#2 0.7
(byte) bitmap_line::y0
(byte) bitmap_line::y0#0 5.952380952380948
(byte) bitmap_line::y1
(byte) bitmap_line::y1#0 6.249999999999996
(byte) bitmap_line::yd
(byte) bitmap_line::yd#1 0.8888888888888888
(byte) bitmap_line::yd#10 0.8888888888888888
(byte) bitmap_line::yd#11 0.8888888888888888
(byte) bitmap_line::yd#2 0.8888888888888888
(void()) bitmap_line_xdyd((byte) bitmap_line_xdyd::x , (byte) bitmap_line_xdyd::y , (byte) bitmap_line_xdyd::x1 , (byte) bitmap_line_xdyd::xd , (byte) bitmap_line_xdyd::yd)
(byte~) bitmap_line_xdyd::$6 2002.0
(byte) bitmap_line_xdyd::e
(byte) bitmap_line_xdyd::e#0 4.0
(byte) bitmap_line_xdyd::e#1 1334.6666666666667
(byte) bitmap_line_xdyd::e#2 2002.0
(byte) bitmap_line_xdyd::e#3 400.79999999999995
(byte) bitmap_line_xdyd::e#6 1001.0
(byte) bitmap_line_xdyd::x
(byte) bitmap_line_xdyd::x#0 0.8
(byte) bitmap_line_xdyd::x#1 0.8
(byte) bitmap_line_xdyd::x#2 375.375
(byte) bitmap_line_xdyd::x#3 751.25
(byte) bitmap_line_xdyd::x#6 3.0
(byte) bitmap_line_xdyd::x1
(byte) bitmap_line_xdyd::x1#0 1.3333333333333333
(byte) bitmap_line_xdyd::x1#1 1.3333333333333333
(byte) bitmap_line_xdyd::x1#6 71.78571428571429
(byte) bitmap_line_xdyd::xd
(byte) bitmap_line_xdyd::xd#0 2.0
(byte) bitmap_line_xdyd::xd#1 2.0
(byte) bitmap_line_xdyd::xd#5 143.28571428571428
(byte) bitmap_line_xdyd::y
(byte) bitmap_line_xdyd::y#0 1.0
(byte) bitmap_line_xdyd::y#1 1.0
(byte) bitmap_line_xdyd::y#2 1001.0
(byte) bitmap_line_xdyd::y#3 572.2857142857142
(byte) bitmap_line_xdyd::y#5 3.0
(byte) bitmap_line_xdyd::y#6 1001.0
(byte) bitmap_line_xdyd::yd
(byte) bitmap_line_xdyd::yd#0 4.0
(byte) bitmap_line_xdyd::yd#1 4.0
(byte) bitmap_line_xdyd::yd#2 71.92857142857143
(void()) bitmap_line_xdyi((byte) bitmap_line_xdyi::x , (byte) bitmap_line_xdyi::y , (byte) bitmap_line_xdyi::x1 , (byte) bitmap_line_xdyi::xd , (byte) bitmap_line_xdyi::yd)
(byte~) bitmap_line_xdyi::$6 2002.0
(byte) bitmap_line_xdyi::e
(byte) bitmap_line_xdyi::e#0 4.0
(byte) bitmap_line_xdyi::e#1 1334.6666666666667
(byte) bitmap_line_xdyi::e#2 2002.0
(byte) bitmap_line_xdyi::e#3 400.79999999999995
(byte) bitmap_line_xdyi::e#6 1001.0
(byte) bitmap_line_xdyi::x
(byte) bitmap_line_xdyi::x#0 0.8
(byte) bitmap_line_xdyi::x#1 0.8
(byte) bitmap_line_xdyi::x#2 375.375
(byte) bitmap_line_xdyi::x#3 751.25
(byte) bitmap_line_xdyi::x#6 3.0
(byte) bitmap_line_xdyi::x1
(byte) bitmap_line_xdyi::x1#0 1.3333333333333333
(byte) bitmap_line_xdyi::x1#1 1.3333333333333333
(byte) bitmap_line_xdyi::x1#6 71.78571428571429
(byte) bitmap_line_xdyi::xd
(byte) bitmap_line_xdyi::xd#0 2.0
(byte) bitmap_line_xdyi::xd#1 2.0
(byte) bitmap_line_xdyi::xd#5 143.28571428571428
(byte) bitmap_line_xdyi::y
(byte) bitmap_line_xdyi::y#0 1.0
(byte) bitmap_line_xdyi::y#1 1.0
(byte) bitmap_line_xdyi::y#2 1001.0
(byte) bitmap_line_xdyi::y#3 572.2857142857142
(byte) bitmap_line_xdyi::y#5 3.0
(byte) bitmap_line_xdyi::y#6 1001.0
(byte) bitmap_line_xdyi::yd
(byte) bitmap_line_xdyi::yd#0 4.0
(byte) bitmap_line_xdyi::yd#1 4.0
(byte) bitmap_line_xdyi::yd#2 71.92857142857143
(void()) bitmap_line_ydxd((byte) bitmap_line_ydxd::y , (byte) bitmap_line_ydxd::x , (byte) bitmap_line_ydxd::y1 , (byte) bitmap_line_ydxd::yd , (byte) bitmap_line_ydxd::xd)
(byte~) bitmap_line_ydxd::$6 2002.0
(byte) bitmap_line_ydxd::e
(byte) bitmap_line_ydxd::e#0 4.0
(byte) bitmap_line_ydxd::e#1 1334.6666666666667
(byte) bitmap_line_ydxd::e#2 2002.0
(byte) bitmap_line_ydxd::e#3 400.79999999999995
(byte) bitmap_line_ydxd::e#6 1001.0
(byte) bitmap_line_ydxd::x
(byte) bitmap_line_ydxd::x#0 1.0
(byte) bitmap_line_ydxd::x#1 1.0
(byte) bitmap_line_ydxd::x#2 1001.0
(byte) bitmap_line_ydxd::x#3 572.2857142857142
(byte) bitmap_line_ydxd::x#5 3.0
(byte) bitmap_line_ydxd::x#6 1001.0
(byte) bitmap_line_ydxd::xd
(byte) bitmap_line_ydxd::xd#0 4.0
(byte) bitmap_line_ydxd::xd#1 4.0
(byte) bitmap_line_ydxd::xd#2 71.92857142857143
(byte) bitmap_line_ydxd::y
(byte) bitmap_line_ydxd::y#0 0.8
(byte) bitmap_line_ydxd::y#1 0.8
(byte) bitmap_line_ydxd::y#2 751.25
(byte) bitmap_line_ydxd::y#3 375.375
(byte) bitmap_line_ydxd::y#7 3.0
(byte) bitmap_line_ydxd::y1
(byte) bitmap_line_ydxd::y1#0 1.3333333333333333
(byte) bitmap_line_ydxd::y1#1 1.3333333333333333
(byte) bitmap_line_ydxd::y1#6 71.78571428571429
(byte) bitmap_line_ydxd::yd
(byte) bitmap_line_ydxd::yd#0 2.0
(byte) bitmap_line_ydxd::yd#1 2.0
(byte) bitmap_line_ydxd::yd#5 143.28571428571428
(void()) bitmap_line_ydxi((byte) bitmap_line_ydxi::y , (byte) bitmap_line_ydxi::x , (byte) bitmap_line_ydxi::y1 , (byte) bitmap_line_ydxi::yd , (byte) bitmap_line_ydxi::xd)
(byte~) bitmap_line_ydxi::$6 2002.0
(byte) bitmap_line_ydxi::e
(byte) bitmap_line_ydxi::e#0 4.0
(byte) bitmap_line_ydxi::e#1 1334.6666666666667
(byte) bitmap_line_ydxi::e#2 2002.0
(byte) bitmap_line_ydxi::e#3 400.79999999999995
(byte) bitmap_line_ydxi::e#6 1001.0
(byte) bitmap_line_ydxi::x
(byte) bitmap_line_ydxi::x#0 1.0
(byte) bitmap_line_ydxi::x#1 1.0
(byte) bitmap_line_ydxi::x#2 1001.0
(byte) bitmap_line_ydxi::x#3 572.2857142857142
(byte) bitmap_line_ydxi::x#5 3.0
(byte) bitmap_line_ydxi::x#6 1001.0
(byte) bitmap_line_ydxi::xd
(byte) bitmap_line_ydxi::xd#0 4.0
(byte) bitmap_line_ydxi::xd#1 4.0
(byte) bitmap_line_ydxi::xd#2 71.92857142857143
(byte) bitmap_line_ydxi::y
(byte) bitmap_line_ydxi::y#0 0.8
(byte) bitmap_line_ydxi::y#1 0.8
(byte) bitmap_line_ydxi::y#2 375.375
(byte) bitmap_line_ydxi::y#3 751.25
(byte) bitmap_line_ydxi::y#6 3.0
(byte) bitmap_line_ydxi::y1
(byte) bitmap_line_ydxi::y1#0 1.3333333333333333
(byte) bitmap_line_ydxi::y1#1 1.3333333333333333
(byte) bitmap_line_ydxi::y1#6 71.78571428571429
(byte) bitmap_line_ydxi::yd
(byte) bitmap_line_ydxi::yd#0 2.0
(byte) bitmap_line_ydxi::yd#1 2.0
(byte) bitmap_line_ydxi::yd#5 143.28571428571428
(void()) bitmap_plot((byte) bitmap_plot::x , (byte) bitmap_plot::y)
(byte~) bitmap_plot::$1 4.0
(byte*) bitmap_plot::plotter
(word) bitmap_plot::plotter#0 1.0
(word) bitmap_plot::plotter_x
(word) bitmap_plot::plotter_x#0 2.0
(word) bitmap_plot::plotter_y
(word) bitmap_plot::plotter_y#0 4.0
(byte) bitmap_plot::x
(byte) bitmap_plot::x#0 1001.0
(byte) bitmap_plot::x#1 1001.0
(byte) bitmap_plot::x#2 1001.0
(byte) bitmap_plot::x#3 1001.0
(byte) bitmap_plot::x#4 1002.5
(byte) bitmap_plot::y
(byte) bitmap_plot::y#0 2002.0
(byte) bitmap_plot::y#1 2002.0
(byte) bitmap_plot::y#2 2002.0
(byte) bitmap_plot::y#3 2002.0
(byte) bitmap_plot::y#4 2004.0
(byte[$100]) bitmap_plot_bit
(byte[$100]) bitmap_plot_xhi
(byte[$100]) bitmap_plot_xlo
(byte[$100]) bitmap_plot_yhi
(byte[$100]) bitmap_plot_ylo
(void()) dtvSetCpuBankSegment1((byte) dtvSetCpuBankSegment1::cpuBankIdx)
(byte*) dtvSetCpuBankSegment1::cpuBank
(byte) dtvSetCpuBankSegment1::cpuBankIdx
(byte) dtvSetCpuBankSegment1::cpuBankIdx#1 2002.0
(byte) dtvSetCpuBankSegment1::cpuBankIdx#3 1003.0
(byte) dtv_control
(byte) dtv_control#114 80.52941176470588
(byte) dtv_control#144 2.0
(byte) dtv_control#17 67.33333333333333
(byte()) keyboard_key_pressed((byte) keyboard_key_pressed::key)
(byte~) keyboard_key_pressed::$2 4.0
(byte) keyboard_key_pressed::colidx
(byte) keyboard_key_pressed::colidx#0 0.6666666666666666
(byte) keyboard_key_pressed::key
(byte) keyboard_key_pressed::key#20 2.0
(byte) keyboard_key_pressed::return
(byte) keyboard_key_pressed::return#0 419.1818181818182
(byte) keyboard_key_pressed::return#10 202.0
(byte) keyboard_key_pressed::return#11 202.0
(byte) keyboard_key_pressed::return#12 202.0
(byte) keyboard_key_pressed::return#13 202.0
(byte) keyboard_key_pressed::return#14 2002.0
(byte) keyboard_key_pressed::return#15 2002.0
(byte) keyboard_key_pressed::return#16 2002.0
(byte) keyboard_key_pressed::return#17 2002.0
(byte) keyboard_key_pressed::return#18 2002.0
(byte) keyboard_key_pressed::return#19 2002.0
(byte) keyboard_key_pressed::return#2 202.0
(byte) keyboard_key_pressed::return#20 2002.0
(byte) keyboard_key_pressed::return#21 2002.0
(byte) keyboard_key_pressed::return#24 202.0
(byte) keyboard_key_pressed::return#25 202.0
(byte) keyboard_key_pressed::return#26 202.0
(byte) keyboard_key_pressed::return#27 202.0
(byte) keyboard_key_pressed::return#28 202.0
(byte) keyboard_key_pressed::return#29 202.0
(byte) keyboard_key_pressed::return#30 202.0
(byte) keyboard_key_pressed::rowidx
(byte) keyboard_key_pressed::rowidx#0 4.0
(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 1.3333333333333333
(byte) keyboard_matrix_read::return#2 4.0
(byte) keyboard_matrix_read::row_pressed_bits
(byte) keyboard_matrix_read::rowid
(byte) keyboard_matrix_read::rowid#0 4.0
(byte[8]) keyboard_matrix_row_bitmask
(void()) main()
(void*()) memset((void*) memset::str , (byte) memset::c , (word) memset::num)
(byte) memset::c
(byte*) memset::dst
(byte*) memset::dst#1 202.0
(byte*) memset::dst#2 134.66666666666666
(byte*) memset::end
(word) memset::num
(void*) memset::return
(void*) memset::str
(void()) menu()
(byte~) menu::$29 202.0
(byte~) menu::$33 202.0
(byte~) menu::$37 202.0
(byte~) menu::$41 202.0
(byte~) menu::$45 202.0
(byte~) menu::$49 202.0
(byte~) menu::$53 202.0
(byte~) menu::$57 202.0
(byte~) menu::$61 202.0
(byte~) menu::$65 202.0
(byte~) menu::$69 202.0
(byte~) menu::$73 202.0
(byte*) menu::CHARSET
(byte*) menu::SCREEN
(byte*) menu::c
(byte*) menu::c#1 202.0
(byte*) menu::c#2 134.66666666666666
(byte) menu::i
(byte) menu::i#1 151.5
(byte) menu::i#2 202.0
(void()) mode_8bppchunkybmm()
(word~) mode_8bppchunkybmm::$26 1001.0
(dword) mode_8bppchunkybmm::PLANEB
(byte) mode_8bppchunkybmm::c
(byte) mode_8bppchunkybmm::c#0 2002.0
(byte*) mode_8bppchunkybmm::gfxb
(byte*) mode_8bppchunkybmm::gfxb#1 420.59999999999997
(byte*) mode_8bppchunkybmm::gfxb#3 1552.0
(byte*) mode_8bppchunkybmm::gfxb#4 750.75
(byte*) mode_8bppchunkybmm::gfxb#5 202.0
(byte) mode_8bppchunkybmm::gfxbCpuBank
(byte) mode_8bppchunkybmm::gfxbCpuBank#2 2002.0
(byte) mode_8bppchunkybmm::gfxbCpuBank#4 1026.25
(byte) mode_8bppchunkybmm::gfxbCpuBank#7 202.0
(byte) mode_8bppchunkybmm::gfxbCpuBank#8 344.8888888888889
(byte) mode_8bppchunkybmm::i
(byte) mode_8bppchunkybmm::i#1 151.5
(byte) mode_8bppchunkybmm::i#2 202.0
(word) mode_8bppchunkybmm::x
(word) mode_8bppchunkybmm::x#1 1501.5
(word) mode_8bppchunkybmm::x#2 300.29999999999995
(byte) mode_8bppchunkybmm::y
(byte) mode_8bppchunkybmm::y#1 151.5
(byte) mode_8bppchunkybmm::y#6 92.53846153846155
(void()) mode_8bpppixelcell()
(byte~) mode_8bpppixelcell::$14 2002.0
(byte~) mode_8bpppixelcell::$15 1001.0
(byte~) mode_8bpppixelcell::$16 2002.0
(byte~) mode_8bpppixelcell::$17 2002.0
(byte~) mode_8bpppixelcell::$20 20002.0
(byte*) mode_8bpppixelcell::CHARGEN
(byte*) mode_8bpppixelcell::PLANEA
(byte*) mode_8bpppixelcell::PLANEB
(byte) mode_8bpppixelcell::ax
(byte) mode_8bpppixelcell::ax#1 1501.5
(byte) mode_8bpppixelcell::ax#2 429.0
(byte) mode_8bpppixelcell::ay
(byte) mode_8bpppixelcell::ay#1 151.5
(byte) mode_8bpppixelcell::ay#4 120.29999999999998
(byte) mode_8bpppixelcell::bits
(byte) mode_8bpppixelcell::bits#0 1001.0
(byte) mode_8bpppixelcell::bits#1 5000.5
(byte) mode_8bpppixelcell::bits#2 4429.142857142857
(byte) mode_8bpppixelcell::c
(byte) mode_8bpppixelcell::c#2 20002.0
(byte~) mode_8bpppixelcell::c#3 20002.0
(byte) mode_8bpppixelcell::ch
(byte) mode_8bpppixelcell::ch#1 151.5
(byte) mode_8bpppixelcell::ch#8 11.882352941176471
(byte*) mode_8bpppixelcell::chargen
(byte*) mode_8bpppixelcell::chargen#1 131.4375
(byte*) mode_8bpppixelcell::chargen#2 1552.0
(byte*) mode_8bpppixelcell::chargen#4 202.0
(byte) mode_8bpppixelcell::col
(byte) mode_8bpppixelcell::col#1 3014.857142857143
(byte) mode_8bpppixelcell::col#2 3875.5
(byte) mode_8bpppixelcell::col#5 701.0
(byte) mode_8bpppixelcell::col#7 202.0
(byte) mode_8bpppixelcell::cp
(byte) mode_8bpppixelcell::cp#1 15001.5
(byte) mode_8bpppixelcell::cp#2 2222.4444444444443
(byte) mode_8bpppixelcell::cr
(byte) mode_8bpppixelcell::cr#1 1501.5
(byte) mode_8bpppixelcell::cr#6 143.0
(byte*) mode_8bpppixelcell::gfxa
(byte*) mode_8bpppixelcell::gfxa#1 420.59999999999997
(byte*) mode_8bpppixelcell::gfxa#2 517.3333333333334
(byte*) mode_8bpppixelcell::gfxa#3 202.0
(byte*) mode_8bpppixelcell::gfxb
(byte*) mode_8bpppixelcell::gfxb#1 2344.8888888888887
(byte*) mode_8bpppixelcell::gfxb#2 5167.333333333333
(byte*) mode_8bpppixelcell::gfxb#5 701.0
(byte*) mode_8bpppixelcell::gfxb#7 202.0
(byte) mode_8bpppixelcell::i
(byte) mode_8bpppixelcell::i#1 151.5
(byte) mode_8bpppixelcell::i#2 202.0
(void()) mode_ctrl()
(byte~) mode_ctrl::$1 2002.0
(byte~) mode_ctrl::$12 2002.0
(byte~) mode_ctrl::$16 2002.0
(byte~) mode_ctrl::$20 2002.0
(byte~) mode_ctrl::$24 2002.0
(byte~) mode_ctrl::$28 2002.0
(byte~) mode_ctrl::$4 2002.0
(byte~) mode_ctrl::$8 2002.0
(byte) mode_ctrl::ctrl
(byte) mode_ctrl::ctrl#0 600.5999999999999
(byte) mode_ctrl::ctrl#1 2002.0
(byte) mode_ctrl::ctrl#10 800.8
(byte) mode_ctrl::ctrl#11 800.8
(byte) mode_ctrl::ctrl#12 800.8
(byte) mode_ctrl::ctrl#13 800.8
(byte) mode_ctrl::ctrl#14 576.25
(byte) mode_ctrl::ctrl#17 800.8
(byte) mode_ctrl::ctrl#2 2002.0
(byte) mode_ctrl::ctrl#22 500.5
(byte) mode_ctrl::ctrl#3 2002.0
(byte) mode_ctrl::ctrl#4 2002.0
(byte) mode_ctrl::ctrl#5 2002.0
(byte) mode_ctrl::ctrl#6 2002.0
(void()) mode_ecmchar()
(byte~) mode_ecmchar::$26 2002.0
(byte~) mode_ecmchar::$27 2002.0
(byte~) mode_ecmchar::$28 2002.0
(byte~) mode_ecmchar::$29 1001.0
(byte~) mode_ecmchar::$30 2002.0
(byte~) mode_ecmchar::$31 2002.0
(byte*) mode_ecmchar::CHARSET
(byte*) mode_ecmchar::COLORS
(byte*) mode_ecmchar::SCREEN
(byte*) mode_ecmchar::ch
(byte*) mode_ecmchar::ch#1 420.59999999999997
(byte*) mode_ecmchar::ch#2 310.4
(byte*) mode_ecmchar::ch#3 202.0
(byte*) mode_ecmchar::col
(byte*) mode_ecmchar::col#1 191.1818181818182
(byte*) mode_ecmchar::col#2 776.0
(byte*) mode_ecmchar::col#3 202.0
(byte) mode_ecmchar::cx
(byte) mode_ecmchar::cx#1 1501.5
(byte) mode_ecmchar::cx#2 364.0
(byte) mode_ecmchar::cy
(byte) mode_ecmchar::cy#1 151.5
(byte) mode_ecmchar::cy#4 157.42857142857144
(byte) mode_ecmchar::i
(byte) mode_ecmchar::i#1 151.5
(byte) mode_ecmchar::i#2 202.0
(void()) mode_hicolecmchar()
(byte~) mode_hicolecmchar::$26 2002.0
(byte~) mode_hicolecmchar::$27 1001.0
(byte~) mode_hicolecmchar::$28 2002.0
(byte*) mode_hicolecmchar::CHARSET
(byte*) mode_hicolecmchar::COLORS
(byte*) mode_hicolecmchar::SCREEN
(byte*) mode_hicolecmchar::ch
(byte*) mode_hicolecmchar::ch#1 420.59999999999997
(byte*) mode_hicolecmchar::ch#2 388.0
(byte*) mode_hicolecmchar::ch#3 202.0
(byte*) mode_hicolecmchar::col
(byte*) mode_hicolecmchar::col#1 300.42857142857144
(byte*) mode_hicolecmchar::col#2 517.3333333333334
(byte*) mode_hicolecmchar::col#3 202.0
(byte) mode_hicolecmchar::cx
(byte) mode_hicolecmchar::cx#1 1501.5
(byte) mode_hicolecmchar::cx#2 333.6666666666667
(byte) mode_hicolecmchar::cy
(byte) mode_hicolecmchar::cy#1 151.5
(byte) mode_hicolecmchar::cy#4 100.25000000000001
(byte) mode_hicolecmchar::i
(byte) mode_hicolecmchar::i#1 151.5
(byte) mode_hicolecmchar::i#2 202.0
(byte) mode_hicolecmchar::v
(byte) mode_hicolecmchar::v#0 1001.0
(void()) mode_hicolmcchar()
(byte~) mode_hicolmcchar::$26 2002.0
(byte~) mode_hicolmcchar::$27 1001.0
(byte~) mode_hicolmcchar::$28 2002.0
(byte*) mode_hicolmcchar::CHARSET
(byte*) mode_hicolmcchar::COLORS
(byte*) mode_hicolmcchar::SCREEN
(byte*) mode_hicolmcchar::ch
(byte*) mode_hicolmcchar::ch#1 420.59999999999997
(byte*) mode_hicolmcchar::ch#2 388.0
(byte*) mode_hicolmcchar::ch#3 202.0
(byte*) mode_hicolmcchar::col
(byte*) mode_hicolmcchar::col#1 300.42857142857144
(byte*) mode_hicolmcchar::col#2 517.3333333333334
(byte*) mode_hicolmcchar::col#3 202.0
(byte) mode_hicolmcchar::cx
(byte) mode_hicolmcchar::cx#1 1501.5
(byte) mode_hicolmcchar::cx#2 333.6666666666667
(byte) mode_hicolmcchar::cy
(byte) mode_hicolmcchar::cy#1 151.5
(byte) mode_hicolmcchar::cy#4 100.25000000000001
(byte) mode_hicolmcchar::i
(byte) mode_hicolmcchar::i#1 151.5
(byte) mode_hicolmcchar::i#2 202.0
(byte) mode_hicolmcchar::v
(byte) mode_hicolmcchar::v#0 1001.0
(void()) mode_hicolstdchar()
(byte~) mode_hicolstdchar::$25 2002.0
(byte~) mode_hicolstdchar::$26 1001.0
(byte~) mode_hicolstdchar::$27 2002.0
(byte*) mode_hicolstdchar::CHARSET
(byte*) mode_hicolstdchar::COLORS
(byte*) mode_hicolstdchar::SCREEN
(byte*) mode_hicolstdchar::ch
(byte*) mode_hicolstdchar::ch#1 420.59999999999997
(byte*) mode_hicolstdchar::ch#2 388.0
(byte*) mode_hicolstdchar::ch#3 202.0
(byte*) mode_hicolstdchar::col
(byte*) mode_hicolstdchar::col#1 300.42857142857144
(byte*) mode_hicolstdchar::col#2 517.3333333333334
(byte*) mode_hicolstdchar::col#3 202.0
(byte) mode_hicolstdchar::cx
(byte) mode_hicolstdchar::cx#1 1501.5
(byte) mode_hicolstdchar::cx#2 333.6666666666667
(byte) mode_hicolstdchar::cy
(byte) mode_hicolstdchar::cy#1 151.5
(byte) mode_hicolstdchar::cy#4 100.25000000000001
(byte) mode_hicolstdchar::i
(byte) mode_hicolstdchar::i#1 151.5
(byte) mode_hicolstdchar::i#2 202.0
(byte) mode_hicolstdchar::v
(byte) mode_hicolstdchar::v#0 1001.0
(void()) mode_mcchar()
(byte~) mode_mcchar::$26 2002.0
(byte~) mode_mcchar::$27 2002.0
(byte~) mode_mcchar::$28 2002.0
(byte~) mode_mcchar::$29 1001.0
(byte~) mode_mcchar::$30 2002.0
(byte~) mode_mcchar::$31 2002.0
(byte*) mode_mcchar::CHARSET
(byte*) mode_mcchar::COLORS
(byte*) mode_mcchar::SCREEN
(byte*) mode_mcchar::ch
(byte*) mode_mcchar::ch#1 420.59999999999997
(byte*) mode_mcchar::ch#2 310.4
(byte*) mode_mcchar::ch#3 202.0
(byte*) mode_mcchar::col
(byte*) mode_mcchar::col#1 191.1818181818182
(byte*) mode_mcchar::col#2 776.0
(byte*) mode_mcchar::col#3 202.0
(byte) mode_mcchar::cx
(byte) mode_mcchar::cx#1 1501.5
(byte) mode_mcchar::cx#2 364.0
(byte) mode_mcchar::cy
(byte) mode_mcchar::cy#1 151.5
(byte) mode_mcchar::cy#4 157.42857142857144
(byte) mode_mcchar::i
(byte) mode_mcchar::i#1 151.5
(byte) mode_mcchar::i#2 202.0
(void()) mode_sixsfred()
(byte~) mode_sixsfred::$17 2002.0
(byte~) mode_sixsfred::$18 2002.0
(byte~) mode_sixsfred::$21 2002.0
(byte*) mode_sixsfred::COLORS
(byte*) mode_sixsfred::PLANEA
(byte*) mode_sixsfred::PLANEB
(byte) mode_sixsfred::ax
(byte) mode_sixsfred::ax#1 1501.5
(byte) mode_sixsfred::ax#2 400.4
(byte) mode_sixsfred::ay
(byte) mode_sixsfred::ay#1 151.5
(byte) mode_sixsfred::ay#4 150.375
(byte) mode_sixsfred::bx
(byte) mode_sixsfred::bx#1 1501.5
(byte) mode_sixsfred::bx#2 667.3333333333334
(byte) mode_sixsfred::by
(byte) mode_sixsfred::by#1 151.5
(byte) mode_sixsfred::by#4 33.666666666666664
(byte*) mode_sixsfred::col
(byte*) mode_sixsfred::col#1 420.59999999999997
(byte*) mode_sixsfred::col#2 776.0
(byte*) mode_sixsfred::col#3 202.0
(byte) mode_sixsfred::cx
(byte) mode_sixsfred::cx#1 1501.5
(byte) mode_sixsfred::cx#2 600.5999999999999
(byte) mode_sixsfred::cy
(byte) mode_sixsfred::cy#1 151.5
(byte) mode_sixsfred::cy#4 150.375
(byte*) mode_sixsfred::gfxa
(byte*) mode_sixsfred::gfxa#1 420.59999999999997
(byte*) mode_sixsfred::gfxa#2 776.0
(byte*) mode_sixsfred::gfxa#3 202.0
(byte*) mode_sixsfred::gfxb
(byte*) mode_sixsfred::gfxb#1 420.59999999999997
(byte*) mode_sixsfred::gfxb#2 1552.0
(byte*) mode_sixsfred::gfxb#3 202.0
(byte) mode_sixsfred::i
(byte) mode_sixsfred::i#1 151.5
(byte) mode_sixsfred::i#2 202.0
(byte) mode_sixsfred::row
(byte) mode_sixsfred::row#0 2002.0
(byte[]) mode_sixsfred::row_bitmask
(void()) mode_sixsfred2()
(byte~) mode_sixsfred2::$15 2002.0
(byte~) mode_sixsfred2::$16 1001.0
(byte~) mode_sixsfred2::$17 2002.0
(byte~) mode_sixsfred2::$18 2002.0
(byte~) mode_sixsfred2::$21 2002.0
(byte*) mode_sixsfred2::COLORS
(byte*) mode_sixsfred2::PLANEA
(byte*) mode_sixsfred2::PLANEB
(byte) mode_sixsfred2::ax
(byte) mode_sixsfred2::ax#1 1501.5
(byte) mode_sixsfred2::ax#2 400.4
(byte) mode_sixsfred2::ay
(byte) mode_sixsfred2::ay#1 151.5
(byte) mode_sixsfred2::ay#4 150.375
(byte) mode_sixsfred2::bx
(byte) mode_sixsfred2::bx#1 1501.5
(byte) mode_sixsfred2::bx#2 667.3333333333334
(byte) mode_sixsfred2::by
(byte) mode_sixsfred2::by#1 151.5
(byte) mode_sixsfred2::by#4 33.666666666666664
(byte*) mode_sixsfred2::col
(byte*) mode_sixsfred2::col#1 420.59999999999997
(byte*) mode_sixsfred2::col#2 517.3333333333334
(byte*) mode_sixsfred2::col#3 202.0
(byte) mode_sixsfred2::cx
(byte) mode_sixsfred2::cx#1 1501.5
(byte) mode_sixsfred2::cx#2 429.0
(byte) mode_sixsfred2::cy
(byte) mode_sixsfred2::cy#1 151.5
(byte) mode_sixsfred2::cy#4 120.29999999999998
(byte*) mode_sixsfred2::gfxa
(byte*) mode_sixsfred2::gfxa#1 420.59999999999997
(byte*) mode_sixsfred2::gfxa#2 776.0
(byte*) mode_sixsfred2::gfxa#3 202.0
(byte*) mode_sixsfred2::gfxb
(byte*) mode_sixsfred2::gfxb#1 420.59999999999997
(byte*) mode_sixsfred2::gfxb#2 1552.0
(byte*) mode_sixsfred2::gfxb#3 202.0
(byte) mode_sixsfred2::i
(byte) mode_sixsfred2::i#1 151.5
(byte) mode_sixsfred2::i#2 202.0
(byte) mode_sixsfred2::row
(byte) mode_sixsfred2::row#0 2002.0
(byte[]) mode_sixsfred2::row_bitmask
(void()) mode_stdbitmap()
(byte~) mode_stdbitmap::$22 2002.0
(byte~) mode_stdbitmap::$25 2002.0
(byte~) mode_stdbitmap::$26 2002.0
(byte*) mode_stdbitmap::BITMAP
(byte*) mode_stdbitmap::SCREEN
(byte*) mode_stdbitmap::ch
(byte*) mode_stdbitmap::ch#1 420.59999999999997
(byte*) mode_stdbitmap::ch#2 443.42857142857144
(byte*) mode_stdbitmap::ch#3 202.0
(byte) mode_stdbitmap::col
(byte) mode_stdbitmap::col#0 1501.5
(byte) mode_stdbitmap::col2
(byte) mode_stdbitmap::col2#0 1001.0
(byte) mode_stdbitmap::cx
(byte) mode_stdbitmap::cx#1 1501.5
(byte) mode_stdbitmap::cx#2 375.375
(byte) mode_stdbitmap::cy
(byte) mode_stdbitmap::cy#1 151.5
(byte) mode_stdbitmap::cy#4 109.36363636363637
(byte) mode_stdbitmap::i
(byte) mode_stdbitmap::i#1 151.5
(byte) mode_stdbitmap::i#2 202.0
(byte) mode_stdbitmap::l
(byte) mode_stdbitmap::l#1 202.0
(byte) mode_stdbitmap::l#2 101.0
(byte) mode_stdbitmap::lines_cnt
(byte[]) mode_stdbitmap::lines_x
(byte[]) mode_stdbitmap::lines_y
(void()) mode_stdchar()
(byte~) mode_stdchar::$25 2002.0
(byte~) mode_stdchar::$26 2002.0
(byte~) mode_stdchar::$27 2002.0
(byte~) mode_stdchar::$28 1001.0
(byte~) mode_stdchar::$29 2002.0
(byte~) mode_stdchar::$30 2002.0
(byte*) mode_stdchar::CHARSET
(byte*) mode_stdchar::COLORS
(byte*) mode_stdchar::SCREEN
(byte*) mode_stdchar::ch
(byte*) mode_stdchar::ch#1 420.59999999999997
(byte*) mode_stdchar::ch#2 310.4
(byte*) mode_stdchar::ch#3 202.0
(byte*) mode_stdchar::col
(byte*) mode_stdchar::col#1 191.1818181818182
(byte*) mode_stdchar::col#2 776.0
(byte*) mode_stdchar::col#3 202.0
(byte) mode_stdchar::cx
(byte) mode_stdchar::cx#1 1501.5
(byte) mode_stdchar::cx#2 364.0
(byte) mode_stdchar::cy
(byte) mode_stdchar::cy#1 151.5
(byte) mode_stdchar::cy#4 157.42857142857144
(byte) mode_stdchar::i
(byte) mode_stdchar::i#1 151.5
(byte) mode_stdchar::i#2 202.0
(void()) mode_twoplanebitmap()
(byte~) mode_twoplanebitmap::$16 2002.0
(byte~) mode_twoplanebitmap::$17 1001.0
(byte~) mode_twoplanebitmap::$18 2002.0
(byte~) mode_twoplanebitmap::$19 2002.0
(byte~) mode_twoplanebitmap::$22 2002.0
(byte*) mode_twoplanebitmap::COLORS
(byte*) mode_twoplanebitmap::PLANEA
(byte*) mode_twoplanebitmap::PLANEB
(byte) mode_twoplanebitmap::ax
(byte) mode_twoplanebitmap::ax#1 1501.5
(byte) mode_twoplanebitmap::ax#2 250.25
(byte) mode_twoplanebitmap::ay
(byte) mode_twoplanebitmap::ay#1 151.5
(byte) mode_twoplanebitmap::ay#5 109.36363636363637
(byte) mode_twoplanebitmap::bx
(byte) mode_twoplanebitmap::bx#1 1501.5
(byte) mode_twoplanebitmap::bx#2 667.3333333333334
(byte) mode_twoplanebitmap::by
(byte) mode_twoplanebitmap::by#1 151.5
(byte) mode_twoplanebitmap::by#4 33.666666666666664
(byte*) mode_twoplanebitmap::col
(byte*) mode_twoplanebitmap::col#1 420.59999999999997
(byte*) mode_twoplanebitmap::col#2 517.3333333333334
(byte*) mode_twoplanebitmap::col#3 202.0
(byte) mode_twoplanebitmap::cx
(byte) mode_twoplanebitmap::cx#1 1501.5
(byte) mode_twoplanebitmap::cx#2 429.0
(byte) mode_twoplanebitmap::cy
(byte) mode_twoplanebitmap::cy#1 151.5
(byte) mode_twoplanebitmap::cy#4 120.29999999999998
(byte*) mode_twoplanebitmap::gfxa
(byte*) mode_twoplanebitmap::gfxa#1 2002.0
(byte*) mode_twoplanebitmap::gfxa#2 2002.0
(byte*) mode_twoplanebitmap::gfxa#3 1021.2
(byte*) mode_twoplanebitmap::gfxa#6 620.8
(byte*) mode_twoplanebitmap::gfxa#7 202.0
(byte*) mode_twoplanebitmap::gfxb
(byte*) mode_twoplanebitmap::gfxb#1 420.59999999999997
(byte*) mode_twoplanebitmap::gfxb#2 1552.0
(byte*) mode_twoplanebitmap::gfxb#3 202.0
(byte) mode_twoplanebitmap::i
(byte) mode_twoplanebitmap::i#1 151.5
(byte) mode_twoplanebitmap::i#2 202.0
(byte*) print_char_cursor
(byte*) print_char_cursor#1 2002.0
(byte*~) print_char_cursor#100 202.0
(byte*) print_char_cursor#17 821.0
(byte*) print_char_cursor#19 101.0
(byte*) print_char_cursor#32 572.0
(void()) print_cls()
(byte*) print_line_cursor
(byte*) print_line_cursor#17 8.583333333333332
(byte*) print_line_cursor#18 2004.0
(byte*) print_line_cursor#19 641.0
(void()) print_ln()
(byte*) print_screen
(void()) print_set_screen((byte*) print_set_screen::screen)
(byte*) print_set_screen::screen
(void()) print_str_lines((byte*) print_str_lines::str)
(byte) print_str_lines::ch
(byte) print_str_lines::ch#0 667.3333333333334
(byte*) print_str_lines::str
(byte*) print_str_lines::str#0 233.66666666666669
(byte*) print_str_lines::str#2 151.5
(byte*) print_str_lines::str#3 1552.0
Initial phi equivalence classes
[ menu::i#2 menu::i#1 ]
[ menu::c#2 menu::c#1 ]
[ mode_8bppchunkybmm::i#2 mode_8bppchunkybmm::i#1 ]
[ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ]
[ mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::x#1 ]
[ mode_8bppchunkybmm::gfxbCpuBank#4 mode_8bppchunkybmm::gfxbCpuBank#7 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::gfxbCpuBank#2 ]
[ mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::gfxb#1 ]
[ dtv_control#114 dtv_control#144 dtv_control#17 ]
[ mode_ctrl::ctrl#14 mode_ctrl::ctrl#22 mode_ctrl::ctrl#6 mode_ctrl::ctrl#13 mode_ctrl::ctrl#5 mode_ctrl::ctrl#12 mode_ctrl::ctrl#4 mode_ctrl::ctrl#11 mode_ctrl::ctrl#3 mode_ctrl::ctrl#10 mode_ctrl::ctrl#2 mode_ctrl::ctrl#17 mode_ctrl::ctrl#1 mode_ctrl::ctrl#0 ]
[ keyboard_key_pressed::key#20 ]
[ dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#1 ]
[ mode_8bpppixelcell::i#2 mode_8bpppixelcell::i#1 ]
[ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 ]
[ mode_8bpppixelcell::ax#2 mode_8bpppixelcell::ax#1 ]
[ mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::gfxa#1 ]
[ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ]
[ mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::chargen#4 mode_8bpppixelcell::chargen#1 ]
[ mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ]
[ mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ]
[ mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::gfxb#7 mode_8bpppixelcell::gfxb#1 ]
[ mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ]
[ mode_8bpppixelcell::cp#2 mode_8bpppixelcell::cp#1 ]
[ mode_8bpppixelcell::c#2 mode_8bpppixelcell::c#3 ]
[ mode_sixsfred::i#2 mode_sixsfred::i#1 ]
[ mode_sixsfred::cy#4 mode_sixsfred::cy#1 ]
[ mode_sixsfred::cx#2 mode_sixsfred::cx#1 ]
[ mode_sixsfred::col#2 mode_sixsfred::col#3 mode_sixsfred::col#1 ]
[ mode_sixsfred::ay#4 mode_sixsfred::ay#1 ]
[ mode_sixsfred::gfxa#2 mode_sixsfred::gfxa#3 mode_sixsfred::gfxa#1 ]
[ mode_sixsfred::ax#2 mode_sixsfred::ax#1 ]
[ mode_sixsfred::by#4 mode_sixsfred::by#1 ]
[ mode_sixsfred::gfxb#2 mode_sixsfred::gfxb#3 mode_sixsfred::gfxb#1 ]
[ mode_sixsfred::bx#2 mode_sixsfred::bx#1 ]
[ mode_twoplanebitmap::i#2 mode_twoplanebitmap::i#1 ]
[ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 ]
[ mode_twoplanebitmap::cx#2 mode_twoplanebitmap::cx#1 ]
[ mode_twoplanebitmap::col#2 mode_twoplanebitmap::col#3 mode_twoplanebitmap::col#1 ]
[ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 ]
[ mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::gfxa#7 mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::gfxa#1 ]
[ mode_twoplanebitmap::ax#2 mode_twoplanebitmap::ax#1 ]
[ mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 ]
[ mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::gfxb#3 mode_twoplanebitmap::gfxb#1 ]
[ mode_twoplanebitmap::bx#2 mode_twoplanebitmap::bx#1 ]
[ mode_sixsfred2::i#2 mode_sixsfred2::i#1 ]
[ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 ]
[ mode_sixsfred2::cx#2 mode_sixsfred2::cx#1 ]
[ mode_sixsfred2::col#2 mode_sixsfred2::col#3 mode_sixsfred2::col#1 ]
[ mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 ]
[ mode_sixsfred2::gfxa#2 mode_sixsfred2::gfxa#3 mode_sixsfred2::gfxa#1 ]
[ mode_sixsfred2::ax#2 mode_sixsfred2::ax#1 ]
[ mode_sixsfred2::by#4 mode_sixsfred2::by#1 ]
[ mode_sixsfred2::gfxb#2 mode_sixsfred2::gfxb#3 mode_sixsfred2::gfxb#1 ]
[ mode_sixsfred2::bx#2 mode_sixsfred2::bx#1 ]
[ mode_hicolmcchar::i#2 mode_hicolmcchar::i#1 ]
[ mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 ]
[ mode_hicolmcchar::cx#2 mode_hicolmcchar::cx#1 ]
[ mode_hicolmcchar::col#2 mode_hicolmcchar::col#3 mode_hicolmcchar::col#1 ]
[ mode_hicolmcchar::ch#2 mode_hicolmcchar::ch#3 mode_hicolmcchar::ch#1 ]
[ mode_hicolecmchar::i#2 mode_hicolecmchar::i#1 ]
[ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 ]
[ mode_hicolecmchar::cx#2 mode_hicolecmchar::cx#1 ]
[ mode_hicolecmchar::col#2 mode_hicolecmchar::col#3 mode_hicolecmchar::col#1 ]
[ mode_hicolecmchar::ch#2 mode_hicolecmchar::ch#3 mode_hicolecmchar::ch#1 ]
[ mode_hicolstdchar::i#2 mode_hicolstdchar::i#1 ]
[ mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 ]
[ mode_hicolstdchar::cx#2 mode_hicolstdchar::cx#1 ]
[ mode_hicolstdchar::col#2 mode_hicolstdchar::col#3 mode_hicolstdchar::col#1 ]
[ mode_hicolstdchar::ch#2 mode_hicolstdchar::ch#3 mode_hicolstdchar::ch#1 ]
[ mode_stdbitmap::i#2 mode_stdbitmap::i#1 ]
[ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 ]
[ mode_stdbitmap::cx#2 mode_stdbitmap::cx#1 ]
[ mode_stdbitmap::ch#2 mode_stdbitmap::ch#3 mode_stdbitmap::ch#1 ]
[ mode_stdbitmap::l#2 mode_stdbitmap::l#1 ]
[ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 ]
[ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 ]
[ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::x1#1 ]
[ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#2 ]
[ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 ]
[ bitmap_line_xdyi::e#3 bitmap_line_xdyi::e#0 bitmap_line_xdyi::e#6 bitmap_line_xdyi::e#2 bitmap_line_xdyi::e#1 ]
[ bitmap_plot::x#4 bitmap_plot::x#1 bitmap_plot::x#0 bitmap_plot::x#3 bitmap_plot::x#2 ]
[ bitmap_plot::y#4 bitmap_plot::y#1 bitmap_plot::y#0 bitmap_plot::y#3 bitmap_plot::y#2 ]
[ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 ]
[ bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 ]
[ bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 ]
[ bitmap_line_ydxi::x#3 bitmap_line_ydxi::x#5 bitmap_line_ydxi::x#1 bitmap_line_ydxi::x#0 bitmap_line_ydxi::x#6 bitmap_line_ydxi::x#2 ]
[ bitmap_line_ydxi::y#3 bitmap_line_ydxi::y#6 bitmap_line_ydxi::y#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::y#2 ]
[ bitmap_line_ydxi::e#3 bitmap_line_ydxi::e#0 bitmap_line_ydxi::e#6 bitmap_line_ydxi::e#2 bitmap_line_ydxi::e#1 ]
[ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#0 bitmap_line_xdyd::yd#1 ]
[ bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::xd#1 ]
[ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::x1#1 ]
[ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#2 ]
[ bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 ]
[ bitmap_line_xdyd::e#3 bitmap_line_xdyd::e#0 bitmap_line_xdyd::e#6 bitmap_line_xdyd::e#2 bitmap_line_xdyd::e#1 ]
[ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ]
[ bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 ]
[ bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 ]
[ bitmap_line_ydxd::x#3 bitmap_line_ydxd::x#5 bitmap_line_ydxd::x#0 bitmap_line_ydxd::x#1 bitmap_line_ydxd::x#6 bitmap_line_ydxd::x#2 ]
[ bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#3 ]
[ bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 ]
[ bitmap_clear::y#4 bitmap_clear::y#1 ]
[ bitmap_clear::bitmap#2 bitmap_clear::bitmap#3 bitmap_clear::bitmap#5 bitmap_clear::bitmap#1 ]
[ bitmap_clear::x#2 bitmap_clear::x#1 ]
[ bitmap_init::x#2 bitmap_init::x#1 ]
[ bitmap_init::bits#3 bitmap_init::bits#4 bitmap_init::bits#1 ]
[ bitmap_init::y#2 bitmap_init::y#1 ]
[ bitmap_init::yoffs#2 bitmap_init::yoffs#4 bitmap_init::yoffs#1 ]
[ mode_mcchar::i#2 mode_mcchar::i#1 ]
[ mode_mcchar::cy#4 mode_mcchar::cy#1 ]
[ mode_mcchar::cx#2 mode_mcchar::cx#1 ]
[ mode_mcchar::col#2 mode_mcchar::col#3 mode_mcchar::col#1 ]
[ mode_mcchar::ch#2 mode_mcchar::ch#3 mode_mcchar::ch#1 ]
[ mode_ecmchar::i#2 mode_ecmchar::i#1 ]
[ mode_ecmchar::cy#4 mode_ecmchar::cy#1 ]
[ mode_ecmchar::cx#2 mode_ecmchar::cx#1 ]
[ mode_ecmchar::col#2 mode_ecmchar::col#3 mode_ecmchar::col#1 ]
[ mode_ecmchar::ch#2 mode_ecmchar::ch#3 mode_ecmchar::ch#1 ]
[ mode_stdchar::i#2 mode_stdchar::i#1 ]
[ mode_stdchar::cy#4 mode_stdchar::cy#1 ]
[ mode_stdchar::cx#2 mode_stdchar::cx#1 ]
[ mode_stdchar::col#2 mode_stdchar::col#3 mode_stdchar::col#1 ]
[ mode_stdchar::ch#2 mode_stdchar::ch#3 mode_stdchar::ch#1 ]
[ print_str_lines::str#3 print_str_lines::str#2 print_str_lines::str#0 ]
[ print_char_cursor#17 print_char_cursor#19 print_char_cursor#100 print_char_cursor#32 print_char_cursor#1 ]
[ print_line_cursor#18 print_line_cursor#17 print_line_cursor#19 ]
[ memset::dst#2 memset::dst#1 ]
Added variable keyboard_key_pressed::return#2 to zero page equivalence class [ keyboard_key_pressed::return#2 ]
Added variable menu::$29 to zero page equivalence class [ menu::$29 ]
Added variable keyboard_key_pressed::return#24 to zero page equivalence class [ keyboard_key_pressed::return#24 ]
Added variable menu::$33 to zero page equivalence class [ menu::$33 ]
Added variable keyboard_key_pressed::return#25 to zero page equivalence class [ keyboard_key_pressed::return#25 ]
Added variable menu::$37 to zero page equivalence class [ menu::$37 ]
Added variable keyboard_key_pressed::return#26 to zero page equivalence class [ keyboard_key_pressed::return#26 ]
Added variable menu::$41 to zero page equivalence class [ menu::$41 ]
Added variable keyboard_key_pressed::return#27 to zero page equivalence class [ keyboard_key_pressed::return#27 ]
Added variable menu::$45 to zero page equivalence class [ menu::$45 ]
Added variable keyboard_key_pressed::return#28 to zero page equivalence class [ keyboard_key_pressed::return#28 ]
Added variable menu::$49 to zero page equivalence class [ menu::$49 ]
Added variable keyboard_key_pressed::return#29 to zero page equivalence class [ keyboard_key_pressed::return#29 ]
Added variable menu::$53 to zero page equivalence class [ menu::$53 ]
Added variable keyboard_key_pressed::return#30 to zero page equivalence class [ keyboard_key_pressed::return#30 ]
Added variable menu::$57 to zero page equivalence class [ menu::$57 ]
Added variable keyboard_key_pressed::return#10 to zero page equivalence class [ keyboard_key_pressed::return#10 ]
Added variable menu::$61 to zero page equivalence class [ menu::$61 ]
Added variable keyboard_key_pressed::return#11 to zero page equivalence class [ keyboard_key_pressed::return#11 ]
Added variable menu::$65 to zero page equivalence class [ menu::$65 ]
Added variable keyboard_key_pressed::return#12 to zero page equivalence class [ keyboard_key_pressed::return#12 ]
Added variable menu::$69 to zero page equivalence class [ menu::$69 ]
Added variable keyboard_key_pressed::return#13 to zero page equivalence class [ keyboard_key_pressed::return#13 ]
Added variable menu::$73 to zero page equivalence class [ menu::$73 ]
Added variable mode_8bppchunkybmm::$26 to zero page equivalence class [ mode_8bppchunkybmm::$26 ]
Added variable mode_8bppchunkybmm::c#0 to zero page equivalence class [ mode_8bppchunkybmm::c#0 ]
Added variable keyboard_key_pressed::return#14 to zero page equivalence class [ keyboard_key_pressed::return#14 ]
Added variable mode_ctrl::$1 to zero page equivalence class [ mode_ctrl::$1 ]
Added variable keyboard_key_pressed::return#15 to zero page equivalence class [ keyboard_key_pressed::return#15 ]
Added variable mode_ctrl::$4 to zero page equivalence class [ mode_ctrl::$4 ]
Added variable keyboard_key_pressed::return#16 to zero page equivalence class [ keyboard_key_pressed::return#16 ]
Added variable mode_ctrl::$8 to zero page equivalence class [ mode_ctrl::$8 ]
Added variable keyboard_key_pressed::return#17 to zero page equivalence class [ keyboard_key_pressed::return#17 ]
Added variable mode_ctrl::$12 to zero page equivalence class [ mode_ctrl::$12 ]
Added variable keyboard_key_pressed::return#18 to zero page equivalence class [ keyboard_key_pressed::return#18 ]
Added variable mode_ctrl::$16 to zero page equivalence class [ mode_ctrl::$16 ]
Added variable keyboard_key_pressed::return#19 to zero page equivalence class [ keyboard_key_pressed::return#19 ]
Added variable mode_ctrl::$20 to zero page equivalence class [ mode_ctrl::$20 ]
Added variable keyboard_key_pressed::return#20 to zero page equivalence class [ keyboard_key_pressed::return#20 ]
Added variable mode_ctrl::$24 to zero page equivalence class [ mode_ctrl::$24 ]
Added variable keyboard_key_pressed::return#21 to zero page equivalence class [ keyboard_key_pressed::return#21 ]
Added variable mode_ctrl::$28 to zero page equivalence class [ mode_ctrl::$28 ]
Added variable keyboard_key_pressed::colidx#0 to zero page equivalence class [ keyboard_key_pressed::colidx#0 ]
Added variable keyboard_key_pressed::rowidx#0 to zero page equivalence class [ keyboard_key_pressed::rowidx#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_key_pressed::$2 to zero page equivalence class [ keyboard_key_pressed::$2 ]
Added variable keyboard_key_pressed::return#0 to zero page equivalence class [ keyboard_key_pressed::return#0 ]
Added variable keyboard_matrix_read::return#0 to zero page equivalence class [ keyboard_matrix_read::return#0 ]
Added variable mode_8bpppixelcell::$14 to zero page equivalence class [ mode_8bpppixelcell::$14 ]
Added variable mode_8bpppixelcell::$15 to zero page equivalence class [ mode_8bpppixelcell::$15 ]
Added variable mode_8bpppixelcell::$16 to zero page equivalence class [ mode_8bpppixelcell::$16 ]
Added variable mode_8bpppixelcell::$17 to zero page equivalence class [ mode_8bpppixelcell::$17 ]
Added variable mode_8bpppixelcell::$20 to zero page equivalence class [ mode_8bpppixelcell::$20 ]
Added variable mode_sixsfred::$17 to zero page equivalence class [ mode_sixsfred::$17 ]
Added variable mode_sixsfred::$18 to zero page equivalence class [ mode_sixsfred::$18 ]
Added variable mode_sixsfred::$21 to zero page equivalence class [ mode_sixsfred::$21 ]
Added variable mode_sixsfred::row#0 to zero page equivalence class [ mode_sixsfred::row#0 ]
Added variable mode_twoplanebitmap::$16 to zero page equivalence class [ mode_twoplanebitmap::$16 ]
Added variable mode_twoplanebitmap::$17 to zero page equivalence class [ mode_twoplanebitmap::$17 ]
Added variable mode_twoplanebitmap::$18 to zero page equivalence class [ mode_twoplanebitmap::$18 ]
Added variable mode_twoplanebitmap::$19 to zero page equivalence class [ mode_twoplanebitmap::$19 ]
Added variable mode_twoplanebitmap::$22 to zero page equivalence class [ mode_twoplanebitmap::$22 ]
Added variable mode_sixsfred2::$15 to zero page equivalence class [ mode_sixsfred2::$15 ]
Added variable mode_sixsfred2::$16 to zero page equivalence class [ mode_sixsfred2::$16 ]
Added variable mode_sixsfred2::$17 to zero page equivalence class [ mode_sixsfred2::$17 ]
Added variable mode_sixsfred2::$18 to zero page equivalence class [ mode_sixsfred2::$18 ]
Added variable mode_sixsfred2::$21 to zero page equivalence class [ mode_sixsfred2::$21 ]
Added variable mode_sixsfred2::row#0 to zero page equivalence class [ mode_sixsfred2::row#0 ]
Added variable mode_hicolmcchar::$26 to zero page equivalence class [ mode_hicolmcchar::$26 ]
Added variable mode_hicolmcchar::$27 to zero page equivalence class [ mode_hicolmcchar::$27 ]
Added variable mode_hicolmcchar::$28 to zero page equivalence class [ mode_hicolmcchar::$28 ]
Added variable mode_hicolmcchar::v#0 to zero page equivalence class [ mode_hicolmcchar::v#0 ]
Added variable mode_hicolecmchar::$26 to zero page equivalence class [ mode_hicolecmchar::$26 ]
Added variable mode_hicolecmchar::$27 to zero page equivalence class [ mode_hicolecmchar::$27 ]
Added variable mode_hicolecmchar::$28 to zero page equivalence class [ mode_hicolecmchar::$28 ]
Added variable mode_hicolecmchar::v#0 to zero page equivalence class [ mode_hicolecmchar::v#0 ]
Added variable mode_hicolstdchar::$25 to zero page equivalence class [ mode_hicolstdchar::$25 ]
Added variable mode_hicolstdchar::$26 to zero page equivalence class [ mode_hicolstdchar::$26 ]
Added variable mode_hicolstdchar::$27 to zero page equivalence class [ mode_hicolstdchar::$27 ]
Added variable mode_hicolstdchar::v#0 to zero page equivalence class [ mode_hicolstdchar::v#0 ]
Added variable mode_stdbitmap::$22 to zero page equivalence class [ mode_stdbitmap::$22 ]
Added variable mode_stdbitmap::col#0 to zero page equivalence class [ mode_stdbitmap::col#0 ]
Added variable mode_stdbitmap::col2#0 to zero page equivalence class [ mode_stdbitmap::col2#0 ]
Added variable mode_stdbitmap::$25 to zero page equivalence class [ mode_stdbitmap::$25 ]
Added variable mode_stdbitmap::$26 to zero page equivalence class [ mode_stdbitmap::$26 ]
Added variable bitmap_line::x0#0 to zero page equivalence class [ bitmap_line::x0#0 ]
Added variable bitmap_line::x1#0 to zero page equivalence class [ bitmap_line::x1#0 ]
Added variable bitmap_line::y0#0 to zero page equivalence class [ bitmap_line::y0#0 ]
Added variable bitmap_line::y1#0 to zero page equivalence class [ bitmap_line::y1#0 ]
Added variable bitmap_line::xd#2 to zero page equivalence class [ bitmap_line::xd#2 ]
Added variable bitmap_line::yd#2 to zero page equivalence class [ bitmap_line::yd#2 ]
Added variable bitmap_line::yd#1 to zero page equivalence class [ bitmap_line::yd#1 ]
Added variable bitmap_line::xd#1 to zero page equivalence class [ bitmap_line::xd#1 ]
Added variable bitmap_line::yd#10 to zero page equivalence class [ bitmap_line::yd#10 ]
Added variable bitmap_line::yd#11 to zero page equivalence class [ bitmap_line::yd#11 ]
Added variable bitmap_line_xdyi::$6 to zero page equivalence class [ bitmap_line_xdyi::$6 ]
Added variable bitmap_plot::plotter_x#0 to zero page equivalence class [ bitmap_plot::plotter_x#0 ]
Added variable bitmap_plot::plotter_y#0 to zero page equivalence class [ bitmap_plot::plotter_y#0 ]
Added variable bitmap_plot::plotter#0 to zero page equivalence class [ bitmap_plot::plotter#0 ]
Added variable bitmap_plot::$1 to zero page equivalence class [ bitmap_plot::$1 ]
Added variable bitmap_line_ydxi::$6 to zero page equivalence class [ bitmap_line_ydxi::$6 ]
Added variable bitmap_line_xdyd::$6 to zero page equivalence class [ bitmap_line_xdyd::$6 ]
Added variable bitmap_line_ydxd::$6 to zero page equivalence class [ bitmap_line_ydxd::$6 ]
Added variable bitmap_clear::bitmap#0 to zero page equivalence class [ bitmap_clear::bitmap#0 ]
Added variable bitmap_init::$0 to zero page equivalence class [ bitmap_init::$0 ]
Added variable bitmap_init::$10 to zero page equivalence class [ bitmap_init::$10 ]
Added variable bitmap_init::$7 to zero page equivalence class [ bitmap_init::$7 ]
Added variable bitmap_init::$8 to zero page equivalence class [ bitmap_init::$8 ]
Added variable bitmap_init::$9 to zero page equivalence class [ bitmap_init::$9 ]
Added variable mode_mcchar::$26 to zero page equivalence class [ mode_mcchar::$26 ]
Added variable mode_mcchar::$27 to zero page equivalence class [ mode_mcchar::$27 ]
Added variable mode_mcchar::$28 to zero page equivalence class [ mode_mcchar::$28 ]
Added variable mode_mcchar::$29 to zero page equivalence class [ mode_mcchar::$29 ]
Added variable mode_mcchar::$30 to zero page equivalence class [ mode_mcchar::$30 ]
Added variable mode_mcchar::$31 to zero page equivalence class [ mode_mcchar::$31 ]
Added variable mode_ecmchar::$26 to zero page equivalence class [ mode_ecmchar::$26 ]
Added variable mode_ecmchar::$27 to zero page equivalence class [ mode_ecmchar::$27 ]
Added variable mode_ecmchar::$28 to zero page equivalence class [ mode_ecmchar::$28 ]
Added variable mode_ecmchar::$29 to zero page equivalence class [ mode_ecmchar::$29 ]
Added variable mode_ecmchar::$30 to zero page equivalence class [ mode_ecmchar::$30 ]
Added variable mode_ecmchar::$31 to zero page equivalence class [ mode_ecmchar::$31 ]
Added variable mode_stdchar::$25 to zero page equivalence class [ mode_stdchar::$25 ]
Added variable mode_stdchar::$26 to zero page equivalence class [ mode_stdchar::$26 ]
Added variable mode_stdchar::$27 to zero page equivalence class [ mode_stdchar::$27 ]
Added variable mode_stdchar::$28 to zero page equivalence class [ mode_stdchar::$28 ]
Added variable mode_stdchar::$29 to zero page equivalence class [ mode_stdchar::$29 ]
Added variable mode_stdchar::$30 to zero page equivalence class [ mode_stdchar::$30 ]
Added variable print_str_lines::ch#0 to zero page equivalence class [ print_str_lines::ch#0 ]
Complete equivalence classes
[ menu::i#2 menu::i#1 ]
[ menu::c#2 menu::c#1 ]
[ mode_8bppchunkybmm::i#2 mode_8bppchunkybmm::i#1 ]
[ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ]
[ mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::x#1 ]
[ mode_8bppchunkybmm::gfxbCpuBank#4 mode_8bppchunkybmm::gfxbCpuBank#7 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::gfxbCpuBank#2 ]
[ mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::gfxb#1 ]
[ dtv_control#114 dtv_control#144 dtv_control#17 ]
[ mode_ctrl::ctrl#14 mode_ctrl::ctrl#22 mode_ctrl::ctrl#6 mode_ctrl::ctrl#13 mode_ctrl::ctrl#5 mode_ctrl::ctrl#12 mode_ctrl::ctrl#4 mode_ctrl::ctrl#11 mode_ctrl::ctrl#3 mode_ctrl::ctrl#10 mode_ctrl::ctrl#2 mode_ctrl::ctrl#17 mode_ctrl::ctrl#1 mode_ctrl::ctrl#0 ]
[ keyboard_key_pressed::key#20 ]
[ dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#1 ]
[ mode_8bpppixelcell::i#2 mode_8bpppixelcell::i#1 ]
[ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 ]
[ mode_8bpppixelcell::ax#2 mode_8bpppixelcell::ax#1 ]
[ mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::gfxa#1 ]
[ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ]
[ mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::chargen#4 mode_8bpppixelcell::chargen#1 ]
[ mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ]
[ mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ]
[ mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::gfxb#7 mode_8bpppixelcell::gfxb#1 ]
[ mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ]
[ mode_8bpppixelcell::cp#2 mode_8bpppixelcell::cp#1 ]
[ mode_8bpppixelcell::c#2 mode_8bpppixelcell::c#3 ]
[ mode_sixsfred::i#2 mode_sixsfred::i#1 ]
[ mode_sixsfred::cy#4 mode_sixsfred::cy#1 ]
[ mode_sixsfred::cx#2 mode_sixsfred::cx#1 ]
[ mode_sixsfred::col#2 mode_sixsfred::col#3 mode_sixsfred::col#1 ]
[ mode_sixsfred::ay#4 mode_sixsfred::ay#1 ]
[ mode_sixsfred::gfxa#2 mode_sixsfred::gfxa#3 mode_sixsfred::gfxa#1 ]
[ mode_sixsfred::ax#2 mode_sixsfred::ax#1 ]
[ mode_sixsfred::by#4 mode_sixsfred::by#1 ]
[ mode_sixsfred::gfxb#2 mode_sixsfred::gfxb#3 mode_sixsfred::gfxb#1 ]
[ mode_sixsfred::bx#2 mode_sixsfred::bx#1 ]
[ mode_twoplanebitmap::i#2 mode_twoplanebitmap::i#1 ]
[ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 ]
[ mode_twoplanebitmap::cx#2 mode_twoplanebitmap::cx#1 ]
[ mode_twoplanebitmap::col#2 mode_twoplanebitmap::col#3 mode_twoplanebitmap::col#1 ]
[ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 ]
[ mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::gfxa#7 mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::gfxa#1 ]
[ mode_twoplanebitmap::ax#2 mode_twoplanebitmap::ax#1 ]
[ mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 ]
[ mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::gfxb#3 mode_twoplanebitmap::gfxb#1 ]
[ mode_twoplanebitmap::bx#2 mode_twoplanebitmap::bx#1 ]
[ mode_sixsfred2::i#2 mode_sixsfred2::i#1 ]
[ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 ]
[ mode_sixsfred2::cx#2 mode_sixsfred2::cx#1 ]
[ mode_sixsfred2::col#2 mode_sixsfred2::col#3 mode_sixsfred2::col#1 ]
[ mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 ]
[ mode_sixsfred2::gfxa#2 mode_sixsfred2::gfxa#3 mode_sixsfred2::gfxa#1 ]
[ mode_sixsfred2::ax#2 mode_sixsfred2::ax#1 ]
[ mode_sixsfred2::by#4 mode_sixsfred2::by#1 ]
[ mode_sixsfred2::gfxb#2 mode_sixsfred2::gfxb#3 mode_sixsfred2::gfxb#1 ]
[ mode_sixsfred2::bx#2 mode_sixsfred2::bx#1 ]
[ mode_hicolmcchar::i#2 mode_hicolmcchar::i#1 ]
[ mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 ]
[ mode_hicolmcchar::cx#2 mode_hicolmcchar::cx#1 ]
[ mode_hicolmcchar::col#2 mode_hicolmcchar::col#3 mode_hicolmcchar::col#1 ]
[ mode_hicolmcchar::ch#2 mode_hicolmcchar::ch#3 mode_hicolmcchar::ch#1 ]
[ mode_hicolecmchar::i#2 mode_hicolecmchar::i#1 ]
[ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 ]
[ mode_hicolecmchar::cx#2 mode_hicolecmchar::cx#1 ]
[ mode_hicolecmchar::col#2 mode_hicolecmchar::col#3 mode_hicolecmchar::col#1 ]
[ mode_hicolecmchar::ch#2 mode_hicolecmchar::ch#3 mode_hicolecmchar::ch#1 ]
[ mode_hicolstdchar::i#2 mode_hicolstdchar::i#1 ]
[ mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 ]
[ mode_hicolstdchar::cx#2 mode_hicolstdchar::cx#1 ]
[ mode_hicolstdchar::col#2 mode_hicolstdchar::col#3 mode_hicolstdchar::col#1 ]
[ mode_hicolstdchar::ch#2 mode_hicolstdchar::ch#3 mode_hicolstdchar::ch#1 ]
[ mode_stdbitmap::i#2 mode_stdbitmap::i#1 ]
[ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 ]
[ mode_stdbitmap::cx#2 mode_stdbitmap::cx#1 ]
[ mode_stdbitmap::ch#2 mode_stdbitmap::ch#3 mode_stdbitmap::ch#1 ]
[ mode_stdbitmap::l#2 mode_stdbitmap::l#1 ]
[ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 ]
[ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 ]
[ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::x1#1 ]
[ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#2 ]
[ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 ]
[ bitmap_line_xdyi::e#3 bitmap_line_xdyi::e#0 bitmap_line_xdyi::e#6 bitmap_line_xdyi::e#2 bitmap_line_xdyi::e#1 ]
[ bitmap_plot::x#4 bitmap_plot::x#1 bitmap_plot::x#0 bitmap_plot::x#3 bitmap_plot::x#2 ]
[ bitmap_plot::y#4 bitmap_plot::y#1 bitmap_plot::y#0 bitmap_plot::y#3 bitmap_plot::y#2 ]
[ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 ]
[ bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 ]
[ bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 ]
[ bitmap_line_ydxi::x#3 bitmap_line_ydxi::x#5 bitmap_line_ydxi::x#1 bitmap_line_ydxi::x#0 bitmap_line_ydxi::x#6 bitmap_line_ydxi::x#2 ]
[ bitmap_line_ydxi::y#3 bitmap_line_ydxi::y#6 bitmap_line_ydxi::y#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::y#2 ]
[ bitmap_line_ydxi::e#3 bitmap_line_ydxi::e#0 bitmap_line_ydxi::e#6 bitmap_line_ydxi::e#2 bitmap_line_ydxi::e#1 ]
[ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#0 bitmap_line_xdyd::yd#1 ]
[ bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::xd#1 ]
[ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::x1#1 ]
[ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#2 ]
[ bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 ]
[ bitmap_line_xdyd::e#3 bitmap_line_xdyd::e#0 bitmap_line_xdyd::e#6 bitmap_line_xdyd::e#2 bitmap_line_xdyd::e#1 ]
[ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ]
[ bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 ]
[ bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 ]
[ bitmap_line_ydxd::x#3 bitmap_line_ydxd::x#5 bitmap_line_ydxd::x#0 bitmap_line_ydxd::x#1 bitmap_line_ydxd::x#6 bitmap_line_ydxd::x#2 ]
[ bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#3 ]
[ bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 ]
[ bitmap_clear::y#4 bitmap_clear::y#1 ]
[ bitmap_clear::bitmap#2 bitmap_clear::bitmap#3 bitmap_clear::bitmap#5 bitmap_clear::bitmap#1 ]
[ bitmap_clear::x#2 bitmap_clear::x#1 ]
[ bitmap_init::x#2 bitmap_init::x#1 ]
[ bitmap_init::bits#3 bitmap_init::bits#4 bitmap_init::bits#1 ]
[ bitmap_init::y#2 bitmap_init::y#1 ]
[ bitmap_init::yoffs#2 bitmap_init::yoffs#4 bitmap_init::yoffs#1 ]
[ mode_mcchar::i#2 mode_mcchar::i#1 ]
[ mode_mcchar::cy#4 mode_mcchar::cy#1 ]
[ mode_mcchar::cx#2 mode_mcchar::cx#1 ]
[ mode_mcchar::col#2 mode_mcchar::col#3 mode_mcchar::col#1 ]
[ mode_mcchar::ch#2 mode_mcchar::ch#3 mode_mcchar::ch#1 ]
[ mode_ecmchar::i#2 mode_ecmchar::i#1 ]
[ mode_ecmchar::cy#4 mode_ecmchar::cy#1 ]
[ mode_ecmchar::cx#2 mode_ecmchar::cx#1 ]
[ mode_ecmchar::col#2 mode_ecmchar::col#3 mode_ecmchar::col#1 ]
[ mode_ecmchar::ch#2 mode_ecmchar::ch#3 mode_ecmchar::ch#1 ]
[ mode_stdchar::i#2 mode_stdchar::i#1 ]
[ mode_stdchar::cy#4 mode_stdchar::cy#1 ]
[ mode_stdchar::cx#2 mode_stdchar::cx#1 ]
[ mode_stdchar::col#2 mode_stdchar::col#3 mode_stdchar::col#1 ]
[ mode_stdchar::ch#2 mode_stdchar::ch#3 mode_stdchar::ch#1 ]
[ print_str_lines::str#3 print_str_lines::str#2 print_str_lines::str#0 ]
[ print_char_cursor#17 print_char_cursor#19 print_char_cursor#100 print_char_cursor#32 print_char_cursor#1 ]
[ print_line_cursor#18 print_line_cursor#17 print_line_cursor#19 ]
[ memset::dst#2 memset::dst#1 ]
[ keyboard_key_pressed::return#2 ]
[ menu::$29 ]
[ keyboard_key_pressed::return#24 ]
[ menu::$33 ]
[ keyboard_key_pressed::return#25 ]
[ menu::$37 ]
[ keyboard_key_pressed::return#26 ]
[ menu::$41 ]
[ keyboard_key_pressed::return#27 ]
[ menu::$45 ]
[ keyboard_key_pressed::return#28 ]
[ menu::$49 ]
[ keyboard_key_pressed::return#29 ]
[ menu::$53 ]
[ keyboard_key_pressed::return#30 ]
[ menu::$57 ]
[ keyboard_key_pressed::return#10 ]
[ menu::$61 ]
[ keyboard_key_pressed::return#11 ]
[ menu::$65 ]
[ keyboard_key_pressed::return#12 ]
[ menu::$69 ]
[ keyboard_key_pressed::return#13 ]
[ menu::$73 ]
[ mode_8bppchunkybmm::$26 ]
[ mode_8bppchunkybmm::c#0 ]
[ keyboard_key_pressed::return#14 ]
[ mode_ctrl::$1 ]
[ keyboard_key_pressed::return#15 ]
[ mode_ctrl::$4 ]
[ keyboard_key_pressed::return#16 ]
[ mode_ctrl::$8 ]
[ keyboard_key_pressed::return#17 ]
[ mode_ctrl::$12 ]
[ keyboard_key_pressed::return#18 ]
[ mode_ctrl::$16 ]
[ keyboard_key_pressed::return#19 ]
[ mode_ctrl::$20 ]
[ keyboard_key_pressed::return#20 ]
[ mode_ctrl::$24 ]
[ keyboard_key_pressed::return#21 ]
[ mode_ctrl::$28 ]
[ keyboard_key_pressed::colidx#0 ]
[ keyboard_key_pressed::rowidx#0 ]
[ keyboard_matrix_read::rowid#0 ]
[ keyboard_matrix_read::return#2 ]
[ keyboard_key_pressed::$2 ]
[ keyboard_key_pressed::return#0 ]
[ keyboard_matrix_read::return#0 ]
[ mode_8bpppixelcell::$14 ]
[ mode_8bpppixelcell::$15 ]
[ mode_8bpppixelcell::$16 ]
[ mode_8bpppixelcell::$17 ]
[ mode_8bpppixelcell::$20 ]
[ mode_sixsfred::$17 ]
[ mode_sixsfred::$18 ]
[ mode_sixsfred::$21 ]
[ mode_sixsfred::row#0 ]
[ mode_twoplanebitmap::$16 ]
[ mode_twoplanebitmap::$17 ]
[ mode_twoplanebitmap::$18 ]
[ mode_twoplanebitmap::$19 ]
[ mode_twoplanebitmap::$22 ]
[ mode_sixsfred2::$15 ]
[ mode_sixsfred2::$16 ]
[ mode_sixsfred2::$17 ]
[ mode_sixsfred2::$18 ]
[ mode_sixsfred2::$21 ]
[ mode_sixsfred2::row#0 ]
[ mode_hicolmcchar::$26 ]
[ mode_hicolmcchar::$27 ]
[ mode_hicolmcchar::$28 ]
[ mode_hicolmcchar::v#0 ]
[ mode_hicolecmchar::$26 ]
[ mode_hicolecmchar::$27 ]
[ mode_hicolecmchar::$28 ]
[ mode_hicolecmchar::v#0 ]
[ mode_hicolstdchar::$25 ]
[ mode_hicolstdchar::$26 ]
[ mode_hicolstdchar::$27 ]
[ mode_hicolstdchar::v#0 ]
[ mode_stdbitmap::$22 ]
[ mode_stdbitmap::col#0 ]
[ mode_stdbitmap::col2#0 ]
[ mode_stdbitmap::$25 ]
[ mode_stdbitmap::$26 ]
[ bitmap_line::x0#0 ]
[ bitmap_line::x1#0 ]
[ bitmap_line::y0#0 ]
[ bitmap_line::y1#0 ]
[ bitmap_line::xd#2 ]
[ bitmap_line::yd#2 ]
[ bitmap_line::yd#1 ]
[ bitmap_line::xd#1 ]
[ bitmap_line::yd#10 ]
[ bitmap_line::yd#11 ]
[ bitmap_line_xdyi::$6 ]
[ bitmap_plot::plotter_x#0 ]
[ bitmap_plot::plotter_y#0 ]
[ bitmap_plot::plotter#0 ]
[ bitmap_plot::$1 ]
[ bitmap_line_ydxi::$6 ]
[ bitmap_line_xdyd::$6 ]
[ bitmap_line_ydxd::$6 ]
[ bitmap_clear::bitmap#0 ]
[ bitmap_init::$0 ]
[ bitmap_init::$10 ]
[ bitmap_init::$7 ]
[ bitmap_init::$8 ]
[ bitmap_init::$9 ]
[ mode_mcchar::$26 ]
[ mode_mcchar::$27 ]
[ mode_mcchar::$28 ]
[ mode_mcchar::$29 ]
[ mode_mcchar::$30 ]
[ mode_mcchar::$31 ]
[ mode_ecmchar::$26 ]
[ mode_ecmchar::$27 ]
[ mode_ecmchar::$28 ]
[ mode_ecmchar::$29 ]
[ mode_ecmchar::$30 ]
[ mode_ecmchar::$31 ]
[ mode_stdchar::$25 ]
[ mode_stdchar::$26 ]
[ mode_stdchar::$27 ]
[ mode_stdchar::$28 ]
[ mode_stdchar::$29 ]
[ mode_stdchar::$30 ]
[ print_str_lines::ch#0 ]
Allocated zp ZP_BYTE:2 [ menu::i#2 menu::i#1 ]
Allocated zp ZP_WORD:3 [ menu::c#2 menu::c#1 ]
Allocated zp ZP_BYTE:5 [ mode_8bppchunkybmm::i#2 mode_8bppchunkybmm::i#1 ]
Allocated zp ZP_BYTE:6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ]
Allocated zp ZP_WORD:7 [ mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::x#1 ]
Allocated zp ZP_BYTE:9 [ mode_8bppchunkybmm::gfxbCpuBank#4 mode_8bppchunkybmm::gfxbCpuBank#7 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::gfxbCpuBank#2 ]
Allocated zp ZP_WORD:10 [ mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::gfxb#1 ]
Allocated zp ZP_BYTE:12 [ dtv_control#114 dtv_control#144 dtv_control#17 ]
Allocated zp ZP_BYTE:13 [ mode_ctrl::ctrl#14 mode_ctrl::ctrl#22 mode_ctrl::ctrl#6 mode_ctrl::ctrl#13 mode_ctrl::ctrl#5 mode_ctrl::ctrl#12 mode_ctrl::ctrl#4 mode_ctrl::ctrl#11 mode_ctrl::ctrl#3 mode_ctrl::ctrl#10 mode_ctrl::ctrl#2 mode_ctrl::ctrl#17 mode_ctrl::ctrl#1 mode_ctrl::ctrl#0 ]
Allocated zp ZP_BYTE:14 [ keyboard_key_pressed::key#20 ]
Allocated zp ZP_BYTE:15 [ dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#1 ]
Allocated zp ZP_BYTE:16 [ mode_8bpppixelcell::i#2 mode_8bpppixelcell::i#1 ]
Allocated zp ZP_BYTE:17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 ]
Allocated zp ZP_BYTE:18 [ mode_8bpppixelcell::ax#2 mode_8bpppixelcell::ax#1 ]
Allocated zp ZP_WORD:19 [ mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::gfxa#1 ]
Allocated zp ZP_BYTE:21 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ]
Allocated zp ZP_WORD:22 [ mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::chargen#4 mode_8bpppixelcell::chargen#1 ]
Allocated zp ZP_BYTE:24 [ mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ]
Allocated zp ZP_BYTE:25 [ mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ]
Allocated zp ZP_WORD:26 [ mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::gfxb#7 mode_8bpppixelcell::gfxb#1 ]
Allocated zp ZP_BYTE:28 [ mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ]
Allocated zp ZP_BYTE:29 [ mode_8bpppixelcell::cp#2 mode_8bpppixelcell::cp#1 ]
Allocated zp ZP_BYTE:30 [ mode_8bpppixelcell::c#2 mode_8bpppixelcell::c#3 ]
Allocated zp ZP_BYTE:31 [ mode_sixsfred::i#2 mode_sixsfred::i#1 ]
Allocated zp ZP_BYTE:32 [ mode_sixsfred::cy#4 mode_sixsfred::cy#1 ]
Allocated zp ZP_BYTE:33 [ mode_sixsfred::cx#2 mode_sixsfred::cx#1 ]
Allocated zp ZP_WORD:34 [ mode_sixsfred::col#2 mode_sixsfred::col#3 mode_sixsfred::col#1 ]
Allocated zp ZP_BYTE:36 [ mode_sixsfred::ay#4 mode_sixsfred::ay#1 ]
Allocated zp ZP_WORD:37 [ mode_sixsfred::gfxa#2 mode_sixsfred::gfxa#3 mode_sixsfred::gfxa#1 ]
Allocated zp ZP_BYTE:39 [ mode_sixsfred::ax#2 mode_sixsfred::ax#1 ]
Allocated zp ZP_BYTE:40 [ mode_sixsfred::by#4 mode_sixsfred::by#1 ]
Allocated zp ZP_WORD:41 [ mode_sixsfred::gfxb#2 mode_sixsfred::gfxb#3 mode_sixsfred::gfxb#1 ]
Allocated zp ZP_BYTE:43 [ mode_sixsfred::bx#2 mode_sixsfred::bx#1 ]
Allocated zp ZP_BYTE:44 [ mode_twoplanebitmap::i#2 mode_twoplanebitmap::i#1 ]
Allocated zp ZP_BYTE:45 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 ]
Allocated zp ZP_BYTE:46 [ mode_twoplanebitmap::cx#2 mode_twoplanebitmap::cx#1 ]
Allocated zp ZP_WORD:47 [ mode_twoplanebitmap::col#2 mode_twoplanebitmap::col#3 mode_twoplanebitmap::col#1 ]
Allocated zp ZP_BYTE:49 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 ]
Allocated zp ZP_WORD:50 [ mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::gfxa#7 mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::gfxa#1 ]
Allocated zp ZP_BYTE:52 [ mode_twoplanebitmap::ax#2 mode_twoplanebitmap::ax#1 ]
Allocated zp ZP_BYTE:53 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 ]
Allocated zp ZP_WORD:54 [ mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::gfxb#3 mode_twoplanebitmap::gfxb#1 ]
Allocated zp ZP_BYTE:56 [ mode_twoplanebitmap::bx#2 mode_twoplanebitmap::bx#1 ]
Allocated zp ZP_BYTE:57 [ mode_sixsfred2::i#2 mode_sixsfred2::i#1 ]
Allocated zp ZP_BYTE:58 [ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 ]
Allocated zp ZP_BYTE:59 [ mode_sixsfred2::cx#2 mode_sixsfred2::cx#1 ]
Allocated zp ZP_WORD:60 [ mode_sixsfred2::col#2 mode_sixsfred2::col#3 mode_sixsfred2::col#1 ]
Allocated zp ZP_BYTE:62 [ mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 ]
Allocated zp ZP_WORD:63 [ mode_sixsfred2::gfxa#2 mode_sixsfred2::gfxa#3 mode_sixsfred2::gfxa#1 ]
Allocated zp ZP_BYTE:65 [ mode_sixsfred2::ax#2 mode_sixsfred2::ax#1 ]
Allocated zp ZP_BYTE:66 [ mode_sixsfred2::by#4 mode_sixsfred2::by#1 ]
Allocated zp ZP_WORD:67 [ mode_sixsfred2::gfxb#2 mode_sixsfred2::gfxb#3 mode_sixsfred2::gfxb#1 ]
Allocated zp ZP_BYTE:69 [ mode_sixsfred2::bx#2 mode_sixsfred2::bx#1 ]
Allocated zp ZP_BYTE:70 [ mode_hicolmcchar::i#2 mode_hicolmcchar::i#1 ]
Allocated zp ZP_BYTE:71 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 ]
Allocated zp ZP_BYTE:72 [ mode_hicolmcchar::cx#2 mode_hicolmcchar::cx#1 ]
Allocated zp ZP_WORD:73 [ mode_hicolmcchar::col#2 mode_hicolmcchar::col#3 mode_hicolmcchar::col#1 ]
Allocated zp ZP_WORD:75 [ mode_hicolmcchar::ch#2 mode_hicolmcchar::ch#3 mode_hicolmcchar::ch#1 ]
Allocated zp ZP_BYTE:77 [ mode_hicolecmchar::i#2 mode_hicolecmchar::i#1 ]
Allocated zp ZP_BYTE:78 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 ]
Allocated zp ZP_BYTE:79 [ mode_hicolecmchar::cx#2 mode_hicolecmchar::cx#1 ]
Allocated zp ZP_WORD:80 [ mode_hicolecmchar::col#2 mode_hicolecmchar::col#3 mode_hicolecmchar::col#1 ]
Allocated zp ZP_WORD:82 [ mode_hicolecmchar::ch#2 mode_hicolecmchar::ch#3 mode_hicolecmchar::ch#1 ]
Allocated zp ZP_BYTE:84 [ mode_hicolstdchar::i#2 mode_hicolstdchar::i#1 ]
Allocated zp ZP_BYTE:85 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 ]
Allocated zp ZP_BYTE:86 [ mode_hicolstdchar::cx#2 mode_hicolstdchar::cx#1 ]
Allocated zp ZP_WORD:87 [ mode_hicolstdchar::col#2 mode_hicolstdchar::col#3 mode_hicolstdchar::col#1 ]
Allocated zp ZP_WORD:89 [ mode_hicolstdchar::ch#2 mode_hicolstdchar::ch#3 mode_hicolstdchar::ch#1 ]
Allocated zp ZP_BYTE:91 [ mode_stdbitmap::i#2 mode_stdbitmap::i#1 ]
Allocated zp ZP_BYTE:92 [ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 ]
Allocated zp ZP_BYTE:93 [ mode_stdbitmap::cx#2 mode_stdbitmap::cx#1 ]
Allocated zp ZP_WORD:94 [ mode_stdbitmap::ch#2 mode_stdbitmap::ch#3 mode_stdbitmap::ch#1 ]
Allocated zp ZP_BYTE:96 [ mode_stdbitmap::l#2 mode_stdbitmap::l#1 ]
Allocated zp ZP_BYTE:97 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 ]
Allocated zp ZP_BYTE:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 ]
Allocated zp ZP_BYTE:99 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::x1#1 ]
Allocated zp ZP_BYTE:100 [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#2 ]
Allocated zp ZP_BYTE:101 [ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 ]
Allocated zp ZP_BYTE:102 [ bitmap_line_xdyi::e#3 bitmap_line_xdyi::e#0 bitmap_line_xdyi::e#6 bitmap_line_xdyi::e#2 bitmap_line_xdyi::e#1 ]
Allocated zp ZP_BYTE:103 [ bitmap_plot::x#4 bitmap_plot::x#1 bitmap_plot::x#0 bitmap_plot::x#3 bitmap_plot::x#2 ]
Allocated zp ZP_BYTE:104 [ bitmap_plot::y#4 bitmap_plot::y#1 bitmap_plot::y#0 bitmap_plot::y#3 bitmap_plot::y#2 ]
Allocated zp ZP_BYTE:105 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 ]
Allocated zp ZP_BYTE:106 [ bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 ]
Allocated zp ZP_BYTE:107 [ bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 ]
Allocated zp ZP_BYTE:108 [ bitmap_line_ydxi::x#3 bitmap_line_ydxi::x#5 bitmap_line_ydxi::x#1 bitmap_line_ydxi::x#0 bitmap_line_ydxi::x#6 bitmap_line_ydxi::x#2 ]
Allocated zp ZP_BYTE:109 [ bitmap_line_ydxi::y#3 bitmap_line_ydxi::y#6 bitmap_line_ydxi::y#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::y#2 ]
Allocated zp ZP_BYTE:110 [ bitmap_line_ydxi::e#3 bitmap_line_ydxi::e#0 bitmap_line_ydxi::e#6 bitmap_line_ydxi::e#2 bitmap_line_ydxi::e#1 ]
Allocated zp ZP_BYTE:111 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#0 bitmap_line_xdyd::yd#1 ]
Allocated zp ZP_BYTE:112 [ bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::xd#1 ]
Allocated zp ZP_BYTE:113 [ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::x1#1 ]
Allocated zp ZP_BYTE:114 [ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#2 ]
Allocated zp ZP_BYTE:115 [ bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 ]
Allocated zp ZP_BYTE:116 [ bitmap_line_xdyd::e#3 bitmap_line_xdyd::e#0 bitmap_line_xdyd::e#6 bitmap_line_xdyd::e#2 bitmap_line_xdyd::e#1 ]
Allocated zp ZP_BYTE:117 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ]
Allocated zp ZP_BYTE:118 [ bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 ]
Allocated zp ZP_BYTE:119 [ bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 ]
Allocated zp ZP_BYTE:120 [ bitmap_line_ydxd::x#3 bitmap_line_ydxd::x#5 bitmap_line_ydxd::x#0 bitmap_line_ydxd::x#1 bitmap_line_ydxd::x#6 bitmap_line_ydxd::x#2 ]
Allocated zp ZP_BYTE:121 [ bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#3 ]
Allocated zp ZP_BYTE:122 [ bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 ]
Allocated zp ZP_BYTE:123 [ bitmap_clear::y#4 bitmap_clear::y#1 ]
Allocated zp ZP_WORD:124 [ bitmap_clear::bitmap#2 bitmap_clear::bitmap#3 bitmap_clear::bitmap#5 bitmap_clear::bitmap#1 ]
Allocated zp ZP_BYTE:126 [ bitmap_clear::x#2 bitmap_clear::x#1 ]
Allocated zp ZP_BYTE:127 [ bitmap_init::x#2 bitmap_init::x#1 ]
Allocated zp ZP_BYTE:128 [ bitmap_init::bits#3 bitmap_init::bits#4 bitmap_init::bits#1 ]
Allocated zp ZP_BYTE:129 [ bitmap_init::y#2 bitmap_init::y#1 ]
Allocated zp ZP_WORD:130 [ bitmap_init::yoffs#2 bitmap_init::yoffs#4 bitmap_init::yoffs#1 ]
Allocated zp ZP_BYTE:132 [ mode_mcchar::i#2 mode_mcchar::i#1 ]
Allocated zp ZP_BYTE:133 [ mode_mcchar::cy#4 mode_mcchar::cy#1 ]
Allocated zp ZP_BYTE:134 [ mode_mcchar::cx#2 mode_mcchar::cx#1 ]
Allocated zp ZP_WORD:135 [ mode_mcchar::col#2 mode_mcchar::col#3 mode_mcchar::col#1 ]
Allocated zp ZP_WORD:137 [ mode_mcchar::ch#2 mode_mcchar::ch#3 mode_mcchar::ch#1 ]
Allocated zp ZP_BYTE:139 [ mode_ecmchar::i#2 mode_ecmchar::i#1 ]
Allocated zp ZP_BYTE:140 [ mode_ecmchar::cy#4 mode_ecmchar::cy#1 ]
Allocated zp ZP_BYTE:141 [ mode_ecmchar::cx#2 mode_ecmchar::cx#1 ]
Allocated zp ZP_WORD:142 [ mode_ecmchar::col#2 mode_ecmchar::col#3 mode_ecmchar::col#1 ]
Allocated zp ZP_WORD:144 [ mode_ecmchar::ch#2 mode_ecmchar::ch#3 mode_ecmchar::ch#1 ]
Allocated zp ZP_BYTE:146 [ mode_stdchar::i#2 mode_stdchar::i#1 ]
Allocated zp ZP_BYTE:147 [ mode_stdchar::cy#4 mode_stdchar::cy#1 ]
Allocated zp ZP_BYTE:148 [ mode_stdchar::cx#2 mode_stdchar::cx#1 ]
Allocated zp ZP_WORD:149 [ mode_stdchar::col#2 mode_stdchar::col#3 mode_stdchar::col#1 ]
Allocated zp ZP_WORD:151 [ mode_stdchar::ch#2 mode_stdchar::ch#3 mode_stdchar::ch#1 ]
Allocated zp ZP_WORD:153 [ print_str_lines::str#3 print_str_lines::str#2 print_str_lines::str#0 ]
Allocated zp ZP_WORD:155 [ print_char_cursor#17 print_char_cursor#19 print_char_cursor#100 print_char_cursor#32 print_char_cursor#1 ]
Allocated zp ZP_WORD:157 [ print_line_cursor#18 print_line_cursor#17 print_line_cursor#19 ]
Allocated zp ZP_WORD:159 [ memset::dst#2 memset::dst#1 ]
Allocated zp ZP_BYTE:161 [ keyboard_key_pressed::return#2 ]
Allocated zp ZP_BYTE:162 [ menu::$29 ]
Allocated zp ZP_BYTE:163 [ keyboard_key_pressed::return#24 ]
Allocated zp ZP_BYTE:164 [ menu::$33 ]
Allocated zp ZP_BYTE:165 [ keyboard_key_pressed::return#25 ]
Allocated zp ZP_BYTE:166 [ menu::$37 ]
Allocated zp ZP_BYTE:167 [ keyboard_key_pressed::return#26 ]
Allocated zp ZP_BYTE:168 [ menu::$41 ]
Allocated zp ZP_BYTE:169 [ keyboard_key_pressed::return#27 ]
Allocated zp ZP_BYTE:170 [ menu::$45 ]
Allocated zp ZP_BYTE:171 [ keyboard_key_pressed::return#28 ]
Allocated zp ZP_BYTE:172 [ menu::$49 ]
Allocated zp ZP_BYTE:173 [ keyboard_key_pressed::return#29 ]
Allocated zp ZP_BYTE:174 [ menu::$53 ]
Allocated zp ZP_BYTE:175 [ keyboard_key_pressed::return#30 ]
Allocated zp ZP_BYTE:176 [ menu::$57 ]
Allocated zp ZP_BYTE:177 [ keyboard_key_pressed::return#10 ]
Allocated zp ZP_BYTE:178 [ menu::$61 ]
Allocated zp ZP_BYTE:179 [ keyboard_key_pressed::return#11 ]
Allocated zp ZP_BYTE:180 [ menu::$65 ]
Allocated zp ZP_BYTE:181 [ keyboard_key_pressed::return#12 ]
Allocated zp ZP_BYTE:182 [ menu::$69 ]
Allocated zp ZP_BYTE:183 [ keyboard_key_pressed::return#13 ]
Allocated zp ZP_BYTE:184 [ menu::$73 ]
Allocated zp ZP_WORD:185 [ mode_8bppchunkybmm::$26 ]
Allocated zp ZP_BYTE:187 [ mode_8bppchunkybmm::c#0 ]
Allocated zp ZP_BYTE:188 [ keyboard_key_pressed::return#14 ]
Allocated zp ZP_BYTE:189 [ mode_ctrl::$1 ]
Allocated zp ZP_BYTE:190 [ keyboard_key_pressed::return#15 ]
Allocated zp ZP_BYTE:191 [ mode_ctrl::$4 ]
Allocated zp ZP_BYTE:192 [ keyboard_key_pressed::return#16 ]
Allocated zp ZP_BYTE:193 [ mode_ctrl::$8 ]
Allocated zp ZP_BYTE:194 [ keyboard_key_pressed::return#17 ]
Allocated zp ZP_BYTE:195 [ mode_ctrl::$12 ]
Allocated zp ZP_BYTE:196 [ keyboard_key_pressed::return#18 ]
Allocated zp ZP_BYTE:197 [ mode_ctrl::$16 ]
Allocated zp ZP_BYTE:198 [ keyboard_key_pressed::return#19 ]
Allocated zp ZP_BYTE:199 [ mode_ctrl::$20 ]
Allocated zp ZP_BYTE:200 [ keyboard_key_pressed::return#20 ]
Allocated zp ZP_BYTE:201 [ mode_ctrl::$24 ]
Allocated zp ZP_BYTE:202 [ keyboard_key_pressed::return#21 ]
Allocated zp ZP_BYTE:203 [ mode_ctrl::$28 ]
Allocated zp ZP_BYTE:204 [ keyboard_key_pressed::colidx#0 ]
Allocated zp ZP_BYTE:205 [ keyboard_key_pressed::rowidx#0 ]
Allocated zp ZP_BYTE:206 [ keyboard_matrix_read::rowid#0 ]
Allocated zp ZP_BYTE:207 [ keyboard_matrix_read::return#2 ]
Allocated zp ZP_BYTE:208 [ keyboard_key_pressed::$2 ]
Allocated zp ZP_BYTE:209 [ keyboard_key_pressed::return#0 ]
Allocated zp ZP_BYTE:210 [ keyboard_matrix_read::return#0 ]
Allocated zp ZP_BYTE:211 [ mode_8bpppixelcell::$14 ]
Allocated zp ZP_BYTE:212 [ mode_8bpppixelcell::$15 ]
Allocated zp ZP_BYTE:213 [ mode_8bpppixelcell::$16 ]
Allocated zp ZP_BYTE:214 [ mode_8bpppixelcell::$17 ]
Allocated zp ZP_BYTE:215 [ mode_8bpppixelcell::$20 ]
Allocated zp ZP_BYTE:216 [ mode_sixsfred::$17 ]
Allocated zp ZP_BYTE:217 [ mode_sixsfred::$18 ]
Allocated zp ZP_BYTE:218 [ mode_sixsfred::$21 ]
Allocated zp ZP_BYTE:219 [ mode_sixsfred::row#0 ]
Allocated zp ZP_BYTE:220 [ mode_twoplanebitmap::$16 ]
Allocated zp ZP_BYTE:221 [ mode_twoplanebitmap::$17 ]
Allocated zp ZP_BYTE:222 [ mode_twoplanebitmap::$18 ]
Allocated zp ZP_BYTE:223 [ mode_twoplanebitmap::$19 ]
Allocated zp ZP_BYTE:224 [ mode_twoplanebitmap::$22 ]
Allocated zp ZP_BYTE:225 [ mode_sixsfred2::$15 ]
Allocated zp ZP_BYTE:226 [ mode_sixsfred2::$16 ]
Allocated zp ZP_BYTE:227 [ mode_sixsfred2::$17 ]
Allocated zp ZP_BYTE:228 [ mode_sixsfred2::$18 ]
Allocated zp ZP_BYTE:229 [ mode_sixsfred2::$21 ]
Allocated zp ZP_BYTE:230 [ mode_sixsfred2::row#0 ]
Allocated zp ZP_BYTE:231 [ mode_hicolmcchar::$26 ]
Allocated zp ZP_BYTE:232 [ mode_hicolmcchar::$27 ]
Allocated zp ZP_BYTE:233 [ mode_hicolmcchar::$28 ]
Allocated zp ZP_BYTE:234 [ mode_hicolmcchar::v#0 ]
Allocated zp ZP_BYTE:235 [ mode_hicolecmchar::$26 ]
Allocated zp ZP_BYTE:236 [ mode_hicolecmchar::$27 ]
Allocated zp ZP_BYTE:237 [ mode_hicolecmchar::$28 ]
Allocated zp ZP_BYTE:238 [ mode_hicolecmchar::v#0 ]
Allocated zp ZP_BYTE:239 [ mode_hicolstdchar::$25 ]
Allocated zp ZP_BYTE:240 [ mode_hicolstdchar::$26 ]
Allocated zp ZP_BYTE:241 [ mode_hicolstdchar::$27 ]
Allocated zp ZP_BYTE:242 [ mode_hicolstdchar::v#0 ]
Allocated zp ZP_BYTE:243 [ mode_stdbitmap::$22 ]
Allocated zp ZP_BYTE:244 [ mode_stdbitmap::col#0 ]
Allocated zp ZP_BYTE:245 [ mode_stdbitmap::col2#0 ]
Allocated zp ZP_BYTE:246 [ mode_stdbitmap::$25 ]
Allocated zp ZP_BYTE:247 [ mode_stdbitmap::$26 ]
Allocated zp ZP_BYTE:248 [ bitmap_line::x0#0 ]
Allocated zp ZP_BYTE:249 [ bitmap_line::x1#0 ]
Allocated zp ZP_BYTE:250 [ bitmap_line::y0#0 ]
Allocated zp ZP_BYTE:251 [ bitmap_line::y1#0 ]
Allocated zp ZP_BYTE:252 [ bitmap_line::xd#2 ]
Allocated zp ZP_BYTE:253 [ bitmap_line::yd#2 ]
Allocated zp ZP_BYTE:254 [ bitmap_line::yd#1 ]
Allocated zp ZP_BYTE:255 [ bitmap_line::xd#1 ]
Allocated zp ZP_BYTE:256 [ bitmap_line::yd#10 ]
Allocated zp ZP_BYTE:257 [ bitmap_line::yd#11 ]
Allocated zp ZP_BYTE:258 [ bitmap_line_xdyi::$6 ]
Allocated zp ZP_WORD:259 [ bitmap_plot::plotter_x#0 ]
Allocated zp ZP_WORD:261 [ bitmap_plot::plotter_y#0 ]
Allocated zp ZP_WORD:263 [ bitmap_plot::plotter#0 ]
Allocated zp ZP_BYTE:265 [ bitmap_plot::$1 ]
Allocated zp ZP_BYTE:266 [ bitmap_line_ydxi::$6 ]
Allocated zp ZP_BYTE:267 [ bitmap_line_xdyd::$6 ]
Allocated zp ZP_BYTE:268 [ bitmap_line_ydxd::$6 ]
Allocated zp ZP_WORD:269 [ bitmap_clear::bitmap#0 ]
Allocated zp ZP_BYTE:271 [ bitmap_init::$0 ]
Allocated zp ZP_BYTE:272 [ bitmap_init::$10 ]
Allocated zp ZP_BYTE:273 [ bitmap_init::$7 ]
Allocated zp ZP_BYTE:274 [ bitmap_init::$8 ]
Allocated zp ZP_BYTE:275 [ bitmap_init::$9 ]
Allocated zp ZP_BYTE:276 [ mode_mcchar::$26 ]
Allocated zp ZP_BYTE:277 [ mode_mcchar::$27 ]
Allocated zp ZP_BYTE:278 [ mode_mcchar::$28 ]
Allocated zp ZP_BYTE:279 [ mode_mcchar::$29 ]
Allocated zp ZP_BYTE:280 [ mode_mcchar::$30 ]
Allocated zp ZP_BYTE:281 [ mode_mcchar::$31 ]
Allocated zp ZP_BYTE:282 [ mode_ecmchar::$26 ]
Allocated zp ZP_BYTE:283 [ mode_ecmchar::$27 ]
Allocated zp ZP_BYTE:284 [ mode_ecmchar::$28 ]
Allocated zp ZP_BYTE:285 [ mode_ecmchar::$29 ]
Allocated zp ZP_BYTE:286 [ mode_ecmchar::$30 ]
Allocated zp ZP_BYTE:287 [ mode_ecmchar::$31 ]
Allocated zp ZP_BYTE:288 [ mode_stdchar::$25 ]
Allocated zp ZP_BYTE:289 [ mode_stdchar::$26 ]
Allocated zp ZP_BYTE:290 [ mode_stdchar::$27 ]
Allocated zp ZP_BYTE:291 [ mode_stdchar::$28 ]
Allocated zp ZP_BYTE:292 [ mode_stdchar::$29 ]
Allocated zp ZP_BYTE:293 [ mode_stdchar::$30 ]
Allocated zp ZP_BYTE:294 [ print_str_lines::ch#0 ]
INITIAL ASM
Target platform is c64basic / MOS6502X
// File Comments
// Exploring C64DTV Screen Modes
// Upstart
.pc = $801 "Basic"
:BasicUpstart(bbegin)
.pc = $80d "Program"
// Global Constants & labels
// Processor port data direction register
.label PROCPORT_DDR = 0
// Mask for PROCESSOR_PORT_DDR which allows only memory configuration to be written
.const PROCPORT_DDR_MEMORY_MASK = 7
// Processor Port Register controlling RAM/ROM configuration and the datasette
.label PROCPORT = 1
// RAM in $A000, $E000 I/O in $D000
.const PROCPORT_RAM_IO = 5
// RAM in $A000, $E000 CHAR ROM in $D000
.const PROCPORT_RAM_CHARROM = 1
.label RASTER = $d012
.label BORDERCOL = $d020
.label BGCOL = $d021
.label BGCOL1 = $d021
.label BGCOL2 = $d022
.label BGCOL3 = $d023
.label BGCOL4 = $d024
.label VIC_CONTROL = $d011
.const VIC_ECM = $40
.const VIC_BMM = $20
.const VIC_DEN = $10
.const VIC_RSEL = 8
.label VIC_CONTROL2 = $d016
.const VIC_MCM = $10
.const VIC_CSEL = 8
.label VIC_MEMORY = $d018
// Color Ram
.label COLS = $d800
// CIA#1 Port A: keyboard matrix columns and joystick #2
.label CIA1_PORT_A = $dc00
// CIA#1 Port B: keyboard matrix rows and joystick #1.
.label CIA1_PORT_B = $dc01
// CIA#2 Port A: Serial bus, RS-232, VIC memory bank
.label CIA2_PORT_A = $dd00
// CIA #2 Port A data direction register.
.label CIA2_PORT_A_DDR = $dd02
// The colors of the C64
.const BLACK = 0
.const GREEN = 5
.const BLUE = 6
.const LIGHT_GREEN = $d
// Feature enables or disables the extra C64 DTV features
.label DTV_FEATURE = $d03f
.const DTV_FEATURE_ENABLE = 1
// Controls the graphics modes of the C64 DTV
.label DTV_CONTROL = $d03c
.const DTV_LINEAR = 1
.const DTV_BORDER_OFF = 2
.const DTV_HIGHCOLOR = 4
.const DTV_OVERSCAN = 8
.const DTV_COLORRAM_OFF = $10
.const DTV_CHUNKY = $40
// Defines colors for the 16 first colors ($00-$0f)
.label DTV_PALETTE = $d200
// Linear Graphics Plane A Counter Control
.label DTV_PLANEA_START_LO = $d03a
.label DTV_PLANEA_START_MI = $d03b
.label DTV_PLANEA_START_HI = $d045
.label DTV_PLANEA_STEP = $d046
.label DTV_PLANEA_MODULO_LO = $d038
.label DTV_PLANEA_MODULO_HI = $d039
// Linear Graphics Plane B Counter Control
.label DTV_PLANEB_START_LO = $d049
.label DTV_PLANEB_START_MI = $d04a
.label DTV_PLANEB_START_HI = $d04b
.label DTV_PLANEB_STEP = $d04c
.label DTV_PLANEB_MODULO_LO = $d047
.label DTV_PLANEB_MODULO_HI = $d048
// Select memory bank where color data is fetched from (bits 11:0)
// Memory address of Color RAM is ColorBank*$400
.label DTV_COLOR_BANK_LO = $d036
.label DTV_COLOR_BANK_HI = $d037
.const DTV_COLOR_BANK_DEFAULT = $1d800
// Selects memory bank for normal VIC color mode and lower data for high color modes. (bits 5:0)
// Memory address of VIC Graphics is GraphicsBank*$10000
.label DTV_GRAPHICS_VIC_BANK = $d03d
.const KEY_3 = 8
.const KEY_A = $a
.const KEY_4 = $b
.const KEY_E = $e
.const KEY_D = $12
.const KEY_6 = $13
.const KEY_C = $14
.const KEY_7 = $18
.const KEY_8 = $1b
.const KEY_B = $1c
.const KEY_H = $1d
.const KEY_U = $1e
.const KEY_0 = $23
.const KEY_O = $26
.const KEY_L = $2a
.const KEY_1 = $38
.const KEY_2 = $3b
.const KEY_SPACE = $3c
.label print_char_cursor = $9b
.label dtv_control = $c
.label print_line_cursor = $9d
// @begin
bbegin:
// [1] phi from @begin to @1 [phi:@begin->@1]
b1_from_bbegin:
jmp b1
// @1
b1:
// [2] call main
jsr main
// [3] phi from @1 to @end [phi:@1->@end]
bend_from_b1:
jmp bend
// @end
bend:
// main
main: {
// asm { sei }
sei
// [5] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2
// Disable normal interrupt (prevent keyboard reading glitches and allows to hide basic/kernal)
// Disable kernal & basic
lda #PROCPORT_DDR_MEMORY_MASK
sta PROCPORT_DDR
// [6] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2
lda #PROCPORT_RAM_IO
sta PROCPORT
// [7] *((const byte*) DTV_FEATURE#0) ← (const byte) DTV_FEATURE_ENABLE#0 -- _deref_pbuc1=vbuc2
// Enable DTV extended modes
lda #DTV_FEATURE_ENABLE
sta DTV_FEATURE
// [8] phi from main main::@1 to main::@1 [phi:main/main::@1->main::@1]
b1_from_main:
b1_from_b1:
jmp b1
// main::@1
b1:
// [9] call menu
jsr menu
jmp b1_from_b1
}
// menu
menu: {
.label SCREEN = $8000
.label CHARSET = $9800
.label _29 = $a2
.label _33 = $a4
.label _37 = $a6
.label _41 = $a8
.label _45 = $aa
.label _49 = $ac
.label _53 = $ae
.label _57 = $b0
.label _61 = $b2
.label _65 = $b4
.label _69 = $b6
.label _73 = $b8
.label i = 2
.label c = 3
// [10] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Charset ROM
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [11] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<DTV_COLOR_BANK_DEFAULT/$400
sta DTV_COLOR_BANK_LO
// [12] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [13] *((const byte*) DTV_CONTROL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Mode
lda #0
sta DTV_CONTROL
// [14] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2_PORT_A_DDR
// [15] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) menu::CHARSET#0/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2_PORT_A
// [16] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [17] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [18] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) menu::CHARSET#0&(word) $3fff/(word) $400 -- _deref_pbuc1=vbuc2
// VIC Memory Pointers
lda #(CHARSET&$3fff)/$400
sta VIC_MEMORY
// [19] phi from menu to menu::@1 [phi:menu->menu::@1]
b1_from_menu:
// [19] phi (byte) menu::i#2 = (byte) 0 [phi:menu->menu::@1#0] -- vbuz1=vbuc1
lda #0
sta.z i
jmp b1
// DTV Palette - default
// [19] phi from menu::@1 to menu::@1 [phi:menu::@1->menu::@1]
b1_from_b1:
// [19] phi (byte) menu::i#2 = (byte) menu::i#1 [phi:menu::@1->menu::@1#0] -- register_copy
jmp b1
// menu::@1
b1:
// [20] *((const byte*) DTV_PALETTE#0 + (byte) menu::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) menu::i#2) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1
ldy.z i
lda DTV_PALETTE_DEFAULT,y
sta DTV_PALETTE,y
// [21] (byte) menu::i#1 ← ++ (byte) menu::i#2 -- vbuz1=_inc_vbuz1
inc.z i
// [22] if((byte) menu::i#1!=(byte) $10) goto menu::@1 -- vbuz1_neq_vbuc1_then_la1
lda #$10
cmp.z i
bne b1_from_b1
// [23] phi from menu::@1 to menu::@2 [phi:menu::@1->menu::@2]
b2_from_b1:
// [23] phi (byte*) menu::c#2 = (const byte*) COLS#0 [phi:menu::@1->menu::@2#0] -- pbuz1=pbuc1
lda #<COLS
sta.z c
lda #>COLS
sta.z c+1
jmp b2
// Char Colors
// menu::@2
b2:
// [24] if((byte*) menu::c#2!=(const byte*) COLS#0+(word) $3e8) goto menu::@3 -- pbuz1_neq_pbuc1_then_la1
lda.z c+1
cmp #>COLS+$3e8
bne b3
lda.z c
cmp #<COLS+$3e8
bne b3
jmp b4
// menu::@4
b4:
// [25] *((const byte*) BGCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BGCOL
// [26] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta BORDERCOL
// [27] call print_set_screen
// [893] phi from menu::@4 to print_set_screen [phi:menu::@4->print_set_screen]
print_set_screen_from_b4:
jsr print_set_screen
// [28] phi from menu::@4 to menu::@29 [phi:menu::@4->menu::@29]
b29_from_b4:
jmp b29
// menu::@29
b29:
// [29] call print_cls
// [884] phi from menu::@29 to print_cls [phi:menu::@29->print_cls]
print_cls_from_b29:
jsr print_cls
// [30] phi from menu::@29 to menu::@30 [phi:menu::@29->menu::@30]
b30_from_b29:
jmp b30
// menu::@30
b30:
// [31] call print_str_lines
// [864] phi from menu::@30 to print_str_lines [phi:menu::@30->print_str_lines]
print_str_lines_from_b30:
jsr print_str_lines
// [32] phi from menu::@30 menu::@42 to menu::@5 [phi:menu::@30/menu::@42->menu::@5]
b5_from_b30:
b5_from_b42:
jmp b5
// menu::@5
b5:
// [33] call keyboard_key_pressed
// [211] phi from menu::@5 to keyboard_key_pressed [phi:menu::@5->keyboard_key_pressed]
keyboard_key_pressed_from_b5:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_1#0 [phi:menu::@5->keyboard_key_pressed#0] -- vbuz1=vbuc1
lda #KEY_1
sta.z keyboard_key_pressed.key
jsr keyboard_key_pressed
// [34] (byte) keyboard_key_pressed::return#2 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return
sta.z keyboard_key_pressed.return_2
jmp b31
// menu::@31
b31:
// [35] (byte~) menu::$29 ← (byte) keyboard_key_pressed::return#2 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_2
sta.z _29
// [36] if((byte~) menu::$29==(byte) 0) goto menu::@6 -- vbuz1_eq_0_then_la1
lda.z _29
cmp #0
beq b6_from_b31
// [37] phi from menu::@31 to menu::@17 [phi:menu::@31->menu::@17]
b17_from_b31:
jmp b17
// menu::@17
b17:
// [38] call mode_stdchar
jsr mode_stdchar
jmp breturn
// menu::@return
breturn:
// [39] return
rts
// [40] phi from menu::@31 to menu::@6 [phi:menu::@31->menu::@6]
b6_from_b31:
jmp b6
// menu::@6
b6:
// [41] call keyboard_key_pressed
// [211] phi from menu::@6 to keyboard_key_pressed [phi:menu::@6->keyboard_key_pressed]
keyboard_key_pressed_from_b6:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_2#0 [phi:menu::@6->keyboard_key_pressed#0] -- vbuz1=vbuc1
lda #KEY_2
sta.z keyboard_key_pressed.key
jsr keyboard_key_pressed
// [42] (byte) keyboard_key_pressed::return#24 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return
sta.z keyboard_key_pressed.return_24
jmp b32
// menu::@32
b32:
// [43] (byte~) menu::$33 ← (byte) keyboard_key_pressed::return#24 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_24
sta.z _33
// [44] if((byte~) menu::$33==(byte) 0) goto menu::@7 -- vbuz1_eq_0_then_la1
lda.z _33
cmp #0
beq b7_from_b32
// [45] phi from menu::@32 to menu::@18 [phi:menu::@32->menu::@18]
b18_from_b32:
jmp b18
// menu::@18
b18:
// [46] call mode_ecmchar
jsr mode_ecmchar
jmp breturn
// [47] phi from menu::@32 to menu::@7 [phi:menu::@32->menu::@7]
b7_from_b32:
jmp b7
// menu::@7
b7:
// [48] call keyboard_key_pressed
// [211] phi from menu::@7 to keyboard_key_pressed [phi:menu::@7->keyboard_key_pressed]
keyboard_key_pressed_from_b7:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_3#0 [phi:menu::@7->keyboard_key_pressed#0] -- vbuz1=vbuc1
lda #KEY_3
sta.z keyboard_key_pressed.key
jsr keyboard_key_pressed
// [49] (byte) keyboard_key_pressed::return#25 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return
sta.z keyboard_key_pressed.return_25
jmp b33
// menu::@33
b33:
// [50] (byte~) menu::$37 ← (byte) keyboard_key_pressed::return#25 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_25
sta.z _37
// [51] if((byte~) menu::$37==(byte) 0) goto menu::@8 -- vbuz1_eq_0_then_la1
lda.z _37
cmp #0
beq b8_from_b33
// [52] phi from menu::@33 to menu::@19 [phi:menu::@33->menu::@19]
b19_from_b33:
jmp b19
// menu::@19
b19:
// [53] call mode_mcchar
jsr mode_mcchar
jmp breturn
// [54] phi from menu::@33 to menu::@8 [phi:menu::@33->menu::@8]
b8_from_b33:
jmp b8
// menu::@8
b8:
// [55] call keyboard_key_pressed
// [211] phi from menu::@8 to keyboard_key_pressed [phi:menu::@8->keyboard_key_pressed]
keyboard_key_pressed_from_b8:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_4#0 [phi:menu::@8->keyboard_key_pressed#0] -- vbuz1=vbuc1
lda #KEY_4
sta.z keyboard_key_pressed.key
jsr keyboard_key_pressed
// [56] (byte) keyboard_key_pressed::return#26 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return
sta.z keyboard_key_pressed.return_26
jmp b34
// menu::@34
b34:
// [57] (byte~) menu::$41 ← (byte) keyboard_key_pressed::return#26 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_26
sta.z _41
// [58] if((byte~) menu::$41==(byte) 0) goto menu::@9 -- vbuz1_eq_0_then_la1
lda.z _41
cmp #0
beq b9_from_b34
// [59] phi from menu::@34 to menu::@20 [phi:menu::@34->menu::@20]
b20_from_b34:
jmp b20
// menu::@20
b20:
// [60] call mode_stdbitmap
jsr mode_stdbitmap
jmp breturn
// [61] phi from menu::@34 to menu::@9 [phi:menu::@34->menu::@9]
b9_from_b34:
jmp b9
// menu::@9
b9:
// [62] call keyboard_key_pressed
// [211] phi from menu::@9 to keyboard_key_pressed [phi:menu::@9->keyboard_key_pressed]
keyboard_key_pressed_from_b9:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_6#0 [phi:menu::@9->keyboard_key_pressed#0] -- vbuz1=vbuc1
lda #KEY_6
sta.z keyboard_key_pressed.key
jsr keyboard_key_pressed
// [63] (byte) keyboard_key_pressed::return#27 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return
sta.z keyboard_key_pressed.return_27
jmp b35
// menu::@35
b35:
// [64] (byte~) menu::$45 ← (byte) keyboard_key_pressed::return#27 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_27
sta.z _45
// [65] if((byte~) menu::$45==(byte) 0) goto menu::@10 -- vbuz1_eq_0_then_la1
lda.z _45
cmp #0
beq b10_from_b35
// [66] phi from menu::@35 to menu::@21 [phi:menu::@35->menu::@21]
b21_from_b35:
jmp b21
// menu::@21
b21:
// [67] call mode_hicolstdchar
jsr mode_hicolstdchar
jmp breturn
// [68] phi from menu::@35 to menu::@10 [phi:menu::@35->menu::@10]
b10_from_b35:
jmp b10
// menu::@10
b10:
// [69] call keyboard_key_pressed
// [211] phi from menu::@10 to keyboard_key_pressed [phi:menu::@10->keyboard_key_pressed]
keyboard_key_pressed_from_b10:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_7#0 [phi:menu::@10->keyboard_key_pressed#0] -- vbuz1=vbuc1
lda #KEY_7
sta.z keyboard_key_pressed.key
jsr keyboard_key_pressed
// [70] (byte) keyboard_key_pressed::return#28 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return
sta.z keyboard_key_pressed.return_28
jmp b36
// menu::@36
b36:
// [71] (byte~) menu::$49 ← (byte) keyboard_key_pressed::return#28 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_28
sta.z _49
// [72] if((byte~) menu::$49==(byte) 0) goto menu::@11 -- vbuz1_eq_0_then_la1
lda.z _49
cmp #0
beq b11_from_b36
// [73] phi from menu::@36 to menu::@22 [phi:menu::@36->menu::@22]
b22_from_b36:
jmp b22
// menu::@22
b22:
// [74] call mode_hicolecmchar
jsr mode_hicolecmchar
jmp breturn
// [75] phi from menu::@36 to menu::@11 [phi:menu::@36->menu::@11]
b11_from_b36:
jmp b11
// menu::@11
b11:
// [76] call keyboard_key_pressed
// [211] phi from menu::@11 to keyboard_key_pressed [phi:menu::@11->keyboard_key_pressed]
keyboard_key_pressed_from_b11:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_8#0 [phi:menu::@11->keyboard_key_pressed#0] -- vbuz1=vbuc1
lda #KEY_8
sta.z keyboard_key_pressed.key
jsr keyboard_key_pressed
// [77] (byte) keyboard_key_pressed::return#29 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return
sta.z keyboard_key_pressed.return_29
jmp b37
// menu::@37
b37:
// [78] (byte~) menu::$53 ← (byte) keyboard_key_pressed::return#29 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_29
sta.z _53
// [79] if((byte~) menu::$53==(byte) 0) goto menu::@12 -- vbuz1_eq_0_then_la1
lda.z _53
cmp #0
beq b12_from_b37
// [80] phi from menu::@37 to menu::@23 [phi:menu::@37->menu::@23]
b23_from_b37:
jmp b23
// menu::@23
b23:
// [81] call mode_hicolmcchar
jsr mode_hicolmcchar
jmp breturn
// [82] phi from menu::@37 to menu::@12 [phi:menu::@37->menu::@12]
b12_from_b37:
jmp b12
// menu::@12
b12:
// [83] call keyboard_key_pressed
// [211] phi from menu::@12 to keyboard_key_pressed [phi:menu::@12->keyboard_key_pressed]
keyboard_key_pressed_from_b12:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_A#0 [phi:menu::@12->keyboard_key_pressed#0] -- vbuz1=vbuc1
lda #KEY_A
sta.z keyboard_key_pressed.key
jsr keyboard_key_pressed
// [84] (byte) keyboard_key_pressed::return#30 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return
sta.z keyboard_key_pressed.return_30
jmp b38
// menu::@38
b38:
// [85] (byte~) menu::$57 ← (byte) keyboard_key_pressed::return#30 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_30
sta.z _57
// [86] if((byte~) menu::$57==(byte) 0) goto menu::@13 -- vbuz1_eq_0_then_la1
lda.z _57
cmp #0
beq b13_from_b38
// [87] phi from menu::@38 to menu::@24 [phi:menu::@38->menu::@24]
b24_from_b38:
jmp b24
// menu::@24
b24:
// [88] call mode_sixsfred2
jsr mode_sixsfred2
jmp breturn
// [89] phi from menu::@38 to menu::@13 [phi:menu::@38->menu::@13]
b13_from_b38:
jmp b13
// menu::@13
b13:
// [90] call keyboard_key_pressed
// [211] phi from menu::@13 to keyboard_key_pressed [phi:menu::@13->keyboard_key_pressed]
keyboard_key_pressed_from_b13:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_B#0 [phi:menu::@13->keyboard_key_pressed#0] -- vbuz1=vbuc1
lda #KEY_B
sta.z keyboard_key_pressed.key
jsr keyboard_key_pressed
// [91] (byte) keyboard_key_pressed::return#10 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return
sta.z keyboard_key_pressed.return_10
jmp b39
// menu::@39
b39:
// [92] (byte~) menu::$61 ← (byte) keyboard_key_pressed::return#10 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_10
sta.z _61
// [93] if((byte~) menu::$61==(byte) 0) goto menu::@14 -- vbuz1_eq_0_then_la1
lda.z _61
cmp #0
beq b14_from_b39
// [94] phi from menu::@39 to menu::@25 [phi:menu::@39->menu::@25]
b25_from_b39:
jmp b25
// menu::@25
b25:
// [95] call mode_twoplanebitmap
jsr mode_twoplanebitmap
jmp breturn
// [96] phi from menu::@39 to menu::@14 [phi:menu::@39->menu::@14]
b14_from_b39:
jmp b14
// menu::@14
b14:
// [97] call keyboard_key_pressed
// [211] phi from menu::@14 to keyboard_key_pressed [phi:menu::@14->keyboard_key_pressed]
keyboard_key_pressed_from_b14:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_C#0 [phi:menu::@14->keyboard_key_pressed#0] -- vbuz1=vbuc1
lda #KEY_C
sta.z keyboard_key_pressed.key
jsr keyboard_key_pressed
// [98] (byte) keyboard_key_pressed::return#11 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return
sta.z keyboard_key_pressed.return_11
jmp b40
// menu::@40
b40:
// [99] (byte~) menu::$65 ← (byte) keyboard_key_pressed::return#11 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_11
sta.z _65
// [100] if((byte~) menu::$65==(byte) 0) goto menu::@15 -- vbuz1_eq_0_then_la1
lda.z _65
cmp #0
beq b15_from_b40
// [101] phi from menu::@40 to menu::@26 [phi:menu::@40->menu::@26]
b26_from_b40:
jmp b26
// menu::@26
b26:
// [102] call mode_sixsfred
jsr mode_sixsfred
jmp breturn
// [103] phi from menu::@40 to menu::@15 [phi:menu::@40->menu::@15]
b15_from_b40:
jmp b15
// menu::@15
b15:
// [104] call keyboard_key_pressed
// [211] phi from menu::@15 to keyboard_key_pressed [phi:menu::@15->keyboard_key_pressed]
keyboard_key_pressed_from_b15:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_D#0 [phi:menu::@15->keyboard_key_pressed#0] -- vbuz1=vbuc1
lda #KEY_D
sta.z keyboard_key_pressed.key
jsr keyboard_key_pressed
// [105] (byte) keyboard_key_pressed::return#12 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return
sta.z keyboard_key_pressed.return_12
jmp b41
// menu::@41
b41:
// [106] (byte~) menu::$69 ← (byte) keyboard_key_pressed::return#12 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_12
sta.z _69
// [107] if((byte~) menu::$69==(byte) 0) goto menu::@16 -- vbuz1_eq_0_then_la1
lda.z _69
cmp #0
beq b16_from_b41
// [108] phi from menu::@41 to menu::@27 [phi:menu::@41->menu::@27]
b27_from_b41:
jmp b27
// menu::@27
b27:
// [109] call mode_8bpppixelcell
jsr mode_8bpppixelcell
jmp breturn
// [110] phi from menu::@41 to menu::@16 [phi:menu::@41->menu::@16]
b16_from_b41:
jmp b16
// menu::@16
b16:
// [111] call keyboard_key_pressed
// [211] phi from menu::@16 to keyboard_key_pressed [phi:menu::@16->keyboard_key_pressed]
keyboard_key_pressed_from_b16:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_E#0 [phi:menu::@16->keyboard_key_pressed#0] -- vbuz1=vbuc1
lda #KEY_E
sta.z keyboard_key_pressed.key
jsr keyboard_key_pressed
// [112] (byte) keyboard_key_pressed::return#13 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return
sta.z keyboard_key_pressed.return_13
jmp b42
// menu::@42
b42:
// [113] (byte~) menu::$73 ← (byte) keyboard_key_pressed::return#13 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_13
sta.z _73
// [114] if((byte~) menu::$73==(byte) 0) goto menu::@5 -- vbuz1_eq_0_then_la1
lda.z _73
cmp #0
beq b5_from_b42
// [115] phi from menu::@42 to menu::@28 [phi:menu::@42->menu::@28]
b28_from_b42:
jmp b28
// menu::@28
b28:
// [116] call mode_8bppchunkybmm
jsr mode_8bppchunkybmm
jmp breturn
// menu::@3
b3:
// [117] *((byte*) menu::c#2) ← (const byte) LIGHT_GREEN#0 -- _deref_pbuz1=vbuc1
lda #LIGHT_GREEN
ldy #0
sta (c),y
// [118] (byte*) menu::c#1 ← ++ (byte*) menu::c#2 -- pbuz1=_inc_pbuz1
inc.z c
bne !+
inc.z c+1
!:
// [23] phi from menu::@3 to menu::@2 [phi:menu::@3->menu::@2]
b2_from_b3:
// [23] phi (byte*) menu::c#2 = (byte*) menu::c#1 [phi:menu::@3->menu::@2#0] -- register_copy
jmp b2
}
// mode_8bppchunkybmm
//Chunky 8bpp Bitmap Mode (BMM = 0, ECM/MCM/HICOL/LINEAR/CHUNK/COLDIS = 1)
// Resolution: 320x200
// Linear Adressing
// CharData/PlaneB Pixel Shifter (8):
// - 8bpp color PlaneB[7:0]
// To set up a linear video frame buffer the step size must be set to 8.
mode_8bppchunkybmm: {
// 8BPP Chunky Bitmap (contains 8bpp pixels)
.const PLANEB = $20000
.label _26 = $b9
.label i = 5
.label c = $bb
.label gfxb = $a
.label x = 7
.label gfxbCpuBank = 9
.label y = 6
// [119] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0 -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY|DTV_COLORRAM_OFF
sta DTV_CONTROL
// [120] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Mode
lda #VIC_ECM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [121] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_MCM|VIC_CSEL
sta VIC_CONTROL2
// [122] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
lda #0
sta DTV_PLANEB_START_LO
// [123] *((const byte*) DTV_PLANEB_START_MI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_MI
// [124] *((const byte*) DTV_PLANEB_START_HI#0) ← <>(const dword) mode_8bppchunkybmm::PLANEB#0 -- _deref_pbuc1=vbuc2
lda #<PLANEB>>$10
sta DTV_PLANEB_START_HI
// [125] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 8 -- _deref_pbuc1=vbuc2
lda #8
sta DTV_PLANEB_STEP
// [126] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// [127] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_HI
// [128] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Border color
lda #0
sta BORDERCOL
// [129] phi from mode_8bppchunkybmm to mode_8bppchunkybmm::@1 [phi:mode_8bppchunkybmm->mode_8bppchunkybmm::@1]
b1_from_mode_8bppchunkybmm:
// [129] phi (byte) mode_8bppchunkybmm::i#2 = (byte) 0 [phi:mode_8bppchunkybmm->mode_8bppchunkybmm::@1#0] -- vbuz1=vbuc1
lda #0
sta.z i
jmp b1
// DTV Palette - Grey Tones
// [129] phi from mode_8bppchunkybmm::@1 to mode_8bppchunkybmm::@1 [phi:mode_8bppchunkybmm::@1->mode_8bppchunkybmm::@1]
b1_from_b1:
// [129] phi (byte) mode_8bppchunkybmm::i#2 = (byte) mode_8bppchunkybmm::i#1 [phi:mode_8bppchunkybmm::@1->mode_8bppchunkybmm::@1#0] -- register_copy
jmp b1
// mode_8bppchunkybmm::@1
b1:
// [130] *((const byte*) DTV_PALETTE#0 + (byte) mode_8bppchunkybmm::i#2) ← (byte) mode_8bppchunkybmm::i#2 -- pbuc1_derefidx_vbuz1=vbuz1
ldy.z i
tya
sta DTV_PALETTE,y
// [131] (byte) mode_8bppchunkybmm::i#1 ← ++ (byte) mode_8bppchunkybmm::i#2 -- vbuz1=_inc_vbuz1
inc.z i
// [132] if((byte) mode_8bppchunkybmm::i#1!=(byte) $10) goto mode_8bppchunkybmm::@1 -- vbuz1_neq_vbuc1_then_la1
lda #$10
cmp.z i
bne b1_from_b1
// [133] phi from mode_8bppchunkybmm::@1 to mode_8bppchunkybmm::@2 [phi:mode_8bppchunkybmm::@1->mode_8bppchunkybmm::@2]
b2_from_b1:
jmp b2
// mode_8bppchunkybmm::@2
b2:
// [134] call dtvSetCpuBankSegment1
// [223] phi from mode_8bppchunkybmm::@2 to dtvSetCpuBankSegment1 [phi:mode_8bppchunkybmm::@2->dtvSetCpuBankSegment1]
dtvSetCpuBankSegment1_from_b2:
// [223] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = (byte)(const dword) mode_8bppchunkybmm::PLANEB#0/(word) $4000 [phi:mode_8bppchunkybmm::@2->dtvSetCpuBankSegment1#0] -- vbuz1=vbuc1
lda #PLANEB/$4000
sta.z dtvSetCpuBankSegment1.cpuBankIdx
jsr dtvSetCpuBankSegment1
// [135] phi from mode_8bppchunkybmm::@2 to mode_8bppchunkybmm::@3 [phi:mode_8bppchunkybmm::@2->mode_8bppchunkybmm::@3]
b3_from_b2:
// [135] phi (byte) mode_8bppchunkybmm::gfxbCpuBank#7 = ++(byte)(const dword) mode_8bppchunkybmm::PLANEB#0/(word) $4000 [phi:mode_8bppchunkybmm::@2->mode_8bppchunkybmm::@3#0] -- vbuz1=vbuc1
lda #PLANEB/$4000+1
sta.z gfxbCpuBank
// [135] phi (byte) mode_8bppchunkybmm::y#6 = (byte) 0 [phi:mode_8bppchunkybmm::@2->mode_8bppchunkybmm::@3#1] -- vbuz1=vbuc1
lda #0
sta.z y
// [135] phi (byte*) mode_8bppchunkybmm::gfxb#5 = (byte*) 16384 [phi:mode_8bppchunkybmm::@2->mode_8bppchunkybmm::@3#2] -- pbuz1=pbuc1
lda #<$4000
sta.z gfxb
lda #>$4000
sta.z gfxb+1
jmp b3
// [135] phi from mode_8bppchunkybmm::@7 to mode_8bppchunkybmm::@3 [phi:mode_8bppchunkybmm::@7->mode_8bppchunkybmm::@3]
b3_from_b7:
// [135] phi (byte) mode_8bppchunkybmm::gfxbCpuBank#7 = (byte) mode_8bppchunkybmm::gfxbCpuBank#8 [phi:mode_8bppchunkybmm::@7->mode_8bppchunkybmm::@3#0] -- register_copy
// [135] phi (byte) mode_8bppchunkybmm::y#6 = (byte) mode_8bppchunkybmm::y#1 [phi:mode_8bppchunkybmm::@7->mode_8bppchunkybmm::@3#1] -- register_copy
// [135] phi (byte*) mode_8bppchunkybmm::gfxb#5 = (byte*) mode_8bppchunkybmm::gfxb#1 [phi:mode_8bppchunkybmm::@7->mode_8bppchunkybmm::@3#2] -- register_copy
jmp b3
// mode_8bppchunkybmm::@3
b3:
// [136] phi from mode_8bppchunkybmm::@3 to mode_8bppchunkybmm::@4 [phi:mode_8bppchunkybmm::@3->mode_8bppchunkybmm::@4]
b4_from_b3:
// [136] phi (byte) mode_8bppchunkybmm::gfxbCpuBank#4 = (byte) mode_8bppchunkybmm::gfxbCpuBank#7 [phi:mode_8bppchunkybmm::@3->mode_8bppchunkybmm::@4#0] -- register_copy
// [136] phi (word) mode_8bppchunkybmm::x#2 = (word) 0 [phi:mode_8bppchunkybmm::@3->mode_8bppchunkybmm::@4#1] -- vwuz1=vwuc1
lda #<0
sta.z x
lda #>0
sta.z x+1
// [136] phi (byte*) mode_8bppchunkybmm::gfxb#3 = (byte*) mode_8bppchunkybmm::gfxb#5 [phi:mode_8bppchunkybmm::@3->mode_8bppchunkybmm::@4#2] -- register_copy
jmp b4
// [136] phi from mode_8bppchunkybmm::@5 to mode_8bppchunkybmm::@4 [phi:mode_8bppchunkybmm::@5->mode_8bppchunkybmm::@4]
b4_from_b5:
// [136] phi (byte) mode_8bppchunkybmm::gfxbCpuBank#4 = (byte) mode_8bppchunkybmm::gfxbCpuBank#8 [phi:mode_8bppchunkybmm::@5->mode_8bppchunkybmm::@4#0] -- register_copy
// [136] phi (word) mode_8bppchunkybmm::x#2 = (word) mode_8bppchunkybmm::x#1 [phi:mode_8bppchunkybmm::@5->mode_8bppchunkybmm::@4#1] -- register_copy
// [136] phi (byte*) mode_8bppchunkybmm::gfxb#3 = (byte*) mode_8bppchunkybmm::gfxb#1 [phi:mode_8bppchunkybmm::@5->mode_8bppchunkybmm::@4#2] -- register_copy
jmp b4
// mode_8bppchunkybmm::@4
b4:
// [137] if((byte*) mode_8bppchunkybmm::gfxb#3!=(word) $8000) goto mode_8bppchunkybmm::@5 -- pbuz1_neq_vwuc1_then_la1
lda.z gfxb+1
cmp #>$8000
bne b5_from_b4
lda.z gfxb
cmp #<$8000
bne b5_from_b4
jmp b6
// mode_8bppchunkybmm::@6
b6:
// [138] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ← (byte) mode_8bppchunkybmm::gfxbCpuBank#4 -- vbuz1=vbuz2
lda.z gfxbCpuBank
sta.z dtvSetCpuBankSegment1.cpuBankIdx
// [139] call dtvSetCpuBankSegment1
// [223] phi from mode_8bppchunkybmm::@6 to dtvSetCpuBankSegment1 [phi:mode_8bppchunkybmm::@6->dtvSetCpuBankSegment1]
dtvSetCpuBankSegment1_from_b6:
// [223] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 [phi:mode_8bppchunkybmm::@6->dtvSetCpuBankSegment1#0] -- register_copy
jsr dtvSetCpuBankSegment1
jmp b9
// mode_8bppchunkybmm::@9
b9:
// [140] (byte) mode_8bppchunkybmm::gfxbCpuBank#2 ← ++ (byte) mode_8bppchunkybmm::gfxbCpuBank#4 -- vbuz1=_inc_vbuz1
inc.z gfxbCpuBank
// [141] phi from mode_8bppchunkybmm::@9 to mode_8bppchunkybmm::@5 [phi:mode_8bppchunkybmm::@9->mode_8bppchunkybmm::@5]
b5_from_b9:
// [141] phi (byte) mode_8bppchunkybmm::gfxbCpuBank#8 = (byte) mode_8bppchunkybmm::gfxbCpuBank#2 [phi:mode_8bppchunkybmm::@9->mode_8bppchunkybmm::@5#0] -- register_copy
// [141] phi (byte*) mode_8bppchunkybmm::gfxb#4 = (byte*) 16384 [phi:mode_8bppchunkybmm::@9->mode_8bppchunkybmm::@5#1] -- pbuz1=pbuc1
lda #<$4000
sta.z gfxb
lda #>$4000
sta.z gfxb+1
jmp b5
// [141] phi from mode_8bppchunkybmm::@4 to mode_8bppchunkybmm::@5 [phi:mode_8bppchunkybmm::@4->mode_8bppchunkybmm::@5]
b5_from_b4:
// [141] phi (byte) mode_8bppchunkybmm::gfxbCpuBank#8 = (byte) mode_8bppchunkybmm::gfxbCpuBank#4 [phi:mode_8bppchunkybmm::@4->mode_8bppchunkybmm::@5#0] -- register_copy
// [141] phi (byte*) mode_8bppchunkybmm::gfxb#4 = (byte*) mode_8bppchunkybmm::gfxb#3 [phi:mode_8bppchunkybmm::@4->mode_8bppchunkybmm::@5#1] -- register_copy
jmp b5
// mode_8bppchunkybmm::@5
b5:
// [142] (word~) mode_8bppchunkybmm::$26 ← (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#6 -- vwuz1=vwuz2_plus_vbuz3
lda.z y
clc
adc.z x
sta.z _26
lda #0
adc.z x+1
sta.z _26+1
// [143] (byte) mode_8bppchunkybmm::c#0 ← (byte)(word~) mode_8bppchunkybmm::$26 -- vbuz1=_byte_vwuz2
lda.z _26
sta.z c
// [144] *((byte*) mode_8bppchunkybmm::gfxb#4) ← (byte) mode_8bppchunkybmm::c#0 -- _deref_pbuz1=vbuz2
lda.z c
ldy #0
sta (gfxb),y
// [145] (byte*) mode_8bppchunkybmm::gfxb#1 ← ++ (byte*) mode_8bppchunkybmm::gfxb#4 -- pbuz1=_inc_pbuz1
inc.z gfxb
bne !+
inc.z gfxb+1
!:
// [146] (word) mode_8bppchunkybmm::x#1 ← ++ (word) mode_8bppchunkybmm::x#2 -- vwuz1=_inc_vwuz1
inc.z x
bne !+
inc.z x+1
!:
// [147] if((word) mode_8bppchunkybmm::x#1!=(word) $140) goto mode_8bppchunkybmm::@4 -- vwuz1_neq_vwuc1_then_la1
lda.z x+1
cmp #>$140
bne b4_from_b5
lda.z x
cmp #<$140
bne b4_from_b5
jmp b7
// mode_8bppchunkybmm::@7
b7:
// [148] (byte) mode_8bppchunkybmm::y#1 ← ++ (byte) mode_8bppchunkybmm::y#6 -- vbuz1=_inc_vbuz1
inc.z y
// [149] if((byte) mode_8bppchunkybmm::y#1!=(byte) $c8) goto mode_8bppchunkybmm::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$c8
cmp.z y
bne b3_from_b7
// [150] phi from mode_8bppchunkybmm::@7 to mode_8bppchunkybmm::@8 [phi:mode_8bppchunkybmm::@7->mode_8bppchunkybmm::@8]
b8_from_b7:
jmp b8
// mode_8bppchunkybmm::@8
b8:
// [151] call dtvSetCpuBankSegment1
// [223] phi from mode_8bppchunkybmm::@8 to dtvSetCpuBankSegment1 [phi:mode_8bppchunkybmm::@8->dtvSetCpuBankSegment1]
dtvSetCpuBankSegment1_from_b8:
// [223] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = (byte)(number) $4000/(number) $4000 [phi:mode_8bppchunkybmm::@8->dtvSetCpuBankSegment1#0] -- vbuz1=vbuc1
lda #$4000/$4000
sta.z dtvSetCpuBankSegment1.cpuBankIdx
jsr dtvSetCpuBankSegment1
// [152] phi from mode_8bppchunkybmm::@8 to mode_8bppchunkybmm::@10 [phi:mode_8bppchunkybmm::@8->mode_8bppchunkybmm::@10]
b10_from_b8:
jmp b10
// mode_8bppchunkybmm::@10
b10:
// [153] call mode_ctrl
// [155] phi from mode_8bppchunkybmm::@10 to mode_ctrl [phi:mode_8bppchunkybmm::@10->mode_ctrl]
mode_ctrl_from_b10:
// [155] phi (byte) dtv_control#144 = (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0 [phi:mode_8bppchunkybmm::@10->mode_ctrl#0] -- vbuz1=vbuc1
lda #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY|DTV_COLORRAM_OFF
sta.z dtv_control
jsr mode_ctrl
jmp breturn
// mode_8bppchunkybmm::@return
breturn:
// [154] return
rts
}
// mode_ctrl
// Allow the user to control the DTV graphics using different keys
mode_ctrl: {
.label _1 = $bd
.label _4 = $bf
.label _8 = $c1
.label _12 = $c3
.label _16 = $c5
.label _20 = $c7
.label _24 = $c9
.label _28 = $cb
.label ctrl = $d
// [156] phi from mode_ctrl mode_ctrl::@11 mode_ctrl::@18 to mode_ctrl::@1 [phi:mode_ctrl/mode_ctrl::@11/mode_ctrl::@18->mode_ctrl::@1]
b1_from_mode_ctrl:
b1_from_b11:
b1_from_b18:
// [156] phi (byte) dtv_control#114 = (byte) dtv_control#144 [phi:mode_ctrl/mode_ctrl::@11/mode_ctrl::@18->mode_ctrl::@1#0] -- register_copy
jmp b1
// mode_ctrl::@1
b1:
jmp b2
// Wait for the raster
// mode_ctrl::@2
b2:
// [157] if(*((const byte*) RASTER#0)!=(byte) $ff) goto mode_ctrl::@2 -- _deref_pbuc1_neq_vbuc2_then_la1
lda #$ff
cmp RASTER
bne b2
// [158] phi from mode_ctrl::@2 to mode_ctrl::@3 [phi:mode_ctrl::@2->mode_ctrl::@3]
b3_from_b2:
jmp b3
// mode_ctrl::@3
b3:
// [159] call keyboard_key_pressed
// [211] phi from mode_ctrl::@3 to keyboard_key_pressed [phi:mode_ctrl::@3->keyboard_key_pressed]
keyboard_key_pressed_from_b3:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_SPACE#0 [phi:mode_ctrl::@3->keyboard_key_pressed#0] -- vbuz1=vbuc1
lda #KEY_SPACE
sta.z keyboard_key_pressed.key
jsr keyboard_key_pressed
// [160] (byte) keyboard_key_pressed::return#14 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return
sta.z keyboard_key_pressed.return_14
jmp b19
// mode_ctrl::@19
b19:
// [161] (byte~) mode_ctrl::$1 ← (byte) keyboard_key_pressed::return#14 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_14
sta.z _1
// [162] if((byte~) mode_ctrl::$1==(byte) 0) goto mode_ctrl::@4 -- vbuz1_eq_0_then_la1
lda.z _1
cmp #0
beq b4
jmp breturn
// mode_ctrl::@return
breturn:
// [163] return
rts
// mode_ctrl::@4
b4:
// [164] (byte) mode_ctrl::ctrl#0 ← (byte) dtv_control#114 -- vbuz1=vbuz2
// Read the current control byte
lda.z dtv_control
sta.z ctrl
// [165] call keyboard_key_pressed
// [211] phi from mode_ctrl::@4 to keyboard_key_pressed [phi:mode_ctrl::@4->keyboard_key_pressed]
keyboard_key_pressed_from_b4:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_L#0 [phi:mode_ctrl::@4->keyboard_key_pressed#0] -- vbuz1=vbuc1
lda #KEY_L
sta.z keyboard_key_pressed.key
jsr keyboard_key_pressed
// [166] (byte) keyboard_key_pressed::return#15 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return
sta.z keyboard_key_pressed.return_15
jmp b20
// mode_ctrl::@20
b20:
// [167] (byte~) mode_ctrl::$4 ← (byte) keyboard_key_pressed::return#15 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_15
sta.z _4
// [168] if((byte~) mode_ctrl::$4==(byte) 0) goto mode_ctrl::@5 -- vbuz1_eq_0_then_la1
lda.z _4
cmp #0
beq b5_from_b20
jmp b12
// mode_ctrl::@12
b12:
// [169] (byte) mode_ctrl::ctrl#1 ← (byte) mode_ctrl::ctrl#0 | (const byte) DTV_LINEAR#0 -- vbuz1=vbuz1_bor_vbuc1
lda #DTV_LINEAR
ora.z ctrl
sta.z ctrl
// [170] phi from mode_ctrl::@12 mode_ctrl::@20 to mode_ctrl::@5 [phi:mode_ctrl::@12/mode_ctrl::@20->mode_ctrl::@5]
b5_from_b12:
b5_from_b20:
// [170] phi (byte) mode_ctrl::ctrl#17 = (byte) mode_ctrl::ctrl#1 [phi:mode_ctrl::@12/mode_ctrl::@20->mode_ctrl::@5#0] -- register_copy
jmp b5
// mode_ctrl::@5
b5:
// [171] call keyboard_key_pressed
// [211] phi from mode_ctrl::@5 to keyboard_key_pressed [phi:mode_ctrl::@5->keyboard_key_pressed]
keyboard_key_pressed_from_b5:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_H#0 [phi:mode_ctrl::@5->keyboard_key_pressed#0] -- vbuz1=vbuc1
lda #KEY_H
sta.z keyboard_key_pressed.key
jsr keyboard_key_pressed
// [172] (byte) keyboard_key_pressed::return#16 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return
sta.z keyboard_key_pressed.return_16
jmp b21
// mode_ctrl::@21
b21:
// [173] (byte~) mode_ctrl::$8 ← (byte) keyboard_key_pressed::return#16 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_16
sta.z _8
// [174] if((byte~) mode_ctrl::$8==(byte) 0) goto mode_ctrl::@6 -- vbuz1_eq_0_then_la1
lda.z _8
cmp #0
beq b6_from_b21
jmp b13
// mode_ctrl::@13
b13:
// [175] (byte) mode_ctrl::ctrl#2 ← (byte) mode_ctrl::ctrl#17 | (const byte) DTV_HIGHCOLOR#0 -- vbuz1=vbuz1_bor_vbuc1
lda #DTV_HIGHCOLOR
ora.z ctrl
sta.z ctrl
// [176] phi from mode_ctrl::@13 mode_ctrl::@21 to mode_ctrl::@6 [phi:mode_ctrl::@13/mode_ctrl::@21->mode_ctrl::@6]
b6_from_b13:
b6_from_b21:
// [176] phi (byte) mode_ctrl::ctrl#10 = (byte) mode_ctrl::ctrl#2 [phi:mode_ctrl::@13/mode_ctrl::@21->mode_ctrl::@6#0] -- register_copy
jmp b6
// mode_ctrl::@6
b6:
// [177] call keyboard_key_pressed
// [211] phi from mode_ctrl::@6 to keyboard_key_pressed [phi:mode_ctrl::@6->keyboard_key_pressed]
keyboard_key_pressed_from_b6:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_O#0 [phi:mode_ctrl::@6->keyboard_key_pressed#0] -- vbuz1=vbuc1
lda #KEY_O
sta.z keyboard_key_pressed.key
jsr keyboard_key_pressed
// [178] (byte) keyboard_key_pressed::return#17 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return
sta.z keyboard_key_pressed.return_17
jmp b22
// mode_ctrl::@22
b22:
// [179] (byte~) mode_ctrl::$12 ← (byte) keyboard_key_pressed::return#17 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_17
sta.z _12
// [180] if((byte~) mode_ctrl::$12==(byte) 0) goto mode_ctrl::@7 -- vbuz1_eq_0_then_la1
lda.z _12
cmp #0
beq b7_from_b22
jmp b14
// mode_ctrl::@14
b14:
// [181] (byte) mode_ctrl::ctrl#3 ← (byte) mode_ctrl::ctrl#10 | (const byte) DTV_OVERSCAN#0 -- vbuz1=vbuz1_bor_vbuc1
lda #DTV_OVERSCAN
ora.z ctrl
sta.z ctrl
// [182] phi from mode_ctrl::@14 mode_ctrl::@22 to mode_ctrl::@7 [phi:mode_ctrl::@14/mode_ctrl::@22->mode_ctrl::@7]
b7_from_b14:
b7_from_b22:
// [182] phi (byte) mode_ctrl::ctrl#11 = (byte) mode_ctrl::ctrl#3 [phi:mode_ctrl::@14/mode_ctrl::@22->mode_ctrl::@7#0] -- register_copy
jmp b7
// mode_ctrl::@7
b7:
// [183] call keyboard_key_pressed
// [211] phi from mode_ctrl::@7 to keyboard_key_pressed [phi:mode_ctrl::@7->keyboard_key_pressed]
keyboard_key_pressed_from_b7:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_B#0 [phi:mode_ctrl::@7->keyboard_key_pressed#0] -- vbuz1=vbuc1
lda #KEY_B
sta.z keyboard_key_pressed.key
jsr keyboard_key_pressed
// [184] (byte) keyboard_key_pressed::return#18 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return
sta.z keyboard_key_pressed.return_18
jmp b23
// mode_ctrl::@23
b23:
// [185] (byte~) mode_ctrl::$16 ← (byte) keyboard_key_pressed::return#18 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_18
sta.z _16
// [186] if((byte~) mode_ctrl::$16==(byte) 0) goto mode_ctrl::@8 -- vbuz1_eq_0_then_la1
lda.z _16
cmp #0
beq b8_from_b23
jmp b15
// mode_ctrl::@15
b15:
// [187] (byte) mode_ctrl::ctrl#4 ← (byte) mode_ctrl::ctrl#11 | (const byte) DTV_BORDER_OFF#0 -- vbuz1=vbuz1_bor_vbuc1
lda #DTV_BORDER_OFF
ora.z ctrl
sta.z ctrl
// [188] phi from mode_ctrl::@15 mode_ctrl::@23 to mode_ctrl::@8 [phi:mode_ctrl::@15/mode_ctrl::@23->mode_ctrl::@8]
b8_from_b15:
b8_from_b23:
// [188] phi (byte) mode_ctrl::ctrl#12 = (byte) mode_ctrl::ctrl#4 [phi:mode_ctrl::@15/mode_ctrl::@23->mode_ctrl::@8#0] -- register_copy
jmp b8
// mode_ctrl::@8
b8:
// [189] call keyboard_key_pressed
// [211] phi from mode_ctrl::@8 to keyboard_key_pressed [phi:mode_ctrl::@8->keyboard_key_pressed]
keyboard_key_pressed_from_b8:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_U#0 [phi:mode_ctrl::@8->keyboard_key_pressed#0] -- vbuz1=vbuc1
lda #KEY_U
sta.z keyboard_key_pressed.key
jsr keyboard_key_pressed
// [190] (byte) keyboard_key_pressed::return#19 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return
sta.z keyboard_key_pressed.return_19
jmp b24
// mode_ctrl::@24
b24:
// [191] (byte~) mode_ctrl::$20 ← (byte) keyboard_key_pressed::return#19 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_19
sta.z _20
// [192] if((byte~) mode_ctrl::$20==(byte) 0) goto mode_ctrl::@9 -- vbuz1_eq_0_then_la1
lda.z _20
cmp #0
beq b9_from_b24
jmp b16
// mode_ctrl::@16
b16:
// [193] (byte) mode_ctrl::ctrl#5 ← (byte) mode_ctrl::ctrl#12 | (const byte) DTV_CHUNKY#0 -- vbuz1=vbuz1_bor_vbuc1
lda #DTV_CHUNKY
ora.z ctrl
sta.z ctrl
// [194] phi from mode_ctrl::@16 mode_ctrl::@24 to mode_ctrl::@9 [phi:mode_ctrl::@16/mode_ctrl::@24->mode_ctrl::@9]
b9_from_b16:
b9_from_b24:
// [194] phi (byte) mode_ctrl::ctrl#13 = (byte) mode_ctrl::ctrl#5 [phi:mode_ctrl::@16/mode_ctrl::@24->mode_ctrl::@9#0] -- register_copy
jmp b9
// mode_ctrl::@9
b9:
// [195] call keyboard_key_pressed
// [211] phi from mode_ctrl::@9 to keyboard_key_pressed [phi:mode_ctrl::@9->keyboard_key_pressed]
keyboard_key_pressed_from_b9:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_C#0 [phi:mode_ctrl::@9->keyboard_key_pressed#0] -- vbuz1=vbuc1
lda #KEY_C
sta.z keyboard_key_pressed.key
jsr keyboard_key_pressed
// [196] (byte) keyboard_key_pressed::return#20 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return
sta.z keyboard_key_pressed.return_20
jmp b25
// mode_ctrl::@25
b25:
// [197] (byte~) mode_ctrl::$24 ← (byte) keyboard_key_pressed::return#20 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_20
sta.z _24
// [198] if((byte~) mode_ctrl::$24==(byte) 0) goto mode_ctrl::@10 -- vbuz1_eq_0_then_la1
lda.z _24
cmp #0
beq b10_from_b25
jmp b17
// mode_ctrl::@17
b17:
// [199] (byte) mode_ctrl::ctrl#6 ← (byte) mode_ctrl::ctrl#13 | (const byte) DTV_COLORRAM_OFF#0 -- vbuz1=vbuz1_bor_vbuc1
lda #DTV_COLORRAM_OFF
ora.z ctrl
sta.z ctrl
// [200] phi from mode_ctrl::@17 mode_ctrl::@25 to mode_ctrl::@10 [phi:mode_ctrl::@17/mode_ctrl::@25->mode_ctrl::@10]
b10_from_b17:
b10_from_b25:
// [200] phi (byte) mode_ctrl::ctrl#22 = (byte) mode_ctrl::ctrl#6 [phi:mode_ctrl::@17/mode_ctrl::@25->mode_ctrl::@10#0] -- register_copy
jmp b10
// mode_ctrl::@10
b10:
// [201] call keyboard_key_pressed
// [211] phi from mode_ctrl::@10 to keyboard_key_pressed [phi:mode_ctrl::@10->keyboard_key_pressed]
keyboard_key_pressed_from_b10:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_0#0 [phi:mode_ctrl::@10->keyboard_key_pressed#0] -- vbuz1=vbuc1
lda #KEY_0
sta.z keyboard_key_pressed.key
jsr keyboard_key_pressed
// [202] (byte) keyboard_key_pressed::return#21 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return
sta.z keyboard_key_pressed.return_21
jmp b26
// mode_ctrl::@26
b26:
// [203] (byte~) mode_ctrl::$28 ← (byte) keyboard_key_pressed::return#21 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_21
sta.z _28
// [204] if((byte~) mode_ctrl::$28==(byte) 0) goto mode_ctrl::@27 -- vbuz1_eq_0_then_la1
lda.z _28
cmp #0
beq b27_from_b26
// [206] phi from mode_ctrl::@26 to mode_ctrl::@11 [phi:mode_ctrl::@26->mode_ctrl::@11]
b11_from_b26:
// [206] phi (byte) mode_ctrl::ctrl#14 = (byte) 0 [phi:mode_ctrl::@26->mode_ctrl::@11#0] -- vbuz1=vbuc1
lda #0
sta.z ctrl
jmp b11
// [205] phi from mode_ctrl::@26 to mode_ctrl::@27 [phi:mode_ctrl::@26->mode_ctrl::@27]
b27_from_b26:
jmp b27
// mode_ctrl::@27
b27:
// [206] phi from mode_ctrl::@27 to mode_ctrl::@11 [phi:mode_ctrl::@27->mode_ctrl::@11]
b11_from_b27:
// [206] phi (byte) mode_ctrl::ctrl#14 = (byte) mode_ctrl::ctrl#22 [phi:mode_ctrl::@27->mode_ctrl::@11#0] -- register_copy
jmp b11
// mode_ctrl::@11
b11:
// [207] if((byte) mode_ctrl::ctrl#14==(byte) dtv_control#114) goto mode_ctrl::@1 -- vbuz1_eq_vbuz2_then_la1
lda.z ctrl
cmp.z dtv_control
beq b1_from_b11
jmp b18
// mode_ctrl::@18
b18:
// [208] (byte) dtv_control#17 ← (byte) mode_ctrl::ctrl#14 -- vbuz1=vbuz2
lda.z ctrl
sta.z dtv_control
// [209] *((const byte*) DTV_CONTROL#0) ← (byte) mode_ctrl::ctrl#14 -- _deref_pbuc1=vbuz1
lda.z ctrl
sta DTV_CONTROL
// [210] *((const byte*) BORDERCOL#0) ← (byte) mode_ctrl::ctrl#14 -- _deref_pbuc1=vbuz1
lda.z ctrl
sta BORDERCOL
jmp b1_from_b18
}
// keyboard_key_pressed
// Determines whether a specific key is currently pressed by accessing the matrix directly
// The key is a keyboard code defined from the keyboard matrix by %00rrrccc, where rrr is the row ID (0-7) and ccc is the column ID (0-7)
// All keys exist as as KEY_XXX constants.
// Returns zero if the key is not pressed and a non-zero value if the key is currently pressed
// keyboard_key_pressed(byte zeropage($e) key)
keyboard_key_pressed: {
.label _2 = $d0
.label colidx = $cc
.label rowidx = $cd
.label return = $d1
.label return_2 = $a1
.label return_10 = $b1
.label return_11 = $b3
.label return_12 = $b5
.label return_13 = $b7
.label return_14 = $bc
.label return_15 = $be
.label return_16 = $c0
.label return_17 = $c2
.label return_18 = $c4
.label return_19 = $c6
.label return_20 = $c8
.label return_21 = $ca
.label key = $e
.label return_24 = $a3
.label return_25 = $a5
.label return_26 = $a7
.label return_27 = $a9
.label return_28 = $ab
.label return_29 = $ad
.label return_30 = $af
// [212] (byte) keyboard_key_pressed::colidx#0 ← (byte) keyboard_key_pressed::key#20 & (byte) 7 -- vbuz1=vbuz2_band_vbuc1
lda #7
and.z key
sta.z colidx
// [213] (byte) keyboard_key_pressed::rowidx#0 ← (byte) keyboard_key_pressed::key#20 >> (byte) 3 -- vbuz1=vbuz2_ror_3
lda.z key
lsr
lsr
lsr
sta.z rowidx
// [214] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_key_pressed::rowidx#0 -- vbuz1=vbuz2
lda.z rowidx
sta.z keyboard_matrix_read.rowid
// [215] call keyboard_matrix_read
jsr keyboard_matrix_read
// [216] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 -- vbuz1=vbuz2
lda.z keyboard_matrix_read.return
sta.z keyboard_matrix_read.return_2
jmp b1
// keyboard_key_pressed::@1
b1:
// [217] (byte~) keyboard_key_pressed::$2 ← (byte) keyboard_matrix_read::return#2 -- vbuz1=vbuz2
lda.z keyboard_matrix_read.return_2
sta.z _2
// [218] (byte) keyboard_key_pressed::return#0 ← (byte~) keyboard_key_pressed::$2 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#0) -- vbuz1=vbuz2_band_pbuc1_derefidx_vbuz3
lda.z _2
ldy.z colidx
and keyboard_matrix_col_bitmask,y
sta.z return
jmp breturn
// keyboard_key_pressed::@return
breturn:
// [219] return
rts
}
// keyboard_matrix_read
// Read a single row of the keyboard matrix
// The row ID (0-7) of the keyboard matrix row to read. See the C64 key matrix for row IDs.
// Returns the keys pressed on the row as bits according to the C64 key matrix.
// Notice: If the C64 normal interrupt is still running it will occasionally interrupt right between the read & write
// leading to erroneous readings. You must disable kill the normal interrupt or sei/cli around calls to the keyboard matrix reader.
// keyboard_matrix_read(byte zeropage($ce) rowid)
keyboard_matrix_read: {
.label return = $d2
.label rowid = $ce
.label return_2 = $cf
// [220] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuz1
ldy.z rowid
lda keyboard_matrix_row_bitmask,y
sta CIA1_PORT_A
// [221] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) -- vbuz1=_bnot__deref_pbuc1
lda CIA1_PORT_B
eor #$ff
sta.z return
jmp breturn
// keyboard_matrix_read::@return
breturn:
// [222] return
rts
}
// dtvSetCpuBankSegment1
// Set the memory pointed to by CPU BANK 1 SEGMENT ($4000-$7fff)
// This sets which actual memory is addressed when the CPU reads/writes to $4000-$7fff
// The actual memory addressed will be $4000*cpuSegmentIdx
// dtvSetCpuBankSegment1(byte zeropage($f) cpuBankIdx)
dtvSetCpuBankSegment1: {
// Move CPU BANK 1 SEGMENT ($4000-$7fff)
.label cpuBank = $ff
.label cpuBankIdx = $f
// [224] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ← (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 -- _deref_pbuc1=vbuz1
lda.z cpuBankIdx
sta cpuBank
// asm { .byte$32,$dd lda$ff .byte$32,$00 }
.byte $32, $dd
lda.z $ff
.byte $32, $00
jmp breturn
// dtvSetCpuBankSegment1::@return
breturn:
// [226] return
rts
}
// mode_8bpppixelcell
//8bpp Pixel Cell Mode (BMM/COLDIS = 0, ECM/MCM/HICOL/LINEAR/CHUNK = 1)
//Pixel Cell Adressing
//CharData[8]: (PlaneA[21:0])
//GfxData[8]: (PlaneB[21:14] & CharData[7:0] & RowCounter[3:0] & PixelCounter[7:0] )
//GfxData Pixel Shifter (8):
//- 8bpp color GfxData[7:0]
//Pixel cell mode can be thought of as a text mode that uses a 8x8 pixel 8bpp font (64 bytes/char).
//The characters come from counter A and the font (or "cells") from counter B.
//Counter B step and modulo should be set to 0, counter A modulo to 0 and counter A step to 1 for normal operation.
mode_8bpppixelcell: {
// 8BPP Pixel Cell Screen (contains 40x25=1000 chars)
.label PLANEA = $3c00
// 8BPP Pixel Cell Charset (contains 256 64 byte chars)
.label PLANEB = $4000
.label CHARGEN = $d000
.label _14 = $d3
.label _15 = $d4
.label _16 = $d5
.label _17 = $d6
.label _20 = $d7
.label i = $10
.label gfxa = $13
.label ax = $12
.label ay = $11
.label bits = $19
.label chargen = $16
.label gfxb = $1a
.label col = $1c
.label cp = $1d
.label cr = $18
.label ch = $15
.label c = $1e
// [227] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0 -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY
sta DTV_CONTROL
// [228] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Mode
lda #VIC_ECM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [229] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_MCM|VIC_CSEL
sta VIC_CONTROL2
// [230] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane A Counter
lda #0
sta DTV_PLANEA_START_LO
// [231] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_8bpppixelcell::PLANEA#0 -- _deref_pbuc1=vbuc2
lda #>PLANEA
sta DTV_PLANEA_START_MI
// [232] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_START_HI
// [233] *((const byte*) DTV_PLANEA_STEP#0) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEA_STEP
// [234] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_LO
// [235] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_HI
// [236] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
lda #0
sta DTV_PLANEB_START_LO
// [237] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_8bpppixelcell::PLANEB#0 -- _deref_pbuc1=vbuc2
lda #>PLANEB
sta DTV_PLANEB_START_MI
// [238] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_HI
// [239] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_STEP
// [240] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// [241] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_HI
// [242] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Border color
lda #0
sta BORDERCOL
// [243] phi from mode_8bpppixelcell to mode_8bpppixelcell::@1 [phi:mode_8bpppixelcell->mode_8bpppixelcell::@1]
b1_from_mode_8bpppixelcell:
// [243] phi (byte) mode_8bpppixelcell::i#2 = (byte) 0 [phi:mode_8bpppixelcell->mode_8bpppixelcell::@1#0] -- vbuz1=vbuc1
lda #0
sta.z i
jmp b1
// DTV Palette - Grey Tones
// [243] phi from mode_8bpppixelcell::@1 to mode_8bpppixelcell::@1 [phi:mode_8bpppixelcell::@1->mode_8bpppixelcell::@1]
b1_from_b1:
// [243] phi (byte) mode_8bpppixelcell::i#2 = (byte) mode_8bpppixelcell::i#1 [phi:mode_8bpppixelcell::@1->mode_8bpppixelcell::@1#0] -- register_copy
jmp b1
// mode_8bpppixelcell::@1
b1:
// [244] *((const byte*) DTV_PALETTE#0 + (byte) mode_8bpppixelcell::i#2) ← (byte) mode_8bpppixelcell::i#2 -- pbuc1_derefidx_vbuz1=vbuz1
ldy.z i
tya
sta DTV_PALETTE,y
// [245] (byte) mode_8bpppixelcell::i#1 ← ++ (byte) mode_8bpppixelcell::i#2 -- vbuz1=_inc_vbuz1
inc.z i
// [246] if((byte) mode_8bpppixelcell::i#1!=(byte) $10) goto mode_8bpppixelcell::@1 -- vbuz1_neq_vbuc1_then_la1
lda #$10
cmp.z i
bne b1_from_b1
// [247] phi from mode_8bpppixelcell::@1 to mode_8bpppixelcell::@2 [phi:mode_8bpppixelcell::@1->mode_8bpppixelcell::@2]
b2_from_b1:
// [247] phi (byte*) mode_8bpppixelcell::gfxa#3 = (const byte*) mode_8bpppixelcell::PLANEA#0 [phi:mode_8bpppixelcell::@1->mode_8bpppixelcell::@2#0] -- pbuz1=pbuc1
lda #<PLANEA
sta.z gfxa
lda #>PLANEA
sta.z gfxa+1
// [247] phi (byte) mode_8bpppixelcell::ay#4 = (byte) 0 [phi:mode_8bpppixelcell::@1->mode_8bpppixelcell::@2#1] -- vbuz1=vbuc1
lda #0
sta.z ay
jmp b2
// [247] phi from mode_8bpppixelcell::@4 to mode_8bpppixelcell::@2 [phi:mode_8bpppixelcell::@4->mode_8bpppixelcell::@2]
b2_from_b4:
// [247] phi (byte*) mode_8bpppixelcell::gfxa#3 = (byte*) mode_8bpppixelcell::gfxa#1 [phi:mode_8bpppixelcell::@4->mode_8bpppixelcell::@2#0] -- register_copy
// [247] phi (byte) mode_8bpppixelcell::ay#4 = (byte) mode_8bpppixelcell::ay#1 [phi:mode_8bpppixelcell::@4->mode_8bpppixelcell::@2#1] -- register_copy
jmp b2
// mode_8bpppixelcell::@2
b2:
// [248] phi from mode_8bpppixelcell::@2 to mode_8bpppixelcell::@3 [phi:mode_8bpppixelcell::@2->mode_8bpppixelcell::@3]
b3_from_b2:
// [248] phi (byte*) mode_8bpppixelcell::gfxa#2 = (byte*) mode_8bpppixelcell::gfxa#3 [phi:mode_8bpppixelcell::@2->mode_8bpppixelcell::@3#0] -- register_copy
// [248] phi (byte) mode_8bpppixelcell::ax#2 = (byte) 0 [phi:mode_8bpppixelcell::@2->mode_8bpppixelcell::@3#1] -- vbuz1=vbuc1
lda #0
sta.z ax
jmp b3
// [248] phi from mode_8bpppixelcell::@3 to mode_8bpppixelcell::@3 [phi:mode_8bpppixelcell::@3->mode_8bpppixelcell::@3]
b3_from_b3:
// [248] phi (byte*) mode_8bpppixelcell::gfxa#2 = (byte*) mode_8bpppixelcell::gfxa#1 [phi:mode_8bpppixelcell::@3->mode_8bpppixelcell::@3#0] -- register_copy
// [248] phi (byte) mode_8bpppixelcell::ax#2 = (byte) mode_8bpppixelcell::ax#1 [phi:mode_8bpppixelcell::@3->mode_8bpppixelcell::@3#1] -- register_copy
jmp b3
// mode_8bpppixelcell::@3
b3:
// [249] (byte~) mode_8bpppixelcell::$14 ← (byte) mode_8bpppixelcell::ay#4 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z ay
sta.z _14
// [250] (byte~) mode_8bpppixelcell::$15 ← (byte~) mode_8bpppixelcell::$14 << (byte) 4 -- vbuz1=vbuz2_rol_4
lda.z _14
asl
asl
asl
asl
sta.z _15
// [251] (byte~) mode_8bpppixelcell::$16 ← (byte) mode_8bpppixelcell::ax#2 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z ax
sta.z _16
// [252] (byte~) mode_8bpppixelcell::$17 ← (byte~) mode_8bpppixelcell::$15 | (byte~) mode_8bpppixelcell::$16 -- vbuz1=vbuz2_bor_vbuz3
lda.z _15
ora.z _16
sta.z _17
// [253] *((byte*) mode_8bpppixelcell::gfxa#2) ← (byte~) mode_8bpppixelcell::$17 -- _deref_pbuz1=vbuz2
lda.z _17
ldy #0
sta (gfxa),y
// [254] (byte*) mode_8bpppixelcell::gfxa#1 ← ++ (byte*) mode_8bpppixelcell::gfxa#2 -- pbuz1=_inc_pbuz1
inc.z gfxa
bne !+
inc.z gfxa+1
!:
// [255] (byte) mode_8bpppixelcell::ax#1 ← ++ (byte) mode_8bpppixelcell::ax#2 -- vbuz1=_inc_vbuz1
inc.z ax
// [256] if((byte) mode_8bpppixelcell::ax#1!=(byte) $28) goto mode_8bpppixelcell::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$28
cmp.z ax
bne b3_from_b3
jmp b4
// mode_8bpppixelcell::@4
b4:
// [257] (byte) mode_8bpppixelcell::ay#1 ← ++ (byte) mode_8bpppixelcell::ay#4 -- vbuz1=_inc_vbuz1
inc.z ay
// [258] if((byte) mode_8bpppixelcell::ay#1!=(byte) $19) goto mode_8bpppixelcell::@2 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z ay
bne b2_from_b4
jmp b5
// mode_8bpppixelcell::@5
b5:
// [259] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_CHARROM#0 -- _deref_pbuc1=vbuc2
// 8bpp cells for Plane B (charset) - ROM charset with 256 colors
lda #PROCPORT_RAM_CHARROM
sta PROCPORT
// [260] phi from mode_8bpppixelcell::@5 to mode_8bpppixelcell::@6 [phi:mode_8bpppixelcell::@5->mode_8bpppixelcell::@6]
b6_from_b5:
// [260] phi (byte) mode_8bpppixelcell::ch#8 = (byte) 0 [phi:mode_8bpppixelcell::@5->mode_8bpppixelcell::@6#0] -- vbuz1=vbuc1
lda #0
sta.z ch
// [260] phi (byte) mode_8bpppixelcell::col#7 = (byte) 0 [phi:mode_8bpppixelcell::@5->mode_8bpppixelcell::@6#1] -- vbuz1=vbuc1
lda #0
sta.z col
// [260] phi (byte*) mode_8bpppixelcell::gfxb#7 = (const byte*) mode_8bpppixelcell::PLANEB#0 [phi:mode_8bpppixelcell::@5->mode_8bpppixelcell::@6#2] -- pbuz1=pbuc1
lda #<PLANEB
sta.z gfxb
lda #>PLANEB
sta.z gfxb+1
// [260] phi (byte*) mode_8bpppixelcell::chargen#4 = (const byte*) mode_8bpppixelcell::CHARGEN#0 [phi:mode_8bpppixelcell::@5->mode_8bpppixelcell::@6#3] -- pbuz1=pbuc1
lda #<CHARGEN
sta.z chargen
lda #>CHARGEN
sta.z chargen+1
jmp b6
// [260] phi from mode_8bpppixelcell::@12 to mode_8bpppixelcell::@6 [phi:mode_8bpppixelcell::@12->mode_8bpppixelcell::@6]
b6_from_b12:
// [260] phi (byte) mode_8bpppixelcell::ch#8 = (byte) mode_8bpppixelcell::ch#1 [phi:mode_8bpppixelcell::@12->mode_8bpppixelcell::@6#0] -- register_copy
// [260] phi (byte) mode_8bpppixelcell::col#7 = (byte) mode_8bpppixelcell::col#1 [phi:mode_8bpppixelcell::@12->mode_8bpppixelcell::@6#1] -- register_copy
// [260] phi (byte*) mode_8bpppixelcell::gfxb#7 = (byte*) mode_8bpppixelcell::gfxb#1 [phi:mode_8bpppixelcell::@12->mode_8bpppixelcell::@6#2] -- register_copy
// [260] phi (byte*) mode_8bpppixelcell::chargen#4 = (byte*) mode_8bpppixelcell::chargen#1 [phi:mode_8bpppixelcell::@12->mode_8bpppixelcell::@6#3] -- register_copy
jmp b6
// mode_8bpppixelcell::@6
b6:
// [261] phi from mode_8bpppixelcell::@6 to mode_8bpppixelcell::@7 [phi:mode_8bpppixelcell::@6->mode_8bpppixelcell::@7]
b7_from_b6:
// [261] phi (byte) mode_8bpppixelcell::cr#6 = (byte) 0 [phi:mode_8bpppixelcell::@6->mode_8bpppixelcell::@7#0] -- vbuz1=vbuc1
lda #0
sta.z cr
// [261] phi (byte) mode_8bpppixelcell::col#5 = (byte) mode_8bpppixelcell::col#7 [phi:mode_8bpppixelcell::@6->mode_8bpppixelcell::@7#1] -- register_copy
// [261] phi (byte*) mode_8bpppixelcell::gfxb#5 = (byte*) mode_8bpppixelcell::gfxb#7 [phi:mode_8bpppixelcell::@6->mode_8bpppixelcell::@7#2] -- register_copy
// [261] phi (byte*) mode_8bpppixelcell::chargen#2 = (byte*) mode_8bpppixelcell::chargen#4 [phi:mode_8bpppixelcell::@6->mode_8bpppixelcell::@7#3] -- register_copy
jmp b7
// [261] phi from mode_8bpppixelcell::@11 to mode_8bpppixelcell::@7 [phi:mode_8bpppixelcell::@11->mode_8bpppixelcell::@7]
b7_from_b11:
// [261] phi (byte) mode_8bpppixelcell::cr#6 = (byte) mode_8bpppixelcell::cr#1 [phi:mode_8bpppixelcell::@11->mode_8bpppixelcell::@7#0] -- register_copy
// [261] phi (byte) mode_8bpppixelcell::col#5 = (byte) mode_8bpppixelcell::col#1 [phi:mode_8bpppixelcell::@11->mode_8bpppixelcell::@7#1] -- register_copy
// [261] phi (byte*) mode_8bpppixelcell::gfxb#5 = (byte*) mode_8bpppixelcell::gfxb#1 [phi:mode_8bpppixelcell::@11->mode_8bpppixelcell::@7#2] -- register_copy
// [261] phi (byte*) mode_8bpppixelcell::chargen#2 = (byte*) mode_8bpppixelcell::chargen#1 [phi:mode_8bpppixelcell::@11->mode_8bpppixelcell::@7#3] -- register_copy
jmp b7
// mode_8bpppixelcell::@7
b7:
// [262] (byte) mode_8bpppixelcell::bits#0 ← *((byte*) mode_8bpppixelcell::chargen#2) -- vbuz1=_deref_pbuz2
ldy #0
lda (chargen),y
sta.z bits
// [263] (byte*) mode_8bpppixelcell::chargen#1 ← ++ (byte*) mode_8bpppixelcell::chargen#2 -- pbuz1=_inc_pbuz1
inc.z chargen
bne !+
inc.z chargen+1
!:
// [264] phi from mode_8bpppixelcell::@7 to mode_8bpppixelcell::@8 [phi:mode_8bpppixelcell::@7->mode_8bpppixelcell::@8]
b8_from_b7:
// [264] phi (byte) mode_8bpppixelcell::cp#2 = (byte) 0 [phi:mode_8bpppixelcell::@7->mode_8bpppixelcell::@8#0] -- vbuz1=vbuc1
lda #0
sta.z cp
// [264] phi (byte) mode_8bpppixelcell::col#2 = (byte) mode_8bpppixelcell::col#5 [phi:mode_8bpppixelcell::@7->mode_8bpppixelcell::@8#1] -- register_copy
// [264] phi (byte*) mode_8bpppixelcell::gfxb#2 = (byte*) mode_8bpppixelcell::gfxb#5 [phi:mode_8bpppixelcell::@7->mode_8bpppixelcell::@8#2] -- register_copy
// [264] phi (byte) mode_8bpppixelcell::bits#2 = (byte) mode_8bpppixelcell::bits#0 [phi:mode_8bpppixelcell::@7->mode_8bpppixelcell::@8#3] -- register_copy
jmp b8
// [264] phi from mode_8bpppixelcell::@9 to mode_8bpppixelcell::@8 [phi:mode_8bpppixelcell::@9->mode_8bpppixelcell::@8]
b8_from_b9:
// [264] phi (byte) mode_8bpppixelcell::cp#2 = (byte) mode_8bpppixelcell::cp#1 [phi:mode_8bpppixelcell::@9->mode_8bpppixelcell::@8#0] -- register_copy
// [264] phi (byte) mode_8bpppixelcell::col#2 = (byte) mode_8bpppixelcell::col#1 [phi:mode_8bpppixelcell::@9->mode_8bpppixelcell::@8#1] -- register_copy
// [264] phi (byte*) mode_8bpppixelcell::gfxb#2 = (byte*) mode_8bpppixelcell::gfxb#1 [phi:mode_8bpppixelcell::@9->mode_8bpppixelcell::@8#2] -- register_copy
// [264] phi (byte) mode_8bpppixelcell::bits#2 = (byte) mode_8bpppixelcell::bits#1 [phi:mode_8bpppixelcell::@9->mode_8bpppixelcell::@8#3] -- register_copy
jmp b8
// mode_8bpppixelcell::@8
b8:
// [265] (byte~) mode_8bpppixelcell::$20 ← (byte) mode_8bpppixelcell::bits#2 & (byte) $80 -- vbuz1=vbuz2_band_vbuc1
lda #$80
and.z bits
sta.z _20
// [266] if((byte~) mode_8bpppixelcell::$20==(byte) 0) goto mode_8bpppixelcell::@9 -- vbuz1_eq_0_then_la1
lda.z _20
cmp #0
beq b9_from_b8
jmp b10
// mode_8bpppixelcell::@10
b10:
// [267] (byte~) mode_8bpppixelcell::c#3 ← (byte) mode_8bpppixelcell::col#2 -- vbuz1=vbuz2
lda.z col
sta.z c
// [268] phi from mode_8bpppixelcell::@10 to mode_8bpppixelcell::@9 [phi:mode_8bpppixelcell::@10->mode_8bpppixelcell::@9]
b9_from_b10:
// [268] phi (byte) mode_8bpppixelcell::c#2 = (byte~) mode_8bpppixelcell::c#3 [phi:mode_8bpppixelcell::@10->mode_8bpppixelcell::@9#0] -- register_copy
jmp b9
// [268] phi from mode_8bpppixelcell::@8 to mode_8bpppixelcell::@9 [phi:mode_8bpppixelcell::@8->mode_8bpppixelcell::@9]
b9_from_b8:
// [268] phi (byte) mode_8bpppixelcell::c#2 = (byte) 0 [phi:mode_8bpppixelcell::@8->mode_8bpppixelcell::@9#0] -- vbuz1=vbuc1
lda #0
sta.z c
jmp b9
// mode_8bpppixelcell::@9
b9:
// [269] *((byte*) mode_8bpppixelcell::gfxb#2) ← (byte) mode_8bpppixelcell::c#2 -- _deref_pbuz1=vbuz2
lda.z c
ldy #0
sta (gfxb),y
// [270] (byte*) mode_8bpppixelcell::gfxb#1 ← ++ (byte*) mode_8bpppixelcell::gfxb#2 -- pbuz1=_inc_pbuz1
inc.z gfxb
bne !+
inc.z gfxb+1
!:
// [271] (byte) mode_8bpppixelcell::bits#1 ← (byte) mode_8bpppixelcell::bits#2 << (byte) 1 -- vbuz1=vbuz1_rol_1
asl.z bits
// [272] (byte) mode_8bpppixelcell::col#1 ← ++ (byte) mode_8bpppixelcell::col#2 -- vbuz1=_inc_vbuz1
inc.z col
// [273] (byte) mode_8bpppixelcell::cp#1 ← ++ (byte) mode_8bpppixelcell::cp#2 -- vbuz1=_inc_vbuz1
inc.z cp
// [274] if((byte) mode_8bpppixelcell::cp#1!=(byte) 8) goto mode_8bpppixelcell::@8 -- vbuz1_neq_vbuc1_then_la1
lda #8
cmp.z cp
bne b8_from_b9
jmp b11
// mode_8bpppixelcell::@11
b11:
// [275] (byte) mode_8bpppixelcell::cr#1 ← ++ (byte) mode_8bpppixelcell::cr#6 -- vbuz1=_inc_vbuz1
inc.z cr
// [276] if((byte) mode_8bpppixelcell::cr#1!=(byte) 8) goto mode_8bpppixelcell::@7 -- vbuz1_neq_vbuc1_then_la1
lda #8
cmp.z cr
bne b7_from_b11
jmp b12
// mode_8bpppixelcell::@12
b12:
// [277] (byte) mode_8bpppixelcell::ch#1 ← ++ (byte) mode_8bpppixelcell::ch#8 -- vbuz1=_inc_vbuz1
inc.z ch
// [278] if((byte) mode_8bpppixelcell::ch#1!=(byte) 0) goto mode_8bpppixelcell::@6 -- vbuz1_neq_0_then_la1
lda.z ch
cmp #0
bne b6_from_b12
jmp b13
// mode_8bpppixelcell::@13
b13:
// [279] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2
lda #PROCPORT_RAM_IO
sta PROCPORT
// [280] call mode_ctrl
// [155] phi from mode_8bpppixelcell::@13 to mode_ctrl [phi:mode_8bpppixelcell::@13->mode_ctrl]
mode_ctrl_from_b13:
// [155] phi (byte) dtv_control#144 = (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0 [phi:mode_8bpppixelcell::@13->mode_ctrl#0] -- vbuz1=vbuc1
lda #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY
sta.z dtv_control
jsr mode_ctrl
jmp breturn
// mode_8bpppixelcell::@return
breturn:
// [281] return
rts
}
// mode_sixsfred
// Sixs Fred Mode - 8bpp Packed Bitmap - Generated from the two DTV linear graphics plane counters
// Two Plane MultiColor Bitmap - 8bpp Packed Bitmap (CHUNK/COLDIS = 0, ECM/BMM/MCM/HICOL/LINEAR = 1)
// Resolution: 160x200
// Linear Adressing
// GfxData/PlaneA Pixel Shifter (2), CharData/PlaneB Pixel Shifter (2):
// - 8bpp color (ColorData[3:0],CharData/PlaneB[1:0], GfxData/PlaneA[1:0])
mode_sixsfred: {
.label PLANEA = $4000
.label PLANEB = $6000
.label COLORS = $8000
.label _17 = $d8
.label _18 = $d9
.label _21 = $da
.label i = $1f
.label col = $22
.label cx = $21
.label cy = $20
.label row = $db
.label gfxa = $25
.label ax = $27
.label ay = $24
.label gfxb = $29
.label bx = $2b
.label by = $28
// [282] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR|DTV_LINEAR
sta DTV_CONTROL
// [283] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Mode
lda #VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [284] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_MCM|VIC_CSEL
sta VIC_CONTROL2
// [285] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane A Counter
lda #0
sta DTV_PLANEA_START_LO
// [286] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_sixsfred::PLANEA#0 -- _deref_pbuc1=vbuc2
lda #>PLANEA
sta DTV_PLANEA_START_MI
// [287] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_START_HI
// [288] *((const byte*) DTV_PLANEA_STEP#0) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEA_STEP
// [289] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_LO
// [290] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_HI
// [291] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
lda #0
sta DTV_PLANEB_START_LO
// [292] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_sixsfred::PLANEB#0 -- _deref_pbuc1=vbuc2
lda #>PLANEB
sta DTV_PLANEB_START_MI
// [293] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_HI
// [294] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEB_STEP
// [295] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// [296] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_HI
// [297] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_sixsfred::COLORS#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// [298] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [299] phi from mode_sixsfred to mode_sixsfred::@1 [phi:mode_sixsfred->mode_sixsfred::@1]
b1_from_mode_sixsfred:
// [299] phi (byte) mode_sixsfred::i#2 = (byte) 0 [phi:mode_sixsfred->mode_sixsfred::@1#0] -- vbuz1=vbuc1
lda #0
sta.z i
jmp b1
// DTV Palette - Grey Tones
// [299] phi from mode_sixsfred::@1 to mode_sixsfred::@1 [phi:mode_sixsfred::@1->mode_sixsfred::@1]
b1_from_b1:
// [299] phi (byte) mode_sixsfred::i#2 = (byte) mode_sixsfred::i#1 [phi:mode_sixsfred::@1->mode_sixsfred::@1#0] -- register_copy
jmp b1
// mode_sixsfred::@1
b1:
// [300] *((const byte*) DTV_PALETTE#0 + (byte) mode_sixsfred::i#2) ← (byte) mode_sixsfred::i#2 -- pbuc1_derefidx_vbuz1=vbuz1
ldy.z i
tya
sta DTV_PALETTE,y
// [301] (byte) mode_sixsfred::i#1 ← ++ (byte) mode_sixsfred::i#2 -- vbuz1=_inc_vbuz1
inc.z i
// [302] if((byte) mode_sixsfred::i#1!=(byte) $10) goto mode_sixsfred::@1 -- vbuz1_neq_vbuc1_then_la1
lda #$10
cmp.z i
bne b1_from_b1
jmp b2
// mode_sixsfred::@2
b2:
// [303] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDERCOL
// [304] phi from mode_sixsfred::@2 to mode_sixsfred::@3 [phi:mode_sixsfred::@2->mode_sixsfred::@3]
b3_from_b2:
// [304] phi (byte*) mode_sixsfred::col#3 = (const byte*) mode_sixsfred::COLORS#0 [phi:mode_sixsfred::@2->mode_sixsfred::@3#0] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [304] phi (byte) mode_sixsfred::cy#4 = (byte) 0 [phi:mode_sixsfred::@2->mode_sixsfred::@3#1] -- vbuz1=vbuc1
lda #0
sta.z cy
jmp b3
// [304] phi from mode_sixsfred::@5 to mode_sixsfred::@3 [phi:mode_sixsfred::@5->mode_sixsfred::@3]
b3_from_b5:
// [304] phi (byte*) mode_sixsfred::col#3 = (byte*) mode_sixsfred::col#1 [phi:mode_sixsfred::@5->mode_sixsfred::@3#0] -- register_copy
// [304] phi (byte) mode_sixsfred::cy#4 = (byte) mode_sixsfred::cy#1 [phi:mode_sixsfred::@5->mode_sixsfred::@3#1] -- register_copy
jmp b3
// mode_sixsfred::@3
b3:
// [305] phi from mode_sixsfred::@3 to mode_sixsfred::@4 [phi:mode_sixsfred::@3->mode_sixsfred::@4]
b4_from_b3:
// [305] phi (byte*) mode_sixsfred::col#2 = (byte*) mode_sixsfred::col#3 [phi:mode_sixsfred::@3->mode_sixsfred::@4#0] -- register_copy
// [305] phi (byte) mode_sixsfred::cx#2 = (byte) 0 [phi:mode_sixsfred::@3->mode_sixsfred::@4#1] -- vbuz1=vbuc1
lda #0
sta.z cx
jmp b4
// [305] phi from mode_sixsfred::@4 to mode_sixsfred::@4 [phi:mode_sixsfred::@4->mode_sixsfred::@4]
b4_from_b4:
// [305] phi (byte*) mode_sixsfred::col#2 = (byte*) mode_sixsfred::col#1 [phi:mode_sixsfred::@4->mode_sixsfred::@4#0] -- register_copy
// [305] phi (byte) mode_sixsfred::cx#2 = (byte) mode_sixsfred::cx#1 [phi:mode_sixsfred::@4->mode_sixsfred::@4#1] -- register_copy
jmp b4
// mode_sixsfred::@4
b4:
// [306] (byte~) mode_sixsfred::$17 ← (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#4 -- vbuz1=vbuz2_plus_vbuz3
lda.z cx
clc
adc.z cy
sta.z _17
// [307] (byte~) mode_sixsfred::$18 ← (byte~) mode_sixsfred::$17 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z _17
sta.z _18
// [308] *((byte*) mode_sixsfred::col#2) ← (byte~) mode_sixsfred::$18 -- _deref_pbuz1=vbuz2
lda.z _18
ldy #0
sta (col),y
// [309] (byte*) mode_sixsfred::col#1 ← ++ (byte*) mode_sixsfred::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// [310] (byte) mode_sixsfred::cx#1 ← ++ (byte) mode_sixsfred::cx#2 -- vbuz1=_inc_vbuz1
inc.z cx
// [311] if((byte) mode_sixsfred::cx#1!=(byte) $28) goto mode_sixsfred::@4 -- vbuz1_neq_vbuc1_then_la1
lda #$28
cmp.z cx
bne b4_from_b4
jmp b5
// mode_sixsfred::@5
b5:
// [312] (byte) mode_sixsfred::cy#1 ← ++ (byte) mode_sixsfred::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [313] if((byte) mode_sixsfred::cy#1!=(byte) $19) goto mode_sixsfred::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3_from_b5
// [314] phi from mode_sixsfred::@5 to mode_sixsfred::@6 [phi:mode_sixsfred::@5->mode_sixsfred::@6]
b6_from_b5:
// [314] phi (byte*) mode_sixsfred::gfxa#3 = (const byte*) mode_sixsfred::PLANEA#0 [phi:mode_sixsfred::@5->mode_sixsfred::@6#0] -- pbuz1=pbuc1
lda #<PLANEA
sta.z gfxa
lda #>PLANEA
sta.z gfxa+1
// [314] phi (byte) mode_sixsfred::ay#4 = (byte) 0 [phi:mode_sixsfred::@5->mode_sixsfred::@6#1] -- vbuz1=vbuc1
lda #0
sta.z ay
jmp b6
// [314] phi from mode_sixsfred::@8 to mode_sixsfred::@6 [phi:mode_sixsfred::@8->mode_sixsfred::@6]
b6_from_b8:
// [314] phi (byte*) mode_sixsfred::gfxa#3 = (byte*) mode_sixsfred::gfxa#1 [phi:mode_sixsfred::@8->mode_sixsfred::@6#0] -- register_copy
// [314] phi (byte) mode_sixsfred::ay#4 = (byte) mode_sixsfred::ay#1 [phi:mode_sixsfred::@8->mode_sixsfred::@6#1] -- register_copy
jmp b6
// mode_sixsfred::@6
b6:
// [315] phi from mode_sixsfred::@6 to mode_sixsfred::@7 [phi:mode_sixsfred::@6->mode_sixsfred::@7]
b7_from_b6:
// [315] phi (byte) mode_sixsfred::ax#2 = (byte) 0 [phi:mode_sixsfred::@6->mode_sixsfred::@7#0] -- vbuz1=vbuc1
lda #0
sta.z ax
// [315] phi (byte*) mode_sixsfred::gfxa#2 = (byte*) mode_sixsfred::gfxa#3 [phi:mode_sixsfred::@6->mode_sixsfred::@7#1] -- register_copy
jmp b7
// [315] phi from mode_sixsfred::@7 to mode_sixsfred::@7 [phi:mode_sixsfred::@7->mode_sixsfred::@7]
b7_from_b7:
// [315] phi (byte) mode_sixsfred::ax#2 = (byte) mode_sixsfred::ax#1 [phi:mode_sixsfred::@7->mode_sixsfred::@7#0] -- register_copy
// [315] phi (byte*) mode_sixsfred::gfxa#2 = (byte*) mode_sixsfred::gfxa#1 [phi:mode_sixsfred::@7->mode_sixsfred::@7#1] -- register_copy
jmp b7
// mode_sixsfred::@7
b7:
// [316] (byte~) mode_sixsfred::$21 ← (byte) mode_sixsfred::ay#4 >> (byte) 1 -- vbuz1=vbuz2_ror_1
lda.z ay
lsr
sta.z _21
// [317] (byte) mode_sixsfred::row#0 ← (byte~) mode_sixsfred::$21 & (byte) 3 -- vbuz1=vbuz2_band_vbuc1
lda #3
and.z _21
sta.z row
// [318] *((byte*) mode_sixsfred::gfxa#2) ← *((const byte[]) mode_sixsfred::row_bitmask#0 + (byte) mode_sixsfred::row#0) -- _deref_pbuz1=pbuc1_derefidx_vbuz2
ldy.z row
lda row_bitmask,y
ldy #0
sta (gfxa),y
// [319] (byte*) mode_sixsfred::gfxa#1 ← ++ (byte*) mode_sixsfred::gfxa#2 -- pbuz1=_inc_pbuz1
inc.z gfxa
bne !+
inc.z gfxa+1
!:
// [320] (byte) mode_sixsfred::ax#1 ← ++ (byte) mode_sixsfred::ax#2 -- vbuz1=_inc_vbuz1
inc.z ax
// [321] if((byte) mode_sixsfred::ax#1!=(byte) $28) goto mode_sixsfred::@7 -- vbuz1_neq_vbuc1_then_la1
lda #$28
cmp.z ax
bne b7_from_b7
jmp b8
// mode_sixsfred::@8
b8:
// [322] (byte) mode_sixsfred::ay#1 ← ++ (byte) mode_sixsfred::ay#4 -- vbuz1=_inc_vbuz1
inc.z ay
// [323] if((byte) mode_sixsfred::ay#1!=(byte) $c8) goto mode_sixsfred::@6 -- vbuz1_neq_vbuc1_then_la1
lda #$c8
cmp.z ay
bne b6_from_b8
// [324] phi from mode_sixsfred::@8 to mode_sixsfred::@9 [phi:mode_sixsfred::@8->mode_sixsfred::@9]
b9_from_b8:
// [324] phi (byte) mode_sixsfred::by#4 = (byte) 0 [phi:mode_sixsfred::@8->mode_sixsfred::@9#0] -- vbuz1=vbuc1
lda #0
sta.z by
// [324] phi (byte*) mode_sixsfred::gfxb#3 = (const byte*) mode_sixsfred::PLANEB#0 [phi:mode_sixsfred::@8->mode_sixsfred::@9#1] -- pbuz1=pbuc1
lda #<PLANEB
sta.z gfxb
lda #>PLANEB
sta.z gfxb+1
jmp b9
// [324] phi from mode_sixsfred::@11 to mode_sixsfred::@9 [phi:mode_sixsfred::@11->mode_sixsfred::@9]
b9_from_b11:
// [324] phi (byte) mode_sixsfred::by#4 = (byte) mode_sixsfred::by#1 [phi:mode_sixsfred::@11->mode_sixsfred::@9#0] -- register_copy
// [324] phi (byte*) mode_sixsfred::gfxb#3 = (byte*) mode_sixsfred::gfxb#1 [phi:mode_sixsfred::@11->mode_sixsfred::@9#1] -- register_copy
jmp b9
// mode_sixsfred::@9
b9:
// [325] phi from mode_sixsfred::@9 to mode_sixsfred::@10 [phi:mode_sixsfred::@9->mode_sixsfred::@10]
b10_from_b9:
// [325] phi (byte) mode_sixsfred::bx#2 = (byte) 0 [phi:mode_sixsfred::@9->mode_sixsfred::@10#0] -- vbuz1=vbuc1
lda #0
sta.z bx
// [325] phi (byte*) mode_sixsfred::gfxb#2 = (byte*) mode_sixsfred::gfxb#3 [phi:mode_sixsfred::@9->mode_sixsfred::@10#1] -- register_copy
jmp b10
// [325] phi from mode_sixsfred::@10 to mode_sixsfred::@10 [phi:mode_sixsfred::@10->mode_sixsfred::@10]
b10_from_b10:
// [325] phi (byte) mode_sixsfred::bx#2 = (byte) mode_sixsfred::bx#1 [phi:mode_sixsfred::@10->mode_sixsfred::@10#0] -- register_copy
// [325] phi (byte*) mode_sixsfred::gfxb#2 = (byte*) mode_sixsfred::gfxb#1 [phi:mode_sixsfred::@10->mode_sixsfred::@10#1] -- register_copy
jmp b10
// mode_sixsfred::@10
b10:
// [326] *((byte*) mode_sixsfred::gfxb#2) ← (byte) $1b -- _deref_pbuz1=vbuc1
lda #$1b
ldy #0
sta (gfxb),y
// [327] (byte*) mode_sixsfred::gfxb#1 ← ++ (byte*) mode_sixsfred::gfxb#2 -- pbuz1=_inc_pbuz1
inc.z gfxb
bne !+
inc.z gfxb+1
!:
// [328] (byte) mode_sixsfred::bx#1 ← ++ (byte) mode_sixsfred::bx#2 -- vbuz1=_inc_vbuz1
inc.z bx
// [329] if((byte) mode_sixsfred::bx#1!=(byte) $28) goto mode_sixsfred::@10 -- vbuz1_neq_vbuc1_then_la1
lda #$28
cmp.z bx
bne b10_from_b10
jmp b11
// mode_sixsfred::@11
b11:
// [330] (byte) mode_sixsfred::by#1 ← ++ (byte) mode_sixsfred::by#4 -- vbuz1=_inc_vbuz1
inc.z by
// [331] if((byte) mode_sixsfred::by#1!=(byte) $c8) goto mode_sixsfred::@9 -- vbuz1_neq_vbuc1_then_la1
lda #$c8
cmp.z by
bne b9_from_b11
// [332] phi from mode_sixsfred::@11 to mode_sixsfred::@12 [phi:mode_sixsfred::@11->mode_sixsfred::@12]
b12_from_b11:
jmp b12
// mode_sixsfred::@12
b12:
// [333] call mode_ctrl
// [155] phi from mode_sixsfred::@12 to mode_ctrl [phi:mode_sixsfred::@12->mode_ctrl]
mode_ctrl_from_b12:
// [155] phi (byte) dtv_control#144 = (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 [phi:mode_sixsfred::@12->mode_ctrl#0] -- vbuz1=vbuc1
lda #DTV_HIGHCOLOR|DTV_LINEAR
sta.z dtv_control
jsr mode_ctrl
jmp breturn
// mode_sixsfred::@return
breturn:
// [334] return
rts
row_bitmask: .byte 0, $55, $aa, $ff
}
// mode_twoplanebitmap
// Two Plane Bitmap - generated from the two DTV linear graphics plane counters
// Two Plane Bitmap Mode (CHUNK/COLDIS/MCM = 0, ECM/BMM/HICOL/LINEAR = 1)
// Resolution: 320x200
// Linear Adressing
// GfxData/PlaneA Pixel Shifter (1), CharData/PlaneB Pixel Shifter (1):
// - Plane A = 0 Plane B = 0: 8bpp BgColor0[7:0]
// - Plane A = 0 Plane B = 1: 8bpp "0000" & ColorData[7:4]
// - Plane A = 1 Plane B = 0: 8bpp "0000" & ColorData[3:0]
// - Plane A = 1 Plane B = 1: 8bpp BgColor1[7:0]
mode_twoplanebitmap: {
.label PLANEA = $4000
.label PLANEB = $6000
.label COLORS = $8000
.label _16 = $dc
.label _17 = $dd
.label _18 = $de
.label _19 = $df
.label _22 = $e0
.label i = $2c
.label col = $2f
.label cx = $2e
.label cy = $2d
.label gfxa = $32
.label ax = $34
.label ay = $31
.label gfxb = $36
.label bx = $38
.label by = $35
// [335] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR|DTV_LINEAR
sta DTV_CONTROL
// [336] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Mode
lda #VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [337] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [338] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane A Counter
lda #0
sta DTV_PLANEA_START_LO
// [339] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_twoplanebitmap::PLANEA#0 -- _deref_pbuc1=vbuc2
lda #>PLANEA
sta DTV_PLANEA_START_MI
// [340] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_START_HI
// [341] *((const byte*) DTV_PLANEA_STEP#0) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEA_STEP
// [342] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_LO
// [343] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_HI
// [344] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
lda #0
sta DTV_PLANEB_START_LO
// [345] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_twoplanebitmap::PLANEB#0 -- _deref_pbuc1=vbuc2
lda #>PLANEB
sta DTV_PLANEB_START_MI
// [346] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_HI
// [347] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEB_STEP
// [348] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// [349] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_HI
// [350] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_twoplanebitmap::COLORS#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// [351] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [352] phi from mode_twoplanebitmap to mode_twoplanebitmap::@1 [phi:mode_twoplanebitmap->mode_twoplanebitmap::@1]
b1_from_mode_twoplanebitmap:
// [352] phi (byte) mode_twoplanebitmap::i#2 = (byte) 0 [phi:mode_twoplanebitmap->mode_twoplanebitmap::@1#0] -- vbuz1=vbuc1
lda #0
sta.z i
jmp b1
// DTV Palette - Grey Tones
// [352] phi from mode_twoplanebitmap::@1 to mode_twoplanebitmap::@1 [phi:mode_twoplanebitmap::@1->mode_twoplanebitmap::@1]
b1_from_b1:
// [352] phi (byte) mode_twoplanebitmap::i#2 = (byte) mode_twoplanebitmap::i#1 [phi:mode_twoplanebitmap::@1->mode_twoplanebitmap::@1#0] -- register_copy
jmp b1
// mode_twoplanebitmap::@1
b1:
// [353] *((const byte*) DTV_PALETTE#0 + (byte) mode_twoplanebitmap::i#2) ← (byte) mode_twoplanebitmap::i#2 -- pbuc1_derefidx_vbuz1=vbuz1
ldy.z i
tya
sta DTV_PALETTE,y
// [354] (byte) mode_twoplanebitmap::i#1 ← ++ (byte) mode_twoplanebitmap::i#2 -- vbuz1=_inc_vbuz1
inc.z i
// [355] if((byte) mode_twoplanebitmap::i#1!=(byte) $10) goto mode_twoplanebitmap::@1 -- vbuz1_neq_vbuc1_then_la1
lda #$10
cmp.z i
bne b1_from_b1
jmp b2
// mode_twoplanebitmap::@2
b2:
// [356] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDERCOL
// [357] *((const byte*) BGCOL1#0) ← (byte) $70 -- _deref_pbuc1=vbuc2
lda #$70
sta BGCOL1
// [358] *((const byte*) BGCOL2#0) ← (byte) $d4 -- _deref_pbuc1=vbuc2
// Color for bits 00
lda #$d4
sta BGCOL2
// [359] phi from mode_twoplanebitmap::@2 to mode_twoplanebitmap::@3 [phi:mode_twoplanebitmap::@2->mode_twoplanebitmap::@3]
b3_from_b2:
// [359] phi (byte*) mode_twoplanebitmap::col#3 = (const byte*) mode_twoplanebitmap::COLORS#0 [phi:mode_twoplanebitmap::@2->mode_twoplanebitmap::@3#0] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [359] phi (byte) mode_twoplanebitmap::cy#4 = (byte) 0 [phi:mode_twoplanebitmap::@2->mode_twoplanebitmap::@3#1] -- vbuz1=vbuc1
lda #0
sta.z cy
jmp b3
// [359] phi from mode_twoplanebitmap::@5 to mode_twoplanebitmap::@3 [phi:mode_twoplanebitmap::@5->mode_twoplanebitmap::@3]
b3_from_b5:
// [359] phi (byte*) mode_twoplanebitmap::col#3 = (byte*) mode_twoplanebitmap::col#1 [phi:mode_twoplanebitmap::@5->mode_twoplanebitmap::@3#0] -- register_copy
// [359] phi (byte) mode_twoplanebitmap::cy#4 = (byte) mode_twoplanebitmap::cy#1 [phi:mode_twoplanebitmap::@5->mode_twoplanebitmap::@3#1] -- register_copy
jmp b3
// mode_twoplanebitmap::@3
b3:
// [360] phi from mode_twoplanebitmap::@3 to mode_twoplanebitmap::@4 [phi:mode_twoplanebitmap::@3->mode_twoplanebitmap::@4]
b4_from_b3:
// [360] phi (byte*) mode_twoplanebitmap::col#2 = (byte*) mode_twoplanebitmap::col#3 [phi:mode_twoplanebitmap::@3->mode_twoplanebitmap::@4#0] -- register_copy
// [360] phi (byte) mode_twoplanebitmap::cx#2 = (byte) 0 [phi:mode_twoplanebitmap::@3->mode_twoplanebitmap::@4#1] -- vbuz1=vbuc1
lda #0
sta.z cx
jmp b4
// [360] phi from mode_twoplanebitmap::@4 to mode_twoplanebitmap::@4 [phi:mode_twoplanebitmap::@4->mode_twoplanebitmap::@4]
b4_from_b4:
// [360] phi (byte*) mode_twoplanebitmap::col#2 = (byte*) mode_twoplanebitmap::col#1 [phi:mode_twoplanebitmap::@4->mode_twoplanebitmap::@4#0] -- register_copy
// [360] phi (byte) mode_twoplanebitmap::cx#2 = (byte) mode_twoplanebitmap::cx#1 [phi:mode_twoplanebitmap::@4->mode_twoplanebitmap::@4#1] -- register_copy
jmp b4
// mode_twoplanebitmap::@4
b4:
// [361] (byte~) mode_twoplanebitmap::$16 ← (byte) mode_twoplanebitmap::cy#4 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cy
sta.z _16
// [362] (byte~) mode_twoplanebitmap::$17 ← (byte~) mode_twoplanebitmap::$16 << (byte) 4 -- vbuz1=vbuz2_rol_4
lda.z _16
asl
asl
asl
asl
sta.z _17
// [363] (byte~) mode_twoplanebitmap::$18 ← (byte) mode_twoplanebitmap::cx#2 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cx
sta.z _18
// [364] (byte~) mode_twoplanebitmap::$19 ← (byte~) mode_twoplanebitmap::$17 | (byte~) mode_twoplanebitmap::$18 -- vbuz1=vbuz2_bor_vbuz3
lda.z _17
ora.z _18
sta.z _19
// [365] *((byte*) mode_twoplanebitmap::col#2) ← (byte~) mode_twoplanebitmap::$19 -- _deref_pbuz1=vbuz2
lda.z _19
ldy #0
sta (col),y
// [366] (byte*) mode_twoplanebitmap::col#1 ← ++ (byte*) mode_twoplanebitmap::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// [367] (byte) mode_twoplanebitmap::cx#1 ← ++ (byte) mode_twoplanebitmap::cx#2 -- vbuz1=_inc_vbuz1
inc.z cx
// [368] if((byte) mode_twoplanebitmap::cx#1!=(byte) $28) goto mode_twoplanebitmap::@4 -- vbuz1_neq_vbuc1_then_la1
lda #$28
cmp.z cx
bne b4_from_b4
jmp b5
// mode_twoplanebitmap::@5
b5:
// [369] (byte) mode_twoplanebitmap::cy#1 ← ++ (byte) mode_twoplanebitmap::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [370] if((byte) mode_twoplanebitmap::cy#1!=(byte) $19) goto mode_twoplanebitmap::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3_from_b5
// [371] phi from mode_twoplanebitmap::@5 to mode_twoplanebitmap::@6 [phi:mode_twoplanebitmap::@5->mode_twoplanebitmap::@6]
b6_from_b5:
// [371] phi (byte*) mode_twoplanebitmap::gfxa#7 = (const byte*) mode_twoplanebitmap::PLANEA#0 [phi:mode_twoplanebitmap::@5->mode_twoplanebitmap::@6#0] -- pbuz1=pbuc1
lda #<PLANEA
sta.z gfxa
lda #>PLANEA
sta.z gfxa+1
// [371] phi (byte) mode_twoplanebitmap::ay#5 = (byte) 0 [phi:mode_twoplanebitmap::@5->mode_twoplanebitmap::@6#1] -- vbuz1=vbuc1
lda #0
sta.z ay
jmp b6
// [371] phi from mode_twoplanebitmap::@11 to mode_twoplanebitmap::@6 [phi:mode_twoplanebitmap::@11->mode_twoplanebitmap::@6]
b6_from_b11:
// [371] phi (byte*) mode_twoplanebitmap::gfxa#7 = (byte*) mode_twoplanebitmap::gfxa#6 [phi:mode_twoplanebitmap::@11->mode_twoplanebitmap::@6#0] -- register_copy
// [371] phi (byte) mode_twoplanebitmap::ay#5 = (byte) mode_twoplanebitmap::ay#1 [phi:mode_twoplanebitmap::@11->mode_twoplanebitmap::@6#1] -- register_copy
jmp b6
// mode_twoplanebitmap::@6
b6:
// [372] phi from mode_twoplanebitmap::@6 to mode_twoplanebitmap::@7 [phi:mode_twoplanebitmap::@6->mode_twoplanebitmap::@7]
b7_from_b6:
// [372] phi (byte) mode_twoplanebitmap::ax#2 = (byte) 0 [phi:mode_twoplanebitmap::@6->mode_twoplanebitmap::@7#0] -- vbuz1=vbuc1
lda #0
sta.z ax
// [372] phi (byte*) mode_twoplanebitmap::gfxa#3 = (byte*) mode_twoplanebitmap::gfxa#7 [phi:mode_twoplanebitmap::@6->mode_twoplanebitmap::@7#1] -- register_copy
jmp b7
// [372] phi from mode_twoplanebitmap::@9 to mode_twoplanebitmap::@7 [phi:mode_twoplanebitmap::@9->mode_twoplanebitmap::@7]
b7_from_b9:
// [372] phi (byte) mode_twoplanebitmap::ax#2 = (byte) mode_twoplanebitmap::ax#1 [phi:mode_twoplanebitmap::@9->mode_twoplanebitmap::@7#0] -- register_copy
// [372] phi (byte*) mode_twoplanebitmap::gfxa#3 = (byte*) mode_twoplanebitmap::gfxa#6 [phi:mode_twoplanebitmap::@9->mode_twoplanebitmap::@7#1] -- register_copy
jmp b7
// mode_twoplanebitmap::@7
b7:
// [373] (byte~) mode_twoplanebitmap::$22 ← (byte) mode_twoplanebitmap::ay#5 & (byte) 4 -- vbuz1=vbuz2_band_vbuc1
lda #4
and.z ay
sta.z _22
// [374] if((byte~) mode_twoplanebitmap::$22==(byte) 0) goto mode_twoplanebitmap::@8 -- vbuz1_eq_0_then_la1
lda.z _22
cmp #0
beq b8
jmp b10
// mode_twoplanebitmap::@10
b10:
// [375] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte) $ff -- _deref_pbuz1=vbuc1
lda #$ff
ldy #0
sta (gfxa),y
// [376] (byte*) mode_twoplanebitmap::gfxa#2 ← ++ (byte*) mode_twoplanebitmap::gfxa#3 -- pbuz1=_inc_pbuz1
inc.z gfxa
bne !+
inc.z gfxa+1
!:
// [377] phi from mode_twoplanebitmap::@10 mode_twoplanebitmap::@8 to mode_twoplanebitmap::@9 [phi:mode_twoplanebitmap::@10/mode_twoplanebitmap::@8->mode_twoplanebitmap::@9]
b9_from_b10:
b9_from_b8:
// [377] phi (byte*) mode_twoplanebitmap::gfxa#6 = (byte*) mode_twoplanebitmap::gfxa#2 [phi:mode_twoplanebitmap::@10/mode_twoplanebitmap::@8->mode_twoplanebitmap::@9#0] -- register_copy
jmp b9
// mode_twoplanebitmap::@9
b9:
// [378] (byte) mode_twoplanebitmap::ax#1 ← ++ (byte) mode_twoplanebitmap::ax#2 -- vbuz1=_inc_vbuz1
inc.z ax
// [379] if((byte) mode_twoplanebitmap::ax#1!=(byte) $28) goto mode_twoplanebitmap::@7 -- vbuz1_neq_vbuc1_then_la1
lda #$28
cmp.z ax
bne b7_from_b9
jmp b11
// mode_twoplanebitmap::@11
b11:
// [380] (byte) mode_twoplanebitmap::ay#1 ← ++ (byte) mode_twoplanebitmap::ay#5 -- vbuz1=_inc_vbuz1
inc.z ay
// [381] if((byte) mode_twoplanebitmap::ay#1!=(byte) $c8) goto mode_twoplanebitmap::@6 -- vbuz1_neq_vbuc1_then_la1
lda #$c8
cmp.z ay
bne b6_from_b11
// [382] phi from mode_twoplanebitmap::@11 to mode_twoplanebitmap::@12 [phi:mode_twoplanebitmap::@11->mode_twoplanebitmap::@12]
b12_from_b11:
// [382] phi (byte) mode_twoplanebitmap::by#4 = (byte) 0 [phi:mode_twoplanebitmap::@11->mode_twoplanebitmap::@12#0] -- vbuz1=vbuc1
lda #0
sta.z by
// [382] phi (byte*) mode_twoplanebitmap::gfxb#3 = (const byte*) mode_twoplanebitmap::PLANEB#0 [phi:mode_twoplanebitmap::@11->mode_twoplanebitmap::@12#1] -- pbuz1=pbuc1
lda #<PLANEB
sta.z gfxb
lda #>PLANEB
sta.z gfxb+1
jmp b12
// [382] phi from mode_twoplanebitmap::@14 to mode_twoplanebitmap::@12 [phi:mode_twoplanebitmap::@14->mode_twoplanebitmap::@12]
b12_from_b14:
// [382] phi (byte) mode_twoplanebitmap::by#4 = (byte) mode_twoplanebitmap::by#1 [phi:mode_twoplanebitmap::@14->mode_twoplanebitmap::@12#0] -- register_copy
// [382] phi (byte*) mode_twoplanebitmap::gfxb#3 = (byte*) mode_twoplanebitmap::gfxb#1 [phi:mode_twoplanebitmap::@14->mode_twoplanebitmap::@12#1] -- register_copy
jmp b12
// mode_twoplanebitmap::@12
b12:
// [383] phi from mode_twoplanebitmap::@12 to mode_twoplanebitmap::@13 [phi:mode_twoplanebitmap::@12->mode_twoplanebitmap::@13]
b13_from_b12:
// [383] phi (byte) mode_twoplanebitmap::bx#2 = (byte) 0 [phi:mode_twoplanebitmap::@12->mode_twoplanebitmap::@13#0] -- vbuz1=vbuc1
lda #0
sta.z bx
// [383] phi (byte*) mode_twoplanebitmap::gfxb#2 = (byte*) mode_twoplanebitmap::gfxb#3 [phi:mode_twoplanebitmap::@12->mode_twoplanebitmap::@13#1] -- register_copy
jmp b13
// [383] phi from mode_twoplanebitmap::@13 to mode_twoplanebitmap::@13 [phi:mode_twoplanebitmap::@13->mode_twoplanebitmap::@13]
b13_from_b13:
// [383] phi (byte) mode_twoplanebitmap::bx#2 = (byte) mode_twoplanebitmap::bx#1 [phi:mode_twoplanebitmap::@13->mode_twoplanebitmap::@13#0] -- register_copy
// [383] phi (byte*) mode_twoplanebitmap::gfxb#2 = (byte*) mode_twoplanebitmap::gfxb#1 [phi:mode_twoplanebitmap::@13->mode_twoplanebitmap::@13#1] -- register_copy
jmp b13
// mode_twoplanebitmap::@13
b13:
// [384] *((byte*) mode_twoplanebitmap::gfxb#2) ← (byte) $f -- _deref_pbuz1=vbuc1
lda #$f
ldy #0
sta (gfxb),y
// [385] (byte*) mode_twoplanebitmap::gfxb#1 ← ++ (byte*) mode_twoplanebitmap::gfxb#2 -- pbuz1=_inc_pbuz1
inc.z gfxb
bne !+
inc.z gfxb+1
!:
// [386] (byte) mode_twoplanebitmap::bx#1 ← ++ (byte) mode_twoplanebitmap::bx#2 -- vbuz1=_inc_vbuz1
inc.z bx
// [387] if((byte) mode_twoplanebitmap::bx#1!=(byte) $28) goto mode_twoplanebitmap::@13 -- vbuz1_neq_vbuc1_then_la1
lda #$28
cmp.z bx
bne b13_from_b13
jmp b14
// mode_twoplanebitmap::@14
b14:
// [388] (byte) mode_twoplanebitmap::by#1 ← ++ (byte) mode_twoplanebitmap::by#4 -- vbuz1=_inc_vbuz1
inc.z by
// [389] if((byte) mode_twoplanebitmap::by#1!=(byte) $c8) goto mode_twoplanebitmap::@12 -- vbuz1_neq_vbuc1_then_la1
lda #$c8
cmp.z by
bne b12_from_b14
// [390] phi from mode_twoplanebitmap::@14 to mode_twoplanebitmap::@15 [phi:mode_twoplanebitmap::@14->mode_twoplanebitmap::@15]
b15_from_b14:
jmp b15
// mode_twoplanebitmap::@15
b15:
// [391] call mode_ctrl
// [155] phi from mode_twoplanebitmap::@15 to mode_ctrl [phi:mode_twoplanebitmap::@15->mode_ctrl]
mode_ctrl_from_b15:
// [155] phi (byte) dtv_control#144 = (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 [phi:mode_twoplanebitmap::@15->mode_ctrl#0] -- vbuz1=vbuc1
lda #DTV_HIGHCOLOR|DTV_LINEAR
sta.z dtv_control
jsr mode_ctrl
jmp breturn
// mode_twoplanebitmap::@return
breturn:
// [392] return
rts
// mode_twoplanebitmap::@8
b8:
// [393] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte) 0 -- _deref_pbuz1=vbuc1
lda #0
ldy #0
sta (gfxa),y
// [394] (byte*) mode_twoplanebitmap::gfxa#1 ← ++ (byte*) mode_twoplanebitmap::gfxa#3 -- pbuz1=_inc_pbuz1
inc.z gfxa
bne !+
inc.z gfxa+1
!:
jmp b9_from_b8
}
// mode_sixsfred2
// Sixs Fred Mode 2 - 8bpp Packed Bitmap - Generated from the two DTV linear graphics plane counters
// Two Plane MultiColor Bitmap - 8bpp Packed Bitmap (CHUNK/COLDIS/HICOL = 0, ECM/BMM/MCM/LINEAR = 1)
// Resolution: 160x200
// Linear Adressing
// PlaneA Pixel Shifter (2), PlaneB Pixel Shifter (2):
// - 8bpp color (PlaneB[1:0],ColorData[5:4],PlaneA[1:0],ColorData[1:0])
mode_sixsfred2: {
.label PLANEA = $4000
.label PLANEB = $6000
.label COLORS = $8000
.label _15 = $e1
.label _16 = $e2
.label _17 = $e3
.label _18 = $e4
.label _21 = $e5
.label i = $39
.label col = $3c
.label cx = $3b
.label cy = $3a
.label row = $e6
.label gfxa = $3f
.label ax = $41
.label ay = $3e
.label gfxb = $43
.label bx = $45
.label by = $42
// [395] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2
lda #DTV_LINEAR
sta DTV_CONTROL
// [396] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Mode
lda #VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [397] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_MCM|VIC_CSEL
sta VIC_CONTROL2
// [398] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane A Counter
lda #0
sta DTV_PLANEA_START_LO
// [399] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_sixsfred2::PLANEA#0 -- _deref_pbuc1=vbuc2
lda #>PLANEA
sta DTV_PLANEA_START_MI
// [400] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_START_HI
// [401] *((const byte*) DTV_PLANEA_STEP#0) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEA_STEP
// [402] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_LO
// [403] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_HI
// [404] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
lda #0
sta DTV_PLANEB_START_LO
// [405] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_sixsfred2::PLANEB#0 -- _deref_pbuc1=vbuc2
lda #>PLANEB
sta DTV_PLANEB_START_MI
// [406] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_HI
// [407] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEB_STEP
// [408] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// [409] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_HI
// [410] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_sixsfred2::COLORS#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// [411] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [412] phi from mode_sixsfred2 to mode_sixsfred2::@1 [phi:mode_sixsfred2->mode_sixsfred2::@1]
b1_from_mode_sixsfred2:
// [412] phi (byte) mode_sixsfred2::i#2 = (byte) 0 [phi:mode_sixsfred2->mode_sixsfred2::@1#0] -- vbuz1=vbuc1
lda #0
sta.z i
jmp b1
// DTV Palette - Grey Tones
// [412] phi from mode_sixsfred2::@1 to mode_sixsfred2::@1 [phi:mode_sixsfred2::@1->mode_sixsfred2::@1]
b1_from_b1:
// [412] phi (byte) mode_sixsfred2::i#2 = (byte) mode_sixsfred2::i#1 [phi:mode_sixsfred2::@1->mode_sixsfred2::@1#0] -- register_copy
jmp b1
// mode_sixsfred2::@1
b1:
// [413] *((const byte*) DTV_PALETTE#0 + (byte) mode_sixsfred2::i#2) ← (byte) mode_sixsfred2::i#2 -- pbuc1_derefidx_vbuz1=vbuz1
ldy.z i
tya
sta DTV_PALETTE,y
// [414] (byte) mode_sixsfred2::i#1 ← ++ (byte) mode_sixsfred2::i#2 -- vbuz1=_inc_vbuz1
inc.z i
// [415] if((byte) mode_sixsfred2::i#1!=(byte) $10) goto mode_sixsfred2::@1 -- vbuz1_neq_vbuc1_then_la1
lda #$10
cmp.z i
bne b1_from_b1
jmp b2
// mode_sixsfred2::@2
b2:
// [416] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDERCOL
// [417] phi from mode_sixsfred2::@2 to mode_sixsfred2::@3 [phi:mode_sixsfred2::@2->mode_sixsfred2::@3]
b3_from_b2:
// [417] phi (byte*) mode_sixsfred2::col#3 = (const byte*) mode_sixsfred2::COLORS#0 [phi:mode_sixsfred2::@2->mode_sixsfred2::@3#0] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [417] phi (byte) mode_sixsfred2::cy#4 = (byte) 0 [phi:mode_sixsfred2::@2->mode_sixsfred2::@3#1] -- vbuz1=vbuc1
lda #0
sta.z cy
jmp b3
// [417] phi from mode_sixsfred2::@5 to mode_sixsfred2::@3 [phi:mode_sixsfred2::@5->mode_sixsfred2::@3]
b3_from_b5:
// [417] phi (byte*) mode_sixsfred2::col#3 = (byte*) mode_sixsfred2::col#1 [phi:mode_sixsfred2::@5->mode_sixsfred2::@3#0] -- register_copy
// [417] phi (byte) mode_sixsfred2::cy#4 = (byte) mode_sixsfred2::cy#1 [phi:mode_sixsfred2::@5->mode_sixsfred2::@3#1] -- register_copy
jmp b3
// mode_sixsfred2::@3
b3:
// [418] phi from mode_sixsfred2::@3 to mode_sixsfred2::@4 [phi:mode_sixsfred2::@3->mode_sixsfred2::@4]
b4_from_b3:
// [418] phi (byte*) mode_sixsfred2::col#2 = (byte*) mode_sixsfred2::col#3 [phi:mode_sixsfred2::@3->mode_sixsfred2::@4#0] -- register_copy
// [418] phi (byte) mode_sixsfred2::cx#2 = (byte) 0 [phi:mode_sixsfred2::@3->mode_sixsfred2::@4#1] -- vbuz1=vbuc1
lda #0
sta.z cx
jmp b4
// [418] phi from mode_sixsfred2::@4 to mode_sixsfred2::@4 [phi:mode_sixsfred2::@4->mode_sixsfred2::@4]
b4_from_b4:
// [418] phi (byte*) mode_sixsfred2::col#2 = (byte*) mode_sixsfred2::col#1 [phi:mode_sixsfred2::@4->mode_sixsfred2::@4#0] -- register_copy
// [418] phi (byte) mode_sixsfred2::cx#2 = (byte) mode_sixsfred2::cx#1 [phi:mode_sixsfred2::@4->mode_sixsfred2::@4#1] -- register_copy
jmp b4
// mode_sixsfred2::@4
b4:
// [419] (byte~) mode_sixsfred2::$15 ← (byte) mode_sixsfred2::cx#2 & (byte) 3 -- vbuz1=vbuz2_band_vbuc1
lda #3
and.z cx
sta.z _15
// [420] (byte~) mode_sixsfred2::$16 ← (byte~) mode_sixsfred2::$15 << (byte) 4 -- vbuz1=vbuz2_rol_4
lda.z _15
asl
asl
asl
asl
sta.z _16
// [421] (byte~) mode_sixsfred2::$17 ← (byte) mode_sixsfred2::cy#4 & (byte) 3 -- vbuz1=vbuz2_band_vbuc1
lda #3
and.z cy
sta.z _17
// [422] (byte~) mode_sixsfred2::$18 ← (byte~) mode_sixsfred2::$16 | (byte~) mode_sixsfred2::$17 -- vbuz1=vbuz2_bor_vbuz3
lda.z _16
ora.z _17
sta.z _18
// [423] *((byte*) mode_sixsfred2::col#2) ← (byte~) mode_sixsfred2::$18 -- _deref_pbuz1=vbuz2
lda.z _18
ldy #0
sta (col),y
// [424] (byte*) mode_sixsfred2::col#1 ← ++ (byte*) mode_sixsfred2::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// [425] (byte) mode_sixsfred2::cx#1 ← ++ (byte) mode_sixsfred2::cx#2 -- vbuz1=_inc_vbuz1
inc.z cx
// [426] if((byte) mode_sixsfred2::cx#1!=(byte) $28) goto mode_sixsfred2::@4 -- vbuz1_neq_vbuc1_then_la1
lda #$28
cmp.z cx
bne b4_from_b4
jmp b5
// mode_sixsfred2::@5
b5:
// [427] (byte) mode_sixsfred2::cy#1 ← ++ (byte) mode_sixsfred2::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [428] if((byte) mode_sixsfred2::cy#1!=(byte) $19) goto mode_sixsfred2::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3_from_b5
// [429] phi from mode_sixsfred2::@5 to mode_sixsfred2::@6 [phi:mode_sixsfred2::@5->mode_sixsfred2::@6]
b6_from_b5:
// [429] phi (byte*) mode_sixsfred2::gfxa#3 = (const byte*) mode_sixsfred2::PLANEA#0 [phi:mode_sixsfred2::@5->mode_sixsfred2::@6#0] -- pbuz1=pbuc1
lda #<PLANEA
sta.z gfxa
lda #>PLANEA
sta.z gfxa+1
// [429] phi (byte) mode_sixsfred2::ay#4 = (byte) 0 [phi:mode_sixsfred2::@5->mode_sixsfred2::@6#1] -- vbuz1=vbuc1
lda #0
sta.z ay
jmp b6
// [429] phi from mode_sixsfred2::@8 to mode_sixsfred2::@6 [phi:mode_sixsfred2::@8->mode_sixsfred2::@6]
b6_from_b8:
// [429] phi (byte*) mode_sixsfred2::gfxa#3 = (byte*) mode_sixsfred2::gfxa#1 [phi:mode_sixsfred2::@8->mode_sixsfred2::@6#0] -- register_copy
// [429] phi (byte) mode_sixsfred2::ay#4 = (byte) mode_sixsfred2::ay#1 [phi:mode_sixsfred2::@8->mode_sixsfred2::@6#1] -- register_copy
jmp b6
// mode_sixsfred2::@6
b6:
// [430] phi from mode_sixsfred2::@6 to mode_sixsfred2::@7 [phi:mode_sixsfred2::@6->mode_sixsfred2::@7]
b7_from_b6:
// [430] phi (byte) mode_sixsfred2::ax#2 = (byte) 0 [phi:mode_sixsfred2::@6->mode_sixsfred2::@7#0] -- vbuz1=vbuc1
lda #0
sta.z ax
// [430] phi (byte*) mode_sixsfred2::gfxa#2 = (byte*) mode_sixsfred2::gfxa#3 [phi:mode_sixsfred2::@6->mode_sixsfred2::@7#1] -- register_copy
jmp b7
// [430] phi from mode_sixsfred2::@7 to mode_sixsfred2::@7 [phi:mode_sixsfred2::@7->mode_sixsfred2::@7]
b7_from_b7:
// [430] phi (byte) mode_sixsfred2::ax#2 = (byte) mode_sixsfred2::ax#1 [phi:mode_sixsfred2::@7->mode_sixsfred2::@7#0] -- register_copy
// [430] phi (byte*) mode_sixsfred2::gfxa#2 = (byte*) mode_sixsfred2::gfxa#1 [phi:mode_sixsfred2::@7->mode_sixsfred2::@7#1] -- register_copy
jmp b7
// mode_sixsfred2::@7
b7:
// [431] (byte~) mode_sixsfred2::$21 ← (byte) mode_sixsfred2::ay#4 >> (byte) 1 -- vbuz1=vbuz2_ror_1
lda.z ay
lsr
sta.z _21
// [432] (byte) mode_sixsfred2::row#0 ← (byte~) mode_sixsfred2::$21 & (byte) 3 -- vbuz1=vbuz2_band_vbuc1
lda #3
and.z _21
sta.z row
// [433] *((byte*) mode_sixsfred2::gfxa#2) ← *((const byte[]) mode_sixsfred2::row_bitmask#0 + (byte) mode_sixsfred2::row#0) -- _deref_pbuz1=pbuc1_derefidx_vbuz2
ldy.z row
lda row_bitmask,y
ldy #0
sta (gfxa),y
// [434] (byte*) mode_sixsfred2::gfxa#1 ← ++ (byte*) mode_sixsfred2::gfxa#2 -- pbuz1=_inc_pbuz1
inc.z gfxa
bne !+
inc.z gfxa+1
!:
// [435] (byte) mode_sixsfred2::ax#1 ← ++ (byte) mode_sixsfred2::ax#2 -- vbuz1=_inc_vbuz1
inc.z ax
// [436] if((byte) mode_sixsfred2::ax#1!=(byte) $28) goto mode_sixsfred2::@7 -- vbuz1_neq_vbuc1_then_la1
lda #$28
cmp.z ax
bne b7_from_b7
jmp b8
// mode_sixsfred2::@8
b8:
// [437] (byte) mode_sixsfred2::ay#1 ← ++ (byte) mode_sixsfred2::ay#4 -- vbuz1=_inc_vbuz1
inc.z ay
// [438] if((byte) mode_sixsfred2::ay#1!=(byte) $c8) goto mode_sixsfred2::@6 -- vbuz1_neq_vbuc1_then_la1
lda #$c8
cmp.z ay
bne b6_from_b8
// [439] phi from mode_sixsfred2::@8 to mode_sixsfred2::@9 [phi:mode_sixsfred2::@8->mode_sixsfred2::@9]
b9_from_b8:
// [439] phi (byte) mode_sixsfred2::by#4 = (byte) 0 [phi:mode_sixsfred2::@8->mode_sixsfred2::@9#0] -- vbuz1=vbuc1
lda #0
sta.z by
// [439] phi (byte*) mode_sixsfred2::gfxb#3 = (const byte*) mode_sixsfred2::PLANEB#0 [phi:mode_sixsfred2::@8->mode_sixsfred2::@9#1] -- pbuz1=pbuc1
lda #<PLANEB
sta.z gfxb
lda #>PLANEB
sta.z gfxb+1
jmp b9
// [439] phi from mode_sixsfred2::@11 to mode_sixsfred2::@9 [phi:mode_sixsfred2::@11->mode_sixsfred2::@9]
b9_from_b11:
// [439] phi (byte) mode_sixsfred2::by#4 = (byte) mode_sixsfred2::by#1 [phi:mode_sixsfred2::@11->mode_sixsfred2::@9#0] -- register_copy
// [439] phi (byte*) mode_sixsfred2::gfxb#3 = (byte*) mode_sixsfred2::gfxb#1 [phi:mode_sixsfred2::@11->mode_sixsfred2::@9#1] -- register_copy
jmp b9
// mode_sixsfred2::@9
b9:
// [440] phi from mode_sixsfred2::@9 to mode_sixsfred2::@10 [phi:mode_sixsfred2::@9->mode_sixsfred2::@10]
b10_from_b9:
// [440] phi (byte) mode_sixsfred2::bx#2 = (byte) 0 [phi:mode_sixsfred2::@9->mode_sixsfred2::@10#0] -- vbuz1=vbuc1
lda #0
sta.z bx
// [440] phi (byte*) mode_sixsfred2::gfxb#2 = (byte*) mode_sixsfred2::gfxb#3 [phi:mode_sixsfred2::@9->mode_sixsfred2::@10#1] -- register_copy
jmp b10
// [440] phi from mode_sixsfred2::@10 to mode_sixsfred2::@10 [phi:mode_sixsfred2::@10->mode_sixsfred2::@10]
b10_from_b10:
// [440] phi (byte) mode_sixsfred2::bx#2 = (byte) mode_sixsfred2::bx#1 [phi:mode_sixsfred2::@10->mode_sixsfred2::@10#0] -- register_copy
// [440] phi (byte*) mode_sixsfred2::gfxb#2 = (byte*) mode_sixsfred2::gfxb#1 [phi:mode_sixsfred2::@10->mode_sixsfred2::@10#1] -- register_copy
jmp b10
// mode_sixsfred2::@10
b10:
// [441] *((byte*) mode_sixsfred2::gfxb#2) ← (byte) $1b -- _deref_pbuz1=vbuc1
lda #$1b
ldy #0
sta (gfxb),y
// [442] (byte*) mode_sixsfred2::gfxb#1 ← ++ (byte*) mode_sixsfred2::gfxb#2 -- pbuz1=_inc_pbuz1
inc.z gfxb
bne !+
inc.z gfxb+1
!:
// [443] (byte) mode_sixsfred2::bx#1 ← ++ (byte) mode_sixsfred2::bx#2 -- vbuz1=_inc_vbuz1
inc.z bx
// [444] if((byte) mode_sixsfred2::bx#1!=(byte) $28) goto mode_sixsfred2::@10 -- vbuz1_neq_vbuc1_then_la1
lda #$28
cmp.z bx
bne b10_from_b10
jmp b11
// mode_sixsfred2::@11
b11:
// [445] (byte) mode_sixsfred2::by#1 ← ++ (byte) mode_sixsfred2::by#4 -- vbuz1=_inc_vbuz1
inc.z by
// [446] if((byte) mode_sixsfred2::by#1!=(byte) $c8) goto mode_sixsfred2::@9 -- vbuz1_neq_vbuc1_then_la1
lda #$c8
cmp.z by
bne b9_from_b11
// [447] phi from mode_sixsfred2::@11 to mode_sixsfred2::@12 [phi:mode_sixsfred2::@11->mode_sixsfred2::@12]
b12_from_b11:
jmp b12
// mode_sixsfred2::@12
b12:
// [448] call mode_ctrl
// [155] phi from mode_sixsfred2::@12 to mode_ctrl [phi:mode_sixsfred2::@12->mode_ctrl]
mode_ctrl_from_b12:
// [155] phi (byte) dtv_control#144 = (const byte) DTV_LINEAR#0 [phi:mode_sixsfred2::@12->mode_ctrl#0] -- vbuz1=vbuc1
lda #DTV_LINEAR
sta.z dtv_control
jsr mode_ctrl
jmp breturn
// mode_sixsfred2::@return
breturn:
// [449] return
rts
row_bitmask: .byte 0, $55, $aa, $ff
}
// mode_hicolmcchar
// High Color Multicolor Character Mode (LINEAR/CHUNK/COLDIS/BMM/ECM = 0, MCM/HICOL = 1)
// Resolution: 160x200 (320x200)
// Normal VIC Adressing:
// VicGfxData[16]: ( VicBank[1:0] & CharBase[2:0] & CharData[7:0] & RowCounter[2:0] )
//GfxData Pixel Shifter (1) if ColorData[3:3] = 0:
// - 0: 8bpp BgColor0[7:0]
// - 1: 8bpp ColorData[7:4] "0" & Color[2:0]
//GfxData Pixel Shifter (2) if ColorData[3:3] = 1:
// - 00: 8bpp BgColor0[7:0]
// - 01: 8bpp BgColor1[7:0]
// - 10: 8bpp BgColor2[7:0]
// - 11: 8bpp ColorData[7:4] "0" & Color[2:0]
mode_hicolmcchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $8400
.label _26 = $e7
.label _27 = $e8
.label _28 = $e9
.label i = $46
.label v = $ea
.label col = $49
.label ch = $4b
.label cx = $48
.label cy = $47
// [450] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [451] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const byte*) mode_hicolmcchar::COLORS#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// [452] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [453] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR
sta DTV_CONTROL
// [454] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2_PORT_A_DDR
// [455] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_hicolmcchar::CHARSET#0/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2_PORT_A
// [456] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [457] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL|VIC_MCM
sta VIC_CONTROL2
// [458] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_hicolmcchar::CHARSET#0&(word) $3fff/(word) $400 -- _deref_pbuc1=vbuc2
// VIC Memory Pointers
lda #(CHARSET&$3fff)/$400
sta VIC_MEMORY
// [459] phi from mode_hicolmcchar to mode_hicolmcchar::@1 [phi:mode_hicolmcchar->mode_hicolmcchar::@1]
b1_from_mode_hicolmcchar:
// [459] phi (byte) mode_hicolmcchar::i#2 = (byte) 0 [phi:mode_hicolmcchar->mode_hicolmcchar::@1#0] -- vbuz1=vbuc1
lda #0
sta.z i
jmp b1
// DTV Palette - Grey Tones
// [459] phi from mode_hicolmcchar::@1 to mode_hicolmcchar::@1 [phi:mode_hicolmcchar::@1->mode_hicolmcchar::@1]
b1_from_b1:
// [459] phi (byte) mode_hicolmcchar::i#2 = (byte) mode_hicolmcchar::i#1 [phi:mode_hicolmcchar::@1->mode_hicolmcchar::@1#0] -- register_copy
jmp b1
// mode_hicolmcchar::@1
b1:
// [460] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolmcchar::i#2) ← (byte) mode_hicolmcchar::i#2 -- pbuc1_derefidx_vbuz1=vbuz1
ldy.z i
tya
sta DTV_PALETTE,y
// [461] (byte) mode_hicolmcchar::i#1 ← ++ (byte) mode_hicolmcchar::i#2 -- vbuz1=_inc_vbuz1
inc.z i
// [462] if((byte) mode_hicolmcchar::i#1!=(byte) $10) goto mode_hicolmcchar::@1 -- vbuz1_neq_vbuc1_then_la1
lda #$10
cmp.z i
bne b1_from_b1
jmp b2
// mode_hicolmcchar::@2
b2:
// [463] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDERCOL
// [464] *((const byte*) BGCOL1#0) ← (byte) $50 -- _deref_pbuc1=vbuc2
lda #$50
sta BGCOL1
// [465] *((const byte*) BGCOL2#0) ← (byte) $54 -- _deref_pbuc1=vbuc2
lda #$54
sta BGCOL2
// [466] *((const byte*) BGCOL3#0) ← (byte) $58 -- _deref_pbuc1=vbuc2
lda #$58
sta BGCOL3
// [467] phi from mode_hicolmcchar::@2 to mode_hicolmcchar::@3 [phi:mode_hicolmcchar::@2->mode_hicolmcchar::@3]
b3_from_b2:
// [467] phi (byte*) mode_hicolmcchar::ch#3 = (const byte*) mode_hicolmcchar::SCREEN#0 [phi:mode_hicolmcchar::@2->mode_hicolmcchar::@3#0] -- pbuz1=pbuc1
lda #<SCREEN
sta.z ch
lda #>SCREEN
sta.z ch+1
// [467] phi (byte*) mode_hicolmcchar::col#3 = (const byte*) mode_hicolmcchar::COLORS#0 [phi:mode_hicolmcchar::@2->mode_hicolmcchar::@3#1] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [467] phi (byte) mode_hicolmcchar::cy#4 = (byte) 0 [phi:mode_hicolmcchar::@2->mode_hicolmcchar::@3#2] -- vbuz1=vbuc1
lda #0
sta.z cy
jmp b3
// [467] phi from mode_hicolmcchar::@5 to mode_hicolmcchar::@3 [phi:mode_hicolmcchar::@5->mode_hicolmcchar::@3]
b3_from_b5:
// [467] phi (byte*) mode_hicolmcchar::ch#3 = (byte*) mode_hicolmcchar::ch#1 [phi:mode_hicolmcchar::@5->mode_hicolmcchar::@3#0] -- register_copy
// [467] phi (byte*) mode_hicolmcchar::col#3 = (byte*) mode_hicolmcchar::col#1 [phi:mode_hicolmcchar::@5->mode_hicolmcchar::@3#1] -- register_copy
// [467] phi (byte) mode_hicolmcchar::cy#4 = (byte) mode_hicolmcchar::cy#1 [phi:mode_hicolmcchar::@5->mode_hicolmcchar::@3#2] -- register_copy
jmp b3
// mode_hicolmcchar::@3
b3:
// [468] phi from mode_hicolmcchar::@3 to mode_hicolmcchar::@4 [phi:mode_hicolmcchar::@3->mode_hicolmcchar::@4]
b4_from_b3:
// [468] phi (byte*) mode_hicolmcchar::ch#2 = (byte*) mode_hicolmcchar::ch#3 [phi:mode_hicolmcchar::@3->mode_hicolmcchar::@4#0] -- register_copy
// [468] phi (byte*) mode_hicolmcchar::col#2 = (byte*) mode_hicolmcchar::col#3 [phi:mode_hicolmcchar::@3->mode_hicolmcchar::@4#1] -- register_copy
// [468] phi (byte) mode_hicolmcchar::cx#2 = (byte) 0 [phi:mode_hicolmcchar::@3->mode_hicolmcchar::@4#2] -- vbuz1=vbuc1
lda #0
sta.z cx
jmp b4
// [468] phi from mode_hicolmcchar::@4 to mode_hicolmcchar::@4 [phi:mode_hicolmcchar::@4->mode_hicolmcchar::@4]
b4_from_b4:
// [468] phi (byte*) mode_hicolmcchar::ch#2 = (byte*) mode_hicolmcchar::ch#1 [phi:mode_hicolmcchar::@4->mode_hicolmcchar::@4#0] -- register_copy
// [468] phi (byte*) mode_hicolmcchar::col#2 = (byte*) mode_hicolmcchar::col#1 [phi:mode_hicolmcchar::@4->mode_hicolmcchar::@4#1] -- register_copy
// [468] phi (byte) mode_hicolmcchar::cx#2 = (byte) mode_hicolmcchar::cx#1 [phi:mode_hicolmcchar::@4->mode_hicolmcchar::@4#2] -- register_copy
jmp b4
// mode_hicolmcchar::@4
b4:
// [469] (byte~) mode_hicolmcchar::$26 ← (byte) mode_hicolmcchar::cy#4 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cy
sta.z _26
// [470] (byte~) mode_hicolmcchar::$27 ← (byte~) mode_hicolmcchar::$26 << (byte) 4 -- vbuz1=vbuz2_rol_4
lda.z _26
asl
asl
asl
asl
sta.z _27
// [471] (byte~) mode_hicolmcchar::$28 ← (byte) mode_hicolmcchar::cx#2 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cx
sta.z _28
// [472] (byte) mode_hicolmcchar::v#0 ← (byte~) mode_hicolmcchar::$27 | (byte~) mode_hicolmcchar::$28 -- vbuz1=vbuz2_bor_vbuz3
lda.z _27
ora.z _28
sta.z v
// [473] *((byte*) mode_hicolmcchar::col#2) ← (byte) mode_hicolmcchar::v#0 -- _deref_pbuz1=vbuz2
lda.z v
ldy #0
sta (col),y
// [474] (byte*) mode_hicolmcchar::col#1 ← ++ (byte*) mode_hicolmcchar::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// [475] *((byte*) mode_hicolmcchar::ch#2) ← (byte) mode_hicolmcchar::v#0 -- _deref_pbuz1=vbuz2
lda.z v
ldy #0
sta (ch),y
// [476] (byte*) mode_hicolmcchar::ch#1 ← ++ (byte*) mode_hicolmcchar::ch#2 -- pbuz1=_inc_pbuz1
inc.z ch
bne !+
inc.z ch+1
!:
// [477] (byte) mode_hicolmcchar::cx#1 ← ++ (byte) mode_hicolmcchar::cx#2 -- vbuz1=_inc_vbuz1
inc.z cx
// [478] if((byte) mode_hicolmcchar::cx#1!=(byte) $28) goto mode_hicolmcchar::@4 -- vbuz1_neq_vbuc1_then_la1
lda #$28
cmp.z cx
bne b4_from_b4
jmp b5
// mode_hicolmcchar::@5
b5:
// [479] (byte) mode_hicolmcchar::cy#1 ← ++ (byte) mode_hicolmcchar::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [480] if((byte) mode_hicolmcchar::cy#1!=(byte) $19) goto mode_hicolmcchar::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3_from_b5
// [481] phi from mode_hicolmcchar::@5 to mode_hicolmcchar::@6 [phi:mode_hicolmcchar::@5->mode_hicolmcchar::@6]
b6_from_b5:
jmp b6
// mode_hicolmcchar::@6
b6:
// [482] call mode_ctrl
// [155] phi from mode_hicolmcchar::@6 to mode_ctrl [phi:mode_hicolmcchar::@6->mode_ctrl]
mode_ctrl_from_b6:
// [155] phi (byte) dtv_control#144 = (const byte) DTV_HIGHCOLOR#0 [phi:mode_hicolmcchar::@6->mode_ctrl#0] -- vbuz1=vbuc1
lda #DTV_HIGHCOLOR
sta.z dtv_control
jsr mode_ctrl
jmp breturn
// mode_hicolmcchar::@return
breturn:
// [483] return
rts
}
// mode_hicolecmchar
// High Color Extended Background Color Character Mode (LINEAR/CHUNK/COLDIS/MCM/BMM = 0, ECM/HICOL = 1)
// Resolution: 320x200
// Normal VIC Adressing:
// VicGfxData[16]: ( VicBank[1:0] & CharBase[2:0] & "00" & CharData[5:0] & RowCounter[2:0] )
// GfxData Pixel Shifter (1)
// - 0: 8bpp Background Color
// - CharData[7:6] 00: 8bpp BgColor0[7:0]
// - CharData[7:6] 01: 8bpp BgColor1[7:0]
// - CharData[7:6] 10: 8bpp BgColor2[7:0]
// - CharData[7:6] 11: 8bpp BgColor3[7:0]
// - 1: 8bpp ColorData[7:0]
mode_hicolecmchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $8400
.label _26 = $eb
.label _27 = $ec
.label _28 = $ed
.label i = $4d
.label v = $ee
.label col = $50
.label ch = $52
.label cx = $4f
.label cy = $4e
// [484] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [485] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const byte*) mode_hicolecmchar::COLORS#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// [486] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [487] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR
sta DTV_CONTROL
// [488] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2_PORT_A_DDR
// [489] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_hicolecmchar::CHARSET#0/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2_PORT_A
// [490] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|VIC_ECM|3
sta VIC_CONTROL
// [491] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [492] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_hicolecmchar::CHARSET#0&(word) $3fff/(word) $400 -- _deref_pbuc1=vbuc2
// VIC Memory Pointers
lda #(CHARSET&$3fff)/$400
sta VIC_MEMORY
// [493] phi from mode_hicolecmchar to mode_hicolecmchar::@1 [phi:mode_hicolecmchar->mode_hicolecmchar::@1]
b1_from_mode_hicolecmchar:
// [493] phi (byte) mode_hicolecmchar::i#2 = (byte) 0 [phi:mode_hicolecmchar->mode_hicolecmchar::@1#0] -- vbuz1=vbuc1
lda #0
sta.z i
jmp b1
// DTV Palette - Grey Tones
// [493] phi from mode_hicolecmchar::@1 to mode_hicolecmchar::@1 [phi:mode_hicolecmchar::@1->mode_hicolecmchar::@1]
b1_from_b1:
// [493] phi (byte) mode_hicolecmchar::i#2 = (byte) mode_hicolecmchar::i#1 [phi:mode_hicolecmchar::@1->mode_hicolecmchar::@1#0] -- register_copy
jmp b1
// mode_hicolecmchar::@1
b1:
// [494] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolecmchar::i#2) ← (byte) mode_hicolecmchar::i#2 -- pbuc1_derefidx_vbuz1=vbuz1
ldy.z i
tya
sta DTV_PALETTE,y
// [495] (byte) mode_hicolecmchar::i#1 ← ++ (byte) mode_hicolecmchar::i#2 -- vbuz1=_inc_vbuz1
inc.z i
// [496] if((byte) mode_hicolecmchar::i#1!=(byte) $10) goto mode_hicolecmchar::@1 -- vbuz1_neq_vbuc1_then_la1
lda #$10
cmp.z i
bne b1_from_b1
jmp b2
// mode_hicolecmchar::@2
b2:
// [497] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDERCOL
// [498] *((const byte*) BGCOL1#0) ← (byte) $50 -- _deref_pbuc1=vbuc2
lda #$50
sta BGCOL1
// [499] *((const byte*) BGCOL2#0) ← (byte) $54 -- _deref_pbuc1=vbuc2
lda #$54
sta BGCOL2
// [500] *((const byte*) BGCOL3#0) ← (byte) $58 -- _deref_pbuc1=vbuc2
lda #$58
sta BGCOL3
// [501] *((const byte*) BGCOL4#0) ← (byte) $5c -- _deref_pbuc1=vbuc2
lda #$5c
sta BGCOL4
// [502] phi from mode_hicolecmchar::@2 to mode_hicolecmchar::@3 [phi:mode_hicolecmchar::@2->mode_hicolecmchar::@3]
b3_from_b2:
// [502] phi (byte*) mode_hicolecmchar::ch#3 = (const byte*) mode_hicolecmchar::SCREEN#0 [phi:mode_hicolecmchar::@2->mode_hicolecmchar::@3#0] -- pbuz1=pbuc1
lda #<SCREEN
sta.z ch
lda #>SCREEN
sta.z ch+1
// [502] phi (byte*) mode_hicolecmchar::col#3 = (const byte*) mode_hicolecmchar::COLORS#0 [phi:mode_hicolecmchar::@2->mode_hicolecmchar::@3#1] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [502] phi (byte) mode_hicolecmchar::cy#4 = (byte) 0 [phi:mode_hicolecmchar::@2->mode_hicolecmchar::@3#2] -- vbuz1=vbuc1
lda #0
sta.z cy
jmp b3
// [502] phi from mode_hicolecmchar::@5 to mode_hicolecmchar::@3 [phi:mode_hicolecmchar::@5->mode_hicolecmchar::@3]
b3_from_b5:
// [502] phi (byte*) mode_hicolecmchar::ch#3 = (byte*) mode_hicolecmchar::ch#1 [phi:mode_hicolecmchar::@5->mode_hicolecmchar::@3#0] -- register_copy
// [502] phi (byte*) mode_hicolecmchar::col#3 = (byte*) mode_hicolecmchar::col#1 [phi:mode_hicolecmchar::@5->mode_hicolecmchar::@3#1] -- register_copy
// [502] phi (byte) mode_hicolecmchar::cy#4 = (byte) mode_hicolecmchar::cy#1 [phi:mode_hicolecmchar::@5->mode_hicolecmchar::@3#2] -- register_copy
jmp b3
// mode_hicolecmchar::@3
b3:
// [503] phi from mode_hicolecmchar::@3 to mode_hicolecmchar::@4 [phi:mode_hicolecmchar::@3->mode_hicolecmchar::@4]
b4_from_b3:
// [503] phi (byte*) mode_hicolecmchar::ch#2 = (byte*) mode_hicolecmchar::ch#3 [phi:mode_hicolecmchar::@3->mode_hicolecmchar::@4#0] -- register_copy
// [503] phi (byte*) mode_hicolecmchar::col#2 = (byte*) mode_hicolecmchar::col#3 [phi:mode_hicolecmchar::@3->mode_hicolecmchar::@4#1] -- register_copy
// [503] phi (byte) mode_hicolecmchar::cx#2 = (byte) 0 [phi:mode_hicolecmchar::@3->mode_hicolecmchar::@4#2] -- vbuz1=vbuc1
lda #0
sta.z cx
jmp b4
// [503] phi from mode_hicolecmchar::@4 to mode_hicolecmchar::@4 [phi:mode_hicolecmchar::@4->mode_hicolecmchar::@4]
b4_from_b4:
// [503] phi (byte*) mode_hicolecmchar::ch#2 = (byte*) mode_hicolecmchar::ch#1 [phi:mode_hicolecmchar::@4->mode_hicolecmchar::@4#0] -- register_copy
// [503] phi (byte*) mode_hicolecmchar::col#2 = (byte*) mode_hicolecmchar::col#1 [phi:mode_hicolecmchar::@4->mode_hicolecmchar::@4#1] -- register_copy
// [503] phi (byte) mode_hicolecmchar::cx#2 = (byte) mode_hicolecmchar::cx#1 [phi:mode_hicolecmchar::@4->mode_hicolecmchar::@4#2] -- register_copy
jmp b4
// mode_hicolecmchar::@4
b4:
// [504] (byte~) mode_hicolecmchar::$26 ← (byte) mode_hicolecmchar::cy#4 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cy
sta.z _26
// [505] (byte~) mode_hicolecmchar::$27 ← (byte~) mode_hicolecmchar::$26 << (byte) 4 -- vbuz1=vbuz2_rol_4
lda.z _26
asl
asl
asl
asl
sta.z _27
// [506] (byte~) mode_hicolecmchar::$28 ← (byte) mode_hicolecmchar::cx#2 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cx
sta.z _28
// [507] (byte) mode_hicolecmchar::v#0 ← (byte~) mode_hicolecmchar::$27 | (byte~) mode_hicolecmchar::$28 -- vbuz1=vbuz2_bor_vbuz3
lda.z _27
ora.z _28
sta.z v
// [508] *((byte*) mode_hicolecmchar::col#2) ← (byte) mode_hicolecmchar::v#0 -- _deref_pbuz1=vbuz2
lda.z v
ldy #0
sta (col),y
// [509] (byte*) mode_hicolecmchar::col#1 ← ++ (byte*) mode_hicolecmchar::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// [510] *((byte*) mode_hicolecmchar::ch#2) ← (byte) mode_hicolecmchar::v#0 -- _deref_pbuz1=vbuz2
lda.z v
ldy #0
sta (ch),y
// [511] (byte*) mode_hicolecmchar::ch#1 ← ++ (byte*) mode_hicolecmchar::ch#2 -- pbuz1=_inc_pbuz1
inc.z ch
bne !+
inc.z ch+1
!:
// [512] (byte) mode_hicolecmchar::cx#1 ← ++ (byte) mode_hicolecmchar::cx#2 -- vbuz1=_inc_vbuz1
inc.z cx
// [513] if((byte) mode_hicolecmchar::cx#1!=(byte) $28) goto mode_hicolecmchar::@4 -- vbuz1_neq_vbuc1_then_la1
lda #$28
cmp.z cx
bne b4_from_b4
jmp b5
// mode_hicolecmchar::@5
b5:
// [514] (byte) mode_hicolecmchar::cy#1 ← ++ (byte) mode_hicolecmchar::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [515] if((byte) mode_hicolecmchar::cy#1!=(byte) $19) goto mode_hicolecmchar::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3_from_b5
// [516] phi from mode_hicolecmchar::@5 to mode_hicolecmchar::@6 [phi:mode_hicolecmchar::@5->mode_hicolecmchar::@6]
b6_from_b5:
jmp b6
// mode_hicolecmchar::@6
b6:
// [517] call mode_ctrl
// [155] phi from mode_hicolecmchar::@6 to mode_ctrl [phi:mode_hicolecmchar::@6->mode_ctrl]
mode_ctrl_from_b6:
// [155] phi (byte) dtv_control#144 = (const byte) DTV_HIGHCOLOR#0 [phi:mode_hicolecmchar::@6->mode_ctrl#0] -- vbuz1=vbuc1
lda #DTV_HIGHCOLOR
sta.z dtv_control
jsr mode_ctrl
jmp breturn
// mode_hicolecmchar::@return
breturn:
// [518] return
rts
}
// mode_hicolstdchar
// High Color Standard Character Mode (LINEAR/CHUNK/COLDIS/ECM/MCM/BMM = 0, HICOL = 1)
// Resolution: 320x200
// Normal VIC Adressing:
// VicGfxData[16]: ( VicBank[1:0] & CharBase[2:0] & CharData[7:0] & RowCounter[2:0] )
// Pixel Shifter (1)
// - 0: 8bpp BgColor0[7:0]
// - 1: 8bpp ColorData[7:0]
mode_hicolstdchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $8400
.label _25 = $ef
.label _26 = $f0
.label _27 = $f1
.label i = $54
.label v = $f2
.label col = $57
.label ch = $59
.label cx = $56
.label cy = $55
// [519] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [520] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const byte*) mode_hicolstdchar::COLORS#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// [521] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [522] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR
sta DTV_CONTROL
// [523] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2_PORT_A_DDR
// [524] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_hicolstdchar::CHARSET#0/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2_PORT_A
// [525] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [526] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [527] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_hicolstdchar::CHARSET#0&(word) $3fff/(word) $400 -- _deref_pbuc1=vbuc2
// VIC Memory Pointers
lda #(CHARSET&$3fff)/$400
sta VIC_MEMORY
// [528] phi from mode_hicolstdchar to mode_hicolstdchar::@1 [phi:mode_hicolstdchar->mode_hicolstdchar::@1]
b1_from_mode_hicolstdchar:
// [528] phi (byte) mode_hicolstdchar::i#2 = (byte) 0 [phi:mode_hicolstdchar->mode_hicolstdchar::@1#0] -- vbuz1=vbuc1
lda #0
sta.z i
jmp b1
// DTV Palette - Grey Tones
// [528] phi from mode_hicolstdchar::@1 to mode_hicolstdchar::@1 [phi:mode_hicolstdchar::@1->mode_hicolstdchar::@1]
b1_from_b1:
// [528] phi (byte) mode_hicolstdchar::i#2 = (byte) mode_hicolstdchar::i#1 [phi:mode_hicolstdchar::@1->mode_hicolstdchar::@1#0] -- register_copy
jmp b1
// mode_hicolstdchar::@1
b1:
// [529] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolstdchar::i#2) ← (byte) mode_hicolstdchar::i#2 -- pbuc1_derefidx_vbuz1=vbuz1
ldy.z i
tya
sta DTV_PALETTE,y
// [530] (byte) mode_hicolstdchar::i#1 ← ++ (byte) mode_hicolstdchar::i#2 -- vbuz1=_inc_vbuz1
inc.z i
// [531] if((byte) mode_hicolstdchar::i#1!=(byte) $10) goto mode_hicolstdchar::@1 -- vbuz1_neq_vbuc1_then_la1
lda #$10
cmp.z i
bne b1_from_b1
jmp b2
// mode_hicolstdchar::@2
b2:
// [532] *((const byte*) BGCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BGCOL
// [533] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta BORDERCOL
// [534] phi from mode_hicolstdchar::@2 to mode_hicolstdchar::@3 [phi:mode_hicolstdchar::@2->mode_hicolstdchar::@3]
b3_from_b2:
// [534] phi (byte*) mode_hicolstdchar::ch#3 = (const byte*) mode_hicolstdchar::SCREEN#0 [phi:mode_hicolstdchar::@2->mode_hicolstdchar::@3#0] -- pbuz1=pbuc1
lda #<SCREEN
sta.z ch
lda #>SCREEN
sta.z ch+1
// [534] phi (byte*) mode_hicolstdchar::col#3 = (const byte*) mode_hicolstdchar::COLORS#0 [phi:mode_hicolstdchar::@2->mode_hicolstdchar::@3#1] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [534] phi (byte) mode_hicolstdchar::cy#4 = (byte) 0 [phi:mode_hicolstdchar::@2->mode_hicolstdchar::@3#2] -- vbuz1=vbuc1
lda #0
sta.z cy
jmp b3
// [534] phi from mode_hicolstdchar::@5 to mode_hicolstdchar::@3 [phi:mode_hicolstdchar::@5->mode_hicolstdchar::@3]
b3_from_b5:
// [534] phi (byte*) mode_hicolstdchar::ch#3 = (byte*) mode_hicolstdchar::ch#1 [phi:mode_hicolstdchar::@5->mode_hicolstdchar::@3#0] -- register_copy
// [534] phi (byte*) mode_hicolstdchar::col#3 = (byte*) mode_hicolstdchar::col#1 [phi:mode_hicolstdchar::@5->mode_hicolstdchar::@3#1] -- register_copy
// [534] phi (byte) mode_hicolstdchar::cy#4 = (byte) mode_hicolstdchar::cy#1 [phi:mode_hicolstdchar::@5->mode_hicolstdchar::@3#2] -- register_copy
jmp b3
// mode_hicolstdchar::@3
b3:
// [535] phi from mode_hicolstdchar::@3 to mode_hicolstdchar::@4 [phi:mode_hicolstdchar::@3->mode_hicolstdchar::@4]
b4_from_b3:
// [535] phi (byte*) mode_hicolstdchar::ch#2 = (byte*) mode_hicolstdchar::ch#3 [phi:mode_hicolstdchar::@3->mode_hicolstdchar::@4#0] -- register_copy
// [535] phi (byte*) mode_hicolstdchar::col#2 = (byte*) mode_hicolstdchar::col#3 [phi:mode_hicolstdchar::@3->mode_hicolstdchar::@4#1] -- register_copy
// [535] phi (byte) mode_hicolstdchar::cx#2 = (byte) 0 [phi:mode_hicolstdchar::@3->mode_hicolstdchar::@4#2] -- vbuz1=vbuc1
lda #0
sta.z cx
jmp b4
// [535] phi from mode_hicolstdchar::@4 to mode_hicolstdchar::@4 [phi:mode_hicolstdchar::@4->mode_hicolstdchar::@4]
b4_from_b4:
// [535] phi (byte*) mode_hicolstdchar::ch#2 = (byte*) mode_hicolstdchar::ch#1 [phi:mode_hicolstdchar::@4->mode_hicolstdchar::@4#0] -- register_copy
// [535] phi (byte*) mode_hicolstdchar::col#2 = (byte*) mode_hicolstdchar::col#1 [phi:mode_hicolstdchar::@4->mode_hicolstdchar::@4#1] -- register_copy
// [535] phi (byte) mode_hicolstdchar::cx#2 = (byte) mode_hicolstdchar::cx#1 [phi:mode_hicolstdchar::@4->mode_hicolstdchar::@4#2] -- register_copy
jmp b4
// mode_hicolstdchar::@4
b4:
// [536] (byte~) mode_hicolstdchar::$25 ← (byte) mode_hicolstdchar::cy#4 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cy
sta.z _25
// [537] (byte~) mode_hicolstdchar::$26 ← (byte~) mode_hicolstdchar::$25 << (byte) 4 -- vbuz1=vbuz2_rol_4
lda.z _25
asl
asl
asl
asl
sta.z _26
// [538] (byte~) mode_hicolstdchar::$27 ← (byte) mode_hicolstdchar::cx#2 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cx
sta.z _27
// [539] (byte) mode_hicolstdchar::v#0 ← (byte~) mode_hicolstdchar::$26 | (byte~) mode_hicolstdchar::$27 -- vbuz1=vbuz2_bor_vbuz3
lda.z _26
ora.z _27
sta.z v
// [540] *((byte*) mode_hicolstdchar::col#2) ← (byte) mode_hicolstdchar::v#0 -- _deref_pbuz1=vbuz2
lda.z v
ldy #0
sta (col),y
// [541] (byte*) mode_hicolstdchar::col#1 ← ++ (byte*) mode_hicolstdchar::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// [542] *((byte*) mode_hicolstdchar::ch#2) ← (byte) mode_hicolstdchar::v#0 -- _deref_pbuz1=vbuz2
lda.z v
ldy #0
sta (ch),y
// [543] (byte*) mode_hicolstdchar::ch#1 ← ++ (byte*) mode_hicolstdchar::ch#2 -- pbuz1=_inc_pbuz1
inc.z ch
bne !+
inc.z ch+1
!:
// [544] (byte) mode_hicolstdchar::cx#1 ← ++ (byte) mode_hicolstdchar::cx#2 -- vbuz1=_inc_vbuz1
inc.z cx
// [545] if((byte) mode_hicolstdchar::cx#1!=(byte) $28) goto mode_hicolstdchar::@4 -- vbuz1_neq_vbuc1_then_la1
lda #$28
cmp.z cx
bne b4_from_b4
jmp b5
// mode_hicolstdchar::@5
b5:
// [546] (byte) mode_hicolstdchar::cy#1 ← ++ (byte) mode_hicolstdchar::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [547] if((byte) mode_hicolstdchar::cy#1!=(byte) $19) goto mode_hicolstdchar::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3_from_b5
// [548] phi from mode_hicolstdchar::@5 to mode_hicolstdchar::@6 [phi:mode_hicolstdchar::@5->mode_hicolstdchar::@6]
b6_from_b5:
jmp b6
// mode_hicolstdchar::@6
b6:
// [549] call mode_ctrl
// [155] phi from mode_hicolstdchar::@6 to mode_ctrl [phi:mode_hicolstdchar::@6->mode_ctrl]
mode_ctrl_from_b6:
// [155] phi (byte) dtv_control#144 = (const byte) DTV_HIGHCOLOR#0 [phi:mode_hicolstdchar::@6->mode_ctrl#0] -- vbuz1=vbuc1
lda #DTV_HIGHCOLOR
sta.z dtv_control
jsr mode_ctrl
jmp breturn
// mode_hicolstdchar::@return
breturn:
// [550] return
rts
}
// mode_stdbitmap
// Standard Bitmap Mode (LINEAR/HICOL/CHUNK/COLDIS/MCM/ECM = 0, BMM = 1)
// Resolution: 320x200
// Normal VIC Adressing:
// VicGfxData[16]: ( VicBank[1:0] & CharBase[2:2] & Matrix[9:0] & RowCounter[2:0] )
// Pixel Shifter (1)
// - 0: 4bpp CharData[3:0]
// - 1: 4bpp CharData[7:4]
mode_stdbitmap: {
.label SCREEN = $4000
.label BITMAP = $6000
.const lines_cnt = 9
.label _22 = $f3
.label _25 = $f6
.label _26 = $f7
.label i = $5b
.label col = $f4
.label col2 = $f5
.label ch = $5e
.label cx = $5d
.label cy = $5c
.label l = $60
// [551] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [552] *((const byte*) DTV_CONTROL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_CONTROL
// [553] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2_PORT_A_DDR
// [554] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_stdbitmap::BITMAP#0/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^BITMAP/$4000
sta CIA2_PORT_A
// [555] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_BMM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [556] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [557] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_stdbitmap::BITMAP#0&(word) $3fff/(word) $400 -- _deref_pbuc1=vbuc2
// VIC Memory Pointers
lda #(BITMAP&$3fff)/$400
sta VIC_MEMORY
// [558] phi from mode_stdbitmap to mode_stdbitmap::@1 [phi:mode_stdbitmap->mode_stdbitmap::@1]
b1_from_mode_stdbitmap:
// [558] phi (byte) mode_stdbitmap::i#2 = (byte) 0 [phi:mode_stdbitmap->mode_stdbitmap::@1#0] -- vbuz1=vbuc1
lda #0
sta.z i
jmp b1
// DTV Palette - default
// [558] phi from mode_stdbitmap::@1 to mode_stdbitmap::@1 [phi:mode_stdbitmap::@1->mode_stdbitmap::@1]
b1_from_b1:
// [558] phi (byte) mode_stdbitmap::i#2 = (byte) mode_stdbitmap::i#1 [phi:mode_stdbitmap::@1->mode_stdbitmap::@1#0] -- register_copy
jmp b1
// mode_stdbitmap::@1
b1:
// [559] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdbitmap::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdbitmap::i#2) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1
ldy.z i
lda DTV_PALETTE_DEFAULT,y
sta DTV_PALETTE,y
// [560] (byte) mode_stdbitmap::i#1 ← ++ (byte) mode_stdbitmap::i#2 -- vbuz1=_inc_vbuz1
inc.z i
// [561] if((byte) mode_stdbitmap::i#1!=(byte) $10) goto mode_stdbitmap::@1 -- vbuz1_neq_vbuc1_then_la1
lda #$10
cmp.z i
bne b1_from_b1
jmp b2
// mode_stdbitmap::@2
b2:
// [562] *((const byte*) BGCOL#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #BLACK
sta BGCOL
// [563] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2
lda #BLACK
sta BORDERCOL
// [564] phi from mode_stdbitmap::@2 to mode_stdbitmap::@3 [phi:mode_stdbitmap::@2->mode_stdbitmap::@3]
b3_from_b2:
// [564] phi (byte*) mode_stdbitmap::ch#3 = (const byte*) mode_stdbitmap::SCREEN#0 [phi:mode_stdbitmap::@2->mode_stdbitmap::@3#0] -- pbuz1=pbuc1
lda #<SCREEN
sta.z ch
lda #>SCREEN
sta.z ch+1
// [564] phi (byte) mode_stdbitmap::cy#4 = (byte) 0 [phi:mode_stdbitmap::@2->mode_stdbitmap::@3#1] -- vbuz1=vbuc1
lda #0
sta.z cy
jmp b3
// [564] phi from mode_stdbitmap::@5 to mode_stdbitmap::@3 [phi:mode_stdbitmap::@5->mode_stdbitmap::@3]
b3_from_b5:
// [564] phi (byte*) mode_stdbitmap::ch#3 = (byte*) mode_stdbitmap::ch#1 [phi:mode_stdbitmap::@5->mode_stdbitmap::@3#0] -- register_copy
// [564] phi (byte) mode_stdbitmap::cy#4 = (byte) mode_stdbitmap::cy#1 [phi:mode_stdbitmap::@5->mode_stdbitmap::@3#1] -- register_copy
jmp b3
// mode_stdbitmap::@3
b3:
// [565] phi from mode_stdbitmap::@3 to mode_stdbitmap::@4 [phi:mode_stdbitmap::@3->mode_stdbitmap::@4]
b4_from_b3:
// [565] phi (byte*) mode_stdbitmap::ch#2 = (byte*) mode_stdbitmap::ch#3 [phi:mode_stdbitmap::@3->mode_stdbitmap::@4#0] -- register_copy
// [565] phi (byte) mode_stdbitmap::cx#2 = (byte) 0 [phi:mode_stdbitmap::@3->mode_stdbitmap::@4#1] -- vbuz1=vbuc1
lda #0
sta.z cx
jmp b4
// [565] phi from mode_stdbitmap::@4 to mode_stdbitmap::@4 [phi:mode_stdbitmap::@4->mode_stdbitmap::@4]
b4_from_b4:
// [565] phi (byte*) mode_stdbitmap::ch#2 = (byte*) mode_stdbitmap::ch#1 [phi:mode_stdbitmap::@4->mode_stdbitmap::@4#0] -- register_copy
// [565] phi (byte) mode_stdbitmap::cx#2 = (byte) mode_stdbitmap::cx#1 [phi:mode_stdbitmap::@4->mode_stdbitmap::@4#1] -- register_copy
jmp b4
// mode_stdbitmap::@4
b4:
// [566] (byte~) mode_stdbitmap::$22 ← (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#4 -- vbuz1=vbuz2_plus_vbuz3
lda.z cx
clc
adc.z cy
sta.z _22
// [567] (byte) mode_stdbitmap::col#0 ← (byte~) mode_stdbitmap::$22 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z _22
sta.z col
// [568] (byte) mode_stdbitmap::col2#0 ← (byte) $f - (byte) mode_stdbitmap::col#0 -- vbuz1=vbuc1_minus_vbuz2
lda #$f
sec
sbc.z col
sta.z col2
// [569] (byte~) mode_stdbitmap::$25 ← (byte) mode_stdbitmap::col#0 << (byte) 4 -- vbuz1=vbuz2_rol_4
lda.z col
asl
asl
asl
asl
sta.z _25
// [570] (byte~) mode_stdbitmap::$26 ← (byte~) mode_stdbitmap::$25 | (byte) mode_stdbitmap::col2#0 -- vbuz1=vbuz2_bor_vbuz3
lda.z _25
ora.z col2
sta.z _26
// [571] *((byte*) mode_stdbitmap::ch#2) ← (byte~) mode_stdbitmap::$26 -- _deref_pbuz1=vbuz2
lda.z _26
ldy #0
sta (ch),y
// [572] (byte*) mode_stdbitmap::ch#1 ← ++ (byte*) mode_stdbitmap::ch#2 -- pbuz1=_inc_pbuz1
inc.z ch
bne !+
inc.z ch+1
!:
// [573] (byte) mode_stdbitmap::cx#1 ← ++ (byte) mode_stdbitmap::cx#2 -- vbuz1=_inc_vbuz1
inc.z cx
// [574] if((byte) mode_stdbitmap::cx#1!=(byte) $28) goto mode_stdbitmap::@4 -- vbuz1_neq_vbuc1_then_la1
lda #$28
cmp.z cx
bne b4_from_b4
jmp b5
// mode_stdbitmap::@5
b5:
// [575] (byte) mode_stdbitmap::cy#1 ← ++ (byte) mode_stdbitmap::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [576] if((byte) mode_stdbitmap::cy#1!=(byte) $19) goto mode_stdbitmap::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3_from_b5
// [577] phi from mode_stdbitmap::@5 to mode_stdbitmap::@6 [phi:mode_stdbitmap::@5->mode_stdbitmap::@6]
b6_from_b5:
jmp b6
// mode_stdbitmap::@6
b6:
// [578] call bitmap_init
// [732] phi from mode_stdbitmap::@6 to bitmap_init [phi:mode_stdbitmap::@6->bitmap_init]
bitmap_init_from_b6:
jsr bitmap_init
// [579] phi from mode_stdbitmap::@6 to mode_stdbitmap::@10 [phi:mode_stdbitmap::@6->mode_stdbitmap::@10]
b10_from_b6:
jmp b10
// mode_stdbitmap::@10
b10:
// [580] call bitmap_clear
jsr bitmap_clear
// [581] phi from mode_stdbitmap::@10 to mode_stdbitmap::@7 [phi:mode_stdbitmap::@10->mode_stdbitmap::@7]
b7_from_b10:
// [581] phi (byte) mode_stdbitmap::l#2 = (byte) 0 [phi:mode_stdbitmap::@10->mode_stdbitmap::@7#0] -- vbuz1=vbuc1
lda #0
sta.z l
jmp b7
// mode_stdbitmap::@7
b7:
// [582] if((byte) mode_stdbitmap::l#2<(const byte) mode_stdbitmap::lines_cnt#0) goto mode_stdbitmap::@8 -- vbuz1_lt_vbuc1_then_la1
lda.z l
cmp #lines_cnt
bcc b8
// [583] phi from mode_stdbitmap::@7 to mode_stdbitmap::@9 [phi:mode_stdbitmap::@7->mode_stdbitmap::@9]
b9_from_b7:
jmp b9
// mode_stdbitmap::@9
b9:
// [584] call mode_ctrl
// [155] phi from mode_stdbitmap::@9 to mode_ctrl [phi:mode_stdbitmap::@9->mode_ctrl]
mode_ctrl_from_b9:
// [155] phi (byte) dtv_control#144 = (byte) 0 [phi:mode_stdbitmap::@9->mode_ctrl#0] -- vbuz1=vbuc1
lda #0
sta.z dtv_control
jsr mode_ctrl
jmp breturn
// mode_stdbitmap::@return
breturn:
// [585] return
rts
// mode_stdbitmap::@8
b8:
// [586] (byte) bitmap_line::x0#0 ← *((const byte[]) mode_stdbitmap::lines_x#0 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2
ldy.z l
lda lines_x,y
sta.z bitmap_line.x0
// [587] (byte) bitmap_line::x1#0 ← *((const byte[]) mode_stdbitmap::lines_x#0+(byte) 1 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2
ldy.z l
lda lines_x+1,y
sta.z bitmap_line.x1
// [588] (byte) bitmap_line::y0#0 ← *((const byte[]) mode_stdbitmap::lines_y#0 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2
ldy.z l
lda lines_y,y
sta.z bitmap_line.y0
// [589] (byte) bitmap_line::y1#0 ← *((const byte[]) mode_stdbitmap::lines_y#0+(byte) 1 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2
ldy.z l
lda lines_y+1,y
sta.z bitmap_line.y1
// [590] call bitmap_line
jsr bitmap_line
jmp b11
// mode_stdbitmap::@11
b11:
// [591] (byte) mode_stdbitmap::l#1 ← ++ (byte) mode_stdbitmap::l#2 -- vbuz1=_inc_vbuz1
inc.z l
// [581] phi from mode_stdbitmap::@11 to mode_stdbitmap::@7 [phi:mode_stdbitmap::@11->mode_stdbitmap::@7]
b7_from_b11:
// [581] phi (byte) mode_stdbitmap::l#2 = (byte) mode_stdbitmap::l#1 [phi:mode_stdbitmap::@11->mode_stdbitmap::@7#0] -- register_copy
jmp b7
lines_x: .byte 0, $ff, $ff, 0, 0, $80, $ff, $80, 0, $80
lines_y: .byte 0, 0, $c7, $c7, 0, 0, $64, $c7, $64, 0
}
// bitmap_line
// Draw a line on the bitmap
// bitmap_line(byte zeropage($f8) x0, byte zeropage($f9) x1, byte zeropage($fa) y0, byte zeropage($fb) y1)
bitmap_line: {
.label xd = $ff
.label xd_2 = $fc
.label yd = $fe
.label yd_2 = $fd
.label x0 = $f8
.label x1 = $f9
.label y0 = $fa
.label y1 = $fb
.label yd_10 = $100
.label yd_11 = $101
// [592] if((byte) bitmap_line::x0#0<(byte) bitmap_line::x1#0) goto bitmap_line::@1 -- vbuz1_lt_vbuz2_then_la1
lda.z x0
cmp.z x1
bcc b1
jmp b2
// bitmap_line::@2
b2:
// [593] (byte) bitmap_line::xd#2 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 -- vbuz1=vbuz2_minus_vbuz3
lda.z x0
sec
sbc.z x1
sta.z xd_2
// [594] if((byte) bitmap_line::y0#0<(byte) bitmap_line::y1#0) goto bitmap_line::@7 -- vbuz1_lt_vbuz2_then_la1
lda.z y0
cmp.z y1
bcc b7
jmp b3
// bitmap_line::@3
b3:
// [595] (byte) bitmap_line::yd#2 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuz1=vbuz2_minus_vbuz3
lda.z y0
sec
sbc.z y1
sta.z yd_2
// [596] if((byte) bitmap_line::yd#2<(byte) bitmap_line::xd#2) goto bitmap_line::@8 -- vbuz1_lt_vbuz2_then_la1
lda.z yd_2
cmp.z xd_2
bcc b8
jmp b4
// bitmap_line::@4
b4:
// [597] (byte) bitmap_line_ydxi::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2
lda.z y1
sta.z bitmap_line_ydxi.y
// [598] (byte) bitmap_line_ydxi::x#0 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2
lda.z x1
sta.z bitmap_line_ydxi.x
// [599] (byte) bitmap_line_ydxi::y1#0 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2
lda.z y0
sta.z bitmap_line_ydxi.y1
// [600] (byte) bitmap_line_ydxi::yd#0 ← (byte) bitmap_line::yd#2 -- vbuz1=vbuz2
lda.z yd_2
sta.z bitmap_line_ydxi.yd
// [601] (byte) bitmap_line_ydxi::xd#0 ← (byte) bitmap_line::xd#2 -- vbuz1=vbuz2
lda.z xd_2
sta.z bitmap_line_ydxi.xd
// [602] call bitmap_line_ydxi
// [676] phi from bitmap_line::@4 to bitmap_line_ydxi [phi:bitmap_line::@4->bitmap_line_ydxi]
bitmap_line_ydxi_from_b4:
// [676] phi (byte) bitmap_line_ydxi::y1#6 = (byte) bitmap_line_ydxi::y1#0 [phi:bitmap_line::@4->bitmap_line_ydxi#0] -- register_copy
// [676] phi (byte) bitmap_line_ydxi::yd#5 = (byte) bitmap_line_ydxi::yd#0 [phi:bitmap_line::@4->bitmap_line_ydxi#1] -- register_copy
// [676] phi (byte) bitmap_line_ydxi::y#6 = (byte) bitmap_line_ydxi::y#0 [phi:bitmap_line::@4->bitmap_line_ydxi#2] -- register_copy
// [676] phi (byte) bitmap_line_ydxi::x#5 = (byte) bitmap_line_ydxi::x#0 [phi:bitmap_line::@4->bitmap_line_ydxi#3] -- register_copy
// [676] phi (byte) bitmap_line_ydxi::xd#2 = (byte) bitmap_line_ydxi::xd#0 [phi:bitmap_line::@4->bitmap_line_ydxi#4] -- register_copy
jsr bitmap_line_ydxi
jmp breturn
// bitmap_line::@return
breturn:
// [603] return
rts
// bitmap_line::@8
b8:
// [604] (byte) bitmap_line_xdyi::x#0 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2
lda.z x1
sta.z bitmap_line_xdyi.x
// [605] (byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2
lda.z y1
sta.z bitmap_line_xdyi.y
// [606] (byte) bitmap_line_xdyi::x1#0 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2
lda.z x0
sta.z bitmap_line_xdyi.x1
// [607] (byte) bitmap_line_xdyi::xd#0 ← (byte) bitmap_line::xd#2 -- vbuz1=vbuz2
lda.z xd_2
sta.z bitmap_line_xdyi.xd
// [608] (byte) bitmap_line_xdyi::yd#0 ← (byte) bitmap_line::yd#2 -- vbuz1=vbuz2
lda.z yd_2
sta.z bitmap_line_xdyi.yd
// [609] call bitmap_line_xdyi
// [654] phi from bitmap_line::@8 to bitmap_line_xdyi [phi:bitmap_line::@8->bitmap_line_xdyi]
bitmap_line_xdyi_from_b8:
// [654] phi (byte) bitmap_line_xdyi::x1#6 = (byte) bitmap_line_xdyi::x1#0 [phi:bitmap_line::@8->bitmap_line_xdyi#0] -- register_copy
// [654] phi (byte) bitmap_line_xdyi::xd#5 = (byte) bitmap_line_xdyi::xd#0 [phi:bitmap_line::@8->bitmap_line_xdyi#1] -- register_copy
// [654] phi (byte) bitmap_line_xdyi::y#5 = (byte) bitmap_line_xdyi::y#0 [phi:bitmap_line::@8->bitmap_line_xdyi#2] -- register_copy
// [654] phi (byte) bitmap_line_xdyi::x#6 = (byte) bitmap_line_xdyi::x#0 [phi:bitmap_line::@8->bitmap_line_xdyi#3] -- register_copy
// [654] phi (byte) bitmap_line_xdyi::yd#2 = (byte) bitmap_line_xdyi::yd#0 [phi:bitmap_line::@8->bitmap_line_xdyi#4] -- register_copy
jsr bitmap_line_xdyi
jmp breturn
// bitmap_line::@7
b7:
// [610] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuz1=vbuz2_minus_vbuz3
lda.z y1
sec
sbc.z y0
sta.z yd
// [611] if((byte) bitmap_line::yd#1<(byte) bitmap_line::xd#2) goto bitmap_line::@9 -- vbuz1_lt_vbuz2_then_la1
lda.z yd
cmp.z xd_2
bcc b9
jmp b10
// bitmap_line::@10
b10:
// [612] (byte) bitmap_line_ydxd::y#0 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2
lda.z y0
sta.z bitmap_line_ydxd.y
// [613] (byte) bitmap_line_ydxd::x#0 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2
lda.z x0
sta.z bitmap_line_ydxd.x
// [614] (byte) bitmap_line_ydxd::y1#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2
lda.z y1
sta.z bitmap_line_ydxd.y1
// [615] (byte) bitmap_line_ydxd::yd#0 ← (byte) bitmap_line::yd#1 -- vbuz1=vbuz2
lda.z yd
sta.z bitmap_line_ydxd.yd
// [616] (byte) bitmap_line_ydxd::xd#0 ← (byte) bitmap_line::xd#2 -- vbuz1=vbuz2
lda.z xd_2
sta.z bitmap_line_ydxd.xd
// [617] call bitmap_line_ydxd
// [706] phi from bitmap_line::@10 to bitmap_line_ydxd [phi:bitmap_line::@10->bitmap_line_ydxd]
bitmap_line_ydxd_from_b10:
// [706] phi (byte) bitmap_line_ydxd::y1#6 = (byte) bitmap_line_ydxd::y1#0 [phi:bitmap_line::@10->bitmap_line_ydxd#0] -- register_copy
// [706] phi (byte) bitmap_line_ydxd::yd#5 = (byte) bitmap_line_ydxd::yd#0 [phi:bitmap_line::@10->bitmap_line_ydxd#1] -- register_copy
// [706] phi (byte) bitmap_line_ydxd::y#7 = (byte) bitmap_line_ydxd::y#0 [phi:bitmap_line::@10->bitmap_line_ydxd#2] -- register_copy
// [706] phi (byte) bitmap_line_ydxd::x#5 = (byte) bitmap_line_ydxd::x#0 [phi:bitmap_line::@10->bitmap_line_ydxd#3] -- register_copy
// [706] phi (byte) bitmap_line_ydxd::xd#2 = (byte) bitmap_line_ydxd::xd#0 [phi:bitmap_line::@10->bitmap_line_ydxd#4] -- register_copy
jsr bitmap_line_ydxd
jmp breturn
// bitmap_line::@9
b9:
// [618] (byte) bitmap_line_xdyd::x#0 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2
lda.z x1
sta.z bitmap_line_xdyd.x
// [619] (byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2
lda.z y1
sta.z bitmap_line_xdyd.y
// [620] (byte) bitmap_line_xdyd::x1#0 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2
lda.z x0
sta.z bitmap_line_xdyd.x1
// [621] (byte) bitmap_line_xdyd::xd#0 ← (byte) bitmap_line::xd#2 -- vbuz1=vbuz2
lda.z xd_2
sta.z bitmap_line_xdyd.xd
// [622] (byte) bitmap_line_xdyd::yd#0 ← (byte) bitmap_line::yd#1 -- vbuz1=vbuz2
lda.z yd
sta.z bitmap_line_xdyd.yd
// [623] call bitmap_line_xdyd
// [691] phi from bitmap_line::@9 to bitmap_line_xdyd [phi:bitmap_line::@9->bitmap_line_xdyd]
bitmap_line_xdyd_from_b9:
// [691] phi (byte) bitmap_line_xdyd::x1#6 = (byte) bitmap_line_xdyd::x1#0 [phi:bitmap_line::@9->bitmap_line_xdyd#0] -- register_copy
// [691] phi (byte) bitmap_line_xdyd::xd#5 = (byte) bitmap_line_xdyd::xd#0 [phi:bitmap_line::@9->bitmap_line_xdyd#1] -- register_copy
// [691] phi (byte) bitmap_line_xdyd::y#5 = (byte) bitmap_line_xdyd::y#0 [phi:bitmap_line::@9->bitmap_line_xdyd#2] -- register_copy
// [691] phi (byte) bitmap_line_xdyd::x#6 = (byte) bitmap_line_xdyd::x#0 [phi:bitmap_line::@9->bitmap_line_xdyd#3] -- register_copy
// [691] phi (byte) bitmap_line_xdyd::yd#2 = (byte) bitmap_line_xdyd::yd#0 [phi:bitmap_line::@9->bitmap_line_xdyd#4] -- register_copy
jsr bitmap_line_xdyd
jmp breturn
// bitmap_line::@1
b1:
// [624] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 -- vbuz1=vbuz2_minus_vbuz3
lda.z x1
sec
sbc.z x0
sta.z xd
// [625] if((byte) bitmap_line::y0#0<(byte) bitmap_line::y1#0) goto bitmap_line::@11 -- vbuz1_lt_vbuz2_then_la1
lda.z y0
cmp.z y1
bcc b11
jmp b5
// bitmap_line::@5
b5:
// [626] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuz1=vbuz2_minus_vbuz3
lda.z y0
sec
sbc.z y1
sta.z yd_10
// [627] if((byte) bitmap_line::yd#10<(byte) bitmap_line::xd#1) goto bitmap_line::@12 -- vbuz1_lt_vbuz2_then_la1
lda.z yd_10
cmp.z xd
bcc b12
jmp b6
// bitmap_line::@6
b6:
// [628] (byte) bitmap_line_ydxd::y#1 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2
lda.z y1
sta.z bitmap_line_ydxd.y
// [629] (byte) bitmap_line_ydxd::x#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2
lda.z x1
sta.z bitmap_line_ydxd.x
// [630] (byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2
lda.z y0
sta.z bitmap_line_ydxd.y1
// [631] (byte) bitmap_line_ydxd::yd#1 ← (byte) bitmap_line::yd#10 -- vbuz1=vbuz2
lda.z yd_10
sta.z bitmap_line_ydxd.yd
// [632] (byte) bitmap_line_ydxd::xd#1 ← (byte) bitmap_line::xd#1 -- vbuz1=vbuz2
lda.z xd
sta.z bitmap_line_ydxd.xd
// [633] call bitmap_line_ydxd
// [706] phi from bitmap_line::@6 to bitmap_line_ydxd [phi:bitmap_line::@6->bitmap_line_ydxd]
bitmap_line_ydxd_from_b6:
// [706] phi (byte) bitmap_line_ydxd::y1#6 = (byte) bitmap_line_ydxd::y1#1 [phi:bitmap_line::@6->bitmap_line_ydxd#0] -- register_copy
// [706] phi (byte) bitmap_line_ydxd::yd#5 = (byte) bitmap_line_ydxd::yd#1 [phi:bitmap_line::@6->bitmap_line_ydxd#1] -- register_copy
// [706] phi (byte) bitmap_line_ydxd::y#7 = (byte) bitmap_line_ydxd::y#1 [phi:bitmap_line::@6->bitmap_line_ydxd#2] -- register_copy
// [706] phi (byte) bitmap_line_ydxd::x#5 = (byte) bitmap_line_ydxd::x#1 [phi:bitmap_line::@6->bitmap_line_ydxd#3] -- register_copy
// [706] phi (byte) bitmap_line_ydxd::xd#2 = (byte) bitmap_line_ydxd::xd#1 [phi:bitmap_line::@6->bitmap_line_ydxd#4] -- register_copy
jsr bitmap_line_ydxd
jmp breturn
// bitmap_line::@12
b12:
// [634] (byte) bitmap_line_xdyd::x#1 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2
lda.z x0
sta.z bitmap_line_xdyd.x
// [635] (byte) bitmap_line_xdyd::y#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2
lda.z y0
sta.z bitmap_line_xdyd.y
// [636] (byte) bitmap_line_xdyd::x1#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2
lda.z x1
sta.z bitmap_line_xdyd.x1
// [637] (byte) bitmap_line_xdyd::xd#1 ← (byte) bitmap_line::xd#1 -- vbuz1=vbuz2
lda.z xd
sta.z bitmap_line_xdyd.xd
// [638] (byte) bitmap_line_xdyd::yd#1 ← (byte) bitmap_line::yd#10 -- vbuz1=vbuz2
lda.z yd_10
sta.z bitmap_line_xdyd.yd
// [639] call bitmap_line_xdyd
// [691] phi from bitmap_line::@12 to bitmap_line_xdyd [phi:bitmap_line::@12->bitmap_line_xdyd]
bitmap_line_xdyd_from_b12:
// [691] phi (byte) bitmap_line_xdyd::x1#6 = (byte) bitmap_line_xdyd::x1#1 [phi:bitmap_line::@12->bitmap_line_xdyd#0] -- register_copy
// [691] phi (byte) bitmap_line_xdyd::xd#5 = (byte) bitmap_line_xdyd::xd#1 [phi:bitmap_line::@12->bitmap_line_xdyd#1] -- register_copy
// [691] phi (byte) bitmap_line_xdyd::y#5 = (byte) bitmap_line_xdyd::y#1 [phi:bitmap_line::@12->bitmap_line_xdyd#2] -- register_copy
// [691] phi (byte) bitmap_line_xdyd::x#6 = (byte) bitmap_line_xdyd::x#1 [phi:bitmap_line::@12->bitmap_line_xdyd#3] -- register_copy
// [691] phi (byte) bitmap_line_xdyd::yd#2 = (byte) bitmap_line_xdyd::yd#1 [phi:bitmap_line::@12->bitmap_line_xdyd#4] -- register_copy
jsr bitmap_line_xdyd
jmp breturn
// bitmap_line::@11
b11:
// [640] (byte) bitmap_line::yd#11 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuz1=vbuz2_minus_vbuz3
lda.z y1
sec
sbc.z y0
sta.z yd_11
// [641] if((byte) bitmap_line::yd#11<(byte) bitmap_line::xd#1) goto bitmap_line::@13 -- vbuz1_lt_vbuz2_then_la1
lda.z yd_11
cmp.z xd
bcc b13
jmp b14
// bitmap_line::@14
b14:
// [642] (byte) bitmap_line_ydxi::y#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2
lda.z y0
sta.z bitmap_line_ydxi.y
// [643] (byte) bitmap_line_ydxi::x#1 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2
lda.z x0
sta.z bitmap_line_ydxi.x
// [644] (byte) bitmap_line_ydxi::y1#1 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2
lda.z y1
sta.z bitmap_line_ydxi.y1
// [645] (byte) bitmap_line_ydxi::yd#1 ← (byte) bitmap_line::yd#11 -- vbuz1=vbuz2
lda.z yd_11
sta.z bitmap_line_ydxi.yd
// [646] (byte) bitmap_line_ydxi::xd#1 ← (byte) bitmap_line::xd#1 -- vbuz1=vbuz2
lda.z xd
sta.z bitmap_line_ydxi.xd
// [647] call bitmap_line_ydxi
// [676] phi from bitmap_line::@14 to bitmap_line_ydxi [phi:bitmap_line::@14->bitmap_line_ydxi]
bitmap_line_ydxi_from_b14:
// [676] phi (byte) bitmap_line_ydxi::y1#6 = (byte) bitmap_line_ydxi::y1#1 [phi:bitmap_line::@14->bitmap_line_ydxi#0] -- register_copy
// [676] phi (byte) bitmap_line_ydxi::yd#5 = (byte) bitmap_line_ydxi::yd#1 [phi:bitmap_line::@14->bitmap_line_ydxi#1] -- register_copy
// [676] phi (byte) bitmap_line_ydxi::y#6 = (byte) bitmap_line_ydxi::y#1 [phi:bitmap_line::@14->bitmap_line_ydxi#2] -- register_copy
// [676] phi (byte) bitmap_line_ydxi::x#5 = (byte) bitmap_line_ydxi::x#1 [phi:bitmap_line::@14->bitmap_line_ydxi#3] -- register_copy
// [676] phi (byte) bitmap_line_ydxi::xd#2 = (byte) bitmap_line_ydxi::xd#1 [phi:bitmap_line::@14->bitmap_line_ydxi#4] -- register_copy
jsr bitmap_line_ydxi
jmp breturn
// bitmap_line::@13
b13:
// [648] (byte) bitmap_line_xdyi::x#1 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2
lda.z x0
sta.z bitmap_line_xdyi.x
// [649] (byte) bitmap_line_xdyi::y#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2
lda.z y0
sta.z bitmap_line_xdyi.y
// [650] (byte) bitmap_line_xdyi::x1#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2
lda.z x1
sta.z bitmap_line_xdyi.x1
// [651] (byte) bitmap_line_xdyi::xd#1 ← (byte) bitmap_line::xd#1 -- vbuz1=vbuz2
lda.z xd
sta.z bitmap_line_xdyi.xd
// [652] (byte) bitmap_line_xdyi::yd#1 ← (byte) bitmap_line::yd#11 -- vbuz1=vbuz2
lda.z yd_11
sta.z bitmap_line_xdyi.yd
// [653] call bitmap_line_xdyi
// [654] phi from bitmap_line::@13 to bitmap_line_xdyi [phi:bitmap_line::@13->bitmap_line_xdyi]
bitmap_line_xdyi_from_b13:
// [654] phi (byte) bitmap_line_xdyi::x1#6 = (byte) bitmap_line_xdyi::x1#1 [phi:bitmap_line::@13->bitmap_line_xdyi#0] -- register_copy
// [654] phi (byte) bitmap_line_xdyi::xd#5 = (byte) bitmap_line_xdyi::xd#1 [phi:bitmap_line::@13->bitmap_line_xdyi#1] -- register_copy
// [654] phi (byte) bitmap_line_xdyi::y#5 = (byte) bitmap_line_xdyi::y#1 [phi:bitmap_line::@13->bitmap_line_xdyi#2] -- register_copy
// [654] phi (byte) bitmap_line_xdyi::x#6 = (byte) bitmap_line_xdyi::x#1 [phi:bitmap_line::@13->bitmap_line_xdyi#3] -- register_copy
// [654] phi (byte) bitmap_line_xdyi::yd#2 = (byte) bitmap_line_xdyi::yd#1 [phi:bitmap_line::@13->bitmap_line_xdyi#4] -- register_copy
jsr bitmap_line_xdyi
jmp breturn
}
// bitmap_line_xdyi
// bitmap_line_xdyi(byte zeropage($64) x, byte zeropage($65) y, byte zeropage($63) x1, byte zeropage($62) xd, byte zeropage($61) yd)
bitmap_line_xdyi: {
.label _6 = $102
.label x = $64
.label y = $65
.label x1 = $63
.label xd = $62
.label yd = $61
.label e = $66
// [655] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte) 1 -- vbuz1=vbuz2_ror_1
lda.z yd
lsr
sta.z e
// [656] phi from bitmap_line_xdyi bitmap_line_xdyi::@2 to bitmap_line_xdyi::@1 [phi:bitmap_line_xdyi/bitmap_line_xdyi::@2->bitmap_line_xdyi::@1]
b1_from_bitmap_line_xdyi:
b1_from_b2:
// [656] phi (byte) bitmap_line_xdyi::e#3 = (byte) bitmap_line_xdyi::e#0 [phi:bitmap_line_xdyi/bitmap_line_xdyi::@2->bitmap_line_xdyi::@1#0] -- register_copy
// [656] phi (byte) bitmap_line_xdyi::y#3 = (byte) bitmap_line_xdyi::y#5 [phi:bitmap_line_xdyi/bitmap_line_xdyi::@2->bitmap_line_xdyi::@1#1] -- register_copy
// [656] phi (byte) bitmap_line_xdyi::x#3 = (byte) bitmap_line_xdyi::x#6 [phi:bitmap_line_xdyi/bitmap_line_xdyi::@2->bitmap_line_xdyi::@1#2] -- register_copy
jmp b1
// bitmap_line_xdyi::@1
b1:
// [657] (byte) bitmap_plot::x#0 ← (byte) bitmap_line_xdyi::x#3 -- vbuz1=vbuz2
lda.z x
sta.z bitmap_plot.x
// [658] (byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3 -- vbuz1=vbuz2
lda.z y
sta.z bitmap_plot.y
// [659] call bitmap_plot
// [669] phi from bitmap_line_xdyi::@1 to bitmap_plot [phi:bitmap_line_xdyi::@1->bitmap_plot]
bitmap_plot_from_b1:
// [669] phi (byte) bitmap_plot::y#4 = (byte) bitmap_plot::y#0 [phi:bitmap_line_xdyi::@1->bitmap_plot#0] -- register_copy
// [669] phi (byte) bitmap_plot::x#4 = (byte) bitmap_plot::x#0 [phi:bitmap_line_xdyi::@1->bitmap_plot#1] -- register_copy
jsr bitmap_plot
jmp b4
// bitmap_line_xdyi::@4
b4:
// [660] (byte) bitmap_line_xdyi::x#2 ← ++ (byte) bitmap_line_xdyi::x#3 -- vbuz1=_inc_vbuz1
inc.z x
// [661] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 -- vbuz1=vbuz1_plus_vbuz2
lda.z e
clc
adc.z yd
sta.z e
// [662] if((byte) bitmap_line_xdyi::xd#5>=(byte) bitmap_line_xdyi::e#1) goto bitmap_line_xdyi::@2 -- vbuz1_ge_vbuz2_then_la1
lda.z xd
cmp.z e
bcs b2_from_b4
jmp b3
// bitmap_line_xdyi::@3
b3:
// [663] (byte) bitmap_line_xdyi::y#2 ← ++ (byte) bitmap_line_xdyi::y#3 -- vbuz1=_inc_vbuz1
inc.z y
// [664] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 -- vbuz1=vbuz1_minus_vbuz2
lda.z e
sec
sbc.z xd
sta.z e
// [665] phi from bitmap_line_xdyi::@3 bitmap_line_xdyi::@4 to bitmap_line_xdyi::@2 [phi:bitmap_line_xdyi::@3/bitmap_line_xdyi::@4->bitmap_line_xdyi::@2]
b2_from_b3:
b2_from_b4:
// [665] phi (byte) bitmap_line_xdyi::e#6 = (byte) bitmap_line_xdyi::e#2 [phi:bitmap_line_xdyi::@3/bitmap_line_xdyi::@4->bitmap_line_xdyi::@2#0] -- register_copy
// [665] phi (byte) bitmap_line_xdyi::y#6 = (byte) bitmap_line_xdyi::y#2 [phi:bitmap_line_xdyi::@3/bitmap_line_xdyi::@4->bitmap_line_xdyi::@2#1] -- register_copy
jmp b2
// bitmap_line_xdyi::@2
b2:
// [666] (byte~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#6 + (byte) 1 -- vbuz1=vbuz2_plus_1
ldy.z x1
iny
sty.z _6
// [667] if((byte) bitmap_line_xdyi::x#2!=(byte~) bitmap_line_xdyi::$6) goto bitmap_line_xdyi::@1 -- vbuz1_neq_vbuz2_then_la1
lda.z x
cmp.z _6
bne b1_from_b2
jmp breturn
// bitmap_line_xdyi::@return
breturn:
// [668] return
rts
}
// bitmap_plot
// bitmap_plot(byte zeropage($67) x, byte zeropage($68) y)
bitmap_plot: {
.label _1 = $109
.label plotter_x = $103
.label plotter_y = $105
.label plotter = $107
.label x = $67
.label y = $68
// [670] (word) bitmap_plot::plotter_x#0 ← *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) -- vwuz1=pbuc1_derefidx_vbuz2_word_pbuc2_derefidx_vbuz2
ldy.z x
lda bitmap_plot_xhi,y
sta.z plotter_x+1
lda bitmap_plot_xlo,y
sta.z plotter_x
// [671] (word) bitmap_plot::plotter_y#0 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) -- vwuz1=pbuc1_derefidx_vbuz2_word_pbuc2_derefidx_vbuz2
ldy.z y
lda bitmap_plot_yhi,y
sta.z plotter_y+1
lda bitmap_plot_ylo,y
sta.z plotter_y
// [672] (word) bitmap_plot::plotter#0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 -- vwuz1=vwuz2_plus_vwuz3
lda.z plotter_x
clc
adc.z plotter_y
sta.z plotter
lda.z plotter_x+1
adc.z plotter_y+1
sta.z plotter+1
// [673] (byte~) bitmap_plot::$1 ← *((byte*)(word) bitmap_plot::plotter#0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) -- vbuz1=_deref_pbuz2_bor_pbuc1_derefidx_vbuz3
ldy #0
lda (plotter),y
ldy.z x
ora bitmap_plot_bit,y
sta.z _1
// [674] *((byte*)(word) bitmap_plot::plotter#0) ← (byte~) bitmap_plot::$1 -- _deref_pbuz1=vbuz2
lda.z _1
ldy #0
sta (plotter),y
jmp breturn
// bitmap_plot::@return
breturn:
// [675] return
rts
}
// bitmap_line_ydxi
// bitmap_line_ydxi(byte zeropage($6d) y, byte zeropage($6c) x, byte zeropage($6b) y1, byte zeropage($6a) yd, byte zeropage($69) xd)
bitmap_line_ydxi: {
.label _6 = $10a
.label y = $6d
.label x = $6c
.label y1 = $6b
.label yd = $6a
.label xd = $69
.label e = $6e
// [677] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte) 1 -- vbuz1=vbuz2_ror_1
lda.z xd
lsr
sta.z e
// [678] phi from bitmap_line_ydxi bitmap_line_ydxi::@2 to bitmap_line_ydxi::@1 [phi:bitmap_line_ydxi/bitmap_line_ydxi::@2->bitmap_line_ydxi::@1]
b1_from_bitmap_line_ydxi:
b1_from_b2:
// [678] phi (byte) bitmap_line_ydxi::e#3 = (byte) bitmap_line_ydxi::e#0 [phi:bitmap_line_ydxi/bitmap_line_ydxi::@2->bitmap_line_ydxi::@1#0] -- register_copy
// [678] phi (byte) bitmap_line_ydxi::y#3 = (byte) bitmap_line_ydxi::y#6 [phi:bitmap_line_ydxi/bitmap_line_ydxi::@2->bitmap_line_ydxi::@1#1] -- register_copy
// [678] phi (byte) bitmap_line_ydxi::x#3 = (byte) bitmap_line_ydxi::x#5 [phi:bitmap_line_ydxi/bitmap_line_ydxi::@2->bitmap_line_ydxi::@1#2] -- register_copy
jmp b1
// bitmap_line_ydxi::@1
b1:
// [679] (byte) bitmap_plot::x#2 ← (byte) bitmap_line_ydxi::x#3 -- vbuz1=vbuz2
lda.z x
sta.z bitmap_plot.x
// [680] (byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3 -- vbuz1=vbuz2
lda.z y
sta.z bitmap_plot.y
// [681] call bitmap_plot
// [669] phi from bitmap_line_ydxi::@1 to bitmap_plot [phi:bitmap_line_ydxi::@1->bitmap_plot]
bitmap_plot_from_b1:
// [669] phi (byte) bitmap_plot::y#4 = (byte) bitmap_plot::y#2 [phi:bitmap_line_ydxi::@1->bitmap_plot#0] -- register_copy
// [669] phi (byte) bitmap_plot::x#4 = (byte) bitmap_plot::x#2 [phi:bitmap_line_ydxi::@1->bitmap_plot#1] -- register_copy
jsr bitmap_plot
jmp b4
// bitmap_line_ydxi::@4
b4:
// [682] (byte) bitmap_line_ydxi::y#2 ← ++ (byte) bitmap_line_ydxi::y#3 -- vbuz1=_inc_vbuz1
inc.z y
// [683] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 -- vbuz1=vbuz1_plus_vbuz2
lda.z e
clc
adc.z xd
sta.z e
// [684] if((byte) bitmap_line_ydxi::yd#5>=(byte) bitmap_line_ydxi::e#1) goto bitmap_line_ydxi::@2 -- vbuz1_ge_vbuz2_then_la1
lda.z yd
cmp.z e
bcs b2_from_b4
jmp b3
// bitmap_line_ydxi::@3
b3:
// [685] (byte) bitmap_line_ydxi::x#2 ← ++ (byte) bitmap_line_ydxi::x#3 -- vbuz1=_inc_vbuz1
inc.z x
// [686] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 -- vbuz1=vbuz1_minus_vbuz2
lda.z e
sec
sbc.z yd
sta.z e
// [687] phi from bitmap_line_ydxi::@3 bitmap_line_ydxi::@4 to bitmap_line_ydxi::@2 [phi:bitmap_line_ydxi::@3/bitmap_line_ydxi::@4->bitmap_line_ydxi::@2]
b2_from_b3:
b2_from_b4:
// [687] phi (byte) bitmap_line_ydxi::e#6 = (byte) bitmap_line_ydxi::e#2 [phi:bitmap_line_ydxi::@3/bitmap_line_ydxi::@4->bitmap_line_ydxi::@2#0] -- register_copy
// [687] phi (byte) bitmap_line_ydxi::x#6 = (byte) bitmap_line_ydxi::x#2 [phi:bitmap_line_ydxi::@3/bitmap_line_ydxi::@4->bitmap_line_ydxi::@2#1] -- register_copy
jmp b2
// bitmap_line_ydxi::@2
b2:
// [688] (byte~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#6 + (byte) 1 -- vbuz1=vbuz2_plus_1
ldy.z y1
iny
sty.z _6
// [689] if((byte) bitmap_line_ydxi::y#2!=(byte~) bitmap_line_ydxi::$6) goto bitmap_line_ydxi::@1 -- vbuz1_neq_vbuz2_then_la1
lda.z y
cmp.z _6
bne b1_from_b2
jmp breturn
// bitmap_line_ydxi::@return
breturn:
// [690] return
rts
}
// bitmap_line_xdyd
// bitmap_line_xdyd(byte zeropage($72) x, byte zeropage($73) y, byte zeropage($71) x1, byte zeropage($70) xd, byte zeropage($6f) yd)
bitmap_line_xdyd: {
.label _6 = $10b
.label x = $72
.label y = $73
.label x1 = $71
.label xd = $70
.label yd = $6f
.label e = $74
// [692] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte) 1 -- vbuz1=vbuz2_ror_1
lda.z yd
lsr
sta.z e
// [693] phi from bitmap_line_xdyd bitmap_line_xdyd::@2 to bitmap_line_xdyd::@1 [phi:bitmap_line_xdyd/bitmap_line_xdyd::@2->bitmap_line_xdyd::@1]
b1_from_bitmap_line_xdyd:
b1_from_b2:
// [693] phi (byte) bitmap_line_xdyd::e#3 = (byte) bitmap_line_xdyd::e#0 [phi:bitmap_line_xdyd/bitmap_line_xdyd::@2->bitmap_line_xdyd::@1#0] -- register_copy
// [693] phi (byte) bitmap_line_xdyd::y#3 = (byte) bitmap_line_xdyd::y#5 [phi:bitmap_line_xdyd/bitmap_line_xdyd::@2->bitmap_line_xdyd::@1#1] -- register_copy
// [693] phi (byte) bitmap_line_xdyd::x#3 = (byte) bitmap_line_xdyd::x#6 [phi:bitmap_line_xdyd/bitmap_line_xdyd::@2->bitmap_line_xdyd::@1#2] -- register_copy
jmp b1
// bitmap_line_xdyd::@1
b1:
// [694] (byte) bitmap_plot::x#1 ← (byte) bitmap_line_xdyd::x#3 -- vbuz1=vbuz2
lda.z x
sta.z bitmap_plot.x
// [695] (byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3 -- vbuz1=vbuz2
lda.z y
sta.z bitmap_plot.y
// [696] call bitmap_plot
// [669] phi from bitmap_line_xdyd::@1 to bitmap_plot [phi:bitmap_line_xdyd::@1->bitmap_plot]
bitmap_plot_from_b1:
// [669] phi (byte) bitmap_plot::y#4 = (byte) bitmap_plot::y#1 [phi:bitmap_line_xdyd::@1->bitmap_plot#0] -- register_copy
// [669] phi (byte) bitmap_plot::x#4 = (byte) bitmap_plot::x#1 [phi:bitmap_line_xdyd::@1->bitmap_plot#1] -- register_copy
jsr bitmap_plot
jmp b4
// bitmap_line_xdyd::@4
b4:
// [697] (byte) bitmap_line_xdyd::x#2 ← ++ (byte) bitmap_line_xdyd::x#3 -- vbuz1=_inc_vbuz1
inc.z x
// [698] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 -- vbuz1=vbuz1_plus_vbuz2
lda.z e
clc
adc.z yd
sta.z e
// [699] if((byte) bitmap_line_xdyd::xd#5>=(byte) bitmap_line_xdyd::e#1) goto bitmap_line_xdyd::@2 -- vbuz1_ge_vbuz2_then_la1
lda.z xd
cmp.z e
bcs b2_from_b4
jmp b3
// bitmap_line_xdyd::@3
b3:
// [700] (byte) bitmap_line_xdyd::y#2 ← -- (byte) bitmap_line_xdyd::y#3 -- vbuz1=_dec_vbuz1
dec.z y
// [701] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 -- vbuz1=vbuz1_minus_vbuz2
lda.z e
sec
sbc.z xd
sta.z e
// [702] phi from bitmap_line_xdyd::@3 bitmap_line_xdyd::@4 to bitmap_line_xdyd::@2 [phi:bitmap_line_xdyd::@3/bitmap_line_xdyd::@4->bitmap_line_xdyd::@2]
b2_from_b3:
b2_from_b4:
// [702] phi (byte) bitmap_line_xdyd::e#6 = (byte) bitmap_line_xdyd::e#2 [phi:bitmap_line_xdyd::@3/bitmap_line_xdyd::@4->bitmap_line_xdyd::@2#0] -- register_copy
// [702] phi (byte) bitmap_line_xdyd::y#6 = (byte) bitmap_line_xdyd::y#2 [phi:bitmap_line_xdyd::@3/bitmap_line_xdyd::@4->bitmap_line_xdyd::@2#1] -- register_copy
jmp b2
// bitmap_line_xdyd::@2
b2:
// [703] (byte~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#6 + (byte) 1 -- vbuz1=vbuz2_plus_1
ldy.z x1
iny
sty.z _6
// [704] if((byte) bitmap_line_xdyd::x#2!=(byte~) bitmap_line_xdyd::$6) goto bitmap_line_xdyd::@1 -- vbuz1_neq_vbuz2_then_la1
lda.z x
cmp.z _6
bne b1_from_b2
jmp breturn
// bitmap_line_xdyd::@return
breturn:
// [705] return
rts
}
// bitmap_line_ydxd
// bitmap_line_ydxd(byte zeropage($79) y, byte zeropage($78) x, byte zeropage($77) y1, byte zeropage($76) yd, byte zeropage($75) xd)
bitmap_line_ydxd: {
.label _6 = $10c
.label y = $79
.label x = $78
.label y1 = $77
.label yd = $76
.label xd = $75
.label e = $7a
// [707] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte) 1 -- vbuz1=vbuz2_ror_1
lda.z xd
lsr
sta.z e
// [708] phi from bitmap_line_ydxd bitmap_line_ydxd::@2 to bitmap_line_ydxd::@1 [phi:bitmap_line_ydxd/bitmap_line_ydxd::@2->bitmap_line_ydxd::@1]
b1_from_bitmap_line_ydxd:
b1_from_b2:
// [708] phi (byte) bitmap_line_ydxd::e#3 = (byte) bitmap_line_ydxd::e#0 [phi:bitmap_line_ydxd/bitmap_line_ydxd::@2->bitmap_line_ydxd::@1#0] -- register_copy
// [708] phi (byte) bitmap_line_ydxd::y#2 = (byte) bitmap_line_ydxd::y#7 [phi:bitmap_line_ydxd/bitmap_line_ydxd::@2->bitmap_line_ydxd::@1#1] -- register_copy
// [708] phi (byte) bitmap_line_ydxd::x#3 = (byte) bitmap_line_ydxd::x#5 [phi:bitmap_line_ydxd/bitmap_line_ydxd::@2->bitmap_line_ydxd::@1#2] -- register_copy
jmp b1
// bitmap_line_ydxd::@1
b1:
// [709] (byte) bitmap_plot::x#3 ← (byte) bitmap_line_ydxd::x#3 -- vbuz1=vbuz2
lda.z x
sta.z bitmap_plot.x
// [710] (byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#2 -- vbuz1=vbuz2
lda.z y
sta.z bitmap_plot.y
// [711] call bitmap_plot
// [669] phi from bitmap_line_ydxd::@1 to bitmap_plot [phi:bitmap_line_ydxd::@1->bitmap_plot]
bitmap_plot_from_b1:
// [669] phi (byte) bitmap_plot::y#4 = (byte) bitmap_plot::y#3 [phi:bitmap_line_ydxd::@1->bitmap_plot#0] -- register_copy
// [669] phi (byte) bitmap_plot::x#4 = (byte) bitmap_plot::x#3 [phi:bitmap_line_ydxd::@1->bitmap_plot#1] -- register_copy
jsr bitmap_plot
jmp b4
// bitmap_line_ydxd::@4
b4:
// [712] (byte) bitmap_line_ydxd::y#3 ← ++ (byte) bitmap_line_ydxd::y#2 -- vbuz1=_inc_vbuz1
inc.z y
// [713] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 -- vbuz1=vbuz1_plus_vbuz2
lda.z e
clc
adc.z xd
sta.z e
// [714] if((byte) bitmap_line_ydxd::yd#5>=(byte) bitmap_line_ydxd::e#1) goto bitmap_line_ydxd::@2 -- vbuz1_ge_vbuz2_then_la1
lda.z yd
cmp.z e
bcs b2_from_b4
jmp b3
// bitmap_line_ydxd::@3
b3:
// [715] (byte) bitmap_line_ydxd::x#2 ← -- (byte) bitmap_line_ydxd::x#3 -- vbuz1=_dec_vbuz1
dec.z x
// [716] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 -- vbuz1=vbuz1_minus_vbuz2
lda.z e
sec
sbc.z yd
sta.z e
// [717] phi from bitmap_line_ydxd::@3 bitmap_line_ydxd::@4 to bitmap_line_ydxd::@2 [phi:bitmap_line_ydxd::@3/bitmap_line_ydxd::@4->bitmap_line_ydxd::@2]
b2_from_b3:
b2_from_b4:
// [717] phi (byte) bitmap_line_ydxd::e#6 = (byte) bitmap_line_ydxd::e#2 [phi:bitmap_line_ydxd::@3/bitmap_line_ydxd::@4->bitmap_line_ydxd::@2#0] -- register_copy
// [717] phi (byte) bitmap_line_ydxd::x#6 = (byte) bitmap_line_ydxd::x#2 [phi:bitmap_line_ydxd::@3/bitmap_line_ydxd::@4->bitmap_line_ydxd::@2#1] -- register_copy
jmp b2
// bitmap_line_ydxd::@2
b2:
// [718] (byte~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#6 + (byte) 1 -- vbuz1=vbuz2_plus_1
ldy.z y1
iny
sty.z _6
// [719] if((byte) bitmap_line_ydxd::y#3!=(byte~) bitmap_line_ydxd::$6) goto bitmap_line_ydxd::@1 -- vbuz1_neq_vbuz2_then_la1
lda.z y
cmp.z _6
bne b1_from_b2
jmp breturn
// bitmap_line_ydxd::@return
breturn:
// [720] return
rts
}
// bitmap_clear
// Clear all graphics on the bitmap
bitmap_clear: {
.label bitmap = $10d
.label bitmap_1 = $7c
.label x = $7e
.label y = $7b
.label bitmap_2 = $7c
.label bitmap_3 = $7c
.label bitmap_5 = $7c
// [721] (word) bitmap_clear::bitmap#0 ← *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2
lda bitmap_plot_xlo
sta.z bitmap
lda bitmap_plot_xhi
sta.z bitmap+1
// [722] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word) bitmap_clear::bitmap#0 -- pbuz1=pbuz2
lda.z bitmap
sta.z bitmap_5
lda.z bitmap+1
sta.z bitmap_5+1
// [723] phi from bitmap_clear to bitmap_clear::@1 [phi:bitmap_clear->bitmap_clear::@1]
b1_from_bitmap_clear:
// [723] phi (byte) bitmap_clear::y#4 = (byte) 0 [phi:bitmap_clear->bitmap_clear::@1#0] -- vbuz1=vbuc1
lda #0
sta.z y
// [723] phi (byte*) bitmap_clear::bitmap#3 = (byte*~) bitmap_clear::bitmap#5 [phi:bitmap_clear->bitmap_clear::@1#1] -- register_copy
jmp b1
// [723] phi from bitmap_clear::@3 to bitmap_clear::@1 [phi:bitmap_clear::@3->bitmap_clear::@1]
b1_from_b3:
// [723] phi (byte) bitmap_clear::y#4 = (byte) bitmap_clear::y#1 [phi:bitmap_clear::@3->bitmap_clear::@1#0] -- register_copy
// [723] phi (byte*) bitmap_clear::bitmap#3 = (byte*) bitmap_clear::bitmap#1 [phi:bitmap_clear::@3->bitmap_clear::@1#1] -- register_copy
jmp b1
// bitmap_clear::@1
b1:
// [724] phi from bitmap_clear::@1 to bitmap_clear::@2 [phi:bitmap_clear::@1->bitmap_clear::@2]
b2_from_b1:
// [724] phi (byte) bitmap_clear::x#2 = (byte) 0 [phi:bitmap_clear::@1->bitmap_clear::@2#0] -- vbuz1=vbuc1
lda #0
sta.z x
// [724] phi (byte*) bitmap_clear::bitmap#2 = (byte*) bitmap_clear::bitmap#3 [phi:bitmap_clear::@1->bitmap_clear::@2#1] -- register_copy
jmp b2
// [724] phi from bitmap_clear::@2 to bitmap_clear::@2 [phi:bitmap_clear::@2->bitmap_clear::@2]
b2_from_b2:
// [724] phi (byte) bitmap_clear::x#2 = (byte) bitmap_clear::x#1 [phi:bitmap_clear::@2->bitmap_clear::@2#0] -- register_copy
// [724] phi (byte*) bitmap_clear::bitmap#2 = (byte*) bitmap_clear::bitmap#1 [phi:bitmap_clear::@2->bitmap_clear::@2#1] -- register_copy
jmp b2
// bitmap_clear::@2
b2:
// [725] *((byte*) bitmap_clear::bitmap#2) ← (byte) 0 -- _deref_pbuz1=vbuc1
lda #0
ldy #0
sta (bitmap_2),y
// [726] (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1
inc.z bitmap_1
bne !+
inc.z bitmap_1+1
!:
// [727] (byte) bitmap_clear::x#1 ← ++ (byte) bitmap_clear::x#2 -- vbuz1=_inc_vbuz1
inc.z x
// [728] if((byte) bitmap_clear::x#1!=(byte) $c8) goto bitmap_clear::@2 -- vbuz1_neq_vbuc1_then_la1
lda #$c8
cmp.z x
bne b2_from_b2
jmp b3
// bitmap_clear::@3
b3:
// [729] (byte) bitmap_clear::y#1 ← ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1
inc.z y
// [730] if((byte) bitmap_clear::y#1!=(byte) $28) goto bitmap_clear::@1 -- vbuz1_neq_vbuc1_then_la1
lda #$28
cmp.z y
bne b1_from_b3
jmp breturn
// bitmap_clear::@return
breturn:
// [731] return
rts
}
// bitmap_init
// Initialize the bitmap plotter tables for a specific bitmap
bitmap_init: {
.label _0 = $10f
.label _7 = $111
.label _8 = $112
.label _9 = $113
.label _10 = $110
.label bits = $80
.label x = $7f
.label y = $81
.label yoffs = $82
// [733] phi from bitmap_init to bitmap_init::@1 [phi:bitmap_init->bitmap_init::@1]
b1_from_bitmap_init:
// [733] phi (byte) bitmap_init::bits#3 = (byte) $80 [phi:bitmap_init->bitmap_init::@1#0] -- vbuz1=vbuc1
lda #$80
sta.z bits
// [733] phi (byte) bitmap_init::x#2 = (byte) 0 [phi:bitmap_init->bitmap_init::@1#1] -- vbuz1=vbuc1
lda #0
sta.z x
jmp b1
// [733] phi from bitmap_init::@2 to bitmap_init::@1 [phi:bitmap_init::@2->bitmap_init::@1]
b1_from_b2:
// [733] phi (byte) bitmap_init::bits#3 = (byte) bitmap_init::bits#4 [phi:bitmap_init::@2->bitmap_init::@1#0] -- register_copy
// [733] phi (byte) bitmap_init::x#2 = (byte) bitmap_init::x#1 [phi:bitmap_init::@2->bitmap_init::@1#1] -- register_copy
jmp b1
// bitmap_init::@1
b1:
// [734] (byte~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (byte) $f8 -- vbuz1=vbuz2_band_vbuc1
lda #$f8
and.z x
sta.z _0
// [735] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$0 -- pbuc1_derefidx_vbuz1=vbuz2
lda.z _0
ldy.z x
sta bitmap_plot_xlo,y
// [736] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← >(const byte*) mode_stdbitmap::BITMAP#0 -- pbuc1_derefidx_vbuz1=vbuc2
lda #>mode_stdbitmap.BITMAP
ldy.z x
sta bitmap_plot_xhi,y
// [737] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuz1=vbuz2
lda.z bits
ldy.z x
sta bitmap_plot_bit,y
// [738] (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte) 1 -- vbuz1=vbuz1_ror_1
lsr.z bits
// [739] if((byte) bitmap_init::bits#1!=(byte) 0) goto bitmap_init::@6 -- vbuz1_neq_0_then_la1
lda.z bits
cmp #0
bne b6_from_b1
// [741] phi from bitmap_init::@1 to bitmap_init::@2 [phi:bitmap_init::@1->bitmap_init::@2]
b2_from_b1:
// [741] phi (byte) bitmap_init::bits#4 = (byte) $80 [phi:bitmap_init::@1->bitmap_init::@2#0] -- vbuz1=vbuc1
lda #$80
sta.z bits
jmp b2
// [740] phi from bitmap_init::@1 to bitmap_init::@6 [phi:bitmap_init::@1->bitmap_init::@6]
b6_from_b1:
jmp b6
// bitmap_init::@6
b6:
// [741] phi from bitmap_init::@6 to bitmap_init::@2 [phi:bitmap_init::@6->bitmap_init::@2]
b2_from_b6:
// [741] phi (byte) bitmap_init::bits#4 = (byte) bitmap_init::bits#1 [phi:bitmap_init::@6->bitmap_init::@2#0] -- register_copy
jmp b2
// bitmap_init::@2
b2:
// [742] (byte) bitmap_init::x#1 ← ++ (byte) bitmap_init::x#2 -- vbuz1=_inc_vbuz1
inc.z x
// [743] if((byte) bitmap_init::x#1!=(byte) 0) goto bitmap_init::@1 -- vbuz1_neq_0_then_la1
lda.z x
cmp #0
bne b1_from_b2
// [744] phi from bitmap_init::@2 to bitmap_init::@3 [phi:bitmap_init::@2->bitmap_init::@3]
b3_from_b2:
// [744] phi (byte*) bitmap_init::yoffs#2 = (byte*) 0 [phi:bitmap_init::@2->bitmap_init::@3#0] -- pbuz1=pbuc1
lda #<0
sta.z yoffs
lda #>0
sta.z yoffs+1
// [744] phi (byte) bitmap_init::y#2 = (byte) 0 [phi:bitmap_init::@2->bitmap_init::@3#1] -- vbuz1=vbuc1
lda #0
sta.z y
jmp b3
// [744] phi from bitmap_init::@4 to bitmap_init::@3 [phi:bitmap_init::@4->bitmap_init::@3]
b3_from_b4:
// [744] phi (byte*) bitmap_init::yoffs#2 = (byte*) bitmap_init::yoffs#4 [phi:bitmap_init::@4->bitmap_init::@3#0] -- register_copy
// [744] phi (byte) bitmap_init::y#2 = (byte) bitmap_init::y#1 [phi:bitmap_init::@4->bitmap_init::@3#1] -- register_copy
jmp b3
// bitmap_init::@3
b3:
// [745] (byte~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte) 7 -- vbuz1=vbuz2_band_vbuc1
lda #7
and.z y
sta.z _10
// [746] (byte~) bitmap_init::$7 ← < (byte*) bitmap_init::yoffs#2 -- vbuz1=_lo_pbuz2
lda.z yoffs
sta.z _7
// [747] (byte~) bitmap_init::$8 ← (byte~) bitmap_init::$10 | (byte~) bitmap_init::$7 -- vbuz1=vbuz2_bor_vbuz3
lda.z _10
ora.z _7
sta.z _8
// [748] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$8 -- pbuc1_derefidx_vbuz1=vbuz2
lda.z _8
ldy.z y
sta bitmap_plot_ylo,y
// [749] (byte~) bitmap_init::$9 ← > (byte*) bitmap_init::yoffs#2 -- vbuz1=_hi_pbuz2
lda.z yoffs+1
sta.z _9
// [750] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$9 -- pbuc1_derefidx_vbuz1=vbuz2
lda.z _9
ldy.z y
sta bitmap_plot_yhi,y
// [751] if((byte~) bitmap_init::$10!=(byte) 7) goto bitmap_init::@4 -- vbuz1_neq_vbuc1_then_la1
lda #7
cmp.z _10
bne b4_from_b3
jmp b5
// bitmap_init::@5
b5:
// [752] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (word)(number) $28*(number) 8 -- pbuz1=pbuz1_plus_vwuc1
clc
lda.z yoffs
adc #<$28*8
sta.z yoffs
lda.z yoffs+1
adc #>$28*8
sta.z yoffs+1
// [753] phi from bitmap_init::@3 bitmap_init::@5 to bitmap_init::@4 [phi:bitmap_init::@3/bitmap_init::@5->bitmap_init::@4]
b4_from_b3:
b4_from_b5:
// [753] phi (byte*) bitmap_init::yoffs#4 = (byte*) bitmap_init::yoffs#2 [phi:bitmap_init::@3/bitmap_init::@5->bitmap_init::@4#0] -- register_copy
jmp b4
// bitmap_init::@4
b4:
// [754] (byte) bitmap_init::y#1 ← ++ (byte) bitmap_init::y#2 -- vbuz1=_inc_vbuz1
inc.z y
// [755] if((byte) bitmap_init::y#1!=(byte) 0) goto bitmap_init::@3 -- vbuz1_neq_0_then_la1
lda.z y
cmp #0
bne b3_from_b4
jmp breturn
// bitmap_init::@return
breturn:
// [756] return
rts
}
// mode_mcchar
// Multicolor Character Mode (LINEAR/HICOL/CHUNK/COLDIS/BMM/ECM = 0, MCM = 1)
// Resolution: 160x200 (320x200)
// Normal VIC Adressing:
// VicGfxData[16]: ( VicBank[1:0] & CharBase[2:0] & CharData[7:0] & RowCounter[2:0] )
// GfxData Pixel Shifter (1) if ColorData[3:3] = 0:
// - 0: 4bpp BgColor0[3:0]
// - 1: 4bpp ColorData[2:0]
// GfxData Pixel Shifter (2) if ColorData[3:3] = 1:
// - 00: 4bpp BgColor0[3:0]
// - 01: 4bpp BgColor1[3:0]
// - 10: 4bpp BgColor2[3:0]
// - 11: 4bpp ColorData[2:0]// Standard Character Mode (LINEAR/HICOL/CHUNK/COLDIS/ECM/MCM/BMM = 0)
mode_mcchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $d800
.label _26 = $114
.label _27 = $115
.label _28 = $116
.label _29 = $117
.label _30 = $118
.label _31 = $119
.label i = $84
.label col = $87
.label ch = $89
.label cx = $86
.label cy = $85
// [757] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [758] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<DTV_COLOR_BANK_DEFAULT/$400
sta DTV_COLOR_BANK_LO
// [759] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [760] *((const byte*) DTV_CONTROL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_CONTROL
// [761] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2_PORT_A_DDR
// [762] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_mcchar::CHARSET#0/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2_PORT_A
// [763] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [764] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL|VIC_MCM
sta VIC_CONTROL2
// [765] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_mcchar::CHARSET#0&(word) $3fff/(word) $400 -- _deref_pbuc1=vbuc2
// VIC Memory Pointers
lda #(CHARSET&$3fff)/$400
sta VIC_MEMORY
// [766] phi from mode_mcchar to mode_mcchar::@1 [phi:mode_mcchar->mode_mcchar::@1]
b1_from_mode_mcchar:
// [766] phi (byte) mode_mcchar::i#2 = (byte) 0 [phi:mode_mcchar->mode_mcchar::@1#0] -- vbuz1=vbuc1
lda #0
sta.z i
jmp b1
// DTV Palette - default
// [766] phi from mode_mcchar::@1 to mode_mcchar::@1 [phi:mode_mcchar::@1->mode_mcchar::@1]
b1_from_b1:
// [766] phi (byte) mode_mcchar::i#2 = (byte) mode_mcchar::i#1 [phi:mode_mcchar::@1->mode_mcchar::@1#0] -- register_copy
jmp b1
// mode_mcchar::@1
b1:
// [767] *((const byte*) DTV_PALETTE#0 + (byte) mode_mcchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_mcchar::i#2) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1
ldy.z i
lda DTV_PALETTE_DEFAULT,y
sta DTV_PALETTE,y
// [768] (byte) mode_mcchar::i#1 ← ++ (byte) mode_mcchar::i#2 -- vbuz1=_inc_vbuz1
inc.z i
// [769] if((byte) mode_mcchar::i#1!=(byte) $10) goto mode_mcchar::@1 -- vbuz1_neq_vbuc1_then_la1
lda #$10
cmp.z i
bne b1_from_b1
jmp b2
// mode_mcchar::@2
b2:
// [770] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDERCOL
// [771] *((const byte*) BGCOL1#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2
lda #BLACK
sta BGCOL1
// [772] *((const byte*) BGCOL2#0) ← (const byte) GREEN#0 -- _deref_pbuc1=vbuc2
lda #GREEN
sta BGCOL2
// [773] *((const byte*) BGCOL3#0) ← (const byte) BLUE#0 -- _deref_pbuc1=vbuc2
lda #BLUE
sta BGCOL3
// [774] phi from mode_mcchar::@2 to mode_mcchar::@3 [phi:mode_mcchar::@2->mode_mcchar::@3]
b3_from_b2:
// [774] phi (byte*) mode_mcchar::ch#3 = (const byte*) mode_mcchar::SCREEN#0 [phi:mode_mcchar::@2->mode_mcchar::@3#0] -- pbuz1=pbuc1
lda #<SCREEN
sta.z ch
lda #>SCREEN
sta.z ch+1
// [774] phi (byte*) mode_mcchar::col#3 = (const byte*) mode_mcchar::COLORS#0 [phi:mode_mcchar::@2->mode_mcchar::@3#1] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [774] phi (byte) mode_mcchar::cy#4 = (byte) 0 [phi:mode_mcchar::@2->mode_mcchar::@3#2] -- vbuz1=vbuc1
lda #0
sta.z cy
jmp b3
// [774] phi from mode_mcchar::@5 to mode_mcchar::@3 [phi:mode_mcchar::@5->mode_mcchar::@3]
b3_from_b5:
// [774] phi (byte*) mode_mcchar::ch#3 = (byte*) mode_mcchar::ch#1 [phi:mode_mcchar::@5->mode_mcchar::@3#0] -- register_copy
// [774] phi (byte*) mode_mcchar::col#3 = (byte*) mode_mcchar::col#1 [phi:mode_mcchar::@5->mode_mcchar::@3#1] -- register_copy
// [774] phi (byte) mode_mcchar::cy#4 = (byte) mode_mcchar::cy#1 [phi:mode_mcchar::@5->mode_mcchar::@3#2] -- register_copy
jmp b3
// mode_mcchar::@3
b3:
// [775] phi from mode_mcchar::@3 to mode_mcchar::@4 [phi:mode_mcchar::@3->mode_mcchar::@4]
b4_from_b3:
// [775] phi (byte*) mode_mcchar::ch#2 = (byte*) mode_mcchar::ch#3 [phi:mode_mcchar::@3->mode_mcchar::@4#0] -- register_copy
// [775] phi (byte*) mode_mcchar::col#2 = (byte*) mode_mcchar::col#3 [phi:mode_mcchar::@3->mode_mcchar::@4#1] -- register_copy
// [775] phi (byte) mode_mcchar::cx#2 = (byte) 0 [phi:mode_mcchar::@3->mode_mcchar::@4#2] -- vbuz1=vbuc1
lda #0
sta.z cx
jmp b4
// [775] phi from mode_mcchar::@4 to mode_mcchar::@4 [phi:mode_mcchar::@4->mode_mcchar::@4]
b4_from_b4:
// [775] phi (byte*) mode_mcchar::ch#2 = (byte*) mode_mcchar::ch#1 [phi:mode_mcchar::@4->mode_mcchar::@4#0] -- register_copy
// [775] phi (byte*) mode_mcchar::col#2 = (byte*) mode_mcchar::col#1 [phi:mode_mcchar::@4->mode_mcchar::@4#1] -- register_copy
// [775] phi (byte) mode_mcchar::cx#2 = (byte) mode_mcchar::cx#1 [phi:mode_mcchar::@4->mode_mcchar::@4#2] -- register_copy
jmp b4
// mode_mcchar::@4
b4:
// [776] (byte~) mode_mcchar::$26 ← (byte) mode_mcchar::cx#2 + (byte) mode_mcchar::cy#4 -- vbuz1=vbuz2_plus_vbuz3
lda.z cx
clc
adc.z cy
sta.z _26
// [777] (byte~) mode_mcchar::$27 ← (byte~) mode_mcchar::$26 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z _26
sta.z _27
// [778] *((byte*) mode_mcchar::col#2) ← (byte~) mode_mcchar::$27 -- _deref_pbuz1=vbuz2
lda.z _27
ldy #0
sta (col),y
// [779] (byte*) mode_mcchar::col#1 ← ++ (byte*) mode_mcchar::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// [780] (byte~) mode_mcchar::$28 ← (byte) mode_mcchar::cy#4 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cy
sta.z _28
// [781] (byte~) mode_mcchar::$29 ← (byte~) mode_mcchar::$28 << (byte) 4 -- vbuz1=vbuz2_rol_4
lda.z _28
asl
asl
asl
asl
sta.z _29
// [782] (byte~) mode_mcchar::$30 ← (byte) mode_mcchar::cx#2 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cx
sta.z _30
// [783] (byte~) mode_mcchar::$31 ← (byte~) mode_mcchar::$29 | (byte~) mode_mcchar::$30 -- vbuz1=vbuz2_bor_vbuz3
lda.z _29
ora.z _30
sta.z _31
// [784] *((byte*) mode_mcchar::ch#2) ← (byte~) mode_mcchar::$31 -- _deref_pbuz1=vbuz2
lda.z _31
ldy #0
sta (ch),y
// [785] (byte*) mode_mcchar::ch#1 ← ++ (byte*) mode_mcchar::ch#2 -- pbuz1=_inc_pbuz1
inc.z ch
bne !+
inc.z ch+1
!:
// [786] (byte) mode_mcchar::cx#1 ← ++ (byte) mode_mcchar::cx#2 -- vbuz1=_inc_vbuz1
inc.z cx
// [787] if((byte) mode_mcchar::cx#1!=(byte) $28) goto mode_mcchar::@4 -- vbuz1_neq_vbuc1_then_la1
lda #$28
cmp.z cx
bne b4_from_b4
jmp b5
// mode_mcchar::@5
b5:
// [788] (byte) mode_mcchar::cy#1 ← ++ (byte) mode_mcchar::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [789] if((byte) mode_mcchar::cy#1!=(byte) $19) goto mode_mcchar::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3_from_b5
// [790] phi from mode_mcchar::@5 to mode_mcchar::@6 [phi:mode_mcchar::@5->mode_mcchar::@6]
b6_from_b5:
jmp b6
// mode_mcchar::@6
b6:
// [791] call mode_ctrl
// [155] phi from mode_mcchar::@6 to mode_ctrl [phi:mode_mcchar::@6->mode_ctrl]
mode_ctrl_from_b6:
// [155] phi (byte) dtv_control#144 = (byte) 0 [phi:mode_mcchar::@6->mode_ctrl#0] -- vbuz1=vbuc1
lda #0
sta.z dtv_control
jsr mode_ctrl
jmp breturn
// mode_mcchar::@return
breturn:
// [792] return
rts
}
// mode_ecmchar
// Extended Background Color Character Mode (LINEAR/HICOL/CHUNK/COLDIS/MCM/BMM = 0, ECM = 1)
// Resolution: 320x200
// Normal VIC Adressing:
// VicGfxData[16]: ( VicBank[1:0] & CharBase[2:0] & "00" & CharData[5:0] & RowCounter[2:0] )
// GfxData Pixel Shifter (1)
// - 0: 4bpp Background Color
// - CharData[7:6] 00: 4bpp BgColor0[3:0]
// - CharData[7:6] 01: 4bpp BgColor1[3:0]
// - CharData[7:6] 10: 4bpp BgColor2[3:0]
// - CharData[7:6] 11: 4bpp BgColor3[3:0]
// - 1: 4bpp ColorData[3:0]
mode_ecmchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $d800
.label _26 = $11a
.label _27 = $11b
.label _28 = $11c
.label _29 = $11d
.label _30 = $11e
.label _31 = $11f
.label i = $8b
.label col = $8e
.label ch = $90
.label cx = $8d
.label cy = $8c
// [793] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [794] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<DTV_COLOR_BANK_DEFAULT/$400
sta DTV_COLOR_BANK_LO
// [795] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [796] *((const byte*) DTV_CONTROL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_CONTROL
// [797] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2_PORT_A_DDR
// [798] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_ecmchar::CHARSET#0/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2_PORT_A
// [799] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|VIC_ECM|3
sta VIC_CONTROL
// [800] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [801] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_ecmchar::CHARSET#0&(word) $3fff/(word) $400 -- _deref_pbuc1=vbuc2
// VIC Memory Pointers
lda #(CHARSET&$3fff)/$400
sta VIC_MEMORY
// [802] phi from mode_ecmchar to mode_ecmchar::@1 [phi:mode_ecmchar->mode_ecmchar::@1]
b1_from_mode_ecmchar:
// [802] phi (byte) mode_ecmchar::i#2 = (byte) 0 [phi:mode_ecmchar->mode_ecmchar::@1#0] -- vbuz1=vbuc1
lda #0
sta.z i
jmp b1
// DTV Palette - default
// [802] phi from mode_ecmchar::@1 to mode_ecmchar::@1 [phi:mode_ecmchar::@1->mode_ecmchar::@1]
b1_from_b1:
// [802] phi (byte) mode_ecmchar::i#2 = (byte) mode_ecmchar::i#1 [phi:mode_ecmchar::@1->mode_ecmchar::@1#0] -- register_copy
jmp b1
// mode_ecmchar::@1
b1:
// [803] *((const byte*) DTV_PALETTE#0 + (byte) mode_ecmchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_ecmchar::i#2) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1
ldy.z i
lda DTV_PALETTE_DEFAULT,y
sta DTV_PALETTE,y
// [804] (byte) mode_ecmchar::i#1 ← ++ (byte) mode_ecmchar::i#2 -- vbuz1=_inc_vbuz1
inc.z i
// [805] if((byte) mode_ecmchar::i#1!=(byte) $10) goto mode_ecmchar::@1 -- vbuz1_neq_vbuc1_then_la1
lda #$10
cmp.z i
bne b1_from_b1
jmp b2
// mode_ecmchar::@2
b2:
// [806] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDERCOL
// [807] *((const byte*) BGCOL1#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta BGCOL1
// [808] *((const byte*) BGCOL2#0) ← (byte) 2 -- _deref_pbuc1=vbuc2
lda #2
sta BGCOL2
// [809] *((const byte*) BGCOL3#0) ← (byte) 5 -- _deref_pbuc1=vbuc2
lda #5
sta BGCOL3
// [810] *((const byte*) BGCOL4#0) ← (byte) 6 -- _deref_pbuc1=vbuc2
lda #6
sta BGCOL4
// [811] phi from mode_ecmchar::@2 to mode_ecmchar::@3 [phi:mode_ecmchar::@2->mode_ecmchar::@3]
b3_from_b2:
// [811] phi (byte*) mode_ecmchar::ch#3 = (const byte*) mode_ecmchar::SCREEN#0 [phi:mode_ecmchar::@2->mode_ecmchar::@3#0] -- pbuz1=pbuc1
lda #<SCREEN
sta.z ch
lda #>SCREEN
sta.z ch+1
// [811] phi (byte*) mode_ecmchar::col#3 = (const byte*) mode_ecmchar::COLORS#0 [phi:mode_ecmchar::@2->mode_ecmchar::@3#1] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [811] phi (byte) mode_ecmchar::cy#4 = (byte) 0 [phi:mode_ecmchar::@2->mode_ecmchar::@3#2] -- vbuz1=vbuc1
lda #0
sta.z cy
jmp b3
// [811] phi from mode_ecmchar::@5 to mode_ecmchar::@3 [phi:mode_ecmchar::@5->mode_ecmchar::@3]
b3_from_b5:
// [811] phi (byte*) mode_ecmchar::ch#3 = (byte*) mode_ecmchar::ch#1 [phi:mode_ecmchar::@5->mode_ecmchar::@3#0] -- register_copy
// [811] phi (byte*) mode_ecmchar::col#3 = (byte*) mode_ecmchar::col#1 [phi:mode_ecmchar::@5->mode_ecmchar::@3#1] -- register_copy
// [811] phi (byte) mode_ecmchar::cy#4 = (byte) mode_ecmchar::cy#1 [phi:mode_ecmchar::@5->mode_ecmchar::@3#2] -- register_copy
jmp b3
// mode_ecmchar::@3
b3:
// [812] phi from mode_ecmchar::@3 to mode_ecmchar::@4 [phi:mode_ecmchar::@3->mode_ecmchar::@4]
b4_from_b3:
// [812] phi (byte*) mode_ecmchar::ch#2 = (byte*) mode_ecmchar::ch#3 [phi:mode_ecmchar::@3->mode_ecmchar::@4#0] -- register_copy
// [812] phi (byte*) mode_ecmchar::col#2 = (byte*) mode_ecmchar::col#3 [phi:mode_ecmchar::@3->mode_ecmchar::@4#1] -- register_copy
// [812] phi (byte) mode_ecmchar::cx#2 = (byte) 0 [phi:mode_ecmchar::@3->mode_ecmchar::@4#2] -- vbuz1=vbuc1
lda #0
sta.z cx
jmp b4
// [812] phi from mode_ecmchar::@4 to mode_ecmchar::@4 [phi:mode_ecmchar::@4->mode_ecmchar::@4]
b4_from_b4:
// [812] phi (byte*) mode_ecmchar::ch#2 = (byte*) mode_ecmchar::ch#1 [phi:mode_ecmchar::@4->mode_ecmchar::@4#0] -- register_copy
// [812] phi (byte*) mode_ecmchar::col#2 = (byte*) mode_ecmchar::col#1 [phi:mode_ecmchar::@4->mode_ecmchar::@4#1] -- register_copy
// [812] phi (byte) mode_ecmchar::cx#2 = (byte) mode_ecmchar::cx#1 [phi:mode_ecmchar::@4->mode_ecmchar::@4#2] -- register_copy
jmp b4
// mode_ecmchar::@4
b4:
// [813] (byte~) mode_ecmchar::$26 ← (byte) mode_ecmchar::cx#2 + (byte) mode_ecmchar::cy#4 -- vbuz1=vbuz2_plus_vbuz3
lda.z cx
clc
adc.z cy
sta.z _26
// [814] (byte~) mode_ecmchar::$27 ← (byte~) mode_ecmchar::$26 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z _26
sta.z _27
// [815] *((byte*) mode_ecmchar::col#2) ← (byte~) mode_ecmchar::$27 -- _deref_pbuz1=vbuz2
lda.z _27
ldy #0
sta (col),y
// [816] (byte*) mode_ecmchar::col#1 ← ++ (byte*) mode_ecmchar::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// [817] (byte~) mode_ecmchar::$28 ← (byte) mode_ecmchar::cy#4 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cy
sta.z _28
// [818] (byte~) mode_ecmchar::$29 ← (byte~) mode_ecmchar::$28 << (byte) 4 -- vbuz1=vbuz2_rol_4
lda.z _28
asl
asl
asl
asl
sta.z _29
// [819] (byte~) mode_ecmchar::$30 ← (byte) mode_ecmchar::cx#2 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cx
sta.z _30
// [820] (byte~) mode_ecmchar::$31 ← (byte~) mode_ecmchar::$29 | (byte~) mode_ecmchar::$30 -- vbuz1=vbuz2_bor_vbuz3
lda.z _29
ora.z _30
sta.z _31
// [821] *((byte*) mode_ecmchar::ch#2) ← (byte~) mode_ecmchar::$31 -- _deref_pbuz1=vbuz2
lda.z _31
ldy #0
sta (ch),y
// [822] (byte*) mode_ecmchar::ch#1 ← ++ (byte*) mode_ecmchar::ch#2 -- pbuz1=_inc_pbuz1
inc.z ch
bne !+
inc.z ch+1
!:
// [823] (byte) mode_ecmchar::cx#1 ← ++ (byte) mode_ecmchar::cx#2 -- vbuz1=_inc_vbuz1
inc.z cx
// [824] if((byte) mode_ecmchar::cx#1!=(byte) $28) goto mode_ecmchar::@4 -- vbuz1_neq_vbuc1_then_la1
lda #$28
cmp.z cx
bne b4_from_b4
jmp b5
// mode_ecmchar::@5
b5:
// [825] (byte) mode_ecmchar::cy#1 ← ++ (byte) mode_ecmchar::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [826] if((byte) mode_ecmchar::cy#1!=(byte) $19) goto mode_ecmchar::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3_from_b5
// [827] phi from mode_ecmchar::@5 to mode_ecmchar::@6 [phi:mode_ecmchar::@5->mode_ecmchar::@6]
b6_from_b5:
jmp b6
// mode_ecmchar::@6
b6:
// [828] call mode_ctrl
// [155] phi from mode_ecmchar::@6 to mode_ctrl [phi:mode_ecmchar::@6->mode_ctrl]
mode_ctrl_from_b6:
// [155] phi (byte) dtv_control#144 = (byte) 0 [phi:mode_ecmchar::@6->mode_ctrl#0] -- vbuz1=vbuc1
lda #0
sta.z dtv_control
jsr mode_ctrl
jmp breturn
// mode_ecmchar::@return
breturn:
// [829] return
rts
}
// mode_stdchar
// Standard Character Mode (LINEAR/HICOL/CHUNK/COLDIS/ECM/MCM/BMM = 0)
// Resolution: 320x200
// Normal VIC Adressing:
// VicGfxData[16]: ( VicBank[1:0] & CharBase[2:0] & CharData[7:0] & RowCounter[2:0] )
// Pixel Shifter (1)
// - 0: 4bpp BgColor0[3:0]
// - 1: 4bpp ColorData[3:0]
mode_stdchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $d800
.label _25 = $120
.label _26 = $121
.label _27 = $122
.label _28 = $123
.label _29 = $124
.label _30 = $125
.label i = $92
.label col = $95
.label ch = $97
.label cx = $94
.label cy = $93
// [830] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [831] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<DTV_COLOR_BANK_DEFAULT/$400
sta DTV_COLOR_BANK_LO
// [832] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [833] *((const byte*) DTV_CONTROL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_CONTROL
// [834] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2_PORT_A_DDR
// [835] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_stdchar::CHARSET#0/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2_PORT_A
// [836] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [837] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [838] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_stdchar::CHARSET#0&(word) $3fff/(word) $400 -- _deref_pbuc1=vbuc2
// VIC Memory Pointers
lda #(CHARSET&$3fff)/$400
sta VIC_MEMORY
// [839] phi from mode_stdchar to mode_stdchar::@1 [phi:mode_stdchar->mode_stdchar::@1]
b1_from_mode_stdchar:
// [839] phi (byte) mode_stdchar::i#2 = (byte) 0 [phi:mode_stdchar->mode_stdchar::@1#0] -- vbuz1=vbuc1
lda #0
sta.z i
jmp b1
// DTV Palette - default
// [839] phi from mode_stdchar::@1 to mode_stdchar::@1 [phi:mode_stdchar::@1->mode_stdchar::@1]
b1_from_b1:
// [839] phi (byte) mode_stdchar::i#2 = (byte) mode_stdchar::i#1 [phi:mode_stdchar::@1->mode_stdchar::@1#0] -- register_copy
jmp b1
// mode_stdchar::@1
b1:
// [840] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdchar::i#2) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1
ldy.z i
lda DTV_PALETTE_DEFAULT,y
sta DTV_PALETTE,y
// [841] (byte) mode_stdchar::i#1 ← ++ (byte) mode_stdchar::i#2 -- vbuz1=_inc_vbuz1
inc.z i
// [842] if((byte) mode_stdchar::i#1!=(byte) $10) goto mode_stdchar::@1 -- vbuz1_neq_vbuc1_then_la1
lda #$10
cmp.z i
bne b1_from_b1
jmp b2
// mode_stdchar::@2
b2:
// [843] *((const byte*) BGCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BGCOL
// [844] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta BORDERCOL
// [845] phi from mode_stdchar::@2 to mode_stdchar::@3 [phi:mode_stdchar::@2->mode_stdchar::@3]
b3_from_b2:
// [845] phi (byte*) mode_stdchar::ch#3 = (const byte*) mode_stdchar::SCREEN#0 [phi:mode_stdchar::@2->mode_stdchar::@3#0] -- pbuz1=pbuc1
lda #<SCREEN
sta.z ch
lda #>SCREEN
sta.z ch+1
// [845] phi (byte*) mode_stdchar::col#3 = (const byte*) mode_stdchar::COLORS#0 [phi:mode_stdchar::@2->mode_stdchar::@3#1] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [845] phi (byte) mode_stdchar::cy#4 = (byte) 0 [phi:mode_stdchar::@2->mode_stdchar::@3#2] -- vbuz1=vbuc1
lda #0
sta.z cy
jmp b3
// [845] phi from mode_stdchar::@5 to mode_stdchar::@3 [phi:mode_stdchar::@5->mode_stdchar::@3]
b3_from_b5:
// [845] phi (byte*) mode_stdchar::ch#3 = (byte*) mode_stdchar::ch#1 [phi:mode_stdchar::@5->mode_stdchar::@3#0] -- register_copy
// [845] phi (byte*) mode_stdchar::col#3 = (byte*) mode_stdchar::col#1 [phi:mode_stdchar::@5->mode_stdchar::@3#1] -- register_copy
// [845] phi (byte) mode_stdchar::cy#4 = (byte) mode_stdchar::cy#1 [phi:mode_stdchar::@5->mode_stdchar::@3#2] -- register_copy
jmp b3
// mode_stdchar::@3
b3:
// [846] phi from mode_stdchar::@3 to mode_stdchar::@4 [phi:mode_stdchar::@3->mode_stdchar::@4]
b4_from_b3:
// [846] phi (byte*) mode_stdchar::ch#2 = (byte*) mode_stdchar::ch#3 [phi:mode_stdchar::@3->mode_stdchar::@4#0] -- register_copy
// [846] phi (byte*) mode_stdchar::col#2 = (byte*) mode_stdchar::col#3 [phi:mode_stdchar::@3->mode_stdchar::@4#1] -- register_copy
// [846] phi (byte) mode_stdchar::cx#2 = (byte) 0 [phi:mode_stdchar::@3->mode_stdchar::@4#2] -- vbuz1=vbuc1
lda #0
sta.z cx
jmp b4
// [846] phi from mode_stdchar::@4 to mode_stdchar::@4 [phi:mode_stdchar::@4->mode_stdchar::@4]
b4_from_b4:
// [846] phi (byte*) mode_stdchar::ch#2 = (byte*) mode_stdchar::ch#1 [phi:mode_stdchar::@4->mode_stdchar::@4#0] -- register_copy
// [846] phi (byte*) mode_stdchar::col#2 = (byte*) mode_stdchar::col#1 [phi:mode_stdchar::@4->mode_stdchar::@4#1] -- register_copy
// [846] phi (byte) mode_stdchar::cx#2 = (byte) mode_stdchar::cx#1 [phi:mode_stdchar::@4->mode_stdchar::@4#2] -- register_copy
jmp b4
// mode_stdchar::@4
b4:
// [847] (byte~) mode_stdchar::$25 ← (byte) mode_stdchar::cx#2 + (byte) mode_stdchar::cy#4 -- vbuz1=vbuz2_plus_vbuz3
lda.z cx
clc
adc.z cy
sta.z _25
// [848] (byte~) mode_stdchar::$26 ← (byte~) mode_stdchar::$25 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z _25
sta.z _26
// [849] *((byte*) mode_stdchar::col#2) ← (byte~) mode_stdchar::$26 -- _deref_pbuz1=vbuz2
lda.z _26
ldy #0
sta (col),y
// [850] (byte*) mode_stdchar::col#1 ← ++ (byte*) mode_stdchar::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// [851] (byte~) mode_stdchar::$27 ← (byte) mode_stdchar::cy#4 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cy
sta.z _27
// [852] (byte~) mode_stdchar::$28 ← (byte~) mode_stdchar::$27 << (byte) 4 -- vbuz1=vbuz2_rol_4
lda.z _27
asl
asl
asl
asl
sta.z _28
// [853] (byte~) mode_stdchar::$29 ← (byte) mode_stdchar::cx#2 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cx
sta.z _29
// [854] (byte~) mode_stdchar::$30 ← (byte~) mode_stdchar::$28 | (byte~) mode_stdchar::$29 -- vbuz1=vbuz2_bor_vbuz3
lda.z _28
ora.z _29
sta.z _30
// [855] *((byte*) mode_stdchar::ch#2) ← (byte~) mode_stdchar::$30 -- _deref_pbuz1=vbuz2
lda.z _30
ldy #0
sta (ch),y
// [856] (byte*) mode_stdchar::ch#1 ← ++ (byte*) mode_stdchar::ch#2 -- pbuz1=_inc_pbuz1
inc.z ch
bne !+
inc.z ch+1
!:
// [857] (byte) mode_stdchar::cx#1 ← ++ (byte) mode_stdchar::cx#2 -- vbuz1=_inc_vbuz1
inc.z cx
// [858] if((byte) mode_stdchar::cx#1!=(byte) $28) goto mode_stdchar::@4 -- vbuz1_neq_vbuc1_then_la1
lda #$28
cmp.z cx
bne b4_from_b4
jmp b5
// mode_stdchar::@5
b5:
// [859] (byte) mode_stdchar::cy#1 ← ++ (byte) mode_stdchar::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [860] if((byte) mode_stdchar::cy#1!=(byte) $19) goto mode_stdchar::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3_from_b5
// [861] phi from mode_stdchar::@5 to mode_stdchar::@6 [phi:mode_stdchar::@5->mode_stdchar::@6]
b6_from_b5:
jmp b6
// mode_stdchar::@6
b6:
// [862] call mode_ctrl
// [155] phi from mode_stdchar::@6 to mode_ctrl [phi:mode_stdchar::@6->mode_ctrl]
mode_ctrl_from_b6:
// [155] phi (byte) dtv_control#144 = (byte) 0 [phi:mode_stdchar::@6->mode_ctrl#0] -- vbuz1=vbuc1
lda #0
sta.z dtv_control
jsr mode_ctrl
jmp breturn
// mode_stdchar::@return
breturn:
// [863] return
rts
}
// print_str_lines
// Print a number of zero-terminated strings, each followed by a newline.
// The sequence of lines is terminated by another zero.
// print_str_lines(byte* zeropage($99) str)
print_str_lines: {
.label ch = $126
.label str = $99
// [865] phi from print_str_lines to print_str_lines::@1 [phi:print_str_lines->print_str_lines::@1]
b1_from_print_str_lines:
// [865] phi (byte*) print_line_cursor#17 = (const byte*) menu::SCREEN#0 [phi:print_str_lines->print_str_lines::@1#0] -- pbuz1=pbuc1
lda #<menu.SCREEN
sta.z print_line_cursor
lda #>menu.SCREEN
sta.z print_line_cursor+1
// [865] phi (byte*) print_char_cursor#19 = (const byte*) menu::SCREEN#0 [phi:print_str_lines->print_str_lines::@1#1] -- pbuz1=pbuc1
lda #<menu.SCREEN
sta.z print_char_cursor
lda #>menu.SCREEN
sta.z print_char_cursor+1
// [865] phi (byte*) print_str_lines::str#2 = (const byte[]) MENU_TEXT#0 [phi:print_str_lines->print_str_lines::@1#2] -- pbuz1=pbuc1
lda #<MENU_TEXT
sta.z str
lda #>MENU_TEXT
sta.z str+1
jmp b1
// print_str_lines::@1
b1:
// [866] if((byte) 0!=*((byte*) print_str_lines::str#2)) goto print_str_lines::@2 -- vbuc1_neq__deref_pbuz1_then_la1
ldy #0
lda (str),y
cmp #0
bne b2_from_b1
jmp breturn
// print_str_lines::@return
breturn:
// [867] return
rts
// [868] phi from print_str_lines::@1 print_str_lines::@3 to print_str_lines::@2 [phi:print_str_lines::@1/print_str_lines::@3->print_str_lines::@2]
b2_from_b1:
b2_from_b3:
// [868] phi (byte*) print_char_cursor#17 = (byte*) print_char_cursor#19 [phi:print_str_lines::@1/print_str_lines::@3->print_str_lines::@2#0] -- register_copy
// [868] phi (byte*) print_str_lines::str#3 = (byte*) print_str_lines::str#2 [phi:print_str_lines::@1/print_str_lines::@3->print_str_lines::@2#1] -- register_copy
jmp b2
// print_str_lines::@2
b2:
// [869] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#3) -- vbuz1=_deref_pbuz2
ldy #0
lda (str),y
sta.z ch
// [870] (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#3 -- pbuz1=_inc_pbuz1
inc.z str
bne !+
inc.z str+1
!:
// [871] if((byte) 0==(byte) print_str_lines::ch#0) goto print_str_lines::@3 -- vbuc1_eq_vbuz1_then_la1
lda #0
cmp.z ch
beq b3_from_b2
jmp b4
// print_str_lines::@4
b4:
// [872] *((byte*) print_char_cursor#17) ← (byte) print_str_lines::ch#0 -- _deref_pbuz1=vbuz2
lda.z ch
ldy #0
sta (print_char_cursor),y
// [873] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#17 -- pbuz1=_inc_pbuz1
inc.z print_char_cursor
bne !+
inc.z print_char_cursor+1
!:
// [874] phi from print_str_lines::@2 print_str_lines::@4 to print_str_lines::@3 [phi:print_str_lines::@2/print_str_lines::@4->print_str_lines::@3]
b3_from_b2:
b3_from_b4:
// [874] phi (byte*) print_char_cursor#32 = (byte*) print_char_cursor#17 [phi:print_str_lines::@2/print_str_lines::@4->print_str_lines::@3#0] -- register_copy
jmp b3
// print_str_lines::@3
b3:
// [875] if((byte) 0!=(byte) print_str_lines::ch#0) goto print_str_lines::@2 -- vbuc1_neq_vbuz1_then_la1
lda #0
cmp.z ch
bne b2_from_b3
// [876] phi from print_str_lines::@3 to print_str_lines::@5 [phi:print_str_lines::@3->print_str_lines::@5]
b5_from_b3:
jmp b5
// print_str_lines::@5
b5:
// [877] call print_ln
// [879] phi from print_str_lines::@5 to print_ln [phi:print_str_lines::@5->print_ln]
print_ln_from_b5:
jsr print_ln
jmp b6
// print_str_lines::@6
b6:
// [878] (byte*~) print_char_cursor#100 ← (byte*) print_line_cursor#19 -- pbuz1=pbuz2
lda.z print_line_cursor
sta.z print_char_cursor
lda.z print_line_cursor+1
sta.z print_char_cursor+1
// [865] phi from print_str_lines::@6 to print_str_lines::@1 [phi:print_str_lines::@6->print_str_lines::@1]
b1_from_b6:
// [865] phi (byte*) print_line_cursor#17 = (byte*) print_line_cursor#19 [phi:print_str_lines::@6->print_str_lines::@1#0] -- register_copy
// [865] phi (byte*) print_char_cursor#19 = (byte*~) print_char_cursor#100 [phi:print_str_lines::@6->print_str_lines::@1#1] -- register_copy
// [865] phi (byte*) print_str_lines::str#2 = (byte*) print_str_lines::str#0 [phi:print_str_lines::@6->print_str_lines::@1#2] -- register_copy
jmp b1
}
// print_ln
// Print a newline
print_ln: {
// [880] 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:
// [880] phi (byte*) print_line_cursor#18 = (byte*) print_line_cursor#17 [phi:print_ln/print_ln::@1->print_ln::@1#0] -- register_copy
jmp b1
// print_ln::@1
b1:
// [881] (byte*) print_line_cursor#19 ← (byte*) print_line_cursor#18 + (byte) $28 -- pbuz1=pbuz1_plus_vbuc1
lda #$28
clc
adc.z print_line_cursor
sta.z print_line_cursor
bcc !+
inc.z print_line_cursor+1
!:
// [882] if((byte*) print_line_cursor#19<(byte*) print_char_cursor#32) goto print_ln::@1 -- pbuz1_lt_pbuz2_then_la1
lda.z print_line_cursor+1
cmp.z print_char_cursor+1
bcc b1_from_b1
bne !+
lda.z print_line_cursor
cmp.z print_char_cursor
bcc b1_from_b1
!:
jmp breturn
// print_ln::@return
breturn:
// [883] return
rts
}
// print_cls
// Clear the screen. Also resets current line/char cursor.
print_cls: {
// [885] call memset
// [887] phi from print_cls to memset [phi:print_cls->memset]
memset_from_print_cls:
jsr memset
jmp breturn
// print_cls::@return
breturn:
// [886] return
rts
}
// memset
// Copies the character c (an unsigned char) to the first num characters of the object pointed to by the argument str.
memset: {
.const c = ' '
.const num = $3e8
.label str = menu.SCREEN
.label end = str+num
.label dst = $9f
// [888] phi from memset to memset::@1 [phi:memset->memset::@1]
b1_from_memset:
// [888] phi (byte*) memset::dst#2 = (byte*)(const void*) memset::str#0 [phi:memset->memset::@1#0] -- pbuz1=pbuc1
lda #<str
sta.z dst
lda #>str
sta.z dst+1
jmp b1
// memset::@1
b1:
// [889] if((byte*) memset::dst#2!=(const byte*) memset::end#0) goto memset::@2 -- pbuz1_neq_pbuc1_then_la1
lda.z dst+1
cmp #>end
bne b2
lda.z dst
cmp #<end
bne b2
jmp breturn
// memset::@return
breturn:
// [890] return
rts
// memset::@2
b2:
// [891] *((byte*) memset::dst#2) ← (const byte) memset::c#0 -- _deref_pbuz1=vbuc1
lda #c
ldy #0
sta (dst),y
// [892] (byte*) memset::dst#1 ← ++ (byte*) memset::dst#2 -- pbuz1=_inc_pbuz1
inc.z dst
bne !+
inc.z dst+1
!:
// [888] phi from memset::@2 to memset::@1 [phi:memset::@2->memset::@1]
b1_from_b2:
// [888] phi (byte*) memset::dst#2 = (byte*) memset::dst#1 [phi:memset::@2->memset::@1#0] -- register_copy
jmp b1
}
// print_set_screen
// Set the screen to print on. Also resets current line/char cursor.
print_set_screen: {
jmp breturn
// print_set_screen::@return
breturn:
// [894] return
rts
}
// File Data
// Default vallues for the palette
DTV_PALETTE_DEFAULT: .byte 0, $f, $36, $be, $58, $db, $86, $ff, $29, $26, $3b, 5, 7, $df, $9a, $a
// Keyboard row bitmask as expected by CIA#1 Port A when reading a specific keyboard matrix row (rows are numbered 0-7)
keyboard_matrix_row_bitmask: .byte $fe, $fd, $fb, $f7, $ef, $df, $bf, $7f
// Keyboard matrix column bitmasks for a specific keybooard matrix column when reading the keyboard. (columns are numbered 0-7)
keyboard_matrix_col_bitmask: .byte 1, 2, 4, 8, $10, $20, $40, $80
// Tables for the plotter - initialized by calling bitmap_draw_init();
bitmap_plot_xlo: .fill $100, 0
bitmap_plot_xhi: .fill $100, 0
bitmap_plot_ylo: .fill $100, 0
bitmap_plot_yhi: .fill $100, 0
bitmap_plot_bit: .fill $100, 0
MENU_TEXT: .text "C64DTV Graphics Modes CCLHBME@ OHIIMCC@ LUNCMMM@----------------------------------------@1. Standard Char (V) 0000000@2. Extended Color Char (V) 0000001@3. Multicolor Char (V) 0000010@4. Standard Bitmap (V) 0000100@5. Multicolor Bitmap (V) 0000110@6. High Color Standard Char (H) 0001000@7. High Extended Color Char (H) 0001001@8. High Multicolor Char (H) 0001010@9. High Multicolor Bitmap (H) 0001110@a. Sixs Fred 2 (D) 0010111@b. Two Plane Bitmap (D) 0011101@c. Sixs Fred (2 Plane MC BM) (D) 0011111@d. 8bpp Pixel Cell (D) 0111011@e. Chunky 8bpp Bitmap (D) 1111011@----------------------------------------@ (V) vicII (H) vicII+hicol (D) c64dtv@"
.byte 0
REGISTER UPLIFT POTENTIAL REGISTERS
Equivalence Class zp ZP_BYTE:273 [ bitmap_init::$7 ] has ALU potential.
Statement [5] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 [ ] ( main:2 [ ] ) always clobbers reg byte a
Statement [6] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 [ ] ( main:2 [ ] ) always clobbers reg byte a
Statement [7] *((const byte*) DTV_FEATURE#0) ← (const byte) DTV_FEATURE_ENABLE#0 [ ] ( main:2 [ ] ) always clobbers reg byte a
Statement [10] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a
Statement [11] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a
Statement [12] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a
Statement [13] *((const byte*) DTV_CONTROL#0) ← (byte) 0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a
Statement [14] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a
Statement [15] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) menu::CHARSET#0/(word) $4000 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a
Statement [16] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a
Statement [17] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a
Statement [18] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) menu::CHARSET#0&(word) $3fff/(word) $400 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a
Statement [20] *((const byte*) DTV_PALETTE#0 + (byte) menu::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) menu::i#2) [ menu::i#2 ] ( main:2::menu:9 [ menu::i#2 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ menu::i#2 menu::i#1 ]
Statement [24] if((byte*) menu::c#2!=(const byte*) COLS#0+(word) $3e8) goto menu::@3 [ menu::c#2 ] ( main:2::menu:9 [ menu::c#2 ] ) always clobbers reg byte a
Statement [25] *((const byte*) BGCOL#0) ← (byte) 0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a
Statement [26] *((const byte*) BORDERCOL#0) ← (byte) 0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a
Statement [117] *((byte*) menu::c#2) ← (const byte) LIGHT_GREEN#0 [ menu::c#2 ] ( main:2::menu:9 [ menu::c#2 ] ) always clobbers reg byte a reg byte y
Statement [119] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] ) always clobbers reg byte a
Statement [120] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] ) always clobbers reg byte a
Statement [121] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] ) always clobbers reg byte a
Statement [122] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] ) always clobbers reg byte a
Statement [123] *((const byte*) DTV_PLANEB_START_MI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] ) always clobbers reg byte a
Statement [124] *((const byte*) DTV_PLANEB_START_HI#0) ← <>(const dword) mode_8bppchunkybmm::PLANEB#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] ) always clobbers reg byte a
Statement [125] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 8 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] ) always clobbers reg byte a
Statement [126] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] ) always clobbers reg byte a
Statement [127] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] ) always clobbers reg byte a
Statement [128] *((const byte*) BORDERCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] ) always clobbers reg byte a
Statement [137] if((byte*) mode_8bppchunkybmm::gfxb#3!=(word) $8000) goto mode_8bppchunkybmm::@5 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxbCpuBank#4 ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxbCpuBank#4 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:9 [ mode_8bppchunkybmm::gfxbCpuBank#4 mode_8bppchunkybmm::gfxbCpuBank#7 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::gfxbCpuBank#2 ]
Statement [142] (word~) mode_8bppchunkybmm::$26 ← (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::$26 ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::$26 ] ) always clobbers reg byte a
Statement [143] (byte) mode_8bppchunkybmm::c#0 ← (byte)(word~) mode_8bppchunkybmm::$26 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::c#0 ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::c#0 ] ) always clobbers reg byte a
Statement [144] *((byte*) mode_8bppchunkybmm::gfxb#4) ← (byte) mode_8bppchunkybmm::c#0 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 ] ) always clobbers reg byte y
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:9 [ mode_8bppchunkybmm::gfxbCpuBank#4 mode_8bppchunkybmm::gfxbCpuBank#7 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::gfxbCpuBank#2 ]
Statement [147] if((word) mode_8bppchunkybmm::x#1!=(word) $140) goto mode_8bppchunkybmm::@4 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxb#1 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#1 ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxb#1 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#1 ] ) always clobbers reg byte a
Statement [157] if(*((const byte*) RASTER#0)!=(byte) $ff) goto mode_ctrl::@2 [ dtv_control#114 ] ( main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153 [ dtv_control#114 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280 [ dtv_control#114 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333 [ dtv_control#114 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391 [ dtv_control#114 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448 [ dtv_control#114 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482 [ dtv_control#114 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517 [ dtv_control#114 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549 [ dtv_control#114 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584 [ dtv_control#114 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791 [ dtv_control#114 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828 [ dtv_control#114 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862 [ dtv_control#114 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:12 [ dtv_control#114 dtv_control#144 dtv_control#17 ]
Statement [169] (byte) mode_ctrl::ctrl#1 ← (byte) mode_ctrl::ctrl#0 | (const byte) DTV_LINEAR#0 [ dtv_control#114 mode_ctrl::ctrl#1 ] ( main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862 [ dtv_control#114 mode_ctrl::ctrl#1 ] ) always clobbers reg byte a
Statement [175] (byte) mode_ctrl::ctrl#2 ← (byte) mode_ctrl::ctrl#17 | (const byte) DTV_HIGHCOLOR#0 [ dtv_control#114 mode_ctrl::ctrl#2 ] ( main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862 [ dtv_control#114 mode_ctrl::ctrl#2 ] ) always clobbers reg byte a
Statement [181] (byte) mode_ctrl::ctrl#3 ← (byte) mode_ctrl::ctrl#10 | (const byte) DTV_OVERSCAN#0 [ dtv_control#114 mode_ctrl::ctrl#3 ] ( main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862 [ dtv_control#114 mode_ctrl::ctrl#3 ] ) always clobbers reg byte a
Statement [187] (byte) mode_ctrl::ctrl#4 ← (byte) mode_ctrl::ctrl#11 | (const byte) DTV_BORDER_OFF#0 [ dtv_control#114 mode_ctrl::ctrl#4 ] ( main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862 [ dtv_control#114 mode_ctrl::ctrl#4 ] ) always clobbers reg byte a
Statement [193] (byte) mode_ctrl::ctrl#5 ← (byte) mode_ctrl::ctrl#12 | (const byte) DTV_CHUNKY#0 [ dtv_control#114 mode_ctrl::ctrl#5 ] ( main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862 [ dtv_control#114 mode_ctrl::ctrl#5 ] ) always clobbers reg byte a
Statement [199] (byte) mode_ctrl::ctrl#6 ← (byte) mode_ctrl::ctrl#13 | (const byte) DTV_COLORRAM_OFF#0 [ dtv_control#114 mode_ctrl::ctrl#6 ] ( main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862 [ dtv_control#114 mode_ctrl::ctrl#6 ] ) always clobbers reg byte a
Statement [213] (byte) keyboard_key_pressed::rowidx#0 ← (byte) keyboard_key_pressed::key#20 >> (byte) 3 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] ( main:2::menu:9::keyboard_key_pressed:33 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:41 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:48 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:55 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:62 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:69 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:76 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:83 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:90 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:97 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:104 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:111 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:204 [ keyboard_key_pressed::colidx#0 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:13 [ mode_ctrl::ctrl#14 mode_ctrl::ctrl#22 mode_ctrl::ctrl#6 mode_ctrl::ctrl#13 mode_ctrl::ctrl#5 mode_ctrl::ctrl#12 mode_ctrl::ctrl#4 mode_ctrl::ctrl#11 mode_ctrl::ctrl#3 mode_ctrl::ctrl#10 mode_ctrl::ctrl#2 mode_ctrl::ctrl#17 mode_ctrl::ctrl#1 mode_ctrl::ctrl#0 ]
Statement [220] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::menu:9::keyboard_key_pressed:33::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:41::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:48::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:55::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:62::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:69::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:76::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:83::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:90::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:97::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:104::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:111::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] ) always clobbers reg byte a
Statement [221] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::menu:9::keyboard_key_pressed:33::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:41::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:48::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:55::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:62::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:69::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:76::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:83::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:90::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:97::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:104::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:111::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] ) always clobbers reg byte a
Statement asm { .byte$32,$dd lda$ff .byte$32,$00 } always clobbers reg byte a
Statement [227] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [228] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [229] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [230] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [231] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_8bpppixelcell::PLANEA#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [232] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [233] *((const byte*) DTV_PLANEA_STEP#0) ← (byte) 1 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [234] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [235] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [236] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [237] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_8bpppixelcell::PLANEB#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [238] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [239] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [240] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [241] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [242] *((const byte*) BORDERCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [250] (byte~) mode_8bpppixelcell::$15 ← (byte~) mode_8bpppixelcell::$14 << (byte) 4 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$15 ] ( main:2::menu:9::mode_8bpppixelcell:109 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$15 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:18 [ mode_8bpppixelcell::ax#2 mode_8bpppixelcell::ax#1 ]
Statement [251] (byte~) mode_8bpppixelcell::$16 ← (byte) mode_8bpppixelcell::ax#2 & (byte) $f [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$15 mode_8bpppixelcell::$16 ] ( main:2::menu:9::mode_8bpppixelcell:109 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$15 mode_8bpppixelcell::$16 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:212 [ mode_8bpppixelcell::$15 ]
Statement [253] *((byte*) mode_8bpppixelcell::gfxa#2) ← (byte~) mode_8bpppixelcell::$17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 ] ( main:2::menu:9::mode_8bpppixelcell:109 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 ] ) always clobbers reg byte y
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:18 [ mode_8bpppixelcell::ax#2 mode_8bpppixelcell::ax#1 ]
Statement [259] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_CHARROM#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [262] (byte) mode_8bpppixelcell::bits#0 ← *((byte*) mode_8bpppixelcell::chargen#2) [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::col#5 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::bits#0 ] ( main:2::menu:9::mode_8bpppixelcell:109 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::col#5 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::bits#0 ] ) always clobbers reg byte a reg byte y
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:21 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:21 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:28 [ mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:28 [ mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:24 [ mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:24 [ mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ]
Statement [269] *((byte*) mode_8bpppixelcell::gfxb#2) ← (byte) mode_8bpppixelcell::c#2 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::chargen#1 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::bits#2 mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::col#2 mode_8bpppixelcell::cp#2 ] ( main:2::menu:9::mode_8bpppixelcell:109 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::chargen#1 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::bits#2 mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::col#2 mode_8bpppixelcell::cp#2 ] ) always clobbers reg byte y
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:25 [ mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:29 [ mode_8bpppixelcell::cp#2 mode_8bpppixelcell::cp#1 ]
Statement [279] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [282] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [283] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [284] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [285] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [286] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_sixsfred::PLANEA#0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [287] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [288] *((const byte*) DTV_PLANEA_STEP#0) ← (byte) 1 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [289] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [290] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [291] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [292] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_sixsfred::PLANEB#0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [293] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [294] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 1 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [295] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [296] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [297] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_sixsfred::COLORS#0/(word) $400 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [298] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [303] *((const byte*) BORDERCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [306] (byte~) mode_sixsfred::$17 ← (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#4 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 mode_sixsfred::$17 ] ( main:2::menu:9::mode_sixsfred:102 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 mode_sixsfred::$17 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:32 [ mode_sixsfred::cy#4 mode_sixsfred::cy#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:33 [ mode_sixsfred::cx#2 mode_sixsfred::cx#1 ]
Statement [308] *((byte*) mode_sixsfred::col#2) ← (byte~) mode_sixsfred::$18 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 ] ( main:2::menu:9::mode_sixsfred:102 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 ] ) always clobbers reg byte y
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:32 [ mode_sixsfred::cy#4 mode_sixsfred::cy#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:33 [ mode_sixsfred::cx#2 mode_sixsfred::cx#1 ]
Statement [316] (byte~) mode_sixsfred::$21 ← (byte) mode_sixsfred::ay#4 >> (byte) 1 [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 mode_sixsfred::$21 ] ( main:2::menu:9::mode_sixsfred:102 [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 mode_sixsfred::$21 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:36 [ mode_sixsfred::ay#4 mode_sixsfred::ay#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:39 [ mode_sixsfred::ax#2 mode_sixsfred::ax#1 ]
Statement [318] *((byte*) mode_sixsfred::gfxa#2) ← *((const byte[]) mode_sixsfred::row_bitmask#0 + (byte) mode_sixsfred::row#0) [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 ] ( main:2::menu:9::mode_sixsfred:102 [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 ] ) always clobbers reg byte a reg byte y
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:36 [ mode_sixsfred::ay#4 mode_sixsfred::ay#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:39 [ mode_sixsfred::ax#2 mode_sixsfred::ax#1 ]
Statement [326] *((byte*) mode_sixsfred::gfxb#2) ← (byte) $1b [ mode_sixsfred::by#4 mode_sixsfred::gfxb#2 mode_sixsfred::bx#2 ] ( main:2::menu:9::mode_sixsfred:102 [ mode_sixsfred::by#4 mode_sixsfred::gfxb#2 mode_sixsfred::bx#2 ] ) always clobbers reg byte a reg byte y
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:40 [ mode_sixsfred::by#4 mode_sixsfred::by#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:40 [ mode_sixsfred::by#4 mode_sixsfred::by#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:43 [ mode_sixsfred::bx#2 mode_sixsfred::bx#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:43 [ mode_sixsfred::bx#2 mode_sixsfred::bx#1 ]
Statement [335] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [336] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [337] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [338] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [339] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_twoplanebitmap::PLANEA#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [340] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [341] *((const byte*) DTV_PLANEA_STEP#0) ← (byte) 1 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [342] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [343] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [344] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [345] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_twoplanebitmap::PLANEB#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [346] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [347] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 1 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [348] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [349] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [350] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_twoplanebitmap::COLORS#0/(word) $400 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [351] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [356] *((const byte*) BORDERCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [357] *((const byte*) BGCOL1#0) ← (byte) $70 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [358] *((const byte*) BGCOL2#0) ← (byte) $d4 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [362] (byte~) mode_twoplanebitmap::$17 ← (byte~) mode_twoplanebitmap::$16 << (byte) 4 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$17 ] ( main:2::menu:9::mode_twoplanebitmap:95 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$17 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:45 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:46 [ mode_twoplanebitmap::cx#2 mode_twoplanebitmap::cx#1 ]
Statement [363] (byte~) mode_twoplanebitmap::$18 ← (byte) mode_twoplanebitmap::cx#2 & (byte) $f [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$17 mode_twoplanebitmap::$18 ] ( main:2::menu:9::mode_twoplanebitmap:95 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$17 mode_twoplanebitmap::$18 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:221 [ mode_twoplanebitmap::$17 ]
Statement [365] *((byte*) mode_twoplanebitmap::col#2) ← (byte~) mode_twoplanebitmap::$19 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 ] ( main:2::menu:9::mode_twoplanebitmap:95 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 ] ) always clobbers reg byte y
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:45 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:46 [ mode_twoplanebitmap::cx#2 mode_twoplanebitmap::cx#1 ]
Statement [375] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte) $ff [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ( main:2::menu:9::mode_twoplanebitmap:95 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ) always clobbers reg byte a reg byte y
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:49 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:49 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:52 [ mode_twoplanebitmap::ax#2 mode_twoplanebitmap::ax#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:52 [ mode_twoplanebitmap::ax#2 mode_twoplanebitmap::ax#1 ]
Statement [384] *((byte*) mode_twoplanebitmap::gfxb#2) ← (byte) $f [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::bx#2 ] ( main:2::menu:9::mode_twoplanebitmap:95 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::bx#2 ] ) always clobbers reg byte a reg byte y
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:53 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:53 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:56 [ mode_twoplanebitmap::bx#2 mode_twoplanebitmap::bx#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:56 [ mode_twoplanebitmap::bx#2 mode_twoplanebitmap::bx#1 ]
Statement [393] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte) 0 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ( main:2::menu:9::mode_twoplanebitmap:95 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ) always clobbers reg byte a reg byte y
Statement [395] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_LINEAR#0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [396] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [397] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [398] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [399] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_sixsfred2::PLANEA#0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [400] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [401] *((const byte*) DTV_PLANEA_STEP#0) ← (byte) 1 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [402] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [403] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [404] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [405] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_sixsfred2::PLANEB#0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [406] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [407] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 1 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [408] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [409] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [410] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_sixsfred2::COLORS#0/(word) $400 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [411] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [416] *((const byte*) BORDERCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [420] (byte~) mode_sixsfred2::$16 ← (byte~) mode_sixsfred2::$15 << (byte) 4 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$16 ] ( main:2::menu:9::mode_sixsfred2:88 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$16 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:58 [ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:59 [ mode_sixsfred2::cx#2 mode_sixsfred2::cx#1 ]
Statement [421] (byte~) mode_sixsfred2::$17 ← (byte) mode_sixsfred2::cy#4 & (byte) 3 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$16 mode_sixsfred2::$17 ] ( main:2::menu:9::mode_sixsfred2:88 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$16 mode_sixsfred2::$17 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:226 [ mode_sixsfred2::$16 ]
Statement [423] *((byte*) mode_sixsfred2::col#2) ← (byte~) mode_sixsfred2::$18 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 ] ( main:2::menu:9::mode_sixsfred2:88 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 ] ) always clobbers reg byte y
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:58 [ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:59 [ mode_sixsfred2::cx#2 mode_sixsfred2::cx#1 ]
Statement [431] (byte~) mode_sixsfred2::$21 ← (byte) mode_sixsfred2::ay#4 >> (byte) 1 [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 mode_sixsfred2::$21 ] ( main:2::menu:9::mode_sixsfred2:88 [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 mode_sixsfred2::$21 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:62 [ mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:65 [ mode_sixsfred2::ax#2 mode_sixsfred2::ax#1 ]
Statement [433] *((byte*) mode_sixsfred2::gfxa#2) ← *((const byte[]) mode_sixsfred2::row_bitmask#0 + (byte) mode_sixsfred2::row#0) [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 ] ( main:2::menu:9::mode_sixsfred2:88 [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 ] ) always clobbers reg byte a reg byte y
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:62 [ mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:65 [ mode_sixsfred2::ax#2 mode_sixsfred2::ax#1 ]
Statement [441] *((byte*) mode_sixsfred2::gfxb#2) ← (byte) $1b [ mode_sixsfred2::by#4 mode_sixsfred2::gfxb#2 mode_sixsfred2::bx#2 ] ( main:2::menu:9::mode_sixsfred2:88 [ mode_sixsfred2::by#4 mode_sixsfred2::gfxb#2 mode_sixsfred2::bx#2 ] ) always clobbers reg byte a reg byte y
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:66 [ mode_sixsfred2::by#4 mode_sixsfred2::by#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:66 [ mode_sixsfred2::by#4 mode_sixsfred2::by#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:69 [ mode_sixsfred2::bx#2 mode_sixsfred2::bx#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:69 [ mode_sixsfred2::bx#2 mode_sixsfred2::bx#1 ]
Statement [450] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [451] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const byte*) mode_hicolmcchar::COLORS#0/(word) $400 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [452] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [453] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [454] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [455] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_hicolmcchar::CHARSET#0/(word) $4000 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [456] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [457] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [458] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_hicolmcchar::CHARSET#0&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [463] *((const byte*) BORDERCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [464] *((const byte*) BGCOL1#0) ← (byte) $50 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [465] *((const byte*) BGCOL2#0) ← (byte) $54 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [466] *((const byte*) BGCOL3#0) ← (byte) $58 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [470] (byte~) mode_hicolmcchar::$27 ← (byte~) mode_hicolmcchar::$26 << (byte) 4 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$27 ] ( main:2::menu:9::mode_hicolmcchar:81 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$27 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:71 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:72 [ mode_hicolmcchar::cx#2 mode_hicolmcchar::cx#1 ]
Statement [471] (byte~) mode_hicolmcchar::$28 ← (byte) mode_hicolmcchar::cx#2 & (byte) $f [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$27 mode_hicolmcchar::$28 ] ( main:2::menu:9::mode_hicolmcchar:81 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$27 mode_hicolmcchar::$28 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:232 [ mode_hicolmcchar::$27 ]
Statement [473] *((byte*) mode_hicolmcchar::col#2) ← (byte) mode_hicolmcchar::v#0 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::v#0 ] ( main:2::menu:9::mode_hicolmcchar:81 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::v#0 ] ) always clobbers reg byte y
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:71 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:72 [ mode_hicolmcchar::cx#2 mode_hicolmcchar::cx#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:234 [ mode_hicolmcchar::v#0 ]
Statement [475] *((byte*) mode_hicolmcchar::ch#2) ← (byte) mode_hicolmcchar::v#0 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::col#1 mode_hicolmcchar::cx#2 mode_hicolmcchar::ch#2 ] ( main:2::menu:9::mode_hicolmcchar:81 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::col#1 mode_hicolmcchar::cx#2 mode_hicolmcchar::ch#2 ] ) always clobbers reg byte y
Statement [484] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [485] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const byte*) mode_hicolecmchar::COLORS#0/(word) $400 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [486] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [487] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [488] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [489] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_hicolecmchar::CHARSET#0/(word) $4000 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [490] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte) 3 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [491] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [492] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_hicolecmchar::CHARSET#0&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [497] *((const byte*) BORDERCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [498] *((const byte*) BGCOL1#0) ← (byte) $50 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [499] *((const byte*) BGCOL2#0) ← (byte) $54 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [500] *((const byte*) BGCOL3#0) ← (byte) $58 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [501] *((const byte*) BGCOL4#0) ← (byte) $5c [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [505] (byte~) mode_hicolecmchar::$27 ← (byte~) mode_hicolecmchar::$26 << (byte) 4 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$27 ] ( main:2::menu:9::mode_hicolecmchar:74 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$27 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:78 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:79 [ mode_hicolecmchar::cx#2 mode_hicolecmchar::cx#1 ]
Statement [506] (byte~) mode_hicolecmchar::$28 ← (byte) mode_hicolecmchar::cx#2 & (byte) $f [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$27 mode_hicolecmchar::$28 ] ( main:2::menu:9::mode_hicolecmchar:74 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$27 mode_hicolecmchar::$28 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:236 [ mode_hicolecmchar::$27 ]
Statement [508] *((byte*) mode_hicolecmchar::col#2) ← (byte) mode_hicolecmchar::v#0 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::v#0 ] ( main:2::menu:9::mode_hicolecmchar:74 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::v#0 ] ) always clobbers reg byte y
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:78 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:79 [ mode_hicolecmchar::cx#2 mode_hicolecmchar::cx#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:238 [ mode_hicolecmchar::v#0 ]
Statement [510] *((byte*) mode_hicolecmchar::ch#2) ← (byte) mode_hicolecmchar::v#0 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::col#1 mode_hicolecmchar::cx#2 mode_hicolecmchar::ch#2 ] ( main:2::menu:9::mode_hicolecmchar:74 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::col#1 mode_hicolecmchar::cx#2 mode_hicolecmchar::ch#2 ] ) always clobbers reg byte y
Statement [519] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] ) always clobbers reg byte a
Statement [520] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const byte*) mode_hicolstdchar::COLORS#0/(word) $400 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] ) always clobbers reg byte a
Statement [521] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] ) always clobbers reg byte a
Statement [522] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] ) always clobbers reg byte a
Statement [523] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] ) always clobbers reg byte a
Statement [524] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_hicolstdchar::CHARSET#0/(word) $4000 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] ) always clobbers reg byte a
Statement [525] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] ) always clobbers reg byte a
Statement [526] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] ) always clobbers reg byte a
Statement [527] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_hicolstdchar::CHARSET#0&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] ) always clobbers reg byte a
Statement [532] *((const byte*) BGCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] ) always clobbers reg byte a
Statement [533] *((const byte*) BORDERCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] ) always clobbers reg byte a
Statement [537] (byte~) mode_hicolstdchar::$26 ← (byte~) mode_hicolstdchar::$25 << (byte) 4 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$26 ] ( main:2::menu:9::mode_hicolstdchar:67 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$26 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:85 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:86 [ mode_hicolstdchar::cx#2 mode_hicolstdchar::cx#1 ]
Statement [538] (byte~) mode_hicolstdchar::$27 ← (byte) mode_hicolstdchar::cx#2 & (byte) $f [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$26 mode_hicolstdchar::$27 ] ( main:2::menu:9::mode_hicolstdchar:67 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$26 mode_hicolstdchar::$27 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:240 [ mode_hicolstdchar::$26 ]
Statement [540] *((byte*) mode_hicolstdchar::col#2) ← (byte) mode_hicolstdchar::v#0 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::v#0 ] ( main:2::menu:9::mode_hicolstdchar:67 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::v#0 ] ) always clobbers reg byte y
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:85 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:86 [ mode_hicolstdchar::cx#2 mode_hicolstdchar::cx#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:242 [ mode_hicolstdchar::v#0 ]
Statement [542] *((byte*) mode_hicolstdchar::ch#2) ← (byte) mode_hicolstdchar::v#0 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::col#1 mode_hicolstdchar::cx#2 mode_hicolstdchar::ch#2 ] ( main:2::menu:9::mode_hicolstdchar:67 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::col#1 mode_hicolstdchar::cx#2 mode_hicolstdchar::ch#2 ] ) always clobbers reg byte y
Statement [551] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] ) always clobbers reg byte a
Statement [552] *((const byte*) DTV_CONTROL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] ) always clobbers reg byte a
Statement [553] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] ) always clobbers reg byte a
Statement [554] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_stdbitmap::BITMAP#0/(word) $4000 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] ) always clobbers reg byte a
Statement [555] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] ) always clobbers reg byte a
Statement [556] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] ) always clobbers reg byte a
Statement [557] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_stdbitmap::BITMAP#0&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] ) always clobbers reg byte a
Statement [559] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdbitmap::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdbitmap::i#2) [ mode_stdbitmap::i#2 ] ( main:2::menu:9::mode_stdbitmap:60 [ mode_stdbitmap::i#2 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:91 [ mode_stdbitmap::i#2 mode_stdbitmap::i#1 ]
Statement [562] *((const byte*) BGCOL#0) ← (const byte) BLACK#0 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] ) always clobbers reg byte a
Statement [563] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] ) always clobbers reg byte a
Statement [566] (byte~) mode_stdbitmap::$22 ← (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#4 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::$22 ] ( main:2::menu:9::mode_stdbitmap:60 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::$22 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:92 [ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:93 [ mode_stdbitmap::cx#2 mode_stdbitmap::cx#1 ]
Statement [568] (byte) mode_stdbitmap::col2#0 ← (byte) $f - (byte) mode_stdbitmap::col#0 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::col#0 mode_stdbitmap::col2#0 ] ( main:2::menu:9::mode_stdbitmap:60 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::col#0 mode_stdbitmap::col2#0 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:244 [ mode_stdbitmap::col#0 ]
Statement [569] (byte~) mode_stdbitmap::$25 ← (byte) mode_stdbitmap::col#0 << (byte) 4 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::col2#0 mode_stdbitmap::$25 ] ( main:2::menu:9::mode_stdbitmap:60 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::col2#0 mode_stdbitmap::$25 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:245 [ mode_stdbitmap::col2#0 ]
Statement [571] *((byte*) mode_stdbitmap::ch#2) ← (byte~) mode_stdbitmap::$26 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 ] ( main:2::menu:9::mode_stdbitmap:60 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 ] ) always clobbers reg byte y
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:92 [ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:93 [ mode_stdbitmap::cx#2 mode_stdbitmap::cx#1 ]
Statement [593] (byte) bitmap_line::xd#2 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:96 [ mode_stdbitmap::l#2 mode_stdbitmap::l#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:248 [ bitmap_line::x0#0 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:249 [ bitmap_line::x1#0 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:250 [ bitmap_line::y0#0 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:251 [ bitmap_line::y1#0 ]
Statement [595] (byte) bitmap_line::yd#2 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:252 [ bitmap_line::xd#2 ]
Statement [610] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ) always clobbers reg byte a
Statement [624] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ) always clobbers reg byte a
Statement [626] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:255 [ bitmap_line::xd#1 ]
Statement [640] (byte) bitmap_line::yd#11 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ) always clobbers reg byte a
Statement [655] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte) 1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:97 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:100 [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#2 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:101 [ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:99 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::x1#1 ]
Statement [661] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ) always clobbers reg byte a
Statement [664] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ) always clobbers reg byte a
Statement [670] (word) bitmap_plot::plotter_x#0 ← *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:102 [ bitmap_line_xdyi::e#3 bitmap_line_xdyi::e#0 bitmap_line_xdyi::e#6 bitmap_line_xdyi::e#2 bitmap_line_xdyi::e#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:103 [ bitmap_plot::x#4 bitmap_plot::x#1 bitmap_plot::x#0 bitmap_plot::x#3 bitmap_plot::x#2 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:104 [ bitmap_plot::y#4 bitmap_plot::y#1 bitmap_plot::y#0 bitmap_plot::y#3 bitmap_plot::y#2 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:105 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:106 [ bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:107 [ bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:108 [ bitmap_line_ydxi::x#3 bitmap_line_ydxi::x#5 bitmap_line_ydxi::x#1 bitmap_line_ydxi::x#0 bitmap_line_ydxi::x#6 bitmap_line_ydxi::x#2 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:109 [ bitmap_line_ydxi::y#3 bitmap_line_ydxi::y#6 bitmap_line_ydxi::y#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::y#2 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:110 [ bitmap_line_ydxi::e#3 bitmap_line_ydxi::e#0 bitmap_line_ydxi::e#6 bitmap_line_ydxi::e#2 bitmap_line_ydxi::e#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:111 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#0 bitmap_line_xdyd::yd#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:112 [ bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::xd#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:113 [ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::x1#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:114 [ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#2 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:115 [ bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:116 [ bitmap_line_xdyd::e#3 bitmap_line_xdyd::e#0 bitmap_line_xdyd::e#6 bitmap_line_xdyd::e#2 bitmap_line_xdyd::e#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:117 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:118 [ bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:119 [ bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:120 [ bitmap_line_ydxd::x#3 bitmap_line_ydxd::x#5 bitmap_line_ydxd::x#0 bitmap_line_ydxd::x#1 bitmap_line_ydxd::x#6 bitmap_line_ydxd::x#2 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:121 [ bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#3 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:122 [ bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 ]
Statement [671] (word) bitmap_plot::plotter_y#0 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) [ bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ) always clobbers reg byte a
Statement [672] (word) bitmap_plot::plotter#0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 [ bitmap_plot::x#4 bitmap_plot::plotter#0 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter#0 ] ) always clobbers reg byte a
Statement [673] (byte~) bitmap_plot::$1 ← *((byte*)(word) bitmap_plot::plotter#0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::plotter#0 bitmap_plot::$1 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::plotter#0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::plotter#0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::plotter#0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::plotter#0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::plotter#0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::plotter#0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::plotter#0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::plotter#0 bitmap_plot::$1 ] ) always clobbers reg byte a reg byte y
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:96 [ mode_stdbitmap::l#2 mode_stdbitmap::l#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:97 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:99 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::x1#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:100 [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#2 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:101 [ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:102 [ bitmap_line_xdyi::e#3 bitmap_line_xdyi::e#0 bitmap_line_xdyi::e#6 bitmap_line_xdyi::e#2 bitmap_line_xdyi::e#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:105 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:106 [ bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:107 [ bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:108 [ bitmap_line_ydxi::x#3 bitmap_line_ydxi::x#5 bitmap_line_ydxi::x#1 bitmap_line_ydxi::x#0 bitmap_line_ydxi::x#6 bitmap_line_ydxi::x#2 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:109 [ bitmap_line_ydxi::y#3 bitmap_line_ydxi::y#6 bitmap_line_ydxi::y#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::y#2 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:110 [ bitmap_line_ydxi::e#3 bitmap_line_ydxi::e#0 bitmap_line_ydxi::e#6 bitmap_line_ydxi::e#2 bitmap_line_ydxi::e#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:111 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#0 bitmap_line_xdyd::yd#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:112 [ bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::xd#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:113 [ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::x1#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:114 [ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#2 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:115 [ bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:116 [ bitmap_line_xdyd::e#3 bitmap_line_xdyd::e#0 bitmap_line_xdyd::e#6 bitmap_line_xdyd::e#2 bitmap_line_xdyd::e#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:117 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:118 [ bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:119 [ bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:120 [ bitmap_line_ydxd::x#3 bitmap_line_ydxd::x#5 bitmap_line_ydxd::x#0 bitmap_line_ydxd::x#1 bitmap_line_ydxd::x#6 bitmap_line_ydxd::x#2 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:121 [ bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#3 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:122 [ bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 ]
Statement [674] *((byte*)(word) bitmap_plot::plotter#0) ← (byte~) bitmap_plot::$1 [ ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ) always clobbers reg byte y
Statement [677] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte) 1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ) always clobbers reg byte a
Statement [683] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ) always clobbers reg byte a
Statement [686] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ) always clobbers reg byte a
Statement [692] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte) 1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ) always clobbers reg byte a
Statement [698] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ) always clobbers reg byte a
Statement [701] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ) always clobbers reg byte a
Statement [707] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte) 1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ) always clobbers reg byte a
Statement [713] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ) always clobbers reg byte a
Statement [716] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ) always clobbers reg byte a
Statement [721] (word) bitmap_clear::bitmap#0 ← *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) [ bitmap_clear::bitmap#0 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_clear:580 [ bitmap_clear::bitmap#0 ] ) always clobbers reg byte a
Statement [722] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word) bitmap_clear::bitmap#0 [ bitmap_clear::bitmap#5 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_clear:580 [ bitmap_clear::bitmap#5 ] ) always clobbers reg byte a
Statement [725] *((byte*) bitmap_clear::bitmap#2) ← (byte) 0 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_clear:580 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ) always clobbers reg byte a reg byte y
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:123 [ bitmap_clear::y#4 bitmap_clear::y#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:123 [ bitmap_clear::y#4 bitmap_clear::y#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:126 [ bitmap_clear::x#2 bitmap_clear::x#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:126 [ bitmap_clear::x#2 bitmap_clear::x#1 ]
Statement [736] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← >(const byte*) mode_stdbitmap::BITMAP#0 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_init:578 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:127 [ bitmap_init::x#2 bitmap_init::x#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:128 [ bitmap_init::bits#3 bitmap_init::bits#4 bitmap_init::bits#1 ]
Statement [737] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_init:578 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a
Statement [752] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (word)(number) $28*(number) 8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_init:578 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:129 [ bitmap_init::y#2 bitmap_init::y#1 ]
Statement [757] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [758] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [759] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [760] *((const byte*) DTV_CONTROL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [761] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [762] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_mcchar::CHARSET#0/(word) $4000 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [763] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [764] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [765] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_mcchar::CHARSET#0&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [767] *((const byte*) DTV_PALETTE#0 + (byte) mode_mcchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_mcchar::i#2) [ mode_mcchar::i#2 ] ( main:2::menu:9::mode_mcchar:53 [ mode_mcchar::i#2 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:132 [ mode_mcchar::i#2 mode_mcchar::i#1 ]
Statement [770] *((const byte*) BORDERCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [771] *((const byte*) BGCOL1#0) ← (const byte) BLACK#0 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [772] *((const byte*) BGCOL2#0) ← (const byte) GREEN#0 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [773] *((const byte*) BGCOL3#0) ← (const byte) BLUE#0 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [776] (byte~) mode_mcchar::$26 ← (byte) mode_mcchar::cx#2 + (byte) mode_mcchar::cy#4 [ mode_mcchar::cy#4 mode_mcchar::cx#2 mode_mcchar::col#2 mode_mcchar::ch#2 mode_mcchar::$26 ] ( main:2::menu:9::mode_mcchar:53 [ mode_mcchar::cy#4 mode_mcchar::cx#2 mode_mcchar::col#2 mode_mcchar::ch#2 mode_mcchar::$26 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:133 [ mode_mcchar::cy#4 mode_mcchar::cy#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:134 [ mode_mcchar::cx#2 mode_mcchar::cx#1 ]
Statement [778] *((byte*) mode_mcchar::col#2) ← (byte~) mode_mcchar::$27 [ mode_mcchar::cy#4 mode_mcchar::cx#2 mode_mcchar::col#2 mode_mcchar::ch#2 ] ( main:2::menu:9::mode_mcchar:53 [ mode_mcchar::cy#4 mode_mcchar::cx#2 mode_mcchar::col#2 mode_mcchar::ch#2 ] ) always clobbers reg byte y
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:133 [ mode_mcchar::cy#4 mode_mcchar::cy#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:134 [ mode_mcchar::cx#2 mode_mcchar::cx#1 ]
Statement [780] (byte~) mode_mcchar::$28 ← (byte) mode_mcchar::cy#4 & (byte) $f [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$28 ] ( main:2::menu:9::mode_mcchar:53 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$28 ] ) always clobbers reg byte a
Statement [781] (byte~) mode_mcchar::$29 ← (byte~) mode_mcchar::$28 << (byte) 4 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$29 ] ( main:2::menu:9::mode_mcchar:53 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$29 ] ) always clobbers reg byte a
Statement [782] (byte~) mode_mcchar::$30 ← (byte) mode_mcchar::cx#2 & (byte) $f [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$29 mode_mcchar::$30 ] ( main:2::menu:9::mode_mcchar:53 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$29 mode_mcchar::$30 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:279 [ mode_mcchar::$29 ]
Statement [784] *((byte*) mode_mcchar::ch#2) ← (byte~) mode_mcchar::$31 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 ] ( main:2::menu:9::mode_mcchar:53 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 ] ) always clobbers reg byte y
Statement [793] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [794] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [795] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [796] *((const byte*) DTV_CONTROL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [797] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [798] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_ecmchar::CHARSET#0/(word) $4000 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [799] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte) 3 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [800] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [801] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_ecmchar::CHARSET#0&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [803] *((const byte*) DTV_PALETTE#0 + (byte) mode_ecmchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_ecmchar::i#2) [ mode_ecmchar::i#2 ] ( main:2::menu:9::mode_ecmchar:46 [ mode_ecmchar::i#2 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:139 [ mode_ecmchar::i#2 mode_ecmchar::i#1 ]
Statement [806] *((const byte*) BORDERCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [807] *((const byte*) BGCOL1#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [808] *((const byte*) BGCOL2#0) ← (byte) 2 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [809] *((const byte*) BGCOL3#0) ← (byte) 5 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [810] *((const byte*) BGCOL4#0) ← (byte) 6 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [813] (byte~) mode_ecmchar::$26 ← (byte) mode_ecmchar::cx#2 + (byte) mode_ecmchar::cy#4 [ mode_ecmchar::cy#4 mode_ecmchar::cx#2 mode_ecmchar::col#2 mode_ecmchar::ch#2 mode_ecmchar::$26 ] ( main:2::menu:9::mode_ecmchar:46 [ mode_ecmchar::cy#4 mode_ecmchar::cx#2 mode_ecmchar::col#2 mode_ecmchar::ch#2 mode_ecmchar::$26 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:140 [ mode_ecmchar::cy#4 mode_ecmchar::cy#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:141 [ mode_ecmchar::cx#2 mode_ecmchar::cx#1 ]
Statement [815] *((byte*) mode_ecmchar::col#2) ← (byte~) mode_ecmchar::$27 [ mode_ecmchar::cy#4 mode_ecmchar::cx#2 mode_ecmchar::col#2 mode_ecmchar::ch#2 ] ( main:2::menu:9::mode_ecmchar:46 [ mode_ecmchar::cy#4 mode_ecmchar::cx#2 mode_ecmchar::col#2 mode_ecmchar::ch#2 ] ) always clobbers reg byte y
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:140 [ mode_ecmchar::cy#4 mode_ecmchar::cy#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:141 [ mode_ecmchar::cx#2 mode_ecmchar::cx#1 ]
Statement [817] (byte~) mode_ecmchar::$28 ← (byte) mode_ecmchar::cy#4 & (byte) $f [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$28 ] ( main:2::menu:9::mode_ecmchar:46 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$28 ] ) always clobbers reg byte a
Statement [818] (byte~) mode_ecmchar::$29 ← (byte~) mode_ecmchar::$28 << (byte) 4 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$29 ] ( main:2::menu:9::mode_ecmchar:46 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$29 ] ) always clobbers reg byte a
Statement [819] (byte~) mode_ecmchar::$30 ← (byte) mode_ecmchar::cx#2 & (byte) $f [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$29 mode_ecmchar::$30 ] ( main:2::menu:9::mode_ecmchar:46 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$29 mode_ecmchar::$30 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:285 [ mode_ecmchar::$29 ]
Statement [821] *((byte*) mode_ecmchar::ch#2) ← (byte~) mode_ecmchar::$31 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 ] ( main:2::menu:9::mode_ecmchar:46 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 ] ) always clobbers reg byte y
Statement [830] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] ) always clobbers reg byte a
Statement [831] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] ) always clobbers reg byte a
Statement [832] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] ) always clobbers reg byte a
Statement [833] *((const byte*) DTV_CONTROL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] ) always clobbers reg byte a
Statement [834] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] ) always clobbers reg byte a
Statement [835] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_stdchar::CHARSET#0/(word) $4000 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] ) always clobbers reg byte a
Statement [836] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] ) always clobbers reg byte a
Statement [837] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] ) always clobbers reg byte a
Statement [838] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_stdchar::CHARSET#0&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] ) always clobbers reg byte a
Statement [840] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdchar::i#2) [ mode_stdchar::i#2 ] ( main:2::menu:9::mode_stdchar:38 [ mode_stdchar::i#2 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:146 [ mode_stdchar::i#2 mode_stdchar::i#1 ]
Statement [843] *((const byte*) BGCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] ) always clobbers reg byte a
Statement [844] *((const byte*) BORDERCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] ) always clobbers reg byte a
Statement [847] (byte~) mode_stdchar::$25 ← (byte) mode_stdchar::cx#2 + (byte) mode_stdchar::cy#4 [ mode_stdchar::cy#4 mode_stdchar::cx#2 mode_stdchar::col#2 mode_stdchar::ch#2 mode_stdchar::$25 ] ( main:2::menu:9::mode_stdchar:38 [ mode_stdchar::cy#4 mode_stdchar::cx#2 mode_stdchar::col#2 mode_stdchar::ch#2 mode_stdchar::$25 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:147 [ mode_stdchar::cy#4 mode_stdchar::cy#1 ]
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:148 [ mode_stdchar::cx#2 mode_stdchar::cx#1 ]
Statement [849] *((byte*) mode_stdchar::col#2) ← (byte~) mode_stdchar::$26 [ mode_stdchar::cy#4 mode_stdchar::cx#2 mode_stdchar::col#2 mode_stdchar::ch#2 ] ( main:2::menu:9::mode_stdchar:38 [ mode_stdchar::cy#4 mode_stdchar::cx#2 mode_stdchar::col#2 mode_stdchar::ch#2 ] ) always clobbers reg byte y
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:147 [ mode_stdchar::cy#4 mode_stdchar::cy#1 ]
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:148 [ mode_stdchar::cx#2 mode_stdchar::cx#1 ]
Statement [851] (byte~) mode_stdchar::$27 ← (byte) mode_stdchar::cy#4 & (byte) $f [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$27 ] ( main:2::menu:9::mode_stdchar:38 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$27 ] ) always clobbers reg byte a
Statement [852] (byte~) mode_stdchar::$28 ← (byte~) mode_stdchar::$27 << (byte) 4 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$28 ] ( main:2::menu:9::mode_stdchar:38 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$28 ] ) always clobbers reg byte a
Statement [853] (byte~) mode_stdchar::$29 ← (byte) mode_stdchar::cx#2 & (byte) $f [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$28 mode_stdchar::$29 ] ( main:2::menu:9::mode_stdchar:38 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$28 mode_stdchar::$29 ] ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:291 [ mode_stdchar::$28 ]
Statement [855] *((byte*) mode_stdchar::ch#2) ← (byte~) mode_stdchar::$30 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 ] ( main:2::menu:9::mode_stdchar:38 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 ] ) always clobbers reg byte y
Statement [866] if((byte) 0!=*((byte*) print_str_lines::str#2)) goto print_str_lines::@2 [ print_str_lines::str#2 print_char_cursor#19 print_line_cursor#17 ] ( main:2::menu:9::print_str_lines:31 [ print_str_lines::str#2 print_char_cursor#19 print_line_cursor#17 ] ) always clobbers reg byte a reg byte y
Statement [869] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#3) [ print_line_cursor#17 print_str_lines::str#3 print_char_cursor#17 print_str_lines::ch#0 ] ( main:2::menu:9::print_str_lines:31 [ print_line_cursor#17 print_str_lines::str#3 print_char_cursor#17 print_str_lines::ch#0 ] ) always clobbers reg byte a reg byte y
Statement [872] *((byte*) print_char_cursor#17) ← (byte) print_str_lines::ch#0 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#17 print_str_lines::ch#0 ] ( main:2::menu:9::print_str_lines:31 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#17 print_str_lines::ch#0 ] ) always clobbers reg byte y
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:294 [ print_str_lines::ch#0 ]
Statement [878] (byte*~) print_char_cursor#100 ← (byte*) print_line_cursor#19 [ print_str_lines::str#0 print_char_cursor#100 print_line_cursor#19 ] ( main:2::menu:9::print_str_lines:31 [ print_str_lines::str#0 print_char_cursor#100 print_line_cursor#19 ] ) always clobbers reg byte a
Statement [881] (byte*) print_line_cursor#19 ← (byte*) print_line_cursor#18 + (byte) $28 [ print_line_cursor#19 print_char_cursor#32 ] ( main:2::menu:9::print_str_lines:31::print_ln:877 [ print_str_lines::str#0 print_line_cursor#19 print_char_cursor#32 ] ) always clobbers reg byte a
Statement [882] if((byte*) print_line_cursor#19<(byte*) print_char_cursor#32) goto print_ln::@1 [ print_line_cursor#19 print_char_cursor#32 ] ( main:2::menu:9::print_str_lines:31::print_ln:877 [ print_str_lines::str#0 print_line_cursor#19 print_char_cursor#32 ] ) always clobbers reg byte a
Statement [889] if((byte*) memset::dst#2!=(const byte*) memset::end#0) goto memset::@2 [ memset::dst#2 ] ( main:2::menu:9::print_cls:29::memset:885 [ memset::dst#2 ] ) always clobbers reg byte a
Statement [891] *((byte*) memset::dst#2) ← (const byte) memset::c#0 [ memset::dst#2 ] ( main:2::menu:9::print_cls:29::memset:885 [ memset::dst#2 ] ) always clobbers reg byte a reg byte y
Statement [5] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 [ ] ( main:2 [ ] ) always clobbers reg byte a
Statement [6] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 [ ] ( main:2 [ ] ) always clobbers reg byte a
Statement [7] *((const byte*) DTV_FEATURE#0) ← (const byte) DTV_FEATURE_ENABLE#0 [ ] ( main:2 [ ] ) always clobbers reg byte a
Statement [10] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a
Statement [11] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a
Statement [12] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a
Statement [13] *((const byte*) DTV_CONTROL#0) ← (byte) 0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a
Statement [14] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a
Statement [15] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) menu::CHARSET#0/(word) $4000 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a
Statement [16] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a
Statement [17] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a
Statement [18] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) menu::CHARSET#0&(word) $3fff/(word) $400 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a
Statement [20] *((const byte*) DTV_PALETTE#0 + (byte) menu::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) menu::i#2) [ menu::i#2 ] ( main:2::menu:9 [ menu::i#2 ] ) always clobbers reg byte a
Statement [24] if((byte*) menu::c#2!=(const byte*) COLS#0+(word) $3e8) goto menu::@3 [ menu::c#2 ] ( main:2::menu:9 [ menu::c#2 ] ) always clobbers reg byte a
Statement [25] *((const byte*) BGCOL#0) ← (byte) 0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a
Statement [26] *((const byte*) BORDERCOL#0) ← (byte) 0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a
Statement [117] *((byte*) menu::c#2) ← (const byte) LIGHT_GREEN#0 [ menu::c#2 ] ( main:2::menu:9 [ menu::c#2 ] ) always clobbers reg byte a reg byte y
Statement [119] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] ) always clobbers reg byte a
Statement [120] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] ) always clobbers reg byte a
Statement [121] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] ) always clobbers reg byte a
Statement [122] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] ) always clobbers reg byte a
Statement [123] *((const byte*) DTV_PLANEB_START_MI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] ) always clobbers reg byte a
Statement [124] *((const byte*) DTV_PLANEB_START_HI#0) ← <>(const dword) mode_8bppchunkybmm::PLANEB#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] ) always clobbers reg byte a
Statement [125] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 8 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] ) always clobbers reg byte a
Statement [126] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] ) always clobbers reg byte a
Statement [127] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] ) always clobbers reg byte a
Statement [128] *((const byte*) BORDERCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] ) always clobbers reg byte a
Statement [137] if((byte*) mode_8bppchunkybmm::gfxb#3!=(word) $8000) goto mode_8bppchunkybmm::@5 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxbCpuBank#4 ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxbCpuBank#4 ] ) always clobbers reg byte a
Statement [142] (word~) mode_8bppchunkybmm::$26 ← (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::$26 ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::$26 ] ) always clobbers reg byte a
Statement [143] (byte) mode_8bppchunkybmm::c#0 ← (byte)(word~) mode_8bppchunkybmm::$26 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::c#0 ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::c#0 ] ) always clobbers reg byte a
Statement [144] *((byte*) mode_8bppchunkybmm::gfxb#4) ← (byte) mode_8bppchunkybmm::c#0 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 ] ) always clobbers reg byte y
Statement [147] if((word) mode_8bppchunkybmm::x#1!=(word) $140) goto mode_8bppchunkybmm::@4 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxb#1 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#1 ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxb#1 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#1 ] ) always clobbers reg byte a
Statement [157] if(*((const byte*) RASTER#0)!=(byte) $ff) goto mode_ctrl::@2 [ dtv_control#114 ] ( main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153 [ dtv_control#114 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280 [ dtv_control#114 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333 [ dtv_control#114 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391 [ dtv_control#114 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448 [ dtv_control#114 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482 [ dtv_control#114 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517 [ dtv_control#114 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549 [ dtv_control#114 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584 [ dtv_control#114 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791 [ dtv_control#114 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828 [ dtv_control#114 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862 [ dtv_control#114 ] ) always clobbers reg byte a
Statement [169] (byte) mode_ctrl::ctrl#1 ← (byte) mode_ctrl::ctrl#0 | (const byte) DTV_LINEAR#0 [ dtv_control#114 mode_ctrl::ctrl#1 ] ( main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862 [ dtv_control#114 mode_ctrl::ctrl#1 ] ) always clobbers reg byte a
Statement [175] (byte) mode_ctrl::ctrl#2 ← (byte) mode_ctrl::ctrl#17 | (const byte) DTV_HIGHCOLOR#0 [ dtv_control#114 mode_ctrl::ctrl#2 ] ( main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862 [ dtv_control#114 mode_ctrl::ctrl#2 ] ) always clobbers reg byte a
Statement [181] (byte) mode_ctrl::ctrl#3 ← (byte) mode_ctrl::ctrl#10 | (const byte) DTV_OVERSCAN#0 [ dtv_control#114 mode_ctrl::ctrl#3 ] ( main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862 [ dtv_control#114 mode_ctrl::ctrl#3 ] ) always clobbers reg byte a
Statement [187] (byte) mode_ctrl::ctrl#4 ← (byte) mode_ctrl::ctrl#11 | (const byte) DTV_BORDER_OFF#0 [ dtv_control#114 mode_ctrl::ctrl#4 ] ( main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862 [ dtv_control#114 mode_ctrl::ctrl#4 ] ) always clobbers reg byte a
Statement [193] (byte) mode_ctrl::ctrl#5 ← (byte) mode_ctrl::ctrl#12 | (const byte) DTV_CHUNKY#0 [ dtv_control#114 mode_ctrl::ctrl#5 ] ( main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862 [ dtv_control#114 mode_ctrl::ctrl#5 ] ) always clobbers reg byte a
Statement [199] (byte) mode_ctrl::ctrl#6 ← (byte) mode_ctrl::ctrl#13 | (const byte) DTV_COLORRAM_OFF#0 [ dtv_control#114 mode_ctrl::ctrl#6 ] ( main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862 [ dtv_control#114 mode_ctrl::ctrl#6 ] ) always clobbers reg byte a
Statement [213] (byte) keyboard_key_pressed::rowidx#0 ← (byte) keyboard_key_pressed::key#20 >> (byte) 3 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] ( main:2::menu:9::keyboard_key_pressed:33 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:41 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:48 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:55 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:62 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:69 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:76 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:83 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:90 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:97 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:104 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:111 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] ) always clobbers reg byte a
Statement [220] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::menu:9::keyboard_key_pressed:33::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:41::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:48::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:55::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:62::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:69::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:76::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:83::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:90::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:97::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:104::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:111::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] ) always clobbers reg byte a
Statement [221] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::menu:9::keyboard_key_pressed:33::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:41::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:48::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:55::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:62::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:69::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:76::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:83::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:90::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:97::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:104::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:111::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:116::mode_ctrl:153::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:109::mode_ctrl:280::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:102::mode_ctrl:333::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:95::mode_ctrl:391::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:88::mode_ctrl:448::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:81::mode_ctrl:482::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:74::mode_ctrl:517::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:67::mode_ctrl:549::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:60::mode_ctrl:584::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:53::mode_ctrl:791::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:46::mode_ctrl:828::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:38::mode_ctrl:862::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] ) always clobbers reg byte a
Statement asm { .byte$32,$dd lda$ff .byte$32,$00 } always clobbers reg byte a
Statement [227] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [228] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [229] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [230] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [231] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_8bpppixelcell::PLANEA#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [232] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [233] *((const byte*) DTV_PLANEA_STEP#0) ← (byte) 1 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [234] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [235] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [236] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [237] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_8bpppixelcell::PLANEB#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [238] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [239] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [240] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [241] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [242] *((const byte*) BORDERCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [249] (byte~) mode_8bpppixelcell::$14 ← (byte) mode_8bpppixelcell::ay#4 & (byte) $f [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$14 ] ( main:2::menu:9::mode_8bpppixelcell:109 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$14 ] ) always clobbers reg byte a
Statement [250] (byte~) mode_8bpppixelcell::$15 ← (byte~) mode_8bpppixelcell::$14 << (byte) 4 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$15 ] ( main:2::menu:9::mode_8bpppixelcell:109 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$15 ] ) always clobbers reg byte a
Statement [251] (byte~) mode_8bpppixelcell::$16 ← (byte) mode_8bpppixelcell::ax#2 & (byte) $f [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$15 mode_8bpppixelcell::$16 ] ( main:2::menu:9::mode_8bpppixelcell:109 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$15 mode_8bpppixelcell::$16 ] ) always clobbers reg byte a
Statement [253] *((byte*) mode_8bpppixelcell::gfxa#2) ← (byte~) mode_8bpppixelcell::$17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 ] ( main:2::menu:9::mode_8bpppixelcell:109 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 ] ) always clobbers reg byte y
Statement [259] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_CHARROM#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [262] (byte) mode_8bpppixelcell::bits#0 ← *((byte*) mode_8bpppixelcell::chargen#2) [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::col#5 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::bits#0 ] ( main:2::menu:9::mode_8bpppixelcell:109 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::col#5 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::bits#0 ] ) always clobbers reg byte a reg byte y
Statement [269] *((byte*) mode_8bpppixelcell::gfxb#2) ← (byte) mode_8bpppixelcell::c#2 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::chargen#1 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::bits#2 mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::col#2 mode_8bpppixelcell::cp#2 ] ( main:2::menu:9::mode_8bpppixelcell:109 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::chargen#1 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::bits#2 mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::col#2 mode_8bpppixelcell::cp#2 ] ) always clobbers reg byte y
Statement [279] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] ) always clobbers reg byte a
Statement [282] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [283] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [284] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [285] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [286] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_sixsfred::PLANEA#0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [287] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [288] *((const byte*) DTV_PLANEA_STEP#0) ← (byte) 1 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [289] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [290] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [291] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [292] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_sixsfred::PLANEB#0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [293] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [294] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 1 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [295] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [296] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [297] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_sixsfred::COLORS#0/(word) $400 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [298] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [303] *((const byte*) BORDERCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] ) always clobbers reg byte a
Statement [306] (byte~) mode_sixsfred::$17 ← (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#4 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 mode_sixsfred::$17 ] ( main:2::menu:9::mode_sixsfred:102 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 mode_sixsfred::$17 ] ) always clobbers reg byte a
Statement [308] *((byte*) mode_sixsfred::col#2) ← (byte~) mode_sixsfred::$18 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 ] ( main:2::menu:9::mode_sixsfred:102 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 ] ) always clobbers reg byte y
Statement [316] (byte~) mode_sixsfred::$21 ← (byte) mode_sixsfred::ay#4 >> (byte) 1 [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 mode_sixsfred::$21 ] ( main:2::menu:9::mode_sixsfred:102 [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 mode_sixsfred::$21 ] ) always clobbers reg byte a
Statement [318] *((byte*) mode_sixsfred::gfxa#2) ← *((const byte[]) mode_sixsfred::row_bitmask#0 + (byte) mode_sixsfred::row#0) [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 ] ( main:2::menu:9::mode_sixsfred:102 [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 ] ) always clobbers reg byte a reg byte y
Statement [326] *((byte*) mode_sixsfred::gfxb#2) ← (byte) $1b [ mode_sixsfred::by#4 mode_sixsfred::gfxb#2 mode_sixsfred::bx#2 ] ( main:2::menu:9::mode_sixsfred:102 [ mode_sixsfred::by#4 mode_sixsfred::gfxb#2 mode_sixsfred::bx#2 ] ) always clobbers reg byte a reg byte y
Statement [335] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [336] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [337] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [338] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [339] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_twoplanebitmap::PLANEA#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [340] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [341] *((const byte*) DTV_PLANEA_STEP#0) ← (byte) 1 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [342] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [343] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [344] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [345] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_twoplanebitmap::PLANEB#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [346] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [347] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 1 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [348] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [349] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [350] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_twoplanebitmap::COLORS#0/(word) $400 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [351] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [356] *((const byte*) BORDERCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [357] *((const byte*) BGCOL1#0) ← (byte) $70 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [358] *((const byte*) BGCOL2#0) ← (byte) $d4 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] ) always clobbers reg byte a
Statement [361] (byte~) mode_twoplanebitmap::$16 ← (byte) mode_twoplanebitmap::cy#4 & (byte) $f [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$16 ] ( main:2::menu:9::mode_twoplanebitmap:95 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$16 ] ) always clobbers reg byte a
Statement [362] (byte~) mode_twoplanebitmap::$17 ← (byte~) mode_twoplanebitmap::$16 << (byte) 4 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$17 ] ( main:2::menu:9::mode_twoplanebitmap:95 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$17 ] ) always clobbers reg byte a
Statement [363] (byte~) mode_twoplanebitmap::$18 ← (byte) mode_twoplanebitmap::cx#2 & (byte) $f [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$17 mode_twoplanebitmap::$18 ] ( main:2::menu:9::mode_twoplanebitmap:95 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$17 mode_twoplanebitmap::$18 ] ) always clobbers reg byte a
Statement [365] *((byte*) mode_twoplanebitmap::col#2) ← (byte~) mode_twoplanebitmap::$19 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 ] ( main:2::menu:9::mode_twoplanebitmap:95 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 ] ) always clobbers reg byte y
Statement [373] (byte~) mode_twoplanebitmap::$22 ← (byte) mode_twoplanebitmap::ay#5 & (byte) 4 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 mode_twoplanebitmap::$22 ] ( main:2::menu:9::mode_twoplanebitmap:95 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 mode_twoplanebitmap::$22 ] ) always clobbers reg byte a
Statement [375] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte) $ff [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ( main:2::menu:9::mode_twoplanebitmap:95 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ) always clobbers reg byte a reg byte y
Statement [384] *((byte*) mode_twoplanebitmap::gfxb#2) ← (byte) $f [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::bx#2 ] ( main:2::menu:9::mode_twoplanebitmap:95 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::bx#2 ] ) always clobbers reg byte a reg byte y
Statement [393] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte) 0 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ( main:2::menu:9::mode_twoplanebitmap:95 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ) always clobbers reg byte a reg byte y
Statement [395] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_LINEAR#0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [396] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [397] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [398] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [399] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_sixsfred2::PLANEA#0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [400] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [401] *((const byte*) DTV_PLANEA_STEP#0) ← (byte) 1 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [402] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [403] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [404] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [405] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_sixsfred2::PLANEB#0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [406] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [407] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 1 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [408] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [409] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [410] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_sixsfred2::COLORS#0/(word) $400 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [411] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [416] *((const byte*) BORDERCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] ) always clobbers reg byte a
Statement [419] (byte~) mode_sixsfred2::$15 ← (byte) mode_sixsfred2::cx#2 & (byte) 3 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$15 ] ( main:2::menu:9::mode_sixsfred2:88 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$15 ] ) always clobbers reg byte a
Statement [420] (byte~) mode_sixsfred2::$16 ← (byte~) mode_sixsfred2::$15 << (byte) 4 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$16 ] ( main:2::menu:9::mode_sixsfred2:88 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$16 ] ) always clobbers reg byte a
Statement [421] (byte~) mode_sixsfred2::$17 ← (byte) mode_sixsfred2::cy#4 & (byte) 3 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$16 mode_sixsfred2::$17 ] ( main:2::menu:9::mode_sixsfred2:88 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$16 mode_sixsfred2::$17 ] ) always clobbers reg byte a
Statement [423] *((byte*) mode_sixsfred2::col#2) ← (byte~) mode_sixsfred2::$18 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 ] ( main:2::menu:9::mode_sixsfred2:88 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 ] ) always clobbers reg byte y
Statement [431] (byte~) mode_sixsfred2::$21 ← (byte) mode_sixsfred2::ay#4 >> (byte) 1 [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 mode_sixsfred2::$21 ] ( main:2::menu:9::mode_sixsfred2:88 [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 mode_sixsfred2::$21 ] ) always clobbers reg byte a
Statement [433] *((byte*) mode_sixsfred2::gfxa#2) ← *((const byte[]) mode_sixsfred2::row_bitmask#0 + (byte) mode_sixsfred2::row#0) [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 ] ( main:2::menu:9::mode_sixsfred2:88 [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 ] ) always clobbers reg byte a reg byte y
Statement [441] *((byte*) mode_sixsfred2::gfxb#2) ← (byte) $1b [ mode_sixsfred2::by#4 mode_sixsfred2::gfxb#2 mode_sixsfred2::bx#2 ] ( main:2::menu:9::mode_sixsfred2:88 [ mode_sixsfred2::by#4 mode_sixsfred2::gfxb#2 mode_sixsfred2::bx#2 ] ) always clobbers reg byte a reg byte y
Statement [450] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [451] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const byte*) mode_hicolmcchar::COLORS#0/(word) $400 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [452] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [453] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [454] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [455] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_hicolmcchar::CHARSET#0/(word) $4000 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [456] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [457] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [458] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_hicolmcchar::CHARSET#0&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [463] *((const byte*) BORDERCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [464] *((const byte*) BGCOL1#0) ← (byte) $50 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [465] *((const byte*) BGCOL2#0) ← (byte) $54 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [466] *((const byte*) BGCOL3#0) ← (byte) $58 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] ) always clobbers reg byte a
Statement [469] (byte~) mode_hicolmcchar::$26 ← (byte) mode_hicolmcchar::cy#4 & (byte) $f [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$26 ] ( main:2::menu:9::mode_hicolmcchar:81 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$26 ] ) always clobbers reg byte a
Statement [470] (byte~) mode_hicolmcchar::$27 ← (byte~) mode_hicolmcchar::$26 << (byte) 4 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$27 ] ( main:2::menu:9::mode_hicolmcchar:81 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$27 ] ) always clobbers reg byte a
Statement [471] (byte~) mode_hicolmcchar::$28 ← (byte) mode_hicolmcchar::cx#2 & (byte) $f [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$27 mode_hicolmcchar::$28 ] ( main:2::menu:9::mode_hicolmcchar:81 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$27 mode_hicolmcchar::$28 ] ) always clobbers reg byte a
Statement [473] *((byte*) mode_hicolmcchar::col#2) ← (byte) mode_hicolmcchar::v#0 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::v#0 ] ( main:2::menu:9::mode_hicolmcchar:81 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::v#0 ] ) always clobbers reg byte y
Statement [475] *((byte*) mode_hicolmcchar::ch#2) ← (byte) mode_hicolmcchar::v#0 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::col#1 mode_hicolmcchar::cx#2 mode_hicolmcchar::ch#2 ] ( main:2::menu:9::mode_hicolmcchar:81 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::col#1 mode_hicolmcchar::cx#2 mode_hicolmcchar::ch#2 ] ) always clobbers reg byte y
Statement [484] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [485] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const byte*) mode_hicolecmchar::COLORS#0/(word) $400 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [486] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [487] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [488] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [489] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_hicolecmchar::CHARSET#0/(word) $4000 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [490] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte) 3 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [491] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [492] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_hicolecmchar::CHARSET#0&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [497] *((const byte*) BORDERCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [498] *((const byte*) BGCOL1#0) ← (byte) $50 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [499] *((const byte*) BGCOL2#0) ← (byte) $54 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [500] *((const byte*) BGCOL3#0) ← (byte) $58 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [501] *((const byte*) BGCOL4#0) ← (byte) $5c [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] ) always clobbers reg byte a
Statement [504] (byte~) mode_hicolecmchar::$26 ← (byte) mode_hicolecmchar::cy#4 & (byte) $f [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$26 ] ( main:2::menu:9::mode_hicolecmchar:74 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$26 ] ) always clobbers reg byte a
Statement [505] (byte~) mode_hicolecmchar::$27 ← (byte~) mode_hicolecmchar::$26 << (byte) 4 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$27 ] ( main:2::menu:9::mode_hicolecmchar:74 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$27 ] ) always clobbers reg byte a
Statement [506] (byte~) mode_hicolecmchar::$28 ← (byte) mode_hicolecmchar::cx#2 & (byte) $f [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$27 mode_hicolecmchar::$28 ] ( main:2::menu:9::mode_hicolecmchar:74 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$27 mode_hicolecmchar::$28 ] ) always clobbers reg byte a
Statement [508] *((byte*) mode_hicolecmchar::col#2) ← (byte) mode_hicolecmchar::v#0 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::v#0 ] ( main:2::menu:9::mode_hicolecmchar:74 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::v#0 ] ) always clobbers reg byte y
Statement [510] *((byte*) mode_hicolecmchar::ch#2) ← (byte) mode_hicolecmchar::v#0 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::col#1 mode_hicolecmchar::cx#2 mode_hicolecmchar::ch#2 ] ( main:2::menu:9::mode_hicolecmchar:74 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::col#1 mode_hicolecmchar::cx#2 mode_hicolecmchar::ch#2 ] ) always clobbers reg byte y
Statement [519] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] ) always clobbers reg byte a
Statement [520] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const byte*) mode_hicolstdchar::COLORS#0/(word) $400 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] ) always clobbers reg byte a
Statement [521] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] ) always clobbers reg byte a
Statement [522] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] ) always clobbers reg byte a
Statement [523] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] ) always clobbers reg byte a
Statement [524] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_hicolstdchar::CHARSET#0/(word) $4000 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] ) always clobbers reg byte a
Statement [525] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] ) always clobbers reg byte a
Statement [526] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] ) always clobbers reg byte a
Statement [527] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_hicolstdchar::CHARSET#0&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] ) always clobbers reg byte a
Statement [532] *((const byte*) BGCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] ) always clobbers reg byte a
Statement [533] *((const byte*) BORDERCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] ) always clobbers reg byte a
Statement [536] (byte~) mode_hicolstdchar::$25 ← (byte) mode_hicolstdchar::cy#4 & (byte) $f [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$25 ] ( main:2::menu:9::mode_hicolstdchar:67 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$25 ] ) always clobbers reg byte a
Statement [537] (byte~) mode_hicolstdchar::$26 ← (byte~) mode_hicolstdchar::$25 << (byte) 4 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$26 ] ( main:2::menu:9::mode_hicolstdchar:67 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$26 ] ) always clobbers reg byte a
Statement [538] (byte~) mode_hicolstdchar::$27 ← (byte) mode_hicolstdchar::cx#2 & (byte) $f [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$26 mode_hicolstdchar::$27 ] ( main:2::menu:9::mode_hicolstdchar:67 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$26 mode_hicolstdchar::$27 ] ) always clobbers reg byte a
Statement [540] *((byte*) mode_hicolstdchar::col#2) ← (byte) mode_hicolstdchar::v#0 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::v#0 ] ( main:2::menu:9::mode_hicolstdchar:67 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::v#0 ] ) always clobbers reg byte y
Statement [542] *((byte*) mode_hicolstdchar::ch#2) ← (byte) mode_hicolstdchar::v#0 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::col#1 mode_hicolstdchar::cx#2 mode_hicolstdchar::ch#2 ] ( main:2::menu:9::mode_hicolstdchar:67 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::col#1 mode_hicolstdchar::cx#2 mode_hicolstdchar::ch#2 ] ) always clobbers reg byte y
Statement [551] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] ) always clobbers reg byte a
Statement [552] *((const byte*) DTV_CONTROL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] ) always clobbers reg byte a
Statement [553] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] ) always clobbers reg byte a
Statement [554] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_stdbitmap::BITMAP#0/(word) $4000 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] ) always clobbers reg byte a
Statement [555] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] ) always clobbers reg byte a
Statement [556] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] ) always clobbers reg byte a
Statement [557] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_stdbitmap::BITMAP#0&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] ) always clobbers reg byte a
Statement [559] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdbitmap::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdbitmap::i#2) [ mode_stdbitmap::i#2 ] ( main:2::menu:9::mode_stdbitmap:60 [ mode_stdbitmap::i#2 ] ) always clobbers reg byte a
Statement [562] *((const byte*) BGCOL#0) ← (const byte) BLACK#0 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] ) always clobbers reg byte a
Statement [563] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] ) always clobbers reg byte a
Statement [566] (byte~) mode_stdbitmap::$22 ← (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#4 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::$22 ] ( main:2::menu:9::mode_stdbitmap:60 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::$22 ] ) always clobbers reg byte a
Statement [568] (byte) mode_stdbitmap::col2#0 ← (byte) $f - (byte) mode_stdbitmap::col#0 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::col#0 mode_stdbitmap::col2#0 ] ( main:2::menu:9::mode_stdbitmap:60 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::col#0 mode_stdbitmap::col2#0 ] ) always clobbers reg byte a
Statement [569] (byte~) mode_stdbitmap::$25 ← (byte) mode_stdbitmap::col#0 << (byte) 4 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::col2#0 mode_stdbitmap::$25 ] ( main:2::menu:9::mode_stdbitmap:60 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::col2#0 mode_stdbitmap::$25 ] ) always clobbers reg byte a
Statement [571] *((byte*) mode_stdbitmap::ch#2) ← (byte~) mode_stdbitmap::$26 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 ] ( main:2::menu:9::mode_stdbitmap:60 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 ] ) always clobbers reg byte y
Statement [593] (byte) bitmap_line::xd#2 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ) always clobbers reg byte a
Statement [595] (byte) bitmap_line::yd#2 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ) always clobbers reg byte a
Statement [610] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ) always clobbers reg byte a
Statement [624] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ) always clobbers reg byte a
Statement [626] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ) always clobbers reg byte a
Statement [640] (byte) bitmap_line::yd#11 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ) always clobbers reg byte a
Statement [655] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte) 1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ) always clobbers reg byte a
Statement [661] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ) always clobbers reg byte a
Statement [664] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ) always clobbers reg byte a
Statement [670] (word) bitmap_plot::plotter_x#0 ← *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ) always clobbers reg byte a
Statement [671] (word) bitmap_plot::plotter_y#0 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) [ bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ) always clobbers reg byte a
Statement [672] (word) bitmap_plot::plotter#0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 [ bitmap_plot::x#4 bitmap_plot::plotter#0 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter#0 ] ) always clobbers reg byte a
Statement [673] (byte~) bitmap_plot::$1 ← *((byte*)(word) bitmap_plot::plotter#0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::plotter#0 bitmap_plot::$1 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::plotter#0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::plotter#0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::plotter#0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::plotter#0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::plotter#0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::plotter#0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::plotter#0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::plotter#0 bitmap_plot::$1 ] ) always clobbers reg byte a reg byte y
Statement [674] *((byte*)(word) bitmap_plot::plotter#0) ← (byte~) bitmap_plot::$1 [ ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ) always clobbers reg byte y
Statement [677] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte) 1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ) always clobbers reg byte a
Statement [683] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ) always clobbers reg byte a
Statement [686] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ) always clobbers reg byte a
Statement [692] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte) 1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ) always clobbers reg byte a
Statement [698] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ) always clobbers reg byte a
Statement [701] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ) always clobbers reg byte a
Statement [707] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte) 1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ) always clobbers reg byte a
Statement [713] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ) always clobbers reg byte a
Statement [716] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] main:2::menu:9::mode_stdbitmap:60::bitmap_line:590::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ) always clobbers reg byte a
Statement [721] (word) bitmap_clear::bitmap#0 ← *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) [ bitmap_clear::bitmap#0 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_clear:580 [ bitmap_clear::bitmap#0 ] ) always clobbers reg byte a
Statement [722] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word) bitmap_clear::bitmap#0 [ bitmap_clear::bitmap#5 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_clear:580 [ bitmap_clear::bitmap#5 ] ) always clobbers reg byte a
Statement [725] *((byte*) bitmap_clear::bitmap#2) ← (byte) 0 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_clear:580 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ) always clobbers reg byte a reg byte y
Statement [734] (byte~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (byte) $f8 [ bitmap_init::x#2 bitmap_init::bits#3 bitmap_init::$0 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_init:578 [ bitmap_init::x#2 bitmap_init::bits#3 bitmap_init::$0 ] ) always clobbers reg byte a
Statement [736] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← >(const byte*) mode_stdbitmap::BITMAP#0 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_init:578 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a
Statement [737] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_init:578 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a
Statement [745] (byte~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte) 7 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$10 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_init:578 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$10 ] ) always clobbers reg byte a
Statement [752] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (word)(number) $28*(number) 8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ( main:2::menu:9::mode_stdbitmap:60::bitmap_init:578 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ) always clobbers reg byte a
Statement [757] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [758] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [759] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [760] *((const byte*) DTV_CONTROL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [761] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [762] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_mcchar::CHARSET#0/(word) $4000 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [763] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [764] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [765] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_mcchar::CHARSET#0&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [767] *((const byte*) DTV_PALETTE#0 + (byte) mode_mcchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_mcchar::i#2) [ mode_mcchar::i#2 ] ( main:2::menu:9::mode_mcchar:53 [ mode_mcchar::i#2 ] ) always clobbers reg byte a
Statement [770] *((const byte*) BORDERCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [771] *((const byte*) BGCOL1#0) ← (const byte) BLACK#0 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [772] *((const byte*) BGCOL2#0) ← (const byte) GREEN#0 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [773] *((const byte*) BGCOL3#0) ← (const byte) BLUE#0 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] ) always clobbers reg byte a
Statement [776] (byte~) mode_mcchar::$26 ← (byte) mode_mcchar::cx#2 + (byte) mode_mcchar::cy#4 [ mode_mcchar::cy#4 mode_mcchar::cx#2 mode_mcchar::col#2 mode_mcchar::ch#2 mode_mcchar::$26 ] ( main:2::menu:9::mode_mcchar:53 [ mode_mcchar::cy#4 mode_mcchar::cx#2 mode_mcchar::col#2 mode_mcchar::ch#2 mode_mcchar::$26 ] ) always clobbers reg byte a
Statement [778] *((byte*) mode_mcchar::col#2) ← (byte~) mode_mcchar::$27 [ mode_mcchar::cy#4 mode_mcchar::cx#2 mode_mcchar::col#2 mode_mcchar::ch#2 ] ( main:2::menu:9::mode_mcchar:53 [ mode_mcchar::cy#4 mode_mcchar::cx#2 mode_mcchar::col#2 mode_mcchar::ch#2 ] ) always clobbers reg byte y
Statement [780] (byte~) mode_mcchar::$28 ← (byte) mode_mcchar::cy#4 & (byte) $f [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$28 ] ( main:2::menu:9::mode_mcchar:53 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$28 ] ) always clobbers reg byte a
Statement [781] (byte~) mode_mcchar::$29 ← (byte~) mode_mcchar::$28 << (byte) 4 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$29 ] ( main:2::menu:9::mode_mcchar:53 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$29 ] ) always clobbers reg byte a
Statement [782] (byte~) mode_mcchar::$30 ← (byte) mode_mcchar::cx#2 & (byte) $f [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$29 mode_mcchar::$30 ] ( main:2::menu:9::mode_mcchar:53 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$29 mode_mcchar::$30 ] ) always clobbers reg byte a
Statement [784] *((byte*) mode_mcchar::ch#2) ← (byte~) mode_mcchar::$31 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 ] ( main:2::menu:9::mode_mcchar:53 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 ] ) always clobbers reg byte y
Statement [793] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [794] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [795] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [796] *((const byte*) DTV_CONTROL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [797] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [798] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_ecmchar::CHARSET#0/(word) $4000 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [799] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte) 3 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [800] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [801] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_ecmchar::CHARSET#0&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [803] *((const byte*) DTV_PALETTE#0 + (byte) mode_ecmchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_ecmchar::i#2) [ mode_ecmchar::i#2 ] ( main:2::menu:9::mode_ecmchar:46 [ mode_ecmchar::i#2 ] ) always clobbers reg byte a
Statement [806] *((const byte*) BORDERCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [807] *((const byte*) BGCOL1#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [808] *((const byte*) BGCOL2#0) ← (byte) 2 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [809] *((const byte*) BGCOL3#0) ← (byte) 5 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [810] *((const byte*) BGCOL4#0) ← (byte) 6 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] ) always clobbers reg byte a
Statement [813] (byte~) mode_ecmchar::$26 ← (byte) mode_ecmchar::cx#2 + (byte) mode_ecmchar::cy#4 [ mode_ecmchar::cy#4 mode_ecmchar::cx#2 mode_ecmchar::col#2 mode_ecmchar::ch#2 mode_ecmchar::$26 ] ( main:2::menu:9::mode_ecmchar:46 [ mode_ecmchar::cy#4 mode_ecmchar::cx#2 mode_ecmchar::col#2 mode_ecmchar::ch#2 mode_ecmchar::$26 ] ) always clobbers reg byte a
Statement [815] *((byte*) mode_ecmchar::col#2) ← (byte~) mode_ecmchar::$27 [ mode_ecmchar::cy#4 mode_ecmchar::cx#2 mode_ecmchar::col#2 mode_ecmchar::ch#2 ] ( main:2::menu:9::mode_ecmchar:46 [ mode_ecmchar::cy#4 mode_ecmchar::cx#2 mode_ecmchar::col#2 mode_ecmchar::ch#2 ] ) always clobbers reg byte y
Statement [817] (byte~) mode_ecmchar::$28 ← (byte) mode_ecmchar::cy#4 & (byte) $f [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$28 ] ( main:2::menu:9::mode_ecmchar:46 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$28 ] ) always clobbers reg byte a
Statement [818] (byte~) mode_ecmchar::$29 ← (byte~) mode_ecmchar::$28 << (byte) 4 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$29 ] ( main:2::menu:9::mode_ecmchar:46 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$29 ] ) always clobbers reg byte a
Statement [819] (byte~) mode_ecmchar::$30 ← (byte) mode_ecmchar::cx#2 & (byte) $f [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$29 mode_ecmchar::$30 ] ( main:2::menu:9::mode_ecmchar:46 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$29 mode_ecmchar::$30 ] ) always clobbers reg byte a
Statement [821] *((byte*) mode_ecmchar::ch#2) ← (byte~) mode_ecmchar::$31 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 ] ( main:2::menu:9::mode_ecmchar:46 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 ] ) always clobbers reg byte y
Statement [830] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] ) always clobbers reg byte a
Statement [831] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] ) always clobbers reg byte a
Statement [832] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] ) always clobbers reg byte a
Statement [833] *((const byte*) DTV_CONTROL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] ) always clobbers reg byte a
Statement [834] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] ) always clobbers reg byte a
Statement [835] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_stdchar::CHARSET#0/(word) $4000 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] ) always clobbers reg byte a
Statement [836] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] ) always clobbers reg byte a
Statement [837] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] ) always clobbers reg byte a
Statement [838] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_stdchar::CHARSET#0&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] ) always clobbers reg byte a
Statement [840] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdchar::i#2) [ mode_stdchar::i#2 ] ( main:2::menu:9::mode_stdchar:38 [ mode_stdchar::i#2 ] ) always clobbers reg byte a
Statement [843] *((const byte*) BGCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] ) always clobbers reg byte a
Statement [844] *((const byte*) BORDERCOL#0) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] ) always clobbers reg byte a
Statement [847] (byte~) mode_stdchar::$25 ← (byte) mode_stdchar::cx#2 + (byte) mode_stdchar::cy#4 [ mode_stdchar::cy#4 mode_stdchar::cx#2 mode_stdchar::col#2 mode_stdchar::ch#2 mode_stdchar::$25 ] ( main:2::menu:9::mode_stdchar:38 [ mode_stdchar::cy#4 mode_stdchar::cx#2 mode_stdchar::col#2 mode_stdchar::ch#2 mode_stdchar::$25 ] ) always clobbers reg byte a
Statement [849] *((byte*) mode_stdchar::col#2) ← (byte~) mode_stdchar::$26 [ mode_stdchar::cy#4 mode_stdchar::cx#2 mode_stdchar::col#2 mode_stdchar::ch#2 ] ( main:2::menu:9::mode_stdchar:38 [ mode_stdchar::cy#4 mode_stdchar::cx#2 mode_stdchar::col#2 mode_stdchar::ch#2 ] ) always clobbers reg byte y
Statement [851] (byte~) mode_stdchar::$27 ← (byte) mode_stdchar::cy#4 & (byte) $f [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$27 ] ( main:2::menu:9::mode_stdchar:38 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$27 ] ) always clobbers reg byte a
Statement [852] (byte~) mode_stdchar::$28 ← (byte~) mode_stdchar::$27 << (byte) 4 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$28 ] ( main:2::menu:9::mode_stdchar:38 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$28 ] ) always clobbers reg byte a
Statement [853] (byte~) mode_stdchar::$29 ← (byte) mode_stdchar::cx#2 & (byte) $f [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$28 mode_stdchar::$29 ] ( main:2::menu:9::mode_stdchar:38 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$28 mode_stdchar::$29 ] ) always clobbers reg byte a
Statement [855] *((byte*) mode_stdchar::ch#2) ← (byte~) mode_stdchar::$30 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 ] ( main:2::menu:9::mode_stdchar:38 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 ] ) always clobbers reg byte y
Statement [866] if((byte) 0!=*((byte*) print_str_lines::str#2)) goto print_str_lines::@2 [ print_str_lines::str#2 print_char_cursor#19 print_line_cursor#17 ] ( main:2::menu:9::print_str_lines:31 [ print_str_lines::str#2 print_char_cursor#19 print_line_cursor#17 ] ) always clobbers reg byte a reg byte y
Statement [869] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#3) [ print_line_cursor#17 print_str_lines::str#3 print_char_cursor#17 print_str_lines::ch#0 ] ( main:2::menu:9::print_str_lines:31 [ print_line_cursor#17 print_str_lines::str#3 print_char_cursor#17 print_str_lines::ch#0 ] ) always clobbers reg byte a reg byte y
Statement [872] *((byte*) print_char_cursor#17) ← (byte) print_str_lines::ch#0 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#17 print_str_lines::ch#0 ] ( main:2::menu:9::print_str_lines:31 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#17 print_str_lines::ch#0 ] ) always clobbers reg byte y
Statement [878] (byte*~) print_char_cursor#100 ← (byte*) print_line_cursor#19 [ print_str_lines::str#0 print_char_cursor#100 print_line_cursor#19 ] ( main:2::menu:9::print_str_lines:31 [ print_str_lines::str#0 print_char_cursor#100 print_line_cursor#19 ] ) always clobbers reg byte a
Statement [881] (byte*) print_line_cursor#19 ← (byte*) print_line_cursor#18 + (byte) $28 [ print_line_cursor#19 print_char_cursor#32 ] ( main:2::menu:9::print_str_lines:31::print_ln:877 [ print_str_lines::str#0 print_line_cursor#19 print_char_cursor#32 ] ) always clobbers reg byte a
Statement [882] if((byte*) print_line_cursor#19<(byte*) print_char_cursor#32) goto print_ln::@1 [ print_line_cursor#19 print_char_cursor#32 ] ( main:2::menu:9::print_str_lines:31::print_ln:877 [ print_str_lines::str#0 print_line_cursor#19 print_char_cursor#32 ] ) always clobbers reg byte a
Statement [889] if((byte*) memset::dst#2!=(const byte*) memset::end#0) goto memset::@2 [ memset::dst#2 ] ( main:2::menu:9::print_cls:29::memset:885 [ memset::dst#2 ] ) always clobbers reg byte a
Statement [891] *((byte*) memset::dst#2) ← (const byte) memset::c#0 [ memset::dst#2 ] ( main:2::menu:9::print_cls:29::memset:885 [ memset::dst#2 ] ) always clobbers reg byte a reg byte y
Potential registers zp ZP_BYTE:2 [ menu::i#2 menu::i#1 ] : zp ZP_BYTE:2 , reg byte x , reg byte y ,
Potential registers zp ZP_WORD:3 [ menu::c#2 menu::c#1 ] : zp ZP_WORD:3 ,
Potential registers zp ZP_BYTE:5 [ mode_8bppchunkybmm::i#2 mode_8bppchunkybmm::i#1 ] : zp ZP_BYTE:5 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ] : zp ZP_BYTE:6 , reg byte x ,
Potential registers zp ZP_WORD:7 [ mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::x#1 ] : zp ZP_WORD:7 ,
Potential registers zp ZP_BYTE:9 [ mode_8bppchunkybmm::gfxbCpuBank#4 mode_8bppchunkybmm::gfxbCpuBank#7 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::gfxbCpuBank#2 ] : zp ZP_BYTE:9 , reg byte x ,
Potential registers zp ZP_WORD:10 [ mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::gfxb#1 ] : zp ZP_WORD:10 ,
Potential registers zp ZP_BYTE:12 [ dtv_control#114 dtv_control#144 dtv_control#17 ] : zp ZP_BYTE:12 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:13 [ mode_ctrl::ctrl#14 mode_ctrl::ctrl#22 mode_ctrl::ctrl#6 mode_ctrl::ctrl#13 mode_ctrl::ctrl#5 mode_ctrl::ctrl#12 mode_ctrl::ctrl#4 mode_ctrl::ctrl#11 mode_ctrl::ctrl#3 mode_ctrl::ctrl#10 mode_ctrl::ctrl#2 mode_ctrl::ctrl#17 mode_ctrl::ctrl#1 mode_ctrl::ctrl#0 ] : zp ZP_BYTE:13 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:14 [ keyboard_key_pressed::key#20 ] : zp ZP_BYTE:14 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:15 [ dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#1 ] : zp ZP_BYTE:15 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:16 [ mode_8bpppixelcell::i#2 mode_8bpppixelcell::i#1 ] : zp ZP_BYTE:16 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 ] : zp ZP_BYTE:17 , reg byte x ,
Potential registers zp ZP_BYTE:18 [ mode_8bpppixelcell::ax#2 mode_8bpppixelcell::ax#1 ] : zp ZP_BYTE:18 , reg byte x ,
Potential registers zp ZP_WORD:19 [ mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::gfxa#1 ] : zp ZP_WORD:19 ,
Potential registers zp ZP_BYTE:21 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ] : zp ZP_BYTE:21 , reg byte x ,
Potential registers zp ZP_WORD:22 [ mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::chargen#4 mode_8bpppixelcell::chargen#1 ] : zp ZP_WORD:22 ,
Potential registers zp ZP_BYTE:24 [ mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ] : zp ZP_BYTE:24 , reg byte x ,
Potential registers zp ZP_BYTE:25 [ mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ] : zp ZP_BYTE:25 , reg byte a , reg byte x ,
Potential registers zp ZP_WORD:26 [ mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::gfxb#7 mode_8bpppixelcell::gfxb#1 ] : zp ZP_WORD:26 ,
Potential registers zp ZP_BYTE:28 [ mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ] : zp ZP_BYTE:28 , reg byte x ,
Potential registers zp ZP_BYTE:29 [ mode_8bpppixelcell::cp#2 mode_8bpppixelcell::cp#1 ] : zp ZP_BYTE:29 , reg byte a , reg byte x ,
Potential registers zp ZP_BYTE:30 [ mode_8bpppixelcell::c#2 mode_8bpppixelcell::c#3 ] : zp ZP_BYTE:30 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:31 [ mode_sixsfred::i#2 mode_sixsfred::i#1 ] : zp ZP_BYTE:31 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:32 [ mode_sixsfred::cy#4 mode_sixsfred::cy#1 ] : zp ZP_BYTE:32 , reg byte x ,
Potential registers zp ZP_BYTE:33 [ mode_sixsfred::cx#2 mode_sixsfred::cx#1 ] : zp ZP_BYTE:33 , reg byte x ,
Potential registers zp ZP_WORD:34 [ mode_sixsfred::col#2 mode_sixsfred::col#3 mode_sixsfred::col#1 ] : zp ZP_WORD:34 ,
Potential registers zp ZP_BYTE:36 [ mode_sixsfred::ay#4 mode_sixsfred::ay#1 ] : zp ZP_BYTE:36 , reg byte x ,
Potential registers zp ZP_WORD:37 [ mode_sixsfred::gfxa#2 mode_sixsfred::gfxa#3 mode_sixsfred::gfxa#1 ] : zp ZP_WORD:37 ,
Potential registers zp ZP_BYTE:39 [ mode_sixsfred::ax#2 mode_sixsfred::ax#1 ] : zp ZP_BYTE:39 , reg byte x ,
Potential registers zp ZP_BYTE:40 [ mode_sixsfred::by#4 mode_sixsfred::by#1 ] : zp ZP_BYTE:40 , reg byte x ,
Potential registers zp ZP_WORD:41 [ mode_sixsfred::gfxb#2 mode_sixsfred::gfxb#3 mode_sixsfred::gfxb#1 ] : zp ZP_WORD:41 ,
Potential registers zp ZP_BYTE:43 [ mode_sixsfred::bx#2 mode_sixsfred::bx#1 ] : zp ZP_BYTE:43 , reg byte x ,
Potential registers zp ZP_BYTE:44 [ mode_twoplanebitmap::i#2 mode_twoplanebitmap::i#1 ] : zp ZP_BYTE:44 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:45 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 ] : zp ZP_BYTE:45 , reg byte x ,
Potential registers zp ZP_BYTE:46 [ mode_twoplanebitmap::cx#2 mode_twoplanebitmap::cx#1 ] : zp ZP_BYTE:46 , reg byte x ,
Potential registers zp ZP_WORD:47 [ mode_twoplanebitmap::col#2 mode_twoplanebitmap::col#3 mode_twoplanebitmap::col#1 ] : zp ZP_WORD:47 ,
Potential registers zp ZP_BYTE:49 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 ] : zp ZP_BYTE:49 , reg byte x ,
Potential registers zp ZP_WORD:50 [ mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::gfxa#7 mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::gfxa#1 ] : zp ZP_WORD:50 ,
Potential registers zp ZP_BYTE:52 [ mode_twoplanebitmap::ax#2 mode_twoplanebitmap::ax#1 ] : zp ZP_BYTE:52 , reg byte x ,
Potential registers zp ZP_BYTE:53 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 ] : zp ZP_BYTE:53 , reg byte x ,
Potential registers zp ZP_WORD:54 [ mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::gfxb#3 mode_twoplanebitmap::gfxb#1 ] : zp ZP_WORD:54 ,
Potential registers zp ZP_BYTE:56 [ mode_twoplanebitmap::bx#2 mode_twoplanebitmap::bx#1 ] : zp ZP_BYTE:56 , reg byte x ,
Potential registers zp ZP_BYTE:57 [ mode_sixsfred2::i#2 mode_sixsfred2::i#1 ] : zp ZP_BYTE:57 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:58 [ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 ] : zp ZP_BYTE:58 , reg byte x ,
Potential registers zp ZP_BYTE:59 [ mode_sixsfred2::cx#2 mode_sixsfred2::cx#1 ] : zp ZP_BYTE:59 , reg byte x ,
Potential registers zp ZP_WORD:60 [ mode_sixsfred2::col#2 mode_sixsfred2::col#3 mode_sixsfred2::col#1 ] : zp ZP_WORD:60 ,
Potential registers zp ZP_BYTE:62 [ mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 ] : zp ZP_BYTE:62 , reg byte x ,
Potential registers zp ZP_WORD:63 [ mode_sixsfred2::gfxa#2 mode_sixsfred2::gfxa#3 mode_sixsfred2::gfxa#1 ] : zp ZP_WORD:63 ,
Potential registers zp ZP_BYTE:65 [ mode_sixsfred2::ax#2 mode_sixsfred2::ax#1 ] : zp ZP_BYTE:65 , reg byte x ,
Potential registers zp ZP_BYTE:66 [ mode_sixsfred2::by#4 mode_sixsfred2::by#1 ] : zp ZP_BYTE:66 , reg byte x ,
Potential registers zp ZP_WORD:67 [ mode_sixsfred2::gfxb#2 mode_sixsfred2::gfxb#3 mode_sixsfred2::gfxb#1 ] : zp ZP_WORD:67 ,
Potential registers zp ZP_BYTE:69 [ mode_sixsfred2::bx#2 mode_sixsfred2::bx#1 ] : zp ZP_BYTE:69 , reg byte x ,
Potential registers zp ZP_BYTE:70 [ mode_hicolmcchar::i#2 mode_hicolmcchar::i#1 ] : zp ZP_BYTE:70 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:71 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 ] : zp ZP_BYTE:71 , reg byte x ,
Potential registers zp ZP_BYTE:72 [ mode_hicolmcchar::cx#2 mode_hicolmcchar::cx#1 ] : zp ZP_BYTE:72 , reg byte x ,
Potential registers zp ZP_WORD:73 [ mode_hicolmcchar::col#2 mode_hicolmcchar::col#3 mode_hicolmcchar::col#1 ] : zp ZP_WORD:73 ,
Potential registers zp ZP_WORD:75 [ mode_hicolmcchar::ch#2 mode_hicolmcchar::ch#3 mode_hicolmcchar::ch#1 ] : zp ZP_WORD:75 ,
Potential registers zp ZP_BYTE:77 [ mode_hicolecmchar::i#2 mode_hicolecmchar::i#1 ] : zp ZP_BYTE:77 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:78 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 ] : zp ZP_BYTE:78 , reg byte x ,
Potential registers zp ZP_BYTE:79 [ mode_hicolecmchar::cx#2 mode_hicolecmchar::cx#1 ] : zp ZP_BYTE:79 , reg byte x ,
Potential registers zp ZP_WORD:80 [ mode_hicolecmchar::col#2 mode_hicolecmchar::col#3 mode_hicolecmchar::col#1 ] : zp ZP_WORD:80 ,
Potential registers zp ZP_WORD:82 [ mode_hicolecmchar::ch#2 mode_hicolecmchar::ch#3 mode_hicolecmchar::ch#1 ] : zp ZP_WORD:82 ,
Potential registers zp ZP_BYTE:84 [ mode_hicolstdchar::i#2 mode_hicolstdchar::i#1 ] : zp ZP_BYTE:84 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:85 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 ] : zp ZP_BYTE:85 , reg byte x ,
Potential registers zp ZP_BYTE:86 [ mode_hicolstdchar::cx#2 mode_hicolstdchar::cx#1 ] : zp ZP_BYTE:86 , reg byte x ,
Potential registers zp ZP_WORD:87 [ mode_hicolstdchar::col#2 mode_hicolstdchar::col#3 mode_hicolstdchar::col#1 ] : zp ZP_WORD:87 ,
Potential registers zp ZP_WORD:89 [ mode_hicolstdchar::ch#2 mode_hicolstdchar::ch#3 mode_hicolstdchar::ch#1 ] : zp ZP_WORD:89 ,
Potential registers zp ZP_BYTE:91 [ mode_stdbitmap::i#2 mode_stdbitmap::i#1 ] : zp ZP_BYTE:91 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:92 [ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 ] : zp ZP_BYTE:92 , reg byte x ,
Potential registers zp ZP_BYTE:93 [ mode_stdbitmap::cx#2 mode_stdbitmap::cx#1 ] : zp ZP_BYTE:93 , reg byte x ,
Potential registers zp ZP_WORD:94 [ mode_stdbitmap::ch#2 mode_stdbitmap::ch#3 mode_stdbitmap::ch#1 ] : zp ZP_WORD:94 ,
Potential registers zp ZP_BYTE:96 [ mode_stdbitmap::l#2 mode_stdbitmap::l#1 ] : zp ZP_BYTE:96 , reg byte x ,
Potential registers zp ZP_BYTE:97 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 ] : zp ZP_BYTE:97 , reg byte x ,
Potential registers zp ZP_BYTE:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 ] : zp ZP_BYTE:98 , reg byte x ,
Potential registers zp ZP_BYTE:99 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::x1#1 ] : zp ZP_BYTE:99 , reg byte x ,
Potential registers zp ZP_BYTE:100 [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#2 ] : zp ZP_BYTE:100 , reg byte x ,
Potential registers zp ZP_BYTE:101 [ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 ] : zp ZP_BYTE:101 , reg byte x ,
Potential registers zp ZP_BYTE:102 [ bitmap_line_xdyi::e#3 bitmap_line_xdyi::e#0 bitmap_line_xdyi::e#6 bitmap_line_xdyi::e#2 bitmap_line_xdyi::e#1 ] : zp ZP_BYTE:102 , reg byte x ,
Potential registers zp ZP_BYTE:103 [ bitmap_plot::x#4 bitmap_plot::x#1 bitmap_plot::x#0 bitmap_plot::x#3 bitmap_plot::x#2 ] : zp ZP_BYTE:103 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:104 [ bitmap_plot::y#4 bitmap_plot::y#1 bitmap_plot::y#0 bitmap_plot::y#3 bitmap_plot::y#2 ] : zp ZP_BYTE:104 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:105 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 ] : zp ZP_BYTE:105 , reg byte x ,
Potential registers zp ZP_BYTE:106 [ bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 ] : zp ZP_BYTE:106 , reg byte x ,
Potential registers zp ZP_BYTE:107 [ bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 ] : zp ZP_BYTE:107 , reg byte x ,
Potential registers zp ZP_BYTE:108 [ bitmap_line_ydxi::x#3 bitmap_line_ydxi::x#5 bitmap_line_ydxi::x#1 bitmap_line_ydxi::x#0 bitmap_line_ydxi::x#6 bitmap_line_ydxi::x#2 ] : zp ZP_BYTE:108 , reg byte x ,
Potential registers zp ZP_BYTE:109 [ bitmap_line_ydxi::y#3 bitmap_line_ydxi::y#6 bitmap_line_ydxi::y#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::y#2 ] : zp ZP_BYTE:109 , reg byte x ,
Potential registers zp ZP_BYTE:110 [ bitmap_line_ydxi::e#3 bitmap_line_ydxi::e#0 bitmap_line_ydxi::e#6 bitmap_line_ydxi::e#2 bitmap_line_ydxi::e#1 ] : zp ZP_BYTE:110 , reg byte x ,
Potential registers zp ZP_BYTE:111 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#0 bitmap_line_xdyd::yd#1 ] : zp ZP_BYTE:111 , reg byte x ,
Potential registers zp ZP_BYTE:112 [ bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::xd#1 ] : zp ZP_BYTE:112 , reg byte x ,
Potential registers zp ZP_BYTE:113 [ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::x1#1 ] : zp ZP_BYTE:113 , reg byte x ,
Potential registers zp ZP_BYTE:114 [ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#2 ] : zp ZP_BYTE:114 , reg byte x ,
Potential registers zp ZP_BYTE:115 [ bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 ] : zp ZP_BYTE:115 , reg byte x ,
Potential registers zp ZP_BYTE:116 [ bitmap_line_xdyd::e#3 bitmap_line_xdyd::e#0 bitmap_line_xdyd::e#6 bitmap_line_xdyd::e#2 bitmap_line_xdyd::e#1 ] : zp ZP_BYTE:116 , reg byte x ,
Potential registers zp ZP_BYTE:117 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ] : zp ZP_BYTE:117 , reg byte x ,
Potential registers zp ZP_BYTE:118 [ bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 ] : zp ZP_BYTE:118 , reg byte x ,
Potential registers zp ZP_BYTE:119 [ bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 ] : zp ZP_BYTE:119 , reg byte x ,
Potential registers zp ZP_BYTE:120 [ bitmap_line_ydxd::x#3 bitmap_line_ydxd::x#5 bitmap_line_ydxd::x#0 bitmap_line_ydxd::x#1 bitmap_line_ydxd::x#6 bitmap_line_ydxd::x#2 ] : zp ZP_BYTE:120 , reg byte x ,
Potential registers zp ZP_BYTE:121 [ bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#3 ] : zp ZP_BYTE:121 , reg byte x ,
Potential registers zp ZP_BYTE:122 [ bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 ] : zp ZP_BYTE:122 , reg byte x ,
Potential registers zp ZP_BYTE:123 [ bitmap_clear::y#4 bitmap_clear::y#1 ] : zp ZP_BYTE:123 , reg byte x ,
Potential registers zp ZP_WORD:124 [ bitmap_clear::bitmap#2 bitmap_clear::bitmap#3 bitmap_clear::bitmap#5 bitmap_clear::bitmap#1 ] : zp ZP_WORD:124 ,
Potential registers zp ZP_BYTE:126 [ bitmap_clear::x#2 bitmap_clear::x#1 ] : zp ZP_BYTE:126 , reg byte x ,
Potential registers zp ZP_BYTE:127 [ bitmap_init::x#2 bitmap_init::x#1 ] : zp ZP_BYTE:127 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:128 [ bitmap_init::bits#3 bitmap_init::bits#4 bitmap_init::bits#1 ] : zp ZP_BYTE:128 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:129 [ bitmap_init::y#2 bitmap_init::y#1 ] : zp ZP_BYTE:129 , reg byte x , reg byte y ,
Potential registers zp ZP_WORD:130 [ bitmap_init::yoffs#2 bitmap_init::yoffs#4 bitmap_init::yoffs#1 ] : zp ZP_WORD:130 ,
Potential registers zp ZP_BYTE:132 [ mode_mcchar::i#2 mode_mcchar::i#1 ] : zp ZP_BYTE:132 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:133 [ mode_mcchar::cy#4 mode_mcchar::cy#1 ] : zp ZP_BYTE:133 , reg byte x ,
Potential registers zp ZP_BYTE:134 [ mode_mcchar::cx#2 mode_mcchar::cx#1 ] : zp ZP_BYTE:134 , reg byte x ,
Potential registers zp ZP_WORD:135 [ mode_mcchar::col#2 mode_mcchar::col#3 mode_mcchar::col#1 ] : zp ZP_WORD:135 ,
Potential registers zp ZP_WORD:137 [ mode_mcchar::ch#2 mode_mcchar::ch#3 mode_mcchar::ch#1 ] : zp ZP_WORD:137 ,
Potential registers zp ZP_BYTE:139 [ mode_ecmchar::i#2 mode_ecmchar::i#1 ] : zp ZP_BYTE:139 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:140 [ mode_ecmchar::cy#4 mode_ecmchar::cy#1 ] : zp ZP_BYTE:140 , reg byte x ,
Potential registers zp ZP_BYTE:141 [ mode_ecmchar::cx#2 mode_ecmchar::cx#1 ] : zp ZP_BYTE:141 , reg byte x ,
Potential registers zp ZP_WORD:142 [ mode_ecmchar::col#2 mode_ecmchar::col#3 mode_ecmchar::col#1 ] : zp ZP_WORD:142 ,
Potential registers zp ZP_WORD:144 [ mode_ecmchar::ch#2 mode_ecmchar::ch#3 mode_ecmchar::ch#1 ] : zp ZP_WORD:144 ,
Potential registers zp ZP_BYTE:146 [ mode_stdchar::i#2 mode_stdchar::i#1 ] : zp ZP_BYTE:146 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:147 [ mode_stdchar::cy#4 mode_stdchar::cy#1 ] : zp ZP_BYTE:147 , reg byte x ,
Potential registers zp ZP_BYTE:148 [ mode_stdchar::cx#2 mode_stdchar::cx#1 ] : zp ZP_BYTE:148 , reg byte x ,
Potential registers zp ZP_WORD:149 [ mode_stdchar::col#2 mode_stdchar::col#3 mode_stdchar::col#1 ] : zp ZP_WORD:149 ,
Potential registers zp ZP_WORD:151 [ mode_stdchar::ch#2 mode_stdchar::ch#3 mode_stdchar::ch#1 ] : zp ZP_WORD:151 ,
Potential registers zp ZP_WORD:153 [ print_str_lines::str#3 print_str_lines::str#2 print_str_lines::str#0 ] : zp ZP_WORD:153 ,
Potential registers zp ZP_WORD:155 [ print_char_cursor#17 print_char_cursor#19 print_char_cursor#100 print_char_cursor#32 print_char_cursor#1 ] : zp ZP_WORD:155 ,
Potential registers zp ZP_WORD:157 [ print_line_cursor#18 print_line_cursor#17 print_line_cursor#19 ] : zp ZP_WORD:157 ,
Potential registers zp ZP_WORD:159 [ memset::dst#2 memset::dst#1 ] : zp ZP_WORD:159 ,
Potential registers zp ZP_BYTE:161 [ keyboard_key_pressed::return#2 ] : zp ZP_BYTE:161 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:162 [ menu::$29 ] : zp ZP_BYTE:162 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:163 [ keyboard_key_pressed::return#24 ] : zp ZP_BYTE:163 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:164 [ menu::$33 ] : zp ZP_BYTE:164 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:165 [ keyboard_key_pressed::return#25 ] : zp ZP_BYTE:165 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:166 [ menu::$37 ] : zp ZP_BYTE:166 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:167 [ keyboard_key_pressed::return#26 ] : zp ZP_BYTE:167 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:168 [ menu::$41 ] : zp ZP_BYTE:168 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:169 [ keyboard_key_pressed::return#27 ] : zp ZP_BYTE:169 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:170 [ menu::$45 ] : zp ZP_BYTE:170 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:171 [ keyboard_key_pressed::return#28 ] : zp ZP_BYTE:171 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:172 [ menu::$49 ] : zp ZP_BYTE:172 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:173 [ keyboard_key_pressed::return#29 ] : zp ZP_BYTE:173 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:174 [ menu::$53 ] : zp ZP_BYTE:174 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:175 [ keyboard_key_pressed::return#30 ] : zp ZP_BYTE:175 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:176 [ menu::$57 ] : zp ZP_BYTE:176 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:177 [ keyboard_key_pressed::return#10 ] : zp ZP_BYTE:177 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:178 [ menu::$61 ] : zp ZP_BYTE:178 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:179 [ keyboard_key_pressed::return#11 ] : zp ZP_BYTE:179 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:180 [ menu::$65 ] : zp ZP_BYTE:180 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:181 [ keyboard_key_pressed::return#12 ] : zp ZP_BYTE:181 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:182 [ menu::$69 ] : zp ZP_BYTE:182 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:183 [ keyboard_key_pressed::return#13 ] : zp ZP_BYTE:183 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:184 [ menu::$73 ] : zp ZP_BYTE:184 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_WORD:185 [ mode_8bppchunkybmm::$26 ] : zp ZP_WORD:185 ,
Potential registers zp ZP_BYTE:187 [ mode_8bppchunkybmm::c#0 ] : zp ZP_BYTE:187 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:188 [ keyboard_key_pressed::return#14 ] : zp ZP_BYTE:188 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:189 [ mode_ctrl::$1 ] : zp ZP_BYTE:189 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:190 [ keyboard_key_pressed::return#15 ] : zp ZP_BYTE:190 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:191 [ mode_ctrl::$4 ] : zp ZP_BYTE:191 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:192 [ keyboard_key_pressed::return#16 ] : zp ZP_BYTE:192 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:193 [ mode_ctrl::$8 ] : zp ZP_BYTE:193 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:194 [ keyboard_key_pressed::return#17 ] : zp ZP_BYTE:194 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:195 [ mode_ctrl::$12 ] : zp ZP_BYTE:195 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:196 [ keyboard_key_pressed::return#18 ] : zp ZP_BYTE:196 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:197 [ mode_ctrl::$16 ] : zp ZP_BYTE:197 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:198 [ keyboard_key_pressed::return#19 ] : zp ZP_BYTE:198 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:199 [ mode_ctrl::$20 ] : zp ZP_BYTE:199 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:200 [ keyboard_key_pressed::return#20 ] : zp ZP_BYTE:200 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:201 [ mode_ctrl::$24 ] : zp ZP_BYTE:201 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:202 [ keyboard_key_pressed::return#21 ] : zp ZP_BYTE:202 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:203 [ mode_ctrl::$28 ] : zp ZP_BYTE:203 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:204 [ keyboard_key_pressed::colidx#0 ] : zp ZP_BYTE:204 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:205 [ keyboard_key_pressed::rowidx#0 ] : zp ZP_BYTE:205 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:206 [ keyboard_matrix_read::rowid#0 ] : zp ZP_BYTE:206 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:207 [ keyboard_matrix_read::return#2 ] : zp ZP_BYTE:207 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:208 [ keyboard_key_pressed::$2 ] : zp ZP_BYTE:208 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:209 [ keyboard_key_pressed::return#0 ] : zp ZP_BYTE:209 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:210 [ keyboard_matrix_read::return#0 ] : zp ZP_BYTE:210 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:211 [ mode_8bpppixelcell::$14 ] : zp ZP_BYTE:211 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:212 [ mode_8bpppixelcell::$15 ] : zp ZP_BYTE:212 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:213 [ mode_8bpppixelcell::$16 ] : zp ZP_BYTE:213 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:214 [ mode_8bpppixelcell::$17 ] : zp ZP_BYTE:214 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:215 [ mode_8bpppixelcell::$20 ] : zp ZP_BYTE:215 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:216 [ mode_sixsfred::$17 ] : zp ZP_BYTE:216 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:217 [ mode_sixsfred::$18 ] : zp ZP_BYTE:217 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:218 [ mode_sixsfred::$21 ] : zp ZP_BYTE:218 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:219 [ mode_sixsfred::row#0 ] : zp ZP_BYTE:219 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:220 [ mode_twoplanebitmap::$16 ] : zp ZP_BYTE:220 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:221 [ mode_twoplanebitmap::$17 ] : zp ZP_BYTE:221 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:222 [ mode_twoplanebitmap::$18 ] : zp ZP_BYTE:222 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:223 [ mode_twoplanebitmap::$19 ] : zp ZP_BYTE:223 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:224 [ mode_twoplanebitmap::$22 ] : zp ZP_BYTE:224 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:225 [ mode_sixsfred2::$15 ] : zp ZP_BYTE:225 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:226 [ mode_sixsfred2::$16 ] : zp ZP_BYTE:226 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:227 [ mode_sixsfred2::$17 ] : zp ZP_BYTE:227 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:228 [ mode_sixsfred2::$18 ] : zp ZP_BYTE:228 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:229 [ mode_sixsfred2::$21 ] : zp ZP_BYTE:229 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:230 [ mode_sixsfred2::row#0 ] : zp ZP_BYTE:230 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:231 [ mode_hicolmcchar::$26 ] : zp ZP_BYTE:231 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:232 [ mode_hicolmcchar::$27 ] : zp ZP_BYTE:232 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:233 [ mode_hicolmcchar::$28 ] : zp ZP_BYTE:233 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:234 [ mode_hicolmcchar::v#0 ] : zp ZP_BYTE:234 , reg byte a , reg byte x ,
Potential registers zp ZP_BYTE:235 [ mode_hicolecmchar::$26 ] : zp ZP_BYTE:235 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:236 [ mode_hicolecmchar::$27 ] : zp ZP_BYTE:236 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:237 [ mode_hicolecmchar::$28 ] : zp ZP_BYTE:237 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:238 [ mode_hicolecmchar::v#0 ] : zp ZP_BYTE:238 , reg byte a , reg byte x ,
Potential registers zp ZP_BYTE:239 [ mode_hicolstdchar::$25 ] : zp ZP_BYTE:239 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:240 [ mode_hicolstdchar::$26 ] : zp ZP_BYTE:240 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:241 [ mode_hicolstdchar::$27 ] : zp ZP_BYTE:241 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:242 [ mode_hicolstdchar::v#0 ] : zp ZP_BYTE:242 , reg byte a , reg byte x ,
Potential registers zp ZP_BYTE:243 [ mode_stdbitmap::$22 ] : zp ZP_BYTE:243 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:244 [ mode_stdbitmap::col#0 ] : zp ZP_BYTE:244 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:245 [ mode_stdbitmap::col2#0 ] : zp ZP_BYTE:245 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:246 [ mode_stdbitmap::$25 ] : zp ZP_BYTE:246 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:247 [ mode_stdbitmap::$26 ] : zp ZP_BYTE:247 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:248 [ bitmap_line::x0#0 ] : zp ZP_BYTE:248 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:249 [ bitmap_line::x1#0 ] : zp ZP_BYTE:249 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:250 [ bitmap_line::y0#0 ] : zp ZP_BYTE:250 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:251 [ bitmap_line::y1#0 ] : zp ZP_BYTE:251 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:252 [ bitmap_line::xd#2 ] : zp ZP_BYTE:252 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:253 [ bitmap_line::yd#2 ] : zp ZP_BYTE:253 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:254 [ bitmap_line::yd#1 ] : zp ZP_BYTE:254 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:255 [ bitmap_line::xd#1 ] : zp ZP_BYTE:255 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:256 [ bitmap_line::yd#10 ] : zp ZP_BYTE:256 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:257 [ bitmap_line::yd#11 ] : zp ZP_BYTE:257 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:258 [ bitmap_line_xdyi::$6 ] : zp ZP_BYTE:258 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_WORD:259 [ bitmap_plot::plotter_x#0 ] : zp ZP_WORD:259 ,
Potential registers zp ZP_WORD:261 [ bitmap_plot::plotter_y#0 ] : zp ZP_WORD:261 ,
Potential registers zp ZP_WORD:263 [ bitmap_plot::plotter#0 ] : zp ZP_WORD:263 ,
Potential registers zp ZP_BYTE:265 [ bitmap_plot::$1 ] : zp ZP_BYTE:265 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:266 [ bitmap_line_ydxi::$6 ] : zp ZP_BYTE:266 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:267 [ bitmap_line_xdyd::$6 ] : zp ZP_BYTE:267 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:268 [ bitmap_line_ydxd::$6 ] : zp ZP_BYTE:268 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_WORD:269 [ bitmap_clear::bitmap#0 ] : zp ZP_WORD:269 ,
Potential registers zp ZP_BYTE:271 [ bitmap_init::$0 ] : zp ZP_BYTE:271 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:272 [ bitmap_init::$10 ] : zp ZP_BYTE:272 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:273 [ bitmap_init::$7 ] : zp ZP_BYTE:273 , reg byte a , reg byte x , reg byte y , reg byte alu ,
Potential registers zp ZP_BYTE:274 [ bitmap_init::$8 ] : zp ZP_BYTE:274 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:275 [ bitmap_init::$9 ] : zp ZP_BYTE:275 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:276 [ mode_mcchar::$26 ] : zp ZP_BYTE:276 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:277 [ mode_mcchar::$27 ] : zp ZP_BYTE:277 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:278 [ mode_mcchar::$28 ] : zp ZP_BYTE:278 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:279 [ mode_mcchar::$29 ] : zp ZP_BYTE:279 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:280 [ mode_mcchar::$30 ] : zp ZP_BYTE:280 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:281 [ mode_mcchar::$31 ] : zp ZP_BYTE:281 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:282 [ mode_ecmchar::$26 ] : zp ZP_BYTE:282 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:283 [ mode_ecmchar::$27 ] : zp ZP_BYTE:283 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:284 [ mode_ecmchar::$28 ] : zp ZP_BYTE:284 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:285 [ mode_ecmchar::$29 ] : zp ZP_BYTE:285 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:286 [ mode_ecmchar::$30 ] : zp ZP_BYTE:286 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:287 [ mode_ecmchar::$31 ] : zp ZP_BYTE:287 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:288 [ mode_stdchar::$25 ] : zp ZP_BYTE:288 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:289 [ mode_stdchar::$26 ] : zp ZP_BYTE:289 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:290 [ mode_stdchar::$27 ] : zp ZP_BYTE:290 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:291 [ mode_stdchar::$28 ] : zp ZP_BYTE:291 , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:292 [ mode_stdchar::$29 ] : zp ZP_BYTE:292 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:293 [ mode_stdchar::$30 ] : zp ZP_BYTE:293 , reg byte a , reg byte x , reg byte y ,
Potential registers zp ZP_BYTE:294 [ print_str_lines::ch#0 ] : zp ZP_BYTE:294 , reg byte a , reg byte x ,
REGISTER UPLIFT SCOPES
Uplift Scope [mode_8bpppixelcell] 40,004: zp ZP_BYTE:30 [ mode_8bpppixelcell::c#2 mode_8bpppixelcell::c#3 ] 20,002: zp ZP_BYTE:215 [ mode_8bpppixelcell::$20 ] 17,223.94: zp ZP_BYTE:29 [ mode_8bpppixelcell::cp#2 mode_8bpppixelcell::cp#1 ] 10,430.64: zp ZP_BYTE:25 [ mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ] 8,415.22: zp ZP_WORD:26 [ mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::gfxb#7 mode_8bpppixelcell::gfxb#1 ] 7,793.36: zp ZP_BYTE:28 [ mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ] 2,002: zp ZP_BYTE:211 [ mode_8bpppixelcell::$14 ] 2,002: zp ZP_BYTE:213 [ mode_8bpppixelcell::$16 ] 2,002: zp ZP_BYTE:214 [ mode_8bpppixelcell::$17 ] 1,930.5: zp ZP_BYTE:18 [ mode_8bpppixelcell::ax#2 mode_8bpppixelcell::ax#1 ] 1,885.44: zp ZP_WORD:22 [ mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::chargen#4 mode_8bpppixelcell::chargen#1 ] 1,644.5: zp ZP_BYTE:24 [ mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ] 1,139.93: zp ZP_WORD:19 [ mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::gfxa#1 ] 1,001: zp ZP_BYTE:212 [ mode_8bpppixelcell::$15 ] 353.5: zp ZP_BYTE:16 [ mode_8bpppixelcell::i#2 mode_8bpppixelcell::i#1 ] 271.8: zp ZP_BYTE:17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 ] 163.38: zp ZP_BYTE:21 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ]
Uplift Scope [mode_ctrl] 17,693.35: zp ZP_BYTE:13 [ mode_ctrl::ctrl#14 mode_ctrl::ctrl#22 mode_ctrl::ctrl#6 mode_ctrl::ctrl#13 mode_ctrl::ctrl#5 mode_ctrl::ctrl#12 mode_ctrl::ctrl#4 mode_ctrl::ctrl#11 mode_ctrl::ctrl#3 mode_ctrl::ctrl#10 mode_ctrl::ctrl#2 mode_ctrl::ctrl#17 mode_ctrl::ctrl#1 mode_ctrl::ctrl#0 ] 2,002: zp ZP_BYTE:189 [ mode_ctrl::$1 ] 2,002: zp ZP_BYTE:191 [ mode_ctrl::$4 ] 2,002: zp ZP_BYTE:193 [ mode_ctrl::$8 ] 2,002: zp ZP_BYTE:195 [ mode_ctrl::$12 ] 2,002: zp ZP_BYTE:197 [ mode_ctrl::$16 ] 2,002: zp ZP_BYTE:199 [ mode_ctrl::$20 ] 2,002: zp ZP_BYTE:201 [ mode_ctrl::$24 ] 2,002: zp ZP_BYTE:203 [ mode_ctrl::$28 ]
Uplift Scope [mode_twoplanebitmap] 5,848: zp ZP_WORD:50 [ mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::gfxa#7 mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::gfxa#1 ] 2,174.6: zp ZP_WORD:54 [ mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::gfxb#3 mode_twoplanebitmap::gfxb#1 ] 2,168.83: zp ZP_BYTE:56 [ mode_twoplanebitmap::bx#2 mode_twoplanebitmap::bx#1 ] 2,002: zp ZP_BYTE:220 [ mode_twoplanebitmap::$16 ] 2,002: zp ZP_BYTE:222 [ mode_twoplanebitmap::$18 ] 2,002: zp ZP_BYTE:223 [ mode_twoplanebitmap::$19 ] 2,002: zp ZP_BYTE:224 [ mode_twoplanebitmap::$22 ] 1,930.5: zp ZP_BYTE:46 [ mode_twoplanebitmap::cx#2 mode_twoplanebitmap::cx#1 ] 1,751.75: zp ZP_BYTE:52 [ mode_twoplanebitmap::ax#2 mode_twoplanebitmap::ax#1 ] 1,139.93: zp ZP_WORD:47 [ mode_twoplanebitmap::col#2 mode_twoplanebitmap::col#3 mode_twoplanebitmap::col#1 ] 1,001: zp ZP_BYTE:221 [ mode_twoplanebitmap::$17 ] 353.5: zp ZP_BYTE:44 [ mode_twoplanebitmap::i#2 mode_twoplanebitmap::i#1 ] 271.8: zp ZP_BYTE:45 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 ] 260.86: zp ZP_BYTE:49 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 ] 185.17: zp ZP_BYTE:53 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 ]
Uplift Scope [mode_sixsfred2] 2,174.6: zp ZP_WORD:67 [ mode_sixsfred2::gfxb#2 mode_sixsfred2::gfxb#3 mode_sixsfred2::gfxb#1 ] 2,168.83: zp ZP_BYTE:69 [ mode_sixsfred2::bx#2 mode_sixsfred2::bx#1 ] 2,002: zp ZP_BYTE:225 [ mode_sixsfred2::$15 ] 2,002: zp ZP_BYTE:227 [ mode_sixsfred2::$17 ] 2,002: zp ZP_BYTE:228 [ mode_sixsfred2::$18 ] 2,002: zp ZP_BYTE:229 [ mode_sixsfred2::$21 ] 2,002: zp ZP_BYTE:230 [ mode_sixsfred2::row#0 ] 1,930.5: zp ZP_BYTE:59 [ mode_sixsfred2::cx#2 mode_sixsfred2::cx#1 ] 1,901.9: zp ZP_BYTE:65 [ mode_sixsfred2::ax#2 mode_sixsfred2::ax#1 ] 1,398.6: zp ZP_WORD:63 [ mode_sixsfred2::gfxa#2 mode_sixsfred2::gfxa#3 mode_sixsfred2::gfxa#1 ] 1,139.93: zp ZP_WORD:60 [ mode_sixsfred2::col#2 mode_sixsfred2::col#3 mode_sixsfred2::col#1 ] 1,001: zp ZP_BYTE:226 [ mode_sixsfred2::$16 ] 353.5: zp ZP_BYTE:57 [ mode_sixsfred2::i#2 mode_sixsfred2::i#1 ] 301.88: zp ZP_BYTE:62 [ mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 ] 271.8: zp ZP_BYTE:58 [ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 ] 185.17: zp ZP_BYTE:66 [ mode_sixsfred2::by#4 mode_sixsfred2::by#1 ]
Uplift Scope [mode_sixsfred] 2,174.6: zp ZP_WORD:41 [ mode_sixsfred::gfxb#2 mode_sixsfred::gfxb#3 mode_sixsfred::gfxb#1 ] 2,168.83: zp ZP_BYTE:43 [ mode_sixsfred::bx#2 mode_sixsfred::bx#1 ] 2,102.1: zp ZP_BYTE:33 [ mode_sixsfred::cx#2 mode_sixsfred::cx#1 ] 2,002: zp ZP_BYTE:216 [ mode_sixsfred::$17 ] 2,002: zp ZP_BYTE:217 [ mode_sixsfred::$18 ] 2,002: zp ZP_BYTE:218 [ mode_sixsfred::$21 ] 2,002: zp ZP_BYTE:219 [ mode_sixsfred::row#0 ] 1,901.9: zp ZP_BYTE:39 [ mode_sixsfred::ax#2 mode_sixsfred::ax#1 ] 1,398.6: zp ZP_WORD:34 [ mode_sixsfred::col#2 mode_sixsfred::col#3 mode_sixsfred::col#1 ] 1,398.6: zp ZP_WORD:37 [ mode_sixsfred::gfxa#2 mode_sixsfred::gfxa#3 mode_sixsfred::gfxa#1 ] 353.5: zp ZP_BYTE:31 [ mode_sixsfred::i#2 mode_sixsfred::i#1 ] 301.88: zp ZP_BYTE:32 [ mode_sixsfred::cy#4 mode_sixsfred::cy#1 ] 301.88: zp ZP_BYTE:36 [ mode_sixsfred::ay#4 mode_sixsfred::ay#1 ] 185.17: zp ZP_BYTE:40 [ mode_sixsfred::by#4 mode_sixsfred::by#1 ]
Uplift Scope [keyboard_key_pressed] 2,002: zp ZP_BYTE:188 [ keyboard_key_pressed::return#14 ] 2,002: zp ZP_BYTE:190 [ keyboard_key_pressed::return#15 ] 2,002: zp ZP_BYTE:192 [ keyboard_key_pressed::return#16 ] 2,002: zp ZP_BYTE:194 [ keyboard_key_pressed::return#17 ] 2,002: zp ZP_BYTE:196 [ keyboard_key_pressed::return#18 ] 2,002: zp ZP_BYTE:198 [ keyboard_key_pressed::return#19 ] 2,002: zp ZP_BYTE:200 [ keyboard_key_pressed::return#20 ] 2,002: zp ZP_BYTE:202 [ keyboard_key_pressed::return#21 ] 419.18: zp ZP_BYTE:209 [ keyboard_key_pressed::return#0 ] 202: zp ZP_BYTE:161 [ keyboard_key_pressed::return#2 ] 202: zp ZP_BYTE:163 [ keyboard_key_pressed::return#24 ] 202: zp ZP_BYTE:165 [ keyboard_key_pressed::return#25 ] 202: zp ZP_BYTE:167 [ keyboard_key_pressed::return#26 ] 202: zp ZP_BYTE:169 [ keyboard_key_pressed::return#27 ] 202: zp ZP_BYTE:171 [ keyboard_key_pressed::return#28 ] 202: zp ZP_BYTE:173 [ keyboard_key_pressed::return#29 ] 202: zp ZP_BYTE:175 [ keyboard_key_pressed::return#30 ] 202: zp ZP_BYTE:177 [ keyboard_key_pressed::return#10 ] 202: zp ZP_BYTE:179 [ keyboard_key_pressed::return#11 ] 202: zp ZP_BYTE:181 [ keyboard_key_pressed::return#12 ] 202: zp ZP_BYTE:183 [ keyboard_key_pressed::return#13 ] 4: zp ZP_BYTE:205 [ keyboard_key_pressed::rowidx#0 ] 4: zp ZP_BYTE:208 [ keyboard_key_pressed::$2 ] 2: zp ZP_BYTE:14 [ keyboard_key_pressed::key#20 ] 0.67: zp ZP_BYTE:204 [ keyboard_key_pressed::colidx#0 ]
Uplift Scope [mode_stdchar] 2,002: zp ZP_BYTE:288 [ mode_stdchar::$25 ] 2,002: zp ZP_BYTE:289 [ mode_stdchar::$26 ] 2,002: zp ZP_BYTE:290 [ mode_stdchar::$27 ] 2,002: zp ZP_BYTE:292 [ mode_stdchar::$29 ] 2,002: zp ZP_BYTE:293 [ mode_stdchar::$30 ] 1,865.5: zp ZP_BYTE:148 [ mode_stdchar::cx#2 mode_stdchar::cx#1 ] 1,169.18: zp ZP_WORD:149 [ mode_stdchar::col#2 mode_stdchar::col#3 mode_stdchar::col#1 ] 1,001: zp ZP_BYTE:291 [ mode_stdchar::$28 ] 933: zp ZP_WORD:151 [ mode_stdchar::ch#2 mode_stdchar::ch#3 mode_stdchar::ch#1 ] 353.5: zp ZP_BYTE:146 [ mode_stdchar::i#2 mode_stdchar::i#1 ] 308.93: zp ZP_BYTE:147 [ mode_stdchar::cy#4 mode_stdchar::cy#1 ]
Uplift Scope [mode_ecmchar] 2,002: zp ZP_BYTE:282 [ mode_ecmchar::$26 ] 2,002: zp ZP_BYTE:283 [ mode_ecmchar::$27 ] 2,002: zp ZP_BYTE:284 [ mode_ecmchar::$28 ] 2,002: zp ZP_BYTE:286 [ mode_ecmchar::$30 ] 2,002: zp ZP_BYTE:287 [ mode_ecmchar::$31 ] 1,865.5: zp ZP_BYTE:141 [ mode_ecmchar::cx#2 mode_ecmchar::cx#1 ] 1,169.18: zp ZP_WORD:142 [ mode_ecmchar::col#2 mode_ecmchar::col#3 mode_ecmchar::col#1 ] 1,001: zp ZP_BYTE:285 [ mode_ecmchar::$29 ] 933: zp ZP_WORD:144 [ mode_ecmchar::ch#2 mode_ecmchar::ch#3 mode_ecmchar::ch#1 ] 353.5: zp ZP_BYTE:139 [ mode_ecmchar::i#2 mode_ecmchar::i#1 ] 308.93: zp ZP_BYTE:140 [ mode_ecmchar::cy#4 mode_ecmchar::cy#1 ]
Uplift Scope [mode_mcchar] 2,002: zp ZP_BYTE:276 [ mode_mcchar::$26 ] 2,002: zp ZP_BYTE:277 [ mode_mcchar::$27 ] 2,002: zp ZP_BYTE:278 [ mode_mcchar::$28 ] 2,002: zp ZP_BYTE:280 [ mode_mcchar::$30 ] 2,002: zp ZP_BYTE:281 [ mode_mcchar::$31 ] 1,865.5: zp ZP_BYTE:134 [ mode_mcchar::cx#2 mode_mcchar::cx#1 ] 1,169.18: zp ZP_WORD:135 [ mode_mcchar::col#2 mode_mcchar::col#3 mode_mcchar::col#1 ] 1,001: zp ZP_BYTE:279 [ mode_mcchar::$29 ] 933: zp ZP_WORD:137 [ mode_mcchar::ch#2 mode_mcchar::ch#3 mode_mcchar::ch#1 ] 353.5: zp ZP_BYTE:132 [ mode_mcchar::i#2 mode_mcchar::i#1 ] 308.93: zp ZP_BYTE:133 [ mode_mcchar::cy#4 mode_mcchar::cy#1 ]
Uplift Scope [bitmap_plot] 10,012: zp ZP_BYTE:104 [ bitmap_plot::y#4 bitmap_plot::y#1 bitmap_plot::y#0 bitmap_plot::y#3 bitmap_plot::y#2 ] 5,006.5: zp ZP_BYTE:103 [ bitmap_plot::x#4 bitmap_plot::x#1 bitmap_plot::x#0 bitmap_plot::x#3 bitmap_plot::x#2 ] 4: zp ZP_WORD:261 [ bitmap_plot::plotter_y#0 ] 4: zp ZP_BYTE:265 [ bitmap_plot::$1 ] 2: zp ZP_WORD:259 [ bitmap_plot::plotter_x#0 ] 1: zp ZP_WORD:263 [ bitmap_plot::plotter#0 ]
Uplift Scope [mode_stdbitmap] 2,002: zp ZP_BYTE:243 [ mode_stdbitmap::$22 ] 2,002: zp ZP_BYTE:246 [ mode_stdbitmap::$25 ] 2,002: zp ZP_BYTE:247 [ mode_stdbitmap::$26 ] 1,876.88: zp ZP_BYTE:93 [ mode_stdbitmap::cx#2 mode_stdbitmap::cx#1 ] 1,501.5: zp ZP_BYTE:244 [ mode_stdbitmap::col#0 ] 1,066.03: zp ZP_WORD:94 [ mode_stdbitmap::ch#2 mode_stdbitmap::ch#3 mode_stdbitmap::ch#1 ] 1,001: zp ZP_BYTE:245 [ mode_stdbitmap::col2#0 ] 353.5: zp ZP_BYTE:91 [ mode_stdbitmap::i#2 mode_stdbitmap::i#1 ] 303: zp ZP_BYTE:96 [ mode_stdbitmap::l#2 mode_stdbitmap::l#1 ] 260.86: zp ZP_BYTE:92 [ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 ]
Uplift Scope [mode_8bppchunkybmm] 3,575.14: zp ZP_BYTE:9 [ mode_8bppchunkybmm::gfxbCpuBank#4 mode_8bppchunkybmm::gfxbCpuBank#7 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::gfxbCpuBank#2 ] 2,925.35: zp ZP_WORD:10 [ mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::gfxb#1 ] 2,002: zp ZP_BYTE:187 [ mode_8bppchunkybmm::c#0 ] 1,801.8: zp ZP_WORD:7 [ mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::x#1 ] 1,001: zp ZP_WORD:185 [ mode_8bppchunkybmm::$26 ] 353.5: zp ZP_BYTE:5 [ mode_8bppchunkybmm::i#2 mode_8bppchunkybmm::i#1 ] 244.04: zp ZP_BYTE:6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ]
Uplift Scope [bitmap_line_xdyi] 4,742.47: zp ZP_BYTE:102 [ bitmap_line_xdyi::e#3 bitmap_line_xdyi::e#0 bitmap_line_xdyi::e#6 bitmap_line_xdyi::e#2 bitmap_line_xdyi::e#1 ] 2,579.29: zp ZP_BYTE:101 [ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 ] 2,002: zp ZP_BYTE:258 [ bitmap_line_xdyi::$6 ] 1,131.22: zp ZP_BYTE:100 [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#2 ] 147.29: zp ZP_BYTE:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 ] 79.93: zp ZP_BYTE:97 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 ] 74.45: zp ZP_BYTE:99 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::x1#1 ]
Uplift Scope [bitmap_line_xdyd] 4,742.47: zp ZP_BYTE:116 [ bitmap_line_xdyd::e#3 bitmap_line_xdyd::e#0 bitmap_line_xdyd::e#6 bitmap_line_xdyd::e#2 bitmap_line_xdyd::e#1 ] 2,579.29: zp ZP_BYTE:115 [ bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 ] 2,002: zp ZP_BYTE:267 [ bitmap_line_xdyd::$6 ] 1,131.22: zp ZP_BYTE:114 [ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#2 ] 147.29: zp ZP_BYTE:112 [ bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::xd#1 ] 79.93: zp ZP_BYTE:111 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#0 bitmap_line_xdyd::yd#1 ] 74.45: zp ZP_BYTE:113 [ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::x1#1 ]
Uplift Scope [bitmap_line_ydxi] 4,742.47: zp ZP_BYTE:110 [ bitmap_line_ydxi::e#3 bitmap_line_ydxi::e#0 bitmap_line_ydxi::e#6 bitmap_line_ydxi::e#2 bitmap_line_ydxi::e#1 ] 2,579.29: zp ZP_BYTE:108 [ bitmap_line_ydxi::x#3 bitmap_line_ydxi::x#5 bitmap_line_ydxi::x#1 bitmap_line_ydxi::x#0 bitmap_line_ydxi::x#6 bitmap_line_ydxi::x#2 ] 2,002: zp ZP_BYTE:266 [ bitmap_line_ydxi::$6 ] 1,131.22: zp ZP_BYTE:109 [ bitmap_line_ydxi::y#3 bitmap_line_ydxi::y#6 bitmap_line_ydxi::y#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::y#2 ] 147.29: zp ZP_BYTE:106 [ bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 ] 79.93: zp ZP_BYTE:105 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 ] 74.45: zp ZP_BYTE:107 [ bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 ]
Uplift Scope [bitmap_line_ydxd] 4,742.47: zp ZP_BYTE:122 [ bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 ] 2,579.29: zp ZP_BYTE:120 [ bitmap_line_ydxd::x#3 bitmap_line_ydxd::x#5 bitmap_line_ydxd::x#0 bitmap_line_ydxd::x#1 bitmap_line_ydxd::x#6 bitmap_line_ydxd::x#2 ] 2,002: zp ZP_BYTE:268 [ bitmap_line_ydxd::$6 ] 1,131.22: zp ZP_BYTE:121 [ bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#3 ] 147.29: zp ZP_BYTE:118 [ bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 ] 79.93: zp ZP_BYTE:117 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ] 74.45: zp ZP_BYTE:119 [ bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 ]
Uplift Scope [mode_hicolstdchar] 2,002: zp ZP_BYTE:239 [ mode_hicolstdchar::$25 ] 2,002: zp ZP_BYTE:241 [ mode_hicolstdchar::$27 ] 1,835.17: zp ZP_BYTE:86 [ mode_hicolstdchar::cx#2 mode_hicolstdchar::cx#1 ] 1,019.76: zp ZP_WORD:87 [ mode_hicolstdchar::col#2 mode_hicolstdchar::col#3 mode_hicolstdchar::col#1 ] 1,010.6: zp ZP_WORD:89 [ mode_hicolstdchar::ch#2 mode_hicolstdchar::ch#3 mode_hicolstdchar::ch#1 ] 1,001: zp ZP_BYTE:240 [ mode_hicolstdchar::$26 ] 1,001: zp ZP_BYTE:242 [ mode_hicolstdchar::v#0 ] 353.5: zp ZP_BYTE:84 [ mode_hicolstdchar::i#2 mode_hicolstdchar::i#1 ] 251.75: zp ZP_BYTE:85 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 ]
Uplift Scope [mode_hicolecmchar] 2,002: zp ZP_BYTE:235 [ mode_hicolecmchar::$26 ] 2,002: zp ZP_BYTE:237 [ mode_hicolecmchar::$28 ] 1,835.17: zp ZP_BYTE:79 [ mode_hicolecmchar::cx#2 mode_hicolecmchar::cx#1 ] 1,019.76: zp ZP_WORD:80 [ mode_hicolecmchar::col#2 mode_hicolecmchar::col#3 mode_hicolecmchar::col#1 ] 1,010.6: zp ZP_WORD:82 [ mode_hicolecmchar::ch#2 mode_hicolecmchar::ch#3 mode_hicolecmchar::ch#1 ] 1,001: zp ZP_BYTE:236 [ mode_hicolecmchar::$27 ] 1,001: zp ZP_BYTE:238 [ mode_hicolecmchar::v#0 ] 353.5: zp ZP_BYTE:77 [ mode_hicolecmchar::i#2 mode_hicolecmchar::i#1 ] 251.75: zp ZP_BYTE:78 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 ]
Uplift Scope [mode_hicolmcchar] 2,002: zp ZP_BYTE:231 [ mode_hicolmcchar::$26 ] 2,002: zp ZP_BYTE:233 [ mode_hicolmcchar::$28 ] 1,835.17: zp ZP_BYTE:72 [ mode_hicolmcchar::cx#2 mode_hicolmcchar::cx#1 ] 1,019.76: zp ZP_WORD:73 [ mode_hicolmcchar::col#2 mode_hicolmcchar::col#3 mode_hicolmcchar::col#1 ] 1,010.6: zp ZP_WORD:75 [ mode_hicolmcchar::ch#2 mode_hicolmcchar::ch#3 mode_hicolmcchar::ch#1 ] 1,001: zp ZP_BYTE:232 [ mode_hicolmcchar::$27 ] 1,001: zp ZP_BYTE:234 [ mode_hicolmcchar::v#0 ] 353.5: zp ZP_BYTE:70 [ mode_hicolmcchar::i#2 mode_hicolmcchar::i#1 ] 251.75: zp ZP_BYTE:71 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 ]
Uplift Scope [] 3,698: zp ZP_WORD:155 [ print_char_cursor#17 print_char_cursor#19 print_char_cursor#100 print_char_cursor#32 print_char_cursor#1 ] 2,653.58: zp ZP_WORD:157 [ print_line_cursor#18 print_line_cursor#17 print_line_cursor#19 ] 149.86: zp ZP_BYTE:12 [ dtv_control#114 dtv_control#144 dtv_control#17 ]
Uplift Scope [bitmap_clear] 2,180.6: zp ZP_WORD:124 [ bitmap_clear::bitmap#2 bitmap_clear::bitmap#3 bitmap_clear::bitmap#5 bitmap_clear::bitmap#1 ] 2,168.83: zp ZP_BYTE:126 [ bitmap_clear::x#2 bitmap_clear::x#1 ] 185.17: zp ZP_BYTE:123 [ bitmap_clear::y#4 bitmap_clear::y#1 ] 2: zp ZP_WORD:269 [ bitmap_clear::bitmap#0 ]
Uplift Scope [menu] 353.5: zp ZP_BYTE:2 [ menu::i#2 menu::i#1 ] 336.67: zp ZP_WORD:3 [ menu::c#2 menu::c#1 ] 202: zp ZP_BYTE:162 [ menu::$29 ] 202: zp ZP_BYTE:164 [ menu::$33 ] 202: zp ZP_BYTE:166 [ menu::$37 ] 202: zp ZP_BYTE:168 [ menu::$41 ] 202: zp ZP_BYTE:170 [ menu::$45 ] 202: zp ZP_BYTE:172 [ menu::$49 ] 202: zp ZP_BYTE:174 [ menu::$53 ] 202: zp ZP_BYTE:176 [ menu::$57 ] 202: zp ZP_BYTE:178 [ menu::$61 ] 202: zp ZP_BYTE:180 [ menu::$65 ] 202: zp ZP_BYTE:182 [ menu::$69 ] 202: zp ZP_BYTE:184 [ menu::$73 ]
Uplift Scope [dtvSetCpuBankSegment1] 3,005: zp ZP_BYTE:15 [ dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#1 ]
Uplift Scope [print_str_lines] 1,937.17: zp ZP_WORD:153 [ print_str_lines::str#3 print_str_lines::str#2 print_str_lines::str#0 ] 667.33: zp ZP_BYTE:294 [ print_str_lines::ch#0 ]
Uplift Scope [bitmap_init] 366.12: zp ZP_WORD:130 [ bitmap_init::yoffs#2 bitmap_init::yoffs#4 bitmap_init::yoffs#1 ] 228.93: zp ZP_BYTE:128 [ bitmap_init::bits#3 bitmap_init::bits#4 bitmap_init::bits#1 ] 218.83: zp ZP_BYTE:127 [ bitmap_init::x#2 bitmap_init::x#1 ] 202: zp ZP_BYTE:129 [ bitmap_init::y#2 bitmap_init::y#1 ] 202: zp ZP_BYTE:271 [ bitmap_init::$0 ] 202: zp ZP_BYTE:273 [ bitmap_init::$7 ] 202: zp ZP_BYTE:274 [ bitmap_init::$8 ] 202: zp ZP_BYTE:275 [ bitmap_init::$9 ] 50.5: zp ZP_BYTE:272 [ bitmap_init::$10 ]
Uplift Scope [memset] 336.67: zp ZP_WORD:159 [ memset::dst#2 memset::dst#1 ]
Uplift Scope [bitmap_line] 6.25: zp ZP_BYTE:251 [ bitmap_line::y1#0 ] 5.95: zp ZP_BYTE:250 [ bitmap_line::y0#0 ] 5.41: zp ZP_BYTE:249 [ bitmap_line::x1#0 ] 5.17: zp ZP_BYTE:248 [ bitmap_line::x0#0 ] 0.89: zp ZP_BYTE:253 [ bitmap_line::yd#2 ] 0.89: zp ZP_BYTE:254 [ bitmap_line::yd#1 ] 0.89: zp ZP_BYTE:256 [ bitmap_line::yd#10 ] 0.89: zp ZP_BYTE:257 [ bitmap_line::yd#11 ] 0.7: zp ZP_BYTE:252 [ bitmap_line::xd#2 ] 0.7: zp ZP_BYTE:255 [ bitmap_line::xd#1 ]
Uplift Scope [keyboard_matrix_read] 4: zp ZP_BYTE:206 [ keyboard_matrix_read::rowid#0 ] 4: zp ZP_BYTE:207 [ keyboard_matrix_read::return#2 ] 1.33: zp ZP_BYTE:210 [ keyboard_matrix_read::return#0 ]
Uplift Scope [RADIX]
Uplift Scope [print_ln]
Uplift Scope [print_cls]
Uplift Scope [print_set_screen]
Uplift Scope [main]
Uplifting [mode_8bpppixelcell] best 3629720 combination reg byte a [ mode_8bpppixelcell::c#2 mode_8bpppixelcell::c#3 ] reg byte a [ mode_8bpppixelcell::$20 ] zp ZP_BYTE:29 [ mode_8bpppixelcell::cp#2 mode_8bpppixelcell::cp#1 ] zp ZP_BYTE:25 [ mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ] zp ZP_WORD:26 [ mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::gfxb#7 mode_8bpppixelcell::gfxb#1 ] zp ZP_BYTE:28 [ mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ] zp ZP_BYTE:211 [ mode_8bpppixelcell::$14 ] zp ZP_BYTE:213 [ mode_8bpppixelcell::$16 ] zp ZP_BYTE:214 [ mode_8bpppixelcell::$17 ] zp ZP_BYTE:18 [ mode_8bpppixelcell::ax#2 mode_8bpppixelcell::ax#1 ] zp ZP_WORD:22 [ mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::chargen#4 mode_8bpppixelcell::chargen#1 ] zp ZP_BYTE:24 [ mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ] zp ZP_WORD:19 [ mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::gfxa#1 ] zp ZP_BYTE:212 [ mode_8bpppixelcell::$15 ] zp ZP_BYTE:16 [ mode_8bpppixelcell::i#2 mode_8bpppixelcell::i#1 ] zp ZP_BYTE:17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 ] zp ZP_BYTE:21 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ]
Limited combination testing to 10 combinations of 3538944 possible.
Uplifting [mode_ctrl] best 3601820 combination reg byte x [ mode_ctrl::ctrl#14 mode_ctrl::ctrl#22 mode_ctrl::ctrl#6 mode_ctrl::ctrl#13 mode_ctrl::ctrl#5 mode_ctrl::ctrl#12 mode_ctrl::ctrl#4 mode_ctrl::ctrl#11 mode_ctrl::ctrl#3 mode_ctrl::ctrl#10 mode_ctrl::ctrl#2 mode_ctrl::ctrl#17 mode_ctrl::ctrl#1 mode_ctrl::ctrl#0 ] reg byte a [ mode_ctrl::$1 ] zp ZP_BYTE:191 [ mode_ctrl::$4 ] zp ZP_BYTE:193 [ mode_ctrl::$8 ] zp ZP_BYTE:195 [ mode_ctrl::$12 ] zp ZP_BYTE:197 [ mode_ctrl::$16 ] zp ZP_BYTE:199 [ mode_ctrl::$20 ] zp ZP_BYTE:201 [ mode_ctrl::$24 ] zp ZP_BYTE:203 [ mode_ctrl::$28 ]
Limited combination testing to 10 combinations of 196608 possible.
Uplifting [mode_twoplanebitmap] best 3586820 combination zp ZP_WORD:50 [ mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::gfxa#7 mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::gfxa#1 ] zp ZP_WORD:54 [ mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::gfxb#3 mode_twoplanebitmap::gfxb#1 ] reg byte x [ mode_twoplanebitmap::bx#2 mode_twoplanebitmap::bx#1 ] reg byte a [ mode_twoplanebitmap::$16 ] zp ZP_BYTE:222 [ mode_twoplanebitmap::$18 ] zp ZP_BYTE:223 [ mode_twoplanebitmap::$19 ] zp ZP_BYTE:224 [ mode_twoplanebitmap::$22 ] zp ZP_BYTE:46 [ mode_twoplanebitmap::cx#2 mode_twoplanebitmap::cx#1 ] zp ZP_BYTE:52 [ mode_twoplanebitmap::ax#2 mode_twoplanebitmap::ax#1 ] zp ZP_WORD:47 [ mode_twoplanebitmap::col#2 mode_twoplanebitmap::col#3 mode_twoplanebitmap::col#1 ] zp ZP_BYTE:221 [ mode_twoplanebitmap::$17 ] zp ZP_BYTE:44 [ mode_twoplanebitmap::i#2 mode_twoplanebitmap::i#1 ] zp ZP_BYTE:45 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 ] zp ZP_BYTE:49 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 ] zp ZP_BYTE:53 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 ]
Limited combination testing to 10 combinations of 196608 possible.
Uplifting [mode_sixsfred2] best 3571820 combination zp ZP_WORD:67 [ mode_sixsfred2::gfxb#2 mode_sixsfred2::gfxb#3 mode_sixsfred2::gfxb#1 ] reg byte x [ mode_sixsfred2::bx#2 mode_sixsfred2::bx#1 ] reg byte a [ mode_sixsfred2::$15 ] zp ZP_BYTE:227 [ mode_sixsfred2::$17 ] zp ZP_BYTE:228 [ mode_sixsfred2::$18 ] zp ZP_BYTE:229 [ mode_sixsfred2::$21 ] zp ZP_BYTE:230 [ mode_sixsfred2::row#0 ] zp ZP_BYTE:59 [ mode_sixsfred2::cx#2 mode_sixsfred2::cx#1 ] zp ZP_BYTE:65 [ mode_sixsfred2::ax#2 mode_sixsfred2::ax#1 ] zp ZP_WORD:63 [ mode_sixsfred2::gfxa#2 mode_sixsfred2::gfxa#3 mode_sixsfred2::gfxa#1 ] zp ZP_WORD:60 [ mode_sixsfred2::col#2 mode_sixsfred2::col#3 mode_sixsfred2::col#1 ] zp ZP_BYTE:226 [ mode_sixsfred2::$16 ] zp ZP_BYTE:57 [ mode_sixsfred2::i#2 mode_sixsfred2::i#1 ] zp ZP_BYTE:62 [ mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 ] zp ZP_BYTE:58 [ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 ] zp ZP_BYTE:66 [ mode_sixsfred2::by#4 mode_sixsfred2::by#1 ]
Limited combination testing to 10 combinations of 786432 possible.
Uplifting [mode_sixsfred] best 3546820 combination zp ZP_WORD:41 [ mode_sixsfred::gfxb#2 mode_sixsfred::gfxb#3 mode_sixsfred::gfxb#1 ] reg byte x [ mode_sixsfred::bx#2 mode_sixsfred::bx#1 ] reg byte x [ mode_sixsfred::cx#2 mode_sixsfred::cx#1 ] reg byte a [ mode_sixsfred::$17 ] zp ZP_BYTE:217 [ mode_sixsfred::$18 ] zp ZP_BYTE:218 [ mode_sixsfred::$21 ] zp ZP_BYTE:219 [ mode_sixsfred::row#0 ] zp ZP_BYTE:39 [ mode_sixsfred::ax#2 mode_sixsfred::ax#1 ] zp ZP_WORD:34 [ mode_sixsfred::col#2 mode_sixsfred::col#3 mode_sixsfred::col#1 ] zp ZP_WORD:37 [ mode_sixsfred::gfxa#2 mode_sixsfred::gfxa#3 mode_sixsfred::gfxa#1 ] zp ZP_BYTE:31 [ mode_sixsfred::i#2 mode_sixsfred::i#1 ] zp ZP_BYTE:32 [ mode_sixsfred::cy#4 mode_sixsfred::cy#1 ] zp ZP_BYTE:36 [ mode_sixsfred::ay#4 mode_sixsfred::ay#1 ] zp ZP_BYTE:40 [ mode_sixsfred::by#4 mode_sixsfred::by#1 ]
Limited combination testing to 10 combinations of 65536 possible.
Uplifting [mode_stdchar] best 3534820 combination reg byte a [ mode_stdchar::$25 ] reg byte a [ mode_stdchar::$26 ] zp ZP_BYTE:290 [ mode_stdchar::$27 ] zp ZP_BYTE:292 [ mode_stdchar::$29 ] zp ZP_BYTE:293 [ mode_stdchar::$30 ] zp ZP_BYTE:148 [ mode_stdchar::cx#2 mode_stdchar::cx#1 ] zp ZP_WORD:149 [ mode_stdchar::col#2 mode_stdchar::col#3 mode_stdchar::col#1 ] zp ZP_BYTE:291 [ mode_stdchar::$28 ] zp ZP_WORD:151 [ mode_stdchar::ch#2 mode_stdchar::ch#3 mode_stdchar::ch#1 ] zp ZP_BYTE:146 [ mode_stdchar::i#2 mode_stdchar::i#1 ] zp ZP_BYTE:147 [ mode_stdchar::cy#4 mode_stdchar::cy#1 ]
Limited combination testing to 10 combinations of 36864 possible.
Uplifting [mode_ecmchar] best 3522820 combination reg byte a [ mode_ecmchar::$26 ] reg byte a [ mode_ecmchar::$27 ] zp ZP_BYTE:284 [ mode_ecmchar::$28 ] zp ZP_BYTE:286 [ mode_ecmchar::$30 ] zp ZP_BYTE:287 [ mode_ecmchar::$31 ] zp ZP_BYTE:141 [ mode_ecmchar::cx#2 mode_ecmchar::cx#1 ] zp ZP_WORD:142 [ mode_ecmchar::col#2 mode_ecmchar::col#3 mode_ecmchar::col#1 ] zp ZP_BYTE:285 [ mode_ecmchar::$29 ] zp ZP_WORD:144 [ mode_ecmchar::ch#2 mode_ecmchar::ch#3 mode_ecmchar::ch#1 ] zp ZP_BYTE:139 [ mode_ecmchar::i#2 mode_ecmchar::i#1 ] zp ZP_BYTE:140 [ mode_ecmchar::cy#4 mode_ecmchar::cy#1 ]
Limited combination testing to 10 combinations of 36864 possible.
Uplifting [mode_mcchar] best 3510820 combination reg byte a [ mode_mcchar::$26 ] reg byte a [ mode_mcchar::$27 ] zp ZP_BYTE:278 [ mode_mcchar::$28 ] zp ZP_BYTE:280 [ mode_mcchar::$30 ] zp ZP_BYTE:281 [ mode_mcchar::$31 ] zp ZP_BYTE:134 [ mode_mcchar::cx#2 mode_mcchar::cx#1 ] zp ZP_WORD:135 [ mode_mcchar::col#2 mode_mcchar::col#3 mode_mcchar::col#1 ] zp ZP_BYTE:279 [ mode_mcchar::$29 ] zp ZP_WORD:137 [ mode_mcchar::ch#2 mode_mcchar::ch#3 mode_mcchar::ch#1 ] zp ZP_BYTE:132 [ mode_mcchar::i#2 mode_mcchar::i#1 ] zp ZP_BYTE:133 [ mode_mcchar::cy#4 mode_mcchar::cy#1 ]
Limited combination testing to 10 combinations of 36864 possible.
Uplifting [bitmap_plot] best 3486811 combination reg byte y [ bitmap_plot::y#4 bitmap_plot::y#1 bitmap_plot::y#0 bitmap_plot::y#3 bitmap_plot::y#2 ] reg byte x [ bitmap_plot::x#4 bitmap_plot::x#1 bitmap_plot::x#0 bitmap_plot::x#3 bitmap_plot::x#2 ] zp ZP_WORD:261 [ bitmap_plot::plotter_y#0 ] zp ZP_BYTE:265 [ bitmap_plot::$1 ] zp ZP_WORD:259 [ bitmap_plot::plotter_x#0 ] zp ZP_WORD:263 [ bitmap_plot::plotter#0 ]
Limited combination testing to 10 combinations of 36 possible.
Uplifting [mode_stdbitmap] best 3474811 combination reg byte a [ mode_stdbitmap::$22 ] reg byte a [ mode_stdbitmap::$25 ] zp ZP_BYTE:247 [ mode_stdbitmap::$26 ] zp ZP_BYTE:93 [ mode_stdbitmap::cx#2 mode_stdbitmap::cx#1 ] zp ZP_BYTE:244 [ mode_stdbitmap::col#0 ] zp ZP_WORD:94 [ mode_stdbitmap::ch#2 mode_stdbitmap::ch#3 mode_stdbitmap::ch#1 ] zp ZP_BYTE:245 [ mode_stdbitmap::col2#0 ] zp ZP_BYTE:91 [ mode_stdbitmap::i#2 mode_stdbitmap::i#1 ] zp ZP_BYTE:96 [ mode_stdbitmap::l#2 mode_stdbitmap::l#1 ] zp ZP_BYTE:92 [ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 ]
Limited combination testing to 10 combinations of 13824 possible.
Uplifting [mode_8bppchunkybmm] best 3462511 combination reg byte x [ mode_8bppchunkybmm::gfxbCpuBank#4 mode_8bppchunkybmm::gfxbCpuBank#7 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::gfxbCpuBank#2 ] zp ZP_WORD:10 [ mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::gfxb#1 ] reg byte a [ mode_8bppchunkybmm::c#0 ] zp ZP_WORD:7 [ mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::x#1 ] zp ZP_WORD:185 [ mode_8bppchunkybmm::$26 ] zp ZP_BYTE:5 [ mode_8bppchunkybmm::i#2 mode_8bppchunkybmm::i#1 ] zp ZP_BYTE:6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ]
Limited combination testing to 10 combinations of 64 possible.
Uplifting [bitmap_line_xdyi] best 3456511 combination zp ZP_BYTE:102 [ bitmap_line_xdyi::e#3 bitmap_line_xdyi::e#0 bitmap_line_xdyi::e#6 bitmap_line_xdyi::e#2 bitmap_line_xdyi::e#1 ] zp ZP_BYTE:101 [ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 ] reg byte x [ bitmap_line_xdyi::$6 ] zp ZP_BYTE:100 [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#2 ] zp ZP_BYTE:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 ] zp ZP_BYTE:97 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 ] zp ZP_BYTE:99 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::x1#1 ]
Limited combination testing to 10 combinations of 256 possible.
Uplifting [bitmap_line_xdyd] best 3450511 combination zp ZP_BYTE:116 [ bitmap_line_xdyd::e#3 bitmap_line_xdyd::e#0 bitmap_line_xdyd::e#6 bitmap_line_xdyd::e#2 bitmap_line_xdyd::e#1 ] zp ZP_BYTE:115 [ bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 ] reg byte x [ bitmap_line_xdyd::$6 ] zp ZP_BYTE:114 [ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#2 ] zp ZP_BYTE:112 [ bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::xd#1 ] zp ZP_BYTE:111 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#0 bitmap_line_xdyd::yd#1 ] zp ZP_BYTE:113 [ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::x1#1 ]
Limited combination testing to 10 combinations of 256 possible.
Uplifting [bitmap_line_ydxi] best 3440505 combination zp ZP_BYTE:110 [ bitmap_line_ydxi::e#3 bitmap_line_ydxi::e#0 bitmap_line_ydxi::e#6 bitmap_line_ydxi::e#2 bitmap_line_ydxi::e#1 ] reg byte x [ bitmap_line_ydxi::x#3 bitmap_line_ydxi::x#5 bitmap_line_ydxi::x#1 bitmap_line_ydxi::x#0 bitmap_line_ydxi::x#6 bitmap_line_ydxi::x#2 ] reg byte a [ bitmap_line_ydxi::$6 ] zp ZP_BYTE:109 [ bitmap_line_ydxi::y#3 bitmap_line_ydxi::y#6 bitmap_line_ydxi::y#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::y#2 ] zp ZP_BYTE:106 [ bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 ] zp ZP_BYTE:105 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 ] zp ZP_BYTE:107 [ bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 ]
Limited combination testing to 10 combinations of 256 possible.
Uplifting [bitmap_line_ydxd] best 3430499 combination zp ZP_BYTE:122 [ bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 ] reg byte x [ bitmap_line_ydxd::x#3 bitmap_line_ydxd::x#5 bitmap_line_ydxd::x#0 bitmap_line_ydxd::x#1 bitmap_line_ydxd::x#6 bitmap_line_ydxd::x#2 ] reg byte a [ bitmap_line_ydxd::$6 ] zp ZP_BYTE:121 [ bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#3 ] zp ZP_BYTE:118 [ bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 ] zp ZP_BYTE:117 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ] zp ZP_BYTE:119 [ bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 ]
Limited combination testing to 10 combinations of 256 possible.
Uplifting [mode_hicolstdchar] best 3418499 combination reg byte a [ mode_hicolstdchar::$25 ] reg byte a [ mode_hicolstdchar::$27 ] zp ZP_BYTE:86 [ mode_hicolstdchar::cx#2 mode_hicolstdchar::cx#1 ] zp ZP_WORD:87 [ mode_hicolstdchar::col#2 mode_hicolstdchar::col#3 mode_hicolstdchar::col#1 ] zp ZP_WORD:89 [ mode_hicolstdchar::ch#2 mode_hicolstdchar::ch#3 mode_hicolstdchar::ch#1 ] zp ZP_BYTE:240 [ mode_hicolstdchar::$26 ] zp ZP_BYTE:242 [ mode_hicolstdchar::v#0 ] zp ZP_BYTE:84 [ mode_hicolstdchar::i#2 mode_hicolstdchar::i#1 ] zp ZP_BYTE:85 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 ]
Limited combination testing to 10 combinations of 2304 possible.
Uplifting [mode_hicolecmchar] best 3406499 combination reg byte a [ mode_hicolecmchar::$26 ] reg byte a [ mode_hicolecmchar::$28 ] zp ZP_BYTE:79 [ mode_hicolecmchar::cx#2 mode_hicolecmchar::cx#1 ] zp ZP_WORD:80 [ mode_hicolecmchar::col#2 mode_hicolecmchar::col#3 mode_hicolecmchar::col#1 ] zp ZP_WORD:82 [ mode_hicolecmchar::ch#2 mode_hicolecmchar::ch#3 mode_hicolecmchar::ch#1 ] zp ZP_BYTE:236 [ mode_hicolecmchar::$27 ] zp ZP_BYTE:238 [ mode_hicolecmchar::v#0 ] zp ZP_BYTE:77 [ mode_hicolecmchar::i#2 mode_hicolecmchar::i#1 ] zp ZP_BYTE:78 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 ]
Limited combination testing to 10 combinations of 2304 possible.
Uplifting [mode_hicolmcchar] best 3394499 combination reg byte a [ mode_hicolmcchar::$26 ] reg byte a [ mode_hicolmcchar::$28 ] zp ZP_BYTE:72 [ mode_hicolmcchar::cx#2 mode_hicolmcchar::cx#1 ] zp ZP_WORD:73 [ mode_hicolmcchar::col#2 mode_hicolmcchar::col#3 mode_hicolmcchar::col#1 ] zp ZP_WORD:75 [ mode_hicolmcchar::ch#2 mode_hicolmcchar::ch#3 mode_hicolmcchar::ch#1 ] zp ZP_BYTE:232 [ mode_hicolmcchar::$27 ] zp ZP_BYTE:234 [ mode_hicolmcchar::v#0 ] zp ZP_BYTE:70 [ mode_hicolmcchar::i#2 mode_hicolmcchar::i#1 ] zp ZP_BYTE:71 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 ]
Limited combination testing to 10 combinations of 2304 possible.
Uplifting [] best 3394499 combination zp ZP_WORD:155 [ print_char_cursor#17 print_char_cursor#19 print_char_cursor#100 print_char_cursor#32 print_char_cursor#1 ] zp ZP_WORD:157 [ print_line_cursor#18 print_line_cursor#17 print_line_cursor#19 ] zp ZP_BYTE:12 [ dtv_control#114 dtv_control#144 dtv_control#17 ]
Uplifting [bitmap_clear] best 3385499 combination zp ZP_WORD:124 [ bitmap_clear::bitmap#2 bitmap_clear::bitmap#3 bitmap_clear::bitmap#5 bitmap_clear::bitmap#1 ] reg byte x [ bitmap_clear::x#2 bitmap_clear::x#1 ] zp ZP_BYTE:123 [ bitmap_clear::y#4 bitmap_clear::y#1 ] zp ZP_WORD:269 [ bitmap_clear::bitmap#0 ]
Uplifting [menu] best 3383699 combination reg byte x [ menu::i#2 menu::i#1 ] zp ZP_WORD:3 [ menu::c#2 menu::c#1 ] reg byte a [ menu::$29 ] zp ZP_BYTE:164 [ menu::$33 ] zp ZP_BYTE:166 [ menu::$37 ] zp ZP_BYTE:168 [ menu::$41 ] zp ZP_BYTE:170 [ menu::$45 ] zp ZP_BYTE:172 [ menu::$49 ] zp ZP_BYTE:174 [ menu::$53 ] zp ZP_BYTE:176 [ menu::$57 ] zp ZP_BYTE:178 [ menu::$61 ] zp ZP_BYTE:180 [ menu::$65 ] zp ZP_BYTE:182 [ menu::$69 ] zp ZP_BYTE:184 [ menu::$73 ]
Limited combination testing to 10 combinations of 50331648 possible.
Uplifting [dtvSetCpuBankSegment1] best 3382690 combination reg byte a [ dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#1 ]
Uplifting [print_str_lines] best 3370690 combination zp ZP_WORD:153 [ print_str_lines::str#3 print_str_lines::str#2 print_str_lines::str#0 ] reg byte a [ print_str_lines::ch#0 ]
Uplifting [bitmap_init] best 3367690 combination zp ZP_WORD:130 [ bitmap_init::yoffs#2 bitmap_init::yoffs#4 bitmap_init::yoffs#1 ] reg byte y [ bitmap_init::bits#3 bitmap_init::bits#4 bitmap_init::bits#1 ] reg byte x [ bitmap_init::x#2 bitmap_init::x#1 ] zp ZP_BYTE:129 [ bitmap_init::y#2 bitmap_init::y#1 ] zp ZP_BYTE:271 [ bitmap_init::$0 ] zp ZP_BYTE:273 [ bitmap_init::$7 ] zp ZP_BYTE:274 [ bitmap_init::$8 ] zp ZP_BYTE:275 [ bitmap_init::$9 ] zp ZP_BYTE:272 [ bitmap_init::$10 ]
Limited combination testing to 10 combinations of 34560 possible.
Uplifting [memset] best 3367690 combination zp ZP_WORD:159 [ memset::dst#2 memset::dst#1 ]
Uplifting [bitmap_line] best 3367374 combination zp ZP_BYTE:251 [ bitmap_line::y1#0 ] zp ZP_BYTE:250 [ bitmap_line::y0#0 ] reg byte x [ bitmap_line::x1#0 ] zp ZP_BYTE:248 [ bitmap_line::x0#0 ] zp ZP_BYTE:253 [ bitmap_line::yd#2 ] zp ZP_BYTE:254 [ bitmap_line::yd#1 ] zp ZP_BYTE:256 [ bitmap_line::yd#10 ] zp ZP_BYTE:257 [ bitmap_line::yd#11 ] zp ZP_BYTE:252 [ bitmap_line::xd#2 ] zp ZP_BYTE:255 [ bitmap_line::xd#1 ]
Limited combination testing to 10 combinations of 186624 possible.
Uplifting [keyboard_matrix_read] best 3367362 combination reg byte y [ keyboard_matrix_read::rowid#0 ] reg byte a [ keyboard_matrix_read::return#2 ] zp ZP_BYTE:210 [ keyboard_matrix_read::return#0 ]
Limited combination testing to 10 combinations of 64 possible.
Uplifting [RADIX] best 3367362 combination
Uplifting [print_ln] best 3367362 combination
Uplifting [print_cls] best 3367362 combination
Uplifting [print_set_screen] best 3367362 combination
Uplifting [main] best 3367362 combination
Attempting to uplift remaining variables inzp ZP_BYTE:29 [ mode_8bpppixelcell::cp#2 mode_8bpppixelcell::cp#1 ]
Uplifting [mode_8bpppixelcell] best 3277362 combination reg byte x [ mode_8bpppixelcell::cp#2 mode_8bpppixelcell::cp#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:25 [ mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ]
Uplifting [mode_8bpppixelcell] best 3277362 combination zp ZP_BYTE:25 [ mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ]
Attempting to uplift remaining variables inzp ZP_BYTE:28 [ mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ]
Uplifting [mode_8bpppixelcell] best 3277362 combination zp ZP_BYTE:28 [ mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:102 [ bitmap_line_xdyi::e#3 bitmap_line_xdyi::e#0 bitmap_line_xdyi::e#6 bitmap_line_xdyi::e#2 bitmap_line_xdyi::e#1 ]
Uplifting [bitmap_line_xdyi] best 3277362 combination zp ZP_BYTE:102 [ bitmap_line_xdyi::e#3 bitmap_line_xdyi::e#0 bitmap_line_xdyi::e#6 bitmap_line_xdyi::e#2 bitmap_line_xdyi::e#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:110 [ bitmap_line_ydxi::e#3 bitmap_line_ydxi::e#0 bitmap_line_ydxi::e#6 bitmap_line_ydxi::e#2 bitmap_line_ydxi::e#1 ]
Uplifting [bitmap_line_ydxi] best 3277362 combination zp ZP_BYTE:110 [ bitmap_line_ydxi::e#3 bitmap_line_ydxi::e#0 bitmap_line_ydxi::e#6 bitmap_line_ydxi::e#2 bitmap_line_ydxi::e#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:116 [ bitmap_line_xdyd::e#3 bitmap_line_xdyd::e#0 bitmap_line_xdyd::e#6 bitmap_line_xdyd::e#2 bitmap_line_xdyd::e#1 ]
Uplifting [bitmap_line_xdyd] best 3277362 combination zp ZP_BYTE:116 [ bitmap_line_xdyd::e#3 bitmap_line_xdyd::e#0 bitmap_line_xdyd::e#6 bitmap_line_xdyd::e#2 bitmap_line_xdyd::e#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:122 [ bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 ]
Uplifting [bitmap_line_ydxd] best 3277362 combination zp ZP_BYTE:122 [ bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:101 [ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 ]
Uplifting [bitmap_line_xdyi] best 3277362 combination zp ZP_BYTE:101 [ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 ]
Attempting to uplift remaining variables inzp ZP_BYTE:115 [ bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 ]
Uplifting [bitmap_line_xdyd] best 3277362 combination zp ZP_BYTE:115 [ bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 ]
Attempting to uplift remaining variables inzp ZP_BYTE:188 [ keyboard_key_pressed::return#14 ]
Uplifting [keyboard_key_pressed] best 3271362 combination reg byte a [ keyboard_key_pressed::return#14 ]
Attempting to uplift remaining variables inzp ZP_BYTE:190 [ keyboard_key_pressed::return#15 ]
Uplifting [keyboard_key_pressed] best 3265362 combination reg byte a [ keyboard_key_pressed::return#15 ]
Attempting to uplift remaining variables inzp ZP_BYTE:191 [ mode_ctrl::$4 ]
Uplifting [mode_ctrl] best 3259362 combination reg byte a [ mode_ctrl::$4 ]
Attempting to uplift remaining variables inzp ZP_BYTE:192 [ keyboard_key_pressed::return#16 ]
Uplifting [keyboard_key_pressed] best 3253362 combination reg byte a [ keyboard_key_pressed::return#16 ]
Attempting to uplift remaining variables inzp ZP_BYTE:193 [ mode_ctrl::$8 ]
Uplifting [mode_ctrl] best 3247362 combination reg byte a [ mode_ctrl::$8 ]
Attempting to uplift remaining variables inzp ZP_BYTE:194 [ keyboard_key_pressed::return#17 ]
Uplifting [keyboard_key_pressed] best 3241362 combination reg byte a [ keyboard_key_pressed::return#17 ]
Attempting to uplift remaining variables inzp ZP_BYTE:195 [ mode_ctrl::$12 ]
Uplifting [mode_ctrl] best 3235362 combination reg byte a [ mode_ctrl::$12 ]
Attempting to uplift remaining variables inzp ZP_BYTE:196 [ keyboard_key_pressed::return#18 ]
Uplifting [keyboard_key_pressed] best 3229362 combination reg byte a [ keyboard_key_pressed::return#18 ]
Attempting to uplift remaining variables inzp ZP_BYTE:197 [ mode_ctrl::$16 ]
Uplifting [mode_ctrl] best 3223362 combination reg byte a [ mode_ctrl::$16 ]
Attempting to uplift remaining variables inzp ZP_BYTE:198 [ keyboard_key_pressed::return#19 ]
Uplifting [keyboard_key_pressed] best 3217362 combination reg byte a [ keyboard_key_pressed::return#19 ]
Attempting to uplift remaining variables inzp ZP_BYTE:199 [ mode_ctrl::$20 ]
Uplifting [mode_ctrl] best 3211362 combination reg byte a [ mode_ctrl::$20 ]
Attempting to uplift remaining variables inzp ZP_BYTE:200 [ keyboard_key_pressed::return#20 ]
Uplifting [keyboard_key_pressed] best 3205362 combination reg byte a [ keyboard_key_pressed::return#20 ]
Attempting to uplift remaining variables inzp ZP_BYTE:201 [ mode_ctrl::$24 ]
Uplifting [mode_ctrl] best 3199362 combination reg byte a [ mode_ctrl::$24 ]
Attempting to uplift remaining variables inzp ZP_BYTE:202 [ keyboard_key_pressed::return#21 ]
Uplifting [keyboard_key_pressed] best 3193362 combination reg byte a [ keyboard_key_pressed::return#21 ]
Attempting to uplift remaining variables inzp ZP_BYTE:203 [ mode_ctrl::$28 ]
Uplifting [mode_ctrl] best 3187362 combination reg byte a [ mode_ctrl::$28 ]
Attempting to uplift remaining variables inzp ZP_BYTE:211 [ mode_8bpppixelcell::$14 ]
Uplifting [mode_8bpppixelcell] best 3181362 combination reg byte a [ mode_8bpppixelcell::$14 ]
Attempting to uplift remaining variables inzp ZP_BYTE:213 [ mode_8bpppixelcell::$16 ]
Uplifting [mode_8bpppixelcell] best 3175362 combination reg byte a [ mode_8bpppixelcell::$16 ]
Attempting to uplift remaining variables inzp ZP_BYTE:214 [ mode_8bpppixelcell::$17 ]
Uplifting [mode_8bpppixelcell] best 3169362 combination reg byte a [ mode_8bpppixelcell::$17 ]
Attempting to uplift remaining variables inzp ZP_BYTE:217 [ mode_sixsfred::$18 ]
Uplifting [mode_sixsfred] best 3163362 combination reg byte a [ mode_sixsfred::$18 ]
Attempting to uplift remaining variables inzp ZP_BYTE:218 [ mode_sixsfred::$21 ]
Uplifting [mode_sixsfred] best 3157362 combination reg byte a [ mode_sixsfred::$21 ]
Attempting to uplift remaining variables inzp ZP_BYTE:219 [ mode_sixsfred::row#0 ]
Uplifting [mode_sixsfred] best 3153362 combination reg byte a [ mode_sixsfred::row#0 ]
Attempting to uplift remaining variables inzp ZP_BYTE:222 [ mode_twoplanebitmap::$18 ]
Uplifting [mode_twoplanebitmap] best 3147362 combination reg byte a [ mode_twoplanebitmap::$18 ]
Attempting to uplift remaining variables inzp ZP_BYTE:223 [ mode_twoplanebitmap::$19 ]
Uplifting [mode_twoplanebitmap] best 3141362 combination reg byte a [ mode_twoplanebitmap::$19 ]
Attempting to uplift remaining variables inzp ZP_BYTE:224 [ mode_twoplanebitmap::$22 ]
Uplifting [mode_twoplanebitmap] best 3135362 combination reg byte a [ mode_twoplanebitmap::$22 ]
Attempting to uplift remaining variables inzp ZP_BYTE:227 [ mode_sixsfred2::$17 ]
Uplifting [mode_sixsfred2] best 3129362 combination reg byte a [ mode_sixsfred2::$17 ]
Attempting to uplift remaining variables inzp ZP_BYTE:228 [ mode_sixsfred2::$18 ]
Uplifting [mode_sixsfred2] best 3123362 combination reg byte a [ mode_sixsfred2::$18 ]
Attempting to uplift remaining variables inzp ZP_BYTE:229 [ mode_sixsfred2::$21 ]
Uplifting [mode_sixsfred2] best 3117362 combination reg byte a [ mode_sixsfred2::$21 ]
Attempting to uplift remaining variables inzp ZP_BYTE:230 [ mode_sixsfred2::row#0 ]
Uplifting [mode_sixsfred2] best 3113362 combination reg byte a [ mode_sixsfred2::row#0 ]
Attempting to uplift remaining variables inzp ZP_BYTE:247 [ mode_stdbitmap::$26 ]
Uplifting [mode_stdbitmap] best 3107362 combination reg byte a [ mode_stdbitmap::$26 ]
Attempting to uplift remaining variables inzp ZP_BYTE:278 [ mode_mcchar::$28 ]
Uplifting [mode_mcchar] best 3101362 combination reg byte a [ mode_mcchar::$28 ]
Attempting to uplift remaining variables inzp ZP_BYTE:280 [ mode_mcchar::$30 ]
Uplifting [mode_mcchar] best 3095362 combination reg byte a [ mode_mcchar::$30 ]
Attempting to uplift remaining variables inzp ZP_BYTE:281 [ mode_mcchar::$31 ]
Uplifting [mode_mcchar] best 3089362 combination reg byte a [ mode_mcchar::$31 ]
Attempting to uplift remaining variables inzp ZP_BYTE:284 [ mode_ecmchar::$28 ]
Uplifting [mode_ecmchar] best 3083362 combination reg byte a [ mode_ecmchar::$28 ]
Attempting to uplift remaining variables inzp ZP_BYTE:286 [ mode_ecmchar::$30 ]
Uplifting [mode_ecmchar] best 3077362 combination reg byte a [ mode_ecmchar::$30 ]
Attempting to uplift remaining variables inzp ZP_BYTE:287 [ mode_ecmchar::$31 ]
Uplifting [mode_ecmchar] best 3071362 combination reg byte a [ mode_ecmchar::$31 ]
Attempting to uplift remaining variables inzp ZP_BYTE:290 [ mode_stdchar::$27 ]
Uplifting [mode_stdchar] best 3065362 combination reg byte a [ mode_stdchar::$27 ]
Attempting to uplift remaining variables inzp ZP_BYTE:292 [ mode_stdchar::$29 ]
Uplifting [mode_stdchar] best 3059362 combination reg byte a [ mode_stdchar::$29 ]
Attempting to uplift remaining variables inzp ZP_BYTE:293 [ mode_stdchar::$30 ]
Uplifting [mode_stdchar] best 3053362 combination reg byte a [ mode_stdchar::$30 ]
Attempting to uplift remaining variables inzp ZP_BYTE:18 [ mode_8bpppixelcell::ax#2 mode_8bpppixelcell::ax#1 ]
Uplifting [mode_8bpppixelcell] best 3043362 combination reg byte x [ mode_8bpppixelcell::ax#2 mode_8bpppixelcell::ax#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:46 [ mode_twoplanebitmap::cx#2 mode_twoplanebitmap::cx#1 ]
Uplifting [mode_twoplanebitmap] best 3033362 combination reg byte x [ mode_twoplanebitmap::cx#2 mode_twoplanebitmap::cx#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:59 [ mode_sixsfred2::cx#2 mode_sixsfred2::cx#1 ]
Uplifting [mode_sixsfred2] best 3023362 combination reg byte x [ mode_sixsfred2::cx#2 mode_sixsfred2::cx#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:39 [ mode_sixsfred::ax#2 mode_sixsfred::ax#1 ]
Uplifting [mode_sixsfred] best 3014362 combination reg byte x [ mode_sixsfred::ax#2 mode_sixsfred::ax#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:65 [ mode_sixsfred2::ax#2 mode_sixsfred2::ax#1 ]
Uplifting [mode_sixsfred2] best 3005362 combination reg byte x [ mode_sixsfred2::ax#2 mode_sixsfred2::ax#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:93 [ mode_stdbitmap::cx#2 mode_stdbitmap::cx#1 ]
Uplifting [mode_stdbitmap] best 2995362 combination reg byte x [ mode_stdbitmap::cx#2 mode_stdbitmap::cx#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:134 [ mode_mcchar::cx#2 mode_mcchar::cx#1 ]
Uplifting [mode_mcchar] best 2984362 combination reg byte x [ mode_mcchar::cx#2 mode_mcchar::cx#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:141 [ mode_ecmchar::cx#2 mode_ecmchar::cx#1 ]
Uplifting [mode_ecmchar] best 2973362 combination reg byte x [ mode_ecmchar::cx#2 mode_ecmchar::cx#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:148 [ mode_stdchar::cx#2 mode_stdchar::cx#1 ]
Uplifting [mode_stdchar] best 2962362 combination reg byte x [ mode_stdchar::cx#2 mode_stdchar::cx#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:72 [ mode_hicolmcchar::cx#2 mode_hicolmcchar::cx#1 ]
Uplifting [mode_hicolmcchar] best 2952362 combination reg byte x [ mode_hicolmcchar::cx#2 mode_hicolmcchar::cx#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:79 [ mode_hicolecmchar::cx#2 mode_hicolecmchar::cx#1 ]
Uplifting [mode_hicolecmchar] best 2942362 combination reg byte x [ mode_hicolecmchar::cx#2 mode_hicolecmchar::cx#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:86 [ mode_hicolstdchar::cx#2 mode_hicolstdchar::cx#1 ]
Uplifting [mode_hicolstdchar] best 2932362 combination reg byte x [ mode_hicolstdchar::cx#2 mode_hicolstdchar::cx#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:52 [ mode_twoplanebitmap::ax#2 mode_twoplanebitmap::ax#1 ]
Uplifting [mode_twoplanebitmap] best 2923362 combination reg byte x [ mode_twoplanebitmap::ax#2 mode_twoplanebitmap::ax#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:24 [ mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ]
Uplifting [mode_8bpppixelcell] best 2923362 combination zp ZP_BYTE:24 [ mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:244 [ mode_stdbitmap::col#0 ]
Uplifting [mode_stdbitmap] best 2922362 combination reg byte y [ mode_stdbitmap::col#0 ]
Attempting to uplift remaining variables inzp ZP_BYTE:100 [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#2 ]
Uplifting [bitmap_line_xdyi] best 2922362 combination zp ZP_BYTE:100 [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#2 ]
Attempting to uplift remaining variables inzp ZP_BYTE:109 [ bitmap_line_ydxi::y#3 bitmap_line_ydxi::y#6 bitmap_line_ydxi::y#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::y#2 ]
Uplifting [bitmap_line_ydxi] best 2922362 combination zp ZP_BYTE:109 [ bitmap_line_ydxi::y#3 bitmap_line_ydxi::y#6 bitmap_line_ydxi::y#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::y#2 ]
Attempting to uplift remaining variables inzp ZP_BYTE:114 [ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#2 ]
Uplifting [bitmap_line_xdyd] best 2922362 combination zp ZP_BYTE:114 [ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#2 ]
Attempting to uplift remaining variables inzp ZP_BYTE:121 [ bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#3 ]
Uplifting [bitmap_line_ydxd] best 2922362 combination zp ZP_BYTE:121 [ bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#3 ]
Attempting to uplift remaining variables inzp ZP_BYTE:212 [ mode_8bpppixelcell::$15 ]
Uplifting [mode_8bpppixelcell] best 2922362 combination zp ZP_BYTE:212 [ mode_8bpppixelcell::$15 ]
Attempting to uplift remaining variables inzp ZP_BYTE:221 [ mode_twoplanebitmap::$17 ]
Uplifting [mode_twoplanebitmap] best 2922362 combination zp ZP_BYTE:221 [ mode_twoplanebitmap::$17 ]
Attempting to uplift remaining variables inzp ZP_BYTE:226 [ mode_sixsfred2::$16 ]
Uplifting [mode_sixsfred2] best 2922362 combination zp ZP_BYTE:226 [ mode_sixsfred2::$16 ]
Attempting to uplift remaining variables inzp ZP_BYTE:232 [ mode_hicolmcchar::$27 ]
Uplifting [mode_hicolmcchar] best 2922362 combination zp ZP_BYTE:232 [ mode_hicolmcchar::$27 ]
Attempting to uplift remaining variables inzp ZP_BYTE:234 [ mode_hicolmcchar::v#0 ]
Uplifting [mode_hicolmcchar] best 2913362 combination reg byte a [ mode_hicolmcchar::v#0 ]
Attempting to uplift remaining variables inzp ZP_BYTE:236 [ mode_hicolecmchar::$27 ]
Uplifting [mode_hicolecmchar] best 2913362 combination zp ZP_BYTE:236 [ mode_hicolecmchar::$27 ]
Attempting to uplift remaining variables inzp ZP_BYTE:238 [ mode_hicolecmchar::v#0 ]
Uplifting [mode_hicolecmchar] best 2904362 combination reg byte a [ mode_hicolecmchar::v#0 ]
Attempting to uplift remaining variables inzp ZP_BYTE:240 [ mode_hicolstdchar::$26 ]
Uplifting [mode_hicolstdchar] best 2904362 combination zp ZP_BYTE:240 [ mode_hicolstdchar::$26 ]
Attempting to uplift remaining variables inzp ZP_BYTE:242 [ mode_hicolstdchar::v#0 ]
Uplifting [mode_hicolstdchar] best 2895362 combination reg byte a [ mode_hicolstdchar::v#0 ]
Attempting to uplift remaining variables inzp ZP_BYTE:245 [ mode_stdbitmap::col2#0 ]
Uplifting [mode_stdbitmap] best 2895362 combination zp ZP_BYTE:245 [ mode_stdbitmap::col2#0 ]
Attempting to uplift remaining variables inzp ZP_BYTE:279 [ mode_mcchar::$29 ]
Uplifting [mode_mcchar] best 2895362 combination zp ZP_BYTE:279 [ mode_mcchar::$29 ]
Attempting to uplift remaining variables inzp ZP_BYTE:285 [ mode_ecmchar::$29 ]
Uplifting [mode_ecmchar] best 2895362 combination zp ZP_BYTE:285 [ mode_ecmchar::$29 ]
Attempting to uplift remaining variables inzp ZP_BYTE:291 [ mode_stdchar::$28 ]
Uplifting [mode_stdchar] best 2895362 combination zp ZP_BYTE:291 [ mode_stdchar::$28 ]
Attempting to uplift remaining variables inzp ZP_BYTE:209 [ keyboard_key_pressed::return#0 ]
Uplifting [keyboard_key_pressed] best 2867759 combination reg byte a [ keyboard_key_pressed::return#0 ]
Attempting to uplift remaining variables inzp ZP_BYTE:5 [ mode_8bppchunkybmm::i#2 mode_8bppchunkybmm::i#1 ]
Uplifting [mode_8bppchunkybmm] best 2866559 combination reg byte x [ mode_8bppchunkybmm::i#2 mode_8bppchunkybmm::i#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:16 [ mode_8bpppixelcell::i#2 mode_8bpppixelcell::i#1 ]
Uplifting [mode_8bpppixelcell] best 2865359 combination reg byte x [ mode_8bpppixelcell::i#2 mode_8bpppixelcell::i#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:31 [ mode_sixsfred::i#2 mode_sixsfred::i#1 ]
Uplifting [mode_sixsfred] best 2864159 combination reg byte x [ mode_sixsfred::i#2 mode_sixsfred::i#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:44 [ mode_twoplanebitmap::i#2 mode_twoplanebitmap::i#1 ]
Uplifting [mode_twoplanebitmap] best 2862959 combination reg byte x [ mode_twoplanebitmap::i#2 mode_twoplanebitmap::i#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:57 [ mode_sixsfred2::i#2 mode_sixsfred2::i#1 ]
Uplifting [mode_sixsfred2] best 2861759 combination reg byte x [ mode_sixsfred2::i#2 mode_sixsfred2::i#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:70 [ mode_hicolmcchar::i#2 mode_hicolmcchar::i#1 ]
Uplifting [mode_hicolmcchar] best 2860559 combination reg byte x [ mode_hicolmcchar::i#2 mode_hicolmcchar::i#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:77 [ mode_hicolecmchar::i#2 mode_hicolecmchar::i#1 ]
Uplifting [mode_hicolecmchar] best 2859359 combination reg byte x [ mode_hicolecmchar::i#2 mode_hicolecmchar::i#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:84 [ mode_hicolstdchar::i#2 mode_hicolstdchar::i#1 ]
Uplifting [mode_hicolstdchar] best 2858159 combination reg byte x [ mode_hicolstdchar::i#2 mode_hicolstdchar::i#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:91 [ mode_stdbitmap::i#2 mode_stdbitmap::i#1 ]
Uplifting [mode_stdbitmap] best 2856959 combination reg byte x [ mode_stdbitmap::i#2 mode_stdbitmap::i#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:132 [ mode_mcchar::i#2 mode_mcchar::i#1 ]
Uplifting [mode_mcchar] best 2855759 combination reg byte x [ mode_mcchar::i#2 mode_mcchar::i#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:139 [ mode_ecmchar::i#2 mode_ecmchar::i#1 ]
Uplifting [mode_ecmchar] best 2854559 combination reg byte x [ mode_ecmchar::i#2 mode_ecmchar::i#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:146 [ mode_stdchar::i#2 mode_stdchar::i#1 ]
Uplifting [mode_stdchar] best 2853359 combination reg byte x [ mode_stdchar::i#2 mode_stdchar::i#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:133 [ mode_mcchar::cy#4 mode_mcchar::cy#1 ]
Uplifting [mode_mcchar] best 2853359 combination zp ZP_BYTE:133 [ mode_mcchar::cy#4 mode_mcchar::cy#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:140 [ mode_ecmchar::cy#4 mode_ecmchar::cy#1 ]
Uplifting [mode_ecmchar] best 2853359 combination zp ZP_BYTE:140 [ mode_ecmchar::cy#4 mode_ecmchar::cy#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:147 [ mode_stdchar::cy#4 mode_stdchar::cy#1 ]
Uplifting [mode_stdchar] best 2853359 combination zp ZP_BYTE:147 [ mode_stdchar::cy#4 mode_stdchar::cy#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:96 [ mode_stdbitmap::l#2 mode_stdbitmap::l#1 ]
Uplifting [mode_stdbitmap] best 2853359 combination zp ZP_BYTE:96 [ mode_stdbitmap::l#2 mode_stdbitmap::l#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:32 [ mode_sixsfred::cy#4 mode_sixsfred::cy#1 ]
Uplifting [mode_sixsfred] best 2853359 combination zp ZP_BYTE:32 [ mode_sixsfred::cy#4 mode_sixsfred::cy#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:36 [ mode_sixsfred::ay#4 mode_sixsfred::ay#1 ]
Uplifting [mode_sixsfred] best 2853359 combination zp ZP_BYTE:36 [ mode_sixsfred::ay#4 mode_sixsfred::ay#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:62 [ mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 ]
Uplifting [mode_sixsfred2] best 2853359 combination zp ZP_BYTE:62 [ mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 ]
Uplifting [mode_8bpppixelcell] best 2853359 combination zp ZP_BYTE:17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:45 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 ]
Uplifting [mode_twoplanebitmap] best 2853359 combination zp ZP_BYTE:45 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:58 [ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 ]
Uplifting [mode_sixsfred2] best 2853359 combination zp ZP_BYTE:58 [ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:49 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 ]
Uplifting [mode_twoplanebitmap] best 2853359 combination zp ZP_BYTE:49 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:92 [ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 ]
Uplifting [mode_stdbitmap] best 2853359 combination zp ZP_BYTE:92 [ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:71 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 ]
Uplifting [mode_hicolmcchar] best 2853359 combination zp ZP_BYTE:71 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:78 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 ]
Uplifting [mode_hicolecmchar] best 2853359 combination zp ZP_BYTE:78 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:85 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 ]
Uplifting [mode_hicolstdchar] best 2853359 combination zp ZP_BYTE:85 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ]
Uplifting [mode_8bppchunkybmm] best 2853359 combination zp ZP_BYTE:6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:129 [ bitmap_init::y#2 bitmap_init::y#1 ]
Uplifting [bitmap_init] best 2851559 combination reg byte x [ bitmap_init::y#2 bitmap_init::y#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:161 [ keyboard_key_pressed::return#2 ]
Uplifting [keyboard_key_pressed] best 2850959 combination reg byte a [ keyboard_key_pressed::return#2 ]
Attempting to uplift remaining variables inzp ZP_BYTE:163 [ keyboard_key_pressed::return#24 ]
Uplifting [keyboard_key_pressed] best 2850359 combination reg byte a [ keyboard_key_pressed::return#24 ]
Attempting to uplift remaining variables inzp ZP_BYTE:164 [ menu::$33 ]
Uplifting [menu] best 2849759 combination reg byte a [ menu::$33 ]
Attempting to uplift remaining variables inzp ZP_BYTE:165 [ keyboard_key_pressed::return#25 ]
Uplifting [keyboard_key_pressed] best 2849159 combination reg byte a [ keyboard_key_pressed::return#25 ]
Attempting to uplift remaining variables inzp ZP_BYTE:166 [ menu::$37 ]
Uplifting [menu] best 2848559 combination reg byte a [ menu::$37 ]
Attempting to uplift remaining variables inzp ZP_BYTE:167 [ keyboard_key_pressed::return#26 ]
Uplifting [keyboard_key_pressed] best 2847959 combination reg byte a [ keyboard_key_pressed::return#26 ]
Attempting to uplift remaining variables inzp ZP_BYTE:168 [ menu::$41 ]
Uplifting [menu] best 2847359 combination reg byte a [ menu::$41 ]
Attempting to uplift remaining variables inzp ZP_BYTE:169 [ keyboard_key_pressed::return#27 ]
Uplifting [keyboard_key_pressed] best 2846759 combination reg byte a [ keyboard_key_pressed::return#27 ]
Attempting to uplift remaining variables inzp ZP_BYTE:170 [ menu::$45 ]
Uplifting [menu] best 2846159 combination reg byte a [ menu::$45 ]
Attempting to uplift remaining variables inzp ZP_BYTE:171 [ keyboard_key_pressed::return#28 ]
Uplifting [keyboard_key_pressed] best 2845559 combination reg byte a [ keyboard_key_pressed::return#28 ]
Attempting to uplift remaining variables inzp ZP_BYTE:172 [ menu::$49 ]
Uplifting [menu] best 2844959 combination reg byte a [ menu::$49 ]
Attempting to uplift remaining variables inzp ZP_BYTE:173 [ keyboard_key_pressed::return#29 ]
Uplifting [keyboard_key_pressed] best 2844359 combination reg byte a [ keyboard_key_pressed::return#29 ]
Attempting to uplift remaining variables inzp ZP_BYTE:174 [ menu::$53 ]
Uplifting [menu] best 2843759 combination reg byte a [ menu::$53 ]
Attempting to uplift remaining variables inzp ZP_BYTE:175 [ keyboard_key_pressed::return#30 ]
Uplifting [keyboard_key_pressed] best 2843159 combination reg byte a [ keyboard_key_pressed::return#30 ]
Attempting to uplift remaining variables inzp ZP_BYTE:176 [ menu::$57 ]
Uplifting [menu] best 2842559 combination reg byte a [ menu::$57 ]
Attempting to uplift remaining variables inzp ZP_BYTE:177 [ keyboard_key_pressed::return#10 ]
Uplifting [keyboard_key_pressed] best 2841959 combination reg byte a [ keyboard_key_pressed::return#10 ]
Attempting to uplift remaining variables inzp ZP_BYTE:178 [ menu::$61 ]
Uplifting [menu] best 2841359 combination reg byte a [ menu::$61 ]
Attempting to uplift remaining variables inzp ZP_BYTE:179 [ keyboard_key_pressed::return#11 ]
Uplifting [keyboard_key_pressed] best 2840759 combination reg byte a [ keyboard_key_pressed::return#11 ]
Attempting to uplift remaining variables inzp ZP_BYTE:180 [ menu::$65 ]
Uplifting [menu] best 2840159 combination reg byte a [ menu::$65 ]
Attempting to uplift remaining variables inzp ZP_BYTE:181 [ keyboard_key_pressed::return#12 ]
Uplifting [keyboard_key_pressed] best 2839559 combination reg byte a [ keyboard_key_pressed::return#12 ]
Attempting to uplift remaining variables inzp ZP_BYTE:182 [ menu::$69 ]
Uplifting [menu] best 2838959 combination reg byte a [ menu::$69 ]
Attempting to uplift remaining variables inzp ZP_BYTE:183 [ keyboard_key_pressed::return#13 ]
Uplifting [keyboard_key_pressed] best 2838359 combination reg byte a [ keyboard_key_pressed::return#13 ]
Attempting to uplift remaining variables inzp ZP_BYTE:184 [ menu::$73 ]
Uplifting [menu] best 2837759 combination reg byte a [ menu::$73 ]
Attempting to uplift remaining variables inzp ZP_BYTE:271 [ bitmap_init::$0 ]
Uplifting [bitmap_init] best 2837359 combination reg byte a [ bitmap_init::$0 ]
Attempting to uplift remaining variables inzp ZP_BYTE:273 [ bitmap_init::$7 ]
Uplifting [bitmap_init] best 2836759 combination reg byte a [ bitmap_init::$7 ]
Attempting to uplift remaining variables inzp ZP_BYTE:274 [ bitmap_init::$8 ]
Uplifting [bitmap_init] best 2836159 combination reg byte a [ bitmap_init::$8 ]
Attempting to uplift remaining variables inzp ZP_BYTE:275 [ bitmap_init::$9 ]
Uplifting [bitmap_init] best 2835559 combination reg byte a [ bitmap_init::$9 ]
Attempting to uplift remaining variables inzp ZP_BYTE:40 [ mode_sixsfred::by#4 mode_sixsfred::by#1 ]
Uplifting [mode_sixsfred] best 2835559 combination zp ZP_BYTE:40 [ mode_sixsfred::by#4 mode_sixsfred::by#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:53 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 ]
Uplifting [mode_twoplanebitmap] best 2835559 combination zp ZP_BYTE:53 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:66 [ mode_sixsfred2::by#4 mode_sixsfred2::by#1 ]
Uplifting [mode_sixsfred2] best 2835559 combination zp ZP_BYTE:66 [ mode_sixsfred2::by#4 mode_sixsfred2::by#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:123 [ bitmap_clear::y#4 bitmap_clear::y#1 ]
Uplifting [bitmap_clear] best 2835559 combination zp ZP_BYTE:123 [ bitmap_clear::y#4 bitmap_clear::y#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:21 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ]
Uplifting [mode_8bpppixelcell] best 2835559 combination zp ZP_BYTE:21 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:12 [ dtv_control#114 dtv_control#144 dtv_control#17 ]
Uplifting [] best 2835559 combination zp ZP_BYTE:12 [ dtv_control#114 dtv_control#144 dtv_control#17 ]
Attempting to uplift remaining variables inzp ZP_BYTE:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 ]
Uplifting [bitmap_line_xdyi] best 2835559 combination zp ZP_BYTE:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:106 [ bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 ]
Uplifting [bitmap_line_ydxi] best 2835559 combination zp ZP_BYTE:106 [ bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 ]
Attempting to uplift remaining variables inzp ZP_BYTE:112 [ bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::xd#1 ]
Uplifting [bitmap_line_xdyd] best 2835559 combination zp ZP_BYTE:112 [ bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::xd#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:118 [ bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 ]
Uplifting [bitmap_line_ydxd] best 2835559 combination zp ZP_BYTE:118 [ bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:97 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 ]
Uplifting [bitmap_line_xdyi] best 2835559 combination zp ZP_BYTE:97 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:105 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 ]
Uplifting [bitmap_line_ydxi] best 2835559 combination zp ZP_BYTE:105 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 ]
Attempting to uplift remaining variables inzp ZP_BYTE:111 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#0 bitmap_line_xdyd::yd#1 ]
Uplifting [bitmap_line_xdyd] best 2835559 combination zp ZP_BYTE:111 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#0 bitmap_line_xdyd::yd#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:117 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ]
Uplifting [bitmap_line_ydxd] best 2835559 combination zp ZP_BYTE:117 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:99 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::x1#1 ]
Uplifting [bitmap_line_xdyi] best 2835559 combination zp ZP_BYTE:99 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::x1#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:107 [ bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 ]
Uplifting [bitmap_line_ydxi] best 2835559 combination zp ZP_BYTE:107 [ bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 ]
Attempting to uplift remaining variables inzp ZP_BYTE:113 [ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::x1#1 ]
Uplifting [bitmap_line_xdyd] best 2835559 combination zp ZP_BYTE:113 [ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::x1#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:119 [ bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 ]
Uplifting [bitmap_line_ydxd] best 2835559 combination zp ZP_BYTE:119 [ bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:272 [ bitmap_init::$10 ]
Uplifting [bitmap_init] best 2835559 combination zp ZP_BYTE:272 [ bitmap_init::$10 ]
Attempting to uplift remaining variables inzp ZP_BYTE:251 [ bitmap_line::y1#0 ]
Uplifting [bitmap_line] best 2835559 combination zp ZP_BYTE:251 [ bitmap_line::y1#0 ]
Attempting to uplift remaining variables inzp ZP_BYTE:250 [ bitmap_line::y0#0 ]
Uplifting [bitmap_line] best 2835559 combination zp ZP_BYTE:250 [ bitmap_line::y0#0 ]
Attempting to uplift remaining variables inzp ZP_BYTE:248 [ bitmap_line::x0#0 ]
Uplifting [bitmap_line] best 2835559 combination zp ZP_BYTE:248 [ bitmap_line::x0#0 ]
Attempting to uplift remaining variables inzp ZP_BYTE:205 [ keyboard_key_pressed::rowidx#0 ]
Uplifting [keyboard_key_pressed] best 2835555 combination reg byte a [ keyboard_key_pressed::rowidx#0 ]
Attempting to uplift remaining variables inzp ZP_BYTE:208 [ keyboard_key_pressed::$2 ]
Uplifting [keyboard_key_pressed] best 2835549 combination reg byte a [ keyboard_key_pressed::$2 ]
Attempting to uplift remaining variables inzp ZP_BYTE:265 [ bitmap_plot::$1 ]
Uplifting [bitmap_plot] best 2835543 combination reg byte a [ bitmap_plot::$1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:14 [ keyboard_key_pressed::key#20 ]
Uplifting [keyboard_key_pressed] best 2835481 combination reg byte y [ keyboard_key_pressed::key#20 ]
Attempting to uplift remaining variables inzp ZP_BYTE:210 [ keyboard_matrix_read::return#0 ]
Uplifting [keyboard_matrix_read] best 2835475 combination reg byte a [ keyboard_matrix_read::return#0 ]
Attempting to uplift remaining variables inzp ZP_BYTE:253 [ bitmap_line::yd#2 ]
Uplifting [bitmap_line] best 2835465 combination reg byte y [ bitmap_line::yd#2 ]
Attempting to uplift remaining variables inzp ZP_BYTE:254 [ bitmap_line::yd#1 ]
Uplifting [bitmap_line] best 2835455 combination reg byte y [ bitmap_line::yd#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:256 [ bitmap_line::yd#10 ]
Uplifting [bitmap_line] best 2835445 combination reg byte y [ bitmap_line::yd#10 ]
Attempting to uplift remaining variables inzp ZP_BYTE:257 [ bitmap_line::yd#11 ]
Uplifting [bitmap_line] best 2835435 combination reg byte y [ bitmap_line::yd#11 ]
Attempting to uplift remaining variables inzp ZP_BYTE:252 [ bitmap_line::xd#2 ]
Uplifting [bitmap_line] best 2835435 combination zp ZP_BYTE:252 [ bitmap_line::xd#2 ]
Attempting to uplift remaining variables inzp ZP_BYTE:255 [ bitmap_line::xd#1 ]
Uplifting [bitmap_line] best 2835435 combination zp ZP_BYTE:255 [ bitmap_line::xd#1 ]
Attempting to uplift remaining variables inzp ZP_BYTE:204 [ keyboard_key_pressed::colidx#0 ]
Uplifting [keyboard_key_pressed] best 2835435 combination zp ZP_BYTE:204 [ keyboard_key_pressed::colidx#0 ]
Coalescing zero page register [ zp ZP_BYTE:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 ] ] with [ zp ZP_BYTE:252 [ bitmap_line::xd#2 ] ] - score: 1
Coalescing zero page register [ zp ZP_BYTE:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 bitmap_line::xd#2 ] ] with [ zp ZP_BYTE:255 [ bitmap_line::xd#1 ] ] - score: 1
Coalescing zero page register [ zp ZP_BYTE:99 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::x1#1 ] ] with [ zp ZP_BYTE:248 [ bitmap_line::x0#0 ] ] - score: 1
Coalescing zero page register [ zp ZP_BYTE:101 [ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 ] ] with [ zp ZP_BYTE:250 [ bitmap_line::y0#0 ] ] - score: 1
Coalescing zero page register [ zp ZP_BYTE:107 [ bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 ] ] with [ zp ZP_BYTE:251 [ bitmap_line::y1#0 ] ] - score: 1
Coalescing zero page register [ zp ZP_WORD:124 [ bitmap_clear::bitmap#2 bitmap_clear::bitmap#3 bitmap_clear::bitmap#5 bitmap_clear::bitmap#1 ] ] with [ zp ZP_WORD:269 [ bitmap_clear::bitmap#0 ] ] - score: 1
Coalescing zero page register [ zp ZP_WORD:259 [ bitmap_plot::plotter_x#0 ] ] with [ zp ZP_WORD:263 [ bitmap_plot::plotter#0 ] ] - score: 1
Coalescing zero page register [ zp ZP_BYTE:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 bitmap_line::xd#2 bitmap_line::xd#1 ] ] with [ zp ZP_BYTE:105 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 ] ] - score: 2
Coalescing zero page register [ zp ZP_BYTE:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 bitmap_line::xd#2 bitmap_line::xd#1 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 ] ] with [ zp ZP_BYTE:112 [ bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::xd#1 ] ] - score: 2
Coalescing zero page register [ zp ZP_BYTE:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 bitmap_line::xd#2 bitmap_line::xd#1 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::xd#1 ] ] with [ zp ZP_BYTE:117 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ] ] - score: 2
Coalescing zero page register [ zp ZP_BYTE:99 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::x1#1 bitmap_line::x0#0 ] ] with [ zp ZP_BYTE:113 [ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::x1#1 ] ] - score: 1
Coalescing zero page register [ zp ZP_BYTE:101 [ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 bitmap_line::y0#0 ] ] with [ zp ZP_BYTE:115 [ bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 ] ] - score: 1
Coalescing zero page register [ zp ZP_BYTE:101 [ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 bitmap_line::y0#0 bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 ] ] with [ zp ZP_BYTE:119 [ bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 ] ] - score: 1
Coalescing zero page register [ zp ZP_WORD:7 [ mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::x#1 ] ] with [ zp ZP_WORD:3 [ menu::c#2 menu::c#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:12 [ dtv_control#114 dtv_control#144 dtv_control#17 ] ] with [ zp ZP_BYTE:6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ] ]
Coalescing zero page register [ zp ZP_WORD:19 [ mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::gfxa#1 ] ] with [ zp ZP_WORD:10 [ mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::gfxb#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:32 [ mode_sixsfred::cy#4 mode_sixsfred::cy#1 ] ] with [ zp ZP_BYTE:17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 ] ]
Coalescing zero page register [ zp ZP_WORD:34 [ mode_sixsfred::col#2 mode_sixsfred::col#3 mode_sixsfred::col#1 ] ] with [ zp ZP_WORD:22 [ mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::chargen#4 mode_8bpppixelcell::chargen#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:36 [ mode_sixsfred::ay#4 mode_sixsfred::ay#1 ] ] with [ zp ZP_BYTE:21 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ] ]
Coalescing zero page register [ zp ZP_WORD:37 [ mode_sixsfred::gfxa#2 mode_sixsfred::gfxa#3 mode_sixsfred::gfxa#1 ] ] with [ zp ZP_WORD:26 [ mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::gfxb#7 mode_8bpppixelcell::gfxb#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:40 [ mode_sixsfred::by#4 mode_sixsfred::by#1 ] ] with [ zp ZP_BYTE:24 [ mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:45 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 ] ] with [ zp ZP_BYTE:25 [ mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ] ]
Coalescing zero page register [ zp ZP_WORD:47 [ mode_twoplanebitmap::col#2 mode_twoplanebitmap::col#3 mode_twoplanebitmap::col#1 ] ] with [ zp ZP_WORD:41 [ mode_sixsfred::gfxb#2 mode_sixsfred::gfxb#3 mode_sixsfred::gfxb#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:49 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 ] ] with [ zp ZP_BYTE:28 [ mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:58 [ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 ] ] with [ zp ZP_BYTE:53 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 ] ]
Coalescing zero page register [ zp ZP_WORD:60 [ mode_sixsfred2::col#2 mode_sixsfred2::col#3 mode_sixsfred2::col#1 ] ] with [ zp ZP_WORD:50 [ mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::gfxa#7 mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::gfxa#1 ] ]
Coalescing zero page register [ zp ZP_WORD:63 [ mode_sixsfred2::gfxa#2 mode_sixsfred2::gfxa#3 mode_sixsfred2::gfxa#1 ] ] with [ zp ZP_WORD:54 [ mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::gfxb#3 mode_twoplanebitmap::gfxb#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:71 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 ] ] with [ zp ZP_BYTE:62 [ mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 ] ]
Coalescing zero page register [ zp ZP_WORD:73 [ mode_hicolmcchar::col#2 mode_hicolmcchar::col#3 mode_hicolmcchar::col#1 ] ] with [ zp ZP_WORD:67 [ mode_sixsfred2::gfxb#2 mode_sixsfred2::gfxb#3 mode_sixsfred2::gfxb#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:78 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 ] ] with [ zp ZP_BYTE:66 [ mode_sixsfred2::by#4 mode_sixsfred2::by#1 ] ]
Coalescing zero page register [ zp ZP_WORD:80 [ mode_hicolecmchar::col#2 mode_hicolecmchar::col#3 mode_hicolecmchar::col#1 ] ] with [ zp ZP_WORD:75 [ mode_hicolmcchar::ch#2 mode_hicolmcchar::ch#3 mode_hicolmcchar::ch#1 ] ]
Coalescing zero page register [ zp ZP_WORD:87 [ mode_hicolstdchar::col#2 mode_hicolstdchar::col#3 mode_hicolstdchar::col#1 ] ] with [ zp ZP_WORD:82 [ mode_hicolecmchar::ch#2 mode_hicolecmchar::ch#3 mode_hicolecmchar::ch#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:92 [ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 ] ] with [ zp ZP_BYTE:85 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 ] ]
Coalescing zero page register [ zp ZP_WORD:94 [ mode_stdbitmap::ch#2 mode_stdbitmap::ch#3 mode_stdbitmap::ch#1 ] ] with [ zp ZP_WORD:89 [ mode_hicolstdchar::ch#2 mode_hicolstdchar::ch#3 mode_hicolstdchar::ch#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:106 [ bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 ] ] with [ zp ZP_BYTE:97 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:107 [ bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 bitmap_line::y1#0 ] ] with [ zp ZP_BYTE:102 [ bitmap_line_xdyi::e#3 bitmap_line_xdyi::e#0 bitmap_line_xdyi::e#6 bitmap_line_xdyi::e#2 bitmap_line_xdyi::e#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:109 [ bitmap_line_ydxi::y#3 bitmap_line_ydxi::y#6 bitmap_line_ydxi::y#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::y#2 ] ] with [ zp ZP_BYTE:100 [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#2 ] ]
Coalescing zero page register [ zp ZP_BYTE:110 [ bitmap_line_ydxi::e#3 bitmap_line_ydxi::e#0 bitmap_line_ydxi::e#6 bitmap_line_ydxi::e#2 bitmap_line_ydxi::e#1 ] ] with [ zp ZP_BYTE:99 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::x1#1 bitmap_line::x0#0 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::x1#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:118 [ bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 ] ] with [ zp ZP_BYTE:111 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#0 bitmap_line_xdyd::yd#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:121 [ bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#3 ] ] with [ zp ZP_BYTE:114 [ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#2 ] ]
Coalescing zero page register [ zp ZP_BYTE:122 [ bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 ] ] with [ zp ZP_BYTE:116 [ bitmap_line_xdyd::e#3 bitmap_line_xdyd::e#0 bitmap_line_xdyd::e#6 bitmap_line_xdyd::e#2 bitmap_line_xdyd::e#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:123 [ bitmap_clear::y#4 bitmap_clear::y#1 ] ] with [ zp ZP_BYTE:96 [ mode_stdbitmap::l#2 mode_stdbitmap::l#1 ] ]
Coalescing zero page register [ zp ZP_WORD:130 [ bitmap_init::yoffs#2 bitmap_init::yoffs#4 bitmap_init::yoffs#1 ] ] with [ zp ZP_WORD:124 [ bitmap_clear::bitmap#2 bitmap_clear::bitmap#3 bitmap_clear::bitmap#5 bitmap_clear::bitmap#1 bitmap_clear::bitmap#0 ] ]
Coalescing zero page register [ zp ZP_BYTE:133 [ mode_mcchar::cy#4 mode_mcchar::cy#1 ] ] with [ zp ZP_BYTE:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 bitmap_line::xd#2 bitmap_line::xd#1 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::xd#1 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:140 [ mode_ecmchar::cy#4 mode_ecmchar::cy#1 ] ] with [ zp ZP_BYTE:101 [ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 bitmap_line::y0#0 bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 ] ]
Coalescing zero page register [ zp ZP_WORD:142 [ mode_ecmchar::col#2 mode_ecmchar::col#3 mode_ecmchar::col#1 ] ] with [ zp ZP_WORD:135 [ mode_mcchar::col#2 mode_mcchar::col#3 mode_mcchar::col#1 ] ]
Coalescing zero page register [ zp ZP_WORD:144 [ mode_ecmchar::ch#2 mode_ecmchar::ch#3 mode_ecmchar::ch#1 ] ] with [ zp ZP_WORD:137 [ mode_mcchar::ch#2 mode_mcchar::ch#3 mode_mcchar::ch#1 ] ]
Coalescing zero page register [ zp ZP_WORD:153 [ print_str_lines::str#3 print_str_lines::str#2 print_str_lines::str#0 ] ] with [ zp ZP_WORD:149 [ mode_stdchar::col#2 mode_stdchar::col#3 mode_stdchar::col#1 ] ]
Coalescing zero page register [ zp ZP_WORD:155 [ print_char_cursor#17 print_char_cursor#19 print_char_cursor#100 print_char_cursor#32 print_char_cursor#1 ] ] with [ zp ZP_WORD:151 [ mode_stdchar::ch#2 mode_stdchar::ch#3 mode_stdchar::ch#1 ] ]
Coalescing zero page register [ zp ZP_WORD:159 [ memset::dst#2 memset::dst#1 ] ] with [ zp ZP_WORD:157 [ print_line_cursor#18 print_line_cursor#17 print_line_cursor#19 ] ]
Coalescing zero page register [ zp ZP_BYTE:204 [ keyboard_key_pressed::colidx#0 ] ] with [ zp ZP_BYTE:147 [ mode_stdchar::cy#4 mode_stdchar::cy#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:221 [ mode_twoplanebitmap::$17 ] ] with [ zp ZP_BYTE:212 [ mode_8bpppixelcell::$15 ] ]
Coalescing zero page register [ zp ZP_BYTE:232 [ mode_hicolmcchar::$27 ] ] with [ zp ZP_BYTE:226 [ mode_sixsfred2::$16 ] ]
Coalescing zero page register [ zp ZP_BYTE:240 [ mode_hicolstdchar::$26 ] ] with [ zp ZP_BYTE:236 [ mode_hicolecmchar::$27 ] ]
Coalescing zero page register [ zp ZP_WORD:259 [ bitmap_plot::plotter_x#0 bitmap_plot::plotter#0 ] ] with [ zp ZP_WORD:185 [ mode_8bppchunkybmm::$26 ] ]
Coalescing zero page register [ zp ZP_BYTE:272 [ bitmap_init::$10 ] ] with [ zp ZP_BYTE:245 [ mode_stdbitmap::col2#0 ] ]
Coalescing zero page register [ zp ZP_BYTE:285 [ mode_ecmchar::$29 ] ] with [ zp ZP_BYTE:279 [ mode_mcchar::$29 ] ]
Coalescing zero page register [ zp ZP_BYTE:32 [ mode_sixsfred::cy#4 mode_sixsfred::cy#1 mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 ] ] with [ zp ZP_BYTE:12 [ dtv_control#114 dtv_control#144 dtv_control#17 mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ] ]
Coalescing zero page register [ zp ZP_WORD:34 [ mode_sixsfred::col#2 mode_sixsfred::col#3 mode_sixsfred::col#1 mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::chargen#4 mode_8bpppixelcell::chargen#1 ] ] with [ zp ZP_WORD:7 [ mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::x#1 menu::c#2 menu::c#1 ] ]
Coalescing zero page register [ zp ZP_WORD:47 [ mode_twoplanebitmap::col#2 mode_twoplanebitmap::col#3 mode_twoplanebitmap::col#1 mode_sixsfred::gfxb#2 mode_sixsfred::gfxb#3 mode_sixsfred::gfxb#1 ] ] with [ zp ZP_WORD:19 [ mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::gfxa#1 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::gfxb#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:58 [ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 ] ] with [ zp ZP_BYTE:36 [ mode_sixsfred::ay#4 mode_sixsfred::ay#1 mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ] ]
Coalescing zero page register [ zp ZP_WORD:60 [ mode_sixsfred2::col#2 mode_sixsfred2::col#3 mode_sixsfred2::col#1 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::gfxa#7 mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::gfxa#1 ] ] with [ zp ZP_WORD:37 [ mode_sixsfred::gfxa#2 mode_sixsfred::gfxa#3 mode_sixsfred::gfxa#1 mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::gfxb#7 mode_8bpppixelcell::gfxb#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:71 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 ] ] with [ zp ZP_BYTE:40 [ mode_sixsfred::by#4 mode_sixsfred::by#1 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:78 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 mode_sixsfred2::by#4 mode_sixsfred2::by#1 ] ] with [ zp ZP_BYTE:45 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ] ]
Coalescing zero page register [ zp ZP_WORD:80 [ mode_hicolecmchar::col#2 mode_hicolecmchar::col#3 mode_hicolecmchar::col#1 mode_hicolmcchar::ch#2 mode_hicolmcchar::ch#3 mode_hicolmcchar::ch#1 ] ] with [ zp ZP_WORD:63 [ mode_sixsfred2::gfxa#2 mode_sixsfred2::gfxa#3 mode_sixsfred2::gfxa#1 mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::gfxb#3 mode_twoplanebitmap::gfxb#1 ] ]
Coalescing zero page register [ zp ZP_WORD:87 [ mode_hicolstdchar::col#2 mode_hicolstdchar::col#3 mode_hicolstdchar::col#1 mode_hicolecmchar::ch#2 mode_hicolecmchar::ch#3 mode_hicolecmchar::ch#1 ] ] with [ zp ZP_WORD:73 [ mode_hicolmcchar::col#2 mode_hicolmcchar::col#3 mode_hicolmcchar::col#1 mode_sixsfred2::gfxb#2 mode_sixsfred2::gfxb#3 mode_sixsfred2::gfxb#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:92 [ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 ] ] with [ zp ZP_BYTE:49 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:118 [ bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#0 bitmap_line_xdyd::yd#1 ] ] with [ zp ZP_BYTE:106 [ bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:121 [ bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#3 bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#2 ] ] with [ zp ZP_BYTE:109 [ bitmap_line_ydxi::y#3 bitmap_line_ydxi::y#6 bitmap_line_ydxi::y#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::y#2 bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#2 ] ]
Coalescing zero page register [ zp ZP_BYTE:122 [ bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 bitmap_line_xdyd::e#3 bitmap_line_xdyd::e#0 bitmap_line_xdyd::e#6 bitmap_line_xdyd::e#2 bitmap_line_xdyd::e#1 ] ] with [ zp ZP_BYTE:107 [ bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 bitmap_line::y1#0 bitmap_line_xdyi::e#3 bitmap_line_xdyi::e#0 bitmap_line_xdyi::e#6 bitmap_line_xdyi::e#2 bitmap_line_xdyi::e#1 ] ]
Coalescing zero page register [ zp ZP_WORD:130 [ bitmap_init::yoffs#2 bitmap_init::yoffs#4 bitmap_init::yoffs#1 bitmap_clear::bitmap#2 bitmap_clear::bitmap#3 bitmap_clear::bitmap#5 bitmap_clear::bitmap#1 bitmap_clear::bitmap#0 ] ] with [ zp ZP_WORD:94 [ mode_stdbitmap::ch#2 mode_stdbitmap::ch#3 mode_stdbitmap::ch#1 mode_hicolstdchar::ch#2 mode_hicolstdchar::ch#3 mode_hicolstdchar::ch#1 ] ]
Coalescing zero page register [ zp ZP_WORD:153 [ print_str_lines::str#3 print_str_lines::str#2 print_str_lines::str#0 mode_stdchar::col#2 mode_stdchar::col#3 mode_stdchar::col#1 ] ] with [ zp ZP_WORD:142 [ mode_ecmchar::col#2 mode_ecmchar::col#3 mode_ecmchar::col#1 mode_mcchar::col#2 mode_mcchar::col#3 mode_mcchar::col#1 ] ]
Coalescing zero page register [ zp ZP_WORD:155 [ print_char_cursor#17 print_char_cursor#19 print_char_cursor#100 print_char_cursor#32 print_char_cursor#1 mode_stdchar::ch#2 mode_stdchar::ch#3 mode_stdchar::ch#1 ] ] with [ zp ZP_WORD:144 [ mode_ecmchar::ch#2 mode_ecmchar::ch#3 mode_ecmchar::ch#1 mode_mcchar::ch#2 mode_mcchar::ch#3 mode_mcchar::ch#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:204 [ keyboard_key_pressed::colidx#0 mode_stdchar::cy#4 mode_stdchar::cy#1 ] ] with [ zp ZP_BYTE:110 [ bitmap_line_ydxi::e#3 bitmap_line_ydxi::e#0 bitmap_line_ydxi::e#6 bitmap_line_ydxi::e#2 bitmap_line_ydxi::e#1 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::x1#1 bitmap_line::x0#0 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::x1#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:221 [ mode_twoplanebitmap::$17 mode_8bpppixelcell::$15 ] ] with [ zp ZP_BYTE:123 [ bitmap_clear::y#4 bitmap_clear::y#1 mode_stdbitmap::l#2 mode_stdbitmap::l#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:232 [ mode_hicolmcchar::$27 mode_sixsfred2::$16 ] ] with [ zp ZP_BYTE:133 [ mode_mcchar::cy#4 mode_mcchar::cy#1 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 bitmap_line::xd#2 bitmap_line::xd#1 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::xd#1 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:240 [ mode_hicolstdchar::$26 mode_hicolecmchar::$27 ] ] with [ zp ZP_BYTE:140 [ mode_ecmchar::cy#4 mode_ecmchar::cy#1 bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 bitmap_line::y0#0 bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 ] ]
Coalescing zero page register [ zp ZP_WORD:259 [ bitmap_plot::plotter_x#0 bitmap_plot::plotter#0 mode_8bppchunkybmm::$26 ] ] with [ zp ZP_WORD:159 [ memset::dst#2 memset::dst#1 print_line_cursor#18 print_line_cursor#17 print_line_cursor#19 ] ]
Coalescing zero page register [ zp ZP_BYTE:285 [ mode_ecmchar::$29 mode_mcchar::$29 ] ] with [ zp ZP_BYTE:272 [ bitmap_init::$10 mode_stdbitmap::col2#0 ] ]
Coalescing zero page register [ zp ZP_WORD:80 [ mode_hicolecmchar::col#2 mode_hicolecmchar::col#3 mode_hicolecmchar::col#1 mode_hicolmcchar::ch#2 mode_hicolmcchar::ch#3 mode_hicolmcchar::ch#1 mode_sixsfred2::gfxa#2 mode_sixsfred2::gfxa#3 mode_sixsfred2::gfxa#1 mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::gfxb#3 mode_twoplanebitmap::gfxb#1 ] ] with [ zp ZP_WORD:34 [ mode_sixsfred::col#2 mode_sixsfred::col#3 mode_sixsfred::col#1 mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::chargen#4 mode_8bpppixelcell::chargen#1 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::x#1 menu::c#2 menu::c#1 ] ]
Coalescing zero page register [ zp ZP_WORD:87 [ mode_hicolstdchar::col#2 mode_hicolstdchar::col#3 mode_hicolstdchar::col#1 mode_hicolecmchar::ch#2 mode_hicolecmchar::ch#3 mode_hicolecmchar::ch#1 mode_hicolmcchar::col#2 mode_hicolmcchar::col#3 mode_hicolmcchar::col#1 mode_sixsfred2::gfxb#2 mode_sixsfred2::gfxb#3 mode_sixsfred2::gfxb#1 ] ] with [ zp ZP_WORD:47 [ mode_twoplanebitmap::col#2 mode_twoplanebitmap::col#3 mode_twoplanebitmap::col#1 mode_sixsfred::gfxb#2 mode_sixsfred::gfxb#3 mode_sixsfred::gfxb#1 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::gfxa#1 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::gfxb#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:118 [ bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#0 bitmap_line_xdyd::yd#1 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 ] ] with [ zp ZP_BYTE:32 [ mode_sixsfred::cy#4 mode_sixsfred::cy#1 mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 dtv_control#114 dtv_control#144 dtv_control#17 mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:121 [ bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#3 bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#2 bitmap_line_ydxi::y#3 bitmap_line_ydxi::y#6 bitmap_line_ydxi::y#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::y#2 bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#2 ] ] with [ zp ZP_BYTE:58 [ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 mode_sixsfred::ay#4 mode_sixsfred::ay#1 mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:122 [ bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 bitmap_line_xdyd::e#3 bitmap_line_xdyd::e#0 bitmap_line_xdyd::e#6 bitmap_line_xdyd::e#2 bitmap_line_xdyd::e#1 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 bitmap_line::y1#0 bitmap_line_xdyi::e#3 bitmap_line_xdyi::e#0 bitmap_line_xdyi::e#6 bitmap_line_xdyi::e#2 bitmap_line_xdyi::e#1 ] ] with [ zp ZP_BYTE:71 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 mode_sixsfred::by#4 mode_sixsfred::by#1 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ] ]
Coalescing zero page register [ zp ZP_WORD:130 [ bitmap_init::yoffs#2 bitmap_init::yoffs#4 bitmap_init::yoffs#1 bitmap_clear::bitmap#2 bitmap_clear::bitmap#3 bitmap_clear::bitmap#5 bitmap_clear::bitmap#1 bitmap_clear::bitmap#0 mode_stdbitmap::ch#2 mode_stdbitmap::ch#3 mode_stdbitmap::ch#1 mode_hicolstdchar::ch#2 mode_hicolstdchar::ch#3 mode_hicolstdchar::ch#1 ] ] with [ zp ZP_WORD:60 [ mode_sixsfred2::col#2 mode_sixsfred2::col#3 mode_sixsfred2::col#1 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::gfxa#7 mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::gfxa#1 mode_sixsfred::gfxa#2 mode_sixsfred::gfxa#3 mode_sixsfred::gfxa#1 mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::gfxb#7 mode_8bpppixelcell::gfxb#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:204 [ keyboard_key_pressed::colidx#0 mode_stdchar::cy#4 mode_stdchar::cy#1 bitmap_line_ydxi::e#3 bitmap_line_ydxi::e#0 bitmap_line_ydxi::e#6 bitmap_line_ydxi::e#2 bitmap_line_ydxi::e#1 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::x1#1 bitmap_line::x0#0 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::x1#1 ] ] with [ zp ZP_BYTE:78 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 mode_sixsfred2::by#4 mode_sixsfred2::by#1 mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ] ]
Coalescing zero page register [ zp ZP_BYTE:232 [ mode_hicolmcchar::$27 mode_sixsfred2::$16 mode_mcchar::cy#4 mode_mcchar::cy#1 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 bitmap_line::xd#2 bitmap_line::xd#1 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::xd#1 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ] ] with [ zp ZP_BYTE:92 [ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ] ]
Coalescing zero page register [ zp ZP_WORD:261 [ bitmap_plot::plotter_y#0 ] ] with [ zp ZP_WORD:153 [ print_str_lines::str#3 print_str_lines::str#2 print_str_lines::str#0 mode_stdchar::col#2 mode_stdchar::col#3 mode_stdchar::col#1 mode_ecmchar::col#2 mode_ecmchar::col#3 mode_ecmchar::col#1 mode_mcchar::col#2 mode_mcchar::col#3 mode_mcchar::col#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:291 [ mode_stdchar::$28 ] ] with [ zp ZP_BYTE:221 [ mode_twoplanebitmap::$17 mode_8bpppixelcell::$15 bitmap_clear::y#4 bitmap_clear::y#1 mode_stdbitmap::l#2 mode_stdbitmap::l#1 ] ]
Coalescing zero page register [ zp ZP_WORD:155 [ print_char_cursor#17 print_char_cursor#19 print_char_cursor#100 print_char_cursor#32 print_char_cursor#1 mode_stdchar::ch#2 mode_stdchar::ch#3 mode_stdchar::ch#1 mode_ecmchar::ch#2 mode_ecmchar::ch#3 mode_ecmchar::ch#1 mode_mcchar::ch#2 mode_mcchar::ch#3 mode_mcchar::ch#1 ] ] with [ zp ZP_WORD:80 [ mode_hicolecmchar::col#2 mode_hicolecmchar::col#3 mode_hicolecmchar::col#1 mode_hicolmcchar::ch#2 mode_hicolmcchar::ch#3 mode_hicolmcchar::ch#1 mode_sixsfred2::gfxa#2 mode_sixsfred2::gfxa#3 mode_sixsfred2::gfxa#1 mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::gfxb#3 mode_twoplanebitmap::gfxb#1 mode_sixsfred::col#2 mode_sixsfred::col#3 mode_sixsfred::col#1 mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::chargen#4 mode_8bpppixelcell::chargen#1 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::x#1 menu::c#2 menu::c#1 ] ]
Coalescing zero page register [ zp ZP_WORD:259 [ bitmap_plot::plotter_x#0 bitmap_plot::plotter#0 mode_8bppchunkybmm::$26 memset::dst#2 memset::dst#1 print_line_cursor#18 print_line_cursor#17 print_line_cursor#19 ] ] with [ zp ZP_WORD:130 [ bitmap_init::yoffs#2 bitmap_init::yoffs#4 bitmap_init::yoffs#1 bitmap_clear::bitmap#2 bitmap_clear::bitmap#3 bitmap_clear::bitmap#5 bitmap_clear::bitmap#1 bitmap_clear::bitmap#0 mode_stdbitmap::ch#2 mode_stdbitmap::ch#3 mode_stdbitmap::ch#1 mode_hicolstdchar::ch#2 mode_hicolstdchar::ch#3 mode_hicolstdchar::ch#1 mode_sixsfred2::col#2 mode_sixsfred2::col#3 mode_sixsfred2::col#1 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::gfxa#7 mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::gfxa#1 mode_sixsfred::gfxa#2 mode_sixsfred::gfxa#3 mode_sixsfred::gfxa#1 mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::gfxb#7 mode_8bpppixelcell::gfxb#1 ] ]
Coalescing zero page register [ zp ZP_WORD:261 [ bitmap_plot::plotter_y#0 print_str_lines::str#3 print_str_lines::str#2 print_str_lines::str#0 mode_stdchar::col#2 mode_stdchar::col#3 mode_stdchar::col#1 mode_ecmchar::col#2 mode_ecmchar::col#3 mode_ecmchar::col#1 mode_mcchar::col#2 mode_mcchar::col#3 mode_mcchar::col#1 ] ] with [ zp ZP_WORD:87 [ mode_hicolstdchar::col#2 mode_hicolstdchar::col#3 mode_hicolstdchar::col#1 mode_hicolecmchar::ch#2 mode_hicolecmchar::ch#3 mode_hicolecmchar::ch#1 mode_hicolmcchar::col#2 mode_hicolmcchar::col#3 mode_hicolmcchar::col#1 mode_sixsfred2::gfxb#2 mode_sixsfred2::gfxb#3 mode_sixsfred2::gfxb#1 mode_twoplanebitmap::col#2 mode_twoplanebitmap::col#3 mode_twoplanebitmap::col#1 mode_sixsfred::gfxb#2 mode_sixsfred::gfxb#3 mode_sixsfred::gfxb#1 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::gfxa#1 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::gfxb#1 ] ]
Coalescing zero page register [ zp ZP_BYTE:285 [ mode_ecmchar::$29 mode_mcchar::$29 bitmap_init::$10 mode_stdbitmap::col2#0 ] ] with [ zp ZP_BYTE:118 [ bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#0 bitmap_line_xdyd::yd#1 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 mode_sixsfred::cy#4 mode_sixsfred::cy#1 mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 dtv_control#114 dtv_control#144 dtv_control#17 mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ] ]
Allocated (was zp ZP_BYTE:121) zp ZP_BYTE:2 [ bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#3 bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#2 bitmap_line_ydxi::y#3 bitmap_line_ydxi::y#6 bitmap_line_ydxi::y#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::y#2 bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#2 mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 mode_sixsfred::ay#4 mode_sixsfred::ay#1 mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ]
Allocated (was zp ZP_BYTE:122) zp ZP_BYTE:3 [ bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 bitmap_line_xdyd::e#3 bitmap_line_xdyd::e#0 bitmap_line_xdyd::e#6 bitmap_line_xdyd::e#2 bitmap_line_xdyd::e#1 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 bitmap_line::y1#0 bitmap_line_xdyi::e#3 bitmap_line_xdyi::e#0 bitmap_line_xdyi::e#6 bitmap_line_xdyi::e#2 bitmap_line_xdyi::e#1 mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 mode_sixsfred::by#4 mode_sixsfred::by#1 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ]
Allocated (was zp ZP_WORD:155) zp ZP_WORD:4 [ print_char_cursor#17 print_char_cursor#19 print_char_cursor#100 print_char_cursor#32 print_char_cursor#1 mode_stdchar::ch#2 mode_stdchar::ch#3 mode_stdchar::ch#1 mode_ecmchar::ch#2 mode_ecmchar::ch#3 mode_ecmchar::ch#1 mode_mcchar::ch#2 mode_mcchar::ch#3 mode_mcchar::ch#1 mode_hicolecmchar::col#2 mode_hicolecmchar::col#3 mode_hicolecmchar::col#1 mode_hicolmcchar::ch#2 mode_hicolmcchar::ch#3 mode_hicolmcchar::ch#1 mode_sixsfred2::gfxa#2 mode_sixsfred2::gfxa#3 mode_sixsfred2::gfxa#1 mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::gfxb#3 mode_twoplanebitmap::gfxb#1 mode_sixsfred::col#2 mode_sixsfred::col#3 mode_sixsfred::col#1 mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::chargen#4 mode_8bpppixelcell::chargen#1 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::x#1 menu::c#2 menu::c#1 ]
Allocated (was zp ZP_BYTE:204) zp ZP_BYTE:6 [ keyboard_key_pressed::colidx#0 mode_stdchar::cy#4 mode_stdchar::cy#1 bitmap_line_ydxi::e#3 bitmap_line_ydxi::e#0 bitmap_line_ydxi::e#6 bitmap_line_ydxi::e#2 bitmap_line_ydxi::e#1 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::x1#1 bitmap_line::x0#0 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::x1#1 mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 mode_sixsfred2::by#4 mode_sixsfred2::by#1 mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ]
Allocated (was zp ZP_BYTE:232) zp ZP_BYTE:7 [ mode_hicolmcchar::$27 mode_sixsfred2::$16 mode_mcchar::cy#4 mode_mcchar::cy#1 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 bitmap_line::xd#2 bitmap_line::xd#1 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::xd#1 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ]
Allocated (was zp ZP_BYTE:240) zp ZP_BYTE:8 [ mode_hicolstdchar::$26 mode_hicolecmchar::$27 mode_ecmchar::cy#4 mode_ecmchar::cy#1 bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 bitmap_line::y0#0 bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 ]
Allocated (was zp ZP_WORD:259) zp ZP_WORD:9 [ bitmap_plot::plotter_x#0 bitmap_plot::plotter#0 mode_8bppchunkybmm::$26 memset::dst#2 memset::dst#1 print_line_cursor#18 print_line_cursor#17 print_line_cursor#19 bitmap_init::yoffs#2 bitmap_init::yoffs#4 bitmap_init::yoffs#1 bitmap_clear::bitmap#2 bitmap_clear::bitmap#3 bitmap_clear::bitmap#5 bitmap_clear::bitmap#1 bitmap_clear::bitmap#0 mode_stdbitmap::ch#2 mode_stdbitmap::ch#3 mode_stdbitmap::ch#1 mode_hicolstdchar::ch#2 mode_hicolstdchar::ch#3 mode_hicolstdchar::ch#1 mode_sixsfred2::col#2 mode_sixsfred2::col#3 mode_sixsfred2::col#1 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::gfxa#7 mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::gfxa#1 mode_sixsfred::gfxa#2 mode_sixsfred::gfxa#3 mode_sixsfred::gfxa#1 mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::gfxb#7 mode_8bpppixelcell::gfxb#1 ]
Allocated (was zp ZP_WORD:261) zp ZP_WORD:11 [ bitmap_plot::plotter_y#0 print_str_lines::str#3 print_str_lines::str#2 print_str_lines::str#0 mode_stdchar::col#2 mode_stdchar::col#3 mode_stdchar::col#1 mode_ecmchar::col#2 mode_ecmchar::col#3 mode_ecmchar::col#1 mode_mcchar::col#2 mode_mcchar::col#3 mode_mcchar::col#1 mode_hicolstdchar::col#2 mode_hicolstdchar::col#3 mode_hicolstdchar::col#1 mode_hicolecmchar::ch#2 mode_hicolecmchar::ch#3 mode_hicolecmchar::ch#1 mode_hicolmcchar::col#2 mode_hicolmcchar::col#3 mode_hicolmcchar::col#1 mode_sixsfred2::gfxb#2 mode_sixsfred2::gfxb#3 mode_sixsfred2::gfxb#1 mode_twoplanebitmap::col#2 mode_twoplanebitmap::col#3 mode_twoplanebitmap::col#1 mode_sixsfred::gfxb#2 mode_sixsfred::gfxb#3 mode_sixsfred::gfxb#1 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::gfxa#1 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::gfxb#1 ]
Allocated (was zp ZP_BYTE:285) zp ZP_BYTE:13 [ mode_ecmchar::$29 mode_mcchar::$29 bitmap_init::$10 mode_stdbitmap::col2#0 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#0 bitmap_line_xdyd::yd#1 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 mode_sixsfred::cy#4 mode_sixsfred::cy#1 mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 dtv_control#114 dtv_control#144 dtv_control#17 mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ]
Allocated (was zp ZP_BYTE:291) zp ZP_BYTE:14 [ mode_stdchar::$28 mode_twoplanebitmap::$17 mode_8bpppixelcell::$15 bitmap_clear::y#4 bitmap_clear::y#1 mode_stdbitmap::l#2 mode_stdbitmap::l#1 ]
ASSEMBLER BEFORE OPTIMIZATION
// File Comments
// Exploring C64DTV Screen Modes
// Upstart
.pc = $801 "Basic"
:BasicUpstart(bbegin)
.pc = $80d "Program"
// Global Constants & labels
// Processor port data direction register
.label PROCPORT_DDR = 0
// Mask for PROCESSOR_PORT_DDR which allows only memory configuration to be written
.const PROCPORT_DDR_MEMORY_MASK = 7
// Processor Port Register controlling RAM/ROM configuration and the datasette
.label PROCPORT = 1
// RAM in $A000, $E000 I/O in $D000
.const PROCPORT_RAM_IO = 5
// RAM in $A000, $E000 CHAR ROM in $D000
.const PROCPORT_RAM_CHARROM = 1
.label RASTER = $d012
.label BORDERCOL = $d020
.label BGCOL = $d021
.label BGCOL1 = $d021
.label BGCOL2 = $d022
.label BGCOL3 = $d023
.label BGCOL4 = $d024
.label VIC_CONTROL = $d011
.const VIC_ECM = $40
.const VIC_BMM = $20
.const VIC_DEN = $10
.const VIC_RSEL = 8
.label VIC_CONTROL2 = $d016
.const VIC_MCM = $10
.const VIC_CSEL = 8
.label VIC_MEMORY = $d018
// Color Ram
.label COLS = $d800
// CIA#1 Port A: keyboard matrix columns and joystick #2
.label CIA1_PORT_A = $dc00
// CIA#1 Port B: keyboard matrix rows and joystick #1.
.label CIA1_PORT_B = $dc01
// CIA#2 Port A: Serial bus, RS-232, VIC memory bank
.label CIA2_PORT_A = $dd00
// CIA #2 Port A data direction register.
.label CIA2_PORT_A_DDR = $dd02
// The colors of the C64
.const BLACK = 0
.const GREEN = 5
.const BLUE = 6
.const LIGHT_GREEN = $d
// Feature enables or disables the extra C64 DTV features
.label DTV_FEATURE = $d03f
.const DTV_FEATURE_ENABLE = 1
// Controls the graphics modes of the C64 DTV
.label DTV_CONTROL = $d03c
.const DTV_LINEAR = 1
.const DTV_BORDER_OFF = 2
.const DTV_HIGHCOLOR = 4
.const DTV_OVERSCAN = 8
.const DTV_COLORRAM_OFF = $10
.const DTV_CHUNKY = $40
// Defines colors for the 16 first colors ($00-$0f)
.label DTV_PALETTE = $d200
// Linear Graphics Plane A Counter Control
.label DTV_PLANEA_START_LO = $d03a
.label DTV_PLANEA_START_MI = $d03b
.label DTV_PLANEA_START_HI = $d045
.label DTV_PLANEA_STEP = $d046
.label DTV_PLANEA_MODULO_LO = $d038
.label DTV_PLANEA_MODULO_HI = $d039
// Linear Graphics Plane B Counter Control
.label DTV_PLANEB_START_LO = $d049
.label DTV_PLANEB_START_MI = $d04a
.label DTV_PLANEB_START_HI = $d04b
.label DTV_PLANEB_STEP = $d04c
.label DTV_PLANEB_MODULO_LO = $d047
.label DTV_PLANEB_MODULO_HI = $d048
// Select memory bank where color data is fetched from (bits 11:0)
// Memory address of Color RAM is ColorBank*$400
.label DTV_COLOR_BANK_LO = $d036
.label DTV_COLOR_BANK_HI = $d037
.const DTV_COLOR_BANK_DEFAULT = $1d800
// Selects memory bank for normal VIC color mode and lower data for high color modes. (bits 5:0)
// Memory address of VIC Graphics is GraphicsBank*$10000
.label DTV_GRAPHICS_VIC_BANK = $d03d
.const KEY_3 = 8
.const KEY_A = $a
.const KEY_4 = $b
.const KEY_E = $e
.const KEY_D = $12
.const KEY_6 = $13
.const KEY_C = $14
.const KEY_7 = $18
.const KEY_8 = $1b
.const KEY_B = $1c
.const KEY_H = $1d
.const KEY_U = $1e
.const KEY_0 = $23
.const KEY_O = $26
.const KEY_L = $2a
.const KEY_1 = $38
.const KEY_2 = $3b
.const KEY_SPACE = $3c
.label print_char_cursor = 4
.label dtv_control = $d
.label print_line_cursor = 9
// @begin
bbegin:
// [1] phi from @begin to @1 [phi:@begin->@1]
b1_from_bbegin:
jmp b1
// @1
b1:
// [2] call main
jsr main
// [3] phi from @1 to @end [phi:@1->@end]
bend_from_b1:
jmp bend
// @end
bend:
// main
main: {
// asm { sei }
sei
// [5] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2
// Disable normal interrupt (prevent keyboard reading glitches and allows to hide basic/kernal)
// Disable kernal & basic
lda #PROCPORT_DDR_MEMORY_MASK
sta PROCPORT_DDR
// [6] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2
lda #PROCPORT_RAM_IO
sta PROCPORT
// [7] *((const byte*) DTV_FEATURE#0) ← (const byte) DTV_FEATURE_ENABLE#0 -- _deref_pbuc1=vbuc2
// Enable DTV extended modes
lda #DTV_FEATURE_ENABLE
sta DTV_FEATURE
// [8] phi from main main::@1 to main::@1 [phi:main/main::@1->main::@1]
b1_from_main:
b1_from_b1:
jmp b1
// main::@1
b1:
// [9] call menu
jsr menu
jmp b1_from_b1
}
// menu
menu: {
.label SCREEN = $8000
.label CHARSET = $9800
.label c = 4
// [10] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Charset ROM
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [11] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<DTV_COLOR_BANK_DEFAULT/$400
sta DTV_COLOR_BANK_LO
// [12] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [13] *((const byte*) DTV_CONTROL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Mode
lda #0
sta DTV_CONTROL
// [14] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2_PORT_A_DDR
// [15] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) menu::CHARSET#0/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2_PORT_A
// [16] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [17] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [18] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) menu::CHARSET#0&(word) $3fff/(word) $400 -- _deref_pbuc1=vbuc2
// VIC Memory Pointers
lda #(CHARSET&$3fff)/$400
sta VIC_MEMORY
// [19] phi from menu to menu::@1 [phi:menu->menu::@1]
b1_from_menu:
// [19] phi (byte) menu::i#2 = (byte) 0 [phi:menu->menu::@1#0] -- vbuxx=vbuc1
ldx #0
jmp b1
// DTV Palette - default
// [19] phi from menu::@1 to menu::@1 [phi:menu::@1->menu::@1]
b1_from_b1:
// [19] phi (byte) menu::i#2 = (byte) menu::i#1 [phi:menu::@1->menu::@1#0] -- register_copy
jmp b1
// menu::@1
b1:
// [20] *((const byte*) DTV_PALETTE#0 + (byte) menu::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) menu::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx
lda DTV_PALETTE_DEFAULT,x
sta DTV_PALETTE,x
// [21] (byte) menu::i#1 ← ++ (byte) menu::i#2 -- vbuxx=_inc_vbuxx
inx
// [22] if((byte) menu::i#1!=(byte) $10) goto menu::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1_from_b1
// [23] phi from menu::@1 to menu::@2 [phi:menu::@1->menu::@2]
b2_from_b1:
// [23] phi (byte*) menu::c#2 = (const byte*) COLS#0 [phi:menu::@1->menu::@2#0] -- pbuz1=pbuc1
lda #<COLS
sta.z c
lda #>COLS
sta.z c+1
jmp b2
// Char Colors
// menu::@2
b2:
// [24] if((byte*) menu::c#2!=(const byte*) COLS#0+(word) $3e8) goto menu::@3 -- pbuz1_neq_pbuc1_then_la1
lda.z c+1
cmp #>COLS+$3e8
bne b3
lda.z c
cmp #<COLS+$3e8
bne b3
jmp b4
// menu::@4
b4:
// [25] *((const byte*) BGCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BGCOL
// [26] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta BORDERCOL
// [27] call print_set_screen
// [893] phi from menu::@4 to print_set_screen [phi:menu::@4->print_set_screen]
print_set_screen_from_b4:
jsr print_set_screen
// [28] phi from menu::@4 to menu::@29 [phi:menu::@4->menu::@29]
b29_from_b4:
jmp b29
// menu::@29
b29:
// [29] call print_cls
// [884] phi from menu::@29 to print_cls [phi:menu::@29->print_cls]
print_cls_from_b29:
jsr print_cls
// [30] phi from menu::@29 to menu::@30 [phi:menu::@29->menu::@30]
b30_from_b29:
jmp b30
// menu::@30
b30:
// [31] call print_str_lines
// [864] phi from menu::@30 to print_str_lines [phi:menu::@30->print_str_lines]
print_str_lines_from_b30:
jsr print_str_lines
// [32] phi from menu::@30 menu::@42 to menu::@5 [phi:menu::@30/menu::@42->menu::@5]
b5_from_b30:
b5_from_b42:
jmp b5
// menu::@5
b5:
// [33] call keyboard_key_pressed
// [211] phi from menu::@5 to keyboard_key_pressed [phi:menu::@5->keyboard_key_pressed]
keyboard_key_pressed_from_b5:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_1#0 [phi:menu::@5->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_1
jsr keyboard_key_pressed
// [34] (byte) keyboard_key_pressed::return#2 ← (byte) keyboard_key_pressed::return#0
jmp b31
// menu::@31
b31:
// [35] (byte~) menu::$29 ← (byte) keyboard_key_pressed::return#2
// [36] if((byte~) menu::$29==(byte) 0) goto menu::@6 -- vbuaa_eq_0_then_la1
cmp #0
beq b6_from_b31
// [37] phi from menu::@31 to menu::@17 [phi:menu::@31->menu::@17]
b17_from_b31:
jmp b17
// menu::@17
b17:
// [38] call mode_stdchar
jsr mode_stdchar
jmp breturn
// menu::@return
breturn:
// [39] return
rts
// [40] phi from menu::@31 to menu::@6 [phi:menu::@31->menu::@6]
b6_from_b31:
jmp b6
// menu::@6
b6:
// [41] call keyboard_key_pressed
// [211] phi from menu::@6 to keyboard_key_pressed [phi:menu::@6->keyboard_key_pressed]
keyboard_key_pressed_from_b6:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_2#0 [phi:menu::@6->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_2
jsr keyboard_key_pressed
// [42] (byte) keyboard_key_pressed::return#24 ← (byte) keyboard_key_pressed::return#0
jmp b32
// menu::@32
b32:
// [43] (byte~) menu::$33 ← (byte) keyboard_key_pressed::return#24
// [44] if((byte~) menu::$33==(byte) 0) goto menu::@7 -- vbuaa_eq_0_then_la1
cmp #0
beq b7_from_b32
// [45] phi from menu::@32 to menu::@18 [phi:menu::@32->menu::@18]
b18_from_b32:
jmp b18
// menu::@18
b18:
// [46] call mode_ecmchar
jsr mode_ecmchar
jmp breturn
// [47] phi from menu::@32 to menu::@7 [phi:menu::@32->menu::@7]
b7_from_b32:
jmp b7
// menu::@7
b7:
// [48] call keyboard_key_pressed
// [211] phi from menu::@7 to keyboard_key_pressed [phi:menu::@7->keyboard_key_pressed]
keyboard_key_pressed_from_b7:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_3#0 [phi:menu::@7->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_3
jsr keyboard_key_pressed
// [49] (byte) keyboard_key_pressed::return#25 ← (byte) keyboard_key_pressed::return#0
jmp b33
// menu::@33
b33:
// [50] (byte~) menu::$37 ← (byte) keyboard_key_pressed::return#25
// [51] if((byte~) menu::$37==(byte) 0) goto menu::@8 -- vbuaa_eq_0_then_la1
cmp #0
beq b8_from_b33
// [52] phi from menu::@33 to menu::@19 [phi:menu::@33->menu::@19]
b19_from_b33:
jmp b19
// menu::@19
b19:
// [53] call mode_mcchar
jsr mode_mcchar
jmp breturn
// [54] phi from menu::@33 to menu::@8 [phi:menu::@33->menu::@8]
b8_from_b33:
jmp b8
// menu::@8
b8:
// [55] call keyboard_key_pressed
// [211] phi from menu::@8 to keyboard_key_pressed [phi:menu::@8->keyboard_key_pressed]
keyboard_key_pressed_from_b8:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_4#0 [phi:menu::@8->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_4
jsr keyboard_key_pressed
// [56] (byte) keyboard_key_pressed::return#26 ← (byte) keyboard_key_pressed::return#0
jmp b34
// menu::@34
b34:
// [57] (byte~) menu::$41 ← (byte) keyboard_key_pressed::return#26
// [58] if((byte~) menu::$41==(byte) 0) goto menu::@9 -- vbuaa_eq_0_then_la1
cmp #0
beq b9_from_b34
// [59] phi from menu::@34 to menu::@20 [phi:menu::@34->menu::@20]
b20_from_b34:
jmp b20
// menu::@20
b20:
// [60] call mode_stdbitmap
jsr mode_stdbitmap
jmp breturn
// [61] phi from menu::@34 to menu::@9 [phi:menu::@34->menu::@9]
b9_from_b34:
jmp b9
// menu::@9
b9:
// [62] call keyboard_key_pressed
// [211] phi from menu::@9 to keyboard_key_pressed [phi:menu::@9->keyboard_key_pressed]
keyboard_key_pressed_from_b9:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_6#0 [phi:menu::@9->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_6
jsr keyboard_key_pressed
// [63] (byte) keyboard_key_pressed::return#27 ← (byte) keyboard_key_pressed::return#0
jmp b35
// menu::@35
b35:
// [64] (byte~) menu::$45 ← (byte) keyboard_key_pressed::return#27
// [65] if((byte~) menu::$45==(byte) 0) goto menu::@10 -- vbuaa_eq_0_then_la1
cmp #0
beq b10_from_b35
// [66] phi from menu::@35 to menu::@21 [phi:menu::@35->menu::@21]
b21_from_b35:
jmp b21
// menu::@21
b21:
// [67] call mode_hicolstdchar
jsr mode_hicolstdchar
jmp breturn
// [68] phi from menu::@35 to menu::@10 [phi:menu::@35->menu::@10]
b10_from_b35:
jmp b10
// menu::@10
b10:
// [69] call keyboard_key_pressed
// [211] phi from menu::@10 to keyboard_key_pressed [phi:menu::@10->keyboard_key_pressed]
keyboard_key_pressed_from_b10:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_7#0 [phi:menu::@10->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_7
jsr keyboard_key_pressed
// [70] (byte) keyboard_key_pressed::return#28 ← (byte) keyboard_key_pressed::return#0
jmp b36
// menu::@36
b36:
// [71] (byte~) menu::$49 ← (byte) keyboard_key_pressed::return#28
// [72] if((byte~) menu::$49==(byte) 0) goto menu::@11 -- vbuaa_eq_0_then_la1
cmp #0
beq b11_from_b36
// [73] phi from menu::@36 to menu::@22 [phi:menu::@36->menu::@22]
b22_from_b36:
jmp b22
// menu::@22
b22:
// [74] call mode_hicolecmchar
jsr mode_hicolecmchar
jmp breturn
// [75] phi from menu::@36 to menu::@11 [phi:menu::@36->menu::@11]
b11_from_b36:
jmp b11
// menu::@11
b11:
// [76] call keyboard_key_pressed
// [211] phi from menu::@11 to keyboard_key_pressed [phi:menu::@11->keyboard_key_pressed]
keyboard_key_pressed_from_b11:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_8#0 [phi:menu::@11->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_8
jsr keyboard_key_pressed
// [77] (byte) keyboard_key_pressed::return#29 ← (byte) keyboard_key_pressed::return#0
jmp b37
// menu::@37
b37:
// [78] (byte~) menu::$53 ← (byte) keyboard_key_pressed::return#29
// [79] if((byte~) menu::$53==(byte) 0) goto menu::@12 -- vbuaa_eq_0_then_la1
cmp #0
beq b12_from_b37
// [80] phi from menu::@37 to menu::@23 [phi:menu::@37->menu::@23]
b23_from_b37:
jmp b23
// menu::@23
b23:
// [81] call mode_hicolmcchar
jsr mode_hicolmcchar
jmp breturn
// [82] phi from menu::@37 to menu::@12 [phi:menu::@37->menu::@12]
b12_from_b37:
jmp b12
// menu::@12
b12:
// [83] call keyboard_key_pressed
// [211] phi from menu::@12 to keyboard_key_pressed [phi:menu::@12->keyboard_key_pressed]
keyboard_key_pressed_from_b12:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_A#0 [phi:menu::@12->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_A
jsr keyboard_key_pressed
// [84] (byte) keyboard_key_pressed::return#30 ← (byte) keyboard_key_pressed::return#0
jmp b38
// menu::@38
b38:
// [85] (byte~) menu::$57 ← (byte) keyboard_key_pressed::return#30
// [86] if((byte~) menu::$57==(byte) 0) goto menu::@13 -- vbuaa_eq_0_then_la1
cmp #0
beq b13_from_b38
// [87] phi from menu::@38 to menu::@24 [phi:menu::@38->menu::@24]
b24_from_b38:
jmp b24
// menu::@24
b24:
// [88] call mode_sixsfred2
jsr mode_sixsfred2
jmp breturn
// [89] phi from menu::@38 to menu::@13 [phi:menu::@38->menu::@13]
b13_from_b38:
jmp b13
// menu::@13
b13:
// [90] call keyboard_key_pressed
// [211] phi from menu::@13 to keyboard_key_pressed [phi:menu::@13->keyboard_key_pressed]
keyboard_key_pressed_from_b13:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_B#0 [phi:menu::@13->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_B
jsr keyboard_key_pressed
// [91] (byte) keyboard_key_pressed::return#10 ← (byte) keyboard_key_pressed::return#0
jmp b39
// menu::@39
b39:
// [92] (byte~) menu::$61 ← (byte) keyboard_key_pressed::return#10
// [93] if((byte~) menu::$61==(byte) 0) goto menu::@14 -- vbuaa_eq_0_then_la1
cmp #0
beq b14_from_b39
// [94] phi from menu::@39 to menu::@25 [phi:menu::@39->menu::@25]
b25_from_b39:
jmp b25
// menu::@25
b25:
// [95] call mode_twoplanebitmap
jsr mode_twoplanebitmap
jmp breturn
// [96] phi from menu::@39 to menu::@14 [phi:menu::@39->menu::@14]
b14_from_b39:
jmp b14
// menu::@14
b14:
// [97] call keyboard_key_pressed
// [211] phi from menu::@14 to keyboard_key_pressed [phi:menu::@14->keyboard_key_pressed]
keyboard_key_pressed_from_b14:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_C#0 [phi:menu::@14->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_C
jsr keyboard_key_pressed
// [98] (byte) keyboard_key_pressed::return#11 ← (byte) keyboard_key_pressed::return#0
jmp b40
// menu::@40
b40:
// [99] (byte~) menu::$65 ← (byte) keyboard_key_pressed::return#11
// [100] if((byte~) menu::$65==(byte) 0) goto menu::@15 -- vbuaa_eq_0_then_la1
cmp #0
beq b15_from_b40
// [101] phi from menu::@40 to menu::@26 [phi:menu::@40->menu::@26]
b26_from_b40:
jmp b26
// menu::@26
b26:
// [102] call mode_sixsfred
jsr mode_sixsfred
jmp breturn
// [103] phi from menu::@40 to menu::@15 [phi:menu::@40->menu::@15]
b15_from_b40:
jmp b15
// menu::@15
b15:
// [104] call keyboard_key_pressed
// [211] phi from menu::@15 to keyboard_key_pressed [phi:menu::@15->keyboard_key_pressed]
keyboard_key_pressed_from_b15:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_D#0 [phi:menu::@15->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_D
jsr keyboard_key_pressed
// [105] (byte) keyboard_key_pressed::return#12 ← (byte) keyboard_key_pressed::return#0
jmp b41
// menu::@41
b41:
// [106] (byte~) menu::$69 ← (byte) keyboard_key_pressed::return#12
// [107] if((byte~) menu::$69==(byte) 0) goto menu::@16 -- vbuaa_eq_0_then_la1
cmp #0
beq b16_from_b41
// [108] phi from menu::@41 to menu::@27 [phi:menu::@41->menu::@27]
b27_from_b41:
jmp b27
// menu::@27
b27:
// [109] call mode_8bpppixelcell
jsr mode_8bpppixelcell
jmp breturn
// [110] phi from menu::@41 to menu::@16 [phi:menu::@41->menu::@16]
b16_from_b41:
jmp b16
// menu::@16
b16:
// [111] call keyboard_key_pressed
// [211] phi from menu::@16 to keyboard_key_pressed [phi:menu::@16->keyboard_key_pressed]
keyboard_key_pressed_from_b16:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_E#0 [phi:menu::@16->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_E
jsr keyboard_key_pressed
// [112] (byte) keyboard_key_pressed::return#13 ← (byte) keyboard_key_pressed::return#0
jmp b42
// menu::@42
b42:
// [113] (byte~) menu::$73 ← (byte) keyboard_key_pressed::return#13
// [114] if((byte~) menu::$73==(byte) 0) goto menu::@5 -- vbuaa_eq_0_then_la1
cmp #0
beq b5_from_b42
// [115] phi from menu::@42 to menu::@28 [phi:menu::@42->menu::@28]
b28_from_b42:
jmp b28
// menu::@28
b28:
// [116] call mode_8bppchunkybmm
jsr mode_8bppchunkybmm
jmp breturn
// menu::@3
b3:
// [117] *((byte*) menu::c#2) ← (const byte) LIGHT_GREEN#0 -- _deref_pbuz1=vbuc1
lda #LIGHT_GREEN
ldy #0
sta (c),y
// [118] (byte*) menu::c#1 ← ++ (byte*) menu::c#2 -- pbuz1=_inc_pbuz1
inc.z c
bne !+
inc.z c+1
!:
// [23] phi from menu::@3 to menu::@2 [phi:menu::@3->menu::@2]
b2_from_b3:
// [23] phi (byte*) menu::c#2 = (byte*) menu::c#1 [phi:menu::@3->menu::@2#0] -- register_copy
jmp b2
}
// mode_8bppchunkybmm
//Chunky 8bpp Bitmap Mode (BMM = 0, ECM/MCM/HICOL/LINEAR/CHUNK/COLDIS = 1)
// Resolution: 320x200
// Linear Adressing
// CharData/PlaneB Pixel Shifter (8):
// - 8bpp color PlaneB[7:0]
// To set up a linear video frame buffer the step size must be set to 8.
mode_8bppchunkybmm: {
// 8BPP Chunky Bitmap (contains 8bpp pixels)
.const PLANEB = $20000
.label _26 = 9
.label gfxb = $b
.label x = 4
.label y = $d
// [119] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0 -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY|DTV_COLORRAM_OFF
sta DTV_CONTROL
// [120] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Mode
lda #VIC_ECM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [121] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_MCM|VIC_CSEL
sta VIC_CONTROL2
// [122] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
lda #0
sta DTV_PLANEB_START_LO
// [123] *((const byte*) DTV_PLANEB_START_MI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_MI
// [124] *((const byte*) DTV_PLANEB_START_HI#0) ← <>(const dword) mode_8bppchunkybmm::PLANEB#0 -- _deref_pbuc1=vbuc2
lda #<PLANEB>>$10
sta DTV_PLANEB_START_HI
// [125] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 8 -- _deref_pbuc1=vbuc2
lda #8
sta DTV_PLANEB_STEP
// [126] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// [127] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_HI
// [128] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Border color
lda #0
sta BORDERCOL
// [129] phi from mode_8bppchunkybmm to mode_8bppchunkybmm::@1 [phi:mode_8bppchunkybmm->mode_8bppchunkybmm::@1]
b1_from_mode_8bppchunkybmm:
// [129] phi (byte) mode_8bppchunkybmm::i#2 = (byte) 0 [phi:mode_8bppchunkybmm->mode_8bppchunkybmm::@1#0] -- vbuxx=vbuc1
ldx #0
jmp b1
// DTV Palette - Grey Tones
// [129] phi from mode_8bppchunkybmm::@1 to mode_8bppchunkybmm::@1 [phi:mode_8bppchunkybmm::@1->mode_8bppchunkybmm::@1]
b1_from_b1:
// [129] phi (byte) mode_8bppchunkybmm::i#2 = (byte) mode_8bppchunkybmm::i#1 [phi:mode_8bppchunkybmm::@1->mode_8bppchunkybmm::@1#0] -- register_copy
jmp b1
// mode_8bppchunkybmm::@1
b1:
// [130] *((const byte*) DTV_PALETTE#0 + (byte) mode_8bppchunkybmm::i#2) ← (byte) mode_8bppchunkybmm::i#2 -- pbuc1_derefidx_vbuxx=vbuxx
txa
sta DTV_PALETTE,x
// [131] (byte) mode_8bppchunkybmm::i#1 ← ++ (byte) mode_8bppchunkybmm::i#2 -- vbuxx=_inc_vbuxx
inx
// [132] if((byte) mode_8bppchunkybmm::i#1!=(byte) $10) goto mode_8bppchunkybmm::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1_from_b1
// [133] phi from mode_8bppchunkybmm::@1 to mode_8bppchunkybmm::@2 [phi:mode_8bppchunkybmm::@1->mode_8bppchunkybmm::@2]
b2_from_b1:
jmp b2
// mode_8bppchunkybmm::@2
b2:
// [134] call dtvSetCpuBankSegment1
// [223] phi from mode_8bppchunkybmm::@2 to dtvSetCpuBankSegment1 [phi:mode_8bppchunkybmm::@2->dtvSetCpuBankSegment1]
dtvSetCpuBankSegment1_from_b2:
// [223] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = (byte)(const dword) mode_8bppchunkybmm::PLANEB#0/(word) $4000 [phi:mode_8bppchunkybmm::@2->dtvSetCpuBankSegment1#0] -- vbuaa=vbuc1
lda #PLANEB/$4000
jsr dtvSetCpuBankSegment1
// [135] phi from mode_8bppchunkybmm::@2 to mode_8bppchunkybmm::@3 [phi:mode_8bppchunkybmm::@2->mode_8bppchunkybmm::@3]
b3_from_b2:
// [135] phi (byte) mode_8bppchunkybmm::gfxbCpuBank#7 = ++(byte)(const dword) mode_8bppchunkybmm::PLANEB#0/(word) $4000 [phi:mode_8bppchunkybmm::@2->mode_8bppchunkybmm::@3#0] -- vbuxx=vbuc1
ldx #PLANEB/$4000+1
// [135] phi (byte) mode_8bppchunkybmm::y#6 = (byte) 0 [phi:mode_8bppchunkybmm::@2->mode_8bppchunkybmm::@3#1] -- vbuz1=vbuc1
lda #0
sta.z y
// [135] phi (byte*) mode_8bppchunkybmm::gfxb#5 = (byte*) 16384 [phi:mode_8bppchunkybmm::@2->mode_8bppchunkybmm::@3#2] -- pbuz1=pbuc1
lda #<$4000
sta.z gfxb
lda #>$4000
sta.z gfxb+1
jmp b3
// [135] phi from mode_8bppchunkybmm::@7 to mode_8bppchunkybmm::@3 [phi:mode_8bppchunkybmm::@7->mode_8bppchunkybmm::@3]
b3_from_b7:
// [135] phi (byte) mode_8bppchunkybmm::gfxbCpuBank#7 = (byte) mode_8bppchunkybmm::gfxbCpuBank#8 [phi:mode_8bppchunkybmm::@7->mode_8bppchunkybmm::@3#0] -- register_copy
// [135] phi (byte) mode_8bppchunkybmm::y#6 = (byte) mode_8bppchunkybmm::y#1 [phi:mode_8bppchunkybmm::@7->mode_8bppchunkybmm::@3#1] -- register_copy
// [135] phi (byte*) mode_8bppchunkybmm::gfxb#5 = (byte*) mode_8bppchunkybmm::gfxb#1 [phi:mode_8bppchunkybmm::@7->mode_8bppchunkybmm::@3#2] -- register_copy
jmp b3
// mode_8bppchunkybmm::@3
b3:
// [136] phi from mode_8bppchunkybmm::@3 to mode_8bppchunkybmm::@4 [phi:mode_8bppchunkybmm::@3->mode_8bppchunkybmm::@4]
b4_from_b3:
// [136] phi (byte) mode_8bppchunkybmm::gfxbCpuBank#4 = (byte) mode_8bppchunkybmm::gfxbCpuBank#7 [phi:mode_8bppchunkybmm::@3->mode_8bppchunkybmm::@4#0] -- register_copy
// [136] phi (word) mode_8bppchunkybmm::x#2 = (word) 0 [phi:mode_8bppchunkybmm::@3->mode_8bppchunkybmm::@4#1] -- vwuz1=vwuc1
lda #<0
sta.z x
lda #>0
sta.z x+1
// [136] phi (byte*) mode_8bppchunkybmm::gfxb#3 = (byte*) mode_8bppchunkybmm::gfxb#5 [phi:mode_8bppchunkybmm::@3->mode_8bppchunkybmm::@4#2] -- register_copy
jmp b4
// [136] phi from mode_8bppchunkybmm::@5 to mode_8bppchunkybmm::@4 [phi:mode_8bppchunkybmm::@5->mode_8bppchunkybmm::@4]
b4_from_b5:
// [136] phi (byte) mode_8bppchunkybmm::gfxbCpuBank#4 = (byte) mode_8bppchunkybmm::gfxbCpuBank#8 [phi:mode_8bppchunkybmm::@5->mode_8bppchunkybmm::@4#0] -- register_copy
// [136] phi (word) mode_8bppchunkybmm::x#2 = (word) mode_8bppchunkybmm::x#1 [phi:mode_8bppchunkybmm::@5->mode_8bppchunkybmm::@4#1] -- register_copy
// [136] phi (byte*) mode_8bppchunkybmm::gfxb#3 = (byte*) mode_8bppchunkybmm::gfxb#1 [phi:mode_8bppchunkybmm::@5->mode_8bppchunkybmm::@4#2] -- register_copy
jmp b4
// mode_8bppchunkybmm::@4
b4:
// [137] if((byte*) mode_8bppchunkybmm::gfxb#3!=(word) $8000) goto mode_8bppchunkybmm::@5 -- pbuz1_neq_vwuc1_then_la1
lda.z gfxb+1
cmp #>$8000
bne b5_from_b4
lda.z gfxb
cmp #<$8000
bne b5_from_b4
jmp b6
// mode_8bppchunkybmm::@6
b6:
// [138] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ← (byte) mode_8bppchunkybmm::gfxbCpuBank#4 -- vbuaa=vbuxx
txa
// [139] call dtvSetCpuBankSegment1
// [223] phi from mode_8bppchunkybmm::@6 to dtvSetCpuBankSegment1 [phi:mode_8bppchunkybmm::@6->dtvSetCpuBankSegment1]
dtvSetCpuBankSegment1_from_b6:
// [223] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 [phi:mode_8bppchunkybmm::@6->dtvSetCpuBankSegment1#0] -- register_copy
jsr dtvSetCpuBankSegment1
jmp b9
// mode_8bppchunkybmm::@9
b9:
// [140] (byte) mode_8bppchunkybmm::gfxbCpuBank#2 ← ++ (byte) mode_8bppchunkybmm::gfxbCpuBank#4 -- vbuxx=_inc_vbuxx
inx
// [141] phi from mode_8bppchunkybmm::@9 to mode_8bppchunkybmm::@5 [phi:mode_8bppchunkybmm::@9->mode_8bppchunkybmm::@5]
b5_from_b9:
// [141] phi (byte) mode_8bppchunkybmm::gfxbCpuBank#8 = (byte) mode_8bppchunkybmm::gfxbCpuBank#2 [phi:mode_8bppchunkybmm::@9->mode_8bppchunkybmm::@5#0] -- register_copy
// [141] phi (byte*) mode_8bppchunkybmm::gfxb#4 = (byte*) 16384 [phi:mode_8bppchunkybmm::@9->mode_8bppchunkybmm::@5#1] -- pbuz1=pbuc1
lda #<$4000
sta.z gfxb
lda #>$4000
sta.z gfxb+1
jmp b5
// [141] phi from mode_8bppchunkybmm::@4 to mode_8bppchunkybmm::@5 [phi:mode_8bppchunkybmm::@4->mode_8bppchunkybmm::@5]
b5_from_b4:
// [141] phi (byte) mode_8bppchunkybmm::gfxbCpuBank#8 = (byte) mode_8bppchunkybmm::gfxbCpuBank#4 [phi:mode_8bppchunkybmm::@4->mode_8bppchunkybmm::@5#0] -- register_copy
// [141] phi (byte*) mode_8bppchunkybmm::gfxb#4 = (byte*) mode_8bppchunkybmm::gfxb#3 [phi:mode_8bppchunkybmm::@4->mode_8bppchunkybmm::@5#1] -- register_copy
jmp b5
// mode_8bppchunkybmm::@5
b5:
// [142] (word~) mode_8bppchunkybmm::$26 ← (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#6 -- vwuz1=vwuz2_plus_vbuz3
lda.z y
clc
adc.z x
sta.z _26
lda #0
adc.z x+1
sta.z _26+1
// [143] (byte) mode_8bppchunkybmm::c#0 ← (byte)(word~) mode_8bppchunkybmm::$26 -- vbuaa=_byte_vwuz1
lda.z _26
// [144] *((byte*) mode_8bppchunkybmm::gfxb#4) ← (byte) mode_8bppchunkybmm::c#0 -- _deref_pbuz1=vbuaa
ldy #0
sta (gfxb),y
// [145] (byte*) mode_8bppchunkybmm::gfxb#1 ← ++ (byte*) mode_8bppchunkybmm::gfxb#4 -- pbuz1=_inc_pbuz1
inc.z gfxb
bne !+
inc.z gfxb+1
!:
// [146] (word) mode_8bppchunkybmm::x#1 ← ++ (word) mode_8bppchunkybmm::x#2 -- vwuz1=_inc_vwuz1
inc.z x
bne !+
inc.z x+1
!:
// [147] if((word) mode_8bppchunkybmm::x#1!=(word) $140) goto mode_8bppchunkybmm::@4 -- vwuz1_neq_vwuc1_then_la1
lda.z x+1
cmp #>$140
bne b4_from_b5
lda.z x
cmp #<$140
bne b4_from_b5
jmp b7
// mode_8bppchunkybmm::@7
b7:
// [148] (byte) mode_8bppchunkybmm::y#1 ← ++ (byte) mode_8bppchunkybmm::y#6 -- vbuz1=_inc_vbuz1
inc.z y
// [149] if((byte) mode_8bppchunkybmm::y#1!=(byte) $c8) goto mode_8bppchunkybmm::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$c8
cmp.z y
bne b3_from_b7
// [150] phi from mode_8bppchunkybmm::@7 to mode_8bppchunkybmm::@8 [phi:mode_8bppchunkybmm::@7->mode_8bppchunkybmm::@8]
b8_from_b7:
jmp b8
// mode_8bppchunkybmm::@8
b8:
// [151] call dtvSetCpuBankSegment1
// [223] phi from mode_8bppchunkybmm::@8 to dtvSetCpuBankSegment1 [phi:mode_8bppchunkybmm::@8->dtvSetCpuBankSegment1]
dtvSetCpuBankSegment1_from_b8:
// [223] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = (byte)(number) $4000/(number) $4000 [phi:mode_8bppchunkybmm::@8->dtvSetCpuBankSegment1#0] -- vbuaa=vbuc1
lda #$4000/$4000
jsr dtvSetCpuBankSegment1
// [152] phi from mode_8bppchunkybmm::@8 to mode_8bppchunkybmm::@10 [phi:mode_8bppchunkybmm::@8->mode_8bppchunkybmm::@10]
b10_from_b8:
jmp b10
// mode_8bppchunkybmm::@10
b10:
// [153] call mode_ctrl
// [155] phi from mode_8bppchunkybmm::@10 to mode_ctrl [phi:mode_8bppchunkybmm::@10->mode_ctrl]
mode_ctrl_from_b10:
// [155] phi (byte) dtv_control#144 = (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0 [phi:mode_8bppchunkybmm::@10->mode_ctrl#0] -- vbuz1=vbuc1
lda #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY|DTV_COLORRAM_OFF
sta.z dtv_control
jsr mode_ctrl
jmp breturn
// mode_8bppchunkybmm::@return
breturn:
// [154] return
rts
}
// mode_ctrl
// Allow the user to control the DTV graphics using different keys
mode_ctrl: {
// [156] phi from mode_ctrl mode_ctrl::@11 mode_ctrl::@18 to mode_ctrl::@1 [phi:mode_ctrl/mode_ctrl::@11/mode_ctrl::@18->mode_ctrl::@1]
b1_from_mode_ctrl:
b1_from_b11:
b1_from_b18:
// [156] phi (byte) dtv_control#114 = (byte) dtv_control#144 [phi:mode_ctrl/mode_ctrl::@11/mode_ctrl::@18->mode_ctrl::@1#0] -- register_copy
jmp b1
// mode_ctrl::@1
b1:
jmp b2
// Wait for the raster
// mode_ctrl::@2
b2:
// [157] if(*((const byte*) RASTER#0)!=(byte) $ff) goto mode_ctrl::@2 -- _deref_pbuc1_neq_vbuc2_then_la1
lda #$ff
cmp RASTER
bne b2
// [158] phi from mode_ctrl::@2 to mode_ctrl::@3 [phi:mode_ctrl::@2->mode_ctrl::@3]
b3_from_b2:
jmp b3
// mode_ctrl::@3
b3:
// [159] call keyboard_key_pressed
// [211] phi from mode_ctrl::@3 to keyboard_key_pressed [phi:mode_ctrl::@3->keyboard_key_pressed]
keyboard_key_pressed_from_b3:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_SPACE#0 [phi:mode_ctrl::@3->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_SPACE
jsr keyboard_key_pressed
// [160] (byte) keyboard_key_pressed::return#14 ← (byte) keyboard_key_pressed::return#0
jmp b19
// mode_ctrl::@19
b19:
// [161] (byte~) mode_ctrl::$1 ← (byte) keyboard_key_pressed::return#14
// [162] if((byte~) mode_ctrl::$1==(byte) 0) goto mode_ctrl::@4 -- vbuaa_eq_0_then_la1
cmp #0
beq b4
jmp breturn
// mode_ctrl::@return
breturn:
// [163] return
rts
// mode_ctrl::@4
b4:
// [164] (byte) mode_ctrl::ctrl#0 ← (byte) dtv_control#114 -- vbuxx=vbuz1
// Read the current control byte
ldx.z dtv_control
// [165] call keyboard_key_pressed
// [211] phi from mode_ctrl::@4 to keyboard_key_pressed [phi:mode_ctrl::@4->keyboard_key_pressed]
keyboard_key_pressed_from_b4:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_L#0 [phi:mode_ctrl::@4->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_L
jsr keyboard_key_pressed
// [166] (byte) keyboard_key_pressed::return#15 ← (byte) keyboard_key_pressed::return#0
jmp b20
// mode_ctrl::@20
b20:
// [167] (byte~) mode_ctrl::$4 ← (byte) keyboard_key_pressed::return#15
// [168] if((byte~) mode_ctrl::$4==(byte) 0) goto mode_ctrl::@5 -- vbuaa_eq_0_then_la1
cmp #0
beq b5_from_b20
jmp b12
// mode_ctrl::@12
b12:
// [169] (byte) mode_ctrl::ctrl#1 ← (byte) mode_ctrl::ctrl#0 | (const byte) DTV_LINEAR#0 -- vbuxx=vbuxx_bor_vbuc1
txa
ora #DTV_LINEAR
tax
// [170] phi from mode_ctrl::@12 mode_ctrl::@20 to mode_ctrl::@5 [phi:mode_ctrl::@12/mode_ctrl::@20->mode_ctrl::@5]
b5_from_b12:
b5_from_b20:
// [170] phi (byte) mode_ctrl::ctrl#17 = (byte) mode_ctrl::ctrl#1 [phi:mode_ctrl::@12/mode_ctrl::@20->mode_ctrl::@5#0] -- register_copy
jmp b5
// mode_ctrl::@5
b5:
// [171] call keyboard_key_pressed
// [211] phi from mode_ctrl::@5 to keyboard_key_pressed [phi:mode_ctrl::@5->keyboard_key_pressed]
keyboard_key_pressed_from_b5:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_H#0 [phi:mode_ctrl::@5->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_H
jsr keyboard_key_pressed
// [172] (byte) keyboard_key_pressed::return#16 ← (byte) keyboard_key_pressed::return#0
jmp b21
// mode_ctrl::@21
b21:
// [173] (byte~) mode_ctrl::$8 ← (byte) keyboard_key_pressed::return#16
// [174] if((byte~) mode_ctrl::$8==(byte) 0) goto mode_ctrl::@6 -- vbuaa_eq_0_then_la1
cmp #0
beq b6_from_b21
jmp b13
// mode_ctrl::@13
b13:
// [175] (byte) mode_ctrl::ctrl#2 ← (byte) mode_ctrl::ctrl#17 | (const byte) DTV_HIGHCOLOR#0 -- vbuxx=vbuxx_bor_vbuc1
txa
ora #DTV_HIGHCOLOR
tax
// [176] phi from mode_ctrl::@13 mode_ctrl::@21 to mode_ctrl::@6 [phi:mode_ctrl::@13/mode_ctrl::@21->mode_ctrl::@6]
b6_from_b13:
b6_from_b21:
// [176] phi (byte) mode_ctrl::ctrl#10 = (byte) mode_ctrl::ctrl#2 [phi:mode_ctrl::@13/mode_ctrl::@21->mode_ctrl::@6#0] -- register_copy
jmp b6
// mode_ctrl::@6
b6:
// [177] call keyboard_key_pressed
// [211] phi from mode_ctrl::@6 to keyboard_key_pressed [phi:mode_ctrl::@6->keyboard_key_pressed]
keyboard_key_pressed_from_b6:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_O#0 [phi:mode_ctrl::@6->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_O
jsr keyboard_key_pressed
// [178] (byte) keyboard_key_pressed::return#17 ← (byte) keyboard_key_pressed::return#0
jmp b22
// mode_ctrl::@22
b22:
// [179] (byte~) mode_ctrl::$12 ← (byte) keyboard_key_pressed::return#17
// [180] if((byte~) mode_ctrl::$12==(byte) 0) goto mode_ctrl::@7 -- vbuaa_eq_0_then_la1
cmp #0
beq b7_from_b22
jmp b14
// mode_ctrl::@14
b14:
// [181] (byte) mode_ctrl::ctrl#3 ← (byte) mode_ctrl::ctrl#10 | (const byte) DTV_OVERSCAN#0 -- vbuxx=vbuxx_bor_vbuc1
txa
ora #DTV_OVERSCAN
tax
// [182] phi from mode_ctrl::@14 mode_ctrl::@22 to mode_ctrl::@7 [phi:mode_ctrl::@14/mode_ctrl::@22->mode_ctrl::@7]
b7_from_b14:
b7_from_b22:
// [182] phi (byte) mode_ctrl::ctrl#11 = (byte) mode_ctrl::ctrl#3 [phi:mode_ctrl::@14/mode_ctrl::@22->mode_ctrl::@7#0] -- register_copy
jmp b7
// mode_ctrl::@7
b7:
// [183] call keyboard_key_pressed
// [211] phi from mode_ctrl::@7 to keyboard_key_pressed [phi:mode_ctrl::@7->keyboard_key_pressed]
keyboard_key_pressed_from_b7:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_B#0 [phi:mode_ctrl::@7->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_B
jsr keyboard_key_pressed
// [184] (byte) keyboard_key_pressed::return#18 ← (byte) keyboard_key_pressed::return#0
jmp b23
// mode_ctrl::@23
b23:
// [185] (byte~) mode_ctrl::$16 ← (byte) keyboard_key_pressed::return#18
// [186] if((byte~) mode_ctrl::$16==(byte) 0) goto mode_ctrl::@8 -- vbuaa_eq_0_then_la1
cmp #0
beq b8_from_b23
jmp b15
// mode_ctrl::@15
b15:
// [187] (byte) mode_ctrl::ctrl#4 ← (byte) mode_ctrl::ctrl#11 | (const byte) DTV_BORDER_OFF#0 -- vbuxx=vbuxx_bor_vbuc1
txa
ora #DTV_BORDER_OFF
tax
// [188] phi from mode_ctrl::@15 mode_ctrl::@23 to mode_ctrl::@8 [phi:mode_ctrl::@15/mode_ctrl::@23->mode_ctrl::@8]
b8_from_b15:
b8_from_b23:
// [188] phi (byte) mode_ctrl::ctrl#12 = (byte) mode_ctrl::ctrl#4 [phi:mode_ctrl::@15/mode_ctrl::@23->mode_ctrl::@8#0] -- register_copy
jmp b8
// mode_ctrl::@8
b8:
// [189] call keyboard_key_pressed
// [211] phi from mode_ctrl::@8 to keyboard_key_pressed [phi:mode_ctrl::@8->keyboard_key_pressed]
keyboard_key_pressed_from_b8:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_U#0 [phi:mode_ctrl::@8->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_U
jsr keyboard_key_pressed
// [190] (byte) keyboard_key_pressed::return#19 ← (byte) keyboard_key_pressed::return#0
jmp b24
// mode_ctrl::@24
b24:
// [191] (byte~) mode_ctrl::$20 ← (byte) keyboard_key_pressed::return#19
// [192] if((byte~) mode_ctrl::$20==(byte) 0) goto mode_ctrl::@9 -- vbuaa_eq_0_then_la1
cmp #0
beq b9_from_b24
jmp b16
// mode_ctrl::@16
b16:
// [193] (byte) mode_ctrl::ctrl#5 ← (byte) mode_ctrl::ctrl#12 | (const byte) DTV_CHUNKY#0 -- vbuxx=vbuxx_bor_vbuc1
txa
ora #DTV_CHUNKY
tax
// [194] phi from mode_ctrl::@16 mode_ctrl::@24 to mode_ctrl::@9 [phi:mode_ctrl::@16/mode_ctrl::@24->mode_ctrl::@9]
b9_from_b16:
b9_from_b24:
// [194] phi (byte) mode_ctrl::ctrl#13 = (byte) mode_ctrl::ctrl#5 [phi:mode_ctrl::@16/mode_ctrl::@24->mode_ctrl::@9#0] -- register_copy
jmp b9
// mode_ctrl::@9
b9:
// [195] call keyboard_key_pressed
// [211] phi from mode_ctrl::@9 to keyboard_key_pressed [phi:mode_ctrl::@9->keyboard_key_pressed]
keyboard_key_pressed_from_b9:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_C#0 [phi:mode_ctrl::@9->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_C
jsr keyboard_key_pressed
// [196] (byte) keyboard_key_pressed::return#20 ← (byte) keyboard_key_pressed::return#0
jmp b25
// mode_ctrl::@25
b25:
// [197] (byte~) mode_ctrl::$24 ← (byte) keyboard_key_pressed::return#20
// [198] if((byte~) mode_ctrl::$24==(byte) 0) goto mode_ctrl::@10 -- vbuaa_eq_0_then_la1
cmp #0
beq b10_from_b25
jmp b17
// mode_ctrl::@17
b17:
// [199] (byte) mode_ctrl::ctrl#6 ← (byte) mode_ctrl::ctrl#13 | (const byte) DTV_COLORRAM_OFF#0 -- vbuxx=vbuxx_bor_vbuc1
txa
ora #DTV_COLORRAM_OFF
tax
// [200] phi from mode_ctrl::@17 mode_ctrl::@25 to mode_ctrl::@10 [phi:mode_ctrl::@17/mode_ctrl::@25->mode_ctrl::@10]
b10_from_b17:
b10_from_b25:
// [200] phi (byte) mode_ctrl::ctrl#22 = (byte) mode_ctrl::ctrl#6 [phi:mode_ctrl::@17/mode_ctrl::@25->mode_ctrl::@10#0] -- register_copy
jmp b10
// mode_ctrl::@10
b10:
// [201] call keyboard_key_pressed
// [211] phi from mode_ctrl::@10 to keyboard_key_pressed [phi:mode_ctrl::@10->keyboard_key_pressed]
keyboard_key_pressed_from_b10:
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_0#0 [phi:mode_ctrl::@10->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_0
jsr keyboard_key_pressed
// [202] (byte) keyboard_key_pressed::return#21 ← (byte) keyboard_key_pressed::return#0
jmp b26
// mode_ctrl::@26
b26:
// [203] (byte~) mode_ctrl::$28 ← (byte) keyboard_key_pressed::return#21
// [204] if((byte~) mode_ctrl::$28==(byte) 0) goto mode_ctrl::@27 -- vbuaa_eq_0_then_la1
cmp #0
beq b27_from_b26
// [206] phi from mode_ctrl::@26 to mode_ctrl::@11 [phi:mode_ctrl::@26->mode_ctrl::@11]
b11_from_b26:
// [206] phi (byte) mode_ctrl::ctrl#14 = (byte) 0 [phi:mode_ctrl::@26->mode_ctrl::@11#0] -- vbuxx=vbuc1
ldx #0
jmp b11
// [205] phi from mode_ctrl::@26 to mode_ctrl::@27 [phi:mode_ctrl::@26->mode_ctrl::@27]
b27_from_b26:
jmp b27
// mode_ctrl::@27
b27:
// [206] phi from mode_ctrl::@27 to mode_ctrl::@11 [phi:mode_ctrl::@27->mode_ctrl::@11]
b11_from_b27:
// [206] phi (byte) mode_ctrl::ctrl#14 = (byte) mode_ctrl::ctrl#22 [phi:mode_ctrl::@27->mode_ctrl::@11#0] -- register_copy
jmp b11
// mode_ctrl::@11
b11:
// [207] if((byte) mode_ctrl::ctrl#14==(byte) dtv_control#114) goto mode_ctrl::@1 -- vbuxx_eq_vbuz1_then_la1
cpx.z dtv_control
beq b1_from_b11
jmp b18
// mode_ctrl::@18
b18:
// [208] (byte) dtv_control#17 ← (byte) mode_ctrl::ctrl#14 -- vbuz1=vbuxx
stx.z dtv_control
// [209] *((const byte*) DTV_CONTROL#0) ← (byte) mode_ctrl::ctrl#14 -- _deref_pbuc1=vbuxx
stx DTV_CONTROL
// [210] *((const byte*) BORDERCOL#0) ← (byte) mode_ctrl::ctrl#14 -- _deref_pbuc1=vbuxx
stx BORDERCOL
jmp b1_from_b18
}
// keyboard_key_pressed
// Determines whether a specific key is currently pressed by accessing the matrix directly
// The key is a keyboard code defined from the keyboard matrix by %00rrrccc, where rrr is the row ID (0-7) and ccc is the column ID (0-7)
// All keys exist as as KEY_XXX constants.
// Returns zero if the key is not pressed and a non-zero value if the key is currently pressed
// keyboard_key_pressed(byte register(Y) key)
keyboard_key_pressed: {
.label colidx = 6
// [212] (byte) keyboard_key_pressed::colidx#0 ← (byte) keyboard_key_pressed::key#20 & (byte) 7 -- vbuz1=vbuyy_band_vbuc1
tya
and #7
sta.z colidx
// [213] (byte) keyboard_key_pressed::rowidx#0 ← (byte) keyboard_key_pressed::key#20 >> (byte) 3 -- vbuaa=vbuyy_ror_3
tya
lsr
lsr
lsr
// [214] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_key_pressed::rowidx#0 -- vbuyy=vbuaa
tay
// [215] call keyboard_matrix_read
jsr keyboard_matrix_read
// [216] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0
jmp b1
// keyboard_key_pressed::@1
b1:
// [217] (byte~) keyboard_key_pressed::$2 ← (byte) keyboard_matrix_read::return#2
// [218] (byte) keyboard_key_pressed::return#0 ← (byte~) keyboard_key_pressed::$2 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#0) -- vbuaa=vbuaa_band_pbuc1_derefidx_vbuz1
ldy.z colidx
and keyboard_matrix_col_bitmask,y
jmp breturn
// keyboard_key_pressed::@return
breturn:
// [219] return
rts
}
// keyboard_matrix_read
// Read a single row of the keyboard matrix
// The row ID (0-7) of the keyboard matrix row to read. See the C64 key matrix for row IDs.
// Returns the keys pressed on the row as bits according to the C64 key matrix.
// Notice: If the C64 normal interrupt is still running it will occasionally interrupt right between the read & write
// leading to erroneous readings. You must disable kill the normal interrupt or sei/cli around calls to the keyboard matrix reader.
// keyboard_matrix_read(byte register(Y) rowid)
keyboard_matrix_read: {
// [220] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuyy
lda keyboard_matrix_row_bitmask,y
sta CIA1_PORT_A
// [221] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) -- vbuaa=_bnot__deref_pbuc1
lda CIA1_PORT_B
eor #$ff
jmp breturn
// keyboard_matrix_read::@return
breturn:
// [222] return
rts
}
// dtvSetCpuBankSegment1
// Set the memory pointed to by CPU BANK 1 SEGMENT ($4000-$7fff)
// This sets which actual memory is addressed when the CPU reads/writes to $4000-$7fff
// The actual memory addressed will be $4000*cpuSegmentIdx
// dtvSetCpuBankSegment1(byte register(A) cpuBankIdx)
dtvSetCpuBankSegment1: {
// Move CPU BANK 1 SEGMENT ($4000-$7fff)
.label cpuBank = $ff
// [224] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ← (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 -- _deref_pbuc1=vbuaa
sta cpuBank
// asm { .byte$32,$dd lda$ff .byte$32,$00 }
.byte $32, $dd
lda.z $ff
.byte $32, $00
jmp breturn
// dtvSetCpuBankSegment1::@return
breturn:
// [226] return
rts
}
// mode_8bpppixelcell
//8bpp Pixel Cell Mode (BMM/COLDIS = 0, ECM/MCM/HICOL/LINEAR/CHUNK = 1)
//Pixel Cell Adressing
//CharData[8]: (PlaneA[21:0])
//GfxData[8]: (PlaneB[21:14] & CharData[7:0] & RowCounter[3:0] & PixelCounter[7:0] )
//GfxData Pixel Shifter (8):
//- 8bpp color GfxData[7:0]
//Pixel cell mode can be thought of as a text mode that uses a 8x8 pixel 8bpp font (64 bytes/char).
//The characters come from counter A and the font (or "cells") from counter B.
//Counter B step and modulo should be set to 0, counter A modulo to 0 and counter A step to 1 for normal operation.
mode_8bpppixelcell: {
// 8BPP Pixel Cell Screen (contains 40x25=1000 chars)
.label PLANEA = $3c00
// 8BPP Pixel Cell Charset (contains 256 64 byte chars)
.label PLANEB = $4000
.label CHARGEN = $d000
.label _15 = $e
.label gfxa = $b
.label ay = $d
.label bits = 6
.label chargen = 4
.label gfxb = 9
.label col = 7
.label cr = 3
.label ch = 2
// [227] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0 -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY
sta DTV_CONTROL
// [228] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Mode
lda #VIC_ECM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [229] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_MCM|VIC_CSEL
sta VIC_CONTROL2
// [230] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane A Counter
lda #0
sta DTV_PLANEA_START_LO
// [231] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_8bpppixelcell::PLANEA#0 -- _deref_pbuc1=vbuc2
lda #>PLANEA
sta DTV_PLANEA_START_MI
// [232] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_START_HI
// [233] *((const byte*) DTV_PLANEA_STEP#0) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEA_STEP
// [234] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_LO
// [235] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_HI
// [236] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
lda #0
sta DTV_PLANEB_START_LO
// [237] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_8bpppixelcell::PLANEB#0 -- _deref_pbuc1=vbuc2
lda #>PLANEB
sta DTV_PLANEB_START_MI
// [238] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_HI
// [239] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_STEP
// [240] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// [241] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_HI
// [242] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Border color
lda #0
sta BORDERCOL
// [243] phi from mode_8bpppixelcell to mode_8bpppixelcell::@1 [phi:mode_8bpppixelcell->mode_8bpppixelcell::@1]
b1_from_mode_8bpppixelcell:
// [243] phi (byte) mode_8bpppixelcell::i#2 = (byte) 0 [phi:mode_8bpppixelcell->mode_8bpppixelcell::@1#0] -- vbuxx=vbuc1
ldx #0
jmp b1
// DTV Palette - Grey Tones
// [243] phi from mode_8bpppixelcell::@1 to mode_8bpppixelcell::@1 [phi:mode_8bpppixelcell::@1->mode_8bpppixelcell::@1]
b1_from_b1:
// [243] phi (byte) mode_8bpppixelcell::i#2 = (byte) mode_8bpppixelcell::i#1 [phi:mode_8bpppixelcell::@1->mode_8bpppixelcell::@1#0] -- register_copy
jmp b1
// mode_8bpppixelcell::@1
b1:
// [244] *((const byte*) DTV_PALETTE#0 + (byte) mode_8bpppixelcell::i#2) ← (byte) mode_8bpppixelcell::i#2 -- pbuc1_derefidx_vbuxx=vbuxx
txa
sta DTV_PALETTE,x
// [245] (byte) mode_8bpppixelcell::i#1 ← ++ (byte) mode_8bpppixelcell::i#2 -- vbuxx=_inc_vbuxx
inx
// [246] if((byte) mode_8bpppixelcell::i#1!=(byte) $10) goto mode_8bpppixelcell::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1_from_b1
// [247] phi from mode_8bpppixelcell::@1 to mode_8bpppixelcell::@2 [phi:mode_8bpppixelcell::@1->mode_8bpppixelcell::@2]
b2_from_b1:
// [247] phi (byte*) mode_8bpppixelcell::gfxa#3 = (const byte*) mode_8bpppixelcell::PLANEA#0 [phi:mode_8bpppixelcell::@1->mode_8bpppixelcell::@2#0] -- pbuz1=pbuc1
lda #<PLANEA
sta.z gfxa
lda #>PLANEA
sta.z gfxa+1
// [247] phi (byte) mode_8bpppixelcell::ay#4 = (byte) 0 [phi:mode_8bpppixelcell::@1->mode_8bpppixelcell::@2#1] -- vbuz1=vbuc1
lda #0
sta.z ay
jmp b2
// [247] phi from mode_8bpppixelcell::@4 to mode_8bpppixelcell::@2 [phi:mode_8bpppixelcell::@4->mode_8bpppixelcell::@2]
b2_from_b4:
// [247] phi (byte*) mode_8bpppixelcell::gfxa#3 = (byte*) mode_8bpppixelcell::gfxa#1 [phi:mode_8bpppixelcell::@4->mode_8bpppixelcell::@2#0] -- register_copy
// [247] phi (byte) mode_8bpppixelcell::ay#4 = (byte) mode_8bpppixelcell::ay#1 [phi:mode_8bpppixelcell::@4->mode_8bpppixelcell::@2#1] -- register_copy
jmp b2
// mode_8bpppixelcell::@2
b2:
// [248] phi from mode_8bpppixelcell::@2 to mode_8bpppixelcell::@3 [phi:mode_8bpppixelcell::@2->mode_8bpppixelcell::@3]
b3_from_b2:
// [248] phi (byte*) mode_8bpppixelcell::gfxa#2 = (byte*) mode_8bpppixelcell::gfxa#3 [phi:mode_8bpppixelcell::@2->mode_8bpppixelcell::@3#0] -- register_copy
// [248] phi (byte) mode_8bpppixelcell::ax#2 = (byte) 0 [phi:mode_8bpppixelcell::@2->mode_8bpppixelcell::@3#1] -- vbuxx=vbuc1
ldx #0
jmp b3
// [248] phi from mode_8bpppixelcell::@3 to mode_8bpppixelcell::@3 [phi:mode_8bpppixelcell::@3->mode_8bpppixelcell::@3]
b3_from_b3:
// [248] phi (byte*) mode_8bpppixelcell::gfxa#2 = (byte*) mode_8bpppixelcell::gfxa#1 [phi:mode_8bpppixelcell::@3->mode_8bpppixelcell::@3#0] -- register_copy
// [248] phi (byte) mode_8bpppixelcell::ax#2 = (byte) mode_8bpppixelcell::ax#1 [phi:mode_8bpppixelcell::@3->mode_8bpppixelcell::@3#1] -- register_copy
jmp b3
// mode_8bpppixelcell::@3
b3:
// [249] (byte~) mode_8bpppixelcell::$14 ← (byte) mode_8bpppixelcell::ay#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z ay
// [250] (byte~) mode_8bpppixelcell::$15 ← (byte~) mode_8bpppixelcell::$14 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z _15
// [251] (byte~) mode_8bpppixelcell::$16 ← (byte) mode_8bpppixelcell::ax#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// [252] (byte~) mode_8bpppixelcell::$17 ← (byte~) mode_8bpppixelcell::$15 | (byte~) mode_8bpppixelcell::$16 -- vbuaa=vbuz1_bor_vbuaa
ora.z _15
// [253] *((byte*) mode_8bpppixelcell::gfxa#2) ← (byte~) mode_8bpppixelcell::$17 -- _deref_pbuz1=vbuaa
ldy #0
sta (gfxa),y
// [254] (byte*) mode_8bpppixelcell::gfxa#1 ← ++ (byte*) mode_8bpppixelcell::gfxa#2 -- pbuz1=_inc_pbuz1
inc.z gfxa
bne !+
inc.z gfxa+1
!:
// [255] (byte) mode_8bpppixelcell::ax#1 ← ++ (byte) mode_8bpppixelcell::ax#2 -- vbuxx=_inc_vbuxx
inx
// [256] if((byte) mode_8bpppixelcell::ax#1!=(byte) $28) goto mode_8bpppixelcell::@3 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b3_from_b3
jmp b4
// mode_8bpppixelcell::@4
b4:
// [257] (byte) mode_8bpppixelcell::ay#1 ← ++ (byte) mode_8bpppixelcell::ay#4 -- vbuz1=_inc_vbuz1
inc.z ay
// [258] if((byte) mode_8bpppixelcell::ay#1!=(byte) $19) goto mode_8bpppixelcell::@2 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z ay
bne b2_from_b4
jmp b5
// mode_8bpppixelcell::@5
b5:
// [259] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_CHARROM#0 -- _deref_pbuc1=vbuc2
// 8bpp cells for Plane B (charset) - ROM charset with 256 colors
lda #PROCPORT_RAM_CHARROM
sta PROCPORT
// [260] phi from mode_8bpppixelcell::@5 to mode_8bpppixelcell::@6 [phi:mode_8bpppixelcell::@5->mode_8bpppixelcell::@6]
b6_from_b5:
// [260] phi (byte) mode_8bpppixelcell::ch#8 = (byte) 0 [phi:mode_8bpppixelcell::@5->mode_8bpppixelcell::@6#0] -- vbuz1=vbuc1
lda #0
sta.z ch
// [260] phi (byte) mode_8bpppixelcell::col#7 = (byte) 0 [phi:mode_8bpppixelcell::@5->mode_8bpppixelcell::@6#1] -- vbuz1=vbuc1
lda #0
sta.z col
// [260] phi (byte*) mode_8bpppixelcell::gfxb#7 = (const byte*) mode_8bpppixelcell::PLANEB#0 [phi:mode_8bpppixelcell::@5->mode_8bpppixelcell::@6#2] -- pbuz1=pbuc1
lda #<PLANEB
sta.z gfxb
lda #>PLANEB
sta.z gfxb+1
// [260] phi (byte*) mode_8bpppixelcell::chargen#4 = (const byte*) mode_8bpppixelcell::CHARGEN#0 [phi:mode_8bpppixelcell::@5->mode_8bpppixelcell::@6#3] -- pbuz1=pbuc1
lda #<CHARGEN
sta.z chargen
lda #>CHARGEN
sta.z chargen+1
jmp b6
// [260] phi from mode_8bpppixelcell::@12 to mode_8bpppixelcell::@6 [phi:mode_8bpppixelcell::@12->mode_8bpppixelcell::@6]
b6_from_b12:
// [260] phi (byte) mode_8bpppixelcell::ch#8 = (byte) mode_8bpppixelcell::ch#1 [phi:mode_8bpppixelcell::@12->mode_8bpppixelcell::@6#0] -- register_copy
// [260] phi (byte) mode_8bpppixelcell::col#7 = (byte) mode_8bpppixelcell::col#1 [phi:mode_8bpppixelcell::@12->mode_8bpppixelcell::@6#1] -- register_copy
// [260] phi (byte*) mode_8bpppixelcell::gfxb#7 = (byte*) mode_8bpppixelcell::gfxb#1 [phi:mode_8bpppixelcell::@12->mode_8bpppixelcell::@6#2] -- register_copy
// [260] phi (byte*) mode_8bpppixelcell::chargen#4 = (byte*) mode_8bpppixelcell::chargen#1 [phi:mode_8bpppixelcell::@12->mode_8bpppixelcell::@6#3] -- register_copy
jmp b6
// mode_8bpppixelcell::@6
b6:
// [261] phi from mode_8bpppixelcell::@6 to mode_8bpppixelcell::@7 [phi:mode_8bpppixelcell::@6->mode_8bpppixelcell::@7]
b7_from_b6:
// [261] phi (byte) mode_8bpppixelcell::cr#6 = (byte) 0 [phi:mode_8bpppixelcell::@6->mode_8bpppixelcell::@7#0] -- vbuz1=vbuc1
lda #0
sta.z cr
// [261] phi (byte) mode_8bpppixelcell::col#5 = (byte) mode_8bpppixelcell::col#7 [phi:mode_8bpppixelcell::@6->mode_8bpppixelcell::@7#1] -- register_copy
// [261] phi (byte*) mode_8bpppixelcell::gfxb#5 = (byte*) mode_8bpppixelcell::gfxb#7 [phi:mode_8bpppixelcell::@6->mode_8bpppixelcell::@7#2] -- register_copy
// [261] phi (byte*) mode_8bpppixelcell::chargen#2 = (byte*) mode_8bpppixelcell::chargen#4 [phi:mode_8bpppixelcell::@6->mode_8bpppixelcell::@7#3] -- register_copy
jmp b7
// [261] phi from mode_8bpppixelcell::@11 to mode_8bpppixelcell::@7 [phi:mode_8bpppixelcell::@11->mode_8bpppixelcell::@7]
b7_from_b11:
// [261] phi (byte) mode_8bpppixelcell::cr#6 = (byte) mode_8bpppixelcell::cr#1 [phi:mode_8bpppixelcell::@11->mode_8bpppixelcell::@7#0] -- register_copy
// [261] phi (byte) mode_8bpppixelcell::col#5 = (byte) mode_8bpppixelcell::col#1 [phi:mode_8bpppixelcell::@11->mode_8bpppixelcell::@7#1] -- register_copy
// [261] phi (byte*) mode_8bpppixelcell::gfxb#5 = (byte*) mode_8bpppixelcell::gfxb#1 [phi:mode_8bpppixelcell::@11->mode_8bpppixelcell::@7#2] -- register_copy
// [261] phi (byte*) mode_8bpppixelcell::chargen#2 = (byte*) mode_8bpppixelcell::chargen#1 [phi:mode_8bpppixelcell::@11->mode_8bpppixelcell::@7#3] -- register_copy
jmp b7
// mode_8bpppixelcell::@7
b7:
// [262] (byte) mode_8bpppixelcell::bits#0 ← *((byte*) mode_8bpppixelcell::chargen#2) -- vbuz1=_deref_pbuz2
ldy #0
lda (chargen),y
sta.z bits
// [263] (byte*) mode_8bpppixelcell::chargen#1 ← ++ (byte*) mode_8bpppixelcell::chargen#2 -- pbuz1=_inc_pbuz1
inc.z chargen
bne !+
inc.z chargen+1
!:
// [264] phi from mode_8bpppixelcell::@7 to mode_8bpppixelcell::@8 [phi:mode_8bpppixelcell::@7->mode_8bpppixelcell::@8]
b8_from_b7:
// [264] phi (byte) mode_8bpppixelcell::cp#2 = (byte) 0 [phi:mode_8bpppixelcell::@7->mode_8bpppixelcell::@8#0] -- vbuxx=vbuc1
ldx #0
// [264] phi (byte) mode_8bpppixelcell::col#2 = (byte) mode_8bpppixelcell::col#5 [phi:mode_8bpppixelcell::@7->mode_8bpppixelcell::@8#1] -- register_copy
// [264] phi (byte*) mode_8bpppixelcell::gfxb#2 = (byte*) mode_8bpppixelcell::gfxb#5 [phi:mode_8bpppixelcell::@7->mode_8bpppixelcell::@8#2] -- register_copy
// [264] phi (byte) mode_8bpppixelcell::bits#2 = (byte) mode_8bpppixelcell::bits#0 [phi:mode_8bpppixelcell::@7->mode_8bpppixelcell::@8#3] -- register_copy
jmp b8
// [264] phi from mode_8bpppixelcell::@9 to mode_8bpppixelcell::@8 [phi:mode_8bpppixelcell::@9->mode_8bpppixelcell::@8]
b8_from_b9:
// [264] phi (byte) mode_8bpppixelcell::cp#2 = (byte) mode_8bpppixelcell::cp#1 [phi:mode_8bpppixelcell::@9->mode_8bpppixelcell::@8#0] -- register_copy
// [264] phi (byte) mode_8bpppixelcell::col#2 = (byte) mode_8bpppixelcell::col#1 [phi:mode_8bpppixelcell::@9->mode_8bpppixelcell::@8#1] -- register_copy
// [264] phi (byte*) mode_8bpppixelcell::gfxb#2 = (byte*) mode_8bpppixelcell::gfxb#1 [phi:mode_8bpppixelcell::@9->mode_8bpppixelcell::@8#2] -- register_copy
// [264] phi (byte) mode_8bpppixelcell::bits#2 = (byte) mode_8bpppixelcell::bits#1 [phi:mode_8bpppixelcell::@9->mode_8bpppixelcell::@8#3] -- register_copy
jmp b8
// mode_8bpppixelcell::@8
b8:
// [265] (byte~) mode_8bpppixelcell::$20 ← (byte) mode_8bpppixelcell::bits#2 & (byte) $80 -- vbuaa=vbuz1_band_vbuc1
lda #$80
and.z bits
// [266] if((byte~) mode_8bpppixelcell::$20==(byte) 0) goto mode_8bpppixelcell::@9 -- vbuaa_eq_0_then_la1
cmp #0
beq b9_from_b8
jmp b10
// mode_8bpppixelcell::@10
b10:
// [267] (byte~) mode_8bpppixelcell::c#3 ← (byte) mode_8bpppixelcell::col#2 -- vbuaa=vbuz1
lda.z col
// [268] phi from mode_8bpppixelcell::@10 to mode_8bpppixelcell::@9 [phi:mode_8bpppixelcell::@10->mode_8bpppixelcell::@9]
b9_from_b10:
// [268] phi (byte) mode_8bpppixelcell::c#2 = (byte~) mode_8bpppixelcell::c#3 [phi:mode_8bpppixelcell::@10->mode_8bpppixelcell::@9#0] -- register_copy
jmp b9
// [268] phi from mode_8bpppixelcell::@8 to mode_8bpppixelcell::@9 [phi:mode_8bpppixelcell::@8->mode_8bpppixelcell::@9]
b9_from_b8:
// [268] phi (byte) mode_8bpppixelcell::c#2 = (byte) 0 [phi:mode_8bpppixelcell::@8->mode_8bpppixelcell::@9#0] -- vbuaa=vbuc1
lda #0
jmp b9
// mode_8bpppixelcell::@9
b9:
// [269] *((byte*) mode_8bpppixelcell::gfxb#2) ← (byte) mode_8bpppixelcell::c#2 -- _deref_pbuz1=vbuaa
ldy #0
sta (gfxb),y
// [270] (byte*) mode_8bpppixelcell::gfxb#1 ← ++ (byte*) mode_8bpppixelcell::gfxb#2 -- pbuz1=_inc_pbuz1
inc.z gfxb
bne !+
inc.z gfxb+1
!:
// [271] (byte) mode_8bpppixelcell::bits#1 ← (byte) mode_8bpppixelcell::bits#2 << (byte) 1 -- vbuz1=vbuz1_rol_1
asl.z bits
// [272] (byte) mode_8bpppixelcell::col#1 ← ++ (byte) mode_8bpppixelcell::col#2 -- vbuz1=_inc_vbuz1
inc.z col
// [273] (byte) mode_8bpppixelcell::cp#1 ← ++ (byte) mode_8bpppixelcell::cp#2 -- vbuxx=_inc_vbuxx
inx
// [274] if((byte) mode_8bpppixelcell::cp#1!=(byte) 8) goto mode_8bpppixelcell::@8 -- vbuxx_neq_vbuc1_then_la1
cpx #8
bne b8_from_b9
jmp b11
// mode_8bpppixelcell::@11
b11:
// [275] (byte) mode_8bpppixelcell::cr#1 ← ++ (byte) mode_8bpppixelcell::cr#6 -- vbuz1=_inc_vbuz1
inc.z cr
// [276] if((byte) mode_8bpppixelcell::cr#1!=(byte) 8) goto mode_8bpppixelcell::@7 -- vbuz1_neq_vbuc1_then_la1
lda #8
cmp.z cr
bne b7_from_b11
jmp b12
// mode_8bpppixelcell::@12
b12:
// [277] (byte) mode_8bpppixelcell::ch#1 ← ++ (byte) mode_8bpppixelcell::ch#8 -- vbuz1=_inc_vbuz1
inc.z ch
// [278] if((byte) mode_8bpppixelcell::ch#1!=(byte) 0) goto mode_8bpppixelcell::@6 -- vbuz1_neq_0_then_la1
lda.z ch
cmp #0
bne b6_from_b12
jmp b13
// mode_8bpppixelcell::@13
b13:
// [279] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2
lda #PROCPORT_RAM_IO
sta PROCPORT
// [280] call mode_ctrl
// [155] phi from mode_8bpppixelcell::@13 to mode_ctrl [phi:mode_8bpppixelcell::@13->mode_ctrl]
mode_ctrl_from_b13:
// [155] phi (byte) dtv_control#144 = (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0 [phi:mode_8bpppixelcell::@13->mode_ctrl#0] -- vbuz1=vbuc1
lda #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY
sta.z dtv_control
jsr mode_ctrl
jmp breturn
// mode_8bpppixelcell::@return
breturn:
// [281] return
rts
}
// mode_sixsfred
// Sixs Fred Mode - 8bpp Packed Bitmap - Generated from the two DTV linear graphics plane counters
// Two Plane MultiColor Bitmap - 8bpp Packed Bitmap (CHUNK/COLDIS = 0, ECM/BMM/MCM/HICOL/LINEAR = 1)
// Resolution: 160x200
// Linear Adressing
// GfxData/PlaneA Pixel Shifter (2), CharData/PlaneB Pixel Shifter (2):
// - 8bpp color (ColorData[3:0],CharData/PlaneB[1:0], GfxData/PlaneA[1:0])
mode_sixsfred: {
.label PLANEA = $4000
.label PLANEB = $6000
.label COLORS = $8000
.label col = 4
.label cy = $d
.label gfxa = 9
.label ay = 2
.label gfxb = $b
.label by = 3
// [282] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR|DTV_LINEAR
sta DTV_CONTROL
// [283] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Mode
lda #VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [284] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_MCM|VIC_CSEL
sta VIC_CONTROL2
// [285] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane A Counter
lda #0
sta DTV_PLANEA_START_LO
// [286] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_sixsfred::PLANEA#0 -- _deref_pbuc1=vbuc2
lda #>PLANEA
sta DTV_PLANEA_START_MI
// [287] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_START_HI
// [288] *((const byte*) DTV_PLANEA_STEP#0) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEA_STEP
// [289] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_LO
// [290] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_HI
// [291] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
lda #0
sta DTV_PLANEB_START_LO
// [292] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_sixsfred::PLANEB#0 -- _deref_pbuc1=vbuc2
lda #>PLANEB
sta DTV_PLANEB_START_MI
// [293] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_HI
// [294] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEB_STEP
// [295] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// [296] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_HI
// [297] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_sixsfred::COLORS#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// [298] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [299] phi from mode_sixsfred to mode_sixsfred::@1 [phi:mode_sixsfred->mode_sixsfred::@1]
b1_from_mode_sixsfred:
// [299] phi (byte) mode_sixsfred::i#2 = (byte) 0 [phi:mode_sixsfred->mode_sixsfred::@1#0] -- vbuxx=vbuc1
ldx #0
jmp b1
// DTV Palette - Grey Tones
// [299] phi from mode_sixsfred::@1 to mode_sixsfred::@1 [phi:mode_sixsfred::@1->mode_sixsfred::@1]
b1_from_b1:
// [299] phi (byte) mode_sixsfred::i#2 = (byte) mode_sixsfred::i#1 [phi:mode_sixsfred::@1->mode_sixsfred::@1#0] -- register_copy
jmp b1
// mode_sixsfred::@1
b1:
// [300] *((const byte*) DTV_PALETTE#0 + (byte) mode_sixsfred::i#2) ← (byte) mode_sixsfred::i#2 -- pbuc1_derefidx_vbuxx=vbuxx
txa
sta DTV_PALETTE,x
// [301] (byte) mode_sixsfred::i#1 ← ++ (byte) mode_sixsfred::i#2 -- vbuxx=_inc_vbuxx
inx
// [302] if((byte) mode_sixsfred::i#1!=(byte) $10) goto mode_sixsfred::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1_from_b1
jmp b2
// mode_sixsfred::@2
b2:
// [303] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDERCOL
// [304] phi from mode_sixsfred::@2 to mode_sixsfred::@3 [phi:mode_sixsfred::@2->mode_sixsfred::@3]
b3_from_b2:
// [304] phi (byte*) mode_sixsfred::col#3 = (const byte*) mode_sixsfred::COLORS#0 [phi:mode_sixsfred::@2->mode_sixsfred::@3#0] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [304] phi (byte) mode_sixsfred::cy#4 = (byte) 0 [phi:mode_sixsfred::@2->mode_sixsfred::@3#1] -- vbuz1=vbuc1
lda #0
sta.z cy
jmp b3
// [304] phi from mode_sixsfred::@5 to mode_sixsfred::@3 [phi:mode_sixsfred::@5->mode_sixsfred::@3]
b3_from_b5:
// [304] phi (byte*) mode_sixsfred::col#3 = (byte*) mode_sixsfred::col#1 [phi:mode_sixsfred::@5->mode_sixsfred::@3#0] -- register_copy
// [304] phi (byte) mode_sixsfred::cy#4 = (byte) mode_sixsfred::cy#1 [phi:mode_sixsfred::@5->mode_sixsfred::@3#1] -- register_copy
jmp b3
// mode_sixsfred::@3
b3:
// [305] phi from mode_sixsfred::@3 to mode_sixsfred::@4 [phi:mode_sixsfred::@3->mode_sixsfred::@4]
b4_from_b3:
// [305] phi (byte*) mode_sixsfred::col#2 = (byte*) mode_sixsfred::col#3 [phi:mode_sixsfred::@3->mode_sixsfred::@4#0] -- register_copy
// [305] phi (byte) mode_sixsfred::cx#2 = (byte) 0 [phi:mode_sixsfred::@3->mode_sixsfred::@4#1] -- vbuxx=vbuc1
ldx #0
jmp b4
// [305] phi from mode_sixsfred::@4 to mode_sixsfred::@4 [phi:mode_sixsfred::@4->mode_sixsfred::@4]
b4_from_b4:
// [305] phi (byte*) mode_sixsfred::col#2 = (byte*) mode_sixsfred::col#1 [phi:mode_sixsfred::@4->mode_sixsfred::@4#0] -- register_copy
// [305] phi (byte) mode_sixsfred::cx#2 = (byte) mode_sixsfred::cx#1 [phi:mode_sixsfred::@4->mode_sixsfred::@4#1] -- register_copy
jmp b4
// mode_sixsfred::@4
b4:
// [306] (byte~) mode_sixsfred::$17 ← (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#4 -- vbuaa=vbuxx_plus_vbuz1
txa
clc
adc.z cy
// [307] (byte~) mode_sixsfred::$18 ← (byte~) mode_sixsfred::$17 & (byte) $f -- vbuaa=vbuaa_band_vbuc1
and #$f
// [308] *((byte*) mode_sixsfred::col#2) ← (byte~) mode_sixsfred::$18 -- _deref_pbuz1=vbuaa
ldy #0
sta (col),y
// [309] (byte*) mode_sixsfred::col#1 ← ++ (byte*) mode_sixsfred::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// [310] (byte) mode_sixsfred::cx#1 ← ++ (byte) mode_sixsfred::cx#2 -- vbuxx=_inc_vbuxx
inx
// [311] if((byte) mode_sixsfred::cx#1!=(byte) $28) goto mode_sixsfred::@4 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b4_from_b4
jmp b5
// mode_sixsfred::@5
b5:
// [312] (byte) mode_sixsfred::cy#1 ← ++ (byte) mode_sixsfred::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [313] if((byte) mode_sixsfred::cy#1!=(byte) $19) goto mode_sixsfred::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3_from_b5
// [314] phi from mode_sixsfred::@5 to mode_sixsfred::@6 [phi:mode_sixsfred::@5->mode_sixsfred::@6]
b6_from_b5:
// [314] phi (byte*) mode_sixsfred::gfxa#3 = (const byte*) mode_sixsfred::PLANEA#0 [phi:mode_sixsfred::@5->mode_sixsfred::@6#0] -- pbuz1=pbuc1
lda #<PLANEA
sta.z gfxa
lda #>PLANEA
sta.z gfxa+1
// [314] phi (byte) mode_sixsfred::ay#4 = (byte) 0 [phi:mode_sixsfred::@5->mode_sixsfred::@6#1] -- vbuz1=vbuc1
lda #0
sta.z ay
jmp b6
// [314] phi from mode_sixsfred::@8 to mode_sixsfred::@6 [phi:mode_sixsfred::@8->mode_sixsfred::@6]
b6_from_b8:
// [314] phi (byte*) mode_sixsfred::gfxa#3 = (byte*) mode_sixsfred::gfxa#1 [phi:mode_sixsfred::@8->mode_sixsfred::@6#0] -- register_copy
// [314] phi (byte) mode_sixsfred::ay#4 = (byte) mode_sixsfred::ay#1 [phi:mode_sixsfred::@8->mode_sixsfred::@6#1] -- register_copy
jmp b6
// mode_sixsfred::@6
b6:
// [315] phi from mode_sixsfred::@6 to mode_sixsfred::@7 [phi:mode_sixsfred::@6->mode_sixsfred::@7]
b7_from_b6:
// [315] phi (byte) mode_sixsfred::ax#2 = (byte) 0 [phi:mode_sixsfred::@6->mode_sixsfred::@7#0] -- vbuxx=vbuc1
ldx #0
// [315] phi (byte*) mode_sixsfred::gfxa#2 = (byte*) mode_sixsfred::gfxa#3 [phi:mode_sixsfred::@6->mode_sixsfred::@7#1] -- register_copy
jmp b7
// [315] phi from mode_sixsfred::@7 to mode_sixsfred::@7 [phi:mode_sixsfred::@7->mode_sixsfred::@7]
b7_from_b7:
// [315] phi (byte) mode_sixsfred::ax#2 = (byte) mode_sixsfred::ax#1 [phi:mode_sixsfred::@7->mode_sixsfred::@7#0] -- register_copy
// [315] phi (byte*) mode_sixsfred::gfxa#2 = (byte*) mode_sixsfred::gfxa#1 [phi:mode_sixsfred::@7->mode_sixsfred::@7#1] -- register_copy
jmp b7
// mode_sixsfred::@7
b7:
// [316] (byte~) mode_sixsfred::$21 ← (byte) mode_sixsfred::ay#4 >> (byte) 1 -- vbuaa=vbuz1_ror_1
lda.z ay
lsr
// [317] (byte) mode_sixsfred::row#0 ← (byte~) mode_sixsfred::$21 & (byte) 3 -- vbuaa=vbuaa_band_vbuc1
and #3
// [318] *((byte*) mode_sixsfred::gfxa#2) ← *((const byte[]) mode_sixsfred::row_bitmask#0 + (byte) mode_sixsfred::row#0) -- _deref_pbuz1=pbuc1_derefidx_vbuaa
tay
lda row_bitmask,y
ldy #0
sta (gfxa),y
// [319] (byte*) mode_sixsfred::gfxa#1 ← ++ (byte*) mode_sixsfred::gfxa#2 -- pbuz1=_inc_pbuz1
inc.z gfxa
bne !+
inc.z gfxa+1
!:
// [320] (byte) mode_sixsfred::ax#1 ← ++ (byte) mode_sixsfred::ax#2 -- vbuxx=_inc_vbuxx
inx
// [321] if((byte) mode_sixsfred::ax#1!=(byte) $28) goto mode_sixsfred::@7 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b7_from_b7
jmp b8
// mode_sixsfred::@8
b8:
// [322] (byte) mode_sixsfred::ay#1 ← ++ (byte) mode_sixsfred::ay#4 -- vbuz1=_inc_vbuz1
inc.z ay
// [323] if((byte) mode_sixsfred::ay#1!=(byte) $c8) goto mode_sixsfred::@6 -- vbuz1_neq_vbuc1_then_la1
lda #$c8
cmp.z ay
bne b6_from_b8
// [324] phi from mode_sixsfred::@8 to mode_sixsfred::@9 [phi:mode_sixsfred::@8->mode_sixsfred::@9]
b9_from_b8:
// [324] phi (byte) mode_sixsfred::by#4 = (byte) 0 [phi:mode_sixsfred::@8->mode_sixsfred::@9#0] -- vbuz1=vbuc1
lda #0
sta.z by
// [324] phi (byte*) mode_sixsfred::gfxb#3 = (const byte*) mode_sixsfred::PLANEB#0 [phi:mode_sixsfred::@8->mode_sixsfred::@9#1] -- pbuz1=pbuc1
lda #<PLANEB
sta.z gfxb
lda #>PLANEB
sta.z gfxb+1
jmp b9
// [324] phi from mode_sixsfred::@11 to mode_sixsfred::@9 [phi:mode_sixsfred::@11->mode_sixsfred::@9]
b9_from_b11:
// [324] phi (byte) mode_sixsfred::by#4 = (byte) mode_sixsfred::by#1 [phi:mode_sixsfred::@11->mode_sixsfred::@9#0] -- register_copy
// [324] phi (byte*) mode_sixsfred::gfxb#3 = (byte*) mode_sixsfred::gfxb#1 [phi:mode_sixsfred::@11->mode_sixsfred::@9#1] -- register_copy
jmp b9
// mode_sixsfred::@9
b9:
// [325] phi from mode_sixsfred::@9 to mode_sixsfred::@10 [phi:mode_sixsfred::@9->mode_sixsfred::@10]
b10_from_b9:
// [325] phi (byte) mode_sixsfred::bx#2 = (byte) 0 [phi:mode_sixsfred::@9->mode_sixsfred::@10#0] -- vbuxx=vbuc1
ldx #0
// [325] phi (byte*) mode_sixsfred::gfxb#2 = (byte*) mode_sixsfred::gfxb#3 [phi:mode_sixsfred::@9->mode_sixsfred::@10#1] -- register_copy
jmp b10
// [325] phi from mode_sixsfred::@10 to mode_sixsfred::@10 [phi:mode_sixsfred::@10->mode_sixsfred::@10]
b10_from_b10:
// [325] phi (byte) mode_sixsfred::bx#2 = (byte) mode_sixsfred::bx#1 [phi:mode_sixsfred::@10->mode_sixsfred::@10#0] -- register_copy
// [325] phi (byte*) mode_sixsfred::gfxb#2 = (byte*) mode_sixsfred::gfxb#1 [phi:mode_sixsfred::@10->mode_sixsfred::@10#1] -- register_copy
jmp b10
// mode_sixsfred::@10
b10:
// [326] *((byte*) mode_sixsfred::gfxb#2) ← (byte) $1b -- _deref_pbuz1=vbuc1
lda #$1b
ldy #0
sta (gfxb),y
// [327] (byte*) mode_sixsfred::gfxb#1 ← ++ (byte*) mode_sixsfred::gfxb#2 -- pbuz1=_inc_pbuz1
inc.z gfxb
bne !+
inc.z gfxb+1
!:
// [328] (byte) mode_sixsfred::bx#1 ← ++ (byte) mode_sixsfred::bx#2 -- vbuxx=_inc_vbuxx
inx
// [329] if((byte) mode_sixsfred::bx#1!=(byte) $28) goto mode_sixsfred::@10 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b10_from_b10
jmp b11
// mode_sixsfred::@11
b11:
// [330] (byte) mode_sixsfred::by#1 ← ++ (byte) mode_sixsfred::by#4 -- vbuz1=_inc_vbuz1
inc.z by
// [331] if((byte) mode_sixsfred::by#1!=(byte) $c8) goto mode_sixsfred::@9 -- vbuz1_neq_vbuc1_then_la1
lda #$c8
cmp.z by
bne b9_from_b11
// [332] phi from mode_sixsfred::@11 to mode_sixsfred::@12 [phi:mode_sixsfred::@11->mode_sixsfred::@12]
b12_from_b11:
jmp b12
// mode_sixsfred::@12
b12:
// [333] call mode_ctrl
// [155] phi from mode_sixsfred::@12 to mode_ctrl [phi:mode_sixsfred::@12->mode_ctrl]
mode_ctrl_from_b12:
// [155] phi (byte) dtv_control#144 = (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 [phi:mode_sixsfred::@12->mode_ctrl#0] -- vbuz1=vbuc1
lda #DTV_HIGHCOLOR|DTV_LINEAR
sta.z dtv_control
jsr mode_ctrl
jmp breturn
// mode_sixsfred::@return
breturn:
// [334] return
rts
row_bitmask: .byte 0, $55, $aa, $ff
}
// mode_twoplanebitmap
// Two Plane Bitmap - generated from the two DTV linear graphics plane counters
// Two Plane Bitmap Mode (CHUNK/COLDIS/MCM = 0, ECM/BMM/HICOL/LINEAR = 1)
// Resolution: 320x200
// Linear Adressing
// GfxData/PlaneA Pixel Shifter (1), CharData/PlaneB Pixel Shifter (1):
// - Plane A = 0 Plane B = 0: 8bpp BgColor0[7:0]
// - Plane A = 0 Plane B = 1: 8bpp "0000" & ColorData[7:4]
// - Plane A = 1 Plane B = 0: 8bpp "0000" & ColorData[3:0]
// - Plane A = 1 Plane B = 1: 8bpp BgColor1[7:0]
mode_twoplanebitmap: {
.label PLANEA = $4000
.label PLANEB = $6000
.label COLORS = $8000
.label _17 = $e
.label col = $b
.label cy = 6
.label gfxa = 9
.label ay = 7
.label gfxb = 4
.label by = 2
// [335] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR|DTV_LINEAR
sta DTV_CONTROL
// [336] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Mode
lda #VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [337] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [338] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane A Counter
lda #0
sta DTV_PLANEA_START_LO
// [339] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_twoplanebitmap::PLANEA#0 -- _deref_pbuc1=vbuc2
lda #>PLANEA
sta DTV_PLANEA_START_MI
// [340] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_START_HI
// [341] *((const byte*) DTV_PLANEA_STEP#0) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEA_STEP
// [342] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_LO
// [343] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_HI
// [344] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
lda #0
sta DTV_PLANEB_START_LO
// [345] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_twoplanebitmap::PLANEB#0 -- _deref_pbuc1=vbuc2
lda #>PLANEB
sta DTV_PLANEB_START_MI
// [346] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_HI
// [347] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEB_STEP
// [348] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// [349] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_HI
// [350] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_twoplanebitmap::COLORS#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// [351] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [352] phi from mode_twoplanebitmap to mode_twoplanebitmap::@1 [phi:mode_twoplanebitmap->mode_twoplanebitmap::@1]
b1_from_mode_twoplanebitmap:
// [352] phi (byte) mode_twoplanebitmap::i#2 = (byte) 0 [phi:mode_twoplanebitmap->mode_twoplanebitmap::@1#0] -- vbuxx=vbuc1
ldx #0
jmp b1
// DTV Palette - Grey Tones
// [352] phi from mode_twoplanebitmap::@1 to mode_twoplanebitmap::@1 [phi:mode_twoplanebitmap::@1->mode_twoplanebitmap::@1]
b1_from_b1:
// [352] phi (byte) mode_twoplanebitmap::i#2 = (byte) mode_twoplanebitmap::i#1 [phi:mode_twoplanebitmap::@1->mode_twoplanebitmap::@1#0] -- register_copy
jmp b1
// mode_twoplanebitmap::@1
b1:
// [353] *((const byte*) DTV_PALETTE#0 + (byte) mode_twoplanebitmap::i#2) ← (byte) mode_twoplanebitmap::i#2 -- pbuc1_derefidx_vbuxx=vbuxx
txa
sta DTV_PALETTE,x
// [354] (byte) mode_twoplanebitmap::i#1 ← ++ (byte) mode_twoplanebitmap::i#2 -- vbuxx=_inc_vbuxx
inx
// [355] if((byte) mode_twoplanebitmap::i#1!=(byte) $10) goto mode_twoplanebitmap::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1_from_b1
jmp b2
// mode_twoplanebitmap::@2
b2:
// [356] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDERCOL
// [357] *((const byte*) BGCOL1#0) ← (byte) $70 -- _deref_pbuc1=vbuc2
lda #$70
sta BGCOL1
// [358] *((const byte*) BGCOL2#0) ← (byte) $d4 -- _deref_pbuc1=vbuc2
// Color for bits 00
lda #$d4
sta BGCOL2
// [359] phi from mode_twoplanebitmap::@2 to mode_twoplanebitmap::@3 [phi:mode_twoplanebitmap::@2->mode_twoplanebitmap::@3]
b3_from_b2:
// [359] phi (byte*) mode_twoplanebitmap::col#3 = (const byte*) mode_twoplanebitmap::COLORS#0 [phi:mode_twoplanebitmap::@2->mode_twoplanebitmap::@3#0] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [359] phi (byte) mode_twoplanebitmap::cy#4 = (byte) 0 [phi:mode_twoplanebitmap::@2->mode_twoplanebitmap::@3#1] -- vbuz1=vbuc1
lda #0
sta.z cy
jmp b3
// [359] phi from mode_twoplanebitmap::@5 to mode_twoplanebitmap::@3 [phi:mode_twoplanebitmap::@5->mode_twoplanebitmap::@3]
b3_from_b5:
// [359] phi (byte*) mode_twoplanebitmap::col#3 = (byte*) mode_twoplanebitmap::col#1 [phi:mode_twoplanebitmap::@5->mode_twoplanebitmap::@3#0] -- register_copy
// [359] phi (byte) mode_twoplanebitmap::cy#4 = (byte) mode_twoplanebitmap::cy#1 [phi:mode_twoplanebitmap::@5->mode_twoplanebitmap::@3#1] -- register_copy
jmp b3
// mode_twoplanebitmap::@3
b3:
// [360] phi from mode_twoplanebitmap::@3 to mode_twoplanebitmap::@4 [phi:mode_twoplanebitmap::@3->mode_twoplanebitmap::@4]
b4_from_b3:
// [360] phi (byte*) mode_twoplanebitmap::col#2 = (byte*) mode_twoplanebitmap::col#3 [phi:mode_twoplanebitmap::@3->mode_twoplanebitmap::@4#0] -- register_copy
// [360] phi (byte) mode_twoplanebitmap::cx#2 = (byte) 0 [phi:mode_twoplanebitmap::@3->mode_twoplanebitmap::@4#1] -- vbuxx=vbuc1
ldx #0
jmp b4
// [360] phi from mode_twoplanebitmap::@4 to mode_twoplanebitmap::@4 [phi:mode_twoplanebitmap::@4->mode_twoplanebitmap::@4]
b4_from_b4:
// [360] phi (byte*) mode_twoplanebitmap::col#2 = (byte*) mode_twoplanebitmap::col#1 [phi:mode_twoplanebitmap::@4->mode_twoplanebitmap::@4#0] -- register_copy
// [360] phi (byte) mode_twoplanebitmap::cx#2 = (byte) mode_twoplanebitmap::cx#1 [phi:mode_twoplanebitmap::@4->mode_twoplanebitmap::@4#1] -- register_copy
jmp b4
// mode_twoplanebitmap::@4
b4:
// [361] (byte~) mode_twoplanebitmap::$16 ← (byte) mode_twoplanebitmap::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// [362] (byte~) mode_twoplanebitmap::$17 ← (byte~) mode_twoplanebitmap::$16 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z _17
// [363] (byte~) mode_twoplanebitmap::$18 ← (byte) mode_twoplanebitmap::cx#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// [364] (byte~) mode_twoplanebitmap::$19 ← (byte~) mode_twoplanebitmap::$17 | (byte~) mode_twoplanebitmap::$18 -- vbuaa=vbuz1_bor_vbuaa
ora.z _17
// [365] *((byte*) mode_twoplanebitmap::col#2) ← (byte~) mode_twoplanebitmap::$19 -- _deref_pbuz1=vbuaa
ldy #0
sta (col),y
// [366] (byte*) mode_twoplanebitmap::col#1 ← ++ (byte*) mode_twoplanebitmap::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// [367] (byte) mode_twoplanebitmap::cx#1 ← ++ (byte) mode_twoplanebitmap::cx#2 -- vbuxx=_inc_vbuxx
inx
// [368] if((byte) mode_twoplanebitmap::cx#1!=(byte) $28) goto mode_twoplanebitmap::@4 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b4_from_b4
jmp b5
// mode_twoplanebitmap::@5
b5:
// [369] (byte) mode_twoplanebitmap::cy#1 ← ++ (byte) mode_twoplanebitmap::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [370] if((byte) mode_twoplanebitmap::cy#1!=(byte) $19) goto mode_twoplanebitmap::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3_from_b5
// [371] phi from mode_twoplanebitmap::@5 to mode_twoplanebitmap::@6 [phi:mode_twoplanebitmap::@5->mode_twoplanebitmap::@6]
b6_from_b5:
// [371] phi (byte*) mode_twoplanebitmap::gfxa#7 = (const byte*) mode_twoplanebitmap::PLANEA#0 [phi:mode_twoplanebitmap::@5->mode_twoplanebitmap::@6#0] -- pbuz1=pbuc1
lda #<PLANEA
sta.z gfxa
lda #>PLANEA
sta.z gfxa+1
// [371] phi (byte) mode_twoplanebitmap::ay#5 = (byte) 0 [phi:mode_twoplanebitmap::@5->mode_twoplanebitmap::@6#1] -- vbuz1=vbuc1
lda #0
sta.z ay
jmp b6
// [371] phi from mode_twoplanebitmap::@11 to mode_twoplanebitmap::@6 [phi:mode_twoplanebitmap::@11->mode_twoplanebitmap::@6]
b6_from_b11:
// [371] phi (byte*) mode_twoplanebitmap::gfxa#7 = (byte*) mode_twoplanebitmap::gfxa#6 [phi:mode_twoplanebitmap::@11->mode_twoplanebitmap::@6#0] -- register_copy
// [371] phi (byte) mode_twoplanebitmap::ay#5 = (byte) mode_twoplanebitmap::ay#1 [phi:mode_twoplanebitmap::@11->mode_twoplanebitmap::@6#1] -- register_copy
jmp b6
// mode_twoplanebitmap::@6
b6:
// [372] phi from mode_twoplanebitmap::@6 to mode_twoplanebitmap::@7 [phi:mode_twoplanebitmap::@6->mode_twoplanebitmap::@7]
b7_from_b6:
// [372] phi (byte) mode_twoplanebitmap::ax#2 = (byte) 0 [phi:mode_twoplanebitmap::@6->mode_twoplanebitmap::@7#0] -- vbuxx=vbuc1
ldx #0
// [372] phi (byte*) mode_twoplanebitmap::gfxa#3 = (byte*) mode_twoplanebitmap::gfxa#7 [phi:mode_twoplanebitmap::@6->mode_twoplanebitmap::@7#1] -- register_copy
jmp b7
// [372] phi from mode_twoplanebitmap::@9 to mode_twoplanebitmap::@7 [phi:mode_twoplanebitmap::@9->mode_twoplanebitmap::@7]
b7_from_b9:
// [372] phi (byte) mode_twoplanebitmap::ax#2 = (byte) mode_twoplanebitmap::ax#1 [phi:mode_twoplanebitmap::@9->mode_twoplanebitmap::@7#0] -- register_copy
// [372] phi (byte*) mode_twoplanebitmap::gfxa#3 = (byte*) mode_twoplanebitmap::gfxa#6 [phi:mode_twoplanebitmap::@9->mode_twoplanebitmap::@7#1] -- register_copy
jmp b7
// mode_twoplanebitmap::@7
b7:
// [373] (byte~) mode_twoplanebitmap::$22 ← (byte) mode_twoplanebitmap::ay#5 & (byte) 4 -- vbuaa=vbuz1_band_vbuc1
lda #4
and.z ay
// [374] if((byte~) mode_twoplanebitmap::$22==(byte) 0) goto mode_twoplanebitmap::@8 -- vbuaa_eq_0_then_la1
cmp #0
beq b8
jmp b10
// mode_twoplanebitmap::@10
b10:
// [375] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte) $ff -- _deref_pbuz1=vbuc1
lda #$ff
ldy #0
sta (gfxa),y
// [376] (byte*) mode_twoplanebitmap::gfxa#2 ← ++ (byte*) mode_twoplanebitmap::gfxa#3 -- pbuz1=_inc_pbuz1
inc.z gfxa
bne !+
inc.z gfxa+1
!:
// [377] phi from mode_twoplanebitmap::@10 mode_twoplanebitmap::@8 to mode_twoplanebitmap::@9 [phi:mode_twoplanebitmap::@10/mode_twoplanebitmap::@8->mode_twoplanebitmap::@9]
b9_from_b10:
b9_from_b8:
// [377] phi (byte*) mode_twoplanebitmap::gfxa#6 = (byte*) mode_twoplanebitmap::gfxa#2 [phi:mode_twoplanebitmap::@10/mode_twoplanebitmap::@8->mode_twoplanebitmap::@9#0] -- register_copy
jmp b9
// mode_twoplanebitmap::@9
b9:
// [378] (byte) mode_twoplanebitmap::ax#1 ← ++ (byte) mode_twoplanebitmap::ax#2 -- vbuxx=_inc_vbuxx
inx
// [379] if((byte) mode_twoplanebitmap::ax#1!=(byte) $28) goto mode_twoplanebitmap::@7 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b7_from_b9
jmp b11
// mode_twoplanebitmap::@11
b11:
// [380] (byte) mode_twoplanebitmap::ay#1 ← ++ (byte) mode_twoplanebitmap::ay#5 -- vbuz1=_inc_vbuz1
inc.z ay
// [381] if((byte) mode_twoplanebitmap::ay#1!=(byte) $c8) goto mode_twoplanebitmap::@6 -- vbuz1_neq_vbuc1_then_la1
lda #$c8
cmp.z ay
bne b6_from_b11
// [382] phi from mode_twoplanebitmap::@11 to mode_twoplanebitmap::@12 [phi:mode_twoplanebitmap::@11->mode_twoplanebitmap::@12]
b12_from_b11:
// [382] phi (byte) mode_twoplanebitmap::by#4 = (byte) 0 [phi:mode_twoplanebitmap::@11->mode_twoplanebitmap::@12#0] -- vbuz1=vbuc1
lda #0
sta.z by
// [382] phi (byte*) mode_twoplanebitmap::gfxb#3 = (const byte*) mode_twoplanebitmap::PLANEB#0 [phi:mode_twoplanebitmap::@11->mode_twoplanebitmap::@12#1] -- pbuz1=pbuc1
lda #<PLANEB
sta.z gfxb
lda #>PLANEB
sta.z gfxb+1
jmp b12
// [382] phi from mode_twoplanebitmap::@14 to mode_twoplanebitmap::@12 [phi:mode_twoplanebitmap::@14->mode_twoplanebitmap::@12]
b12_from_b14:
// [382] phi (byte) mode_twoplanebitmap::by#4 = (byte) mode_twoplanebitmap::by#1 [phi:mode_twoplanebitmap::@14->mode_twoplanebitmap::@12#0] -- register_copy
// [382] phi (byte*) mode_twoplanebitmap::gfxb#3 = (byte*) mode_twoplanebitmap::gfxb#1 [phi:mode_twoplanebitmap::@14->mode_twoplanebitmap::@12#1] -- register_copy
jmp b12
// mode_twoplanebitmap::@12
b12:
// [383] phi from mode_twoplanebitmap::@12 to mode_twoplanebitmap::@13 [phi:mode_twoplanebitmap::@12->mode_twoplanebitmap::@13]
b13_from_b12:
// [383] phi (byte) mode_twoplanebitmap::bx#2 = (byte) 0 [phi:mode_twoplanebitmap::@12->mode_twoplanebitmap::@13#0] -- vbuxx=vbuc1
ldx #0
// [383] phi (byte*) mode_twoplanebitmap::gfxb#2 = (byte*) mode_twoplanebitmap::gfxb#3 [phi:mode_twoplanebitmap::@12->mode_twoplanebitmap::@13#1] -- register_copy
jmp b13
// [383] phi from mode_twoplanebitmap::@13 to mode_twoplanebitmap::@13 [phi:mode_twoplanebitmap::@13->mode_twoplanebitmap::@13]
b13_from_b13:
// [383] phi (byte) mode_twoplanebitmap::bx#2 = (byte) mode_twoplanebitmap::bx#1 [phi:mode_twoplanebitmap::@13->mode_twoplanebitmap::@13#0] -- register_copy
// [383] phi (byte*) mode_twoplanebitmap::gfxb#2 = (byte*) mode_twoplanebitmap::gfxb#1 [phi:mode_twoplanebitmap::@13->mode_twoplanebitmap::@13#1] -- register_copy
jmp b13
// mode_twoplanebitmap::@13
b13:
// [384] *((byte*) mode_twoplanebitmap::gfxb#2) ← (byte) $f -- _deref_pbuz1=vbuc1
lda #$f
ldy #0
sta (gfxb),y
// [385] (byte*) mode_twoplanebitmap::gfxb#1 ← ++ (byte*) mode_twoplanebitmap::gfxb#2 -- pbuz1=_inc_pbuz1
inc.z gfxb
bne !+
inc.z gfxb+1
!:
// [386] (byte) mode_twoplanebitmap::bx#1 ← ++ (byte) mode_twoplanebitmap::bx#2 -- vbuxx=_inc_vbuxx
inx
// [387] if((byte) mode_twoplanebitmap::bx#1!=(byte) $28) goto mode_twoplanebitmap::@13 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b13_from_b13
jmp b14
// mode_twoplanebitmap::@14
b14:
// [388] (byte) mode_twoplanebitmap::by#1 ← ++ (byte) mode_twoplanebitmap::by#4 -- vbuz1=_inc_vbuz1
inc.z by
// [389] if((byte) mode_twoplanebitmap::by#1!=(byte) $c8) goto mode_twoplanebitmap::@12 -- vbuz1_neq_vbuc1_then_la1
lda #$c8
cmp.z by
bne b12_from_b14
// [390] phi from mode_twoplanebitmap::@14 to mode_twoplanebitmap::@15 [phi:mode_twoplanebitmap::@14->mode_twoplanebitmap::@15]
b15_from_b14:
jmp b15
// mode_twoplanebitmap::@15
b15:
// [391] call mode_ctrl
// [155] phi from mode_twoplanebitmap::@15 to mode_ctrl [phi:mode_twoplanebitmap::@15->mode_ctrl]
mode_ctrl_from_b15:
// [155] phi (byte) dtv_control#144 = (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 [phi:mode_twoplanebitmap::@15->mode_ctrl#0] -- vbuz1=vbuc1
lda #DTV_HIGHCOLOR|DTV_LINEAR
sta.z dtv_control
jsr mode_ctrl
jmp breturn
// mode_twoplanebitmap::@return
breturn:
// [392] return
rts
// mode_twoplanebitmap::@8
b8:
// [393] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte) 0 -- _deref_pbuz1=vbuc1
lda #0
ldy #0
sta (gfxa),y
// [394] (byte*) mode_twoplanebitmap::gfxa#1 ← ++ (byte*) mode_twoplanebitmap::gfxa#3 -- pbuz1=_inc_pbuz1
inc.z gfxa
bne !+
inc.z gfxa+1
!:
jmp b9_from_b8
}
// mode_sixsfred2
// Sixs Fred Mode 2 - 8bpp Packed Bitmap - Generated from the two DTV linear graphics plane counters
// Two Plane MultiColor Bitmap - 8bpp Packed Bitmap (CHUNK/COLDIS/HICOL = 0, ECM/BMM/MCM/LINEAR = 1)
// Resolution: 160x200
// Linear Adressing
// PlaneA Pixel Shifter (2), PlaneB Pixel Shifter (2):
// - 8bpp color (PlaneB[1:0],ColorData[5:4],PlaneA[1:0],ColorData[1:0])
mode_sixsfred2: {
.label PLANEA = $4000
.label PLANEB = $6000
.label COLORS = $8000
.label _16 = 7
.label col = 9
.label cy = 2
.label gfxa = 4
.label ay = 3
.label gfxb = $b
.label by = 6
// [395] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2
lda #DTV_LINEAR
sta DTV_CONTROL
// [396] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Mode
lda #VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [397] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_MCM|VIC_CSEL
sta VIC_CONTROL2
// [398] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane A Counter
lda #0
sta DTV_PLANEA_START_LO
// [399] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_sixsfred2::PLANEA#0 -- _deref_pbuc1=vbuc2
lda #>PLANEA
sta DTV_PLANEA_START_MI
// [400] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_START_HI
// [401] *((const byte*) DTV_PLANEA_STEP#0) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEA_STEP
// [402] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_LO
// [403] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_HI
// [404] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
lda #0
sta DTV_PLANEB_START_LO
// [405] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_sixsfred2::PLANEB#0 -- _deref_pbuc1=vbuc2
lda #>PLANEB
sta DTV_PLANEB_START_MI
// [406] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_HI
// [407] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEB_STEP
// [408] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// [409] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_HI
// [410] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_sixsfred2::COLORS#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// [411] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [412] phi from mode_sixsfred2 to mode_sixsfred2::@1 [phi:mode_sixsfred2->mode_sixsfred2::@1]
b1_from_mode_sixsfred2:
// [412] phi (byte) mode_sixsfred2::i#2 = (byte) 0 [phi:mode_sixsfred2->mode_sixsfred2::@1#0] -- vbuxx=vbuc1
ldx #0
jmp b1
// DTV Palette - Grey Tones
// [412] phi from mode_sixsfred2::@1 to mode_sixsfred2::@1 [phi:mode_sixsfred2::@1->mode_sixsfred2::@1]
b1_from_b1:
// [412] phi (byte) mode_sixsfred2::i#2 = (byte) mode_sixsfred2::i#1 [phi:mode_sixsfred2::@1->mode_sixsfred2::@1#0] -- register_copy
jmp b1
// mode_sixsfred2::@1
b1:
// [413] *((const byte*) DTV_PALETTE#0 + (byte) mode_sixsfred2::i#2) ← (byte) mode_sixsfred2::i#2 -- pbuc1_derefidx_vbuxx=vbuxx
txa
sta DTV_PALETTE,x
// [414] (byte) mode_sixsfred2::i#1 ← ++ (byte) mode_sixsfred2::i#2 -- vbuxx=_inc_vbuxx
inx
// [415] if((byte) mode_sixsfred2::i#1!=(byte) $10) goto mode_sixsfred2::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1_from_b1
jmp b2
// mode_sixsfred2::@2
b2:
// [416] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDERCOL
// [417] phi from mode_sixsfred2::@2 to mode_sixsfred2::@3 [phi:mode_sixsfred2::@2->mode_sixsfred2::@3]
b3_from_b2:
// [417] phi (byte*) mode_sixsfred2::col#3 = (const byte*) mode_sixsfred2::COLORS#0 [phi:mode_sixsfred2::@2->mode_sixsfred2::@3#0] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [417] phi (byte) mode_sixsfred2::cy#4 = (byte) 0 [phi:mode_sixsfred2::@2->mode_sixsfred2::@3#1] -- vbuz1=vbuc1
lda #0
sta.z cy
jmp b3
// [417] phi from mode_sixsfred2::@5 to mode_sixsfred2::@3 [phi:mode_sixsfred2::@5->mode_sixsfred2::@3]
b3_from_b5:
// [417] phi (byte*) mode_sixsfred2::col#3 = (byte*) mode_sixsfred2::col#1 [phi:mode_sixsfred2::@5->mode_sixsfred2::@3#0] -- register_copy
// [417] phi (byte) mode_sixsfred2::cy#4 = (byte) mode_sixsfred2::cy#1 [phi:mode_sixsfred2::@5->mode_sixsfred2::@3#1] -- register_copy
jmp b3
// mode_sixsfred2::@3
b3:
// [418] phi from mode_sixsfred2::@3 to mode_sixsfred2::@4 [phi:mode_sixsfred2::@3->mode_sixsfred2::@4]
b4_from_b3:
// [418] phi (byte*) mode_sixsfred2::col#2 = (byte*) mode_sixsfred2::col#3 [phi:mode_sixsfred2::@3->mode_sixsfred2::@4#0] -- register_copy
// [418] phi (byte) mode_sixsfred2::cx#2 = (byte) 0 [phi:mode_sixsfred2::@3->mode_sixsfred2::@4#1] -- vbuxx=vbuc1
ldx #0
jmp b4
// [418] phi from mode_sixsfred2::@4 to mode_sixsfred2::@4 [phi:mode_sixsfred2::@4->mode_sixsfred2::@4]
b4_from_b4:
// [418] phi (byte*) mode_sixsfred2::col#2 = (byte*) mode_sixsfred2::col#1 [phi:mode_sixsfred2::@4->mode_sixsfred2::@4#0] -- register_copy
// [418] phi (byte) mode_sixsfred2::cx#2 = (byte) mode_sixsfred2::cx#1 [phi:mode_sixsfred2::@4->mode_sixsfred2::@4#1] -- register_copy
jmp b4
// mode_sixsfred2::@4
b4:
// [419] (byte~) mode_sixsfred2::$15 ← (byte) mode_sixsfred2::cx#2 & (byte) 3 -- vbuaa=vbuxx_band_vbuc1
txa
and #3
// [420] (byte~) mode_sixsfred2::$16 ← (byte~) mode_sixsfred2::$15 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z _16
// [421] (byte~) mode_sixsfred2::$17 ← (byte) mode_sixsfred2::cy#4 & (byte) 3 -- vbuaa=vbuz1_band_vbuc1
lda #3
and.z cy
// [422] (byte~) mode_sixsfred2::$18 ← (byte~) mode_sixsfred2::$16 | (byte~) mode_sixsfred2::$17 -- vbuaa=vbuz1_bor_vbuaa
ora.z _16
// [423] *((byte*) mode_sixsfred2::col#2) ← (byte~) mode_sixsfred2::$18 -- _deref_pbuz1=vbuaa
ldy #0
sta (col),y
// [424] (byte*) mode_sixsfred2::col#1 ← ++ (byte*) mode_sixsfred2::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// [425] (byte) mode_sixsfred2::cx#1 ← ++ (byte) mode_sixsfred2::cx#2 -- vbuxx=_inc_vbuxx
inx
// [426] if((byte) mode_sixsfred2::cx#1!=(byte) $28) goto mode_sixsfred2::@4 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b4_from_b4
jmp b5
// mode_sixsfred2::@5
b5:
// [427] (byte) mode_sixsfred2::cy#1 ← ++ (byte) mode_sixsfred2::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [428] if((byte) mode_sixsfred2::cy#1!=(byte) $19) goto mode_sixsfred2::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3_from_b5
// [429] phi from mode_sixsfred2::@5 to mode_sixsfred2::@6 [phi:mode_sixsfred2::@5->mode_sixsfred2::@6]
b6_from_b5:
// [429] phi (byte*) mode_sixsfred2::gfxa#3 = (const byte*) mode_sixsfred2::PLANEA#0 [phi:mode_sixsfred2::@5->mode_sixsfred2::@6#0] -- pbuz1=pbuc1
lda #<PLANEA
sta.z gfxa
lda #>PLANEA
sta.z gfxa+1
// [429] phi (byte) mode_sixsfred2::ay#4 = (byte) 0 [phi:mode_sixsfred2::@5->mode_sixsfred2::@6#1] -- vbuz1=vbuc1
lda #0
sta.z ay
jmp b6
// [429] phi from mode_sixsfred2::@8 to mode_sixsfred2::@6 [phi:mode_sixsfred2::@8->mode_sixsfred2::@6]
b6_from_b8:
// [429] phi (byte*) mode_sixsfred2::gfxa#3 = (byte*) mode_sixsfred2::gfxa#1 [phi:mode_sixsfred2::@8->mode_sixsfred2::@6#0] -- register_copy
// [429] phi (byte) mode_sixsfred2::ay#4 = (byte) mode_sixsfred2::ay#1 [phi:mode_sixsfred2::@8->mode_sixsfred2::@6#1] -- register_copy
jmp b6
// mode_sixsfred2::@6
b6:
// [430] phi from mode_sixsfred2::@6 to mode_sixsfred2::@7 [phi:mode_sixsfred2::@6->mode_sixsfred2::@7]
b7_from_b6:
// [430] phi (byte) mode_sixsfred2::ax#2 = (byte) 0 [phi:mode_sixsfred2::@6->mode_sixsfred2::@7#0] -- vbuxx=vbuc1
ldx #0
// [430] phi (byte*) mode_sixsfred2::gfxa#2 = (byte*) mode_sixsfred2::gfxa#3 [phi:mode_sixsfred2::@6->mode_sixsfred2::@7#1] -- register_copy
jmp b7
// [430] phi from mode_sixsfred2::@7 to mode_sixsfred2::@7 [phi:mode_sixsfred2::@7->mode_sixsfred2::@7]
b7_from_b7:
// [430] phi (byte) mode_sixsfred2::ax#2 = (byte) mode_sixsfred2::ax#1 [phi:mode_sixsfred2::@7->mode_sixsfred2::@7#0] -- register_copy
// [430] phi (byte*) mode_sixsfred2::gfxa#2 = (byte*) mode_sixsfred2::gfxa#1 [phi:mode_sixsfred2::@7->mode_sixsfred2::@7#1] -- register_copy
jmp b7
// mode_sixsfred2::@7
b7:
// [431] (byte~) mode_sixsfred2::$21 ← (byte) mode_sixsfred2::ay#4 >> (byte) 1 -- vbuaa=vbuz1_ror_1
lda.z ay
lsr
// [432] (byte) mode_sixsfred2::row#0 ← (byte~) mode_sixsfred2::$21 & (byte) 3 -- vbuaa=vbuaa_band_vbuc1
and #3
// [433] *((byte*) mode_sixsfred2::gfxa#2) ← *((const byte[]) mode_sixsfred2::row_bitmask#0 + (byte) mode_sixsfred2::row#0) -- _deref_pbuz1=pbuc1_derefidx_vbuaa
tay
lda row_bitmask,y
ldy #0
sta (gfxa),y
// [434] (byte*) mode_sixsfred2::gfxa#1 ← ++ (byte*) mode_sixsfred2::gfxa#2 -- pbuz1=_inc_pbuz1
inc.z gfxa
bne !+
inc.z gfxa+1
!:
// [435] (byte) mode_sixsfred2::ax#1 ← ++ (byte) mode_sixsfred2::ax#2 -- vbuxx=_inc_vbuxx
inx
// [436] if((byte) mode_sixsfred2::ax#1!=(byte) $28) goto mode_sixsfred2::@7 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b7_from_b7
jmp b8
// mode_sixsfred2::@8
b8:
// [437] (byte) mode_sixsfred2::ay#1 ← ++ (byte) mode_sixsfred2::ay#4 -- vbuz1=_inc_vbuz1
inc.z ay
// [438] if((byte) mode_sixsfred2::ay#1!=(byte) $c8) goto mode_sixsfred2::@6 -- vbuz1_neq_vbuc1_then_la1
lda #$c8
cmp.z ay
bne b6_from_b8
// [439] phi from mode_sixsfred2::@8 to mode_sixsfred2::@9 [phi:mode_sixsfred2::@8->mode_sixsfred2::@9]
b9_from_b8:
// [439] phi (byte) mode_sixsfred2::by#4 = (byte) 0 [phi:mode_sixsfred2::@8->mode_sixsfred2::@9#0] -- vbuz1=vbuc1
lda #0
sta.z by
// [439] phi (byte*) mode_sixsfred2::gfxb#3 = (const byte*) mode_sixsfred2::PLANEB#0 [phi:mode_sixsfred2::@8->mode_sixsfred2::@9#1] -- pbuz1=pbuc1
lda #<PLANEB
sta.z gfxb
lda #>PLANEB
sta.z gfxb+1
jmp b9
// [439] phi from mode_sixsfred2::@11 to mode_sixsfred2::@9 [phi:mode_sixsfred2::@11->mode_sixsfred2::@9]
b9_from_b11:
// [439] phi (byte) mode_sixsfred2::by#4 = (byte) mode_sixsfred2::by#1 [phi:mode_sixsfred2::@11->mode_sixsfred2::@9#0] -- register_copy
// [439] phi (byte*) mode_sixsfred2::gfxb#3 = (byte*) mode_sixsfred2::gfxb#1 [phi:mode_sixsfred2::@11->mode_sixsfred2::@9#1] -- register_copy
jmp b9
// mode_sixsfred2::@9
b9:
// [440] phi from mode_sixsfred2::@9 to mode_sixsfred2::@10 [phi:mode_sixsfred2::@9->mode_sixsfred2::@10]
b10_from_b9:
// [440] phi (byte) mode_sixsfred2::bx#2 = (byte) 0 [phi:mode_sixsfred2::@9->mode_sixsfred2::@10#0] -- vbuxx=vbuc1
ldx #0
// [440] phi (byte*) mode_sixsfred2::gfxb#2 = (byte*) mode_sixsfred2::gfxb#3 [phi:mode_sixsfred2::@9->mode_sixsfred2::@10#1] -- register_copy
jmp b10
// [440] phi from mode_sixsfred2::@10 to mode_sixsfred2::@10 [phi:mode_sixsfred2::@10->mode_sixsfred2::@10]
b10_from_b10:
// [440] phi (byte) mode_sixsfred2::bx#2 = (byte) mode_sixsfred2::bx#1 [phi:mode_sixsfred2::@10->mode_sixsfred2::@10#0] -- register_copy
// [440] phi (byte*) mode_sixsfred2::gfxb#2 = (byte*) mode_sixsfred2::gfxb#1 [phi:mode_sixsfred2::@10->mode_sixsfred2::@10#1] -- register_copy
jmp b10
// mode_sixsfred2::@10
b10:
// [441] *((byte*) mode_sixsfred2::gfxb#2) ← (byte) $1b -- _deref_pbuz1=vbuc1
lda #$1b
ldy #0
sta (gfxb),y
// [442] (byte*) mode_sixsfred2::gfxb#1 ← ++ (byte*) mode_sixsfred2::gfxb#2 -- pbuz1=_inc_pbuz1
inc.z gfxb
bne !+
inc.z gfxb+1
!:
// [443] (byte) mode_sixsfred2::bx#1 ← ++ (byte) mode_sixsfred2::bx#2 -- vbuxx=_inc_vbuxx
inx
// [444] if((byte) mode_sixsfred2::bx#1!=(byte) $28) goto mode_sixsfred2::@10 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b10_from_b10
jmp b11
// mode_sixsfred2::@11
b11:
// [445] (byte) mode_sixsfred2::by#1 ← ++ (byte) mode_sixsfred2::by#4 -- vbuz1=_inc_vbuz1
inc.z by
// [446] if((byte) mode_sixsfred2::by#1!=(byte) $c8) goto mode_sixsfred2::@9 -- vbuz1_neq_vbuc1_then_la1
lda #$c8
cmp.z by
bne b9_from_b11
// [447] phi from mode_sixsfred2::@11 to mode_sixsfred2::@12 [phi:mode_sixsfred2::@11->mode_sixsfred2::@12]
b12_from_b11:
jmp b12
// mode_sixsfred2::@12
b12:
// [448] call mode_ctrl
// [155] phi from mode_sixsfred2::@12 to mode_ctrl [phi:mode_sixsfred2::@12->mode_ctrl]
mode_ctrl_from_b12:
// [155] phi (byte) dtv_control#144 = (const byte) DTV_LINEAR#0 [phi:mode_sixsfred2::@12->mode_ctrl#0] -- vbuz1=vbuc1
lda #DTV_LINEAR
sta.z dtv_control
jsr mode_ctrl
jmp breturn
// mode_sixsfred2::@return
breturn:
// [449] return
rts
row_bitmask: .byte 0, $55, $aa, $ff
}
// mode_hicolmcchar
// High Color Multicolor Character Mode (LINEAR/CHUNK/COLDIS/BMM/ECM = 0, MCM/HICOL = 1)
// Resolution: 160x200 (320x200)
// Normal VIC Adressing:
// VicGfxData[16]: ( VicBank[1:0] & CharBase[2:0] & CharData[7:0] & RowCounter[2:0] )
//GfxData Pixel Shifter (1) if ColorData[3:3] = 0:
// - 0: 8bpp BgColor0[7:0]
// - 1: 8bpp ColorData[7:4] "0" & Color[2:0]
//GfxData Pixel Shifter (2) if ColorData[3:3] = 1:
// - 00: 8bpp BgColor0[7:0]
// - 01: 8bpp BgColor1[7:0]
// - 10: 8bpp BgColor2[7:0]
// - 11: 8bpp ColorData[7:4] "0" & Color[2:0]
mode_hicolmcchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $8400
.label _27 = 7
.label col = $b
.label ch = 4
.label cy = 3
// [450] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [451] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const byte*) mode_hicolmcchar::COLORS#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// [452] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [453] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR
sta DTV_CONTROL
// [454] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2_PORT_A_DDR
// [455] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_hicolmcchar::CHARSET#0/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2_PORT_A
// [456] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [457] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL|VIC_MCM
sta VIC_CONTROL2
// [458] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_hicolmcchar::CHARSET#0&(word) $3fff/(word) $400 -- _deref_pbuc1=vbuc2
// VIC Memory Pointers
lda #(CHARSET&$3fff)/$400
sta VIC_MEMORY
// [459] phi from mode_hicolmcchar to mode_hicolmcchar::@1 [phi:mode_hicolmcchar->mode_hicolmcchar::@1]
b1_from_mode_hicolmcchar:
// [459] phi (byte) mode_hicolmcchar::i#2 = (byte) 0 [phi:mode_hicolmcchar->mode_hicolmcchar::@1#0] -- vbuxx=vbuc1
ldx #0
jmp b1
// DTV Palette - Grey Tones
// [459] phi from mode_hicolmcchar::@1 to mode_hicolmcchar::@1 [phi:mode_hicolmcchar::@1->mode_hicolmcchar::@1]
b1_from_b1:
// [459] phi (byte) mode_hicolmcchar::i#2 = (byte) mode_hicolmcchar::i#1 [phi:mode_hicolmcchar::@1->mode_hicolmcchar::@1#0] -- register_copy
jmp b1
// mode_hicolmcchar::@1
b1:
// [460] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolmcchar::i#2) ← (byte) mode_hicolmcchar::i#2 -- pbuc1_derefidx_vbuxx=vbuxx
txa
sta DTV_PALETTE,x
// [461] (byte) mode_hicolmcchar::i#1 ← ++ (byte) mode_hicolmcchar::i#2 -- vbuxx=_inc_vbuxx
inx
// [462] if((byte) mode_hicolmcchar::i#1!=(byte) $10) goto mode_hicolmcchar::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1_from_b1
jmp b2
// mode_hicolmcchar::@2
b2:
// [463] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDERCOL
// [464] *((const byte*) BGCOL1#0) ← (byte) $50 -- _deref_pbuc1=vbuc2
lda #$50
sta BGCOL1
// [465] *((const byte*) BGCOL2#0) ← (byte) $54 -- _deref_pbuc1=vbuc2
lda #$54
sta BGCOL2
// [466] *((const byte*) BGCOL3#0) ← (byte) $58 -- _deref_pbuc1=vbuc2
lda #$58
sta BGCOL3
// [467] phi from mode_hicolmcchar::@2 to mode_hicolmcchar::@3 [phi:mode_hicolmcchar::@2->mode_hicolmcchar::@3]
b3_from_b2:
// [467] phi (byte*) mode_hicolmcchar::ch#3 = (const byte*) mode_hicolmcchar::SCREEN#0 [phi:mode_hicolmcchar::@2->mode_hicolmcchar::@3#0] -- pbuz1=pbuc1
lda #<SCREEN
sta.z ch
lda #>SCREEN
sta.z ch+1
// [467] phi (byte*) mode_hicolmcchar::col#3 = (const byte*) mode_hicolmcchar::COLORS#0 [phi:mode_hicolmcchar::@2->mode_hicolmcchar::@3#1] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [467] phi (byte) mode_hicolmcchar::cy#4 = (byte) 0 [phi:mode_hicolmcchar::@2->mode_hicolmcchar::@3#2] -- vbuz1=vbuc1
lda #0
sta.z cy
jmp b3
// [467] phi from mode_hicolmcchar::@5 to mode_hicolmcchar::@3 [phi:mode_hicolmcchar::@5->mode_hicolmcchar::@3]
b3_from_b5:
// [467] phi (byte*) mode_hicolmcchar::ch#3 = (byte*) mode_hicolmcchar::ch#1 [phi:mode_hicolmcchar::@5->mode_hicolmcchar::@3#0] -- register_copy
// [467] phi (byte*) mode_hicolmcchar::col#3 = (byte*) mode_hicolmcchar::col#1 [phi:mode_hicolmcchar::@5->mode_hicolmcchar::@3#1] -- register_copy
// [467] phi (byte) mode_hicolmcchar::cy#4 = (byte) mode_hicolmcchar::cy#1 [phi:mode_hicolmcchar::@5->mode_hicolmcchar::@3#2] -- register_copy
jmp b3
// mode_hicolmcchar::@3
b3:
// [468] phi from mode_hicolmcchar::@3 to mode_hicolmcchar::@4 [phi:mode_hicolmcchar::@3->mode_hicolmcchar::@4]
b4_from_b3:
// [468] phi (byte*) mode_hicolmcchar::ch#2 = (byte*) mode_hicolmcchar::ch#3 [phi:mode_hicolmcchar::@3->mode_hicolmcchar::@4#0] -- register_copy
// [468] phi (byte*) mode_hicolmcchar::col#2 = (byte*) mode_hicolmcchar::col#3 [phi:mode_hicolmcchar::@3->mode_hicolmcchar::@4#1] -- register_copy
// [468] phi (byte) mode_hicolmcchar::cx#2 = (byte) 0 [phi:mode_hicolmcchar::@3->mode_hicolmcchar::@4#2] -- vbuxx=vbuc1
ldx #0
jmp b4
// [468] phi from mode_hicolmcchar::@4 to mode_hicolmcchar::@4 [phi:mode_hicolmcchar::@4->mode_hicolmcchar::@4]
b4_from_b4:
// [468] phi (byte*) mode_hicolmcchar::ch#2 = (byte*) mode_hicolmcchar::ch#1 [phi:mode_hicolmcchar::@4->mode_hicolmcchar::@4#0] -- register_copy
// [468] phi (byte*) mode_hicolmcchar::col#2 = (byte*) mode_hicolmcchar::col#1 [phi:mode_hicolmcchar::@4->mode_hicolmcchar::@4#1] -- register_copy
// [468] phi (byte) mode_hicolmcchar::cx#2 = (byte) mode_hicolmcchar::cx#1 [phi:mode_hicolmcchar::@4->mode_hicolmcchar::@4#2] -- register_copy
jmp b4
// mode_hicolmcchar::@4
b4:
// [469] (byte~) mode_hicolmcchar::$26 ← (byte) mode_hicolmcchar::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// [470] (byte~) mode_hicolmcchar::$27 ← (byte~) mode_hicolmcchar::$26 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z _27
// [471] (byte~) mode_hicolmcchar::$28 ← (byte) mode_hicolmcchar::cx#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// [472] (byte) mode_hicolmcchar::v#0 ← (byte~) mode_hicolmcchar::$27 | (byte~) mode_hicolmcchar::$28 -- vbuaa=vbuz1_bor_vbuaa
ora.z _27
// [473] *((byte*) mode_hicolmcchar::col#2) ← (byte) mode_hicolmcchar::v#0 -- _deref_pbuz1=vbuaa
ldy #0
sta (col),y
// [474] (byte*) mode_hicolmcchar::col#1 ← ++ (byte*) mode_hicolmcchar::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// [475] *((byte*) mode_hicolmcchar::ch#2) ← (byte) mode_hicolmcchar::v#0 -- _deref_pbuz1=vbuaa
ldy #0
sta (ch),y
// [476] (byte*) mode_hicolmcchar::ch#1 ← ++ (byte*) mode_hicolmcchar::ch#2 -- pbuz1=_inc_pbuz1
inc.z ch
bne !+
inc.z ch+1
!:
// [477] (byte) mode_hicolmcchar::cx#1 ← ++ (byte) mode_hicolmcchar::cx#2 -- vbuxx=_inc_vbuxx
inx
// [478] if((byte) mode_hicolmcchar::cx#1!=(byte) $28) goto mode_hicolmcchar::@4 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b4_from_b4
jmp b5
// mode_hicolmcchar::@5
b5:
// [479] (byte) mode_hicolmcchar::cy#1 ← ++ (byte) mode_hicolmcchar::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [480] if((byte) mode_hicolmcchar::cy#1!=(byte) $19) goto mode_hicolmcchar::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3_from_b5
// [481] phi from mode_hicolmcchar::@5 to mode_hicolmcchar::@6 [phi:mode_hicolmcchar::@5->mode_hicolmcchar::@6]
b6_from_b5:
jmp b6
// mode_hicolmcchar::@6
b6:
// [482] call mode_ctrl
// [155] phi from mode_hicolmcchar::@6 to mode_ctrl [phi:mode_hicolmcchar::@6->mode_ctrl]
mode_ctrl_from_b6:
// [155] phi (byte) dtv_control#144 = (const byte) DTV_HIGHCOLOR#0 [phi:mode_hicolmcchar::@6->mode_ctrl#0] -- vbuz1=vbuc1
lda #DTV_HIGHCOLOR
sta.z dtv_control
jsr mode_ctrl
jmp breturn
// mode_hicolmcchar::@return
breturn:
// [483] return
rts
}
// mode_hicolecmchar
// High Color Extended Background Color Character Mode (LINEAR/CHUNK/COLDIS/MCM/BMM = 0, ECM/HICOL = 1)
// Resolution: 320x200
// Normal VIC Adressing:
// VicGfxData[16]: ( VicBank[1:0] & CharBase[2:0] & "00" & CharData[5:0] & RowCounter[2:0] )
// GfxData Pixel Shifter (1)
// - 0: 8bpp Background Color
// - CharData[7:6] 00: 8bpp BgColor0[7:0]
// - CharData[7:6] 01: 8bpp BgColor1[7:0]
// - CharData[7:6] 10: 8bpp BgColor2[7:0]
// - CharData[7:6] 11: 8bpp BgColor3[7:0]
// - 1: 8bpp ColorData[7:0]
mode_hicolecmchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $8400
.label _27 = 8
.label col = 4
.label ch = $b
.label cy = 6
// [484] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [485] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const byte*) mode_hicolecmchar::COLORS#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// [486] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [487] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR
sta DTV_CONTROL
// [488] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2_PORT_A_DDR
// [489] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_hicolecmchar::CHARSET#0/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2_PORT_A
// [490] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|VIC_ECM|3
sta VIC_CONTROL
// [491] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [492] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_hicolecmchar::CHARSET#0&(word) $3fff/(word) $400 -- _deref_pbuc1=vbuc2
// VIC Memory Pointers
lda #(CHARSET&$3fff)/$400
sta VIC_MEMORY
// [493] phi from mode_hicolecmchar to mode_hicolecmchar::@1 [phi:mode_hicolecmchar->mode_hicolecmchar::@1]
b1_from_mode_hicolecmchar:
// [493] phi (byte) mode_hicolecmchar::i#2 = (byte) 0 [phi:mode_hicolecmchar->mode_hicolecmchar::@1#0] -- vbuxx=vbuc1
ldx #0
jmp b1
// DTV Palette - Grey Tones
// [493] phi from mode_hicolecmchar::@1 to mode_hicolecmchar::@1 [phi:mode_hicolecmchar::@1->mode_hicolecmchar::@1]
b1_from_b1:
// [493] phi (byte) mode_hicolecmchar::i#2 = (byte) mode_hicolecmchar::i#1 [phi:mode_hicolecmchar::@1->mode_hicolecmchar::@1#0] -- register_copy
jmp b1
// mode_hicolecmchar::@1
b1:
// [494] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolecmchar::i#2) ← (byte) mode_hicolecmchar::i#2 -- pbuc1_derefidx_vbuxx=vbuxx
txa
sta DTV_PALETTE,x
// [495] (byte) mode_hicolecmchar::i#1 ← ++ (byte) mode_hicolecmchar::i#2 -- vbuxx=_inc_vbuxx
inx
// [496] if((byte) mode_hicolecmchar::i#1!=(byte) $10) goto mode_hicolecmchar::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1_from_b1
jmp b2
// mode_hicolecmchar::@2
b2:
// [497] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDERCOL
// [498] *((const byte*) BGCOL1#0) ← (byte) $50 -- _deref_pbuc1=vbuc2
lda #$50
sta BGCOL1
// [499] *((const byte*) BGCOL2#0) ← (byte) $54 -- _deref_pbuc1=vbuc2
lda #$54
sta BGCOL2
// [500] *((const byte*) BGCOL3#0) ← (byte) $58 -- _deref_pbuc1=vbuc2
lda #$58
sta BGCOL3
// [501] *((const byte*) BGCOL4#0) ← (byte) $5c -- _deref_pbuc1=vbuc2
lda #$5c
sta BGCOL4
// [502] phi from mode_hicolecmchar::@2 to mode_hicolecmchar::@3 [phi:mode_hicolecmchar::@2->mode_hicolecmchar::@3]
b3_from_b2:
// [502] phi (byte*) mode_hicolecmchar::ch#3 = (const byte*) mode_hicolecmchar::SCREEN#0 [phi:mode_hicolecmchar::@2->mode_hicolecmchar::@3#0] -- pbuz1=pbuc1
lda #<SCREEN
sta.z ch
lda #>SCREEN
sta.z ch+1
// [502] phi (byte*) mode_hicolecmchar::col#3 = (const byte*) mode_hicolecmchar::COLORS#0 [phi:mode_hicolecmchar::@2->mode_hicolecmchar::@3#1] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [502] phi (byte) mode_hicolecmchar::cy#4 = (byte) 0 [phi:mode_hicolecmchar::@2->mode_hicolecmchar::@3#2] -- vbuz1=vbuc1
lda #0
sta.z cy
jmp b3
// [502] phi from mode_hicolecmchar::@5 to mode_hicolecmchar::@3 [phi:mode_hicolecmchar::@5->mode_hicolecmchar::@3]
b3_from_b5:
// [502] phi (byte*) mode_hicolecmchar::ch#3 = (byte*) mode_hicolecmchar::ch#1 [phi:mode_hicolecmchar::@5->mode_hicolecmchar::@3#0] -- register_copy
// [502] phi (byte*) mode_hicolecmchar::col#3 = (byte*) mode_hicolecmchar::col#1 [phi:mode_hicolecmchar::@5->mode_hicolecmchar::@3#1] -- register_copy
// [502] phi (byte) mode_hicolecmchar::cy#4 = (byte) mode_hicolecmchar::cy#1 [phi:mode_hicolecmchar::@5->mode_hicolecmchar::@3#2] -- register_copy
jmp b3
// mode_hicolecmchar::@3
b3:
// [503] phi from mode_hicolecmchar::@3 to mode_hicolecmchar::@4 [phi:mode_hicolecmchar::@3->mode_hicolecmchar::@4]
b4_from_b3:
// [503] phi (byte*) mode_hicolecmchar::ch#2 = (byte*) mode_hicolecmchar::ch#3 [phi:mode_hicolecmchar::@3->mode_hicolecmchar::@4#0] -- register_copy
// [503] phi (byte*) mode_hicolecmchar::col#2 = (byte*) mode_hicolecmchar::col#3 [phi:mode_hicolecmchar::@3->mode_hicolecmchar::@4#1] -- register_copy
// [503] phi (byte) mode_hicolecmchar::cx#2 = (byte) 0 [phi:mode_hicolecmchar::@3->mode_hicolecmchar::@4#2] -- vbuxx=vbuc1
ldx #0
jmp b4
// [503] phi from mode_hicolecmchar::@4 to mode_hicolecmchar::@4 [phi:mode_hicolecmchar::@4->mode_hicolecmchar::@4]
b4_from_b4:
// [503] phi (byte*) mode_hicolecmchar::ch#2 = (byte*) mode_hicolecmchar::ch#1 [phi:mode_hicolecmchar::@4->mode_hicolecmchar::@4#0] -- register_copy
// [503] phi (byte*) mode_hicolecmchar::col#2 = (byte*) mode_hicolecmchar::col#1 [phi:mode_hicolecmchar::@4->mode_hicolecmchar::@4#1] -- register_copy
// [503] phi (byte) mode_hicolecmchar::cx#2 = (byte) mode_hicolecmchar::cx#1 [phi:mode_hicolecmchar::@4->mode_hicolecmchar::@4#2] -- register_copy
jmp b4
// mode_hicolecmchar::@4
b4:
// [504] (byte~) mode_hicolecmchar::$26 ← (byte) mode_hicolecmchar::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// [505] (byte~) mode_hicolecmchar::$27 ← (byte~) mode_hicolecmchar::$26 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z _27
// [506] (byte~) mode_hicolecmchar::$28 ← (byte) mode_hicolecmchar::cx#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// [507] (byte) mode_hicolecmchar::v#0 ← (byte~) mode_hicolecmchar::$27 | (byte~) mode_hicolecmchar::$28 -- vbuaa=vbuz1_bor_vbuaa
ora.z _27
// [508] *((byte*) mode_hicolecmchar::col#2) ← (byte) mode_hicolecmchar::v#0 -- _deref_pbuz1=vbuaa
ldy #0
sta (col),y
// [509] (byte*) mode_hicolecmchar::col#1 ← ++ (byte*) mode_hicolecmchar::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// [510] *((byte*) mode_hicolecmchar::ch#2) ← (byte) mode_hicolecmchar::v#0 -- _deref_pbuz1=vbuaa
ldy #0
sta (ch),y
// [511] (byte*) mode_hicolecmchar::ch#1 ← ++ (byte*) mode_hicolecmchar::ch#2 -- pbuz1=_inc_pbuz1
inc.z ch
bne !+
inc.z ch+1
!:
// [512] (byte) mode_hicolecmchar::cx#1 ← ++ (byte) mode_hicolecmchar::cx#2 -- vbuxx=_inc_vbuxx
inx
// [513] if((byte) mode_hicolecmchar::cx#1!=(byte) $28) goto mode_hicolecmchar::@4 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b4_from_b4
jmp b5
// mode_hicolecmchar::@5
b5:
// [514] (byte) mode_hicolecmchar::cy#1 ← ++ (byte) mode_hicolecmchar::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [515] if((byte) mode_hicolecmchar::cy#1!=(byte) $19) goto mode_hicolecmchar::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3_from_b5
// [516] phi from mode_hicolecmchar::@5 to mode_hicolecmchar::@6 [phi:mode_hicolecmchar::@5->mode_hicolecmchar::@6]
b6_from_b5:
jmp b6
// mode_hicolecmchar::@6
b6:
// [517] call mode_ctrl
// [155] phi from mode_hicolecmchar::@6 to mode_ctrl [phi:mode_hicolecmchar::@6->mode_ctrl]
mode_ctrl_from_b6:
// [155] phi (byte) dtv_control#144 = (const byte) DTV_HIGHCOLOR#0 [phi:mode_hicolecmchar::@6->mode_ctrl#0] -- vbuz1=vbuc1
lda #DTV_HIGHCOLOR
sta.z dtv_control
jsr mode_ctrl
jmp breturn
// mode_hicolecmchar::@return
breturn:
// [518] return
rts
}
// mode_hicolstdchar
// High Color Standard Character Mode (LINEAR/CHUNK/COLDIS/ECM/MCM/BMM = 0, HICOL = 1)
// Resolution: 320x200
// Normal VIC Adressing:
// VicGfxData[16]: ( VicBank[1:0] & CharBase[2:0] & CharData[7:0] & RowCounter[2:0] )
// Pixel Shifter (1)
// - 0: 8bpp BgColor0[7:0]
// - 1: 8bpp ColorData[7:0]
mode_hicolstdchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $8400
.label _26 = 8
.label col = $b
.label ch = 9
.label cy = 7
// [519] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [520] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const byte*) mode_hicolstdchar::COLORS#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// [521] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [522] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR
sta DTV_CONTROL
// [523] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2_PORT_A_DDR
// [524] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_hicolstdchar::CHARSET#0/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2_PORT_A
// [525] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [526] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [527] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_hicolstdchar::CHARSET#0&(word) $3fff/(word) $400 -- _deref_pbuc1=vbuc2
// VIC Memory Pointers
lda #(CHARSET&$3fff)/$400
sta VIC_MEMORY
// [528] phi from mode_hicolstdchar to mode_hicolstdchar::@1 [phi:mode_hicolstdchar->mode_hicolstdchar::@1]
b1_from_mode_hicolstdchar:
// [528] phi (byte) mode_hicolstdchar::i#2 = (byte) 0 [phi:mode_hicolstdchar->mode_hicolstdchar::@1#0] -- vbuxx=vbuc1
ldx #0
jmp b1
// DTV Palette - Grey Tones
// [528] phi from mode_hicolstdchar::@1 to mode_hicolstdchar::@1 [phi:mode_hicolstdchar::@1->mode_hicolstdchar::@1]
b1_from_b1:
// [528] phi (byte) mode_hicolstdchar::i#2 = (byte) mode_hicolstdchar::i#1 [phi:mode_hicolstdchar::@1->mode_hicolstdchar::@1#0] -- register_copy
jmp b1
// mode_hicolstdchar::@1
b1:
// [529] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolstdchar::i#2) ← (byte) mode_hicolstdchar::i#2 -- pbuc1_derefidx_vbuxx=vbuxx
txa
sta DTV_PALETTE,x
// [530] (byte) mode_hicolstdchar::i#1 ← ++ (byte) mode_hicolstdchar::i#2 -- vbuxx=_inc_vbuxx
inx
// [531] if((byte) mode_hicolstdchar::i#1!=(byte) $10) goto mode_hicolstdchar::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1_from_b1
jmp b2
// mode_hicolstdchar::@2
b2:
// [532] *((const byte*) BGCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BGCOL
// [533] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta BORDERCOL
// [534] phi from mode_hicolstdchar::@2 to mode_hicolstdchar::@3 [phi:mode_hicolstdchar::@2->mode_hicolstdchar::@3]
b3_from_b2:
// [534] phi (byte*) mode_hicolstdchar::ch#3 = (const byte*) mode_hicolstdchar::SCREEN#0 [phi:mode_hicolstdchar::@2->mode_hicolstdchar::@3#0] -- pbuz1=pbuc1
lda #<SCREEN
sta.z ch
lda #>SCREEN
sta.z ch+1
// [534] phi (byte*) mode_hicolstdchar::col#3 = (const byte*) mode_hicolstdchar::COLORS#0 [phi:mode_hicolstdchar::@2->mode_hicolstdchar::@3#1] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [534] phi (byte) mode_hicolstdchar::cy#4 = (byte) 0 [phi:mode_hicolstdchar::@2->mode_hicolstdchar::@3#2] -- vbuz1=vbuc1
lda #0
sta.z cy
jmp b3
// [534] phi from mode_hicolstdchar::@5 to mode_hicolstdchar::@3 [phi:mode_hicolstdchar::@5->mode_hicolstdchar::@3]
b3_from_b5:
// [534] phi (byte*) mode_hicolstdchar::ch#3 = (byte*) mode_hicolstdchar::ch#1 [phi:mode_hicolstdchar::@5->mode_hicolstdchar::@3#0] -- register_copy
// [534] phi (byte*) mode_hicolstdchar::col#3 = (byte*) mode_hicolstdchar::col#1 [phi:mode_hicolstdchar::@5->mode_hicolstdchar::@3#1] -- register_copy
// [534] phi (byte) mode_hicolstdchar::cy#4 = (byte) mode_hicolstdchar::cy#1 [phi:mode_hicolstdchar::@5->mode_hicolstdchar::@3#2] -- register_copy
jmp b3
// mode_hicolstdchar::@3
b3:
// [535] phi from mode_hicolstdchar::@3 to mode_hicolstdchar::@4 [phi:mode_hicolstdchar::@3->mode_hicolstdchar::@4]
b4_from_b3:
// [535] phi (byte*) mode_hicolstdchar::ch#2 = (byte*) mode_hicolstdchar::ch#3 [phi:mode_hicolstdchar::@3->mode_hicolstdchar::@4#0] -- register_copy
// [535] phi (byte*) mode_hicolstdchar::col#2 = (byte*) mode_hicolstdchar::col#3 [phi:mode_hicolstdchar::@3->mode_hicolstdchar::@4#1] -- register_copy
// [535] phi (byte) mode_hicolstdchar::cx#2 = (byte) 0 [phi:mode_hicolstdchar::@3->mode_hicolstdchar::@4#2] -- vbuxx=vbuc1
ldx #0
jmp b4
// [535] phi from mode_hicolstdchar::@4 to mode_hicolstdchar::@4 [phi:mode_hicolstdchar::@4->mode_hicolstdchar::@4]
b4_from_b4:
// [535] phi (byte*) mode_hicolstdchar::ch#2 = (byte*) mode_hicolstdchar::ch#1 [phi:mode_hicolstdchar::@4->mode_hicolstdchar::@4#0] -- register_copy
// [535] phi (byte*) mode_hicolstdchar::col#2 = (byte*) mode_hicolstdchar::col#1 [phi:mode_hicolstdchar::@4->mode_hicolstdchar::@4#1] -- register_copy
// [535] phi (byte) mode_hicolstdchar::cx#2 = (byte) mode_hicolstdchar::cx#1 [phi:mode_hicolstdchar::@4->mode_hicolstdchar::@4#2] -- register_copy
jmp b4
// mode_hicolstdchar::@4
b4:
// [536] (byte~) mode_hicolstdchar::$25 ← (byte) mode_hicolstdchar::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// [537] (byte~) mode_hicolstdchar::$26 ← (byte~) mode_hicolstdchar::$25 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z _26
// [538] (byte~) mode_hicolstdchar::$27 ← (byte) mode_hicolstdchar::cx#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// [539] (byte) mode_hicolstdchar::v#0 ← (byte~) mode_hicolstdchar::$26 | (byte~) mode_hicolstdchar::$27 -- vbuaa=vbuz1_bor_vbuaa
ora.z _26
// [540] *((byte*) mode_hicolstdchar::col#2) ← (byte) mode_hicolstdchar::v#0 -- _deref_pbuz1=vbuaa
ldy #0
sta (col),y
// [541] (byte*) mode_hicolstdchar::col#1 ← ++ (byte*) mode_hicolstdchar::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// [542] *((byte*) mode_hicolstdchar::ch#2) ← (byte) mode_hicolstdchar::v#0 -- _deref_pbuz1=vbuaa
ldy #0
sta (ch),y
// [543] (byte*) mode_hicolstdchar::ch#1 ← ++ (byte*) mode_hicolstdchar::ch#2 -- pbuz1=_inc_pbuz1
inc.z ch
bne !+
inc.z ch+1
!:
// [544] (byte) mode_hicolstdchar::cx#1 ← ++ (byte) mode_hicolstdchar::cx#2 -- vbuxx=_inc_vbuxx
inx
// [545] if((byte) mode_hicolstdchar::cx#1!=(byte) $28) goto mode_hicolstdchar::@4 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b4_from_b4
jmp b5
// mode_hicolstdchar::@5
b5:
// [546] (byte) mode_hicolstdchar::cy#1 ← ++ (byte) mode_hicolstdchar::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [547] if((byte) mode_hicolstdchar::cy#1!=(byte) $19) goto mode_hicolstdchar::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3_from_b5
// [548] phi from mode_hicolstdchar::@5 to mode_hicolstdchar::@6 [phi:mode_hicolstdchar::@5->mode_hicolstdchar::@6]
b6_from_b5:
jmp b6
// mode_hicolstdchar::@6
b6:
// [549] call mode_ctrl
// [155] phi from mode_hicolstdchar::@6 to mode_ctrl [phi:mode_hicolstdchar::@6->mode_ctrl]
mode_ctrl_from_b6:
// [155] phi (byte) dtv_control#144 = (const byte) DTV_HIGHCOLOR#0 [phi:mode_hicolstdchar::@6->mode_ctrl#0] -- vbuz1=vbuc1
lda #DTV_HIGHCOLOR
sta.z dtv_control
jsr mode_ctrl
jmp breturn
// mode_hicolstdchar::@return
breturn:
// [550] return
rts
}
// mode_stdbitmap
// Standard Bitmap Mode (LINEAR/HICOL/CHUNK/COLDIS/MCM/ECM = 0, BMM = 1)
// Resolution: 320x200
// Normal VIC Adressing:
// VicGfxData[16]: ( VicBank[1:0] & CharBase[2:2] & Matrix[9:0] & RowCounter[2:0] )
// Pixel Shifter (1)
// - 0: 4bpp CharData[3:0]
// - 1: 4bpp CharData[7:4]
mode_stdbitmap: {
.label SCREEN = $4000
.label BITMAP = $6000
.const lines_cnt = 9
.label col2 = $d
.label ch = 9
.label cy = 7
.label l = $e
// [551] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [552] *((const byte*) DTV_CONTROL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_CONTROL
// [553] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2_PORT_A_DDR
// [554] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_stdbitmap::BITMAP#0/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^BITMAP/$4000
sta CIA2_PORT_A
// [555] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_BMM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [556] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [557] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_stdbitmap::BITMAP#0&(word) $3fff/(word) $400 -- _deref_pbuc1=vbuc2
// VIC Memory Pointers
lda #(BITMAP&$3fff)/$400
sta VIC_MEMORY
// [558] phi from mode_stdbitmap to mode_stdbitmap::@1 [phi:mode_stdbitmap->mode_stdbitmap::@1]
b1_from_mode_stdbitmap:
// [558] phi (byte) mode_stdbitmap::i#2 = (byte) 0 [phi:mode_stdbitmap->mode_stdbitmap::@1#0] -- vbuxx=vbuc1
ldx #0
jmp b1
// DTV Palette - default
// [558] phi from mode_stdbitmap::@1 to mode_stdbitmap::@1 [phi:mode_stdbitmap::@1->mode_stdbitmap::@1]
b1_from_b1:
// [558] phi (byte) mode_stdbitmap::i#2 = (byte) mode_stdbitmap::i#1 [phi:mode_stdbitmap::@1->mode_stdbitmap::@1#0] -- register_copy
jmp b1
// mode_stdbitmap::@1
b1:
// [559] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdbitmap::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdbitmap::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx
lda DTV_PALETTE_DEFAULT,x
sta DTV_PALETTE,x
// [560] (byte) mode_stdbitmap::i#1 ← ++ (byte) mode_stdbitmap::i#2 -- vbuxx=_inc_vbuxx
inx
// [561] if((byte) mode_stdbitmap::i#1!=(byte) $10) goto mode_stdbitmap::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1_from_b1
jmp b2
// mode_stdbitmap::@2
b2:
// [562] *((const byte*) BGCOL#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #BLACK
sta BGCOL
// [563] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2
lda #BLACK
sta BORDERCOL
// [564] phi from mode_stdbitmap::@2 to mode_stdbitmap::@3 [phi:mode_stdbitmap::@2->mode_stdbitmap::@3]
b3_from_b2:
// [564] phi (byte*) mode_stdbitmap::ch#3 = (const byte*) mode_stdbitmap::SCREEN#0 [phi:mode_stdbitmap::@2->mode_stdbitmap::@3#0] -- pbuz1=pbuc1
lda #<SCREEN
sta.z ch
lda #>SCREEN
sta.z ch+1
// [564] phi (byte) mode_stdbitmap::cy#4 = (byte) 0 [phi:mode_stdbitmap::@2->mode_stdbitmap::@3#1] -- vbuz1=vbuc1
lda #0
sta.z cy
jmp b3
// [564] phi from mode_stdbitmap::@5 to mode_stdbitmap::@3 [phi:mode_stdbitmap::@5->mode_stdbitmap::@3]
b3_from_b5:
// [564] phi (byte*) mode_stdbitmap::ch#3 = (byte*) mode_stdbitmap::ch#1 [phi:mode_stdbitmap::@5->mode_stdbitmap::@3#0] -- register_copy
// [564] phi (byte) mode_stdbitmap::cy#4 = (byte) mode_stdbitmap::cy#1 [phi:mode_stdbitmap::@5->mode_stdbitmap::@3#1] -- register_copy
jmp b3
// mode_stdbitmap::@3
b3:
// [565] phi from mode_stdbitmap::@3 to mode_stdbitmap::@4 [phi:mode_stdbitmap::@3->mode_stdbitmap::@4]
b4_from_b3:
// [565] phi (byte*) mode_stdbitmap::ch#2 = (byte*) mode_stdbitmap::ch#3 [phi:mode_stdbitmap::@3->mode_stdbitmap::@4#0] -- register_copy
// [565] phi (byte) mode_stdbitmap::cx#2 = (byte) 0 [phi:mode_stdbitmap::@3->mode_stdbitmap::@4#1] -- vbuxx=vbuc1
ldx #0
jmp b4
// [565] phi from mode_stdbitmap::@4 to mode_stdbitmap::@4 [phi:mode_stdbitmap::@4->mode_stdbitmap::@4]
b4_from_b4:
// [565] phi (byte*) mode_stdbitmap::ch#2 = (byte*) mode_stdbitmap::ch#1 [phi:mode_stdbitmap::@4->mode_stdbitmap::@4#0] -- register_copy
// [565] phi (byte) mode_stdbitmap::cx#2 = (byte) mode_stdbitmap::cx#1 [phi:mode_stdbitmap::@4->mode_stdbitmap::@4#1] -- register_copy
jmp b4
// mode_stdbitmap::@4
b4:
// [566] (byte~) mode_stdbitmap::$22 ← (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#4 -- vbuaa=vbuxx_plus_vbuz1
txa
clc
adc.z cy
// [567] (byte) mode_stdbitmap::col#0 ← (byte~) mode_stdbitmap::$22 & (byte) $f -- vbuyy=vbuaa_band_vbuc1
and #$f
tay
// [568] (byte) mode_stdbitmap::col2#0 ← (byte) $f - (byte) mode_stdbitmap::col#0 -- vbuz1=vbuc1_minus_vbuyy
tya
eor #$ff
clc
adc #$f+1
sta.z col2
// [569] (byte~) mode_stdbitmap::$25 ← (byte) mode_stdbitmap::col#0 << (byte) 4 -- vbuaa=vbuyy_rol_4
tya
asl
asl
asl
asl
// [570] (byte~) mode_stdbitmap::$26 ← (byte~) mode_stdbitmap::$25 | (byte) mode_stdbitmap::col2#0 -- vbuaa=vbuaa_bor_vbuz1
ora.z col2
// [571] *((byte*) mode_stdbitmap::ch#2) ← (byte~) mode_stdbitmap::$26 -- _deref_pbuz1=vbuaa
ldy #0
sta (ch),y
// [572] (byte*) mode_stdbitmap::ch#1 ← ++ (byte*) mode_stdbitmap::ch#2 -- pbuz1=_inc_pbuz1
inc.z ch
bne !+
inc.z ch+1
!:
// [573] (byte) mode_stdbitmap::cx#1 ← ++ (byte) mode_stdbitmap::cx#2 -- vbuxx=_inc_vbuxx
inx
// [574] if((byte) mode_stdbitmap::cx#1!=(byte) $28) goto mode_stdbitmap::@4 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b4_from_b4
jmp b5
// mode_stdbitmap::@5
b5:
// [575] (byte) mode_stdbitmap::cy#1 ← ++ (byte) mode_stdbitmap::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [576] if((byte) mode_stdbitmap::cy#1!=(byte) $19) goto mode_stdbitmap::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3_from_b5
// [577] phi from mode_stdbitmap::@5 to mode_stdbitmap::@6 [phi:mode_stdbitmap::@5->mode_stdbitmap::@6]
b6_from_b5:
jmp b6
// mode_stdbitmap::@6
b6:
// [578] call bitmap_init
// [732] phi from mode_stdbitmap::@6 to bitmap_init [phi:mode_stdbitmap::@6->bitmap_init]
bitmap_init_from_b6:
jsr bitmap_init
// [579] phi from mode_stdbitmap::@6 to mode_stdbitmap::@10 [phi:mode_stdbitmap::@6->mode_stdbitmap::@10]
b10_from_b6:
jmp b10
// mode_stdbitmap::@10
b10:
// [580] call bitmap_clear
jsr bitmap_clear
// [581] phi from mode_stdbitmap::@10 to mode_stdbitmap::@7 [phi:mode_stdbitmap::@10->mode_stdbitmap::@7]
b7_from_b10:
// [581] phi (byte) mode_stdbitmap::l#2 = (byte) 0 [phi:mode_stdbitmap::@10->mode_stdbitmap::@7#0] -- vbuz1=vbuc1
lda #0
sta.z l
jmp b7
// mode_stdbitmap::@7
b7:
// [582] if((byte) mode_stdbitmap::l#2<(const byte) mode_stdbitmap::lines_cnt#0) goto mode_stdbitmap::@8 -- vbuz1_lt_vbuc1_then_la1
lda.z l
cmp #lines_cnt
bcc b8
// [583] phi from mode_stdbitmap::@7 to mode_stdbitmap::@9 [phi:mode_stdbitmap::@7->mode_stdbitmap::@9]
b9_from_b7:
jmp b9
// mode_stdbitmap::@9
b9:
// [584] call mode_ctrl
// [155] phi from mode_stdbitmap::@9 to mode_ctrl [phi:mode_stdbitmap::@9->mode_ctrl]
mode_ctrl_from_b9:
// [155] phi (byte) dtv_control#144 = (byte) 0 [phi:mode_stdbitmap::@9->mode_ctrl#0] -- vbuz1=vbuc1
lda #0
sta.z dtv_control
jsr mode_ctrl
jmp breturn
// mode_stdbitmap::@return
breturn:
// [585] return
rts
// mode_stdbitmap::@8
b8:
// [586] (byte) bitmap_line::x0#0 ← *((const byte[]) mode_stdbitmap::lines_x#0 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2
ldy.z l
lda lines_x,y
sta.z bitmap_line.x0
// [587] (byte) bitmap_line::x1#0 ← *((const byte[]) mode_stdbitmap::lines_x#0+(byte) 1 + (byte) mode_stdbitmap::l#2) -- vbuxx=pbuc1_derefidx_vbuz1
ldy.z l
ldx lines_x+1,y
// [588] (byte) bitmap_line::y0#0 ← *((const byte[]) mode_stdbitmap::lines_y#0 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2
ldy.z l
lda lines_y,y
sta.z bitmap_line.y0
// [589] (byte) bitmap_line::y1#0 ← *((const byte[]) mode_stdbitmap::lines_y#0+(byte) 1 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2
ldy.z l
lda lines_y+1,y
sta.z bitmap_line.y1
// [590] call bitmap_line
jsr bitmap_line
jmp b11
// mode_stdbitmap::@11
b11:
// [591] (byte) mode_stdbitmap::l#1 ← ++ (byte) mode_stdbitmap::l#2 -- vbuz1=_inc_vbuz1
inc.z l
// [581] phi from mode_stdbitmap::@11 to mode_stdbitmap::@7 [phi:mode_stdbitmap::@11->mode_stdbitmap::@7]
b7_from_b11:
// [581] phi (byte) mode_stdbitmap::l#2 = (byte) mode_stdbitmap::l#1 [phi:mode_stdbitmap::@11->mode_stdbitmap::@7#0] -- register_copy
jmp b7
lines_x: .byte 0, $ff, $ff, 0, 0, $80, $ff, $80, 0, $80
lines_y: .byte 0, 0, $c7, $c7, 0, 0, $64, $c7, $64, 0
}
// bitmap_line
// Draw a line on the bitmap
// bitmap_line(byte zeropage(6) x0, byte register(X) x1, byte zeropage(8) y0, byte zeropage(3) y1)
bitmap_line: {
.label xd = 7
.label x0 = 6
.label y0 = 8
.label y1 = 3
// [592] if((byte) bitmap_line::x0#0<(byte) bitmap_line::x1#0) goto bitmap_line::@1 -- vbuz1_lt_vbuxx_then_la1
txa
cmp.z x0
beq !+
bcs b1
!:
jmp b2
// bitmap_line::@2
b2:
// [593] (byte) bitmap_line::xd#2 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 -- vbuz1=vbuz2_minus_vbuxx
txa
eor #$ff
sec
adc.z x0
sta.z xd
// [594] if((byte) bitmap_line::y0#0<(byte) bitmap_line::y1#0) goto bitmap_line::@7 -- vbuz1_lt_vbuz2_then_la1
lda.z y0
cmp.z y1
bcc b7
jmp b3
// bitmap_line::@3
b3:
// [595] (byte) bitmap_line::yd#2 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuyy=vbuz1_minus_vbuz2
lda.z y0
sec
sbc.z y1
tay
// [596] if((byte) bitmap_line::yd#2<(byte) bitmap_line::xd#2) goto bitmap_line::@8 -- vbuyy_lt_vbuz1_then_la1
cpy.z xd
bcc b8
jmp b4
// bitmap_line::@4
b4:
// [597] (byte) bitmap_line_ydxi::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2
lda.z y1
sta.z bitmap_line_ydxi.y
// [598] (byte) bitmap_line_ydxi::x#0 ← (byte) bitmap_line::x1#0
// [599] (byte) bitmap_line_ydxi::y1#0 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2
lda.z y0
sta.z bitmap_line_ydxi.y1
// [600] (byte) bitmap_line_ydxi::yd#0 ← (byte) bitmap_line::yd#2 -- vbuz1=vbuyy
sty.z bitmap_line_ydxi.yd
// [601] (byte) bitmap_line_ydxi::xd#0 ← (byte) bitmap_line::xd#2
// [602] call bitmap_line_ydxi
// [676] phi from bitmap_line::@4 to bitmap_line_ydxi [phi:bitmap_line::@4->bitmap_line_ydxi]
bitmap_line_ydxi_from_b4:
// [676] phi (byte) bitmap_line_ydxi::y1#6 = (byte) bitmap_line_ydxi::y1#0 [phi:bitmap_line::@4->bitmap_line_ydxi#0] -- register_copy
// [676] phi (byte) bitmap_line_ydxi::yd#5 = (byte) bitmap_line_ydxi::yd#0 [phi:bitmap_line::@4->bitmap_line_ydxi#1] -- register_copy
// [676] phi (byte) bitmap_line_ydxi::y#6 = (byte) bitmap_line_ydxi::y#0 [phi:bitmap_line::@4->bitmap_line_ydxi#2] -- register_copy
// [676] phi (byte) bitmap_line_ydxi::x#5 = (byte) bitmap_line_ydxi::x#0 [phi:bitmap_line::@4->bitmap_line_ydxi#3] -- register_copy
// [676] phi (byte) bitmap_line_ydxi::xd#2 = (byte) bitmap_line_ydxi::xd#0 [phi:bitmap_line::@4->bitmap_line_ydxi#4] -- register_copy
jsr bitmap_line_ydxi
jmp breturn
// bitmap_line::@return
breturn:
// [603] return
rts
// bitmap_line::@8
b8:
// [604] (byte) bitmap_line_xdyi::x#0 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuxx
stx.z bitmap_line_xdyi.x
// [605] (byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2
lda.z y1
sta.z bitmap_line_xdyi.y
// [606] (byte) bitmap_line_xdyi::x1#0 ← (byte) bitmap_line::x0#0
// [607] (byte) bitmap_line_xdyi::xd#0 ← (byte) bitmap_line::xd#2
// [608] (byte) bitmap_line_xdyi::yd#0 ← (byte) bitmap_line::yd#2 -- vbuz1=vbuyy
sty.z bitmap_line_xdyi.yd
// [609] call bitmap_line_xdyi
// [654] phi from bitmap_line::@8 to bitmap_line_xdyi [phi:bitmap_line::@8->bitmap_line_xdyi]
bitmap_line_xdyi_from_b8:
// [654] phi (byte) bitmap_line_xdyi::x1#6 = (byte) bitmap_line_xdyi::x1#0 [phi:bitmap_line::@8->bitmap_line_xdyi#0] -- register_copy
// [654] phi (byte) bitmap_line_xdyi::xd#5 = (byte) bitmap_line_xdyi::xd#0 [phi:bitmap_line::@8->bitmap_line_xdyi#1] -- register_copy
// [654] phi (byte) bitmap_line_xdyi::y#5 = (byte) bitmap_line_xdyi::y#0 [phi:bitmap_line::@8->bitmap_line_xdyi#2] -- register_copy
// [654] phi (byte) bitmap_line_xdyi::x#6 = (byte) bitmap_line_xdyi::x#0 [phi:bitmap_line::@8->bitmap_line_xdyi#3] -- register_copy
// [654] phi (byte) bitmap_line_xdyi::yd#2 = (byte) bitmap_line_xdyi::yd#0 [phi:bitmap_line::@8->bitmap_line_xdyi#4] -- register_copy
jsr bitmap_line_xdyi
jmp breturn
// bitmap_line::@7
b7:
// [610] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuyy=vbuz1_minus_vbuz2
lda.z y1
sec
sbc.z y0
tay
// [611] if((byte) bitmap_line::yd#1<(byte) bitmap_line::xd#2) goto bitmap_line::@9 -- vbuyy_lt_vbuz1_then_la1
cpy.z xd
bcc b9
jmp b10
// bitmap_line::@10
b10:
// [612] (byte) bitmap_line_ydxd::y#0 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2
lda.z y0
sta.z bitmap_line_ydxd.y
// [613] (byte) bitmap_line_ydxd::x#0 ← (byte) bitmap_line::x0#0 -- vbuxx=vbuz1
ldx.z x0
// [614] (byte) bitmap_line_ydxd::y1#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2
lda.z y1
sta.z bitmap_line_ydxd.y1
// [615] (byte) bitmap_line_ydxd::yd#0 ← (byte) bitmap_line::yd#1 -- vbuz1=vbuyy
sty.z bitmap_line_ydxd.yd
// [616] (byte) bitmap_line_ydxd::xd#0 ← (byte) bitmap_line::xd#2
// [617] call bitmap_line_ydxd
// [706] phi from bitmap_line::@10 to bitmap_line_ydxd [phi:bitmap_line::@10->bitmap_line_ydxd]
bitmap_line_ydxd_from_b10:
// [706] phi (byte) bitmap_line_ydxd::y1#6 = (byte) bitmap_line_ydxd::y1#0 [phi:bitmap_line::@10->bitmap_line_ydxd#0] -- register_copy
// [706] phi (byte) bitmap_line_ydxd::yd#5 = (byte) bitmap_line_ydxd::yd#0 [phi:bitmap_line::@10->bitmap_line_ydxd#1] -- register_copy
// [706] phi (byte) bitmap_line_ydxd::y#7 = (byte) bitmap_line_ydxd::y#0 [phi:bitmap_line::@10->bitmap_line_ydxd#2] -- register_copy
// [706] phi (byte) bitmap_line_ydxd::x#5 = (byte) bitmap_line_ydxd::x#0 [phi:bitmap_line::@10->bitmap_line_ydxd#3] -- register_copy
// [706] phi (byte) bitmap_line_ydxd::xd#2 = (byte) bitmap_line_ydxd::xd#0 [phi:bitmap_line::@10->bitmap_line_ydxd#4] -- register_copy
jsr bitmap_line_ydxd
jmp breturn
// bitmap_line::@9
b9:
// [618] (byte) bitmap_line_xdyd::x#0 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuxx
stx.z bitmap_line_xdyd.x
// [619] (byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2
lda.z y1
sta.z bitmap_line_xdyd.y
// [620] (byte) bitmap_line_xdyd::x1#0 ← (byte) bitmap_line::x0#0
// [621] (byte) bitmap_line_xdyd::xd#0 ← (byte) bitmap_line::xd#2
// [622] (byte) bitmap_line_xdyd::yd#0 ← (byte) bitmap_line::yd#1 -- vbuz1=vbuyy
sty.z bitmap_line_xdyd.yd
// [623] call bitmap_line_xdyd
// [691] phi from bitmap_line::@9 to bitmap_line_xdyd [phi:bitmap_line::@9->bitmap_line_xdyd]
bitmap_line_xdyd_from_b9:
// [691] phi (byte) bitmap_line_xdyd::x1#6 = (byte) bitmap_line_xdyd::x1#0 [phi:bitmap_line::@9->bitmap_line_xdyd#0] -- register_copy
// [691] phi (byte) bitmap_line_xdyd::xd#5 = (byte) bitmap_line_xdyd::xd#0 [phi:bitmap_line::@9->bitmap_line_xdyd#1] -- register_copy
// [691] phi (byte) bitmap_line_xdyd::y#5 = (byte) bitmap_line_xdyd::y#0 [phi:bitmap_line::@9->bitmap_line_xdyd#2] -- register_copy
// [691] phi (byte) bitmap_line_xdyd::x#6 = (byte) bitmap_line_xdyd::x#0 [phi:bitmap_line::@9->bitmap_line_xdyd#3] -- register_copy
// [691] phi (byte) bitmap_line_xdyd::yd#2 = (byte) bitmap_line_xdyd::yd#0 [phi:bitmap_line::@9->bitmap_line_xdyd#4] -- register_copy
jsr bitmap_line_xdyd
jmp breturn
// bitmap_line::@1
b1:
// [624] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 -- vbuz1=vbuxx_minus_vbuz2
txa
sec
sbc.z x0
sta.z xd
// [625] if((byte) bitmap_line::y0#0<(byte) bitmap_line::y1#0) goto bitmap_line::@11 -- vbuz1_lt_vbuz2_then_la1
lda.z y0
cmp.z y1
bcc b11
jmp b5
// bitmap_line::@5
b5:
// [626] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuyy=vbuz1_minus_vbuz2
lda.z y0
sec
sbc.z y1
tay
// [627] if((byte) bitmap_line::yd#10<(byte) bitmap_line::xd#1) goto bitmap_line::@12 -- vbuyy_lt_vbuz1_then_la1
cpy.z xd
bcc b12
jmp b6
// bitmap_line::@6
b6:
// [628] (byte) bitmap_line_ydxd::y#1 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2
lda.z y1
sta.z bitmap_line_ydxd.y
// [629] (byte) bitmap_line_ydxd::x#1 ← (byte) bitmap_line::x1#0
// [630] (byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y0#0
// [631] (byte) bitmap_line_ydxd::yd#1 ← (byte) bitmap_line::yd#10 -- vbuz1=vbuyy
sty.z bitmap_line_ydxd.yd
// [632] (byte) bitmap_line_ydxd::xd#1 ← (byte) bitmap_line::xd#1
// [633] call bitmap_line_ydxd
// [706] phi from bitmap_line::@6 to bitmap_line_ydxd [phi:bitmap_line::@6->bitmap_line_ydxd]
bitmap_line_ydxd_from_b6:
// [706] phi (byte) bitmap_line_ydxd::y1#6 = (byte) bitmap_line_ydxd::y1#1 [phi:bitmap_line::@6->bitmap_line_ydxd#0] -- register_copy
// [706] phi (byte) bitmap_line_ydxd::yd#5 = (byte) bitmap_line_ydxd::yd#1 [phi:bitmap_line::@6->bitmap_line_ydxd#1] -- register_copy
// [706] phi (byte) bitmap_line_ydxd::y#7 = (byte) bitmap_line_ydxd::y#1 [phi:bitmap_line::@6->bitmap_line_ydxd#2] -- register_copy
// [706] phi (byte) bitmap_line_ydxd::x#5 = (byte) bitmap_line_ydxd::x#1 [phi:bitmap_line::@6->bitmap_line_ydxd#3] -- register_copy
// [706] phi (byte) bitmap_line_ydxd::xd#2 = (byte) bitmap_line_ydxd::xd#1 [phi:bitmap_line::@6->bitmap_line_ydxd#4] -- register_copy
jsr bitmap_line_ydxd
jmp breturn
// bitmap_line::@12
b12:
// [634] (byte) bitmap_line_xdyd::x#1 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2
lda.z x0
sta.z bitmap_line_xdyd.x
// [635] (byte) bitmap_line_xdyd::y#1 ← (byte) bitmap_line::y0#0
// [636] (byte) bitmap_line_xdyd::x1#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuxx
stx.z bitmap_line_xdyd.x1
// [637] (byte) bitmap_line_xdyd::xd#1 ← (byte) bitmap_line::xd#1
// [638] (byte) bitmap_line_xdyd::yd#1 ← (byte) bitmap_line::yd#10 -- vbuz1=vbuyy
sty.z bitmap_line_xdyd.yd
// [639] call bitmap_line_xdyd
// [691] phi from bitmap_line::@12 to bitmap_line_xdyd [phi:bitmap_line::@12->bitmap_line_xdyd]
bitmap_line_xdyd_from_b12:
// [691] phi (byte) bitmap_line_xdyd::x1#6 = (byte) bitmap_line_xdyd::x1#1 [phi:bitmap_line::@12->bitmap_line_xdyd#0] -- register_copy
// [691] phi (byte) bitmap_line_xdyd::xd#5 = (byte) bitmap_line_xdyd::xd#1 [phi:bitmap_line::@12->bitmap_line_xdyd#1] -- register_copy
// [691] phi (byte) bitmap_line_xdyd::y#5 = (byte) bitmap_line_xdyd::y#1 [phi:bitmap_line::@12->bitmap_line_xdyd#2] -- register_copy
// [691] phi (byte) bitmap_line_xdyd::x#6 = (byte) bitmap_line_xdyd::x#1 [phi:bitmap_line::@12->bitmap_line_xdyd#3] -- register_copy
// [691] phi (byte) bitmap_line_xdyd::yd#2 = (byte) bitmap_line_xdyd::yd#1 [phi:bitmap_line::@12->bitmap_line_xdyd#4] -- register_copy
jsr bitmap_line_xdyd
jmp breturn
// bitmap_line::@11
b11:
// [640] (byte) bitmap_line::yd#11 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuyy=vbuz1_minus_vbuz2
lda.z y1
sec
sbc.z y0
tay
// [641] if((byte) bitmap_line::yd#11<(byte) bitmap_line::xd#1) goto bitmap_line::@13 -- vbuyy_lt_vbuz1_then_la1
cpy.z xd
bcc b13
jmp b14
// bitmap_line::@14
b14:
// [642] (byte) bitmap_line_ydxi::y#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2
lda.z y0
sta.z bitmap_line_ydxi.y
// [643] (byte) bitmap_line_ydxi::x#1 ← (byte) bitmap_line::x0#0 -- vbuxx=vbuz1
ldx.z x0
// [644] (byte) bitmap_line_ydxi::y1#1 ← (byte) bitmap_line::y1#0
// [645] (byte) bitmap_line_ydxi::yd#1 ← (byte) bitmap_line::yd#11 -- vbuz1=vbuyy
sty.z bitmap_line_ydxi.yd
// [646] (byte) bitmap_line_ydxi::xd#1 ← (byte) bitmap_line::xd#1
// [647] call bitmap_line_ydxi
// [676] phi from bitmap_line::@14 to bitmap_line_ydxi [phi:bitmap_line::@14->bitmap_line_ydxi]
bitmap_line_ydxi_from_b14:
// [676] phi (byte) bitmap_line_ydxi::y1#6 = (byte) bitmap_line_ydxi::y1#1 [phi:bitmap_line::@14->bitmap_line_ydxi#0] -- register_copy
// [676] phi (byte) bitmap_line_ydxi::yd#5 = (byte) bitmap_line_ydxi::yd#1 [phi:bitmap_line::@14->bitmap_line_ydxi#1] -- register_copy
// [676] phi (byte) bitmap_line_ydxi::y#6 = (byte) bitmap_line_ydxi::y#1 [phi:bitmap_line::@14->bitmap_line_ydxi#2] -- register_copy
// [676] phi (byte) bitmap_line_ydxi::x#5 = (byte) bitmap_line_ydxi::x#1 [phi:bitmap_line::@14->bitmap_line_ydxi#3] -- register_copy
// [676] phi (byte) bitmap_line_ydxi::xd#2 = (byte) bitmap_line_ydxi::xd#1 [phi:bitmap_line::@14->bitmap_line_ydxi#4] -- register_copy
jsr bitmap_line_ydxi
jmp breturn
// bitmap_line::@13
b13:
// [648] (byte) bitmap_line_xdyi::x#1 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2
lda.z x0
sta.z bitmap_line_xdyi.x
// [649] (byte) bitmap_line_xdyi::y#1 ← (byte) bitmap_line::y0#0
// [650] (byte) bitmap_line_xdyi::x1#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuxx
stx.z bitmap_line_xdyi.x1
// [651] (byte) bitmap_line_xdyi::xd#1 ← (byte) bitmap_line::xd#1
// [652] (byte) bitmap_line_xdyi::yd#1 ← (byte) bitmap_line::yd#11 -- vbuz1=vbuyy
sty.z bitmap_line_xdyi.yd
// [653] call bitmap_line_xdyi
// [654] phi from bitmap_line::@13 to bitmap_line_xdyi [phi:bitmap_line::@13->bitmap_line_xdyi]
bitmap_line_xdyi_from_b13:
// [654] phi (byte) bitmap_line_xdyi::x1#6 = (byte) bitmap_line_xdyi::x1#1 [phi:bitmap_line::@13->bitmap_line_xdyi#0] -- register_copy
// [654] phi (byte) bitmap_line_xdyi::xd#5 = (byte) bitmap_line_xdyi::xd#1 [phi:bitmap_line::@13->bitmap_line_xdyi#1] -- register_copy
// [654] phi (byte) bitmap_line_xdyi::y#5 = (byte) bitmap_line_xdyi::y#1 [phi:bitmap_line::@13->bitmap_line_xdyi#2] -- register_copy
// [654] phi (byte) bitmap_line_xdyi::x#6 = (byte) bitmap_line_xdyi::x#1 [phi:bitmap_line::@13->bitmap_line_xdyi#3] -- register_copy
// [654] phi (byte) bitmap_line_xdyi::yd#2 = (byte) bitmap_line_xdyi::yd#1 [phi:bitmap_line::@13->bitmap_line_xdyi#4] -- register_copy
jsr bitmap_line_xdyi
jmp breturn
}
// bitmap_line_xdyi
// bitmap_line_xdyi(byte zeropage(2) x, byte zeropage(8) y, byte zeropage(6) x1, byte zeropage(7) xd, byte zeropage($d) yd)
bitmap_line_xdyi: {
.label x = 2
.label y = 8
.label x1 = 6
.label xd = 7
.label yd = $d
.label e = 3
// [655] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte) 1 -- vbuz1=vbuz2_ror_1
lda.z yd
lsr
sta.z e
// [656] phi from bitmap_line_xdyi bitmap_line_xdyi::@2 to bitmap_line_xdyi::@1 [phi:bitmap_line_xdyi/bitmap_line_xdyi::@2->bitmap_line_xdyi::@1]
b1_from_bitmap_line_xdyi:
b1_from_b2:
// [656] phi (byte) bitmap_line_xdyi::e#3 = (byte) bitmap_line_xdyi::e#0 [phi:bitmap_line_xdyi/bitmap_line_xdyi::@2->bitmap_line_xdyi::@1#0] -- register_copy
// [656] phi (byte) bitmap_line_xdyi::y#3 = (byte) bitmap_line_xdyi::y#5 [phi:bitmap_line_xdyi/bitmap_line_xdyi::@2->bitmap_line_xdyi::@1#1] -- register_copy
// [656] phi (byte) bitmap_line_xdyi::x#3 = (byte) bitmap_line_xdyi::x#6 [phi:bitmap_line_xdyi/bitmap_line_xdyi::@2->bitmap_line_xdyi::@1#2] -- register_copy
jmp b1
// bitmap_line_xdyi::@1
b1:
// [657] (byte) bitmap_plot::x#0 ← (byte) bitmap_line_xdyi::x#3 -- vbuxx=vbuz1
ldx.z x
// [658] (byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3 -- vbuyy=vbuz1
ldy.z y
// [659] call bitmap_plot
// [669] phi from bitmap_line_xdyi::@1 to bitmap_plot [phi:bitmap_line_xdyi::@1->bitmap_plot]
bitmap_plot_from_b1:
// [669] phi (byte) bitmap_plot::y#4 = (byte) bitmap_plot::y#0 [phi:bitmap_line_xdyi::@1->bitmap_plot#0] -- register_copy
// [669] phi (byte) bitmap_plot::x#4 = (byte) bitmap_plot::x#0 [phi:bitmap_line_xdyi::@1->bitmap_plot#1] -- register_copy
jsr bitmap_plot
jmp b4
// bitmap_line_xdyi::@4
b4:
// [660] (byte) bitmap_line_xdyi::x#2 ← ++ (byte) bitmap_line_xdyi::x#3 -- vbuz1=_inc_vbuz1
inc.z x
// [661] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 -- vbuz1=vbuz1_plus_vbuz2
lda.z e
clc
adc.z yd
sta.z e
// [662] if((byte) bitmap_line_xdyi::xd#5>=(byte) bitmap_line_xdyi::e#1) goto bitmap_line_xdyi::@2 -- vbuz1_ge_vbuz2_then_la1
lda.z xd
cmp.z e
bcs b2_from_b4
jmp b3
// bitmap_line_xdyi::@3
b3:
// [663] (byte) bitmap_line_xdyi::y#2 ← ++ (byte) bitmap_line_xdyi::y#3 -- vbuz1=_inc_vbuz1
inc.z y
// [664] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 -- vbuz1=vbuz1_minus_vbuz2
lda.z e
sec
sbc.z xd
sta.z e
// [665] phi from bitmap_line_xdyi::@3 bitmap_line_xdyi::@4 to bitmap_line_xdyi::@2 [phi:bitmap_line_xdyi::@3/bitmap_line_xdyi::@4->bitmap_line_xdyi::@2]
b2_from_b3:
b2_from_b4:
// [665] phi (byte) bitmap_line_xdyi::e#6 = (byte) bitmap_line_xdyi::e#2 [phi:bitmap_line_xdyi::@3/bitmap_line_xdyi::@4->bitmap_line_xdyi::@2#0] -- register_copy
// [665] phi (byte) bitmap_line_xdyi::y#6 = (byte) bitmap_line_xdyi::y#2 [phi:bitmap_line_xdyi::@3/bitmap_line_xdyi::@4->bitmap_line_xdyi::@2#1] -- register_copy
jmp b2
// bitmap_line_xdyi::@2
b2:
// [666] (byte~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#6 + (byte) 1 -- vbuxx=vbuz1_plus_1
ldx.z x1
inx
// [667] if((byte) bitmap_line_xdyi::x#2!=(byte~) bitmap_line_xdyi::$6) goto bitmap_line_xdyi::@1 -- vbuz1_neq_vbuxx_then_la1
cpx.z x
bne b1_from_b2
jmp breturn
// bitmap_line_xdyi::@return
breturn:
// [668] return
rts
}
// bitmap_plot
// bitmap_plot(byte register(X) x, byte register(Y) y)
bitmap_plot: {
.label plotter_x = 9
.label plotter_y = $b
.label plotter = 9
// [670] (word) bitmap_plot::plotter_x#0 ← *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) -- vwuz1=pbuc1_derefidx_vbuxx_word_pbuc2_derefidx_vbuxx
lda bitmap_plot_xhi,x
sta.z plotter_x+1
lda bitmap_plot_xlo,x
sta.z plotter_x
// [671] (word) bitmap_plot::plotter_y#0 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) -- vwuz1=pbuc1_derefidx_vbuyy_word_pbuc2_derefidx_vbuyy
lda bitmap_plot_yhi,y
sta.z plotter_y+1
lda bitmap_plot_ylo,y
sta.z plotter_y
// [672] (word) bitmap_plot::plotter#0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 -- vwuz1=vwuz1_plus_vwuz2
lda.z plotter
clc
adc.z plotter_y
sta.z plotter
lda.z plotter+1
adc.z plotter_y+1
sta.z plotter+1
// [673] (byte~) bitmap_plot::$1 ← *((byte*)(word) bitmap_plot::plotter#0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) -- vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbuxx
lda bitmap_plot_bit,x
ldy #0
ora (plotter),y
// [674] *((byte*)(word) bitmap_plot::plotter#0) ← (byte~) bitmap_plot::$1 -- _deref_pbuz1=vbuaa
ldy #0
sta (plotter),y
jmp breturn
// bitmap_plot::@return
breturn:
// [675] return
rts
}
// bitmap_line_ydxi
// bitmap_line_ydxi(byte zeropage(2) y, byte register(X) x, byte zeropage(3) y1, byte zeropage($d) yd, byte zeropage(7) xd)
bitmap_line_ydxi: {
.label y = 2
.label y1 = 3
.label yd = $d
.label xd = 7
.label e = 6
// [677] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte) 1 -- vbuz1=vbuz2_ror_1
lda.z xd
lsr
sta.z e
// [678] phi from bitmap_line_ydxi bitmap_line_ydxi::@2 to bitmap_line_ydxi::@1 [phi:bitmap_line_ydxi/bitmap_line_ydxi::@2->bitmap_line_ydxi::@1]
b1_from_bitmap_line_ydxi:
b1_from_b2:
// [678] phi (byte) bitmap_line_ydxi::e#3 = (byte) bitmap_line_ydxi::e#0 [phi:bitmap_line_ydxi/bitmap_line_ydxi::@2->bitmap_line_ydxi::@1#0] -- register_copy
// [678] phi (byte) bitmap_line_ydxi::y#3 = (byte) bitmap_line_ydxi::y#6 [phi:bitmap_line_ydxi/bitmap_line_ydxi::@2->bitmap_line_ydxi::@1#1] -- register_copy
// [678] phi (byte) bitmap_line_ydxi::x#3 = (byte) bitmap_line_ydxi::x#5 [phi:bitmap_line_ydxi/bitmap_line_ydxi::@2->bitmap_line_ydxi::@1#2] -- register_copy
jmp b1
// bitmap_line_ydxi::@1
b1:
// [679] (byte) bitmap_plot::x#2 ← (byte) bitmap_line_ydxi::x#3
// [680] (byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3 -- vbuyy=vbuz1
ldy.z y
// [681] call bitmap_plot
// [669] phi from bitmap_line_ydxi::@1 to bitmap_plot [phi:bitmap_line_ydxi::@1->bitmap_plot]
bitmap_plot_from_b1:
// [669] phi (byte) bitmap_plot::y#4 = (byte) bitmap_plot::y#2 [phi:bitmap_line_ydxi::@1->bitmap_plot#0] -- register_copy
// [669] phi (byte) bitmap_plot::x#4 = (byte) bitmap_plot::x#2 [phi:bitmap_line_ydxi::@1->bitmap_plot#1] -- register_copy
jsr bitmap_plot
jmp b4
// bitmap_line_ydxi::@4
b4:
// [682] (byte) bitmap_line_ydxi::y#2 ← ++ (byte) bitmap_line_ydxi::y#3 -- vbuz1=_inc_vbuz1
inc.z y
// [683] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 -- vbuz1=vbuz1_plus_vbuz2
lda.z e
clc
adc.z xd
sta.z e
// [684] if((byte) bitmap_line_ydxi::yd#5>=(byte) bitmap_line_ydxi::e#1) goto bitmap_line_ydxi::@2 -- vbuz1_ge_vbuz2_then_la1
lda.z yd
cmp.z e
bcs b2_from_b4
jmp b3
// bitmap_line_ydxi::@3
b3:
// [685] (byte) bitmap_line_ydxi::x#2 ← ++ (byte) bitmap_line_ydxi::x#3 -- vbuxx=_inc_vbuxx
inx
// [686] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 -- vbuz1=vbuz1_minus_vbuz2
lda.z e
sec
sbc.z yd
sta.z e
// [687] phi from bitmap_line_ydxi::@3 bitmap_line_ydxi::@4 to bitmap_line_ydxi::@2 [phi:bitmap_line_ydxi::@3/bitmap_line_ydxi::@4->bitmap_line_ydxi::@2]
b2_from_b3:
b2_from_b4:
// [687] phi (byte) bitmap_line_ydxi::e#6 = (byte) bitmap_line_ydxi::e#2 [phi:bitmap_line_ydxi::@3/bitmap_line_ydxi::@4->bitmap_line_ydxi::@2#0] -- register_copy
// [687] phi (byte) bitmap_line_ydxi::x#6 = (byte) bitmap_line_ydxi::x#2 [phi:bitmap_line_ydxi::@3/bitmap_line_ydxi::@4->bitmap_line_ydxi::@2#1] -- register_copy
jmp b2
// bitmap_line_ydxi::@2
b2:
// [688] (byte~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#6 + (byte) 1 -- vbuaa=vbuz1_plus_1
lda.z y1
clc
adc #1
// [689] if((byte) bitmap_line_ydxi::y#2!=(byte~) bitmap_line_ydxi::$6) goto bitmap_line_ydxi::@1 -- vbuz1_neq_vbuaa_then_la1
cmp.z y
bne b1_from_b2
jmp breturn
// bitmap_line_ydxi::@return
breturn:
// [690] return
rts
}
// bitmap_line_xdyd
// bitmap_line_xdyd(byte zeropage(2) x, byte zeropage(8) y, byte zeropage(6) x1, byte zeropage(7) xd, byte zeropage($d) yd)
bitmap_line_xdyd: {
.label x = 2
.label y = 8
.label x1 = 6
.label xd = 7
.label yd = $d
.label e = 3
// [692] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte) 1 -- vbuz1=vbuz2_ror_1
lda.z yd
lsr
sta.z e
// [693] phi from bitmap_line_xdyd bitmap_line_xdyd::@2 to bitmap_line_xdyd::@1 [phi:bitmap_line_xdyd/bitmap_line_xdyd::@2->bitmap_line_xdyd::@1]
b1_from_bitmap_line_xdyd:
b1_from_b2:
// [693] phi (byte) bitmap_line_xdyd::e#3 = (byte) bitmap_line_xdyd::e#0 [phi:bitmap_line_xdyd/bitmap_line_xdyd::@2->bitmap_line_xdyd::@1#0] -- register_copy
// [693] phi (byte) bitmap_line_xdyd::y#3 = (byte) bitmap_line_xdyd::y#5 [phi:bitmap_line_xdyd/bitmap_line_xdyd::@2->bitmap_line_xdyd::@1#1] -- register_copy
// [693] phi (byte) bitmap_line_xdyd::x#3 = (byte) bitmap_line_xdyd::x#6 [phi:bitmap_line_xdyd/bitmap_line_xdyd::@2->bitmap_line_xdyd::@1#2] -- register_copy
jmp b1
// bitmap_line_xdyd::@1
b1:
// [694] (byte) bitmap_plot::x#1 ← (byte) bitmap_line_xdyd::x#3 -- vbuxx=vbuz1
ldx.z x
// [695] (byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3 -- vbuyy=vbuz1
ldy.z y
// [696] call bitmap_plot
// [669] phi from bitmap_line_xdyd::@1 to bitmap_plot [phi:bitmap_line_xdyd::@1->bitmap_plot]
bitmap_plot_from_b1:
// [669] phi (byte) bitmap_plot::y#4 = (byte) bitmap_plot::y#1 [phi:bitmap_line_xdyd::@1->bitmap_plot#0] -- register_copy
// [669] phi (byte) bitmap_plot::x#4 = (byte) bitmap_plot::x#1 [phi:bitmap_line_xdyd::@1->bitmap_plot#1] -- register_copy
jsr bitmap_plot
jmp b4
// bitmap_line_xdyd::@4
b4:
// [697] (byte) bitmap_line_xdyd::x#2 ← ++ (byte) bitmap_line_xdyd::x#3 -- vbuz1=_inc_vbuz1
inc.z x
// [698] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 -- vbuz1=vbuz1_plus_vbuz2
lda.z e
clc
adc.z yd
sta.z e
// [699] if((byte) bitmap_line_xdyd::xd#5>=(byte) bitmap_line_xdyd::e#1) goto bitmap_line_xdyd::@2 -- vbuz1_ge_vbuz2_then_la1
lda.z xd
cmp.z e
bcs b2_from_b4
jmp b3
// bitmap_line_xdyd::@3
b3:
// [700] (byte) bitmap_line_xdyd::y#2 ← -- (byte) bitmap_line_xdyd::y#3 -- vbuz1=_dec_vbuz1
dec.z y
// [701] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 -- vbuz1=vbuz1_minus_vbuz2
lda.z e
sec
sbc.z xd
sta.z e
// [702] phi from bitmap_line_xdyd::@3 bitmap_line_xdyd::@4 to bitmap_line_xdyd::@2 [phi:bitmap_line_xdyd::@3/bitmap_line_xdyd::@4->bitmap_line_xdyd::@2]
b2_from_b3:
b2_from_b4:
// [702] phi (byte) bitmap_line_xdyd::e#6 = (byte) bitmap_line_xdyd::e#2 [phi:bitmap_line_xdyd::@3/bitmap_line_xdyd::@4->bitmap_line_xdyd::@2#0] -- register_copy
// [702] phi (byte) bitmap_line_xdyd::y#6 = (byte) bitmap_line_xdyd::y#2 [phi:bitmap_line_xdyd::@3/bitmap_line_xdyd::@4->bitmap_line_xdyd::@2#1] -- register_copy
jmp b2
// bitmap_line_xdyd::@2
b2:
// [703] (byte~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#6 + (byte) 1 -- vbuxx=vbuz1_plus_1
ldx.z x1
inx
// [704] if((byte) bitmap_line_xdyd::x#2!=(byte~) bitmap_line_xdyd::$6) goto bitmap_line_xdyd::@1 -- vbuz1_neq_vbuxx_then_la1
cpx.z x
bne b1_from_b2
jmp breturn
// bitmap_line_xdyd::@return
breturn:
// [705] return
rts
}
// bitmap_line_ydxd
// bitmap_line_ydxd(byte zeropage(2) y, byte register(X) x, byte zeropage(8) y1, byte zeropage($d) yd, byte zeropage(7) xd)
bitmap_line_ydxd: {
.label y = 2
.label y1 = 8
.label yd = $d
.label xd = 7
.label e = 3
// [707] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte) 1 -- vbuz1=vbuz2_ror_1
lda.z xd
lsr
sta.z e
// [708] phi from bitmap_line_ydxd bitmap_line_ydxd::@2 to bitmap_line_ydxd::@1 [phi:bitmap_line_ydxd/bitmap_line_ydxd::@2->bitmap_line_ydxd::@1]
b1_from_bitmap_line_ydxd:
b1_from_b2:
// [708] phi (byte) bitmap_line_ydxd::e#3 = (byte) bitmap_line_ydxd::e#0 [phi:bitmap_line_ydxd/bitmap_line_ydxd::@2->bitmap_line_ydxd::@1#0] -- register_copy
// [708] phi (byte) bitmap_line_ydxd::y#2 = (byte) bitmap_line_ydxd::y#7 [phi:bitmap_line_ydxd/bitmap_line_ydxd::@2->bitmap_line_ydxd::@1#1] -- register_copy
// [708] phi (byte) bitmap_line_ydxd::x#3 = (byte) bitmap_line_ydxd::x#5 [phi:bitmap_line_ydxd/bitmap_line_ydxd::@2->bitmap_line_ydxd::@1#2] -- register_copy
jmp b1
// bitmap_line_ydxd::@1
b1:
// [709] (byte) bitmap_plot::x#3 ← (byte) bitmap_line_ydxd::x#3
// [710] (byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#2 -- vbuyy=vbuz1
ldy.z y
// [711] call bitmap_plot
// [669] phi from bitmap_line_ydxd::@1 to bitmap_plot [phi:bitmap_line_ydxd::@1->bitmap_plot]
bitmap_plot_from_b1:
// [669] phi (byte) bitmap_plot::y#4 = (byte) bitmap_plot::y#3 [phi:bitmap_line_ydxd::@1->bitmap_plot#0] -- register_copy
// [669] phi (byte) bitmap_plot::x#4 = (byte) bitmap_plot::x#3 [phi:bitmap_line_ydxd::@1->bitmap_plot#1] -- register_copy
jsr bitmap_plot
jmp b4
// bitmap_line_ydxd::@4
b4:
// [712] (byte) bitmap_line_ydxd::y#3 ← ++ (byte) bitmap_line_ydxd::y#2 -- vbuz1=_inc_vbuz1
inc.z y
// [713] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 -- vbuz1=vbuz1_plus_vbuz2
lda.z e
clc
adc.z xd
sta.z e
// [714] if((byte) bitmap_line_ydxd::yd#5>=(byte) bitmap_line_ydxd::e#1) goto bitmap_line_ydxd::@2 -- vbuz1_ge_vbuz2_then_la1
lda.z yd
cmp.z e
bcs b2_from_b4
jmp b3
// bitmap_line_ydxd::@3
b3:
// [715] (byte) bitmap_line_ydxd::x#2 ← -- (byte) bitmap_line_ydxd::x#3 -- vbuxx=_dec_vbuxx
dex
// [716] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 -- vbuz1=vbuz1_minus_vbuz2
lda.z e
sec
sbc.z yd
sta.z e
// [717] phi from bitmap_line_ydxd::@3 bitmap_line_ydxd::@4 to bitmap_line_ydxd::@2 [phi:bitmap_line_ydxd::@3/bitmap_line_ydxd::@4->bitmap_line_ydxd::@2]
b2_from_b3:
b2_from_b4:
// [717] phi (byte) bitmap_line_ydxd::e#6 = (byte) bitmap_line_ydxd::e#2 [phi:bitmap_line_ydxd::@3/bitmap_line_ydxd::@4->bitmap_line_ydxd::@2#0] -- register_copy
// [717] phi (byte) bitmap_line_ydxd::x#6 = (byte) bitmap_line_ydxd::x#2 [phi:bitmap_line_ydxd::@3/bitmap_line_ydxd::@4->bitmap_line_ydxd::@2#1] -- register_copy
jmp b2
// bitmap_line_ydxd::@2
b2:
// [718] (byte~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#6 + (byte) 1 -- vbuaa=vbuz1_plus_1
lda.z y1
clc
adc #1
// [719] if((byte) bitmap_line_ydxd::y#3!=(byte~) bitmap_line_ydxd::$6) goto bitmap_line_ydxd::@1 -- vbuz1_neq_vbuaa_then_la1
cmp.z y
bne b1_from_b2
jmp breturn
// bitmap_line_ydxd::@return
breturn:
// [720] return
rts
}
// bitmap_clear
// Clear all graphics on the bitmap
bitmap_clear: {
.label bitmap = 9
.label y = $e
// [721] (word) bitmap_clear::bitmap#0 ← *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2
lda bitmap_plot_xlo
sta.z bitmap
lda bitmap_plot_xhi
sta.z bitmap+1
// [722] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word) bitmap_clear::bitmap#0
// [723] phi from bitmap_clear to bitmap_clear::@1 [phi:bitmap_clear->bitmap_clear::@1]
b1_from_bitmap_clear:
// [723] phi (byte) bitmap_clear::y#4 = (byte) 0 [phi:bitmap_clear->bitmap_clear::@1#0] -- vbuz1=vbuc1
lda #0
sta.z y
// [723] phi (byte*) bitmap_clear::bitmap#3 = (byte*~) bitmap_clear::bitmap#5 [phi:bitmap_clear->bitmap_clear::@1#1] -- register_copy
jmp b1
// [723] phi from bitmap_clear::@3 to bitmap_clear::@1 [phi:bitmap_clear::@3->bitmap_clear::@1]
b1_from_b3:
// [723] phi (byte) bitmap_clear::y#4 = (byte) bitmap_clear::y#1 [phi:bitmap_clear::@3->bitmap_clear::@1#0] -- register_copy
// [723] phi (byte*) bitmap_clear::bitmap#3 = (byte*) bitmap_clear::bitmap#1 [phi:bitmap_clear::@3->bitmap_clear::@1#1] -- register_copy
jmp b1
// bitmap_clear::@1
b1:
// [724] phi from bitmap_clear::@1 to bitmap_clear::@2 [phi:bitmap_clear::@1->bitmap_clear::@2]
b2_from_b1:
// [724] phi (byte) bitmap_clear::x#2 = (byte) 0 [phi:bitmap_clear::@1->bitmap_clear::@2#0] -- vbuxx=vbuc1
ldx #0
// [724] phi (byte*) bitmap_clear::bitmap#2 = (byte*) bitmap_clear::bitmap#3 [phi:bitmap_clear::@1->bitmap_clear::@2#1] -- register_copy
jmp b2
// [724] phi from bitmap_clear::@2 to bitmap_clear::@2 [phi:bitmap_clear::@2->bitmap_clear::@2]
b2_from_b2:
// [724] phi (byte) bitmap_clear::x#2 = (byte) bitmap_clear::x#1 [phi:bitmap_clear::@2->bitmap_clear::@2#0] -- register_copy
// [724] phi (byte*) bitmap_clear::bitmap#2 = (byte*) bitmap_clear::bitmap#1 [phi:bitmap_clear::@2->bitmap_clear::@2#1] -- register_copy
jmp b2
// bitmap_clear::@2
b2:
// [725] *((byte*) bitmap_clear::bitmap#2) ← (byte) 0 -- _deref_pbuz1=vbuc1
lda #0
ldy #0
sta (bitmap),y
// [726] (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1
inc.z bitmap
bne !+
inc.z bitmap+1
!:
// [727] (byte) bitmap_clear::x#1 ← ++ (byte) bitmap_clear::x#2 -- vbuxx=_inc_vbuxx
inx
// [728] if((byte) bitmap_clear::x#1!=(byte) $c8) goto bitmap_clear::@2 -- vbuxx_neq_vbuc1_then_la1
cpx #$c8
bne b2_from_b2
jmp b3
// bitmap_clear::@3
b3:
// [729] (byte) bitmap_clear::y#1 ← ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1
inc.z y
// [730] if((byte) bitmap_clear::y#1!=(byte) $28) goto bitmap_clear::@1 -- vbuz1_neq_vbuc1_then_la1
lda #$28
cmp.z y
bne b1_from_b3
jmp breturn
// bitmap_clear::@return
breturn:
// [731] return
rts
}
// bitmap_init
// Initialize the bitmap plotter tables for a specific bitmap
bitmap_init: {
.label _10 = $d
.label yoffs = 9
// [733] phi from bitmap_init to bitmap_init::@1 [phi:bitmap_init->bitmap_init::@1]
b1_from_bitmap_init:
// [733] phi (byte) bitmap_init::bits#3 = (byte) $80 [phi:bitmap_init->bitmap_init::@1#0] -- vbuyy=vbuc1
ldy #$80
// [733] phi (byte) bitmap_init::x#2 = (byte) 0 [phi:bitmap_init->bitmap_init::@1#1] -- vbuxx=vbuc1
ldx #0
jmp b1
// [733] phi from bitmap_init::@2 to bitmap_init::@1 [phi:bitmap_init::@2->bitmap_init::@1]
b1_from_b2:
// [733] phi (byte) bitmap_init::bits#3 = (byte) bitmap_init::bits#4 [phi:bitmap_init::@2->bitmap_init::@1#0] -- register_copy
// [733] phi (byte) bitmap_init::x#2 = (byte) bitmap_init::x#1 [phi:bitmap_init::@2->bitmap_init::@1#1] -- register_copy
jmp b1
// bitmap_init::@1
b1:
// [734] (byte~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (byte) $f8 -- vbuaa=vbuxx_band_vbuc1
txa
and #$f8
// [735] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$0 -- pbuc1_derefidx_vbuxx=vbuaa
sta bitmap_plot_xlo,x
// [736] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← >(const byte*) mode_stdbitmap::BITMAP#0 -- pbuc1_derefidx_vbuxx=vbuc2
lda #>mode_stdbitmap.BITMAP
sta bitmap_plot_xhi,x
// [737] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuxx=vbuyy
tya
sta bitmap_plot_bit,x
// [738] (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte) 1 -- vbuyy=vbuyy_ror_1
tya
lsr
tay
// [739] if((byte) bitmap_init::bits#1!=(byte) 0) goto bitmap_init::@6 -- vbuyy_neq_0_then_la1
cpy #0
bne b6_from_b1
// [741] phi from bitmap_init::@1 to bitmap_init::@2 [phi:bitmap_init::@1->bitmap_init::@2]
b2_from_b1:
// [741] phi (byte) bitmap_init::bits#4 = (byte) $80 [phi:bitmap_init::@1->bitmap_init::@2#0] -- vbuyy=vbuc1
ldy #$80
jmp b2
// [740] phi from bitmap_init::@1 to bitmap_init::@6 [phi:bitmap_init::@1->bitmap_init::@6]
b6_from_b1:
jmp b6
// bitmap_init::@6
b6:
// [741] phi from bitmap_init::@6 to bitmap_init::@2 [phi:bitmap_init::@6->bitmap_init::@2]
b2_from_b6:
// [741] phi (byte) bitmap_init::bits#4 = (byte) bitmap_init::bits#1 [phi:bitmap_init::@6->bitmap_init::@2#0] -- register_copy
jmp b2
// bitmap_init::@2
b2:
// [742] (byte) bitmap_init::x#1 ← ++ (byte) bitmap_init::x#2 -- vbuxx=_inc_vbuxx
inx
// [743] if((byte) bitmap_init::x#1!=(byte) 0) goto bitmap_init::@1 -- vbuxx_neq_0_then_la1
cpx #0
bne b1_from_b2
// [744] phi from bitmap_init::@2 to bitmap_init::@3 [phi:bitmap_init::@2->bitmap_init::@3]
b3_from_b2:
// [744] phi (byte*) bitmap_init::yoffs#2 = (byte*) 0 [phi:bitmap_init::@2->bitmap_init::@3#0] -- pbuz1=pbuc1
lda #<0
sta.z yoffs
lda #>0
sta.z yoffs+1
// [744] phi (byte) bitmap_init::y#2 = (byte) 0 [phi:bitmap_init::@2->bitmap_init::@3#1] -- vbuxx=vbuc1
ldx #0
jmp b3
// [744] phi from bitmap_init::@4 to bitmap_init::@3 [phi:bitmap_init::@4->bitmap_init::@3]
b3_from_b4:
// [744] phi (byte*) bitmap_init::yoffs#2 = (byte*) bitmap_init::yoffs#4 [phi:bitmap_init::@4->bitmap_init::@3#0] -- register_copy
// [744] phi (byte) bitmap_init::y#2 = (byte) bitmap_init::y#1 [phi:bitmap_init::@4->bitmap_init::@3#1] -- register_copy
jmp b3
// bitmap_init::@3
b3:
// [745] (byte~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte) 7 -- vbuz1=vbuxx_band_vbuc1
lda #7
sax.z _10
// [746] (byte~) bitmap_init::$7 ← < (byte*) bitmap_init::yoffs#2 -- vbuaa=_lo_pbuz1
lda.z yoffs
// [747] (byte~) bitmap_init::$8 ← (byte~) bitmap_init::$10 | (byte~) bitmap_init::$7 -- vbuaa=vbuz1_bor_vbuaa
ora.z _10
// [748] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$8 -- pbuc1_derefidx_vbuxx=vbuaa
sta bitmap_plot_ylo,x
// [749] (byte~) bitmap_init::$9 ← > (byte*) bitmap_init::yoffs#2 -- vbuaa=_hi_pbuz1
lda.z yoffs+1
// [750] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$9 -- pbuc1_derefidx_vbuxx=vbuaa
sta bitmap_plot_yhi,x
// [751] if((byte~) bitmap_init::$10!=(byte) 7) goto bitmap_init::@4 -- vbuz1_neq_vbuc1_then_la1
lda #7
cmp.z _10
bne b4_from_b3
jmp b5
// bitmap_init::@5
b5:
// [752] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (word)(number) $28*(number) 8 -- pbuz1=pbuz1_plus_vwuc1
clc
lda.z yoffs
adc #<$28*8
sta.z yoffs
lda.z yoffs+1
adc #>$28*8
sta.z yoffs+1
// [753] phi from bitmap_init::@3 bitmap_init::@5 to bitmap_init::@4 [phi:bitmap_init::@3/bitmap_init::@5->bitmap_init::@4]
b4_from_b3:
b4_from_b5:
// [753] phi (byte*) bitmap_init::yoffs#4 = (byte*) bitmap_init::yoffs#2 [phi:bitmap_init::@3/bitmap_init::@5->bitmap_init::@4#0] -- register_copy
jmp b4
// bitmap_init::@4
b4:
// [754] (byte) bitmap_init::y#1 ← ++ (byte) bitmap_init::y#2 -- vbuxx=_inc_vbuxx
inx
// [755] if((byte) bitmap_init::y#1!=(byte) 0) goto bitmap_init::@3 -- vbuxx_neq_0_then_la1
cpx #0
bne b3_from_b4
jmp breturn
// bitmap_init::@return
breturn:
// [756] return
rts
}
// mode_mcchar
// Multicolor Character Mode (LINEAR/HICOL/CHUNK/COLDIS/BMM/ECM = 0, MCM = 1)
// Resolution: 160x200 (320x200)
// Normal VIC Adressing:
// VicGfxData[16]: ( VicBank[1:0] & CharBase[2:0] & CharData[7:0] & RowCounter[2:0] )
// GfxData Pixel Shifter (1) if ColorData[3:3] = 0:
// - 0: 4bpp BgColor0[3:0]
// - 1: 4bpp ColorData[2:0]
// GfxData Pixel Shifter (2) if ColorData[3:3] = 1:
// - 00: 4bpp BgColor0[3:0]
// - 01: 4bpp BgColor1[3:0]
// - 10: 4bpp BgColor2[3:0]
// - 11: 4bpp ColorData[2:0]// Standard Character Mode (LINEAR/HICOL/CHUNK/COLDIS/ECM/MCM/BMM = 0)
mode_mcchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $d800
.label _29 = $d
.label col = $b
.label ch = 4
.label cy = 7
// [757] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [758] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<DTV_COLOR_BANK_DEFAULT/$400
sta DTV_COLOR_BANK_LO
// [759] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [760] *((const byte*) DTV_CONTROL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_CONTROL
// [761] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2_PORT_A_DDR
// [762] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_mcchar::CHARSET#0/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2_PORT_A
// [763] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [764] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL|VIC_MCM
sta VIC_CONTROL2
// [765] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_mcchar::CHARSET#0&(word) $3fff/(word) $400 -- _deref_pbuc1=vbuc2
// VIC Memory Pointers
lda #(CHARSET&$3fff)/$400
sta VIC_MEMORY
// [766] phi from mode_mcchar to mode_mcchar::@1 [phi:mode_mcchar->mode_mcchar::@1]
b1_from_mode_mcchar:
// [766] phi (byte) mode_mcchar::i#2 = (byte) 0 [phi:mode_mcchar->mode_mcchar::@1#0] -- vbuxx=vbuc1
ldx #0
jmp b1
// DTV Palette - default
// [766] phi from mode_mcchar::@1 to mode_mcchar::@1 [phi:mode_mcchar::@1->mode_mcchar::@1]
b1_from_b1:
// [766] phi (byte) mode_mcchar::i#2 = (byte) mode_mcchar::i#1 [phi:mode_mcchar::@1->mode_mcchar::@1#0] -- register_copy
jmp b1
// mode_mcchar::@1
b1:
// [767] *((const byte*) DTV_PALETTE#0 + (byte) mode_mcchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_mcchar::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx
lda DTV_PALETTE_DEFAULT,x
sta DTV_PALETTE,x
// [768] (byte) mode_mcchar::i#1 ← ++ (byte) mode_mcchar::i#2 -- vbuxx=_inc_vbuxx
inx
// [769] if((byte) mode_mcchar::i#1!=(byte) $10) goto mode_mcchar::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1_from_b1
jmp b2
// mode_mcchar::@2
b2:
// [770] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDERCOL
// [771] *((const byte*) BGCOL1#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2
lda #BLACK
sta BGCOL1
// [772] *((const byte*) BGCOL2#0) ← (const byte) GREEN#0 -- _deref_pbuc1=vbuc2
lda #GREEN
sta BGCOL2
// [773] *((const byte*) BGCOL3#0) ← (const byte) BLUE#0 -- _deref_pbuc1=vbuc2
lda #BLUE
sta BGCOL3
// [774] phi from mode_mcchar::@2 to mode_mcchar::@3 [phi:mode_mcchar::@2->mode_mcchar::@3]
b3_from_b2:
// [774] phi (byte*) mode_mcchar::ch#3 = (const byte*) mode_mcchar::SCREEN#0 [phi:mode_mcchar::@2->mode_mcchar::@3#0] -- pbuz1=pbuc1
lda #<SCREEN
sta.z ch
lda #>SCREEN
sta.z ch+1
// [774] phi (byte*) mode_mcchar::col#3 = (const byte*) mode_mcchar::COLORS#0 [phi:mode_mcchar::@2->mode_mcchar::@3#1] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [774] phi (byte) mode_mcchar::cy#4 = (byte) 0 [phi:mode_mcchar::@2->mode_mcchar::@3#2] -- vbuz1=vbuc1
lda #0
sta.z cy
jmp b3
// [774] phi from mode_mcchar::@5 to mode_mcchar::@3 [phi:mode_mcchar::@5->mode_mcchar::@3]
b3_from_b5:
// [774] phi (byte*) mode_mcchar::ch#3 = (byte*) mode_mcchar::ch#1 [phi:mode_mcchar::@5->mode_mcchar::@3#0] -- register_copy
// [774] phi (byte*) mode_mcchar::col#3 = (byte*) mode_mcchar::col#1 [phi:mode_mcchar::@5->mode_mcchar::@3#1] -- register_copy
// [774] phi (byte) mode_mcchar::cy#4 = (byte) mode_mcchar::cy#1 [phi:mode_mcchar::@5->mode_mcchar::@3#2] -- register_copy
jmp b3
// mode_mcchar::@3
b3:
// [775] phi from mode_mcchar::@3 to mode_mcchar::@4 [phi:mode_mcchar::@3->mode_mcchar::@4]
b4_from_b3:
// [775] phi (byte*) mode_mcchar::ch#2 = (byte*) mode_mcchar::ch#3 [phi:mode_mcchar::@3->mode_mcchar::@4#0] -- register_copy
// [775] phi (byte*) mode_mcchar::col#2 = (byte*) mode_mcchar::col#3 [phi:mode_mcchar::@3->mode_mcchar::@4#1] -- register_copy
// [775] phi (byte) mode_mcchar::cx#2 = (byte) 0 [phi:mode_mcchar::@3->mode_mcchar::@4#2] -- vbuxx=vbuc1
ldx #0
jmp b4
// [775] phi from mode_mcchar::@4 to mode_mcchar::@4 [phi:mode_mcchar::@4->mode_mcchar::@4]
b4_from_b4:
// [775] phi (byte*) mode_mcchar::ch#2 = (byte*) mode_mcchar::ch#1 [phi:mode_mcchar::@4->mode_mcchar::@4#0] -- register_copy
// [775] phi (byte*) mode_mcchar::col#2 = (byte*) mode_mcchar::col#1 [phi:mode_mcchar::@4->mode_mcchar::@4#1] -- register_copy
// [775] phi (byte) mode_mcchar::cx#2 = (byte) mode_mcchar::cx#1 [phi:mode_mcchar::@4->mode_mcchar::@4#2] -- register_copy
jmp b4
// mode_mcchar::@4
b4:
// [776] (byte~) mode_mcchar::$26 ← (byte) mode_mcchar::cx#2 + (byte) mode_mcchar::cy#4 -- vbuaa=vbuxx_plus_vbuz1
txa
clc
adc.z cy
// [777] (byte~) mode_mcchar::$27 ← (byte~) mode_mcchar::$26 & (byte) $f -- vbuaa=vbuaa_band_vbuc1
and #$f
// [778] *((byte*) mode_mcchar::col#2) ← (byte~) mode_mcchar::$27 -- _deref_pbuz1=vbuaa
ldy #0
sta (col),y
// [779] (byte*) mode_mcchar::col#1 ← ++ (byte*) mode_mcchar::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// [780] (byte~) mode_mcchar::$28 ← (byte) mode_mcchar::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// [781] (byte~) mode_mcchar::$29 ← (byte~) mode_mcchar::$28 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z _29
// [782] (byte~) mode_mcchar::$30 ← (byte) mode_mcchar::cx#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// [783] (byte~) mode_mcchar::$31 ← (byte~) mode_mcchar::$29 | (byte~) mode_mcchar::$30 -- vbuaa=vbuz1_bor_vbuaa
ora.z _29
// [784] *((byte*) mode_mcchar::ch#2) ← (byte~) mode_mcchar::$31 -- _deref_pbuz1=vbuaa
ldy #0
sta (ch),y
// [785] (byte*) mode_mcchar::ch#1 ← ++ (byte*) mode_mcchar::ch#2 -- pbuz1=_inc_pbuz1
inc.z ch
bne !+
inc.z ch+1
!:
// [786] (byte) mode_mcchar::cx#1 ← ++ (byte) mode_mcchar::cx#2 -- vbuxx=_inc_vbuxx
inx
// [787] if((byte) mode_mcchar::cx#1!=(byte) $28) goto mode_mcchar::@4 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b4_from_b4
jmp b5
// mode_mcchar::@5
b5:
// [788] (byte) mode_mcchar::cy#1 ← ++ (byte) mode_mcchar::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [789] if((byte) mode_mcchar::cy#1!=(byte) $19) goto mode_mcchar::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3_from_b5
// [790] phi from mode_mcchar::@5 to mode_mcchar::@6 [phi:mode_mcchar::@5->mode_mcchar::@6]
b6_from_b5:
jmp b6
// mode_mcchar::@6
b6:
// [791] call mode_ctrl
// [155] phi from mode_mcchar::@6 to mode_ctrl [phi:mode_mcchar::@6->mode_ctrl]
mode_ctrl_from_b6:
// [155] phi (byte) dtv_control#144 = (byte) 0 [phi:mode_mcchar::@6->mode_ctrl#0] -- vbuz1=vbuc1
lda #0
sta.z dtv_control
jsr mode_ctrl
jmp breturn
// mode_mcchar::@return
breturn:
// [792] return
rts
}
// mode_ecmchar
// Extended Background Color Character Mode (LINEAR/HICOL/CHUNK/COLDIS/MCM/BMM = 0, ECM = 1)
// Resolution: 320x200
// Normal VIC Adressing:
// VicGfxData[16]: ( VicBank[1:0] & CharBase[2:0] & "00" & CharData[5:0] & RowCounter[2:0] )
// GfxData Pixel Shifter (1)
// - 0: 4bpp Background Color
// - CharData[7:6] 00: 4bpp BgColor0[3:0]
// - CharData[7:6] 01: 4bpp BgColor1[3:0]
// - CharData[7:6] 10: 4bpp BgColor2[3:0]
// - CharData[7:6] 11: 4bpp BgColor3[3:0]
// - 1: 4bpp ColorData[3:0]
mode_ecmchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $d800
.label _29 = $d
.label col = $b
.label ch = 4
.label cy = 8
// [793] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [794] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<DTV_COLOR_BANK_DEFAULT/$400
sta DTV_COLOR_BANK_LO
// [795] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [796] *((const byte*) DTV_CONTROL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_CONTROL
// [797] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2_PORT_A_DDR
// [798] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_ecmchar::CHARSET#0/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2_PORT_A
// [799] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|VIC_ECM|3
sta VIC_CONTROL
// [800] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [801] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_ecmchar::CHARSET#0&(word) $3fff/(word) $400 -- _deref_pbuc1=vbuc2
// VIC Memory Pointers
lda #(CHARSET&$3fff)/$400
sta VIC_MEMORY
// [802] phi from mode_ecmchar to mode_ecmchar::@1 [phi:mode_ecmchar->mode_ecmchar::@1]
b1_from_mode_ecmchar:
// [802] phi (byte) mode_ecmchar::i#2 = (byte) 0 [phi:mode_ecmchar->mode_ecmchar::@1#0] -- vbuxx=vbuc1
ldx #0
jmp b1
// DTV Palette - default
// [802] phi from mode_ecmchar::@1 to mode_ecmchar::@1 [phi:mode_ecmchar::@1->mode_ecmchar::@1]
b1_from_b1:
// [802] phi (byte) mode_ecmchar::i#2 = (byte) mode_ecmchar::i#1 [phi:mode_ecmchar::@1->mode_ecmchar::@1#0] -- register_copy
jmp b1
// mode_ecmchar::@1
b1:
// [803] *((const byte*) DTV_PALETTE#0 + (byte) mode_ecmchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_ecmchar::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx
lda DTV_PALETTE_DEFAULT,x
sta DTV_PALETTE,x
// [804] (byte) mode_ecmchar::i#1 ← ++ (byte) mode_ecmchar::i#2 -- vbuxx=_inc_vbuxx
inx
// [805] if((byte) mode_ecmchar::i#1!=(byte) $10) goto mode_ecmchar::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1_from_b1
jmp b2
// mode_ecmchar::@2
b2:
// [806] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDERCOL
// [807] *((const byte*) BGCOL1#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta BGCOL1
// [808] *((const byte*) BGCOL2#0) ← (byte) 2 -- _deref_pbuc1=vbuc2
lda #2
sta BGCOL2
// [809] *((const byte*) BGCOL3#0) ← (byte) 5 -- _deref_pbuc1=vbuc2
lda #5
sta BGCOL3
// [810] *((const byte*) BGCOL4#0) ← (byte) 6 -- _deref_pbuc1=vbuc2
lda #6
sta BGCOL4
// [811] phi from mode_ecmchar::@2 to mode_ecmchar::@3 [phi:mode_ecmchar::@2->mode_ecmchar::@3]
b3_from_b2:
// [811] phi (byte*) mode_ecmchar::ch#3 = (const byte*) mode_ecmchar::SCREEN#0 [phi:mode_ecmchar::@2->mode_ecmchar::@3#0] -- pbuz1=pbuc1
lda #<SCREEN
sta.z ch
lda #>SCREEN
sta.z ch+1
// [811] phi (byte*) mode_ecmchar::col#3 = (const byte*) mode_ecmchar::COLORS#0 [phi:mode_ecmchar::@2->mode_ecmchar::@3#1] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [811] phi (byte) mode_ecmchar::cy#4 = (byte) 0 [phi:mode_ecmchar::@2->mode_ecmchar::@3#2] -- vbuz1=vbuc1
lda #0
sta.z cy
jmp b3
// [811] phi from mode_ecmchar::@5 to mode_ecmchar::@3 [phi:mode_ecmchar::@5->mode_ecmchar::@3]
b3_from_b5:
// [811] phi (byte*) mode_ecmchar::ch#3 = (byte*) mode_ecmchar::ch#1 [phi:mode_ecmchar::@5->mode_ecmchar::@3#0] -- register_copy
// [811] phi (byte*) mode_ecmchar::col#3 = (byte*) mode_ecmchar::col#1 [phi:mode_ecmchar::@5->mode_ecmchar::@3#1] -- register_copy
// [811] phi (byte) mode_ecmchar::cy#4 = (byte) mode_ecmchar::cy#1 [phi:mode_ecmchar::@5->mode_ecmchar::@3#2] -- register_copy
jmp b3
// mode_ecmchar::@3
b3:
// [812] phi from mode_ecmchar::@3 to mode_ecmchar::@4 [phi:mode_ecmchar::@3->mode_ecmchar::@4]
b4_from_b3:
// [812] phi (byte*) mode_ecmchar::ch#2 = (byte*) mode_ecmchar::ch#3 [phi:mode_ecmchar::@3->mode_ecmchar::@4#0] -- register_copy
// [812] phi (byte*) mode_ecmchar::col#2 = (byte*) mode_ecmchar::col#3 [phi:mode_ecmchar::@3->mode_ecmchar::@4#1] -- register_copy
// [812] phi (byte) mode_ecmchar::cx#2 = (byte) 0 [phi:mode_ecmchar::@3->mode_ecmchar::@4#2] -- vbuxx=vbuc1
ldx #0
jmp b4
// [812] phi from mode_ecmchar::@4 to mode_ecmchar::@4 [phi:mode_ecmchar::@4->mode_ecmchar::@4]
b4_from_b4:
// [812] phi (byte*) mode_ecmchar::ch#2 = (byte*) mode_ecmchar::ch#1 [phi:mode_ecmchar::@4->mode_ecmchar::@4#0] -- register_copy
// [812] phi (byte*) mode_ecmchar::col#2 = (byte*) mode_ecmchar::col#1 [phi:mode_ecmchar::@4->mode_ecmchar::@4#1] -- register_copy
// [812] phi (byte) mode_ecmchar::cx#2 = (byte) mode_ecmchar::cx#1 [phi:mode_ecmchar::@4->mode_ecmchar::@4#2] -- register_copy
jmp b4
// mode_ecmchar::@4
b4:
// [813] (byte~) mode_ecmchar::$26 ← (byte) mode_ecmchar::cx#2 + (byte) mode_ecmchar::cy#4 -- vbuaa=vbuxx_plus_vbuz1
txa
clc
adc.z cy
// [814] (byte~) mode_ecmchar::$27 ← (byte~) mode_ecmchar::$26 & (byte) $f -- vbuaa=vbuaa_band_vbuc1
and #$f
// [815] *((byte*) mode_ecmchar::col#2) ← (byte~) mode_ecmchar::$27 -- _deref_pbuz1=vbuaa
ldy #0
sta (col),y
// [816] (byte*) mode_ecmchar::col#1 ← ++ (byte*) mode_ecmchar::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// [817] (byte~) mode_ecmchar::$28 ← (byte) mode_ecmchar::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// [818] (byte~) mode_ecmchar::$29 ← (byte~) mode_ecmchar::$28 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z _29
// [819] (byte~) mode_ecmchar::$30 ← (byte) mode_ecmchar::cx#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// [820] (byte~) mode_ecmchar::$31 ← (byte~) mode_ecmchar::$29 | (byte~) mode_ecmchar::$30 -- vbuaa=vbuz1_bor_vbuaa
ora.z _29
// [821] *((byte*) mode_ecmchar::ch#2) ← (byte~) mode_ecmchar::$31 -- _deref_pbuz1=vbuaa
ldy #0
sta (ch),y
// [822] (byte*) mode_ecmchar::ch#1 ← ++ (byte*) mode_ecmchar::ch#2 -- pbuz1=_inc_pbuz1
inc.z ch
bne !+
inc.z ch+1
!:
// [823] (byte) mode_ecmchar::cx#1 ← ++ (byte) mode_ecmchar::cx#2 -- vbuxx=_inc_vbuxx
inx
// [824] if((byte) mode_ecmchar::cx#1!=(byte) $28) goto mode_ecmchar::@4 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b4_from_b4
jmp b5
// mode_ecmchar::@5
b5:
// [825] (byte) mode_ecmchar::cy#1 ← ++ (byte) mode_ecmchar::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [826] if((byte) mode_ecmchar::cy#1!=(byte) $19) goto mode_ecmchar::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3_from_b5
// [827] phi from mode_ecmchar::@5 to mode_ecmchar::@6 [phi:mode_ecmchar::@5->mode_ecmchar::@6]
b6_from_b5:
jmp b6
// mode_ecmchar::@6
b6:
// [828] call mode_ctrl
// [155] phi from mode_ecmchar::@6 to mode_ctrl [phi:mode_ecmchar::@6->mode_ctrl]
mode_ctrl_from_b6:
// [155] phi (byte) dtv_control#144 = (byte) 0 [phi:mode_ecmchar::@6->mode_ctrl#0] -- vbuz1=vbuc1
lda #0
sta.z dtv_control
jsr mode_ctrl
jmp breturn
// mode_ecmchar::@return
breturn:
// [829] return
rts
}
// mode_stdchar
// Standard Character Mode (LINEAR/HICOL/CHUNK/COLDIS/ECM/MCM/BMM = 0)
// Resolution: 320x200
// Normal VIC Adressing:
// VicGfxData[16]: ( VicBank[1:0] & CharBase[2:0] & CharData[7:0] & RowCounter[2:0] )
// Pixel Shifter (1)
// - 0: 4bpp BgColor0[3:0]
// - 1: 4bpp ColorData[3:0]
mode_stdchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $d800
.label _28 = $e
.label col = $b
.label ch = 4
.label cy = 6
// [830] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [831] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<DTV_COLOR_BANK_DEFAULT/$400
sta DTV_COLOR_BANK_LO
// [832] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [833] *((const byte*) DTV_CONTROL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_CONTROL
// [834] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2_PORT_A_DDR
// [835] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_stdchar::CHARSET#0/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2_PORT_A
// [836] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [837] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [838] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_stdchar::CHARSET#0&(word) $3fff/(word) $400 -- _deref_pbuc1=vbuc2
// VIC Memory Pointers
lda #(CHARSET&$3fff)/$400
sta VIC_MEMORY
// [839] phi from mode_stdchar to mode_stdchar::@1 [phi:mode_stdchar->mode_stdchar::@1]
b1_from_mode_stdchar:
// [839] phi (byte) mode_stdchar::i#2 = (byte) 0 [phi:mode_stdchar->mode_stdchar::@1#0] -- vbuxx=vbuc1
ldx #0
jmp b1
// DTV Palette - default
// [839] phi from mode_stdchar::@1 to mode_stdchar::@1 [phi:mode_stdchar::@1->mode_stdchar::@1]
b1_from_b1:
// [839] phi (byte) mode_stdchar::i#2 = (byte) mode_stdchar::i#1 [phi:mode_stdchar::@1->mode_stdchar::@1#0] -- register_copy
jmp b1
// mode_stdchar::@1
b1:
// [840] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdchar::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx
lda DTV_PALETTE_DEFAULT,x
sta DTV_PALETTE,x
// [841] (byte) mode_stdchar::i#1 ← ++ (byte) mode_stdchar::i#2 -- vbuxx=_inc_vbuxx
inx
// [842] if((byte) mode_stdchar::i#1!=(byte) $10) goto mode_stdchar::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1_from_b1
jmp b2
// mode_stdchar::@2
b2:
// [843] *((const byte*) BGCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BGCOL
// [844] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta BORDERCOL
// [845] phi from mode_stdchar::@2 to mode_stdchar::@3 [phi:mode_stdchar::@2->mode_stdchar::@3]
b3_from_b2:
// [845] phi (byte*) mode_stdchar::ch#3 = (const byte*) mode_stdchar::SCREEN#0 [phi:mode_stdchar::@2->mode_stdchar::@3#0] -- pbuz1=pbuc1
lda #<SCREEN
sta.z ch
lda #>SCREEN
sta.z ch+1
// [845] phi (byte*) mode_stdchar::col#3 = (const byte*) mode_stdchar::COLORS#0 [phi:mode_stdchar::@2->mode_stdchar::@3#1] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [845] phi (byte) mode_stdchar::cy#4 = (byte) 0 [phi:mode_stdchar::@2->mode_stdchar::@3#2] -- vbuz1=vbuc1
lda #0
sta.z cy
jmp b3
// [845] phi from mode_stdchar::@5 to mode_stdchar::@3 [phi:mode_stdchar::@5->mode_stdchar::@3]
b3_from_b5:
// [845] phi (byte*) mode_stdchar::ch#3 = (byte*) mode_stdchar::ch#1 [phi:mode_stdchar::@5->mode_stdchar::@3#0] -- register_copy
// [845] phi (byte*) mode_stdchar::col#3 = (byte*) mode_stdchar::col#1 [phi:mode_stdchar::@5->mode_stdchar::@3#1] -- register_copy
// [845] phi (byte) mode_stdchar::cy#4 = (byte) mode_stdchar::cy#1 [phi:mode_stdchar::@5->mode_stdchar::@3#2] -- register_copy
jmp b3
// mode_stdchar::@3
b3:
// [846] phi from mode_stdchar::@3 to mode_stdchar::@4 [phi:mode_stdchar::@3->mode_stdchar::@4]
b4_from_b3:
// [846] phi (byte*) mode_stdchar::ch#2 = (byte*) mode_stdchar::ch#3 [phi:mode_stdchar::@3->mode_stdchar::@4#0] -- register_copy
// [846] phi (byte*) mode_stdchar::col#2 = (byte*) mode_stdchar::col#3 [phi:mode_stdchar::@3->mode_stdchar::@4#1] -- register_copy
// [846] phi (byte) mode_stdchar::cx#2 = (byte) 0 [phi:mode_stdchar::@3->mode_stdchar::@4#2] -- vbuxx=vbuc1
ldx #0
jmp b4
// [846] phi from mode_stdchar::@4 to mode_stdchar::@4 [phi:mode_stdchar::@4->mode_stdchar::@4]
b4_from_b4:
// [846] phi (byte*) mode_stdchar::ch#2 = (byte*) mode_stdchar::ch#1 [phi:mode_stdchar::@4->mode_stdchar::@4#0] -- register_copy
// [846] phi (byte*) mode_stdchar::col#2 = (byte*) mode_stdchar::col#1 [phi:mode_stdchar::@4->mode_stdchar::@4#1] -- register_copy
// [846] phi (byte) mode_stdchar::cx#2 = (byte) mode_stdchar::cx#1 [phi:mode_stdchar::@4->mode_stdchar::@4#2] -- register_copy
jmp b4
// mode_stdchar::@4
b4:
// [847] (byte~) mode_stdchar::$25 ← (byte) mode_stdchar::cx#2 + (byte) mode_stdchar::cy#4 -- vbuaa=vbuxx_plus_vbuz1
txa
clc
adc.z cy
// [848] (byte~) mode_stdchar::$26 ← (byte~) mode_stdchar::$25 & (byte) $f -- vbuaa=vbuaa_band_vbuc1
and #$f
// [849] *((byte*) mode_stdchar::col#2) ← (byte~) mode_stdchar::$26 -- _deref_pbuz1=vbuaa
ldy #0
sta (col),y
// [850] (byte*) mode_stdchar::col#1 ← ++ (byte*) mode_stdchar::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// [851] (byte~) mode_stdchar::$27 ← (byte) mode_stdchar::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// [852] (byte~) mode_stdchar::$28 ← (byte~) mode_stdchar::$27 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z _28
// [853] (byte~) mode_stdchar::$29 ← (byte) mode_stdchar::cx#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// [854] (byte~) mode_stdchar::$30 ← (byte~) mode_stdchar::$28 | (byte~) mode_stdchar::$29 -- vbuaa=vbuz1_bor_vbuaa
ora.z _28
// [855] *((byte*) mode_stdchar::ch#2) ← (byte~) mode_stdchar::$30 -- _deref_pbuz1=vbuaa
ldy #0
sta (ch),y
// [856] (byte*) mode_stdchar::ch#1 ← ++ (byte*) mode_stdchar::ch#2 -- pbuz1=_inc_pbuz1
inc.z ch
bne !+
inc.z ch+1
!:
// [857] (byte) mode_stdchar::cx#1 ← ++ (byte) mode_stdchar::cx#2 -- vbuxx=_inc_vbuxx
inx
// [858] if((byte) mode_stdchar::cx#1!=(byte) $28) goto mode_stdchar::@4 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b4_from_b4
jmp b5
// mode_stdchar::@5
b5:
// [859] (byte) mode_stdchar::cy#1 ← ++ (byte) mode_stdchar::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [860] if((byte) mode_stdchar::cy#1!=(byte) $19) goto mode_stdchar::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3_from_b5
// [861] phi from mode_stdchar::@5 to mode_stdchar::@6 [phi:mode_stdchar::@5->mode_stdchar::@6]
b6_from_b5:
jmp b6
// mode_stdchar::@6
b6:
// [862] call mode_ctrl
// [155] phi from mode_stdchar::@6 to mode_ctrl [phi:mode_stdchar::@6->mode_ctrl]
mode_ctrl_from_b6:
// [155] phi (byte) dtv_control#144 = (byte) 0 [phi:mode_stdchar::@6->mode_ctrl#0] -- vbuz1=vbuc1
lda #0
sta.z dtv_control
jsr mode_ctrl
jmp breturn
// mode_stdchar::@return
breturn:
// [863] return
rts
}
// print_str_lines
// Print a number of zero-terminated strings, each followed by a newline.
// The sequence of lines is terminated by another zero.
// print_str_lines(byte* zeropage($b) str)
print_str_lines: {
.label str = $b
// [865] phi from print_str_lines to print_str_lines::@1 [phi:print_str_lines->print_str_lines::@1]
b1_from_print_str_lines:
// [865] phi (byte*) print_line_cursor#17 = (const byte*) menu::SCREEN#0 [phi:print_str_lines->print_str_lines::@1#0] -- pbuz1=pbuc1
lda #<menu.SCREEN
sta.z print_line_cursor
lda #>menu.SCREEN
sta.z print_line_cursor+1
// [865] phi (byte*) print_char_cursor#19 = (const byte*) menu::SCREEN#0 [phi:print_str_lines->print_str_lines::@1#1] -- pbuz1=pbuc1
lda #<menu.SCREEN
sta.z print_char_cursor
lda #>menu.SCREEN
sta.z print_char_cursor+1
// [865] phi (byte*) print_str_lines::str#2 = (const byte[]) MENU_TEXT#0 [phi:print_str_lines->print_str_lines::@1#2] -- pbuz1=pbuc1
lda #<MENU_TEXT
sta.z str
lda #>MENU_TEXT
sta.z str+1
jmp b1
// print_str_lines::@1
b1:
// [866] if((byte) 0!=*((byte*) print_str_lines::str#2)) goto print_str_lines::@2 -- vbuc1_neq__deref_pbuz1_then_la1
ldy #0
lda (str),y
cmp #0
bne b2_from_b1
jmp breturn
// print_str_lines::@return
breturn:
// [867] return
rts
// [868] phi from print_str_lines::@1 print_str_lines::@3 to print_str_lines::@2 [phi:print_str_lines::@1/print_str_lines::@3->print_str_lines::@2]
b2_from_b1:
b2_from_b3:
// [868] phi (byte*) print_char_cursor#17 = (byte*) print_char_cursor#19 [phi:print_str_lines::@1/print_str_lines::@3->print_str_lines::@2#0] -- register_copy
// [868] phi (byte*) print_str_lines::str#3 = (byte*) print_str_lines::str#2 [phi:print_str_lines::@1/print_str_lines::@3->print_str_lines::@2#1] -- register_copy
jmp b2
// print_str_lines::@2
b2:
// [869] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#3) -- vbuaa=_deref_pbuz1
ldy #0
lda (str),y
// [870] (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#3 -- pbuz1=_inc_pbuz1
inc.z str
bne !+
inc.z str+1
!:
// [871] if((byte) 0==(byte) print_str_lines::ch#0) goto print_str_lines::@3 -- vbuc1_eq_vbuaa_then_la1
cmp #0
beq b3_from_b2
jmp b4
// print_str_lines::@4
b4:
// [872] *((byte*) print_char_cursor#17) ← (byte) print_str_lines::ch#0 -- _deref_pbuz1=vbuaa
ldy #0
sta (print_char_cursor),y
// [873] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#17 -- pbuz1=_inc_pbuz1
inc.z print_char_cursor
bne !+
inc.z print_char_cursor+1
!:
// [874] phi from print_str_lines::@2 print_str_lines::@4 to print_str_lines::@3 [phi:print_str_lines::@2/print_str_lines::@4->print_str_lines::@3]
b3_from_b2:
b3_from_b4:
// [874] phi (byte*) print_char_cursor#32 = (byte*) print_char_cursor#17 [phi:print_str_lines::@2/print_str_lines::@4->print_str_lines::@3#0] -- register_copy
jmp b3
// print_str_lines::@3
b3:
// [875] if((byte) 0!=(byte) print_str_lines::ch#0) goto print_str_lines::@2 -- vbuc1_neq_vbuaa_then_la1
cmp #0
bne b2_from_b3
// [876] phi from print_str_lines::@3 to print_str_lines::@5 [phi:print_str_lines::@3->print_str_lines::@5]
b5_from_b3:
jmp b5
// print_str_lines::@5
b5:
// [877] call print_ln
// [879] phi from print_str_lines::@5 to print_ln [phi:print_str_lines::@5->print_ln]
print_ln_from_b5:
jsr print_ln
jmp b6
// print_str_lines::@6
b6:
// [878] (byte*~) print_char_cursor#100 ← (byte*) print_line_cursor#19 -- pbuz1=pbuz2
lda.z print_line_cursor
sta.z print_char_cursor
lda.z print_line_cursor+1
sta.z print_char_cursor+1
// [865] phi from print_str_lines::@6 to print_str_lines::@1 [phi:print_str_lines::@6->print_str_lines::@1]
b1_from_b6:
// [865] phi (byte*) print_line_cursor#17 = (byte*) print_line_cursor#19 [phi:print_str_lines::@6->print_str_lines::@1#0] -- register_copy
// [865] phi (byte*) print_char_cursor#19 = (byte*~) print_char_cursor#100 [phi:print_str_lines::@6->print_str_lines::@1#1] -- register_copy
// [865] phi (byte*) print_str_lines::str#2 = (byte*) print_str_lines::str#0 [phi:print_str_lines::@6->print_str_lines::@1#2] -- register_copy
jmp b1
}
// print_ln
// Print a newline
print_ln: {
// [880] 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:
// [880] phi (byte*) print_line_cursor#18 = (byte*) print_line_cursor#17 [phi:print_ln/print_ln::@1->print_ln::@1#0] -- register_copy
jmp b1
// print_ln::@1
b1:
// [881] (byte*) print_line_cursor#19 ← (byte*) print_line_cursor#18 + (byte) $28 -- pbuz1=pbuz1_plus_vbuc1
lda #$28
clc
adc.z print_line_cursor
sta.z print_line_cursor
bcc !+
inc.z print_line_cursor+1
!:
// [882] if((byte*) print_line_cursor#19<(byte*) print_char_cursor#32) goto print_ln::@1 -- pbuz1_lt_pbuz2_then_la1
lda.z print_line_cursor+1
cmp.z print_char_cursor+1
bcc b1_from_b1
bne !+
lda.z print_line_cursor
cmp.z print_char_cursor
bcc b1_from_b1
!:
jmp breturn
// print_ln::@return
breturn:
// [883] return
rts
}
// print_cls
// Clear the screen. Also resets current line/char cursor.
print_cls: {
// [885] call memset
// [887] phi from print_cls to memset [phi:print_cls->memset]
memset_from_print_cls:
jsr memset
jmp breturn
// print_cls::@return
breturn:
// [886] return
rts
}
// memset
// Copies the character c (an unsigned char) to the first num characters of the object pointed to by the argument str.
memset: {
.const c = ' '
.const num = $3e8
.label str = menu.SCREEN
.label end = str+num
.label dst = 9
// [888] phi from memset to memset::@1 [phi:memset->memset::@1]
b1_from_memset:
// [888] phi (byte*) memset::dst#2 = (byte*)(const void*) memset::str#0 [phi:memset->memset::@1#0] -- pbuz1=pbuc1
lda #<str
sta.z dst
lda #>str
sta.z dst+1
jmp b1
// memset::@1
b1:
// [889] if((byte*) memset::dst#2!=(const byte*) memset::end#0) goto memset::@2 -- pbuz1_neq_pbuc1_then_la1
lda.z dst+1
cmp #>end
bne b2
lda.z dst
cmp #<end
bne b2
jmp breturn
// memset::@return
breturn:
// [890] return
rts
// memset::@2
b2:
// [891] *((byte*) memset::dst#2) ← (const byte) memset::c#0 -- _deref_pbuz1=vbuc1
lda #c
ldy #0
sta (dst),y
// [892] (byte*) memset::dst#1 ← ++ (byte*) memset::dst#2 -- pbuz1=_inc_pbuz1
inc.z dst
bne !+
inc.z dst+1
!:
// [888] phi from memset::@2 to memset::@1 [phi:memset::@2->memset::@1]
b1_from_b2:
// [888] phi (byte*) memset::dst#2 = (byte*) memset::dst#1 [phi:memset::@2->memset::@1#0] -- register_copy
jmp b1
}
// print_set_screen
// Set the screen to print on. Also resets current line/char cursor.
print_set_screen: {
jmp breturn
// print_set_screen::@return
breturn:
// [894] return
rts
}
// File Data
// Default vallues for the palette
DTV_PALETTE_DEFAULT: .byte 0, $f, $36, $be, $58, $db, $86, $ff, $29, $26, $3b, 5, 7, $df, $9a, $a
// Keyboard row bitmask as expected by CIA#1 Port A when reading a specific keyboard matrix row (rows are numbered 0-7)
keyboard_matrix_row_bitmask: .byte $fe, $fd, $fb, $f7, $ef, $df, $bf, $7f
// Keyboard matrix column bitmasks for a specific keybooard matrix column when reading the keyboard. (columns are numbered 0-7)
keyboard_matrix_col_bitmask: .byte 1, 2, 4, 8, $10, $20, $40, $80
// Tables for the plotter - initialized by calling bitmap_draw_init();
bitmap_plot_xlo: .fill $100, 0
bitmap_plot_xhi: .fill $100, 0
bitmap_plot_ylo: .fill $100, 0
bitmap_plot_yhi: .fill $100, 0
bitmap_plot_bit: .fill $100, 0
MENU_TEXT: .text "C64DTV Graphics Modes CCLHBME@ OHIIMCC@ LUNCMMM@----------------------------------------@1. Standard Char (V) 0000000@2. Extended Color Char (V) 0000001@3. Multicolor Char (V) 0000010@4. Standard Bitmap (V) 0000100@5. Multicolor Bitmap (V) 0000110@6. High Color Standard Char (H) 0001000@7. High Extended Color Char (H) 0001001@8. High Multicolor Char (H) 0001010@9. High Multicolor Bitmap (H) 0001110@a. Sixs Fred 2 (D) 0010111@b. Two Plane Bitmap (D) 0011101@c. Sixs Fred (2 Plane MC BM) (D) 0011111@d. 8bpp Pixel Cell (D) 0111011@e. Chunky 8bpp Bitmap (D) 1111011@----------------------------------------@ (V) vicII (H) vicII+hicol (D) c64dtv@"
.byte 0
ASSEMBLER OPTIMIZATIONS
Removing instruction jmp b1
Removing instruction jmp bend
Removing instruction jmp b1
Removing instruction jmp b1
Removing instruction jmp b2
Removing instruction jmp b4
Removing instruction jmp b29
Removing instruction jmp b30
Removing instruction jmp b5
Removing instruction jmp b31
Removing instruction jmp b17
Removing instruction jmp breturn
Removing instruction jmp b6
Removing instruction jmp b32
Removing instruction jmp b18
Removing instruction jmp b7
Removing instruction jmp b33
Removing instruction jmp b19
Removing instruction jmp b8
Removing instruction jmp b34
Removing instruction jmp b20
Removing instruction jmp b9
Removing instruction jmp b35
Removing instruction jmp b21
Removing instruction jmp b10
Removing instruction jmp b36
Removing instruction jmp b22
Removing instruction jmp b11
Removing instruction jmp b37
Removing instruction jmp b23
Removing instruction jmp b12
Removing instruction jmp b38
Removing instruction jmp b24
Removing instruction jmp b13
Removing instruction jmp b39
Removing instruction jmp b25
Removing instruction jmp b14
Removing instruction jmp b40
Removing instruction jmp b26
Removing instruction jmp b15
Removing instruction jmp b41
Removing instruction jmp b27
Removing instruction jmp b16
Removing instruction jmp b42
Removing instruction jmp b28
Removing instruction jmp b1
Removing instruction jmp b2
Removing instruction jmp b3
Removing instruction jmp b4
Removing instruction jmp b6
Removing instruction jmp b9
Removing instruction jmp b5
Removing instruction jmp b7
Removing instruction jmp b8
Removing instruction jmp b10
Removing instruction jmp breturn
Removing instruction jmp b1
Removing instruction jmp b2
Removing instruction jmp b3
Removing instruction jmp b19
Removing instruction jmp breturn
Removing instruction jmp b20
Removing instruction jmp b12
Removing instruction jmp b5
Removing instruction jmp b21
Removing instruction jmp b13
Removing instruction jmp b6
Removing instruction jmp b22
Removing instruction jmp b14
Removing instruction jmp b7
Removing instruction jmp b23
Removing instruction jmp b15
Removing instruction jmp b8
Removing instruction jmp b24
Removing instruction jmp b16
Removing instruction jmp b9
Removing instruction jmp b25
Removing instruction jmp b17
Removing instruction jmp b10
Removing instruction jmp b26
Removing instruction jmp b27
Removing instruction jmp b11
Removing instruction jmp b18
Removing instruction jmp b1
Removing instruction jmp breturn
Removing instruction jmp breturn
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 b8
Removing instruction jmp b10
Removing instruction jmp b9
Removing instruction jmp b11
Removing instruction jmp b12
Removing instruction jmp b13
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 b8
Removing instruction jmp b9
Removing instruction jmp b10
Removing instruction jmp b11
Removing instruction jmp b12
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 b10
Removing instruction jmp b9
Removing instruction jmp b11
Removing instruction jmp b12
Removing instruction jmp b13
Removing instruction jmp b14
Removing instruction jmp b15
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 b8
Removing instruction jmp b9
Removing instruction jmp b10
Removing instruction jmp b11
Removing instruction jmp b12
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 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 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 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 b10
Removing instruction jmp b7
Removing instruction jmp b9
Removing instruction jmp breturn
Removing instruction jmp b11
Removing instruction jmp b2
Removing instruction jmp b3
Removing instruction jmp b4
Removing instruction jmp breturn
Removing instruction jmp b10
Removing instruction jmp b5
Removing instruction jmp b6
Removing instruction jmp b14
Removing instruction jmp b1
Removing instruction jmp b4
Removing instruction jmp b3
Removing instruction jmp b2
Removing instruction jmp breturn
Removing instruction jmp breturn
Removing instruction jmp b1
Removing instruction jmp b4
Removing instruction jmp b3
Removing instruction jmp b2
Removing instruction jmp breturn
Removing instruction jmp b1
Removing instruction jmp b4
Removing instruction jmp b3
Removing instruction jmp b2
Removing instruction jmp breturn
Removing instruction jmp b1
Removing instruction jmp b4
Removing instruction jmp b3
Removing instruction jmp b2
Removing instruction jmp breturn
Removing instruction jmp b1
Removing instruction jmp b2
Removing instruction jmp b3
Removing instruction jmp breturn
Removing instruction jmp b1
Removing instruction jmp b6
Removing instruction jmp b2
Removing instruction jmp b3
Removing instruction jmp b5
Removing instruction jmp b4
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 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 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 breturn
Removing instruction jmp b1
Removing instruction jmp breturn
Removing instruction jmp b2
Removing instruction jmp b4
Removing instruction jmp b3
Removing instruction jmp b5
Removing instruction jmp b6
Removing instruction jmp b1
Removing instruction jmp breturn
Removing instruction jmp breturn
Removing instruction jmp b1
Removing instruction jmp breturn
Removing instruction jmp breturn
Succesful ASM optimization Pass5NextJumpElimination
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #>0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #0
Replacing instruction ldy #0 with TAY
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #BLACK
Removing instruction ldy.z l
Removing instruction ldy.z l
Removing instruction ldy.z l
Removing instruction ldy #0
Replacing instruction ldy #0 with TAY
Removing instruction lda #>0
Replacing instruction ldx #0 with TAX
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #0
Succesful ASM optimization Pass5UnnecesaryLoadElimination
Replacing label b1_from_b1 with b1
Replacing label b1_from_b1 with b1
Replacing label b6_from_b31 with b6
Replacing label b7_from_b32 with b7
Replacing label b8_from_b33 with b8
Replacing label b9_from_b34 with b9
Replacing label b10_from_b35 with b10
Replacing label b11_from_b36 with b11
Replacing label b12_from_b37 with b12
Replacing label b13_from_b38 with b13
Replacing label b14_from_b39 with b14
Replacing label b15_from_b40 with b15
Replacing label b16_from_b41 with b16
Replacing label b5_from_b42 with b5
Replacing label b1_from_b1 with b1
Replacing label b5_from_b4 with b5
Replacing label b5_from_b4 with b5
Replacing label b4_from_b5 with b4
Replacing label b4_from_b5 with b4
Replacing label b3_from_b7 with b3
Replacing label b5_from_b20 with b5
Replacing label b6_from_b21 with b6
Replacing label b7_from_b22 with b7
Replacing label b8_from_b23 with b8
Replacing label b9_from_b24 with b9
Replacing label b10_from_b25 with b10
Replacing label b27_from_b26 with b11
Replacing label b1_from_b11 with b1
Replacing label b1_from_b18 with b1
Replacing label b1_from_b1 with b1
Replacing label b3_from_b3 with b3
Replacing label b2_from_b4 with b2
Replacing label b8_from_b9 with b8
Replacing label b7_from_b11 with b7
Replacing label b6_from_b12 with b6
Replacing label b1_from_b1 with b1
Replacing label b4_from_b4 with b4
Replacing label b3_from_b5 with b3
Replacing label b7_from_b7 with b7
Replacing label b6_from_b8 with b6
Replacing label b10_from_b10 with b10
Replacing label b9_from_b11 with b9
Replacing label b1_from_b1 with b1
Replacing label b4_from_b4 with b4
Replacing label b3_from_b5 with b3
Replacing label b7_from_b9 with b7
Replacing label b6_from_b11 with b6
Replacing label b13_from_b13 with b13
Replacing label b12_from_b14 with b12
Replacing label b9_from_b8 with b9
Replacing label b1_from_b1 with b1
Replacing label b4_from_b4 with b4
Replacing label b3_from_b5 with b3
Replacing label b7_from_b7 with b7
Replacing label b6_from_b8 with b6
Replacing label b10_from_b10 with b10
Replacing label b9_from_b11 with b9
Replacing label b1_from_b1 with b1
Replacing label b4_from_b4 with b4
Replacing label b3_from_b5 with b3
Replacing label b1_from_b1 with b1
Replacing label b4_from_b4 with b4
Replacing label b3_from_b5 with b3
Replacing label b1_from_b1 with b1
Replacing label b4_from_b4 with b4
Replacing label b3_from_b5 with b3
Replacing label b1_from_b1 with b1
Replacing label b4_from_b4 with b4
Replacing label b3_from_b5 with b3
Replacing label b2_from_b4 with b2
Replacing label b1_from_b2 with b1
Replacing label b2_from_b4 with b2
Replacing label b1_from_b2 with b1
Replacing label b2_from_b4 with b2
Replacing label b1_from_b2 with b1
Replacing label b2_from_b4 with b2
Replacing label b1_from_b2 with b1
Replacing label b2_from_b2 with b2
Replacing label b1_from_b3 with b1
Replacing label b6_from_b1 with b2
Replacing label b1_from_b2 with b1
Replacing label b4_from_b3 with b4
Replacing label b3_from_b4 with b3
Replacing label b1_from_b1 with b1
Replacing label b4_from_b4 with b4
Replacing label b3_from_b5 with b3
Replacing label b1_from_b1 with b1
Replacing label b4_from_b4 with b4
Replacing label b3_from_b5 with b3
Replacing label b1_from_b1 with b1
Replacing label b4_from_b4 with b4
Replacing label b3_from_b5 with b3
Replacing label b2_from_b1 with b2
Replacing label b3_from_b2 with b3
Replacing label b2_from_b3 with b2
Replacing label b1_from_b1 with b1
Replacing label b1_from_b1 with b1
Removing instruction b1_from_bbegin:
Removing instruction b1:
Removing instruction bend_from_b1:
Removing instruction b1_from_main:
Removing instruction b1_from_b1:
Removing instruction b1_from_b1:
Removing instruction b29_from_b4:
Removing instruction print_cls_from_b29:
Removing instruction b30_from_b29:
Removing instruction print_str_lines_from_b30:
Removing instruction b5_from_b30:
Removing instruction b5_from_b42:
Removing instruction keyboard_key_pressed_from_b5:
Removing instruction b17_from_b31:
Removing instruction b6_from_b31:
Removing instruction keyboard_key_pressed_from_b6:
Removing instruction b18_from_b32:
Removing instruction b7_from_b32:
Removing instruction keyboard_key_pressed_from_b7:
Removing instruction b19_from_b33:
Removing instruction b8_from_b33:
Removing instruction keyboard_key_pressed_from_b8:
Removing instruction b20_from_b34:
Removing instruction b9_from_b34:
Removing instruction keyboard_key_pressed_from_b9:
Removing instruction b21_from_b35:
Removing instruction b10_from_b35:
Removing instruction keyboard_key_pressed_from_b10:
Removing instruction b22_from_b36:
Removing instruction b11_from_b36:
Removing instruction keyboard_key_pressed_from_b11:
Removing instruction b23_from_b37:
Removing instruction b12_from_b37:
Removing instruction keyboard_key_pressed_from_b12:
Removing instruction b24_from_b38:
Removing instruction b13_from_b38:
Removing instruction keyboard_key_pressed_from_b13:
Removing instruction b25_from_b39:
Removing instruction b14_from_b39:
Removing instruction keyboard_key_pressed_from_b14:
Removing instruction b26_from_b40:
Removing instruction b15_from_b40:
Removing instruction keyboard_key_pressed_from_b15:
Removing instruction b27_from_b41:
Removing instruction b16_from_b41:
Removing instruction keyboard_key_pressed_from_b16:
Removing instruction b28_from_b42:
Removing instruction b1_from_b1:
Removing instruction b2_from_b1:
Removing instruction dtvSetCpuBankSegment1_from_b2:
Removing instruction b3_from_b7:
Removing instruction b4_from_b3:
Removing instruction b4_from_b5:
Removing instruction b5_from_b4:
Removing instruction b8_from_b7:
Removing instruction dtvSetCpuBankSegment1_from_b8:
Removing instruction b10_from_b8:
Removing instruction mode_ctrl_from_b10:
Removing instruction b1_from_mode_ctrl:
Removing instruction b1_from_b11:
Removing instruction b1_from_b18:
Removing instruction b3_from_b2:
Removing instruction keyboard_key_pressed_from_b3:
Removing instruction b5_from_b12:
Removing instruction b5_from_b20:
Removing instruction keyboard_key_pressed_from_b5:
Removing instruction b6_from_b13:
Removing instruction b6_from_b21:
Removing instruction keyboard_key_pressed_from_b6:
Removing instruction b7_from_b14:
Removing instruction b7_from_b22:
Removing instruction keyboard_key_pressed_from_b7:
Removing instruction b8_from_b15:
Removing instruction b8_from_b23:
Removing instruction keyboard_key_pressed_from_b8:
Removing instruction b9_from_b16:
Removing instruction b9_from_b24:
Removing instruction keyboard_key_pressed_from_b9:
Removing instruction b10_from_b17:
Removing instruction b10_from_b25:
Removing instruction keyboard_key_pressed_from_b10:
Removing instruction b27_from_b26:
Removing instruction b27:
Removing instruction b11_from_b27:
Removing instruction b1_from_b1:
Removing instruction b2_from_b4:
Removing instruction b3_from_b2:
Removing instruction b3_from_b3:
Removing instruction b6_from_b12:
Removing instruction b7_from_b6:
Removing instruction b7_from_b11:
Removing instruction b8_from_b9:
Removing instruction b1_from_b1:
Removing instruction b3_from_b5:
Removing instruction b4_from_b3:
Removing instruction b4_from_b4:
Removing instruction b6_from_b8:
Removing instruction b7_from_b6:
Removing instruction b7_from_b7:
Removing instruction b9_from_b11:
Removing instruction b10_from_b9:
Removing instruction b10_from_b10:
Removing instruction b12_from_b11:
Removing instruction mode_ctrl_from_b12:
Removing instruction b1_from_b1:
Removing instruction b3_from_b5:
Removing instruction b4_from_b3:
Removing instruction b4_from_b4:
Removing instruction b6_from_b11:
Removing instruction b7_from_b6:
Removing instruction b7_from_b9:
Removing instruction b9_from_b10:
Removing instruction b9_from_b8:
Removing instruction b12_from_b14:
Removing instruction b13_from_b12:
Removing instruction b13_from_b13:
Removing instruction b15_from_b14:
Removing instruction mode_ctrl_from_b15:
Removing instruction b1_from_b1:
Removing instruction b3_from_b5:
Removing instruction b4_from_b3:
Removing instruction b4_from_b4:
Removing instruction b6_from_b8:
Removing instruction b7_from_b6:
Removing instruction b7_from_b7:
Removing instruction b9_from_b11:
Removing instruction b10_from_b9:
Removing instruction b10_from_b10:
Removing instruction b12_from_b11:
Removing instruction mode_ctrl_from_b12:
Removing instruction b1_from_b1:
Removing instruction b3_from_b5:
Removing instruction b4_from_b3:
Removing instruction b4_from_b4:
Removing instruction b6_from_b5:
Removing instruction mode_ctrl_from_b6:
Removing instruction b1_from_b1:
Removing instruction b3_from_b5:
Removing instruction b4_from_b3:
Removing instruction b4_from_b4:
Removing instruction b6_from_b5:
Removing instruction mode_ctrl_from_b6:
Removing instruction b1_from_b1:
Removing instruction b3_from_b5:
Removing instruction b4_from_b3:
Removing instruction b4_from_b4:
Removing instruction b6_from_b5:
Removing instruction mode_ctrl_from_b6:
Removing instruction b1_from_b1:
Removing instruction b3_from_b5:
Removing instruction b4_from_b3:
Removing instruction b4_from_b4:
Removing instruction b6_from_b5:
Removing instruction bitmap_init_from_b6:
Removing instruction b10_from_b6:
Removing instruction b9_from_b7:
Removing instruction mode_ctrl_from_b9:
Removing instruction b1_from_bitmap_line_xdyi:
Removing instruction b1_from_b2:
Removing instruction b2_from_b3:
Removing instruction b2_from_b4:
Removing instruction b1_from_bitmap_line_ydxi:
Removing instruction b1_from_b2:
Removing instruction b2_from_b3:
Removing instruction b2_from_b4:
Removing instruction b1_from_bitmap_line_xdyd:
Removing instruction b1_from_b2:
Removing instruction b2_from_b3:
Removing instruction b2_from_b4:
Removing instruction b1_from_bitmap_line_ydxd:
Removing instruction b1_from_b2:
Removing instruction b2_from_b3:
Removing instruction b2_from_b4:
Removing instruction b1_from_b3:
Removing instruction b2_from_b1:
Removing instruction b2_from_b2:
Removing instruction b1_from_b2:
Removing instruction b6_from_b1:
Removing instruction b6:
Removing instruction b2_from_b6:
Removing instruction b3_from_b4:
Removing instruction b4_from_b3:
Removing instruction b4_from_b5:
Removing instruction b1_from_b1:
Removing instruction b3_from_b5:
Removing instruction b4_from_b3:
Removing instruction b4_from_b4:
Removing instruction b6_from_b5:
Removing instruction mode_ctrl_from_b6:
Removing instruction b1_from_b1:
Removing instruction b3_from_b5:
Removing instruction b4_from_b3:
Removing instruction b4_from_b4:
Removing instruction b6_from_b5:
Removing instruction mode_ctrl_from_b6:
Removing instruction b1_from_b1:
Removing instruction b3_from_b5:
Removing instruction b4_from_b3:
Removing instruction b4_from_b4:
Removing instruction b6_from_b5:
Removing instruction mode_ctrl_from_b6:
Removing instruction b2_from_b1:
Removing instruction b2_from_b3:
Removing instruction b3_from_b2:
Removing instruction b3_from_b4:
Removing instruction b5_from_b3:
Removing instruction print_ln_from_b5:
Removing instruction b1_from_print_ln:
Removing instruction b1_from_b1:
Succesful ASM optimization Pass5RedundantLabelElimination
Removing instruction bend:
Removing instruction b1_from_menu:
Removing instruction b2_from_b1:
Removing instruction b4:
Removing instruction print_set_screen_from_b4:
Removing instruction b29:
Removing instruction b30:
Removing instruction b31:
Removing instruction b17:
Removing instruction b32:
Removing instruction b18:
Removing instruction b33:
Removing instruction b19:
Removing instruction b34:
Removing instruction b20:
Removing instruction b35:
Removing instruction b21:
Removing instruction b36:
Removing instruction b22:
Removing instruction b37:
Removing instruction b23:
Removing instruction b38:
Removing instruction b24:
Removing instruction b39:
Removing instruction b25:
Removing instruction b40:
Removing instruction b26:
Removing instruction b41:
Removing instruction b27:
Removing instruction b42:
Removing instruction b28:
Removing instruction b2_from_b3:
Removing instruction b1_from_mode_8bppchunkybmm:
Removing instruction b2:
Removing instruction b3_from_b2:
Removing instruction b6:
Removing instruction dtvSetCpuBankSegment1_from_b6:
Removing instruction b9:
Removing instruction b5_from_b9:
Removing instruction b7:
Removing instruction b8:
Removing instruction b10:
Removing instruction breturn:
Removing instruction b3:
Removing instruction b19:
Removing instruction breturn:
Removing instruction keyboard_key_pressed_from_b4:
Removing instruction b20:
Removing instruction b12:
Removing instruction b21:
Removing instruction b13:
Removing instruction b22:
Removing instruction b14:
Removing instruction b23:
Removing instruction b15:
Removing instruction b24:
Removing instruction b16:
Removing instruction b25:
Removing instruction b17:
Removing instruction b26:
Removing instruction b11_from_b26:
Removing instruction b18:
Removing instruction b1:
Removing instruction breturn:
Removing instruction breturn:
Removing instruction breturn:
Removing instruction b1_from_mode_8bpppixelcell:
Removing instruction b2_from_b1:
Removing instruction b4:
Removing instruction b5:
Removing instruction b6_from_b5:
Removing instruction b8_from_b7:
Removing instruction b10:
Removing instruction b9_from_b10:
Removing instruction b11:
Removing instruction b12:
Removing instruction b13:
Removing instruction mode_ctrl_from_b13:
Removing instruction breturn:
Removing instruction b1_from_mode_sixsfred:
Removing instruction b2:
Removing instruction b3_from_b2:
Removing instruction b5:
Removing instruction b6_from_b5:
Removing instruction b8:
Removing instruction b9_from_b8:
Removing instruction b11:
Removing instruction b12:
Removing instruction breturn:
Removing instruction b1_from_mode_twoplanebitmap:
Removing instruction b2:
Removing instruction b3_from_b2:
Removing instruction b5:
Removing instruction b6_from_b5:
Removing instruction b10:
Removing instruction b11:
Removing instruction b12_from_b11:
Removing instruction b14:
Removing instruction b15:
Removing instruction breturn:
Removing instruction b1_from_mode_sixsfred2:
Removing instruction b2:
Removing instruction b3_from_b2:
Removing instruction b5:
Removing instruction b6_from_b5:
Removing instruction b8:
Removing instruction b9_from_b8:
Removing instruction b11:
Removing instruction b12:
Removing instruction breturn:
Removing instruction b1_from_mode_hicolmcchar:
Removing instruction b2:
Removing instruction b3_from_b2:
Removing instruction b5:
Removing instruction b6:
Removing instruction breturn:
Removing instruction b1_from_mode_hicolecmchar:
Removing instruction b2:
Removing instruction b3_from_b2:
Removing instruction b5:
Removing instruction b6:
Removing instruction breturn:
Removing instruction b1_from_mode_hicolstdchar:
Removing instruction b2:
Removing instruction b3_from_b2:
Removing instruction b5:
Removing instruction b6:
Removing instruction breturn:
Removing instruction b1_from_mode_stdbitmap:
Removing instruction b2:
Removing instruction b3_from_b2:
Removing instruction b5:
Removing instruction b6:
Removing instruction b10:
Removing instruction b7_from_b10:
Removing instruction b9:
Removing instruction breturn:
Removing instruction b11:
Removing instruction b7_from_b11:
Removing instruction b2:
Removing instruction b3:
Removing instruction b4:
Removing instruction bitmap_line_ydxi_from_b4:
Removing instruction bitmap_line_xdyi_from_b8:
Removing instruction b10:
Removing instruction bitmap_line_ydxd_from_b10:
Removing instruction bitmap_line_xdyd_from_b9:
Removing instruction b5:
Removing instruction b6:
Removing instruction bitmap_line_ydxd_from_b6:
Removing instruction bitmap_line_xdyd_from_b12:
Removing instruction b14:
Removing instruction bitmap_line_ydxi_from_b14:
Removing instruction bitmap_line_xdyi_from_b13:
Removing instruction bitmap_plot_from_b1:
Removing instruction b4:
Removing instruction b3:
Removing instruction breturn:
Removing instruction breturn:
Removing instruction bitmap_plot_from_b1:
Removing instruction b4:
Removing instruction b3:
Removing instruction breturn:
Removing instruction bitmap_plot_from_b1:
Removing instruction b4:
Removing instruction b3:
Removing instruction breturn:
Removing instruction bitmap_plot_from_b1:
Removing instruction b4:
Removing instruction b3:
Removing instruction breturn:
Removing instruction b1_from_bitmap_clear:
Removing instruction b3:
Removing instruction breturn:
Removing instruction b1_from_bitmap_init:
Removing instruction b2_from_b1:
Removing instruction b3_from_b2:
Removing instruction b5:
Removing instruction breturn:
Removing instruction b1_from_mode_mcchar:
Removing instruction b2:
Removing instruction b3_from_b2:
Removing instruction b5:
Removing instruction b6:
Removing instruction breturn:
Removing instruction b1_from_mode_ecmchar:
Removing instruction b2:
Removing instruction b3_from_b2:
Removing instruction b5:
Removing instruction b6:
Removing instruction breturn:
Removing instruction b1_from_mode_stdchar:
Removing instruction b2:
Removing instruction b3_from_b2:
Removing instruction b5:
Removing instruction b6:
Removing instruction breturn:
Removing instruction b1_from_print_str_lines:
Removing instruction breturn:
Removing instruction b4:
Removing instruction b5:
Removing instruction b6:
Removing instruction b1_from_b6:
Removing instruction breturn:
Removing instruction memset_from_print_cls:
Removing instruction breturn:
Removing instruction b1_from_memset:
Removing instruction breturn:
Removing instruction b1_from_b2:
Removing instruction breturn:
Succesful ASM optimization Pass5UnusedLabelElimination
Updating BasicUpstart to call main directly
Removing instruction jsr main
Succesful ASM optimization Pass5SkipBegin
Replacing jump to rts with rts in jmp breturn
Replacing jump to rts with rts in jmp breturn
Replacing jump to rts with rts in jmp breturn
Replacing jump to rts with rts in jmp breturn
Replacing jump to rts with rts in jmp breturn
Replacing jump to rts with rts in jmp breturn
Replacing jump to rts with rts in jmp breturn
Replacing jump to rts with rts in jmp breturn
Replacing jump to rts with rts in jmp breturn
Replacing jump to rts with rts in jmp breturn
Replacing jump to rts with rts in jmp breturn
Replacing jump to rts with rts in jmp breturn
Replacing jump to rts with rts in jmp breturn
Replacing jump to rts with rts in jmp breturn
Replacing jump to rts with rts in jmp breturn
Replacing jump to rts with rts in jmp breturn
Replacing jump to rts with rts in jmp breturn
Replacing jump to rts with rts in jmp breturn
Succesful ASM optimization Pass5DoubleJumpElimination
Relabelling long label b9_from_b8 to b4
Succesful ASM optimization Pass5RelabelLongLabels
Removing instruction jmp b1
Removing instruction jmp b1
Removing instruction jmp b3
Removing instruction jmp b4
Removing instruction jmp b5
Removing instruction jmp b11
Removing instruction jmp b1
Removing instruction jmp b2
Removing instruction jmp b3
Removing instruction jmp b6
Removing instruction jmp b7
Removing instruction jmp b8
Removing instruction jmp b1
Removing instruction jmp b3
Removing instruction jmp b4
Removing instruction jmp b6
Removing instruction jmp b7
Removing instruction jmp b9
Removing instruction jmp b10
Removing instruction jmp b1
Removing instruction jmp b3
Removing instruction jmp b4
Removing instruction jmp b6
Removing instruction jmp b7
Removing instruction jmp b12
Removing instruction jmp b13
Removing instruction jmp b1
Removing instruction jmp b3
Removing instruction jmp b4
Removing instruction jmp b6
Removing instruction jmp b7
Removing instruction jmp b9
Removing instruction jmp b10
Removing instruction jmp b1
Removing instruction jmp b3
Removing instruction jmp b4
Removing instruction jmp b1
Removing instruction jmp b3
Removing instruction jmp b4
Removing instruction jmp b1
Removing instruction jmp b3
Removing instruction jmp b4
Removing instruction jmp b1
Removing instruction jmp b3
Removing instruction jmp b4
Removing instruction jmp b1
Removing instruction jmp b2
Removing instruction jmp b1
Removing instruction jmp b2
Removing instruction jmp b3
Removing instruction jmp b1
Removing instruction jmp b3
Removing instruction jmp b4
Removing instruction jmp b1
Removing instruction jmp b3
Removing instruction jmp b4
Removing instruction jmp b1
Removing instruction jmp b3
Removing instruction jmp b4
Succesful ASM optimization Pass5NextJumpElimination
Replacing instruction ldx #0 with TAX
Replacing instruction ldx #0 with TAX
Replacing instruction ldx #0 with TAX
Replacing instruction ldx #0 with TAX
Replacing instruction ldx #0 with TAX
Removing instruction lda.z y0
Removing instruction lda.z y0
Succesful ASM optimization Pass5UnnecesaryLoadElimination
Removing instruction bbegin:
Removing instruction breturn:
Removing instruction breturn:
Succesful ASM optimization Pass5UnusedLabelElimination
Fixing long branch [254] beq b5 to bne
Fixing long branch [162] bne b3 to beq
Fixing long branch [167] bne b3 to beq
FINAL SYMBOL TABLE
(label) @1
(label) @begin
(label) @end
(byte*) BGCOL
(const byte*) BGCOL#0 BGCOL = (byte*) 53281
(byte*) BGCOL1
(const byte*) BGCOL1#0 BGCOL1 = (byte*) 53281
(byte*) BGCOL2
(const byte*) BGCOL2#0 BGCOL2 = (byte*) 53282
(byte*) BGCOL3
(const byte*) BGCOL3#0 BGCOL3 = (byte*) 53283
(byte*) BGCOL4
(const byte*) BGCOL4#0 BGCOL4 = (byte*) 53284
(byte) BLACK
(const byte) BLACK#0 BLACK = (byte) 0
(byte) BLUE
(const byte) BLUE#0 BLUE = (byte) 6
(byte*) BORDERCOL
(const byte*) BORDERCOL#0 BORDERCOL = (byte*) 53280
(byte*) CIA1_PORT_A
(const byte*) CIA1_PORT_A#0 CIA1_PORT_A = (byte*) 56320
(byte*) CIA1_PORT_B
(const byte*) CIA1_PORT_B#0 CIA1_PORT_B = (byte*) 56321
(byte*) CIA2_PORT_A
(const byte*) CIA2_PORT_A#0 CIA2_PORT_A = (byte*) 56576
(byte*) CIA2_PORT_A_DDR
(const byte*) CIA2_PORT_A_DDR#0 CIA2_PORT_A_DDR = (byte*) 56578
(byte*) COLS
(const byte*) COLS#0 COLS = (byte*) 55296
(byte) DTV_BORDER_OFF
(const byte) DTV_BORDER_OFF#0 DTV_BORDER_OFF = (byte) 2
(byte) DTV_CHUNKY
(const byte) DTV_CHUNKY#0 DTV_CHUNKY = (byte) $40
(byte) DTV_COLORRAM_OFF
(const byte) DTV_COLORRAM_OFF#0 DTV_COLORRAM_OFF = (byte) $10
(dword) DTV_COLOR_BANK_DEFAULT
(const dword) DTV_COLOR_BANK_DEFAULT#0 DTV_COLOR_BANK_DEFAULT = (dword) $1d800
(byte*) DTV_COLOR_BANK_HI
(const byte*) DTV_COLOR_BANK_HI#0 DTV_COLOR_BANK_HI = (byte*) 53303
(byte*) DTV_COLOR_BANK_LO
(const byte*) DTV_COLOR_BANK_LO#0 DTV_COLOR_BANK_LO = (byte*) 53302
(byte*) DTV_CONTROL
(const byte*) DTV_CONTROL#0 DTV_CONTROL = (byte*) 53308
(byte*) DTV_FEATURE
(const byte*) DTV_FEATURE#0 DTV_FEATURE = (byte*) 53311
(byte) DTV_FEATURE_ENABLE
(const byte) DTV_FEATURE_ENABLE#0 DTV_FEATURE_ENABLE = (byte) 1
(byte*) DTV_GRAPHICS_VIC_BANK
(const byte*) DTV_GRAPHICS_VIC_BANK#0 DTV_GRAPHICS_VIC_BANK = (byte*) 53309
(byte) DTV_HIGHCOLOR
(const byte) DTV_HIGHCOLOR#0 DTV_HIGHCOLOR = (byte) 4
(byte) DTV_LINEAR
(const byte) DTV_LINEAR#0 DTV_LINEAR = (byte) 1
(byte) DTV_OVERSCAN
(const byte) DTV_OVERSCAN#0 DTV_OVERSCAN = (byte) 8
(byte*) DTV_PALETTE
(const byte*) DTV_PALETTE#0 DTV_PALETTE = (byte*) 53760
(byte[$10]) DTV_PALETTE_DEFAULT
(const byte[$10]) DTV_PALETTE_DEFAULT#0 DTV_PALETTE_DEFAULT = { (byte) 0, (byte) $f, (byte) $36, (byte) $be, (byte) $58, (byte) $db, (byte) $86, (byte) $ff, (byte) $29, (byte) $26, (byte) $3b, (byte) 5, (byte) 7, (byte) $df, (byte) $9a, (byte) $a }
(byte*) DTV_PLANEA_MODULO_HI
(const byte*) DTV_PLANEA_MODULO_HI#0 DTV_PLANEA_MODULO_HI = (byte*) 53305
(byte*) DTV_PLANEA_MODULO_LO
(const byte*) DTV_PLANEA_MODULO_LO#0 DTV_PLANEA_MODULO_LO = (byte*) 53304
(byte*) DTV_PLANEA_START_HI
(const byte*) DTV_PLANEA_START_HI#0 DTV_PLANEA_START_HI = (byte*) 53317
(byte*) DTV_PLANEA_START_LO
(const byte*) DTV_PLANEA_START_LO#0 DTV_PLANEA_START_LO = (byte*) 53306
(byte*) DTV_PLANEA_START_MI
(const byte*) DTV_PLANEA_START_MI#0 DTV_PLANEA_START_MI = (byte*) 53307
(byte*) DTV_PLANEA_STEP
(const byte*) DTV_PLANEA_STEP#0 DTV_PLANEA_STEP = (byte*) 53318
(byte*) DTV_PLANEB_MODULO_HI
(const byte*) DTV_PLANEB_MODULO_HI#0 DTV_PLANEB_MODULO_HI = (byte*) 53320
(byte*) DTV_PLANEB_MODULO_LO
(const byte*) DTV_PLANEB_MODULO_LO#0 DTV_PLANEB_MODULO_LO = (byte*) 53319
(byte*) DTV_PLANEB_START_HI
(const byte*) DTV_PLANEB_START_HI#0 DTV_PLANEB_START_HI = (byte*) 53323
(byte*) DTV_PLANEB_START_LO
(const byte*) DTV_PLANEB_START_LO#0 DTV_PLANEB_START_LO = (byte*) 53321
(byte*) DTV_PLANEB_START_MI
(const byte*) DTV_PLANEB_START_MI#0 DTV_PLANEB_START_MI = (byte*) 53322
(byte*) DTV_PLANEB_STEP
(const byte*) DTV_PLANEB_STEP#0 DTV_PLANEB_STEP = (byte*) 53324
(byte) GREEN
(const byte) GREEN#0 GREEN = (byte) 5
(byte) KEY_0
(const byte) KEY_0#0 KEY_0 = (byte) $23
(byte) KEY_1
(const byte) KEY_1#0 KEY_1 = (byte) $38
(byte) KEY_2
(const byte) KEY_2#0 KEY_2 = (byte) $3b
(byte) KEY_3
(const byte) KEY_3#0 KEY_3 = (byte) 8
(byte) KEY_4
(const byte) KEY_4#0 KEY_4 = (byte) $b
(byte) KEY_6
(const byte) KEY_6#0 KEY_6 = (byte) $13
(byte) KEY_7
(const byte) KEY_7#0 KEY_7 = (byte) $18
(byte) KEY_8
(const byte) KEY_8#0 KEY_8 = (byte) $1b
(byte) KEY_A
(const byte) KEY_A#0 KEY_A = (byte) $a
(byte) KEY_B
(const byte) KEY_B#0 KEY_B = (byte) $1c
(byte) KEY_C
(const byte) KEY_C#0 KEY_C = (byte) $14
(byte) KEY_D
(const byte) KEY_D#0 KEY_D = (byte) $12
(byte) KEY_E
(const byte) KEY_E#0 KEY_E = (byte) $e
(byte) KEY_H
(const byte) KEY_H#0 KEY_H = (byte) $1d
(byte) KEY_L
(const byte) KEY_L#0 KEY_L = (byte) $2a
(byte) KEY_O
(const byte) KEY_O#0 KEY_O = (byte) $26
(byte) KEY_SPACE
(const byte) KEY_SPACE#0 KEY_SPACE = (byte) $3c
(byte) KEY_U
(const byte) KEY_U#0 KEY_U = (byte) $1e
(byte) LIGHT_GREEN
(const byte) LIGHT_GREEN#0 LIGHT_GREEN = (byte) $d
(byte[]) MENU_TEXT
(const byte[]) MENU_TEXT#0 MENU_TEXT = (string) "C64DTV Graphics Modes CCLHBME@ OHIIMCC@ LUNCMMM@----------------------------------------@1. Standard Char (V) 0000000@2. Extended Color Char (V) 0000001@3. Multicolor Char (V) 0000010@4. Standard Bitmap (V) 0000100@5. Multicolor Bitmap (V) 0000110@6. High Color Standard Char (H) 0001000@7. High Extended Color Char (H) 0001001@8. High Multicolor Char (H) 0001010@9. High Multicolor Bitmap (H) 0001110@a. Sixs Fred 2 (D) 0010111@b. Two Plane Bitmap (D) 0011101@c. Sixs Fred (2 Plane MC BM) (D) 0011111@d. 8bpp Pixel Cell (D) 0111011@e. Chunky 8bpp Bitmap (D) 1111011@----------------------------------------@ (V) vicII (H) vicII+hicol (D) c64dtv@"
(byte*) PROCPORT
(const byte*) PROCPORT#0 PROCPORT = (byte*) 1
(byte*) PROCPORT_DDR
(const byte*) PROCPORT_DDR#0 PROCPORT_DDR = (byte*) 0
(byte) PROCPORT_DDR_MEMORY_MASK
(const byte) PROCPORT_DDR_MEMORY_MASK#0 PROCPORT_DDR_MEMORY_MASK = (byte) 7
(byte) PROCPORT_RAM_CHARROM
(const byte) PROCPORT_RAM_CHARROM#0 PROCPORT_RAM_CHARROM = (byte) 1
(byte) PROCPORT_RAM_IO
(const byte) PROCPORT_RAM_IO#0 PROCPORT_RAM_IO = (byte) 5
(const byte) RADIX::BINARY BINARY = (number) 2
(const byte) RADIX::DECIMAL DECIMAL = (number) $a
(const byte) RADIX::HEXADECIMAL HEXADECIMAL = (number) $10
(const byte) RADIX::OCTAL OCTAL = (number) 8
(byte*) RASTER
(const byte*) RASTER#0 RASTER = (byte*) 53266
(byte) VIC_BMM
(const byte) VIC_BMM#0 VIC_BMM = (byte) $20
(byte*) VIC_CONTROL
(const byte*) VIC_CONTROL#0 VIC_CONTROL = (byte*) 53265
(byte*) VIC_CONTROL2
(const byte*) VIC_CONTROL2#0 VIC_CONTROL2 = (byte*) 53270
(byte) VIC_CSEL
(const byte) VIC_CSEL#0 VIC_CSEL = (byte) 8
(byte) VIC_DEN
(const byte) VIC_DEN#0 VIC_DEN = (byte) $10
(byte) VIC_ECM
(const byte) VIC_ECM#0 VIC_ECM = (byte) $40
(byte) VIC_MCM
(const byte) VIC_MCM#0 VIC_MCM = (byte) $10
(byte*) VIC_MEMORY
(const byte*) VIC_MEMORY#0 VIC_MEMORY = (byte*) 53272
(byte) VIC_RSEL
(const byte) VIC_RSEL#0 VIC_RSEL = (byte) 8
(void()) bitmap_clear()
(label) bitmap_clear::@1
(label) bitmap_clear::@2
(label) bitmap_clear::@3
(label) bitmap_clear::@return
(byte*) bitmap_clear::bitmap
(word) bitmap_clear::bitmap#0 bitmap zp ZP_WORD:9 2.0
(byte*) bitmap_clear::bitmap#1 bitmap zp ZP_WORD:9 420.59999999999997
(byte*) bitmap_clear::bitmap#2 bitmap zp ZP_WORD:9 1552.0
(byte*) bitmap_clear::bitmap#3 bitmap zp ZP_WORD:9 204.0
(byte*~) bitmap_clear::bitmap#5 bitmap zp ZP_WORD:9 4.0
(byte) bitmap_clear::x
(byte) bitmap_clear::x#1 reg byte x 1501.5
(byte) bitmap_clear::x#2 reg byte x 667.3333333333334
(byte) bitmap_clear::y
(byte) bitmap_clear::y#1 y zp ZP_BYTE:14 151.5
(byte) bitmap_clear::y#4 y zp ZP_BYTE:14 33.666666666666664
(void()) bitmap_init((byte*) bitmap_init::bitmap)
(byte~) bitmap_init::$0 reg byte a 202.0
(byte~) bitmap_init::$10 $10 zp ZP_BYTE:13 50.5
(byte~) bitmap_init::$7 reg byte a 202.0
(byte~) bitmap_init::$8 reg byte a 202.0
(byte~) bitmap_init::$9 reg byte a 202.0
(label) bitmap_init::@1
(label) bitmap_init::@2
(label) bitmap_init::@3
(label) bitmap_init::@4
(label) bitmap_init::@5
(label) bitmap_init::@6
(label) bitmap_init::@return
(byte*) bitmap_init::bitmap
(byte) bitmap_init::bits
(byte) bitmap_init::bits#1 reg byte y 101.0
(byte) bitmap_init::bits#3 reg byte y 60.599999999999994
(byte) bitmap_init::bits#4 reg byte y 67.33333333333333
(byte) bitmap_init::x
(byte) bitmap_init::x#1 reg byte x 151.5
(byte) bitmap_init::x#2 reg byte x 67.33333333333333
(byte) bitmap_init::y
(byte) bitmap_init::y#1 reg byte x 151.5
(byte) bitmap_init::y#2 reg byte x 50.5
(byte*) bitmap_init::yoffs
(byte*) bitmap_init::yoffs#1 yoffs zp ZP_WORD:9 202.0
(byte*) bitmap_init::yoffs#2 yoffs zp ZP_WORD:9 63.125
(byte*) bitmap_init::yoffs#4 yoffs zp ZP_WORD:9 101.0
(void()) bitmap_line((byte) bitmap_line::x0 , (byte) bitmap_line::x1 , (byte) bitmap_line::y0 , (byte) bitmap_line::y1)
(label) bitmap_line::@1
(label) bitmap_line::@10
(label) bitmap_line::@11
(label) bitmap_line::@12
(label) bitmap_line::@13
(label) bitmap_line::@14
(label) bitmap_line::@2
(label) bitmap_line::@3
(label) bitmap_line::@4
(label) bitmap_line::@5
(label) bitmap_line::@6
(label) bitmap_line::@7
(label) bitmap_line::@8
(label) bitmap_line::@9
(label) bitmap_line::@return
(byte) bitmap_line::x0
(byte) bitmap_line::x0#0 x0 zp ZP_BYTE:6 5.173913043478264
(byte) bitmap_line::x1
(byte) bitmap_line::x1#0 reg byte x 5.409090909090908
(byte) bitmap_line::xd
(byte) bitmap_line::xd#1 xd zp ZP_BYTE:7 0.7
(byte) bitmap_line::xd#2 xd zp ZP_BYTE:7 0.7
(byte) bitmap_line::y0
(byte) bitmap_line::y0#0 y0 zp ZP_BYTE:8 5.952380952380948
(byte) bitmap_line::y1
(byte) bitmap_line::y1#0 y1 zp ZP_BYTE:3 6.249999999999996
(byte) bitmap_line::yd
(byte) bitmap_line::yd#1 reg byte y 0.8888888888888888
(byte) bitmap_line::yd#10 reg byte y 0.8888888888888888
(byte) bitmap_line::yd#11 reg byte y 0.8888888888888888
(byte) bitmap_line::yd#2 reg byte y 0.8888888888888888
(void()) bitmap_line_xdyd((byte) bitmap_line_xdyd::x , (byte) bitmap_line_xdyd::y , (byte) bitmap_line_xdyd::x1 , (byte) bitmap_line_xdyd::xd , (byte) bitmap_line_xdyd::yd)
(byte~) bitmap_line_xdyd::$6 reg byte x 2002.0
(label) bitmap_line_xdyd::@1
(label) bitmap_line_xdyd::@2
(label) bitmap_line_xdyd::@3
(label) bitmap_line_xdyd::@4
(label) bitmap_line_xdyd::@return
(byte) bitmap_line_xdyd::e
(byte) bitmap_line_xdyd::e#0 e zp ZP_BYTE:3 4.0
(byte) bitmap_line_xdyd::e#1 e zp ZP_BYTE:3 1334.6666666666667
(byte) bitmap_line_xdyd::e#2 e zp ZP_BYTE:3 2002.0
(byte) bitmap_line_xdyd::e#3 e zp ZP_BYTE:3 400.79999999999995
(byte) bitmap_line_xdyd::e#6 e zp ZP_BYTE:3 1001.0
(byte) bitmap_line_xdyd::x
(byte) bitmap_line_xdyd::x#0 x zp ZP_BYTE:2 0.8
(byte) bitmap_line_xdyd::x#1 x zp ZP_BYTE:2 0.8
(byte) bitmap_line_xdyd::x#2 x zp ZP_BYTE:2 375.375
(byte) bitmap_line_xdyd::x#3 x zp ZP_BYTE:2 751.25
(byte) bitmap_line_xdyd::x#6 x zp ZP_BYTE:2 3.0
(byte) bitmap_line_xdyd::x1
(byte) bitmap_line_xdyd::x1#0 x1 zp ZP_BYTE:6 1.3333333333333333
(byte) bitmap_line_xdyd::x1#1 x1 zp ZP_BYTE:6 1.3333333333333333
(byte) bitmap_line_xdyd::x1#6 x1 zp ZP_BYTE:6 71.78571428571429
(byte) bitmap_line_xdyd::xd
(byte) bitmap_line_xdyd::xd#0 xd zp ZP_BYTE:7 2.0
(byte) bitmap_line_xdyd::xd#1 xd zp ZP_BYTE:7 2.0
(byte) bitmap_line_xdyd::xd#5 xd zp ZP_BYTE:7 143.28571428571428
(byte) bitmap_line_xdyd::y
(byte) bitmap_line_xdyd::y#0 y zp ZP_BYTE:8 1.0
(byte) bitmap_line_xdyd::y#1 y zp ZP_BYTE:8 1.0
(byte) bitmap_line_xdyd::y#2 y zp ZP_BYTE:8 1001.0
(byte) bitmap_line_xdyd::y#3 y zp ZP_BYTE:8 572.2857142857142
(byte) bitmap_line_xdyd::y#5 y zp ZP_BYTE:8 3.0
(byte) bitmap_line_xdyd::y#6 y zp ZP_BYTE:8 1001.0
(byte) bitmap_line_xdyd::yd
(byte) bitmap_line_xdyd::yd#0 yd zp ZP_BYTE:13 4.0
(byte) bitmap_line_xdyd::yd#1 yd zp ZP_BYTE:13 4.0
(byte) bitmap_line_xdyd::yd#2 yd zp ZP_BYTE:13 71.92857142857143
(void()) bitmap_line_xdyi((byte) bitmap_line_xdyi::x , (byte) bitmap_line_xdyi::y , (byte) bitmap_line_xdyi::x1 , (byte) bitmap_line_xdyi::xd , (byte) bitmap_line_xdyi::yd)
(byte~) bitmap_line_xdyi::$6 reg byte x 2002.0
(label) bitmap_line_xdyi::@1
(label) bitmap_line_xdyi::@2
(label) bitmap_line_xdyi::@3
(label) bitmap_line_xdyi::@4
(label) bitmap_line_xdyi::@return
(byte) bitmap_line_xdyi::e
(byte) bitmap_line_xdyi::e#0 e zp ZP_BYTE:3 4.0
(byte) bitmap_line_xdyi::e#1 e zp ZP_BYTE:3 1334.6666666666667
(byte) bitmap_line_xdyi::e#2 e zp ZP_BYTE:3 2002.0
(byte) bitmap_line_xdyi::e#3 e zp ZP_BYTE:3 400.79999999999995
(byte) bitmap_line_xdyi::e#6 e zp ZP_BYTE:3 1001.0
(byte) bitmap_line_xdyi::x
(byte) bitmap_line_xdyi::x#0 x zp ZP_BYTE:2 0.8
(byte) bitmap_line_xdyi::x#1 x zp ZP_BYTE:2 0.8
(byte) bitmap_line_xdyi::x#2 x zp ZP_BYTE:2 375.375
(byte) bitmap_line_xdyi::x#3 x zp ZP_BYTE:2 751.25
(byte) bitmap_line_xdyi::x#6 x zp ZP_BYTE:2 3.0
(byte) bitmap_line_xdyi::x1
(byte) bitmap_line_xdyi::x1#0 x1 zp ZP_BYTE:6 1.3333333333333333
(byte) bitmap_line_xdyi::x1#1 x1 zp ZP_BYTE:6 1.3333333333333333
(byte) bitmap_line_xdyi::x1#6 x1 zp ZP_BYTE:6 71.78571428571429
(byte) bitmap_line_xdyi::xd
(byte) bitmap_line_xdyi::xd#0 xd zp ZP_BYTE:7 2.0
(byte) bitmap_line_xdyi::xd#1 xd zp ZP_BYTE:7 2.0
(byte) bitmap_line_xdyi::xd#5 xd zp ZP_BYTE:7 143.28571428571428
(byte) bitmap_line_xdyi::y
(byte) bitmap_line_xdyi::y#0 y zp ZP_BYTE:8 1.0
(byte) bitmap_line_xdyi::y#1 y zp ZP_BYTE:8 1.0
(byte) bitmap_line_xdyi::y#2 y zp ZP_BYTE:8 1001.0
(byte) bitmap_line_xdyi::y#3 y zp ZP_BYTE:8 572.2857142857142
(byte) bitmap_line_xdyi::y#5 y zp ZP_BYTE:8 3.0
(byte) bitmap_line_xdyi::y#6 y zp ZP_BYTE:8 1001.0
(byte) bitmap_line_xdyi::yd
(byte) bitmap_line_xdyi::yd#0 yd zp ZP_BYTE:13 4.0
(byte) bitmap_line_xdyi::yd#1 yd zp ZP_BYTE:13 4.0
(byte) bitmap_line_xdyi::yd#2 yd zp ZP_BYTE:13 71.92857142857143
(void()) bitmap_line_ydxd((byte) bitmap_line_ydxd::y , (byte) bitmap_line_ydxd::x , (byte) bitmap_line_ydxd::y1 , (byte) bitmap_line_ydxd::yd , (byte) bitmap_line_ydxd::xd)
(byte~) bitmap_line_ydxd::$6 reg byte a 2002.0
(label) bitmap_line_ydxd::@1
(label) bitmap_line_ydxd::@2
(label) bitmap_line_ydxd::@3
(label) bitmap_line_ydxd::@4
(label) bitmap_line_ydxd::@return
(byte) bitmap_line_ydxd::e
(byte) bitmap_line_ydxd::e#0 e zp ZP_BYTE:3 4.0
(byte) bitmap_line_ydxd::e#1 e zp ZP_BYTE:3 1334.6666666666667
(byte) bitmap_line_ydxd::e#2 e zp ZP_BYTE:3 2002.0
(byte) bitmap_line_ydxd::e#3 e zp ZP_BYTE:3 400.79999999999995
(byte) bitmap_line_ydxd::e#6 e zp ZP_BYTE:3 1001.0
(byte) bitmap_line_ydxd::x
(byte) bitmap_line_ydxd::x#0 reg byte x 1.0
(byte) bitmap_line_ydxd::x#1 reg byte x 1.0
(byte) bitmap_line_ydxd::x#2 reg byte x 1001.0
(byte) bitmap_line_ydxd::x#3 reg byte x 572.2857142857142
(byte) bitmap_line_ydxd::x#5 reg byte x 3.0
(byte) bitmap_line_ydxd::x#6 reg byte x 1001.0
(byte) bitmap_line_ydxd::xd
(byte) bitmap_line_ydxd::xd#0 xd zp ZP_BYTE:7 4.0
(byte) bitmap_line_ydxd::xd#1 xd zp ZP_BYTE:7 4.0
(byte) bitmap_line_ydxd::xd#2 xd zp ZP_BYTE:7 71.92857142857143
(byte) bitmap_line_ydxd::y
(byte) bitmap_line_ydxd::y#0 y zp ZP_BYTE:2 0.8
(byte) bitmap_line_ydxd::y#1 y zp ZP_BYTE:2 0.8
(byte) bitmap_line_ydxd::y#2 y zp ZP_BYTE:2 751.25
(byte) bitmap_line_ydxd::y#3 y zp ZP_BYTE:2 375.375
(byte) bitmap_line_ydxd::y#7 y zp ZP_BYTE:2 3.0
(byte) bitmap_line_ydxd::y1
(byte) bitmap_line_ydxd::y1#0 y1 zp ZP_BYTE:8 1.3333333333333333
(byte) bitmap_line_ydxd::y1#1 y1 zp ZP_BYTE:8 1.3333333333333333
(byte) bitmap_line_ydxd::y1#6 y1 zp ZP_BYTE:8 71.78571428571429
(byte) bitmap_line_ydxd::yd
(byte) bitmap_line_ydxd::yd#0 yd zp ZP_BYTE:13 2.0
(byte) bitmap_line_ydxd::yd#1 yd zp ZP_BYTE:13 2.0
(byte) bitmap_line_ydxd::yd#5 yd zp ZP_BYTE:13 143.28571428571428
(void()) bitmap_line_ydxi((byte) bitmap_line_ydxi::y , (byte) bitmap_line_ydxi::x , (byte) bitmap_line_ydxi::y1 , (byte) bitmap_line_ydxi::yd , (byte) bitmap_line_ydxi::xd)
(byte~) bitmap_line_ydxi::$6 reg byte a 2002.0
(label) bitmap_line_ydxi::@1
(label) bitmap_line_ydxi::@2
(label) bitmap_line_ydxi::@3
(label) bitmap_line_ydxi::@4
(label) bitmap_line_ydxi::@return
(byte) bitmap_line_ydxi::e
(byte) bitmap_line_ydxi::e#0 e zp ZP_BYTE:6 4.0
(byte) bitmap_line_ydxi::e#1 e zp ZP_BYTE:6 1334.6666666666667
(byte) bitmap_line_ydxi::e#2 e zp ZP_BYTE:6 2002.0
(byte) bitmap_line_ydxi::e#3 e zp ZP_BYTE:6 400.79999999999995
(byte) bitmap_line_ydxi::e#6 e zp ZP_BYTE:6 1001.0
(byte) bitmap_line_ydxi::x
(byte) bitmap_line_ydxi::x#0 reg byte x 1.0
(byte) bitmap_line_ydxi::x#1 reg byte x 1.0
(byte) bitmap_line_ydxi::x#2 reg byte x 1001.0
(byte) bitmap_line_ydxi::x#3 reg byte x 572.2857142857142
(byte) bitmap_line_ydxi::x#5 reg byte x 3.0
(byte) bitmap_line_ydxi::x#6 reg byte x 1001.0
(byte) bitmap_line_ydxi::xd
(byte) bitmap_line_ydxi::xd#0 xd zp ZP_BYTE:7 4.0
(byte) bitmap_line_ydxi::xd#1 xd zp ZP_BYTE:7 4.0
(byte) bitmap_line_ydxi::xd#2 xd zp ZP_BYTE:7 71.92857142857143
(byte) bitmap_line_ydxi::y
(byte) bitmap_line_ydxi::y#0 y zp ZP_BYTE:2 0.8
(byte) bitmap_line_ydxi::y#1 y zp ZP_BYTE:2 0.8
(byte) bitmap_line_ydxi::y#2 y zp ZP_BYTE:2 375.375
(byte) bitmap_line_ydxi::y#3 y zp ZP_BYTE:2 751.25
(byte) bitmap_line_ydxi::y#6 y zp ZP_BYTE:2 3.0
(byte) bitmap_line_ydxi::y1
(byte) bitmap_line_ydxi::y1#0 y1 zp ZP_BYTE:3 1.3333333333333333
(byte) bitmap_line_ydxi::y1#1 y1 zp ZP_BYTE:3 1.3333333333333333
(byte) bitmap_line_ydxi::y1#6 y1 zp ZP_BYTE:3 71.78571428571429
(byte) bitmap_line_ydxi::yd
(byte) bitmap_line_ydxi::yd#0 yd zp ZP_BYTE:13 2.0
(byte) bitmap_line_ydxi::yd#1 yd zp ZP_BYTE:13 2.0
(byte) bitmap_line_ydxi::yd#5 yd zp ZP_BYTE:13 143.28571428571428
(void()) bitmap_plot((byte) bitmap_plot::x , (byte) bitmap_plot::y)
(byte~) bitmap_plot::$1 reg byte a 4.0
(label) bitmap_plot::@return
(byte*) bitmap_plot::plotter
(word) bitmap_plot::plotter#0 plotter zp ZP_WORD:9 1.0
(word) bitmap_plot::plotter_x
(word) bitmap_plot::plotter_x#0 plotter_x zp ZP_WORD:9 2.0
(word) bitmap_plot::plotter_y
(word) bitmap_plot::plotter_y#0 plotter_y zp ZP_WORD:11 4.0
(byte) bitmap_plot::x
(byte) bitmap_plot::x#0 reg byte x 1001.0
(byte) bitmap_plot::x#1 reg byte x 1001.0
(byte) bitmap_plot::x#2 reg byte x 1001.0
(byte) bitmap_plot::x#3 reg byte x 1001.0
(byte) bitmap_plot::x#4 reg byte x 1002.5
(byte) bitmap_plot::y
(byte) bitmap_plot::y#0 reg byte y 2002.0
(byte) bitmap_plot::y#1 reg byte y 2002.0
(byte) bitmap_plot::y#2 reg byte y 2002.0
(byte) bitmap_plot::y#3 reg byte y 2002.0
(byte) bitmap_plot::y#4 reg byte y 2004.0
(byte[$100]) bitmap_plot_bit
(const byte[$100]) bitmap_plot_bit#0 bitmap_plot_bit = { fill( $100, 0) }
(byte[$100]) bitmap_plot_xhi
(const byte[$100]) bitmap_plot_xhi#0 bitmap_plot_xhi = { fill( $100, 0) }
(byte[$100]) bitmap_plot_xlo
(const byte[$100]) bitmap_plot_xlo#0 bitmap_plot_xlo = { fill( $100, 0) }
(byte[$100]) bitmap_plot_yhi
(const byte[$100]) bitmap_plot_yhi#0 bitmap_plot_yhi = { fill( $100, 0) }
(byte[$100]) bitmap_plot_ylo
(const byte[$100]) bitmap_plot_ylo#0 bitmap_plot_ylo = { fill( $100, 0) }
(void()) dtvSetCpuBankSegment1((byte) dtvSetCpuBankSegment1::cpuBankIdx)
(label) dtvSetCpuBankSegment1::@return
(byte*) dtvSetCpuBankSegment1::cpuBank
(const byte*) dtvSetCpuBankSegment1::cpuBank#0 cpuBank = (byte*) 255
(byte) dtvSetCpuBankSegment1::cpuBankIdx
(byte) dtvSetCpuBankSegment1::cpuBankIdx#1 reg byte a 2002.0
(byte) dtvSetCpuBankSegment1::cpuBankIdx#3 reg byte a 1003.0
(byte) dtv_control
(byte) dtv_control#114 dtv_control zp ZP_BYTE:13 80.52941176470588
(byte) dtv_control#144 dtv_control zp ZP_BYTE:13 2.0
(byte) dtv_control#17 dtv_control zp ZP_BYTE:13 67.33333333333333
(byte()) keyboard_key_pressed((byte) keyboard_key_pressed::key)
(byte~) keyboard_key_pressed::$2 reg byte a 4.0
(label) keyboard_key_pressed::@1
(label) keyboard_key_pressed::@return
(byte) keyboard_key_pressed::colidx
(byte) keyboard_key_pressed::colidx#0 colidx zp ZP_BYTE:6 0.6666666666666666
(byte) keyboard_key_pressed::key
(byte) keyboard_key_pressed::key#20 reg byte y 2.0
(byte) keyboard_key_pressed::return
(byte) keyboard_key_pressed::return#0 reg byte a 419.1818181818182
(byte) keyboard_key_pressed::return#10 reg byte a 202.0
(byte) keyboard_key_pressed::return#11 reg byte a 202.0
(byte) keyboard_key_pressed::return#12 reg byte a 202.0
(byte) keyboard_key_pressed::return#13 reg byte a 202.0
(byte) keyboard_key_pressed::return#14 reg byte a 2002.0
(byte) keyboard_key_pressed::return#15 reg byte a 2002.0
(byte) keyboard_key_pressed::return#16 reg byte a 2002.0
(byte) keyboard_key_pressed::return#17 reg byte a 2002.0
(byte) keyboard_key_pressed::return#18 reg byte a 2002.0
(byte) keyboard_key_pressed::return#19 reg byte a 2002.0
(byte) keyboard_key_pressed::return#2 reg byte a 202.0
(byte) keyboard_key_pressed::return#20 reg byte a 2002.0
(byte) keyboard_key_pressed::return#21 reg byte a 2002.0
(byte) keyboard_key_pressed::return#24 reg byte a 202.0
(byte) keyboard_key_pressed::return#25 reg byte a 202.0
(byte) keyboard_key_pressed::return#26 reg byte a 202.0
(byte) keyboard_key_pressed::return#27 reg byte a 202.0
(byte) keyboard_key_pressed::return#28 reg byte a 202.0
(byte) keyboard_key_pressed::return#29 reg byte a 202.0
(byte) keyboard_key_pressed::return#30 reg byte a 202.0
(byte) keyboard_key_pressed::rowidx
(byte) keyboard_key_pressed::rowidx#0 reg byte a 4.0
(byte[8]) keyboard_matrix_col_bitmask
(const byte[8]) keyboard_matrix_col_bitmask#0 keyboard_matrix_col_bitmask = { (byte) 1, (byte) 2, (byte) 4, (byte) 8, (byte) $10, (byte) $20, (byte) $40, (byte) $80 }
(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 1.3333333333333333
(byte) keyboard_matrix_read::return#2 reg byte a 4.0
(byte) keyboard_matrix_read::row_pressed_bits
(byte) keyboard_matrix_read::rowid
(byte) keyboard_matrix_read::rowid#0 reg byte y 4.0
(byte[8]) keyboard_matrix_row_bitmask
(const byte[8]) keyboard_matrix_row_bitmask#0 keyboard_matrix_row_bitmask = { (byte) $fe, (byte) $fd, (byte) $fb, (byte) $f7, (byte) $ef, (byte) $df, (byte) $bf, (byte) $7f }
(void()) main()
(label) main::@1
(void*()) memset((void*) memset::str , (byte) memset::c , (word) memset::num)
(label) memset::@1
(label) memset::@2
(label) memset::@return
(byte) memset::c
(const byte) memset::c#0 c = (byte) ' '
(byte*) memset::dst
(byte*) memset::dst#1 dst zp ZP_WORD:9 202.0
(byte*) memset::dst#2 dst zp ZP_WORD:9 134.66666666666666
(byte*) memset::end
(const byte*) memset::end#0 end = (byte*)(const void*) memset::str#0+(const word) memset::num#0
(word) memset::num
(const word) memset::num#0 num = (word) $3e8
(void*) memset::return
(void*) memset::str
(const void*) memset::str#0 str = (void*)(const byte*) menu::SCREEN#0
(void()) menu()
(byte~) menu::$29 reg byte a 202.0
(byte~) menu::$33 reg byte a 202.0
(byte~) menu::$37 reg byte a 202.0
(byte~) menu::$41 reg byte a 202.0
(byte~) menu::$45 reg byte a 202.0
(byte~) menu::$49 reg byte a 202.0
(byte~) menu::$53 reg byte a 202.0
(byte~) menu::$57 reg byte a 202.0
(byte~) menu::$61 reg byte a 202.0
(byte~) menu::$65 reg byte a 202.0
(byte~) menu::$69 reg byte a 202.0
(byte~) menu::$73 reg byte a 202.0
(label) menu::@1
(label) menu::@10
(label) menu::@11
(label) menu::@12
(label) menu::@13
(label) menu::@14
(label) menu::@15
(label) menu::@16
(label) menu::@17
(label) menu::@18
(label) menu::@19
(label) menu::@2
(label) menu::@20
(label) menu::@21
(label) menu::@22
(label) menu::@23
(label) menu::@24
(label) menu::@25
(label) menu::@26
(label) menu::@27
(label) menu::@28
(label) menu::@29
(label) menu::@3
(label) menu::@30
(label) menu::@31
(label) menu::@32
(label) menu::@33
(label) menu::@34
(label) menu::@35
(label) menu::@36
(label) menu::@37
(label) menu::@38
(label) menu::@39
(label) menu::@4
(label) menu::@40
(label) menu::@41
(label) menu::@42
(label) menu::@5
(label) menu::@6
(label) menu::@7
(label) menu::@8
(label) menu::@9
(label) menu::@return
(byte*) menu::CHARSET
(const byte*) menu::CHARSET#0 CHARSET = (byte*) 38912
(byte*) menu::SCREEN
(const byte*) menu::SCREEN#0 SCREEN = (byte*) 32768
(byte*) menu::c
(byte*) menu::c#1 c zp ZP_WORD:4 202.0
(byte*) menu::c#2 c zp ZP_WORD:4 134.66666666666666
(byte) menu::i
(byte) menu::i#1 reg byte x 151.5
(byte) menu::i#2 reg byte x 202.0
(void()) mode_8bppchunkybmm()
(word~) mode_8bppchunkybmm::$26 $26 zp ZP_WORD:9 1001.0
(label) mode_8bppchunkybmm::@1
(label) mode_8bppchunkybmm::@10
(label) mode_8bppchunkybmm::@2
(label) mode_8bppchunkybmm::@3
(label) mode_8bppchunkybmm::@4
(label) mode_8bppchunkybmm::@5
(label) mode_8bppchunkybmm::@6
(label) mode_8bppchunkybmm::@7
(label) mode_8bppchunkybmm::@8
(label) mode_8bppchunkybmm::@9
(label) mode_8bppchunkybmm::@return
(dword) mode_8bppchunkybmm::PLANEB
(const dword) mode_8bppchunkybmm::PLANEB#0 PLANEB = (dword) $20000
(byte) mode_8bppchunkybmm::c
(byte) mode_8bppchunkybmm::c#0 reg byte a 2002.0
(byte*) mode_8bppchunkybmm::gfxb
(byte*) mode_8bppchunkybmm::gfxb#1 gfxb zp ZP_WORD:11 420.59999999999997
(byte*) mode_8bppchunkybmm::gfxb#3 gfxb zp ZP_WORD:11 1552.0
(byte*) mode_8bppchunkybmm::gfxb#4 gfxb zp ZP_WORD:11 750.75
(byte*) mode_8bppchunkybmm::gfxb#5 gfxb zp ZP_WORD:11 202.0
(byte) mode_8bppchunkybmm::gfxbCpuBank
(byte) mode_8bppchunkybmm::gfxbCpuBank#2 reg byte x 2002.0
(byte) mode_8bppchunkybmm::gfxbCpuBank#4 reg byte x 1026.25
(byte) mode_8bppchunkybmm::gfxbCpuBank#7 reg byte x 202.0
(byte) mode_8bppchunkybmm::gfxbCpuBank#8 reg byte x 344.8888888888889
(byte) mode_8bppchunkybmm::i
(byte) mode_8bppchunkybmm::i#1 reg byte x 151.5
(byte) mode_8bppchunkybmm::i#2 reg byte x 202.0
(word) mode_8bppchunkybmm::x
(word) mode_8bppchunkybmm::x#1 x zp ZP_WORD:4 1501.5
(word) mode_8bppchunkybmm::x#2 x zp ZP_WORD:4 300.29999999999995
(byte) mode_8bppchunkybmm::y
(byte) mode_8bppchunkybmm::y#1 y zp ZP_BYTE:13 151.5
(byte) mode_8bppchunkybmm::y#6 y zp ZP_BYTE:13 92.53846153846155
(void()) mode_8bpppixelcell()
(byte~) mode_8bpppixelcell::$14 reg byte a 2002.0
(byte~) mode_8bpppixelcell::$15 $15 zp ZP_BYTE:14 1001.0
(byte~) mode_8bpppixelcell::$16 reg byte a 2002.0
(byte~) mode_8bpppixelcell::$17 reg byte a 2002.0
(byte~) mode_8bpppixelcell::$20 reg byte a 20002.0
(label) mode_8bpppixelcell::@1
(label) mode_8bpppixelcell::@10
(label) mode_8bpppixelcell::@11
(label) mode_8bpppixelcell::@12
(label) mode_8bpppixelcell::@13
(label) mode_8bpppixelcell::@2
(label) mode_8bpppixelcell::@3
(label) mode_8bpppixelcell::@4
(label) mode_8bpppixelcell::@5
(label) mode_8bpppixelcell::@6
(label) mode_8bpppixelcell::@7
(label) mode_8bpppixelcell::@8
(label) mode_8bpppixelcell::@9
(label) mode_8bpppixelcell::@return
(byte*) mode_8bpppixelcell::CHARGEN
(const byte*) mode_8bpppixelcell::CHARGEN#0 CHARGEN = (byte*) 53248
(byte*) mode_8bpppixelcell::PLANEA
(const byte*) mode_8bpppixelcell::PLANEA#0 PLANEA = (byte*) 15360
(byte*) mode_8bpppixelcell::PLANEB
(const byte*) mode_8bpppixelcell::PLANEB#0 PLANEB = (byte*) 16384
(byte) mode_8bpppixelcell::ax
(byte) mode_8bpppixelcell::ax#1 reg byte x 1501.5
(byte) mode_8bpppixelcell::ax#2 reg byte x 429.0
(byte) mode_8bpppixelcell::ay
(byte) mode_8bpppixelcell::ay#1 ay zp ZP_BYTE:13 151.5
(byte) mode_8bpppixelcell::ay#4 ay zp ZP_BYTE:13 120.29999999999998
(byte) mode_8bpppixelcell::bits
(byte) mode_8bpppixelcell::bits#0 bits zp ZP_BYTE:6 1001.0
(byte) mode_8bpppixelcell::bits#1 bits zp ZP_BYTE:6 5000.5
(byte) mode_8bpppixelcell::bits#2 bits zp ZP_BYTE:6 4429.142857142857
(byte) mode_8bpppixelcell::c
(byte) mode_8bpppixelcell::c#2 reg byte a 20002.0
(byte~) mode_8bpppixelcell::c#3 reg byte a 20002.0
(byte) mode_8bpppixelcell::ch
(byte) mode_8bpppixelcell::ch#1 ch zp ZP_BYTE:2 151.5
(byte) mode_8bpppixelcell::ch#8 ch zp ZP_BYTE:2 11.882352941176471
(byte*) mode_8bpppixelcell::chargen
(byte*) mode_8bpppixelcell::chargen#1 chargen zp ZP_WORD:4 131.4375
(byte*) mode_8bpppixelcell::chargen#2 chargen zp ZP_WORD:4 1552.0
(byte*) mode_8bpppixelcell::chargen#4 chargen zp ZP_WORD:4 202.0
(byte) mode_8bpppixelcell::col
(byte) mode_8bpppixelcell::col#1 col zp ZP_BYTE:7 3014.857142857143
(byte) mode_8bpppixelcell::col#2 col zp ZP_BYTE:7 3875.5
(byte) mode_8bpppixelcell::col#5 col zp ZP_BYTE:7 701.0
(byte) mode_8bpppixelcell::col#7 col zp ZP_BYTE:7 202.0
(byte) mode_8bpppixelcell::cp
(byte) mode_8bpppixelcell::cp#1 reg byte x 15001.5
(byte) mode_8bpppixelcell::cp#2 reg byte x 2222.4444444444443
(byte) mode_8bpppixelcell::cr
(byte) mode_8bpppixelcell::cr#1 cr zp ZP_BYTE:3 1501.5
(byte) mode_8bpppixelcell::cr#6 cr zp ZP_BYTE:3 143.0
(byte*) mode_8bpppixelcell::gfxa
(byte*) mode_8bpppixelcell::gfxa#1 gfxa zp ZP_WORD:11 420.59999999999997
(byte*) mode_8bpppixelcell::gfxa#2 gfxa zp ZP_WORD:11 517.3333333333334
(byte*) mode_8bpppixelcell::gfxa#3 gfxa zp ZP_WORD:11 202.0
(byte*) mode_8bpppixelcell::gfxb
(byte*) mode_8bpppixelcell::gfxb#1 gfxb zp ZP_WORD:9 2344.8888888888887
(byte*) mode_8bpppixelcell::gfxb#2 gfxb zp ZP_WORD:9 5167.333333333333
(byte*) mode_8bpppixelcell::gfxb#5 gfxb zp ZP_WORD:9 701.0
(byte*) mode_8bpppixelcell::gfxb#7 gfxb zp ZP_WORD:9 202.0
(byte) mode_8bpppixelcell::i
(byte) mode_8bpppixelcell::i#1 reg byte x 151.5
(byte) mode_8bpppixelcell::i#2 reg byte x 202.0
(void()) mode_ctrl()
(byte~) mode_ctrl::$1 reg byte a 2002.0
(byte~) mode_ctrl::$12 reg byte a 2002.0
(byte~) mode_ctrl::$16 reg byte a 2002.0
(byte~) mode_ctrl::$20 reg byte a 2002.0
(byte~) mode_ctrl::$24 reg byte a 2002.0
(byte~) mode_ctrl::$28 reg byte a 2002.0
(byte~) mode_ctrl::$4 reg byte a 2002.0
(byte~) mode_ctrl::$8 reg byte a 2002.0
(label) mode_ctrl::@1
(label) mode_ctrl::@10
(label) mode_ctrl::@11
(label) mode_ctrl::@12
(label) mode_ctrl::@13
(label) mode_ctrl::@14
(label) mode_ctrl::@15
(label) mode_ctrl::@16
(label) mode_ctrl::@17
(label) mode_ctrl::@18
(label) mode_ctrl::@19
(label) mode_ctrl::@2
(label) mode_ctrl::@20
(label) mode_ctrl::@21
(label) mode_ctrl::@22
(label) mode_ctrl::@23
(label) mode_ctrl::@24
(label) mode_ctrl::@25
(label) mode_ctrl::@26
(label) mode_ctrl::@27
(label) mode_ctrl::@3
(label) mode_ctrl::@4
(label) mode_ctrl::@5
(label) mode_ctrl::@6
(label) mode_ctrl::@7
(label) mode_ctrl::@8
(label) mode_ctrl::@9
(label) mode_ctrl::@return
(byte) mode_ctrl::ctrl
(byte) mode_ctrl::ctrl#0 reg byte x 600.5999999999999
(byte) mode_ctrl::ctrl#1 reg byte x 2002.0
(byte) mode_ctrl::ctrl#10 reg byte x 800.8
(byte) mode_ctrl::ctrl#11 reg byte x 800.8
(byte) mode_ctrl::ctrl#12 reg byte x 800.8
(byte) mode_ctrl::ctrl#13 reg byte x 800.8
(byte) mode_ctrl::ctrl#14 reg byte x 576.25
(byte) mode_ctrl::ctrl#17 reg byte x 800.8
(byte) mode_ctrl::ctrl#2 reg byte x 2002.0
(byte) mode_ctrl::ctrl#22 reg byte x 500.5
(byte) mode_ctrl::ctrl#3 reg byte x 2002.0
(byte) mode_ctrl::ctrl#4 reg byte x 2002.0
(byte) mode_ctrl::ctrl#5 reg byte x 2002.0
(byte) mode_ctrl::ctrl#6 reg byte x 2002.0
(void()) mode_ecmchar()
(byte~) mode_ecmchar::$26 reg byte a 2002.0
(byte~) mode_ecmchar::$27 reg byte a 2002.0
(byte~) mode_ecmchar::$28 reg byte a 2002.0
(byte~) mode_ecmchar::$29 $29 zp ZP_BYTE:13 1001.0
(byte~) mode_ecmchar::$30 reg byte a 2002.0
(byte~) mode_ecmchar::$31 reg byte a 2002.0
(label) mode_ecmchar::@1
(label) mode_ecmchar::@2
(label) mode_ecmchar::@3
(label) mode_ecmchar::@4
(label) mode_ecmchar::@5
(label) mode_ecmchar::@6
(label) mode_ecmchar::@return
(byte*) mode_ecmchar::CHARSET
(const byte*) mode_ecmchar::CHARSET#0 CHARSET = (byte*) 36864
(byte*) mode_ecmchar::COLORS
(const byte*) mode_ecmchar::COLORS#0 COLORS = (byte*) 55296
(byte*) mode_ecmchar::SCREEN
(const byte*) mode_ecmchar::SCREEN#0 SCREEN = (byte*) 32768
(byte*) mode_ecmchar::ch
(byte*) mode_ecmchar::ch#1 ch zp ZP_WORD:4 420.59999999999997
(byte*) mode_ecmchar::ch#2 ch zp ZP_WORD:4 310.4
(byte*) mode_ecmchar::ch#3 ch zp ZP_WORD:4 202.0
(byte*) mode_ecmchar::col
(byte*) mode_ecmchar::col#1 col zp ZP_WORD:11 191.1818181818182
(byte*) mode_ecmchar::col#2 col zp ZP_WORD:11 776.0
(byte*) mode_ecmchar::col#3 col zp ZP_WORD:11 202.0
(byte) mode_ecmchar::cx
(byte) mode_ecmchar::cx#1 reg byte x 1501.5
(byte) mode_ecmchar::cx#2 reg byte x 364.0
(byte) mode_ecmchar::cy
(byte) mode_ecmchar::cy#1 cy zp ZP_BYTE:8 151.5
(byte) mode_ecmchar::cy#4 cy zp ZP_BYTE:8 157.42857142857144
(byte) mode_ecmchar::i
(byte) mode_ecmchar::i#1 reg byte x 151.5
(byte) mode_ecmchar::i#2 reg byte x 202.0
(void()) mode_hicolecmchar()
(byte~) mode_hicolecmchar::$26 reg byte a 2002.0
(byte~) mode_hicolecmchar::$27 $27 zp ZP_BYTE:8 1001.0
(byte~) mode_hicolecmchar::$28 reg byte a 2002.0
(label) mode_hicolecmchar::@1
(label) mode_hicolecmchar::@2
(label) mode_hicolecmchar::@3
(label) mode_hicolecmchar::@4
(label) mode_hicolecmchar::@5
(label) mode_hicolecmchar::@6
(label) mode_hicolecmchar::@return
(byte*) mode_hicolecmchar::CHARSET
(const byte*) mode_hicolecmchar::CHARSET#0 CHARSET = (byte*) 36864
(byte*) mode_hicolecmchar::COLORS
(const byte*) mode_hicolecmchar::COLORS#0 COLORS = (byte*) 33792
(byte*) mode_hicolecmchar::SCREEN
(const byte*) mode_hicolecmchar::SCREEN#0 SCREEN = (byte*) 32768
(byte*) mode_hicolecmchar::ch
(byte*) mode_hicolecmchar::ch#1 ch zp ZP_WORD:11 420.59999999999997
(byte*) mode_hicolecmchar::ch#2 ch zp ZP_WORD:11 388.0
(byte*) mode_hicolecmchar::ch#3 ch zp ZP_WORD:11 202.0
(byte*) mode_hicolecmchar::col
(byte*) mode_hicolecmchar::col#1 col zp ZP_WORD:4 300.42857142857144
(byte*) mode_hicolecmchar::col#2 col zp ZP_WORD:4 517.3333333333334
(byte*) mode_hicolecmchar::col#3 col zp ZP_WORD:4 202.0
(byte) mode_hicolecmchar::cx
(byte) mode_hicolecmchar::cx#1 reg byte x 1501.5
(byte) mode_hicolecmchar::cx#2 reg byte x 333.6666666666667
(byte) mode_hicolecmchar::cy
(byte) mode_hicolecmchar::cy#1 cy zp ZP_BYTE:6 151.5
(byte) mode_hicolecmchar::cy#4 cy zp ZP_BYTE:6 100.25000000000001
(byte) mode_hicolecmchar::i
(byte) mode_hicolecmchar::i#1 reg byte x 151.5
(byte) mode_hicolecmchar::i#2 reg byte x 202.0
(byte) mode_hicolecmchar::v
(byte) mode_hicolecmchar::v#0 reg byte a 1001.0
(void()) mode_hicolmcchar()
(byte~) mode_hicolmcchar::$26 reg byte a 2002.0
(byte~) mode_hicolmcchar::$27 $27 zp ZP_BYTE:7 1001.0
(byte~) mode_hicolmcchar::$28 reg byte a 2002.0
(label) mode_hicolmcchar::@1
(label) mode_hicolmcchar::@2
(label) mode_hicolmcchar::@3
(label) mode_hicolmcchar::@4
(label) mode_hicolmcchar::@5
(label) mode_hicolmcchar::@6
(label) mode_hicolmcchar::@return
(byte*) mode_hicolmcchar::CHARSET
(const byte*) mode_hicolmcchar::CHARSET#0 CHARSET = (byte*) 36864
(byte*) mode_hicolmcchar::COLORS
(const byte*) mode_hicolmcchar::COLORS#0 COLORS = (byte*) 33792
(byte*) mode_hicolmcchar::SCREEN
(const byte*) mode_hicolmcchar::SCREEN#0 SCREEN = (byte*) 32768
(byte*) mode_hicolmcchar::ch
(byte*) mode_hicolmcchar::ch#1 ch zp ZP_WORD:4 420.59999999999997
(byte*) mode_hicolmcchar::ch#2 ch zp ZP_WORD:4 388.0
(byte*) mode_hicolmcchar::ch#3 ch zp ZP_WORD:4 202.0
(byte*) mode_hicolmcchar::col
(byte*) mode_hicolmcchar::col#1 col zp ZP_WORD:11 300.42857142857144
(byte*) mode_hicolmcchar::col#2 col zp ZP_WORD:11 517.3333333333334
(byte*) mode_hicolmcchar::col#3 col zp ZP_WORD:11 202.0
(byte) mode_hicolmcchar::cx
(byte) mode_hicolmcchar::cx#1 reg byte x 1501.5
(byte) mode_hicolmcchar::cx#2 reg byte x 333.6666666666667
(byte) mode_hicolmcchar::cy
(byte) mode_hicolmcchar::cy#1 cy zp ZP_BYTE:3 151.5
(byte) mode_hicolmcchar::cy#4 cy zp ZP_BYTE:3 100.25000000000001
(byte) mode_hicolmcchar::i
(byte) mode_hicolmcchar::i#1 reg byte x 151.5
(byte) mode_hicolmcchar::i#2 reg byte x 202.0
(byte) mode_hicolmcchar::v
(byte) mode_hicolmcchar::v#0 reg byte a 1001.0
(void()) mode_hicolstdchar()
(byte~) mode_hicolstdchar::$25 reg byte a 2002.0
(byte~) mode_hicolstdchar::$26 $26 zp ZP_BYTE:8 1001.0
(byte~) mode_hicolstdchar::$27 reg byte a 2002.0
(label) mode_hicolstdchar::@1
(label) mode_hicolstdchar::@2
(label) mode_hicolstdchar::@3
(label) mode_hicolstdchar::@4
(label) mode_hicolstdchar::@5
(label) mode_hicolstdchar::@6
(label) mode_hicolstdchar::@return
(byte*) mode_hicolstdchar::CHARSET
(const byte*) mode_hicolstdchar::CHARSET#0 CHARSET = (byte*) 36864
(byte*) mode_hicolstdchar::COLORS
(const byte*) mode_hicolstdchar::COLORS#0 COLORS = (byte*) 33792
(byte*) mode_hicolstdchar::SCREEN
(const byte*) mode_hicolstdchar::SCREEN#0 SCREEN = (byte*) 32768
(byte*) mode_hicolstdchar::ch
(byte*) mode_hicolstdchar::ch#1 ch zp ZP_WORD:9 420.59999999999997
(byte*) mode_hicolstdchar::ch#2 ch zp ZP_WORD:9 388.0
(byte*) mode_hicolstdchar::ch#3 ch zp ZP_WORD:9 202.0
(byte*) mode_hicolstdchar::col
(byte*) mode_hicolstdchar::col#1 col zp ZP_WORD:11 300.42857142857144
(byte*) mode_hicolstdchar::col#2 col zp ZP_WORD:11 517.3333333333334
(byte*) mode_hicolstdchar::col#3 col zp ZP_WORD:11 202.0
(byte) mode_hicolstdchar::cx
(byte) mode_hicolstdchar::cx#1 reg byte x 1501.5
(byte) mode_hicolstdchar::cx#2 reg byte x 333.6666666666667
(byte) mode_hicolstdchar::cy
(byte) mode_hicolstdchar::cy#1 cy zp ZP_BYTE:7 151.5
(byte) mode_hicolstdchar::cy#4 cy zp ZP_BYTE:7 100.25000000000001
(byte) mode_hicolstdchar::i
(byte) mode_hicolstdchar::i#1 reg byte x 151.5
(byte) mode_hicolstdchar::i#2 reg byte x 202.0
(byte) mode_hicolstdchar::v
(byte) mode_hicolstdchar::v#0 reg byte a 1001.0
(void()) mode_mcchar()
(byte~) mode_mcchar::$26 reg byte a 2002.0
(byte~) mode_mcchar::$27 reg byte a 2002.0
(byte~) mode_mcchar::$28 reg byte a 2002.0
(byte~) mode_mcchar::$29 $29 zp ZP_BYTE:13 1001.0
(byte~) mode_mcchar::$30 reg byte a 2002.0
(byte~) mode_mcchar::$31 reg byte a 2002.0
(label) mode_mcchar::@1
(label) mode_mcchar::@2
(label) mode_mcchar::@3
(label) mode_mcchar::@4
(label) mode_mcchar::@5
(label) mode_mcchar::@6
(label) mode_mcchar::@return
(byte*) mode_mcchar::CHARSET
(const byte*) mode_mcchar::CHARSET#0 CHARSET = (byte*) 36864
(byte*) mode_mcchar::COLORS
(const byte*) mode_mcchar::COLORS#0 COLORS = (byte*) 55296
(byte*) mode_mcchar::SCREEN
(const byte*) mode_mcchar::SCREEN#0 SCREEN = (byte*) 32768
(byte*) mode_mcchar::ch
(byte*) mode_mcchar::ch#1 ch zp ZP_WORD:4 420.59999999999997
(byte*) mode_mcchar::ch#2 ch zp ZP_WORD:4 310.4
(byte*) mode_mcchar::ch#3 ch zp ZP_WORD:4 202.0
(byte*) mode_mcchar::col
(byte*) mode_mcchar::col#1 col zp ZP_WORD:11 191.1818181818182
(byte*) mode_mcchar::col#2 col zp ZP_WORD:11 776.0
(byte*) mode_mcchar::col#3 col zp ZP_WORD:11 202.0
(byte) mode_mcchar::cx
(byte) mode_mcchar::cx#1 reg byte x 1501.5
(byte) mode_mcchar::cx#2 reg byte x 364.0
(byte) mode_mcchar::cy
(byte) mode_mcchar::cy#1 cy zp ZP_BYTE:7 151.5
(byte) mode_mcchar::cy#4 cy zp ZP_BYTE:7 157.42857142857144
(byte) mode_mcchar::i
(byte) mode_mcchar::i#1 reg byte x 151.5
(byte) mode_mcchar::i#2 reg byte x 202.0
(void()) mode_sixsfred()
(byte~) mode_sixsfred::$17 reg byte a 2002.0
(byte~) mode_sixsfred::$18 reg byte a 2002.0
(byte~) mode_sixsfred::$21 reg byte a 2002.0
(label) mode_sixsfred::@1
(label) mode_sixsfred::@10
(label) mode_sixsfred::@11
(label) mode_sixsfred::@12
(label) mode_sixsfred::@2
(label) mode_sixsfred::@3
(label) mode_sixsfred::@4
(label) mode_sixsfred::@5
(label) mode_sixsfred::@6
(label) mode_sixsfred::@7
(label) mode_sixsfred::@8
(label) mode_sixsfred::@9
(label) mode_sixsfred::@return
(byte*) mode_sixsfred::COLORS
(const byte*) mode_sixsfred::COLORS#0 COLORS = (byte*) 32768
(byte*) mode_sixsfred::PLANEA
(const byte*) mode_sixsfred::PLANEA#0 PLANEA = (byte*) 16384
(byte*) mode_sixsfred::PLANEB
(const byte*) mode_sixsfred::PLANEB#0 PLANEB = (byte*) 24576
(byte) mode_sixsfred::ax
(byte) mode_sixsfred::ax#1 reg byte x 1501.5
(byte) mode_sixsfred::ax#2 reg byte x 400.4
(byte) mode_sixsfred::ay
(byte) mode_sixsfred::ay#1 ay zp ZP_BYTE:2 151.5
(byte) mode_sixsfred::ay#4 ay zp ZP_BYTE:2 150.375
(byte) mode_sixsfred::bx
(byte) mode_sixsfred::bx#1 reg byte x 1501.5
(byte) mode_sixsfred::bx#2 reg byte x 667.3333333333334
(byte) mode_sixsfred::by
(byte) mode_sixsfred::by#1 by zp ZP_BYTE:3 151.5
(byte) mode_sixsfred::by#4 by zp ZP_BYTE:3 33.666666666666664
(byte*) mode_sixsfred::col
(byte*) mode_sixsfred::col#1 col zp ZP_WORD:4 420.59999999999997
(byte*) mode_sixsfred::col#2 col zp ZP_WORD:4 776.0
(byte*) mode_sixsfred::col#3 col zp ZP_WORD:4 202.0
(byte) mode_sixsfred::cx
(byte) mode_sixsfred::cx#1 reg byte x 1501.5
(byte) mode_sixsfred::cx#2 reg byte x 600.5999999999999
(byte) mode_sixsfred::cy
(byte) mode_sixsfred::cy#1 cy zp ZP_BYTE:13 151.5
(byte) mode_sixsfred::cy#4 cy zp ZP_BYTE:13 150.375
(byte*) mode_sixsfred::gfxa
(byte*) mode_sixsfred::gfxa#1 gfxa zp ZP_WORD:9 420.59999999999997
(byte*) mode_sixsfred::gfxa#2 gfxa zp ZP_WORD:9 776.0
(byte*) mode_sixsfred::gfxa#3 gfxa zp ZP_WORD:9 202.0
(byte*) mode_sixsfred::gfxb
(byte*) mode_sixsfred::gfxb#1 gfxb zp ZP_WORD:11 420.59999999999997
(byte*) mode_sixsfred::gfxb#2 gfxb zp ZP_WORD:11 1552.0
(byte*) mode_sixsfred::gfxb#3 gfxb zp ZP_WORD:11 202.0
(byte) mode_sixsfred::i
(byte) mode_sixsfred::i#1 reg byte x 151.5
(byte) mode_sixsfred::i#2 reg byte x 202.0
(byte) mode_sixsfred::row
(byte) mode_sixsfred::row#0 reg byte a 2002.0
(byte[]) mode_sixsfred::row_bitmask
(const byte[]) mode_sixsfred::row_bitmask#0 row_bitmask = { (byte) 0, (byte) $55, (byte) $aa, (byte) $ff }
(void()) mode_sixsfred2()
(byte~) mode_sixsfred2::$15 reg byte a 2002.0
(byte~) mode_sixsfred2::$16 $16 zp ZP_BYTE:7 1001.0
(byte~) mode_sixsfred2::$17 reg byte a 2002.0
(byte~) mode_sixsfred2::$18 reg byte a 2002.0
(byte~) mode_sixsfred2::$21 reg byte a 2002.0
(label) mode_sixsfred2::@1
(label) mode_sixsfred2::@10
(label) mode_sixsfred2::@11
(label) mode_sixsfred2::@12
(label) mode_sixsfred2::@2
(label) mode_sixsfred2::@3
(label) mode_sixsfred2::@4
(label) mode_sixsfred2::@5
(label) mode_sixsfred2::@6
(label) mode_sixsfred2::@7
(label) mode_sixsfred2::@8
(label) mode_sixsfred2::@9
(label) mode_sixsfred2::@return
(byte*) mode_sixsfred2::COLORS
(const byte*) mode_sixsfred2::COLORS#0 COLORS = (byte*) 32768
(byte*) mode_sixsfred2::PLANEA
(const byte*) mode_sixsfred2::PLANEA#0 PLANEA = (byte*) 16384
(byte*) mode_sixsfred2::PLANEB
(const byte*) mode_sixsfred2::PLANEB#0 PLANEB = (byte*) 24576
(byte) mode_sixsfred2::ax
(byte) mode_sixsfred2::ax#1 reg byte x 1501.5
(byte) mode_sixsfred2::ax#2 reg byte x 400.4
(byte) mode_sixsfred2::ay
(byte) mode_sixsfred2::ay#1 ay zp ZP_BYTE:3 151.5
(byte) mode_sixsfred2::ay#4 ay zp ZP_BYTE:3 150.375
(byte) mode_sixsfred2::bx
(byte) mode_sixsfred2::bx#1 reg byte x 1501.5
(byte) mode_sixsfred2::bx#2 reg byte x 667.3333333333334
(byte) mode_sixsfred2::by
(byte) mode_sixsfred2::by#1 by zp ZP_BYTE:6 151.5
(byte) mode_sixsfred2::by#4 by zp ZP_BYTE:6 33.666666666666664
(byte*) mode_sixsfred2::col
(byte*) mode_sixsfred2::col#1 col zp ZP_WORD:9 420.59999999999997
(byte*) mode_sixsfred2::col#2 col zp ZP_WORD:9 517.3333333333334
(byte*) mode_sixsfred2::col#3 col zp ZP_WORD:9 202.0
(byte) mode_sixsfred2::cx
(byte) mode_sixsfred2::cx#1 reg byte x 1501.5
(byte) mode_sixsfred2::cx#2 reg byte x 429.0
(byte) mode_sixsfred2::cy
(byte) mode_sixsfred2::cy#1 cy zp ZP_BYTE:2 151.5
(byte) mode_sixsfred2::cy#4 cy zp ZP_BYTE:2 120.29999999999998
(byte*) mode_sixsfred2::gfxa
(byte*) mode_sixsfred2::gfxa#1 gfxa zp ZP_WORD:4 420.59999999999997
(byte*) mode_sixsfred2::gfxa#2 gfxa zp ZP_WORD:4 776.0
(byte*) mode_sixsfred2::gfxa#3 gfxa zp ZP_WORD:4 202.0
(byte*) mode_sixsfred2::gfxb
(byte*) mode_sixsfred2::gfxb#1 gfxb zp ZP_WORD:11 420.59999999999997
(byte*) mode_sixsfred2::gfxb#2 gfxb zp ZP_WORD:11 1552.0
(byte*) mode_sixsfred2::gfxb#3 gfxb zp ZP_WORD:11 202.0
(byte) mode_sixsfred2::i
(byte) mode_sixsfred2::i#1 reg byte x 151.5
(byte) mode_sixsfred2::i#2 reg byte x 202.0
(byte) mode_sixsfred2::row
(byte) mode_sixsfred2::row#0 reg byte a 2002.0
(byte[]) mode_sixsfred2::row_bitmask
(const byte[]) mode_sixsfred2::row_bitmask#0 row_bitmask = { (byte) 0, (byte) $55, (byte) $aa, (byte) $ff }
(void()) mode_stdbitmap()
(byte~) mode_stdbitmap::$22 reg byte a 2002.0
(byte~) mode_stdbitmap::$25 reg byte a 2002.0
(byte~) mode_stdbitmap::$26 reg byte a 2002.0
(label) mode_stdbitmap::@1
(label) mode_stdbitmap::@10
(label) mode_stdbitmap::@11
(label) mode_stdbitmap::@2
(label) mode_stdbitmap::@3
(label) mode_stdbitmap::@4
(label) mode_stdbitmap::@5
(label) mode_stdbitmap::@6
(label) mode_stdbitmap::@7
(label) mode_stdbitmap::@8
(label) mode_stdbitmap::@9
(label) mode_stdbitmap::@return
(byte*) mode_stdbitmap::BITMAP
(const byte*) mode_stdbitmap::BITMAP#0 BITMAP = (byte*) 24576
(byte*) mode_stdbitmap::SCREEN
(const byte*) mode_stdbitmap::SCREEN#0 SCREEN = (byte*) 16384
(byte*) mode_stdbitmap::ch
(byte*) mode_stdbitmap::ch#1 ch zp ZP_WORD:9 420.59999999999997
(byte*) mode_stdbitmap::ch#2 ch zp ZP_WORD:9 443.42857142857144
(byte*) mode_stdbitmap::ch#3 ch zp ZP_WORD:9 202.0
(byte) mode_stdbitmap::col
(byte) mode_stdbitmap::col#0 reg byte y 1501.5
(byte) mode_stdbitmap::col2
(byte) mode_stdbitmap::col2#0 col2 zp ZP_BYTE:13 1001.0
(byte) mode_stdbitmap::cx
(byte) mode_stdbitmap::cx#1 reg byte x 1501.5
(byte) mode_stdbitmap::cx#2 reg byte x 375.375
(byte) mode_stdbitmap::cy
(byte) mode_stdbitmap::cy#1 cy zp ZP_BYTE:7 151.5
(byte) mode_stdbitmap::cy#4 cy zp ZP_BYTE:7 109.36363636363637
(byte) mode_stdbitmap::i
(byte) mode_stdbitmap::i#1 reg byte x 151.5
(byte) mode_stdbitmap::i#2 reg byte x 202.0
(byte) mode_stdbitmap::l
(byte) mode_stdbitmap::l#1 l zp ZP_BYTE:14 202.0
(byte) mode_stdbitmap::l#2 l zp ZP_BYTE:14 101.0
(byte) mode_stdbitmap::lines_cnt
(const byte) mode_stdbitmap::lines_cnt#0 lines_cnt = (byte) 9
(byte[]) mode_stdbitmap::lines_x
(const byte[]) mode_stdbitmap::lines_x#0 lines_x = { (byte) 0, (byte) $ff, (byte) $ff, (byte) 0, (byte) 0, (byte) $80, (byte) $ff, (byte) $80, (byte) 0, (byte) $80 }
(byte[]) mode_stdbitmap::lines_y
(const byte[]) mode_stdbitmap::lines_y#0 lines_y = { (byte) 0, (byte) 0, (byte) $c7, (byte) $c7, (byte) 0, (byte) 0, (byte) $64, (byte) $c7, (byte) $64, (byte) 0 }
(void()) mode_stdchar()
(byte~) mode_stdchar::$25 reg byte a 2002.0
(byte~) mode_stdchar::$26 reg byte a 2002.0
(byte~) mode_stdchar::$27 reg byte a 2002.0
(byte~) mode_stdchar::$28 $28 zp ZP_BYTE:14 1001.0
(byte~) mode_stdchar::$29 reg byte a 2002.0
(byte~) mode_stdchar::$30 reg byte a 2002.0
(label) mode_stdchar::@1
(label) mode_stdchar::@2
(label) mode_stdchar::@3
(label) mode_stdchar::@4
(label) mode_stdchar::@5
(label) mode_stdchar::@6
(label) mode_stdchar::@return
(byte*) mode_stdchar::CHARSET
(const byte*) mode_stdchar::CHARSET#0 CHARSET = (byte*) 36864
(byte*) mode_stdchar::COLORS
(const byte*) mode_stdchar::COLORS#0 COLORS = (byte*) 55296
(byte*) mode_stdchar::SCREEN
(const byte*) mode_stdchar::SCREEN#0 SCREEN = (byte*) 32768
(byte*) mode_stdchar::ch
(byte*) mode_stdchar::ch#1 ch zp ZP_WORD:4 420.59999999999997
(byte*) mode_stdchar::ch#2 ch zp ZP_WORD:4 310.4
(byte*) mode_stdchar::ch#3 ch zp ZP_WORD:4 202.0
(byte*) mode_stdchar::col
(byte*) mode_stdchar::col#1 col zp ZP_WORD:11 191.1818181818182
(byte*) mode_stdchar::col#2 col zp ZP_WORD:11 776.0
(byte*) mode_stdchar::col#3 col zp ZP_WORD:11 202.0
(byte) mode_stdchar::cx
(byte) mode_stdchar::cx#1 reg byte x 1501.5
(byte) mode_stdchar::cx#2 reg byte x 364.0
(byte) mode_stdchar::cy
(byte) mode_stdchar::cy#1 cy zp ZP_BYTE:6 151.5
(byte) mode_stdchar::cy#4 cy zp ZP_BYTE:6 157.42857142857144
(byte) mode_stdchar::i
(byte) mode_stdchar::i#1 reg byte x 151.5
(byte) mode_stdchar::i#2 reg byte x 202.0
(void()) mode_twoplanebitmap()
(byte~) mode_twoplanebitmap::$16 reg byte a 2002.0
(byte~) mode_twoplanebitmap::$17 $17 zp ZP_BYTE:14 1001.0
(byte~) mode_twoplanebitmap::$18 reg byte a 2002.0
(byte~) mode_twoplanebitmap::$19 reg byte a 2002.0
(byte~) mode_twoplanebitmap::$22 reg byte a 2002.0
(label) mode_twoplanebitmap::@1
(label) mode_twoplanebitmap::@10
(label) mode_twoplanebitmap::@11
(label) mode_twoplanebitmap::@12
(label) mode_twoplanebitmap::@13
(label) mode_twoplanebitmap::@14
(label) mode_twoplanebitmap::@15
(label) mode_twoplanebitmap::@2
(label) mode_twoplanebitmap::@3
(label) mode_twoplanebitmap::@4
(label) mode_twoplanebitmap::@5
(label) mode_twoplanebitmap::@6
(label) mode_twoplanebitmap::@7
(label) mode_twoplanebitmap::@8
(label) mode_twoplanebitmap::@9
(label) mode_twoplanebitmap::@return
(byte*) mode_twoplanebitmap::COLORS
(const byte*) mode_twoplanebitmap::COLORS#0 COLORS = (byte*) 32768
(byte*) mode_twoplanebitmap::PLANEA
(const byte*) mode_twoplanebitmap::PLANEA#0 PLANEA = (byte*) 16384
(byte*) mode_twoplanebitmap::PLANEB
(const byte*) mode_twoplanebitmap::PLANEB#0 PLANEB = (byte*) 24576
(byte) mode_twoplanebitmap::ax
(byte) mode_twoplanebitmap::ax#1 reg byte x 1501.5
(byte) mode_twoplanebitmap::ax#2 reg byte x 250.25
(byte) mode_twoplanebitmap::ay
(byte) mode_twoplanebitmap::ay#1 ay zp ZP_BYTE:7 151.5
(byte) mode_twoplanebitmap::ay#5 ay zp ZP_BYTE:7 109.36363636363637
(byte) mode_twoplanebitmap::bx
(byte) mode_twoplanebitmap::bx#1 reg byte x 1501.5
(byte) mode_twoplanebitmap::bx#2 reg byte x 667.3333333333334
(byte) mode_twoplanebitmap::by
(byte) mode_twoplanebitmap::by#1 by zp ZP_BYTE:2 151.5
(byte) mode_twoplanebitmap::by#4 by zp ZP_BYTE:2 33.666666666666664
(byte*) mode_twoplanebitmap::col
(byte*) mode_twoplanebitmap::col#1 col zp ZP_WORD:11 420.59999999999997
(byte*) mode_twoplanebitmap::col#2 col zp ZP_WORD:11 517.3333333333334
(byte*) mode_twoplanebitmap::col#3 col zp ZP_WORD:11 202.0
(byte) mode_twoplanebitmap::cx
(byte) mode_twoplanebitmap::cx#1 reg byte x 1501.5
(byte) mode_twoplanebitmap::cx#2 reg byte x 429.0
(byte) mode_twoplanebitmap::cy
(byte) mode_twoplanebitmap::cy#1 cy zp ZP_BYTE:6 151.5
(byte) mode_twoplanebitmap::cy#4 cy zp ZP_BYTE:6 120.29999999999998
(byte*) mode_twoplanebitmap::gfxa
(byte*) mode_twoplanebitmap::gfxa#1 gfxa zp ZP_WORD:9 2002.0
(byte*) mode_twoplanebitmap::gfxa#2 gfxa zp ZP_WORD:9 2002.0
(byte*) mode_twoplanebitmap::gfxa#3 gfxa zp ZP_WORD:9 1021.2
(byte*) mode_twoplanebitmap::gfxa#6 gfxa zp ZP_WORD:9 620.8
(byte*) mode_twoplanebitmap::gfxa#7 gfxa zp ZP_WORD:9 202.0
(byte*) mode_twoplanebitmap::gfxb
(byte*) mode_twoplanebitmap::gfxb#1 gfxb zp ZP_WORD:4 420.59999999999997
(byte*) mode_twoplanebitmap::gfxb#2 gfxb zp ZP_WORD:4 1552.0
(byte*) mode_twoplanebitmap::gfxb#3 gfxb zp ZP_WORD:4 202.0
(byte) mode_twoplanebitmap::i
(byte) mode_twoplanebitmap::i#1 reg byte x 151.5
(byte) mode_twoplanebitmap::i#2 reg byte x 202.0
(byte*) print_char_cursor
(byte*) print_char_cursor#1 print_char_cursor zp ZP_WORD:4 2002.0
(byte*~) print_char_cursor#100 print_char_cursor zp ZP_WORD:4 202.0
(byte*) print_char_cursor#17 print_char_cursor zp ZP_WORD:4 821.0
(byte*) print_char_cursor#19 print_char_cursor zp ZP_WORD:4 101.0
(byte*) print_char_cursor#32 print_char_cursor zp ZP_WORD:4 572.0
(void()) print_cls()
(label) print_cls::@return
(byte*) print_line_cursor
(byte*) print_line_cursor#17 print_line_cursor zp ZP_WORD:9 8.583333333333332
(byte*) print_line_cursor#18 print_line_cursor zp ZP_WORD:9 2004.0
(byte*) print_line_cursor#19 print_line_cursor zp ZP_WORD:9 641.0
(void()) print_ln()
(label) print_ln::@1
(label) print_ln::@return
(byte*) print_screen
(void()) print_set_screen((byte*) print_set_screen::screen)
(label) print_set_screen::@return
(byte*) print_set_screen::screen
(void()) print_str_lines((byte*) print_str_lines::str)
(label) print_str_lines::@1
(label) print_str_lines::@2
(label) print_str_lines::@3
(label) print_str_lines::@4
(label) print_str_lines::@5
(label) print_str_lines::@6
(label) print_str_lines::@return
(byte) print_str_lines::ch
(byte) print_str_lines::ch#0 reg byte a 667.3333333333334
(byte*) print_str_lines::str
(byte*) print_str_lines::str#0 str zp ZP_WORD:11 233.66666666666669
(byte*) print_str_lines::str#2 str zp ZP_WORD:11 151.5
(byte*) print_str_lines::str#3 str zp ZP_WORD:11 1552.0
reg byte x [ menu::i#2 menu::i#1 ]
reg byte x [ mode_8bppchunkybmm::i#2 mode_8bppchunkybmm::i#1 ]
reg byte x [ mode_8bppchunkybmm::gfxbCpuBank#4 mode_8bppchunkybmm::gfxbCpuBank#7 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::gfxbCpuBank#2 ]
reg byte x [ mode_ctrl::ctrl#14 mode_ctrl::ctrl#22 mode_ctrl::ctrl#6 mode_ctrl::ctrl#13 mode_ctrl::ctrl#5 mode_ctrl::ctrl#12 mode_ctrl::ctrl#4 mode_ctrl::ctrl#11 mode_ctrl::ctrl#3 mode_ctrl::ctrl#10 mode_ctrl::ctrl#2 mode_ctrl::ctrl#17 mode_ctrl::ctrl#1 mode_ctrl::ctrl#0 ]
reg byte y [ keyboard_key_pressed::key#20 ]
reg byte a [ dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#1 ]
reg byte x [ mode_8bpppixelcell::i#2 mode_8bpppixelcell::i#1 ]
reg byte x [ mode_8bpppixelcell::ax#2 mode_8bpppixelcell::ax#1 ]
reg byte x [ mode_8bpppixelcell::cp#2 mode_8bpppixelcell::cp#1 ]
reg byte a [ mode_8bpppixelcell::c#2 mode_8bpppixelcell::c#3 ]
reg byte x [ mode_sixsfred::i#2 mode_sixsfred::i#1 ]
reg byte x [ mode_sixsfred::cx#2 mode_sixsfred::cx#1 ]
reg byte x [ mode_sixsfred::ax#2 mode_sixsfred::ax#1 ]
reg byte x [ mode_sixsfred::bx#2 mode_sixsfred::bx#1 ]
reg byte x [ mode_twoplanebitmap::i#2 mode_twoplanebitmap::i#1 ]
reg byte x [ mode_twoplanebitmap::cx#2 mode_twoplanebitmap::cx#1 ]
reg byte x [ mode_twoplanebitmap::ax#2 mode_twoplanebitmap::ax#1 ]
reg byte x [ mode_twoplanebitmap::bx#2 mode_twoplanebitmap::bx#1 ]
reg byte x [ mode_sixsfred2::i#2 mode_sixsfred2::i#1 ]
reg byte x [ mode_sixsfred2::cx#2 mode_sixsfred2::cx#1 ]
reg byte x [ mode_sixsfred2::ax#2 mode_sixsfred2::ax#1 ]
reg byte x [ mode_sixsfred2::bx#2 mode_sixsfred2::bx#1 ]
reg byte x [ mode_hicolmcchar::i#2 mode_hicolmcchar::i#1 ]
reg byte x [ mode_hicolmcchar::cx#2 mode_hicolmcchar::cx#1 ]
reg byte x [ mode_hicolecmchar::i#2 mode_hicolecmchar::i#1 ]
reg byte x [ mode_hicolecmchar::cx#2 mode_hicolecmchar::cx#1 ]
reg byte x [ mode_hicolstdchar::i#2 mode_hicolstdchar::i#1 ]
reg byte x [ mode_hicolstdchar::cx#2 mode_hicolstdchar::cx#1 ]
reg byte x [ mode_stdbitmap::i#2 mode_stdbitmap::i#1 ]
reg byte x [ mode_stdbitmap::cx#2 mode_stdbitmap::cx#1 ]
reg byte x [ bitmap_plot::x#4 bitmap_plot::x#1 bitmap_plot::x#0 bitmap_plot::x#3 bitmap_plot::x#2 ]
reg byte y [ bitmap_plot::y#4 bitmap_plot::y#1 bitmap_plot::y#0 bitmap_plot::y#3 bitmap_plot::y#2 ]
reg byte x [ bitmap_line_ydxi::x#3 bitmap_line_ydxi::x#5 bitmap_line_ydxi::x#1 bitmap_line_ydxi::x#0 bitmap_line_ydxi::x#6 bitmap_line_ydxi::x#2 ]
reg byte x [ bitmap_line_ydxd::x#3 bitmap_line_ydxd::x#5 bitmap_line_ydxd::x#0 bitmap_line_ydxd::x#1 bitmap_line_ydxd::x#6 bitmap_line_ydxd::x#2 ]
zp ZP_BYTE:2 [ bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#3 bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#2 bitmap_line_ydxi::y#3 bitmap_line_ydxi::y#6 bitmap_line_ydxi::y#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::y#2 bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#2 mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 mode_sixsfred::ay#4 mode_sixsfred::ay#1 mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ]
zp ZP_BYTE:3 [ bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 bitmap_line_xdyd::e#3 bitmap_line_xdyd::e#0 bitmap_line_xdyd::e#6 bitmap_line_xdyd::e#2 bitmap_line_xdyd::e#1 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 bitmap_line::y1#0 bitmap_line_xdyi::e#3 bitmap_line_xdyi::e#0 bitmap_line_xdyi::e#6 bitmap_line_xdyi::e#2 bitmap_line_xdyi::e#1 mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 mode_sixsfred::by#4 mode_sixsfred::by#1 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ]
reg byte x [ bitmap_clear::x#2 bitmap_clear::x#1 ]
reg byte x [ bitmap_init::x#2 bitmap_init::x#1 ]
reg byte y [ bitmap_init::bits#3 bitmap_init::bits#4 bitmap_init::bits#1 ]
reg byte x [ bitmap_init::y#2 bitmap_init::y#1 ]
reg byte x [ mode_mcchar::i#2 mode_mcchar::i#1 ]
reg byte x [ mode_mcchar::cx#2 mode_mcchar::cx#1 ]
reg byte x [ mode_ecmchar::i#2 mode_ecmchar::i#1 ]
reg byte x [ mode_ecmchar::cx#2 mode_ecmchar::cx#1 ]
reg byte x [ mode_stdchar::i#2 mode_stdchar::i#1 ]
reg byte x [ mode_stdchar::cx#2 mode_stdchar::cx#1 ]
zp ZP_WORD:4 [ print_char_cursor#17 print_char_cursor#19 print_char_cursor#100 print_char_cursor#32 print_char_cursor#1 mode_stdchar::ch#2 mode_stdchar::ch#3 mode_stdchar::ch#1 mode_ecmchar::ch#2 mode_ecmchar::ch#3 mode_ecmchar::ch#1 mode_mcchar::ch#2 mode_mcchar::ch#3 mode_mcchar::ch#1 mode_hicolecmchar::col#2 mode_hicolecmchar::col#3 mode_hicolecmchar::col#1 mode_hicolmcchar::ch#2 mode_hicolmcchar::ch#3 mode_hicolmcchar::ch#1 mode_sixsfred2::gfxa#2 mode_sixsfred2::gfxa#3 mode_sixsfred2::gfxa#1 mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::gfxb#3 mode_twoplanebitmap::gfxb#1 mode_sixsfred::col#2 mode_sixsfred::col#3 mode_sixsfred::col#1 mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::chargen#4 mode_8bpppixelcell::chargen#1 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::x#1 menu::c#2 menu::c#1 ]
reg byte a [ keyboard_key_pressed::return#2 ]
reg byte a [ menu::$29 ]
reg byte a [ keyboard_key_pressed::return#24 ]
reg byte a [ menu::$33 ]
reg byte a [ keyboard_key_pressed::return#25 ]
reg byte a [ menu::$37 ]
reg byte a [ keyboard_key_pressed::return#26 ]
reg byte a [ menu::$41 ]
reg byte a [ keyboard_key_pressed::return#27 ]
reg byte a [ menu::$45 ]
reg byte a [ keyboard_key_pressed::return#28 ]
reg byte a [ menu::$49 ]
reg byte a [ keyboard_key_pressed::return#29 ]
reg byte a [ menu::$53 ]
reg byte a [ keyboard_key_pressed::return#30 ]
reg byte a [ menu::$57 ]
reg byte a [ keyboard_key_pressed::return#10 ]
reg byte a [ menu::$61 ]
reg byte a [ keyboard_key_pressed::return#11 ]
reg byte a [ menu::$65 ]
reg byte a [ keyboard_key_pressed::return#12 ]
reg byte a [ menu::$69 ]
reg byte a [ keyboard_key_pressed::return#13 ]
reg byte a [ menu::$73 ]
reg byte a [ mode_8bppchunkybmm::c#0 ]
reg byte a [ keyboard_key_pressed::return#14 ]
reg byte a [ mode_ctrl::$1 ]
reg byte a [ keyboard_key_pressed::return#15 ]
reg byte a [ mode_ctrl::$4 ]
reg byte a [ keyboard_key_pressed::return#16 ]
reg byte a [ mode_ctrl::$8 ]
reg byte a [ keyboard_key_pressed::return#17 ]
reg byte a [ mode_ctrl::$12 ]
reg byte a [ keyboard_key_pressed::return#18 ]
reg byte a [ mode_ctrl::$16 ]
reg byte a [ keyboard_key_pressed::return#19 ]
reg byte a [ mode_ctrl::$20 ]
reg byte a [ keyboard_key_pressed::return#20 ]
reg byte a [ mode_ctrl::$24 ]
reg byte a [ keyboard_key_pressed::return#21 ]
reg byte a [ mode_ctrl::$28 ]
zp ZP_BYTE:6 [ keyboard_key_pressed::colidx#0 mode_stdchar::cy#4 mode_stdchar::cy#1 bitmap_line_ydxi::e#3 bitmap_line_ydxi::e#0 bitmap_line_ydxi::e#6 bitmap_line_ydxi::e#2 bitmap_line_ydxi::e#1 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::x1#1 bitmap_line::x0#0 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::x1#1 mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 mode_sixsfred2::by#4 mode_sixsfred2::by#1 mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ]
reg byte a [ keyboard_key_pressed::rowidx#0 ]
reg byte y [ keyboard_matrix_read::rowid#0 ]
reg byte a [ keyboard_matrix_read::return#2 ]
reg byte a [ keyboard_key_pressed::$2 ]
reg byte a [ keyboard_key_pressed::return#0 ]
reg byte a [ keyboard_matrix_read::return#0 ]
reg byte a [ mode_8bpppixelcell::$14 ]
reg byte a [ mode_8bpppixelcell::$16 ]
reg byte a [ mode_8bpppixelcell::$17 ]
reg byte a [ mode_8bpppixelcell::$20 ]
reg byte a [ mode_sixsfred::$17 ]
reg byte a [ mode_sixsfred::$18 ]
reg byte a [ mode_sixsfred::$21 ]
reg byte a [ mode_sixsfred::row#0 ]
reg byte a [ mode_twoplanebitmap::$16 ]
reg byte a [ mode_twoplanebitmap::$18 ]
reg byte a [ mode_twoplanebitmap::$19 ]
reg byte a [ mode_twoplanebitmap::$22 ]
reg byte a [ mode_sixsfred2::$15 ]
reg byte a [ mode_sixsfred2::$17 ]
reg byte a [ mode_sixsfred2::$18 ]
reg byte a [ mode_sixsfred2::$21 ]
reg byte a [ mode_sixsfred2::row#0 ]
reg byte a [ mode_hicolmcchar::$26 ]
zp ZP_BYTE:7 [ mode_hicolmcchar::$27 mode_sixsfred2::$16 mode_mcchar::cy#4 mode_mcchar::cy#1 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 bitmap_line::xd#2 bitmap_line::xd#1 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::xd#1 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ]
reg byte a [ mode_hicolmcchar::$28 ]
reg byte a [ mode_hicolmcchar::v#0 ]
reg byte a [ mode_hicolecmchar::$26 ]
reg byte a [ mode_hicolecmchar::$28 ]
reg byte a [ mode_hicolecmchar::v#0 ]
reg byte a [ mode_hicolstdchar::$25 ]
zp ZP_BYTE:8 [ mode_hicolstdchar::$26 mode_hicolecmchar::$27 mode_ecmchar::cy#4 mode_ecmchar::cy#1 bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 bitmap_line::y0#0 bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 ]
reg byte a [ mode_hicolstdchar::$27 ]
reg byte a [ mode_hicolstdchar::v#0 ]
reg byte a [ mode_stdbitmap::$22 ]
reg byte y [ mode_stdbitmap::col#0 ]
reg byte a [ mode_stdbitmap::$25 ]
reg byte a [ mode_stdbitmap::$26 ]
reg byte x [ bitmap_line::x1#0 ]
reg byte y [ bitmap_line::yd#2 ]
reg byte y [ bitmap_line::yd#1 ]
reg byte y [ bitmap_line::yd#10 ]
reg byte y [ bitmap_line::yd#11 ]
reg byte x [ bitmap_line_xdyi::$6 ]
zp ZP_WORD:9 [ bitmap_plot::plotter_x#0 bitmap_plot::plotter#0 mode_8bppchunkybmm::$26 memset::dst#2 memset::dst#1 print_line_cursor#18 print_line_cursor#17 print_line_cursor#19 bitmap_init::yoffs#2 bitmap_init::yoffs#4 bitmap_init::yoffs#1 bitmap_clear::bitmap#2 bitmap_clear::bitmap#3 bitmap_clear::bitmap#5 bitmap_clear::bitmap#1 bitmap_clear::bitmap#0 mode_stdbitmap::ch#2 mode_stdbitmap::ch#3 mode_stdbitmap::ch#1 mode_hicolstdchar::ch#2 mode_hicolstdchar::ch#3 mode_hicolstdchar::ch#1 mode_sixsfred2::col#2 mode_sixsfred2::col#3 mode_sixsfred2::col#1 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::gfxa#7 mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::gfxa#1 mode_sixsfred::gfxa#2 mode_sixsfred::gfxa#3 mode_sixsfred::gfxa#1 mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::gfxb#7 mode_8bpppixelcell::gfxb#1 ]
zp ZP_WORD:11 [ bitmap_plot::plotter_y#0 print_str_lines::str#3 print_str_lines::str#2 print_str_lines::str#0 mode_stdchar::col#2 mode_stdchar::col#3 mode_stdchar::col#1 mode_ecmchar::col#2 mode_ecmchar::col#3 mode_ecmchar::col#1 mode_mcchar::col#2 mode_mcchar::col#3 mode_mcchar::col#1 mode_hicolstdchar::col#2 mode_hicolstdchar::col#3 mode_hicolstdchar::col#1 mode_hicolecmchar::ch#2 mode_hicolecmchar::ch#3 mode_hicolecmchar::ch#1 mode_hicolmcchar::col#2 mode_hicolmcchar::col#3 mode_hicolmcchar::col#1 mode_sixsfred2::gfxb#2 mode_sixsfred2::gfxb#3 mode_sixsfred2::gfxb#1 mode_twoplanebitmap::col#2 mode_twoplanebitmap::col#3 mode_twoplanebitmap::col#1 mode_sixsfred::gfxb#2 mode_sixsfred::gfxb#3 mode_sixsfred::gfxb#1 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::gfxa#1 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::gfxb#1 ]
reg byte a [ bitmap_plot::$1 ]
reg byte a [ bitmap_line_ydxi::$6 ]
reg byte x [ bitmap_line_xdyd::$6 ]
reg byte a [ bitmap_line_ydxd::$6 ]
reg byte a [ bitmap_init::$0 ]
reg byte a [ bitmap_init::$7 ]
reg byte a [ bitmap_init::$8 ]
reg byte a [ bitmap_init::$9 ]
reg byte a [ mode_mcchar::$26 ]
reg byte a [ mode_mcchar::$27 ]
reg byte a [ mode_mcchar::$28 ]
reg byte a [ mode_mcchar::$30 ]
reg byte a [ mode_mcchar::$31 ]
reg byte a [ mode_ecmchar::$26 ]
reg byte a [ mode_ecmchar::$27 ]
reg byte a [ mode_ecmchar::$28 ]
zp ZP_BYTE:13 [ mode_ecmchar::$29 mode_mcchar::$29 bitmap_init::$10 mode_stdbitmap::col2#0 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#0 bitmap_line_xdyd::yd#1 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 mode_sixsfred::cy#4 mode_sixsfred::cy#1 mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 dtv_control#114 dtv_control#144 dtv_control#17 mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ]
reg byte a [ mode_ecmchar::$30 ]
reg byte a [ mode_ecmchar::$31 ]
reg byte a [ mode_stdchar::$25 ]
reg byte a [ mode_stdchar::$26 ]
reg byte a [ mode_stdchar::$27 ]
zp ZP_BYTE:14 [ mode_stdchar::$28 mode_twoplanebitmap::$17 mode_8bpppixelcell::$15 bitmap_clear::y#4 bitmap_clear::y#1 mode_stdbitmap::l#2 mode_stdbitmap::l#1 ]
reg byte a [ mode_stdchar::$29 ]
reg byte a [ mode_stdchar::$30 ]
reg byte a [ print_str_lines::ch#0 ]
FINAL ASSEMBLER
Score: 2307041
// File Comments
// Exploring C64DTV Screen Modes
// Upstart
.pc = $801 "Basic"
:BasicUpstart(main)
.pc = $80d "Program"
// Global Constants & labels
// Processor port data direction register
.label PROCPORT_DDR = 0
// Mask for PROCESSOR_PORT_DDR which allows only memory configuration to be written
.const PROCPORT_DDR_MEMORY_MASK = 7
// Processor Port Register controlling RAM/ROM configuration and the datasette
.label PROCPORT = 1
// RAM in $A000, $E000 I/O in $D000
.const PROCPORT_RAM_IO = 5
// RAM in $A000, $E000 CHAR ROM in $D000
.const PROCPORT_RAM_CHARROM = 1
.label RASTER = $d012
.label BORDERCOL = $d020
.label BGCOL = $d021
.label BGCOL1 = $d021
.label BGCOL2 = $d022
.label BGCOL3 = $d023
.label BGCOL4 = $d024
.label VIC_CONTROL = $d011
.const VIC_ECM = $40
.const VIC_BMM = $20
.const VIC_DEN = $10
.const VIC_RSEL = 8
.label VIC_CONTROL2 = $d016
.const VIC_MCM = $10
.const VIC_CSEL = 8
.label VIC_MEMORY = $d018
// Color Ram
.label COLS = $d800
// CIA#1 Port A: keyboard matrix columns and joystick #2
.label CIA1_PORT_A = $dc00
// CIA#1 Port B: keyboard matrix rows and joystick #1.
.label CIA1_PORT_B = $dc01
// CIA#2 Port A: Serial bus, RS-232, VIC memory bank
.label CIA2_PORT_A = $dd00
// CIA #2 Port A data direction register.
.label CIA2_PORT_A_DDR = $dd02
// The colors of the C64
.const BLACK = 0
.const GREEN = 5
.const BLUE = 6
.const LIGHT_GREEN = $d
// Feature enables or disables the extra C64 DTV features
.label DTV_FEATURE = $d03f
.const DTV_FEATURE_ENABLE = 1
// Controls the graphics modes of the C64 DTV
.label DTV_CONTROL = $d03c
.const DTV_LINEAR = 1
.const DTV_BORDER_OFF = 2
.const DTV_HIGHCOLOR = 4
.const DTV_OVERSCAN = 8
.const DTV_COLORRAM_OFF = $10
.const DTV_CHUNKY = $40
// Defines colors for the 16 first colors ($00-$0f)
.label DTV_PALETTE = $d200
// Linear Graphics Plane A Counter Control
.label DTV_PLANEA_START_LO = $d03a
.label DTV_PLANEA_START_MI = $d03b
.label DTV_PLANEA_START_HI = $d045
.label DTV_PLANEA_STEP = $d046
.label DTV_PLANEA_MODULO_LO = $d038
.label DTV_PLANEA_MODULO_HI = $d039
// Linear Graphics Plane B Counter Control
.label DTV_PLANEB_START_LO = $d049
.label DTV_PLANEB_START_MI = $d04a
.label DTV_PLANEB_START_HI = $d04b
.label DTV_PLANEB_STEP = $d04c
.label DTV_PLANEB_MODULO_LO = $d047
.label DTV_PLANEB_MODULO_HI = $d048
// Select memory bank where color data is fetched from (bits 11:0)
// Memory address of Color RAM is ColorBank*$400
.label DTV_COLOR_BANK_LO = $d036
.label DTV_COLOR_BANK_HI = $d037
.const DTV_COLOR_BANK_DEFAULT = $1d800
// Selects memory bank for normal VIC color mode and lower data for high color modes. (bits 5:0)
// Memory address of VIC Graphics is GraphicsBank*$10000
.label DTV_GRAPHICS_VIC_BANK = $d03d
.const KEY_3 = 8
.const KEY_A = $a
.const KEY_4 = $b
.const KEY_E = $e
.const KEY_D = $12
.const KEY_6 = $13
.const KEY_C = $14
.const KEY_7 = $18
.const KEY_8 = $1b
.const KEY_B = $1c
.const KEY_H = $1d
.const KEY_U = $1e
.const KEY_0 = $23
.const KEY_O = $26
.const KEY_L = $2a
.const KEY_1 = $38
.const KEY_2 = $3b
.const KEY_SPACE = $3c
.label print_char_cursor = 4
.label dtv_control = $d
.label print_line_cursor = 9
// @begin
// [1] phi from @begin to @1 [phi:@begin->@1]
// @1
// [2] call main
// [3] phi from @1 to @end [phi:@1->@end]
// @end
// main
main: {
// asm
// asm { sei }
sei
// *PROCPORT_DDR = PROCPORT_DDR_MEMORY_MASK
// [5] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2
// Disable normal interrupt (prevent keyboard reading glitches and allows to hide basic/kernal)
// Disable kernal & basic
lda #PROCPORT_DDR_MEMORY_MASK
sta PROCPORT_DDR
// *PROCPORT = PROCPORT_RAM_IO
// [6] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2
lda #PROCPORT_RAM_IO
sta PROCPORT
// *DTV_FEATURE = DTV_FEATURE_ENABLE
// [7] *((const byte*) DTV_FEATURE#0) ← (const byte) DTV_FEATURE_ENABLE#0 -- _deref_pbuc1=vbuc2
// Enable DTV extended modes
lda #DTV_FEATURE_ENABLE
sta DTV_FEATURE
// [8] phi from main main::@1 to main::@1 [phi:main/main::@1->main::@1]
// main::@1
b1:
// menu()
// [9] call menu
jsr menu
jmp b1
}
// menu
menu: {
.label SCREEN = $8000
.label CHARSET = $9800
.label c = 4
// *DTV_GRAPHICS_VIC_BANK = (byte)((dword)CHARSET/$10000)
// [10] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Charset ROM
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// *DTV_COLOR_BANK_LO = <((word)(DTV_COLOR_BANK_DEFAULT/$400))
// [11] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<DTV_COLOR_BANK_DEFAULT/$400
sta DTV_COLOR_BANK_LO
// *DTV_COLOR_BANK_HI = >((word)(DTV_COLOR_BANK_DEFAULT/$400))
// [12] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// *DTV_CONTROL = 0
// [13] *((const byte*) DTV_CONTROL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Mode
sta DTV_CONTROL
// *CIA2_PORT_A_DDR = %00000011
// [14] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2_PORT_A_DDR
// *CIA2_PORT_A = %00000011 ^ (byte)((word)CHARSET/$4000)
// [15] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) menu::CHARSET#0/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2_PORT_A
// *VIC_CONTROL = VIC_DEN|VIC_RSEL|3
// [16] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// *VIC_CONTROL2 = VIC_CSEL
// [17] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// *VIC_MEMORY = (byte)((((word)SCREEN&$3fff)/$40)|(((word)CHARSET&$3fff)/$400))
// [18] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) menu::CHARSET#0&(word) $3fff/(word) $400 -- _deref_pbuc1=vbuc2
// VIC Memory Pointers
lda #(CHARSET&$3fff)/$400
sta VIC_MEMORY
// [19] phi from menu to menu::@1 [phi:menu->menu::@1]
// [19] phi (byte) menu::i#2 = (byte) 0 [phi:menu->menu::@1#0] -- vbuxx=vbuc1
ldx #0
// DTV Palette - default
// [19] phi from menu::@1 to menu::@1 [phi:menu::@1->menu::@1]
// [19] phi (byte) menu::i#2 = (byte) menu::i#1 [phi:menu::@1->menu::@1#0] -- register_copy
// menu::@1
b1:
// DTV_PALETTE[i] = DTV_PALETTE_DEFAULT[i]
// [20] *((const byte*) DTV_PALETTE#0 + (byte) menu::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) menu::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx
lda DTV_PALETTE_DEFAULT,x
sta DTV_PALETTE,x
// for(byte i : 0..$f)
// [21] (byte) menu::i#1 ← ++ (byte) menu::i#2 -- vbuxx=_inc_vbuxx
inx
// [22] if((byte) menu::i#1!=(byte) $10) goto menu::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1
// [23] phi from menu::@1 to menu::@2 [phi:menu::@1->menu::@2]
// [23] phi (byte*) menu::c#2 = (const byte*) COLS#0 [phi:menu::@1->menu::@2#0] -- pbuz1=pbuc1
lda #<COLS
sta.z c
lda #>COLS
sta.z c+1
// Char Colors
// menu::@2
b2:
// for(byte* c=COLS;c!=COLS+1000;c++)
// [24] if((byte*) menu::c#2!=(const byte*) COLS#0+(word) $3e8) goto menu::@3 -- pbuz1_neq_pbuc1_then_la1
lda.z c+1
cmp #>COLS+$3e8
beq !b3+
jmp b3
!b3:
lda.z c
cmp #<COLS+$3e8
beq !b3+
jmp b3
!b3:
// menu::@4
// *BGCOL = 0
// [25] *((const byte*) BGCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BGCOL
// *BORDERCOL = 0
// [26] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta BORDERCOL
// print_set_screen(SCREEN)
// [27] call print_set_screen
// [893] phi from menu::@4 to print_set_screen [phi:menu::@4->print_set_screen]
jsr print_set_screen
// [28] phi from menu::@4 to menu::@29 [phi:menu::@4->menu::@29]
// menu::@29
// print_cls()
// [29] call print_cls
// [884] phi from menu::@29 to print_cls [phi:menu::@29->print_cls]
jsr print_cls
// [30] phi from menu::@29 to menu::@30 [phi:menu::@29->menu::@30]
// menu::@30
// print_str_lines(MENU_TEXT)
// [31] call print_str_lines
// [864] phi from menu::@30 to print_str_lines [phi:menu::@30->print_str_lines]
jsr print_str_lines
// [32] phi from menu::@30 menu::@42 to menu::@5 [phi:menu::@30/menu::@42->menu::@5]
// menu::@5
b5:
// keyboard_key_pressed(KEY_1)
// [33] call keyboard_key_pressed
// [211] phi from menu::@5 to keyboard_key_pressed [phi:menu::@5->keyboard_key_pressed]
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_1#0 [phi:menu::@5->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_1
jsr keyboard_key_pressed
// keyboard_key_pressed(KEY_1)
// [34] (byte) keyboard_key_pressed::return#2 ← (byte) keyboard_key_pressed::return#0
// menu::@31
// [35] (byte~) menu::$29 ← (byte) keyboard_key_pressed::return#2
// if(keyboard_key_pressed(KEY_1)!=0)
// [36] if((byte~) menu::$29==(byte) 0) goto menu::@6 -- vbuaa_eq_0_then_la1
cmp #0
beq b6
// [37] phi from menu::@31 to menu::@17 [phi:menu::@31->menu::@17]
// menu::@17
// mode_stdchar()
// [38] call mode_stdchar
jsr mode_stdchar
// menu::@return
// }
// [39] return
rts
// [40] phi from menu::@31 to menu::@6 [phi:menu::@31->menu::@6]
// menu::@6
b6:
// keyboard_key_pressed(KEY_2)
// [41] call keyboard_key_pressed
// [211] phi from menu::@6 to keyboard_key_pressed [phi:menu::@6->keyboard_key_pressed]
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_2#0 [phi:menu::@6->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_2
jsr keyboard_key_pressed
// keyboard_key_pressed(KEY_2)
// [42] (byte) keyboard_key_pressed::return#24 ← (byte) keyboard_key_pressed::return#0
// menu::@32
// [43] (byte~) menu::$33 ← (byte) keyboard_key_pressed::return#24
// if(keyboard_key_pressed(KEY_2)!=0)
// [44] if((byte~) menu::$33==(byte) 0) goto menu::@7 -- vbuaa_eq_0_then_la1
cmp #0
beq b7
// [45] phi from menu::@32 to menu::@18 [phi:menu::@32->menu::@18]
// menu::@18
// mode_ecmchar()
// [46] call mode_ecmchar
jsr mode_ecmchar
rts
// [47] phi from menu::@32 to menu::@7 [phi:menu::@32->menu::@7]
// menu::@7
b7:
// keyboard_key_pressed(KEY_3)
// [48] call keyboard_key_pressed
// [211] phi from menu::@7 to keyboard_key_pressed [phi:menu::@7->keyboard_key_pressed]
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_3#0 [phi:menu::@7->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_3
jsr keyboard_key_pressed
// keyboard_key_pressed(KEY_3)
// [49] (byte) keyboard_key_pressed::return#25 ← (byte) keyboard_key_pressed::return#0
// menu::@33
// [50] (byte~) menu::$37 ← (byte) keyboard_key_pressed::return#25
// if(keyboard_key_pressed(KEY_3)!=0)
// [51] if((byte~) menu::$37==(byte) 0) goto menu::@8 -- vbuaa_eq_0_then_la1
cmp #0
beq b8
// [52] phi from menu::@33 to menu::@19 [phi:menu::@33->menu::@19]
// menu::@19
// mode_mcchar()
// [53] call mode_mcchar
jsr mode_mcchar
rts
// [54] phi from menu::@33 to menu::@8 [phi:menu::@33->menu::@8]
// menu::@8
b8:
// keyboard_key_pressed(KEY_4)
// [55] call keyboard_key_pressed
// [211] phi from menu::@8 to keyboard_key_pressed [phi:menu::@8->keyboard_key_pressed]
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_4#0 [phi:menu::@8->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_4
jsr keyboard_key_pressed
// keyboard_key_pressed(KEY_4)
// [56] (byte) keyboard_key_pressed::return#26 ← (byte) keyboard_key_pressed::return#0
// menu::@34
// [57] (byte~) menu::$41 ← (byte) keyboard_key_pressed::return#26
// if(keyboard_key_pressed(KEY_4)!=0)
// [58] if((byte~) menu::$41==(byte) 0) goto menu::@9 -- vbuaa_eq_0_then_la1
cmp #0
beq b9
// [59] phi from menu::@34 to menu::@20 [phi:menu::@34->menu::@20]
// menu::@20
// mode_stdbitmap()
// [60] call mode_stdbitmap
jsr mode_stdbitmap
rts
// [61] phi from menu::@34 to menu::@9 [phi:menu::@34->menu::@9]
// menu::@9
b9:
// keyboard_key_pressed(KEY_6)
// [62] call keyboard_key_pressed
// [211] phi from menu::@9 to keyboard_key_pressed [phi:menu::@9->keyboard_key_pressed]
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_6#0 [phi:menu::@9->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_6
jsr keyboard_key_pressed
// keyboard_key_pressed(KEY_6)
// [63] (byte) keyboard_key_pressed::return#27 ← (byte) keyboard_key_pressed::return#0
// menu::@35
// [64] (byte~) menu::$45 ← (byte) keyboard_key_pressed::return#27
// if(keyboard_key_pressed(KEY_6)!=0)
// [65] if((byte~) menu::$45==(byte) 0) goto menu::@10 -- vbuaa_eq_0_then_la1
cmp #0
beq b10
// [66] phi from menu::@35 to menu::@21 [phi:menu::@35->menu::@21]
// menu::@21
// mode_hicolstdchar()
// [67] call mode_hicolstdchar
jsr mode_hicolstdchar
rts
// [68] phi from menu::@35 to menu::@10 [phi:menu::@35->menu::@10]
// menu::@10
b10:
// keyboard_key_pressed(KEY_7)
// [69] call keyboard_key_pressed
// [211] phi from menu::@10 to keyboard_key_pressed [phi:menu::@10->keyboard_key_pressed]
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_7#0 [phi:menu::@10->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_7
jsr keyboard_key_pressed
// keyboard_key_pressed(KEY_7)
// [70] (byte) keyboard_key_pressed::return#28 ← (byte) keyboard_key_pressed::return#0
// menu::@36
// [71] (byte~) menu::$49 ← (byte) keyboard_key_pressed::return#28
// if(keyboard_key_pressed(KEY_7)!=0)
// [72] if((byte~) menu::$49==(byte) 0) goto menu::@11 -- vbuaa_eq_0_then_la1
cmp #0
beq b11
// [73] phi from menu::@36 to menu::@22 [phi:menu::@36->menu::@22]
// menu::@22
// mode_hicolecmchar()
// [74] call mode_hicolecmchar
jsr mode_hicolecmchar
rts
// [75] phi from menu::@36 to menu::@11 [phi:menu::@36->menu::@11]
// menu::@11
b11:
// keyboard_key_pressed(KEY_8)
// [76] call keyboard_key_pressed
// [211] phi from menu::@11 to keyboard_key_pressed [phi:menu::@11->keyboard_key_pressed]
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_8#0 [phi:menu::@11->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_8
jsr keyboard_key_pressed
// keyboard_key_pressed(KEY_8)
// [77] (byte) keyboard_key_pressed::return#29 ← (byte) keyboard_key_pressed::return#0
// menu::@37
// [78] (byte~) menu::$53 ← (byte) keyboard_key_pressed::return#29
// if(keyboard_key_pressed(KEY_8)!=0)
// [79] if((byte~) menu::$53==(byte) 0) goto menu::@12 -- vbuaa_eq_0_then_la1
cmp #0
beq b12
// [80] phi from menu::@37 to menu::@23 [phi:menu::@37->menu::@23]
// menu::@23
// mode_hicolmcchar()
// [81] call mode_hicolmcchar
jsr mode_hicolmcchar
rts
// [82] phi from menu::@37 to menu::@12 [phi:menu::@37->menu::@12]
// menu::@12
b12:
// keyboard_key_pressed(KEY_A)
// [83] call keyboard_key_pressed
// [211] phi from menu::@12 to keyboard_key_pressed [phi:menu::@12->keyboard_key_pressed]
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_A#0 [phi:menu::@12->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_A
jsr keyboard_key_pressed
// keyboard_key_pressed(KEY_A)
// [84] (byte) keyboard_key_pressed::return#30 ← (byte) keyboard_key_pressed::return#0
// menu::@38
// [85] (byte~) menu::$57 ← (byte) keyboard_key_pressed::return#30
// if(keyboard_key_pressed(KEY_A)!=0)
// [86] if((byte~) menu::$57==(byte) 0) goto menu::@13 -- vbuaa_eq_0_then_la1
cmp #0
beq b13
// [87] phi from menu::@38 to menu::@24 [phi:menu::@38->menu::@24]
// menu::@24
// mode_sixsfred2()
// [88] call mode_sixsfred2
jsr mode_sixsfred2
rts
// [89] phi from menu::@38 to menu::@13 [phi:menu::@38->menu::@13]
// menu::@13
b13:
// keyboard_key_pressed(KEY_B)
// [90] call keyboard_key_pressed
// [211] phi from menu::@13 to keyboard_key_pressed [phi:menu::@13->keyboard_key_pressed]
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_B#0 [phi:menu::@13->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_B
jsr keyboard_key_pressed
// keyboard_key_pressed(KEY_B)
// [91] (byte) keyboard_key_pressed::return#10 ← (byte) keyboard_key_pressed::return#0
// menu::@39
// [92] (byte~) menu::$61 ← (byte) keyboard_key_pressed::return#10
// if(keyboard_key_pressed(KEY_B)!=0)
// [93] if((byte~) menu::$61==(byte) 0) goto menu::@14 -- vbuaa_eq_0_then_la1
cmp #0
beq b14
// [94] phi from menu::@39 to menu::@25 [phi:menu::@39->menu::@25]
// menu::@25
// mode_twoplanebitmap()
// [95] call mode_twoplanebitmap
jsr mode_twoplanebitmap
rts
// [96] phi from menu::@39 to menu::@14 [phi:menu::@39->menu::@14]
// menu::@14
b14:
// keyboard_key_pressed(KEY_C)
// [97] call keyboard_key_pressed
// [211] phi from menu::@14 to keyboard_key_pressed [phi:menu::@14->keyboard_key_pressed]
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_C#0 [phi:menu::@14->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_C
jsr keyboard_key_pressed
// keyboard_key_pressed(KEY_C)
// [98] (byte) keyboard_key_pressed::return#11 ← (byte) keyboard_key_pressed::return#0
// menu::@40
// [99] (byte~) menu::$65 ← (byte) keyboard_key_pressed::return#11
// if(keyboard_key_pressed(KEY_C)!=0)
// [100] if((byte~) menu::$65==(byte) 0) goto menu::@15 -- vbuaa_eq_0_then_la1
cmp #0
beq b15
// [101] phi from menu::@40 to menu::@26 [phi:menu::@40->menu::@26]
// menu::@26
// mode_sixsfred()
// [102] call mode_sixsfred
jsr mode_sixsfred
rts
// [103] phi from menu::@40 to menu::@15 [phi:menu::@40->menu::@15]
// menu::@15
b15:
// keyboard_key_pressed(KEY_D)
// [104] call keyboard_key_pressed
// [211] phi from menu::@15 to keyboard_key_pressed [phi:menu::@15->keyboard_key_pressed]
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_D#0 [phi:menu::@15->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_D
jsr keyboard_key_pressed
// keyboard_key_pressed(KEY_D)
// [105] (byte) keyboard_key_pressed::return#12 ← (byte) keyboard_key_pressed::return#0
// menu::@41
// [106] (byte~) menu::$69 ← (byte) keyboard_key_pressed::return#12
// if(keyboard_key_pressed(KEY_D)!=0)
// [107] if((byte~) menu::$69==(byte) 0) goto menu::@16 -- vbuaa_eq_0_then_la1
cmp #0
beq b16
// [108] phi from menu::@41 to menu::@27 [phi:menu::@41->menu::@27]
// menu::@27
// mode_8bpppixelcell()
// [109] call mode_8bpppixelcell
jsr mode_8bpppixelcell
rts
// [110] phi from menu::@41 to menu::@16 [phi:menu::@41->menu::@16]
// menu::@16
b16:
// keyboard_key_pressed(KEY_E)
// [111] call keyboard_key_pressed
// [211] phi from menu::@16 to keyboard_key_pressed [phi:menu::@16->keyboard_key_pressed]
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_E#0 [phi:menu::@16->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_E
jsr keyboard_key_pressed
// keyboard_key_pressed(KEY_E)
// [112] (byte) keyboard_key_pressed::return#13 ← (byte) keyboard_key_pressed::return#0
// menu::@42
// [113] (byte~) menu::$73 ← (byte) keyboard_key_pressed::return#13
// if(keyboard_key_pressed(KEY_E)!=0)
// [114] if((byte~) menu::$73==(byte) 0) goto menu::@5 -- vbuaa_eq_0_then_la1
cmp #0
bne !b5+
jmp b5
!b5:
// [115] phi from menu::@42 to menu::@28 [phi:menu::@42->menu::@28]
// menu::@28
// mode_8bppchunkybmm()
// [116] call mode_8bppchunkybmm
jsr mode_8bppchunkybmm
rts
// menu::@3
b3:
// *c=LIGHT_GREEN
// [117] *((byte*) menu::c#2) ← (const byte) LIGHT_GREEN#0 -- _deref_pbuz1=vbuc1
lda #LIGHT_GREEN
ldy #0
sta (c),y
// for(byte* c=COLS;c!=COLS+1000;c++)
// [118] (byte*) menu::c#1 ← ++ (byte*) menu::c#2 -- pbuz1=_inc_pbuz1
inc.z c
bne !+
inc.z c+1
!:
// [23] phi from menu::@3 to menu::@2 [phi:menu::@3->menu::@2]
// [23] phi (byte*) menu::c#2 = (byte*) menu::c#1 [phi:menu::@3->menu::@2#0] -- register_copy
jmp b2
}
// mode_8bppchunkybmm
//Chunky 8bpp Bitmap Mode (BMM = 0, ECM/MCM/HICOL/LINEAR/CHUNK/COLDIS = 1)
// Resolution: 320x200
// Linear Adressing
// CharData/PlaneB Pixel Shifter (8):
// - 8bpp color PlaneB[7:0]
// To set up a linear video frame buffer the step size must be set to 8.
mode_8bppchunkybmm: {
// 8BPP Chunky Bitmap (contains 8bpp pixels)
.const PLANEB = $20000
.label _26 = 9
.label gfxb = $b
.label x = 4
.label y = $d
// *DTV_CONTROL = DTV_HIGHCOLOR | DTV_LINEAR | DTV_CHUNKY | DTV_COLORRAM_OFF
// [119] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0 -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY|DTV_COLORRAM_OFF
sta DTV_CONTROL
// *VIC_CONTROL = VIC_ECM | VIC_DEN | VIC_RSEL | 3
// [120] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Mode
lda #VIC_ECM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// *VIC_CONTROL2 = VIC_MCM | VIC_CSEL
// [121] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_MCM|VIC_CSEL
sta VIC_CONTROL2
// *DTV_PLANEB_START_LO = < < PLANEB
// [122] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
lda #0
sta DTV_PLANEB_START_LO
// *DTV_PLANEB_START_MI = > < PLANEB
// [123] *((const byte*) DTV_PLANEB_START_MI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_PLANEB_START_MI
// *DTV_PLANEB_START_HI = < > PLANEB
// [124] *((const byte*) DTV_PLANEB_START_HI#0) ← <>(const dword) mode_8bppchunkybmm::PLANEB#0 -- _deref_pbuc1=vbuc2
lda #<PLANEB>>$10
sta DTV_PLANEB_START_HI
// *DTV_PLANEB_STEP = 8
// [125] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 8 -- _deref_pbuc1=vbuc2
lda #8
sta DTV_PLANEB_STEP
// *DTV_PLANEB_MODULO_LO = 0
// [126] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// *DTV_PLANEB_MODULO_HI = 0
// [127] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_PLANEB_MODULO_HI
// *BORDERCOL = $00
// [128] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Border color
sta BORDERCOL
// [129] phi from mode_8bppchunkybmm to mode_8bppchunkybmm::@1 [phi:mode_8bppchunkybmm->mode_8bppchunkybmm::@1]
// [129] phi (byte) mode_8bppchunkybmm::i#2 = (byte) 0 [phi:mode_8bppchunkybmm->mode_8bppchunkybmm::@1#0] -- vbuxx=vbuc1
tax
// DTV Palette - Grey Tones
// [129] phi from mode_8bppchunkybmm::@1 to mode_8bppchunkybmm::@1 [phi:mode_8bppchunkybmm::@1->mode_8bppchunkybmm::@1]
// [129] phi (byte) mode_8bppchunkybmm::i#2 = (byte) mode_8bppchunkybmm::i#1 [phi:mode_8bppchunkybmm::@1->mode_8bppchunkybmm::@1#0] -- register_copy
// mode_8bppchunkybmm::@1
b1:
// DTV_PALETTE[i] = i
// [130] *((const byte*) DTV_PALETTE#0 + (byte) mode_8bppchunkybmm::i#2) ← (byte) mode_8bppchunkybmm::i#2 -- pbuc1_derefidx_vbuxx=vbuxx
txa
sta DTV_PALETTE,x
// for(byte i : 0..$f)
// [131] (byte) mode_8bppchunkybmm::i#1 ← ++ (byte) mode_8bppchunkybmm::i#2 -- vbuxx=_inc_vbuxx
inx
// [132] if((byte) mode_8bppchunkybmm::i#1!=(byte) $10) goto mode_8bppchunkybmm::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1
// [133] phi from mode_8bppchunkybmm::@1 to mode_8bppchunkybmm::@2 [phi:mode_8bppchunkybmm::@1->mode_8bppchunkybmm::@2]
// mode_8bppchunkybmm::@2
// dtvSetCpuBankSegment1(gfxbCpuBank++)
// [134] call dtvSetCpuBankSegment1
// [223] phi from mode_8bppchunkybmm::@2 to dtvSetCpuBankSegment1 [phi:mode_8bppchunkybmm::@2->dtvSetCpuBankSegment1]
// [223] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = (byte)(const dword) mode_8bppchunkybmm::PLANEB#0/(word) $4000 [phi:mode_8bppchunkybmm::@2->dtvSetCpuBankSegment1#0] -- vbuaa=vbuc1
lda #PLANEB/$4000
jsr dtvSetCpuBankSegment1
// [135] phi from mode_8bppchunkybmm::@2 to mode_8bppchunkybmm::@3 [phi:mode_8bppchunkybmm::@2->mode_8bppchunkybmm::@3]
// [135] phi (byte) mode_8bppchunkybmm::gfxbCpuBank#7 = ++(byte)(const dword) mode_8bppchunkybmm::PLANEB#0/(word) $4000 [phi:mode_8bppchunkybmm::@2->mode_8bppchunkybmm::@3#0] -- vbuxx=vbuc1
ldx #PLANEB/$4000+1
// [135] phi (byte) mode_8bppchunkybmm::y#6 = (byte) 0 [phi:mode_8bppchunkybmm::@2->mode_8bppchunkybmm::@3#1] -- vbuz1=vbuc1
lda #0
sta.z y
// [135] phi (byte*) mode_8bppchunkybmm::gfxb#5 = (byte*) 16384 [phi:mode_8bppchunkybmm::@2->mode_8bppchunkybmm::@3#2] -- pbuz1=pbuc1
lda #<$4000
sta.z gfxb
lda #>$4000
sta.z gfxb+1
// [135] phi from mode_8bppchunkybmm::@7 to mode_8bppchunkybmm::@3 [phi:mode_8bppchunkybmm::@7->mode_8bppchunkybmm::@3]
// [135] phi (byte) mode_8bppchunkybmm::gfxbCpuBank#7 = (byte) mode_8bppchunkybmm::gfxbCpuBank#8 [phi:mode_8bppchunkybmm::@7->mode_8bppchunkybmm::@3#0] -- register_copy
// [135] phi (byte) mode_8bppchunkybmm::y#6 = (byte) mode_8bppchunkybmm::y#1 [phi:mode_8bppchunkybmm::@7->mode_8bppchunkybmm::@3#1] -- register_copy
// [135] phi (byte*) mode_8bppchunkybmm::gfxb#5 = (byte*) mode_8bppchunkybmm::gfxb#1 [phi:mode_8bppchunkybmm::@7->mode_8bppchunkybmm::@3#2] -- register_copy
// mode_8bppchunkybmm::@3
b3:
// [136] phi from mode_8bppchunkybmm::@3 to mode_8bppchunkybmm::@4 [phi:mode_8bppchunkybmm::@3->mode_8bppchunkybmm::@4]
// [136] phi (byte) mode_8bppchunkybmm::gfxbCpuBank#4 = (byte) mode_8bppchunkybmm::gfxbCpuBank#7 [phi:mode_8bppchunkybmm::@3->mode_8bppchunkybmm::@4#0] -- register_copy
// [136] phi (word) mode_8bppchunkybmm::x#2 = (word) 0 [phi:mode_8bppchunkybmm::@3->mode_8bppchunkybmm::@4#1] -- vwuz1=vwuc1
lda #<0
sta.z x
sta.z x+1
// [136] phi (byte*) mode_8bppchunkybmm::gfxb#3 = (byte*) mode_8bppchunkybmm::gfxb#5 [phi:mode_8bppchunkybmm::@3->mode_8bppchunkybmm::@4#2] -- register_copy
// [136] phi from mode_8bppchunkybmm::@5 to mode_8bppchunkybmm::@4 [phi:mode_8bppchunkybmm::@5->mode_8bppchunkybmm::@4]
// [136] phi (byte) mode_8bppchunkybmm::gfxbCpuBank#4 = (byte) mode_8bppchunkybmm::gfxbCpuBank#8 [phi:mode_8bppchunkybmm::@5->mode_8bppchunkybmm::@4#0] -- register_copy
// [136] phi (word) mode_8bppchunkybmm::x#2 = (word) mode_8bppchunkybmm::x#1 [phi:mode_8bppchunkybmm::@5->mode_8bppchunkybmm::@4#1] -- register_copy
// [136] phi (byte*) mode_8bppchunkybmm::gfxb#3 = (byte*) mode_8bppchunkybmm::gfxb#1 [phi:mode_8bppchunkybmm::@5->mode_8bppchunkybmm::@4#2] -- register_copy
// mode_8bppchunkybmm::@4
b4:
// if(gfxb==$8000)
// [137] if((byte*) mode_8bppchunkybmm::gfxb#3!=(word) $8000) goto mode_8bppchunkybmm::@5 -- pbuz1_neq_vwuc1_then_la1
lda.z gfxb+1
cmp #>$8000
bne b5
lda.z gfxb
cmp #<$8000
bne b5
// mode_8bppchunkybmm::@6
// dtvSetCpuBankSegment1(gfxbCpuBank++)
// [138] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ← (byte) mode_8bppchunkybmm::gfxbCpuBank#4 -- vbuaa=vbuxx
txa
// [139] call dtvSetCpuBankSegment1
// [223] phi from mode_8bppchunkybmm::@6 to dtvSetCpuBankSegment1 [phi:mode_8bppchunkybmm::@6->dtvSetCpuBankSegment1]
// [223] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 [phi:mode_8bppchunkybmm::@6->dtvSetCpuBankSegment1#0] -- register_copy
jsr dtvSetCpuBankSegment1
// mode_8bppchunkybmm::@9
// dtvSetCpuBankSegment1(gfxbCpuBank++);
// [140] (byte) mode_8bppchunkybmm::gfxbCpuBank#2 ← ++ (byte) mode_8bppchunkybmm::gfxbCpuBank#4 -- vbuxx=_inc_vbuxx
inx
// [141] phi from mode_8bppchunkybmm::@9 to mode_8bppchunkybmm::@5 [phi:mode_8bppchunkybmm::@9->mode_8bppchunkybmm::@5]
// [141] phi (byte) mode_8bppchunkybmm::gfxbCpuBank#8 = (byte) mode_8bppchunkybmm::gfxbCpuBank#2 [phi:mode_8bppchunkybmm::@9->mode_8bppchunkybmm::@5#0] -- register_copy
// [141] phi (byte*) mode_8bppchunkybmm::gfxb#4 = (byte*) 16384 [phi:mode_8bppchunkybmm::@9->mode_8bppchunkybmm::@5#1] -- pbuz1=pbuc1
lda #<$4000
sta.z gfxb
lda #>$4000
sta.z gfxb+1
// [141] phi from mode_8bppchunkybmm::@4 to mode_8bppchunkybmm::@5 [phi:mode_8bppchunkybmm::@4->mode_8bppchunkybmm::@5]
// [141] phi (byte) mode_8bppchunkybmm::gfxbCpuBank#8 = (byte) mode_8bppchunkybmm::gfxbCpuBank#4 [phi:mode_8bppchunkybmm::@4->mode_8bppchunkybmm::@5#0] -- register_copy
// [141] phi (byte*) mode_8bppchunkybmm::gfxb#4 = (byte*) mode_8bppchunkybmm::gfxb#3 [phi:mode_8bppchunkybmm::@4->mode_8bppchunkybmm::@5#1] -- register_copy
// mode_8bppchunkybmm::@5
b5:
// x+y
// [142] (word~) mode_8bppchunkybmm::$26 ← (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#6 -- vwuz1=vwuz2_plus_vbuz3
lda.z y
clc
adc.z x
sta.z _26
lda #0
adc.z x+1
sta.z _26+1
// c = (byte)(x+y)
// [143] (byte) mode_8bppchunkybmm::c#0 ← (byte)(word~) mode_8bppchunkybmm::$26 -- vbuaa=_byte_vwuz1
lda.z _26
// *gfxb++ = c
// [144] *((byte*) mode_8bppchunkybmm::gfxb#4) ← (byte) mode_8bppchunkybmm::c#0 -- _deref_pbuz1=vbuaa
ldy #0
sta (gfxb),y
// *gfxb++ = c;
// [145] (byte*) mode_8bppchunkybmm::gfxb#1 ← ++ (byte*) mode_8bppchunkybmm::gfxb#4 -- pbuz1=_inc_pbuz1
inc.z gfxb
bne !+
inc.z gfxb+1
!:
// for (word x : 0..319)
// [146] (word) mode_8bppchunkybmm::x#1 ← ++ (word) mode_8bppchunkybmm::x#2 -- vwuz1=_inc_vwuz1
inc.z x
bne !+
inc.z x+1
!:
// [147] if((word) mode_8bppchunkybmm::x#1!=(word) $140) goto mode_8bppchunkybmm::@4 -- vwuz1_neq_vwuc1_then_la1
lda.z x+1
cmp #>$140
bne b4
lda.z x
cmp #<$140
bne b4
// mode_8bppchunkybmm::@7
// for(byte y : 0..199)
// [148] (byte) mode_8bppchunkybmm::y#1 ← ++ (byte) mode_8bppchunkybmm::y#6 -- vbuz1=_inc_vbuz1
inc.z y
// [149] if((byte) mode_8bppchunkybmm::y#1!=(byte) $c8) goto mode_8bppchunkybmm::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$c8
cmp.z y
bne b3
// [150] phi from mode_8bppchunkybmm::@7 to mode_8bppchunkybmm::@8 [phi:mode_8bppchunkybmm::@7->mode_8bppchunkybmm::@8]
// mode_8bppchunkybmm::@8
// dtvSetCpuBankSegment1((byte)($4000/$4000))
// [151] call dtvSetCpuBankSegment1
// [223] phi from mode_8bppchunkybmm::@8 to dtvSetCpuBankSegment1 [phi:mode_8bppchunkybmm::@8->dtvSetCpuBankSegment1]
// [223] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = (byte)(number) $4000/(number) $4000 [phi:mode_8bppchunkybmm::@8->dtvSetCpuBankSegment1#0] -- vbuaa=vbuc1
lda #$4000/$4000
jsr dtvSetCpuBankSegment1
// [152] phi from mode_8bppchunkybmm::@8 to mode_8bppchunkybmm::@10 [phi:mode_8bppchunkybmm::@8->mode_8bppchunkybmm::@10]
// mode_8bppchunkybmm::@10
// mode_ctrl()
// [153] call mode_ctrl
// [155] phi from mode_8bppchunkybmm::@10 to mode_ctrl [phi:mode_8bppchunkybmm::@10->mode_ctrl]
// [155] phi (byte) dtv_control#144 = (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0 [phi:mode_8bppchunkybmm::@10->mode_ctrl#0] -- vbuz1=vbuc1
lda #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY|DTV_COLORRAM_OFF
sta.z dtv_control
jsr mode_ctrl
// mode_8bppchunkybmm::@return
// }
// [154] return
rts
}
// mode_ctrl
// Allow the user to control the DTV graphics using different keys
mode_ctrl: {
// [156] phi from mode_ctrl mode_ctrl::@11 mode_ctrl::@18 to mode_ctrl::@1 [phi:mode_ctrl/mode_ctrl::@11/mode_ctrl::@18->mode_ctrl::@1]
// [156] phi (byte) dtv_control#114 = (byte) dtv_control#144 [phi:mode_ctrl/mode_ctrl::@11/mode_ctrl::@18->mode_ctrl::@1#0] -- register_copy
// mode_ctrl::@1
b1:
// Wait for the raster
// mode_ctrl::@2
b2:
// while(*RASTER!=$ff)
// [157] if(*((const byte*) RASTER#0)!=(byte) $ff) goto mode_ctrl::@2 -- _deref_pbuc1_neq_vbuc2_then_la1
lda #$ff
cmp RASTER
bne b2
// [158] phi from mode_ctrl::@2 to mode_ctrl::@3 [phi:mode_ctrl::@2->mode_ctrl::@3]
// mode_ctrl::@3
// keyboard_key_pressed(KEY_SPACE)
// [159] call keyboard_key_pressed
// [211] phi from mode_ctrl::@3 to keyboard_key_pressed [phi:mode_ctrl::@3->keyboard_key_pressed]
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_SPACE#0 [phi:mode_ctrl::@3->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_SPACE
jsr keyboard_key_pressed
// keyboard_key_pressed(KEY_SPACE)
// [160] (byte) keyboard_key_pressed::return#14 ← (byte) keyboard_key_pressed::return#0
// mode_ctrl::@19
// [161] (byte~) mode_ctrl::$1 ← (byte) keyboard_key_pressed::return#14
// if(keyboard_key_pressed(KEY_SPACE)!=0)
// [162] if((byte~) mode_ctrl::$1==(byte) 0) goto mode_ctrl::@4 -- vbuaa_eq_0_then_la1
cmp #0
beq b4
// mode_ctrl::@return
// }
// [163] return
rts
// mode_ctrl::@4
b4:
// ctrl = dtv_control
// [164] (byte) mode_ctrl::ctrl#0 ← (byte) dtv_control#114 -- vbuxx=vbuz1
// Read the current control byte
ldx.z dtv_control
// keyboard_key_pressed(KEY_L)
// [165] call keyboard_key_pressed
// [211] phi from mode_ctrl::@4 to keyboard_key_pressed [phi:mode_ctrl::@4->keyboard_key_pressed]
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_L#0 [phi:mode_ctrl::@4->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_L
jsr keyboard_key_pressed
// keyboard_key_pressed(KEY_L)
// [166] (byte) keyboard_key_pressed::return#15 ← (byte) keyboard_key_pressed::return#0
// mode_ctrl::@20
// [167] (byte~) mode_ctrl::$4 ← (byte) keyboard_key_pressed::return#15
// if(keyboard_key_pressed(KEY_L)!=0)
// [168] if((byte~) mode_ctrl::$4==(byte) 0) goto mode_ctrl::@5 -- vbuaa_eq_0_then_la1
cmp #0
beq b5
// mode_ctrl::@12
// ctrl = ctrl|DTV_LINEAR
// [169] (byte) mode_ctrl::ctrl#1 ← (byte) mode_ctrl::ctrl#0 | (const byte) DTV_LINEAR#0 -- vbuxx=vbuxx_bor_vbuc1
txa
ora #DTV_LINEAR
tax
// [170] phi from mode_ctrl::@12 mode_ctrl::@20 to mode_ctrl::@5 [phi:mode_ctrl::@12/mode_ctrl::@20->mode_ctrl::@5]
// [170] phi (byte) mode_ctrl::ctrl#17 = (byte) mode_ctrl::ctrl#1 [phi:mode_ctrl::@12/mode_ctrl::@20->mode_ctrl::@5#0] -- register_copy
// mode_ctrl::@5
b5:
// keyboard_key_pressed(KEY_H)
// [171] call keyboard_key_pressed
// [211] phi from mode_ctrl::@5 to keyboard_key_pressed [phi:mode_ctrl::@5->keyboard_key_pressed]
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_H#0 [phi:mode_ctrl::@5->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_H
jsr keyboard_key_pressed
// keyboard_key_pressed(KEY_H)
// [172] (byte) keyboard_key_pressed::return#16 ← (byte) keyboard_key_pressed::return#0
// mode_ctrl::@21
// [173] (byte~) mode_ctrl::$8 ← (byte) keyboard_key_pressed::return#16
// if(keyboard_key_pressed(KEY_H)!=0)
// [174] if((byte~) mode_ctrl::$8==(byte) 0) goto mode_ctrl::@6 -- vbuaa_eq_0_then_la1
cmp #0
beq b6
// mode_ctrl::@13
// ctrl = ctrl|DTV_HIGHCOLOR
// [175] (byte) mode_ctrl::ctrl#2 ← (byte) mode_ctrl::ctrl#17 | (const byte) DTV_HIGHCOLOR#0 -- vbuxx=vbuxx_bor_vbuc1
txa
ora #DTV_HIGHCOLOR
tax
// [176] phi from mode_ctrl::@13 mode_ctrl::@21 to mode_ctrl::@6 [phi:mode_ctrl::@13/mode_ctrl::@21->mode_ctrl::@6]
// [176] phi (byte) mode_ctrl::ctrl#10 = (byte) mode_ctrl::ctrl#2 [phi:mode_ctrl::@13/mode_ctrl::@21->mode_ctrl::@6#0] -- register_copy
// mode_ctrl::@6
b6:
// keyboard_key_pressed(KEY_O)
// [177] call keyboard_key_pressed
// [211] phi from mode_ctrl::@6 to keyboard_key_pressed [phi:mode_ctrl::@6->keyboard_key_pressed]
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_O#0 [phi:mode_ctrl::@6->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_O
jsr keyboard_key_pressed
// keyboard_key_pressed(KEY_O)
// [178] (byte) keyboard_key_pressed::return#17 ← (byte) keyboard_key_pressed::return#0
// mode_ctrl::@22
// [179] (byte~) mode_ctrl::$12 ← (byte) keyboard_key_pressed::return#17
// if(keyboard_key_pressed(KEY_O)!=0)
// [180] if((byte~) mode_ctrl::$12==(byte) 0) goto mode_ctrl::@7 -- vbuaa_eq_0_then_la1
cmp #0
beq b7
// mode_ctrl::@14
// ctrl = ctrl|DTV_OVERSCAN
// [181] (byte) mode_ctrl::ctrl#3 ← (byte) mode_ctrl::ctrl#10 | (const byte) DTV_OVERSCAN#0 -- vbuxx=vbuxx_bor_vbuc1
txa
ora #DTV_OVERSCAN
tax
// [182] phi from mode_ctrl::@14 mode_ctrl::@22 to mode_ctrl::@7 [phi:mode_ctrl::@14/mode_ctrl::@22->mode_ctrl::@7]
// [182] phi (byte) mode_ctrl::ctrl#11 = (byte) mode_ctrl::ctrl#3 [phi:mode_ctrl::@14/mode_ctrl::@22->mode_ctrl::@7#0] -- register_copy
// mode_ctrl::@7
b7:
// keyboard_key_pressed(KEY_B)
// [183] call keyboard_key_pressed
// [211] phi from mode_ctrl::@7 to keyboard_key_pressed [phi:mode_ctrl::@7->keyboard_key_pressed]
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_B#0 [phi:mode_ctrl::@7->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_B
jsr keyboard_key_pressed
// keyboard_key_pressed(KEY_B)
// [184] (byte) keyboard_key_pressed::return#18 ← (byte) keyboard_key_pressed::return#0
// mode_ctrl::@23
// [185] (byte~) mode_ctrl::$16 ← (byte) keyboard_key_pressed::return#18
// if(keyboard_key_pressed(KEY_B)!=0)
// [186] if((byte~) mode_ctrl::$16==(byte) 0) goto mode_ctrl::@8 -- vbuaa_eq_0_then_la1
cmp #0
beq b8
// mode_ctrl::@15
// ctrl = ctrl|DTV_BORDER_OFF
// [187] (byte) mode_ctrl::ctrl#4 ← (byte) mode_ctrl::ctrl#11 | (const byte) DTV_BORDER_OFF#0 -- vbuxx=vbuxx_bor_vbuc1
txa
ora #DTV_BORDER_OFF
tax
// [188] phi from mode_ctrl::@15 mode_ctrl::@23 to mode_ctrl::@8 [phi:mode_ctrl::@15/mode_ctrl::@23->mode_ctrl::@8]
// [188] phi (byte) mode_ctrl::ctrl#12 = (byte) mode_ctrl::ctrl#4 [phi:mode_ctrl::@15/mode_ctrl::@23->mode_ctrl::@8#0] -- register_copy
// mode_ctrl::@8
b8:
// keyboard_key_pressed(KEY_U)
// [189] call keyboard_key_pressed
// [211] phi from mode_ctrl::@8 to keyboard_key_pressed [phi:mode_ctrl::@8->keyboard_key_pressed]
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_U#0 [phi:mode_ctrl::@8->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_U
jsr keyboard_key_pressed
// keyboard_key_pressed(KEY_U)
// [190] (byte) keyboard_key_pressed::return#19 ← (byte) keyboard_key_pressed::return#0
// mode_ctrl::@24
// [191] (byte~) mode_ctrl::$20 ← (byte) keyboard_key_pressed::return#19
// if(keyboard_key_pressed(KEY_U)!=0)
// [192] if((byte~) mode_ctrl::$20==(byte) 0) goto mode_ctrl::@9 -- vbuaa_eq_0_then_la1
cmp #0
beq b9
// mode_ctrl::@16
// ctrl = ctrl|DTV_CHUNKY
// [193] (byte) mode_ctrl::ctrl#5 ← (byte) mode_ctrl::ctrl#12 | (const byte) DTV_CHUNKY#0 -- vbuxx=vbuxx_bor_vbuc1
txa
ora #DTV_CHUNKY
tax
// [194] phi from mode_ctrl::@16 mode_ctrl::@24 to mode_ctrl::@9 [phi:mode_ctrl::@16/mode_ctrl::@24->mode_ctrl::@9]
// [194] phi (byte) mode_ctrl::ctrl#13 = (byte) mode_ctrl::ctrl#5 [phi:mode_ctrl::@16/mode_ctrl::@24->mode_ctrl::@9#0] -- register_copy
// mode_ctrl::@9
b9:
// keyboard_key_pressed(KEY_C)
// [195] call keyboard_key_pressed
// [211] phi from mode_ctrl::@9 to keyboard_key_pressed [phi:mode_ctrl::@9->keyboard_key_pressed]
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_C#0 [phi:mode_ctrl::@9->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_C
jsr keyboard_key_pressed
// keyboard_key_pressed(KEY_C)
// [196] (byte) keyboard_key_pressed::return#20 ← (byte) keyboard_key_pressed::return#0
// mode_ctrl::@25
// [197] (byte~) mode_ctrl::$24 ← (byte) keyboard_key_pressed::return#20
// if(keyboard_key_pressed(KEY_C)!=0)
// [198] if((byte~) mode_ctrl::$24==(byte) 0) goto mode_ctrl::@10 -- vbuaa_eq_0_then_la1
cmp #0
beq b10
// mode_ctrl::@17
// ctrl = ctrl|DTV_COLORRAM_OFF
// [199] (byte) mode_ctrl::ctrl#6 ← (byte) mode_ctrl::ctrl#13 | (const byte) DTV_COLORRAM_OFF#0 -- vbuxx=vbuxx_bor_vbuc1
txa
ora #DTV_COLORRAM_OFF
tax
// [200] phi from mode_ctrl::@17 mode_ctrl::@25 to mode_ctrl::@10 [phi:mode_ctrl::@17/mode_ctrl::@25->mode_ctrl::@10]
// [200] phi (byte) mode_ctrl::ctrl#22 = (byte) mode_ctrl::ctrl#6 [phi:mode_ctrl::@17/mode_ctrl::@25->mode_ctrl::@10#0] -- register_copy
// mode_ctrl::@10
b10:
// keyboard_key_pressed(KEY_0)
// [201] call keyboard_key_pressed
// [211] phi from mode_ctrl::@10 to keyboard_key_pressed [phi:mode_ctrl::@10->keyboard_key_pressed]
// [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_0#0 [phi:mode_ctrl::@10->keyboard_key_pressed#0] -- vbuyy=vbuc1
ldy #KEY_0
jsr keyboard_key_pressed
// keyboard_key_pressed(KEY_0)
// [202] (byte) keyboard_key_pressed::return#21 ← (byte) keyboard_key_pressed::return#0
// mode_ctrl::@26
// [203] (byte~) mode_ctrl::$28 ← (byte) keyboard_key_pressed::return#21
// if(keyboard_key_pressed(KEY_0)!=0)
// [204] if((byte~) mode_ctrl::$28==(byte) 0) goto mode_ctrl::@27 -- vbuaa_eq_0_then_la1
cmp #0
beq b11
// [206] phi from mode_ctrl::@26 to mode_ctrl::@11 [phi:mode_ctrl::@26->mode_ctrl::@11]
// [206] phi (byte) mode_ctrl::ctrl#14 = (byte) 0 [phi:mode_ctrl::@26->mode_ctrl::@11#0] -- vbuxx=vbuc1
ldx #0
// [205] phi from mode_ctrl::@26 to mode_ctrl::@27 [phi:mode_ctrl::@26->mode_ctrl::@27]
// mode_ctrl::@27
// [206] phi from mode_ctrl::@27 to mode_ctrl::@11 [phi:mode_ctrl::@27->mode_ctrl::@11]
// [206] phi (byte) mode_ctrl::ctrl#14 = (byte) mode_ctrl::ctrl#22 [phi:mode_ctrl::@27->mode_ctrl::@11#0] -- register_copy
// mode_ctrl::@11
b11:
// if(ctrl != dtv_control)
// [207] if((byte) mode_ctrl::ctrl#14==(byte) dtv_control#114) goto mode_ctrl::@1 -- vbuxx_eq_vbuz1_then_la1
cpx.z dtv_control
beq b1
// mode_ctrl::@18
// dtv_control = ctrl
// [208] (byte) dtv_control#17 ← (byte) mode_ctrl::ctrl#14 -- vbuz1=vbuxx
stx.z dtv_control
// *DTV_CONTROL = ctrl
// [209] *((const byte*) DTV_CONTROL#0) ← (byte) mode_ctrl::ctrl#14 -- _deref_pbuc1=vbuxx
stx DTV_CONTROL
// *BORDERCOL = ctrl
// [210] *((const byte*) BORDERCOL#0) ← (byte) mode_ctrl::ctrl#14 -- _deref_pbuc1=vbuxx
stx BORDERCOL
jmp b1
}
// keyboard_key_pressed
// Determines whether a specific key is currently pressed by accessing the matrix directly
// The key is a keyboard code defined from the keyboard matrix by %00rrrccc, where rrr is the row ID (0-7) and ccc is the column ID (0-7)
// All keys exist as as KEY_XXX constants.
// Returns zero if the key is not pressed and a non-zero value if the key is currently pressed
// keyboard_key_pressed(byte register(Y) key)
keyboard_key_pressed: {
.label colidx = 6
// colidx = key&7
// [212] (byte) keyboard_key_pressed::colidx#0 ← (byte) keyboard_key_pressed::key#20 & (byte) 7 -- vbuz1=vbuyy_band_vbuc1
tya
and #7
sta.z colidx
// rowidx = key>>3
// [213] (byte) keyboard_key_pressed::rowidx#0 ← (byte) keyboard_key_pressed::key#20 >> (byte) 3 -- vbuaa=vbuyy_ror_3
tya
lsr
lsr
lsr
// keyboard_matrix_read(rowidx)
// [214] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_key_pressed::rowidx#0 -- vbuyy=vbuaa
tay
// [215] call keyboard_matrix_read
jsr keyboard_matrix_read
// [216] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0
// keyboard_key_pressed::@1
// [217] (byte~) keyboard_key_pressed::$2 ← (byte) keyboard_matrix_read::return#2
// keyboard_matrix_read(rowidx) & keyboard_matrix_col_bitmask[colidx]
// [218] (byte) keyboard_key_pressed::return#0 ← (byte~) keyboard_key_pressed::$2 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#0) -- vbuaa=vbuaa_band_pbuc1_derefidx_vbuz1
ldy.z colidx
and keyboard_matrix_col_bitmask,y
// keyboard_key_pressed::@return
// }
// [219] return
rts
}
// keyboard_matrix_read
// Read a single row of the keyboard matrix
// The row ID (0-7) of the keyboard matrix row to read. See the C64 key matrix for row IDs.
// Returns the keys pressed on the row as bits according to the C64 key matrix.
// Notice: If the C64 normal interrupt is still running it will occasionally interrupt right between the read & write
// leading to erroneous readings. You must disable kill the normal interrupt or sei/cli around calls to the keyboard matrix reader.
// keyboard_matrix_read(byte register(Y) rowid)
keyboard_matrix_read: {
// *CIA1_PORT_A = keyboard_matrix_row_bitmask[rowid]
// [220] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuyy
lda keyboard_matrix_row_bitmask,y
sta CIA1_PORT_A
// ~*CIA1_PORT_B
// [221] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) -- vbuaa=_bnot__deref_pbuc1
lda CIA1_PORT_B
eor #$ff
// keyboard_matrix_read::@return
// }
// [222] return
rts
}
// dtvSetCpuBankSegment1
// Set the memory pointed to by CPU BANK 1 SEGMENT ($4000-$7fff)
// This sets which actual memory is addressed when the CPU reads/writes to $4000-$7fff
// The actual memory addressed will be $4000*cpuSegmentIdx
// dtvSetCpuBankSegment1(byte register(A) cpuBankIdx)
dtvSetCpuBankSegment1: {
// Move CPU BANK 1 SEGMENT ($4000-$7fff)
.label cpuBank = $ff
// *cpuBank = cpuBankIdx
// [224] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ← (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 -- _deref_pbuc1=vbuaa
sta cpuBank
// asm
// asm { .byte$32,$dd lda$ff .byte$32,$00 }
.byte $32, $dd
lda.z $ff
.byte $32, $00
// dtvSetCpuBankSegment1::@return
// }
// [226] return
rts
}
// mode_8bpppixelcell
//8bpp Pixel Cell Mode (BMM/COLDIS = 0, ECM/MCM/HICOL/LINEAR/CHUNK = 1)
//Pixel Cell Adressing
//CharData[8]: (PlaneA[21:0])
//GfxData[8]: (PlaneB[21:14] & CharData[7:0] & RowCounter[3:0] & PixelCounter[7:0] )
//GfxData Pixel Shifter (8):
//- 8bpp color GfxData[7:0]
//Pixel cell mode can be thought of as a text mode that uses a 8x8 pixel 8bpp font (64 bytes/char).
//The characters come from counter A and the font (or "cells") from counter B.
//Counter B step and modulo should be set to 0, counter A modulo to 0 and counter A step to 1 for normal operation.
mode_8bpppixelcell: {
// 8BPP Pixel Cell Screen (contains 40x25=1000 chars)
.label PLANEA = $3c00
// 8BPP Pixel Cell Charset (contains 256 64 byte chars)
.label PLANEB = $4000
.label CHARGEN = $d000
.label _15 = $e
.label gfxa = $b
.label ay = $d
.label bits = 6
.label chargen = 4
.label gfxb = 9
.label col = 7
.label cr = 3
.label ch = 2
// *DTV_CONTROL = DTV_HIGHCOLOR | DTV_LINEAR | DTV_CHUNKY
// [227] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0 -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY
sta DTV_CONTROL
// *VIC_CONTROL = VIC_ECM|VIC_DEN|VIC_RSEL|3
// [228] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Mode
lda #VIC_ECM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// *VIC_CONTROL2 = VIC_MCM|VIC_CSEL
// [229] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_MCM|VIC_CSEL
sta VIC_CONTROL2
// *DTV_PLANEA_START_LO = <PLANEA
// [230] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane A Counter
lda #0
sta DTV_PLANEA_START_LO
// *DTV_PLANEA_START_MI = >PLANEA
// [231] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_8bpppixelcell::PLANEA#0 -- _deref_pbuc1=vbuc2
lda #>PLANEA
sta DTV_PLANEA_START_MI
// *DTV_PLANEA_START_HI = 0
// [232] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_START_HI
// *DTV_PLANEA_STEP = 1
// [233] *((const byte*) DTV_PLANEA_STEP#0) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEA_STEP
// *DTV_PLANEA_MODULO_LO = 0
// [234] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_LO
// *DTV_PLANEA_MODULO_HI = 0
// [235] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_PLANEA_MODULO_HI
// *DTV_PLANEB_START_LO = <PLANEB
// [236] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
sta DTV_PLANEB_START_LO
// *DTV_PLANEB_START_MI = >PLANEB
// [237] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_8bpppixelcell::PLANEB#0 -- _deref_pbuc1=vbuc2
lda #>PLANEB
sta DTV_PLANEB_START_MI
// *DTV_PLANEB_START_HI = 0
// [238] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_HI
// *DTV_PLANEB_STEP = 0
// [239] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_PLANEB_STEP
// *DTV_PLANEB_MODULO_LO = 0
// [240] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_PLANEB_MODULO_LO
// *DTV_PLANEB_MODULO_HI = 0
// [241] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_PLANEB_MODULO_HI
// *BORDERCOL = $00
// [242] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Border color
sta BORDERCOL
// [243] phi from mode_8bpppixelcell to mode_8bpppixelcell::@1 [phi:mode_8bpppixelcell->mode_8bpppixelcell::@1]
// [243] phi (byte) mode_8bpppixelcell::i#2 = (byte) 0 [phi:mode_8bpppixelcell->mode_8bpppixelcell::@1#0] -- vbuxx=vbuc1
tax
// DTV Palette - Grey Tones
// [243] phi from mode_8bpppixelcell::@1 to mode_8bpppixelcell::@1 [phi:mode_8bpppixelcell::@1->mode_8bpppixelcell::@1]
// [243] phi (byte) mode_8bpppixelcell::i#2 = (byte) mode_8bpppixelcell::i#1 [phi:mode_8bpppixelcell::@1->mode_8bpppixelcell::@1#0] -- register_copy
// mode_8bpppixelcell::@1
b1:
// DTV_PALETTE[i] = i
// [244] *((const byte*) DTV_PALETTE#0 + (byte) mode_8bpppixelcell::i#2) ← (byte) mode_8bpppixelcell::i#2 -- pbuc1_derefidx_vbuxx=vbuxx
txa
sta DTV_PALETTE,x
// for(byte i : 0..$f)
// [245] (byte) mode_8bpppixelcell::i#1 ← ++ (byte) mode_8bpppixelcell::i#2 -- vbuxx=_inc_vbuxx
inx
// [246] if((byte) mode_8bpppixelcell::i#1!=(byte) $10) goto mode_8bpppixelcell::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1
// [247] phi from mode_8bpppixelcell::@1 to mode_8bpppixelcell::@2 [phi:mode_8bpppixelcell::@1->mode_8bpppixelcell::@2]
// [247] phi (byte*) mode_8bpppixelcell::gfxa#3 = (const byte*) mode_8bpppixelcell::PLANEA#0 [phi:mode_8bpppixelcell::@1->mode_8bpppixelcell::@2#0] -- pbuz1=pbuc1
lda #<PLANEA
sta.z gfxa
lda #>PLANEA
sta.z gfxa+1
// [247] phi (byte) mode_8bpppixelcell::ay#4 = (byte) 0 [phi:mode_8bpppixelcell::@1->mode_8bpppixelcell::@2#1] -- vbuz1=vbuc1
lda #0
sta.z ay
// [247] phi from mode_8bpppixelcell::@4 to mode_8bpppixelcell::@2 [phi:mode_8bpppixelcell::@4->mode_8bpppixelcell::@2]
// [247] phi (byte*) mode_8bpppixelcell::gfxa#3 = (byte*) mode_8bpppixelcell::gfxa#1 [phi:mode_8bpppixelcell::@4->mode_8bpppixelcell::@2#0] -- register_copy
// [247] phi (byte) mode_8bpppixelcell::ay#4 = (byte) mode_8bpppixelcell::ay#1 [phi:mode_8bpppixelcell::@4->mode_8bpppixelcell::@2#1] -- register_copy
// mode_8bpppixelcell::@2
b2:
// [248] phi from mode_8bpppixelcell::@2 to mode_8bpppixelcell::@3 [phi:mode_8bpppixelcell::@2->mode_8bpppixelcell::@3]
// [248] phi (byte*) mode_8bpppixelcell::gfxa#2 = (byte*) mode_8bpppixelcell::gfxa#3 [phi:mode_8bpppixelcell::@2->mode_8bpppixelcell::@3#0] -- register_copy
// [248] phi (byte) mode_8bpppixelcell::ax#2 = (byte) 0 [phi:mode_8bpppixelcell::@2->mode_8bpppixelcell::@3#1] -- vbuxx=vbuc1
ldx #0
// [248] phi from mode_8bpppixelcell::@3 to mode_8bpppixelcell::@3 [phi:mode_8bpppixelcell::@3->mode_8bpppixelcell::@3]
// [248] phi (byte*) mode_8bpppixelcell::gfxa#2 = (byte*) mode_8bpppixelcell::gfxa#1 [phi:mode_8bpppixelcell::@3->mode_8bpppixelcell::@3#0] -- register_copy
// [248] phi (byte) mode_8bpppixelcell::ax#2 = (byte) mode_8bpppixelcell::ax#1 [phi:mode_8bpppixelcell::@3->mode_8bpppixelcell::@3#1] -- register_copy
// mode_8bpppixelcell::@3
b3:
// ay & $f
// [249] (byte~) mode_8bpppixelcell::$14 ← (byte) mode_8bpppixelcell::ay#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z ay
// (ay & $f)*$10
// [250] (byte~) mode_8bpppixelcell::$15 ← (byte~) mode_8bpppixelcell::$14 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z _15
// ax & $f
// [251] (byte~) mode_8bpppixelcell::$16 ← (byte) mode_8bpppixelcell::ax#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// (ay & $f)*$10 | (ax & $f)
// [252] (byte~) mode_8bpppixelcell::$17 ← (byte~) mode_8bpppixelcell::$15 | (byte~) mode_8bpppixelcell::$16 -- vbuaa=vbuz1_bor_vbuaa
ora.z _15
// *gfxa++ = (ay & $f)*$10 | (ax & $f)
// [253] *((byte*) mode_8bpppixelcell::gfxa#2) ← (byte~) mode_8bpppixelcell::$17 -- _deref_pbuz1=vbuaa
ldy #0
sta (gfxa),y
// *gfxa++ = (ay & $f)*$10 | (ax & $f);
// [254] (byte*) mode_8bpppixelcell::gfxa#1 ← ++ (byte*) mode_8bpppixelcell::gfxa#2 -- pbuz1=_inc_pbuz1
inc.z gfxa
bne !+
inc.z gfxa+1
!:
// for (byte ax : 0..39)
// [255] (byte) mode_8bpppixelcell::ax#1 ← ++ (byte) mode_8bpppixelcell::ax#2 -- vbuxx=_inc_vbuxx
inx
// [256] if((byte) mode_8bpppixelcell::ax#1!=(byte) $28) goto mode_8bpppixelcell::@3 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b3
// mode_8bpppixelcell::@4
// for(byte ay : 0..24)
// [257] (byte) mode_8bpppixelcell::ay#1 ← ++ (byte) mode_8bpppixelcell::ay#4 -- vbuz1=_inc_vbuz1
inc.z ay
// [258] if((byte) mode_8bpppixelcell::ay#1!=(byte) $19) goto mode_8bpppixelcell::@2 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z ay
bne b2
// mode_8bpppixelcell::@5
// *PROCPORT = PROCPORT_RAM_CHARROM
// [259] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_CHARROM#0 -- _deref_pbuc1=vbuc2
// 8bpp cells for Plane B (charset) - ROM charset with 256 colors
lda #PROCPORT_RAM_CHARROM
sta PROCPORT
// [260] phi from mode_8bpppixelcell::@5 to mode_8bpppixelcell::@6 [phi:mode_8bpppixelcell::@5->mode_8bpppixelcell::@6]
// [260] phi (byte) mode_8bpppixelcell::ch#8 = (byte) 0 [phi:mode_8bpppixelcell::@5->mode_8bpppixelcell::@6#0] -- vbuz1=vbuc1
lda #0
sta.z ch
// [260] phi (byte) mode_8bpppixelcell::col#7 = (byte) 0 [phi:mode_8bpppixelcell::@5->mode_8bpppixelcell::@6#1] -- vbuz1=vbuc1
sta.z col
// [260] phi (byte*) mode_8bpppixelcell::gfxb#7 = (const byte*) mode_8bpppixelcell::PLANEB#0 [phi:mode_8bpppixelcell::@5->mode_8bpppixelcell::@6#2] -- pbuz1=pbuc1
lda #<PLANEB
sta.z gfxb
lda #>PLANEB
sta.z gfxb+1
// [260] phi (byte*) mode_8bpppixelcell::chargen#4 = (const byte*) mode_8bpppixelcell::CHARGEN#0 [phi:mode_8bpppixelcell::@5->mode_8bpppixelcell::@6#3] -- pbuz1=pbuc1
lda #<CHARGEN
sta.z chargen
lda #>CHARGEN
sta.z chargen+1
// [260] phi from mode_8bpppixelcell::@12 to mode_8bpppixelcell::@6 [phi:mode_8bpppixelcell::@12->mode_8bpppixelcell::@6]
// [260] phi (byte) mode_8bpppixelcell::ch#8 = (byte) mode_8bpppixelcell::ch#1 [phi:mode_8bpppixelcell::@12->mode_8bpppixelcell::@6#0] -- register_copy
// [260] phi (byte) mode_8bpppixelcell::col#7 = (byte) mode_8bpppixelcell::col#1 [phi:mode_8bpppixelcell::@12->mode_8bpppixelcell::@6#1] -- register_copy
// [260] phi (byte*) mode_8bpppixelcell::gfxb#7 = (byte*) mode_8bpppixelcell::gfxb#1 [phi:mode_8bpppixelcell::@12->mode_8bpppixelcell::@6#2] -- register_copy
// [260] phi (byte*) mode_8bpppixelcell::chargen#4 = (byte*) mode_8bpppixelcell::chargen#1 [phi:mode_8bpppixelcell::@12->mode_8bpppixelcell::@6#3] -- register_copy
// mode_8bpppixelcell::@6
b6:
// [261] phi from mode_8bpppixelcell::@6 to mode_8bpppixelcell::@7 [phi:mode_8bpppixelcell::@6->mode_8bpppixelcell::@7]
// [261] phi (byte) mode_8bpppixelcell::cr#6 = (byte) 0 [phi:mode_8bpppixelcell::@6->mode_8bpppixelcell::@7#0] -- vbuz1=vbuc1
lda #0
sta.z cr
// [261] phi (byte) mode_8bpppixelcell::col#5 = (byte) mode_8bpppixelcell::col#7 [phi:mode_8bpppixelcell::@6->mode_8bpppixelcell::@7#1] -- register_copy
// [261] phi (byte*) mode_8bpppixelcell::gfxb#5 = (byte*) mode_8bpppixelcell::gfxb#7 [phi:mode_8bpppixelcell::@6->mode_8bpppixelcell::@7#2] -- register_copy
// [261] phi (byte*) mode_8bpppixelcell::chargen#2 = (byte*) mode_8bpppixelcell::chargen#4 [phi:mode_8bpppixelcell::@6->mode_8bpppixelcell::@7#3] -- register_copy
// [261] phi from mode_8bpppixelcell::@11 to mode_8bpppixelcell::@7 [phi:mode_8bpppixelcell::@11->mode_8bpppixelcell::@7]
// [261] phi (byte) mode_8bpppixelcell::cr#6 = (byte) mode_8bpppixelcell::cr#1 [phi:mode_8bpppixelcell::@11->mode_8bpppixelcell::@7#0] -- register_copy
// [261] phi (byte) mode_8bpppixelcell::col#5 = (byte) mode_8bpppixelcell::col#1 [phi:mode_8bpppixelcell::@11->mode_8bpppixelcell::@7#1] -- register_copy
// [261] phi (byte*) mode_8bpppixelcell::gfxb#5 = (byte*) mode_8bpppixelcell::gfxb#1 [phi:mode_8bpppixelcell::@11->mode_8bpppixelcell::@7#2] -- register_copy
// [261] phi (byte*) mode_8bpppixelcell::chargen#2 = (byte*) mode_8bpppixelcell::chargen#1 [phi:mode_8bpppixelcell::@11->mode_8bpppixelcell::@7#3] -- register_copy
// mode_8bpppixelcell::@7
b7:
// bits = *chargen++
// [262] (byte) mode_8bpppixelcell::bits#0 ← *((byte*) mode_8bpppixelcell::chargen#2) -- vbuz1=_deref_pbuz2
ldy #0
lda (chargen),y
sta.z bits
// [263] (byte*) mode_8bpppixelcell::chargen#1 ← ++ (byte*) mode_8bpppixelcell::chargen#2 -- pbuz1=_inc_pbuz1
inc.z chargen
bne !+
inc.z chargen+1
!:
// [264] phi from mode_8bpppixelcell::@7 to mode_8bpppixelcell::@8 [phi:mode_8bpppixelcell::@7->mode_8bpppixelcell::@8]
// [264] phi (byte) mode_8bpppixelcell::cp#2 = (byte) 0 [phi:mode_8bpppixelcell::@7->mode_8bpppixelcell::@8#0] -- vbuxx=vbuc1
ldx #0
// [264] phi (byte) mode_8bpppixelcell::col#2 = (byte) mode_8bpppixelcell::col#5 [phi:mode_8bpppixelcell::@7->mode_8bpppixelcell::@8#1] -- register_copy
// [264] phi (byte*) mode_8bpppixelcell::gfxb#2 = (byte*) mode_8bpppixelcell::gfxb#5 [phi:mode_8bpppixelcell::@7->mode_8bpppixelcell::@8#2] -- register_copy
// [264] phi (byte) mode_8bpppixelcell::bits#2 = (byte) mode_8bpppixelcell::bits#0 [phi:mode_8bpppixelcell::@7->mode_8bpppixelcell::@8#3] -- register_copy
// [264] phi from mode_8bpppixelcell::@9 to mode_8bpppixelcell::@8 [phi:mode_8bpppixelcell::@9->mode_8bpppixelcell::@8]
// [264] phi (byte) mode_8bpppixelcell::cp#2 = (byte) mode_8bpppixelcell::cp#1 [phi:mode_8bpppixelcell::@9->mode_8bpppixelcell::@8#0] -- register_copy
// [264] phi (byte) mode_8bpppixelcell::col#2 = (byte) mode_8bpppixelcell::col#1 [phi:mode_8bpppixelcell::@9->mode_8bpppixelcell::@8#1] -- register_copy
// [264] phi (byte*) mode_8bpppixelcell::gfxb#2 = (byte*) mode_8bpppixelcell::gfxb#1 [phi:mode_8bpppixelcell::@9->mode_8bpppixelcell::@8#2] -- register_copy
// [264] phi (byte) mode_8bpppixelcell::bits#2 = (byte) mode_8bpppixelcell::bits#1 [phi:mode_8bpppixelcell::@9->mode_8bpppixelcell::@8#3] -- register_copy
// mode_8bpppixelcell::@8
b8:
// bits & $80
// [265] (byte~) mode_8bpppixelcell::$20 ← (byte) mode_8bpppixelcell::bits#2 & (byte) $80 -- vbuaa=vbuz1_band_vbuc1
lda #$80
and.z bits
// if((bits & $80) != 0)
// [266] if((byte~) mode_8bpppixelcell::$20==(byte) 0) goto mode_8bpppixelcell::@9 -- vbuaa_eq_0_then_la1
cmp #0
beq b4
// mode_8bpppixelcell::@10
// [267] (byte~) mode_8bpppixelcell::c#3 ← (byte) mode_8bpppixelcell::col#2 -- vbuaa=vbuz1
lda.z col
// [268] phi from mode_8bpppixelcell::@10 to mode_8bpppixelcell::@9 [phi:mode_8bpppixelcell::@10->mode_8bpppixelcell::@9]
// [268] phi (byte) mode_8bpppixelcell::c#2 = (byte~) mode_8bpppixelcell::c#3 [phi:mode_8bpppixelcell::@10->mode_8bpppixelcell::@9#0] -- register_copy
jmp b9
// [268] phi from mode_8bpppixelcell::@8 to mode_8bpppixelcell::@9 [phi:mode_8bpppixelcell::@8->mode_8bpppixelcell::@9]
b4:
// [268] phi (byte) mode_8bpppixelcell::c#2 = (byte) 0 [phi:mode_8bpppixelcell::@8->mode_8bpppixelcell::@9#0] -- vbuaa=vbuc1
lda #0
// mode_8bpppixelcell::@9
b9:
// *gfxb++ = c
// [269] *((byte*) mode_8bpppixelcell::gfxb#2) ← (byte) mode_8bpppixelcell::c#2 -- _deref_pbuz1=vbuaa
ldy #0
sta (gfxb),y
// *gfxb++ = c;
// [270] (byte*) mode_8bpppixelcell::gfxb#1 ← ++ (byte*) mode_8bpppixelcell::gfxb#2 -- pbuz1=_inc_pbuz1
inc.z gfxb
bne !+
inc.z gfxb+1
!:
// bits = bits*2
// [271] (byte) mode_8bpppixelcell::bits#1 ← (byte) mode_8bpppixelcell::bits#2 << (byte) 1 -- vbuz1=vbuz1_rol_1
asl.z bits
// col++;
// [272] (byte) mode_8bpppixelcell::col#1 ← ++ (byte) mode_8bpppixelcell::col#2 -- vbuz1=_inc_vbuz1
inc.z col
// for ( byte cp : 0..7)
// [273] (byte) mode_8bpppixelcell::cp#1 ← ++ (byte) mode_8bpppixelcell::cp#2 -- vbuxx=_inc_vbuxx
inx
// [274] if((byte) mode_8bpppixelcell::cp#1!=(byte) 8) goto mode_8bpppixelcell::@8 -- vbuxx_neq_vbuc1_then_la1
cpx #8
bne b8
// mode_8bpppixelcell::@11
// for ( byte cr : 0..7)
// [275] (byte) mode_8bpppixelcell::cr#1 ← ++ (byte) mode_8bpppixelcell::cr#6 -- vbuz1=_inc_vbuz1
inc.z cr
// [276] if((byte) mode_8bpppixelcell::cr#1!=(byte) 8) goto mode_8bpppixelcell::@7 -- vbuz1_neq_vbuc1_then_la1
lda #8
cmp.z cr
bne b7
// mode_8bpppixelcell::@12
// for(byte ch : $00..$ff)
// [277] (byte) mode_8bpppixelcell::ch#1 ← ++ (byte) mode_8bpppixelcell::ch#8 -- vbuz1=_inc_vbuz1
inc.z ch
// [278] if((byte) mode_8bpppixelcell::ch#1!=(byte) 0) goto mode_8bpppixelcell::@6 -- vbuz1_neq_0_then_la1
lda.z ch
cmp #0
bne b6
// mode_8bpppixelcell::@13
// *PROCPORT = PROCPORT_RAM_IO
// [279] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2
lda #PROCPORT_RAM_IO
sta PROCPORT
// mode_ctrl()
// [280] call mode_ctrl
// [155] phi from mode_8bpppixelcell::@13 to mode_ctrl [phi:mode_8bpppixelcell::@13->mode_ctrl]
// [155] phi (byte) dtv_control#144 = (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0 [phi:mode_8bpppixelcell::@13->mode_ctrl#0] -- vbuz1=vbuc1
lda #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY
sta.z dtv_control
jsr mode_ctrl
// mode_8bpppixelcell::@return
// }
// [281] return
rts
}
// mode_sixsfred
// Sixs Fred Mode - 8bpp Packed Bitmap - Generated from the two DTV linear graphics plane counters
// Two Plane MultiColor Bitmap - 8bpp Packed Bitmap (CHUNK/COLDIS = 0, ECM/BMM/MCM/HICOL/LINEAR = 1)
// Resolution: 160x200
// Linear Adressing
// GfxData/PlaneA Pixel Shifter (2), CharData/PlaneB Pixel Shifter (2):
// - 8bpp color (ColorData[3:0],CharData/PlaneB[1:0], GfxData/PlaneA[1:0])
mode_sixsfred: {
.label PLANEA = $4000
.label PLANEB = $6000
.label COLORS = $8000
.label col = 4
.label cy = $d
.label gfxa = 9
.label ay = 2
.label gfxb = $b
.label by = 3
// *DTV_CONTROL = DTV_HIGHCOLOR | DTV_LINEAR
// [282] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR|DTV_LINEAR
sta DTV_CONTROL
// *VIC_CONTROL = VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3
// [283] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Mode
lda #VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// *VIC_CONTROL2 = VIC_MCM|VIC_CSEL
// [284] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_MCM|VIC_CSEL
sta VIC_CONTROL2
// *DTV_PLANEA_START_LO = <PLANEA
// [285] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane A Counter
lda #0
sta DTV_PLANEA_START_LO
// *DTV_PLANEA_START_MI = >PLANEA
// [286] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_sixsfred::PLANEA#0 -- _deref_pbuc1=vbuc2
lda #>PLANEA
sta DTV_PLANEA_START_MI
// *DTV_PLANEA_START_HI = 0
// [287] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_START_HI
// *DTV_PLANEA_STEP = 1
// [288] *((const byte*) DTV_PLANEA_STEP#0) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEA_STEP
// *DTV_PLANEA_MODULO_LO = 0
// [289] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_LO
// *DTV_PLANEA_MODULO_HI = 0
// [290] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_PLANEA_MODULO_HI
// *DTV_PLANEB_START_LO = <PLANEB
// [291] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
sta DTV_PLANEB_START_LO
// *DTV_PLANEB_START_MI = >PLANEB
// [292] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_sixsfred::PLANEB#0 -- _deref_pbuc1=vbuc2
lda #>PLANEB
sta DTV_PLANEB_START_MI
// *DTV_PLANEB_START_HI = 0
// [293] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_HI
// *DTV_PLANEB_STEP = 1
// [294] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEB_STEP
// *DTV_PLANEB_MODULO_LO = 0
// [295] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// *DTV_PLANEB_MODULO_HI = 0
// [296] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_PLANEB_MODULO_HI
// *DTV_COLOR_BANK_LO = <(COLORS/$400)
// [297] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_sixsfred::COLORS#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// *DTV_COLOR_BANK_HI = >(COLORS/$400)
// [298] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [299] phi from mode_sixsfred to mode_sixsfred::@1 [phi:mode_sixsfred->mode_sixsfred::@1]
// [299] phi (byte) mode_sixsfred::i#2 = (byte) 0 [phi:mode_sixsfred->mode_sixsfred::@1#0] -- vbuxx=vbuc1
tax
// DTV Palette - Grey Tones
// [299] phi from mode_sixsfred::@1 to mode_sixsfred::@1 [phi:mode_sixsfred::@1->mode_sixsfred::@1]
// [299] phi (byte) mode_sixsfred::i#2 = (byte) mode_sixsfred::i#1 [phi:mode_sixsfred::@1->mode_sixsfred::@1#0] -- register_copy
// mode_sixsfred::@1
b1:
// DTV_PALETTE[i] = i
// [300] *((const byte*) DTV_PALETTE#0 + (byte) mode_sixsfred::i#2) ← (byte) mode_sixsfred::i#2 -- pbuc1_derefidx_vbuxx=vbuxx
txa
sta DTV_PALETTE,x
// for(byte i : 0..$f)
// [301] (byte) mode_sixsfred::i#1 ← ++ (byte) mode_sixsfred::i#2 -- vbuxx=_inc_vbuxx
inx
// [302] if((byte) mode_sixsfred::i#1!=(byte) $10) goto mode_sixsfred::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1
// mode_sixsfred::@2
// *BORDERCOL = $00
// [303] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDERCOL
// [304] phi from mode_sixsfred::@2 to mode_sixsfred::@3 [phi:mode_sixsfred::@2->mode_sixsfred::@3]
// [304] phi (byte*) mode_sixsfred::col#3 = (const byte*) mode_sixsfred::COLORS#0 [phi:mode_sixsfred::@2->mode_sixsfred::@3#0] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [304] phi (byte) mode_sixsfred::cy#4 = (byte) 0 [phi:mode_sixsfred::@2->mode_sixsfred::@3#1] -- vbuz1=vbuc1
lda #0
sta.z cy
// [304] phi from mode_sixsfred::@5 to mode_sixsfred::@3 [phi:mode_sixsfred::@5->mode_sixsfred::@3]
// [304] phi (byte*) mode_sixsfred::col#3 = (byte*) mode_sixsfred::col#1 [phi:mode_sixsfred::@5->mode_sixsfred::@3#0] -- register_copy
// [304] phi (byte) mode_sixsfred::cy#4 = (byte) mode_sixsfred::cy#1 [phi:mode_sixsfred::@5->mode_sixsfred::@3#1] -- register_copy
// mode_sixsfred::@3
b3:
// [305] phi from mode_sixsfred::@3 to mode_sixsfred::@4 [phi:mode_sixsfred::@3->mode_sixsfred::@4]
// [305] phi (byte*) mode_sixsfred::col#2 = (byte*) mode_sixsfred::col#3 [phi:mode_sixsfred::@3->mode_sixsfred::@4#0] -- register_copy
// [305] phi (byte) mode_sixsfred::cx#2 = (byte) 0 [phi:mode_sixsfred::@3->mode_sixsfred::@4#1] -- vbuxx=vbuc1
ldx #0
// [305] phi from mode_sixsfred::@4 to mode_sixsfred::@4 [phi:mode_sixsfred::@4->mode_sixsfred::@4]
// [305] phi (byte*) mode_sixsfred::col#2 = (byte*) mode_sixsfred::col#1 [phi:mode_sixsfred::@4->mode_sixsfred::@4#0] -- register_copy
// [305] phi (byte) mode_sixsfred::cx#2 = (byte) mode_sixsfred::cx#1 [phi:mode_sixsfred::@4->mode_sixsfred::@4#1] -- register_copy
// mode_sixsfred::@4
b4:
// cx+cy
// [306] (byte~) mode_sixsfred::$17 ← (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#4 -- vbuaa=vbuxx_plus_vbuz1
txa
clc
adc.z cy
// (cx+cy) & $f
// [307] (byte~) mode_sixsfred::$18 ← (byte~) mode_sixsfred::$17 & (byte) $f -- vbuaa=vbuaa_band_vbuc1
and #$f
// *col++ = (cx+cy) & $f
// [308] *((byte*) mode_sixsfred::col#2) ← (byte~) mode_sixsfred::$18 -- _deref_pbuz1=vbuaa
ldy #0
sta (col),y
// *col++ = (cx+cy) & $f;
// [309] (byte*) mode_sixsfred::col#1 ← ++ (byte*) mode_sixsfred::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// for(byte cx: 0..39)
// [310] (byte) mode_sixsfred::cx#1 ← ++ (byte) mode_sixsfred::cx#2 -- vbuxx=_inc_vbuxx
inx
// [311] if((byte) mode_sixsfred::cx#1!=(byte) $28) goto mode_sixsfred::@4 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b4
// mode_sixsfred::@5
// for(byte cy: 0..24 )
// [312] (byte) mode_sixsfred::cy#1 ← ++ (byte) mode_sixsfred::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [313] if((byte) mode_sixsfred::cy#1!=(byte) $19) goto mode_sixsfred::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3
// [314] phi from mode_sixsfred::@5 to mode_sixsfred::@6 [phi:mode_sixsfred::@5->mode_sixsfred::@6]
// [314] phi (byte*) mode_sixsfred::gfxa#3 = (const byte*) mode_sixsfred::PLANEA#0 [phi:mode_sixsfred::@5->mode_sixsfred::@6#0] -- pbuz1=pbuc1
lda #<PLANEA
sta.z gfxa
lda #>PLANEA
sta.z gfxa+1
// [314] phi (byte) mode_sixsfred::ay#4 = (byte) 0 [phi:mode_sixsfred::@5->mode_sixsfred::@6#1] -- vbuz1=vbuc1
lda #0
sta.z ay
// [314] phi from mode_sixsfred::@8 to mode_sixsfred::@6 [phi:mode_sixsfred::@8->mode_sixsfred::@6]
// [314] phi (byte*) mode_sixsfred::gfxa#3 = (byte*) mode_sixsfred::gfxa#1 [phi:mode_sixsfred::@8->mode_sixsfred::@6#0] -- register_copy
// [314] phi (byte) mode_sixsfred::ay#4 = (byte) mode_sixsfred::ay#1 [phi:mode_sixsfred::@8->mode_sixsfred::@6#1] -- register_copy
// mode_sixsfred::@6
b6:
// [315] phi from mode_sixsfred::@6 to mode_sixsfred::@7 [phi:mode_sixsfred::@6->mode_sixsfred::@7]
// [315] phi (byte) mode_sixsfred::ax#2 = (byte) 0 [phi:mode_sixsfred::@6->mode_sixsfred::@7#0] -- vbuxx=vbuc1
ldx #0
// [315] phi (byte*) mode_sixsfred::gfxa#2 = (byte*) mode_sixsfred::gfxa#3 [phi:mode_sixsfred::@6->mode_sixsfred::@7#1] -- register_copy
// [315] phi from mode_sixsfred::@7 to mode_sixsfred::@7 [phi:mode_sixsfred::@7->mode_sixsfred::@7]
// [315] phi (byte) mode_sixsfred::ax#2 = (byte) mode_sixsfred::ax#1 [phi:mode_sixsfred::@7->mode_sixsfred::@7#0] -- register_copy
// [315] phi (byte*) mode_sixsfred::gfxa#2 = (byte*) mode_sixsfred::gfxa#1 [phi:mode_sixsfred::@7->mode_sixsfred::@7#1] -- register_copy
// mode_sixsfred::@7
b7:
// ay/2
// [316] (byte~) mode_sixsfred::$21 ← (byte) mode_sixsfred::ay#4 >> (byte) 1 -- vbuaa=vbuz1_ror_1
lda.z ay
lsr
// row = (ay/2) & 3
// [317] (byte) mode_sixsfred::row#0 ← (byte~) mode_sixsfred::$21 & (byte) 3 -- vbuaa=vbuaa_band_vbuc1
and #3
// *gfxa++ = row_bitmask[row]
// [318] *((byte*) mode_sixsfred::gfxa#2) ← *((const byte[]) mode_sixsfred::row_bitmask#0 + (byte) mode_sixsfred::row#0) -- _deref_pbuz1=pbuc1_derefidx_vbuaa
tay
lda row_bitmask,y
ldy #0
sta (gfxa),y
// *gfxa++ = row_bitmask[row];
// [319] (byte*) mode_sixsfred::gfxa#1 ← ++ (byte*) mode_sixsfred::gfxa#2 -- pbuz1=_inc_pbuz1
inc.z gfxa
bne !+
inc.z gfxa+1
!:
// for (byte ax : 0..39)
// [320] (byte) mode_sixsfred::ax#1 ← ++ (byte) mode_sixsfred::ax#2 -- vbuxx=_inc_vbuxx
inx
// [321] if((byte) mode_sixsfred::ax#1!=(byte) $28) goto mode_sixsfred::@7 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b7
// mode_sixsfred::@8
// for(byte ay : 0..199)
// [322] (byte) mode_sixsfred::ay#1 ← ++ (byte) mode_sixsfred::ay#4 -- vbuz1=_inc_vbuz1
inc.z ay
// [323] if((byte) mode_sixsfred::ay#1!=(byte) $c8) goto mode_sixsfred::@6 -- vbuz1_neq_vbuc1_then_la1
lda #$c8
cmp.z ay
bne b6
// [324] phi from mode_sixsfred::@8 to mode_sixsfred::@9 [phi:mode_sixsfred::@8->mode_sixsfred::@9]
// [324] phi (byte) mode_sixsfred::by#4 = (byte) 0 [phi:mode_sixsfred::@8->mode_sixsfred::@9#0] -- vbuz1=vbuc1
lda #0
sta.z by
// [324] phi (byte*) mode_sixsfred::gfxb#3 = (const byte*) mode_sixsfred::PLANEB#0 [phi:mode_sixsfred::@8->mode_sixsfred::@9#1] -- pbuz1=pbuc1
lda #<PLANEB
sta.z gfxb
lda #>PLANEB
sta.z gfxb+1
// [324] phi from mode_sixsfred::@11 to mode_sixsfred::@9 [phi:mode_sixsfred::@11->mode_sixsfred::@9]
// [324] phi (byte) mode_sixsfred::by#4 = (byte) mode_sixsfred::by#1 [phi:mode_sixsfred::@11->mode_sixsfred::@9#0] -- register_copy
// [324] phi (byte*) mode_sixsfred::gfxb#3 = (byte*) mode_sixsfred::gfxb#1 [phi:mode_sixsfred::@11->mode_sixsfred::@9#1] -- register_copy
// mode_sixsfred::@9
b9:
// [325] phi from mode_sixsfred::@9 to mode_sixsfred::@10 [phi:mode_sixsfred::@9->mode_sixsfred::@10]
// [325] phi (byte) mode_sixsfred::bx#2 = (byte) 0 [phi:mode_sixsfred::@9->mode_sixsfred::@10#0] -- vbuxx=vbuc1
ldx #0
// [325] phi (byte*) mode_sixsfred::gfxb#2 = (byte*) mode_sixsfred::gfxb#3 [phi:mode_sixsfred::@9->mode_sixsfred::@10#1] -- register_copy
// [325] phi from mode_sixsfred::@10 to mode_sixsfred::@10 [phi:mode_sixsfred::@10->mode_sixsfred::@10]
// [325] phi (byte) mode_sixsfred::bx#2 = (byte) mode_sixsfred::bx#1 [phi:mode_sixsfred::@10->mode_sixsfred::@10#0] -- register_copy
// [325] phi (byte*) mode_sixsfred::gfxb#2 = (byte*) mode_sixsfred::gfxb#1 [phi:mode_sixsfred::@10->mode_sixsfred::@10#1] -- register_copy
// mode_sixsfred::@10
b10:
// *gfxb++ = %00011011
// [326] *((byte*) mode_sixsfred::gfxb#2) ← (byte) $1b -- _deref_pbuz1=vbuc1
lda #$1b
ldy #0
sta (gfxb),y
// *gfxb++ = %00011011;
// [327] (byte*) mode_sixsfred::gfxb#1 ← ++ (byte*) mode_sixsfred::gfxb#2 -- pbuz1=_inc_pbuz1
inc.z gfxb
bne !+
inc.z gfxb+1
!:
// for ( byte bx : 0..39)
// [328] (byte) mode_sixsfred::bx#1 ← ++ (byte) mode_sixsfred::bx#2 -- vbuxx=_inc_vbuxx
inx
// [329] if((byte) mode_sixsfred::bx#1!=(byte) $28) goto mode_sixsfred::@10 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b10
// mode_sixsfred::@11
// for(byte by : 0..199)
// [330] (byte) mode_sixsfred::by#1 ← ++ (byte) mode_sixsfred::by#4 -- vbuz1=_inc_vbuz1
inc.z by
// [331] if((byte) mode_sixsfred::by#1!=(byte) $c8) goto mode_sixsfred::@9 -- vbuz1_neq_vbuc1_then_la1
lda #$c8
cmp.z by
bne b9
// [332] phi from mode_sixsfred::@11 to mode_sixsfred::@12 [phi:mode_sixsfred::@11->mode_sixsfred::@12]
// mode_sixsfred::@12
// mode_ctrl()
// [333] call mode_ctrl
// [155] phi from mode_sixsfred::@12 to mode_ctrl [phi:mode_sixsfred::@12->mode_ctrl]
// [155] phi (byte) dtv_control#144 = (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 [phi:mode_sixsfred::@12->mode_ctrl#0] -- vbuz1=vbuc1
lda #DTV_HIGHCOLOR|DTV_LINEAR
sta.z dtv_control
jsr mode_ctrl
// mode_sixsfred::@return
// }
// [334] return
rts
row_bitmask: .byte 0, $55, $aa, $ff
}
// mode_twoplanebitmap
// Two Plane Bitmap - generated from the two DTV linear graphics plane counters
// Two Plane Bitmap Mode (CHUNK/COLDIS/MCM = 0, ECM/BMM/HICOL/LINEAR = 1)
// Resolution: 320x200
// Linear Adressing
// GfxData/PlaneA Pixel Shifter (1), CharData/PlaneB Pixel Shifter (1):
// - Plane A = 0 Plane B = 0: 8bpp BgColor0[7:0]
// - Plane A = 0 Plane B = 1: 8bpp "0000" & ColorData[7:4]
// - Plane A = 1 Plane B = 0: 8bpp "0000" & ColorData[3:0]
// - Plane A = 1 Plane B = 1: 8bpp BgColor1[7:0]
mode_twoplanebitmap: {
.label PLANEA = $4000
.label PLANEB = $6000
.label COLORS = $8000
.label _17 = $e
.label col = $b
.label cy = 6
.label gfxa = 9
.label ay = 7
.label gfxb = 4
.label by = 2
// *DTV_CONTROL = DTV_HIGHCOLOR | DTV_LINEAR
// [335] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR|DTV_LINEAR
sta DTV_CONTROL
// *VIC_CONTROL = VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3
// [336] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Mode
lda #VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// *VIC_CONTROL2 = VIC_CSEL
// [337] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// *DTV_PLANEA_START_LO = <PLANEA
// [338] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane A Counter
lda #0
sta DTV_PLANEA_START_LO
// *DTV_PLANEA_START_MI = >PLANEA
// [339] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_twoplanebitmap::PLANEA#0 -- _deref_pbuc1=vbuc2
lda #>PLANEA
sta DTV_PLANEA_START_MI
// *DTV_PLANEA_START_HI = 0
// [340] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_START_HI
// *DTV_PLANEA_STEP = 1
// [341] *((const byte*) DTV_PLANEA_STEP#0) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEA_STEP
// *DTV_PLANEA_MODULO_LO = 0
// [342] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_LO
// *DTV_PLANEA_MODULO_HI = 0
// [343] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_PLANEA_MODULO_HI
// *DTV_PLANEB_START_LO = <PLANEB
// [344] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
sta DTV_PLANEB_START_LO
// *DTV_PLANEB_START_MI = >PLANEB
// [345] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_twoplanebitmap::PLANEB#0 -- _deref_pbuc1=vbuc2
lda #>PLANEB
sta DTV_PLANEB_START_MI
// *DTV_PLANEB_START_HI = 0
// [346] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_HI
// *DTV_PLANEB_STEP = 1
// [347] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEB_STEP
// *DTV_PLANEB_MODULO_LO = 0
// [348] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// *DTV_PLANEB_MODULO_HI = 0
// [349] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_PLANEB_MODULO_HI
// *DTV_COLOR_BANK_LO = <(COLORS/$400)
// [350] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_twoplanebitmap::COLORS#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// *DTV_COLOR_BANK_HI = >(COLORS/$400)
// [351] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [352] phi from mode_twoplanebitmap to mode_twoplanebitmap::@1 [phi:mode_twoplanebitmap->mode_twoplanebitmap::@1]
// [352] phi (byte) mode_twoplanebitmap::i#2 = (byte) 0 [phi:mode_twoplanebitmap->mode_twoplanebitmap::@1#0] -- vbuxx=vbuc1
tax
// DTV Palette - Grey Tones
// [352] phi from mode_twoplanebitmap::@1 to mode_twoplanebitmap::@1 [phi:mode_twoplanebitmap::@1->mode_twoplanebitmap::@1]
// [352] phi (byte) mode_twoplanebitmap::i#2 = (byte) mode_twoplanebitmap::i#1 [phi:mode_twoplanebitmap::@1->mode_twoplanebitmap::@1#0] -- register_copy
// mode_twoplanebitmap::@1
b1:
// DTV_PALETTE[i] = i
// [353] *((const byte*) DTV_PALETTE#0 + (byte) mode_twoplanebitmap::i#2) ← (byte) mode_twoplanebitmap::i#2 -- pbuc1_derefidx_vbuxx=vbuxx
txa
sta DTV_PALETTE,x
// for(byte i : 0..$f)
// [354] (byte) mode_twoplanebitmap::i#1 ← ++ (byte) mode_twoplanebitmap::i#2 -- vbuxx=_inc_vbuxx
inx
// [355] if((byte) mode_twoplanebitmap::i#1!=(byte) $10) goto mode_twoplanebitmap::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1
// mode_twoplanebitmap::@2
// *BORDERCOL = $00
// [356] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDERCOL
// *BGCOL1 = $70
// [357] *((const byte*) BGCOL1#0) ← (byte) $70 -- _deref_pbuc1=vbuc2
lda #$70
sta BGCOL1
// *BGCOL2 = $d4
// [358] *((const byte*) BGCOL2#0) ← (byte) $d4 -- _deref_pbuc1=vbuc2
// Color for bits 00
lda #$d4
sta BGCOL2
// [359] phi from mode_twoplanebitmap::@2 to mode_twoplanebitmap::@3 [phi:mode_twoplanebitmap::@2->mode_twoplanebitmap::@3]
// [359] phi (byte*) mode_twoplanebitmap::col#3 = (const byte*) mode_twoplanebitmap::COLORS#0 [phi:mode_twoplanebitmap::@2->mode_twoplanebitmap::@3#0] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [359] phi (byte) mode_twoplanebitmap::cy#4 = (byte) 0 [phi:mode_twoplanebitmap::@2->mode_twoplanebitmap::@3#1] -- vbuz1=vbuc1
lda #0
sta.z cy
// [359] phi from mode_twoplanebitmap::@5 to mode_twoplanebitmap::@3 [phi:mode_twoplanebitmap::@5->mode_twoplanebitmap::@3]
// [359] phi (byte*) mode_twoplanebitmap::col#3 = (byte*) mode_twoplanebitmap::col#1 [phi:mode_twoplanebitmap::@5->mode_twoplanebitmap::@3#0] -- register_copy
// [359] phi (byte) mode_twoplanebitmap::cy#4 = (byte) mode_twoplanebitmap::cy#1 [phi:mode_twoplanebitmap::@5->mode_twoplanebitmap::@3#1] -- register_copy
// mode_twoplanebitmap::@3
b3:
// [360] phi from mode_twoplanebitmap::@3 to mode_twoplanebitmap::@4 [phi:mode_twoplanebitmap::@3->mode_twoplanebitmap::@4]
// [360] phi (byte*) mode_twoplanebitmap::col#2 = (byte*) mode_twoplanebitmap::col#3 [phi:mode_twoplanebitmap::@3->mode_twoplanebitmap::@4#0] -- register_copy
// [360] phi (byte) mode_twoplanebitmap::cx#2 = (byte) 0 [phi:mode_twoplanebitmap::@3->mode_twoplanebitmap::@4#1] -- vbuxx=vbuc1
ldx #0
// [360] phi from mode_twoplanebitmap::@4 to mode_twoplanebitmap::@4 [phi:mode_twoplanebitmap::@4->mode_twoplanebitmap::@4]
// [360] phi (byte*) mode_twoplanebitmap::col#2 = (byte*) mode_twoplanebitmap::col#1 [phi:mode_twoplanebitmap::@4->mode_twoplanebitmap::@4#0] -- register_copy
// [360] phi (byte) mode_twoplanebitmap::cx#2 = (byte) mode_twoplanebitmap::cx#1 [phi:mode_twoplanebitmap::@4->mode_twoplanebitmap::@4#1] -- register_copy
// mode_twoplanebitmap::@4
b4:
// cy & $f
// [361] (byte~) mode_twoplanebitmap::$16 ← (byte) mode_twoplanebitmap::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// (cy & $f)*$10
// [362] (byte~) mode_twoplanebitmap::$17 ← (byte~) mode_twoplanebitmap::$16 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z _17
// cx &$f
// [363] (byte~) mode_twoplanebitmap::$18 ← (byte) mode_twoplanebitmap::cx#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// (cy & $f)*$10 | (cx &$f)
// [364] (byte~) mode_twoplanebitmap::$19 ← (byte~) mode_twoplanebitmap::$17 | (byte~) mode_twoplanebitmap::$18 -- vbuaa=vbuz1_bor_vbuaa
ora.z _17
// *col++ = (cy & $f)*$10 | (cx &$f)
// [365] *((byte*) mode_twoplanebitmap::col#2) ← (byte~) mode_twoplanebitmap::$19 -- _deref_pbuz1=vbuaa
ldy #0
sta (col),y
// *col++ = (cy & $f)*$10 | (cx &$f);
// [366] (byte*) mode_twoplanebitmap::col#1 ← ++ (byte*) mode_twoplanebitmap::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// for(byte cx: 0..39)
// [367] (byte) mode_twoplanebitmap::cx#1 ← ++ (byte) mode_twoplanebitmap::cx#2 -- vbuxx=_inc_vbuxx
inx
// [368] if((byte) mode_twoplanebitmap::cx#1!=(byte) $28) goto mode_twoplanebitmap::@4 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b4
// mode_twoplanebitmap::@5
// for(byte cy: 0..24 )
// [369] (byte) mode_twoplanebitmap::cy#1 ← ++ (byte) mode_twoplanebitmap::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [370] if((byte) mode_twoplanebitmap::cy#1!=(byte) $19) goto mode_twoplanebitmap::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3
// [371] phi from mode_twoplanebitmap::@5 to mode_twoplanebitmap::@6 [phi:mode_twoplanebitmap::@5->mode_twoplanebitmap::@6]
// [371] phi (byte*) mode_twoplanebitmap::gfxa#7 = (const byte*) mode_twoplanebitmap::PLANEA#0 [phi:mode_twoplanebitmap::@5->mode_twoplanebitmap::@6#0] -- pbuz1=pbuc1
lda #<PLANEA
sta.z gfxa
lda #>PLANEA
sta.z gfxa+1
// [371] phi (byte) mode_twoplanebitmap::ay#5 = (byte) 0 [phi:mode_twoplanebitmap::@5->mode_twoplanebitmap::@6#1] -- vbuz1=vbuc1
lda #0
sta.z ay
// [371] phi from mode_twoplanebitmap::@11 to mode_twoplanebitmap::@6 [phi:mode_twoplanebitmap::@11->mode_twoplanebitmap::@6]
// [371] phi (byte*) mode_twoplanebitmap::gfxa#7 = (byte*) mode_twoplanebitmap::gfxa#6 [phi:mode_twoplanebitmap::@11->mode_twoplanebitmap::@6#0] -- register_copy
// [371] phi (byte) mode_twoplanebitmap::ay#5 = (byte) mode_twoplanebitmap::ay#1 [phi:mode_twoplanebitmap::@11->mode_twoplanebitmap::@6#1] -- register_copy
// mode_twoplanebitmap::@6
b6:
// [372] phi from mode_twoplanebitmap::@6 to mode_twoplanebitmap::@7 [phi:mode_twoplanebitmap::@6->mode_twoplanebitmap::@7]
// [372] phi (byte) mode_twoplanebitmap::ax#2 = (byte) 0 [phi:mode_twoplanebitmap::@6->mode_twoplanebitmap::@7#0] -- vbuxx=vbuc1
ldx #0
// [372] phi (byte*) mode_twoplanebitmap::gfxa#3 = (byte*) mode_twoplanebitmap::gfxa#7 [phi:mode_twoplanebitmap::@6->mode_twoplanebitmap::@7#1] -- register_copy
// [372] phi from mode_twoplanebitmap::@9 to mode_twoplanebitmap::@7 [phi:mode_twoplanebitmap::@9->mode_twoplanebitmap::@7]
// [372] phi (byte) mode_twoplanebitmap::ax#2 = (byte) mode_twoplanebitmap::ax#1 [phi:mode_twoplanebitmap::@9->mode_twoplanebitmap::@7#0] -- register_copy
// [372] phi (byte*) mode_twoplanebitmap::gfxa#3 = (byte*) mode_twoplanebitmap::gfxa#6 [phi:mode_twoplanebitmap::@9->mode_twoplanebitmap::@7#1] -- register_copy
// mode_twoplanebitmap::@7
b7:
// ay&4
// [373] (byte~) mode_twoplanebitmap::$22 ← (byte) mode_twoplanebitmap::ay#5 & (byte) 4 -- vbuaa=vbuz1_band_vbuc1
lda #4
and.z ay
// if((ay&4)==0)
// [374] if((byte~) mode_twoplanebitmap::$22==(byte) 0) goto mode_twoplanebitmap::@8 -- vbuaa_eq_0_then_la1
cmp #0
beq b8
// mode_twoplanebitmap::@10
// *gfxa++ = %11111111
// [375] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte) $ff -- _deref_pbuz1=vbuc1
lda #$ff
ldy #0
sta (gfxa),y
// *gfxa++ = %11111111;
// [376] (byte*) mode_twoplanebitmap::gfxa#2 ← ++ (byte*) mode_twoplanebitmap::gfxa#3 -- pbuz1=_inc_pbuz1
inc.z gfxa
bne !+
inc.z gfxa+1
!:
// [377] phi from mode_twoplanebitmap::@10 mode_twoplanebitmap::@8 to mode_twoplanebitmap::@9 [phi:mode_twoplanebitmap::@10/mode_twoplanebitmap::@8->mode_twoplanebitmap::@9]
// [377] phi (byte*) mode_twoplanebitmap::gfxa#6 = (byte*) mode_twoplanebitmap::gfxa#2 [phi:mode_twoplanebitmap::@10/mode_twoplanebitmap::@8->mode_twoplanebitmap::@9#0] -- register_copy
// mode_twoplanebitmap::@9
b9:
// for (byte ax : 0..39)
// [378] (byte) mode_twoplanebitmap::ax#1 ← ++ (byte) mode_twoplanebitmap::ax#2 -- vbuxx=_inc_vbuxx
inx
// [379] if((byte) mode_twoplanebitmap::ax#1!=(byte) $28) goto mode_twoplanebitmap::@7 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b7
// mode_twoplanebitmap::@11
// for(byte ay : 0..199)
// [380] (byte) mode_twoplanebitmap::ay#1 ← ++ (byte) mode_twoplanebitmap::ay#5 -- vbuz1=_inc_vbuz1
inc.z ay
// [381] if((byte) mode_twoplanebitmap::ay#1!=(byte) $c8) goto mode_twoplanebitmap::@6 -- vbuz1_neq_vbuc1_then_la1
lda #$c8
cmp.z ay
bne b6
// [382] phi from mode_twoplanebitmap::@11 to mode_twoplanebitmap::@12 [phi:mode_twoplanebitmap::@11->mode_twoplanebitmap::@12]
// [382] phi (byte) mode_twoplanebitmap::by#4 = (byte) 0 [phi:mode_twoplanebitmap::@11->mode_twoplanebitmap::@12#0] -- vbuz1=vbuc1
lda #0
sta.z by
// [382] phi (byte*) mode_twoplanebitmap::gfxb#3 = (const byte*) mode_twoplanebitmap::PLANEB#0 [phi:mode_twoplanebitmap::@11->mode_twoplanebitmap::@12#1] -- pbuz1=pbuc1
lda #<PLANEB
sta.z gfxb
lda #>PLANEB
sta.z gfxb+1
// [382] phi from mode_twoplanebitmap::@14 to mode_twoplanebitmap::@12 [phi:mode_twoplanebitmap::@14->mode_twoplanebitmap::@12]
// [382] phi (byte) mode_twoplanebitmap::by#4 = (byte) mode_twoplanebitmap::by#1 [phi:mode_twoplanebitmap::@14->mode_twoplanebitmap::@12#0] -- register_copy
// [382] phi (byte*) mode_twoplanebitmap::gfxb#3 = (byte*) mode_twoplanebitmap::gfxb#1 [phi:mode_twoplanebitmap::@14->mode_twoplanebitmap::@12#1] -- register_copy
// mode_twoplanebitmap::@12
b12:
// [383] phi from mode_twoplanebitmap::@12 to mode_twoplanebitmap::@13 [phi:mode_twoplanebitmap::@12->mode_twoplanebitmap::@13]
// [383] phi (byte) mode_twoplanebitmap::bx#2 = (byte) 0 [phi:mode_twoplanebitmap::@12->mode_twoplanebitmap::@13#0] -- vbuxx=vbuc1
ldx #0
// [383] phi (byte*) mode_twoplanebitmap::gfxb#2 = (byte*) mode_twoplanebitmap::gfxb#3 [phi:mode_twoplanebitmap::@12->mode_twoplanebitmap::@13#1] -- register_copy
// [383] phi from mode_twoplanebitmap::@13 to mode_twoplanebitmap::@13 [phi:mode_twoplanebitmap::@13->mode_twoplanebitmap::@13]
// [383] phi (byte) mode_twoplanebitmap::bx#2 = (byte) mode_twoplanebitmap::bx#1 [phi:mode_twoplanebitmap::@13->mode_twoplanebitmap::@13#0] -- register_copy
// [383] phi (byte*) mode_twoplanebitmap::gfxb#2 = (byte*) mode_twoplanebitmap::gfxb#1 [phi:mode_twoplanebitmap::@13->mode_twoplanebitmap::@13#1] -- register_copy
// mode_twoplanebitmap::@13
b13:
// *gfxb++ = %00001111
// [384] *((byte*) mode_twoplanebitmap::gfxb#2) ← (byte) $f -- _deref_pbuz1=vbuc1
lda #$f
ldy #0
sta (gfxb),y
// *gfxb++ = %00001111;
// [385] (byte*) mode_twoplanebitmap::gfxb#1 ← ++ (byte*) mode_twoplanebitmap::gfxb#2 -- pbuz1=_inc_pbuz1
inc.z gfxb
bne !+
inc.z gfxb+1
!:
// for ( byte bx : 0..39)
// [386] (byte) mode_twoplanebitmap::bx#1 ← ++ (byte) mode_twoplanebitmap::bx#2 -- vbuxx=_inc_vbuxx
inx
// [387] if((byte) mode_twoplanebitmap::bx#1!=(byte) $28) goto mode_twoplanebitmap::@13 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b13
// mode_twoplanebitmap::@14
// for(byte by : 0..199)
// [388] (byte) mode_twoplanebitmap::by#1 ← ++ (byte) mode_twoplanebitmap::by#4 -- vbuz1=_inc_vbuz1
inc.z by
// [389] if((byte) mode_twoplanebitmap::by#1!=(byte) $c8) goto mode_twoplanebitmap::@12 -- vbuz1_neq_vbuc1_then_la1
lda #$c8
cmp.z by
bne b12
// [390] phi from mode_twoplanebitmap::@14 to mode_twoplanebitmap::@15 [phi:mode_twoplanebitmap::@14->mode_twoplanebitmap::@15]
// mode_twoplanebitmap::@15
// mode_ctrl()
// [391] call mode_ctrl
// [155] phi from mode_twoplanebitmap::@15 to mode_ctrl [phi:mode_twoplanebitmap::@15->mode_ctrl]
// [155] phi (byte) dtv_control#144 = (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 [phi:mode_twoplanebitmap::@15->mode_ctrl#0] -- vbuz1=vbuc1
lda #DTV_HIGHCOLOR|DTV_LINEAR
sta.z dtv_control
jsr mode_ctrl
// mode_twoplanebitmap::@return
// }
// [392] return
rts
// mode_twoplanebitmap::@8
b8:
// *gfxa++ = %00000000
// [393] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte) 0 -- _deref_pbuz1=vbuc1
lda #0
tay
sta (gfxa),y
// *gfxa++ = %00000000;
// [394] (byte*) mode_twoplanebitmap::gfxa#1 ← ++ (byte*) mode_twoplanebitmap::gfxa#3 -- pbuz1=_inc_pbuz1
inc.z gfxa
bne !+
inc.z gfxa+1
!:
jmp b9
}
// mode_sixsfred2
// Sixs Fred Mode 2 - 8bpp Packed Bitmap - Generated from the two DTV linear graphics plane counters
// Two Plane MultiColor Bitmap - 8bpp Packed Bitmap (CHUNK/COLDIS/HICOL = 0, ECM/BMM/MCM/LINEAR = 1)
// Resolution: 160x200
// Linear Adressing
// PlaneA Pixel Shifter (2), PlaneB Pixel Shifter (2):
// - 8bpp color (PlaneB[1:0],ColorData[5:4],PlaneA[1:0],ColorData[1:0])
mode_sixsfred2: {
.label PLANEA = $4000
.label PLANEB = $6000
.label COLORS = $8000
.label _16 = 7
.label col = 9
.label cy = 2
.label gfxa = 4
.label ay = 3
.label gfxb = $b
.label by = 6
// *DTV_CONTROL = DTV_LINEAR
// [395] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2
lda #DTV_LINEAR
sta DTV_CONTROL
// *VIC_CONTROL = VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3
// [396] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Mode
lda #VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// *VIC_CONTROL2 = VIC_MCM|VIC_CSEL
// [397] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_MCM|VIC_CSEL
sta VIC_CONTROL2
// *DTV_PLANEA_START_LO = <PLANEA
// [398] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane A Counter
lda #0
sta DTV_PLANEA_START_LO
// *DTV_PLANEA_START_MI = >PLANEA
// [399] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_sixsfred2::PLANEA#0 -- _deref_pbuc1=vbuc2
lda #>PLANEA
sta DTV_PLANEA_START_MI
// *DTV_PLANEA_START_HI = 0
// [400] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_START_HI
// *DTV_PLANEA_STEP = 1
// [401] *((const byte*) DTV_PLANEA_STEP#0) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEA_STEP
// *DTV_PLANEA_MODULO_LO = 0
// [402] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_LO
// *DTV_PLANEA_MODULO_HI = 0
// [403] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_PLANEA_MODULO_HI
// *DTV_PLANEB_START_LO = <PLANEB
// [404] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
sta DTV_PLANEB_START_LO
// *DTV_PLANEB_START_MI = >PLANEB
// [405] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_sixsfred2::PLANEB#0 -- _deref_pbuc1=vbuc2
lda #>PLANEB
sta DTV_PLANEB_START_MI
// *DTV_PLANEB_START_HI = 0
// [406] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_HI
// *DTV_PLANEB_STEP = 1
// [407] *((const byte*) DTV_PLANEB_STEP#0) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEB_STEP
// *DTV_PLANEB_MODULO_LO = 0
// [408] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// *DTV_PLANEB_MODULO_HI = 0
// [409] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_PLANEB_MODULO_HI
// *DTV_COLOR_BANK_LO = <(COLORS/$400)
// [410] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_sixsfred2::COLORS#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// *DTV_COLOR_BANK_HI = >(COLORS/$400)
// [411] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [412] phi from mode_sixsfred2 to mode_sixsfred2::@1 [phi:mode_sixsfred2->mode_sixsfred2::@1]
// [412] phi (byte) mode_sixsfred2::i#2 = (byte) 0 [phi:mode_sixsfred2->mode_sixsfred2::@1#0] -- vbuxx=vbuc1
tax
// DTV Palette - Grey Tones
// [412] phi from mode_sixsfred2::@1 to mode_sixsfred2::@1 [phi:mode_sixsfred2::@1->mode_sixsfred2::@1]
// [412] phi (byte) mode_sixsfred2::i#2 = (byte) mode_sixsfred2::i#1 [phi:mode_sixsfred2::@1->mode_sixsfred2::@1#0] -- register_copy
// mode_sixsfred2::@1
b1:
// DTV_PALETTE[i] = i
// [413] *((const byte*) DTV_PALETTE#0 + (byte) mode_sixsfred2::i#2) ← (byte) mode_sixsfred2::i#2 -- pbuc1_derefidx_vbuxx=vbuxx
txa
sta DTV_PALETTE,x
// for(byte i : 0..$f)
// [414] (byte) mode_sixsfred2::i#1 ← ++ (byte) mode_sixsfred2::i#2 -- vbuxx=_inc_vbuxx
inx
// [415] if((byte) mode_sixsfred2::i#1!=(byte) $10) goto mode_sixsfred2::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1
// mode_sixsfred2::@2
// *BORDERCOL = $00
// [416] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDERCOL
// [417] phi from mode_sixsfred2::@2 to mode_sixsfred2::@3 [phi:mode_sixsfred2::@2->mode_sixsfred2::@3]
// [417] phi (byte*) mode_sixsfred2::col#3 = (const byte*) mode_sixsfred2::COLORS#0 [phi:mode_sixsfred2::@2->mode_sixsfred2::@3#0] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [417] phi (byte) mode_sixsfred2::cy#4 = (byte) 0 [phi:mode_sixsfred2::@2->mode_sixsfred2::@3#1] -- vbuz1=vbuc1
lda #0
sta.z cy
// [417] phi from mode_sixsfred2::@5 to mode_sixsfred2::@3 [phi:mode_sixsfred2::@5->mode_sixsfred2::@3]
// [417] phi (byte*) mode_sixsfred2::col#3 = (byte*) mode_sixsfred2::col#1 [phi:mode_sixsfred2::@5->mode_sixsfred2::@3#0] -- register_copy
// [417] phi (byte) mode_sixsfred2::cy#4 = (byte) mode_sixsfred2::cy#1 [phi:mode_sixsfred2::@5->mode_sixsfred2::@3#1] -- register_copy
// mode_sixsfred2::@3
b3:
// [418] phi from mode_sixsfred2::@3 to mode_sixsfred2::@4 [phi:mode_sixsfred2::@3->mode_sixsfred2::@4]
// [418] phi (byte*) mode_sixsfred2::col#2 = (byte*) mode_sixsfred2::col#3 [phi:mode_sixsfred2::@3->mode_sixsfred2::@4#0] -- register_copy
// [418] phi (byte) mode_sixsfred2::cx#2 = (byte) 0 [phi:mode_sixsfred2::@3->mode_sixsfred2::@4#1] -- vbuxx=vbuc1
ldx #0
// [418] phi from mode_sixsfred2::@4 to mode_sixsfred2::@4 [phi:mode_sixsfred2::@4->mode_sixsfred2::@4]
// [418] phi (byte*) mode_sixsfred2::col#2 = (byte*) mode_sixsfred2::col#1 [phi:mode_sixsfred2::@4->mode_sixsfred2::@4#0] -- register_copy
// [418] phi (byte) mode_sixsfred2::cx#2 = (byte) mode_sixsfred2::cx#1 [phi:mode_sixsfred2::@4->mode_sixsfred2::@4#1] -- register_copy
// mode_sixsfred2::@4
b4:
// cx&3
// [419] (byte~) mode_sixsfred2::$15 ← (byte) mode_sixsfred2::cx#2 & (byte) 3 -- vbuaa=vbuxx_band_vbuc1
txa
and #3
// (cx&3)*$10
// [420] (byte~) mode_sixsfred2::$16 ← (byte~) mode_sixsfred2::$15 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z _16
// cy&3
// [421] (byte~) mode_sixsfred2::$17 ← (byte) mode_sixsfred2::cy#4 & (byte) 3 -- vbuaa=vbuz1_band_vbuc1
lda #3
and.z cy
// (cx&3)*$10|(cy&3)
// [422] (byte~) mode_sixsfred2::$18 ← (byte~) mode_sixsfred2::$16 | (byte~) mode_sixsfred2::$17 -- vbuaa=vbuz1_bor_vbuaa
ora.z _16
// *col++ = (cx&3)*$10|(cy&3)
// [423] *((byte*) mode_sixsfred2::col#2) ← (byte~) mode_sixsfred2::$18 -- _deref_pbuz1=vbuaa
ldy #0
sta (col),y
// *col++ = (cx&3)*$10|(cy&3);
// [424] (byte*) mode_sixsfred2::col#1 ← ++ (byte*) mode_sixsfred2::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// for(byte cx: 0..39)
// [425] (byte) mode_sixsfred2::cx#1 ← ++ (byte) mode_sixsfred2::cx#2 -- vbuxx=_inc_vbuxx
inx
// [426] if((byte) mode_sixsfred2::cx#1!=(byte) $28) goto mode_sixsfred2::@4 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b4
// mode_sixsfred2::@5
// for(byte cy: 0..24 )
// [427] (byte) mode_sixsfred2::cy#1 ← ++ (byte) mode_sixsfred2::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [428] if((byte) mode_sixsfred2::cy#1!=(byte) $19) goto mode_sixsfred2::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3
// [429] phi from mode_sixsfred2::@5 to mode_sixsfred2::@6 [phi:mode_sixsfred2::@5->mode_sixsfred2::@6]
// [429] phi (byte*) mode_sixsfred2::gfxa#3 = (const byte*) mode_sixsfred2::PLANEA#0 [phi:mode_sixsfred2::@5->mode_sixsfred2::@6#0] -- pbuz1=pbuc1
lda #<PLANEA
sta.z gfxa
lda #>PLANEA
sta.z gfxa+1
// [429] phi (byte) mode_sixsfred2::ay#4 = (byte) 0 [phi:mode_sixsfred2::@5->mode_sixsfred2::@6#1] -- vbuz1=vbuc1
lda #0
sta.z ay
// [429] phi from mode_sixsfred2::@8 to mode_sixsfred2::@6 [phi:mode_sixsfred2::@8->mode_sixsfred2::@6]
// [429] phi (byte*) mode_sixsfred2::gfxa#3 = (byte*) mode_sixsfred2::gfxa#1 [phi:mode_sixsfred2::@8->mode_sixsfred2::@6#0] -- register_copy
// [429] phi (byte) mode_sixsfred2::ay#4 = (byte) mode_sixsfred2::ay#1 [phi:mode_sixsfred2::@8->mode_sixsfred2::@6#1] -- register_copy
// mode_sixsfred2::@6
b6:
// [430] phi from mode_sixsfred2::@6 to mode_sixsfred2::@7 [phi:mode_sixsfred2::@6->mode_sixsfred2::@7]
// [430] phi (byte) mode_sixsfred2::ax#2 = (byte) 0 [phi:mode_sixsfred2::@6->mode_sixsfred2::@7#0] -- vbuxx=vbuc1
ldx #0
// [430] phi (byte*) mode_sixsfred2::gfxa#2 = (byte*) mode_sixsfred2::gfxa#3 [phi:mode_sixsfred2::@6->mode_sixsfred2::@7#1] -- register_copy
// [430] phi from mode_sixsfred2::@7 to mode_sixsfred2::@7 [phi:mode_sixsfred2::@7->mode_sixsfred2::@7]
// [430] phi (byte) mode_sixsfred2::ax#2 = (byte) mode_sixsfred2::ax#1 [phi:mode_sixsfred2::@7->mode_sixsfred2::@7#0] -- register_copy
// [430] phi (byte*) mode_sixsfred2::gfxa#2 = (byte*) mode_sixsfred2::gfxa#1 [phi:mode_sixsfred2::@7->mode_sixsfred2::@7#1] -- register_copy
// mode_sixsfred2::@7
b7:
// ay/2
// [431] (byte~) mode_sixsfred2::$21 ← (byte) mode_sixsfred2::ay#4 >> (byte) 1 -- vbuaa=vbuz1_ror_1
lda.z ay
lsr
// row = (ay/2) & 3
// [432] (byte) mode_sixsfred2::row#0 ← (byte~) mode_sixsfred2::$21 & (byte) 3 -- vbuaa=vbuaa_band_vbuc1
and #3
// *gfxa++ = row_bitmask[row]
// [433] *((byte*) mode_sixsfred2::gfxa#2) ← *((const byte[]) mode_sixsfred2::row_bitmask#0 + (byte) mode_sixsfred2::row#0) -- _deref_pbuz1=pbuc1_derefidx_vbuaa
tay
lda row_bitmask,y
ldy #0
sta (gfxa),y
// *gfxa++ = row_bitmask[row];
// [434] (byte*) mode_sixsfred2::gfxa#1 ← ++ (byte*) mode_sixsfred2::gfxa#2 -- pbuz1=_inc_pbuz1
inc.z gfxa
bne !+
inc.z gfxa+1
!:
// for (byte ax : 0..39)
// [435] (byte) mode_sixsfred2::ax#1 ← ++ (byte) mode_sixsfred2::ax#2 -- vbuxx=_inc_vbuxx
inx
// [436] if((byte) mode_sixsfred2::ax#1!=(byte) $28) goto mode_sixsfred2::@7 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b7
// mode_sixsfred2::@8
// for(byte ay : 0..199)
// [437] (byte) mode_sixsfred2::ay#1 ← ++ (byte) mode_sixsfred2::ay#4 -- vbuz1=_inc_vbuz1
inc.z ay
// [438] if((byte) mode_sixsfred2::ay#1!=(byte) $c8) goto mode_sixsfred2::@6 -- vbuz1_neq_vbuc1_then_la1
lda #$c8
cmp.z ay
bne b6
// [439] phi from mode_sixsfred2::@8 to mode_sixsfred2::@9 [phi:mode_sixsfred2::@8->mode_sixsfred2::@9]
// [439] phi (byte) mode_sixsfred2::by#4 = (byte) 0 [phi:mode_sixsfred2::@8->mode_sixsfred2::@9#0] -- vbuz1=vbuc1
lda #0
sta.z by
// [439] phi (byte*) mode_sixsfred2::gfxb#3 = (const byte*) mode_sixsfred2::PLANEB#0 [phi:mode_sixsfred2::@8->mode_sixsfred2::@9#1] -- pbuz1=pbuc1
lda #<PLANEB
sta.z gfxb
lda #>PLANEB
sta.z gfxb+1
// [439] phi from mode_sixsfred2::@11 to mode_sixsfred2::@9 [phi:mode_sixsfred2::@11->mode_sixsfred2::@9]
// [439] phi (byte) mode_sixsfred2::by#4 = (byte) mode_sixsfred2::by#1 [phi:mode_sixsfred2::@11->mode_sixsfred2::@9#0] -- register_copy
// [439] phi (byte*) mode_sixsfred2::gfxb#3 = (byte*) mode_sixsfred2::gfxb#1 [phi:mode_sixsfred2::@11->mode_sixsfred2::@9#1] -- register_copy
// mode_sixsfred2::@9
b9:
// [440] phi from mode_sixsfred2::@9 to mode_sixsfred2::@10 [phi:mode_sixsfred2::@9->mode_sixsfred2::@10]
// [440] phi (byte) mode_sixsfred2::bx#2 = (byte) 0 [phi:mode_sixsfred2::@9->mode_sixsfred2::@10#0] -- vbuxx=vbuc1
ldx #0
// [440] phi (byte*) mode_sixsfred2::gfxb#2 = (byte*) mode_sixsfred2::gfxb#3 [phi:mode_sixsfred2::@9->mode_sixsfred2::@10#1] -- register_copy
// [440] phi from mode_sixsfred2::@10 to mode_sixsfred2::@10 [phi:mode_sixsfred2::@10->mode_sixsfred2::@10]
// [440] phi (byte) mode_sixsfred2::bx#2 = (byte) mode_sixsfred2::bx#1 [phi:mode_sixsfred2::@10->mode_sixsfred2::@10#0] -- register_copy
// [440] phi (byte*) mode_sixsfred2::gfxb#2 = (byte*) mode_sixsfred2::gfxb#1 [phi:mode_sixsfred2::@10->mode_sixsfred2::@10#1] -- register_copy
// mode_sixsfred2::@10
b10:
// *gfxb++ = %00011011
// [441] *((byte*) mode_sixsfred2::gfxb#2) ← (byte) $1b -- _deref_pbuz1=vbuc1
lda #$1b
ldy #0
sta (gfxb),y
// *gfxb++ = %00011011;
// [442] (byte*) mode_sixsfred2::gfxb#1 ← ++ (byte*) mode_sixsfred2::gfxb#2 -- pbuz1=_inc_pbuz1
inc.z gfxb
bne !+
inc.z gfxb+1
!:
// for ( byte bx : 0..39)
// [443] (byte) mode_sixsfred2::bx#1 ← ++ (byte) mode_sixsfred2::bx#2 -- vbuxx=_inc_vbuxx
inx
// [444] if((byte) mode_sixsfred2::bx#1!=(byte) $28) goto mode_sixsfred2::@10 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b10
// mode_sixsfred2::@11
// for(byte by : 0..199)
// [445] (byte) mode_sixsfred2::by#1 ← ++ (byte) mode_sixsfred2::by#4 -- vbuz1=_inc_vbuz1
inc.z by
// [446] if((byte) mode_sixsfred2::by#1!=(byte) $c8) goto mode_sixsfred2::@9 -- vbuz1_neq_vbuc1_then_la1
lda #$c8
cmp.z by
bne b9
// [447] phi from mode_sixsfred2::@11 to mode_sixsfred2::@12 [phi:mode_sixsfred2::@11->mode_sixsfred2::@12]
// mode_sixsfred2::@12
// mode_ctrl()
// [448] call mode_ctrl
// [155] phi from mode_sixsfred2::@12 to mode_ctrl [phi:mode_sixsfred2::@12->mode_ctrl]
// [155] phi (byte) dtv_control#144 = (const byte) DTV_LINEAR#0 [phi:mode_sixsfred2::@12->mode_ctrl#0] -- vbuz1=vbuc1
lda #DTV_LINEAR
sta.z dtv_control
jsr mode_ctrl
// mode_sixsfred2::@return
// }
// [449] return
rts
row_bitmask: .byte 0, $55, $aa, $ff
}
// mode_hicolmcchar
// High Color Multicolor Character Mode (LINEAR/CHUNK/COLDIS/BMM/ECM = 0, MCM/HICOL = 1)
// Resolution: 160x200 (320x200)
// Normal VIC Adressing:
// VicGfxData[16]: ( VicBank[1:0] & CharBase[2:0] & CharData[7:0] & RowCounter[2:0] )
//GfxData Pixel Shifter (1) if ColorData[3:3] = 0:
// - 0: 8bpp BgColor0[7:0]
// - 1: 8bpp ColorData[7:4] "0" & Color[2:0]
//GfxData Pixel Shifter (2) if ColorData[3:3] = 1:
// - 00: 8bpp BgColor0[7:0]
// - 01: 8bpp BgColor1[7:0]
// - 10: 8bpp BgColor2[7:0]
// - 11: 8bpp ColorData[7:4] "0" & Color[2:0]
mode_hicolmcchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $8400
.label _27 = 7
.label col = $b
.label ch = 4
.label cy = 3
// *DTV_GRAPHICS_VIC_BANK = (byte)((dword)CHARSET/$10000)
// [450] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// *DTV_COLOR_BANK_LO = <((word)(COLORS/$400))
// [451] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const byte*) mode_hicolmcchar::COLORS#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// *DTV_COLOR_BANK_HI = >((word)(COLORS/$400))
// [452] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// *DTV_CONTROL = DTV_HIGHCOLOR
// [453] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR
sta DTV_CONTROL
// *CIA2_PORT_A_DDR = %00000011
// [454] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2_PORT_A_DDR
// *CIA2_PORT_A = %00000011 ^ (byte)((word)CHARSET/$4000)
// [455] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_hicolmcchar::CHARSET#0/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2_PORT_A
// *VIC_CONTROL = VIC_DEN|VIC_RSEL|3
// [456] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// *VIC_CONTROL2 = VIC_CSEL|VIC_MCM
// [457] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL|VIC_MCM
sta VIC_CONTROL2
// *VIC_MEMORY = (byte)((((word)SCREEN&$3fff)/$40)|(((word)CHARSET&$3fff)/$400))
// [458] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_hicolmcchar::CHARSET#0&(word) $3fff/(word) $400 -- _deref_pbuc1=vbuc2
// VIC Memory Pointers
lda #(CHARSET&$3fff)/$400
sta VIC_MEMORY
// [459] phi from mode_hicolmcchar to mode_hicolmcchar::@1 [phi:mode_hicolmcchar->mode_hicolmcchar::@1]
// [459] phi (byte) mode_hicolmcchar::i#2 = (byte) 0 [phi:mode_hicolmcchar->mode_hicolmcchar::@1#0] -- vbuxx=vbuc1
ldx #0
// DTV Palette - Grey Tones
// [459] phi from mode_hicolmcchar::@1 to mode_hicolmcchar::@1 [phi:mode_hicolmcchar::@1->mode_hicolmcchar::@1]
// [459] phi (byte) mode_hicolmcchar::i#2 = (byte) mode_hicolmcchar::i#1 [phi:mode_hicolmcchar::@1->mode_hicolmcchar::@1#0] -- register_copy
// mode_hicolmcchar::@1
b1:
// DTV_PALETTE[i] = i
// [460] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolmcchar::i#2) ← (byte) mode_hicolmcchar::i#2 -- pbuc1_derefidx_vbuxx=vbuxx
txa
sta DTV_PALETTE,x
// for(byte i : 0..$f)
// [461] (byte) mode_hicolmcchar::i#1 ← ++ (byte) mode_hicolmcchar::i#2 -- vbuxx=_inc_vbuxx
inx
// [462] if((byte) mode_hicolmcchar::i#1!=(byte) $10) goto mode_hicolmcchar::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1
// mode_hicolmcchar::@2
// *BORDERCOL = 0
// [463] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDERCOL
// *BGCOL1 = $50
// [464] *((const byte*) BGCOL1#0) ← (byte) $50 -- _deref_pbuc1=vbuc2
lda #$50
sta BGCOL1
// *BGCOL2 = $54
// [465] *((const byte*) BGCOL2#0) ← (byte) $54 -- _deref_pbuc1=vbuc2
lda #$54
sta BGCOL2
// *BGCOL3 = $58
// [466] *((const byte*) BGCOL3#0) ← (byte) $58 -- _deref_pbuc1=vbuc2
lda #$58
sta BGCOL3
// [467] phi from mode_hicolmcchar::@2 to mode_hicolmcchar::@3 [phi:mode_hicolmcchar::@2->mode_hicolmcchar::@3]
// [467] phi (byte*) mode_hicolmcchar::ch#3 = (const byte*) mode_hicolmcchar::SCREEN#0 [phi:mode_hicolmcchar::@2->mode_hicolmcchar::@3#0] -- pbuz1=pbuc1
lda #<SCREEN
sta.z ch
lda #>SCREEN
sta.z ch+1
// [467] phi (byte*) mode_hicolmcchar::col#3 = (const byte*) mode_hicolmcchar::COLORS#0 [phi:mode_hicolmcchar::@2->mode_hicolmcchar::@3#1] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [467] phi (byte) mode_hicolmcchar::cy#4 = (byte) 0 [phi:mode_hicolmcchar::@2->mode_hicolmcchar::@3#2] -- vbuz1=vbuc1
lda #0
sta.z cy
// [467] phi from mode_hicolmcchar::@5 to mode_hicolmcchar::@3 [phi:mode_hicolmcchar::@5->mode_hicolmcchar::@3]
// [467] phi (byte*) mode_hicolmcchar::ch#3 = (byte*) mode_hicolmcchar::ch#1 [phi:mode_hicolmcchar::@5->mode_hicolmcchar::@3#0] -- register_copy
// [467] phi (byte*) mode_hicolmcchar::col#3 = (byte*) mode_hicolmcchar::col#1 [phi:mode_hicolmcchar::@5->mode_hicolmcchar::@3#1] -- register_copy
// [467] phi (byte) mode_hicolmcchar::cy#4 = (byte) mode_hicolmcchar::cy#1 [phi:mode_hicolmcchar::@5->mode_hicolmcchar::@3#2] -- register_copy
// mode_hicolmcchar::@3
b3:
// [468] phi from mode_hicolmcchar::@3 to mode_hicolmcchar::@4 [phi:mode_hicolmcchar::@3->mode_hicolmcchar::@4]
// [468] phi (byte*) mode_hicolmcchar::ch#2 = (byte*) mode_hicolmcchar::ch#3 [phi:mode_hicolmcchar::@3->mode_hicolmcchar::@4#0] -- register_copy
// [468] phi (byte*) mode_hicolmcchar::col#2 = (byte*) mode_hicolmcchar::col#3 [phi:mode_hicolmcchar::@3->mode_hicolmcchar::@4#1] -- register_copy
// [468] phi (byte) mode_hicolmcchar::cx#2 = (byte) 0 [phi:mode_hicolmcchar::@3->mode_hicolmcchar::@4#2] -- vbuxx=vbuc1
ldx #0
// [468] phi from mode_hicolmcchar::@4 to mode_hicolmcchar::@4 [phi:mode_hicolmcchar::@4->mode_hicolmcchar::@4]
// [468] phi (byte*) mode_hicolmcchar::ch#2 = (byte*) mode_hicolmcchar::ch#1 [phi:mode_hicolmcchar::@4->mode_hicolmcchar::@4#0] -- register_copy
// [468] phi (byte*) mode_hicolmcchar::col#2 = (byte*) mode_hicolmcchar::col#1 [phi:mode_hicolmcchar::@4->mode_hicolmcchar::@4#1] -- register_copy
// [468] phi (byte) mode_hicolmcchar::cx#2 = (byte) mode_hicolmcchar::cx#1 [phi:mode_hicolmcchar::@4->mode_hicolmcchar::@4#2] -- register_copy
// mode_hicolmcchar::@4
b4:
// cy&$f
// [469] (byte~) mode_hicolmcchar::$26 ← (byte) mode_hicolmcchar::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// (cy&$f)*$10
// [470] (byte~) mode_hicolmcchar::$27 ← (byte~) mode_hicolmcchar::$26 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z _27
// cx&$f
// [471] (byte~) mode_hicolmcchar::$28 ← (byte) mode_hicolmcchar::cx#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// v = (cy&$f)*$10|(cx&$f)
// [472] (byte) mode_hicolmcchar::v#0 ← (byte~) mode_hicolmcchar::$27 | (byte~) mode_hicolmcchar::$28 -- vbuaa=vbuz1_bor_vbuaa
ora.z _27
// *col++ = v
// [473] *((byte*) mode_hicolmcchar::col#2) ← (byte) mode_hicolmcchar::v#0 -- _deref_pbuz1=vbuaa
ldy #0
sta (col),y
// *col++ = v;
// [474] (byte*) mode_hicolmcchar::col#1 ← ++ (byte*) mode_hicolmcchar::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// *ch++ = v
// [475] *((byte*) mode_hicolmcchar::ch#2) ← (byte) mode_hicolmcchar::v#0 -- _deref_pbuz1=vbuaa
ldy #0
sta (ch),y
// *ch++ = v;
// [476] (byte*) mode_hicolmcchar::ch#1 ← ++ (byte*) mode_hicolmcchar::ch#2 -- pbuz1=_inc_pbuz1
inc.z ch
bne !+
inc.z ch+1
!:
// for(byte cx: 0..39)
// [477] (byte) mode_hicolmcchar::cx#1 ← ++ (byte) mode_hicolmcchar::cx#2 -- vbuxx=_inc_vbuxx
inx
// [478] if((byte) mode_hicolmcchar::cx#1!=(byte) $28) goto mode_hicolmcchar::@4 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b4
// mode_hicolmcchar::@5
// for(byte cy: 0..24 )
// [479] (byte) mode_hicolmcchar::cy#1 ← ++ (byte) mode_hicolmcchar::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [480] if((byte) mode_hicolmcchar::cy#1!=(byte) $19) goto mode_hicolmcchar::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3
// [481] phi from mode_hicolmcchar::@5 to mode_hicolmcchar::@6 [phi:mode_hicolmcchar::@5->mode_hicolmcchar::@6]
// mode_hicolmcchar::@6
// mode_ctrl()
// [482] call mode_ctrl
// [155] phi from mode_hicolmcchar::@6 to mode_ctrl [phi:mode_hicolmcchar::@6->mode_ctrl]
// [155] phi (byte) dtv_control#144 = (const byte) DTV_HIGHCOLOR#0 [phi:mode_hicolmcchar::@6->mode_ctrl#0] -- vbuz1=vbuc1
lda #DTV_HIGHCOLOR
sta.z dtv_control
jsr mode_ctrl
// mode_hicolmcchar::@return
// }
// [483] return
rts
}
// mode_hicolecmchar
// High Color Extended Background Color Character Mode (LINEAR/CHUNK/COLDIS/MCM/BMM = 0, ECM/HICOL = 1)
// Resolution: 320x200
// Normal VIC Adressing:
// VicGfxData[16]: ( VicBank[1:0] & CharBase[2:0] & "00" & CharData[5:0] & RowCounter[2:0] )
// GfxData Pixel Shifter (1)
// - 0: 8bpp Background Color
// - CharData[7:6] 00: 8bpp BgColor0[7:0]
// - CharData[7:6] 01: 8bpp BgColor1[7:0]
// - CharData[7:6] 10: 8bpp BgColor2[7:0]
// - CharData[7:6] 11: 8bpp BgColor3[7:0]
// - 1: 8bpp ColorData[7:0]
mode_hicolecmchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $8400
.label _27 = 8
.label col = 4
.label ch = $b
.label cy = 6
// *DTV_GRAPHICS_VIC_BANK = (byte)((dword)CHARSET/$10000)
// [484] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// *DTV_COLOR_BANK_LO = <((word)(COLORS/$400))
// [485] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const byte*) mode_hicolecmchar::COLORS#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// *DTV_COLOR_BANK_HI = >((word)(COLORS/$400))
// [486] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// *DTV_CONTROL = DTV_HIGHCOLOR
// [487] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR
sta DTV_CONTROL
// *CIA2_PORT_A_DDR = %00000011
// [488] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2_PORT_A_DDR
// *CIA2_PORT_A = %00000011 ^ (byte)((word)CHARSET/$4000)
// [489] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_hicolecmchar::CHARSET#0/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2_PORT_A
// *VIC_CONTROL = VIC_DEN|VIC_RSEL|VIC_ECM|3
// [490] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|VIC_ECM|3
sta VIC_CONTROL
// *VIC_CONTROL2 = VIC_CSEL
// [491] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// *VIC_MEMORY = (byte)((((word)SCREEN&$3fff)/$40)|(((word)CHARSET&$3fff)/$400))
// [492] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_hicolecmchar::CHARSET#0&(word) $3fff/(word) $400 -- _deref_pbuc1=vbuc2
// VIC Memory Pointers
lda #(CHARSET&$3fff)/$400
sta VIC_MEMORY
// [493] phi from mode_hicolecmchar to mode_hicolecmchar::@1 [phi:mode_hicolecmchar->mode_hicolecmchar::@1]
// [493] phi (byte) mode_hicolecmchar::i#2 = (byte) 0 [phi:mode_hicolecmchar->mode_hicolecmchar::@1#0] -- vbuxx=vbuc1
ldx #0
// DTV Palette - Grey Tones
// [493] phi from mode_hicolecmchar::@1 to mode_hicolecmchar::@1 [phi:mode_hicolecmchar::@1->mode_hicolecmchar::@1]
// [493] phi (byte) mode_hicolecmchar::i#2 = (byte) mode_hicolecmchar::i#1 [phi:mode_hicolecmchar::@1->mode_hicolecmchar::@1#0] -- register_copy
// mode_hicolecmchar::@1
b1:
// DTV_PALETTE[i] = i
// [494] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolecmchar::i#2) ← (byte) mode_hicolecmchar::i#2 -- pbuc1_derefidx_vbuxx=vbuxx
txa
sta DTV_PALETTE,x
// for(byte i : 0..$f)
// [495] (byte) mode_hicolecmchar::i#1 ← ++ (byte) mode_hicolecmchar::i#2 -- vbuxx=_inc_vbuxx
inx
// [496] if((byte) mode_hicolecmchar::i#1!=(byte) $10) goto mode_hicolecmchar::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1
// mode_hicolecmchar::@2
// *BORDERCOL = 0
// [497] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDERCOL
// *BGCOL1 = $50
// [498] *((const byte*) BGCOL1#0) ← (byte) $50 -- _deref_pbuc1=vbuc2
lda #$50
sta BGCOL1
// *BGCOL2 = $54
// [499] *((const byte*) BGCOL2#0) ← (byte) $54 -- _deref_pbuc1=vbuc2
lda #$54
sta BGCOL2
// *BGCOL3 = $58
// [500] *((const byte*) BGCOL3#0) ← (byte) $58 -- _deref_pbuc1=vbuc2
lda #$58
sta BGCOL3
// *BGCOL4 = $5c
// [501] *((const byte*) BGCOL4#0) ← (byte) $5c -- _deref_pbuc1=vbuc2
lda #$5c
sta BGCOL4
// [502] phi from mode_hicolecmchar::@2 to mode_hicolecmchar::@3 [phi:mode_hicolecmchar::@2->mode_hicolecmchar::@3]
// [502] phi (byte*) mode_hicolecmchar::ch#3 = (const byte*) mode_hicolecmchar::SCREEN#0 [phi:mode_hicolecmchar::@2->mode_hicolecmchar::@3#0] -- pbuz1=pbuc1
lda #<SCREEN
sta.z ch
lda #>SCREEN
sta.z ch+1
// [502] phi (byte*) mode_hicolecmchar::col#3 = (const byte*) mode_hicolecmchar::COLORS#0 [phi:mode_hicolecmchar::@2->mode_hicolecmchar::@3#1] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [502] phi (byte) mode_hicolecmchar::cy#4 = (byte) 0 [phi:mode_hicolecmchar::@2->mode_hicolecmchar::@3#2] -- vbuz1=vbuc1
lda #0
sta.z cy
// [502] phi from mode_hicolecmchar::@5 to mode_hicolecmchar::@3 [phi:mode_hicolecmchar::@5->mode_hicolecmchar::@3]
// [502] phi (byte*) mode_hicolecmchar::ch#3 = (byte*) mode_hicolecmchar::ch#1 [phi:mode_hicolecmchar::@5->mode_hicolecmchar::@3#0] -- register_copy
// [502] phi (byte*) mode_hicolecmchar::col#3 = (byte*) mode_hicolecmchar::col#1 [phi:mode_hicolecmchar::@5->mode_hicolecmchar::@3#1] -- register_copy
// [502] phi (byte) mode_hicolecmchar::cy#4 = (byte) mode_hicolecmchar::cy#1 [phi:mode_hicolecmchar::@5->mode_hicolecmchar::@3#2] -- register_copy
// mode_hicolecmchar::@3
b3:
// [503] phi from mode_hicolecmchar::@3 to mode_hicolecmchar::@4 [phi:mode_hicolecmchar::@3->mode_hicolecmchar::@4]
// [503] phi (byte*) mode_hicolecmchar::ch#2 = (byte*) mode_hicolecmchar::ch#3 [phi:mode_hicolecmchar::@3->mode_hicolecmchar::@4#0] -- register_copy
// [503] phi (byte*) mode_hicolecmchar::col#2 = (byte*) mode_hicolecmchar::col#3 [phi:mode_hicolecmchar::@3->mode_hicolecmchar::@4#1] -- register_copy
// [503] phi (byte) mode_hicolecmchar::cx#2 = (byte) 0 [phi:mode_hicolecmchar::@3->mode_hicolecmchar::@4#2] -- vbuxx=vbuc1
ldx #0
// [503] phi from mode_hicolecmchar::@4 to mode_hicolecmchar::@4 [phi:mode_hicolecmchar::@4->mode_hicolecmchar::@4]
// [503] phi (byte*) mode_hicolecmchar::ch#2 = (byte*) mode_hicolecmchar::ch#1 [phi:mode_hicolecmchar::@4->mode_hicolecmchar::@4#0] -- register_copy
// [503] phi (byte*) mode_hicolecmchar::col#2 = (byte*) mode_hicolecmchar::col#1 [phi:mode_hicolecmchar::@4->mode_hicolecmchar::@4#1] -- register_copy
// [503] phi (byte) mode_hicolecmchar::cx#2 = (byte) mode_hicolecmchar::cx#1 [phi:mode_hicolecmchar::@4->mode_hicolecmchar::@4#2] -- register_copy
// mode_hicolecmchar::@4
b4:
// cy&$f
// [504] (byte~) mode_hicolecmchar::$26 ← (byte) mode_hicolecmchar::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// (cy&$f)*$10
// [505] (byte~) mode_hicolecmchar::$27 ← (byte~) mode_hicolecmchar::$26 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z _27
// cx&$f
// [506] (byte~) mode_hicolecmchar::$28 ← (byte) mode_hicolecmchar::cx#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// v = (cy&$f)*$10|(cx&$f)
// [507] (byte) mode_hicolecmchar::v#0 ← (byte~) mode_hicolecmchar::$27 | (byte~) mode_hicolecmchar::$28 -- vbuaa=vbuz1_bor_vbuaa
ora.z _27
// *col++ = v
// [508] *((byte*) mode_hicolecmchar::col#2) ← (byte) mode_hicolecmchar::v#0 -- _deref_pbuz1=vbuaa
ldy #0
sta (col),y
// *col++ = v;
// [509] (byte*) mode_hicolecmchar::col#1 ← ++ (byte*) mode_hicolecmchar::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// *ch++ = v
// [510] *((byte*) mode_hicolecmchar::ch#2) ← (byte) mode_hicolecmchar::v#0 -- _deref_pbuz1=vbuaa
ldy #0
sta (ch),y
// *ch++ = v;
// [511] (byte*) mode_hicolecmchar::ch#1 ← ++ (byte*) mode_hicolecmchar::ch#2 -- pbuz1=_inc_pbuz1
inc.z ch
bne !+
inc.z ch+1
!:
// for(byte cx: 0..39)
// [512] (byte) mode_hicolecmchar::cx#1 ← ++ (byte) mode_hicolecmchar::cx#2 -- vbuxx=_inc_vbuxx
inx
// [513] if((byte) mode_hicolecmchar::cx#1!=(byte) $28) goto mode_hicolecmchar::@4 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b4
// mode_hicolecmchar::@5
// for(byte cy: 0..24 )
// [514] (byte) mode_hicolecmchar::cy#1 ← ++ (byte) mode_hicolecmchar::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [515] if((byte) mode_hicolecmchar::cy#1!=(byte) $19) goto mode_hicolecmchar::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3
// [516] phi from mode_hicolecmchar::@5 to mode_hicolecmchar::@6 [phi:mode_hicolecmchar::@5->mode_hicolecmchar::@6]
// mode_hicolecmchar::@6
// mode_ctrl()
// [517] call mode_ctrl
// [155] phi from mode_hicolecmchar::@6 to mode_ctrl [phi:mode_hicolecmchar::@6->mode_ctrl]
// [155] phi (byte) dtv_control#144 = (const byte) DTV_HIGHCOLOR#0 [phi:mode_hicolecmchar::@6->mode_ctrl#0] -- vbuz1=vbuc1
lda #DTV_HIGHCOLOR
sta.z dtv_control
jsr mode_ctrl
// mode_hicolecmchar::@return
// }
// [518] return
rts
}
// mode_hicolstdchar
// High Color Standard Character Mode (LINEAR/CHUNK/COLDIS/ECM/MCM/BMM = 0, HICOL = 1)
// Resolution: 320x200
// Normal VIC Adressing:
// VicGfxData[16]: ( VicBank[1:0] & CharBase[2:0] & CharData[7:0] & RowCounter[2:0] )
// Pixel Shifter (1)
// - 0: 8bpp BgColor0[7:0]
// - 1: 8bpp ColorData[7:0]
mode_hicolstdchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $8400
.label _26 = 8
.label col = $b
.label ch = 9
.label cy = 7
// *DTV_GRAPHICS_VIC_BANK = (byte)((dword)CHARSET/$10000)
// [519] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// *DTV_COLOR_BANK_LO = <((word)(COLORS/$400))
// [520] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const byte*) mode_hicolstdchar::COLORS#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// *DTV_COLOR_BANK_HI = >((word)(COLORS/$400))
// [521] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// *DTV_CONTROL = DTV_HIGHCOLOR
// [522] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR
sta DTV_CONTROL
// *CIA2_PORT_A_DDR = %00000011
// [523] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2_PORT_A_DDR
// *CIA2_PORT_A = %00000011 ^ (byte)((word)CHARSET/$4000)
// [524] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_hicolstdchar::CHARSET#0/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2_PORT_A
// *VIC_CONTROL = VIC_DEN|VIC_RSEL|3
// [525] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// *VIC_CONTROL2 = VIC_CSEL
// [526] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// *VIC_MEMORY = (byte)((((word)SCREEN&$3fff)/$40)|(((word)CHARSET&$3fff)/$400))
// [527] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_hicolstdchar::CHARSET#0&(word) $3fff/(word) $400 -- _deref_pbuc1=vbuc2
// VIC Memory Pointers
lda #(CHARSET&$3fff)/$400
sta VIC_MEMORY
// [528] phi from mode_hicolstdchar to mode_hicolstdchar::@1 [phi:mode_hicolstdchar->mode_hicolstdchar::@1]
// [528] phi (byte) mode_hicolstdchar::i#2 = (byte) 0 [phi:mode_hicolstdchar->mode_hicolstdchar::@1#0] -- vbuxx=vbuc1
ldx #0
// DTV Palette - Grey Tones
// [528] phi from mode_hicolstdchar::@1 to mode_hicolstdchar::@1 [phi:mode_hicolstdchar::@1->mode_hicolstdchar::@1]
// [528] phi (byte) mode_hicolstdchar::i#2 = (byte) mode_hicolstdchar::i#1 [phi:mode_hicolstdchar::@1->mode_hicolstdchar::@1#0] -- register_copy
// mode_hicolstdchar::@1
b1:
// DTV_PALETTE[i] = i
// [529] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolstdchar::i#2) ← (byte) mode_hicolstdchar::i#2 -- pbuc1_derefidx_vbuxx=vbuxx
txa
sta DTV_PALETTE,x
// for(byte i : 0..$f)
// [530] (byte) mode_hicolstdchar::i#1 ← ++ (byte) mode_hicolstdchar::i#2 -- vbuxx=_inc_vbuxx
inx
// [531] if((byte) mode_hicolstdchar::i#1!=(byte) $10) goto mode_hicolstdchar::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1
// mode_hicolstdchar::@2
// *BGCOL = 0
// [532] *((const byte*) BGCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BGCOL
// *BORDERCOL = 0
// [533] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta BORDERCOL
// [534] phi from mode_hicolstdchar::@2 to mode_hicolstdchar::@3 [phi:mode_hicolstdchar::@2->mode_hicolstdchar::@3]
// [534] phi (byte*) mode_hicolstdchar::ch#3 = (const byte*) mode_hicolstdchar::SCREEN#0 [phi:mode_hicolstdchar::@2->mode_hicolstdchar::@3#0] -- pbuz1=pbuc1
lda #<SCREEN
sta.z ch
lda #>SCREEN
sta.z ch+1
// [534] phi (byte*) mode_hicolstdchar::col#3 = (const byte*) mode_hicolstdchar::COLORS#0 [phi:mode_hicolstdchar::@2->mode_hicolstdchar::@3#1] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [534] phi (byte) mode_hicolstdchar::cy#4 = (byte) 0 [phi:mode_hicolstdchar::@2->mode_hicolstdchar::@3#2] -- vbuz1=vbuc1
lda #0
sta.z cy
// [534] phi from mode_hicolstdchar::@5 to mode_hicolstdchar::@3 [phi:mode_hicolstdchar::@5->mode_hicolstdchar::@3]
// [534] phi (byte*) mode_hicolstdchar::ch#3 = (byte*) mode_hicolstdchar::ch#1 [phi:mode_hicolstdchar::@5->mode_hicolstdchar::@3#0] -- register_copy
// [534] phi (byte*) mode_hicolstdchar::col#3 = (byte*) mode_hicolstdchar::col#1 [phi:mode_hicolstdchar::@5->mode_hicolstdchar::@3#1] -- register_copy
// [534] phi (byte) mode_hicolstdchar::cy#4 = (byte) mode_hicolstdchar::cy#1 [phi:mode_hicolstdchar::@5->mode_hicolstdchar::@3#2] -- register_copy
// mode_hicolstdchar::@3
b3:
// [535] phi from mode_hicolstdchar::@3 to mode_hicolstdchar::@4 [phi:mode_hicolstdchar::@3->mode_hicolstdchar::@4]
// [535] phi (byte*) mode_hicolstdchar::ch#2 = (byte*) mode_hicolstdchar::ch#3 [phi:mode_hicolstdchar::@3->mode_hicolstdchar::@4#0] -- register_copy
// [535] phi (byte*) mode_hicolstdchar::col#2 = (byte*) mode_hicolstdchar::col#3 [phi:mode_hicolstdchar::@3->mode_hicolstdchar::@4#1] -- register_copy
// [535] phi (byte) mode_hicolstdchar::cx#2 = (byte) 0 [phi:mode_hicolstdchar::@3->mode_hicolstdchar::@4#2] -- vbuxx=vbuc1
ldx #0
// [535] phi from mode_hicolstdchar::@4 to mode_hicolstdchar::@4 [phi:mode_hicolstdchar::@4->mode_hicolstdchar::@4]
// [535] phi (byte*) mode_hicolstdchar::ch#2 = (byte*) mode_hicolstdchar::ch#1 [phi:mode_hicolstdchar::@4->mode_hicolstdchar::@4#0] -- register_copy
// [535] phi (byte*) mode_hicolstdchar::col#2 = (byte*) mode_hicolstdchar::col#1 [phi:mode_hicolstdchar::@4->mode_hicolstdchar::@4#1] -- register_copy
// [535] phi (byte) mode_hicolstdchar::cx#2 = (byte) mode_hicolstdchar::cx#1 [phi:mode_hicolstdchar::@4->mode_hicolstdchar::@4#2] -- register_copy
// mode_hicolstdchar::@4
b4:
// cy&$f
// [536] (byte~) mode_hicolstdchar::$25 ← (byte) mode_hicolstdchar::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// (cy&$f)*$10
// [537] (byte~) mode_hicolstdchar::$26 ← (byte~) mode_hicolstdchar::$25 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z _26
// cx&$f
// [538] (byte~) mode_hicolstdchar::$27 ← (byte) mode_hicolstdchar::cx#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// v = (cy&$f)*$10|(cx&$f)
// [539] (byte) mode_hicolstdchar::v#0 ← (byte~) mode_hicolstdchar::$26 | (byte~) mode_hicolstdchar::$27 -- vbuaa=vbuz1_bor_vbuaa
ora.z _26
// *col++ = v
// [540] *((byte*) mode_hicolstdchar::col#2) ← (byte) mode_hicolstdchar::v#0 -- _deref_pbuz1=vbuaa
ldy #0
sta (col),y
// *col++ = v;
// [541] (byte*) mode_hicolstdchar::col#1 ← ++ (byte*) mode_hicolstdchar::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// *ch++ = v
// [542] *((byte*) mode_hicolstdchar::ch#2) ← (byte) mode_hicolstdchar::v#0 -- _deref_pbuz1=vbuaa
ldy #0
sta (ch),y
// *ch++ = v;
// [543] (byte*) mode_hicolstdchar::ch#1 ← ++ (byte*) mode_hicolstdchar::ch#2 -- pbuz1=_inc_pbuz1
inc.z ch
bne !+
inc.z ch+1
!:
// for(byte cx: 0..39)
// [544] (byte) mode_hicolstdchar::cx#1 ← ++ (byte) mode_hicolstdchar::cx#2 -- vbuxx=_inc_vbuxx
inx
// [545] if((byte) mode_hicolstdchar::cx#1!=(byte) $28) goto mode_hicolstdchar::@4 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b4
// mode_hicolstdchar::@5
// for(byte cy: 0..24 )
// [546] (byte) mode_hicolstdchar::cy#1 ← ++ (byte) mode_hicolstdchar::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [547] if((byte) mode_hicolstdchar::cy#1!=(byte) $19) goto mode_hicolstdchar::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3
// [548] phi from mode_hicolstdchar::@5 to mode_hicolstdchar::@6 [phi:mode_hicolstdchar::@5->mode_hicolstdchar::@6]
// mode_hicolstdchar::@6
// mode_ctrl()
// [549] call mode_ctrl
// [155] phi from mode_hicolstdchar::@6 to mode_ctrl [phi:mode_hicolstdchar::@6->mode_ctrl]
// [155] phi (byte) dtv_control#144 = (const byte) DTV_HIGHCOLOR#0 [phi:mode_hicolstdchar::@6->mode_ctrl#0] -- vbuz1=vbuc1
lda #DTV_HIGHCOLOR
sta.z dtv_control
jsr mode_ctrl
// mode_hicolstdchar::@return
// }
// [550] return
rts
}
// mode_stdbitmap
// Standard Bitmap Mode (LINEAR/HICOL/CHUNK/COLDIS/MCM/ECM = 0, BMM = 1)
// Resolution: 320x200
// Normal VIC Adressing:
// VicGfxData[16]: ( VicBank[1:0] & CharBase[2:2] & Matrix[9:0] & RowCounter[2:0] )
// Pixel Shifter (1)
// - 0: 4bpp CharData[3:0]
// - 1: 4bpp CharData[7:4]
mode_stdbitmap: {
.label SCREEN = $4000
.label BITMAP = $6000
.const lines_cnt = 9
.label col2 = $d
.label ch = 9
.label cy = 7
.label l = $e
// *DTV_GRAPHICS_VIC_BANK = (byte)((dword)BITMAP/$10000)
// [551] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// *DTV_CONTROL = 0
// [552] *((const byte*) DTV_CONTROL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_CONTROL
// *CIA2_PORT_A_DDR = %00000011
// [553] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2_PORT_A_DDR
// *CIA2_PORT_A = %00000011 ^ (byte)((word)BITMAP/$4000)
// [554] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_stdbitmap::BITMAP#0/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^BITMAP/$4000
sta CIA2_PORT_A
// *VIC_CONTROL = VIC_BMM|VIC_DEN|VIC_RSEL|3
// [555] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_BMM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// *VIC_CONTROL2 = VIC_CSEL
// [556] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// *VIC_MEMORY = (byte)((((word)SCREEN&$3fff)/$40)|(((word)BITMAP&$3fff)/$400))
// [557] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_stdbitmap::BITMAP#0&(word) $3fff/(word) $400 -- _deref_pbuc1=vbuc2
// VIC Memory Pointers
lda #(BITMAP&$3fff)/$400
sta VIC_MEMORY
// [558] phi from mode_stdbitmap to mode_stdbitmap::@1 [phi:mode_stdbitmap->mode_stdbitmap::@1]
// [558] phi (byte) mode_stdbitmap::i#2 = (byte) 0 [phi:mode_stdbitmap->mode_stdbitmap::@1#0] -- vbuxx=vbuc1
ldx #0
// DTV Palette - default
// [558] phi from mode_stdbitmap::@1 to mode_stdbitmap::@1 [phi:mode_stdbitmap::@1->mode_stdbitmap::@1]
// [558] phi (byte) mode_stdbitmap::i#2 = (byte) mode_stdbitmap::i#1 [phi:mode_stdbitmap::@1->mode_stdbitmap::@1#0] -- register_copy
// mode_stdbitmap::@1
b1:
// DTV_PALETTE[i] = DTV_PALETTE_DEFAULT[i]
// [559] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdbitmap::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdbitmap::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx
lda DTV_PALETTE_DEFAULT,x
sta DTV_PALETTE,x
// for(byte i : 0..$f)
// [560] (byte) mode_stdbitmap::i#1 ← ++ (byte) mode_stdbitmap::i#2 -- vbuxx=_inc_vbuxx
inx
// [561] if((byte) mode_stdbitmap::i#1!=(byte) $10) goto mode_stdbitmap::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1
// mode_stdbitmap::@2
// *BGCOL = BLACK
// [562] *((const byte*) BGCOL#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #BLACK
sta BGCOL
// *BORDERCOL = BLACK
// [563] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2
sta BORDERCOL
// [564] phi from mode_stdbitmap::@2 to mode_stdbitmap::@3 [phi:mode_stdbitmap::@2->mode_stdbitmap::@3]
// [564] phi (byte*) mode_stdbitmap::ch#3 = (const byte*) mode_stdbitmap::SCREEN#0 [phi:mode_stdbitmap::@2->mode_stdbitmap::@3#0] -- pbuz1=pbuc1
lda #<SCREEN
sta.z ch
lda #>SCREEN
sta.z ch+1
// [564] phi (byte) mode_stdbitmap::cy#4 = (byte) 0 [phi:mode_stdbitmap::@2->mode_stdbitmap::@3#1] -- vbuz1=vbuc1
lda #0
sta.z cy
// [564] phi from mode_stdbitmap::@5 to mode_stdbitmap::@3 [phi:mode_stdbitmap::@5->mode_stdbitmap::@3]
// [564] phi (byte*) mode_stdbitmap::ch#3 = (byte*) mode_stdbitmap::ch#1 [phi:mode_stdbitmap::@5->mode_stdbitmap::@3#0] -- register_copy
// [564] phi (byte) mode_stdbitmap::cy#4 = (byte) mode_stdbitmap::cy#1 [phi:mode_stdbitmap::@5->mode_stdbitmap::@3#1] -- register_copy
// mode_stdbitmap::@3
b3:
// [565] phi from mode_stdbitmap::@3 to mode_stdbitmap::@4 [phi:mode_stdbitmap::@3->mode_stdbitmap::@4]
// [565] phi (byte*) mode_stdbitmap::ch#2 = (byte*) mode_stdbitmap::ch#3 [phi:mode_stdbitmap::@3->mode_stdbitmap::@4#0] -- register_copy
// [565] phi (byte) mode_stdbitmap::cx#2 = (byte) 0 [phi:mode_stdbitmap::@3->mode_stdbitmap::@4#1] -- vbuxx=vbuc1
ldx #0
// [565] phi from mode_stdbitmap::@4 to mode_stdbitmap::@4 [phi:mode_stdbitmap::@4->mode_stdbitmap::@4]
// [565] phi (byte*) mode_stdbitmap::ch#2 = (byte*) mode_stdbitmap::ch#1 [phi:mode_stdbitmap::@4->mode_stdbitmap::@4#0] -- register_copy
// [565] phi (byte) mode_stdbitmap::cx#2 = (byte) mode_stdbitmap::cx#1 [phi:mode_stdbitmap::@4->mode_stdbitmap::@4#1] -- register_copy
// mode_stdbitmap::@4
b4:
// cx+cy
// [566] (byte~) mode_stdbitmap::$22 ← (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#4 -- vbuaa=vbuxx_plus_vbuz1
txa
clc
adc.z cy
// col = (cx+cy)&$f
// [567] (byte) mode_stdbitmap::col#0 ← (byte~) mode_stdbitmap::$22 & (byte) $f -- vbuyy=vbuaa_band_vbuc1
and #$f
tay
// col2 = ($f-col)
// [568] (byte) mode_stdbitmap::col2#0 ← (byte) $f - (byte) mode_stdbitmap::col#0 -- vbuz1=vbuc1_minus_vbuyy
tya
eor #$ff
clc
adc #$f+1
sta.z col2
// col*$10
// [569] (byte~) mode_stdbitmap::$25 ← (byte) mode_stdbitmap::col#0 << (byte) 4 -- vbuaa=vbuyy_rol_4
tya
asl
asl
asl
asl
// col*$10 | col2
// [570] (byte~) mode_stdbitmap::$26 ← (byte~) mode_stdbitmap::$25 | (byte) mode_stdbitmap::col2#0 -- vbuaa=vbuaa_bor_vbuz1
ora.z col2
// *ch++ = col*$10 | col2
// [571] *((byte*) mode_stdbitmap::ch#2) ← (byte~) mode_stdbitmap::$26 -- _deref_pbuz1=vbuaa
ldy #0
sta (ch),y
// *ch++ = col*$10 | col2;
// [572] (byte*) mode_stdbitmap::ch#1 ← ++ (byte*) mode_stdbitmap::ch#2 -- pbuz1=_inc_pbuz1
inc.z ch
bne !+
inc.z ch+1
!:
// for(byte cx: 0..39)
// [573] (byte) mode_stdbitmap::cx#1 ← ++ (byte) mode_stdbitmap::cx#2 -- vbuxx=_inc_vbuxx
inx
// [574] if((byte) mode_stdbitmap::cx#1!=(byte) $28) goto mode_stdbitmap::@4 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b4
// mode_stdbitmap::@5
// for(byte cy: 0..24 )
// [575] (byte) mode_stdbitmap::cy#1 ← ++ (byte) mode_stdbitmap::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [576] if((byte) mode_stdbitmap::cy#1!=(byte) $19) goto mode_stdbitmap::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3
// [577] phi from mode_stdbitmap::@5 to mode_stdbitmap::@6 [phi:mode_stdbitmap::@5->mode_stdbitmap::@6]
// mode_stdbitmap::@6
// bitmap_init(BITMAP)
// [578] call bitmap_init
// [732] phi from mode_stdbitmap::@6 to bitmap_init [phi:mode_stdbitmap::@6->bitmap_init]
jsr bitmap_init
// [579] phi from mode_stdbitmap::@6 to mode_stdbitmap::@10 [phi:mode_stdbitmap::@6->mode_stdbitmap::@10]
// mode_stdbitmap::@10
// bitmap_clear()
// [580] call bitmap_clear
jsr bitmap_clear
// [581] phi from mode_stdbitmap::@10 to mode_stdbitmap::@7 [phi:mode_stdbitmap::@10->mode_stdbitmap::@7]
// [581] phi (byte) mode_stdbitmap::l#2 = (byte) 0 [phi:mode_stdbitmap::@10->mode_stdbitmap::@7#0] -- vbuz1=vbuc1
lda #0
sta.z l
// mode_stdbitmap::@7
b7:
// for(byte l=0; l<lines_cnt;l++)
// [582] if((byte) mode_stdbitmap::l#2<(const byte) mode_stdbitmap::lines_cnt#0) goto mode_stdbitmap::@8 -- vbuz1_lt_vbuc1_then_la1
lda.z l
cmp #lines_cnt
bcc b8
// [583] phi from mode_stdbitmap::@7 to mode_stdbitmap::@9 [phi:mode_stdbitmap::@7->mode_stdbitmap::@9]
// mode_stdbitmap::@9
// mode_ctrl()
// [584] call mode_ctrl
// [155] phi from mode_stdbitmap::@9 to mode_ctrl [phi:mode_stdbitmap::@9->mode_ctrl]
// [155] phi (byte) dtv_control#144 = (byte) 0 [phi:mode_stdbitmap::@9->mode_ctrl#0] -- vbuz1=vbuc1
lda #0
sta.z dtv_control
jsr mode_ctrl
// mode_stdbitmap::@return
// }
// [585] return
rts
// mode_stdbitmap::@8
b8:
// bitmap_line(lines_x[l], lines_x[l+1], lines_y[l], lines_y[l+1])
// [586] (byte) bitmap_line::x0#0 ← *((const byte[]) mode_stdbitmap::lines_x#0 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2
ldy.z l
lda lines_x,y
sta.z bitmap_line.x0
// [587] (byte) bitmap_line::x1#0 ← *((const byte[]) mode_stdbitmap::lines_x#0+(byte) 1 + (byte) mode_stdbitmap::l#2) -- vbuxx=pbuc1_derefidx_vbuz1
ldx lines_x+1,y
// [588] (byte) bitmap_line::y0#0 ← *((const byte[]) mode_stdbitmap::lines_y#0 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2
lda lines_y,y
sta.z bitmap_line.y0
// [589] (byte) bitmap_line::y1#0 ← *((const byte[]) mode_stdbitmap::lines_y#0+(byte) 1 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2
lda lines_y+1,y
sta.z bitmap_line.y1
// [590] call bitmap_line
jsr bitmap_line
// mode_stdbitmap::@11
// for(byte l=0; l<lines_cnt;l++)
// [591] (byte) mode_stdbitmap::l#1 ← ++ (byte) mode_stdbitmap::l#2 -- vbuz1=_inc_vbuz1
inc.z l
// [581] phi from mode_stdbitmap::@11 to mode_stdbitmap::@7 [phi:mode_stdbitmap::@11->mode_stdbitmap::@7]
// [581] phi (byte) mode_stdbitmap::l#2 = (byte) mode_stdbitmap::l#1 [phi:mode_stdbitmap::@11->mode_stdbitmap::@7#0] -- register_copy
jmp b7
lines_x: .byte 0, $ff, $ff, 0, 0, $80, $ff, $80, 0, $80
lines_y: .byte 0, 0, $c7, $c7, 0, 0, $64, $c7, $64, 0
}
// bitmap_line
// Draw a line on the bitmap
// bitmap_line(byte zeropage(6) x0, byte register(X) x1, byte zeropage(8) y0, byte zeropage(3) y1)
bitmap_line: {
.label xd = 7
.label x0 = 6
.label y0 = 8
.label y1 = 3
// if(x0<x1)
// [592] if((byte) bitmap_line::x0#0<(byte) bitmap_line::x1#0) goto bitmap_line::@1 -- vbuz1_lt_vbuxx_then_la1
txa
cmp.z x0
beq !+
bcs b1
!:
// bitmap_line::@2
// xd = x0-x1
// [593] (byte) bitmap_line::xd#2 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 -- vbuz1=vbuz2_minus_vbuxx
txa
eor #$ff
sec
adc.z x0
sta.z xd
// if(y0<y1)
// [594] if((byte) bitmap_line::y0#0<(byte) bitmap_line::y1#0) goto bitmap_line::@7 -- vbuz1_lt_vbuz2_then_la1
lda.z y0
cmp.z y1
bcc b7
// bitmap_line::@3
// yd = y0-y1
// [595] (byte) bitmap_line::yd#2 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuyy=vbuz1_minus_vbuz2
sec
sbc.z y1
tay
// if(yd<xd)
// [596] if((byte) bitmap_line::yd#2<(byte) bitmap_line::xd#2) goto bitmap_line::@8 -- vbuyy_lt_vbuz1_then_la1
cpy.z xd
bcc b8
// bitmap_line::@4
// bitmap_line_ydxi(y1, x1, y0, yd, xd)
// [597] (byte) bitmap_line_ydxi::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2
lda.z y1
sta.z bitmap_line_ydxi.y
// [598] (byte) bitmap_line_ydxi::x#0 ← (byte) bitmap_line::x1#0
// [599] (byte) bitmap_line_ydxi::y1#0 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2
lda.z y0
sta.z bitmap_line_ydxi.y1
// [600] (byte) bitmap_line_ydxi::yd#0 ← (byte) bitmap_line::yd#2 -- vbuz1=vbuyy
sty.z bitmap_line_ydxi.yd
// [601] (byte) bitmap_line_ydxi::xd#0 ← (byte) bitmap_line::xd#2
// [602] call bitmap_line_ydxi
// [676] phi from bitmap_line::@4 to bitmap_line_ydxi [phi:bitmap_line::@4->bitmap_line_ydxi]
// [676] phi (byte) bitmap_line_ydxi::y1#6 = (byte) bitmap_line_ydxi::y1#0 [phi:bitmap_line::@4->bitmap_line_ydxi#0] -- register_copy
// [676] phi (byte) bitmap_line_ydxi::yd#5 = (byte) bitmap_line_ydxi::yd#0 [phi:bitmap_line::@4->bitmap_line_ydxi#1] -- register_copy
// [676] phi (byte) bitmap_line_ydxi::y#6 = (byte) bitmap_line_ydxi::y#0 [phi:bitmap_line::@4->bitmap_line_ydxi#2] -- register_copy
// [676] phi (byte) bitmap_line_ydxi::x#5 = (byte) bitmap_line_ydxi::x#0 [phi:bitmap_line::@4->bitmap_line_ydxi#3] -- register_copy
// [676] phi (byte) bitmap_line_ydxi::xd#2 = (byte) bitmap_line_ydxi::xd#0 [phi:bitmap_line::@4->bitmap_line_ydxi#4] -- register_copy
jsr bitmap_line_ydxi
// bitmap_line::@return
// }
// [603] return
rts
// bitmap_line::@8
b8:
// bitmap_line_xdyi(x1, y1, x0, xd, yd)
// [604] (byte) bitmap_line_xdyi::x#0 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuxx
stx.z bitmap_line_xdyi.x
// [605] (byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2
lda.z y1
sta.z bitmap_line_xdyi.y
// [606] (byte) bitmap_line_xdyi::x1#0 ← (byte) bitmap_line::x0#0
// [607] (byte) bitmap_line_xdyi::xd#0 ← (byte) bitmap_line::xd#2
// [608] (byte) bitmap_line_xdyi::yd#0 ← (byte) bitmap_line::yd#2 -- vbuz1=vbuyy
sty.z bitmap_line_xdyi.yd
// [609] call bitmap_line_xdyi
// [654] phi from bitmap_line::@8 to bitmap_line_xdyi [phi:bitmap_line::@8->bitmap_line_xdyi]
// [654] phi (byte) bitmap_line_xdyi::x1#6 = (byte) bitmap_line_xdyi::x1#0 [phi:bitmap_line::@8->bitmap_line_xdyi#0] -- register_copy
// [654] phi (byte) bitmap_line_xdyi::xd#5 = (byte) bitmap_line_xdyi::xd#0 [phi:bitmap_line::@8->bitmap_line_xdyi#1] -- register_copy
// [654] phi (byte) bitmap_line_xdyi::y#5 = (byte) bitmap_line_xdyi::y#0 [phi:bitmap_line::@8->bitmap_line_xdyi#2] -- register_copy
// [654] phi (byte) bitmap_line_xdyi::x#6 = (byte) bitmap_line_xdyi::x#0 [phi:bitmap_line::@8->bitmap_line_xdyi#3] -- register_copy
// [654] phi (byte) bitmap_line_xdyi::yd#2 = (byte) bitmap_line_xdyi::yd#0 [phi:bitmap_line::@8->bitmap_line_xdyi#4] -- register_copy
jsr bitmap_line_xdyi
rts
// bitmap_line::@7
b7:
// yd = y1-y0
// [610] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuyy=vbuz1_minus_vbuz2
lda.z y1
sec
sbc.z y0
tay
// if(yd<xd)
// [611] if((byte) bitmap_line::yd#1<(byte) bitmap_line::xd#2) goto bitmap_line::@9 -- vbuyy_lt_vbuz1_then_la1
cpy.z xd
bcc b9
// bitmap_line::@10
// bitmap_line_ydxd(y0, x0, y1, yd, xd)
// [612] (byte) bitmap_line_ydxd::y#0 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2
lda.z y0
sta.z bitmap_line_ydxd.y
// [613] (byte) bitmap_line_ydxd::x#0 ← (byte) bitmap_line::x0#0 -- vbuxx=vbuz1
ldx.z x0
// [614] (byte) bitmap_line_ydxd::y1#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2
lda.z y1
sta.z bitmap_line_ydxd.y1
// [615] (byte) bitmap_line_ydxd::yd#0 ← (byte) bitmap_line::yd#1 -- vbuz1=vbuyy
sty.z bitmap_line_ydxd.yd
// [616] (byte) bitmap_line_ydxd::xd#0 ← (byte) bitmap_line::xd#2
// [617] call bitmap_line_ydxd
// [706] phi from bitmap_line::@10 to bitmap_line_ydxd [phi:bitmap_line::@10->bitmap_line_ydxd]
// [706] phi (byte) bitmap_line_ydxd::y1#6 = (byte) bitmap_line_ydxd::y1#0 [phi:bitmap_line::@10->bitmap_line_ydxd#0] -- register_copy
// [706] phi (byte) bitmap_line_ydxd::yd#5 = (byte) bitmap_line_ydxd::yd#0 [phi:bitmap_line::@10->bitmap_line_ydxd#1] -- register_copy
// [706] phi (byte) bitmap_line_ydxd::y#7 = (byte) bitmap_line_ydxd::y#0 [phi:bitmap_line::@10->bitmap_line_ydxd#2] -- register_copy
// [706] phi (byte) bitmap_line_ydxd::x#5 = (byte) bitmap_line_ydxd::x#0 [phi:bitmap_line::@10->bitmap_line_ydxd#3] -- register_copy
// [706] phi (byte) bitmap_line_ydxd::xd#2 = (byte) bitmap_line_ydxd::xd#0 [phi:bitmap_line::@10->bitmap_line_ydxd#4] -- register_copy
jsr bitmap_line_ydxd
rts
// bitmap_line::@9
b9:
// bitmap_line_xdyd(x1, y1, x0, xd, yd)
// [618] (byte) bitmap_line_xdyd::x#0 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuxx
stx.z bitmap_line_xdyd.x
// [619] (byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2
lda.z y1
sta.z bitmap_line_xdyd.y
// [620] (byte) bitmap_line_xdyd::x1#0 ← (byte) bitmap_line::x0#0
// [621] (byte) bitmap_line_xdyd::xd#0 ← (byte) bitmap_line::xd#2
// [622] (byte) bitmap_line_xdyd::yd#0 ← (byte) bitmap_line::yd#1 -- vbuz1=vbuyy
sty.z bitmap_line_xdyd.yd
// [623] call bitmap_line_xdyd
// [691] phi from bitmap_line::@9 to bitmap_line_xdyd [phi:bitmap_line::@9->bitmap_line_xdyd]
// [691] phi (byte) bitmap_line_xdyd::x1#6 = (byte) bitmap_line_xdyd::x1#0 [phi:bitmap_line::@9->bitmap_line_xdyd#0] -- register_copy
// [691] phi (byte) bitmap_line_xdyd::xd#5 = (byte) bitmap_line_xdyd::xd#0 [phi:bitmap_line::@9->bitmap_line_xdyd#1] -- register_copy
// [691] phi (byte) bitmap_line_xdyd::y#5 = (byte) bitmap_line_xdyd::y#0 [phi:bitmap_line::@9->bitmap_line_xdyd#2] -- register_copy
// [691] phi (byte) bitmap_line_xdyd::x#6 = (byte) bitmap_line_xdyd::x#0 [phi:bitmap_line::@9->bitmap_line_xdyd#3] -- register_copy
// [691] phi (byte) bitmap_line_xdyd::yd#2 = (byte) bitmap_line_xdyd::yd#0 [phi:bitmap_line::@9->bitmap_line_xdyd#4] -- register_copy
jsr bitmap_line_xdyd
rts
// bitmap_line::@1
b1:
// xd = x1-x0
// [624] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 -- vbuz1=vbuxx_minus_vbuz2
txa
sec
sbc.z x0
sta.z xd
// if(y0<y1)
// [625] if((byte) bitmap_line::y0#0<(byte) bitmap_line::y1#0) goto bitmap_line::@11 -- vbuz1_lt_vbuz2_then_la1
lda.z y0
cmp.z y1
bcc b11
// bitmap_line::@5
// yd = y0-y1
// [626] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuyy=vbuz1_minus_vbuz2
sec
sbc.z y1
tay
// if(yd<xd)
// [627] if((byte) bitmap_line::yd#10<(byte) bitmap_line::xd#1) goto bitmap_line::@12 -- vbuyy_lt_vbuz1_then_la1
cpy.z xd
bcc b12
// bitmap_line::@6
// bitmap_line_ydxd(y1, x1, y0, yd, xd)
// [628] (byte) bitmap_line_ydxd::y#1 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2
lda.z y1
sta.z bitmap_line_ydxd.y
// [629] (byte) bitmap_line_ydxd::x#1 ← (byte) bitmap_line::x1#0
// [630] (byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y0#0
// [631] (byte) bitmap_line_ydxd::yd#1 ← (byte) bitmap_line::yd#10 -- vbuz1=vbuyy
sty.z bitmap_line_ydxd.yd
// [632] (byte) bitmap_line_ydxd::xd#1 ← (byte) bitmap_line::xd#1
// [633] call bitmap_line_ydxd
// [706] phi from bitmap_line::@6 to bitmap_line_ydxd [phi:bitmap_line::@6->bitmap_line_ydxd]
// [706] phi (byte) bitmap_line_ydxd::y1#6 = (byte) bitmap_line_ydxd::y1#1 [phi:bitmap_line::@6->bitmap_line_ydxd#0] -- register_copy
// [706] phi (byte) bitmap_line_ydxd::yd#5 = (byte) bitmap_line_ydxd::yd#1 [phi:bitmap_line::@6->bitmap_line_ydxd#1] -- register_copy
// [706] phi (byte) bitmap_line_ydxd::y#7 = (byte) bitmap_line_ydxd::y#1 [phi:bitmap_line::@6->bitmap_line_ydxd#2] -- register_copy
// [706] phi (byte) bitmap_line_ydxd::x#5 = (byte) bitmap_line_ydxd::x#1 [phi:bitmap_line::@6->bitmap_line_ydxd#3] -- register_copy
// [706] phi (byte) bitmap_line_ydxd::xd#2 = (byte) bitmap_line_ydxd::xd#1 [phi:bitmap_line::@6->bitmap_line_ydxd#4] -- register_copy
jsr bitmap_line_ydxd
rts
// bitmap_line::@12
b12:
// bitmap_line_xdyd(x0, y0, x1, xd, yd)
// [634] (byte) bitmap_line_xdyd::x#1 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2
lda.z x0
sta.z bitmap_line_xdyd.x
// [635] (byte) bitmap_line_xdyd::y#1 ← (byte) bitmap_line::y0#0
// [636] (byte) bitmap_line_xdyd::x1#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuxx
stx.z bitmap_line_xdyd.x1
// [637] (byte) bitmap_line_xdyd::xd#1 ← (byte) bitmap_line::xd#1
// [638] (byte) bitmap_line_xdyd::yd#1 ← (byte) bitmap_line::yd#10 -- vbuz1=vbuyy
sty.z bitmap_line_xdyd.yd
// [639] call bitmap_line_xdyd
// [691] phi from bitmap_line::@12 to bitmap_line_xdyd [phi:bitmap_line::@12->bitmap_line_xdyd]
// [691] phi (byte) bitmap_line_xdyd::x1#6 = (byte) bitmap_line_xdyd::x1#1 [phi:bitmap_line::@12->bitmap_line_xdyd#0] -- register_copy
// [691] phi (byte) bitmap_line_xdyd::xd#5 = (byte) bitmap_line_xdyd::xd#1 [phi:bitmap_line::@12->bitmap_line_xdyd#1] -- register_copy
// [691] phi (byte) bitmap_line_xdyd::y#5 = (byte) bitmap_line_xdyd::y#1 [phi:bitmap_line::@12->bitmap_line_xdyd#2] -- register_copy
// [691] phi (byte) bitmap_line_xdyd::x#6 = (byte) bitmap_line_xdyd::x#1 [phi:bitmap_line::@12->bitmap_line_xdyd#3] -- register_copy
// [691] phi (byte) bitmap_line_xdyd::yd#2 = (byte) bitmap_line_xdyd::yd#1 [phi:bitmap_line::@12->bitmap_line_xdyd#4] -- register_copy
jsr bitmap_line_xdyd
rts
// bitmap_line::@11
b11:
// yd = y1-y0
// [640] (byte) bitmap_line::yd#11 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuyy=vbuz1_minus_vbuz2
lda.z y1
sec
sbc.z y0
tay
// if(yd<xd)
// [641] if((byte) bitmap_line::yd#11<(byte) bitmap_line::xd#1) goto bitmap_line::@13 -- vbuyy_lt_vbuz1_then_la1
cpy.z xd
bcc b13
// bitmap_line::@14
// bitmap_line_ydxi(y0, x0, y1, yd, xd)
// [642] (byte) bitmap_line_ydxi::y#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2
lda.z y0
sta.z bitmap_line_ydxi.y
// [643] (byte) bitmap_line_ydxi::x#1 ← (byte) bitmap_line::x0#0 -- vbuxx=vbuz1
ldx.z x0
// [644] (byte) bitmap_line_ydxi::y1#1 ← (byte) bitmap_line::y1#0
// [645] (byte) bitmap_line_ydxi::yd#1 ← (byte) bitmap_line::yd#11 -- vbuz1=vbuyy
sty.z bitmap_line_ydxi.yd
// [646] (byte) bitmap_line_ydxi::xd#1 ← (byte) bitmap_line::xd#1
// [647] call bitmap_line_ydxi
// [676] phi from bitmap_line::@14 to bitmap_line_ydxi [phi:bitmap_line::@14->bitmap_line_ydxi]
// [676] phi (byte) bitmap_line_ydxi::y1#6 = (byte) bitmap_line_ydxi::y1#1 [phi:bitmap_line::@14->bitmap_line_ydxi#0] -- register_copy
// [676] phi (byte) bitmap_line_ydxi::yd#5 = (byte) bitmap_line_ydxi::yd#1 [phi:bitmap_line::@14->bitmap_line_ydxi#1] -- register_copy
// [676] phi (byte) bitmap_line_ydxi::y#6 = (byte) bitmap_line_ydxi::y#1 [phi:bitmap_line::@14->bitmap_line_ydxi#2] -- register_copy
// [676] phi (byte) bitmap_line_ydxi::x#5 = (byte) bitmap_line_ydxi::x#1 [phi:bitmap_line::@14->bitmap_line_ydxi#3] -- register_copy
// [676] phi (byte) bitmap_line_ydxi::xd#2 = (byte) bitmap_line_ydxi::xd#1 [phi:bitmap_line::@14->bitmap_line_ydxi#4] -- register_copy
jsr bitmap_line_ydxi
rts
// bitmap_line::@13
b13:
// bitmap_line_xdyi(x0, y0, x1, xd, yd)
// [648] (byte) bitmap_line_xdyi::x#1 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2
lda.z x0
sta.z bitmap_line_xdyi.x
// [649] (byte) bitmap_line_xdyi::y#1 ← (byte) bitmap_line::y0#0
// [650] (byte) bitmap_line_xdyi::x1#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuxx
stx.z bitmap_line_xdyi.x1
// [651] (byte) bitmap_line_xdyi::xd#1 ← (byte) bitmap_line::xd#1
// [652] (byte) bitmap_line_xdyi::yd#1 ← (byte) bitmap_line::yd#11 -- vbuz1=vbuyy
sty.z bitmap_line_xdyi.yd
// [653] call bitmap_line_xdyi
// [654] phi from bitmap_line::@13 to bitmap_line_xdyi [phi:bitmap_line::@13->bitmap_line_xdyi]
// [654] phi (byte) bitmap_line_xdyi::x1#6 = (byte) bitmap_line_xdyi::x1#1 [phi:bitmap_line::@13->bitmap_line_xdyi#0] -- register_copy
// [654] phi (byte) bitmap_line_xdyi::xd#5 = (byte) bitmap_line_xdyi::xd#1 [phi:bitmap_line::@13->bitmap_line_xdyi#1] -- register_copy
// [654] phi (byte) bitmap_line_xdyi::y#5 = (byte) bitmap_line_xdyi::y#1 [phi:bitmap_line::@13->bitmap_line_xdyi#2] -- register_copy
// [654] phi (byte) bitmap_line_xdyi::x#6 = (byte) bitmap_line_xdyi::x#1 [phi:bitmap_line::@13->bitmap_line_xdyi#3] -- register_copy
// [654] phi (byte) bitmap_line_xdyi::yd#2 = (byte) bitmap_line_xdyi::yd#1 [phi:bitmap_line::@13->bitmap_line_xdyi#4] -- register_copy
jsr bitmap_line_xdyi
rts
}
// bitmap_line_xdyi
// bitmap_line_xdyi(byte zeropage(2) x, byte zeropage(8) y, byte zeropage(6) x1, byte zeropage(7) xd, byte zeropage($d) yd)
bitmap_line_xdyi: {
.label x = 2
.label y = 8
.label x1 = 6
.label xd = 7
.label yd = $d
.label e = 3
// e = yd>>1
// [655] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte) 1 -- vbuz1=vbuz2_ror_1
lda.z yd
lsr
sta.z e
// [656] phi from bitmap_line_xdyi bitmap_line_xdyi::@2 to bitmap_line_xdyi::@1 [phi:bitmap_line_xdyi/bitmap_line_xdyi::@2->bitmap_line_xdyi::@1]
// [656] phi (byte) bitmap_line_xdyi::e#3 = (byte) bitmap_line_xdyi::e#0 [phi:bitmap_line_xdyi/bitmap_line_xdyi::@2->bitmap_line_xdyi::@1#0] -- register_copy
// [656] phi (byte) bitmap_line_xdyi::y#3 = (byte) bitmap_line_xdyi::y#5 [phi:bitmap_line_xdyi/bitmap_line_xdyi::@2->bitmap_line_xdyi::@1#1] -- register_copy
// [656] phi (byte) bitmap_line_xdyi::x#3 = (byte) bitmap_line_xdyi::x#6 [phi:bitmap_line_xdyi/bitmap_line_xdyi::@2->bitmap_line_xdyi::@1#2] -- register_copy
// bitmap_line_xdyi::@1
b1:
// bitmap_plot(x,y)
// [657] (byte) bitmap_plot::x#0 ← (byte) bitmap_line_xdyi::x#3 -- vbuxx=vbuz1
ldx.z x
// [658] (byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3 -- vbuyy=vbuz1
ldy.z y
// [659] call bitmap_plot
// [669] phi from bitmap_line_xdyi::@1 to bitmap_plot [phi:bitmap_line_xdyi::@1->bitmap_plot]
// [669] phi (byte) bitmap_plot::y#4 = (byte) bitmap_plot::y#0 [phi:bitmap_line_xdyi::@1->bitmap_plot#0] -- register_copy
// [669] phi (byte) bitmap_plot::x#4 = (byte) bitmap_plot::x#0 [phi:bitmap_line_xdyi::@1->bitmap_plot#1] -- register_copy
jsr bitmap_plot
// bitmap_line_xdyi::@4
// x++;
// [660] (byte) bitmap_line_xdyi::x#2 ← ++ (byte) bitmap_line_xdyi::x#3 -- vbuz1=_inc_vbuz1
inc.z x
// e = e+yd
// [661] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 -- vbuz1=vbuz1_plus_vbuz2
lda.z e
clc
adc.z yd
sta.z e
// if(xd<e)
// [662] if((byte) bitmap_line_xdyi::xd#5>=(byte) bitmap_line_xdyi::e#1) goto bitmap_line_xdyi::@2 -- vbuz1_ge_vbuz2_then_la1
lda.z xd
cmp.z e
bcs b2
// bitmap_line_xdyi::@3
// y++;
// [663] (byte) bitmap_line_xdyi::y#2 ← ++ (byte) bitmap_line_xdyi::y#3 -- vbuz1=_inc_vbuz1
inc.z y
// e = e - xd
// [664] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 -- vbuz1=vbuz1_minus_vbuz2
lda.z e
sec
sbc.z xd
sta.z e
// [665] phi from bitmap_line_xdyi::@3 bitmap_line_xdyi::@4 to bitmap_line_xdyi::@2 [phi:bitmap_line_xdyi::@3/bitmap_line_xdyi::@4->bitmap_line_xdyi::@2]
// [665] phi (byte) bitmap_line_xdyi::e#6 = (byte) bitmap_line_xdyi::e#2 [phi:bitmap_line_xdyi::@3/bitmap_line_xdyi::@4->bitmap_line_xdyi::@2#0] -- register_copy
// [665] phi (byte) bitmap_line_xdyi::y#6 = (byte) bitmap_line_xdyi::y#2 [phi:bitmap_line_xdyi::@3/bitmap_line_xdyi::@4->bitmap_line_xdyi::@2#1] -- register_copy
// bitmap_line_xdyi::@2
b2:
// x1+1
// [666] (byte~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#6 + (byte) 1 -- vbuxx=vbuz1_plus_1
ldx.z x1
inx
// while (x!=(x1+1))
// [667] if((byte) bitmap_line_xdyi::x#2!=(byte~) bitmap_line_xdyi::$6) goto bitmap_line_xdyi::@1 -- vbuz1_neq_vbuxx_then_la1
cpx.z x
bne b1
// bitmap_line_xdyi::@return
// }
// [668] return
rts
}
// bitmap_plot
// bitmap_plot(byte register(X) x, byte register(Y) y)
bitmap_plot: {
.label plotter_x = 9
.label plotter_y = $b
.label plotter = 9
// plotter_x = { bitmap_plot_xhi[x], bitmap_plot_xlo[x] }
// [670] (word) bitmap_plot::plotter_x#0 ← *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) -- vwuz1=pbuc1_derefidx_vbuxx_word_pbuc2_derefidx_vbuxx
lda bitmap_plot_xhi,x
sta.z plotter_x+1
lda bitmap_plot_xlo,x
sta.z plotter_x
// plotter_y = { bitmap_plot_yhi[y], bitmap_plot_ylo[y] }
// [671] (word) bitmap_plot::plotter_y#0 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) -- vwuz1=pbuc1_derefidx_vbuyy_word_pbuc2_derefidx_vbuyy
lda bitmap_plot_yhi,y
sta.z plotter_y+1
lda bitmap_plot_ylo,y
sta.z plotter_y
// plotter_x+plotter_y
// [672] (word) bitmap_plot::plotter#0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 -- vwuz1=vwuz1_plus_vwuz2
lda.z plotter
clc
adc.z plotter_y
sta.z plotter
lda.z plotter+1
adc.z plotter_y+1
sta.z plotter+1
// *plotter | bitmap_plot_bit[x]
// [673] (byte~) bitmap_plot::$1 ← *((byte*)(word) bitmap_plot::plotter#0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) -- vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbuxx
lda bitmap_plot_bit,x
ldy #0
ora (plotter),y
// *plotter = *plotter | bitmap_plot_bit[x]
// [674] *((byte*)(word) bitmap_plot::plotter#0) ← (byte~) bitmap_plot::$1 -- _deref_pbuz1=vbuaa
sta (plotter),y
// bitmap_plot::@return
// }
// [675] return
rts
}
// bitmap_line_ydxi
// bitmap_line_ydxi(byte zeropage(2) y, byte register(X) x, byte zeropage(3) y1, byte zeropage($d) yd, byte zeropage(7) xd)
bitmap_line_ydxi: {
.label y = 2
.label y1 = 3
.label yd = $d
.label xd = 7
.label e = 6
// e = xd>>1
// [677] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte) 1 -- vbuz1=vbuz2_ror_1
lda.z xd
lsr
sta.z e
// [678] phi from bitmap_line_ydxi bitmap_line_ydxi::@2 to bitmap_line_ydxi::@1 [phi:bitmap_line_ydxi/bitmap_line_ydxi::@2->bitmap_line_ydxi::@1]
// [678] phi (byte) bitmap_line_ydxi::e#3 = (byte) bitmap_line_ydxi::e#0 [phi:bitmap_line_ydxi/bitmap_line_ydxi::@2->bitmap_line_ydxi::@1#0] -- register_copy
// [678] phi (byte) bitmap_line_ydxi::y#3 = (byte) bitmap_line_ydxi::y#6 [phi:bitmap_line_ydxi/bitmap_line_ydxi::@2->bitmap_line_ydxi::@1#1] -- register_copy
// [678] phi (byte) bitmap_line_ydxi::x#3 = (byte) bitmap_line_ydxi::x#5 [phi:bitmap_line_ydxi/bitmap_line_ydxi::@2->bitmap_line_ydxi::@1#2] -- register_copy
// bitmap_line_ydxi::@1
b1:
// bitmap_plot(x,y)
// [679] (byte) bitmap_plot::x#2 ← (byte) bitmap_line_ydxi::x#3
// [680] (byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3 -- vbuyy=vbuz1
ldy.z y
// [681] call bitmap_plot
// [669] phi from bitmap_line_ydxi::@1 to bitmap_plot [phi:bitmap_line_ydxi::@1->bitmap_plot]
// [669] phi (byte) bitmap_plot::y#4 = (byte) bitmap_plot::y#2 [phi:bitmap_line_ydxi::@1->bitmap_plot#0] -- register_copy
// [669] phi (byte) bitmap_plot::x#4 = (byte) bitmap_plot::x#2 [phi:bitmap_line_ydxi::@1->bitmap_plot#1] -- register_copy
jsr bitmap_plot
// bitmap_line_ydxi::@4
// y++;
// [682] (byte) bitmap_line_ydxi::y#2 ← ++ (byte) bitmap_line_ydxi::y#3 -- vbuz1=_inc_vbuz1
inc.z y
// e = e+xd
// [683] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 -- vbuz1=vbuz1_plus_vbuz2
lda.z e
clc
adc.z xd
sta.z e
// if(yd<e)
// [684] if((byte) bitmap_line_ydxi::yd#5>=(byte) bitmap_line_ydxi::e#1) goto bitmap_line_ydxi::@2 -- vbuz1_ge_vbuz2_then_la1
lda.z yd
cmp.z e
bcs b2
// bitmap_line_ydxi::@3
// x++;
// [685] (byte) bitmap_line_ydxi::x#2 ← ++ (byte) bitmap_line_ydxi::x#3 -- vbuxx=_inc_vbuxx
inx
// e = e - yd
// [686] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 -- vbuz1=vbuz1_minus_vbuz2
lda.z e
sec
sbc.z yd
sta.z e
// [687] phi from bitmap_line_ydxi::@3 bitmap_line_ydxi::@4 to bitmap_line_ydxi::@2 [phi:bitmap_line_ydxi::@3/bitmap_line_ydxi::@4->bitmap_line_ydxi::@2]
// [687] phi (byte) bitmap_line_ydxi::e#6 = (byte) bitmap_line_ydxi::e#2 [phi:bitmap_line_ydxi::@3/bitmap_line_ydxi::@4->bitmap_line_ydxi::@2#0] -- register_copy
// [687] phi (byte) bitmap_line_ydxi::x#6 = (byte) bitmap_line_ydxi::x#2 [phi:bitmap_line_ydxi::@3/bitmap_line_ydxi::@4->bitmap_line_ydxi::@2#1] -- register_copy
// bitmap_line_ydxi::@2
b2:
// y1+1
// [688] (byte~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#6 + (byte) 1 -- vbuaa=vbuz1_plus_1
lda.z y1
clc
adc #1
// while (y!=(y1+1))
// [689] if((byte) bitmap_line_ydxi::y#2!=(byte~) bitmap_line_ydxi::$6) goto bitmap_line_ydxi::@1 -- vbuz1_neq_vbuaa_then_la1
cmp.z y
bne b1
// bitmap_line_ydxi::@return
// }
// [690] return
rts
}
// bitmap_line_xdyd
// bitmap_line_xdyd(byte zeropage(2) x, byte zeropage(8) y, byte zeropage(6) x1, byte zeropage(7) xd, byte zeropage($d) yd)
bitmap_line_xdyd: {
.label x = 2
.label y = 8
.label x1 = 6
.label xd = 7
.label yd = $d
.label e = 3
// e = yd>>1
// [692] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte) 1 -- vbuz1=vbuz2_ror_1
lda.z yd
lsr
sta.z e
// [693] phi from bitmap_line_xdyd bitmap_line_xdyd::@2 to bitmap_line_xdyd::@1 [phi:bitmap_line_xdyd/bitmap_line_xdyd::@2->bitmap_line_xdyd::@1]
// [693] phi (byte) bitmap_line_xdyd::e#3 = (byte) bitmap_line_xdyd::e#0 [phi:bitmap_line_xdyd/bitmap_line_xdyd::@2->bitmap_line_xdyd::@1#0] -- register_copy
// [693] phi (byte) bitmap_line_xdyd::y#3 = (byte) bitmap_line_xdyd::y#5 [phi:bitmap_line_xdyd/bitmap_line_xdyd::@2->bitmap_line_xdyd::@1#1] -- register_copy
// [693] phi (byte) bitmap_line_xdyd::x#3 = (byte) bitmap_line_xdyd::x#6 [phi:bitmap_line_xdyd/bitmap_line_xdyd::@2->bitmap_line_xdyd::@1#2] -- register_copy
// bitmap_line_xdyd::@1
b1:
// bitmap_plot(x,y)
// [694] (byte) bitmap_plot::x#1 ← (byte) bitmap_line_xdyd::x#3 -- vbuxx=vbuz1
ldx.z x
// [695] (byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3 -- vbuyy=vbuz1
ldy.z y
// [696] call bitmap_plot
// [669] phi from bitmap_line_xdyd::@1 to bitmap_plot [phi:bitmap_line_xdyd::@1->bitmap_plot]
// [669] phi (byte) bitmap_plot::y#4 = (byte) bitmap_plot::y#1 [phi:bitmap_line_xdyd::@1->bitmap_plot#0] -- register_copy
// [669] phi (byte) bitmap_plot::x#4 = (byte) bitmap_plot::x#1 [phi:bitmap_line_xdyd::@1->bitmap_plot#1] -- register_copy
jsr bitmap_plot
// bitmap_line_xdyd::@4
// x++;
// [697] (byte) bitmap_line_xdyd::x#2 ← ++ (byte) bitmap_line_xdyd::x#3 -- vbuz1=_inc_vbuz1
inc.z x
// e = e+yd
// [698] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 -- vbuz1=vbuz1_plus_vbuz2
lda.z e
clc
adc.z yd
sta.z e
// if(xd<e)
// [699] if((byte) bitmap_line_xdyd::xd#5>=(byte) bitmap_line_xdyd::e#1) goto bitmap_line_xdyd::@2 -- vbuz1_ge_vbuz2_then_la1
lda.z xd
cmp.z e
bcs b2
// bitmap_line_xdyd::@3
// y--;
// [700] (byte) bitmap_line_xdyd::y#2 ← -- (byte) bitmap_line_xdyd::y#3 -- vbuz1=_dec_vbuz1
dec.z y
// e = e - xd
// [701] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 -- vbuz1=vbuz1_minus_vbuz2
lda.z e
sec
sbc.z xd
sta.z e
// [702] phi from bitmap_line_xdyd::@3 bitmap_line_xdyd::@4 to bitmap_line_xdyd::@2 [phi:bitmap_line_xdyd::@3/bitmap_line_xdyd::@4->bitmap_line_xdyd::@2]
// [702] phi (byte) bitmap_line_xdyd::e#6 = (byte) bitmap_line_xdyd::e#2 [phi:bitmap_line_xdyd::@3/bitmap_line_xdyd::@4->bitmap_line_xdyd::@2#0] -- register_copy
// [702] phi (byte) bitmap_line_xdyd::y#6 = (byte) bitmap_line_xdyd::y#2 [phi:bitmap_line_xdyd::@3/bitmap_line_xdyd::@4->bitmap_line_xdyd::@2#1] -- register_copy
// bitmap_line_xdyd::@2
b2:
// x1+1
// [703] (byte~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#6 + (byte) 1 -- vbuxx=vbuz1_plus_1
ldx.z x1
inx
// while (x!=(x1+1))
// [704] if((byte) bitmap_line_xdyd::x#2!=(byte~) bitmap_line_xdyd::$6) goto bitmap_line_xdyd::@1 -- vbuz1_neq_vbuxx_then_la1
cpx.z x
bne b1
// bitmap_line_xdyd::@return
// }
// [705] return
rts
}
// bitmap_line_ydxd
// bitmap_line_ydxd(byte zeropage(2) y, byte register(X) x, byte zeropage(8) y1, byte zeropage($d) yd, byte zeropage(7) xd)
bitmap_line_ydxd: {
.label y = 2
.label y1 = 8
.label yd = $d
.label xd = 7
.label e = 3
// e = xd>>1
// [707] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte) 1 -- vbuz1=vbuz2_ror_1
lda.z xd
lsr
sta.z e
// [708] phi from bitmap_line_ydxd bitmap_line_ydxd::@2 to bitmap_line_ydxd::@1 [phi:bitmap_line_ydxd/bitmap_line_ydxd::@2->bitmap_line_ydxd::@1]
// [708] phi (byte) bitmap_line_ydxd::e#3 = (byte) bitmap_line_ydxd::e#0 [phi:bitmap_line_ydxd/bitmap_line_ydxd::@2->bitmap_line_ydxd::@1#0] -- register_copy
// [708] phi (byte) bitmap_line_ydxd::y#2 = (byte) bitmap_line_ydxd::y#7 [phi:bitmap_line_ydxd/bitmap_line_ydxd::@2->bitmap_line_ydxd::@1#1] -- register_copy
// [708] phi (byte) bitmap_line_ydxd::x#3 = (byte) bitmap_line_ydxd::x#5 [phi:bitmap_line_ydxd/bitmap_line_ydxd::@2->bitmap_line_ydxd::@1#2] -- register_copy
// bitmap_line_ydxd::@1
b1:
// bitmap_plot(x,y)
// [709] (byte) bitmap_plot::x#3 ← (byte) bitmap_line_ydxd::x#3
// [710] (byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#2 -- vbuyy=vbuz1
ldy.z y
// [711] call bitmap_plot
// [669] phi from bitmap_line_ydxd::@1 to bitmap_plot [phi:bitmap_line_ydxd::@1->bitmap_plot]
// [669] phi (byte) bitmap_plot::y#4 = (byte) bitmap_plot::y#3 [phi:bitmap_line_ydxd::@1->bitmap_plot#0] -- register_copy
// [669] phi (byte) bitmap_plot::x#4 = (byte) bitmap_plot::x#3 [phi:bitmap_line_ydxd::@1->bitmap_plot#1] -- register_copy
jsr bitmap_plot
// bitmap_line_ydxd::@4
// y = y++;
// [712] (byte) bitmap_line_ydxd::y#3 ← ++ (byte) bitmap_line_ydxd::y#2 -- vbuz1=_inc_vbuz1
inc.z y
// e = e+xd
// [713] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 -- vbuz1=vbuz1_plus_vbuz2
lda.z e
clc
adc.z xd
sta.z e
// if(yd<e)
// [714] if((byte) bitmap_line_ydxd::yd#5>=(byte) bitmap_line_ydxd::e#1) goto bitmap_line_ydxd::@2 -- vbuz1_ge_vbuz2_then_la1
lda.z yd
cmp.z e
bcs b2
// bitmap_line_ydxd::@3
// x--;
// [715] (byte) bitmap_line_ydxd::x#2 ← -- (byte) bitmap_line_ydxd::x#3 -- vbuxx=_dec_vbuxx
dex
// e = e - yd
// [716] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 -- vbuz1=vbuz1_minus_vbuz2
lda.z e
sec
sbc.z yd
sta.z e
// [717] phi from bitmap_line_ydxd::@3 bitmap_line_ydxd::@4 to bitmap_line_ydxd::@2 [phi:bitmap_line_ydxd::@3/bitmap_line_ydxd::@4->bitmap_line_ydxd::@2]
// [717] phi (byte) bitmap_line_ydxd::e#6 = (byte) bitmap_line_ydxd::e#2 [phi:bitmap_line_ydxd::@3/bitmap_line_ydxd::@4->bitmap_line_ydxd::@2#0] -- register_copy
// [717] phi (byte) bitmap_line_ydxd::x#6 = (byte) bitmap_line_ydxd::x#2 [phi:bitmap_line_ydxd::@3/bitmap_line_ydxd::@4->bitmap_line_ydxd::@2#1] -- register_copy
// bitmap_line_ydxd::@2
b2:
// y1+1
// [718] (byte~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#6 + (byte) 1 -- vbuaa=vbuz1_plus_1
lda.z y1
clc
adc #1
// while (y!=(y1+1))
// [719] if((byte) bitmap_line_ydxd::y#3!=(byte~) bitmap_line_ydxd::$6) goto bitmap_line_ydxd::@1 -- vbuz1_neq_vbuaa_then_la1
cmp.z y
bne b1
// bitmap_line_ydxd::@return
// }
// [720] return
rts
}
// bitmap_clear
// Clear all graphics on the bitmap
bitmap_clear: {
.label bitmap = 9
.label y = $e
// (byte*) { bitmap_plot_xhi[0], bitmap_plot_xlo[0] }
// [721] (word) bitmap_clear::bitmap#0 ← *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2
lda bitmap_plot_xlo
sta.z bitmap
lda bitmap_plot_xhi
sta.z bitmap+1
// [722] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word) bitmap_clear::bitmap#0
// [723] phi from bitmap_clear to bitmap_clear::@1 [phi:bitmap_clear->bitmap_clear::@1]
// [723] phi (byte) bitmap_clear::y#4 = (byte) 0 [phi:bitmap_clear->bitmap_clear::@1#0] -- vbuz1=vbuc1
lda #0
sta.z y
// [723] phi (byte*) bitmap_clear::bitmap#3 = (byte*~) bitmap_clear::bitmap#5 [phi:bitmap_clear->bitmap_clear::@1#1] -- register_copy
// [723] phi from bitmap_clear::@3 to bitmap_clear::@1 [phi:bitmap_clear::@3->bitmap_clear::@1]
// [723] phi (byte) bitmap_clear::y#4 = (byte) bitmap_clear::y#1 [phi:bitmap_clear::@3->bitmap_clear::@1#0] -- register_copy
// [723] phi (byte*) bitmap_clear::bitmap#3 = (byte*) bitmap_clear::bitmap#1 [phi:bitmap_clear::@3->bitmap_clear::@1#1] -- register_copy
// bitmap_clear::@1
b1:
// [724] phi from bitmap_clear::@1 to bitmap_clear::@2 [phi:bitmap_clear::@1->bitmap_clear::@2]
// [724] phi (byte) bitmap_clear::x#2 = (byte) 0 [phi:bitmap_clear::@1->bitmap_clear::@2#0] -- vbuxx=vbuc1
ldx #0
// [724] phi (byte*) bitmap_clear::bitmap#2 = (byte*) bitmap_clear::bitmap#3 [phi:bitmap_clear::@1->bitmap_clear::@2#1] -- register_copy
// [724] phi from bitmap_clear::@2 to bitmap_clear::@2 [phi:bitmap_clear::@2->bitmap_clear::@2]
// [724] phi (byte) bitmap_clear::x#2 = (byte) bitmap_clear::x#1 [phi:bitmap_clear::@2->bitmap_clear::@2#0] -- register_copy
// [724] phi (byte*) bitmap_clear::bitmap#2 = (byte*) bitmap_clear::bitmap#1 [phi:bitmap_clear::@2->bitmap_clear::@2#1] -- register_copy
// bitmap_clear::@2
b2:
// *bitmap++ = 0
// [725] *((byte*) bitmap_clear::bitmap#2) ← (byte) 0 -- _deref_pbuz1=vbuc1
lda #0
tay
sta (bitmap),y
// *bitmap++ = 0;
// [726] (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1
inc.z bitmap
bne !+
inc.z bitmap+1
!:
// for( byte x: 0..199 )
// [727] (byte) bitmap_clear::x#1 ← ++ (byte) bitmap_clear::x#2 -- vbuxx=_inc_vbuxx
inx
// [728] if((byte) bitmap_clear::x#1!=(byte) $c8) goto bitmap_clear::@2 -- vbuxx_neq_vbuc1_then_la1
cpx #$c8
bne b2
// bitmap_clear::@3
// for( byte y: 0..39 )
// [729] (byte) bitmap_clear::y#1 ← ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1
inc.z y
// [730] if((byte) bitmap_clear::y#1!=(byte) $28) goto bitmap_clear::@1 -- vbuz1_neq_vbuc1_then_la1
lda #$28
cmp.z y
bne b1
// bitmap_clear::@return
// }
// [731] return
rts
}
// bitmap_init
// Initialize the bitmap plotter tables for a specific bitmap
bitmap_init: {
.label _10 = $d
.label yoffs = 9
// [733] phi from bitmap_init to bitmap_init::@1 [phi:bitmap_init->bitmap_init::@1]
// [733] phi (byte) bitmap_init::bits#3 = (byte) $80 [phi:bitmap_init->bitmap_init::@1#0] -- vbuyy=vbuc1
ldy #$80
// [733] phi (byte) bitmap_init::x#2 = (byte) 0 [phi:bitmap_init->bitmap_init::@1#1] -- vbuxx=vbuc1
ldx #0
// [733] phi from bitmap_init::@2 to bitmap_init::@1 [phi:bitmap_init::@2->bitmap_init::@1]
// [733] phi (byte) bitmap_init::bits#3 = (byte) bitmap_init::bits#4 [phi:bitmap_init::@2->bitmap_init::@1#0] -- register_copy
// [733] phi (byte) bitmap_init::x#2 = (byte) bitmap_init::x#1 [phi:bitmap_init::@2->bitmap_init::@1#1] -- register_copy
// bitmap_init::@1
b1:
// x&$f8
// [734] (byte~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (byte) $f8 -- vbuaa=vbuxx_band_vbuc1
txa
and #$f8
// bitmap_plot_xlo[x] = x&$f8
// [735] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$0 -- pbuc1_derefidx_vbuxx=vbuaa
sta bitmap_plot_xlo,x
// bitmap_plot_xhi[x] = >bitmap
// [736] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← >(const byte*) mode_stdbitmap::BITMAP#0 -- pbuc1_derefidx_vbuxx=vbuc2
lda #>mode_stdbitmap.BITMAP
sta bitmap_plot_xhi,x
// bitmap_plot_bit[x] = bits
// [737] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuxx=vbuyy
tya
sta bitmap_plot_bit,x
// bits = bits>>1
// [738] (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte) 1 -- vbuyy=vbuyy_ror_1
tya
lsr
tay
// if(bits==0)
// [739] if((byte) bitmap_init::bits#1!=(byte) 0) goto bitmap_init::@6 -- vbuyy_neq_0_then_la1
cpy #0
bne b2
// [741] phi from bitmap_init::@1 to bitmap_init::@2 [phi:bitmap_init::@1->bitmap_init::@2]
// [741] phi (byte) bitmap_init::bits#4 = (byte) $80 [phi:bitmap_init::@1->bitmap_init::@2#0] -- vbuyy=vbuc1
ldy #$80
// [740] phi from bitmap_init::@1 to bitmap_init::@6 [phi:bitmap_init::@1->bitmap_init::@6]
// bitmap_init::@6
// [741] phi from bitmap_init::@6 to bitmap_init::@2 [phi:bitmap_init::@6->bitmap_init::@2]
// [741] phi (byte) bitmap_init::bits#4 = (byte) bitmap_init::bits#1 [phi:bitmap_init::@6->bitmap_init::@2#0] -- register_copy
// bitmap_init::@2
b2:
// for(byte x : 0..255)
// [742] (byte) bitmap_init::x#1 ← ++ (byte) bitmap_init::x#2 -- vbuxx=_inc_vbuxx
inx
// [743] if((byte) bitmap_init::x#1!=(byte) 0) goto bitmap_init::@1 -- vbuxx_neq_0_then_la1
cpx #0
bne b1
// [744] phi from bitmap_init::@2 to bitmap_init::@3 [phi:bitmap_init::@2->bitmap_init::@3]
// [744] phi (byte*) bitmap_init::yoffs#2 = (byte*) 0 [phi:bitmap_init::@2->bitmap_init::@3#0] -- pbuz1=pbuc1
lda #<0
sta.z yoffs
sta.z yoffs+1
// [744] phi (byte) bitmap_init::y#2 = (byte) 0 [phi:bitmap_init::@2->bitmap_init::@3#1] -- vbuxx=vbuc1
tax
// [744] phi from bitmap_init::@4 to bitmap_init::@3 [phi:bitmap_init::@4->bitmap_init::@3]
// [744] phi (byte*) bitmap_init::yoffs#2 = (byte*) bitmap_init::yoffs#4 [phi:bitmap_init::@4->bitmap_init::@3#0] -- register_copy
// [744] phi (byte) bitmap_init::y#2 = (byte) bitmap_init::y#1 [phi:bitmap_init::@4->bitmap_init::@3#1] -- register_copy
// bitmap_init::@3
b3:
// y&$7
// [745] (byte~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte) 7 -- vbuz1=vbuxx_band_vbuc1
lda #7
sax.z _10
// <yoffs
// [746] (byte~) bitmap_init::$7 ← < (byte*) bitmap_init::yoffs#2 -- vbuaa=_lo_pbuz1
lda.z yoffs
// y&$7 | <yoffs
// [747] (byte~) bitmap_init::$8 ← (byte~) bitmap_init::$10 | (byte~) bitmap_init::$7 -- vbuaa=vbuz1_bor_vbuaa
ora.z _10
// bitmap_plot_ylo[y] = y&$7 | <yoffs
// [748] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$8 -- pbuc1_derefidx_vbuxx=vbuaa
sta bitmap_plot_ylo,x
// >yoffs
// [749] (byte~) bitmap_init::$9 ← > (byte*) bitmap_init::yoffs#2 -- vbuaa=_hi_pbuz1
lda.z yoffs+1
// bitmap_plot_yhi[y] = >yoffs
// [750] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$9 -- pbuc1_derefidx_vbuxx=vbuaa
sta bitmap_plot_yhi,x
// if((y&$7)==7)
// [751] if((byte~) bitmap_init::$10!=(byte) 7) goto bitmap_init::@4 -- vbuz1_neq_vbuc1_then_la1
lda #7
cmp.z _10
bne b4
// bitmap_init::@5
// yoffs = yoffs + 40*8
// [752] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (word)(number) $28*(number) 8 -- pbuz1=pbuz1_plus_vwuc1
clc
lda.z yoffs
adc #<$28*8
sta.z yoffs
lda.z yoffs+1
adc #>$28*8
sta.z yoffs+1
// [753] phi from bitmap_init::@3 bitmap_init::@5 to bitmap_init::@4 [phi:bitmap_init::@3/bitmap_init::@5->bitmap_init::@4]
// [753] phi (byte*) bitmap_init::yoffs#4 = (byte*) bitmap_init::yoffs#2 [phi:bitmap_init::@3/bitmap_init::@5->bitmap_init::@4#0] -- register_copy
// bitmap_init::@4
b4:
// for(byte y : 0..255)
// [754] (byte) bitmap_init::y#1 ← ++ (byte) bitmap_init::y#2 -- vbuxx=_inc_vbuxx
inx
// [755] if((byte) bitmap_init::y#1!=(byte) 0) goto bitmap_init::@3 -- vbuxx_neq_0_then_la1
cpx #0
bne b3
// bitmap_init::@return
// }
// [756] return
rts
}
// mode_mcchar
// Multicolor Character Mode (LINEAR/HICOL/CHUNK/COLDIS/BMM/ECM = 0, MCM = 1)
// Resolution: 160x200 (320x200)
// Normal VIC Adressing:
// VicGfxData[16]: ( VicBank[1:0] & CharBase[2:0] & CharData[7:0] & RowCounter[2:0] )
// GfxData Pixel Shifter (1) if ColorData[3:3] = 0:
// - 0: 4bpp BgColor0[3:0]
// - 1: 4bpp ColorData[2:0]
// GfxData Pixel Shifter (2) if ColorData[3:3] = 1:
// - 00: 4bpp BgColor0[3:0]
// - 01: 4bpp BgColor1[3:0]
// - 10: 4bpp BgColor2[3:0]
// - 11: 4bpp ColorData[2:0]// Standard Character Mode (LINEAR/HICOL/CHUNK/COLDIS/ECM/MCM/BMM = 0)
mode_mcchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $d800
.label _29 = $d
.label col = $b
.label ch = 4
.label cy = 7
// *DTV_GRAPHICS_VIC_BANK = (byte)((dword)CHARSET/$10000)
// [757] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// *DTV_COLOR_BANK_LO = <((word)(DTV_COLOR_BANK_DEFAULT/$400))
// [758] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<DTV_COLOR_BANK_DEFAULT/$400
sta DTV_COLOR_BANK_LO
// *DTV_COLOR_BANK_HI = >((word)(DTV_COLOR_BANK_DEFAULT/$400))
// [759] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// *DTV_CONTROL = 0
// [760] *((const byte*) DTV_CONTROL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_CONTROL
// *CIA2_PORT_A_DDR = %00000011
// [761] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2_PORT_A_DDR
// *CIA2_PORT_A = %00000011 ^ (byte)((word)CHARSET/$4000)
// [762] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_mcchar::CHARSET#0/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2_PORT_A
// *VIC_CONTROL = VIC_DEN|VIC_RSEL|3
// [763] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// *VIC_CONTROL2 = VIC_CSEL|VIC_MCM
// [764] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL|VIC_MCM
sta VIC_CONTROL2
// *VIC_MEMORY = (byte)((((word)SCREEN&$3fff)/$40)|(((word)CHARSET&$3fff)/$400))
// [765] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_mcchar::CHARSET#0&(word) $3fff/(word) $400 -- _deref_pbuc1=vbuc2
// VIC Memory Pointers
lda #(CHARSET&$3fff)/$400
sta VIC_MEMORY
// [766] phi from mode_mcchar to mode_mcchar::@1 [phi:mode_mcchar->mode_mcchar::@1]
// [766] phi (byte) mode_mcchar::i#2 = (byte) 0 [phi:mode_mcchar->mode_mcchar::@1#0] -- vbuxx=vbuc1
ldx #0
// DTV Palette - default
// [766] phi from mode_mcchar::@1 to mode_mcchar::@1 [phi:mode_mcchar::@1->mode_mcchar::@1]
// [766] phi (byte) mode_mcchar::i#2 = (byte) mode_mcchar::i#1 [phi:mode_mcchar::@1->mode_mcchar::@1#0] -- register_copy
// mode_mcchar::@1
b1:
// DTV_PALETTE[i] = DTV_PALETTE_DEFAULT[i]
// [767] *((const byte*) DTV_PALETTE#0 + (byte) mode_mcchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_mcchar::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx
lda DTV_PALETTE_DEFAULT,x
sta DTV_PALETTE,x
// for(byte i : 0..$f)
// [768] (byte) mode_mcchar::i#1 ← ++ (byte) mode_mcchar::i#2 -- vbuxx=_inc_vbuxx
inx
// [769] if((byte) mode_mcchar::i#1!=(byte) $10) goto mode_mcchar::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1
// mode_mcchar::@2
// *BORDERCOL = 0
// [770] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDERCOL
// *BGCOL1 = BLACK
// [771] *((const byte*) BGCOL1#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2
lda #BLACK
sta BGCOL1
// *BGCOL2 = GREEN
// [772] *((const byte*) BGCOL2#0) ← (const byte) GREEN#0 -- _deref_pbuc1=vbuc2
lda #GREEN
sta BGCOL2
// *BGCOL3 = BLUE
// [773] *((const byte*) BGCOL3#0) ← (const byte) BLUE#0 -- _deref_pbuc1=vbuc2
lda #BLUE
sta BGCOL3
// [774] phi from mode_mcchar::@2 to mode_mcchar::@3 [phi:mode_mcchar::@2->mode_mcchar::@3]
// [774] phi (byte*) mode_mcchar::ch#3 = (const byte*) mode_mcchar::SCREEN#0 [phi:mode_mcchar::@2->mode_mcchar::@3#0] -- pbuz1=pbuc1
lda #<SCREEN
sta.z ch
lda #>SCREEN
sta.z ch+1
// [774] phi (byte*) mode_mcchar::col#3 = (const byte*) mode_mcchar::COLORS#0 [phi:mode_mcchar::@2->mode_mcchar::@3#1] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [774] phi (byte) mode_mcchar::cy#4 = (byte) 0 [phi:mode_mcchar::@2->mode_mcchar::@3#2] -- vbuz1=vbuc1
lda #0
sta.z cy
// [774] phi from mode_mcchar::@5 to mode_mcchar::@3 [phi:mode_mcchar::@5->mode_mcchar::@3]
// [774] phi (byte*) mode_mcchar::ch#3 = (byte*) mode_mcchar::ch#1 [phi:mode_mcchar::@5->mode_mcchar::@3#0] -- register_copy
// [774] phi (byte*) mode_mcchar::col#3 = (byte*) mode_mcchar::col#1 [phi:mode_mcchar::@5->mode_mcchar::@3#1] -- register_copy
// [774] phi (byte) mode_mcchar::cy#4 = (byte) mode_mcchar::cy#1 [phi:mode_mcchar::@5->mode_mcchar::@3#2] -- register_copy
// mode_mcchar::@3
b3:
// [775] phi from mode_mcchar::@3 to mode_mcchar::@4 [phi:mode_mcchar::@3->mode_mcchar::@4]
// [775] phi (byte*) mode_mcchar::ch#2 = (byte*) mode_mcchar::ch#3 [phi:mode_mcchar::@3->mode_mcchar::@4#0] -- register_copy
// [775] phi (byte*) mode_mcchar::col#2 = (byte*) mode_mcchar::col#3 [phi:mode_mcchar::@3->mode_mcchar::@4#1] -- register_copy
// [775] phi (byte) mode_mcchar::cx#2 = (byte) 0 [phi:mode_mcchar::@3->mode_mcchar::@4#2] -- vbuxx=vbuc1
ldx #0
// [775] phi from mode_mcchar::@4 to mode_mcchar::@4 [phi:mode_mcchar::@4->mode_mcchar::@4]
// [775] phi (byte*) mode_mcchar::ch#2 = (byte*) mode_mcchar::ch#1 [phi:mode_mcchar::@4->mode_mcchar::@4#0] -- register_copy
// [775] phi (byte*) mode_mcchar::col#2 = (byte*) mode_mcchar::col#1 [phi:mode_mcchar::@4->mode_mcchar::@4#1] -- register_copy
// [775] phi (byte) mode_mcchar::cx#2 = (byte) mode_mcchar::cx#1 [phi:mode_mcchar::@4->mode_mcchar::@4#2] -- register_copy
// mode_mcchar::@4
b4:
// cx+cy
// [776] (byte~) mode_mcchar::$26 ← (byte) mode_mcchar::cx#2 + (byte) mode_mcchar::cy#4 -- vbuaa=vbuxx_plus_vbuz1
txa
clc
adc.z cy
// (cx+cy)&$f
// [777] (byte~) mode_mcchar::$27 ← (byte~) mode_mcchar::$26 & (byte) $f -- vbuaa=vbuaa_band_vbuc1
and #$f
// *col++ = (cx+cy)&$f
// [778] *((byte*) mode_mcchar::col#2) ← (byte~) mode_mcchar::$27 -- _deref_pbuz1=vbuaa
ldy #0
sta (col),y
// *col++ = (cx+cy)&$f;
// [779] (byte*) mode_mcchar::col#1 ← ++ (byte*) mode_mcchar::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// cy&$f
// [780] (byte~) mode_mcchar::$28 ← (byte) mode_mcchar::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// (cy&$f)*$10
// [781] (byte~) mode_mcchar::$29 ← (byte~) mode_mcchar::$28 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z _29
// cx&$f
// [782] (byte~) mode_mcchar::$30 ← (byte) mode_mcchar::cx#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// (cy&$f)*$10|(cx&$f)
// [783] (byte~) mode_mcchar::$31 ← (byte~) mode_mcchar::$29 | (byte~) mode_mcchar::$30 -- vbuaa=vbuz1_bor_vbuaa
ora.z _29
// *ch++ = (cy&$f)*$10|(cx&$f)
// [784] *((byte*) mode_mcchar::ch#2) ← (byte~) mode_mcchar::$31 -- _deref_pbuz1=vbuaa
ldy #0
sta (ch),y
// *ch++ = (cy&$f)*$10|(cx&$f);
// [785] (byte*) mode_mcchar::ch#1 ← ++ (byte*) mode_mcchar::ch#2 -- pbuz1=_inc_pbuz1
inc.z ch
bne !+
inc.z ch+1
!:
// for(byte cx: 0..39)
// [786] (byte) mode_mcchar::cx#1 ← ++ (byte) mode_mcchar::cx#2 -- vbuxx=_inc_vbuxx
inx
// [787] if((byte) mode_mcchar::cx#1!=(byte) $28) goto mode_mcchar::@4 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b4
// mode_mcchar::@5
// for(byte cy: 0..24 )
// [788] (byte) mode_mcchar::cy#1 ← ++ (byte) mode_mcchar::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [789] if((byte) mode_mcchar::cy#1!=(byte) $19) goto mode_mcchar::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3
// [790] phi from mode_mcchar::@5 to mode_mcchar::@6 [phi:mode_mcchar::@5->mode_mcchar::@6]
// mode_mcchar::@6
// mode_ctrl()
// [791] call mode_ctrl
// [155] phi from mode_mcchar::@6 to mode_ctrl [phi:mode_mcchar::@6->mode_ctrl]
// [155] phi (byte) dtv_control#144 = (byte) 0 [phi:mode_mcchar::@6->mode_ctrl#0] -- vbuz1=vbuc1
lda #0
sta.z dtv_control
jsr mode_ctrl
// mode_mcchar::@return
// }
// [792] return
rts
}
// mode_ecmchar
// Extended Background Color Character Mode (LINEAR/HICOL/CHUNK/COLDIS/MCM/BMM = 0, ECM = 1)
// Resolution: 320x200
// Normal VIC Adressing:
// VicGfxData[16]: ( VicBank[1:0] & CharBase[2:0] & "00" & CharData[5:0] & RowCounter[2:0] )
// GfxData Pixel Shifter (1)
// - 0: 4bpp Background Color
// - CharData[7:6] 00: 4bpp BgColor0[3:0]
// - CharData[7:6] 01: 4bpp BgColor1[3:0]
// - CharData[7:6] 10: 4bpp BgColor2[3:0]
// - CharData[7:6] 11: 4bpp BgColor3[3:0]
// - 1: 4bpp ColorData[3:0]
mode_ecmchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $d800
.label _29 = $d
.label col = $b
.label ch = 4
.label cy = 8
// *DTV_GRAPHICS_VIC_BANK = (byte)((dword)CHARSET/$10000)
// [793] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// *DTV_COLOR_BANK_LO = <((word)(DTV_COLOR_BANK_DEFAULT/$400))
// [794] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<DTV_COLOR_BANK_DEFAULT/$400
sta DTV_COLOR_BANK_LO
// *DTV_COLOR_BANK_HI = >((word)(DTV_COLOR_BANK_DEFAULT/$400))
// [795] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// *DTV_CONTROL = 0
// [796] *((const byte*) DTV_CONTROL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_CONTROL
// *CIA2_PORT_A_DDR = %00000011
// [797] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2_PORT_A_DDR
// *CIA2_PORT_A = %00000011 ^ (byte)((word)CHARSET/$4000)
// [798] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_ecmchar::CHARSET#0/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2_PORT_A
// *VIC_CONTROL = VIC_DEN|VIC_RSEL|VIC_ECM|3
// [799] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|VIC_ECM|3
sta VIC_CONTROL
// *VIC_CONTROL2 = VIC_CSEL
// [800] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// *VIC_MEMORY = (byte)((((word)SCREEN&$3fff)/$40)|(((word)CHARSET&$3fff)/$400))
// [801] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_ecmchar::CHARSET#0&(word) $3fff/(word) $400 -- _deref_pbuc1=vbuc2
// VIC Memory Pointers
lda #(CHARSET&$3fff)/$400
sta VIC_MEMORY
// [802] phi from mode_ecmchar to mode_ecmchar::@1 [phi:mode_ecmchar->mode_ecmchar::@1]
// [802] phi (byte) mode_ecmchar::i#2 = (byte) 0 [phi:mode_ecmchar->mode_ecmchar::@1#0] -- vbuxx=vbuc1
ldx #0
// DTV Palette - default
// [802] phi from mode_ecmchar::@1 to mode_ecmchar::@1 [phi:mode_ecmchar::@1->mode_ecmchar::@1]
// [802] phi (byte) mode_ecmchar::i#2 = (byte) mode_ecmchar::i#1 [phi:mode_ecmchar::@1->mode_ecmchar::@1#0] -- register_copy
// mode_ecmchar::@1
b1:
// DTV_PALETTE[i] = DTV_PALETTE_DEFAULT[i]
// [803] *((const byte*) DTV_PALETTE#0 + (byte) mode_ecmchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_ecmchar::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx
lda DTV_PALETTE_DEFAULT,x
sta DTV_PALETTE,x
// for(byte i : 0..$f)
// [804] (byte) mode_ecmchar::i#1 ← ++ (byte) mode_ecmchar::i#2 -- vbuxx=_inc_vbuxx
inx
// [805] if((byte) mode_ecmchar::i#1!=(byte) $10) goto mode_ecmchar::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1
// mode_ecmchar::@2
// *BORDERCOL = 0
// [806] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDERCOL
// *BGCOL1 = 0
// [807] *((const byte*) BGCOL1#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta BGCOL1
// *BGCOL2 = 2
// [808] *((const byte*) BGCOL2#0) ← (byte) 2 -- _deref_pbuc1=vbuc2
lda #2
sta BGCOL2
// *BGCOL3 = 5
// [809] *((const byte*) BGCOL3#0) ← (byte) 5 -- _deref_pbuc1=vbuc2
lda #5
sta BGCOL3
// *BGCOL4 = 6
// [810] *((const byte*) BGCOL4#0) ← (byte) 6 -- _deref_pbuc1=vbuc2
lda #6
sta BGCOL4
// [811] phi from mode_ecmchar::@2 to mode_ecmchar::@3 [phi:mode_ecmchar::@2->mode_ecmchar::@3]
// [811] phi (byte*) mode_ecmchar::ch#3 = (const byte*) mode_ecmchar::SCREEN#0 [phi:mode_ecmchar::@2->mode_ecmchar::@3#0] -- pbuz1=pbuc1
lda #<SCREEN
sta.z ch
lda #>SCREEN
sta.z ch+1
// [811] phi (byte*) mode_ecmchar::col#3 = (const byte*) mode_ecmchar::COLORS#0 [phi:mode_ecmchar::@2->mode_ecmchar::@3#1] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [811] phi (byte) mode_ecmchar::cy#4 = (byte) 0 [phi:mode_ecmchar::@2->mode_ecmchar::@3#2] -- vbuz1=vbuc1
lda #0
sta.z cy
// [811] phi from mode_ecmchar::@5 to mode_ecmchar::@3 [phi:mode_ecmchar::@5->mode_ecmchar::@3]
// [811] phi (byte*) mode_ecmchar::ch#3 = (byte*) mode_ecmchar::ch#1 [phi:mode_ecmchar::@5->mode_ecmchar::@3#0] -- register_copy
// [811] phi (byte*) mode_ecmchar::col#3 = (byte*) mode_ecmchar::col#1 [phi:mode_ecmchar::@5->mode_ecmchar::@3#1] -- register_copy
// [811] phi (byte) mode_ecmchar::cy#4 = (byte) mode_ecmchar::cy#1 [phi:mode_ecmchar::@5->mode_ecmchar::@3#2] -- register_copy
// mode_ecmchar::@3
b3:
// [812] phi from mode_ecmchar::@3 to mode_ecmchar::@4 [phi:mode_ecmchar::@3->mode_ecmchar::@4]
// [812] phi (byte*) mode_ecmchar::ch#2 = (byte*) mode_ecmchar::ch#3 [phi:mode_ecmchar::@3->mode_ecmchar::@4#0] -- register_copy
// [812] phi (byte*) mode_ecmchar::col#2 = (byte*) mode_ecmchar::col#3 [phi:mode_ecmchar::@3->mode_ecmchar::@4#1] -- register_copy
// [812] phi (byte) mode_ecmchar::cx#2 = (byte) 0 [phi:mode_ecmchar::@3->mode_ecmchar::@4#2] -- vbuxx=vbuc1
ldx #0
// [812] phi from mode_ecmchar::@4 to mode_ecmchar::@4 [phi:mode_ecmchar::@4->mode_ecmchar::@4]
// [812] phi (byte*) mode_ecmchar::ch#2 = (byte*) mode_ecmchar::ch#1 [phi:mode_ecmchar::@4->mode_ecmchar::@4#0] -- register_copy
// [812] phi (byte*) mode_ecmchar::col#2 = (byte*) mode_ecmchar::col#1 [phi:mode_ecmchar::@4->mode_ecmchar::@4#1] -- register_copy
// [812] phi (byte) mode_ecmchar::cx#2 = (byte) mode_ecmchar::cx#1 [phi:mode_ecmchar::@4->mode_ecmchar::@4#2] -- register_copy
// mode_ecmchar::@4
b4:
// cx+cy
// [813] (byte~) mode_ecmchar::$26 ← (byte) mode_ecmchar::cx#2 + (byte) mode_ecmchar::cy#4 -- vbuaa=vbuxx_plus_vbuz1
txa
clc
adc.z cy
// (cx+cy)&$f
// [814] (byte~) mode_ecmchar::$27 ← (byte~) mode_ecmchar::$26 & (byte) $f -- vbuaa=vbuaa_band_vbuc1
and #$f
// *col++ = (cx+cy)&$f
// [815] *((byte*) mode_ecmchar::col#2) ← (byte~) mode_ecmchar::$27 -- _deref_pbuz1=vbuaa
ldy #0
sta (col),y
// *col++ = (cx+cy)&$f;
// [816] (byte*) mode_ecmchar::col#1 ← ++ (byte*) mode_ecmchar::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// cy&$f
// [817] (byte~) mode_ecmchar::$28 ← (byte) mode_ecmchar::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// (cy&$f)*$10
// [818] (byte~) mode_ecmchar::$29 ← (byte~) mode_ecmchar::$28 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z _29
// cx&$f
// [819] (byte~) mode_ecmchar::$30 ← (byte) mode_ecmchar::cx#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// (cy&$f)*$10|(cx&$f)
// [820] (byte~) mode_ecmchar::$31 ← (byte~) mode_ecmchar::$29 | (byte~) mode_ecmchar::$30 -- vbuaa=vbuz1_bor_vbuaa
ora.z _29
// *ch++ = (cy&$f)*$10|(cx&$f)
// [821] *((byte*) mode_ecmchar::ch#2) ← (byte~) mode_ecmchar::$31 -- _deref_pbuz1=vbuaa
ldy #0
sta (ch),y
// *ch++ = (cy&$f)*$10|(cx&$f);
// [822] (byte*) mode_ecmchar::ch#1 ← ++ (byte*) mode_ecmchar::ch#2 -- pbuz1=_inc_pbuz1
inc.z ch
bne !+
inc.z ch+1
!:
// for(byte cx: 0..39)
// [823] (byte) mode_ecmchar::cx#1 ← ++ (byte) mode_ecmchar::cx#2 -- vbuxx=_inc_vbuxx
inx
// [824] if((byte) mode_ecmchar::cx#1!=(byte) $28) goto mode_ecmchar::@4 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b4
// mode_ecmchar::@5
// for(byte cy: 0..24 )
// [825] (byte) mode_ecmchar::cy#1 ← ++ (byte) mode_ecmchar::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [826] if((byte) mode_ecmchar::cy#1!=(byte) $19) goto mode_ecmchar::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3
// [827] phi from mode_ecmchar::@5 to mode_ecmchar::@6 [phi:mode_ecmchar::@5->mode_ecmchar::@6]
// mode_ecmchar::@6
// mode_ctrl()
// [828] call mode_ctrl
// [155] phi from mode_ecmchar::@6 to mode_ctrl [phi:mode_ecmchar::@6->mode_ctrl]
// [155] phi (byte) dtv_control#144 = (byte) 0 [phi:mode_ecmchar::@6->mode_ctrl#0] -- vbuz1=vbuc1
lda #0
sta.z dtv_control
jsr mode_ctrl
// mode_ecmchar::@return
// }
// [829] return
rts
}
// mode_stdchar
// Standard Character Mode (LINEAR/HICOL/CHUNK/COLDIS/ECM/MCM/BMM = 0)
// Resolution: 320x200
// Normal VIC Adressing:
// VicGfxData[16]: ( VicBank[1:0] & CharBase[2:0] & CharData[7:0] & RowCounter[2:0] )
// Pixel Shifter (1)
// - 0: 4bpp BgColor0[3:0]
// - 1: 4bpp ColorData[3:0]
mode_stdchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $d800
.label _28 = $e
.label col = $b
.label ch = 4
.label cy = 6
// *DTV_GRAPHICS_VIC_BANK = (byte)((dword)CHARSET/$10000)
// [830] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// *DTV_COLOR_BANK_LO = <((word)(DTV_COLOR_BANK_DEFAULT/$400))
// [831] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(word)(const dword) DTV_COLOR_BANK_DEFAULT#0/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<DTV_COLOR_BANK_DEFAULT/$400
sta DTV_COLOR_BANK_LO
// *DTV_COLOR_BANK_HI = >((word)(DTV_COLOR_BANK_DEFAULT/$400))
// [832] *((const byte*) DTV_COLOR_BANK_HI#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// *DTV_CONTROL = 0
// [833] *((const byte*) DTV_CONTROL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_CONTROL
// *CIA2_PORT_A_DDR = %00000011
// [834] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2_PORT_A_DDR
// *CIA2_PORT_A = %00000011 ^ (byte)((word)CHARSET/$4000)
// [835] *((const byte*) CIA2_PORT_A#0) ← (byte) 3^(byte)(word)(const byte*) mode_stdchar::CHARSET#0/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2_PORT_A
// *VIC_CONTROL = VIC_DEN|VIC_RSEL|3
// [836] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// *VIC_CONTROL2 = VIC_CSEL
// [837] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// *VIC_MEMORY = (byte)((((word)SCREEN&$3fff)/$40)|(((word)CHARSET&$3fff)/$400))
// [838] *((const byte*) VIC_MEMORY#0) ← (byte)(word)(const byte*) mode_stdchar::CHARSET#0&(word) $3fff/(word) $400 -- _deref_pbuc1=vbuc2
// VIC Memory Pointers
lda #(CHARSET&$3fff)/$400
sta VIC_MEMORY
// [839] phi from mode_stdchar to mode_stdchar::@1 [phi:mode_stdchar->mode_stdchar::@1]
// [839] phi (byte) mode_stdchar::i#2 = (byte) 0 [phi:mode_stdchar->mode_stdchar::@1#0] -- vbuxx=vbuc1
ldx #0
// DTV Palette - default
// [839] phi from mode_stdchar::@1 to mode_stdchar::@1 [phi:mode_stdchar::@1->mode_stdchar::@1]
// [839] phi (byte) mode_stdchar::i#2 = (byte) mode_stdchar::i#1 [phi:mode_stdchar::@1->mode_stdchar::@1#0] -- register_copy
// mode_stdchar::@1
b1:
// DTV_PALETTE[i] = DTV_PALETTE_DEFAULT[i]
// [840] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdchar::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx
lda DTV_PALETTE_DEFAULT,x
sta DTV_PALETTE,x
// for(byte i : 0..$f)
// [841] (byte) mode_stdchar::i#1 ← ++ (byte) mode_stdchar::i#2 -- vbuxx=_inc_vbuxx
inx
// [842] if((byte) mode_stdchar::i#1!=(byte) $10) goto mode_stdchar::@1 -- vbuxx_neq_vbuc1_then_la1
cpx #$10
bne b1
// mode_stdchar::@2
// *BGCOL = 0
// [843] *((const byte*) BGCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BGCOL
// *BORDERCOL = 0
// [844] *((const byte*) BORDERCOL#0) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta BORDERCOL
// [845] phi from mode_stdchar::@2 to mode_stdchar::@3 [phi:mode_stdchar::@2->mode_stdchar::@3]
// [845] phi (byte*) mode_stdchar::ch#3 = (const byte*) mode_stdchar::SCREEN#0 [phi:mode_stdchar::@2->mode_stdchar::@3#0] -- pbuz1=pbuc1
lda #<SCREEN
sta.z ch
lda #>SCREEN
sta.z ch+1
// [845] phi (byte*) mode_stdchar::col#3 = (const byte*) mode_stdchar::COLORS#0 [phi:mode_stdchar::@2->mode_stdchar::@3#1] -- pbuz1=pbuc1
lda #<COLORS
sta.z col
lda #>COLORS
sta.z col+1
// [845] phi (byte) mode_stdchar::cy#4 = (byte) 0 [phi:mode_stdchar::@2->mode_stdchar::@3#2] -- vbuz1=vbuc1
lda #0
sta.z cy
// [845] phi from mode_stdchar::@5 to mode_stdchar::@3 [phi:mode_stdchar::@5->mode_stdchar::@3]
// [845] phi (byte*) mode_stdchar::ch#3 = (byte*) mode_stdchar::ch#1 [phi:mode_stdchar::@5->mode_stdchar::@3#0] -- register_copy
// [845] phi (byte*) mode_stdchar::col#3 = (byte*) mode_stdchar::col#1 [phi:mode_stdchar::@5->mode_stdchar::@3#1] -- register_copy
// [845] phi (byte) mode_stdchar::cy#4 = (byte) mode_stdchar::cy#1 [phi:mode_stdchar::@5->mode_stdchar::@3#2] -- register_copy
// mode_stdchar::@3
b3:
// [846] phi from mode_stdchar::@3 to mode_stdchar::@4 [phi:mode_stdchar::@3->mode_stdchar::@4]
// [846] phi (byte*) mode_stdchar::ch#2 = (byte*) mode_stdchar::ch#3 [phi:mode_stdchar::@3->mode_stdchar::@4#0] -- register_copy
// [846] phi (byte*) mode_stdchar::col#2 = (byte*) mode_stdchar::col#3 [phi:mode_stdchar::@3->mode_stdchar::@4#1] -- register_copy
// [846] phi (byte) mode_stdchar::cx#2 = (byte) 0 [phi:mode_stdchar::@3->mode_stdchar::@4#2] -- vbuxx=vbuc1
ldx #0
// [846] phi from mode_stdchar::@4 to mode_stdchar::@4 [phi:mode_stdchar::@4->mode_stdchar::@4]
// [846] phi (byte*) mode_stdchar::ch#2 = (byte*) mode_stdchar::ch#1 [phi:mode_stdchar::@4->mode_stdchar::@4#0] -- register_copy
// [846] phi (byte*) mode_stdchar::col#2 = (byte*) mode_stdchar::col#1 [phi:mode_stdchar::@4->mode_stdchar::@4#1] -- register_copy
// [846] phi (byte) mode_stdchar::cx#2 = (byte) mode_stdchar::cx#1 [phi:mode_stdchar::@4->mode_stdchar::@4#2] -- register_copy
// mode_stdchar::@4
b4:
// cx+cy
// [847] (byte~) mode_stdchar::$25 ← (byte) mode_stdchar::cx#2 + (byte) mode_stdchar::cy#4 -- vbuaa=vbuxx_plus_vbuz1
txa
clc
adc.z cy
// (cx+cy)&$f
// [848] (byte~) mode_stdchar::$26 ← (byte~) mode_stdchar::$25 & (byte) $f -- vbuaa=vbuaa_band_vbuc1
and #$f
// *col++ = (cx+cy)&$f
// [849] *((byte*) mode_stdchar::col#2) ← (byte~) mode_stdchar::$26 -- _deref_pbuz1=vbuaa
ldy #0
sta (col),y
// *col++ = (cx+cy)&$f;
// [850] (byte*) mode_stdchar::col#1 ← ++ (byte*) mode_stdchar::col#2 -- pbuz1=_inc_pbuz1
inc.z col
bne !+
inc.z col+1
!:
// cy&$f
// [851] (byte~) mode_stdchar::$27 ← (byte) mode_stdchar::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// (cy&$f)*$10
// [852] (byte~) mode_stdchar::$28 ← (byte~) mode_stdchar::$27 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z _28
// cx&$f
// [853] (byte~) mode_stdchar::$29 ← (byte) mode_stdchar::cx#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// (cy&$f)*$10|(cx&$f)
// [854] (byte~) mode_stdchar::$30 ← (byte~) mode_stdchar::$28 | (byte~) mode_stdchar::$29 -- vbuaa=vbuz1_bor_vbuaa
ora.z _28
// *ch++ = (cy&$f)*$10|(cx&$f)
// [855] *((byte*) mode_stdchar::ch#2) ← (byte~) mode_stdchar::$30 -- _deref_pbuz1=vbuaa
ldy #0
sta (ch),y
// *ch++ = (cy&$f)*$10|(cx&$f);
// [856] (byte*) mode_stdchar::ch#1 ← ++ (byte*) mode_stdchar::ch#2 -- pbuz1=_inc_pbuz1
inc.z ch
bne !+
inc.z ch+1
!:
// for(byte cx: 0..39)
// [857] (byte) mode_stdchar::cx#1 ← ++ (byte) mode_stdchar::cx#2 -- vbuxx=_inc_vbuxx
inx
// [858] if((byte) mode_stdchar::cx#1!=(byte) $28) goto mode_stdchar::@4 -- vbuxx_neq_vbuc1_then_la1
cpx #$28
bne b4
// mode_stdchar::@5
// for(byte cy: 0..24 )
// [859] (byte) mode_stdchar::cy#1 ← ++ (byte) mode_stdchar::cy#4 -- vbuz1=_inc_vbuz1
inc.z cy
// [860] if((byte) mode_stdchar::cy#1!=(byte) $19) goto mode_stdchar::@3 -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z cy
bne b3
// [861] phi from mode_stdchar::@5 to mode_stdchar::@6 [phi:mode_stdchar::@5->mode_stdchar::@6]
// mode_stdchar::@6
// mode_ctrl()
// [862] call mode_ctrl
// [155] phi from mode_stdchar::@6 to mode_ctrl [phi:mode_stdchar::@6->mode_ctrl]
// [155] phi (byte) dtv_control#144 = (byte) 0 [phi:mode_stdchar::@6->mode_ctrl#0] -- vbuz1=vbuc1
lda #0
sta.z dtv_control
jsr mode_ctrl
// mode_stdchar::@return
// }
// [863] return
rts
}
// print_str_lines
// Print a number of zero-terminated strings, each followed by a newline.
// The sequence of lines is terminated by another zero.
// print_str_lines(byte* zeropage($b) str)
print_str_lines: {
.label str = $b
// [865] phi from print_str_lines to print_str_lines::@1 [phi:print_str_lines->print_str_lines::@1]
// [865] phi (byte*) print_line_cursor#17 = (const byte*) menu::SCREEN#0 [phi:print_str_lines->print_str_lines::@1#0] -- pbuz1=pbuc1
lda #<menu.SCREEN
sta.z print_line_cursor
lda #>menu.SCREEN
sta.z print_line_cursor+1
// [865] phi (byte*) print_char_cursor#19 = (const byte*) menu::SCREEN#0 [phi:print_str_lines->print_str_lines::@1#1] -- pbuz1=pbuc1
lda #<menu.SCREEN
sta.z print_char_cursor
lda #>menu.SCREEN
sta.z print_char_cursor+1
// [865] phi (byte*) print_str_lines::str#2 = (const byte[]) MENU_TEXT#0 [phi:print_str_lines->print_str_lines::@1#2] -- pbuz1=pbuc1
lda #<MENU_TEXT
sta.z str
lda #>MENU_TEXT
sta.z str+1
// print_str_lines::@1
b1:
// while(*str)
// [866] if((byte) 0!=*((byte*) print_str_lines::str#2)) goto print_str_lines::@2 -- vbuc1_neq__deref_pbuz1_then_la1
ldy #0
lda (str),y
cmp #0
bne b2
// print_str_lines::@return
// }
// [867] return
rts
// [868] phi from print_str_lines::@1 print_str_lines::@3 to print_str_lines::@2 [phi:print_str_lines::@1/print_str_lines::@3->print_str_lines::@2]
// [868] phi (byte*) print_char_cursor#17 = (byte*) print_char_cursor#19 [phi:print_str_lines::@1/print_str_lines::@3->print_str_lines::@2#0] -- register_copy
// [868] phi (byte*) print_str_lines::str#3 = (byte*) print_str_lines::str#2 [phi:print_str_lines::@1/print_str_lines::@3->print_str_lines::@2#1] -- register_copy
// print_str_lines::@2
b2:
// ch = *(str++)
// [869] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#3) -- vbuaa=_deref_pbuz1
ldy #0
lda (str),y
// [870] (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#3 -- pbuz1=_inc_pbuz1
inc.z str
bne !+
inc.z str+1
!:
// if(ch)
// [871] if((byte) 0==(byte) print_str_lines::ch#0) goto print_str_lines::@3 -- vbuc1_eq_vbuaa_then_la1
cmp #0
beq b3
// print_str_lines::@4
// *(print_char_cursor++) = ch
// [872] *((byte*) print_char_cursor#17) ← (byte) print_str_lines::ch#0 -- _deref_pbuz1=vbuaa
ldy #0
sta (print_char_cursor),y
// *(print_char_cursor++) = ch;
// [873] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#17 -- pbuz1=_inc_pbuz1
inc.z print_char_cursor
bne !+
inc.z print_char_cursor+1
!:
// [874] phi from print_str_lines::@2 print_str_lines::@4 to print_str_lines::@3 [phi:print_str_lines::@2/print_str_lines::@4->print_str_lines::@3]
// [874] phi (byte*) print_char_cursor#32 = (byte*) print_char_cursor#17 [phi:print_str_lines::@2/print_str_lines::@4->print_str_lines::@3#0] -- register_copy
// print_str_lines::@3
b3:
// while (ch)
// [875] if((byte) 0!=(byte) print_str_lines::ch#0) goto print_str_lines::@2 -- vbuc1_neq_vbuaa_then_la1
cmp #0
bne b2
// [876] phi from print_str_lines::@3 to print_str_lines::@5 [phi:print_str_lines::@3->print_str_lines::@5]
// print_str_lines::@5
// print_ln()
// [877] call print_ln
// [879] phi from print_str_lines::@5 to print_ln [phi:print_str_lines::@5->print_ln]
jsr print_ln
// print_str_lines::@6
// [878] (byte*~) print_char_cursor#100 ← (byte*) print_line_cursor#19 -- pbuz1=pbuz2
lda.z print_line_cursor
sta.z print_char_cursor
lda.z print_line_cursor+1
sta.z print_char_cursor+1
// [865] phi from print_str_lines::@6 to print_str_lines::@1 [phi:print_str_lines::@6->print_str_lines::@1]
// [865] phi (byte*) print_line_cursor#17 = (byte*) print_line_cursor#19 [phi:print_str_lines::@6->print_str_lines::@1#0] -- register_copy
// [865] phi (byte*) print_char_cursor#19 = (byte*~) print_char_cursor#100 [phi:print_str_lines::@6->print_str_lines::@1#1] -- register_copy
// [865] phi (byte*) print_str_lines::str#2 = (byte*) print_str_lines::str#0 [phi:print_str_lines::@6->print_str_lines::@1#2] -- register_copy
jmp b1
}
// print_ln
// Print a newline
print_ln: {
// [880] phi from print_ln print_ln::@1 to print_ln::@1 [phi:print_ln/print_ln::@1->print_ln::@1]
// [880] phi (byte*) print_line_cursor#18 = (byte*) print_line_cursor#17 [phi:print_ln/print_ln::@1->print_ln::@1#0] -- register_copy
// print_ln::@1
b1:
// print_line_cursor + $28
// [881] (byte*) print_line_cursor#19 ← (byte*) print_line_cursor#18 + (byte) $28 -- pbuz1=pbuz1_plus_vbuc1
lda #$28
clc
adc.z print_line_cursor
sta.z print_line_cursor
bcc !+
inc.z print_line_cursor+1
!:
// while (print_line_cursor<print_char_cursor)
// [882] if((byte*) print_line_cursor#19<(byte*) print_char_cursor#32) goto print_ln::@1 -- pbuz1_lt_pbuz2_then_la1
lda.z print_line_cursor+1
cmp.z print_char_cursor+1
bcc b1
bne !+
lda.z print_line_cursor
cmp.z print_char_cursor
bcc b1
!:
// print_ln::@return
// }
// [883] return
rts
}
// print_cls
// Clear the screen. Also resets current line/char cursor.
print_cls: {
// memset(print_screen, ' ', 1000)
// [885] call memset
// [887] phi from print_cls to memset [phi:print_cls->memset]
jsr memset
// print_cls::@return
// }
// [886] return
rts
}
// memset
// Copies the character c (an unsigned char) to the first num characters of the object pointed to by the argument str.
memset: {
.const c = ' '
.const num = $3e8
.label str = menu.SCREEN
.label end = str+num
.label dst = 9
// [888] phi from memset to memset::@1 [phi:memset->memset::@1]
// [888] phi (byte*) memset::dst#2 = (byte*)(const void*) memset::str#0 [phi:memset->memset::@1#0] -- pbuz1=pbuc1
lda #<str
sta.z dst
lda #>str
sta.z dst+1
// memset::@1
b1:
// for(char* dst = str; dst!=end; dst++)
// [889] if((byte*) memset::dst#2!=(const byte*) memset::end#0) goto memset::@2 -- pbuz1_neq_pbuc1_then_la1
lda.z dst+1
cmp #>end
bne b2
lda.z dst
cmp #<end
bne b2
// memset::@return
// }
// [890] return
rts
// memset::@2
b2:
// *dst = c
// [891] *((byte*) memset::dst#2) ← (const byte) memset::c#0 -- _deref_pbuz1=vbuc1
lda #c
ldy #0
sta (dst),y
// for(char* dst = str; dst!=end; dst++)
// [892] (byte*) memset::dst#1 ← ++ (byte*) memset::dst#2 -- pbuz1=_inc_pbuz1
inc.z dst
bne !+
inc.z dst+1
!:
// [888] phi from memset::@2 to memset::@1 [phi:memset::@2->memset::@1]
// [888] phi (byte*) memset::dst#2 = (byte*) memset::dst#1 [phi:memset::@2->memset::@1#0] -- register_copy
jmp b1
}
// print_set_screen
// Set the screen to print on. Also resets current line/char cursor.
print_set_screen: {
// print_set_screen::@return
// }
// [894] return
rts
}
// File Data
// Default vallues for the palette
DTV_PALETTE_DEFAULT: .byte 0, $f, $36, $be, $58, $db, $86, $ff, $29, $26, $3b, 5, 7, $df, $9a, $a
// Keyboard row bitmask as expected by CIA#1 Port A when reading a specific keyboard matrix row (rows are numbered 0-7)
keyboard_matrix_row_bitmask: .byte $fe, $fd, $fb, $f7, $ef, $df, $bf, $7f
// Keyboard matrix column bitmasks for a specific keybooard matrix column when reading the keyboard. (columns are numbered 0-7)
keyboard_matrix_col_bitmask: .byte 1, 2, 4, 8, $10, $20, $40, $80
// Tables for the plotter - initialized by calling bitmap_draw_init();
bitmap_plot_xlo: .fill $100, 0
bitmap_plot_xhi: .fill $100, 0
bitmap_plot_ylo: .fill $100, 0
bitmap_plot_yhi: .fill $100, 0
bitmap_plot_bit: .fill $100, 0
MENU_TEXT: .text "C64DTV Graphics Modes CCLHBME@ OHIIMCC@ LUNCMMM@----------------------------------------@1. Standard Char (V) 0000000@2. Extended Color Char (V) 0000001@3. Multicolor Char (V) 0000010@4. Standard Bitmap (V) 0000100@5. Multicolor Bitmap (V) 0000110@6. High Color Standard Char (H) 0001000@7. High Extended Color Char (H) 0001001@8. High Multicolor Char (H) 0001010@9. High Multicolor Bitmap (H) 0001110@a. Sixs Fred 2 (D) 0010111@b. Two Plane Bitmap (D) 0011101@c. Sixs Fred (2 Plane MC BM) (D) 0011111@d. 8bpp Pixel Cell (D) 0111011@e. Chunky 8bpp Bitmap (D) 1111011@----------------------------------------@ (V) vicII (H) vicII+hicol (D) c64dtv@"
.byte 0