1
0
mirror of https://gitlab.com/camelot/kickc.git synced 2024-09-09 08:54:40 +00:00
kickc/src/test/ref/c64dtv-gfxmodes.log

30686 lines
2.1 MiB

Inlined call (byte~) vicSelectGfxBank::$0 ← call toDd00 (byte*) vicSelectGfxBank::gfx
CONTROL FLOW GRAPH SSA
@begin: scope:[] from
to:@1
(void()) dtvSetCpuBankSegment1((byte) dtvSetCpuBankSegment1::cpuBankIdx)
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 )
*((const byte*) dtvSetCpuBankSegment1::cpuBank) ← (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
(void*()) memset((void*) memset::str , (byte) memset::c , (word) memset::num)
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::@3
(void*) memset::str#1 ← phi( memset/(void*) memset::str#3 memset::@3/(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::$4 ← (byte*)(void*) memset::str#2
(byte*~) memset::$2 ← (byte*~) memset::$4 + (word) memset::num#2
(byte*) memset::end#0 ← (byte*~) memset::$2
(byte*) memset::dst#0 ← ((byte*)) (void*) memset::str#2
to:memset::@3
memset::@3: scope:[memset] from memset::@2 memset::@4
(byte) memset::c#2 ← phi( memset::@2/(byte) memset::c#3 memset::@4/(byte) memset::c#1 )
(void*) memset::str#4 ← phi( memset::@2/(void*) memset::str#2 memset::@4/(void*) memset::str#5 )
(byte*) memset::end#1 ← phi( memset::@2/(byte*) memset::end#0 memset::@4/(byte*) memset::end#2 )
(byte*) memset::dst#2 ← phi( memset::@2/(byte*) memset::dst#0 memset::@4/(byte*) memset::dst#1 )
(bool~) memset::$3 ← (byte*) memset::dst#2 != (byte*) memset::end#1
if((bool~) memset::$3) goto memset::@4
to:memset::@1
memset::@4: scope:[memset] from memset::@3
(void*) memset::str#5 ← phi( memset::@3/(void*) memset::str#4 )
(byte*) memset::end#2 ← phi( memset::@3/(byte*) memset::end#1 )
(byte*) memset::dst#3 ← phi( memset::@3/(byte*) memset::dst#2 )
(byte) memset::c#1 ← phi( memset::@3/(byte) memset::c#2 )
*((byte*) memset::dst#3) ← (byte) memset::c#1
(byte*) memset::dst#1 ← ++ (byte*) memset::dst#3
to:memset::@3
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
@1: scope:[] from @begin
(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:@2
(void()) print_str_lines((byte*) print_str_lines::str)
print_str_lines: scope:[print_str_lines] from menu::@32
(byte*) print_line_cursor#50 ← phi( menu::@32/(byte*) print_line_cursor#12 )
(byte*) print_char_cursor#56 ← phi( menu::@32/(byte*) print_char_cursor#15 )
(byte*) print_str_lines::str#4 ← phi( menu::@32/(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::@7
(byte*) print_line_cursor#31 ← phi( print_str_lines/(byte*) print_line_cursor#50 print_str_lines::@7/(byte*) print_line_cursor#1 )
(byte*) print_char_cursor#37 ← phi( print_str_lines/(byte*) print_char_cursor#56 print_str_lines::@7/(byte*) print_char_cursor#2 )
(byte*) print_str_lines::str#2 ← phi( print_str_lines/(byte*) print_str_lines::str#4 print_str_lines::@7/(byte*) print_str_lines::str#5 )
(bool~) print_str_lines::$3 ← (number) 0 != *((byte*) print_str_lines::str#2)
if((bool~) print_str_lines::$3) goto print_str_lines::@2
to:print_str_lines::@return
print_str_lines::@2: scope:[print_str_lines] from print_str_lines::@1 print_str_lines::@3
(byte*) print_line_cursor#68 ← phi( print_str_lines::@1/(byte*) print_line_cursor#31 print_str_lines::@3/(byte*) print_line_cursor#51 )
(byte*) print_char_cursor#57 ← phi( print_str_lines::@1/(byte*) print_char_cursor#37 print_str_lines::@3/(byte*) print_char_cursor#58 )
(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#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::$5 ← (number) 0 != (byte) print_str_lines::ch#0
(bool~) print_str_lines::$0 ← ! (bool~) print_str_lines::$5
if((bool~) print_str_lines::$0) goto print_str_lines::@3
to:print_str_lines::@4
print_str_lines::@3: scope:[print_str_lines] from print_str_lines::@2 print_str_lines::@6
(byte*) print_char_cursor#58 ← phi( print_str_lines::@2/(byte*) print_char_cursor#57 print_str_lines::@6/(byte*) print_char_cursor#1 )
(byte*) print_line_cursor#51 ← phi( print_str_lines::@2/(byte*) print_line_cursor#68 print_str_lines::@6/(byte*) print_line_cursor#69 )
(byte*) print_str_lines::str#6 ← phi( print_str_lines::@2/(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::@2/(byte) print_str_lines::ch#0 print_str_lines::@6/(byte) print_str_lines::ch#3 )
(bool~) print_str_lines::$4 ← (number) 0 != (byte) print_str_lines::ch#1
if((bool~) print_str_lines::$4) goto print_str_lines::@2
to:print_str_lines::@5
print_str_lines::@4: scope:[print_str_lines] from print_str_lines::@2
(byte*) print_line_cursor#84 ← phi( print_str_lines::@2/(byte*) print_line_cursor#68 )
(byte*) print_str_lines::str#9 ← phi( print_str_lines::@2/(byte*) print_str_lines::str#0 )
(byte*) print_char_cursor#35 ← phi( print_str_lines::@2/(byte*) print_char_cursor#57 )
(byte) print_str_lines::ch#2 ← phi( print_str_lines::@2/(byte) print_str_lines::ch#0 )
(byte) print_char::ch#0 ← (byte) print_str_lines::ch#2
call print_char
to:print_str_lines::@6
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#84 )
(byte*) print_str_lines::str#7 ← phi( print_str_lines::@4/(byte*) print_str_lines::str#9 )
(byte) print_str_lines::ch#3 ← phi( print_str_lines::@4/(byte) print_str_lines::ch#2 )
(byte*) print_char_cursor#19 ← phi( print_str_lines::@4/(byte*) print_char_cursor#7 )
(byte*) print_char_cursor#1 ← (byte*) print_char_cursor#19
to:print_str_lines::@3
print_str_lines::@5: scope:[print_str_lines] from print_str_lines::@3
(byte*) print_str_lines::str#8 ← phi( print_str_lines::@3/(byte*) print_str_lines::str#6 )
(byte*) print_char_cursor#36 ← phi( print_str_lines::@3/(byte*) print_char_cursor#58 )
(byte*) print_line_cursor#30 ← phi( print_str_lines::@3/(byte*) print_line_cursor#51 )
call print_ln
to:print_str_lines::@7
print_str_lines::@7: scope:[print_str_lines] from print_str_lines::@5
(byte*) print_str_lines::str#5 ← phi( print_str_lines::@5/(byte*) print_str_lines::str#8 )
(byte*) print_char_cursor#20 ← phi( print_str_lines::@5/(byte*) print_char_cursor#5 )
(byte*) print_line_cursor#16 ← phi( print_str_lines::@5/(byte*) print_line_cursor#4 )
(byte*) print_line_cursor#1 ← (byte*) print_line_cursor#16
(byte*) print_char_cursor#2 ← (byte*) print_char_cursor#20
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#21 ← phi( print_str_lines::@1/(byte*) print_char_cursor#37 )
(byte*) print_char_cursor#3 ← (byte*) print_char_cursor#21
(byte*) print_line_cursor#2 ← (byte*) print_line_cursor#17
return
to:@return
(void()) print_ln()
print_ln: scope:[print_ln] from print_str_lines::@5
(byte*) print_char_cursor#38 ← phi( print_str_lines::@5/(byte*) print_char_cursor#36 )
(byte*) print_line_cursor#32 ← phi( print_str_lines::@5/(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#22 ← phi( print_ln/(byte*) print_char_cursor#38 print_ln::@1/(byte*) print_char_cursor#22 )
(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#22
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#23 ← 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#23
return
to:@return
(void()) print_char((byte) print_char::ch)
print_char: scope:[print_char] from print_str_lines::@4
(byte*) print_char_cursor#24 ← phi( print_str_lines::@4/(byte*) print_char_cursor#35 )
(byte) print_char::ch#1 ← phi( print_str_lines::@4/(byte) print_char::ch#0 )
*((byte*) print_char_cursor#24) ← (byte) print_char::ch#1
(byte*) print_char_cursor#6 ← ++ (byte*) print_char_cursor#24
to:print_char::@return
print_char::@return: scope:[print_char] from print_char
(byte*) print_char_cursor#25 ← phi( print_char/(byte*) print_char_cursor#6 )
(byte*) print_char_cursor#7 ← (byte*) print_char_cursor#25
return
to:@return
(void()) print_cls()
print_cls: scope:[print_cls] from menu::@31
(byte*) print_screen#8 ← phi( menu::@31/(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#8 ← (byte*) print_line_cursor#5
to:print_cls::@return
print_cls::@return: scope:[print_cls] from print_cls::@1
(byte*) print_char_cursor#26 ← phi( print_cls::@1/(byte*) print_char_cursor#8 )
(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#9 ← (byte*) print_char_cursor#26
return
to:@return
(void()) print_set_screen((byte*) print_set_screen::screen)
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#10 ← (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#27 ← phi( print_set_screen/(byte*) print_char_cursor#10 )
(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#11 ← (byte*) print_char_cursor#27
return
to:@return
(byte()) keyboard_matrix_read((byte) keyboard_matrix_read::rowid)
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*)(const nomodify struct MOS6526_CIA*) CIA1+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← *((const byte*) keyboard_matrix_row_bitmask + (byte) keyboard_matrix_read::rowid#1)
(byte~) keyboard_matrix_read::$0 ← ~ *((byte*)(const nomodify struct MOS6526_CIA*) CIA1+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_B)
(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
(byte()) keyboard_key_pressed((byte) keyboard_key_pressed::key)
keyboard_key_pressed: scope:[keyboard_key_pressed] from menu::@10 menu::@11 menu::@12 menu::@13 menu::@14 menu::@15 menu::@16 menu::@17 menu::@18 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
(byte) keyboard_key_pressed::key#20 ← phi( menu::@10/(byte) keyboard_key_pressed::key#3 menu::@11/(byte) keyboard_key_pressed::key#4 menu::@12/(byte) keyboard_key_pressed::key#5 menu::@13/(byte) keyboard_key_pressed::key#6 menu::@14/(byte) keyboard_key_pressed::key#7 menu::@15/(byte) keyboard_key_pressed::key#8 menu::@16/(byte) keyboard_key_pressed::key#9 menu::@17/(byte) keyboard_key_pressed::key#10 menu::@18/(byte) keyboard_key_pressed::key#11 menu::@7/(byte) keyboard_key_pressed::key#0 menu::@8/(byte) keyboard_key_pressed::key#1 menu::@9/(byte) keyboard_key_pressed::key#2 mode_ctrl::@10/(byte) keyboard_key_pressed::key#19 mode_ctrl::@3/(byte) keyboard_key_pressed::key#12 mode_ctrl::@4/(byte) keyboard_key_pressed::key#13 mode_ctrl::@5/(byte) keyboard_key_pressed::key#14 mode_ctrl::@6/(byte) keyboard_key_pressed::key#15 mode_ctrl::@7/(byte) keyboard_key_pressed::key#16 mode_ctrl::@8/(byte) keyboard_key_pressed::key#17 mode_ctrl::@9/(byte) keyboard_key_pressed::key#18 )
(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::@1
keyboard_key_pressed::@1: 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 & *((const byte*) keyboard_matrix_col_bitmask + (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::@1
(byte) keyboard_key_pressed::return#22 ← phi( keyboard_key_pressed::@1/(byte) keyboard_key_pressed::return#0 )
(byte) keyboard_key_pressed::return#1 ← (byte) keyboard_key_pressed::return#22
return
to:@return
(void()) bitmap_init((byte*) bitmap_init::bitmap)
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 ← (byte) $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
*((const to_nomodify byte*) bitmap_plot_xlo + (byte) bitmap_init::x#2) ← (number~) bitmap_init::$0
(byte~) bitmap_init::$1 ← > (byte*) bitmap_init::bitmap#1
*((const to_nomodify byte*) bitmap_plot_xhi + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$1
*((const to_nomodify byte*) bitmap_plot_bit + (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
*((const to_nomodify byte*) bitmap_plot_ylo + (byte) bitmap_init::y#2) ← (number~) bitmap_init::$8
(byte~) bitmap_init::$9 ← > (byte*) bitmap_init::yoffs#2
*((const to_nomodify byte*) bitmap_plot_yhi + (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
(void()) bitmap_clear()
bitmap_clear: scope:[bitmap_clear] from mode_stdbitmap::@10
(byte*) bitmap_clear::bitmap#0 ← (byte*){ *((const to_nomodify byte*) bitmap_plot_xhi + (number) 0), *((const to_nomodify byte*) bitmap_plot_xlo + (number) 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::$0 ← (byte) bitmap_clear::x#1 != rangelast(0,$c7)
if((bool~) bitmap_clear::$0) 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::$1 ← (byte) bitmap_clear::y#1 != rangelast(0,$27)
if((bool~) bitmap_clear::$1) goto bitmap_clear::@1
to:bitmap_clear::@return
bitmap_clear::@return: scope:[bitmap_clear] from bitmap_clear::@3
return
to:@return
(void()) bitmap_plot((byte) bitmap_plot::x , (byte) bitmap_plot::y)
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){ *((const to_nomodify byte*) bitmap_plot_xhi + (byte) bitmap_plot::x#4), *((const to_nomodify byte*) bitmap_plot_xlo + (byte) bitmap_plot::x#4) }
(word) bitmap_plot::plotter_y#0 ← (word){ *((const to_nomodify byte*) bitmap_plot_yhi + (byte) bitmap_plot::y#4), *((const to_nomodify byte*) bitmap_plot_ylo + (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) | *((const to_nomodify byte*) bitmap_plot_bit + (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
(void()) bitmap_line((byte) bitmap_line::x0 , (byte) bitmap_line::x1 , (byte) bitmap_line::y0 , (byte) bitmap_line::y1)
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::@2
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::@11
to:bitmap_line::@5
bitmap_line::@2: 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::@7
to:bitmap_line::@3
bitmap_line::@7: scope:[bitmap_line] from bitmap_line::@2
(byte) bitmap_line::x0#11 ← phi( bitmap_line::@2/(byte) bitmap_line::x0#3 )
(byte) bitmap_line::x1#11 ← phi( bitmap_line::@2/(byte) bitmap_line::x1#3 )
(byte) bitmap_line::xd#3 ← phi( bitmap_line::@2/(byte) bitmap_line::xd#2 )
(byte) bitmap_line::y0#3 ← phi( bitmap_line::@2/(byte) bitmap_line::y0#2 )
(byte) bitmap_line::y1#3 ← phi( bitmap_line::@2/(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::@9
to:bitmap_line::@10
bitmap_line::@3: scope:[bitmap_line] from bitmap_line::@2
(byte) bitmap_line::x0#10 ← phi( bitmap_line::@2/(byte) bitmap_line::x0#3 )
(byte) bitmap_line::x1#10 ← phi( bitmap_line::@2/(byte) bitmap_line::x1#3 )
(byte) bitmap_line::xd#4 ← phi( bitmap_line::@2/(byte) bitmap_line::xd#2 )
(byte) bitmap_line::y1#4 ← phi( bitmap_line::@2/(byte) bitmap_line::y1#2 )
(byte) bitmap_line::y0#4 ← phi( bitmap_line::@2/(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::@8
to:bitmap_line::@4
bitmap_line::@8: scope:[bitmap_line] from bitmap_line::@3
(byte) bitmap_line::yd#5 ← phi( bitmap_line::@3/(byte) bitmap_line::yd#2 )
(byte) bitmap_line::xd#5 ← phi( bitmap_line::@3/(byte) bitmap_line::xd#4 )
(byte) bitmap_line::x0#4 ← phi( bitmap_line::@3/(byte) bitmap_line::x0#10 )
(byte) bitmap_line::y1#5 ← phi( bitmap_line::@3/(byte) bitmap_line::y1#4 )
(byte) bitmap_line::x1#4 ← phi( bitmap_line::@3/(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::@15
bitmap_line::@15: scope:[bitmap_line] from bitmap_line::@8
to:bitmap_line::@return
bitmap_line::@4: scope:[bitmap_line] from bitmap_line::@3
(byte) bitmap_line::xd#6 ← phi( bitmap_line::@3/(byte) bitmap_line::xd#4 )
(byte) bitmap_line::yd#6 ← phi( bitmap_line::@3/(byte) bitmap_line::yd#2 )
(byte) bitmap_line::y0#5 ← phi( bitmap_line::@3/(byte) bitmap_line::y0#4 )
(byte) bitmap_line::x1#5 ← phi( bitmap_line::@3/(byte) bitmap_line::x1#10 )
(byte) bitmap_line::y1#6 ← phi( bitmap_line::@3/(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::@16
bitmap_line::@16: scope:[bitmap_line] from bitmap_line::@4
to:bitmap_line::@return
bitmap_line::@9: scope:[bitmap_line] from bitmap_line::@7
(byte) bitmap_line::yd#7 ← phi( bitmap_line::@7/(byte) bitmap_line::yd#1 )
(byte) bitmap_line::xd#7 ← phi( bitmap_line::@7/(byte) bitmap_line::xd#3 )
(byte) bitmap_line::x0#5 ← phi( bitmap_line::@7/(byte) bitmap_line::x0#11 )
(byte) bitmap_line::y1#7 ← phi( bitmap_line::@7/(byte) bitmap_line::y1#3 )
(byte) bitmap_line::x1#6 ← phi( bitmap_line::@7/(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::@17
bitmap_line::@17: scope:[bitmap_line] from bitmap_line::@9
to:bitmap_line::@return
bitmap_line::@10: scope:[bitmap_line] from bitmap_line::@7
(byte) bitmap_line::xd#8 ← phi( bitmap_line::@7/(byte) bitmap_line::xd#3 )
(byte) bitmap_line::yd#8 ← phi( bitmap_line::@7/(byte) bitmap_line::yd#1 )
(byte) bitmap_line::y1#8 ← phi( bitmap_line::@7/(byte) bitmap_line::y1#3 )
(byte) bitmap_line::x0#6 ← phi( bitmap_line::@7/(byte) bitmap_line::x0#11 )
(byte) bitmap_line::y0#6 ← phi( bitmap_line::@7/(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::@18
bitmap_line::@18: scope:[bitmap_line] from bitmap_line::@10
to:bitmap_line::@return
bitmap_line::@11: 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::@13
to:bitmap_line::@14
bitmap_line::@5: 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::@12
to:bitmap_line::@6
bitmap_line::@12: scope:[bitmap_line] from bitmap_line::@5
(byte) bitmap_line::yd#9 ← phi( bitmap_line::@5/(byte) bitmap_line::yd#4 )
(byte) bitmap_line::xd#11 ← phi( bitmap_line::@5/(byte) bitmap_line::xd#10 )
(byte) bitmap_line::x1#7 ← phi( bitmap_line::@5/(byte) bitmap_line::x1#12 )
(byte) bitmap_line::y0#9 ← phi( bitmap_line::@5/(byte) bitmap_line::y0#8 )
(byte) bitmap_line::x0#7 ← phi( bitmap_line::@5/(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::@19
bitmap_line::@19: scope:[bitmap_line] from bitmap_line::@12
to:bitmap_line::@return
bitmap_line::@6: scope:[bitmap_line] from bitmap_line::@5
(byte) bitmap_line::xd#12 ← phi( bitmap_line::@5/(byte) bitmap_line::xd#10 )
(byte) bitmap_line::yd#10 ← phi( bitmap_line::@5/(byte) bitmap_line::yd#4 )
(byte) bitmap_line::y0#10 ← phi( bitmap_line::@5/(byte) bitmap_line::y0#8 )
(byte) bitmap_line::x1#8 ← phi( bitmap_line::@5/(byte) bitmap_line::x1#12 )
(byte) bitmap_line::y1#11 ← phi( bitmap_line::@5/(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::@20
bitmap_line::@20: scope:[bitmap_line] from bitmap_line::@6
to:bitmap_line::@return
bitmap_line::@13: scope:[bitmap_line] from bitmap_line::@11
(byte) bitmap_line::yd#11 ← phi( bitmap_line::@11/(byte) bitmap_line::yd#3 )
(byte) bitmap_line::xd#13 ← phi( bitmap_line::@11/(byte) bitmap_line::xd#9 )
(byte) bitmap_line::x1#9 ← phi( bitmap_line::@11/(byte) bitmap_line::x1#13 )
(byte) bitmap_line::y0#11 ← phi( bitmap_line::@11/(byte) bitmap_line::y0#7 )
(byte) bitmap_line::x0#8 ← phi( bitmap_line::@11/(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::@21
bitmap_line::@21: scope:[bitmap_line] from bitmap_line::@13
to:bitmap_line::@return
bitmap_line::@14: scope:[bitmap_line] from bitmap_line::@11
(byte) bitmap_line::xd#14 ← phi( bitmap_line::@11/(byte) bitmap_line::xd#9 )
(byte) bitmap_line::yd#12 ← phi( bitmap_line::@11/(byte) bitmap_line::yd#3 )
(byte) bitmap_line::y1#12 ← phi( bitmap_line::@11/(byte) bitmap_line::y1#9 )
(byte) bitmap_line::x0#9 ← phi( bitmap_line::@11/(byte) bitmap_line::x0#13 )
(byte) bitmap_line::y0#12 ← phi( bitmap_line::@11/(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::@22
bitmap_line::@22: scope:[bitmap_line] from bitmap_line::@14
to:bitmap_line::@return
bitmap_line::@return: scope:[bitmap_line] from bitmap_line::@15 bitmap_line::@16 bitmap_line::@17 bitmap_line::@18 bitmap_line::@19 bitmap_line::@20 bitmap_line::@21 bitmap_line::@22
return
to:@return
(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)
bitmap_line_xdyi: scope:[bitmap_line_xdyi] from bitmap_line::@13 bitmap_line::@8
(byte) bitmap_line_xdyi::x1#6 ← phi( bitmap_line::@13/(byte) bitmap_line_xdyi::x1#1 bitmap_line::@8/(byte) bitmap_line_xdyi::x1#0 )
(byte) bitmap_line_xdyi::xd#5 ← phi( bitmap_line::@13/(byte) bitmap_line_xdyi::xd#1 bitmap_line::@8/(byte) bitmap_line_xdyi::xd#0 )
(byte) bitmap_line_xdyi::y#5 ← phi( bitmap_line::@13/(byte) bitmap_line_xdyi::y#1 bitmap_line::@8/(byte) bitmap_line_xdyi::y#0 )
(byte) bitmap_line_xdyi::x#6 ← phi( bitmap_line::@13/(byte) bitmap_line_xdyi::x#1 bitmap_line::@8/(byte) bitmap_line_xdyi::x#0 )
(byte) bitmap_line_xdyi::yd#2 ← phi( bitmap_line::@13/(byte) bitmap_line_xdyi::yd#1 bitmap_line::@8/(byte) bitmap_line_xdyi::yd#0 )
(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::@4
bitmap_line_xdyi::@4: 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::@4
(byte) bitmap_line_xdyi::xd#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::xd#3 bitmap_line_xdyi::@4/(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::@4/(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::@4/(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::@4/(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::@4/(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::@4/(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::@4
(byte) bitmap_line_xdyi::yd#6 ← phi( bitmap_line_xdyi::@4/(byte) bitmap_line_xdyi::yd#3 )
(byte) bitmap_line_xdyi::x#7 ← phi( bitmap_line_xdyi::@4/(byte) bitmap_line_xdyi::x#2 )
(byte) bitmap_line_xdyi::x1#3 ← phi( bitmap_line_xdyi::@4/(byte) bitmap_line_xdyi::x1#4 )
(byte) bitmap_line_xdyi::xd#3 ← phi( bitmap_line_xdyi::@4/(byte) bitmap_line_xdyi::xd#2 )
(byte) bitmap_line_xdyi::e#4 ← phi( bitmap_line_xdyi::@4/(byte) bitmap_line_xdyi::e#1 )
(byte) bitmap_line_xdyi::y#4 ← phi( bitmap_line_xdyi::@4/(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
(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)
bitmap_line_xdyd: scope:[bitmap_line_xdyd] from bitmap_line::@12 bitmap_line::@9
(byte) bitmap_line_xdyd::x1#6 ← phi( bitmap_line::@12/(byte) bitmap_line_xdyd::x1#1 bitmap_line::@9/(byte) bitmap_line_xdyd::x1#0 )
(byte) bitmap_line_xdyd::xd#5 ← phi( bitmap_line::@12/(byte) bitmap_line_xdyd::xd#1 bitmap_line::@9/(byte) bitmap_line_xdyd::xd#0 )
(byte) bitmap_line_xdyd::y#5 ← phi( bitmap_line::@12/(byte) bitmap_line_xdyd::y#1 bitmap_line::@9/(byte) bitmap_line_xdyd::y#0 )
(byte) bitmap_line_xdyd::x#6 ← phi( bitmap_line::@12/(byte) bitmap_line_xdyd::x#1 bitmap_line::@9/(byte) bitmap_line_xdyd::x#0 )
(byte) bitmap_line_xdyd::yd#2 ← phi( bitmap_line::@12/(byte) bitmap_line_xdyd::yd#1 bitmap_line::@9/(byte) bitmap_line_xdyd::yd#0 )
(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::@4
bitmap_line_xdyd::@4: 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::@4
(byte) bitmap_line_xdyd::xd#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::xd#3 bitmap_line_xdyd::@4/(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::@4/(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::@4/(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::@4/(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::@4/(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::@4/(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::@4
(byte) bitmap_line_xdyd::yd#6 ← phi( bitmap_line_xdyd::@4/(byte) bitmap_line_xdyd::yd#3 )
(byte) bitmap_line_xdyd::x#7 ← phi( bitmap_line_xdyd::@4/(byte) bitmap_line_xdyd::x#2 )
(byte) bitmap_line_xdyd::x1#3 ← phi( bitmap_line_xdyd::@4/(byte) bitmap_line_xdyd::x1#4 )
(byte) bitmap_line_xdyd::xd#3 ← phi( bitmap_line_xdyd::@4/(byte) bitmap_line_xdyd::xd#2 )
(byte) bitmap_line_xdyd::e#4 ← phi( bitmap_line_xdyd::@4/(byte) bitmap_line_xdyd::e#1 )
(byte) bitmap_line_xdyd::y#4 ← phi( bitmap_line_xdyd::@4/(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
(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)
bitmap_line_ydxi: scope:[bitmap_line_ydxi] from bitmap_line::@14 bitmap_line::@4
(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 )
(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 )
(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 )
(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 )
(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 )
(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::@4
bitmap_line_ydxi::@4: 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::@4
(byte) bitmap_line_ydxi::yd#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::yd#3 bitmap_line_ydxi::@4/(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::@4/(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::@4/(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::@4/(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::@4/(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::@4/(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::@4
(byte) bitmap_line_ydxi::xd#6 ← phi( bitmap_line_ydxi::@4/(byte) bitmap_line_ydxi::xd#3 )
(byte) bitmap_line_ydxi::y#7 ← phi( bitmap_line_ydxi::@4/(byte) bitmap_line_ydxi::y#2 )
(byte) bitmap_line_ydxi::y1#3 ← phi( bitmap_line_ydxi::@4/(byte) bitmap_line_ydxi::y1#4 )
(byte) bitmap_line_ydxi::yd#3 ← phi( bitmap_line_ydxi::@4/(byte) bitmap_line_ydxi::yd#2 )
(byte) bitmap_line_ydxi::e#4 ← phi( bitmap_line_ydxi::@4/(byte) bitmap_line_ydxi::e#1 )
(byte) bitmap_line_ydxi::x#4 ← phi( bitmap_line_ydxi::@4/(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
(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)
bitmap_line_ydxd: scope:[bitmap_line_ydxd] from bitmap_line::@10 bitmap_line::@6
(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 )
(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 )
(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 )
(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 )
(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 )
(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::@4
bitmap_line_ydxd::@4: 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::@4
(byte) bitmap_line_ydxd::yd#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::yd#3 bitmap_line_ydxd::@4/(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::@4/(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::@4/(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::@4/(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::@4/(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::@4/(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::@4
(byte) bitmap_line_ydxd::xd#6 ← phi( bitmap_line_ydxd::@4/(byte) bitmap_line_ydxd::xd#3 )
(byte) bitmap_line_ydxd::y#8 ← phi( bitmap_line_ydxd::@4/(byte) bitmap_line_ydxd::y#3 )
(byte) bitmap_line_ydxd::y1#3 ← phi( bitmap_line_ydxd::@4/(byte) bitmap_line_ydxd::y1#4 )
(byte) bitmap_line_ydxd::yd#3 ← phi( bitmap_line_ydxd::@4/(byte) bitmap_line_ydxd::yd#2 )
(byte) bitmap_line_ydxd::e#4 ← phi( bitmap_line_ydxd::@4/(byte) bitmap_line_ydxd::e#1 )
(byte) bitmap_line_ydxd::x#4 ← phi( bitmap_line_ydxd::@4/(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
(void()) main()
main: scope:[main] from @3
(byte) dtv_control#130 ← phi( @3/(byte) dtv_control#129 )
(byte*) print_char_cursor#59 ← phi( @3/(byte*) print_char_cursor#55 )
(byte*) print_line_cursor#52 ← phi( @3/(byte*) print_line_cursor#49 )
(byte*) print_screen#33 ← phi( @3/(byte*) print_screen#32 )
asm { sei }
*((const nomodify byte*) PROCPORT_DDR) ← (const nomodify byte) PROCPORT_DDR_MEMORY_MASK
*((const nomodify byte*) PROCPORT) ← (const nomodify byte) PROCPORT_RAM_IO
*((const nomodify byte*) DTV_FEATURE) ← (const nomodify byte) DTV_FEATURE_ENABLE
to:main::@1
main::@1: scope:[main] from main main::@3
(byte) dtv_control#99 ← phi( main/(byte) dtv_control#130 main::@3/(byte) dtv_control#0 )
(byte*) print_char_cursor#40 ← phi( main/(byte*) print_char_cursor#59 main::@3/(byte*) print_char_cursor#12 )
(byte*) print_line_cursor#34 ← phi( main/(byte*) print_line_cursor#52 main::@3/(byte*) print_line_cursor#9 )
(byte*) print_screen#17 ← phi( main/(byte*) print_screen#33 main::@3/(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#39 ← phi( main::@1/(byte*) print_char_cursor#40 )
(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::@3
main::@3: scope:[main] from main::@2
(byte) dtv_control#55 ← phi( main::@2/(byte) dtv_control#3 )
(byte*) print_char_cursor#28 ← phi( main::@2/(byte*) print_char_cursor#17 )
(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#12 ← (byte*) print_char_cursor#28
(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#29 ← phi( main::@1/(byte*) print_char_cursor#40 )
(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#13 ← (byte*) print_char_cursor#29
(byte) dtv_control#1 ← (byte) dtv_control#56
return
to:@return
(void()) menu()
menu: scope:[menu] from main::@2
(byte) dtv_control#254 ← phi( main::@2/(byte) dtv_control#98 )
(byte*) print_char_cursor#101 ← phi( main::@2/(byte*) print_char_cursor#39 )
(byte*) print_line_cursor#97 ← phi( main::@2/(byte*) print_line_cursor#33 )
(byte*) print_screen#77 ← phi( main::@2/(byte*) print_screen#16 )
*((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte)(dword)(const nomodify byte*) menu::CHARSET/(number) $10000
*((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(number) $400
*((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(number) $400
*((const nomodify byte*) DTV_CONTROL) ← (number) 0
*((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (number) 3
*((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (number) 3^(byte)(word)(const nomodify byte*) menu::CHARSET/(number) $4000
*((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
*((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL
*((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) menu::SCREEN&(number) $3fff/(number) $40|(word)(const nomodify byte*) menu::CHARSET&(number) $3fff/(number) $400
(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#89 ← phi( menu/(byte*) print_char_cursor#101 menu::@1/(byte*) print_char_cursor#89 )
(byte*) print_line_cursor#85 ← phi( menu/(byte*) print_line_cursor#97 menu::@1/(byte*) print_line_cursor#85 )
(byte*) print_screen#65 ← phi( menu/(byte*) print_screen#77 menu::@1/(byte*) print_screen#65 )
(byte) menu::i#2 ← phi( menu/(byte) menu::i#0 menu::@1/(byte) menu::i#1 )
*((const nomodify byte*) DTV_PALETTE + (byte) menu::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (byte) menu::i#2)
(byte) menu::i#1 ← (byte) menu::i#2 + rangenext(0,$f)
(bool~) menu::$3 ← (byte) menu::i#1 != rangelast(0,$f)
if((bool~) menu::$3) 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#75 ← phi( menu::@1/(byte*) print_char_cursor#89 )
(byte*) print_line_cursor#70 ← phi( menu::@1/(byte*) print_line_cursor#85 )
(byte*) print_screen#50 ← phi( menu::@1/(byte*) print_screen#65 )
(byte*) menu::c#0 ← (const nomodify byte*) COLS
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#60 ← phi( menu::@2/(byte*) print_char_cursor#75 menu::@4/(byte*) print_char_cursor#76 )
(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 )
(bool~) menu::$4 ← (byte*) menu::c#2 != (const nomodify byte*) COLS+(number) $3e8
if((bool~) menu::$4) 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#76 ← phi( menu::@3/(byte*) print_char_cursor#60 )
(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) ← (const nomodify byte) LIGHT_GREEN
(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#41 ← phi( menu::@3/(byte*) print_char_cursor#60 )
(byte*) print_line_cursor#35 ← phi( menu::@3/(byte*) print_line_cursor#53 )
(byte*) print_screen#18 ← phi( menu::@3/(byte*) print_screen#34 )
*((const nomodify byte*) BG_COLOR) ← (number) 0
*((const nomodify byte*) BORDER_COLOR) ← (number) 0
(byte*) print_set_screen::screen#0 ← (const nomodify byte*) menu::SCREEN
call print_set_screen
to:menu::@31
menu::@31: scope:[menu] from menu::@5
(byte) dtv_control#188 ← phi( menu::@5/(byte) dtv_control#203 )
(byte*) print_char_cursor#30 ← phi( menu::@5/(byte*) print_char_cursor#11 )
(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#14 ← (byte*) print_char_cursor#30
call print_cls
to:menu::@32
menu::@32: scope:[menu] from menu::@31
(byte) dtv_control#159 ← phi( menu::@31/(byte) dtv_control#188 )
(byte*) print_screen#52 ← phi( menu::@31/(byte*) print_screen#5 )
(byte*) print_char_cursor#31 ← phi( menu::@31/(byte*) print_char_cursor#9 )
(byte*) print_line_cursor#26 ← phi( menu::@31/(byte*) print_line_cursor#6 )
(byte*) print_line_cursor#12 ← (byte*) print_line_cursor#26
(byte*) print_char_cursor#15 ← (byte*) print_char_cursor#31
(byte*) print_str_lines::str#1 ← (const byte*) MENU_TEXT
call print_str_lines
to:menu::@33
menu::@33: scope:[menu] from menu::@32
(byte) dtv_control#131 ← phi( menu::@32/(byte) dtv_control#159 )
(byte*) print_screen#35 ← phi( menu::@32/(byte*) print_screen#52 )
(byte*) print_line_cursor#27 ← phi( menu::@32/(byte*) print_line_cursor#2 )
(byte*) print_char_cursor#32 ← phi( menu::@32/(byte*) print_char_cursor#3 )
(byte*) print_char_cursor#16 ← (byte*) print_char_cursor#32
(byte*) print_line_cursor#13 ← (byte*) print_line_cursor#27
to:menu::@6
menu::@6: scope:[menu] from menu::@33 menu::@55
(byte) dtv_control#101 ← phi( menu::@33/(byte) dtv_control#131 menu::@55/(byte) dtv_control#132 )
(byte*) print_char_cursor#54 ← phi( menu::@33/(byte*) print_char_cursor#16 menu::@55/(byte*) print_char_cursor#61 )
(byte*) print_line_cursor#48 ← phi( menu::@33/(byte*) print_line_cursor#13 menu::@55/(byte*) print_line_cursor#54 )
(byte*) print_screen#31 ← phi( menu::@33/(byte*) print_screen#35 menu::@55/(byte*) print_screen#36 )
if(true) goto menu::@7
to:menu::@return
menu::@7: scope:[menu] from menu::@6
(byte*) print_char_cursor#90 ← phi( menu::@6/(byte*) print_char_cursor#54 )
(byte*) print_line_cursor#86 ← phi( menu::@6/(byte*) print_line_cursor#48 )
(byte*) print_screen#66 ← phi( menu::@6/(byte*) print_screen#31 )
(byte) dtv_control#160 ← phi( menu::@6/(byte) dtv_control#101 )
(byte) keyboard_key_pressed::key#0 ← (const nomodify byte) KEY_1
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#2 ← (byte) keyboard_key_pressed::return#1
to:menu::@34
menu::@34: scope:[menu] from menu::@7
(byte*) print_char_cursor#77 ← phi( menu::@7/(byte*) print_char_cursor#90 )
(byte*) print_line_cursor#72 ← phi( menu::@7/(byte*) print_line_cursor#86 )
(byte*) print_screen#53 ← phi( menu::@7/(byte*) print_screen#66 )
(byte) dtv_control#133 ← phi( menu::@7/(byte) dtv_control#160 )
(byte) keyboard_key_pressed::return#23 ← phi( menu::@7/(byte) keyboard_key_pressed::return#2 )
(byte~) menu::$5 ← (byte) keyboard_key_pressed::return#23
(bool~) menu::$6 ← (byte~) menu::$5 != (number) 0
(bool~) menu::$7 ← ! (bool~) menu::$6
if((bool~) menu::$7) goto menu::@8
to:menu::@19
menu::@8: scope:[menu] from menu::@34
(byte*) print_char_cursor#91 ← phi( menu::@34/(byte*) print_char_cursor#77 )
(byte*) print_line_cursor#87 ← phi( menu::@34/(byte*) print_line_cursor#72 )
(byte*) print_screen#67 ← phi( menu::@34/(byte*) print_screen#53 )
(byte) dtv_control#161 ← phi( menu::@34/(byte) dtv_control#133 )
(byte) keyboard_key_pressed::key#1 ← (const nomodify byte) KEY_2
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#3 ← (byte) keyboard_key_pressed::return#1
to:menu::@35
menu::@35: scope:[menu] from menu::@8
(byte*) print_char_cursor#78 ← phi( menu::@8/(byte*) print_char_cursor#91 )
(byte*) print_line_cursor#73 ← phi( menu::@8/(byte*) print_line_cursor#87 )
(byte*) print_screen#54 ← phi( menu::@8/(byte*) print_screen#67 )
(byte) dtv_control#134 ← phi( menu::@8/(byte) dtv_control#161 )
(byte) keyboard_key_pressed::return#24 ← phi( menu::@8/(byte) keyboard_key_pressed::return#3 )
(byte~) menu::$9 ← (byte) keyboard_key_pressed::return#24
(bool~) menu::$10 ← (byte~) menu::$9 != (number) 0
(bool~) menu::$11 ← ! (bool~) menu::$10
if((bool~) menu::$11) goto menu::@9
to:menu::@20
menu::@19: scope:[menu] from menu::@34
(byte*) print_char_cursor#62 ← phi( menu::@34/(byte*) print_char_cursor#77 )
(byte*) print_line_cursor#55 ← phi( menu::@34/(byte*) print_line_cursor#72 )
(byte*) print_screen#37 ← phi( menu::@34/(byte*) print_screen#53 )
(byte) dtv_control#100 ← phi( menu::@34/(byte) dtv_control#133 )
call mode_stdchar
to:menu::@36
menu::@36: scope:[menu] from menu::@19
(byte*) print_char_cursor#42 ← phi( menu::@19/(byte*) print_char_cursor#62 )
(byte*) print_line_cursor#36 ← phi( menu::@19/(byte*) print_line_cursor#55 )
(byte*) print_screen#19 ← phi( menu::@19/(byte*) print_screen#37 )
(byte) dtv_control#57 ← phi( menu::@19/(byte) dtv_control#20 )
(byte) dtv_control#2 ← (byte) dtv_control#57
to:menu::@return
menu::@return: scope:[menu] from menu::@36 menu::@38 menu::@40 menu::@42 menu::@44 menu::@46 menu::@48 menu::@50 menu::@52 menu::@54 menu::@56 menu::@57 menu::@6
(byte) dtv_control#58 ← phi( menu::@36/(byte) dtv_control#2 menu::@38/(byte) dtv_control#4 menu::@40/(byte) dtv_control#5 menu::@42/(byte) dtv_control#6 menu::@44/(byte) dtv_control#7 menu::@46/(byte) dtv_control#8 menu::@48/(byte) dtv_control#9 menu::@50/(byte) dtv_control#10 menu::@52/(byte) dtv_control#11 menu::@54/(byte) dtv_control#12 menu::@56/(byte) dtv_control#13 menu::@57/(byte) dtv_control#14 menu::@6/(byte) dtv_control#101 )
(byte*) print_char_cursor#33 ← phi( menu::@36/(byte*) print_char_cursor#42 menu::@38/(byte*) print_char_cursor#43 menu::@40/(byte*) print_char_cursor#44 menu::@42/(byte*) print_char_cursor#45 menu::@44/(byte*) print_char_cursor#46 menu::@46/(byte*) print_char_cursor#47 menu::@48/(byte*) print_char_cursor#48 menu::@50/(byte*) print_char_cursor#49 menu::@52/(byte*) print_char_cursor#50 menu::@54/(byte*) print_char_cursor#51 menu::@56/(byte*) print_char_cursor#52 menu::@57/(byte*) print_char_cursor#53 menu::@6/(byte*) print_char_cursor#54 )
(byte*) print_line_cursor#28 ← phi( menu::@36/(byte*) print_line_cursor#36 menu::@38/(byte*) print_line_cursor#37 menu::@40/(byte*) print_line_cursor#38 menu::@42/(byte*) print_line_cursor#39 menu::@44/(byte*) print_line_cursor#40 menu::@46/(byte*) print_line_cursor#41 menu::@48/(byte*) print_line_cursor#42 menu::@50/(byte*) print_line_cursor#43 menu::@52/(byte*) print_line_cursor#44 menu::@54/(byte*) print_line_cursor#45 menu::@56/(byte*) print_line_cursor#46 menu::@57/(byte*) print_line_cursor#47 menu::@6/(byte*) print_line_cursor#48 )
(byte*) print_screen#14 ← phi( menu::@36/(byte*) print_screen#19 menu::@38/(byte*) print_screen#20 menu::@40/(byte*) print_screen#21 menu::@42/(byte*) print_screen#22 menu::@44/(byte*) print_screen#23 menu::@46/(byte*) print_screen#24 menu::@48/(byte*) print_screen#25 menu::@50/(byte*) print_screen#26 menu::@52/(byte*) print_screen#27 menu::@54/(byte*) print_screen#28 menu::@56/(byte*) print_screen#29 menu::@57/(byte*) print_screen#30 menu::@6/(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#17 ← (byte*) print_char_cursor#33
(byte) dtv_control#3 ← (byte) dtv_control#58
return
to:@return
menu::@9: scope:[menu] from menu::@35
(byte*) print_char_cursor#92 ← phi( menu::@35/(byte*) print_char_cursor#78 )
(byte*) print_line_cursor#88 ← phi( menu::@35/(byte*) print_line_cursor#73 )
(byte*) print_screen#68 ← phi( menu::@35/(byte*) print_screen#54 )
(byte) dtv_control#162 ← phi( menu::@35/(byte) dtv_control#134 )
(byte) keyboard_key_pressed::key#2 ← (const nomodify byte) KEY_3
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#4 ← (byte) keyboard_key_pressed::return#1
to:menu::@37
menu::@37: scope:[menu] from menu::@9
(byte*) print_char_cursor#79 ← phi( menu::@9/(byte*) print_char_cursor#92 )
(byte*) print_line_cursor#74 ← phi( menu::@9/(byte*) print_line_cursor#88 )
(byte*) print_screen#55 ← phi( menu::@9/(byte*) print_screen#68 )
(byte) dtv_control#135 ← phi( menu::@9/(byte) dtv_control#162 )
(byte) keyboard_key_pressed::return#25 ← phi( menu::@9/(byte) keyboard_key_pressed::return#4 )
(byte~) menu::$13 ← (byte) keyboard_key_pressed::return#25
(bool~) menu::$14 ← (byte~) menu::$13 != (number) 0
(bool~) menu::$15 ← ! (bool~) menu::$14
if((bool~) menu::$15) goto menu::@10
to:menu::@21
menu::@20: scope:[menu] from menu::@35
(byte*) print_char_cursor#63 ← phi( menu::@35/(byte*) print_char_cursor#78 )
(byte*) print_line_cursor#56 ← phi( menu::@35/(byte*) print_line_cursor#73 )
(byte*) print_screen#38 ← phi( menu::@35/(byte*) print_screen#54 )
(byte) dtv_control#102 ← phi( menu::@35/(byte) dtv_control#134 )
call mode_ecmchar
to:menu::@38
menu::@38: scope:[menu] from menu::@20
(byte*) print_char_cursor#43 ← phi( menu::@20/(byte*) print_char_cursor#63 )
(byte*) print_line_cursor#37 ← phi( menu::@20/(byte*) print_line_cursor#56 )
(byte*) print_screen#20 ← phi( menu::@20/(byte*) print_screen#38 )
(byte) dtv_control#59 ← phi( menu::@20/(byte) dtv_control#23 )
(byte) dtv_control#4 ← (byte) dtv_control#59
to:menu::@return
menu::@10: scope:[menu] from menu::@37
(byte*) print_char_cursor#93 ← phi( menu::@37/(byte*) print_char_cursor#79 )
(byte*) print_line_cursor#89 ← phi( menu::@37/(byte*) print_line_cursor#74 )
(byte*) print_screen#69 ← phi( menu::@37/(byte*) print_screen#55 )
(byte) dtv_control#163 ← phi( menu::@37/(byte) dtv_control#135 )
(byte) keyboard_key_pressed::key#3 ← (const nomodify byte) KEY_4
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#5 ← (byte) keyboard_key_pressed::return#1
to:menu::@39
menu::@39: scope:[menu] from menu::@10
(byte*) print_char_cursor#80 ← phi( menu::@10/(byte*) print_char_cursor#93 )
(byte*) print_line_cursor#75 ← phi( menu::@10/(byte*) print_line_cursor#89 )
(byte*) print_screen#56 ← phi( menu::@10/(byte*) print_screen#69 )
(byte) dtv_control#136 ← phi( menu::@10/(byte) dtv_control#163 )
(byte) keyboard_key_pressed::return#26 ← phi( menu::@10/(byte) keyboard_key_pressed::return#5 )
(byte~) menu::$17 ← (byte) keyboard_key_pressed::return#26
(bool~) menu::$18 ← (byte~) menu::$17 != (number) 0
(bool~) menu::$19 ← ! (bool~) menu::$18
if((bool~) menu::$19) goto menu::@11
to:menu::@22
menu::@21: scope:[menu] from menu::@37
(byte*) print_char_cursor#64 ← phi( menu::@37/(byte*) print_char_cursor#79 )
(byte*) print_line_cursor#57 ← phi( menu::@37/(byte*) print_line_cursor#74 )
(byte*) print_screen#39 ← phi( menu::@37/(byte*) print_screen#55 )
(byte) dtv_control#103 ← phi( menu::@37/(byte) dtv_control#135 )
call mode_mcchar
to:menu::@40
menu::@40: scope:[menu] from menu::@21
(byte*) print_char_cursor#44 ← phi( menu::@21/(byte*) print_char_cursor#64 )
(byte*) print_line_cursor#38 ← phi( menu::@21/(byte*) print_line_cursor#57 )
(byte*) print_screen#21 ← phi( menu::@21/(byte*) print_screen#39 )
(byte) dtv_control#60 ← phi( menu::@21/(byte) dtv_control#26 )
(byte) dtv_control#5 ← (byte) dtv_control#60
to:menu::@return
menu::@11: scope:[menu] from menu::@39
(byte*) print_char_cursor#94 ← phi( menu::@39/(byte*) print_char_cursor#80 )
(byte*) print_line_cursor#90 ← phi( menu::@39/(byte*) print_line_cursor#75 )
(byte*) print_screen#70 ← phi( menu::@39/(byte*) print_screen#56 )
(byte) dtv_control#164 ← phi( menu::@39/(byte) dtv_control#136 )
(byte) keyboard_key_pressed::key#4 ← (const nomodify byte) KEY_6
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#6 ← (byte) keyboard_key_pressed::return#1
to:menu::@41
menu::@41: scope:[menu] from menu::@11
(byte*) print_char_cursor#81 ← phi( menu::@11/(byte*) print_char_cursor#94 )
(byte*) print_line_cursor#76 ← phi( menu::@11/(byte*) print_line_cursor#90 )
(byte*) print_screen#57 ← phi( menu::@11/(byte*) print_screen#70 )
(byte) dtv_control#137 ← phi( menu::@11/(byte) dtv_control#164 )
(byte) keyboard_key_pressed::return#27 ← phi( menu::@11/(byte) keyboard_key_pressed::return#6 )
(byte~) menu::$21 ← (byte) keyboard_key_pressed::return#27
(bool~) menu::$22 ← (byte~) menu::$21 != (number) 0
(bool~) menu::$23 ← ! (bool~) menu::$22
if((bool~) menu::$23) goto menu::@12
to:menu::@23
menu::@22: scope:[menu] from menu::@39
(byte*) print_char_cursor#65 ← phi( menu::@39/(byte*) print_char_cursor#80 )
(byte*) print_line_cursor#58 ← phi( menu::@39/(byte*) print_line_cursor#75 )
(byte*) print_screen#40 ← phi( menu::@39/(byte*) print_screen#56 )
(byte) dtv_control#104 ← phi( menu::@39/(byte) dtv_control#136 )
call mode_stdbitmap
to:menu::@42
menu::@42: scope:[menu] from menu::@22
(byte*) print_char_cursor#45 ← phi( menu::@22/(byte*) print_char_cursor#65 )
(byte*) print_line_cursor#39 ← phi( menu::@22/(byte*) print_line_cursor#58 )
(byte*) print_screen#22 ← phi( menu::@22/(byte*) print_screen#40 )
(byte) dtv_control#61 ← phi( menu::@22/(byte) dtv_control#29 )
(byte) dtv_control#6 ← (byte) dtv_control#61
to:menu::@return
menu::@12: scope:[menu] from menu::@41
(byte*) print_char_cursor#95 ← phi( menu::@41/(byte*) print_char_cursor#81 )
(byte*) print_line_cursor#91 ← phi( menu::@41/(byte*) print_line_cursor#76 )
(byte*) print_screen#71 ← phi( menu::@41/(byte*) print_screen#57 )
(byte) dtv_control#165 ← phi( menu::@41/(byte) dtv_control#137 )
(byte) keyboard_key_pressed::key#5 ← (const nomodify byte) KEY_7
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#7 ← (byte) keyboard_key_pressed::return#1
to:menu::@43
menu::@43: scope:[menu] from menu::@12
(byte*) print_char_cursor#82 ← phi( menu::@12/(byte*) print_char_cursor#95 )
(byte*) print_line_cursor#77 ← phi( menu::@12/(byte*) print_line_cursor#91 )
(byte*) print_screen#58 ← phi( menu::@12/(byte*) print_screen#71 )
(byte) dtv_control#138 ← phi( menu::@12/(byte) dtv_control#165 )
(byte) keyboard_key_pressed::return#28 ← phi( menu::@12/(byte) keyboard_key_pressed::return#7 )
(byte~) menu::$25 ← (byte) keyboard_key_pressed::return#28
(bool~) menu::$26 ← (byte~) menu::$25 != (number) 0
(bool~) menu::$27 ← ! (bool~) menu::$26
if((bool~) menu::$27) goto menu::@13
to:menu::@24
menu::@23: scope:[menu] from menu::@41
(byte*) print_char_cursor#66 ← phi( menu::@41/(byte*) print_char_cursor#81 )
(byte*) print_line_cursor#59 ← phi( menu::@41/(byte*) print_line_cursor#76 )
(byte*) print_screen#41 ← phi( menu::@41/(byte*) print_screen#57 )
(byte) dtv_control#105 ← phi( menu::@41/(byte) dtv_control#137 )
call mode_hicolstdchar
to:menu::@44
menu::@44: scope:[menu] from menu::@23
(byte*) print_char_cursor#46 ← phi( menu::@23/(byte*) print_char_cursor#66 )
(byte*) print_line_cursor#40 ← phi( menu::@23/(byte*) print_line_cursor#59 )
(byte*) print_screen#23 ← phi( menu::@23/(byte*) print_screen#41 )
(byte) dtv_control#62 ← phi( menu::@23/(byte) dtv_control#32 )
(byte) dtv_control#7 ← (byte) dtv_control#62
to:menu::@return
menu::@13: scope:[menu] from menu::@43
(byte*) print_char_cursor#96 ← phi( menu::@43/(byte*) print_char_cursor#82 )
(byte*) print_line_cursor#92 ← phi( menu::@43/(byte*) print_line_cursor#77 )
(byte*) print_screen#72 ← phi( menu::@43/(byte*) print_screen#58 )
(byte) dtv_control#166 ← phi( menu::@43/(byte) dtv_control#138 )
(byte) keyboard_key_pressed::key#6 ← (const nomodify byte) KEY_8
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#8 ← (byte) keyboard_key_pressed::return#1
to:menu::@45
menu::@45: scope:[menu] from menu::@13
(byte*) print_char_cursor#83 ← phi( menu::@13/(byte*) print_char_cursor#96 )
(byte*) print_line_cursor#78 ← phi( menu::@13/(byte*) print_line_cursor#92 )
(byte*) print_screen#59 ← phi( menu::@13/(byte*) print_screen#72 )
(byte) dtv_control#139 ← phi( menu::@13/(byte) dtv_control#166 )
(byte) keyboard_key_pressed::return#29 ← phi( menu::@13/(byte) keyboard_key_pressed::return#8 )
(byte~) menu::$29 ← (byte) keyboard_key_pressed::return#29
(bool~) menu::$30 ← (byte~) menu::$29 != (number) 0
(bool~) menu::$31 ← ! (bool~) menu::$30
if((bool~) menu::$31) goto menu::@14
to:menu::@25
menu::@24: scope:[menu] from menu::@43
(byte*) print_char_cursor#67 ← phi( menu::@43/(byte*) print_char_cursor#82 )
(byte*) print_line_cursor#60 ← phi( menu::@43/(byte*) print_line_cursor#77 )
(byte*) print_screen#42 ← phi( menu::@43/(byte*) print_screen#58 )
(byte) dtv_control#106 ← phi( menu::@43/(byte) dtv_control#138 )
call mode_hicolecmchar
to:menu::@46
menu::@46: scope:[menu] from menu::@24
(byte*) print_char_cursor#47 ← phi( menu::@24/(byte*) print_char_cursor#67 )
(byte*) print_line_cursor#41 ← phi( menu::@24/(byte*) print_line_cursor#60 )
(byte*) print_screen#24 ← phi( menu::@24/(byte*) print_screen#42 )
(byte) dtv_control#63 ← phi( menu::@24/(byte) dtv_control#35 )
(byte) dtv_control#8 ← (byte) dtv_control#63
to:menu::@return
menu::@14: scope:[menu] from menu::@45
(byte*) print_char_cursor#97 ← phi( menu::@45/(byte*) print_char_cursor#83 )
(byte*) print_line_cursor#93 ← phi( menu::@45/(byte*) print_line_cursor#78 )
(byte*) print_screen#73 ← phi( menu::@45/(byte*) print_screen#59 )
(byte) dtv_control#167 ← phi( menu::@45/(byte) dtv_control#139 )
(byte) keyboard_key_pressed::key#7 ← (const nomodify byte) KEY_A
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#9 ← (byte) keyboard_key_pressed::return#1
to:menu::@47
menu::@47: scope:[menu] from menu::@14
(byte*) print_char_cursor#84 ← phi( menu::@14/(byte*) print_char_cursor#97 )
(byte*) print_line_cursor#79 ← phi( menu::@14/(byte*) print_line_cursor#93 )
(byte*) print_screen#60 ← phi( menu::@14/(byte*) print_screen#73 )
(byte) dtv_control#140 ← phi( menu::@14/(byte) dtv_control#167 )
(byte) keyboard_key_pressed::return#30 ← phi( menu::@14/(byte) keyboard_key_pressed::return#9 )
(byte~) menu::$33 ← (byte) keyboard_key_pressed::return#30
(bool~) menu::$34 ← (byte~) menu::$33 != (number) 0
(bool~) menu::$35 ← ! (bool~) menu::$34
if((bool~) menu::$35) goto menu::@15
to:menu::@26
menu::@25: scope:[menu] from menu::@45
(byte*) print_char_cursor#68 ← phi( menu::@45/(byte*) print_char_cursor#83 )
(byte*) print_line_cursor#61 ← phi( menu::@45/(byte*) print_line_cursor#78 )
(byte*) print_screen#43 ← phi( menu::@45/(byte*) print_screen#59 )
(byte) dtv_control#107 ← phi( menu::@45/(byte) dtv_control#139 )
call mode_hicolmcchar
to:menu::@48
menu::@48: scope:[menu] from menu::@25
(byte*) print_char_cursor#48 ← phi( menu::@25/(byte*) print_char_cursor#68 )
(byte*) print_line_cursor#42 ← phi( menu::@25/(byte*) print_line_cursor#61 )
(byte*) print_screen#25 ← phi( menu::@25/(byte*) print_screen#43 )
(byte) dtv_control#64 ← phi( menu::@25/(byte) dtv_control#38 )
(byte) dtv_control#9 ← (byte) dtv_control#64
to:menu::@return
menu::@15: scope:[menu] from menu::@47
(byte*) print_char_cursor#98 ← phi( menu::@47/(byte*) print_char_cursor#84 )
(byte*) print_line_cursor#94 ← phi( menu::@47/(byte*) print_line_cursor#79 )
(byte*) print_screen#74 ← phi( menu::@47/(byte*) print_screen#60 )
(byte) dtv_control#168 ← phi( menu::@47/(byte) dtv_control#140 )
(byte) keyboard_key_pressed::key#8 ← (const nomodify byte) KEY_B
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#10 ← (byte) keyboard_key_pressed::return#1
to:menu::@49
menu::@49: scope:[menu] from menu::@15
(byte*) print_char_cursor#85 ← phi( menu::@15/(byte*) print_char_cursor#98 )
(byte*) print_line_cursor#80 ← phi( menu::@15/(byte*) print_line_cursor#94 )
(byte*) print_screen#61 ← phi( menu::@15/(byte*) print_screen#74 )
(byte) dtv_control#141 ← phi( menu::@15/(byte) dtv_control#168 )
(byte) keyboard_key_pressed::return#31 ← phi( menu::@15/(byte) keyboard_key_pressed::return#10 )
(byte~) menu::$37 ← (byte) keyboard_key_pressed::return#31
(bool~) menu::$38 ← (byte~) menu::$37 != (number) 0
(bool~) menu::$39 ← ! (bool~) menu::$38
if((bool~) menu::$39) goto menu::@16
to:menu::@27
menu::@26: scope:[menu] from menu::@47
(byte*) print_char_cursor#69 ← phi( menu::@47/(byte*) print_char_cursor#84 )
(byte*) print_line_cursor#62 ← phi( menu::@47/(byte*) print_line_cursor#79 )
(byte*) print_screen#44 ← phi( menu::@47/(byte*) print_screen#60 )
(byte) dtv_control#108 ← phi( menu::@47/(byte) dtv_control#140 )
call mode_sixsfred2
to:menu::@50
menu::@50: scope:[menu] from menu::@26
(byte*) print_char_cursor#49 ← phi( menu::@26/(byte*) print_char_cursor#69 )
(byte*) print_line_cursor#43 ← phi( menu::@26/(byte*) print_line_cursor#62 )
(byte*) print_screen#26 ← phi( menu::@26/(byte*) print_screen#44 )
(byte) dtv_control#65 ← phi( menu::@26/(byte) dtv_control#47 )
(byte) dtv_control#10 ← (byte) dtv_control#65
to:menu::@return
menu::@16: scope:[menu] from menu::@49
(byte*) print_char_cursor#99 ← phi( menu::@49/(byte*) print_char_cursor#85 )
(byte*) print_line_cursor#95 ← phi( menu::@49/(byte*) print_line_cursor#80 )
(byte*) print_screen#75 ← phi( menu::@49/(byte*) print_screen#61 )
(byte) dtv_control#169 ← phi( menu::@49/(byte) dtv_control#141 )
(byte) keyboard_key_pressed::key#9 ← (const nomodify byte) KEY_C
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#11 ← (byte) keyboard_key_pressed::return#1
to:menu::@51
menu::@51: scope:[menu] from menu::@16
(byte*) print_char_cursor#86 ← phi( menu::@16/(byte*) print_char_cursor#99 )
(byte*) print_line_cursor#81 ← phi( menu::@16/(byte*) print_line_cursor#95 )
(byte*) print_screen#62 ← phi( menu::@16/(byte*) print_screen#75 )
(byte) dtv_control#142 ← phi( menu::@16/(byte) dtv_control#169 )
(byte) keyboard_key_pressed::return#32 ← phi( menu::@16/(byte) keyboard_key_pressed::return#11 )
(byte~) menu::$41 ← (byte) keyboard_key_pressed::return#32
(bool~) menu::$42 ← (byte~) menu::$41 != (number) 0
(bool~) menu::$43 ← ! (bool~) menu::$42
if((bool~) menu::$43) goto menu::@17
to:menu::@28
menu::@27: scope:[menu] from menu::@49
(byte*) print_char_cursor#70 ← phi( menu::@49/(byte*) print_char_cursor#85 )
(byte*) print_line_cursor#63 ← phi( menu::@49/(byte*) print_line_cursor#80 )
(byte*) print_screen#45 ← phi( menu::@49/(byte*) print_screen#61 )
(byte) dtv_control#109 ← phi( menu::@49/(byte) dtv_control#141 )
call mode_twoplanebitmap
to:menu::@52
menu::@52: scope:[menu] from menu::@27
(byte*) print_char_cursor#50 ← phi( menu::@27/(byte*) print_char_cursor#70 )
(byte*) print_line_cursor#44 ← phi( menu::@27/(byte*) print_line_cursor#63 )
(byte*) print_screen#27 ← phi( menu::@27/(byte*) print_screen#45 )
(byte) dtv_control#66 ← phi( menu::@27/(byte) dtv_control#41 )
(byte) dtv_control#11 ← (byte) dtv_control#66
to:menu::@return
menu::@17: scope:[menu] from menu::@51
(byte*) print_char_cursor#100 ← phi( menu::@51/(byte*) print_char_cursor#86 )
(byte*) print_line_cursor#96 ← phi( menu::@51/(byte*) print_line_cursor#81 )
(byte*) print_screen#76 ← phi( menu::@51/(byte*) print_screen#62 )
(byte) dtv_control#170 ← phi( menu::@51/(byte) dtv_control#142 )
(byte) keyboard_key_pressed::key#10 ← (const nomodify byte) KEY_D
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#12 ← (byte) keyboard_key_pressed::return#1
to:menu::@53
menu::@53: scope:[menu] from menu::@17
(byte*) print_char_cursor#88 ← phi( menu::@17/(byte*) print_char_cursor#100 )
(byte*) print_line_cursor#83 ← phi( menu::@17/(byte*) print_line_cursor#96 )
(byte*) print_screen#64 ← phi( menu::@17/(byte*) print_screen#76 )
(byte) dtv_control#143 ← phi( menu::@17/(byte) dtv_control#170 )
(byte) keyboard_key_pressed::return#33 ← phi( menu::@17/(byte) keyboard_key_pressed::return#12 )
(byte~) menu::$45 ← (byte) keyboard_key_pressed::return#33
(bool~) menu::$46 ← (byte~) menu::$45 != (number) 0
(bool~) menu::$47 ← ! (bool~) menu::$46
if((bool~) menu::$47) goto menu::@18
to:menu::@29
menu::@28: scope:[menu] from menu::@51
(byte*) print_char_cursor#71 ← phi( menu::@51/(byte*) print_char_cursor#86 )
(byte*) print_line_cursor#64 ← phi( menu::@51/(byte*) print_line_cursor#81 )
(byte*) print_screen#46 ← phi( menu::@51/(byte*) print_screen#62 )
(byte) dtv_control#110 ← phi( menu::@51/(byte) dtv_control#142 )
call mode_sixsfred
to:menu::@54
menu::@54: scope:[menu] from menu::@28
(byte*) print_char_cursor#51 ← phi( menu::@28/(byte*) print_char_cursor#71 )
(byte*) print_line_cursor#45 ← phi( menu::@28/(byte*) print_line_cursor#64 )
(byte*) print_screen#28 ← phi( menu::@28/(byte*) print_screen#46 )
(byte) dtv_control#67 ← phi( menu::@28/(byte) dtv_control#44 )
(byte) dtv_control#12 ← (byte) dtv_control#67
to:menu::@return
menu::@18: scope:[menu] from menu::@53
(byte) dtv_control#171 ← phi( menu::@53/(byte) dtv_control#143 )
(byte*) print_char_cursor#87 ← phi( menu::@53/(byte*) print_char_cursor#88 )
(byte*) print_line_cursor#82 ← phi( menu::@53/(byte*) print_line_cursor#83 )
(byte*) print_screen#63 ← phi( menu::@53/(byte*) print_screen#64 )
(byte) keyboard_key_pressed::key#11 ← (const nomodify byte) KEY_E
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#13 ← (byte) keyboard_key_pressed::return#1
to:menu::@55
menu::@55: scope:[menu] from menu::@18
(byte) dtv_control#132 ← phi( menu::@18/(byte) dtv_control#171 )
(byte*) print_char_cursor#61 ← phi( menu::@18/(byte*) print_char_cursor#87 )
(byte*) print_line_cursor#54 ← phi( menu::@18/(byte*) print_line_cursor#82 )
(byte*) print_screen#36 ← phi( menu::@18/(byte*) print_screen#63 )
(byte) keyboard_key_pressed::return#34 ← phi( menu::@18/(byte) keyboard_key_pressed::return#13 )
(byte~) menu::$49 ← (byte) keyboard_key_pressed::return#34
(bool~) menu::$50 ← (byte~) menu::$49 != (number) 0
(bool~) menu::$51 ← ! (bool~) menu::$50
if((bool~) menu::$51) goto menu::@6
to:menu::@30
menu::@29: scope:[menu] from menu::@53
(byte*) print_char_cursor#72 ← phi( menu::@53/(byte*) print_char_cursor#88 )
(byte*) print_line_cursor#65 ← phi( menu::@53/(byte*) print_line_cursor#83 )
(byte*) print_screen#47 ← phi( menu::@53/(byte*) print_screen#64 )
(byte) dtv_control#111 ← phi( menu::@53/(byte) dtv_control#143 )
call mode_8bpppixelcell
to:menu::@56
menu::@56: scope:[menu] from menu::@29
(byte*) print_char_cursor#52 ← phi( menu::@29/(byte*) print_char_cursor#72 )
(byte*) print_line_cursor#46 ← phi( menu::@29/(byte*) print_line_cursor#65 )
(byte*) print_screen#29 ← phi( menu::@29/(byte*) print_screen#47 )
(byte) dtv_control#68 ← phi( menu::@29/(byte) dtv_control#50 )
(byte) dtv_control#13 ← (byte) dtv_control#68
to:menu::@return
menu::@30: scope:[menu] from menu::@55
(byte*) print_char_cursor#73 ← phi( menu::@55/(byte*) print_char_cursor#61 )
(byte*) print_line_cursor#66 ← phi( menu::@55/(byte*) print_line_cursor#54 )
(byte*) print_screen#48 ← phi( menu::@55/(byte*) print_screen#36 )
(byte) dtv_control#112 ← phi( menu::@55/(byte) dtv_control#132 )
call mode_8bppchunkybmm
to:menu::@57
menu::@57: scope:[menu] from menu::@30
(byte*) print_char_cursor#53 ← phi( menu::@30/(byte*) print_char_cursor#73 )
(byte*) print_line_cursor#47 ← phi( menu::@30/(byte*) print_line_cursor#66 )
(byte*) print_screen#30 ← phi( menu::@30/(byte*) print_screen#48 )
(byte) dtv_control#69 ← phi( menu::@30/(byte) dtv_control#53 )
(byte) dtv_control#14 ← (byte) dtv_control#69
to:menu::@return
@2: scope:[] from @1
(byte*) print_char_cursor#74 ← phi( @1/(byte*) print_char_cursor#0 )
(byte*) print_line_cursor#67 ← phi( @1/(byte*) print_line_cursor#0 )
(byte*) print_screen#49 ← phi( @1/(byte*) print_screen#0 )
(byte) dtv_control#15 ← (byte) 0
to:@3
(void()) mode_ctrl()
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::@17
(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::@17/(byte) dtv_control#124 )
to:mode_ctrl::@1
mode_ctrl::@1: scope:[mode_ctrl] from mode_ctrl mode_ctrl::@11 mode_ctrl::@19
(byte) dtv_control#114 ← phi( mode_ctrl/(byte) dtv_control#144 mode_ctrl::@11/(byte) dtv_control#72 mode_ctrl::@19/(byte) dtv_control#17 )
if(true) goto mode_ctrl::@2
to:mode_ctrl::@return
mode_ctrl::@2: scope:[mode_ctrl] from mode_ctrl::@1 mode_ctrl::@2
(byte) dtv_control#172 ← phi( mode_ctrl::@1/(byte) dtv_control#114 mode_ctrl::@2/(byte) dtv_control#172 )
(bool~) mode_ctrl::$0 ← *((const nomodify byte*) RASTER) != (number) $ff
if((bool~) mode_ctrl::$0) goto mode_ctrl::@2
to:mode_ctrl::@3
mode_ctrl::@3: scope:[mode_ctrl] from mode_ctrl::@2
(byte) dtv_control#145 ← phi( mode_ctrl::@2/(byte) dtv_control#172 )
(byte) keyboard_key_pressed::key#12 ← (const nomodify byte) KEY_SPACE
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#14 ← (byte) keyboard_key_pressed::return#1
to:mode_ctrl::@20
mode_ctrl::@20: scope:[mode_ctrl] from mode_ctrl::@3
(byte) dtv_control#113 ← phi( mode_ctrl::@3/(byte) dtv_control#145 )
(byte) keyboard_key_pressed::return#35 ← phi( mode_ctrl::@3/(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::@4
to:mode_ctrl::@return
mode_ctrl::@4: scope:[mode_ctrl] from mode_ctrl::@20
(byte) dtv_control#70 ← phi( mode_ctrl::@20/(byte) dtv_control#113 )
(byte) mode_ctrl::ctrl#0 ← (byte) dtv_control#70
(byte) keyboard_key_pressed::key#13 ← (const nomodify byte) KEY_L
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#15 ← (byte) keyboard_key_pressed::return#1
to:mode_ctrl::@21
mode_ctrl::@21: scope:[mode_ctrl] from mode_ctrl::@4
(byte) dtv_control#281 ← phi( mode_ctrl::@4/(byte) dtv_control#70 )
(byte) mode_ctrl::ctrl#16 ← phi( mode_ctrl::@4/(byte) mode_ctrl::ctrl#0 )
(byte) keyboard_key_pressed::return#36 ← phi( mode_ctrl::@4/(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::@5
to:mode_ctrl::@12
mode_ctrl::@return: scope:[mode_ctrl] from mode_ctrl::@1 mode_ctrl::@20
(byte) dtv_control#71 ← phi( mode_ctrl::@1/(byte) dtv_control#114 mode_ctrl::@20/(byte) dtv_control#113 )
(byte) dtv_control#16 ← (byte) dtv_control#71
return
to:@return
mode_ctrl::@5: scope:[mode_ctrl] from mode_ctrl::@12 mode_ctrl::@21
(byte) dtv_control#275 ← phi( mode_ctrl::@12/(byte) dtv_control#280 mode_ctrl::@21/(byte) dtv_control#281 )
(byte) mode_ctrl::ctrl#23 ← phi( mode_ctrl::@12/(byte) mode_ctrl::ctrl#1 mode_ctrl::@21/(byte) mode_ctrl::ctrl#16 )
(byte) keyboard_key_pressed::key#14 ← (const nomodify byte) KEY_H
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#16 ← (byte) keyboard_key_pressed::return#1
to:mode_ctrl::@22
mode_ctrl::@22: scope:[mode_ctrl] from mode_ctrl::@5
(byte) dtv_control#270 ← phi( mode_ctrl::@5/(byte) dtv_control#275 )
(byte) mode_ctrl::ctrl#17 ← phi( mode_ctrl::@5/(byte) mode_ctrl::ctrl#23 )
(byte) keyboard_key_pressed::return#37 ← phi( mode_ctrl::@5/(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::@6
to:mode_ctrl::@13
mode_ctrl::@12: scope:[mode_ctrl] from mode_ctrl::@21
(byte) dtv_control#280 ← phi( mode_ctrl::@21/(byte) dtv_control#281 )
(byte) mode_ctrl::ctrl#8 ← phi( mode_ctrl::@21/(byte) mode_ctrl::ctrl#16 )
(byte~) mode_ctrl::$7 ← (byte) mode_ctrl::ctrl#8 | (const nomodify byte) DTV_LINEAR
(byte) mode_ctrl::ctrl#1 ← (byte~) mode_ctrl::$7
to:mode_ctrl::@5
mode_ctrl::@6: scope:[mode_ctrl] from mode_ctrl::@13 mode_ctrl::@22
(byte) dtv_control#263 ← phi( mode_ctrl::@13/(byte) dtv_control#269 mode_ctrl::@22/(byte) dtv_control#270 )
(byte) mode_ctrl::ctrl#24 ← phi( mode_ctrl::@13/(byte) mode_ctrl::ctrl#2 mode_ctrl::@22/(byte) mode_ctrl::ctrl#17 )
(byte) keyboard_key_pressed::key#15 ← (const nomodify byte) KEY_O
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#17 ← (byte) keyboard_key_pressed::return#1
to:mode_ctrl::@23
mode_ctrl::@23: scope:[mode_ctrl] from mode_ctrl::@6
(byte) dtv_control#256 ← phi( mode_ctrl::@6/(byte) dtv_control#263 )
(byte) mode_ctrl::ctrl#18 ← phi( mode_ctrl::@6/(byte) mode_ctrl::ctrl#24 )
(byte) keyboard_key_pressed::return#38 ← phi( mode_ctrl::@6/(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::@7
to:mode_ctrl::@14
mode_ctrl::@13: scope:[mode_ctrl] from mode_ctrl::@22
(byte) dtv_control#269 ← phi( mode_ctrl::@22/(byte) dtv_control#270 )
(byte) mode_ctrl::ctrl#9 ← phi( mode_ctrl::@22/(byte) mode_ctrl::ctrl#17 )
(byte~) mode_ctrl::$11 ← (byte) mode_ctrl::ctrl#9 | (const nomodify byte) DTV_HIGHCOLOR
(byte) mode_ctrl::ctrl#2 ← (byte~) mode_ctrl::$11
to:mode_ctrl::@6
mode_ctrl::@7: scope:[mode_ctrl] from mode_ctrl::@14 mode_ctrl::@23
(byte) dtv_control#246 ← phi( mode_ctrl::@14/(byte) dtv_control#255 mode_ctrl::@23/(byte) dtv_control#256 )
(byte) mode_ctrl::ctrl#25 ← phi( mode_ctrl::@14/(byte) mode_ctrl::ctrl#3 mode_ctrl::@23/(byte) mode_ctrl::ctrl#18 )
(byte) keyboard_key_pressed::key#16 ← (const nomodify byte) KEY_B
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#18 ← (byte) keyboard_key_pressed::return#1
to:mode_ctrl::@24
mode_ctrl::@24: scope:[mode_ctrl] from mode_ctrl::@7
(byte) dtv_control#238 ← phi( mode_ctrl::@7/(byte) dtv_control#246 )
(byte) mode_ctrl::ctrl#19 ← phi( mode_ctrl::@7/(byte) mode_ctrl::ctrl#25 )
(byte) keyboard_key_pressed::return#39 ← phi( mode_ctrl::@7/(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::@8
to:mode_ctrl::@15
mode_ctrl::@14: scope:[mode_ctrl] from mode_ctrl::@23
(byte) dtv_control#255 ← phi( mode_ctrl::@23/(byte) dtv_control#256 )
(byte) mode_ctrl::ctrl#10 ← phi( mode_ctrl::@23/(byte) mode_ctrl::ctrl#18 )
(byte~) mode_ctrl::$15 ← (byte) mode_ctrl::ctrl#10 | (const nomodify byte) DTV_OVERSCAN
(byte) mode_ctrl::ctrl#3 ← (byte~) mode_ctrl::$15
to:mode_ctrl::@7
mode_ctrl::@8: scope:[mode_ctrl] from mode_ctrl::@15 mode_ctrl::@24
(byte) dtv_control#221 ← phi( mode_ctrl::@15/(byte) dtv_control#237 mode_ctrl::@24/(byte) dtv_control#238 )
(byte) mode_ctrl::ctrl#26 ← phi( mode_ctrl::@15/(byte) mode_ctrl::ctrl#4 mode_ctrl::@24/(byte) mode_ctrl::ctrl#19 )
(byte) keyboard_key_pressed::key#17 ← (const nomodify byte) KEY_U
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#19 ← (byte) keyboard_key_pressed::return#1
to:mode_ctrl::@25
mode_ctrl::@25: scope:[mode_ctrl] from mode_ctrl::@8
(byte) dtv_control#205 ← phi( mode_ctrl::@8/(byte) dtv_control#221 )
(byte) mode_ctrl::ctrl#20 ← phi( mode_ctrl::@8/(byte) mode_ctrl::ctrl#26 )
(byte) keyboard_key_pressed::return#40 ← phi( mode_ctrl::@8/(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::@9
to:mode_ctrl::@16
mode_ctrl::@15: scope:[mode_ctrl] from mode_ctrl::@24
(byte) dtv_control#237 ← phi( mode_ctrl::@24/(byte) dtv_control#238 )
(byte) mode_ctrl::ctrl#11 ← phi( mode_ctrl::@24/(byte) mode_ctrl::ctrl#19 )
(byte~) mode_ctrl::$19 ← (byte) mode_ctrl::ctrl#11 | (const nomodify byte) DTV_BORDER_OFF
(byte) mode_ctrl::ctrl#4 ← (byte~) mode_ctrl::$19
to:mode_ctrl::@8
mode_ctrl::@9: scope:[mode_ctrl] from mode_ctrl::@16 mode_ctrl::@25
(byte) dtv_control#189 ← phi( mode_ctrl::@16/(byte) dtv_control#204 mode_ctrl::@25/(byte) dtv_control#205 )
(byte) mode_ctrl::ctrl#27 ← phi( mode_ctrl::@16/(byte) mode_ctrl::ctrl#5 mode_ctrl::@25/(byte) mode_ctrl::ctrl#20 )
(byte) keyboard_key_pressed::key#18 ← (const nomodify byte) KEY_C
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#20 ← (byte) keyboard_key_pressed::return#1
to:mode_ctrl::@26
mode_ctrl::@26: scope:[mode_ctrl] from mode_ctrl::@9
(byte) dtv_control#174 ← phi( mode_ctrl::@9/(byte) dtv_control#189 )
(byte) mode_ctrl::ctrl#21 ← phi( mode_ctrl::@9/(byte) mode_ctrl::ctrl#27 )
(byte) keyboard_key_pressed::return#41 ← phi( mode_ctrl::@9/(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::@10
to:mode_ctrl::@17
mode_ctrl::@16: scope:[mode_ctrl] from mode_ctrl::@25
(byte) dtv_control#204 ← phi( mode_ctrl::@25/(byte) dtv_control#205 )
(byte) mode_ctrl::ctrl#12 ← phi( mode_ctrl::@25/(byte) mode_ctrl::ctrl#20 )
(byte~) mode_ctrl::$23 ← (byte) mode_ctrl::ctrl#12 | (const nomodify byte) DTV_CHUNKY
(byte) mode_ctrl::ctrl#5 ← (byte~) mode_ctrl::$23
to:mode_ctrl::@9
mode_ctrl::@10: scope:[mode_ctrl] from mode_ctrl::@17 mode_ctrl::@26
(byte) dtv_control#146 ← phi( mode_ctrl::@17/(byte) dtv_control#173 mode_ctrl::@26/(byte) dtv_control#174 )
(byte) mode_ctrl::ctrl#28 ← phi( mode_ctrl::@17/(byte) mode_ctrl::ctrl#6 mode_ctrl::@26/(byte) mode_ctrl::ctrl#21 )
(byte) keyboard_key_pressed::key#19 ← (const nomodify byte) KEY_0
call keyboard_key_pressed
(byte) keyboard_key_pressed::return#21 ← (byte) keyboard_key_pressed::return#1
to:mode_ctrl::@27
mode_ctrl::@27: scope:[mode_ctrl] from mode_ctrl::@10
(byte) dtv_control#116 ← phi( mode_ctrl::@10/(byte) dtv_control#146 )
(byte) mode_ctrl::ctrl#22 ← phi( mode_ctrl::@10/(byte) mode_ctrl::ctrl#28 )
(byte) keyboard_key_pressed::return#42 ← phi( mode_ctrl::@10/(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::@11
to:mode_ctrl::@18
mode_ctrl::@17: scope:[mode_ctrl] from mode_ctrl::@26
(byte) dtv_control#173 ← phi( mode_ctrl::@26/(byte) dtv_control#174 )
(byte) mode_ctrl::ctrl#13 ← phi( mode_ctrl::@26/(byte) mode_ctrl::ctrl#21 )
(byte~) mode_ctrl::$27 ← (byte) mode_ctrl::ctrl#13 | (const nomodify byte) DTV_COLORRAM_OFF
(byte) mode_ctrl::ctrl#6 ← (byte~) mode_ctrl::$27
to:mode_ctrl::@10
mode_ctrl::@11: scope:[mode_ctrl] from mode_ctrl::@18 mode_ctrl::@27
(byte) dtv_control#72 ← phi( mode_ctrl::@18/(byte) dtv_control#115 mode_ctrl::@27/(byte) dtv_control#116 )
(byte) mode_ctrl::ctrl#14 ← phi( mode_ctrl::@18/(byte) mode_ctrl::ctrl#7 mode_ctrl::@27/(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::@19
mode_ctrl::@18: scope:[mode_ctrl] from mode_ctrl::@27
(byte) dtv_control#115 ← phi( mode_ctrl::@27/(byte) dtv_control#116 )
(byte) mode_ctrl::ctrl#7 ← (number) 0
to:mode_ctrl::@11
mode_ctrl::@19: scope:[mode_ctrl] from mode_ctrl::@11
(byte) mode_ctrl::ctrl#15 ← phi( mode_ctrl::@11/(byte) mode_ctrl::ctrl#14 )
(byte) dtv_control#17 ← (byte) mode_ctrl::ctrl#15
*((const nomodify byte*) DTV_CONTROL) ← (byte) mode_ctrl::ctrl#15
*((const nomodify byte*) BORDER_COLOR) ← (byte) mode_ctrl::ctrl#15
to:mode_ctrl::@1
(void()) mode_stdchar()
mode_stdchar: scope:[mode_stdchar] from menu::@19
*((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte)(dword)(const nomodify byte*) mode_stdchar::CHARSET/(number) $10000
*((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(number) $400
*((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(number) $400
(byte) dtv_control#18 ← (number) 0
*((const nomodify byte*) DTV_CONTROL) ← (number) 0
*((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (number) 3
*((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (number) 3^(byte)(word)(const nomodify byte*) mode_stdchar::CHARSET/(number) $4000
*((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
*((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL
*((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_stdchar::SCREEN&(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_stdchar::CHARSET&(number) $3fff/(number) $400
(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 )
*((const nomodify byte*) DTV_PALETTE + (byte) mode_stdchar::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (byte) mode_stdchar::i#2)
(byte) mode_stdchar::i#1 ← (byte) mode_stdchar::i#2 + rangenext(0,$f)
(bool~) mode_stdchar::$1 ← (byte) mode_stdchar::i#1 != rangelast(0,$f)
if((bool~) mode_stdchar::$1) 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 )
*((const nomodify byte*) BG_COLOR) ← (number) 0
*((const nomodify byte*) BORDER_COLOR) ← (number) 0
(byte*) mode_stdchar::col#0 ← (const nomodify byte*) mode_stdchar::COLORS
(byte*) mode_stdchar::ch#0 ← (const nomodify byte*) mode_stdchar::SCREEN
(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::$2 ← (byte) mode_stdchar::cx#2 + (byte) mode_stdchar::cy#2
(number~) mode_stdchar::$3 ← (byte~) mode_stdchar::$2 & (number) $f
*((byte*) mode_stdchar::col#2) ← (number~) mode_stdchar::$3
(byte*) mode_stdchar::col#1 ← ++ (byte*) mode_stdchar::col#2
(number~) mode_stdchar::$4 ← (byte) mode_stdchar::cy#2 & (number) $f
(number~) mode_stdchar::$5 ← (number~) mode_stdchar::$4 * (number) $10
(number~) mode_stdchar::$6 ← (byte) mode_stdchar::cx#2 & (number) $f
(number~) mode_stdchar::$7 ← (number~) mode_stdchar::$5 | (number~) mode_stdchar::$6
*((byte*) mode_stdchar::ch#2) ← (number~) mode_stdchar::$7
(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::$8 ← (byte) mode_stdchar::cx#1 != rangelast(0,$27)
if((bool~) mode_stdchar::$8) 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::$9 ← (byte) mode_stdchar::cy#1 != rangelast(0,$18)
if((bool~) mode_stdchar::$9) 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
(void()) mode_ecmchar()
mode_ecmchar: scope:[mode_ecmchar] from menu::@20
*((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte)(dword)(const nomodify byte*) mode_ecmchar::CHARSET/(number) $10000
*((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(number) $400
*((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(number) $400
(byte) dtv_control#21 ← (number) 0
*((const nomodify byte*) DTV_CONTROL) ← (number) 0
*((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (number) 3
*((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (number) 3^(byte)(word)(const nomodify byte*) mode_ecmchar::CHARSET/(number) $4000
*((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(const nomodify byte) VIC_ECM|(number) 3
*((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL
*((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_ecmchar::SCREEN&(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_ecmchar::CHARSET&(number) $3fff/(number) $400
(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 )
*((const nomodify byte*) DTV_PALETTE + (byte) mode_ecmchar::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (byte) mode_ecmchar::i#2)
(byte) mode_ecmchar::i#1 ← (byte) mode_ecmchar::i#2 + rangenext(0,$f)
(bool~) mode_ecmchar::$1 ← (byte) mode_ecmchar::i#1 != rangelast(0,$f)
if((bool~) mode_ecmchar::$1) 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 )
*((const nomodify byte*) BORDER_COLOR) ← (number) 0
*((const nomodify byte*) BG_COLOR) ← (number) 0
*((const nomodify byte*) BG_COLOR1) ← (number) 2
*((const nomodify byte*) BG_COLOR2) ← (number) 5
*((const nomodify byte*) BG_COLOR3) ← (number) 6
(byte*) mode_ecmchar::col#0 ← (const nomodify byte*) mode_ecmchar::COLORS
(byte*) mode_ecmchar::ch#0 ← (const nomodify byte*) mode_ecmchar::SCREEN
(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::$2 ← (byte) mode_ecmchar::cx#2 + (byte) mode_ecmchar::cy#2
(number~) mode_ecmchar::$3 ← (byte~) mode_ecmchar::$2 & (number) $f
*((byte*) mode_ecmchar::col#2) ← (number~) mode_ecmchar::$3
(byte*) mode_ecmchar::col#1 ← ++ (byte*) mode_ecmchar::col#2
(number~) mode_ecmchar::$4 ← (byte) mode_ecmchar::cy#2 & (number) $f
(number~) mode_ecmchar::$5 ← (number~) mode_ecmchar::$4 * (number) $10
(number~) mode_ecmchar::$6 ← (byte) mode_ecmchar::cx#2 & (number) $f
(number~) mode_ecmchar::$7 ← (number~) mode_ecmchar::$5 | (number~) mode_ecmchar::$6
*((byte*) mode_ecmchar::ch#2) ← (number~) mode_ecmchar::$7
(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::$8 ← (byte) mode_ecmchar::cx#1 != rangelast(0,$27)
if((bool~) mode_ecmchar::$8) 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::$9 ← (byte) mode_ecmchar::cy#1 != rangelast(0,$18)
if((bool~) mode_ecmchar::$9) 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
(void()) mode_mcchar()
mode_mcchar: scope:[mode_mcchar] from menu::@21
*((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte)(dword)(const nomodify byte*) mode_mcchar::CHARSET/(number) $10000
*((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(number) $400
*((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(number) $400
(byte) dtv_control#24 ← (number) 0
*((const nomodify byte*) DTV_CONTROL) ← (number) 0
*((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (number) 3
*((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (number) 3^(byte)(word)(const nomodify byte*) mode_mcchar::CHARSET/(number) $4000
*((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
*((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL|(const nomodify byte) VIC_MCM
*((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_mcchar::SCREEN&(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_mcchar::CHARSET&(number) $3fff/(number) $400
(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 )
*((const nomodify byte*) DTV_PALETTE + (byte) mode_mcchar::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (byte) mode_mcchar::i#2)
(byte) mode_mcchar::i#1 ← (byte) mode_mcchar::i#2 + rangenext(0,$f)
(bool~) mode_mcchar::$1 ← (byte) mode_mcchar::i#1 != rangelast(0,$f)
if((bool~) mode_mcchar::$1) 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 )
*((const nomodify byte*) BORDER_COLOR) ← (number) 0
*((const nomodify byte*) BG_COLOR) ← (const nomodify byte) BLACK
*((const nomodify byte*) BG_COLOR1) ← (const nomodify byte) GREEN
*((const nomodify byte*) BG_COLOR2) ← (const nomodify byte) BLUE
(byte*) mode_mcchar::col#0 ← (const nomodify byte*) mode_mcchar::COLORS
(byte*) mode_mcchar::ch#0 ← (const nomodify byte*) mode_mcchar::SCREEN
(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::$2 ← (byte) mode_mcchar::cx#2 + (byte) mode_mcchar::cy#2
(number~) mode_mcchar::$3 ← (byte~) mode_mcchar::$2 & (number) $f
*((byte*) mode_mcchar::col#2) ← (number~) mode_mcchar::$3
(byte*) mode_mcchar::col#1 ← ++ (byte*) mode_mcchar::col#2
(number~) mode_mcchar::$4 ← (byte) mode_mcchar::cy#2 & (number) $f
(number~) mode_mcchar::$5 ← (number~) mode_mcchar::$4 * (number) $10
(number~) mode_mcchar::$6 ← (byte) mode_mcchar::cx#2 & (number) $f
(number~) mode_mcchar::$7 ← (number~) mode_mcchar::$5 | (number~) mode_mcchar::$6
*((byte*) mode_mcchar::ch#2) ← (number~) mode_mcchar::$7
(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::$8 ← (byte) mode_mcchar::cx#1 != rangelast(0,$27)
if((bool~) mode_mcchar::$8) 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::$9 ← (byte) mode_mcchar::cy#1 != rangelast(0,$18)
if((bool~) mode_mcchar::$9) 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
(void()) mode_stdbitmap()
mode_stdbitmap: scope:[mode_stdbitmap] from menu::@22
*((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte)(dword)(const nomodify byte*) mode_stdbitmap::BITMAP/(number) $10000
(byte) dtv_control#27 ← (number) 0
*((const nomodify byte*) DTV_CONTROL) ← (number) 0
*((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (number) 3
*((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (number) 3^(byte)(word)(const nomodify byte*) mode_stdbitmap::BITMAP/(number) $4000
*((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
*((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL
*((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_stdbitmap::SCREEN&(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_stdbitmap::BITMAP&(number) $3fff/(number) $400
(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 )
*((const nomodify byte*) DTV_PALETTE + (byte) mode_stdbitmap::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (byte) mode_stdbitmap::i#2)
(byte) mode_stdbitmap::i#1 ← (byte) mode_stdbitmap::i#2 + rangenext(0,$f)
(bool~) mode_stdbitmap::$3 ← (byte) mode_stdbitmap::i#1 != rangelast(0,$f)
if((bool~) mode_stdbitmap::$3) 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 )
*((const nomodify byte*) BG_COLOR) ← (const nomodify byte) BLACK
*((const nomodify byte*) BORDER_COLOR) ← (const nomodify byte) BLACK
(byte*) mode_stdbitmap::ch#0 ← (const nomodify byte*) mode_stdbitmap::SCREEN
(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::$4 ← (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#2
(number~) mode_stdbitmap::$5 ← (byte~) mode_stdbitmap::$4 & (number) $f
(byte) mode_stdbitmap::col#0 ← (number~) mode_stdbitmap::$5
(number~) mode_stdbitmap::$6 ← (number) $f - (byte) mode_stdbitmap::col#0
(byte) mode_stdbitmap::col2#0 ← (number~) mode_stdbitmap::$6
(number~) mode_stdbitmap::$7 ← (byte) mode_stdbitmap::col#0 * (number) $10
(number~) mode_stdbitmap::$8 ← (number~) mode_stdbitmap::$7 | (byte) mode_stdbitmap::col2#0
*((byte*) mode_stdbitmap::ch#2) ← (number~) mode_stdbitmap::$8
(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::$9 ← (byte) mode_stdbitmap::cx#1 != rangelast(0,$27)
if((bool~) mode_stdbitmap::$9) 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::$10 ← (byte) mode_stdbitmap::cy#1 != rangelast(0,$18)
if((bool~) mode_stdbitmap::$10) 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 ← (const nomodify byte*) mode_stdbitmap::BITMAP
call bitmap_init
to:mode_stdbitmap::@10
mode_stdbitmap::@10: 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::@11
mode_stdbitmap::@11: scope:[mode_stdbitmap] from mode_stdbitmap::@10
(byte) dtv_control#178 ← phi( mode_stdbitmap::@10/(byte) dtv_control#193 )
(byte) mode_stdbitmap::l#0 ← (byte) 0
to:mode_stdbitmap::@7
mode_stdbitmap::@7: scope:[mode_stdbitmap] from mode_stdbitmap::@11 mode_stdbitmap::@12
(byte) dtv_control#150 ← phi( mode_stdbitmap::@11/(byte) dtv_control#178 mode_stdbitmap::@12/(byte) dtv_control#179 )
(byte) mode_stdbitmap::l#2 ← phi( mode_stdbitmap::@11/(byte) mode_stdbitmap::l#0 mode_stdbitmap::@12/(byte) mode_stdbitmap::l#1 )
(bool~) mode_stdbitmap::$11 ← (byte) mode_stdbitmap::l#2 < (const byte) mode_stdbitmap::lines_cnt
if((bool~) mode_stdbitmap::$11) 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::$12 ← (byte) mode_stdbitmap::l#3 + (number) 1
(number~) mode_stdbitmap::$13 ← (byte) mode_stdbitmap::l#3 + (number) 1
(byte) bitmap_line::x0#0 ← *((const byte*) mode_stdbitmap::lines_x + (byte) mode_stdbitmap::l#3)
(byte) bitmap_line::x1#0 ← *((const byte*) mode_stdbitmap::lines_x + (number~) mode_stdbitmap::$12)
(byte) bitmap_line::y0#0 ← *((const byte*) mode_stdbitmap::lines_y + (byte) mode_stdbitmap::l#3)
(byte) bitmap_line::y1#0 ← *((const byte*) mode_stdbitmap::lines_y + (number~) mode_stdbitmap::$13)
call bitmap_line
to:mode_stdbitmap::@12
mode_stdbitmap::@12: 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::@13
mode_stdbitmap::@13: 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::@13
(byte) dtv_control#80 ← phi( mode_stdbitmap::@13/(byte) dtv_control#28 )
(byte) dtv_control#29 ← (byte) dtv_control#80
return
to:@return
(void()) mode_hicolstdchar()
mode_hicolstdchar: scope:[mode_hicolstdchar] from menu::@23
*((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte)(dword)(const nomodify byte*) mode_hicolstdchar::CHARSET/(number) $10000
*((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify byte*) mode_hicolstdchar::COLORS/(number) $400
*((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(word)(const nomodify byte*) mode_hicolstdchar::COLORS/(number) $400
(byte) dtv_control#30 ← (const nomodify byte) DTV_HIGHCOLOR
*((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR
*((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (number) 3
*((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (number) 3^(byte)(word)(const nomodify byte*) mode_hicolstdchar::CHARSET/(number) $4000
*((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
*((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL
*((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolstdchar::SCREEN&(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_hicolstdchar::CHARSET&(number) $3fff/(number) $400
(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 )
*((const nomodify byte*) DTV_PALETTE + (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::$1 ← (byte) mode_hicolstdchar::i#1 != rangelast(0,$f)
if((bool~) mode_hicolstdchar::$1) 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 )
*((const nomodify byte*) BG_COLOR) ← (number) 0
*((const nomodify byte*) BORDER_COLOR) ← (number) 0
(byte*) mode_hicolstdchar::col#0 ← (const nomodify byte*) mode_hicolstdchar::COLORS
(byte*) mode_hicolstdchar::ch#0 ← (const nomodify byte*) mode_hicolstdchar::SCREEN
(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::$2 ← (byte) mode_hicolstdchar::cy#2 & (number) $f
(number~) mode_hicolstdchar::$3 ← (number~) mode_hicolstdchar::$2 * (number) $10
(number~) mode_hicolstdchar::$4 ← (byte) mode_hicolstdchar::cx#2 & (number) $f
(number~) mode_hicolstdchar::$5 ← (number~) mode_hicolstdchar::$3 | (number~) mode_hicolstdchar::$4
(byte) mode_hicolstdchar::v#0 ← (number~) mode_hicolstdchar::$5
*((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::$6 ← (byte) mode_hicolstdchar::cx#1 != rangelast(0,$27)
if((bool~) mode_hicolstdchar::$6) 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::$7 ← (byte) mode_hicolstdchar::cy#1 != rangelast(0,$18)
if((bool~) mode_hicolstdchar::$7) 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
(void()) mode_hicolecmchar()
mode_hicolecmchar: scope:[mode_hicolecmchar] from menu::@24
*((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte)(dword)(const nomodify byte*) mode_hicolecmchar::CHARSET/(number) $10000
*((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify byte*) mode_hicolecmchar::COLORS/(number) $400
*((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(word)(const nomodify byte*) mode_hicolecmchar::COLORS/(number) $400
(byte) dtv_control#33 ← (const nomodify byte) DTV_HIGHCOLOR
*((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR
*((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (number) 3
*((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (number) 3^(byte)(word)(const nomodify byte*) mode_hicolecmchar::CHARSET/(number) $4000
*((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(const nomodify byte) VIC_ECM|(number) 3
*((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL
*((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolecmchar::SCREEN&(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_hicolecmchar::CHARSET&(number) $3fff/(number) $400
(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 )
*((const nomodify byte*) DTV_PALETTE + (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::$1 ← (byte) mode_hicolecmchar::i#1 != rangelast(0,$f)
if((bool~) mode_hicolecmchar::$1) 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 )
*((const nomodify byte*) BORDER_COLOR) ← (number) 0
*((const nomodify byte*) BG_COLOR) ← (number) $50
*((const nomodify byte*) BG_COLOR1) ← (number) $54
*((const nomodify byte*) BG_COLOR2) ← (number) $58
*((const nomodify byte*) BG_COLOR3) ← (number) $5c
(byte*) mode_hicolecmchar::col#0 ← (const nomodify byte*) mode_hicolecmchar::COLORS
(byte*) mode_hicolecmchar::ch#0 ← (const nomodify byte*) mode_hicolecmchar::SCREEN
(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::$2 ← (byte) mode_hicolecmchar::cy#2 & (number) $f
(number~) mode_hicolecmchar::$3 ← (number~) mode_hicolecmchar::$2 * (number) $10
(number~) mode_hicolecmchar::$4 ← (byte) mode_hicolecmchar::cx#2 & (number) $f
(number~) mode_hicolecmchar::$5 ← (number~) mode_hicolecmchar::$3 | (number~) mode_hicolecmchar::$4
(byte) mode_hicolecmchar::v#0 ← (number~) mode_hicolecmchar::$5
*((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::$6 ← (byte) mode_hicolecmchar::cx#1 != rangelast(0,$27)
if((bool~) mode_hicolecmchar::$6) 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::$7 ← (byte) mode_hicolecmchar::cy#1 != rangelast(0,$18)
if((bool~) mode_hicolecmchar::$7) 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
(void()) mode_hicolmcchar()
mode_hicolmcchar: scope:[mode_hicolmcchar] from menu::@25
*((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte)(dword)(const nomodify byte*) mode_hicolmcchar::CHARSET/(number) $10000
*((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify byte*) mode_hicolmcchar::COLORS/(number) $400
*((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(word)(const nomodify byte*) mode_hicolmcchar::COLORS/(number) $400
(byte) dtv_control#36 ← (const nomodify byte) DTV_HIGHCOLOR
*((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR
*((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (number) 3
*((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (number) 3^(byte)(word)(const nomodify byte*) mode_hicolmcchar::CHARSET/(number) $4000
*((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
*((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL|(const nomodify byte) VIC_MCM
*((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolmcchar::SCREEN&(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_hicolmcchar::CHARSET&(number) $3fff/(number) $400
(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 )
*((const nomodify byte*) DTV_PALETTE + (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::$1 ← (byte) mode_hicolmcchar::i#1 != rangelast(0,$f)
if((bool~) mode_hicolmcchar::$1) 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 )
*((const nomodify byte*) BORDER_COLOR) ← (number) 0
*((const nomodify byte*) BG_COLOR) ← (number) $50
*((const nomodify byte*) BG_COLOR1) ← (number) $54
*((const nomodify byte*) BG_COLOR2) ← (number) $58
(byte*) mode_hicolmcchar::col#0 ← (const nomodify byte*) mode_hicolmcchar::COLORS
(byte*) mode_hicolmcchar::ch#0 ← (const nomodify byte*) mode_hicolmcchar::SCREEN
(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::$2 ← (byte) mode_hicolmcchar::cy#2 & (number) $f
(number~) mode_hicolmcchar::$3 ← (number~) mode_hicolmcchar::$2 * (number) $10
(number~) mode_hicolmcchar::$4 ← (byte) mode_hicolmcchar::cx#2 & (number) $f
(number~) mode_hicolmcchar::$5 ← (number~) mode_hicolmcchar::$3 | (number~) mode_hicolmcchar::$4
(byte) mode_hicolmcchar::v#0 ← (number~) mode_hicolmcchar::$5
*((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::$6 ← (byte) mode_hicolmcchar::cx#1 != rangelast(0,$27)
if((bool~) mode_hicolmcchar::$6) 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::$7 ← (byte) mode_hicolmcchar::cy#1 != rangelast(0,$18)
if((bool~) mode_hicolmcchar::$7) 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
(void()) mode_twoplanebitmap()
mode_twoplanebitmap: scope:[mode_twoplanebitmap] from menu::@27
(byte) dtv_control#39 ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR
*((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR
*((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
*((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL
*((const nomodify byte*) DTV_PLANEA_START_LO) ← <(const nomodify byte*) mode_twoplanebitmap::PLANEA
*((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_twoplanebitmap::PLANEA
*((const nomodify byte*) DTV_PLANEA_START_HI) ← (number) 0
*((const nomodify byte*) DTV_PLANEA_STEP) ← (number) 1
*((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (number) 0
*((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (number) 0
*((const nomodify byte*) DTV_PLANEB_START_LO) ← <(const nomodify byte*) mode_twoplanebitmap::PLANEB
*((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_twoplanebitmap::PLANEB
*((const nomodify byte*) DTV_PLANEB_START_HI) ← (number) 0
*((const nomodify byte*) DTV_PLANEB_STEP) ← (number) 1
*((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (number) 0
*((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (number) 0
*((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(const nomodify byte*) mode_twoplanebitmap::COLORS/(number) $400
*((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(const nomodify byte*) mode_twoplanebitmap::COLORS/(number) $400
(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 )
*((const nomodify byte*) DTV_PALETTE + (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::$1 ← (byte) mode_twoplanebitmap::i#1 != rangelast(0,$f)
if((bool~) mode_twoplanebitmap::$1) 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 )
*((const nomodify byte*) BORDER_COLOR) ← (number) 0
*((const nomodify byte*) BG_COLOR) ← (number) $70
*((const nomodify byte*) BG_COLOR1) ← (number) $d4
(byte*) mode_twoplanebitmap::col#0 ← (const nomodify byte*) mode_twoplanebitmap::COLORS
(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::$2 ← (byte) mode_twoplanebitmap::cy#2 & (number) $f
(number~) mode_twoplanebitmap::$3 ← (number~) mode_twoplanebitmap::$2 * (number) $10
(number~) mode_twoplanebitmap::$4 ← (byte) mode_twoplanebitmap::cx#2 & (number) $f
(number~) mode_twoplanebitmap::$5 ← (number~) mode_twoplanebitmap::$3 | (number~) mode_twoplanebitmap::$4
*((byte*) mode_twoplanebitmap::col#2) ← (number~) mode_twoplanebitmap::$5
(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::$6 ← (byte) mode_twoplanebitmap::cx#1 != rangelast(0,$27)
if((bool~) mode_twoplanebitmap::$6) 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::$7 ← (byte) mode_twoplanebitmap::cy#1 != rangelast(0,$18)
if((bool~) mode_twoplanebitmap::$7) 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 ← (const nomodify byte*) mode_twoplanebitmap::PLANEA
(byte) mode_twoplanebitmap::ay#0 ← (byte) 0
to:mode_twoplanebitmap::@7
mode_twoplanebitmap::@7: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@12 mode_twoplanebitmap::@6
(byte) dtv_control#265 ← phi( mode_twoplanebitmap::@12/(byte) dtv_control#229 mode_twoplanebitmap::@6/(byte) dtv_control#271 )
(byte*) mode_twoplanebitmap::gfxa#7 ← phi( mode_twoplanebitmap::@12/(byte*) mode_twoplanebitmap::gfxa#8 mode_twoplanebitmap::@6/(byte*) mode_twoplanebitmap::gfxa#0 )
(byte) mode_twoplanebitmap::ay#5 ← phi( mode_twoplanebitmap::@12/(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::$8 ← (byte) mode_twoplanebitmap::ay#2 & (number) 4
(bool~) mode_twoplanebitmap::$9 ← (number~) mode_twoplanebitmap::$8 == (number) 0
if((bool~) mode_twoplanebitmap::$9) 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::$10 ← (byte) mode_twoplanebitmap::ax#1 != rangelast(0,$27)
if((bool~) mode_twoplanebitmap::$10) goto mode_twoplanebitmap::@8
to:mode_twoplanebitmap::@12
mode_twoplanebitmap::@12: 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::$11 ← (byte) mode_twoplanebitmap::ay#1 != rangelast(0,$c7)
if((bool~) mode_twoplanebitmap::$11) goto mode_twoplanebitmap::@7
to:mode_twoplanebitmap::@13
mode_twoplanebitmap::@13: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@12
(byte) dtv_control#213 ← phi( mode_twoplanebitmap::@12/(byte) dtv_control#229 )
(byte*) mode_twoplanebitmap::gfxb#0 ← (const nomodify byte*) mode_twoplanebitmap::PLANEB
(byte) mode_twoplanebitmap::by#0 ← (byte) 0
to:mode_twoplanebitmap::@14
mode_twoplanebitmap::@14: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@13 mode_twoplanebitmap::@16
(byte) dtv_control#198 ← phi( mode_twoplanebitmap::@13/(byte) dtv_control#213 mode_twoplanebitmap::@16/(byte) dtv_control#154 )
(byte) mode_twoplanebitmap::by#4 ← phi( mode_twoplanebitmap::@13/(byte) mode_twoplanebitmap::by#0 mode_twoplanebitmap::@16/(byte) mode_twoplanebitmap::by#1 )
(byte*) mode_twoplanebitmap::gfxb#3 ← phi( mode_twoplanebitmap::@13/(byte*) mode_twoplanebitmap::gfxb#0 mode_twoplanebitmap::@16/(byte*) mode_twoplanebitmap::gfxb#4 )
(byte) mode_twoplanebitmap::bx#0 ← (byte) 0
to:mode_twoplanebitmap::@15
mode_twoplanebitmap::@15: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@14 mode_twoplanebitmap::@15
(byte) dtv_control#183 ← phi( mode_twoplanebitmap::@14/(byte) dtv_control#198 mode_twoplanebitmap::@15/(byte) dtv_control#183 )
(byte) mode_twoplanebitmap::by#3 ← phi( mode_twoplanebitmap::@14/(byte) mode_twoplanebitmap::by#4 mode_twoplanebitmap::@15/(byte) mode_twoplanebitmap::by#3 )
(byte) mode_twoplanebitmap::bx#2 ← phi( mode_twoplanebitmap::@14/(byte) mode_twoplanebitmap::bx#0 mode_twoplanebitmap::@15/(byte) mode_twoplanebitmap::bx#1 )
(byte*) mode_twoplanebitmap::gfxb#2 ← phi( mode_twoplanebitmap::@14/(byte*) mode_twoplanebitmap::gfxb#3 mode_twoplanebitmap::@15/(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::$12 ← (byte) mode_twoplanebitmap::bx#1 != rangelast(0,$27)
if((bool~) mode_twoplanebitmap::$12) goto mode_twoplanebitmap::@15
to:mode_twoplanebitmap::@16
mode_twoplanebitmap::@16: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@15
(byte) dtv_control#154 ← phi( mode_twoplanebitmap::@15/(byte) dtv_control#183 )
(byte*) mode_twoplanebitmap::gfxb#4 ← phi( mode_twoplanebitmap::@15/(byte*) mode_twoplanebitmap::gfxb#1 )
(byte) mode_twoplanebitmap::by#2 ← phi( mode_twoplanebitmap::@15/(byte) mode_twoplanebitmap::by#3 )
(byte) mode_twoplanebitmap::by#1 ← (byte) mode_twoplanebitmap::by#2 + rangenext(0,$c7)
(bool~) mode_twoplanebitmap::$13 ← (byte) mode_twoplanebitmap::by#1 != rangelast(0,$c7)
if((bool~) mode_twoplanebitmap::$13) goto mode_twoplanebitmap::@14
to:mode_twoplanebitmap::@17
mode_twoplanebitmap::@17: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@16
(byte) dtv_control#124 ← phi( mode_twoplanebitmap::@16/(byte) dtv_control#154 )
call mode_ctrl
to:mode_twoplanebitmap::@18
mode_twoplanebitmap::@18: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@17
(byte) dtv_control#87 ← phi( mode_twoplanebitmap::@17/(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::@18
(byte) dtv_control#88 ← phi( mode_twoplanebitmap::@18/(byte) dtv_control#40 )
(byte) dtv_control#41 ← (byte) dtv_control#88
return
to:@return
(void()) mode_sixsfred()
mode_sixsfred: scope:[mode_sixsfred] from menu::@28
(byte) dtv_control#42 ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR
*((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR
*((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
*((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL
*((const nomodify byte*) DTV_PLANEA_START_LO) ← <(const nomodify byte*) mode_sixsfred::PLANEA
*((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_sixsfred::PLANEA
*((const nomodify byte*) DTV_PLANEA_START_HI) ← (number) 0
*((const nomodify byte*) DTV_PLANEA_STEP) ← (number) 1
*((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (number) 0
*((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (number) 0
*((const nomodify byte*) DTV_PLANEB_START_LO) ← <(const nomodify byte*) mode_sixsfred::PLANEB
*((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_sixsfred::PLANEB
*((const nomodify byte*) DTV_PLANEB_START_HI) ← (number) 0
*((const nomodify byte*) DTV_PLANEB_STEP) ← (number) 1
*((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (number) 0
*((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (number) 0
*((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(const nomodify byte*) mode_sixsfred::COLORS/(number) $400
*((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(const nomodify byte*) mode_sixsfred::COLORS/(number) $400
(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 )
*((const nomodify byte*) DTV_PALETTE + (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::$1 ← (byte) mode_sixsfred::i#1 != rangelast(0,$f)
if((bool~) mode_sixsfred::$1) 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 )
*((const nomodify byte*) BORDER_COLOR) ← (number) 0
(byte*) mode_sixsfred::col#0 ← (const nomodify byte*) mode_sixsfred::COLORS
(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::$2 ← (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#2
(number~) mode_sixsfred::$3 ← (byte~) mode_sixsfred::$2 & (number) $f
*((byte*) mode_sixsfred::col#2) ← (number~) mode_sixsfred::$3
(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::$4 ← (byte) mode_sixsfred::cx#1 != rangelast(0,$27)
if((bool~) mode_sixsfred::$4) 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::$5 ← (byte) mode_sixsfred::cy#1 != rangelast(0,$18)
if((bool~) mode_sixsfred::$5) 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 ← (const nomodify byte*) mode_sixsfred::PLANEA
(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::$6 ← (byte) mode_sixsfred::ay#2 / (number) 2
(number~) mode_sixsfred::$7 ← (number~) mode_sixsfred::$6 & (number) 3
(byte) mode_sixsfred::row#0 ← (number~) mode_sixsfred::$7
*((byte*) mode_sixsfred::gfxa#2) ← *((const byte*) mode_sixsfred::row_bitmask + (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::$8 ← (byte) mode_sixsfred::ax#1 != rangelast(0,$27)
if((bool~) mode_sixsfred::$8) 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::$9 ← (byte) mode_sixsfred::ay#1 != rangelast(0,$c7)
if((bool~) mode_sixsfred::$9) 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 ← (const nomodify byte*) mode_sixsfred::PLANEB
(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::$10 ← (byte) mode_sixsfred::bx#1 != rangelast(0,$27)
if((bool~) mode_sixsfred::$10) 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::$11 ← (byte) mode_sixsfred::by#1 != rangelast(0,$c7)
if((bool~) mode_sixsfred::$11) 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
(void()) mode_sixsfred2()
mode_sixsfred2: scope:[mode_sixsfred2] from menu::@26
(byte) dtv_control#45 ← (const nomodify byte) DTV_LINEAR
*((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_LINEAR
*((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
*((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL
*((const nomodify byte*) DTV_PLANEA_START_LO) ← <(const nomodify byte*) mode_sixsfred2::PLANEA
*((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_sixsfred2::PLANEA
*((const nomodify byte*) DTV_PLANEA_START_HI) ← (number) 0
*((const nomodify byte*) DTV_PLANEA_STEP) ← (number) 1
*((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (number) 0
*((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (number) 0
*((const nomodify byte*) DTV_PLANEB_START_LO) ← <(const nomodify byte*) mode_sixsfred2::PLANEB
*((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_sixsfred2::PLANEB
*((const nomodify byte*) DTV_PLANEB_START_HI) ← (number) 0
*((const nomodify byte*) DTV_PLANEB_STEP) ← (number) 1
*((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (number) 0
*((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (number) 0
*((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(const nomodify byte*) mode_sixsfred2::COLORS/(number) $400
*((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(const nomodify byte*) mode_sixsfred2::COLORS/(number) $400
(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 )
*((const nomodify byte*) DTV_PALETTE + (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::$1 ← (byte) mode_sixsfred2::i#1 != rangelast(0,$f)
if((bool~) mode_sixsfred2::$1) 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 )
*((const nomodify byte*) BORDER_COLOR) ← (number) 0
(byte*) mode_sixsfred2::col#0 ← (const nomodify byte*) mode_sixsfred2::COLORS
(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::$2 ← (byte) mode_sixsfred2::cx#2 & (number) 3
(number~) mode_sixsfred2::$3 ← (number~) mode_sixsfred2::$2 * (number) $10
(number~) mode_sixsfred2::$4 ← (byte) mode_sixsfred2::cy#2 & (number) 3
(number~) mode_sixsfred2::$5 ← (number~) mode_sixsfred2::$3 | (number~) mode_sixsfred2::$4
*((byte*) mode_sixsfred2::col#2) ← (number~) mode_sixsfred2::$5
(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::$6 ← (byte) mode_sixsfred2::cx#1 != rangelast(0,$27)
if((bool~) mode_sixsfred2::$6) 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::$7 ← (byte) mode_sixsfred2::cy#1 != rangelast(0,$18)
if((bool~) mode_sixsfred2::$7) 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 ← (const nomodify byte*) mode_sixsfred2::PLANEA
(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::$8 ← (byte) mode_sixsfred2::ay#2 / (number) 2
(number~) mode_sixsfred2::$9 ← (number~) mode_sixsfred2::$8 & (number) 3
(byte) mode_sixsfred2::row#0 ← (number~) mode_sixsfred2::$9
*((byte*) mode_sixsfred2::gfxa#2) ← *((const byte*) mode_sixsfred2::row_bitmask + (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::$10 ← (byte) mode_sixsfred2::ax#1 != rangelast(0,$27)
if((bool~) mode_sixsfred2::$10) 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::$11 ← (byte) mode_sixsfred2::ay#1 != rangelast(0,$c7)
if((bool~) mode_sixsfred2::$11) 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 ← (const nomodify byte*) mode_sixsfred2::PLANEB
(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::$12 ← (byte) mode_sixsfred2::bx#1 != rangelast(0,$27)
if((bool~) mode_sixsfred2::$12) 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::$13 ← (byte) mode_sixsfred2::by#1 != rangelast(0,$c7)
if((bool~) mode_sixsfred2::$13) 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
(void()) mode_8bpppixelcell()
mode_8bpppixelcell: scope:[mode_8bpppixelcell] from menu::@29
(byte) dtv_control#48 ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY
*((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY
*((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
*((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL
*((const nomodify byte*) DTV_PLANEA_START_LO) ← <(const nomodify byte*) mode_8bpppixelcell::PLANEA
*((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_8bpppixelcell::PLANEA
*((const nomodify byte*) DTV_PLANEA_START_HI) ← (number) 0
*((const nomodify byte*) DTV_PLANEA_STEP) ← (number) 1
*((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (number) 0
*((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (number) 0
*((const nomodify byte*) DTV_PLANEB_START_LO) ← <(const nomodify byte*) mode_8bpppixelcell::PLANEB
*((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_8bpppixelcell::PLANEB
*((const nomodify byte*) DTV_PLANEB_START_HI) ← (number) 0
*((const nomodify byte*) DTV_PLANEB_STEP) ← (number) 0
*((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (number) 0
*((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (number) 0
*((const nomodify byte*) BORDER_COLOR) ← (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 )
*((const nomodify byte*) DTV_PALETTE + (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::$1 ← (byte) mode_8bpppixelcell::i#1 != rangelast(0,$f)
if((bool~) mode_8bpppixelcell::$1) 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 ← (const nomodify byte*) mode_8bpppixelcell::PLANEA
(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::$2 ← (byte) mode_8bpppixelcell::ay#2 & (number) $f
(number~) mode_8bpppixelcell::$3 ← (number~) mode_8bpppixelcell::$2 * (number) $10
(number~) mode_8bpppixelcell::$4 ← (byte) mode_8bpppixelcell::ax#2 & (number) $f
(number~) mode_8bpppixelcell::$5 ← (number~) mode_8bpppixelcell::$3 | (number~) mode_8bpppixelcell::$4
*((byte*) mode_8bpppixelcell::gfxa#2) ← (number~) mode_8bpppixelcell::$5
(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::$6 ← (byte) mode_8bpppixelcell::ax#1 != rangelast(0,$27)
if((bool~) mode_8bpppixelcell::$6) 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::$7 ← (byte) mode_8bpppixelcell::ay#1 != rangelast(0,$18)
if((bool~) mode_8bpppixelcell::$7) 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 )
*((const nomodify byte*) PROCPORT) ← (const nomodify byte) PROCPORT_RAM_CHARROM
(byte*) mode_8bpppixelcell::gfxb#0 ← (const nomodify byte*) mode_8bpppixelcell::PLANEB
(byte*) mode_8bpppixelcell::chargen#0 ← (const byte*) mode_8bpppixelcell::CHARGEN
(byte) mode_8bpppixelcell::col#0 ← (byte) 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 ← (byte) 0
(number~) mode_8bpppixelcell::$8 ← (byte) mode_8bpppixelcell::bits#2 & (number) $80
(bool~) mode_8bpppixelcell::$9 ← (number~) mode_8bpppixelcell::$8 != (number) 0
(bool~) mode_8bpppixelcell::$10 ← ! (bool~) mode_8bpppixelcell::$9
if((bool~) mode_8bpppixelcell::$10) 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::$11 ← (byte) mode_8bpppixelcell::bits#3 * (number) 2
(byte) mode_8bpppixelcell::bits#1 ← (number~) mode_8bpppixelcell::$11
(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::$12 ← (byte) mode_8bpppixelcell::cp#1 != rangelast(0,7)
if((bool~) mode_8bpppixelcell::$12) 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::$13 ← (byte) mode_8bpppixelcell::cr#1 != rangelast(0,7)
if((bool~) mode_8bpppixelcell::$13) 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::$14 ← (byte) mode_8bpppixelcell::ch#1 != rangelast(0,$ff)
if((bool~) mode_8bpppixelcell::$14) 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 )
*((const nomodify byte*) PROCPORT) ← (const nomodify byte) PROCPORT_RAM_IO
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
(void()) mode_8bppchunkybmm()
mode_8bppchunkybmm: scope:[mode_8bppchunkybmm] from menu::@30
(byte) dtv_control#51 ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY|(const nomodify byte) DTV_COLORRAM_OFF
*((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY|(const nomodify byte) DTV_COLORRAM_OFF
*((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
*((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL
*((const nomodify byte*) DTV_PLANEB_START_LO) ← <<(const nomodify dword) mode_8bppchunkybmm::PLANEB
*((const nomodify byte*) DTV_PLANEB_START_MI) ← ><(const nomodify dword) mode_8bppchunkybmm::PLANEB
*((const nomodify byte*) DTV_PLANEB_START_HI) ← <>(const nomodify dword) mode_8bppchunkybmm::PLANEB
*((const nomodify byte*) DTV_PLANEB_STEP) ← (number) 8
*((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (number) 0
*((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (number) 0
*((const nomodify byte*) BORDER_COLOR) ← (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 )
*((const nomodify byte*) DTV_PALETTE + (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::$3 ← (byte) mode_8bppchunkybmm::i#1 != rangelast(0,$f)
if((bool~) mode_8bppchunkybmm::$3) 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 )
(byte) mode_8bppchunkybmm::gfxbCpuBank#0 ← (byte)(const nomodify dword) mode_8bppchunkybmm::PLANEB/(number) $4000
(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::$4 ← (byte*) mode_8bppchunkybmm::gfxb#3 == (number) $8000
(bool~) mode_8bppchunkybmm::$5 ← ! (bool~) mode_8bppchunkybmm::$4
if((bool~) mode_8bppchunkybmm::$5) 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::$7 ← (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#2
(byte) mode_8bppchunkybmm::c#0 ← (byte)(word~) mode_8bppchunkybmm::$7
*((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::$8 ← (word) mode_8bppchunkybmm::x#1 != rangelast(0,$13f)
if((bool~) mode_8bppchunkybmm::$8) 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::$9 ← (byte) mode_8bppchunkybmm::y#1 != rangelast(0,$c7)
if((bool~) mode_8bppchunkybmm::$9) 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) dtvSetCpuBankSegment1::cpuBankIdx#2 ← (byte)(number) $4000/(number) $4000
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
@3: scope:[] from @2
(byte) dtv_control#129 ← phi( @2/(byte) dtv_control#15 )
(byte*) print_char_cursor#55 ← phi( @2/(byte*) print_char_cursor#74 )
(byte*) print_line_cursor#49 ← phi( @2/(byte*) print_line_cursor#67 )
(byte*) print_screen#32 ← phi( @2/(byte*) print_screen#49 )
call main
to:@4
@4: scope:[] from @3
(byte) dtv_control#97 ← phi( @3/(byte) dtv_control#1 )
(byte*) print_char_cursor#34 ← phi( @3/(byte*) print_char_cursor#13 )
(byte*) print_line_cursor#29 ← phi( @3/(byte*) print_line_cursor#10 )
(byte*) print_screen#15 ← phi( @3/(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#18 ← (byte*) print_char_cursor#34
(byte) dtv_control#54 ← (byte) dtv_control#97
to:@end
@end: scope:[] from @4
SYMBOL TABLE SSA
(label) @1
(label) @2
(label) @3
(label) @4
(label) @begin
(label) @end
(const nomodify byte*) BG_COLOR = (byte*)(number) $d021
(const nomodify byte*) BG_COLOR1 = (byte*)(number) $d022
(const nomodify byte*) BG_COLOR2 = (byte*)(number) $d023
(const nomodify byte*) BG_COLOR3 = (byte*)(number) $d024
(const nomodify byte) BLACK = (byte) 0
(const nomodify byte) BLUE = (byte) 6
(const nomodify byte*) BORDER_COLOR = (byte*)(number) $d020
(const nomodify struct MOS6526_CIA*) CIA1 = (struct MOS6526_CIA*)(number) $dc00
(const nomodify struct MOS6526_CIA*) CIA2 = (struct MOS6526_CIA*)(number) $dd00
(const nomodify byte*) COLS = (byte*)(number) $d800
(const nomodify byte) DTV_BORDER_OFF = (byte) 2
(const nomodify byte) DTV_CHUNKY = (byte) $40
(const nomodify byte) DTV_COLORRAM_OFF = (byte) $10
(const nomodify dword) DTV_COLOR_BANK_DEFAULT = (dword) $1d800
(const nomodify byte*) DTV_COLOR_BANK_HI = (byte*)(number) $d037
(const nomodify byte*) DTV_COLOR_BANK_LO = (byte*)(number) $d036
(const nomodify byte*) DTV_CONTROL = (byte*)(number) $d03c
(const nomodify byte*) DTV_FEATURE = (byte*)(number) $d03f
(const nomodify byte) DTV_FEATURE_ENABLE = (byte) 1
(const nomodify byte*) DTV_GRAPHICS_VIC_BANK = (byte*)(number) $d03d
(const nomodify byte) DTV_HIGHCOLOR = (byte) 4
(const nomodify byte) DTV_LINEAR = (byte) 1
(const nomodify byte) DTV_OVERSCAN = (byte) 8
(const nomodify byte*) DTV_PALETTE = (byte*)(number) $d200
(const byte*) DTV_PALETTE_DEFAULT[(number) $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 }
(const nomodify byte*) DTV_PLANEA_MODULO_HI = (byte*)(number) $d039
(const nomodify byte*) DTV_PLANEA_MODULO_LO = (byte*)(number) $d038
(const nomodify byte*) DTV_PLANEA_START_HI = (byte*)(number) $d045
(const nomodify byte*) DTV_PLANEA_START_LO = (byte*)(number) $d03a
(const nomodify byte*) DTV_PLANEA_START_MI = (byte*)(number) $d03b
(const nomodify byte*) DTV_PLANEA_STEP = (byte*)(number) $d046
(const nomodify byte*) DTV_PLANEB_MODULO_HI = (byte*)(number) $d048
(const nomodify byte*) DTV_PLANEB_MODULO_LO = (byte*)(number) $d047
(const nomodify byte*) DTV_PLANEB_START_HI = (byte*)(number) $d04b
(const nomodify byte*) DTV_PLANEB_START_LO = (byte*)(number) $d049
(const nomodify byte*) DTV_PLANEB_START_MI = (byte*)(number) $d04a
(const nomodify byte*) DTV_PLANEB_STEP = (byte*)(number) $d04c
(const nomodify byte) GREEN = (byte) 5
(const nomodify byte) KEY_0 = (byte) $23
(const nomodify byte) KEY_1 = (byte) $38
(const nomodify byte) KEY_2 = (byte) $3b
(const nomodify byte) KEY_3 = (byte) 8
(const nomodify byte) KEY_4 = (byte) $b
(const nomodify byte) KEY_6 = (byte) $13
(const nomodify byte) KEY_7 = (byte) $18
(const nomodify byte) KEY_8 = (byte) $1b
(const nomodify byte) KEY_A = (byte) $a
(const nomodify byte) KEY_B = (byte) $1c
(const nomodify byte) KEY_C = (byte) $14
(const nomodify byte) KEY_D = (byte) $12
(const nomodify byte) KEY_E = (byte) $e
(const nomodify byte) KEY_H = (byte) $1d
(const nomodify byte) KEY_L = (byte) $2a
(const nomodify byte) KEY_O = (byte) $26
(const nomodify byte) KEY_SPACE = (byte) $3c
(const nomodify byte) KEY_U = (byte) $1e
(const nomodify byte) LIGHT_GREEN = (byte) $d
(const byte*) MENU_TEXT[] = (byte*) "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) MOS6526_CIA::INTERRUPT
(byte) MOS6526_CIA::PORT_A
(byte) MOS6526_CIA::PORT_A_DDR
(byte) MOS6526_CIA::PORT_B
(byte) MOS6526_CIA::PORT_B_DDR
(byte) MOS6526_CIA::SERIAL_DATA
(word) MOS6526_CIA::TIMER_A
(byte) MOS6526_CIA::TIMER_A_CONTROL
(word) MOS6526_CIA::TIMER_B
(byte) MOS6526_CIA::TIMER_B_CONTROL
(byte) MOS6526_CIA::TOD_10THS
(byte) MOS6526_CIA::TOD_HOURS
(byte) MOS6526_CIA::TOD_MIN
(byte) MOS6526_CIA::TOD_SEC
(byte) MOS6569_VICII::BG_COLOR
(byte) MOS6569_VICII::BG_COLOR1
(byte) MOS6569_VICII::BG_COLOR2
(byte) MOS6569_VICII::BG_COLOR3
(byte) MOS6569_VICII::BORDER_COLOR
(byte) MOS6569_VICII::CONTROL1
(byte) MOS6569_VICII::CONTROL2
(byte) MOS6569_VICII::IRQ_ENABLE
(byte) MOS6569_VICII::IRQ_STATUS
(byte) MOS6569_VICII::LIGHTPEN_X
(byte) MOS6569_VICII::LIGHTPEN_Y
(byte) MOS6569_VICII::MEMORY
(byte) MOS6569_VICII::RASTER
(byte) MOS6569_VICII::SPRITE0_COLOR
(byte) MOS6569_VICII::SPRITE0_X
(byte) MOS6569_VICII::SPRITE0_Y
(byte) MOS6569_VICII::SPRITE1_COLOR
(byte) MOS6569_VICII::SPRITE1_X
(byte) MOS6569_VICII::SPRITE1_Y
(byte) MOS6569_VICII::SPRITE2_COLOR
(byte) MOS6569_VICII::SPRITE2_X
(byte) MOS6569_VICII::SPRITE2_Y
(byte) MOS6569_VICII::SPRITE3_COLOR
(byte) MOS6569_VICII::SPRITE3_X
(byte) MOS6569_VICII::SPRITE3_Y
(byte) MOS6569_VICII::SPRITE4_COLOR
(byte) MOS6569_VICII::SPRITE4_X
(byte) MOS6569_VICII::SPRITE4_Y
(byte) MOS6569_VICII::SPRITE5_COLOR
(byte) MOS6569_VICII::SPRITE5_X
(byte) MOS6569_VICII::SPRITE5_Y
(byte) MOS6569_VICII::SPRITE6_COLOR
(byte) MOS6569_VICII::SPRITE6_X
(byte) MOS6569_VICII::SPRITE6_Y
(byte) MOS6569_VICII::SPRITE7_COLOR
(byte) MOS6569_VICII::SPRITE7_X
(byte) MOS6569_VICII::SPRITE7_Y
(byte) MOS6569_VICII::SPRITES_BG_COLLISION
(byte) MOS6569_VICII::SPRITES_COLLISION
(byte) MOS6569_VICII::SPRITES_ENABLE
(byte) MOS6569_VICII::SPRITES_EXPAND_X
(byte) MOS6569_VICII::SPRITES_EXPAND_Y
(byte) MOS6569_VICII::SPRITES_MC
(byte) MOS6569_VICII::SPRITES_MCOLOR1
(byte) MOS6569_VICII::SPRITES_MCOLOR2
(byte) MOS6569_VICII::SPRITES_PRIORITY
(byte) MOS6569_VICII::SPRITES_XMSB
(byte) MOS6581_SID::CH1_ATTACK_DECAY
(byte) MOS6581_SID::CH1_CONTROL
(word) MOS6581_SID::CH1_FREQ
(word) MOS6581_SID::CH1_PULSE_WIDTH
(byte) MOS6581_SID::CH1_SUSTAIN_RELEASE
(byte) MOS6581_SID::CH2_ATTACK_DECAY
(byte) MOS6581_SID::CH2_CONTROL
(word) MOS6581_SID::CH2_FREQ
(word) MOS6581_SID::CH2_PULSE_WIDTH
(byte) MOS6581_SID::CH2_SUSTAIN_RELEASE
(byte) MOS6581_SID::CH3_ATTACK_DECAY
(byte) MOS6581_SID::CH3_CONTROL
(byte) MOS6581_SID::CH3_ENV
(word) MOS6581_SID::CH3_FREQ
(byte) MOS6581_SID::CH3_OSC
(word) MOS6581_SID::CH3_PULSE_WIDTH
(byte) MOS6581_SID::CH3_SUSTAIN_RELEASE
(byte) MOS6581_SID::FILTER_CUTOFF_HIGH
(byte) MOS6581_SID::FILTER_CUTOFF_LOW
(byte) MOS6581_SID::FILTER_SETUP
(byte) MOS6581_SID::POT_X
(byte) MOS6581_SID::POT_Y
(byte) MOS6581_SID::VOLUME_FILTER_MODE
(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A = (byte) 0
(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR = (byte) 2
(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_B = (byte) 1
(const nomodify byte*) PROCPORT = (byte*)(number) 1
(const nomodify byte*) PROCPORT_DDR = (byte*)(number) 0
(const nomodify byte) PROCPORT_DDR_MEMORY_MASK = (byte) 7
(const nomodify byte) PROCPORT_RAM_CHARROM = (byte) 1
(const nomodify byte) PROCPORT_RAM_IO = (byte) 5
(const byte) RADIX::BINARY = (number) 2
(const byte) RADIX::DECIMAL = (number) $a
(const byte) RADIX::HEXADECIMAL = (number) $10
(const byte) RADIX::OCTAL = (number) 8
(const nomodify byte*) RASTER = (byte*)(number) $d012
(const nomodify byte) VIC_BMM = (byte) $20
(const nomodify byte*) VIC_CONTROL = (byte*)(number) $d011
(const nomodify byte*) VIC_CONTROL2 = (byte*)(number) $d016
(const nomodify byte) VIC_CSEL = (byte) 8
(const nomodify byte) VIC_DEN = (byte) $10
(const nomodify byte) VIC_ECM = (byte) $40
(const nomodify byte) VIC_MCM = (byte) $10
(const nomodify byte*) VIC_MEMORY = (byte*)(number) $d018
(const nomodify byte) VIC_RSEL = (byte) 8
(void()) bitmap_clear()
(bool~) bitmap_clear::$0
(bool~) bitmap_clear::$1
(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::@12
(label) bitmap_line::@13
(label) bitmap_line::@14
(label) bitmap_line::@15
(label) bitmap_line::@16
(label) bitmap_line::@17
(label) bitmap_line::@18
(label) bitmap_line::@19
(label) bitmap_line::@2
(label) bitmap_line::@20
(label) bitmap_line::@21
(label) bitmap_line::@22
(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
(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::@4
(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::@4
(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::@4
(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::@4
(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
(const to_nomodify byte*) bitmap_plot_bit[(number) $100] = { fill( $100, 0) }
(const to_nomodify byte*) bitmap_plot_xhi[(number) $100] = { fill( $100, 0) }
(const to_nomodify byte*) bitmap_plot_xlo[(number) $100] = { fill( $100, 0) }
(const to_nomodify byte*) bitmap_plot_yhi[(number) $100] = { fill( $100, 0) }
(const to_nomodify byte*) bitmap_plot_ylo[(number) $100] = { fill( $100, 0) }
(void()) dtvSetCpuBankSegment1((byte) dtvSetCpuBankSegment1::cpuBankIdx)
(label) dtvSetCpuBankSegment1::@return
(const byte*) dtvSetCpuBankSegment1::cpuBank = (byte*)(number) $ff
(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::@1
(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
(const byte*) keyboard_matrix_col_bitmask[(number) 8] = { (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)
(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
(const byte*) keyboard_matrix_row_bitmask[(number) 8] = { (byte) $fe, (byte) $fd, (byte) $fb, (byte) $f7, (byte) $ef, (byte) $df, (byte) $bf, (byte) $7f }
(void()) main()
(label) main::@1
(label) main::@2
(label) main::@3
(label) main::@return
(void*()) memset((void*) memset::str , (byte) memset::c , (word) memset::num)
(bool~) memset::$0
(bool~) memset::$1
(byte*~) memset::$2
(bool~) memset::$3
(byte*~) memset::$4
(label) memset::@1
(label) memset::@2
(label) memset::@3
(label) memset::@4
(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()
(bool~) menu::$10
(bool~) menu::$11
(byte~) menu::$13
(bool~) menu::$14
(bool~) menu::$15
(byte~) menu::$17
(bool~) menu::$18
(bool~) menu::$19
(byte~) menu::$21
(bool~) menu::$22
(bool~) menu::$23
(byte~) menu::$25
(bool~) menu::$26
(bool~) menu::$27
(byte~) menu::$29
(bool~) 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
(bool~) 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
(bool~) menu::$6
(bool~) menu::$7
(byte~) menu::$9
(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::@43
(label) menu::@44
(label) menu::@45
(label) menu::@46
(label) menu::@47
(label) menu::@48
(label) menu::@49
(label) menu::@5
(label) menu::@50
(label) menu::@51
(label) menu::@52
(label) menu::@53
(label) menu::@54
(label) menu::@55
(label) menu::@56
(label) menu::@57
(label) menu::@6
(label) menu::@7
(label) menu::@8
(label) menu::@9
(label) menu::@return
(const nomodify byte*) menu::CHARSET = (byte*)(number) $9800
(const nomodify byte*) menu::SCREEN = (byte*)(number) $8000
(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()
(bool~) mode_8bppchunkybmm::$3
(bool~) mode_8bppchunkybmm::$4
(bool~) mode_8bppchunkybmm::$5
(word~) mode_8bppchunkybmm::$7
(bool~) mode_8bppchunkybmm::$8
(bool~) 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
(const nomodify dword) mode_8bppchunkybmm::PLANEB = (dword) $20000
(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()
(bool~) mode_8bpppixelcell::$1
(bool~) mode_8bpppixelcell::$10
(number~) mode_8bpppixelcell::$11
(bool~) mode_8bpppixelcell::$12
(bool~) mode_8bpppixelcell::$13
(bool~) mode_8bpppixelcell::$14
(number~) mode_8bpppixelcell::$2
(number~) mode_8bpppixelcell::$3
(number~) mode_8bpppixelcell::$4
(number~) mode_8bpppixelcell::$5
(bool~) mode_8bpppixelcell::$6
(bool~) mode_8bpppixelcell::$7
(number~) mode_8bpppixelcell::$8
(bool~) 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
(const byte*) mode_8bpppixelcell::CHARGEN = (byte*)(number) $d000
(const nomodify byte*) mode_8bpppixelcell::PLANEA = (byte*)(number) $3c00
(const nomodify byte*) mode_8bpppixelcell::PLANEB = (byte*)(number) $4000
(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::@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
(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()
(bool~) mode_ecmchar::$1
(byte~) mode_ecmchar::$2
(number~) mode_ecmchar::$3
(number~) mode_ecmchar::$4
(number~) mode_ecmchar::$5
(number~) mode_ecmchar::$6
(number~) mode_ecmchar::$7
(bool~) mode_ecmchar::$8
(bool~) 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
(const nomodify byte*) mode_ecmchar::CHARSET = (byte*)(number) $9000
(const nomodify byte*) mode_ecmchar::COLORS = (byte*)(number) $d800
(const nomodify byte*) mode_ecmchar::SCREEN = (byte*)(number) $8000
(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()
(bool~) mode_hicolecmchar::$1
(number~) mode_hicolecmchar::$2
(number~) mode_hicolecmchar::$3
(number~) mode_hicolecmchar::$4
(number~) mode_hicolecmchar::$5
(bool~) mode_hicolecmchar::$6
(bool~) mode_hicolecmchar::$7
(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
(const nomodify byte*) mode_hicolecmchar::CHARSET = (byte*)(number) $9000
(const nomodify byte*) mode_hicolecmchar::COLORS = (byte*)(number) $8400
(const nomodify byte*) mode_hicolecmchar::SCREEN = (byte*)(number) $8000
(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()
(bool~) mode_hicolmcchar::$1
(number~) mode_hicolmcchar::$2
(number~) mode_hicolmcchar::$3
(number~) mode_hicolmcchar::$4
(number~) mode_hicolmcchar::$5
(bool~) mode_hicolmcchar::$6
(bool~) mode_hicolmcchar::$7
(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
(const nomodify byte*) mode_hicolmcchar::CHARSET = (byte*)(number) $9000
(const nomodify byte*) mode_hicolmcchar::COLORS = (byte*)(number) $8400
(const nomodify byte*) mode_hicolmcchar::SCREEN = (byte*)(number) $8000
(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()
(bool~) mode_hicolstdchar::$1
(number~) mode_hicolstdchar::$2
(number~) mode_hicolstdchar::$3
(number~) mode_hicolstdchar::$4
(number~) mode_hicolstdchar::$5
(bool~) mode_hicolstdchar::$6
(bool~) mode_hicolstdchar::$7
(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
(const nomodify byte*) mode_hicolstdchar::CHARSET = (byte*)(number) $9000
(const nomodify byte*) mode_hicolstdchar::COLORS = (byte*)(number) $8400
(const nomodify byte*) mode_hicolstdchar::SCREEN = (byte*)(number) $8000
(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()
(bool~) mode_mcchar::$1
(byte~) mode_mcchar::$2
(number~) mode_mcchar::$3
(number~) mode_mcchar::$4
(number~) mode_mcchar::$5
(number~) mode_mcchar::$6
(number~) mode_mcchar::$7
(bool~) mode_mcchar::$8
(bool~) 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
(const nomodify byte*) mode_mcchar::CHARSET = (byte*)(number) $9000
(const nomodify byte*) mode_mcchar::COLORS = (byte*)(number) $d800
(const nomodify byte*) mode_mcchar::SCREEN = (byte*)(number) $8000
(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()
(bool~) mode_sixsfred::$1
(bool~) mode_sixsfred::$10
(bool~) mode_sixsfred::$11
(byte~) mode_sixsfred::$2
(number~) mode_sixsfred::$3
(bool~) mode_sixsfred::$4
(bool~) mode_sixsfred::$5
(number~) mode_sixsfred::$6
(number~) mode_sixsfred::$7
(bool~) mode_sixsfred::$8
(bool~) 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
(const nomodify byte*) mode_sixsfred::COLORS = (byte*)(number) $8000
(const nomodify byte*) mode_sixsfred::PLANEA = (byte*)(number) $4000
(const nomodify byte*) mode_sixsfred::PLANEB = (byte*)(number) $6000
(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
(const byte*) mode_sixsfred::row_bitmask[] = { (byte) 0, (byte) $55, (byte) $aa, (byte) $ff }
(void()) mode_sixsfred2()
(bool~) mode_sixsfred2::$1
(bool~) mode_sixsfred2::$10
(bool~) mode_sixsfred2::$11
(bool~) mode_sixsfred2::$12
(bool~) mode_sixsfred2::$13
(number~) mode_sixsfred2::$2
(number~) mode_sixsfred2::$3
(number~) mode_sixsfred2::$4
(number~) mode_sixsfred2::$5
(bool~) mode_sixsfred2::$6
(bool~) mode_sixsfred2::$7
(number~) mode_sixsfred2::$8
(number~) 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
(const nomodify byte*) mode_sixsfred2::COLORS = (byte*)(number) $8000
(const nomodify byte*) mode_sixsfred2::PLANEA = (byte*)(number) $4000
(const nomodify byte*) mode_sixsfred2::PLANEB = (byte*)(number) $6000
(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
(const byte*) mode_sixsfred2::row_bitmask[] = { (byte) 0, (byte) $55, (byte) $aa, (byte) $ff }
(void()) mode_stdbitmap()
(bool~) mode_stdbitmap::$10
(bool~) mode_stdbitmap::$11
(number~) mode_stdbitmap::$12
(number~) mode_stdbitmap::$13
(bool~) mode_stdbitmap::$3
(byte~) mode_stdbitmap::$4
(number~) mode_stdbitmap::$5
(number~) mode_stdbitmap::$6
(number~) mode_stdbitmap::$7
(number~) mode_stdbitmap::$8
(bool~) mode_stdbitmap::$9
(label) mode_stdbitmap::@1
(label) mode_stdbitmap::@10
(label) mode_stdbitmap::@11
(label) mode_stdbitmap::@12
(label) mode_stdbitmap::@13
(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
(const nomodify byte*) mode_stdbitmap::BITMAP = (byte*)(number) $6000
(const nomodify byte*) mode_stdbitmap::SCREEN = (byte*)(number) $4000
(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
(const byte) mode_stdbitmap::lines_cnt = (byte) 9
(const byte*) mode_stdbitmap::lines_x[] = { (byte) 0, (byte) $ff, (byte) $ff, (byte) 0, (byte) 0, (byte) $80, (byte) $ff, (byte) $80, (byte) 0, (byte) $80 }
(const byte*) mode_stdbitmap::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()
(bool~) mode_stdchar::$1
(byte~) mode_stdchar::$2
(number~) mode_stdchar::$3
(number~) mode_stdchar::$4
(number~) mode_stdchar::$5
(number~) mode_stdchar::$6
(number~) mode_stdchar::$7
(bool~) mode_stdchar::$8
(bool~) 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
(const nomodify byte*) mode_stdchar::CHARSET = (byte*)(number) $9000
(const nomodify byte*) mode_stdchar::COLORS = (byte*)(number) $d800
(const nomodify byte*) mode_stdchar::SCREEN = (byte*)(number) $8000
(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()
(bool~) mode_twoplanebitmap::$1
(bool~) mode_twoplanebitmap::$10
(bool~) mode_twoplanebitmap::$11
(bool~) mode_twoplanebitmap::$12
(bool~) mode_twoplanebitmap::$13
(number~) mode_twoplanebitmap::$2
(number~) mode_twoplanebitmap::$3
(number~) mode_twoplanebitmap::$4
(number~) mode_twoplanebitmap::$5
(bool~) mode_twoplanebitmap::$6
(bool~) mode_twoplanebitmap::$7
(number~) mode_twoplanebitmap::$8
(bool~) mode_twoplanebitmap::$9
(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::@16
(label) mode_twoplanebitmap::@17
(label) mode_twoplanebitmap::@18
(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
(const nomodify byte*) mode_twoplanebitmap::COLORS = (byte*)(number) $8000
(const nomodify byte*) mode_twoplanebitmap::PLANEA = (byte*)(number) $4000
(const nomodify byte*) mode_twoplanebitmap::PLANEB = (byte*)(number) $6000
(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
(void()) print_char((byte) print_char::ch)
(label) print_char::@return
(byte) print_char::ch
(byte) print_char::ch#0
(byte) print_char::ch#1
(byte*) print_char_cursor
(byte*) print_char_cursor#0
(byte*) print_char_cursor#1
(byte*) print_char_cursor#10
(byte*) print_char_cursor#100
(byte*) print_char_cursor#101
(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
(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#8
(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::$3
(bool~) print_str_lines::$4
(bool~) print_str_lines::$5
(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::@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::ch#3
(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
(byte*) print_str_lines::str#9
Fixing inline constructor with bitmap_clear::$2 ← (byte)*(bitmap_plot_xhi + 0) w= (byte)*(bitmap_plot_xlo + 0)
Fixing inline constructor with bitmap_plot::$2 ← (byte)*(bitmap_plot_xhi + bitmap_plot::x#4) w= (byte)*(bitmap_plot_xlo + bitmap_plot::x#4)
Fixing inline constructor with bitmap_plot::$3 ← (byte)*(bitmap_plot_yhi + bitmap_plot::y#4) w= (byte)*(bitmap_plot_ylo + bitmap_plot::y#4)
Successful SSA optimization Pass2FixInlineConstructors
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::$3 ← (number) 0 != *((byte*) print_str_lines::str#2)
Adding number conversion cast (unumber) 0 in (bool~) print_str_lines::$5 ← (number) 0 != (byte) print_str_lines::ch#0
Adding number conversion cast (unumber) 0 in (bool~) print_str_lines::$4 ← (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) 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) $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 (byte*~) bitmap_clear::$2 ← (byte)*((const to_nomodify byte*) bitmap_plot_xhi + (number) 0) w= (byte)*((const to_nomodify byte*) bitmap_plot_xlo + (number) 0)
Adding number conversion cast (unumber) 0 in (byte*~) bitmap_clear::$2 ← (byte)*((const to_nomodify byte*) bitmap_plot_xhi + (unumber)(number) 0) w= (byte)*((const to_nomodify byte*) bitmap_plot_xlo + (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 *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte)(dword)(const nomodify byte*) menu::CHARSET/(number) $10000
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(number) $400
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(number) $400
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_CONTROL) ← (number) 0
Adding number conversion cast (unumber) 3 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (number) 3
Adding number conversion cast (unumber) 3^(byte)(word)menu::CHARSET/$4000 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (number) 3^(byte)(word)(const nomodify byte*) menu::CHARSET/(number) $4000
Adding number conversion cast (unumber) 3 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← ((unumber)) (number) 3^(byte)(word)(const nomodify byte*) menu::CHARSET/(number) $4000
Adding number conversion cast (unumber) $4000 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← ((unumber)) (unumber)(number) 3^(byte)(word)(const nomodify byte*) menu::CHARSET/(number) $4000
Adding number conversion cast (unumber) VIC_DEN|VIC_RSEL|3 in *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
Adding number conversion cast (unumber) 3 in *((const nomodify byte*) VIC_CONTROL) ← ((unumber)) (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
Adding number conversion cast (unumber) $3fff in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) menu::SCREEN&(number) $3fff/(number) $40|(word)(const nomodify byte*) menu::CHARSET&(number) $3fff/(number) $400
Adding number conversion cast (unumber) $3fff in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) menu::SCREEN&(unumber)(number) $3fff/(number) $40|(word)(const nomodify byte*) menu::CHARSET&(number) $3fff/(number) $400
Adding number conversion cast (unumber) $3e8 in (bool~) menu::$4 ← (byte*) menu::c#2 != (const nomodify byte*) COLS+(number) $3e8
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) BG_COLOR) ← (number) 0
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) BORDER_COLOR) ← (number) 0
Adding number conversion cast (unumber) 0 in (bool~) menu::$6 ← (byte~) menu::$5 != (number) 0
Adding number conversion cast (unumber) 0 in (bool~) menu::$10 ← (byte~) menu::$9 != (number) 0
Adding number conversion cast (unumber) 0 in (bool~) menu::$14 ← (byte~) menu::$13 != (number) 0
Adding number conversion cast (unumber) 0 in (bool~) menu::$18 ← (byte~) menu::$17 != (number) 0
Adding number conversion cast (unumber) 0 in (bool~) menu::$22 ← (byte~) menu::$21 != (number) 0
Adding number conversion cast (unumber) 0 in (bool~) menu::$26 ← (byte~) menu::$25 != (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) $ff in (bool~) mode_ctrl::$0 ← *((const nomodify byte*) RASTER) != (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 *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte)(dword)(const nomodify byte*) mode_stdchar::CHARSET/(number) $10000
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(number) $400
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(number) $400
Adding number conversion cast (unumber) 0 in (byte) dtv_control#18 ← (number) 0
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_CONTROL) ← (number) 0
Adding number conversion cast (unumber) 3 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (number) 3
Adding number conversion cast (unumber) 3^(byte)(word)mode_stdchar::CHARSET/$4000 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (number) 3^(byte)(word)(const nomodify byte*) mode_stdchar::CHARSET/(number) $4000
Adding number conversion cast (unumber) 3 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← ((unumber)) (number) 3^(byte)(word)(const nomodify byte*) mode_stdchar::CHARSET/(number) $4000
Adding number conversion cast (unumber) $4000 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← ((unumber)) (unumber)(number) 3^(byte)(word)(const nomodify byte*) mode_stdchar::CHARSET/(number) $4000
Adding number conversion cast (unumber) VIC_DEN|VIC_RSEL|3 in *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
Adding number conversion cast (unumber) 3 in *((const nomodify byte*) VIC_CONTROL) ← ((unumber)) (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
Adding number conversion cast (unumber) $3fff in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_stdchar::SCREEN&(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_stdchar::CHARSET&(number) $3fff/(number) $400
Adding number conversion cast (unumber) $3fff in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_stdchar::SCREEN&(unumber)(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_stdchar::CHARSET&(number) $3fff/(number) $400
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) BG_COLOR) ← (number) 0
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) BORDER_COLOR) ← (number) 0
Adding number conversion cast (unumber) $f in (number~) mode_stdchar::$3 ← (byte~) mode_stdchar::$2 & (number) $f
Adding number conversion cast (unumber) mode_stdchar::$3 in (number~) mode_stdchar::$3 ← (byte~) mode_stdchar::$2 & (unumber)(number) $f
Adding number conversion cast (unumber) $f in (number~) mode_stdchar::$4 ← (byte) mode_stdchar::cy#2 & (number) $f
Adding number conversion cast (unumber) mode_stdchar::$4 in (number~) mode_stdchar::$4 ← (byte) mode_stdchar::cy#2 & (unumber)(number) $f
Adding number conversion cast (unumber) $10 in (number~) mode_stdchar::$5 ← (unumber~) mode_stdchar::$4 * (number) $10
Adding number conversion cast (unumber) mode_stdchar::$5 in (number~) mode_stdchar::$5 ← (unumber~) mode_stdchar::$4 * (unumber)(number) $10
Adding number conversion cast (unumber) $f in (number~) mode_stdchar::$6 ← (byte) mode_stdchar::cx#2 & (number) $f
Adding number conversion cast (unumber) mode_stdchar::$6 in (number~) mode_stdchar::$6 ← (byte) mode_stdchar::cx#2 & (unumber)(number) $f
Adding number conversion cast (unumber) mode_stdchar::$7 in (number~) mode_stdchar::$7 ← (unumber~) mode_stdchar::$5 | (unumber~) mode_stdchar::$6
Adding number conversion cast (unumber) $10000 in *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte)(dword)(const nomodify byte*) mode_ecmchar::CHARSET/(number) $10000
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(number) $400
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(number) $400
Adding number conversion cast (unumber) 0 in (byte) dtv_control#21 ← (number) 0
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_CONTROL) ← (number) 0
Adding number conversion cast (unumber) 3 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (number) 3
Adding number conversion cast (unumber) 3^(byte)(word)mode_ecmchar::CHARSET/$4000 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (number) 3^(byte)(word)(const nomodify byte*) mode_ecmchar::CHARSET/(number) $4000
Adding number conversion cast (unumber) 3 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← ((unumber)) (number) 3^(byte)(word)(const nomodify byte*) mode_ecmchar::CHARSET/(number) $4000
Adding number conversion cast (unumber) $4000 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← ((unumber)) (unumber)(number) 3^(byte)(word)(const nomodify byte*) mode_ecmchar::CHARSET/(number) $4000
Adding number conversion cast (unumber) VIC_DEN|VIC_RSEL|VIC_ECM|3 in *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(const nomodify byte) VIC_ECM|(number) 3
Adding number conversion cast (unumber) 3 in *((const nomodify byte*) VIC_CONTROL) ← ((unumber)) (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(const nomodify byte) VIC_ECM|(number) 3
Adding number conversion cast (unumber) $3fff in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_ecmchar::SCREEN&(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_ecmchar::CHARSET&(number) $3fff/(number) $400
Adding number conversion cast (unumber) $3fff in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_ecmchar::SCREEN&(unumber)(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_ecmchar::CHARSET&(number) $3fff/(number) $400
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) BORDER_COLOR) ← (number) 0
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) BG_COLOR) ← (number) 0
Adding number conversion cast (unumber) 2 in *((const nomodify byte*) BG_COLOR1) ← (number) 2
Adding number conversion cast (unumber) 5 in *((const nomodify byte*) BG_COLOR2) ← (number) 5
Adding number conversion cast (unumber) 6 in *((const nomodify byte*) BG_COLOR3) ← (number) 6
Adding number conversion cast (unumber) $f in (number~) mode_ecmchar::$3 ← (byte~) mode_ecmchar::$2 & (number) $f
Adding number conversion cast (unumber) mode_ecmchar::$3 in (number~) mode_ecmchar::$3 ← (byte~) mode_ecmchar::$2 & (unumber)(number) $f
Adding number conversion cast (unumber) $f in (number~) mode_ecmchar::$4 ← (byte) mode_ecmchar::cy#2 & (number) $f
Adding number conversion cast (unumber) mode_ecmchar::$4 in (number~) mode_ecmchar::$4 ← (byte) mode_ecmchar::cy#2 & (unumber)(number) $f
Adding number conversion cast (unumber) $10 in (number~) mode_ecmchar::$5 ← (unumber~) mode_ecmchar::$4 * (number) $10
Adding number conversion cast (unumber) mode_ecmchar::$5 in (number~) mode_ecmchar::$5 ← (unumber~) mode_ecmchar::$4 * (unumber)(number) $10
Adding number conversion cast (unumber) $f in (number~) mode_ecmchar::$6 ← (byte) mode_ecmchar::cx#2 & (number) $f
Adding number conversion cast (unumber) mode_ecmchar::$6 in (number~) mode_ecmchar::$6 ← (byte) mode_ecmchar::cx#2 & (unumber)(number) $f
Adding number conversion cast (unumber) mode_ecmchar::$7 in (number~) mode_ecmchar::$7 ← (unumber~) mode_ecmchar::$5 | (unumber~) mode_ecmchar::$6
Adding number conversion cast (unumber) $10000 in *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte)(dword)(const nomodify byte*) mode_mcchar::CHARSET/(number) $10000
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(number) $400
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(number) $400
Adding number conversion cast (unumber) 0 in (byte) dtv_control#24 ← (number) 0
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_CONTROL) ← (number) 0
Adding number conversion cast (unumber) 3 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (number) 3
Adding number conversion cast (unumber) 3^(byte)(word)mode_mcchar::CHARSET/$4000 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (number) 3^(byte)(word)(const nomodify byte*) mode_mcchar::CHARSET/(number) $4000
Adding number conversion cast (unumber) 3 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← ((unumber)) (number) 3^(byte)(word)(const nomodify byte*) mode_mcchar::CHARSET/(number) $4000
Adding number conversion cast (unumber) $4000 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← ((unumber)) (unumber)(number) 3^(byte)(word)(const nomodify byte*) mode_mcchar::CHARSET/(number) $4000
Adding number conversion cast (unumber) VIC_DEN|VIC_RSEL|3 in *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
Adding number conversion cast (unumber) 3 in *((const nomodify byte*) VIC_CONTROL) ← ((unumber)) (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
Adding number conversion cast (unumber) $3fff in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_mcchar::SCREEN&(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_mcchar::CHARSET&(number) $3fff/(number) $400
Adding number conversion cast (unumber) $3fff in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_mcchar::SCREEN&(unumber)(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_mcchar::CHARSET&(number) $3fff/(number) $400
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) BORDER_COLOR) ← (number) 0
Adding number conversion cast (unumber) $f in (number~) mode_mcchar::$3 ← (byte~) mode_mcchar::$2 & (number) $f
Adding number conversion cast (unumber) mode_mcchar::$3 in (number~) mode_mcchar::$3 ← (byte~) mode_mcchar::$2 & (unumber)(number) $f
Adding number conversion cast (unumber) $f in (number~) mode_mcchar::$4 ← (byte) mode_mcchar::cy#2 & (number) $f
Adding number conversion cast (unumber) mode_mcchar::$4 in (number~) mode_mcchar::$4 ← (byte) mode_mcchar::cy#2 & (unumber)(number) $f
Adding number conversion cast (unumber) $10 in (number~) mode_mcchar::$5 ← (unumber~) mode_mcchar::$4 * (number) $10
Adding number conversion cast (unumber) mode_mcchar::$5 in (number~) mode_mcchar::$5 ← (unumber~) mode_mcchar::$4 * (unumber)(number) $10
Adding number conversion cast (unumber) $f in (number~) mode_mcchar::$6 ← (byte) mode_mcchar::cx#2 & (number) $f
Adding number conversion cast (unumber) mode_mcchar::$6 in (number~) mode_mcchar::$6 ← (byte) mode_mcchar::cx#2 & (unumber)(number) $f
Adding number conversion cast (unumber) mode_mcchar::$7 in (number~) mode_mcchar::$7 ← (unumber~) mode_mcchar::$5 | (unumber~) mode_mcchar::$6
Adding number conversion cast (unumber) $10000 in *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte)(dword)(const nomodify byte*) mode_stdbitmap::BITMAP/(number) $10000
Adding number conversion cast (unumber) 0 in (byte) dtv_control#27 ← (number) 0
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_CONTROL) ← (number) 0
Adding number conversion cast (unumber) 3 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (number) 3
Adding number conversion cast (unumber) 3^(byte)(word)mode_stdbitmap::BITMAP/$4000 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (number) 3^(byte)(word)(const nomodify byte*) mode_stdbitmap::BITMAP/(number) $4000
Adding number conversion cast (unumber) 3 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← ((unumber)) (number) 3^(byte)(word)(const nomodify byte*) mode_stdbitmap::BITMAP/(number) $4000
Adding number conversion cast (unumber) $4000 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← ((unumber)) (unumber)(number) 3^(byte)(word)(const nomodify byte*) mode_stdbitmap::BITMAP/(number) $4000
Adding number conversion cast (unumber) VIC_BMM|VIC_DEN|VIC_RSEL|3 in *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
Adding number conversion cast (unumber) 3 in *((const nomodify byte*) VIC_CONTROL) ← ((unumber)) (const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
Adding number conversion cast (unumber) $3fff in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_stdbitmap::SCREEN&(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_stdbitmap::BITMAP&(number) $3fff/(number) $400
Adding number conversion cast (unumber) $3fff in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_stdbitmap::SCREEN&(unumber)(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_stdbitmap::BITMAP&(number) $3fff/(number) $400
Adding number conversion cast (unumber) $f in (number~) mode_stdbitmap::$5 ← (byte~) mode_stdbitmap::$4 & (number) $f
Adding number conversion cast (unumber) mode_stdbitmap::$5 in (number~) mode_stdbitmap::$5 ← (byte~) mode_stdbitmap::$4 & (unumber)(number) $f
Adding number conversion cast (unumber) $f in (number~) mode_stdbitmap::$6 ← (number) $f - (byte) mode_stdbitmap::col#0
Adding number conversion cast (unumber) mode_stdbitmap::$6 in (number~) mode_stdbitmap::$6 ← (unumber)(number) $f - (byte) mode_stdbitmap::col#0
Adding number conversion cast (unumber) $10 in (number~) mode_stdbitmap::$7 ← (byte) mode_stdbitmap::col#0 * (number) $10
Adding number conversion cast (unumber) mode_stdbitmap::$7 in (number~) mode_stdbitmap::$7 ← (byte) mode_stdbitmap::col#0 * (unumber)(number) $10
Adding number conversion cast (unumber) mode_stdbitmap::$8 in (number~) mode_stdbitmap::$8 ← (unumber~) mode_stdbitmap::$7 | (byte) mode_stdbitmap::col2#0
Adding number conversion cast (unumber) 1 in (number~) mode_stdbitmap::$12 ← (byte) mode_stdbitmap::l#3 + (number) 1
Adding number conversion cast (unumber) mode_stdbitmap::$12 in (number~) mode_stdbitmap::$12 ← (byte) mode_stdbitmap::l#3 + (unumber)(number) 1
Adding number conversion cast (unumber) 1 in (number~) mode_stdbitmap::$13 ← (byte) mode_stdbitmap::l#3 + (number) 1
Adding number conversion cast (unumber) mode_stdbitmap::$13 in (number~) mode_stdbitmap::$13 ← (byte) mode_stdbitmap::l#3 + (unumber)(number) 1
Adding number conversion cast (unumber) $10000 in *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte)(dword)(const nomodify byte*) mode_hicolstdchar::CHARSET/(number) $10000
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify byte*) mode_hicolstdchar::COLORS/(number) $400
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(word)(const nomodify byte*) mode_hicolstdchar::COLORS/(number) $400
Adding number conversion cast (unumber) 3 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (number) 3
Adding number conversion cast (unumber) 3^(byte)(word)mode_hicolstdchar::CHARSET/$4000 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (number) 3^(byte)(word)(const nomodify byte*) mode_hicolstdchar::CHARSET/(number) $4000
Adding number conversion cast (unumber) 3 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← ((unumber)) (number) 3^(byte)(word)(const nomodify byte*) mode_hicolstdchar::CHARSET/(number) $4000
Adding number conversion cast (unumber) $4000 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← ((unumber)) (unumber)(number) 3^(byte)(word)(const nomodify byte*) mode_hicolstdchar::CHARSET/(number) $4000
Adding number conversion cast (unumber) VIC_DEN|VIC_RSEL|3 in *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
Adding number conversion cast (unumber) 3 in *((const nomodify byte*) VIC_CONTROL) ← ((unumber)) (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
Adding number conversion cast (unumber) $3fff in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolstdchar::SCREEN&(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_hicolstdchar::CHARSET&(number) $3fff/(number) $400
Adding number conversion cast (unumber) $3fff in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolstdchar::SCREEN&(unumber)(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_hicolstdchar::CHARSET&(number) $3fff/(number) $400
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) BG_COLOR) ← (number) 0
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) BORDER_COLOR) ← (number) 0
Adding number conversion cast (unumber) $f in (number~) mode_hicolstdchar::$2 ← (byte) mode_hicolstdchar::cy#2 & (number) $f
Adding number conversion cast (unumber) mode_hicolstdchar::$2 in (number~) mode_hicolstdchar::$2 ← (byte) mode_hicolstdchar::cy#2 & (unumber)(number) $f
Adding number conversion cast (unumber) $10 in (number~) mode_hicolstdchar::$3 ← (unumber~) mode_hicolstdchar::$2 * (number) $10
Adding number conversion cast (unumber) mode_hicolstdchar::$3 in (number~) mode_hicolstdchar::$3 ← (unumber~) mode_hicolstdchar::$2 * (unumber)(number) $10
Adding number conversion cast (unumber) $f in (number~) mode_hicolstdchar::$4 ← (byte) mode_hicolstdchar::cx#2 & (number) $f
Adding number conversion cast (unumber) mode_hicolstdchar::$4 in (number~) mode_hicolstdchar::$4 ← (byte) mode_hicolstdchar::cx#2 & (unumber)(number) $f
Adding number conversion cast (unumber) mode_hicolstdchar::$5 in (number~) mode_hicolstdchar::$5 ← (unumber~) mode_hicolstdchar::$3 | (unumber~) mode_hicolstdchar::$4
Adding number conversion cast (unumber) $10000 in *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte)(dword)(const nomodify byte*) mode_hicolecmchar::CHARSET/(number) $10000
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify byte*) mode_hicolecmchar::COLORS/(number) $400
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(word)(const nomodify byte*) mode_hicolecmchar::COLORS/(number) $400
Adding number conversion cast (unumber) 3 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (number) 3
Adding number conversion cast (unumber) 3^(byte)(word)mode_hicolecmchar::CHARSET/$4000 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (number) 3^(byte)(word)(const nomodify byte*) mode_hicolecmchar::CHARSET/(number) $4000
Adding number conversion cast (unumber) 3 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← ((unumber)) (number) 3^(byte)(word)(const nomodify byte*) mode_hicolecmchar::CHARSET/(number) $4000
Adding number conversion cast (unumber) $4000 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← ((unumber)) (unumber)(number) 3^(byte)(word)(const nomodify byte*) mode_hicolecmchar::CHARSET/(number) $4000
Adding number conversion cast (unumber) VIC_DEN|VIC_RSEL|VIC_ECM|3 in *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(const nomodify byte) VIC_ECM|(number) 3
Adding number conversion cast (unumber) 3 in *((const nomodify byte*) VIC_CONTROL) ← ((unumber)) (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(const nomodify byte) VIC_ECM|(number) 3
Adding number conversion cast (unumber) $3fff in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolecmchar::SCREEN&(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_hicolecmchar::CHARSET&(number) $3fff/(number) $400
Adding number conversion cast (unumber) $3fff in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolecmchar::SCREEN&(unumber)(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_hicolecmchar::CHARSET&(number) $3fff/(number) $400
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) BORDER_COLOR) ← (number) 0
Adding number conversion cast (unumber) $50 in *((const nomodify byte*) BG_COLOR) ← (number) $50
Adding number conversion cast (unumber) $54 in *((const nomodify byte*) BG_COLOR1) ← (number) $54
Adding number conversion cast (unumber) $58 in *((const nomodify byte*) BG_COLOR2) ← (number) $58
Adding number conversion cast (unumber) $5c in *((const nomodify byte*) BG_COLOR3) ← (number) $5c
Adding number conversion cast (unumber) $f in (number~) mode_hicolecmchar::$2 ← (byte) mode_hicolecmchar::cy#2 & (number) $f
Adding number conversion cast (unumber) mode_hicolecmchar::$2 in (number~) mode_hicolecmchar::$2 ← (byte) mode_hicolecmchar::cy#2 & (unumber)(number) $f
Adding number conversion cast (unumber) $10 in (number~) mode_hicolecmchar::$3 ← (unumber~) mode_hicolecmchar::$2 * (number) $10
Adding number conversion cast (unumber) mode_hicolecmchar::$3 in (number~) mode_hicolecmchar::$3 ← (unumber~) mode_hicolecmchar::$2 * (unumber)(number) $10
Adding number conversion cast (unumber) $f in (number~) mode_hicolecmchar::$4 ← (byte) mode_hicolecmchar::cx#2 & (number) $f
Adding number conversion cast (unumber) mode_hicolecmchar::$4 in (number~) mode_hicolecmchar::$4 ← (byte) mode_hicolecmchar::cx#2 & (unumber)(number) $f
Adding number conversion cast (unumber) mode_hicolecmchar::$5 in (number~) mode_hicolecmchar::$5 ← (unumber~) mode_hicolecmchar::$3 | (unumber~) mode_hicolecmchar::$4
Adding number conversion cast (unumber) $10000 in *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte)(dword)(const nomodify byte*) mode_hicolmcchar::CHARSET/(number) $10000
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify byte*) mode_hicolmcchar::COLORS/(number) $400
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(word)(const nomodify byte*) mode_hicolmcchar::COLORS/(number) $400
Adding number conversion cast (unumber) 3 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (number) 3
Adding number conversion cast (unumber) 3^(byte)(word)mode_hicolmcchar::CHARSET/$4000 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (number) 3^(byte)(word)(const nomodify byte*) mode_hicolmcchar::CHARSET/(number) $4000
Adding number conversion cast (unumber) 3 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← ((unumber)) (number) 3^(byte)(word)(const nomodify byte*) mode_hicolmcchar::CHARSET/(number) $4000
Adding number conversion cast (unumber) $4000 in *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← ((unumber)) (unumber)(number) 3^(byte)(word)(const nomodify byte*) mode_hicolmcchar::CHARSET/(number) $4000
Adding number conversion cast (unumber) VIC_DEN|VIC_RSEL|3 in *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
Adding number conversion cast (unumber) 3 in *((const nomodify byte*) VIC_CONTROL) ← ((unumber)) (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
Adding number conversion cast (unumber) $3fff in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolmcchar::SCREEN&(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_hicolmcchar::CHARSET&(number) $3fff/(number) $400
Adding number conversion cast (unumber) $3fff in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolmcchar::SCREEN&(unumber)(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_hicolmcchar::CHARSET&(number) $3fff/(number) $400
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) BORDER_COLOR) ← (number) 0
Adding number conversion cast (unumber) $50 in *((const nomodify byte*) BG_COLOR) ← (number) $50
Adding number conversion cast (unumber) $54 in *((const nomodify byte*) BG_COLOR1) ← (number) $54
Adding number conversion cast (unumber) $58 in *((const nomodify byte*) BG_COLOR2) ← (number) $58
Adding number conversion cast (unumber) $f in (number~) mode_hicolmcchar::$2 ← (byte) mode_hicolmcchar::cy#2 & (number) $f
Adding number conversion cast (unumber) mode_hicolmcchar::$2 in (number~) mode_hicolmcchar::$2 ← (byte) mode_hicolmcchar::cy#2 & (unumber)(number) $f
Adding number conversion cast (unumber) $10 in (number~) mode_hicolmcchar::$3 ← (unumber~) mode_hicolmcchar::$2 * (number) $10
Adding number conversion cast (unumber) mode_hicolmcchar::$3 in (number~) mode_hicolmcchar::$3 ← (unumber~) mode_hicolmcchar::$2 * (unumber)(number) $10
Adding number conversion cast (unumber) $f in (number~) mode_hicolmcchar::$4 ← (byte) mode_hicolmcchar::cx#2 & (number) $f
Adding number conversion cast (unumber) mode_hicolmcchar::$4 in (number~) mode_hicolmcchar::$4 ← (byte) mode_hicolmcchar::cx#2 & (unumber)(number) $f
Adding number conversion cast (unumber) mode_hicolmcchar::$5 in (number~) mode_hicolmcchar::$5 ← (unumber~) mode_hicolmcchar::$3 | (unumber~) mode_hicolmcchar::$4
Adding number conversion cast (unumber) VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3 in *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
Adding number conversion cast (unumber) 3 in *((const nomodify byte*) VIC_CONTROL) ← ((unumber)) (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEA_START_HI) ← (number) 0
Adding number conversion cast (unumber) 1 in *((const nomodify byte*) DTV_PLANEA_STEP) ← (number) 1
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (number) 0
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (number) 0
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEB_START_HI) ← (number) 0
Adding number conversion cast (unumber) 1 in *((const nomodify byte*) DTV_PLANEB_STEP) ← (number) 1
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (number) 0
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (number) 0
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(const nomodify byte*) mode_twoplanebitmap::COLORS/(number) $400
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(const nomodify byte*) mode_twoplanebitmap::COLORS/(number) $400
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) BORDER_COLOR) ← (number) 0
Adding number conversion cast (unumber) $70 in *((const nomodify byte*) BG_COLOR) ← (number) $70
Adding number conversion cast (unumber) $d4 in *((const nomodify byte*) BG_COLOR1) ← (number) $d4
Adding number conversion cast (unumber) $f in (number~) mode_twoplanebitmap::$2 ← (byte) mode_twoplanebitmap::cy#2 & (number) $f
Adding number conversion cast (unumber) mode_twoplanebitmap::$2 in (number~) mode_twoplanebitmap::$2 ← (byte) mode_twoplanebitmap::cy#2 & (unumber)(number) $f
Adding number conversion cast (unumber) $10 in (number~) mode_twoplanebitmap::$3 ← (unumber~) mode_twoplanebitmap::$2 * (number) $10
Adding number conversion cast (unumber) mode_twoplanebitmap::$3 in (number~) mode_twoplanebitmap::$3 ← (unumber~) mode_twoplanebitmap::$2 * (unumber)(number) $10
Adding number conversion cast (unumber) $f in (number~) mode_twoplanebitmap::$4 ← (byte) mode_twoplanebitmap::cx#2 & (number) $f
Adding number conversion cast (unumber) mode_twoplanebitmap::$4 in (number~) mode_twoplanebitmap::$4 ← (byte) mode_twoplanebitmap::cx#2 & (unumber)(number) $f
Adding number conversion cast (unumber) mode_twoplanebitmap::$5 in (number~) mode_twoplanebitmap::$5 ← (unumber~) mode_twoplanebitmap::$3 | (unumber~) mode_twoplanebitmap::$4
Adding number conversion cast (unumber) 4 in (number~) mode_twoplanebitmap::$8 ← (byte) mode_twoplanebitmap::ay#2 & (number) 4
Adding number conversion cast (unumber) mode_twoplanebitmap::$8 in (number~) mode_twoplanebitmap::$8 ← (byte) mode_twoplanebitmap::ay#2 & (unumber)(number) 4
Adding number conversion cast (unumber) 0 in (bool~) mode_twoplanebitmap::$9 ← (unumber~) mode_twoplanebitmap::$8 == (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) VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3 in *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
Adding number conversion cast (unumber) 3 in *((const nomodify byte*) VIC_CONTROL) ← ((unumber)) (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEA_START_HI) ← (number) 0
Adding number conversion cast (unumber) 1 in *((const nomodify byte*) DTV_PLANEA_STEP) ← (number) 1
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (number) 0
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (number) 0
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEB_START_HI) ← (number) 0
Adding number conversion cast (unumber) 1 in *((const nomodify byte*) DTV_PLANEB_STEP) ← (number) 1
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (number) 0
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (number) 0
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(const nomodify byte*) mode_sixsfred::COLORS/(number) $400
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(const nomodify byte*) mode_sixsfred::COLORS/(number) $400
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) BORDER_COLOR) ← (number) 0
Adding number conversion cast (unumber) $f in (number~) mode_sixsfred::$3 ← (byte~) mode_sixsfred::$2 & (number) $f
Adding number conversion cast (unumber) mode_sixsfred::$3 in (number~) mode_sixsfred::$3 ← (byte~) mode_sixsfred::$2 & (unumber)(number) $f
Adding number conversion cast (unumber) 2 in (number~) mode_sixsfred::$6 ← (byte) mode_sixsfred::ay#2 / (number) 2
Adding number conversion cast (unumber) mode_sixsfred::$6 in (number~) mode_sixsfred::$6 ← (byte) mode_sixsfred::ay#2 / (unumber)(number) 2
Adding number conversion cast (unumber) 3 in (number~) mode_sixsfred::$7 ← (unumber~) mode_sixsfred::$6 & (number) 3
Adding number conversion cast (unumber) mode_sixsfred::$7 in (number~) mode_sixsfred::$7 ← (unumber~) mode_sixsfred::$6 & (unumber)(number) 3
Adding number conversion cast (unumber) $1b in *((byte*) mode_sixsfred::gfxb#2) ← (number) $1b
Adding number conversion cast (unumber) VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3 in *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
Adding number conversion cast (unumber) 3 in *((const nomodify byte*) VIC_CONTROL) ← ((unumber)) (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEA_START_HI) ← (number) 0
Adding number conversion cast (unumber) 1 in *((const nomodify byte*) DTV_PLANEA_STEP) ← (number) 1
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (number) 0
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (number) 0
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEB_START_HI) ← (number) 0
Adding number conversion cast (unumber) 1 in *((const nomodify byte*) DTV_PLANEB_STEP) ← (number) 1
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (number) 0
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (number) 0
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(const nomodify byte*) mode_sixsfred2::COLORS/(number) $400
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(const nomodify byte*) mode_sixsfred2::COLORS/(number) $400
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) BORDER_COLOR) ← (number) 0
Adding number conversion cast (unumber) 3 in (number~) mode_sixsfred2::$2 ← (byte) mode_sixsfred2::cx#2 & (number) 3
Adding number conversion cast (unumber) mode_sixsfred2::$2 in (number~) mode_sixsfred2::$2 ← (byte) mode_sixsfred2::cx#2 & (unumber)(number) 3
Adding number conversion cast (unumber) $10 in (number~) mode_sixsfred2::$3 ← (unumber~) mode_sixsfred2::$2 * (number) $10
Adding number conversion cast (unumber) mode_sixsfred2::$3 in (number~) mode_sixsfred2::$3 ← (unumber~) mode_sixsfred2::$2 * (unumber)(number) $10
Adding number conversion cast (unumber) 3 in (number~) mode_sixsfred2::$4 ← (byte) mode_sixsfred2::cy#2 & (number) 3
Adding number conversion cast (unumber) mode_sixsfred2::$4 in (number~) mode_sixsfred2::$4 ← (byte) mode_sixsfred2::cy#2 & (unumber)(number) 3
Adding number conversion cast (unumber) mode_sixsfred2::$5 in (number~) mode_sixsfred2::$5 ← (unumber~) mode_sixsfred2::$3 | (unumber~) mode_sixsfred2::$4
Adding number conversion cast (unumber) 2 in (number~) mode_sixsfred2::$8 ← (byte) mode_sixsfred2::ay#2 / (number) 2
Adding number conversion cast (unumber) mode_sixsfred2::$8 in (number~) mode_sixsfred2::$8 ← (byte) mode_sixsfred2::ay#2 / (unumber)(number) 2
Adding number conversion cast (unumber) 3 in (number~) mode_sixsfred2::$9 ← (unumber~) mode_sixsfred2::$8 & (number) 3
Adding number conversion cast (unumber) mode_sixsfred2::$9 in (number~) mode_sixsfred2::$9 ← (unumber~) mode_sixsfred2::$8 & (unumber)(number) 3
Adding number conversion cast (unumber) $1b in *((byte*) mode_sixsfred2::gfxb#2) ← (number) $1b
Adding number conversion cast (unumber) VIC_ECM|VIC_DEN|VIC_RSEL|3 in *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
Adding number conversion cast (unumber) 3 in *((const nomodify byte*) VIC_CONTROL) ← ((unumber)) (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEA_START_HI) ← (number) 0
Adding number conversion cast (unumber) 1 in *((const nomodify byte*) DTV_PLANEA_STEP) ← (number) 1
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (number) 0
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (number) 0
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEB_START_HI) ← (number) 0
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEB_STEP) ← (number) 0
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (number) 0
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (number) 0
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) BORDER_COLOR) ← (number) 0
Adding number conversion cast (unumber) $f in (number~) mode_8bpppixelcell::$2 ← (byte) mode_8bpppixelcell::ay#2 & (number) $f
Adding number conversion cast (unumber) mode_8bpppixelcell::$2 in (number~) mode_8bpppixelcell::$2 ← (byte) mode_8bpppixelcell::ay#2 & (unumber)(number) $f
Adding number conversion cast (unumber) $10 in (number~) mode_8bpppixelcell::$3 ← (unumber~) mode_8bpppixelcell::$2 * (number) $10
Adding number conversion cast (unumber) mode_8bpppixelcell::$3 in (number~) mode_8bpppixelcell::$3 ← (unumber~) mode_8bpppixelcell::$2 * (unumber)(number) $10
Adding number conversion cast (unumber) $f in (number~) mode_8bpppixelcell::$4 ← (byte) mode_8bpppixelcell::ax#2 & (number) $f
Adding number conversion cast (unumber) mode_8bpppixelcell::$4 in (number~) mode_8bpppixelcell::$4 ← (byte) mode_8bpppixelcell::ax#2 & (unumber)(number) $f
Adding number conversion cast (unumber) mode_8bpppixelcell::$5 in (number~) mode_8bpppixelcell::$5 ← (unumber~) mode_8bpppixelcell::$3 | (unumber~) mode_8bpppixelcell::$4
Adding number conversion cast (unumber) $80 in (number~) mode_8bpppixelcell::$8 ← (byte) mode_8bpppixelcell::bits#2 & (number) $80
Adding number conversion cast (unumber) mode_8bpppixelcell::$8 in (number~) mode_8bpppixelcell::$8 ← (byte) mode_8bpppixelcell::bits#2 & (unumber)(number) $80
Adding number conversion cast (unumber) 0 in (bool~) mode_8bpppixelcell::$9 ← (unumber~) mode_8bpppixelcell::$8 != (number) 0
Adding number conversion cast (unumber) 2 in (number~) mode_8bpppixelcell::$11 ← (byte) mode_8bpppixelcell::bits#3 * (number) 2
Adding number conversion cast (unumber) mode_8bpppixelcell::$11 in (number~) mode_8bpppixelcell::$11 ← (byte) mode_8bpppixelcell::bits#3 * (unumber)(number) 2
Adding number conversion cast (unumber) VIC_ECM|VIC_DEN|VIC_RSEL|3 in *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
Adding number conversion cast (unumber) 3 in *((const nomodify byte*) VIC_CONTROL) ← ((unumber)) (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(number) 3
Adding number conversion cast (unumber) 8 in *((const nomodify byte*) DTV_PLANEB_STEP) ← (number) 8
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (number) 0
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (number) 0
Adding number conversion cast (unumber) 0 in *((const nomodify byte*) BORDER_COLOR) ← (number) 0
Adding number conversion cast (unumber) $4000 in (byte) mode_8bppchunkybmm::gfxbCpuBank#0 ← (byte)(const nomodify dword) mode_8bppchunkybmm::PLANEB/(number) $4000
Adding number conversion cast (unumber) $8000 in (bool~) mode_8bppchunkybmm::$4 ← (byte*) mode_8bppchunkybmm::gfxb#3 == (number) $8000
Successful SSA optimization PassNAddNumberTypeConversions
Adding number conversion cast (unumber) $40 in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) menu::SCREEN&(unumber)(number) $3fff/(number) $40|(word)(const nomodify byte*) menu::CHARSET&(unumber)(number) $3fff/(number) $400
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) menu::SCREEN&(unumber)(number) $3fff/(unumber)(number) $40|(word)(const nomodify byte*) menu::CHARSET&(unumber)(number) $3fff/(number) $400
Adding number conversion cast (unumber) $40 in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_stdchar::SCREEN&(unumber)(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_stdchar::CHARSET&(unumber)(number) $3fff/(number) $400
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_stdchar::SCREEN&(unumber)(number) $3fff/(unumber)(number) $40|(word)(const nomodify byte*) mode_stdchar::CHARSET&(unumber)(number) $3fff/(number) $400
Adding number conversion cast (unumber) $40 in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_ecmchar::SCREEN&(unumber)(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_ecmchar::CHARSET&(unumber)(number) $3fff/(number) $400
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_ecmchar::SCREEN&(unumber)(number) $3fff/(unumber)(number) $40|(word)(const nomodify byte*) mode_ecmchar::CHARSET&(unumber)(number) $3fff/(number) $400
Adding number conversion cast (unumber) $40 in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_mcchar::SCREEN&(unumber)(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_mcchar::CHARSET&(unumber)(number) $3fff/(number) $400
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_mcchar::SCREEN&(unumber)(number) $3fff/(unumber)(number) $40|(word)(const nomodify byte*) mode_mcchar::CHARSET&(unumber)(number) $3fff/(number) $400
Adding number conversion cast (unumber) $40 in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_stdbitmap::SCREEN&(unumber)(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_stdbitmap::BITMAP&(unumber)(number) $3fff/(number) $400
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_stdbitmap::SCREEN&(unumber)(number) $3fff/(unumber)(number) $40|(word)(const nomodify byte*) mode_stdbitmap::BITMAP&(unumber)(number) $3fff/(number) $400
Adding number conversion cast (unumber) $40 in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolstdchar::SCREEN&(unumber)(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_hicolstdchar::CHARSET&(unumber)(number) $3fff/(number) $400
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolstdchar::SCREEN&(unumber)(number) $3fff/(unumber)(number) $40|(word)(const nomodify byte*) mode_hicolstdchar::CHARSET&(unumber)(number) $3fff/(number) $400
Adding number conversion cast (unumber) $40 in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolecmchar::SCREEN&(unumber)(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_hicolecmchar::CHARSET&(unumber)(number) $3fff/(number) $400
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolecmchar::SCREEN&(unumber)(number) $3fff/(unumber)(number) $40|(word)(const nomodify byte*) mode_hicolecmchar::CHARSET&(unumber)(number) $3fff/(number) $400
Adding number conversion cast (unumber) $40 in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolmcchar::SCREEN&(unumber)(number) $3fff/(number) $40|(word)(const nomodify byte*) mode_hicolmcchar::CHARSET&(unumber)(number) $3fff/(number) $400
Adding number conversion cast (unumber) $400 in *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolmcchar::SCREEN&(unumber)(number) $3fff/(unumber)(number) $40|(word)(const nomodify byte*) mode_hicolmcchar::CHARSET&(unumber)(number) $3fff/(number) $400
Successful SSA optimization PassNAddNumberTypeConversions
Inlining cast (byte*) memset::dst#0 ← (byte*)(void*) memset::str#2
Inlining cast (word) memset::num#0 ← (unumber)(number) $3e8
Inlining cast (byte) bitmap_init::bits#2 ← (unumber)(number) $80
Inlining cast *((byte*) bitmap_clear::bitmap#2) ← (unumber)(number) 0
Inlining cast (byte*) bitmap_plot::plotter#0 ← (byte*)(word~) bitmap_plot::$0
Inlining cast *((const nomodify byte*) DTV_CONTROL) ← (unumber)(number) 0
Inlining cast *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (unumber)(number) 3
Inlining cast *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (unumber)(unumber)(number) 3^(byte)(word)(const nomodify byte*) menu::CHARSET/(unumber)(number) $4000
Inlining cast *((const nomodify byte*) VIC_CONTROL) ← (unumber)(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(unumber)(number) 3
Inlining cast *((const nomodify byte*) BG_COLOR) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) BORDER_COLOR) ← (unumber)(number) 0
Inlining cast (byte) mode_ctrl::ctrl#7 ← (unumber)(number) 0
Inlining cast (byte) dtv_control#18 ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_CONTROL) ← (unumber)(number) 0
Inlining cast *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (unumber)(number) 3
Inlining cast *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (unumber)(unumber)(number) 3^(byte)(word)(const nomodify byte*) mode_stdchar::CHARSET/(unumber)(number) $4000
Inlining cast *((const nomodify byte*) VIC_CONTROL) ← (unumber)(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(unumber)(number) 3
Inlining cast *((const nomodify byte*) BG_COLOR) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) BORDER_COLOR) ← (unumber)(number) 0
Inlining cast (byte) dtv_control#21 ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_CONTROL) ← (unumber)(number) 0
Inlining cast *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (unumber)(number) 3
Inlining cast *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (unumber)(unumber)(number) 3^(byte)(word)(const nomodify byte*) mode_ecmchar::CHARSET/(unumber)(number) $4000
Inlining cast *((const nomodify byte*) VIC_CONTROL) ← (unumber)(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(const nomodify byte) VIC_ECM|(unumber)(number) 3
Inlining cast *((const nomodify byte*) BORDER_COLOR) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) BG_COLOR) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) BG_COLOR1) ← (unumber)(number) 2
Inlining cast *((const nomodify byte*) BG_COLOR2) ← (unumber)(number) 5
Inlining cast *((const nomodify byte*) BG_COLOR3) ← (unumber)(number) 6
Inlining cast (byte) dtv_control#24 ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_CONTROL) ← (unumber)(number) 0
Inlining cast *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (unumber)(number) 3
Inlining cast *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (unumber)(unumber)(number) 3^(byte)(word)(const nomodify byte*) mode_mcchar::CHARSET/(unumber)(number) $4000
Inlining cast *((const nomodify byte*) VIC_CONTROL) ← (unumber)(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(unumber)(number) 3
Inlining cast *((const nomodify byte*) BORDER_COLOR) ← (unumber)(number) 0
Inlining cast (byte) dtv_control#27 ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_CONTROL) ← (unumber)(number) 0
Inlining cast *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (unumber)(number) 3
Inlining cast *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (unumber)(unumber)(number) 3^(byte)(word)(const nomodify byte*) mode_stdbitmap::BITMAP/(unumber)(number) $4000
Inlining cast *((const nomodify byte*) VIC_CONTROL) ← (unumber)(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(unumber)(number) 3
Inlining cast *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (unumber)(number) 3
Inlining cast *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (unumber)(unumber)(number) 3^(byte)(word)(const nomodify byte*) mode_hicolstdchar::CHARSET/(unumber)(number) $4000
Inlining cast *((const nomodify byte*) VIC_CONTROL) ← (unumber)(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(unumber)(number) 3
Inlining cast *((const nomodify byte*) BG_COLOR) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) BORDER_COLOR) ← (unumber)(number) 0
Inlining cast *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (unumber)(number) 3
Inlining cast *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (unumber)(unumber)(number) 3^(byte)(word)(const nomodify byte*) mode_hicolecmchar::CHARSET/(unumber)(number) $4000
Inlining cast *((const nomodify byte*) VIC_CONTROL) ← (unumber)(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(const nomodify byte) VIC_ECM|(unumber)(number) 3
Inlining cast *((const nomodify byte*) BORDER_COLOR) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) BG_COLOR) ← (unumber)(number) $50
Inlining cast *((const nomodify byte*) BG_COLOR1) ← (unumber)(number) $54
Inlining cast *((const nomodify byte*) BG_COLOR2) ← (unumber)(number) $58
Inlining cast *((const nomodify byte*) BG_COLOR3) ← (unumber)(number) $5c
Inlining cast *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (unumber)(number) 3
Inlining cast *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (unumber)(unumber)(number) 3^(byte)(word)(const nomodify byte*) mode_hicolmcchar::CHARSET/(unumber)(number) $4000
Inlining cast *((const nomodify byte*) VIC_CONTROL) ← (unumber)(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(unumber)(number) 3
Inlining cast *((const nomodify byte*) BORDER_COLOR) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) BG_COLOR) ← (unumber)(number) $50
Inlining cast *((const nomodify byte*) BG_COLOR1) ← (unumber)(number) $54
Inlining cast *((const nomodify byte*) BG_COLOR2) ← (unumber)(number) $58
Inlining cast *((const nomodify byte*) VIC_CONTROL) ← (unumber)(const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(unumber)(number) 3
Inlining cast *((const nomodify byte*) DTV_PLANEA_START_HI) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_PLANEA_STEP) ← (unumber)(number) 1
Inlining cast *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_PLANEB_START_HI) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_PLANEB_STEP) ← (unumber)(number) 1
Inlining cast *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) BORDER_COLOR) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) BG_COLOR) ← (unumber)(number) $70
Inlining cast *((const nomodify byte*) BG_COLOR1) ← (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 *((const nomodify byte*) VIC_CONTROL) ← (unumber)(const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(unumber)(number) 3
Inlining cast *((const nomodify byte*) DTV_PLANEA_START_HI) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_PLANEA_STEP) ← (unumber)(number) 1
Inlining cast *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_PLANEB_START_HI) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_PLANEB_STEP) ← (unumber)(number) 1
Inlining cast *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) BORDER_COLOR) ← (unumber)(number) 0
Inlining cast *((byte*) mode_sixsfred::gfxb#2) ← (unumber)(number) $1b
Inlining cast *((const nomodify byte*) VIC_CONTROL) ← (unumber)(const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(unumber)(number) 3
Inlining cast *((const nomodify byte*) DTV_PLANEA_START_HI) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_PLANEA_STEP) ← (unumber)(number) 1
Inlining cast *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_PLANEB_START_HI) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_PLANEB_STEP) ← (unumber)(number) 1
Inlining cast *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) BORDER_COLOR) ← (unumber)(number) 0
Inlining cast *((byte*) mode_sixsfred2::gfxb#2) ← (unumber)(number) $1b
Inlining cast *((const nomodify byte*) VIC_CONTROL) ← (unumber)(const nomodify byte) VIC_ECM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(unumber)(number) 3
Inlining cast *((const nomodify byte*) DTV_PLANEA_START_HI) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_PLANEA_STEP) ← (unumber)(number) 1
Inlining cast *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_PLANEB_START_HI) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_PLANEB_STEP) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) BORDER_COLOR) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) VIC_CONTROL) ← (unumber)(const nomodify byte) VIC_ECM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(unumber)(number) 3
Inlining cast *((const nomodify byte*) DTV_PLANEB_STEP) ← (unumber)(number) 8
Inlining cast *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (unumber)(number) 0
Inlining cast *((const nomodify byte*) BORDER_COLOR) ← (unumber)(number) 0
Inlining cast (byte*) mode_8bppchunkybmm::gfxb#2 ← (byte*)(number) $4000
Successful SSA optimization Pass2InlineCast
Simplifying constant pointer cast (byte*) 53266
Simplifying constant pointer cast (byte*) 53280
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 pointer cast (byte*) 53270
Simplifying constant pointer cast (byte*) 53272
Simplifying constant pointer cast (byte*) 0
Simplifying constant pointer cast (byte*) 1
Simplifying constant pointer cast (byte*) 55296
Simplifying constant pointer cast (struct MOS6526_CIA*) 56320
Simplifying constant pointer cast (struct MOS6526_CIA*) 56576
Simplifying constant pointer cast (byte*) 53311
Simplifying constant pointer cast (byte*) 53308
Simplifying constant pointer cast (byte*) 53760
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 pointer cast (byte*) 53309
Simplifying constant pointer cast (byte*) 255
Simplifying constant pointer cast (byte*) 32768
Simplifying constant pointer cast (byte*) 38912
Simplifying constant pointer cast (byte*) 32768
Simplifying constant pointer cast (byte*) 36864
Simplifying constant pointer cast (byte*) 55296
Simplifying constant pointer cast (byte*) 32768
Simplifying constant pointer cast (byte*) 36864
Simplifying constant pointer cast (byte*) 55296
Simplifying constant pointer cast (byte*) 32768
Simplifying constant pointer cast (byte*) 36864
Simplifying constant pointer cast (byte*) 55296
Simplifying constant pointer cast (byte*) 16384
Simplifying constant pointer cast (byte*) 24576
Simplifying constant pointer cast (byte*) 32768
Simplifying constant pointer cast (byte*) 36864
Simplifying constant pointer cast (byte*) 33792
Simplifying constant pointer cast (byte*) 32768
Simplifying constant pointer cast (byte*) 36864
Simplifying constant pointer cast (byte*) 33792
Simplifying constant pointer cast (byte*) 32768
Simplifying constant pointer cast (byte*) 36864
Simplifying constant pointer cast (byte*) 33792
Simplifying constant pointer cast (byte*) 16384
Simplifying constant pointer cast (byte*) 24576
Simplifying constant pointer cast (byte*) 32768
Simplifying constant pointer cast (byte*) 16384
Simplifying constant pointer cast (byte*) 24576
Simplifying constant pointer cast (byte*) 32768
Simplifying constant pointer cast (byte*) 16384
Simplifying constant pointer cast (byte*) 24576
Simplifying constant pointer cast (byte*) 32768
Simplifying constant pointer cast (byte*) 15360
Simplifying constant pointer cast (byte*) 16384
Simplifying constant pointer cast (byte*) 53248
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 7
Simplifying constant integer cast 3
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 *((const to_nomodify byte*) bitmap_plot_xhi + (unumber)(number) 0)
Simplifying constant integer cast 0
Simplifying constant integer cast *((const to_nomodify byte*) bitmap_plot_xlo + (unumber)(number) 0)
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast *((const to_nomodify byte*) bitmap_plot_xhi + (byte) bitmap_plot::x#4)
Simplifying constant integer cast *((const to_nomodify byte*) bitmap_plot_xlo + (byte) bitmap_plot::x#4)
Simplifying constant integer cast *((const to_nomodify byte*) bitmap_plot_yhi + (byte) bitmap_plot::y#4)
Simplifying constant integer cast *((const to_nomodify byte*) bitmap_plot_ylo + (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 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 (unumber)(number) 3^(byte)(word)(const nomodify byte*) menu::CHARSET/(unumber)(number) $4000
Simplifying constant integer cast 3
Simplifying constant integer cast $4000
Simplifying constant integer cast (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(unumber)(number) 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 $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 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 (unumber)(number) 3^(byte)(word)(const nomodify byte*) mode_stdchar::CHARSET/(unumber)(number) $4000
Simplifying constant integer cast 3
Simplifying constant integer cast $4000
Simplifying constant integer cast (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(unumber)(number) 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 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 (unumber)(number) 3^(byte)(word)(const nomodify byte*) mode_ecmchar::CHARSET/(unumber)(number) $4000
Simplifying constant integer cast 3
Simplifying constant integer cast $4000
Simplifying constant integer cast (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(const nomodify byte) VIC_ECM|(unumber)(number) 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 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 (unumber)(number) 3^(byte)(word)(const nomodify byte*) mode_mcchar::CHARSET/(unumber)(number) $4000
Simplifying constant integer cast 3
Simplifying constant integer cast $4000
Simplifying constant integer cast (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(unumber)(number) 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 integer cast $10000
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 3
Simplifying constant integer cast (unumber)(number) 3^(byte)(word)(const nomodify byte*) mode_stdbitmap::BITMAP/(unumber)(number) $4000
Simplifying constant integer cast 3
Simplifying constant integer cast $4000
Simplifying constant integer cast (const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(unumber)(number) 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 1
Simplifying constant integer cast 1
Simplifying constant integer cast $10000
Simplifying constant integer cast $400
Simplifying constant integer cast $400
Simplifying constant integer cast 3
Simplifying constant integer cast (unumber)(number) 3^(byte)(word)(const nomodify byte*) mode_hicolstdchar::CHARSET/(unumber)(number) $4000
Simplifying constant integer cast 3
Simplifying constant integer cast $4000
Simplifying constant integer cast (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(unumber)(number) 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 integer cast $10000
Simplifying constant integer cast $400
Simplifying constant integer cast $400
Simplifying constant integer cast 3
Simplifying constant integer cast (unumber)(number) 3^(byte)(word)(const nomodify byte*) mode_hicolecmchar::CHARSET/(unumber)(number) $4000
Simplifying constant integer cast 3
Simplifying constant integer cast $4000
Simplifying constant integer cast (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(const nomodify byte) VIC_ECM|(unumber)(number) 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 integer cast $10000
Simplifying constant integer cast $400
Simplifying constant integer cast $400
Simplifying constant integer cast 3
Simplifying constant integer cast (unumber)(number) 3^(byte)(word)(const nomodify byte*) mode_hicolmcchar::CHARSET/(unumber)(number) $4000
Simplifying constant integer cast 3
Simplifying constant integer cast $4000
Simplifying constant integer cast (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(unumber)(number) 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 integer cast (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(unumber)(number) 3
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 integer cast (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(unumber)(number) 3
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 2
Simplifying constant integer cast 3
Simplifying constant integer cast $1b
Simplifying constant integer cast (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(unumber)(number) 3
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 2
Simplifying constant integer cast 3
Simplifying constant integer cast $1b
Simplifying constant integer cast (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(unumber)(number) 3
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 integer cast $80
Simplifying constant integer cast 0
Simplifying constant integer cast 2
Simplifying constant integer cast (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(unumber)(number) 3
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) 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) 7
Finalized unsigned number type (byte) 3
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 (byte) 3
Finalized unsigned number type (word) $4000
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) $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 (byte) 3
Finalized unsigned number type (word) $4000
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 (byte) 3
Finalized unsigned number type (word) $4000
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 (byte) 3
Finalized unsigned number type (word) $4000
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 (byte) 3
Finalized unsigned number type (word) $4000
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) 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 (byte) 3
Finalized unsigned number type (word) $4000
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 (byte) 3
Finalized unsigned number type (word) $4000
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 (byte) 3
Finalized unsigned number type (word) $4000
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) $80
Finalized unsigned number type (byte) 0
Finalized unsigned number type (byte) 2
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 byte in (unumber~) mode_stdchar::$3 ← (byte~) mode_stdchar::$2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_stdchar::$4 ← (byte) mode_stdchar::cy#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_stdchar::$5 ← (byte~) mode_stdchar::$4 * (byte) $10
Inferred type updated to byte in (unumber~) mode_stdchar::$6 ← (byte) mode_stdchar::cx#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_stdchar::$7 ← (byte~) mode_stdchar::$5 | (byte~) mode_stdchar::$6
Inferred type updated to byte in (unumber~) mode_ecmchar::$3 ← (byte~) mode_ecmchar::$2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_ecmchar::$4 ← (byte) mode_ecmchar::cy#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_ecmchar::$5 ← (byte~) mode_ecmchar::$4 * (byte) $10
Inferred type updated to byte in (unumber~) mode_ecmchar::$6 ← (byte) mode_ecmchar::cx#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_ecmchar::$7 ← (byte~) mode_ecmchar::$5 | (byte~) mode_ecmchar::$6
Inferred type updated to byte in (unumber~) mode_mcchar::$3 ← (byte~) mode_mcchar::$2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_mcchar::$4 ← (byte) mode_mcchar::cy#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_mcchar::$5 ← (byte~) mode_mcchar::$4 * (byte) $10
Inferred type updated to byte in (unumber~) mode_mcchar::$6 ← (byte) mode_mcchar::cx#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_mcchar::$7 ← (byte~) mode_mcchar::$5 | (byte~) mode_mcchar::$6
Inferred type updated to byte in (unumber~) mode_stdbitmap::$5 ← (byte~) mode_stdbitmap::$4 & (byte) $f
Inferred type updated to byte in (unumber~) mode_stdbitmap::$6 ← (byte) $f - (byte) mode_stdbitmap::col#0
Inferred type updated to byte in (unumber~) mode_stdbitmap::$7 ← (byte) mode_stdbitmap::col#0 * (byte) $10
Inferred type updated to byte in (unumber~) mode_stdbitmap::$8 ← (byte~) mode_stdbitmap::$7 | (byte) mode_stdbitmap::col2#0
Inferred type updated to byte in (unumber~) mode_stdbitmap::$12 ← (byte) mode_stdbitmap::l#3 + (byte) 1
Inferred type updated to byte in (unumber~) mode_stdbitmap::$13 ← (byte) mode_stdbitmap::l#3 + (byte) 1
Inferred type updated to byte in (unumber~) mode_hicolstdchar::$2 ← (byte) mode_hicolstdchar::cy#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_hicolstdchar::$3 ← (byte~) mode_hicolstdchar::$2 * (byte) $10
Inferred type updated to byte in (unumber~) mode_hicolstdchar::$4 ← (byte) mode_hicolstdchar::cx#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_hicolstdchar::$5 ← (byte~) mode_hicolstdchar::$3 | (byte~) mode_hicolstdchar::$4
Inferred type updated to byte in (unumber~) mode_hicolecmchar::$2 ← (byte) mode_hicolecmchar::cy#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_hicolecmchar::$3 ← (byte~) mode_hicolecmchar::$2 * (byte) $10
Inferred type updated to byte in (unumber~) mode_hicolecmchar::$4 ← (byte) mode_hicolecmchar::cx#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_hicolecmchar::$5 ← (byte~) mode_hicolecmchar::$3 | (byte~) mode_hicolecmchar::$4
Inferred type updated to byte in (unumber~) mode_hicolmcchar::$2 ← (byte) mode_hicolmcchar::cy#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_hicolmcchar::$3 ← (byte~) mode_hicolmcchar::$2 * (byte) $10
Inferred type updated to byte in (unumber~) mode_hicolmcchar::$4 ← (byte) mode_hicolmcchar::cx#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_hicolmcchar::$5 ← (byte~) mode_hicolmcchar::$3 | (byte~) mode_hicolmcchar::$4
Inferred type updated to byte in (unumber~) mode_twoplanebitmap::$2 ← (byte) mode_twoplanebitmap::cy#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_twoplanebitmap::$3 ← (byte~) mode_twoplanebitmap::$2 * (byte) $10
Inferred type updated to byte in (unumber~) mode_twoplanebitmap::$4 ← (byte) mode_twoplanebitmap::cx#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_twoplanebitmap::$5 ← (byte~) mode_twoplanebitmap::$3 | (byte~) mode_twoplanebitmap::$4
Inferred type updated to byte in (unumber~) mode_twoplanebitmap::$8 ← (byte) mode_twoplanebitmap::ay#2 & (byte) 4
Inferred type updated to byte in (unumber~) mode_sixsfred::$3 ← (byte~) mode_sixsfred::$2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_sixsfred::$6 ← (byte) mode_sixsfred::ay#2 / (byte) 2
Inferred type updated to byte in (unumber~) mode_sixsfred::$7 ← (byte~) mode_sixsfred::$6 & (byte) 3
Inferred type updated to byte in (unumber~) mode_sixsfred2::$2 ← (byte) mode_sixsfred2::cx#2 & (byte) 3
Inferred type updated to byte in (unumber~) mode_sixsfred2::$3 ← (byte~) mode_sixsfred2::$2 * (byte) $10
Inferred type updated to byte in (unumber~) mode_sixsfred2::$4 ← (byte) mode_sixsfred2::cy#2 & (byte) 3
Inferred type updated to byte in (unumber~) mode_sixsfred2::$5 ← (byte~) mode_sixsfred2::$3 | (byte~) mode_sixsfred2::$4
Inferred type updated to byte in (unumber~) mode_sixsfred2::$8 ← (byte) mode_sixsfred2::ay#2 / (byte) 2
Inferred type updated to byte in (unumber~) mode_sixsfred2::$9 ← (byte~) mode_sixsfred2::$8 & (byte) 3
Inferred type updated to byte in (unumber~) mode_8bpppixelcell::$2 ← (byte) mode_8bpppixelcell::ay#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_8bpppixelcell::$3 ← (byte~) mode_8bpppixelcell::$2 * (byte) $10
Inferred type updated to byte in (unumber~) mode_8bpppixelcell::$4 ← (byte) mode_8bpppixelcell::ax#2 & (byte) $f
Inferred type updated to byte in (unumber~) mode_8bpppixelcell::$5 ← (byte~) mode_8bpppixelcell::$3 | (byte~) mode_8bpppixelcell::$4
Inferred type updated to byte in (unumber~) mode_8bpppixelcell::$8 ← (byte) mode_8bpppixelcell::bits#2 & (byte) $80
Inferred type updated to byte in (unumber~) mode_8bpppixelcell::$11 ← (byte) mode_8bpppixelcell::bits#3 * (byte) 2
Adding pointer type conversion cast (byte*) bitmap_clear::$2 in (byte*~) bitmap_clear::$2 ← *((const to_nomodify byte*) bitmap_plot_xhi + (byte) 0) w= *((const to_nomodify byte*) bitmap_plot_xlo + (byte) 0)
Successful SSA optimization PassNAddTypeConversionAssignment
Inversing boolean not [6] (bool~) memset::$1 ← (word) memset::num#1 <= (byte) 0 from [5] (bool~) memset::$0 ← (word) memset::num#1 > (byte) 0
Inversing boolean not [35] (bool~) print_str_lines::$0 ← (byte) 0 == (byte) print_str_lines::ch#0 from [34] (bool~) print_str_lines::$5 ← (byte) 0 != (byte) print_str_lines::ch#0
Inversing boolean not [129] (bool~) bitmap_init::$4 ← (byte) bitmap_init::bits#1 != (byte) 0 from [128] (bool~) bitmap_init::$3 ← (byte) bitmap_init::bits#1 == (byte) 0
Inversing boolean not [148] (bool~) bitmap_init::$12 ← (byte~) bitmap_init::$10 != (byte) 7 from [147] (bool~) bitmap_init::$11 ← (byte~) bitmap_init::$10 == (byte) 7
Inversing boolean not [289] (bool~) bitmap_line_xdyi::$4 ← (byte) bitmap_line_xdyi::xd#2 >= (byte) bitmap_line_xdyi::e#1 from [288] (bool~) bitmap_line_xdyi::$3 ← (byte) bitmap_line_xdyi::xd#2 < (byte) bitmap_line_xdyi::e#1
Inversing boolean not [312] (bool~) bitmap_line_xdyd::$4 ← (byte) bitmap_line_xdyd::xd#2 >= (byte) bitmap_line_xdyd::e#1 from [311] (bool~) bitmap_line_xdyd::$3 ← (byte) bitmap_line_xdyd::xd#2 < (byte) bitmap_line_xdyd::e#1
Inversing boolean not [335] (bool~) bitmap_line_ydxi::$4 ← (byte) bitmap_line_ydxi::yd#2 >= (byte) bitmap_line_ydxi::e#1 from [334] (bool~) bitmap_line_ydxi::$3 ← (byte) bitmap_line_ydxi::yd#2 < (byte) bitmap_line_ydxi::e#1
Inversing boolean not [359] (bool~) bitmap_line_ydxd::$4 ← (byte) bitmap_line_ydxd::yd#2 >= (byte) bitmap_line_ydxd::e#1 from [358] (bool~) bitmap_line_ydxd::$3 ← (byte) bitmap_line_ydxd::yd#2 < (byte) bitmap_line_ydxd::e#1
Inversing boolean not [441] (bool~) menu::$7 ← (byte~) menu::$5 == (byte) 0 from [440] (bool~) menu::$6 ← (byte~) menu::$5 != (byte) 0
Inversing boolean not [450] (bool~) menu::$11 ← (byte~) menu::$9 == (byte) 0 from [449] (bool~) menu::$10 ← (byte~) menu::$9 != (byte) 0
Inversing boolean not [469] (bool~) menu::$15 ← (byte~) menu::$13 == (byte) 0 from [468] (bool~) menu::$14 ← (byte~) menu::$13 != (byte) 0
Inversing boolean not [482] (bool~) menu::$19 ← (byte~) menu::$17 == (byte) 0 from [481] (bool~) menu::$18 ← (byte~) menu::$17 != (byte) 0
Inversing boolean not [495] (bool~) menu::$23 ← (byte~) menu::$21 == (byte) 0 from [494] (bool~) menu::$22 ← (byte~) menu::$21 != (byte) 0
Inversing boolean not [508] (bool~) menu::$27 ← (byte~) menu::$25 == (byte) 0 from [507] (bool~) menu::$26 ← (byte~) menu::$25 != (byte) 0
Inversing boolean not [521] (bool~) menu::$31 ← (byte~) menu::$29 == (byte) 0 from [520] (bool~) menu::$30 ← (byte~) menu::$29 != (byte) 0
Inversing boolean not [534] (bool~) menu::$35 ← (byte~) menu::$33 == (byte) 0 from [533] (bool~) menu::$34 ← (byte~) menu::$33 != (byte) 0
Inversing boolean not [547] (bool~) menu::$39 ← (byte~) menu::$37 == (byte) 0 from [546] (bool~) menu::$38 ← (byte~) menu::$37 != (byte) 0
Inversing boolean not [560] (bool~) menu::$43 ← (byte~) menu::$41 == (byte) 0 from [559] (bool~) menu::$42 ← (byte~) menu::$41 != (byte) 0
Inversing boolean not [573] (bool~) menu::$47 ← (byte~) menu::$45 == (byte) 0 from [572] (bool~) menu::$46 ← (byte~) menu::$45 != (byte) 0
Inversing boolean not [586] (bool~) menu::$51 ← (byte~) menu::$49 == (byte) 0 from [585] (bool~) menu::$50 ← (byte~) menu::$49 != (byte) 0
Inversing boolean not [611] (bool~) mode_ctrl::$3 ← (byte~) mode_ctrl::$1 == (byte) 0 from [610] (bool~) mode_ctrl::$2 ← (byte~) mode_ctrl::$1 != (byte) 0
Inversing boolean not [621] (bool~) mode_ctrl::$6 ← (byte~) mode_ctrl::$4 == (byte) 0 from [620] (bool~) mode_ctrl::$5 ← (byte~) mode_ctrl::$4 != (byte) 0
Inversing boolean not [633] (bool~) mode_ctrl::$10 ← (byte~) mode_ctrl::$8 == (byte) 0 from [632] (bool~) mode_ctrl::$9 ← (byte~) mode_ctrl::$8 != (byte) 0
Inversing boolean not [645] (bool~) mode_ctrl::$14 ← (byte~) mode_ctrl::$12 == (byte) 0 from [644] (bool~) mode_ctrl::$13 ← (byte~) mode_ctrl::$12 != (byte) 0
Inversing boolean not [657] (bool~) mode_ctrl::$18 ← (byte~) mode_ctrl::$16 == (byte) 0 from [656] (bool~) mode_ctrl::$17 ← (byte~) mode_ctrl::$16 != (byte) 0
Inversing boolean not [669] (bool~) mode_ctrl::$22 ← (byte~) mode_ctrl::$20 == (byte) 0 from [668] (bool~) mode_ctrl::$21 ← (byte~) mode_ctrl::$20 != (byte) 0
Inversing boolean not [681] (bool~) mode_ctrl::$26 ← (byte~) mode_ctrl::$24 == (byte) 0 from [680] (bool~) mode_ctrl::$25 ← (byte~) mode_ctrl::$24 != (byte) 0
Inversing boolean not [693] (bool~) mode_ctrl::$30 ← (byte~) mode_ctrl::$28 == (byte) 0 from [692] (bool~) mode_ctrl::$29 ← (byte~) mode_ctrl::$28 != (byte) 0
Inversing boolean not [700] (bool~) mode_ctrl::$32 ← (byte) mode_ctrl::ctrl#14 == (byte) dtv_control#72 from [699] (bool~) mode_ctrl::$31 ← (byte) mode_ctrl::ctrl#14 != (byte) dtv_control#72
Inversing boolean not [1389] (bool~) mode_8bpppixelcell::$10 ← (byte~) mode_8bpppixelcell::$8 == (byte) 0 from [1388] (bool~) mode_8bpppixelcell::$9 ← (byte~) mode_8bpppixelcell::$8 != (byte) 0
Inversing boolean not [1447] (bool~) mode_8bppchunkybmm::$5 ← (byte*) mode_8bppchunkybmm::gfxb#3 != (word) $8000 from [1446] (bool~) mode_8bppchunkybmm::$4 ← (byte*) mode_8bppchunkybmm::gfxb#3 == (word) $8000
Successful SSA optimization Pass2UnaryNotSimplification
Alias memset::return#0 = memset::str#1 memset::return#3 memset::return#1
Alias memset::str#2 = memset::str#3
Alias memset::num#1 = memset::num#2
Alias memset::c#3 = memset::c#4
Alias memset::end#0 = memset::$2
Alias memset::c#1 = memset::c#2
Alias memset::dst#2 = memset::dst#3
Alias memset::end#1 = memset::end#2
Alias memset::str#4 = memset::str#5
Alias print_screen#0 = print_line_cursor#0 print_char_cursor#0 print_screen#49 print_line_cursor#67 print_char_cursor#74 print_screen#32 print_line_cursor#49 print_char_cursor#55
Alias print_str_lines::ch#0 = print_str_lines::ch#2 print_str_lines::ch#3
Alias print_char_cursor#35 = print_char_cursor#57
Alias print_str_lines::str#0 = print_str_lines::str#9 print_str_lines::str#7
Alias print_line_cursor#68 = print_line_cursor#84 print_line_cursor#69
Alias print_char_cursor#1 = print_char_cursor#19
Alias print_line_cursor#30 = print_line_cursor#51
Alias print_char_cursor#36 = print_char_cursor#58
Alias print_str_lines::str#5 = print_str_lines::str#8 print_str_lines::str#6
Alias print_line_cursor#1 = print_line_cursor#16
Alias print_char_cursor#2 = print_char_cursor#20
Alias print_char_cursor#21 = print_char_cursor#37 print_char_cursor#3
Alias print_line_cursor#17 = print_line_cursor#31 print_line_cursor#2
Alias print_line_cursor#19 = print_line_cursor#3 print_ln::$0 print_char_cursor#4 print_line_cursor#20 print_char_cursor#23 print_line_cursor#4 print_char_cursor#5
Alias print_char_cursor#25 = print_char_cursor#6 print_char_cursor#7
Alias print_line_cursor#21 = print_screen#9 print_screen#8 print_line_cursor#5 print_char_cursor#8 print_char_cursor#26 print_line_cursor#6 print_char_cursor#9
Alias print_screen#1 = print_line_cursor#7 print_char_cursor#10 print_screen#10 print_line_cursor#22 print_char_cursor#27 print_screen#2 print_line_cursor#8 print_char_cursor#11
Alias keyboard_matrix_read::return#0 = keyboard_matrix_read::row_pressed_bits#0 keyboard_matrix_read::$0 keyboard_matrix_read::return#3 keyboard_matrix_read::return#1
Alias keyboard_key_pressed::colidx#0 = keyboard_key_pressed::$0 keyboard_key_pressed::colidx#1
Alias keyboard_key_pressed::rowidx#0 = keyboard_key_pressed::$1
Alias keyboard_matrix_read::return#2 = keyboard_matrix_read::return#4
Alias keyboard_key_pressed::return#0 = keyboard_key_pressed::$3 keyboard_key_pressed::return#22 keyboard_key_pressed::return#1
Alias bitmap_init::bits#1 = bitmap_init::$2
Alias bitmap_init::x#2 = bitmap_init::x#4
Alias bitmap_init::bitmap#1 = bitmap_init::bitmap#4
Alias bitmap_init::yoffs#2 = bitmap_init::yoffs#3
Alias bitmap_init::y#2 = bitmap_init::y#4
Alias bitmap_init::yoffs#1 = bitmap_init::$13
Alias bitmap_clear::bitmap#0 = bitmap_clear::$2
Alias bitmap_clear::y#2 = bitmap_clear::y#3
Alias bitmap_clear::bitmap#1 = bitmap_clear::bitmap#4
Alias bitmap_plot::plotter_x#0 = bitmap_plot::$2
Alias bitmap_plot::plotter_y#0 = bitmap_plot::$3
Alias bitmap_line::x1#1 = bitmap_line::x1#2 bitmap_line::x1#3 bitmap_line::x1#11 bitmap_line::x1#10 bitmap_line::x1#4 bitmap_line::x1#5 bitmap_line::x1#6 bitmap_line::x1#13 bitmap_line::x1#12 bitmap_line::x1#7 bitmap_line::x1#8 bitmap_line::x1#9
Alias bitmap_line::x0#1 = bitmap_line::x0#2 bitmap_line::x0#3 bitmap_line::x0#11 bitmap_line::x0#10 bitmap_line::x0#4 bitmap_line::x0#5 bitmap_line::x0#6 bitmap_line::x0#13 bitmap_line::x0#12 bitmap_line::x0#7 bitmap_line::x0#8 bitmap_line::x0#9
Alias bitmap_line::y0#1 = bitmap_line::y0#13 bitmap_line::y0#2 bitmap_line::y0#3 bitmap_line::y0#4 bitmap_line::y0#5 bitmap_line::y0#6 bitmap_line::y0#7 bitmap_line::y0#8 bitmap_line::y0#9 bitmap_line::y0#10 bitmap_line::y0#11 bitmap_line::y0#12
Alias bitmap_line::y1#1 = bitmap_line::y1#13 bitmap_line::y1#2 bitmap_line::y1#3 bitmap_line::y1#4 bitmap_line::y1#5 bitmap_line::y1#6 bitmap_line::y1#7 bitmap_line::y1#8 bitmap_line::y1#9 bitmap_line::y1#10 bitmap_line::y1#11 bitmap_line::y1#12
Alias bitmap_line::xd#1 = bitmap_line::$11 bitmap_line::xd#9 bitmap_line::xd#10 bitmap_line::xd#11 bitmap_line::xd#12 bitmap_line::xd#13 bitmap_line::xd#14
Alias bitmap_line::xd#2 = bitmap_line::$1 bitmap_line::xd#3 bitmap_line::xd#4 bitmap_line::xd#5 bitmap_line::xd#6 bitmap_line::xd#7 bitmap_line::xd#8
Alias bitmap_line::yd#1 = bitmap_line::$7 bitmap_line::yd#7 bitmap_line::yd#8
Alias bitmap_line::yd#2 = bitmap_line::$3 bitmap_line::yd#5 bitmap_line::yd#6
Alias bitmap_line::yd#11 = bitmap_line::yd#3 bitmap_line::$17 bitmap_line::yd#12
Alias bitmap_line::yd#10 = bitmap_line::yd#4 bitmap_line::$13 bitmap_line::yd#9
Alias bitmap_line_xdyi::e#0 = bitmap_line_xdyi::$0
Alias bitmap_line_xdyi::x#3 = bitmap_line_xdyi::x#4
Alias bitmap_line_xdyi::e#3 = bitmap_line_xdyi::e#5
Alias bitmap_line_xdyi::yd#3 = bitmap_line_xdyi::yd#4 bitmap_line_xdyi::yd#6
Alias bitmap_line_xdyi::xd#2 = bitmap_line_xdyi::xd#4 bitmap_line_xdyi::xd#3
Alias bitmap_line_xdyi::x1#3 = bitmap_line_xdyi::x1#4 bitmap_line_xdyi::x1#5
Alias bitmap_line_xdyi::y#3 = bitmap_line_xdyi::y#7 bitmap_line_xdyi::y#4
Alias bitmap_line_xdyi::e#1 = bitmap_line_xdyi::$2 bitmap_line_xdyi::e#4
Alias bitmap_line_xdyi::x#2 = bitmap_line_xdyi::x#7
Alias bitmap_line_xdyi::e#2 = bitmap_line_xdyi::$5
Alias bitmap_line_xdyd::e#0 = bitmap_line_xdyd::$0
Alias bitmap_line_xdyd::x#3 = bitmap_line_xdyd::x#4
Alias bitmap_line_xdyd::e#3 = bitmap_line_xdyd::e#5
Alias bitmap_line_xdyd::yd#3 = bitmap_line_xdyd::yd#4 bitmap_line_xdyd::yd#6
Alias bitmap_line_xdyd::xd#2 = bitmap_line_xdyd::xd#4 bitmap_line_xdyd::xd#3
Alias bitmap_line_xdyd::x1#3 = bitmap_line_xdyd::x1#4 bitmap_line_xdyd::x1#5
Alias bitmap_line_xdyd::y#3 = bitmap_line_xdyd::y#7 bitmap_line_xdyd::y#4
Alias bitmap_line_xdyd::e#1 = bitmap_line_xdyd::$2 bitmap_line_xdyd::e#4
Alias bitmap_line_xdyd::x#2 = bitmap_line_xdyd::x#7
Alias bitmap_line_xdyd::e#2 = bitmap_line_xdyd::$5
Alias bitmap_line_ydxi::e#0 = bitmap_line_ydxi::$0
Alias bitmap_line_ydxi::y#3 = bitmap_line_ydxi::y#4
Alias bitmap_line_ydxi::e#3 = bitmap_line_ydxi::e#5
Alias bitmap_line_ydxi::xd#3 = bitmap_line_ydxi::xd#4 bitmap_line_ydxi::xd#6
Alias bitmap_line_ydxi::yd#2 = bitmap_line_ydxi::yd#4 bitmap_line_ydxi::yd#3
Alias bitmap_line_ydxi::y1#3 = bitmap_line_ydxi::y1#4 bitmap_line_ydxi::y1#5
Alias bitmap_line_ydxi::x#3 = bitmap_line_ydxi::x#7 bitmap_line_ydxi::x#4
Alias bitmap_line_ydxi::e#1 = bitmap_line_ydxi::$2 bitmap_line_ydxi::e#4
Alias bitmap_line_ydxi::y#2 = bitmap_line_ydxi::y#7
Alias bitmap_line_ydxi::e#2 = bitmap_line_ydxi::$5
Alias bitmap_line_ydxd::e#0 = bitmap_line_ydxd::$0
Alias bitmap_line_ydxd::y#2 = bitmap_line_ydxd::y#5 bitmap_line_ydxd::y#4
Alias bitmap_line_ydxd::e#3 = bitmap_line_ydxd::e#5
Alias bitmap_line_ydxd::xd#3 = bitmap_line_ydxd::xd#4 bitmap_line_ydxd::xd#6
Alias bitmap_line_ydxd::yd#2 = bitmap_line_ydxd::yd#4 bitmap_line_ydxd::yd#3
Alias bitmap_line_ydxd::y1#3 = bitmap_line_ydxd::y1#4 bitmap_line_ydxd::y1#5
Alias bitmap_line_ydxd::x#3 = bitmap_line_ydxd::x#7 bitmap_line_ydxd::x#4
Alias bitmap_line_ydxd::e#1 = bitmap_line_ydxd::$2 bitmap_line_ydxd::e#4
Alias bitmap_line_ydxd::y#3 = bitmap_line_ydxd::y#8
Alias bitmap_line_ydxd::e#2 = bitmap_line_ydxd::$5
Alias print_screen#12 = print_screen#16 print_screen#17 print_screen#4
Alias print_line_cursor#10 = print_line_cursor#33 print_line_cursor#34 print_line_cursor#24
Alias print_char_cursor#13 = print_char_cursor#39 print_char_cursor#40 print_char_cursor#29
Alias dtv_control#1 = dtv_control#98 dtv_control#99 dtv_control#56
Alias print_screen#11 = print_screen#3
Alias print_line_cursor#23 = print_line_cursor#9
Alias print_char_cursor#12 = print_char_cursor#28
Alias dtv_control#0 = dtv_control#55
Alias print_screen#50 = print_screen#65
Alias print_line_cursor#70 = print_line_cursor#85
Alias print_char_cursor#75 = print_char_cursor#89
Alias dtv_control#235 = dtv_control#245
Alias menu::c#2 = menu::c#3
Alias print_screen#18 = print_screen#51 print_screen#34
Alias print_line_cursor#35 = print_line_cursor#71 print_line_cursor#53
Alias print_char_cursor#41 = print_char_cursor#76 print_char_cursor#60
Alias dtv_control#131 = dtv_control#236 dtv_control#220 dtv_control#203 dtv_control#188 dtv_control#159
Alias print_screen#13 = print_screen#5 print_screen#52 print_screen#35
Alias print_line_cursor#11 = print_line_cursor#25
Alias print_char_cursor#14 = print_char_cursor#30
Alias print_line_cursor#12 = print_line_cursor#26
Alias print_char_cursor#15 = print_char_cursor#31
Alias print_char_cursor#16 = print_char_cursor#32
Alias print_line_cursor#13 = print_line_cursor#27
Alias dtv_control#100 = dtv_control#160 dtv_control#101 dtv_control#133 dtv_control#161 dtv_control#134 dtv_control#162 dtv_control#135 dtv_control#102 dtv_control#163 dtv_control#136 dtv_control#103 dtv_control#164 dtv_control#137 dtv_control#104 dtv_control#165 dtv_control#138 dtv_control#105 dtv_control#166 dtv_control#139 dtv_control#106 dtv_control#167 dtv_control#140 dtv_control#107 dtv_control#168 dtv_control#141 dtv_control#108 dtv_control#169 dtv_control#142 dtv_control#109 dtv_control#170 dtv_control#143 dtv_control#110 dtv_control#171 dtv_control#132 dtv_control#111 dtv_control#112
Alias print_screen#19 = print_screen#66 print_screen#31 print_screen#53 print_screen#67 print_screen#54 print_screen#37 print_screen#68 print_screen#55 print_screen#38 print_screen#20 print_screen#69 print_screen#56 print_screen#39 print_screen#21 print_screen#70 print_screen#57 print_screen#40 print_screen#22 print_screen#71 print_screen#58 print_screen#41 print_screen#23 print_screen#72 print_screen#59 print_screen#42 print_screen#24 print_screen#73 print_screen#60 print_screen#43 print_screen#25 print_screen#74 print_screen#61 print_screen#44 print_screen#26 print_screen#75 print_screen#62 print_screen#45 print_screen#27 print_screen#76 print_screen#64 print_screen#46 print_screen#28 print_screen#63 print_screen#36 print_screen#47 print_screen#29 print_screen#48 print_screen#30
Alias print_line_cursor#36 = print_line_cursor#86 print_line_cursor#48 print_line_cursor#72 print_line_cursor#87 print_line_cursor#73 print_line_cursor#55 print_line_cursor#88 print_line_cursor#74 print_line_cursor#56 print_line_cursor#37 print_line_cursor#89 print_line_cursor#75 print_line_cursor#57 print_line_cursor#38 print_line_cursor#90 print_line_cursor#76 print_line_cursor#58 print_line_cursor#39 print_line_cursor#91 print_line_cursor#77 print_line_cursor#59 print_line_cursor#40 print_line_cursor#92 print_line_cursor#78 print_line_cursor#60 print_line_cursor#41 print_line_cursor#93 print_line_cursor#79 print_line_cursor#61 print_line_cursor#42 print_line_cursor#94 print_line_cursor#80 print_line_cursor#62 print_line_cursor#43 print_line_cursor#95 print_line_cursor#81 print_line_cursor#63 print_line_cursor#44 print_line_cursor#96 print_line_cursor#83 print_line_cursor#64 print_line_cursor#45 print_line_cursor#82 print_line_cursor#54 print_line_cursor#65 print_line_cursor#46 print_line_cursor#66 print_line_cursor#47
Alias print_char_cursor#100 = print_char_cursor#90 print_char_cursor#54 print_char_cursor#77 print_char_cursor#91 print_char_cursor#78 print_char_cursor#62 print_char_cursor#42 print_char_cursor#92 print_char_cursor#79 print_char_cursor#63 print_char_cursor#43 print_char_cursor#93 print_char_cursor#80 print_char_cursor#64 print_char_cursor#44 print_char_cursor#94 print_char_cursor#81 print_char_cursor#65 print_char_cursor#45 print_char_cursor#95 print_char_cursor#82 print_char_cursor#66 print_char_cursor#46 print_char_cursor#96 print_char_cursor#83 print_char_cursor#67 print_char_cursor#47 print_char_cursor#97 print_char_cursor#84 print_char_cursor#68 print_char_cursor#48 print_char_cursor#98 print_char_cursor#85 print_char_cursor#69 print_char_cursor#49 print_char_cursor#99 print_char_cursor#86 print_char_cursor#70 print_char_cursor#50 print_char_cursor#88 print_char_cursor#71 print_char_cursor#51 print_char_cursor#87 print_char_cursor#61 print_char_cursor#72 print_char_cursor#52 print_char_cursor#73 print_char_cursor#53
Alias keyboard_key_pressed::return#2 = keyboard_key_pressed::return#23
Alias keyboard_key_pressed::return#24 = keyboard_key_pressed::return#3
Alias dtv_control#2 = dtv_control#57
Alias print_screen#14 = print_screen#6
Alias print_line_cursor#14 = print_line_cursor#28
Alias print_char_cursor#17 = print_char_cursor#33
Alias dtv_control#3 = dtv_control#58
Alias keyboard_key_pressed::return#25 = keyboard_key_pressed::return#4
Alias dtv_control#4 = dtv_control#59
Alias keyboard_key_pressed::return#26 = keyboard_key_pressed::return#5
Alias dtv_control#5 = dtv_control#60
Alias keyboard_key_pressed::return#27 = keyboard_key_pressed::return#6
Alias dtv_control#6 = dtv_control#61
Alias keyboard_key_pressed::return#28 = keyboard_key_pressed::return#7
Alias dtv_control#62 = dtv_control#7
Alias keyboard_key_pressed::return#29 = keyboard_key_pressed::return#8
Alias dtv_control#63 = dtv_control#8
Alias keyboard_key_pressed::return#30 = keyboard_key_pressed::return#9
Alias dtv_control#64 = dtv_control#9
Alias keyboard_key_pressed::return#10 = keyboard_key_pressed::return#31
Alias dtv_control#10 = dtv_control#65
Alias keyboard_key_pressed::return#11 = keyboard_key_pressed::return#32
Alias dtv_control#11 = dtv_control#66
Alias keyboard_key_pressed::return#12 = keyboard_key_pressed::return#33
Alias dtv_control#12 = dtv_control#67
Alias keyboard_key_pressed::return#13 = keyboard_key_pressed::return#34
Alias dtv_control#13 = dtv_control#68
Alias dtv_control#14 = dtv_control#69
Alias dtv_control#113 = dtv_control#145 dtv_control#172 dtv_control#70 dtv_control#281 dtv_control#280
Alias keyboard_key_pressed::return#14 = keyboard_key_pressed::return#35
Alias keyboard_key_pressed::return#15 = keyboard_key_pressed::return#36
Alias mode_ctrl::ctrl#0 = mode_ctrl::ctrl#16 mode_ctrl::ctrl#8
Alias dtv_control#16 = dtv_control#71
Alias keyboard_key_pressed::return#16 = keyboard_key_pressed::return#37
Alias mode_ctrl::ctrl#17 = mode_ctrl::ctrl#23 mode_ctrl::ctrl#9
Alias dtv_control#269 = dtv_control#270 dtv_control#275
Alias mode_ctrl::ctrl#1 = mode_ctrl::$7
Alias keyboard_key_pressed::return#17 = keyboard_key_pressed::return#38
Alias mode_ctrl::ctrl#10 = mode_ctrl::ctrl#18 mode_ctrl::ctrl#24
Alias dtv_control#255 = dtv_control#256 dtv_control#263
Alias mode_ctrl::ctrl#2 = mode_ctrl::$11
Alias keyboard_key_pressed::return#18 = keyboard_key_pressed::return#39
Alias mode_ctrl::ctrl#11 = mode_ctrl::ctrl#19 mode_ctrl::ctrl#25
Alias dtv_control#237 = dtv_control#238 dtv_control#246
Alias mode_ctrl::ctrl#3 = mode_ctrl::$15
Alias keyboard_key_pressed::return#19 = keyboard_key_pressed::return#40
Alias mode_ctrl::ctrl#12 = mode_ctrl::ctrl#20 mode_ctrl::ctrl#26
Alias dtv_control#204 = dtv_control#205 dtv_control#221
Alias mode_ctrl::ctrl#4 = mode_ctrl::$19
Alias keyboard_key_pressed::return#20 = keyboard_key_pressed::return#41
Alias mode_ctrl::ctrl#13 = mode_ctrl::ctrl#21 mode_ctrl::ctrl#27
Alias dtv_control#173 = dtv_control#174 dtv_control#189
Alias mode_ctrl::ctrl#5 = mode_ctrl::$23
Alias keyboard_key_pressed::return#21 = keyboard_key_pressed::return#42
Alias mode_ctrl::ctrl#22 = mode_ctrl::ctrl#28
Alias dtv_control#115 = dtv_control#116 dtv_control#146
Alias mode_ctrl::ctrl#6 = mode_ctrl::$27
Alias mode_ctrl::ctrl#14 = mode_ctrl::ctrl#15
Alias dtv_control#206 = dtv_control#222
Alias mode_stdchar::cy#2 = mode_stdchar::cy#3
Alias mode_stdchar::col#1 = mode_stdchar::col#4
Alias mode_stdchar::ch#1 = mode_stdchar::ch#4
Alias dtv_control#117 = dtv_control#147 dtv_control#175
Alias dtv_control#19 = dtv_control#73 dtv_control#74 dtv_control#20
Alias dtv_control#207 = dtv_control#223
Alias mode_ecmchar::cy#2 = mode_ecmchar::cy#3
Alias mode_ecmchar::col#1 = mode_ecmchar::col#4
Alias mode_ecmchar::ch#1 = mode_ecmchar::ch#4
Alias dtv_control#118 = dtv_control#148 dtv_control#176
Alias dtv_control#22 = dtv_control#75 dtv_control#76 dtv_control#23
Alias dtv_control#208 = dtv_control#224
Alias mode_mcchar::cy#2 = mode_mcchar::cy#3
Alias mode_mcchar::col#1 = mode_mcchar::col#4
Alias mode_mcchar::ch#1 = mode_mcchar::ch#4
Alias dtv_control#119 = dtv_control#149 dtv_control#177
Alias dtv_control#25 = dtv_control#77 dtv_control#78 dtv_control#26
Alias dtv_control#257 = dtv_control#264
Alias mode_stdbitmap::col#0 = mode_stdbitmap::$5
Alias mode_stdbitmap::col2#0 = mode_stdbitmap::$6
Alias mode_stdbitmap::cy#2 = mode_stdbitmap::cy#3
Alias mode_stdbitmap::ch#1 = mode_stdbitmap::ch#4
Alias dtv_control#178 = dtv_control#225 dtv_control#239 dtv_control#209 dtv_control#193
Alias mode_stdbitmap::l#2 = mode_stdbitmap::l#3 mode_stdbitmap::l#4
Alias dtv_control#120 = dtv_control#194 dtv_control#150 dtv_control#179
Alias dtv_control#28 = dtv_control#79 dtv_control#80 dtv_control#29
Alias dtv_control#210 = dtv_control#226
Alias mode_hicolstdchar::v#0 = mode_hicolstdchar::$5
Alias mode_hicolstdchar::cy#2 = mode_hicolstdchar::cy#3
Alias mode_hicolstdchar::col#1 = mode_hicolstdchar::col#4
Alias mode_hicolstdchar::ch#1 = mode_hicolstdchar::ch#4
Alias dtv_control#121 = dtv_control#151 dtv_control#180
Alias dtv_control#31 = dtv_control#81 dtv_control#82 dtv_control#32
Alias dtv_control#211 = dtv_control#227
Alias mode_hicolecmchar::v#0 = mode_hicolecmchar::$5
Alias mode_hicolecmchar::cy#2 = mode_hicolecmchar::cy#3
Alias mode_hicolecmchar::col#1 = mode_hicolecmchar::col#4
Alias mode_hicolecmchar::ch#1 = mode_hicolecmchar::ch#4
Alias dtv_control#122 = dtv_control#152 dtv_control#181
Alias dtv_control#34 = dtv_control#83 dtv_control#84 dtv_control#35
Alias dtv_control#212 = dtv_control#228
Alias mode_hicolmcchar::v#0 = mode_hicolmcchar::$5
Alias mode_hicolmcchar::cy#2 = mode_hicolmcchar::cy#3
Alias mode_hicolmcchar::col#1 = mode_hicolmcchar::col#4
Alias mode_hicolmcchar::ch#1 = mode_hicolmcchar::ch#4
Alias dtv_control#123 = dtv_control#153 dtv_control#182
Alias dtv_control#37 = dtv_control#85 dtv_control#86 dtv_control#38
Alias dtv_control#289 = dtv_control#290
Alias mode_twoplanebitmap::cy#2 = mode_twoplanebitmap::cy#3
Alias mode_twoplanebitmap::col#1 = mode_twoplanebitmap::col#4
Alias dtv_control#271 = dtv_control#276 dtv_control#282
Alias mode_twoplanebitmap::gfxa#3 = mode_twoplanebitmap::gfxa#5 mode_twoplanebitmap::gfxa#4
Alias mode_twoplanebitmap::ax#3 = mode_twoplanebitmap::ax#4 mode_twoplanebitmap::ax#5
Alias mode_twoplanebitmap::ay#2 = mode_twoplanebitmap::ay#7 mode_twoplanebitmap::ay#6
Alias dtv_control#248 = dtv_control#249 dtv_control#258
Alias mode_twoplanebitmap::ay#3 = mode_twoplanebitmap::ay#4
Alias mode_twoplanebitmap::gfxa#6 = mode_twoplanebitmap::gfxa#8
Alias dtv_control#213 = dtv_control#229 dtv_control#240
Alias mode_twoplanebitmap::by#2 = mode_twoplanebitmap::by#3
Alias mode_twoplanebitmap::gfxb#1 = mode_twoplanebitmap::gfxb#4
Alias dtv_control#124 = dtv_control#154 dtv_control#183
Alias dtv_control#40 = dtv_control#87 dtv_control#88 dtv_control#41
Alias dtv_control#283 = dtv_control#287
Alias mode_sixsfred::cy#2 = mode_sixsfred::cy#3
Alias mode_sixsfred::col#1 = mode_sixsfred::col#4
Alias dtv_control#259 = dtv_control#266 dtv_control#272
Alias mode_sixsfred::row#0 = mode_sixsfred::$7
Alias mode_sixsfred::ay#2 = mode_sixsfred::ay#3
Alias mode_sixsfred::gfxa#1 = mode_sixsfred::gfxa#4
Alias dtv_control#214 = dtv_control#230 dtv_control#241
Alias mode_sixsfred::by#2 = mode_sixsfred::by#3
Alias mode_sixsfred::gfxb#1 = mode_sixsfred::gfxb#4
Alias dtv_control#125 = dtv_control#155 dtv_control#184
Alias dtv_control#43 = dtv_control#89 dtv_control#90 dtv_control#44
Alias dtv_control#284 = dtv_control#288
Alias mode_sixsfred2::cy#2 = mode_sixsfred2::cy#3
Alias mode_sixsfred2::col#1 = mode_sixsfred2::col#4
Alias dtv_control#260 = dtv_control#267 dtv_control#273
Alias mode_sixsfred2::row#0 = mode_sixsfred2::$9
Alias mode_sixsfred2::ay#2 = mode_sixsfred2::ay#3
Alias mode_sixsfred2::gfxa#1 = mode_sixsfred2::gfxa#4
Alias dtv_control#215 = dtv_control#231 dtv_control#242
Alias mode_sixsfred2::by#2 = mode_sixsfred2::by#3
Alias mode_sixsfred2::gfxb#1 = mode_sixsfred2::gfxb#4
Alias dtv_control#126 = dtv_control#156 dtv_control#185
Alias dtv_control#46 = dtv_control#91 dtv_control#92 dtv_control#47
Alias dtv_control#279 = dtv_control#285
Alias mode_8bpppixelcell::ay#2 = mode_8bpppixelcell::ay#3
Alias mode_8bpppixelcell::gfxa#1 = mode_8bpppixelcell::gfxa#4
Alias dtv_control#252 = dtv_control#261 dtv_control#268
Alias mode_8bpppixelcell::bits#1 = mode_8bpppixelcell::$11
Alias mode_8bpppixelcell::col#3 = mode_8bpppixelcell::col#4 mode_8bpppixelcell::c#1
Alias mode_8bpppixelcell::gfxb#3 = mode_8bpppixelcell::gfxb#4
Alias mode_8bpppixelcell::bits#2 = mode_8bpppixelcell::bits#4
Alias mode_8bpppixelcell::cp#3 = mode_8bpppixelcell::cp#4
Alias mode_8bpppixelcell::cr#4 = mode_8bpppixelcell::cr#5
Alias mode_8bpppixelcell::chargen#7 = mode_8bpppixelcell::chargen#8
Alias mode_8bpppixelcell::ch#5 = mode_8bpppixelcell::ch#6
Alias dtv_control#216 = dtv_control#217
Alias mode_8bpppixelcell::cr#2 = mode_8bpppixelcell::cr#3
Alias mode_8bpppixelcell::chargen#3 = mode_8bpppixelcell::chargen#6 mode_8bpppixelcell::chargen#5
Alias mode_8bpppixelcell::ch#2 = mode_8bpppixelcell::ch#3 mode_8bpppixelcell::ch#4
Alias mode_8bpppixelcell::gfxb#1 = mode_8bpppixelcell::gfxb#6 mode_8bpppixelcell::gfxb#8
Alias mode_8bpppixelcell::col#1 = mode_8bpppixelcell::col#6 mode_8bpppixelcell::col#8
Alias dtv_control#127 = dtv_control#186 dtv_control#201 dtv_control#157
Alias dtv_control#49 = dtv_control#93 dtv_control#94 dtv_control#50
Alias dtv_control#244 = dtv_control#253 dtv_control#262
Alias mode_8bppchunkybmm::gfxbCpuBank#0 = mode_8bppchunkybmm::gfxbCpuBank#3
Alias mode_8bppchunkybmm::gfxbCpuBank#4 = mode_8bppchunkybmm::gfxbCpuBank#6 mode_8bppchunkybmm::gfxbCpuBank#5
Alias mode_8bppchunkybmm::x#3 = mode_8bppchunkybmm::x#5 mode_8bppchunkybmm::x#4
Alias mode_8bppchunkybmm::y#4 = mode_8bppchunkybmm::y#7 mode_8bppchunkybmm::y#5
Alias dtv_control#218 = dtv_control#234 dtv_control#219
Alias mode_8bppchunkybmm::y#2 = mode_8bppchunkybmm::y#3
Alias mode_8bppchunkybmm::gfxb#1 = mode_8bppchunkybmm::gfxb#6
Alias mode_8bppchunkybmm::gfxbCpuBank#8 = mode_8bppchunkybmm::gfxbCpuBank#9
Alias dtv_control#128 = dtv_control#187 dtv_control#202 dtv_control#158
Alias dtv_control#52 = dtv_control#95 dtv_control#96 dtv_control#53
Alias dtv_control#129 = dtv_control#15
Alias print_screen#15 = print_screen#7
Alias print_line_cursor#15 = print_line_cursor#29
Alias print_char_cursor#18 = print_char_cursor#34
Alias dtv_control#54 = dtv_control#97
Successful SSA optimization Pass2AliasElimination
Alias print_str_lines::ch#0 = print_str_lines::ch#1
Alias print_str_lines::str#0 = print_str_lines::str#5
Alias print_line_cursor#30 = print_line_cursor#68
Alias bitmap_init::x#2 = bitmap_init::x#3
Alias bitmap_init::bitmap#1 = bitmap_init::bitmap#3
Alias bitmap_init::y#2 = bitmap_init::y#3
Alias bitmap_line_xdyi::x1#2 = bitmap_line_xdyi::x1#3
Alias bitmap_line_xdyi::x#2 = bitmap_line_xdyi::x#5
Alias bitmap_line_xdyi::yd#3 = bitmap_line_xdyi::yd#5
Alias bitmap_line_xdyi::xd#2 = bitmap_line_xdyi::xd#6
Alias bitmap_line_xdyd::x1#2 = bitmap_line_xdyd::x1#3
Alias bitmap_line_xdyd::x#2 = bitmap_line_xdyd::x#5
Alias bitmap_line_xdyd::yd#3 = bitmap_line_xdyd::yd#5
Alias bitmap_line_xdyd::xd#2 = bitmap_line_xdyd::xd#6
Alias bitmap_line_ydxi::y1#2 = bitmap_line_ydxi::y1#3
Alias bitmap_line_ydxi::y#2 = bitmap_line_ydxi::y#5
Alias bitmap_line_ydxi::xd#3 = bitmap_line_ydxi::xd#5
Alias bitmap_line_ydxi::yd#2 = bitmap_line_ydxi::yd#6
Alias bitmap_line_ydxd::y1#2 = bitmap_line_ydxd::y1#3
Alias bitmap_line_ydxd::y#3 = bitmap_line_ydxd::y#6
Alias bitmap_line_ydxd::xd#3 = bitmap_line_ydxd::xd#5
Alias bitmap_line_ydxd::yd#2 = bitmap_line_ydxd::yd#6
Alias print_screen#14 = print_screen#19
Alias print_line_cursor#14 = print_line_cursor#36
Alias print_char_cursor#100 = print_char_cursor#17
Alias dtv_control#113 = dtv_control#269 dtv_control#255 dtv_control#237 dtv_control#204 dtv_control#173 dtv_control#115 dtv_control#72
Alias mode_twoplanebitmap::ax#2 = mode_twoplanebitmap::ax#3
Alias mode_twoplanebitmap::ay#2 = mode_twoplanebitmap::ay#3
Alias dtv_control#213 = dtv_control#248
Alias mode_8bpppixelcell::gfxb#2 = mode_8bpppixelcell::gfxb#3
Alias mode_8bpppixelcell::bits#2 = mode_8bpppixelcell::bits#3
Alias mode_8bpppixelcell::col#2 = mode_8bpppixelcell::col#3
Alias mode_8bpppixelcell::cp#2 = mode_8bpppixelcell::cp#3
Alias mode_8bpppixelcell::cr#2 = mode_8bpppixelcell::cr#4
Alias mode_8bpppixelcell::chargen#3 = mode_8bpppixelcell::chargen#7
Alias mode_8bpppixelcell::ch#2 = mode_8bpppixelcell::ch#5
Alias dtv_control#127 = dtv_control#216
Alias mode_8bppchunkybmm::x#2 = mode_8bppchunkybmm::x#3
Alias mode_8bppchunkybmm::y#2 = mode_8bppchunkybmm::y#4
Alias dtv_control#128 = 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#56 (byte*) print_char_cursor#15
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_char_cursor#1 (byte*) print_char_cursor#25
Identical Phi Values (byte*) print_line_cursor#1 (byte*) print_line_cursor#19
Identical Phi Values (byte*) print_char_cursor#2 (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#38 (byte*) print_char_cursor#36
Identical Phi Values (byte*) print_char_cursor#22 (byte*) print_char_cursor#38
Identical Phi Values (byte) print_char::ch#1 (byte) print_char::ch#0
Identical Phi Values (byte*) print_char_cursor#24 (byte*) print_char_cursor#35
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#59 (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#12 (byte*) print_char_cursor#100
Identical Phi Values (byte) dtv_control#0 (byte) dtv_control#3
Identical Phi Values (byte*) print_screen#77 (byte*) print_screen#12
Identical Phi Values (byte*) print_line_cursor#97 (byte*) print_line_cursor#10
Identical Phi Values (byte*) print_char_cursor#101 (byte*) print_char_cursor#13
Identical Phi Values (byte) dtv_control#254 (byte) dtv_control#1
Identical Phi Values (byte*) print_screen#50 (byte*) print_screen#77
Identical Phi Values (byte*) print_line_cursor#70 (byte*) print_line_cursor#97
Identical Phi Values (byte*) print_char_cursor#75 (byte*) print_char_cursor#101
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#41 (byte*) print_char_cursor#75
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#14 (byte*) print_screen#1
Identical Phi Values (byte*) print_line_cursor#12 (byte*) print_line_cursor#21
Identical Phi Values (byte*) print_char_cursor#15 (byte*) print_line_cursor#21
Identical Phi Values (byte*) print_char_cursor#16 (byte*) print_char_cursor#21
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#100 (byte*) print_char_cursor#16
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#18 (byte*) print_char_cursor#13
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 [146] (byte~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte) 7
Successful SSA optimization Pass2DuplicateRValueIdentification
Simple Condition (bool~) memset::$1 [6] if((word) memset::num#0<=(byte) 0) goto memset::@1
Simple Condition (bool~) memset::$3 [13] if((byte*) memset::dst#2!=(byte*) memset::end#0) goto memset::@4
Simple Condition (bool~) print_str_lines::$3 [21] if((byte) 0!=*((byte*) print_str_lines::str#2)) goto print_str_lines::@2
Simple Condition (bool~) print_str_lines::$0 [26] if((byte) 0==(byte) print_str_lines::ch#0) goto print_str_lines::@3
Simple Condition (bool~) print_str_lines::$4 [29] if((byte) 0!=(byte) print_str_lines::ch#0) goto print_str_lines::@2
Simple Condition (bool~) print_ln::$1 [40] if((byte*) print_line_cursor#19<(byte*) print_char_cursor#36) goto print_ln::@1
Simple Condition (bool~) bitmap_init::$4 [80] if((byte) bitmap_init::bits#1!=(byte) 0) goto bitmap_init::@2
Simple Condition (bool~) bitmap_init::$5 [84] if((byte) bitmap_init::x#1!=rangelast(0,$ff)) goto bitmap_init::@1
Simple Condition (bool~) bitmap_init::$12 [97] if((byte~) bitmap_init::$10!=(byte) 7) goto bitmap_init::@6
Simple Condition (bool~) bitmap_init::$14 [101] if((byte) bitmap_init::y#1!=rangelast(0,$ff)) goto bitmap_init::@5
Simple Condition (bool~) bitmap_clear::$0 [114] if((byte) bitmap_clear::x#1!=rangelast(0,$c7)) goto bitmap_clear::@2
Simple Condition (bool~) bitmap_clear::$1 [117] if((byte) bitmap_clear::y#1!=rangelast(0,$27)) goto bitmap_clear::@1
Simple Condition (bool~) bitmap_line::$0 [131] if((byte) bitmap_line::x0#0<(byte) bitmap_line::x1#0) goto bitmap_line::@1
Simple Condition (bool~) bitmap_line::$12 [134] if((byte) bitmap_line::y0#0<(byte) bitmap_line::y1#0) goto bitmap_line::@11
Simple Condition (bool~) bitmap_line::$2 [137] if((byte) bitmap_line::y0#0<(byte) bitmap_line::y1#0) goto bitmap_line::@7
Simple Condition (bool~) bitmap_line::$8 [140] if((byte) bitmap_line::yd#1<(byte) bitmap_line::xd#2) goto bitmap_line::@9
Simple Condition (bool~) bitmap_line::$4 [143] if((byte) bitmap_line::yd#2<(byte) bitmap_line::xd#2) goto bitmap_line::@8
Simple Condition (bool~) bitmap_line::$18 [170] if((byte) bitmap_line::yd#11<(byte) bitmap_line::xd#1) goto bitmap_line::@13
Simple Condition (bool~) bitmap_line::$14 [173] if((byte) bitmap_line::yd#10<(byte) bitmap_line::xd#1) goto bitmap_line::@12
Simple Condition (bool~) bitmap_line_xdyi::$4 [208] 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 [212] if((byte) bitmap_line_xdyi::x#2!=(byte~) bitmap_line_xdyi::$6) goto bitmap_line_xdyi::@1
Simple Condition (bool~) bitmap_line_xdyd::$4 [225] 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 [229] if((byte) bitmap_line_xdyd::x#2!=(byte~) bitmap_line_xdyd::$6) goto bitmap_line_xdyd::@1
Simple Condition (bool~) bitmap_line_ydxi::$4 [242] 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 [246] if((byte) bitmap_line_ydxi::y#2!=(byte~) bitmap_line_ydxi::$6) goto bitmap_line_ydxi::@1
Simple Condition (bool~) bitmap_line_ydxd::$4 [259] 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 [263] if((byte) bitmap_line_ydxd::y#3!=(byte~) bitmap_line_ydxd::$6) goto bitmap_line_ydxd::@1
Simple Condition (bool~) menu::$3 [292] if((byte) menu::i#1!=rangelast(0,$f)) goto menu::@1
Simple Condition (bool~) menu::$4 [296] if((byte*) menu::c#2!=(const nomodify byte*) COLS+(word) $3e8) goto menu::@4
Simple Condition (bool~) menu::$7 [316] if((byte~) menu::$5==(byte) 0) goto menu::@8
Simple Condition (bool~) menu::$11 [322] if((byte~) menu::$9==(byte) 0) goto menu::@9
Simple Condition (bool~) menu::$15 [332] if((byte~) menu::$13==(byte) 0) goto menu::@10
Simple Condition (bool~) menu::$19 [340] if((byte~) menu::$17==(byte) 0) goto menu::@11
Simple Condition (bool~) menu::$23 [348] if((byte~) menu::$21==(byte) 0) goto menu::@12
Simple Condition (bool~) menu::$27 [356] if((byte~) menu::$25==(byte) 0) goto menu::@13
Simple Condition (bool~) menu::$31 [364] if((byte~) menu::$29==(byte) 0) goto menu::@14
Simple Condition (bool~) menu::$35 [372] if((byte~) menu::$33==(byte) 0) goto menu::@15
Simple Condition (bool~) menu::$39 [380] if((byte~) menu::$37==(byte) 0) goto menu::@16
Simple Condition (bool~) menu::$43 [388] if((byte~) menu::$41==(byte) 0) goto menu::@17
Simple Condition (bool~) menu::$47 [396] if((byte~) menu::$45==(byte) 0) goto menu::@18
Simple Condition (bool~) menu::$51 [404] if((byte~) menu::$49==(byte) 0) goto menu::@6
Simple Condition (bool~) mode_ctrl::$0 [415] if(*((const nomodify byte*) RASTER)!=(byte) $ff) goto mode_ctrl::@2
Simple Condition (bool~) mode_ctrl::$3 [421] if((byte~) mode_ctrl::$1==(byte) 0) goto mode_ctrl::@4
Simple Condition (bool~) mode_ctrl::$6 [428] if((byte~) mode_ctrl::$4==(byte) 0) goto mode_ctrl::@5
Simple Condition (bool~) mode_ctrl::$10 [437] if((byte~) mode_ctrl::$8==(byte) 0) goto mode_ctrl::@6
Simple Condition (bool~) mode_ctrl::$14 [445] if((byte~) mode_ctrl::$12==(byte) 0) goto mode_ctrl::@7
Simple Condition (bool~) mode_ctrl::$18 [453] if((byte~) mode_ctrl::$16==(byte) 0) goto mode_ctrl::@8
Simple Condition (bool~) mode_ctrl::$22 [461] if((byte~) mode_ctrl::$20==(byte) 0) goto mode_ctrl::@9
Simple Condition (bool~) mode_ctrl::$26 [469] if((byte~) mode_ctrl::$24==(byte) 0) goto mode_ctrl::@10
Simple Condition (bool~) mode_ctrl::$30 [477] if((byte~) mode_ctrl::$28==(byte) 0) goto mode_ctrl::@11
Simple Condition (bool~) mode_ctrl::$32 [481] if((byte) mode_ctrl::ctrl#14==(byte) dtv_control#114) goto mode_ctrl::@1
Simple Condition (bool~) mode_stdchar::$1 [501] if((byte) mode_stdchar::i#1!=rangelast(0,$f)) goto mode_stdchar::@1
Simple Condition (bool~) mode_stdchar::$8 [522] if((byte) mode_stdchar::cx#1!=rangelast(0,$27)) goto mode_stdchar::@4
Simple Condition (bool~) mode_stdchar::$9 [525] if((byte) mode_stdchar::cy#1!=rangelast(0,$18)) goto mode_stdchar::@3
Simple Condition (bool~) mode_ecmchar::$1 [544] if((byte) mode_ecmchar::i#1!=rangelast(0,$f)) goto mode_ecmchar::@1
Simple Condition (bool~) mode_ecmchar::$8 [568] if((byte) mode_ecmchar::cx#1!=rangelast(0,$27)) goto mode_ecmchar::@4
Simple Condition (bool~) mode_ecmchar::$9 [571] if((byte) mode_ecmchar::cy#1!=rangelast(0,$18)) goto mode_ecmchar::@3
Simple Condition (bool~) mode_mcchar::$1 [590] if((byte) mode_mcchar::i#1!=rangelast(0,$f)) goto mode_mcchar::@1
Simple Condition (bool~) mode_mcchar::$8 [613] if((byte) mode_mcchar::cx#1!=rangelast(0,$27)) goto mode_mcchar::@4
Simple Condition (bool~) mode_mcchar::$9 [616] if((byte) mode_mcchar::cy#1!=rangelast(0,$18)) goto mode_mcchar::@3
Simple Condition (bool~) mode_stdbitmap::$3 [633] if((byte) mode_stdbitmap::i#1!=rangelast(0,$f)) goto mode_stdbitmap::@1
Simple Condition (bool~) mode_stdbitmap::$9 [650] if((byte) mode_stdbitmap::cx#1!=rangelast(0,$27)) goto mode_stdbitmap::@4
Simple Condition (bool~) mode_stdbitmap::$10 [653] if((byte) mode_stdbitmap::cy#1!=rangelast(0,$18)) goto mode_stdbitmap::@3
Simple Condition (bool~) mode_stdbitmap::$11 [660] if((byte) mode_stdbitmap::l#2<(const byte) mode_stdbitmap::lines_cnt) goto mode_stdbitmap::@8
Simple Condition (bool~) mode_hicolstdchar::$1 [687] if((byte) mode_hicolstdchar::i#1!=rangelast(0,$f)) goto mode_hicolstdchar::@1
Simple Condition (bool~) mode_hicolstdchar::$6 [706] if((byte) mode_hicolstdchar::cx#1!=rangelast(0,$27)) goto mode_hicolstdchar::@4
Simple Condition (bool~) mode_hicolstdchar::$7 [709] if((byte) mode_hicolstdchar::cy#1!=rangelast(0,$18)) goto mode_hicolstdchar::@3
Simple Condition (bool~) mode_hicolecmchar::$1 [728] if((byte) mode_hicolecmchar::i#1!=rangelast(0,$f)) goto mode_hicolecmchar::@1
Simple Condition (bool~) mode_hicolecmchar::$6 [750] if((byte) mode_hicolecmchar::cx#1!=rangelast(0,$27)) goto mode_hicolecmchar::@4
Simple Condition (bool~) mode_hicolecmchar::$7 [753] if((byte) mode_hicolecmchar::cy#1!=rangelast(0,$18)) goto mode_hicolecmchar::@3
Simple Condition (bool~) mode_hicolmcchar::$1 [772] if((byte) mode_hicolmcchar::i#1!=rangelast(0,$f)) goto mode_hicolmcchar::@1
Simple Condition (bool~) mode_hicolmcchar::$6 [793] if((byte) mode_hicolmcchar::cx#1!=rangelast(0,$27)) goto mode_hicolmcchar::@4
Simple Condition (bool~) mode_hicolmcchar::$7 [796] if((byte) mode_hicolmcchar::cy#1!=rangelast(0,$18)) goto mode_hicolmcchar::@3
Simple Condition (bool~) mode_twoplanebitmap::$1 [823] if((byte) mode_twoplanebitmap::i#1!=rangelast(0,$f)) goto mode_twoplanebitmap::@1
Simple Condition (bool~) mode_twoplanebitmap::$6 [840] if((byte) mode_twoplanebitmap::cx#1!=rangelast(0,$27)) goto mode_twoplanebitmap::@4
Simple Condition (bool~) mode_twoplanebitmap::$7 [843] if((byte) mode_twoplanebitmap::cy#1!=rangelast(0,$18)) goto mode_twoplanebitmap::@3
Simple Condition (bool~) mode_twoplanebitmap::$9 [851] if((byte~) mode_twoplanebitmap::$8==(byte) 0) goto mode_twoplanebitmap::@9
Simple Condition (bool~) mode_twoplanebitmap::$10 [859] if((byte) mode_twoplanebitmap::ax#1!=rangelast(0,$27)) goto mode_twoplanebitmap::@8
Simple Condition (bool~) mode_twoplanebitmap::$11 [862] if((byte) mode_twoplanebitmap::ay#1!=rangelast(0,$c7)) goto mode_twoplanebitmap::@7
Simple Condition (bool~) mode_twoplanebitmap::$12 [872] if((byte) mode_twoplanebitmap::bx#1!=rangelast(0,$27)) goto mode_twoplanebitmap::@15
Simple Condition (bool~) mode_twoplanebitmap::$13 [875] if((byte) mode_twoplanebitmap::by#1!=rangelast(0,$c7)) goto mode_twoplanebitmap::@14
Simple Condition (bool~) mode_sixsfred::$1 [902] if((byte) mode_sixsfred::i#1!=rangelast(0,$f)) goto mode_sixsfred::@1
Simple Condition (bool~) mode_sixsfred::$4 [915] if((byte) mode_sixsfred::cx#1!=rangelast(0,$27)) goto mode_sixsfred::@4
Simple Condition (bool~) mode_sixsfred::$5 [918] if((byte) mode_sixsfred::cy#1!=rangelast(0,$18)) goto mode_sixsfred::@3
Simple Condition (bool~) mode_sixsfred::$8 [930] if((byte) mode_sixsfred::ax#1!=rangelast(0,$27)) goto mode_sixsfred::@8
Simple Condition (bool~) mode_sixsfred::$9 [933] if((byte) mode_sixsfred::ay#1!=rangelast(0,$c7)) goto mode_sixsfred::@7
Simple Condition (bool~) mode_sixsfred::$10 [943] if((byte) mode_sixsfred::bx#1!=rangelast(0,$27)) goto mode_sixsfred::@12
Simple Condition (bool~) mode_sixsfred::$11 [946] if((byte) mode_sixsfred::by#1!=rangelast(0,$c7)) goto mode_sixsfred::@11
Simple Condition (bool~) mode_sixsfred2::$1 [973] if((byte) mode_sixsfred2::i#1!=rangelast(0,$f)) goto mode_sixsfred2::@1
Simple Condition (bool~) mode_sixsfred2::$6 [988] if((byte) mode_sixsfred2::cx#1!=rangelast(0,$27)) goto mode_sixsfred2::@4
Simple Condition (bool~) mode_sixsfred2::$7 [991] if((byte) mode_sixsfred2::cy#1!=rangelast(0,$18)) goto mode_sixsfred2::@3
Simple Condition (bool~) mode_sixsfred2::$10 [1003] if((byte) mode_sixsfred2::ax#1!=rangelast(0,$27)) goto mode_sixsfred2::@8
Simple Condition (bool~) mode_sixsfred2::$11 [1006] if((byte) mode_sixsfred2::ay#1!=rangelast(0,$c7)) goto mode_sixsfred2::@7
Simple Condition (bool~) mode_sixsfred2::$12 [1016] if((byte) mode_sixsfred2::bx#1!=rangelast(0,$27)) goto mode_sixsfred2::@12
Simple Condition (bool~) mode_sixsfred2::$13 [1019] if((byte) mode_sixsfred2::by#1!=rangelast(0,$c7)) goto mode_sixsfred2::@11
Simple Condition (bool~) mode_8bpppixelcell::$1 [1045] if((byte) mode_8bpppixelcell::i#1!=rangelast(0,$f)) goto mode_8bpppixelcell::@1
Simple Condition (bool~) mode_8bpppixelcell::$6 [1059] if((byte) mode_8bpppixelcell::ax#1!=rangelast(0,$27)) goto mode_8bpppixelcell::@4
Simple Condition (bool~) mode_8bpppixelcell::$7 [1062] if((byte) mode_8bpppixelcell::ay#1!=rangelast(0,$18)) goto mode_8bpppixelcell::@3
Simple Condition (bool~) mode_8bpppixelcell::$10 [1078] if((byte~) mode_8bpppixelcell::$8==(byte) 0) goto mode_8bpppixelcell::@10
Simple Condition (bool~) mode_8bpppixelcell::$12 [1086] if((byte) mode_8bpppixelcell::cp#1!=rangelast(0,7)) goto mode_8bpppixelcell::@9
Simple Condition (bool~) mode_8bpppixelcell::$13 [1089] if((byte) mode_8bpppixelcell::cr#1!=rangelast(0,7)) goto mode_8bpppixelcell::@8
Simple Condition (bool~) mode_8bpppixelcell::$14 [1092] if((byte) mode_8bpppixelcell::ch#1!=rangelast(0,$ff)) goto mode_8bpppixelcell::@7
Simple Condition (bool~) mode_8bppchunkybmm::$3 [1113] if((byte) mode_8bppchunkybmm::i#1!=rangelast(0,$f)) goto mode_8bppchunkybmm::@1
Simple Condition (bool~) mode_8bppchunkybmm::$5 [1124] if((byte*) mode_8bppchunkybmm::gfxb#3!=(word) $8000) goto mode_8bppchunkybmm::@5
Simple Condition (bool~) mode_8bppchunkybmm::$8 [1132] if((word) mode_8bppchunkybmm::x#1!=rangelast(0,$13f)) goto mode_8bppchunkybmm::@4
Simple Condition (bool~) mode_8bppchunkybmm::$9 [1139] if((byte) mode_8bppchunkybmm::y#1!=rangelast(0,$c7)) goto mode_8bppchunkybmm::@3
Successful SSA optimization Pass2ConditionalJumpSimplification
Constant (const byte*) print_screen#0 = (byte*) 1024
Constant (const byte) memset::c#0 = ' '
Constant (const word) memset::num#0 = $3e8
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::i#0 = 0
Constant (const byte*) menu::c#0 = COLS
Constant (const byte*) print_set_screen::screen#0 = menu::SCREEN
Constant (const byte*) print_str_lines::str#1 = MENU_TEXT
Constant (const byte) keyboard_key_pressed::key#0 = KEY_1
Constant (const byte) keyboard_key_pressed::key#1 = KEY_2
Constant (const byte) keyboard_key_pressed::key#2 = KEY_3
Constant (const byte) keyboard_key_pressed::key#3 = KEY_4
Constant (const byte) keyboard_key_pressed::key#4 = KEY_6
Constant (const byte) keyboard_key_pressed::key#5 = KEY_7
Constant (const byte) keyboard_key_pressed::key#6 = KEY_8
Constant (const byte) keyboard_key_pressed::key#7 = KEY_A
Constant (const byte) keyboard_key_pressed::key#8 = KEY_B
Constant (const byte) keyboard_key_pressed::key#9 = KEY_C
Constant (const byte) keyboard_key_pressed::key#10 = KEY_D
Constant (const byte) keyboard_key_pressed::key#11 = KEY_E
Constant (const byte) dtv_control#129 = 0
Constant (const byte) keyboard_key_pressed::key#12 = KEY_SPACE
Constant (const byte) keyboard_key_pressed::key#13 = KEY_L
Constant (const byte) keyboard_key_pressed::key#14 = KEY_H
Constant (const byte) keyboard_key_pressed::key#15 = KEY_O
Constant (const byte) keyboard_key_pressed::key#16 = KEY_B
Constant (const byte) keyboard_key_pressed::key#17 = KEY_U
Constant (const byte) keyboard_key_pressed::key#18 = KEY_C
Constant (const byte) keyboard_key_pressed::key#19 = KEY_0
Constant (const byte) mode_ctrl::ctrl#7 = 0
Constant (const byte) dtv_control#18 = 0
Constant (const byte) mode_stdchar::i#0 = 0
Constant (const byte*) mode_stdchar::col#0 = mode_stdchar::COLORS
Constant (const byte*) mode_stdchar::ch#0 = mode_stdchar::SCREEN
Constant (const byte) mode_stdchar::cy#0 = 0
Constant (const byte) mode_stdchar::cx#0 = 0
Constant (const byte) dtv_control#21 = 0
Constant (const byte) mode_ecmchar::i#0 = 0
Constant (const byte*) mode_ecmchar::col#0 = mode_ecmchar::COLORS
Constant (const byte*) mode_ecmchar::ch#0 = mode_ecmchar::SCREEN
Constant (const byte) mode_ecmchar::cy#0 = 0
Constant (const byte) mode_ecmchar::cx#0 = 0
Constant (const byte) dtv_control#24 = 0
Constant (const byte) mode_mcchar::i#0 = 0
Constant (const byte*) mode_mcchar::col#0 = mode_mcchar::COLORS
Constant (const byte*) mode_mcchar::ch#0 = mode_mcchar::SCREEN
Constant (const byte) mode_mcchar::cy#0 = 0
Constant (const byte) mode_mcchar::cx#0 = 0
Constant (const byte) dtv_control#27 = 0
Constant (const byte) mode_stdbitmap::i#0 = 0
Constant (const byte*) mode_stdbitmap::ch#0 = mode_stdbitmap::SCREEN
Constant (const byte) mode_stdbitmap::cy#0 = 0
Constant (const byte) mode_stdbitmap::cx#0 = 0
Constant (const byte*) bitmap_init::bitmap#0 = mode_stdbitmap::BITMAP
Constant (const byte) mode_stdbitmap::l#0 = 0
Constant (const byte) dtv_control#30 = DTV_HIGHCOLOR
Constant (const byte) mode_hicolstdchar::i#0 = 0
Constant (const byte*) mode_hicolstdchar::col#0 = mode_hicolstdchar::COLORS
Constant (const byte*) mode_hicolstdchar::ch#0 = mode_hicolstdchar::SCREEN
Constant (const byte) mode_hicolstdchar::cy#0 = 0
Constant (const byte) mode_hicolstdchar::cx#0 = 0
Constant (const byte) dtv_control#33 = DTV_HIGHCOLOR
Constant (const byte) mode_hicolecmchar::i#0 = 0
Constant (const byte*) mode_hicolecmchar::col#0 = mode_hicolecmchar::COLORS
Constant (const byte*) mode_hicolecmchar::ch#0 = mode_hicolecmchar::SCREEN
Constant (const byte) mode_hicolecmchar::cy#0 = 0
Constant (const byte) mode_hicolecmchar::cx#0 = 0
Constant (const byte) dtv_control#36 = DTV_HIGHCOLOR
Constant (const byte) mode_hicolmcchar::i#0 = 0
Constant (const byte*) mode_hicolmcchar::col#0 = mode_hicolmcchar::COLORS
Constant (const byte*) mode_hicolmcchar::ch#0 = mode_hicolmcchar::SCREEN
Constant (const byte) mode_hicolmcchar::cy#0 = 0
Constant (const byte) mode_hicolmcchar::cx#0 = 0
Constant (const byte) dtv_control#39 = DTV_HIGHCOLOR|DTV_LINEAR
Constant (const byte) mode_twoplanebitmap::i#0 = 0
Constant (const byte*) mode_twoplanebitmap::col#0 = mode_twoplanebitmap::COLORS
Constant (const byte) mode_twoplanebitmap::cy#0 = 0
Constant (const byte) mode_twoplanebitmap::cx#0 = 0
Constant (const byte*) mode_twoplanebitmap::gfxa#0 = mode_twoplanebitmap::PLANEA
Constant (const byte) mode_twoplanebitmap::ay#0 = 0
Constant (const byte) mode_twoplanebitmap::ax#0 = 0
Constant (const byte*) mode_twoplanebitmap::gfxb#0 = mode_twoplanebitmap::PLANEB
Constant (const byte) mode_twoplanebitmap::by#0 = 0
Constant (const byte) mode_twoplanebitmap::bx#0 = 0
Constant (const byte) dtv_control#42 = DTV_HIGHCOLOR|DTV_LINEAR
Constant (const byte) mode_sixsfred::i#0 = 0
Constant (const byte*) mode_sixsfred::col#0 = mode_sixsfred::COLORS
Constant (const byte) mode_sixsfred::cy#0 = 0
Constant (const byte) mode_sixsfred::cx#0 = 0
Constant (const byte*) mode_sixsfred::gfxa#0 = mode_sixsfred::PLANEA
Constant (const byte) mode_sixsfred::ay#0 = 0
Constant (const byte) mode_sixsfred::ax#0 = 0
Constant (const byte*) mode_sixsfred::gfxb#0 = mode_sixsfred::PLANEB
Constant (const byte) mode_sixsfred::by#0 = 0
Constant (const byte) mode_sixsfred::bx#0 = 0
Constant (const byte) dtv_control#45 = DTV_LINEAR
Constant (const byte) mode_sixsfred2::i#0 = 0
Constant (const byte*) mode_sixsfred2::col#0 = mode_sixsfred2::COLORS
Constant (const byte) mode_sixsfred2::cy#0 = 0
Constant (const byte) mode_sixsfred2::cx#0 = 0
Constant (const byte*) mode_sixsfred2::gfxa#0 = mode_sixsfred2::PLANEA
Constant (const byte) mode_sixsfred2::ay#0 = 0
Constant (const byte) mode_sixsfred2::ax#0 = 0
Constant (const byte*) mode_sixsfred2::gfxb#0 = mode_sixsfred2::PLANEB
Constant (const byte) mode_sixsfred2::by#0 = 0
Constant (const byte) mode_sixsfred2::bx#0 = 0
Constant (const byte) dtv_control#48 = DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY
Constant (const byte) mode_8bpppixelcell::i#0 = 0
Constant (const byte*) mode_8bpppixelcell::gfxa#0 = mode_8bpppixelcell::PLANEA
Constant (const byte) mode_8bpppixelcell::ay#0 = 0
Constant (const byte) mode_8bpppixelcell::ax#0 = 0
Constant (const byte*) mode_8bpppixelcell::gfxb#0 = mode_8bpppixelcell::PLANEB
Constant (const byte*) mode_8bpppixelcell::chargen#0 = mode_8bpppixelcell::CHARGEN
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 byte) dtv_control#51 = DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY|DTV_COLORRAM_OFF
Constant (const byte) mode_8bppchunkybmm::i#0 = 0
Constant (const byte) mode_8bppchunkybmm::gfxbCpuBank#0 = (byte)mode_8bppchunkybmm::PLANEB/$4000
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*) print_screen#1 = print_set_screen::screen#0
Constant (const byte) dtvSetCpuBankSegment1::cpuBankIdx#0 = mode_8bppchunkybmm::gfxbCpuBank#0
Successful SSA optimization Pass2ConstantIdentification
Constant (const void*) memset::str#0 = (void*)print_screen#1
Successful SSA optimization Pass2ConstantIdentification
Constant (const byte*) memset::$4 = (byte*)memset::str#0
Constant (const byte*) memset::dst#0 = (byte*)memset::str#0
Constant (const void*) memset::return#2 = memset::str#0
Successful SSA optimization Pass2ConstantIdentification
if() condition always false - eliminating [6] if((const word) memset::num#0<=(byte) 0) goto memset::@1
if() condition always true - replacing block destination [273] if(true) goto main::@2
Removing PHI-reference to removed block (menu::@6) in block menu::@return
if() condition always true - replacing block destination [310] if(true) goto menu::@7
if() condition always true - replacing block destination [412] if(true) goto mode_ctrl::@2
Successful SSA optimization Pass2ConstantIfs
Resolved ranged next value [82] bitmap_init::x#1 ← ++ bitmap_init::x#2 to ++
Resolved ranged comparison value [84] if(bitmap_init::x#1!=rangelast(0,$ff)) goto bitmap_init::@1 to (number) 0
Resolved ranged next value [99] bitmap_init::y#1 ← ++ bitmap_init::y#2 to ++
Resolved ranged comparison value [101] if(bitmap_init::y#1!=rangelast(0,$ff)) goto bitmap_init::@5 to (number) 0
Resolved ranged next value [112] bitmap_clear::x#1 ← ++ bitmap_clear::x#2 to ++
Resolved ranged comparison value [114] if(bitmap_clear::x#1!=rangelast(0,$c7)) goto bitmap_clear::@2 to (number) $c8
Resolved ranged next value [115] bitmap_clear::y#1 ← ++ bitmap_clear::y#4 to ++
Resolved ranged comparison value [117] if(bitmap_clear::y#1!=rangelast(0,$27)) goto bitmap_clear::@1 to (number) $28
Resolved ranged next value [290] menu::i#1 ← ++ menu::i#2 to ++
Resolved ranged comparison value [292] if(menu::i#1!=rangelast(0,$f)) goto menu::@1 to (number) $10
Resolved ranged next value [499] mode_stdchar::i#1 ← ++ mode_stdchar::i#2 to ++
Resolved ranged comparison value [501] if(mode_stdchar::i#1!=rangelast(0,$f)) goto mode_stdchar::@1 to (number) $10
Resolved ranged next value [520] mode_stdchar::cx#1 ← ++ mode_stdchar::cx#2 to ++
Resolved ranged comparison value [522] if(mode_stdchar::cx#1!=rangelast(0,$27)) goto mode_stdchar::@4 to (number) $28
Resolved ranged next value [523] mode_stdchar::cy#1 ← ++ mode_stdchar::cy#4 to ++
Resolved ranged comparison value [525] if(mode_stdchar::cy#1!=rangelast(0,$18)) goto mode_stdchar::@3 to (number) $19
Resolved ranged next value [542] mode_ecmchar::i#1 ← ++ mode_ecmchar::i#2 to ++
Resolved ranged comparison value [544] if(mode_ecmchar::i#1!=rangelast(0,$f)) goto mode_ecmchar::@1 to (number) $10
Resolved ranged next value [566] mode_ecmchar::cx#1 ← ++ mode_ecmchar::cx#2 to ++
Resolved ranged comparison value [568] if(mode_ecmchar::cx#1!=rangelast(0,$27)) goto mode_ecmchar::@4 to (number) $28
Resolved ranged next value [569] mode_ecmchar::cy#1 ← ++ mode_ecmchar::cy#4 to ++
Resolved ranged comparison value [571] if(mode_ecmchar::cy#1!=rangelast(0,$18)) goto mode_ecmchar::@3 to (number) $19
Resolved ranged next value [588] mode_mcchar::i#1 ← ++ mode_mcchar::i#2 to ++
Resolved ranged comparison value [590] if(mode_mcchar::i#1!=rangelast(0,$f)) goto mode_mcchar::@1 to (number) $10
Resolved ranged next value [611] mode_mcchar::cx#1 ← ++ mode_mcchar::cx#2 to ++
Resolved ranged comparison value [613] if(mode_mcchar::cx#1!=rangelast(0,$27)) goto mode_mcchar::@4 to (number) $28
Resolved ranged next value [614] mode_mcchar::cy#1 ← ++ mode_mcchar::cy#4 to ++
Resolved ranged comparison value [616] if(mode_mcchar::cy#1!=rangelast(0,$18)) goto mode_mcchar::@3 to (number) $19
Resolved ranged next value [631] mode_stdbitmap::i#1 ← ++ mode_stdbitmap::i#2 to ++
Resolved ranged comparison value [633] if(mode_stdbitmap::i#1!=rangelast(0,$f)) goto mode_stdbitmap::@1 to (number) $10
Resolved ranged next value [648] mode_stdbitmap::cx#1 ← ++ mode_stdbitmap::cx#2 to ++
Resolved ranged comparison value [650] if(mode_stdbitmap::cx#1!=rangelast(0,$27)) goto mode_stdbitmap::@4 to (number) $28
Resolved ranged next value [651] mode_stdbitmap::cy#1 ← ++ mode_stdbitmap::cy#4 to ++
Resolved ranged comparison value [653] if(mode_stdbitmap::cy#1!=rangelast(0,$18)) goto mode_stdbitmap::@3 to (number) $19
Resolved ranged next value [685] mode_hicolstdchar::i#1 ← ++ mode_hicolstdchar::i#2 to ++
Resolved ranged comparison value [687] if(mode_hicolstdchar::i#1!=rangelast(0,$f)) goto mode_hicolstdchar::@1 to (number) $10
Resolved ranged next value [704] mode_hicolstdchar::cx#1 ← ++ mode_hicolstdchar::cx#2 to ++
Resolved ranged comparison value [706] if(mode_hicolstdchar::cx#1!=rangelast(0,$27)) goto mode_hicolstdchar::@4 to (number) $28
Resolved ranged next value [707] mode_hicolstdchar::cy#1 ← ++ mode_hicolstdchar::cy#4 to ++
Resolved ranged comparison value [709] if(mode_hicolstdchar::cy#1!=rangelast(0,$18)) goto mode_hicolstdchar::@3 to (number) $19
Resolved ranged next value [726] mode_hicolecmchar::i#1 ← ++ mode_hicolecmchar::i#2 to ++
Resolved ranged comparison value [728] if(mode_hicolecmchar::i#1!=rangelast(0,$f)) goto mode_hicolecmchar::@1 to (number) $10
Resolved ranged next value [748] mode_hicolecmchar::cx#1 ← ++ mode_hicolecmchar::cx#2 to ++
Resolved ranged comparison value [750] if(mode_hicolecmchar::cx#1!=rangelast(0,$27)) goto mode_hicolecmchar::@4 to (number) $28
Resolved ranged next value [751] mode_hicolecmchar::cy#1 ← ++ mode_hicolecmchar::cy#4 to ++
Resolved ranged comparison value [753] if(mode_hicolecmchar::cy#1!=rangelast(0,$18)) goto mode_hicolecmchar::@3 to (number) $19
Resolved ranged next value [770] mode_hicolmcchar::i#1 ← ++ mode_hicolmcchar::i#2 to ++
Resolved ranged comparison value [772] if(mode_hicolmcchar::i#1!=rangelast(0,$f)) goto mode_hicolmcchar::@1 to (number) $10
Resolved ranged next value [791] mode_hicolmcchar::cx#1 ← ++ mode_hicolmcchar::cx#2 to ++
Resolved ranged comparison value [793] if(mode_hicolmcchar::cx#1!=rangelast(0,$27)) goto mode_hicolmcchar::@4 to (number) $28
Resolved ranged next value [794] mode_hicolmcchar::cy#1 ← ++ mode_hicolmcchar::cy#4 to ++
Resolved ranged comparison value [796] if(mode_hicolmcchar::cy#1!=rangelast(0,$18)) goto mode_hicolmcchar::@3 to (number) $19
Resolved ranged next value [821] mode_twoplanebitmap::i#1 ← ++ mode_twoplanebitmap::i#2 to ++
Resolved ranged comparison value [823] if(mode_twoplanebitmap::i#1!=rangelast(0,$f)) goto mode_twoplanebitmap::@1 to (number) $10
Resolved ranged next value [838] mode_twoplanebitmap::cx#1 ← ++ mode_twoplanebitmap::cx#2 to ++
Resolved ranged comparison value [840] if(mode_twoplanebitmap::cx#1!=rangelast(0,$27)) goto mode_twoplanebitmap::@4 to (number) $28
Resolved ranged next value [841] mode_twoplanebitmap::cy#1 ← ++ mode_twoplanebitmap::cy#4 to ++
Resolved ranged comparison value [843] if(mode_twoplanebitmap::cy#1!=rangelast(0,$18)) goto mode_twoplanebitmap::@3 to (number) $19
Resolved ranged next value [857] mode_twoplanebitmap::ax#1 ← ++ mode_twoplanebitmap::ax#2 to ++
Resolved ranged comparison value [859] if(mode_twoplanebitmap::ax#1!=rangelast(0,$27)) goto mode_twoplanebitmap::@8 to (number) $28
Resolved ranged next value [860] mode_twoplanebitmap::ay#1 ← ++ mode_twoplanebitmap::ay#5 to ++
Resolved ranged comparison value [862] if(mode_twoplanebitmap::ay#1!=rangelast(0,$c7)) goto mode_twoplanebitmap::@7 to (number) $c8
Resolved ranged next value [870] mode_twoplanebitmap::bx#1 ← ++ mode_twoplanebitmap::bx#2 to ++
Resolved ranged comparison value [872] if(mode_twoplanebitmap::bx#1!=rangelast(0,$27)) goto mode_twoplanebitmap::@15 to (number) $28
Resolved ranged next value [873] mode_twoplanebitmap::by#1 ← ++ mode_twoplanebitmap::by#4 to ++
Resolved ranged comparison value [875] if(mode_twoplanebitmap::by#1!=rangelast(0,$c7)) goto mode_twoplanebitmap::@14 to (number) $c8
Resolved ranged next value [900] mode_sixsfred::i#1 ← ++ mode_sixsfred::i#2 to ++
Resolved ranged comparison value [902] if(mode_sixsfred::i#1!=rangelast(0,$f)) goto mode_sixsfred::@1 to (number) $10
Resolved ranged next value [913] mode_sixsfred::cx#1 ← ++ mode_sixsfred::cx#2 to ++
Resolved ranged comparison value [915] if(mode_sixsfred::cx#1!=rangelast(0,$27)) goto mode_sixsfred::@4 to (number) $28
Resolved ranged next value [916] mode_sixsfred::cy#1 ← ++ mode_sixsfred::cy#4 to ++
Resolved ranged comparison value [918] if(mode_sixsfred::cy#1!=rangelast(0,$18)) goto mode_sixsfred::@3 to (number) $19
Resolved ranged next value [928] mode_sixsfred::ax#1 ← ++ mode_sixsfred::ax#2 to ++
Resolved ranged comparison value [930] if(mode_sixsfred::ax#1!=rangelast(0,$27)) goto mode_sixsfred::@8 to (number) $28
Resolved ranged next value [931] mode_sixsfred::ay#1 ← ++ mode_sixsfred::ay#4 to ++
Resolved ranged comparison value [933] if(mode_sixsfred::ay#1!=rangelast(0,$c7)) goto mode_sixsfred::@7 to (number) $c8
Resolved ranged next value [941] mode_sixsfred::bx#1 ← ++ mode_sixsfred::bx#2 to ++
Resolved ranged comparison value [943] if(mode_sixsfred::bx#1!=rangelast(0,$27)) goto mode_sixsfred::@12 to (number) $28
Resolved ranged next value [944] mode_sixsfred::by#1 ← ++ mode_sixsfred::by#4 to ++
Resolved ranged comparison value [946] if(mode_sixsfred::by#1!=rangelast(0,$c7)) goto mode_sixsfred::@11 to (number) $c8
Resolved ranged next value [971] mode_sixsfred2::i#1 ← ++ mode_sixsfred2::i#2 to ++
Resolved ranged comparison value [973] if(mode_sixsfred2::i#1!=rangelast(0,$f)) goto mode_sixsfred2::@1 to (number) $10
Resolved ranged next value [986] mode_sixsfred2::cx#1 ← ++ mode_sixsfred2::cx#2 to ++
Resolved ranged comparison value [988] if(mode_sixsfred2::cx#1!=rangelast(0,$27)) goto mode_sixsfred2::@4 to (number) $28
Resolved ranged next value [989] mode_sixsfred2::cy#1 ← ++ mode_sixsfred2::cy#4 to ++
Resolved ranged comparison value [991] if(mode_sixsfred2::cy#1!=rangelast(0,$18)) goto mode_sixsfred2::@3 to (number) $19
Resolved ranged next value [1001] mode_sixsfred2::ax#1 ← ++ mode_sixsfred2::ax#2 to ++
Resolved ranged comparison value [1003] if(mode_sixsfred2::ax#1!=rangelast(0,$27)) goto mode_sixsfred2::@8 to (number) $28
Resolved ranged next value [1004] mode_sixsfred2::ay#1 ← ++ mode_sixsfred2::ay#4 to ++
Resolved ranged comparison value [1006] if(mode_sixsfred2::ay#1!=rangelast(0,$c7)) goto mode_sixsfred2::@7 to (number) $c8
Resolved ranged next value [1014] mode_sixsfred2::bx#1 ← ++ mode_sixsfred2::bx#2 to ++
Resolved ranged comparison value [1016] if(mode_sixsfred2::bx#1!=rangelast(0,$27)) goto mode_sixsfred2::@12 to (number) $28
Resolved ranged next value [1017] mode_sixsfred2::by#1 ← ++ mode_sixsfred2::by#4 to ++
Resolved ranged comparison value [1019] if(mode_sixsfred2::by#1!=rangelast(0,$c7)) goto mode_sixsfred2::@11 to (number) $c8
Resolved ranged next value [1043] mode_8bpppixelcell::i#1 ← ++ mode_8bpppixelcell::i#2 to ++
Resolved ranged comparison value [1045] if(mode_8bpppixelcell::i#1!=rangelast(0,$f)) goto mode_8bpppixelcell::@1 to (number) $10
Resolved ranged next value [1057] mode_8bpppixelcell::ax#1 ← ++ mode_8bpppixelcell::ax#2 to ++
Resolved ranged comparison value [1059] if(mode_8bpppixelcell::ax#1!=rangelast(0,$27)) goto mode_8bpppixelcell::@4 to (number) $28
Resolved ranged next value [1060] mode_8bpppixelcell::ay#1 ← ++ mode_8bpppixelcell::ay#4 to ++
Resolved ranged comparison value [1062] if(mode_8bpppixelcell::ay#1!=rangelast(0,$18)) goto mode_8bpppixelcell::@3 to (number) $19
Resolved ranged next value [1084] mode_8bpppixelcell::cp#1 ← ++ mode_8bpppixelcell::cp#2 to ++
Resolved ranged comparison value [1086] if(mode_8bpppixelcell::cp#1!=rangelast(0,7)) goto mode_8bpppixelcell::@9 to (number) 8
Resolved ranged next value [1087] mode_8bpppixelcell::cr#1 ← ++ mode_8bpppixelcell::cr#6 to ++
Resolved ranged comparison value [1089] if(mode_8bpppixelcell::cr#1!=rangelast(0,7)) goto mode_8bpppixelcell::@8 to (number) 8
Resolved ranged next value [1090] mode_8bpppixelcell::ch#1 ← ++ mode_8bpppixelcell::ch#8 to ++
Resolved ranged comparison value [1092] if(mode_8bpppixelcell::ch#1!=rangelast(0,$ff)) goto mode_8bpppixelcell::@7 to (number) 0
Resolved ranged next value [1111] mode_8bppchunkybmm::i#1 ← ++ mode_8bppchunkybmm::i#2 to ++
Resolved ranged comparison value [1113] if(mode_8bppchunkybmm::i#1!=rangelast(0,$f)) goto mode_8bppchunkybmm::@1 to (number) $10
Resolved ranged next value [1130] mode_8bppchunkybmm::x#1 ← ++ mode_8bppchunkybmm::x#2 to ++
Resolved ranged comparison value [1132] if(mode_8bppchunkybmm::x#1!=rangelast(0,$13f)) goto mode_8bppchunkybmm::@4 to (number) $140
Resolved ranged next value [1137] mode_8bppchunkybmm::y#1 ← ++ mode_8bppchunkybmm::y#6 to ++
Resolved ranged comparison value [1139] if(mode_8bppchunkybmm::y#1!=rangelast(0,$c7)) goto mode_8bppchunkybmm::@3 to (number) $c8
Simplifying constant evaluating to zero (byte)(dword)(const nomodify byte*) menu::CHARSET/(dword) $10000 in [278] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte)(dword)(const nomodify byte*) menu::CHARSET/(dword) $10000
Simplifying constant evaluating to zero >(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400 in [280] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400
Simplifying constant evaluating to zero (word)(const nomodify byte*) menu::SCREEN&(word) $3fff/(byte) $40 in [286] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) menu::SCREEN&(word) $3fff/(byte) $40|(word)(const nomodify byte*) menu::CHARSET&(word) $3fff/(word) $400
Simplifying constant evaluating to zero (byte)(dword)(const nomodify byte*) mode_stdchar::CHARSET/(dword) $10000 in [486] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte)(dword)(const nomodify byte*) mode_stdchar::CHARSET/(dword) $10000
Simplifying constant evaluating to zero >(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400 in [488] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400
Simplifying constant evaluating to zero (word)(const nomodify byte*) mode_stdchar::SCREEN&(word) $3fff/(byte) $40 in [495] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_stdchar::SCREEN&(word) $3fff/(byte) $40|(word)(const nomodify byte*) mode_stdchar::CHARSET&(word) $3fff/(word) $400
Simplifying constant evaluating to zero (byte)(dword)(const nomodify byte*) mode_ecmchar::CHARSET/(dword) $10000 in [529] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte)(dword)(const nomodify byte*) mode_ecmchar::CHARSET/(dword) $10000
Simplifying constant evaluating to zero >(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400 in [531] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400
Simplifying constant evaluating to zero (word)(const nomodify byte*) mode_ecmchar::SCREEN&(word) $3fff/(byte) $40 in [538] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_ecmchar::SCREEN&(word) $3fff/(byte) $40|(word)(const nomodify byte*) mode_ecmchar::CHARSET&(word) $3fff/(word) $400
Simplifying constant evaluating to zero (byte)(dword)(const nomodify byte*) mode_mcchar::CHARSET/(dword) $10000 in [575] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte)(dword)(const nomodify byte*) mode_mcchar::CHARSET/(dword) $10000
Simplifying constant evaluating to zero >(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400 in [577] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400
Simplifying constant evaluating to zero (word)(const nomodify byte*) mode_mcchar::SCREEN&(word) $3fff/(byte) $40 in [584] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_mcchar::SCREEN&(word) $3fff/(byte) $40|(word)(const nomodify byte*) mode_mcchar::CHARSET&(word) $3fff/(word) $400
Simplifying constant evaluating to zero (byte)(dword)(const nomodify byte*) mode_stdbitmap::BITMAP/(dword) $10000 in [620] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte)(dword)(const nomodify byte*) mode_stdbitmap::BITMAP/(dword) $10000
Simplifying constant evaluating to zero (word)(const nomodify byte*) mode_stdbitmap::SCREEN&(word) $3fff/(byte) $40 in [627] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_stdbitmap::SCREEN&(word) $3fff/(byte) $40|(word)(const nomodify byte*) mode_stdbitmap::BITMAP&(word) $3fff/(word) $400
Simplifying constant evaluating to zero (byte)(dword)(const nomodify byte*) mode_hicolstdchar::CHARSET/(dword) $10000 in [672] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte)(dword)(const nomodify byte*) mode_hicolstdchar::CHARSET/(dword) $10000
Simplifying constant evaluating to zero >(word)(const nomodify byte*) mode_hicolstdchar::COLORS/(word) $400 in [674] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(word)(const nomodify byte*) mode_hicolstdchar::COLORS/(word) $400
Simplifying constant evaluating to zero (word)(const nomodify byte*) mode_hicolstdchar::SCREEN&(word) $3fff/(byte) $40 in [681] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolstdchar::SCREEN&(word) $3fff/(byte) $40|(word)(const nomodify byte*) mode_hicolstdchar::CHARSET&(word) $3fff/(word) $400
Simplifying constant evaluating to zero (byte)(dword)(const nomodify byte*) mode_hicolecmchar::CHARSET/(dword) $10000 in [713] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte)(dword)(const nomodify byte*) mode_hicolecmchar::CHARSET/(dword) $10000
Simplifying constant evaluating to zero >(word)(const nomodify byte*) mode_hicolecmchar::COLORS/(word) $400 in [715] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(word)(const nomodify byte*) mode_hicolecmchar::COLORS/(word) $400
Simplifying constant evaluating to zero (word)(const nomodify byte*) mode_hicolecmchar::SCREEN&(word) $3fff/(byte) $40 in [722] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolecmchar::SCREEN&(word) $3fff/(byte) $40|(word)(const nomodify byte*) mode_hicolecmchar::CHARSET&(word) $3fff/(word) $400
Simplifying constant evaluating to zero (byte)(dword)(const nomodify byte*) mode_hicolmcchar::CHARSET/(dword) $10000 in [757] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte)(dword)(const nomodify byte*) mode_hicolmcchar::CHARSET/(dword) $10000
Simplifying constant evaluating to zero >(word)(const nomodify byte*) mode_hicolmcchar::COLORS/(word) $400 in [759] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(word)(const nomodify byte*) mode_hicolmcchar::COLORS/(word) $400
Simplifying constant evaluating to zero (word)(const nomodify byte*) mode_hicolmcchar::SCREEN&(word) $3fff/(byte) $40 in [766] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolmcchar::SCREEN&(word) $3fff/(byte) $40|(word)(const nomodify byte*) mode_hicolmcchar::CHARSET&(word) $3fff/(word) $400
Simplifying constant evaluating to zero <(const nomodify byte*) mode_twoplanebitmap::PLANEA in [804] *((const nomodify byte*) DTV_PLANEA_START_LO) ← <(const nomodify byte*) mode_twoplanebitmap::PLANEA
Simplifying constant evaluating to zero <(const nomodify byte*) mode_twoplanebitmap::PLANEB in [810] *((const nomodify byte*) DTV_PLANEB_START_LO) ← <(const nomodify byte*) mode_twoplanebitmap::PLANEB
Simplifying constant evaluating to zero >(const nomodify byte*) mode_twoplanebitmap::COLORS/(word) $400 in [817] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(const nomodify byte*) mode_twoplanebitmap::COLORS/(word) $400
Simplifying constant evaluating to zero <(const nomodify byte*) mode_sixsfred::PLANEA in [883] *((const nomodify byte*) DTV_PLANEA_START_LO) ← <(const nomodify byte*) mode_sixsfred::PLANEA
Simplifying constant evaluating to zero <(const nomodify byte*) mode_sixsfred::PLANEB in [889] *((const nomodify byte*) DTV_PLANEB_START_LO) ← <(const nomodify byte*) mode_sixsfred::PLANEB
Simplifying constant evaluating to zero >(const nomodify byte*) mode_sixsfred::COLORS/(word) $400 in [896] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(const nomodify byte*) mode_sixsfred::COLORS/(word) $400
Simplifying constant evaluating to zero <(const nomodify byte*) mode_sixsfred2::PLANEA in [954] *((const nomodify byte*) DTV_PLANEA_START_LO) ← <(const nomodify byte*) mode_sixsfred2::PLANEA
Simplifying constant evaluating to zero <(const nomodify byte*) mode_sixsfred2::PLANEB in [960] *((const nomodify byte*) DTV_PLANEB_START_LO) ← <(const nomodify byte*) mode_sixsfred2::PLANEB
Simplifying constant evaluating to zero >(const nomodify byte*) mode_sixsfred2::COLORS/(word) $400 in [967] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← >(const nomodify byte*) mode_sixsfred2::COLORS/(word) $400
Simplifying constant evaluating to zero <(const nomodify byte*) mode_8bpppixelcell::PLANEA in [1027] *((const nomodify byte*) DTV_PLANEA_START_LO) ← <(const nomodify byte*) mode_8bpppixelcell::PLANEA
Simplifying constant evaluating to zero <(const nomodify byte*) mode_8bpppixelcell::PLANEB in [1033] *((const nomodify byte*) DTV_PLANEB_START_LO) ← <(const nomodify byte*) mode_8bpppixelcell::PLANEB
Simplifying constant evaluating to zero <<(const nomodify dword) mode_8bppchunkybmm::PLANEB in [1101] *((const nomodify byte*) DTV_PLANEB_START_LO) ← <<(const nomodify dword) mode_8bppchunkybmm::PLANEB
Simplifying constant evaluating to zero ><(const nomodify dword) mode_8bppchunkybmm::PLANEB in [1102] *((const nomodify byte*) DTV_PLANEB_START_MI) ← ><(const nomodify dword) mode_8bppchunkybmm::PLANEB
Successful SSA optimization PassNSimplifyConstantZero
Simplifying expression containing zero (byte*)CIA1 in [57] *((byte*)(const nomodify struct MOS6526_CIA*) CIA1+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← *((const byte*) keyboard_matrix_row_bitmask + (byte) keyboard_matrix_read::rowid#0)
Simplifying expression containing zero bitmap_plot_xhi in [104] (word~) bitmap_clear::$3 ← *((const to_nomodify byte*) bitmap_plot_xhi + (byte) 0) w= *((const to_nomodify byte*) bitmap_plot_xlo + (byte) 0)
Simplifying expression containing zero bitmap_plot_xlo in [104] (word~) bitmap_clear::$3 ← *((const to_nomodify byte*) bitmap_plot_xhi) w= *((const to_nomodify byte*) bitmap_plot_xlo + (byte) 0)
Simplifying expression containing zero (byte*)CIA2 in [283] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (byte) 3^(byte)(word)(const nomodify byte*) menu::CHARSET/(word) $4000
Simplifying expression containing zero (word)menu::CHARSET&$3fff/$400 in [286] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word) 0|(word)(const nomodify byte*) menu::CHARSET&(word) $3fff/(word) $400
Simplifying expression containing zero (byte*)CIA2 in [492] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_stdchar::CHARSET/(word) $4000
Simplifying expression containing zero (word)mode_stdchar::CHARSET&$3fff/$400 in [495] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word) 0|(word)(const nomodify byte*) mode_stdchar::CHARSET&(word) $3fff/(word) $400
Simplifying expression containing zero (byte*)CIA2 in [535] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_ecmchar::CHARSET/(word) $4000
Simplifying expression containing zero (word)mode_ecmchar::CHARSET&$3fff/$400 in [538] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word) 0|(word)(const nomodify byte*) mode_ecmchar::CHARSET&(word) $3fff/(word) $400
Simplifying expression containing zero (byte*)CIA2 in [581] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_mcchar::CHARSET/(word) $4000
Simplifying expression containing zero (word)mode_mcchar::CHARSET&$3fff/$400 in [584] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word) 0|(word)(const nomodify byte*) mode_mcchar::CHARSET&(word) $3fff/(word) $400
Simplifying expression containing zero (byte*)CIA2 in [624] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_stdbitmap::BITMAP/(word) $4000
Simplifying expression containing zero (word)mode_stdbitmap::BITMAP&$3fff/$400 in [627] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word) 0|(word)(const nomodify byte*) mode_stdbitmap::BITMAP&(word) $3fff/(word) $400
Simplifying expression containing zero (byte*)CIA2 in [678] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_hicolstdchar::CHARSET/(word) $4000
Simplifying expression containing zero (word)mode_hicolstdchar::CHARSET&$3fff/$400 in [681] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word) 0|(word)(const nomodify byte*) mode_hicolstdchar::CHARSET&(word) $3fff/(word) $400
Simplifying expression containing zero (byte*)CIA2 in [719] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_hicolecmchar::CHARSET/(word) $4000
Simplifying expression containing zero (word)mode_hicolecmchar::CHARSET&$3fff/$400 in [722] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word) 0|(word)(const nomodify byte*) mode_hicolecmchar::CHARSET&(word) $3fff/(word) $400
Simplifying expression containing zero (byte*)CIA2 in [763] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_hicolmcchar::CHARSET/(word) $4000
Simplifying expression containing zero (word)mode_hicolmcchar::CHARSET&$3fff/$400 in [766] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word) 0|(word)(const nomodify byte*) mode_hicolmcchar::CHARSET&(word) $3fff/(word) $400
Successful SSA optimization PassNSimplifyExpressionWithZero
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#13
Eliminating unused variable - keeping the phi block (byte) dtv_control#1
Eliminating unused constant (const void*) memset::return#2
Eliminating unused constant (const byte) bitmap_line::xd#0
Eliminating unused constant (const byte) bitmap_line::yd#0
Eliminating unused constant (const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A
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::@15
Adding number conversion cast (unumber) $c8 in if((byte) mode_twoplanebitmap::by#1!=(number) $c8) goto mode_twoplanebitmap::@14
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 bitmap_init::$10 = bitmap_init::$6
Successful SSA optimization Pass2AliasElimination
Constant right-side identified [4] (byte*) memset::end#0 ← (const byte*) memset::$4 + (const word) memset::num#0
Constant right-side identified [47] (byte~) bitmap_init::$1 ← > (const byte*) bitmap_init::bitmap#0
Constant right-side identified [827] (byte) mode_8bppchunkybmm::gfxbCpuBank#1 ← ++ (const byte) mode_8bppchunkybmm::gfxbCpuBank#0
Successful SSA optimization Pass2ConstantRValueConsolidation
Constant (const byte*) memset::end#0 = memset::$4+memset::num#0
Constant (const byte) bitmap_init::$1 = >bitmap_init::bitmap#0
Constant (const byte) mode_8bppchunkybmm::gfxbCpuBank#1 = ++mode_8bppchunkybmm::gfxbCpuBank#0
Successful SSA optimization Pass2ConstantIdentification
Inlining Noop Cast [67] (byte*) bitmap_clear::bitmap#0 ← (byte*)(word~) bitmap_clear::$3 keeping bitmap_clear::bitmap#0
Inlining Noop Cast [81] (byte*) bitmap_plot::plotter#0 ← (byte*)(word~) bitmap_plot::$0 keeping bitmap_plot::plotter#0
Successful SSA optimization Pass2NopCastInlining
Rewriting multiplication to use shift [371] (byte~) mode_stdchar::$5 ← (byte~) mode_stdchar::$4 * (byte) $10
Rewriting multiplication to use shift [407] (byte~) mode_ecmchar::$5 ← (byte~) mode_ecmchar::$4 * (byte) $10
Rewriting multiplication to use shift [442] (byte~) mode_mcchar::$5 ← (byte~) mode_mcchar::$4 * (byte) $10
Rewriting multiplication to use shift [471] (byte~) mode_stdbitmap::$7 ← (byte) mode_stdbitmap::col#0 * (byte) $10
Rewriting multiplication to use shift [511] (byte~) mode_hicolstdchar::$3 ← (byte~) mode_hicolstdchar::$2 * (byte) $10
Rewriting multiplication to use shift [545] (byte~) mode_hicolecmchar::$3 ← (byte~) mode_hicolecmchar::$2 * (byte) $10
Rewriting multiplication to use shift [578] (byte~) mode_hicolmcchar::$3 ← (byte~) mode_hicolmcchar::$2 * (byte) $10
Rewriting multiplication to use shift [618] (byte~) mode_twoplanebitmap::$3 ← (byte~) mode_twoplanebitmap::$2 * (byte) $10
Rewriting division to use shift [684] (byte~) mode_sixsfred::$6 ← (byte) mode_sixsfred::ay#4 / (byte) 2
Rewriting multiplication to use shift [727] (byte~) mode_sixsfred2::$3 ← (byte~) mode_sixsfred2::$2 * (byte) $10
Rewriting division to use shift [738] (byte~) mode_sixsfred2::$8 ← (byte) mode_sixsfred2::ay#4 / (byte) 2
Rewriting multiplication to use shift [779] (byte~) mode_8bpppixelcell::$3 ← (byte~) mode_8bpppixelcell::$2 * (byte) $10
Rewriting multiplication to use shift [799] (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::col#0
Inlining constant with var siblings (const byte*) mode_stdchar::ch#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::col#0
Inlining constant with var siblings (const byte*) mode_ecmchar::ch#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::col#0
Inlining constant with var siblings (const byte*) mode_mcchar::ch#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::ch#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::col#0
Inlining constant with var siblings (const byte*) mode_hicolstdchar::ch#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::col#0
Inlining constant with var siblings (const byte*) mode_hicolecmchar::ch#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::col#0
Inlining constant with var siblings (const byte*) mode_hicolmcchar::ch#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::col#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::gfxa#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::gfxb#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::col#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::gfxa#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::gfxb#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::col#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::gfxa#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::gfxb#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::gfxa#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::gfxb#0
Inlining constant with var siblings (const byte*) mode_8bpppixelcell::chargen#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::gfxbCpuBank#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#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#39
Inlining constant with var siblings (const byte) dtv_control#42
Inlining constant with var siblings (const byte) dtv_control#45
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 dtvSetCpuBankSegment1::cpuBankIdx#0 = (byte)(const nomodify dword) mode_8bppchunkybmm::PLANEB/(word) $4000
Constant inlined mode_sixsfred2::gfxb#0 = (const nomodify byte*) mode_sixsfred2::PLANEB
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 menu::c#0 = (const nomodify byte*) COLS
Constant inlined mode_stdbitmap::ch#0 = (const nomodify byte*) mode_stdbitmap::SCREEN
Constant inlined mode_twoplanebitmap::col#0 = (const nomodify byte*) mode_twoplanebitmap::COLORS
Constant inlined mode_twoplanebitmap::gfxb#0 = (const nomodify byte*) mode_twoplanebitmap::PLANEB
Constant inlined mode_hicolecmchar::i#0 = (byte) 0
Constant inlined mode_ecmchar::i#0 = (byte) 0
Constant inlined mode_ecmchar::ch#0 = (const nomodify byte*) mode_ecmchar::SCREEN
Constant inlined mode_stdbitmap::i#0 = (byte) 0
Constant inlined mode_stdbitmap::cx#0 = (byte) 0
Constant inlined keyboard_key_pressed::key#0 = (const nomodify byte) KEY_1
Constant inlined keyboard_key_pressed::key#13 = (const nomodify byte) KEY_L
Constant inlined keyboard_key_pressed::key#1 = (const nomodify byte) KEY_2
Constant inlined keyboard_key_pressed::key#14 = (const nomodify byte) KEY_H
Constant inlined bitmap_init::yoffs#0 = (byte*) 0
Constant inlined keyboard_key_pressed::key#15 = (const nomodify byte) KEY_O
Constant inlined keyboard_key_pressed::key#16 = (const nomodify byte) KEY_B
Constant inlined mode_hicolmcchar::cy#0 = (byte) 0
Constant inlined keyboard_key_pressed::key#4 = (const nomodify byte) KEY_6
Constant inlined keyboard_key_pressed::key#17 = (const nomodify byte) KEY_U
Constant inlined keyboard_key_pressed::key#5 = (const nomodify byte) KEY_7
Constant inlined keyboard_key_pressed::key#18 = (const nomodify byte) KEY_C
Constant inlined keyboard_key_pressed::key#2 = (const nomodify byte) KEY_3
Constant inlined keyboard_key_pressed::key#19 = (const nomodify byte) KEY_0
Constant inlined keyboard_key_pressed::key#3 = (const nomodify byte) KEY_4
Constant inlined mode_sixsfred::cy#0 = (byte) 0
Constant inlined keyboard_key_pressed::key#8 = (const nomodify byte) KEY_B
Constant inlined keyboard_key_pressed::key#9 = (const nomodify byte) KEY_C
Constant inlined keyboard_key_pressed::key#6 = (const nomodify byte) KEY_8
Constant inlined keyboard_key_pressed::key#7 = (const nomodify byte) KEY_A
Constant inlined mode_ecmchar::cx#0 = (byte) 0
Constant inlined mode_hicolecmchar::ch#0 = (const nomodify byte*) mode_hicolecmchar::SCREEN
Constant inlined print_str_lines::str#1 = (const byte*) MENU_TEXT
Constant inlined mode_8bpppixelcell::chargen#0 = (const byte*) mode_8bpppixelcell::CHARGEN
Constant inlined mode_twoplanebitmap::ax#0 = (byte) 0
Constant inlined mode_sixsfred2::ax#0 = (byte) 0
Constant inlined mode_mcchar::ch#0 = (const nomodify byte*) mode_mcchar::SCREEN
Constant inlined mode_8bpppixelcell::gfxb#0 = (const nomodify byte*) mode_8bpppixelcell::PLANEB
Constant inlined keyboard_key_pressed::key#10 = (const nomodify byte) KEY_D
Constant inlined keyboard_key_pressed::key#11 = (const nomodify byte) KEY_E
Constant inlined keyboard_key_pressed::key#12 = (const nomodify byte) KEY_SPACE
Constant inlined mode_sixsfred::by#0 = (byte) 0
Constant inlined mode_8bpppixelcell::i#0 = (byte) 0
Constant inlined mode_mcchar::cy#0 = (byte) 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_stdbitmap::l#0 = (byte) 0
Constant inlined mode_hicolmcchar::col#0 = (const nomodify byte*) mode_hicolmcchar::COLORS
Constant inlined mode_ecmchar::cy#0 = (byte) 0
Constant inlined mode_8bpppixelcell::ax#0 = (byte) 0
Constant inlined mode_sixsfred::gfxa#0 = (const nomodify byte*) mode_sixsfred::PLANEA
Constant inlined bitmap_clear::y#0 = (byte) 0
Constant inlined mode_hicolstdchar::cy#0 = (byte) 0
Constant inlined bitmap_init::y#0 = (byte) 0
Constant inlined mode_sixsfred2::cx#0 = (byte) 0
Constant inlined mode_stdchar::col#0 = (const nomodify byte*) mode_stdchar::COLORS
Constant inlined mode_sixsfred2::ay#0 = (byte) 0
Constant inlined dtv_control#33 = (const nomodify byte) DTV_HIGHCOLOR
Constant inlined dtv_control#30 = (const nomodify byte) DTV_HIGHCOLOR
Constant inlined print_screen#1 = (const nomodify byte*) menu::SCREEN
Constant inlined menu::i#0 = (byte) 0
Constant inlined mode_hicolstdchar::col#0 = (const nomodify byte*) mode_hicolstdchar::COLORS
Constant inlined mode_stdchar::i#0 = (byte) 0
Constant inlined mode_twoplanebitmap::bx#0 = (byte) 0
Constant inlined mode_sixsfred2::bx#0 = (byte) 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 mode_sixsfred::ax#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_sixsfred::gfxb#0 = (const nomodify byte*) mode_sixsfred::PLANEB
Constant inlined mode_8bppchunkybmm::i#0 = (byte) 0
Constant inlined mode_hicolstdchar::ch#0 = (const nomodify byte*) mode_hicolstdchar::SCREEN
Constant inlined mode_sixsfred2::cy#0 = (byte) 0
Constant inlined mode_twoplanebitmap::cy#0 = (byte) 0
Constant inlined dtv_control#18 = (byte) 0
Constant inlined memset::dst#0 = (byte*)(const void*) memset::str#0
Constant inlined bitmap_init::x#0 = (byte) 0
Constant inlined bitmap_init::bitmap#0 = (const nomodify byte*) mode_stdbitmap::BITMAP
Constant inlined mode_hicolecmchar::cy#0 = (byte) 0
Constant inlined mode_8bppchunkybmm::gfxb#2 = (byte*) 16384
Constant inlined mode_hicolmcchar::i#0 = (byte) 0
Constant inlined dtv_control#51 = (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY|(const nomodify byte) DTV_COLORRAM_OFF
Constant inlined bitmap_init::bits#0 = (byte) $80
Constant inlined mode_stdchar::cx#0 = (byte) 0
Constant inlined mode_8bppchunkybmm::gfxbCpuBank#1 = ++(byte)(const nomodify dword) mode_8bppchunkybmm::PLANEB/(word) $4000
Constant inlined bitmap_init::bits#2 = (byte) $80
Constant inlined mode_8bppchunkybmm::gfxbCpuBank#0 = (byte)(const nomodify dword) mode_8bppchunkybmm::PLANEB/(word) $4000
Constant inlined mode_8bppchunkybmm::gfxb#0 = (byte*) 16384
Constant inlined mode_twoplanebitmap::gfxa#0 = (const nomodify byte*) mode_twoplanebitmap::PLANEA
Constant inlined memset::$4 = (byte*)(const void*) memset::str#0
Constant inlined print_set_screen::screen#0 = (const nomodify byte*) menu::SCREEN
Constant inlined mode_8bpppixelcell::ch#0 = (byte) 0
Constant inlined mode_8bpppixelcell::c#0 = (byte) 0
Constant inlined mode_hicolecmchar::col#0 = (const nomodify byte*) mode_hicolecmchar::COLORS
Constant inlined mode_hicolstdchar::i#0 = (byte) 0
Constant inlined mode_sixsfred2::by#0 = (byte) 0
Constant inlined mode_twoplanebitmap::i#0 = (byte) 0
Constant inlined mode_stdchar::ch#0 = (const nomodify byte*) mode_stdchar::SCREEN
Constant inlined dtv_control#48 = (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY
Constant inlined mode_sixsfred2::gfxa#0 = (const nomodify byte*) mode_sixsfred2::PLANEA
Constant inlined mode_8bpppixelcell::cp#0 = (byte) 0
Constant inlined dtv_control#45 = (const nomodify byte) DTV_LINEAR
Constant inlined mode_hicolmcchar::cx#0 = (byte) 0
Constant inlined mode_8bppchunkybmm::x#0 = (word) 0
Constant inlined mode_sixsfred::ay#0 = (byte) 0
Constant inlined mode_ctrl::ctrl#7 = (byte) 0
Constant inlined dtv_control#42 = (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR
Constant inlined mode_sixsfred::cx#0 = (byte) 0
Constant inlined mode_8bpppixelcell::col#0 = (byte) 0
Constant inlined mode_sixsfred::col#0 = (const nomodify byte*) mode_sixsfred::COLORS
Constant inlined mode_ecmchar::col#0 = (const nomodify byte*) mode_ecmchar::COLORS
Constant inlined mode_hicolmcchar::ch#0 = (const nomodify byte*) mode_hicolmcchar::SCREEN
Constant inlined mode_sixsfred2::col#0 = (const nomodify byte*) mode_sixsfred2::COLORS
Constant inlined mode_8bpppixelcell::gfxa#0 = (const nomodify byte*) mode_8bpppixelcell::PLANEA
Constant inlined mode_stdchar::cy#0 = (byte) 0
Constant inlined bitmap_init::$1 = >(const nomodify byte*) mode_stdbitmap::BITMAP
Constant inlined mode_mcchar::col#0 = (const nomodify byte*) mode_mcchar::COLORS
Constant inlined mode_twoplanebitmap::cx#0 = (byte) 0
Constant inlined dtv_control#39 = (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR
Constant inlined dtv_control#36 = (const nomodify byte) DTV_HIGHCOLOR
Successful SSA optimization Pass2ConstantInlining
Consolidated array index constant in assignment *(mode_stdbitmap::lines_x+1 + mode_stdbitmap::$12)
Consolidated array index constant in assignment *(mode_stdbitmap::lines_y+1 + mode_stdbitmap::$13)
Successful SSA optimization Pass2ConstantAdditionElimination
Alias mode_stdbitmap::l#2 = mode_stdbitmap::$12 mode_stdbitmap::$13
Successful SSA optimization Pass2AliasElimination
Added new block during phi lifting print_str_lines::@8(between print_str_lines::@1 and print_str_lines::@2)
Added new block during phi lifting print_str_lines::@9(between print_str_lines::@3 and print_str_lines::@2)
Added new block during phi lifting print_str_lines::@10(between print_str_lines::@2 and print_str_lines::@3)
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::@8(between bitmap_init::@2 and bitmap_init::@1)
Added new block during phi lifting bitmap_init::@9(between bitmap_init::@1 and bitmap_init::@2)
Added new block during phi lifting bitmap_init::@10(between bitmap_init::@6 and bitmap_init::@5)
Added new block during phi lifting bitmap_init::@11(between bitmap_init::@5 and bitmap_init::@6)
Added new block during phi lifting bitmap_clear::@4(between bitmap_clear::@3 and bitmap_clear::@1)
Added new block during phi lifting bitmap_clear::@5(between bitmap_clear::@2 and bitmap_clear::@2)
Added new block during phi lifting bitmap_line_xdyi::@5(between bitmap_line_xdyi::@2 and bitmap_line_xdyi::@1)
Added new block during phi lifting bitmap_line_xdyi::@6(between bitmap_line_xdyi::@4 and bitmap_line_xdyi::@2)
Added new block during phi lifting bitmap_line_xdyd::@5(between bitmap_line_xdyd::@2 and bitmap_line_xdyd::@1)
Added new block during phi lifting bitmap_line_xdyd::@6(between bitmap_line_xdyd::@4 and bitmap_line_xdyd::@2)
Added new block during phi lifting bitmap_line_ydxi::@5(between bitmap_line_ydxi::@2 and bitmap_line_ydxi::@1)
Added new block during phi lifting bitmap_line_ydxi::@6(between bitmap_line_ydxi::@4 and bitmap_line_ydxi::@2)
Added new block during phi lifting bitmap_line_ydxd::@5(between bitmap_line_ydxd::@2 and bitmap_line_ydxd::@1)
Added new block during phi lifting bitmap_line_ydxd::@6(between bitmap_line_ydxd::@4 and bitmap_line_ydxd::@2)
Added new block during phi lifting menu::@58(between menu::@1 and menu::@1)
Added new block during phi lifting mode_ctrl::@28(between mode_ctrl::@11 and mode_ctrl::@1)
Added new block during phi lifting mode_ctrl::@29(between mode_ctrl::@21 and mode_ctrl::@5)
Added new block during phi lifting mode_ctrl::@30(between mode_ctrl::@22 and mode_ctrl::@6)
Added new block during phi lifting mode_ctrl::@31(between mode_ctrl::@23 and mode_ctrl::@7)
Added new block during phi lifting mode_ctrl::@32(between mode_ctrl::@24 and mode_ctrl::@8)
Added new block during phi lifting mode_ctrl::@33(between mode_ctrl::@25 and mode_ctrl::@9)
Added new block during phi lifting mode_ctrl::@34(between mode_ctrl::@26 and mode_ctrl::@10)
Added new block during phi lifting mode_ctrl::@35(between mode_ctrl::@27 and mode_ctrl::@11)
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::@14(between mode_stdbitmap::@1 and mode_stdbitmap::@1)
Added new block during phi lifting mode_stdbitmap::@15(between mode_stdbitmap::@5 and mode_stdbitmap::@3)
Added new block during phi lifting mode_stdbitmap::@16(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::@19(between mode_twoplanebitmap::@1 and mode_twoplanebitmap::@1)
Added new block during phi lifting mode_twoplanebitmap::@20(between mode_twoplanebitmap::@5 and mode_twoplanebitmap::@3)
Added new block during phi lifting mode_twoplanebitmap::@21(between mode_twoplanebitmap::@4 and mode_twoplanebitmap::@4)
Added new block during phi lifting mode_twoplanebitmap::@22(between mode_twoplanebitmap::@12 and mode_twoplanebitmap::@7)
Added new block during phi lifting mode_twoplanebitmap::@23(between mode_twoplanebitmap::@10 and mode_twoplanebitmap::@8)
Added new block during phi lifting mode_twoplanebitmap::@24(between mode_twoplanebitmap::@16 and mode_twoplanebitmap::@14)
Added new block during phi lifting mode_twoplanebitmap::@25(between mode_twoplanebitmap::@15 and mode_twoplanebitmap::@15)
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 @1
Adding NOP phi() at start of @2
Adding NOP phi() at start of @3
Adding NOP phi() at start of @4
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::@3
Adding NOP phi() at start of menu::@2
Adding NOP phi() at start of menu::@31
Adding NOP phi() at start of menu::@32
Adding NOP phi() at start of menu::@33
Adding NOP phi() at start of menu::@6
Adding NOP phi() at start of menu::@7
Adding NOP phi() at start of menu::@19
Adding NOP phi() at start of menu::@36
Adding NOP phi() at start of menu::@8
Adding NOP phi() at start of menu::@20
Adding NOP phi() at start of menu::@38
Adding NOP phi() at start of menu::@9
Adding NOP phi() at start of menu::@21
Adding NOP phi() at start of menu::@40
Adding NOP phi() at start of menu::@10
Adding NOP phi() at start of menu::@22
Adding NOP phi() at start of menu::@42
Adding NOP phi() at start of menu::@11
Adding NOP phi() at start of menu::@23
Adding NOP phi() at start of menu::@44
Adding NOP phi() at start of menu::@12
Adding NOP phi() at start of menu::@24
Adding NOP phi() at start of menu::@46
Adding NOP phi() at start of menu::@13
Adding NOP phi() at start of menu::@25
Adding NOP phi() at start of menu::@48
Adding NOP phi() at start of menu::@14
Adding NOP phi() at start of menu::@26
Adding NOP phi() at start of menu::@50
Adding NOP phi() at start of menu::@15
Adding NOP phi() at start of menu::@27
Adding NOP phi() at start of menu::@52
Adding NOP phi() at start of menu::@16
Adding NOP phi() at start of menu::@28
Adding NOP phi() at start of menu::@54
Adding NOP phi() at start of menu::@17
Adding NOP phi() at start of menu::@29
Adding NOP phi() at start of menu::@56
Adding NOP phi() at start of menu::@18
Adding NOP phi() at start of menu::@30
Adding NOP phi() at start of menu::@57
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::@3
Adding NOP phi() at start of mode_ctrl::@18
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::@13
Adding NOP phi() at start of mode_twoplanebitmap::@17
Adding NOP phi() at start of mode_twoplanebitmap::@18
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::@10
Adding NOP phi() at start of mode_stdbitmap::@11
Adding NOP phi() at start of mode_stdbitmap::@9
Adding NOP phi() at start of mode_stdbitmap::@13
Adding NOP phi() at start of bitmap_line::@16
Adding NOP phi() at start of bitmap_line::@15
Adding NOP phi() at start of bitmap_line::@18
Adding NOP phi() at start of bitmap_line::@17
Adding NOP phi() at start of bitmap_line::@20
Adding NOP phi() at start of bitmap_line::@19
Adding NOP phi() at start of bitmap_line::@22
Adding NOP phi() at start of bitmap_line::@21
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::@5
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:4
Calls in [main] to menu:13
Calls in [menu] to print_set_screen:33 print_cls:35 print_str_lines:37 keyboard_key_pressed:41 mode_stdchar:46 keyboard_key_pressed:50 mode_ecmchar:55 keyboard_key_pressed:58 mode_mcchar:63 keyboard_key_pressed:66 mode_stdbitmap:71 keyboard_key_pressed:74 mode_hicolstdchar:79 keyboard_key_pressed:82 mode_hicolecmchar:87 keyboard_key_pressed:90 mode_hicolmcchar:95 keyboard_key_pressed:98 mode_sixsfred2:103 keyboard_key_pressed:106 mode_twoplanebitmap:111 keyboard_key_pressed:114 mode_sixsfred:119 keyboard_key_pressed:122 mode_8bpppixelcell:127 keyboard_key_pressed:130 mode_8bppchunkybmm:135
Calls in [mode_8bppchunkybmm] to dtvSetCpuBankSegment1:156 dtvSetCpuBankSegment1:165 dtvSetCpuBankSegment1:178 mode_ctrl:180
Calls in [mode_ctrl] to keyboard_key_pressed:197 keyboard_key_pressed:203 keyboard_key_pressed:210 keyboard_key_pressed:217 keyboard_key_pressed:224 keyboard_key_pressed:231 keyboard_key_pressed:238 keyboard_key_pressed:245
Calls in [keyboard_key_pressed] to keyboard_matrix_read:268
Calls in [mode_8bpppixelcell] to mode_ctrl:341
Calls in [mode_sixsfred] to mode_ctrl:417
Calls in [mode_twoplanebitmap] to mode_ctrl:495
Calls in [mode_sixsfred2] to mode_ctrl:572
Calls in [mode_hicolmcchar] to mode_ctrl:622
Calls in [mode_hicolecmchar] to mode_ctrl:667
Calls in [mode_hicolstdchar] to mode_ctrl:709
Calls in [mode_stdbitmap] to bitmap_init:747 bitmap_clear:749 mode_ctrl:754 bitmap_line:761
Calls in [bitmap_line] to bitmap_line_ydxi:784 bitmap_line_xdyi:797 bitmap_line_ydxd:811 bitmap_line_xdyd:823 bitmap_line_ydxd:839 bitmap_line_xdyd:851 bitmap_line_ydxi:865 bitmap_line_xdyi:877
Calls in [bitmap_line_xdyi] to bitmap_plot:889
Calls in [bitmap_line_ydxi] to bitmap_plot:923
Calls in [bitmap_line_xdyd] to bitmap_plot:950
Calls in [bitmap_line_ydxd] to bitmap_plot:977
Calls in [mode_mcchar] to mode_ctrl:1079
Calls in [mode_ecmchar] to mode_ctrl:1126
Calls in [mode_stdchar] to mode_ctrl:1170
Calls in [print_str_lines] to print_char:1191 print_ln:1196
Calls in [print_cls] to memset:1214
Created 188 initial phi equivalence classes
Coalesced [139] menu::c#4 ← menu::c#1
Coalesced [140] menu::i#3 ← menu::i#1
Coalesced [159] mode_8bppchunkybmm::gfxb#8 ← mode_8bppchunkybmm::gfxb#5
Coalesced [160] mode_8bppchunkybmm::gfxbCpuBank#11 ← mode_8bppchunkybmm::gfxbCpuBank#7
Coalesced [164] dtvSetCpuBankSegment1::cpuBankIdx#4 ← dtvSetCpuBankSegment1::cpuBankIdx#1
Coalesced [167] mode_8bppchunkybmm::gfxbCpuBank#13 ← mode_8bppchunkybmm::gfxbCpuBank#2
Coalesced [183] mode_8bppchunkybmm::gfxb#7 ← mode_8bppchunkybmm::gfxb#1
Coalesced [184] mode_8bppchunkybmm::y#8 ← mode_8bppchunkybmm::y#1
Coalesced [185] mode_8bppchunkybmm::gfxbCpuBank#10 ← mode_8bppchunkybmm::gfxbCpuBank#8
Coalesced (already) [186] mode_8bppchunkybmm::gfxb#9 ← mode_8bppchunkybmm::gfxb#1
Coalesced [187] mode_8bppchunkybmm::x#6 ← mode_8bppchunkybmm::x#1
Coalesced (already) [188] mode_8bppchunkybmm::gfxbCpuBank#12 ← mode_8bppchunkybmm::gfxbCpuBank#8
Coalesced [189] mode_8bppchunkybmm::gfxb#10 ← mode_8bppchunkybmm::gfxb#3
Coalesced (already) [190] mode_8bppchunkybmm::gfxbCpuBank#14 ← mode_8bppchunkybmm::gfxbCpuBank#4
Coalesced [191] mode_8bppchunkybmm::i#3 ← mode_8bppchunkybmm::i#1
Coalesced [193] dtv_control#291 ← dtv_control#144
Coalesced [208] mode_ctrl::ctrl#29 ← mode_ctrl::ctrl#1
Coalesced [215] mode_ctrl::ctrl#31 ← mode_ctrl::ctrl#2
Coalesced [222] mode_ctrl::ctrl#33 ← mode_ctrl::ctrl#3
Coalesced [229] mode_ctrl::ctrl#35 ← mode_ctrl::ctrl#4
Coalesced [236] mode_ctrl::ctrl#37 ← mode_ctrl::ctrl#5
Coalesced [243] mode_ctrl::ctrl#39 ← mode_ctrl::ctrl#6
Coalesced [255] dtv_control#293 ← dtv_control#17
Coalesced (already) [256] dtv_control#292 ← dtv_control#114
Coalesced [257] mode_ctrl::ctrl#41 ← mode_ctrl::ctrl#22
Coalesced [258] mode_ctrl::ctrl#40 ← mode_ctrl::ctrl#13
Coalesced [259] mode_ctrl::ctrl#38 ← mode_ctrl::ctrl#12
Coalesced [260] mode_ctrl::ctrl#36 ← mode_ctrl::ctrl#11
Coalesced [261] mode_ctrl::ctrl#34 ← mode_ctrl::ctrl#10
Coalesced [262] mode_ctrl::ctrl#32 ← mode_ctrl::ctrl#17
Coalesced [263] mode_ctrl::ctrl#30 ← mode_ctrl::ctrl#0
Coalesced [302] mode_8bpppixelcell::gfxa#6 ← mode_8bpppixelcell::gfxa#3
Coalesced [316] mode_8bpppixelcell::chargen#11 ← mode_8bpppixelcell::chargen#4
Coalesced [317] mode_8bpppixelcell::gfxb#11 ← mode_8bpppixelcell::gfxb#7
Coalesced [318] mode_8bpppixelcell::col#11 ← mode_8bpppixelcell::col#7
Coalesced [322] mode_8bpppixelcell::bits#6 ← mode_8bpppixelcell::bits#0
Coalesced [323] mode_8bpppixelcell::gfxb#13 ← mode_8bpppixelcell::gfxb#5
Coalesced [324] mode_8bpppixelcell::col#13 ← mode_8bpppixelcell::col#5
Not coalescing [328] mode_8bpppixelcell::c#3 ← mode_8bpppixelcell::col#2
Coalesced [344] mode_8bpppixelcell::chargen#9 ← mode_8bpppixelcell::chargen#1
Coalesced [345] mode_8bpppixelcell::gfxb#9 ← mode_8bpppixelcell::gfxb#1
Coalesced [346] mode_8bpppixelcell::col#9 ← mode_8bpppixelcell::col#1
Coalesced [347] mode_8bpppixelcell::ch#9 ← mode_8bpppixelcell::ch#1
Coalesced (already) [348] mode_8bpppixelcell::chargen#10 ← mode_8bpppixelcell::chargen#1
Coalesced (already) [349] mode_8bpppixelcell::gfxb#10 ← mode_8bpppixelcell::gfxb#1
Coalesced (already) [350] mode_8bpppixelcell::col#10 ← mode_8bpppixelcell::col#1
Coalesced [351] mode_8bpppixelcell::cr#7 ← mode_8bpppixelcell::cr#1
Coalesced [352] mode_8bpppixelcell::bits#5 ← mode_8bpppixelcell::bits#1
Coalesced (already) [353] mode_8bpppixelcell::gfxb#12 ← mode_8bpppixelcell::gfxb#1
Coalesced (already) [354] mode_8bpppixelcell::col#12 ← mode_8bpppixelcell::col#1
Coalesced [355] mode_8bpppixelcell::cp#5 ← mode_8bpppixelcell::cp#1
Coalesced [356] mode_8bpppixelcell::ay#5 ← mode_8bpppixelcell::ay#1
Coalesced [357] mode_8bpppixelcell::gfxa#5 ← mode_8bpppixelcell::gfxa#1
Coalesced [358] mode_8bpppixelcell::ax#3 ← mode_8bpppixelcell::ax#1
Coalesced (already) [359] mode_8bpppixelcell::gfxa#7 ← mode_8bpppixelcell::gfxa#1
Coalesced [360] mode_8bpppixelcell::i#3 ← mode_8bpppixelcell::i#1
Coalesced [384] mode_sixsfred::col#6 ← mode_sixsfred::col#3
Coalesced [396] mode_sixsfred::gfxa#6 ← mode_sixsfred::gfxa#3
Coalesced [408] mode_sixsfred::gfxb#6 ← mode_sixsfred::gfxb#3
Coalesced [420] mode_sixsfred::gfxb#5 ← mode_sixsfred::gfxb#1
Coalesced [421] mode_sixsfred::by#5 ← mode_sixsfred::by#1
Coalesced (already) [422] mode_sixsfred::gfxb#7 ← mode_sixsfred::gfxb#1
Coalesced [423] mode_sixsfred::bx#3 ← mode_sixsfred::bx#1
Coalesced [424] mode_sixsfred::ay#5 ← mode_sixsfred::ay#1
Coalesced [425] mode_sixsfred::gfxa#5 ← mode_sixsfred::gfxa#1
Coalesced (already) [426] mode_sixsfred::gfxa#7 ← mode_sixsfred::gfxa#1
Coalesced [427] mode_sixsfred::ax#3 ← mode_sixsfred::ax#1
Coalesced [428] mode_sixsfred::cy#5 ← mode_sixsfred::cy#1
Coalesced [429] mode_sixsfred::col#5 ← mode_sixsfred::col#1
Coalesced [430] mode_sixsfred::cx#3 ← mode_sixsfred::cx#1
Coalesced (already) [431] mode_sixsfred::col#7 ← mode_sixsfred::col#1
Coalesced [432] mode_sixsfred::i#3 ← mode_sixsfred::i#1
Coalesced [458] mode_twoplanebitmap::col#6 ← mode_twoplanebitmap::col#3
Coalesced [472] mode_twoplanebitmap::gfxa#11 ← mode_twoplanebitmap::gfxa#7
Coalesced [478] mode_twoplanebitmap::gfxa#12 ← mode_twoplanebitmap::gfxa#2
Coalesced [486] mode_twoplanebitmap::gfxb#6 ← mode_twoplanebitmap::gfxb#3
Coalesced [498] mode_twoplanebitmap::gfxb#5 ← mode_twoplanebitmap::gfxb#1
Coalesced [499] mode_twoplanebitmap::by#5 ← mode_twoplanebitmap::by#1
Coalesced (already) [500] mode_twoplanebitmap::gfxb#7 ← mode_twoplanebitmap::gfxb#1
Coalesced [501] mode_twoplanebitmap::bx#3 ← mode_twoplanebitmap::bx#1
Coalesced [502] mode_twoplanebitmap::ay#8 ← mode_twoplanebitmap::ay#1
Coalesced [503] mode_twoplanebitmap::gfxa#9 ← mode_twoplanebitmap::gfxa#6
Coalesced (already) [504] mode_twoplanebitmap::gfxa#10 ← mode_twoplanebitmap::gfxa#6
Coalesced [505] mode_twoplanebitmap::ax#6 ← mode_twoplanebitmap::ax#1
Coalesced [508] mode_twoplanebitmap::gfxa#13 ← mode_twoplanebitmap::gfxa#1
Coalesced [509] mode_twoplanebitmap::cy#5 ← mode_twoplanebitmap::cy#1
Coalesced [510] mode_twoplanebitmap::col#5 ← mode_twoplanebitmap::col#1
Coalesced [511] mode_twoplanebitmap::cx#3 ← mode_twoplanebitmap::cx#1
Coalesced (already) [512] mode_twoplanebitmap::col#7 ← mode_twoplanebitmap::col#1
Coalesced [513] mode_twoplanebitmap::i#3 ← mode_twoplanebitmap::i#1
Coalesced [537] mode_sixsfred2::col#6 ← mode_sixsfred2::col#3
Coalesced [551] mode_sixsfred2::gfxa#6 ← mode_sixsfred2::gfxa#3
Coalesced [563] mode_sixsfred2::gfxb#6 ← mode_sixsfred2::gfxb#3
Coalesced [575] mode_sixsfred2::gfxb#5 ← mode_sixsfred2::gfxb#1
Coalesced [576] mode_sixsfred2::by#5 ← mode_sixsfred2::by#1
Coalesced (already) [577] mode_sixsfred2::gfxb#7 ← mode_sixsfred2::gfxb#1
Coalesced [578] mode_sixsfred2::bx#3 ← mode_sixsfred2::bx#1
Coalesced [579] mode_sixsfred2::ay#5 ← mode_sixsfred2::ay#1
Coalesced [580] mode_sixsfred2::gfxa#5 ← mode_sixsfred2::gfxa#1
Coalesced (already) [581] mode_sixsfred2::gfxa#7 ← mode_sixsfred2::gfxa#1
Coalesced [582] mode_sixsfred2::ax#3 ← mode_sixsfred2::ax#1
Coalesced [583] mode_sixsfred2::cy#5 ← mode_sixsfred2::cy#1
Coalesced [584] mode_sixsfred2::col#5 ← mode_sixsfred2::col#1
Coalesced [585] mode_sixsfred2::cx#3 ← mode_sixsfred2::cx#1
Coalesced (already) [586] mode_sixsfred2::col#7 ← mode_sixsfred2::col#1
Coalesced [587] mode_sixsfred2::i#3 ← mode_sixsfred2::i#1
Coalesced [606] mode_hicolmcchar::col#6 ← mode_hicolmcchar::col#3
Coalesced [607] mode_hicolmcchar::ch#6 ← mode_hicolmcchar::ch#3
Coalesced [625] mode_hicolmcchar::cy#5 ← mode_hicolmcchar::cy#1
Coalesced [626] mode_hicolmcchar::col#5 ← mode_hicolmcchar::col#1
Coalesced [627] mode_hicolmcchar::ch#5 ← mode_hicolmcchar::ch#1
Coalesced [628] mode_hicolmcchar::cx#3 ← mode_hicolmcchar::cx#1
Coalesced (already) [629] mode_hicolmcchar::col#7 ← mode_hicolmcchar::col#1
Coalesced (already) [630] mode_hicolmcchar::ch#7 ← mode_hicolmcchar::ch#1
Coalesced [631] mode_hicolmcchar::i#3 ← mode_hicolmcchar::i#1
Coalesced [651] mode_hicolecmchar::col#6 ← mode_hicolecmchar::col#3
Coalesced [652] mode_hicolecmchar::ch#6 ← mode_hicolecmchar::ch#3
Coalesced [670] mode_hicolecmchar::cy#5 ← mode_hicolecmchar::cy#1
Coalesced [671] mode_hicolecmchar::col#5 ← mode_hicolecmchar::col#1
Coalesced [672] mode_hicolecmchar::ch#5 ← mode_hicolecmchar::ch#1
Coalesced [673] mode_hicolecmchar::cx#3 ← mode_hicolecmchar::cx#1
Coalesced (already) [674] mode_hicolecmchar::col#7 ← mode_hicolecmchar::col#1
Coalesced (already) [675] mode_hicolecmchar::ch#7 ← mode_hicolecmchar::ch#1
Coalesced [676] mode_hicolecmchar::i#3 ← mode_hicolecmchar::i#1
Coalesced [693] mode_hicolstdchar::col#6 ← mode_hicolstdchar::col#3
Coalesced [694] mode_hicolstdchar::ch#6 ← mode_hicolstdchar::ch#3
Coalesced [712] mode_hicolstdchar::cy#5 ← mode_hicolstdchar::cy#1
Coalesced [713] mode_hicolstdchar::col#5 ← mode_hicolstdchar::col#1
Coalesced [714] mode_hicolstdchar::ch#5 ← mode_hicolstdchar::ch#1
Coalesced [715] mode_hicolstdchar::cx#3 ← mode_hicolstdchar::cx#1
Coalesced (already) [716] mode_hicolstdchar::col#7 ← mode_hicolstdchar::col#1
Coalesced (already) [717] mode_hicolstdchar::ch#7 ← mode_hicolstdchar::ch#1
Coalesced [718] mode_hicolstdchar::i#3 ← mode_hicolstdchar::i#1
Coalesced [733] mode_stdbitmap::ch#6 ← mode_stdbitmap::ch#3
Coalesced [763] mode_stdbitmap::l#5 ← mode_stdbitmap::l#1
Coalesced [764] mode_stdbitmap::cy#5 ← mode_stdbitmap::cy#1
Coalesced [765] mode_stdbitmap::ch#5 ← mode_stdbitmap::ch#1
Coalesced [766] mode_stdbitmap::cx#3 ← mode_stdbitmap::cx#1
Coalesced (already) [767] mode_stdbitmap::ch#7 ← mode_stdbitmap::ch#1
Coalesced [768] mode_stdbitmap::i#3 ← mode_stdbitmap::i#1
Coalesced [779] bitmap_line_ydxi::xd#8 ← bitmap_line_ydxi::xd#0
Coalesced [780] bitmap_line_ydxi::x#9 ← bitmap_line_ydxi::x#0
Coalesced [781] bitmap_line_ydxi::y#9 ← bitmap_line_ydxi::y#0
Coalesced [782] bitmap_line_ydxi::yd#8 ← bitmap_line_ydxi::yd#0
Coalesced [783] bitmap_line_ydxi::y1#8 ← bitmap_line_ydxi::y1#0
Coalesced [792] bitmap_line_xdyi::yd#8 ← bitmap_line_xdyi::yd#0
Coalesced [793] bitmap_line_xdyi::x#9 ← bitmap_line_xdyi::x#0
Coalesced [794] bitmap_line_xdyi::y#9 ← bitmap_line_xdyi::y#0
Coalesced [795] bitmap_line_xdyi::xd#8 ← bitmap_line_xdyi::xd#0
Coalesced [796] bitmap_line_xdyi::x1#8 ← bitmap_line_xdyi::x1#0
Coalesced [806] bitmap_line_ydxd::xd#7 ← bitmap_line_ydxd::xd#0
Coalesced [807] bitmap_line_ydxd::x#8 ← bitmap_line_ydxd::x#0
Coalesced [808] bitmap_line_ydxd::y#9 ← bitmap_line_ydxd::y#0
Coalesced [809] bitmap_line_ydxd::yd#7 ← bitmap_line_ydxd::yd#0
Coalesced [810] bitmap_line_ydxd::y1#7 ← bitmap_line_ydxd::y1#0
Coalesced [818] bitmap_line_xdyd::yd#8 ← bitmap_line_xdyd::yd#0
Coalesced [819] bitmap_line_xdyd::x#9 ← bitmap_line_xdyd::x#0
Coalesced [820] bitmap_line_xdyd::y#9 ← bitmap_line_xdyd::y#0
Coalesced [821] bitmap_line_xdyd::xd#8 ← bitmap_line_xdyd::xd#0
Coalesced [822] bitmap_line_xdyd::x1#8 ← bitmap_line_xdyd::x1#0
Coalesced [834] bitmap_line_ydxd::xd#8 ← bitmap_line_ydxd::xd#1
Coalesced [835] bitmap_line_ydxd::x#9 ← bitmap_line_ydxd::x#1
Coalesced [836] bitmap_line_ydxd::y#10 ← bitmap_line_ydxd::y#1
Coalesced [837] bitmap_line_ydxd::yd#8 ← bitmap_line_ydxd::yd#1
Coalesced [838] bitmap_line_ydxd::y1#8 ← bitmap_line_ydxd::y1#1
Coalesced [846] bitmap_line_xdyd::yd#7 ← bitmap_line_xdyd::yd#1
Coalesced [847] bitmap_line_xdyd::x#8 ← bitmap_line_xdyd::x#1
Coalesced [848] bitmap_line_xdyd::y#8 ← bitmap_line_xdyd::y#1
Coalesced [849] bitmap_line_xdyd::xd#7 ← bitmap_line_xdyd::xd#1
Coalesced [850] bitmap_line_xdyd::x1#7 ← bitmap_line_xdyd::x1#1
Coalesced [860] bitmap_line_ydxi::xd#7 ← bitmap_line_ydxi::xd#1
Coalesced [861] bitmap_line_ydxi::x#8 ← bitmap_line_ydxi::x#1
Coalesced [862] bitmap_line_ydxi::y#8 ← bitmap_line_ydxi::y#1
Coalesced [863] bitmap_line_ydxi::yd#7 ← bitmap_line_ydxi::yd#1
Coalesced [864] bitmap_line_ydxi::y1#7 ← bitmap_line_ydxi::y1#1
Coalesced [872] bitmap_line_xdyi::yd#7 ← bitmap_line_xdyi::yd#1
Coalesced [873] bitmap_line_xdyi::x#8 ← bitmap_line_xdyi::x#1
Coalesced [874] bitmap_line_xdyi::y#8 ← bitmap_line_xdyi::y#1
Coalesced [875] bitmap_line_xdyi::xd#7 ← bitmap_line_xdyi::xd#1
Coalesced [876] bitmap_line_xdyi::x1#7 ← bitmap_line_xdyi::x1#1
Coalesced [881] bitmap_line_xdyi::x#10 ← bitmap_line_xdyi::x#6
Coalesced [882] bitmap_line_xdyi::y#10 ← bitmap_line_xdyi::y#5
Coalesced [883] bitmap_line_xdyi::e#7 ← bitmap_line_xdyi::e#0
Coalesced [887] bitmap_plot::x#6 ← bitmap_plot::x#0
Coalesced [888] bitmap_plot::y#6 ← bitmap_plot::y#0
Coalesced [895] bitmap_line_xdyi::y#12 ← bitmap_line_xdyi::y#2
Coalesced [896] bitmap_line_xdyi::e#9 ← bitmap_line_xdyi::e#2
Coalesced [901] bitmap_line_xdyi::x#11 ← bitmap_line_xdyi::x#2
Coalesced [902] bitmap_line_xdyi::y#11 ← bitmap_line_xdyi::y#6
Coalesced [903] bitmap_line_xdyi::e#8 ← bitmap_line_xdyi::e#6
Coalesced (already) [904] bitmap_line_xdyi::y#13 ← bitmap_line_xdyi::y#3
Coalesced [905] bitmap_line_xdyi::e#10 ← bitmap_line_xdyi::e#1
Coalesced [915] bitmap_line_ydxi::x#10 ← bitmap_line_ydxi::x#5
Coalesced [916] bitmap_line_ydxi::y#10 ← bitmap_line_ydxi::y#6
Coalesced [917] bitmap_line_ydxi::e#7 ← bitmap_line_ydxi::e#0
Coalesced [921] bitmap_plot::x#8 ← bitmap_plot::x#2
Coalesced [922] bitmap_plot::y#8 ← bitmap_plot::y#2
Coalesced [929] bitmap_line_ydxi::x#12 ← bitmap_line_ydxi::x#2
Coalesced [930] bitmap_line_ydxi::e#9 ← bitmap_line_ydxi::e#2
Coalesced [935] bitmap_line_ydxi::x#11 ← bitmap_line_ydxi::x#6
Coalesced [936] bitmap_line_ydxi::y#11 ← bitmap_line_ydxi::y#2
Coalesced [937] bitmap_line_ydxi::e#8 ← bitmap_line_ydxi::e#6
Coalesced (already) [938] bitmap_line_ydxi::x#13 ← bitmap_line_ydxi::x#3
Coalesced [939] bitmap_line_ydxi::e#10 ← bitmap_line_ydxi::e#1
Coalesced [942] bitmap_line_xdyd::x#10 ← bitmap_line_xdyd::x#6
Coalesced [943] bitmap_line_xdyd::y#10 ← bitmap_line_xdyd::y#5
Coalesced [944] bitmap_line_xdyd::e#7 ← bitmap_line_xdyd::e#0
Coalesced [948] bitmap_plot::x#5 ← bitmap_plot::x#1
Coalesced [949] bitmap_plot::y#5 ← bitmap_plot::y#1
Coalesced [956] bitmap_line_xdyd::y#12 ← bitmap_line_xdyd::y#2
Coalesced [957] bitmap_line_xdyd::e#9 ← bitmap_line_xdyd::e#2
Coalesced [962] bitmap_line_xdyd::x#11 ← bitmap_line_xdyd::x#2
Coalesced [963] bitmap_line_xdyd::y#11 ← bitmap_line_xdyd::y#6
Coalesced [964] bitmap_line_xdyd::e#8 ← bitmap_line_xdyd::e#6
Coalesced (already) [965] bitmap_line_xdyd::y#13 ← bitmap_line_xdyd::y#3
Coalesced [966] bitmap_line_xdyd::e#10 ← bitmap_line_xdyd::e#1
Coalesced [969] bitmap_line_ydxd::x#10 ← bitmap_line_ydxd::x#5
Coalesced [970] bitmap_line_ydxd::y#11 ← bitmap_line_ydxd::y#7
Coalesced [971] bitmap_line_ydxd::e#7 ← bitmap_line_ydxd::e#0
Coalesced [975] bitmap_plot::x#7 ← bitmap_plot::x#3
Coalesced [976] bitmap_plot::y#7 ← bitmap_plot::y#3
Coalesced [983] bitmap_line_ydxd::x#12 ← bitmap_line_ydxd::x#2
Coalesced [984] bitmap_line_ydxd::e#9 ← bitmap_line_ydxd::e#2
Coalesced [989] bitmap_line_ydxd::x#11 ← bitmap_line_ydxd::x#6
Coalesced [990] bitmap_line_ydxd::y#12 ← bitmap_line_ydxd::y#3
Coalesced [991] bitmap_line_ydxd::e#8 ← bitmap_line_ydxd::e#6
Coalesced (already) [992] bitmap_line_ydxd::x#13 ← bitmap_line_ydxd::x#3
Coalesced [993] bitmap_line_ydxd::e#10 ← bitmap_line_ydxd::e#1
Coalesced [997] bitmap_clear::bitmap#7 ← bitmap_clear::bitmap#3
Coalesced [1006] bitmap_clear::bitmap#6 ← bitmap_clear::bitmap#1
Coalesced [1007] bitmap_clear::y#5 ← bitmap_clear::y#1
Coalesced (already) [1008] bitmap_clear::bitmap#8 ← bitmap_clear::bitmap#1
Coalesced [1009] bitmap_clear::x#3 ← bitmap_clear::x#1
Coalesced [1032] bitmap_init::yoffs#7 ← bitmap_init::yoffs#1
Coalesced [1037] bitmap_init::y#5 ← bitmap_init::y#1
Coalesced [1038] bitmap_init::yoffs#5 ← bitmap_init::yoffs#4
Coalesced (already) [1039] bitmap_init::yoffs#6 ← bitmap_init::yoffs#2
Coalesced [1040] bitmap_init::x#5 ← bitmap_init::x#1
Coalesced [1041] bitmap_init::bits#5 ← bitmap_init::bits#4
Coalesced [1042] bitmap_init::bits#6 ← bitmap_init::bits#1
Coalesced [1061] mode_mcchar::col#6 ← mode_mcchar::col#3
Coalesced [1062] mode_mcchar::ch#6 ← mode_mcchar::ch#3
Coalesced [1082] mode_mcchar::cy#5 ← mode_mcchar::cy#1
Coalesced [1083] mode_mcchar::col#5 ← mode_mcchar::col#1
Coalesced [1084] mode_mcchar::ch#5 ← mode_mcchar::ch#1
Coalesced [1085] mode_mcchar::cx#3 ← mode_mcchar::cx#1
Coalesced (already) [1086] mode_mcchar::col#7 ← mode_mcchar::col#1
Coalesced (already) [1087] mode_mcchar::ch#7 ← mode_mcchar::ch#1
Coalesced [1088] mode_mcchar::i#3 ← mode_mcchar::i#1
Coalesced [1108] mode_ecmchar::col#6 ← mode_ecmchar::col#3
Coalesced [1109] mode_ecmchar::ch#6 ← mode_ecmchar::ch#3
Coalesced [1129] mode_ecmchar::cy#5 ← mode_ecmchar::cy#1
Coalesced [1130] mode_ecmchar::col#5 ← mode_ecmchar::col#1
Coalesced [1131] mode_ecmchar::ch#5 ← mode_ecmchar::ch#1
Coalesced [1132] mode_ecmchar::cx#3 ← mode_ecmchar::cx#1
Coalesced (already) [1133] mode_ecmchar::col#7 ← mode_ecmchar::col#1
Coalesced (already) [1134] mode_ecmchar::ch#7 ← mode_ecmchar::ch#1
Coalesced [1135] mode_ecmchar::i#3 ← mode_ecmchar::i#1
Coalesced [1152] mode_stdchar::col#6 ← mode_stdchar::col#3
Coalesced [1153] mode_stdchar::ch#6 ← mode_stdchar::ch#3
Coalesced [1173] mode_stdchar::cy#5 ← mode_stdchar::cy#1
Coalesced [1174] mode_stdchar::col#5 ← mode_stdchar::col#1
Coalesced [1175] mode_stdchar::ch#5 ← mode_stdchar::ch#1
Coalesced [1176] mode_stdchar::cx#3 ← mode_stdchar::cx#1
Coalesced (already) [1177] mode_stdchar::col#7 ← mode_stdchar::col#1
Coalesced (already) [1178] mode_stdchar::ch#7 ← mode_stdchar::ch#1
Coalesced [1179] mode_stdchar::i#3 ← mode_stdchar::i#1
Coalesced [1184] print_str_lines::str#11 ← print_str_lines::str#2
Coalesced [1185] print_char_cursor#103 ← print_char_cursor#21
Coalesced [1192] print_char_cursor#106 ← print_char_cursor#25
Coalesced [1197] print_str_lines::str#10 ← print_str_lines::str#0
Not coalescing [1198] print_char_cursor#102 ← print_line_cursor#19
Coalesced [1199] print_line_cursor#98 ← print_line_cursor#19
Coalesced (already) [1200] print_str_lines::str#12 ← print_str_lines::str#0
Coalesced [1201] print_char_cursor#104 ← print_char_cursor#36
Coalesced (already) [1202] print_char_cursor#105 ← print_char_cursor#35
Coalesced [1203] print_line_cursor#99 ← print_line_cursor#17
Coalesced (already) [1209] print_line_cursor#100 ← print_line_cursor#19
Coalesced [1225] memset::dst#4 ← memset::dst#1
Coalesced down to 125 phi equivalence classes
Culled Empty Block (label) @1
Culled Empty Block (label) @2
Culled Empty Block (label) @4
Culled Empty Block (label) main::@1
Culled Empty Block (label) main::@3
Culled Empty Block (label) menu::@2
Culled Empty Block (label) menu::@33
Culled Empty Block (label) menu::@6
Culled Empty Block (label) menu::@36
Culled Empty Block (label) menu::@38
Culled Empty Block (label) menu::@40
Culled Empty Block (label) menu::@42
Culled Empty Block (label) menu::@44
Culled Empty Block (label) menu::@46
Culled Empty Block (label) menu::@48
Culled Empty Block (label) menu::@50
Culled Empty Block (label) menu::@52
Culled Empty Block (label) menu::@54
Culled Empty Block (label) menu::@56
Culled Empty Block (label) menu::@57
Culled Empty Block (label) menu::@58
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::@18
Culled Empty Block (label) mode_ctrl::@28
Culled Empty Block (label) mode_ctrl::@34
Culled Empty Block (label) mode_ctrl::@33
Culled Empty Block (label) mode_ctrl::@32
Culled Empty Block (label) mode_ctrl::@31
Culled Empty Block (label) mode_ctrl::@30
Culled Empty Block (label) mode_ctrl::@29
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::@13
Culled Empty Block (label) mode_twoplanebitmap::@18
Culled Empty Block (label) mode_twoplanebitmap::@24
Culled Empty Block (label) mode_twoplanebitmap::@25
Culled Empty Block (label) mode_twoplanebitmap::@22
Culled Empty Block (label) mode_twoplanebitmap::@23
Culled Empty Block (label) mode_twoplanebitmap::@20
Culled Empty Block (label) mode_twoplanebitmap::@21
Culled Empty Block (label) mode_twoplanebitmap::@19
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::@11
Culled Empty Block (label) mode_stdbitmap::@13
Culled Empty Block (label) mode_stdbitmap::@15
Culled Empty Block (label) mode_stdbitmap::@16
Culled Empty Block (label) mode_stdbitmap::@14
Culled Empty Block (label) bitmap_line::@16
Culled Empty Block (label) bitmap_line::@15
Culled Empty Block (label) bitmap_line::@18
Culled Empty Block (label) bitmap_line::@17
Culled Empty Block (label) bitmap_line::@20
Culled Empty Block (label) bitmap_line::@19
Culled Empty Block (label) bitmap_line::@22
Culled Empty Block (label) bitmap_line::@21
Culled Empty Block (label) bitmap_line_xdyi::@5
Culled Empty Block (label) bitmap_line_xdyi::@6
Culled Empty Block (label) bitmap_line_ydxi::@5
Culled Empty Block (label) bitmap_line_ydxi::@6
Culled Empty Block (label) bitmap_line_xdyd::@5
Culled Empty Block (label) bitmap_line_xdyd::@6
Culled Empty Block (label) bitmap_line_ydxd::@5
Culled Empty Block (label) bitmap_line_ydxd::@6
Culled Empty Block (label) bitmap_clear::@4
Culled Empty Block (label) bitmap_clear::@5
Culled Empty Block (label) bitmap_init::@3
Culled Empty Block (label) bitmap_init::@4
Culled Empty Block (label) bitmap_init::@10
Culled Empty Block (label) bitmap_init::@11
Culled Empty Block (label) bitmap_init::@8
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::@8
Culled Empty Block (label) print_str_lines::@6
Culled Empty Block (label) print_str_lines::@9
Culled Empty Block (label) print_str_lines::@10
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 @3 to @1
Renumbering block memset::@3 to memset::@1
Renumbering block memset::@4 to memset::@2
Renumbering block print_str_lines::@7 to print_str_lines::@6
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::@9 to bitmap_init::@6
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::@7 to menu::@5
Renumbering block menu::@8 to menu::@6
Renumbering block menu::@9 to menu::@7
Renumbering block menu::@10 to menu::@8
Renumbering block menu::@11 to menu::@9
Renumbering block menu::@12 to menu::@10
Renumbering block menu::@13 to menu::@11
Renumbering block menu::@14 to menu::@12
Renumbering block menu::@15 to menu::@13
Renumbering block menu::@16 to menu::@14
Renumbering block menu::@17 to menu::@15
Renumbering block menu::@18 to menu::@16
Renumbering block menu::@19 to menu::@17
Renumbering block menu::@20 to menu::@18
Renumbering block menu::@21 to menu::@19
Renumbering block menu::@22 to menu::@20
Renumbering block menu::@23 to menu::@21
Renumbering block menu::@24 to menu::@22
Renumbering block menu::@25 to menu::@23
Renumbering block menu::@26 to menu::@24
Renumbering block menu::@27 to menu::@25
Renumbering block menu::@28 to menu::@26
Renumbering block menu::@29 to menu::@27
Renumbering block menu::@30 to menu::@28
Renumbering block menu::@31 to menu::@29
Renumbering block menu::@32 to menu::@30
Renumbering block menu::@34 to menu::@31
Renumbering block menu::@35 to menu::@32
Renumbering block menu::@37 to menu::@33
Renumbering block menu::@39 to menu::@34
Renumbering block menu::@41 to menu::@35
Renumbering block menu::@43 to menu::@36
Renumbering block menu::@45 to menu::@37
Renumbering block menu::@47 to menu::@38
Renumbering block menu::@49 to menu::@39
Renumbering block menu::@51 to menu::@40
Renumbering block menu::@53 to menu::@41
Renumbering block menu::@55 to menu::@42
Renumbering block mode_ctrl::@19 to mode_ctrl::@18
Renumbering block mode_ctrl::@20 to mode_ctrl::@19
Renumbering block mode_ctrl::@21 to mode_ctrl::@20
Renumbering block mode_ctrl::@22 to mode_ctrl::@21
Renumbering block mode_ctrl::@23 to mode_ctrl::@22
Renumbering block mode_ctrl::@24 to mode_ctrl::@23
Renumbering block mode_ctrl::@25 to mode_ctrl::@24
Renumbering block mode_ctrl::@26 to mode_ctrl::@25
Renumbering block mode_ctrl::@27 to mode_ctrl::@26
Renumbering block mode_ctrl::@35 to mode_ctrl::@27
Renumbering block mode_stdbitmap::@12 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::@12 to mode_twoplanebitmap::@11
Renumbering block mode_twoplanebitmap::@14 to mode_twoplanebitmap::@12
Renumbering block mode_twoplanebitmap::@15 to mode_twoplanebitmap::@13
Renumbering block mode_twoplanebitmap::@16 to mode_twoplanebitmap::@14
Renumbering block mode_twoplanebitmap::@17 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()
(void()) main()
main: scope:[main] from @1
asm { sei }
[5] *((const nomodify byte*) PROCPORT_DDR) ← (const nomodify byte) PROCPORT_DDR_MEMORY_MASK
[6] *((const nomodify byte*) PROCPORT) ← (const nomodify byte) PROCPORT_RAM_IO
[7] *((const nomodify byte*) DTV_FEATURE) ← (const nomodify byte) DTV_FEATURE_ENABLE
to:main::@1
main::@1: scope:[main] from main main::@1
[8] phi()
[9] call menu
to:main::@1
(void()) menu()
menu: scope:[menu] from main::@1
[10] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0
[11] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400
[12] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0
[13] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0
[14] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3
[15] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) menu::CHARSET/(word) $4000
[16] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3
[17] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL
[18] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) menu::CHARSET&(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 nomodify byte*) DTV_PALETTE + (byte) menu::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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 nomodify byte*) COLS menu::@3/(byte*) menu::c#1 )
[24] if((byte*) menu::c#2!=(const nomodify byte*) COLS+(word) $3e8) goto menu::@3
to:menu::@4
menu::@4: scope:[menu] from menu::@2
[25] *((const nomodify byte*) BG_COLOR) ← (byte) 0
[26] *((const nomodify byte*) BORDER_COLOR) ← (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::$5 ← (byte) keyboard_key_pressed::return#2
[36] if((byte~) menu::$5==(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::$9 ← (byte) keyboard_key_pressed::return#24
[44] if((byte~) menu::$9==(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::$13 ← (byte) keyboard_key_pressed::return#25
[51] if((byte~) menu::$13==(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::$17 ← (byte) keyboard_key_pressed::return#26
[58] if((byte~) menu::$17==(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::$21 ← (byte) keyboard_key_pressed::return#27
[65] if((byte~) menu::$21==(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::$25 ← (byte) keyboard_key_pressed::return#28
[72] if((byte~) menu::$25==(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::$29 ← (byte) keyboard_key_pressed::return#29
[79] if((byte~) menu::$29==(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::$33 ← (byte) keyboard_key_pressed::return#30
[86] if((byte~) menu::$33==(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::$37 ← (byte) keyboard_key_pressed::return#10
[93] if((byte~) menu::$37==(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::$41 ← (byte) keyboard_key_pressed::return#11
[100] if((byte~) menu::$41==(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::$45 ← (byte) keyboard_key_pressed::return#12
[107] if((byte~) menu::$45==(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::$49 ← (byte) keyboard_key_pressed::return#13
[114] if((byte~) menu::$49==(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 nomodify byte) LIGHT_GREEN
[118] (byte*) menu::c#1 ← ++ (byte*) menu::c#2
to:menu::@2
(void()) mode_8bppchunkybmm()
mode_8bppchunkybmm: scope:[mode_8bppchunkybmm] from menu::@28
[119] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY|(const nomodify byte) DTV_COLORRAM_OFF
[120] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3
[121] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL
[122] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0
[123] *((const nomodify byte*) DTV_PLANEB_START_MI) ← (byte) 0
[124] *((const nomodify byte*) DTV_PLANEB_START_HI) ← <>(const nomodify dword) mode_8bppchunkybmm::PLANEB
[125] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 8
[126] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0
[127] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0
[128] *((const nomodify byte*) BORDER_COLOR) ← (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 nomodify byte*) DTV_PALETTE + (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 nomodify dword) mode_8bppchunkybmm::PLANEB/(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::$7 ← (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#6
[143] (byte) mode_8bppchunkybmm::c#0 ← (byte)(word~) mode_8bppchunkybmm::$7
[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
(void()) mode_ctrl()
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 nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY|(const nomodify byte) DTV_COLORRAM_OFF mode_8bpppixelcell::@13/(const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY mode_ecmchar::@6/(byte) 0 mode_hicolecmchar::@6/(const nomodify byte) DTV_HIGHCOLOR mode_hicolmcchar::@6/(const nomodify byte) DTV_HIGHCOLOR mode_hicolstdchar::@6/(const nomodify byte) DTV_HIGHCOLOR mode_mcchar::@6/(byte) 0 mode_sixsfred2::@12/(const nomodify byte) DTV_LINEAR mode_sixsfred::@12/(const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR mode_stdbitmap::@9/(byte) 0 mode_stdchar::@6/(byte) 0 mode_twoplanebitmap::@15/(const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR )
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 nomodify byte*) RASTER)!=(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 nomodify byte) DTV_LINEAR
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 nomodify byte) DTV_HIGHCOLOR
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 nomodify byte) DTV_OVERSCAN
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 nomodify byte) DTV_BORDER_OFF
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 nomodify byte) DTV_CHUNKY
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 nomodify byte) DTV_COLORRAM_OFF
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 nomodify byte*) DTV_CONTROL) ← (byte) mode_ctrl::ctrl#14
[210] *((const nomodify byte*) BORDER_COLOR) ← (byte) mode_ctrl::ctrl#14
to:mode_ctrl::@1
(byte()) keyboard_key_pressed((byte) keyboard_key_pressed::key)
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::@8/(const nomodify byte) KEY_4 menu::@9/(const nomodify byte) KEY_6 menu::@10/(const nomodify byte) KEY_7 menu::@11/(const nomodify byte) KEY_8 menu::@12/(const nomodify byte) KEY_A menu::@13/(const nomodify byte) KEY_B menu::@14/(const nomodify byte) KEY_C menu::@15/(const nomodify byte) KEY_D menu::@16/(const nomodify byte) KEY_E menu::@5/(const nomodify byte) KEY_1 menu::@6/(const nomodify byte) KEY_2 menu::@7/(const nomodify byte) KEY_3 mode_ctrl::@10/(const nomodify byte) KEY_0 mode_ctrl::@3/(const nomodify byte) KEY_SPACE mode_ctrl::@4/(const nomodify byte) KEY_L mode_ctrl::@5/(const nomodify byte) KEY_H mode_ctrl::@6/(const nomodify byte) KEY_O mode_ctrl::@7/(const nomodify byte) KEY_B mode_ctrl::@8/(const nomodify byte) KEY_U mode_ctrl::@9/(const nomodify byte) KEY_C )
[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*) keyboard_matrix_col_bitmask + (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
(byte()) keyboard_matrix_read((byte) keyboard_matrix_read::rowid)
keyboard_matrix_read: scope:[keyboard_matrix_read] from keyboard_key_pressed
[220] *((byte*)(const nomodify struct MOS6526_CIA*) CIA1) ← *((const byte*) keyboard_matrix_row_bitmask + (byte) keyboard_matrix_read::rowid#0)
[221] (byte) keyboard_matrix_read::return#0 ← ~ *((byte*)(const nomodify struct MOS6526_CIA*) CIA1+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_B)
to:keyboard_matrix_read::@return
keyboard_matrix_read::@return: scope:[keyboard_matrix_read] from keyboard_matrix_read
[222] return
to:@return
(void()) dtvSetCpuBankSegment1((byte) dtvSetCpuBankSegment1::cpuBankIdx)
dtvSetCpuBankSegment1: scope:[dtvSetCpuBankSegment1] from mode_8bppchunkybmm::@2 mode_8bppchunkybmm::@6 mode_8bppchunkybmm::@8
[223] (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 ← phi( mode_8bppchunkybmm::@2/(byte)(const nomodify dword) mode_8bppchunkybmm::PLANEB/(word) $4000 mode_8bppchunkybmm::@6/(byte) dtvSetCpuBankSegment1::cpuBankIdx#1 mode_8bppchunkybmm::@8/(byte)(number) $4000/(number) $4000 )
[224] *((const byte*) dtvSetCpuBankSegment1::cpuBank) ← (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
(void()) mode_8bpppixelcell()
mode_8bpppixelcell: scope:[mode_8bpppixelcell] from menu::@27
[227] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY
[228] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3
[229] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL
[230] *((const nomodify byte*) DTV_PLANEA_START_LO) ← (byte) 0
[231] *((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_8bpppixelcell::PLANEA
[232] *((const nomodify byte*) DTV_PLANEA_START_HI) ← (byte) 0
[233] *((const nomodify byte*) DTV_PLANEA_STEP) ← (byte) 1
[234] *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (byte) 0
[235] *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (byte) 0
[236] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0
[237] *((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_8bpppixelcell::PLANEB
[238] *((const nomodify byte*) DTV_PLANEB_START_HI) ← (byte) 0
[239] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 0
[240] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0
[241] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0
[242] *((const nomodify byte*) BORDER_COLOR) ← (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 nomodify byte*) DTV_PALETTE + (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 nomodify byte*) mode_8bpppixelcell::PLANEA 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::$2 ← (byte) mode_8bpppixelcell::ay#4 & (byte) $f
[250] (byte~) mode_8bpppixelcell::$3 ← (byte~) mode_8bpppixelcell::$2 << (byte) 4
[251] (byte~) mode_8bpppixelcell::$4 ← (byte) mode_8bpppixelcell::ax#2 & (byte) $f
[252] (byte~) mode_8bpppixelcell::$5 ← (byte~) mode_8bpppixelcell::$3 | (byte~) mode_8bpppixelcell::$4
[253] *((byte*) mode_8bpppixelcell::gfxa#2) ← (byte~) mode_8bpppixelcell::$5
[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 nomodify byte*) PROCPORT) ← (const nomodify byte) PROCPORT_RAM_CHARROM
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 nomodify byte*) mode_8bpppixelcell::PLANEB )
[260] (byte*) mode_8bpppixelcell::chargen#4 ← phi( mode_8bpppixelcell::@12/(byte*) mode_8bpppixelcell::chargen#1 mode_8bpppixelcell::@5/(const byte*) mode_8bpppixelcell::CHARGEN )
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::$8 ← (byte) mode_8bpppixelcell::bits#2 & (byte) $80
[266] if((byte~) mode_8bpppixelcell::$8==(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 nomodify byte*) PROCPORT) ← (const nomodify byte) PROCPORT_RAM_IO
[280] call mode_ctrl
to:mode_8bpppixelcell::@return
mode_8bpppixelcell::@return: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@13
[281] return
to:@return
(void()) mode_sixsfred()
mode_sixsfred: scope:[mode_sixsfred] from menu::@26
[282] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR
[283] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3
[284] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL
[285] *((const nomodify byte*) DTV_PLANEA_START_LO) ← (byte) 0
[286] *((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_sixsfred::PLANEA
[287] *((const nomodify byte*) DTV_PLANEA_START_HI) ← (byte) 0
[288] *((const nomodify byte*) DTV_PLANEA_STEP) ← (byte) 1
[289] *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (byte) 0
[290] *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (byte) 0
[291] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0
[292] *((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_sixsfred::PLANEB
[293] *((const nomodify byte*) DTV_PLANEB_START_HI) ← (byte) 0
[294] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 1
[295] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0
[296] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0
[297] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(const nomodify byte*) mode_sixsfred::COLORS/(word) $400
[298] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (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 nomodify byte*) DTV_PALETTE + (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 nomodify byte*) BORDER_COLOR) ← (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 nomodify byte*) mode_sixsfred::COLORS 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::$2 ← (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#4
[307] (byte~) mode_sixsfred::$3 ← (byte~) mode_sixsfred::$2 & (byte) $f
[308] *((byte*) mode_sixsfred::col#2) ← (byte~) mode_sixsfred::$3
[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 nomodify byte*) mode_sixsfred::PLANEA 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::$6 ← (byte) mode_sixsfred::ay#4 >> (byte) 1
[317] (byte) mode_sixsfred::row#0 ← (byte~) mode_sixsfred::$6 & (byte) 3
[318] *((byte*) mode_sixsfred::gfxa#2) ← *((const byte*) mode_sixsfred::row_bitmask + (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 nomodify byte*) mode_sixsfred::PLANEB 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
(void()) mode_twoplanebitmap()
mode_twoplanebitmap: scope:[mode_twoplanebitmap] from menu::@25
[335] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR
[336] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3
[337] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL
[338] *((const nomodify byte*) DTV_PLANEA_START_LO) ← (byte) 0
[339] *((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_twoplanebitmap::PLANEA
[340] *((const nomodify byte*) DTV_PLANEA_START_HI) ← (byte) 0
[341] *((const nomodify byte*) DTV_PLANEA_STEP) ← (byte) 1
[342] *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (byte) 0
[343] *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (byte) 0
[344] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0
[345] *((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_twoplanebitmap::PLANEB
[346] *((const nomodify byte*) DTV_PLANEB_START_HI) ← (byte) 0
[347] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 1
[348] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0
[349] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0
[350] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(const nomodify byte*) mode_twoplanebitmap::COLORS/(word) $400
[351] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (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 nomodify byte*) DTV_PALETTE + (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 nomodify byte*) BORDER_COLOR) ← (byte) 0
[357] *((const nomodify byte*) BG_COLOR) ← (byte) $70
[358] *((const nomodify byte*) BG_COLOR1) ← (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 nomodify byte*) mode_twoplanebitmap::COLORS 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::$2 ← (byte) mode_twoplanebitmap::cy#4 & (byte) $f
[362] (byte~) mode_twoplanebitmap::$3 ← (byte~) mode_twoplanebitmap::$2 << (byte) 4
[363] (byte~) mode_twoplanebitmap::$4 ← (byte) mode_twoplanebitmap::cx#2 & (byte) $f
[364] (byte~) mode_twoplanebitmap::$5 ← (byte~) mode_twoplanebitmap::$3 | (byte~) mode_twoplanebitmap::$4
[365] *((byte*) mode_twoplanebitmap::col#2) ← (byte~) mode_twoplanebitmap::$5
[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 nomodify byte*) mode_twoplanebitmap::PLANEA )
[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::$8 ← (byte) mode_twoplanebitmap::ay#5 & (byte) 4
[374] if((byte~) mode_twoplanebitmap::$8==(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 nomodify byte*) mode_twoplanebitmap::PLANEB 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
(void()) mode_sixsfred2()
mode_sixsfred2: scope:[mode_sixsfred2] from menu::@24
[395] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_LINEAR
[396] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3
[397] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL
[398] *((const nomodify byte*) DTV_PLANEA_START_LO) ← (byte) 0
[399] *((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_sixsfred2::PLANEA
[400] *((const nomodify byte*) DTV_PLANEA_START_HI) ← (byte) 0
[401] *((const nomodify byte*) DTV_PLANEA_STEP) ← (byte) 1
[402] *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (byte) 0
[403] *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (byte) 0
[404] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0
[405] *((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_sixsfred2::PLANEB
[406] *((const nomodify byte*) DTV_PLANEB_START_HI) ← (byte) 0
[407] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 1
[408] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0
[409] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0
[410] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(const nomodify byte*) mode_sixsfred2::COLORS/(word) $400
[411] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (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 nomodify byte*) DTV_PALETTE + (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 nomodify byte*) BORDER_COLOR) ← (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 nomodify byte*) mode_sixsfred2::COLORS 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::$2 ← (byte) mode_sixsfred2::cx#2 & (byte) 3
[420] (byte~) mode_sixsfred2::$3 ← (byte~) mode_sixsfred2::$2 << (byte) 4
[421] (byte~) mode_sixsfred2::$4 ← (byte) mode_sixsfred2::cy#4 & (byte) 3
[422] (byte~) mode_sixsfred2::$5 ← (byte~) mode_sixsfred2::$3 | (byte~) mode_sixsfred2::$4
[423] *((byte*) mode_sixsfred2::col#2) ← (byte~) mode_sixsfred2::$5
[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 nomodify byte*) mode_sixsfred2::PLANEA 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::$8 ← (byte) mode_sixsfred2::ay#4 >> (byte) 1
[432] (byte) mode_sixsfred2::row#0 ← (byte~) mode_sixsfred2::$8 & (byte) 3
[433] *((byte*) mode_sixsfred2::gfxa#2) ← *((const byte*) mode_sixsfred2::row_bitmask + (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 nomodify byte*) mode_sixsfred2::PLANEB 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
(void()) mode_hicolmcchar()
mode_hicolmcchar: scope:[mode_hicolmcchar] from menu::@23
[450] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0
[451] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify byte*) mode_hicolmcchar::COLORS/(word) $400
[452] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0
[453] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR
[454] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3
[455] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_hicolmcchar::CHARSET/(word) $4000
[456] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3
[457] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL|(const nomodify byte) VIC_MCM
[458] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolmcchar::CHARSET&(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 nomodify byte*) DTV_PALETTE + (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 nomodify byte*) BORDER_COLOR) ← (byte) 0
[464] *((const nomodify byte*) BG_COLOR) ← (byte) $50
[465] *((const nomodify byte*) BG_COLOR1) ← (byte) $54
[466] *((const nomodify byte*) BG_COLOR2) ← (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 nomodify byte*) mode_hicolmcchar::SCREEN mode_hicolmcchar::@5/(byte*) mode_hicolmcchar::ch#1 )
[467] (byte*) mode_hicolmcchar::col#3 ← phi( mode_hicolmcchar::@2/(const nomodify byte*) mode_hicolmcchar::COLORS 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::$2 ← (byte) mode_hicolmcchar::cy#4 & (byte) $f
[470] (byte~) mode_hicolmcchar::$3 ← (byte~) mode_hicolmcchar::$2 << (byte) 4
[471] (byte~) mode_hicolmcchar::$4 ← (byte) mode_hicolmcchar::cx#2 & (byte) $f
[472] (byte) mode_hicolmcchar::v#0 ← (byte~) mode_hicolmcchar::$3 | (byte~) mode_hicolmcchar::$4
[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
(void()) mode_hicolecmchar()
mode_hicolecmchar: scope:[mode_hicolecmchar] from menu::@22
[484] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0
[485] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify byte*) mode_hicolecmchar::COLORS/(word) $400
[486] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0
[487] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR
[488] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3
[489] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_hicolecmchar::CHARSET/(word) $4000
[490] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(const nomodify byte) VIC_ECM|(byte) 3
[491] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL
[492] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolecmchar::CHARSET&(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 nomodify byte*) DTV_PALETTE + (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 nomodify byte*) BORDER_COLOR) ← (byte) 0
[498] *((const nomodify byte*) BG_COLOR) ← (byte) $50
[499] *((const nomodify byte*) BG_COLOR1) ← (byte) $54
[500] *((const nomodify byte*) BG_COLOR2) ← (byte) $58
[501] *((const nomodify byte*) BG_COLOR3) ← (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 nomodify byte*) mode_hicolecmchar::SCREEN mode_hicolecmchar::@5/(byte*) mode_hicolecmchar::ch#1 )
[502] (byte*) mode_hicolecmchar::col#3 ← phi( mode_hicolecmchar::@2/(const nomodify byte*) mode_hicolecmchar::COLORS 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::$2 ← (byte) mode_hicolecmchar::cy#4 & (byte) $f
[505] (byte~) mode_hicolecmchar::$3 ← (byte~) mode_hicolecmchar::$2 << (byte) 4
[506] (byte~) mode_hicolecmchar::$4 ← (byte) mode_hicolecmchar::cx#2 & (byte) $f
[507] (byte) mode_hicolecmchar::v#0 ← (byte~) mode_hicolecmchar::$3 | (byte~) mode_hicolecmchar::$4
[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
(void()) mode_hicolstdchar()
mode_hicolstdchar: scope:[mode_hicolstdchar] from menu::@21
[519] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0
[520] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify byte*) mode_hicolstdchar::COLORS/(word) $400
[521] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0
[522] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR
[523] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3
[524] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_hicolstdchar::CHARSET/(word) $4000
[525] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3
[526] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL
[527] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolstdchar::CHARSET&(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 nomodify byte*) DTV_PALETTE + (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 nomodify byte*) BG_COLOR) ← (byte) 0
[533] *((const nomodify byte*) BORDER_COLOR) ← (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 nomodify byte*) mode_hicolstdchar::SCREEN mode_hicolstdchar::@5/(byte*) mode_hicolstdchar::ch#1 )
[534] (byte*) mode_hicolstdchar::col#3 ← phi( mode_hicolstdchar::@2/(const nomodify byte*) mode_hicolstdchar::COLORS 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::$2 ← (byte) mode_hicolstdchar::cy#4 & (byte) $f
[537] (byte~) mode_hicolstdchar::$3 ← (byte~) mode_hicolstdchar::$2 << (byte) 4
[538] (byte~) mode_hicolstdchar::$4 ← (byte) mode_hicolstdchar::cx#2 & (byte) $f
[539] (byte) mode_hicolstdchar::v#0 ← (byte~) mode_hicolstdchar::$3 | (byte~) mode_hicolstdchar::$4
[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
(void()) mode_stdbitmap()
mode_stdbitmap: scope:[mode_stdbitmap] from menu::@20
[551] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0
[552] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0
[553] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3
[554] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_stdbitmap::BITMAP/(word) $4000
[555] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3
[556] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL
[557] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_stdbitmap::BITMAP&(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 nomodify byte*) DTV_PALETTE + (byte) mode_stdbitmap::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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 nomodify byte*) BG_COLOR) ← (const nomodify byte) BLACK
[563] *((const nomodify byte*) BORDER_COLOR) ← (const nomodify byte) BLACK
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 nomodify byte*) mode_stdbitmap::SCREEN 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::$4 ← (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#4
[567] (byte) mode_stdbitmap::col#0 ← (byte~) mode_stdbitmap::$4 & (byte) $f
[568] (byte) mode_stdbitmap::col2#0 ← (byte) $f - (byte) mode_stdbitmap::col#0
[569] (byte~) mode_stdbitmap::$7 ← (byte) mode_stdbitmap::col#0 << (byte) 4
[570] (byte~) mode_stdbitmap::$8 ← (byte~) mode_stdbitmap::$7 | (byte) mode_stdbitmap::col2#0
[571] *((byte*) mode_stdbitmap::ch#2) ← (byte~) mode_stdbitmap::$8
[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) 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 + (byte) mode_stdbitmap::l#2)
[587] (byte) bitmap_line::x1#0 ← *((const byte*) mode_stdbitmap::lines_x+(byte) 1 + (byte) mode_stdbitmap::l#2)
[588] (byte) bitmap_line::y0#0 ← *((const byte*) mode_stdbitmap::lines_y + (byte) mode_stdbitmap::l#2)
[589] (byte) bitmap_line::y1#0 ← *((const byte*) mode_stdbitmap::lines_y+(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
(void()) bitmap_line((byte) bitmap_line::x0 , (byte) bitmap_line::x1 , (byte) bitmap_line::y0 , (byte) bitmap_line::y1)
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
(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)
bitmap_line_xdyi: scope:[bitmap_line_xdyi] from bitmap_line::@13 bitmap_line::@8
[654] (byte) bitmap_line_xdyi::x1#6 ← phi( bitmap_line::@13/(byte) bitmap_line_xdyi::x1#1 bitmap_line::@8/(byte) bitmap_line_xdyi::x1#0 )
[654] (byte) bitmap_line_xdyi::xd#5 ← phi( bitmap_line::@13/(byte) bitmap_line_xdyi::xd#1 bitmap_line::@8/(byte) bitmap_line_xdyi::xd#0 )
[654] (byte) bitmap_line_xdyi::y#5 ← phi( bitmap_line::@13/(byte) bitmap_line_xdyi::y#1 bitmap_line::@8/(byte) bitmap_line_xdyi::y#0 )
[654] (byte) bitmap_line_xdyi::x#6 ← phi( bitmap_line::@13/(byte) bitmap_line_xdyi::x#1 bitmap_line::@8/(byte) bitmap_line_xdyi::x#0 )
[654] (byte) bitmap_line_xdyi::yd#2 ← phi( bitmap_line::@13/(byte) bitmap_line_xdyi::yd#1 bitmap_line::@8/(byte) bitmap_line_xdyi::yd#0 )
[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
(void()) bitmap_plot((byte) bitmap_plot::x , (byte) bitmap_plot::y)
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 to_nomodify byte*) bitmap_plot_xhi + (byte) bitmap_plot::x#4) w= *((const to_nomodify byte*) bitmap_plot_xlo + (byte) bitmap_plot::x#4)
[671] (word) bitmap_plot::plotter_y#0 ← *((const to_nomodify byte*) bitmap_plot_yhi + (byte) bitmap_plot::y#4) w= *((const to_nomodify byte*) bitmap_plot_ylo + (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 to_nomodify byte*) bitmap_plot_bit + (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
(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)
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
(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)
bitmap_line_xdyd: scope:[bitmap_line_xdyd] from bitmap_line::@12 bitmap_line::@9
[691] (byte) bitmap_line_xdyd::x1#6 ← phi( bitmap_line::@12/(byte) bitmap_line_xdyd::x1#1 bitmap_line::@9/(byte) bitmap_line_xdyd::x1#0 )
[691] (byte) bitmap_line_xdyd::xd#5 ← phi( bitmap_line::@12/(byte) bitmap_line_xdyd::xd#1 bitmap_line::@9/(byte) bitmap_line_xdyd::xd#0 )
[691] (byte) bitmap_line_xdyd::y#5 ← phi( bitmap_line::@12/(byte) bitmap_line_xdyd::y#1 bitmap_line::@9/(byte) bitmap_line_xdyd::y#0 )
[691] (byte) bitmap_line_xdyd::x#6 ← phi( bitmap_line::@12/(byte) bitmap_line_xdyd::x#1 bitmap_line::@9/(byte) bitmap_line_xdyd::x#0 )
[691] (byte) bitmap_line_xdyd::yd#2 ← phi( bitmap_line::@12/(byte) bitmap_line_xdyd::yd#1 bitmap_line::@9/(byte) bitmap_line_xdyd::yd#0 )
[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
(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)
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
(void()) bitmap_clear()
bitmap_clear: scope:[bitmap_clear] from mode_stdbitmap::@10
[721] (word) bitmap_clear::bitmap#0 ← *((const to_nomodify byte*) bitmap_plot_xhi) w= *((const to_nomodify byte*) bitmap_plot_xlo)
[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
(void()) bitmap_init((byte*) bitmap_init::bitmap)
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 to_nomodify byte*) bitmap_plot_xlo + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$0
[736] *((const to_nomodify byte*) bitmap_plot_xhi + (byte) bitmap_init::x#2) ← >(const nomodify byte*) mode_stdbitmap::BITMAP
[737] *((const to_nomodify byte*) bitmap_plot_bit + (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 to_nomodify byte*) bitmap_plot_ylo + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$8
[749] (byte~) bitmap_init::$9 ← > (byte*) bitmap_init::yoffs#2
[750] *((const to_nomodify byte*) bitmap_plot_yhi + (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
(void()) mode_mcchar()
mode_mcchar: scope:[mode_mcchar] from menu::@19
[757] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0
[758] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400
[759] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0
[760] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0
[761] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3
[762] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_mcchar::CHARSET/(word) $4000
[763] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3
[764] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL|(const nomodify byte) VIC_MCM
[765] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_mcchar::CHARSET&(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 nomodify byte*) DTV_PALETTE + (byte) mode_mcchar::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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 nomodify byte*) BORDER_COLOR) ← (byte) 0
[771] *((const nomodify byte*) BG_COLOR) ← (const nomodify byte) BLACK
[772] *((const nomodify byte*) BG_COLOR1) ← (const nomodify byte) GREEN
[773] *((const nomodify byte*) BG_COLOR2) ← (const nomodify byte) BLUE
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 nomodify byte*) mode_mcchar::SCREEN mode_mcchar::@5/(byte*) mode_mcchar::ch#1 )
[774] (byte*) mode_mcchar::col#3 ← phi( mode_mcchar::@2/(const nomodify byte*) mode_mcchar::COLORS 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::$2 ← (byte) mode_mcchar::cx#2 + (byte) mode_mcchar::cy#4
[777] (byte~) mode_mcchar::$3 ← (byte~) mode_mcchar::$2 & (byte) $f
[778] *((byte*) mode_mcchar::col#2) ← (byte~) mode_mcchar::$3
[779] (byte*) mode_mcchar::col#1 ← ++ (byte*) mode_mcchar::col#2
[780] (byte~) mode_mcchar::$4 ← (byte) mode_mcchar::cy#4 & (byte) $f
[781] (byte~) mode_mcchar::$5 ← (byte~) mode_mcchar::$4 << (byte) 4
[782] (byte~) mode_mcchar::$6 ← (byte) mode_mcchar::cx#2 & (byte) $f
[783] (byte~) mode_mcchar::$7 ← (byte~) mode_mcchar::$5 | (byte~) mode_mcchar::$6
[784] *((byte*) mode_mcchar::ch#2) ← (byte~) mode_mcchar::$7
[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
(void()) mode_ecmchar()
mode_ecmchar: scope:[mode_ecmchar] from menu::@18
[793] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0
[794] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400
[795] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0
[796] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0
[797] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3
[798] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_ecmchar::CHARSET/(word) $4000
[799] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(const nomodify byte) VIC_ECM|(byte) 3
[800] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL
[801] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_ecmchar::CHARSET&(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 nomodify byte*) DTV_PALETTE + (byte) mode_ecmchar::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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 nomodify byte*) BORDER_COLOR) ← (byte) 0
[807] *((const nomodify byte*) BG_COLOR) ← (byte) 0
[808] *((const nomodify byte*) BG_COLOR1) ← (byte) 2
[809] *((const nomodify byte*) BG_COLOR2) ← (byte) 5
[810] *((const nomodify byte*) BG_COLOR3) ← (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 nomodify byte*) mode_ecmchar::SCREEN mode_ecmchar::@5/(byte*) mode_ecmchar::ch#1 )
[811] (byte*) mode_ecmchar::col#3 ← phi( mode_ecmchar::@2/(const nomodify byte*) mode_ecmchar::COLORS 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::$2 ← (byte) mode_ecmchar::cx#2 + (byte) mode_ecmchar::cy#4
[814] (byte~) mode_ecmchar::$3 ← (byte~) mode_ecmchar::$2 & (byte) $f
[815] *((byte*) mode_ecmchar::col#2) ← (byte~) mode_ecmchar::$3
[816] (byte*) mode_ecmchar::col#1 ← ++ (byte*) mode_ecmchar::col#2
[817] (byte~) mode_ecmchar::$4 ← (byte) mode_ecmchar::cy#4 & (byte) $f
[818] (byte~) mode_ecmchar::$5 ← (byte~) mode_ecmchar::$4 << (byte) 4
[819] (byte~) mode_ecmchar::$6 ← (byte) mode_ecmchar::cx#2 & (byte) $f
[820] (byte~) mode_ecmchar::$7 ← (byte~) mode_ecmchar::$5 | (byte~) mode_ecmchar::$6
[821] *((byte*) mode_ecmchar::ch#2) ← (byte~) mode_ecmchar::$7
[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
(void()) mode_stdchar()
mode_stdchar: scope:[mode_stdchar] from menu::@17
[830] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0
[831] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400
[832] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0
[833] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0
[834] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3
[835] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_stdchar::CHARSET/(word) $4000
[836] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3
[837] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL
[838] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_stdchar::CHARSET&(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 nomodify byte*) DTV_PALETTE + (byte) mode_stdchar::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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 nomodify byte*) BG_COLOR) ← (byte) 0
[844] *((const nomodify byte*) BORDER_COLOR) ← (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 nomodify byte*) mode_stdchar::SCREEN mode_stdchar::@5/(byte*) mode_stdchar::ch#1 )
[845] (byte*) mode_stdchar::col#3 ← phi( mode_stdchar::@2/(const nomodify byte*) mode_stdchar::COLORS 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::$2 ← (byte) mode_stdchar::cx#2 + (byte) mode_stdchar::cy#4
[848] (byte~) mode_stdchar::$3 ← (byte~) mode_stdchar::$2 & (byte) $f
[849] *((byte*) mode_stdchar::col#2) ← (byte~) mode_stdchar::$3
[850] (byte*) mode_stdchar::col#1 ← ++ (byte*) mode_stdchar::col#2
[851] (byte~) mode_stdchar::$4 ← (byte) mode_stdchar::cy#4 & (byte) $f
[852] (byte~) mode_stdchar::$5 ← (byte~) mode_stdchar::$4 << (byte) 4
[853] (byte~) mode_stdchar::$6 ← (byte) mode_stdchar::cx#2 & (byte) $f
[854] (byte~) mode_stdchar::$7 ← (byte~) mode_stdchar::$5 | (byte~) mode_stdchar::$6
[855] *((byte*) mode_stdchar::ch#2) ← (byte~) mode_stdchar::$7
[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
(void()) print_str_lines((byte*) print_str_lines::str)
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 nomodify byte*) menu::SCREEN print_str_lines::@6/(byte*) print_line_cursor#19 )
[865] (byte*) print_char_cursor#21 ← phi( print_str_lines/(const nomodify byte*) menu::SCREEN print_str_lines::@6/(byte*) print_char_cursor#102 )
[865] (byte*) print_str_lines::str#2 ← phi( print_str_lines/(const byte*) MENU_TEXT 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#35 ← phi( print_str_lines::@1/(byte*) print_char_cursor#21 print_str_lines::@3/(byte*) print_char_cursor#36 )
[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::ch#0 ← (byte) print_str_lines::ch#0
[873] call print_char
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#36 ← phi( print_str_lines::@2/(byte*) print_char_cursor#35 print_str_lines::@4/(byte*) print_char_cursor#25 )
[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#102 ← (byte*) print_line_cursor#19
to:print_str_lines::@1
(void()) print_ln()
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#36) goto print_ln::@1
to:print_ln::@return
print_ln::@return: scope:[print_ln] from print_ln::@1
[883] return
to:@return
(void()) print_char((byte) print_char::ch)
print_char: scope:[print_char] from print_str_lines::@4
[884] *((byte*) print_char_cursor#35) ← (byte) print_char::ch#0
[885] (byte*) print_char_cursor#25 ← ++ (byte*) print_char_cursor#35
to:print_char::@return
print_char::@return: scope:[print_char] from print_char
[886] return
to:@return
(void()) print_cls()
print_cls: scope:[print_cls] from menu::@29
[887] phi()
[888] call memset
to:print_cls::@return
print_cls::@return: scope:[print_cls] from print_cls
[889] return
to:@return
(void*()) memset((void*) memset::str , (byte) memset::c , (word) memset::num)
memset: scope:[memset] from print_cls
[890] phi()
to:memset::@1
memset::@1: scope:[memset] from memset memset::@2
[891] (byte*) memset::dst#2 ← phi( memset/(byte*)(const void*) memset::str#0 memset::@2/(byte*) memset::dst#1 )
[892] if((byte*) memset::dst#2!=(const byte*) memset::end#0) goto memset::@2
to:memset::@return
memset::@return: scope:[memset] from memset::@1
[893] return
to:@return
memset::@2: scope:[memset] from memset::@1
[894] *((byte*) memset::dst#2) ← (const byte) memset::c#0
[895] (byte*) memset::dst#1 ← ++ (byte*) memset::dst#2
to:memset::@1
(void()) print_set_screen((byte*) print_set_screen::screen)
print_set_screen: scope:[print_set_screen] from menu::@4
[896] phi()
to:print_set_screen::@return
print_set_screen::@return: scope:[print_set_screen] from print_set_screen
[897] 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) MOS6526_CIA::INTERRUPT
(byte) MOS6526_CIA::PORT_A
(byte) MOS6526_CIA::PORT_A_DDR
(byte) MOS6526_CIA::PORT_B
(byte) MOS6526_CIA::PORT_B_DDR
(byte) MOS6526_CIA::SERIAL_DATA
(word) MOS6526_CIA::TIMER_A
(byte) MOS6526_CIA::TIMER_A_CONTROL
(word) MOS6526_CIA::TIMER_B
(byte) MOS6526_CIA::TIMER_B_CONTROL
(byte) MOS6526_CIA::TOD_10THS
(byte) MOS6526_CIA::TOD_HOURS
(byte) MOS6526_CIA::TOD_MIN
(byte) MOS6526_CIA::TOD_SEC
(byte) MOS6569_VICII::BG_COLOR
(byte) MOS6569_VICII::BG_COLOR1
(byte) MOS6569_VICII::BG_COLOR2
(byte) MOS6569_VICII::BG_COLOR3
(byte) MOS6569_VICII::BORDER_COLOR
(byte) MOS6569_VICII::CONTROL1
(byte) MOS6569_VICII::CONTROL2
(byte) MOS6569_VICII::IRQ_ENABLE
(byte) MOS6569_VICII::IRQ_STATUS
(byte) MOS6569_VICII::LIGHTPEN_X
(byte) MOS6569_VICII::LIGHTPEN_Y
(byte) MOS6569_VICII::MEMORY
(byte) MOS6569_VICII::RASTER
(byte) MOS6569_VICII::SPRITE0_COLOR
(byte) MOS6569_VICII::SPRITE0_X
(byte) MOS6569_VICII::SPRITE0_Y
(byte) MOS6569_VICII::SPRITE1_COLOR
(byte) MOS6569_VICII::SPRITE1_X
(byte) MOS6569_VICII::SPRITE1_Y
(byte) MOS6569_VICII::SPRITE2_COLOR
(byte) MOS6569_VICII::SPRITE2_X
(byte) MOS6569_VICII::SPRITE2_Y
(byte) MOS6569_VICII::SPRITE3_COLOR
(byte) MOS6569_VICII::SPRITE3_X
(byte) MOS6569_VICII::SPRITE3_Y
(byte) MOS6569_VICII::SPRITE4_COLOR
(byte) MOS6569_VICII::SPRITE4_X
(byte) MOS6569_VICII::SPRITE4_Y
(byte) MOS6569_VICII::SPRITE5_COLOR
(byte) MOS6569_VICII::SPRITE5_X
(byte) MOS6569_VICII::SPRITE5_Y
(byte) MOS6569_VICII::SPRITE6_COLOR
(byte) MOS6569_VICII::SPRITE6_X
(byte) MOS6569_VICII::SPRITE6_Y
(byte) MOS6569_VICII::SPRITE7_COLOR
(byte) MOS6569_VICII::SPRITE7_X
(byte) MOS6569_VICII::SPRITE7_Y
(byte) MOS6569_VICII::SPRITES_BG_COLLISION
(byte) MOS6569_VICII::SPRITES_COLLISION
(byte) MOS6569_VICII::SPRITES_ENABLE
(byte) MOS6569_VICII::SPRITES_EXPAND_X
(byte) MOS6569_VICII::SPRITES_EXPAND_Y
(byte) MOS6569_VICII::SPRITES_MC
(byte) MOS6569_VICII::SPRITES_MCOLOR1
(byte) MOS6569_VICII::SPRITES_MCOLOR2
(byte) MOS6569_VICII::SPRITES_PRIORITY
(byte) MOS6569_VICII::SPRITES_XMSB
(byte) MOS6581_SID::CH1_ATTACK_DECAY
(byte) MOS6581_SID::CH1_CONTROL
(word) MOS6581_SID::CH1_FREQ
(word) MOS6581_SID::CH1_PULSE_WIDTH
(byte) MOS6581_SID::CH1_SUSTAIN_RELEASE
(byte) MOS6581_SID::CH2_ATTACK_DECAY
(byte) MOS6581_SID::CH2_CONTROL
(word) MOS6581_SID::CH2_FREQ
(word) MOS6581_SID::CH2_PULSE_WIDTH
(byte) MOS6581_SID::CH2_SUSTAIN_RELEASE
(byte) MOS6581_SID::CH3_ATTACK_DECAY
(byte) MOS6581_SID::CH3_CONTROL
(byte) MOS6581_SID::CH3_ENV
(word) MOS6581_SID::CH3_FREQ
(byte) MOS6581_SID::CH3_OSC
(word) MOS6581_SID::CH3_PULSE_WIDTH
(byte) MOS6581_SID::CH3_SUSTAIN_RELEASE
(byte) MOS6581_SID::FILTER_CUTOFF_HIGH
(byte) MOS6581_SID::FILTER_CUTOFF_LOW
(byte) MOS6581_SID::FILTER_SETUP
(byte) MOS6581_SID::POT_X
(byte) MOS6581_SID::POT_Y
(byte) MOS6581_SID::VOLUME_FILTER_MODE
(void()) bitmap_clear()
(byte*) bitmap_clear::bitmap
(word) bitmap_clear::bitmap#0 100001.0
(byte*) bitmap_clear::bitmap#1 4.2000000599999994E7
(byte*) bitmap_clear::bitmap#2 1.55000002E8
(byte*) bitmap_clear::bitmap#3 2.0100003E7
(byte*) bitmap_clear::bitmap#5 200002.0
(byte) bitmap_clear::x
(byte) bitmap_clear::x#1 1.500000015E8
(byte) bitmap_clear::x#2 6.6666667333333336E7
(byte) bitmap_clear::y
(byte) bitmap_clear::y#1 1.50000015E7
(byte) bitmap_clear::y#4 3333333.6666666665
(void()) bitmap_init((byte*) bitmap_init::bitmap)
(byte~) bitmap_init::$0 2.0000002E7
(byte~) bitmap_init::$10 5000000.5
(byte~) bitmap_init::$7 2.0000002E7
(byte~) bitmap_init::$8 2.0000002E7
(byte~) bitmap_init::$9 2.0000002E7
(byte*) bitmap_init::bitmap
(byte) bitmap_init::bits
(byte) bitmap_init::bits#1 1.0000001E7
(byte) bitmap_init::bits#3 6000000.6
(byte) bitmap_init::bits#4 6666667.333333333
(byte) bitmap_init::x
(byte) bitmap_init::x#1 1.50000015E7
(byte) bitmap_init::x#2 6666667.333333333
(byte) bitmap_init::y
(byte) bitmap_init::y#1 1.50000015E7
(byte) bitmap_init::y#2 5000000.5
(byte*) bitmap_init::yoffs
(byte*) bitmap_init::yoffs#1 2.0000002E7
(byte*) bitmap_init::yoffs#2 6250000.625
(byte*) bitmap_init::yoffs#4 1.0000001E7
(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 3956522.1739130435
(byte) bitmap_line::x1
(byte) bitmap_line::x1#0 4136364.090909091
(byte) bitmap_line::xd
(byte) bitmap_line::xd#1 3500000.3499999996
(byte) bitmap_line::xd#2 3500000.3499999996
(byte) bitmap_line::y0
(byte) bitmap_line::y0#0 5761905.380952382
(byte) bitmap_line::y1
(byte) bitmap_line::y1#0 6050000.6499999985
(byte) bitmap_line::yd
(byte) bitmap_line::yd#1 4444444.888888889
(byte) bitmap_line::yd#10 4444444.888888889
(byte) bitmap_line::yd#11 4444444.888888889
(byte) bitmap_line::yd#2 4444444.888888889
(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 2.00000000002E11
(byte) bitmap_line_xdyd::e
(byte) bitmap_line_xdyd::e#0 2.00000002E8
(byte) bitmap_line_xdyd::e#1 1.3333333333466667E11
(byte) bitmap_line_xdyd::e#2 2.00000000002E11
(byte) bitmap_line_xdyd::e#3 4.0020000000600006E10
(byte) bitmap_line_xdyd::e#6 1.00000000001E11
(byte) bitmap_line_xdyd::x
(byte) bitmap_line_xdyd::x#0 4000000.4
(byte) bitmap_line_xdyd::x#1 4000000.4
(byte) bitmap_line_xdyd::x#2 3.7500000000375E10
(byte) bitmap_line_xdyd::x#3 7.5025000001E10
(byte) bitmap_line_xdyd::x#6 6.00000015E7
(byte) bitmap_line_xdyd::x1
(byte) bitmap_line_xdyd::x1#0 6666667.333333333
(byte) bitmap_line_xdyd::x1#1 6666667.333333333
(byte) bitmap_line_xdyd::x1#6 7.1442857145E9
(byte) bitmap_line_xdyd::xd
(byte) bitmap_line_xdyd::xd#0 1.0000001E7
(byte) bitmap_line_xdyd::xd#1 1.0000001E7
(byte) bitmap_line_xdyd::xd#5 1.4287142857428572E10
(byte) bitmap_line_xdyd::y
(byte) bitmap_line_xdyd::y#0 5000000.5
(byte) bitmap_line_xdyd::y#1 5000000.5
(byte) bitmap_line_xdyd::y#2 1.00000000001E11
(byte) bitmap_line_xdyd::y#3 5.715714285785715E10
(byte) bitmap_line_xdyd::y#5 6.00000015E7
(byte) bitmap_line_xdyd::y#6 1.00000000001E11
(byte) bitmap_line_xdyd::yd
(byte) bitmap_line_xdyd::yd#0 2.0000002E7
(byte) bitmap_line_xdyd::yd#1 2.0000002E7
(byte) bitmap_line_xdyd::yd#2 7.151428571714286E9
(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 2.00000000002E11
(byte) bitmap_line_xdyi::e
(byte) bitmap_line_xdyi::e#0 2.00000002E8
(byte) bitmap_line_xdyi::e#1 1.3333333333466667E11
(byte) bitmap_line_xdyi::e#2 2.00000000002E11
(byte) bitmap_line_xdyi::e#3 4.0020000000600006E10
(byte) bitmap_line_xdyi::e#6 1.00000000001E11
(byte) bitmap_line_xdyi::x
(byte) bitmap_line_xdyi::x#0 4000000.4
(byte) bitmap_line_xdyi::x#1 4000000.4
(byte) bitmap_line_xdyi::x#2 3.7500000000375E10
(byte) bitmap_line_xdyi::x#3 7.5025000001E10
(byte) bitmap_line_xdyi::x#6 6.00000015E7
(byte) bitmap_line_xdyi::x1
(byte) bitmap_line_xdyi::x1#0 6666667.333333333
(byte) bitmap_line_xdyi::x1#1 6666667.333333333
(byte) bitmap_line_xdyi::x1#6 7.1442857145E9
(byte) bitmap_line_xdyi::xd
(byte) bitmap_line_xdyi::xd#0 1.0000001E7
(byte) bitmap_line_xdyi::xd#1 1.0000001E7
(byte) bitmap_line_xdyi::xd#5 1.4287142857428572E10
(byte) bitmap_line_xdyi::y
(byte) bitmap_line_xdyi::y#0 5000000.5
(byte) bitmap_line_xdyi::y#1 5000000.5
(byte) bitmap_line_xdyi::y#2 1.00000000001E11
(byte) bitmap_line_xdyi::y#3 5.715714285785715E10
(byte) bitmap_line_xdyi::y#5 6.00000015E7
(byte) bitmap_line_xdyi::y#6 1.00000000001E11
(byte) bitmap_line_xdyi::yd
(byte) bitmap_line_xdyi::yd#0 2.0000002E7
(byte) bitmap_line_xdyi::yd#1 2.0000002E7
(byte) bitmap_line_xdyi::yd#2 7.151428571714286E9
(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 2.00000000002E11
(byte) bitmap_line_ydxd::e
(byte) bitmap_line_ydxd::e#0 2.00000002E8
(byte) bitmap_line_ydxd::e#1 1.3333333333466667E11
(byte) bitmap_line_ydxd::e#2 2.00000000002E11
(byte) bitmap_line_ydxd::e#3 4.0020000000600006E10
(byte) bitmap_line_ydxd::e#6 1.00000000001E11
(byte) bitmap_line_ydxd::x
(byte) bitmap_line_ydxd::x#0 5000000.5
(byte) bitmap_line_ydxd::x#1 5000000.5
(byte) bitmap_line_ydxd::x#2 1.00000000001E11
(byte) bitmap_line_ydxd::x#3 5.715714285785715E10
(byte) bitmap_line_ydxd::x#5 6.00000015E7
(byte) bitmap_line_ydxd::x#6 1.00000000001E11
(byte) bitmap_line_ydxd::xd
(byte) bitmap_line_ydxd::xd#0 2.0000002E7
(byte) bitmap_line_ydxd::xd#1 2.0000002E7
(byte) bitmap_line_ydxd::xd#2 7.151428571714286E9
(byte) bitmap_line_ydxd::y
(byte) bitmap_line_ydxd::y#0 4000000.4
(byte) bitmap_line_ydxd::y#1 4000000.4
(byte) bitmap_line_ydxd::y#2 7.5025000001E10
(byte) bitmap_line_ydxd::y#3 3.7500000000375E10
(byte) bitmap_line_ydxd::y#7 6.00000015E7
(byte) bitmap_line_ydxd::y1
(byte) bitmap_line_ydxd::y1#0 6666667.333333333
(byte) bitmap_line_ydxd::y1#1 6666667.333333333
(byte) bitmap_line_ydxd::y1#6 7.1442857145E9
(byte) bitmap_line_ydxd::yd
(byte) bitmap_line_ydxd::yd#0 1.0000001E7
(byte) bitmap_line_ydxd::yd#1 1.0000001E7
(byte) bitmap_line_ydxd::yd#5 1.4287142857428572E10
(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 2.00000000002E11
(byte) bitmap_line_ydxi::e
(byte) bitmap_line_ydxi::e#0 2.00000002E8
(byte) bitmap_line_ydxi::e#1 1.3333333333466667E11
(byte) bitmap_line_ydxi::e#2 2.00000000002E11
(byte) bitmap_line_ydxi::e#3 4.0020000000600006E10
(byte) bitmap_line_ydxi::e#6 1.00000000001E11
(byte) bitmap_line_ydxi::x
(byte) bitmap_line_ydxi::x#0 5000000.5
(byte) bitmap_line_ydxi::x#1 5000000.5
(byte) bitmap_line_ydxi::x#2 1.00000000001E11
(byte) bitmap_line_ydxi::x#3 5.715714285785715E10
(byte) bitmap_line_ydxi::x#5 6.00000015E7
(byte) bitmap_line_ydxi::x#6 1.00000000001E11
(byte) bitmap_line_ydxi::xd
(byte) bitmap_line_ydxi::xd#0 2.0000002E7
(byte) bitmap_line_ydxi::xd#1 2.0000002E7
(byte) bitmap_line_ydxi::xd#2 7.151428571714286E9
(byte) bitmap_line_ydxi::y
(byte) bitmap_line_ydxi::y#0 4000000.4
(byte) bitmap_line_ydxi::y#1 4000000.4
(byte) bitmap_line_ydxi::y#2 3.7500000000375E10
(byte) bitmap_line_ydxi::y#3 7.5025000001E10
(byte) bitmap_line_ydxi::y#6 6.00000015E7
(byte) bitmap_line_ydxi::y1
(byte) bitmap_line_ydxi::y1#0 6666667.333333333
(byte) bitmap_line_ydxi::y1#1 6666667.333333333
(byte) bitmap_line_ydxi::y1#6 7.1442857145E9
(byte) bitmap_line_ydxi::yd
(byte) bitmap_line_ydxi::yd#0 1.0000001E7
(byte) bitmap_line_ydxi::yd#1 1.0000001E7
(byte) bitmap_line_ydxi::yd#5 1.4287142857428572E10
(void()) bitmap_plot((byte) bitmap_plot::x , (byte) bitmap_plot::y)
(byte~) bitmap_plot::$1 2.000000000002E12
(byte*) bitmap_plot::plotter
(word) bitmap_plot::plotter#0 5.000000000005E11
(word) bitmap_plot::plotter_x
(word) bitmap_plot::plotter_x#0 1.000000000001E12
(word) bitmap_plot::plotter_y
(word) bitmap_plot::plotter_y#0 2.000000000002E12
(byte) bitmap_plot::x
(byte) bitmap_plot::x#0 1.00000000001E11
(byte) bitmap_plot::x#1 1.00000000001E11
(byte) bitmap_plot::x#2 1.00000000001E11
(byte) bitmap_plot::x#3 1.00000000001E11
(byte) bitmap_plot::x#4 8.5000000000175E11
(byte) bitmap_plot::y
(byte) bitmap_plot::y#0 2.00000000002E11
(byte) bitmap_plot::y#1 2.00000000002E11
(byte) bitmap_plot::y#2 2.00000000002E11
(byte) bitmap_plot::y#3 2.00000000002E11
(byte) bitmap_plot::y#4 1.200000000003E12
(void()) dtvSetCpuBankSegment1((byte) dtvSetCpuBankSegment1::cpuBankIdx)
(byte) dtvSetCpuBankSegment1::cpuBankIdx
(byte) dtvSetCpuBankSegment1::cpuBankIdx#1 2.0000002E7
(byte) dtvSetCpuBankSegment1::cpuBankIdx#3 1.10000002E8
(byte) dtv_control
(byte) dtv_control#114 8041176.5882352935
(byte) dtv_control#144 100001.0
(byte) dtv_control#17 6666667.333333333
(byte()) keyboard_key_pressed((byte) keyboard_key_pressed::key)
(byte~) keyboard_key_pressed::$2 2.000000002E9
(byte) keyboard_key_pressed::colidx
(byte) keyboard_key_pressed::colidx#0 3.333333336666667E8
(byte) keyboard_key_pressed::key
(byte) keyboard_key_pressed::key#20 1.000000001E9
(byte) keyboard_key_pressed::return
(byte) keyboard_key_pressed::return#0 8.187272822727272E7
(byte) keyboard_key_pressed::return#10 200002.0
(byte) keyboard_key_pressed::return#11 200002.0
(byte) keyboard_key_pressed::return#12 200002.0
(byte) keyboard_key_pressed::return#13 200002.0
(byte) keyboard_key_pressed::return#14 2.00000002E8
(byte) keyboard_key_pressed::return#15 2.00000002E8
(byte) keyboard_key_pressed::return#16 2.00000002E8
(byte) keyboard_key_pressed::return#17 2.00000002E8
(byte) keyboard_key_pressed::return#18 2.00000002E8
(byte) keyboard_key_pressed::return#19 2.00000002E8
(byte) keyboard_key_pressed::return#2 200002.0
(byte) keyboard_key_pressed::return#20 2.00000002E8
(byte) keyboard_key_pressed::return#21 2.00000002E8
(byte) keyboard_key_pressed::return#24 200002.0
(byte) keyboard_key_pressed::return#25 200002.0
(byte) keyboard_key_pressed::return#26 200002.0
(byte) keyboard_key_pressed::return#27 200002.0
(byte) keyboard_key_pressed::return#28 200002.0
(byte) keyboard_key_pressed::return#29 200002.0
(byte) keyboard_key_pressed::return#30 200002.0
(byte) keyboard_key_pressed::rowidx
(byte) keyboard_key_pressed::rowidx#0 2.000000002E9
(byte()) keyboard_matrix_read((byte) keyboard_matrix_read::rowid)
(byte) keyboard_matrix_read::return
(byte) keyboard_matrix_read::return#0 3.666666667333333E9
(byte) keyboard_matrix_read::return#2 2.000000002E9
(byte) keyboard_matrix_read::row_pressed_bits
(byte) keyboard_matrix_read::rowid
(byte) keyboard_matrix_read::rowid#0 1.1000000002E10
(void()) main()
(void*()) memset((void*) memset::str , (byte) memset::c , (word) memset::num)
(byte) memset::c
(byte*) memset::dst
(byte*) memset::dst#1 2.0000002E7
(byte*) memset::dst#2 1.3333334666666666E7
(byte*) memset::end
(word) memset::num
(void*) memset::return
(void*) memset::str
(void()) menu()
(byte~) menu::$13 200002.0
(byte~) menu::$17 200002.0
(byte~) menu::$21 200002.0
(byte~) menu::$25 200002.0
(byte~) menu::$29 200002.0
(byte~) menu::$33 200002.0
(byte~) menu::$37 200002.0
(byte~) menu::$41 200002.0
(byte~) menu::$45 200002.0
(byte~) menu::$49 200002.0
(byte~) menu::$5 200002.0
(byte~) menu::$9 200002.0
(byte*) menu::c
(byte*) menu::c#1 200002.0
(byte*) menu::c#2 133334.66666666666
(byte) menu::i
(byte) menu::i#1 150001.5
(byte) menu::i#2 200002.0
(void()) mode_8bppchunkybmm()
(word~) mode_8bppchunkybmm::$7 1.0000001E7
(byte) mode_8bppchunkybmm::c
(byte) mode_8bppchunkybmm::c#0 2.0000002E7
(byte*) mode_8bppchunkybmm::gfxb
(byte*) mode_8bppchunkybmm::gfxb#1 4200000.6
(byte*) mode_8bppchunkybmm::gfxb#3 1.5500002E7
(byte*) mode_8bppchunkybmm::gfxb#4 7500000.75
(byte*) mode_8bppchunkybmm::gfxb#5 2000002.0
(byte) mode_8bppchunkybmm::gfxbCpuBank
(byte) mode_8bppchunkybmm::gfxbCpuBank#2 2.0000002E7
(byte) mode_8bppchunkybmm::gfxbCpuBank#4 1.025000125E7
(byte) mode_8bppchunkybmm::gfxbCpuBank#7 2000002.0
(byte) mode_8bppchunkybmm::gfxbCpuBank#8 3444444.888888889
(byte) mode_8bppchunkybmm::i
(byte) mode_8bppchunkybmm::i#1 1500001.5
(byte) mode_8bppchunkybmm::i#2 2000002.0
(word) mode_8bppchunkybmm::x
(word) mode_8bppchunkybmm::x#1 1.50000015E7
(word) mode_8bppchunkybmm::x#2 3000000.3
(byte) mode_8bppchunkybmm::y
(byte) mode_8bppchunkybmm::y#1 1500001.5
(byte) mode_8bppchunkybmm::y#6 923077.1538461539
(void()) mode_8bpppixelcell()
(byte~) mode_8bpppixelcell::$2 2.0000002E7
(byte~) mode_8bpppixelcell::$3 1.0000001E7
(byte~) mode_8bpppixelcell::$4 2.0000002E7
(byte~) mode_8bpppixelcell::$5 2.0000002E7
(byte~) mode_8bpppixelcell::$8 2.00000002E8
(byte) mode_8bpppixelcell::ax
(byte) mode_8bpppixelcell::ax#1 1.50000015E7
(byte) mode_8bpppixelcell::ax#2 4285714.714285715
(byte) mode_8bpppixelcell::ay
(byte) mode_8bpppixelcell::ay#1 1500001.5
(byte) mode_8bpppixelcell::ay#4 1200000.3
(byte) mode_8bpppixelcell::bits
(byte) mode_8bpppixelcell::bits#0 1.0000001E7
(byte) mode_8bpppixelcell::bits#1 5.00000005E7
(byte) mode_8bpppixelcell::bits#2 4.428571485714286E7
(byte) mode_8bpppixelcell::c
(byte) mode_8bpppixelcell::c#2 2.00000002E8
(byte) mode_8bpppixelcell::c#3 2.00000002E8
(byte) mode_8bpppixelcell::ch
(byte) mode_8bpppixelcell::ch#1 1500001.5
(byte) mode_8bpppixelcell::ch#8 117647.17647058824
(byte*) mode_8bpppixelcell::chargen
(byte*) mode_8bpppixelcell::chargen#1 1312500.1875
(byte*) mode_8bpppixelcell::chargen#2 1.5500002E7
(byte*) mode_8bpppixelcell::chargen#4 2000002.0
(byte) mode_8bpppixelcell::col
(byte) mode_8bpppixelcell::col#1 3.0142857714285716E7
(byte) mode_8bpppixelcell::col#2 3.87500005E7
(byte) mode_8bpppixelcell::col#5 7000001.0
(byte) mode_8bpppixelcell::col#7 2000002.0
(byte) mode_8bpppixelcell::cp
(byte) mode_8bpppixelcell::cp#1 1.500000015E8
(byte) mode_8bpppixelcell::cp#2 2.2222222444444444E7
(byte) mode_8bpppixelcell::cr
(byte) mode_8bpppixelcell::cr#1 1.50000015E7
(byte) mode_8bpppixelcell::cr#6 1428571.5714285714
(byte*) mode_8bpppixelcell::gfxa
(byte*) mode_8bpppixelcell::gfxa#1 4200000.6
(byte*) mode_8bpppixelcell::gfxa#2 5166667.333333333
(byte*) mode_8bpppixelcell::gfxa#3 2000002.0
(byte*) mode_8bpppixelcell::gfxb
(byte*) mode_8bpppixelcell::gfxb#1 2.3444444888888888E7
(byte*) mode_8bpppixelcell::gfxb#2 5.1666667333333336E7
(byte*) mode_8bpppixelcell::gfxb#5 7000001.0
(byte*) mode_8bpppixelcell::gfxb#7 2000002.0
(byte) mode_8bpppixelcell::i
(byte) mode_8bpppixelcell::i#1 1500001.5
(byte) mode_8bpppixelcell::i#2 2000002.0
(void()) mode_ctrl()
(byte~) mode_ctrl::$1 2.00000002E8
(byte~) mode_ctrl::$12 2.00000002E8
(byte~) mode_ctrl::$16 2.00000002E8
(byte~) mode_ctrl::$20 2.00000002E8
(byte~) mode_ctrl::$24 2.00000002E8
(byte~) mode_ctrl::$28 2.00000002E8
(byte~) mode_ctrl::$4 2.00000002E8
(byte~) mode_ctrl::$8 2.00000002E8
(byte) mode_ctrl::ctrl
(byte) mode_ctrl::ctrl#0 6.0000000599999994E7
(byte) mode_ctrl::ctrl#1 2.00000002E8
(byte) mode_ctrl::ctrl#10 8.00000008E7
(byte) mode_ctrl::ctrl#11 8.00000008E7
(byte) mode_ctrl::ctrl#12 8.00000008E7
(byte) mode_ctrl::ctrl#13 8.00000008E7
(byte) mode_ctrl::ctrl#14 5.750000125E7
(byte) mode_ctrl::ctrl#17 8.00000008E7
(byte) mode_ctrl::ctrl#2 2.00000002E8
(byte) mode_ctrl::ctrl#22 5.00000005E7
(byte) mode_ctrl::ctrl#3 2.00000002E8
(byte) mode_ctrl::ctrl#4 2.00000002E8
(byte) mode_ctrl::ctrl#5 2.00000002E8
(byte) mode_ctrl::ctrl#6 2.00000002E8
(void()) mode_ecmchar()
(byte~) mode_ecmchar::$2 2.0000002E7
(byte~) mode_ecmchar::$3 2.0000002E7
(byte~) mode_ecmchar::$4 2.0000002E7
(byte~) mode_ecmchar::$5 1.0000001E7
(byte~) mode_ecmchar::$6 2.0000002E7
(byte~) mode_ecmchar::$7 2.0000002E7
(byte*) mode_ecmchar::ch
(byte*) mode_ecmchar::ch#1 4200000.6
(byte*) mode_ecmchar::ch#2 3100000.4
(byte*) mode_ecmchar::ch#3 2000002.0
(byte*) mode_ecmchar::col
(byte*) mode_ecmchar::col#1 1909091.1818181819
(byte*) mode_ecmchar::col#2 7750001.0
(byte*) mode_ecmchar::col#3 2000002.0
(byte) mode_ecmchar::cx
(byte) mode_ecmchar::cx#1 1.50000015E7
(byte) mode_ecmchar::cx#2 3636364.0
(byte) mode_ecmchar::cy
(byte) mode_ecmchar::cy#1 1500001.5
(byte) mode_ecmchar::cy#4 1571428.857142857
(byte) mode_ecmchar::i
(byte) mode_ecmchar::i#1 1500001.5
(byte) mode_ecmchar::i#2 2000002.0
(void()) mode_hicolecmchar()
(byte~) mode_hicolecmchar::$2 2.0000002E7
(byte~) mode_hicolecmchar::$3 1.0000001E7
(byte~) mode_hicolecmchar::$4 2.0000002E7
(byte*) mode_hicolecmchar::ch
(byte*) mode_hicolecmchar::ch#1 4200000.6
(byte*) mode_hicolecmchar::ch#2 3875000.5
(byte*) mode_hicolecmchar::ch#3 2000002.0
(byte*) mode_hicolecmchar::col
(byte*) mode_hicolecmchar::col#1 3000000.428571428
(byte*) mode_hicolecmchar::col#2 5166667.333333333
(byte*) mode_hicolecmchar::col#3 2000002.0
(byte) mode_hicolecmchar::cx
(byte) mode_hicolecmchar::cx#1 1.50000015E7
(byte) mode_hicolecmchar::cx#2 3333333.666666667
(byte) mode_hicolecmchar::cy
(byte) mode_hicolecmchar::cy#1 1500001.5
(byte) mode_hicolecmchar::cy#4 1000000.2499999999
(byte) mode_hicolecmchar::i
(byte) mode_hicolecmchar::i#1 1500001.5
(byte) mode_hicolecmchar::i#2 2000002.0
(byte) mode_hicolecmchar::v
(byte) mode_hicolecmchar::v#0 1.0000001E7
(void()) mode_hicolmcchar()
(byte~) mode_hicolmcchar::$2 2.0000002E7
(byte~) mode_hicolmcchar::$3 1.0000001E7
(byte~) mode_hicolmcchar::$4 2.0000002E7
(byte*) mode_hicolmcchar::ch
(byte*) mode_hicolmcchar::ch#1 4200000.6
(byte*) mode_hicolmcchar::ch#2 3875000.5
(byte*) mode_hicolmcchar::ch#3 2000002.0
(byte*) mode_hicolmcchar::col
(byte*) mode_hicolmcchar::col#1 3000000.428571428
(byte*) mode_hicolmcchar::col#2 5166667.333333333
(byte*) mode_hicolmcchar::col#3 2000002.0
(byte) mode_hicolmcchar::cx
(byte) mode_hicolmcchar::cx#1 1.50000015E7
(byte) mode_hicolmcchar::cx#2 3333333.666666667
(byte) mode_hicolmcchar::cy
(byte) mode_hicolmcchar::cy#1 1500001.5
(byte) mode_hicolmcchar::cy#4 1000000.2499999999
(byte) mode_hicolmcchar::i
(byte) mode_hicolmcchar::i#1 1500001.5
(byte) mode_hicolmcchar::i#2 2000002.0
(byte) mode_hicolmcchar::v
(byte) mode_hicolmcchar::v#0 1.0000001E7
(void()) mode_hicolstdchar()
(byte~) mode_hicolstdchar::$2 2.0000002E7
(byte~) mode_hicolstdchar::$3 1.0000001E7
(byte~) mode_hicolstdchar::$4 2.0000002E7
(byte*) mode_hicolstdchar::ch
(byte*) mode_hicolstdchar::ch#1 4200000.6
(byte*) mode_hicolstdchar::ch#2 3875000.5
(byte*) mode_hicolstdchar::ch#3 2000002.0
(byte*) mode_hicolstdchar::col
(byte*) mode_hicolstdchar::col#1 3000000.428571428
(byte*) mode_hicolstdchar::col#2 5166667.333333333
(byte*) mode_hicolstdchar::col#3 2000002.0
(byte) mode_hicolstdchar::cx
(byte) mode_hicolstdchar::cx#1 1.50000015E7
(byte) mode_hicolstdchar::cx#2 3333333.666666667
(byte) mode_hicolstdchar::cy
(byte) mode_hicolstdchar::cy#1 1500001.5
(byte) mode_hicolstdchar::cy#4 1000000.2499999999
(byte) mode_hicolstdchar::i
(byte) mode_hicolstdchar::i#1 1500001.5
(byte) mode_hicolstdchar::i#2 2000002.0
(byte) mode_hicolstdchar::v
(byte) mode_hicolstdchar::v#0 1.0000001E7
(void()) mode_mcchar()
(byte~) mode_mcchar::$2 2.0000002E7
(byte~) mode_mcchar::$3 2.0000002E7
(byte~) mode_mcchar::$4 2.0000002E7
(byte~) mode_mcchar::$5 1.0000001E7
(byte~) mode_mcchar::$6 2.0000002E7
(byte~) mode_mcchar::$7 2.0000002E7
(byte*) mode_mcchar::ch
(byte*) mode_mcchar::ch#1 4200000.6
(byte*) mode_mcchar::ch#2 3100000.4
(byte*) mode_mcchar::ch#3 2000002.0
(byte*) mode_mcchar::col
(byte*) mode_mcchar::col#1 1909091.1818181819
(byte*) mode_mcchar::col#2 7750001.0
(byte*) mode_mcchar::col#3 2000002.0
(byte) mode_mcchar::cx
(byte) mode_mcchar::cx#1 1.50000015E7
(byte) mode_mcchar::cx#2 3636364.0
(byte) mode_mcchar::cy
(byte) mode_mcchar::cy#1 1500001.5
(byte) mode_mcchar::cy#4 1571428.857142857
(byte) mode_mcchar::i
(byte) mode_mcchar::i#1 1500001.5
(byte) mode_mcchar::i#2 2000002.0
(void()) mode_sixsfred()
(byte~) mode_sixsfred::$2 2.0000002E7
(byte~) mode_sixsfred::$3 2.0000002E7
(byte~) mode_sixsfred::$6 2.0000002E7
(byte) mode_sixsfred::ax
(byte) mode_sixsfred::ax#1 1.50000015E7
(byte) mode_sixsfred::ax#2 4000000.4
(byte) mode_sixsfred::ay
(byte) mode_sixsfred::ay#1 1500001.5
(byte) mode_sixsfred::ay#4 1500000.375
(byte) mode_sixsfred::bx
(byte) mode_sixsfred::bx#1 1.50000015E7
(byte) mode_sixsfred::bx#2 6666667.333333333
(byte) mode_sixsfred::by
(byte) mode_sixsfred::by#1 1500001.5
(byte) mode_sixsfred::by#4 333333.6666666667
(byte*) mode_sixsfred::col
(byte*) mode_sixsfred::col#1 4200000.6
(byte*) mode_sixsfred::col#2 7750001.0
(byte*) mode_sixsfred::col#3 2000002.0
(byte) mode_sixsfred::cx
(byte) mode_sixsfred::cx#1 1.50000015E7
(byte) mode_sixsfred::cx#2 6000000.6
(byte) mode_sixsfred::cy
(byte) mode_sixsfred::cy#1 1500001.5
(byte) mode_sixsfred::cy#4 1500000.375
(byte*) mode_sixsfred::gfxa
(byte*) mode_sixsfred::gfxa#1 4200000.6
(byte*) mode_sixsfred::gfxa#2 7750001.0
(byte*) mode_sixsfred::gfxa#3 2000002.0
(byte*) mode_sixsfred::gfxb
(byte*) mode_sixsfred::gfxb#1 4200000.6
(byte*) mode_sixsfred::gfxb#2 1.5500002E7
(byte*) mode_sixsfred::gfxb#3 2000002.0
(byte) mode_sixsfred::i
(byte) mode_sixsfred::i#1 1500001.5
(byte) mode_sixsfred::i#2 2000002.0
(byte) mode_sixsfred::row
(byte) mode_sixsfred::row#0 2.0000002E7
(void()) mode_sixsfred2()
(byte~) mode_sixsfred2::$2 2.0000002E7
(byte~) mode_sixsfred2::$3 1.0000001E7
(byte~) mode_sixsfred2::$4 2.0000002E7
(byte~) mode_sixsfred2::$5 2.0000002E7
(byte~) mode_sixsfred2::$8 2.0000002E7
(byte) mode_sixsfred2::ax
(byte) mode_sixsfred2::ax#1 1.50000015E7
(byte) mode_sixsfred2::ax#2 4000000.4
(byte) mode_sixsfred2::ay
(byte) mode_sixsfred2::ay#1 1500001.5
(byte) mode_sixsfred2::ay#4 1500000.375
(byte) mode_sixsfred2::bx
(byte) mode_sixsfred2::bx#1 1.50000015E7
(byte) mode_sixsfred2::bx#2 6666667.333333333
(byte) mode_sixsfred2::by
(byte) mode_sixsfred2::by#1 1500001.5
(byte) mode_sixsfred2::by#4 333333.6666666667
(byte*) mode_sixsfred2::col
(byte*) mode_sixsfred2::col#1 4200000.6
(byte*) mode_sixsfred2::col#2 5166667.333333333
(byte*) mode_sixsfred2::col#3 2000002.0
(byte) mode_sixsfred2::cx
(byte) mode_sixsfred2::cx#1 1.50000015E7
(byte) mode_sixsfred2::cx#2 4285714.714285715
(byte) mode_sixsfred2::cy
(byte) mode_sixsfred2::cy#1 1500001.5
(byte) mode_sixsfred2::cy#4 1200000.3
(byte*) mode_sixsfred2::gfxa
(byte*) mode_sixsfred2::gfxa#1 4200000.6
(byte*) mode_sixsfred2::gfxa#2 7750001.0
(byte*) mode_sixsfred2::gfxa#3 2000002.0
(byte*) mode_sixsfred2::gfxb
(byte*) mode_sixsfred2::gfxb#1 4200000.6
(byte*) mode_sixsfred2::gfxb#2 1.5500002E7
(byte*) mode_sixsfred2::gfxb#3 2000002.0
(byte) mode_sixsfred2::i
(byte) mode_sixsfred2::i#1 1500001.5
(byte) mode_sixsfred2::i#2 2000002.0
(byte) mode_sixsfred2::row
(byte) mode_sixsfred2::row#0 2.0000002E7
(void()) mode_stdbitmap()
(byte~) mode_stdbitmap::$4 2.0000002E7
(byte~) mode_stdbitmap::$7 2.0000002E7
(byte~) mode_stdbitmap::$8 2.0000002E7
(byte*) mode_stdbitmap::ch
(byte*) mode_stdbitmap::ch#1 4200000.6
(byte*) mode_stdbitmap::ch#2 4428572.0
(byte*) mode_stdbitmap::ch#3 2000002.0
(byte) mode_stdbitmap::col
(byte) mode_stdbitmap::col#0 1.50000015E7
(byte) mode_stdbitmap::col2
(byte) mode_stdbitmap::col2#0 1.0000001E7
(byte) mode_stdbitmap::cx
(byte) mode_stdbitmap::cx#1 1.50000015E7
(byte) mode_stdbitmap::cx#2 3750000.375
(byte) mode_stdbitmap::cy
(byte) mode_stdbitmap::cy#1 1500001.5
(byte) mode_stdbitmap::cy#4 1090909.3636363638
(byte) mode_stdbitmap::i
(byte) mode_stdbitmap::i#1 1500001.5
(byte) mode_stdbitmap::i#2 2000002.0
(byte) mode_stdbitmap::l
(byte) mode_stdbitmap::l#1 2000002.0
(byte) mode_stdbitmap::l#2 1000000.9999999999
(void()) mode_stdchar()
(byte~) mode_stdchar::$2 2.0000002E7
(byte~) mode_stdchar::$3 2.0000002E7
(byte~) mode_stdchar::$4 2.0000002E7
(byte~) mode_stdchar::$5 1.0000001E7
(byte~) mode_stdchar::$6 2.0000002E7
(byte~) mode_stdchar::$7 2.0000002E7
(byte*) mode_stdchar::ch
(byte*) mode_stdchar::ch#1 4200000.6
(byte*) mode_stdchar::ch#2 3100000.4
(byte*) mode_stdchar::ch#3 2000002.0
(byte*) mode_stdchar::col
(byte*) mode_stdchar::col#1 1909091.1818181819
(byte*) mode_stdchar::col#2 7750001.0
(byte*) mode_stdchar::col#3 2000002.0
(byte) mode_stdchar::cx
(byte) mode_stdchar::cx#1 1.50000015E7
(byte) mode_stdchar::cx#2 3636364.0
(byte) mode_stdchar::cy
(byte) mode_stdchar::cy#1 1500001.5
(byte) mode_stdchar::cy#4 1571428.857142857
(byte) mode_stdchar::i
(byte) mode_stdchar::i#1 1500001.5
(byte) mode_stdchar::i#2 2000002.0
(void()) mode_twoplanebitmap()
(byte~) mode_twoplanebitmap::$2 2.0000002E7
(byte~) mode_twoplanebitmap::$3 1.0000001E7
(byte~) mode_twoplanebitmap::$4 2.0000002E7
(byte~) mode_twoplanebitmap::$5 2.0000002E7
(byte~) mode_twoplanebitmap::$8 2.0000002E7
(byte) mode_twoplanebitmap::ax
(byte) mode_twoplanebitmap::ax#1 1.50000015E7
(byte) mode_twoplanebitmap::ax#2 2500000.25
(byte) mode_twoplanebitmap::ay
(byte) mode_twoplanebitmap::ay#1 1500001.5
(byte) mode_twoplanebitmap::ay#5 1090909.3636363638
(byte) mode_twoplanebitmap::bx
(byte) mode_twoplanebitmap::bx#1 1.50000015E7
(byte) mode_twoplanebitmap::bx#2 6666667.333333333
(byte) mode_twoplanebitmap::by
(byte) mode_twoplanebitmap::by#1 1500001.5
(byte) mode_twoplanebitmap::by#4 333333.6666666667
(byte*) mode_twoplanebitmap::col
(byte*) mode_twoplanebitmap::col#1 4200000.6
(byte*) mode_twoplanebitmap::col#2 5166667.333333333
(byte*) mode_twoplanebitmap::col#3 2000002.0
(byte) mode_twoplanebitmap::cx
(byte) mode_twoplanebitmap::cx#1 1.50000015E7
(byte) mode_twoplanebitmap::cx#2 4285714.714285715
(byte) mode_twoplanebitmap::cy
(byte) mode_twoplanebitmap::cy#1 1500001.5
(byte) mode_twoplanebitmap::cy#4 1200000.3
(byte*) mode_twoplanebitmap::gfxa
(byte*) mode_twoplanebitmap::gfxa#1 2.0000002E7
(byte*) mode_twoplanebitmap::gfxa#2 2.0000002E7
(byte*) mode_twoplanebitmap::gfxa#3 1.02000012E7
(byte*) mode_twoplanebitmap::gfxa#6 6200000.8
(byte*) mode_twoplanebitmap::gfxa#7 2000002.0
(byte*) mode_twoplanebitmap::gfxb
(byte*) mode_twoplanebitmap::gfxb#1 4200000.6
(byte*) mode_twoplanebitmap::gfxb#2 1.5500002E7
(byte*) mode_twoplanebitmap::gfxb#3 2000002.0
(byte) mode_twoplanebitmap::i
(byte) mode_twoplanebitmap::i#1 1500001.5
(byte) mode_twoplanebitmap::i#2 2000002.0
(void()) print_char((byte) print_char::ch)
(byte) print_char::ch
(byte) print_char::ch#0 1.10000002E8
(byte*) print_char_cursor
(byte*) print_char_cursor#102 2000002.0
(byte*) print_char_cursor#21 1000001.0
(byte*) print_char_cursor#25 3.6666667333333336E7
(byte*) print_char_cursor#35 3.683333416666667E7
(byte*) print_char_cursor#36 1.4328571434285712E9
(void()) print_cls()
(byte*) print_line_cursor
(byte*) print_line_cursor#17 916666.8333333333
(byte*) print_line_cursor#18 2.0010000003E10
(byte*) print_line_cursor#19 6.000400001E9
(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 6666667.333333333
(byte*) print_str_lines::str
(byte*) print_str_lines::str#0 2333333.666666667
(byte*) print_str_lines::str#2 1500001.5
(byte*) print_str_lines::str#3 1.5500002E7
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#1 bitmap_line_xdyi::yd#0 ]
[ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::xd#0 ]
[ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::x1#0 ]
[ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#2 ]
[ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#0 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#1 bitmap_line_xdyd::yd#0 ]
[ bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#1 bitmap_line_xdyd::xd#0 ]
[ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::x1#0 ]
[ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#2 ]
[ bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#0 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#35 print_char_cursor#21 print_char_cursor#102 print_char_cursor#36 print_char_cursor#25 ]
[ 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 live range equivalence class [ keyboard_key_pressed::return#2 ]
Added variable menu::$5 to live range equivalence class [ menu::$5 ]
Added variable keyboard_key_pressed::return#24 to live range equivalence class [ keyboard_key_pressed::return#24 ]
Added variable menu::$9 to live range equivalence class [ menu::$9 ]
Added variable keyboard_key_pressed::return#25 to live range equivalence class [ keyboard_key_pressed::return#25 ]
Added variable menu::$13 to live range equivalence class [ menu::$13 ]
Added variable keyboard_key_pressed::return#26 to live range equivalence class [ keyboard_key_pressed::return#26 ]
Added variable menu::$17 to live range equivalence class [ menu::$17 ]
Added variable keyboard_key_pressed::return#27 to live range equivalence class [ keyboard_key_pressed::return#27 ]
Added variable menu::$21 to live range equivalence class [ menu::$21 ]
Added variable keyboard_key_pressed::return#28 to live range equivalence class [ keyboard_key_pressed::return#28 ]
Added variable menu::$25 to live range equivalence class [ menu::$25 ]
Added variable keyboard_key_pressed::return#29 to live range equivalence class [ keyboard_key_pressed::return#29 ]
Added variable menu::$29 to live range equivalence class [ menu::$29 ]
Added variable keyboard_key_pressed::return#30 to live range equivalence class [ keyboard_key_pressed::return#30 ]
Added variable menu::$33 to live range equivalence class [ menu::$33 ]
Added variable keyboard_key_pressed::return#10 to live range equivalence class [ keyboard_key_pressed::return#10 ]
Added variable menu::$37 to live range equivalence class [ menu::$37 ]
Added variable keyboard_key_pressed::return#11 to live range equivalence class [ keyboard_key_pressed::return#11 ]
Added variable menu::$41 to live range equivalence class [ menu::$41 ]
Added variable keyboard_key_pressed::return#12 to live range equivalence class [ keyboard_key_pressed::return#12 ]
Added variable menu::$45 to live range equivalence class [ menu::$45 ]
Added variable keyboard_key_pressed::return#13 to live range equivalence class [ keyboard_key_pressed::return#13 ]
Added variable menu::$49 to live range equivalence class [ menu::$49 ]
Added variable mode_8bppchunkybmm::$7 to live range equivalence class [ mode_8bppchunkybmm::$7 ]
Added variable mode_8bppchunkybmm::c#0 to live range equivalence class [ mode_8bppchunkybmm::c#0 ]
Added variable keyboard_key_pressed::return#14 to live range equivalence class [ keyboard_key_pressed::return#14 ]
Added variable mode_ctrl::$1 to live range equivalence class [ mode_ctrl::$1 ]
Added variable keyboard_key_pressed::return#15 to live range equivalence class [ keyboard_key_pressed::return#15 ]
Added variable mode_ctrl::$4 to live range equivalence class [ mode_ctrl::$4 ]
Added variable keyboard_key_pressed::return#16 to live range equivalence class [ keyboard_key_pressed::return#16 ]
Added variable mode_ctrl::$8 to live range equivalence class [ mode_ctrl::$8 ]
Added variable keyboard_key_pressed::return#17 to live range equivalence class [ keyboard_key_pressed::return#17 ]
Added variable mode_ctrl::$12 to live range equivalence class [ mode_ctrl::$12 ]
Added variable keyboard_key_pressed::return#18 to live range equivalence class [ keyboard_key_pressed::return#18 ]
Added variable mode_ctrl::$16 to live range equivalence class [ mode_ctrl::$16 ]
Added variable keyboard_key_pressed::return#19 to live range equivalence class [ keyboard_key_pressed::return#19 ]
Added variable mode_ctrl::$20 to live range equivalence class [ mode_ctrl::$20 ]
Added variable keyboard_key_pressed::return#20 to live range equivalence class [ keyboard_key_pressed::return#20 ]
Added variable mode_ctrl::$24 to live range equivalence class [ mode_ctrl::$24 ]
Added variable keyboard_key_pressed::return#21 to live range equivalence class [ keyboard_key_pressed::return#21 ]
Added variable mode_ctrl::$28 to live range equivalence class [ mode_ctrl::$28 ]
Added variable keyboard_key_pressed::colidx#0 to live range equivalence class [ keyboard_key_pressed::colidx#0 ]
Added variable keyboard_key_pressed::rowidx#0 to live range equivalence class [ keyboard_key_pressed::rowidx#0 ]
Added variable keyboard_matrix_read::rowid#0 to live range equivalence class [ keyboard_matrix_read::rowid#0 ]
Added variable keyboard_matrix_read::return#2 to live range equivalence class [ keyboard_matrix_read::return#2 ]
Added variable keyboard_key_pressed::$2 to live range equivalence class [ keyboard_key_pressed::$2 ]
Added variable keyboard_key_pressed::return#0 to live range equivalence class [ keyboard_key_pressed::return#0 ]
Added variable keyboard_matrix_read::return#0 to live range equivalence class [ keyboard_matrix_read::return#0 ]
Added variable mode_8bpppixelcell::$2 to live range equivalence class [ mode_8bpppixelcell::$2 ]
Added variable mode_8bpppixelcell::$3 to live range equivalence class [ mode_8bpppixelcell::$3 ]
Added variable mode_8bpppixelcell::$4 to live range equivalence class [ mode_8bpppixelcell::$4 ]
Added variable mode_8bpppixelcell::$5 to live range equivalence class [ mode_8bpppixelcell::$5 ]
Added variable mode_8bpppixelcell::$8 to live range equivalence class [ mode_8bpppixelcell::$8 ]
Added variable mode_sixsfred::$2 to live range equivalence class [ mode_sixsfred::$2 ]
Added variable mode_sixsfred::$3 to live range equivalence class [ mode_sixsfred::$3 ]
Added variable mode_sixsfred::$6 to live range equivalence class [ mode_sixsfred::$6 ]
Added variable mode_sixsfred::row#0 to live range equivalence class [ mode_sixsfred::row#0 ]
Added variable mode_twoplanebitmap::$2 to live range equivalence class [ mode_twoplanebitmap::$2 ]
Added variable mode_twoplanebitmap::$3 to live range equivalence class [ mode_twoplanebitmap::$3 ]
Added variable mode_twoplanebitmap::$4 to live range equivalence class [ mode_twoplanebitmap::$4 ]
Added variable mode_twoplanebitmap::$5 to live range equivalence class [ mode_twoplanebitmap::$5 ]
Added variable mode_twoplanebitmap::$8 to live range equivalence class [ mode_twoplanebitmap::$8 ]
Added variable mode_sixsfred2::$2 to live range equivalence class [ mode_sixsfred2::$2 ]
Added variable mode_sixsfred2::$3 to live range equivalence class [ mode_sixsfred2::$3 ]
Added variable mode_sixsfred2::$4 to live range equivalence class [ mode_sixsfred2::$4 ]
Added variable mode_sixsfred2::$5 to live range equivalence class [ mode_sixsfred2::$5 ]
Added variable mode_sixsfred2::$8 to live range equivalence class [ mode_sixsfred2::$8 ]
Added variable mode_sixsfred2::row#0 to live range equivalence class [ mode_sixsfred2::row#0 ]
Added variable mode_hicolmcchar::$2 to live range equivalence class [ mode_hicolmcchar::$2 ]
Added variable mode_hicolmcchar::$3 to live range equivalence class [ mode_hicolmcchar::$3 ]
Added variable mode_hicolmcchar::$4 to live range equivalence class [ mode_hicolmcchar::$4 ]
Added variable mode_hicolmcchar::v#0 to live range equivalence class [ mode_hicolmcchar::v#0 ]
Added variable mode_hicolecmchar::$2 to live range equivalence class [ mode_hicolecmchar::$2 ]
Added variable mode_hicolecmchar::$3 to live range equivalence class [ mode_hicolecmchar::$3 ]
Added variable mode_hicolecmchar::$4 to live range equivalence class [ mode_hicolecmchar::$4 ]
Added variable mode_hicolecmchar::v#0 to live range equivalence class [ mode_hicolecmchar::v#0 ]
Added variable mode_hicolstdchar::$2 to live range equivalence class [ mode_hicolstdchar::$2 ]
Added variable mode_hicolstdchar::$3 to live range equivalence class [ mode_hicolstdchar::$3 ]
Added variable mode_hicolstdchar::$4 to live range equivalence class [ mode_hicolstdchar::$4 ]
Added variable mode_hicolstdchar::v#0 to live range equivalence class [ mode_hicolstdchar::v#0 ]
Added variable mode_stdbitmap::$4 to live range equivalence class [ mode_stdbitmap::$4 ]
Added variable mode_stdbitmap::col#0 to live range equivalence class [ mode_stdbitmap::col#0 ]
Added variable mode_stdbitmap::col2#0 to live range equivalence class [ mode_stdbitmap::col2#0 ]
Added variable mode_stdbitmap::$7 to live range equivalence class [ mode_stdbitmap::$7 ]
Added variable mode_stdbitmap::$8 to live range equivalence class [ mode_stdbitmap::$8 ]
Added variable bitmap_line::x0#0 to live range equivalence class [ bitmap_line::x0#0 ]
Added variable bitmap_line::x1#0 to live range equivalence class [ bitmap_line::x1#0 ]
Added variable bitmap_line::y0#0 to live range equivalence class [ bitmap_line::y0#0 ]
Added variable bitmap_line::y1#0 to live range equivalence class [ bitmap_line::y1#0 ]
Added variable bitmap_line::xd#2 to live range equivalence class [ bitmap_line::xd#2 ]
Added variable bitmap_line::yd#2 to live range equivalence class [ bitmap_line::yd#2 ]
Added variable bitmap_line::yd#1 to live range equivalence class [ bitmap_line::yd#1 ]
Added variable bitmap_line::xd#1 to live range equivalence class [ bitmap_line::xd#1 ]
Added variable bitmap_line::yd#10 to live range equivalence class [ bitmap_line::yd#10 ]
Added variable bitmap_line::yd#11 to live range equivalence class [ bitmap_line::yd#11 ]
Added variable bitmap_line_xdyi::$6 to live range equivalence class [ bitmap_line_xdyi::$6 ]
Added variable bitmap_plot::plotter_x#0 to live range equivalence class [ bitmap_plot::plotter_x#0 ]
Added variable bitmap_plot::plotter_y#0 to live range equivalence class [ bitmap_plot::plotter_y#0 ]
Added variable bitmap_plot::plotter#0 to live range equivalence class [ bitmap_plot::plotter#0 ]
Added variable bitmap_plot::$1 to live range equivalence class [ bitmap_plot::$1 ]
Added variable bitmap_line_ydxi::$6 to live range equivalence class [ bitmap_line_ydxi::$6 ]
Added variable bitmap_line_xdyd::$6 to live range equivalence class [ bitmap_line_xdyd::$6 ]
Added variable bitmap_line_ydxd::$6 to live range equivalence class [ bitmap_line_ydxd::$6 ]
Added variable bitmap_clear::bitmap#0 to live range equivalence class [ bitmap_clear::bitmap#0 ]
Added variable bitmap_init::$0 to live range equivalence class [ bitmap_init::$0 ]
Added variable bitmap_init::$10 to live range equivalence class [ bitmap_init::$10 ]
Added variable bitmap_init::$7 to live range equivalence class [ bitmap_init::$7 ]
Added variable bitmap_init::$8 to live range equivalence class [ bitmap_init::$8 ]
Added variable bitmap_init::$9 to live range equivalence class [ bitmap_init::$9 ]
Added variable mode_mcchar::$2 to live range equivalence class [ mode_mcchar::$2 ]
Added variable mode_mcchar::$3 to live range equivalence class [ mode_mcchar::$3 ]
Added variable mode_mcchar::$4 to live range equivalence class [ mode_mcchar::$4 ]
Added variable mode_mcchar::$5 to live range equivalence class [ mode_mcchar::$5 ]
Added variable mode_mcchar::$6 to live range equivalence class [ mode_mcchar::$6 ]
Added variable mode_mcchar::$7 to live range equivalence class [ mode_mcchar::$7 ]
Added variable mode_ecmchar::$2 to live range equivalence class [ mode_ecmchar::$2 ]
Added variable mode_ecmchar::$3 to live range equivalence class [ mode_ecmchar::$3 ]
Added variable mode_ecmchar::$4 to live range equivalence class [ mode_ecmchar::$4 ]
Added variable mode_ecmchar::$5 to live range equivalence class [ mode_ecmchar::$5 ]
Added variable mode_ecmchar::$6 to live range equivalence class [ mode_ecmchar::$6 ]
Added variable mode_ecmchar::$7 to live range equivalence class [ mode_ecmchar::$7 ]
Added variable mode_stdchar::$2 to live range equivalence class [ mode_stdchar::$2 ]
Added variable mode_stdchar::$3 to live range equivalence class [ mode_stdchar::$3 ]
Added variable mode_stdchar::$4 to live range equivalence class [ mode_stdchar::$4 ]
Added variable mode_stdchar::$5 to live range equivalence class [ mode_stdchar::$5 ]
Added variable mode_stdchar::$6 to live range equivalence class [ mode_stdchar::$6 ]
Added variable mode_stdchar::$7 to live range equivalence class [ mode_stdchar::$7 ]
Added variable print_str_lines::ch#0 to live range equivalence class [ print_str_lines::ch#0 ]
Added variable print_char::ch#0 to live range equivalence class [ print_char::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#1 bitmap_line_xdyi::yd#0 ]
[ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::xd#0 ]
[ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::x1#0 ]
[ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#2 ]
[ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#0 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#1 bitmap_line_xdyd::yd#0 ]
[ bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#1 bitmap_line_xdyd::xd#0 ]
[ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::x1#0 ]
[ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#2 ]
[ bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#0 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#35 print_char_cursor#21 print_char_cursor#102 print_char_cursor#36 print_char_cursor#25 ]
[ print_line_cursor#18 print_line_cursor#17 print_line_cursor#19 ]
[ memset::dst#2 memset::dst#1 ]
[ keyboard_key_pressed::return#2 ]
[ menu::$5 ]
[ keyboard_key_pressed::return#24 ]
[ menu::$9 ]
[ keyboard_key_pressed::return#25 ]
[ menu::$13 ]
[ keyboard_key_pressed::return#26 ]
[ menu::$17 ]
[ keyboard_key_pressed::return#27 ]
[ menu::$21 ]
[ keyboard_key_pressed::return#28 ]
[ menu::$25 ]
[ keyboard_key_pressed::return#29 ]
[ menu::$29 ]
[ keyboard_key_pressed::return#30 ]
[ menu::$33 ]
[ keyboard_key_pressed::return#10 ]
[ menu::$37 ]
[ keyboard_key_pressed::return#11 ]
[ menu::$41 ]
[ keyboard_key_pressed::return#12 ]
[ menu::$45 ]
[ keyboard_key_pressed::return#13 ]
[ menu::$49 ]
[ mode_8bppchunkybmm::$7 ]
[ 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::$2 ]
[ mode_8bpppixelcell::$3 ]
[ mode_8bpppixelcell::$4 ]
[ mode_8bpppixelcell::$5 ]
[ mode_8bpppixelcell::$8 ]
[ mode_sixsfred::$2 ]
[ mode_sixsfred::$3 ]
[ mode_sixsfred::$6 ]
[ mode_sixsfred::row#0 ]
[ mode_twoplanebitmap::$2 ]
[ mode_twoplanebitmap::$3 ]
[ mode_twoplanebitmap::$4 ]
[ mode_twoplanebitmap::$5 ]
[ mode_twoplanebitmap::$8 ]
[ mode_sixsfred2::$2 ]
[ mode_sixsfred2::$3 ]
[ mode_sixsfred2::$4 ]
[ mode_sixsfred2::$5 ]
[ mode_sixsfred2::$8 ]
[ mode_sixsfred2::row#0 ]
[ mode_hicolmcchar::$2 ]
[ mode_hicolmcchar::$3 ]
[ mode_hicolmcchar::$4 ]
[ mode_hicolmcchar::v#0 ]
[ mode_hicolecmchar::$2 ]
[ mode_hicolecmchar::$3 ]
[ mode_hicolecmchar::$4 ]
[ mode_hicolecmchar::v#0 ]
[ mode_hicolstdchar::$2 ]
[ mode_hicolstdchar::$3 ]
[ mode_hicolstdchar::$4 ]
[ mode_hicolstdchar::v#0 ]
[ mode_stdbitmap::$4 ]
[ mode_stdbitmap::col#0 ]
[ mode_stdbitmap::col2#0 ]
[ mode_stdbitmap::$7 ]
[ mode_stdbitmap::$8 ]
[ 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::$2 ]
[ mode_mcchar::$3 ]
[ mode_mcchar::$4 ]
[ mode_mcchar::$5 ]
[ mode_mcchar::$6 ]
[ mode_mcchar::$7 ]
[ mode_ecmchar::$2 ]
[ mode_ecmchar::$3 ]
[ mode_ecmchar::$4 ]
[ mode_ecmchar::$5 ]
[ mode_ecmchar::$6 ]
[ mode_ecmchar::$7 ]
[ mode_stdchar::$2 ]
[ mode_stdchar::$3 ]
[ mode_stdchar::$4 ]
[ mode_stdchar::$5 ]
[ mode_stdchar::$6 ]
[ mode_stdchar::$7 ]
[ print_str_lines::ch#0 ]
[ print_char::ch#0 ]
Allocated zp[1]:2 [ menu::i#2 menu::i#1 ]
Allocated zp[2]:3 [ menu::c#2 menu::c#1 ]
Allocated zp[1]:5 [ mode_8bppchunkybmm::i#2 mode_8bppchunkybmm::i#1 ]
Allocated zp[1]:6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ]
Allocated zp[2]:7 [ mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::x#1 ]
Allocated zp[1]:9 [ mode_8bppchunkybmm::gfxbCpuBank#4 mode_8bppchunkybmm::gfxbCpuBank#7 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::gfxbCpuBank#2 ]
Allocated zp[2]:10 [ mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::gfxb#1 ]
Allocated zp[1]:12 [ dtv_control#114 dtv_control#144 dtv_control#17 ]
Allocated zp[1]: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[1]:14 [ keyboard_key_pressed::key#20 ]
Allocated zp[1]:15 [ dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#1 ]
Allocated zp[1]:16 [ mode_8bpppixelcell::i#2 mode_8bpppixelcell::i#1 ]
Allocated zp[1]:17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 ]
Allocated zp[1]:18 [ mode_8bpppixelcell::ax#2 mode_8bpppixelcell::ax#1 ]
Allocated zp[2]:19 [ mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::gfxa#1 ]
Allocated zp[1]:21 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ]
Allocated zp[2]:22 [ mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::chargen#4 mode_8bpppixelcell::chargen#1 ]
Allocated zp[1]:24 [ mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ]
Allocated zp[1]:25 [ mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ]
Allocated zp[2]:26 [ mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::gfxb#7 mode_8bpppixelcell::gfxb#1 ]
Allocated zp[1]:28 [ mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ]
Allocated zp[1]:29 [ mode_8bpppixelcell::cp#2 mode_8bpppixelcell::cp#1 ]
Allocated zp[1]:30 [ mode_8bpppixelcell::c#2 mode_8bpppixelcell::c#3 ]
Allocated zp[1]:31 [ mode_sixsfred::i#2 mode_sixsfred::i#1 ]
Allocated zp[1]:32 [ mode_sixsfred::cy#4 mode_sixsfred::cy#1 ]
Allocated zp[1]:33 [ mode_sixsfred::cx#2 mode_sixsfred::cx#1 ]
Allocated zp[2]:34 [ mode_sixsfred::col#2 mode_sixsfred::col#3 mode_sixsfred::col#1 ]
Allocated zp[1]:36 [ mode_sixsfred::ay#4 mode_sixsfred::ay#1 ]
Allocated zp[2]:37 [ mode_sixsfred::gfxa#2 mode_sixsfred::gfxa#3 mode_sixsfred::gfxa#1 ]
Allocated zp[1]:39 [ mode_sixsfred::ax#2 mode_sixsfred::ax#1 ]
Allocated zp[1]:40 [ mode_sixsfred::by#4 mode_sixsfred::by#1 ]
Allocated zp[2]:41 [ mode_sixsfred::gfxb#2 mode_sixsfred::gfxb#3 mode_sixsfred::gfxb#1 ]
Allocated zp[1]:43 [ mode_sixsfred::bx#2 mode_sixsfred::bx#1 ]
Allocated zp[1]:44 [ mode_twoplanebitmap::i#2 mode_twoplanebitmap::i#1 ]
Allocated zp[1]:45 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 ]
Allocated zp[1]:46 [ mode_twoplanebitmap::cx#2 mode_twoplanebitmap::cx#1 ]
Allocated zp[2]:47 [ mode_twoplanebitmap::col#2 mode_twoplanebitmap::col#3 mode_twoplanebitmap::col#1 ]
Allocated zp[1]:49 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 ]
Allocated zp[2]:50 [ mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::gfxa#7 mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::gfxa#1 ]
Allocated zp[1]:52 [ mode_twoplanebitmap::ax#2 mode_twoplanebitmap::ax#1 ]
Allocated zp[1]:53 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 ]
Allocated zp[2]:54 [ mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::gfxb#3 mode_twoplanebitmap::gfxb#1 ]
Allocated zp[1]:56 [ mode_twoplanebitmap::bx#2 mode_twoplanebitmap::bx#1 ]
Allocated zp[1]:57 [ mode_sixsfred2::i#2 mode_sixsfred2::i#1 ]
Allocated zp[1]:58 [ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 ]
Allocated zp[1]:59 [ mode_sixsfred2::cx#2 mode_sixsfred2::cx#1 ]
Allocated zp[2]:60 [ mode_sixsfred2::col#2 mode_sixsfred2::col#3 mode_sixsfred2::col#1 ]
Allocated zp[1]:62 [ mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 ]
Allocated zp[2]:63 [ mode_sixsfred2::gfxa#2 mode_sixsfred2::gfxa#3 mode_sixsfred2::gfxa#1 ]
Allocated zp[1]:65 [ mode_sixsfred2::ax#2 mode_sixsfred2::ax#1 ]
Allocated zp[1]:66 [ mode_sixsfred2::by#4 mode_sixsfred2::by#1 ]
Allocated zp[2]:67 [ mode_sixsfred2::gfxb#2 mode_sixsfred2::gfxb#3 mode_sixsfred2::gfxb#1 ]
Allocated zp[1]:69 [ mode_sixsfred2::bx#2 mode_sixsfred2::bx#1 ]
Allocated zp[1]:70 [ mode_hicolmcchar::i#2 mode_hicolmcchar::i#1 ]
Allocated zp[1]:71 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 ]
Allocated zp[1]:72 [ mode_hicolmcchar::cx#2 mode_hicolmcchar::cx#1 ]
Allocated zp[2]:73 [ mode_hicolmcchar::col#2 mode_hicolmcchar::col#3 mode_hicolmcchar::col#1 ]
Allocated zp[2]:75 [ mode_hicolmcchar::ch#2 mode_hicolmcchar::ch#3 mode_hicolmcchar::ch#1 ]
Allocated zp[1]:77 [ mode_hicolecmchar::i#2 mode_hicolecmchar::i#1 ]
Allocated zp[1]:78 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 ]
Allocated zp[1]:79 [ mode_hicolecmchar::cx#2 mode_hicolecmchar::cx#1 ]
Allocated zp[2]:80 [ mode_hicolecmchar::col#2 mode_hicolecmchar::col#3 mode_hicolecmchar::col#1 ]
Allocated zp[2]:82 [ mode_hicolecmchar::ch#2 mode_hicolecmchar::ch#3 mode_hicolecmchar::ch#1 ]
Allocated zp[1]:84 [ mode_hicolstdchar::i#2 mode_hicolstdchar::i#1 ]
Allocated zp[1]:85 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 ]
Allocated zp[1]:86 [ mode_hicolstdchar::cx#2 mode_hicolstdchar::cx#1 ]
Allocated zp[2]:87 [ mode_hicolstdchar::col#2 mode_hicolstdchar::col#3 mode_hicolstdchar::col#1 ]
Allocated zp[2]:89 [ mode_hicolstdchar::ch#2 mode_hicolstdchar::ch#3 mode_hicolstdchar::ch#1 ]
Allocated zp[1]:91 [ mode_stdbitmap::i#2 mode_stdbitmap::i#1 ]
Allocated zp[1]:92 [ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 ]
Allocated zp[1]:93 [ mode_stdbitmap::cx#2 mode_stdbitmap::cx#1 ]
Allocated zp[2]:94 [ mode_stdbitmap::ch#2 mode_stdbitmap::ch#3 mode_stdbitmap::ch#1 ]
Allocated zp[1]:96 [ mode_stdbitmap::l#2 mode_stdbitmap::l#1 ]
Allocated zp[1]:97 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#1 bitmap_line_xdyi::yd#0 ]
Allocated zp[1]:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::xd#0 ]
Allocated zp[1]:99 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::x1#0 ]
Allocated zp[1]:100 [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#2 ]
Allocated zp[1]:101 [ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 ]
Allocated zp[1]: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[1]:103 [ bitmap_plot::x#4 bitmap_plot::x#1 bitmap_plot::x#0 bitmap_plot::x#3 bitmap_plot::x#2 ]
Allocated zp[1]:104 [ bitmap_plot::y#4 bitmap_plot::y#1 bitmap_plot::y#0 bitmap_plot::y#3 bitmap_plot::y#2 ]
Allocated zp[1]:105 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 ]
Allocated zp[1]:106 [ bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 ]
Allocated zp[1]:107 [ bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 ]
Allocated zp[1]: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[1]: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[1]: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[1]:111 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#1 bitmap_line_xdyd::yd#0 ]
Allocated zp[1]:112 [ bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#1 bitmap_line_xdyd::xd#0 ]
Allocated zp[1]:113 [ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::x1#0 ]
Allocated zp[1]:114 [ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#2 ]
Allocated zp[1]:115 [ bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 ]
Allocated zp[1]: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[1]:117 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ]
Allocated zp[1]:118 [ bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 ]
Allocated zp[1]:119 [ bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 ]
Allocated zp[1]: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[1]: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[1]: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[1]:123 [ bitmap_clear::y#4 bitmap_clear::y#1 ]
Allocated zp[2]:124 [ bitmap_clear::bitmap#2 bitmap_clear::bitmap#3 bitmap_clear::bitmap#5 bitmap_clear::bitmap#1 ]
Allocated zp[1]:126 [ bitmap_clear::x#2 bitmap_clear::x#1 ]
Allocated zp[1]:127 [ bitmap_init::x#2 bitmap_init::x#1 ]
Allocated zp[1]:128 [ bitmap_init::bits#3 bitmap_init::bits#4 bitmap_init::bits#1 ]
Allocated zp[1]:129 [ bitmap_init::y#2 bitmap_init::y#1 ]
Allocated zp[2]:130 [ bitmap_init::yoffs#2 bitmap_init::yoffs#4 bitmap_init::yoffs#1 ]
Allocated zp[1]:132 [ mode_mcchar::i#2 mode_mcchar::i#1 ]
Allocated zp[1]:133 [ mode_mcchar::cy#4 mode_mcchar::cy#1 ]
Allocated zp[1]:134 [ mode_mcchar::cx#2 mode_mcchar::cx#1 ]
Allocated zp[2]:135 [ mode_mcchar::col#2 mode_mcchar::col#3 mode_mcchar::col#1 ]
Allocated zp[2]:137 [ mode_mcchar::ch#2 mode_mcchar::ch#3 mode_mcchar::ch#1 ]
Allocated zp[1]:139 [ mode_ecmchar::i#2 mode_ecmchar::i#1 ]
Allocated zp[1]:140 [ mode_ecmchar::cy#4 mode_ecmchar::cy#1 ]
Allocated zp[1]:141 [ mode_ecmchar::cx#2 mode_ecmchar::cx#1 ]
Allocated zp[2]:142 [ mode_ecmchar::col#2 mode_ecmchar::col#3 mode_ecmchar::col#1 ]
Allocated zp[2]:144 [ mode_ecmchar::ch#2 mode_ecmchar::ch#3 mode_ecmchar::ch#1 ]
Allocated zp[1]:146 [ mode_stdchar::i#2 mode_stdchar::i#1 ]
Allocated zp[1]:147 [ mode_stdchar::cy#4 mode_stdchar::cy#1 ]
Allocated zp[1]:148 [ mode_stdchar::cx#2 mode_stdchar::cx#1 ]
Allocated zp[2]:149 [ mode_stdchar::col#2 mode_stdchar::col#3 mode_stdchar::col#1 ]
Allocated zp[2]:151 [ mode_stdchar::ch#2 mode_stdchar::ch#3 mode_stdchar::ch#1 ]
Allocated zp[2]:153 [ print_str_lines::str#3 print_str_lines::str#2 print_str_lines::str#0 ]
Allocated zp[2]:155 [ print_char_cursor#35 print_char_cursor#21 print_char_cursor#102 print_char_cursor#36 print_char_cursor#25 ]
Allocated zp[2]:157 [ print_line_cursor#18 print_line_cursor#17 print_line_cursor#19 ]
Allocated zp[2]:159 [ memset::dst#2 memset::dst#1 ]
Allocated zp[1]:161 [ keyboard_key_pressed::return#2 ]
Allocated zp[1]:162 [ menu::$5 ]
Allocated zp[1]:163 [ keyboard_key_pressed::return#24 ]
Allocated zp[1]:164 [ menu::$9 ]
Allocated zp[1]:165 [ keyboard_key_pressed::return#25 ]
Allocated zp[1]:166 [ menu::$13 ]
Allocated zp[1]:167 [ keyboard_key_pressed::return#26 ]
Allocated zp[1]:168 [ menu::$17 ]
Allocated zp[1]:169 [ keyboard_key_pressed::return#27 ]
Allocated zp[1]:170 [ menu::$21 ]
Allocated zp[1]:171 [ keyboard_key_pressed::return#28 ]
Allocated zp[1]:172 [ menu::$25 ]
Allocated zp[1]:173 [ keyboard_key_pressed::return#29 ]
Allocated zp[1]:174 [ menu::$29 ]
Allocated zp[1]:175 [ keyboard_key_pressed::return#30 ]
Allocated zp[1]:176 [ menu::$33 ]
Allocated zp[1]:177 [ keyboard_key_pressed::return#10 ]
Allocated zp[1]:178 [ menu::$37 ]
Allocated zp[1]:179 [ keyboard_key_pressed::return#11 ]
Allocated zp[1]:180 [ menu::$41 ]
Allocated zp[1]:181 [ keyboard_key_pressed::return#12 ]
Allocated zp[1]:182 [ menu::$45 ]
Allocated zp[1]:183 [ keyboard_key_pressed::return#13 ]
Allocated zp[1]:184 [ menu::$49 ]
Allocated zp[2]:185 [ mode_8bppchunkybmm::$7 ]
Allocated zp[1]:187 [ mode_8bppchunkybmm::c#0 ]
Allocated zp[1]:188 [ keyboard_key_pressed::return#14 ]
Allocated zp[1]:189 [ mode_ctrl::$1 ]
Allocated zp[1]:190 [ keyboard_key_pressed::return#15 ]
Allocated zp[1]:191 [ mode_ctrl::$4 ]
Allocated zp[1]:192 [ keyboard_key_pressed::return#16 ]
Allocated zp[1]:193 [ mode_ctrl::$8 ]
Allocated zp[1]:194 [ keyboard_key_pressed::return#17 ]
Allocated zp[1]:195 [ mode_ctrl::$12 ]
Allocated zp[1]:196 [ keyboard_key_pressed::return#18 ]
Allocated zp[1]:197 [ mode_ctrl::$16 ]
Allocated zp[1]:198 [ keyboard_key_pressed::return#19 ]
Allocated zp[1]:199 [ mode_ctrl::$20 ]
Allocated zp[1]:200 [ keyboard_key_pressed::return#20 ]
Allocated zp[1]:201 [ mode_ctrl::$24 ]
Allocated zp[1]:202 [ keyboard_key_pressed::return#21 ]
Allocated zp[1]:203 [ mode_ctrl::$28 ]
Allocated zp[1]:204 [ keyboard_key_pressed::colidx#0 ]
Allocated zp[1]:205 [ keyboard_key_pressed::rowidx#0 ]
Allocated zp[1]:206 [ keyboard_matrix_read::rowid#0 ]
Allocated zp[1]:207 [ keyboard_matrix_read::return#2 ]
Allocated zp[1]:208 [ keyboard_key_pressed::$2 ]
Allocated zp[1]:209 [ keyboard_key_pressed::return#0 ]
Allocated zp[1]:210 [ keyboard_matrix_read::return#0 ]
Allocated zp[1]:211 [ mode_8bpppixelcell::$2 ]
Allocated zp[1]:212 [ mode_8bpppixelcell::$3 ]
Allocated zp[1]:213 [ mode_8bpppixelcell::$4 ]
Allocated zp[1]:214 [ mode_8bpppixelcell::$5 ]
Allocated zp[1]:215 [ mode_8bpppixelcell::$8 ]
Allocated zp[1]:216 [ mode_sixsfred::$2 ]
Allocated zp[1]:217 [ mode_sixsfred::$3 ]
Allocated zp[1]:218 [ mode_sixsfred::$6 ]
Allocated zp[1]:219 [ mode_sixsfred::row#0 ]
Allocated zp[1]:220 [ mode_twoplanebitmap::$2 ]
Allocated zp[1]:221 [ mode_twoplanebitmap::$3 ]
Allocated zp[1]:222 [ mode_twoplanebitmap::$4 ]
Allocated zp[1]:223 [ mode_twoplanebitmap::$5 ]
Allocated zp[1]:224 [ mode_twoplanebitmap::$8 ]
Allocated zp[1]:225 [ mode_sixsfred2::$2 ]
Allocated zp[1]:226 [ mode_sixsfred2::$3 ]
Allocated zp[1]:227 [ mode_sixsfred2::$4 ]
Allocated zp[1]:228 [ mode_sixsfred2::$5 ]
Allocated zp[1]:229 [ mode_sixsfred2::$8 ]
Allocated zp[1]:230 [ mode_sixsfred2::row#0 ]
Allocated zp[1]:231 [ mode_hicolmcchar::$2 ]
Allocated zp[1]:232 [ mode_hicolmcchar::$3 ]
Allocated zp[1]:233 [ mode_hicolmcchar::$4 ]
Allocated zp[1]:234 [ mode_hicolmcchar::v#0 ]
Allocated zp[1]:235 [ mode_hicolecmchar::$2 ]
Allocated zp[1]:236 [ mode_hicolecmchar::$3 ]
Allocated zp[1]:237 [ mode_hicolecmchar::$4 ]
Allocated zp[1]:238 [ mode_hicolecmchar::v#0 ]
Allocated zp[1]:239 [ mode_hicolstdchar::$2 ]
Allocated zp[1]:240 [ mode_hicolstdchar::$3 ]
Allocated zp[1]:241 [ mode_hicolstdchar::$4 ]
Allocated zp[1]:242 [ mode_hicolstdchar::v#0 ]
Allocated zp[1]:243 [ mode_stdbitmap::$4 ]
Allocated zp[1]:244 [ mode_stdbitmap::col#0 ]
Allocated zp[1]:245 [ mode_stdbitmap::col2#0 ]
Allocated zp[1]:246 [ mode_stdbitmap::$7 ]
Allocated zp[1]:247 [ mode_stdbitmap::$8 ]
Allocated zp[1]:248 [ bitmap_line::x0#0 ]
Allocated zp[1]:249 [ bitmap_line::x1#0 ]
Allocated zp[1]:250 [ bitmap_line::y0#0 ]
Allocated zp[1]:251 [ bitmap_line::y1#0 ]
Allocated zp[1]:252 [ bitmap_line::xd#2 ]
Allocated zp[1]:253 [ bitmap_line::yd#2 ]
Allocated zp[1]:254 [ bitmap_line::yd#1 ]
Allocated zp[1]:255 [ bitmap_line::xd#1 ]
Allocated zp[1]:256 [ bitmap_line::yd#10 ]
Allocated zp[1]:257 [ bitmap_line::yd#11 ]
Allocated zp[1]:258 [ bitmap_line_xdyi::$6 ]
Allocated zp[2]:259 [ bitmap_plot::plotter_x#0 ]
Allocated zp[2]:261 [ bitmap_plot::plotter_y#0 ]
Allocated zp[2]:263 [ bitmap_plot::plotter#0 ]
Allocated zp[1]:265 [ bitmap_plot::$1 ]
Allocated zp[1]:266 [ bitmap_line_ydxi::$6 ]
Allocated zp[1]:267 [ bitmap_line_xdyd::$6 ]
Allocated zp[1]:268 [ bitmap_line_ydxd::$6 ]
Allocated zp[2]:269 [ bitmap_clear::bitmap#0 ]
Allocated zp[1]:271 [ bitmap_init::$0 ]
Allocated zp[1]:272 [ bitmap_init::$10 ]
Allocated zp[1]:273 [ bitmap_init::$7 ]
Allocated zp[1]:274 [ bitmap_init::$8 ]
Allocated zp[1]:275 [ bitmap_init::$9 ]
Allocated zp[1]:276 [ mode_mcchar::$2 ]
Allocated zp[1]:277 [ mode_mcchar::$3 ]
Allocated zp[1]:278 [ mode_mcchar::$4 ]
Allocated zp[1]:279 [ mode_mcchar::$5 ]
Allocated zp[1]:280 [ mode_mcchar::$6 ]
Allocated zp[1]:281 [ mode_mcchar::$7 ]
Allocated zp[1]:282 [ mode_ecmchar::$2 ]
Allocated zp[1]:283 [ mode_ecmchar::$3 ]
Allocated zp[1]:284 [ mode_ecmchar::$4 ]
Allocated zp[1]:285 [ mode_ecmchar::$5 ]
Allocated zp[1]:286 [ mode_ecmchar::$6 ]
Allocated zp[1]:287 [ mode_ecmchar::$7 ]
Allocated zp[1]:288 [ mode_stdchar::$2 ]
Allocated zp[1]:289 [ mode_stdchar::$3 ]
Allocated zp[1]:290 [ mode_stdchar::$4 ]
Allocated zp[1]:291 [ mode_stdchar::$5 ]
Allocated zp[1]:292 [ mode_stdchar::$6 ]
Allocated zp[1]:293 [ mode_stdchar::$7 ]
Allocated zp[1]:294 [ print_str_lines::ch#0 ]
Allocated zp[1]:295 [ print_char::ch#0 ]
INITIAL ASM
Target platform is c64basic / MOS6502X
// File Comments
// Exploring C64DTV Screen Modes
// Upstart
.pc = $801 "Basic"
:BasicUpstart(main)
.pc = $80d "Program"
// Global Constants & labels
.const VIC_ECM = $40
.const VIC_BMM = $20
.const VIC_DEN = $10
.const VIC_RSEL = 8
.const VIC_MCM = $10
.const VIC_CSEL = 8
// Mask for PROCESSOR_PORT_DDR which allows only memory configuration to be written
.const PROCPORT_DDR_MEMORY_MASK = 7
// RAM in 0xA000, 0xE000 I/O in 0xD000
.const PROCPORT_RAM_IO = 5
// RAM in 0xA000, 0xE000 CHAR ROM in 0xD000
.const PROCPORT_RAM_CHARROM = 1
// The colors of the C64
.const BLACK = 0
.const GREEN = 5
.const BLUE = 6
.const LIGHT_GREEN = $d
.const DTV_FEATURE_ENABLE = 1
.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
.const DTV_COLOR_BANK_DEFAULT = $1d800
.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
.const OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR = 2
.const OFFSET_STRUCT_MOS6526_CIA_PORT_B = 1
.label RASTER = $d012
.label BORDER_COLOR = $d020
.label BG_COLOR = $d021
.label BG_COLOR1 = $d022
.label BG_COLOR2 = $d023
.label BG_COLOR3 = $d024
.label VIC_CONTROL = $d011
.label VIC_CONTROL2 = $d016
.label VIC_MEMORY = $d018
// Processor port data direction register
.label PROCPORT_DDR = 0
// Processor Port Register controlling RAM/ROM configuration and the datasette
.label PROCPORT = 1
// Color Ram
.label COLS = $d800
// The CIA#1: keyboard matrix, joystick #1/#2
.label CIA1 = $dc00
// The CIA#2: Serial bus, RS-232, VIC memory bank
.label CIA2 = $dd00
// Feature enables or disables the extra C64 DTV features
.label DTV_FEATURE = $d03f
// Controls the graphics modes of the C64 DTV
.label DTV_CONTROL = $d03c
// 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
// 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
// The value of the DTV control register
// DTV Graphics Mode
// DTV Graphics Mode
// DTV Graphics Mode
// DTV Graphics Mode
// DTV Graphics Mode
// DTV Graphics Mode
// DTV Graphics Mode
// DTV Graphics Mode
// DTV Graphics Mode
// DTV Graphics Mode
// DTV Graphics Mode
// DTV Graphics Mode
.label dtv_control = $c
.label print_char_cursor = $9b
.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 nomodify byte*) PROCPORT_DDR) ← (const nomodify byte) PROCPORT_DDR_MEMORY_MASK -- _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 nomodify byte*) PROCPORT) ← (const nomodify byte) PROCPORT_RAM_IO -- _deref_pbuc1=vbuc2
lda #PROCPORT_RAM_IO
sta PROCPORT
// [7] *((const nomodify byte*) DTV_FEATURE) ← (const nomodify byte) DTV_FEATURE_ENABLE -- _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 __5 = $a2
.label __9 = $a4
.label __13 = $a6
.label __17 = $a8
.label __21 = $aa
.label __25 = $ac
.label __29 = $ae
.label __33 = $b0
.label __37 = $b2
.label __41 = $b4
.label __45 = $b6
.label __49 = $b8
.label i = 2
.label c = 3
// [10] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Charset ROM
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [11] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<DTV_COLOR_BANK_DEFAULT/$400
sta DTV_COLOR_BANK_LO
// [12] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [13] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Mode
lda #0
sta DTV_CONTROL
// [14] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR
// [15] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) menu::CHARSET/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2
// [16] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [17] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [18] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) menu::CHARSET&(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 nomodify byte*) DTV_PALETTE + (byte) menu::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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 nomodify byte*) COLS [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 nomodify byte*) COLS+(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 nomodify byte*) BG_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BG_COLOR
// [26] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta BORDER_COLOR
// [27] call print_set_screen
// Display menu Text
// [896] 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
// [887] 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 nomodify byte) KEY_1 [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_1
jmp __b31
// menu::@31
__b31:
// [35] (byte~) menu::$5 ← (byte) keyboard_key_pressed::return#2 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_1
sta.z __5
// [36] if((byte~) menu::$5==(byte) 0) goto menu::@6 -- vbuz1_eq_0_then_la1
lda.z __5
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 nomodify byte) KEY_2 [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_14
jmp __b32
// menu::@32
__b32:
// [43] (byte~) menu::$9 ← (byte) keyboard_key_pressed::return#24 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_14
sta.z __9
// [44] if((byte~) menu::$9==(byte) 0) goto menu::@7 -- vbuz1_eq_0_then_la1
lda.z __9
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 nomodify byte) KEY_3 [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_15
jmp __b33
// menu::@33
__b33:
// [50] (byte~) menu::$13 ← (byte) keyboard_key_pressed::return#25 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_15
sta.z __13
// [51] if((byte~) menu::$13==(byte) 0) goto menu::@8 -- vbuz1_eq_0_then_la1
lda.z __13
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 nomodify byte) KEY_4 [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_16
jmp __b34
// menu::@34
__b34:
// [57] (byte~) menu::$17 ← (byte) keyboard_key_pressed::return#26 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_16
sta.z __17
// [58] if((byte~) menu::$17==(byte) 0) goto menu::@9 -- vbuz1_eq_0_then_la1
lda.z __17
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 nomodify byte) KEY_6 [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_17
jmp __b35
// menu::@35
__b35:
// [64] (byte~) menu::$21 ← (byte) keyboard_key_pressed::return#27 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_17
sta.z __21
// [65] if((byte~) menu::$21==(byte) 0) goto menu::@10 -- vbuz1_eq_0_then_la1
lda.z __21
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 nomodify byte) KEY_7 [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_18
jmp __b36
// menu::@36
__b36:
// [71] (byte~) menu::$25 ← (byte) keyboard_key_pressed::return#28 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_18
sta.z __25
// [72] if((byte~) menu::$25==(byte) 0) goto menu::@11 -- vbuz1_eq_0_then_la1
lda.z __25
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 nomodify byte) KEY_8 [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_19
jmp __b37
// menu::@37
__b37:
// [78] (byte~) menu::$29 ← (byte) keyboard_key_pressed::return#29 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_19
sta.z __29
// [79] if((byte~) menu::$29==(byte) 0) goto menu::@12 -- vbuz1_eq_0_then_la1
lda.z __29
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 nomodify byte) KEY_A [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_20
jmp __b38
// menu::@38
__b38:
// [85] (byte~) menu::$33 ← (byte) keyboard_key_pressed::return#30 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_20
sta.z __33
// [86] if((byte~) menu::$33==(byte) 0) goto menu::@13 -- vbuz1_eq_0_then_la1
lda.z __33
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 nomodify byte) KEY_B [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_2
jmp __b39
// menu::@39
__b39:
// [92] (byte~) menu::$37 ← (byte) keyboard_key_pressed::return#10 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_2
sta.z __37
// [93] if((byte~) menu::$37==(byte) 0) goto menu::@14 -- vbuz1_eq_0_then_la1
lda.z __37
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 nomodify byte) KEY_C [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_3
jmp __b40
// menu::@40
__b40:
// [99] (byte~) menu::$41 ← (byte) keyboard_key_pressed::return#11 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_3
sta.z __41
// [100] if((byte~) menu::$41==(byte) 0) goto menu::@15 -- vbuz1_eq_0_then_la1
lda.z __41
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 nomodify byte) KEY_D [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_4
jmp __b41
// menu::@41
__b41:
// [106] (byte~) menu::$45 ← (byte) keyboard_key_pressed::return#12 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_4
sta.z __45
// [107] if((byte~) menu::$45==(byte) 0) goto menu::@16 -- vbuz1_eq_0_then_la1
lda.z __45
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 nomodify byte) KEY_E [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_5
jmp __b42
// menu::@42
__b42:
// [113] (byte~) menu::$49 ← (byte) keyboard_key_pressed::return#13 -- vbuz1=vbuz2
lda.z keyboard_key_pressed.return_5
sta.z __49
// [114] if((byte~) menu::$49==(byte) 0) goto menu::@5 -- vbuz1_eq_0_then_la1
lda.z __49
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 nomodify byte) LIGHT_GREEN -- _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 __7 = $b9
.label i = 5
.label c = $bb
.label gfxb = $a
.label x = 7
// 320x200 8bpp pixels for Plane B
.label gfxbCpuBank = 9
.label y = 6
// [119] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY|(const nomodify byte) DTV_COLORRAM_OFF -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY|DTV_COLORRAM_OFF
sta DTV_CONTROL
// [120] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Mode
lda #VIC_ECM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [121] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_MCM|VIC_CSEL
sta VIC_CONTROL2
// [122] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
lda #0
sta DTV_PLANEB_START_LO
// [123] *((const nomodify byte*) DTV_PLANEB_START_MI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_MI
// [124] *((const nomodify byte*) DTV_PLANEB_START_HI) ← <>(const nomodify dword) mode_8bppchunkybmm::PLANEB -- _deref_pbuc1=vbuc2
lda #<PLANEB>>$10
sta DTV_PLANEB_START_HI
// [125] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 8 -- _deref_pbuc1=vbuc2
lda #8
sta DTV_PLANEB_STEP
// [126] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// [127] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_HI
// [128] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Border color
lda #0
sta BORDER_COLOR
// [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 nomodify byte*) DTV_PALETTE + (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 nomodify dword) mode_8bppchunkybmm::PLANEB/(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 nomodify dword) mode_8bppchunkybmm::PLANEB/(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::$7 ← (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#6 -- vwuz1=vwuz2_plus_vbuz3
lda.z y
clc
adc.z x
sta.z __7
lda #0
adc.z x+1
sta.z __7+1
// [143] (byte) mode_8bppchunkybmm::c#0 ← (byte)(word~) mode_8bppchunkybmm::$7 -- vbuz1=_byte_vwuz2
lda.z __7
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
// Reset CPU BANK segment to $4000
// [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
// Leave control to the user until exit
// [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 nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY|(const nomodify byte) DTV_COLORRAM_OFF [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
// DTV Graphics Mode - Reset
.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 nomodify byte*) RASTER)!=(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 nomodify byte) KEY_SPACE [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_6
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_6
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 nomodify byte) KEY_L [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_7
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_7
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 nomodify byte) DTV_LINEAR -- 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 nomodify byte) KEY_H [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_8
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_8
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 nomodify byte) DTV_HIGHCOLOR -- 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 nomodify byte) KEY_O [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_9
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_9
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 nomodify byte) DTV_OVERSCAN -- 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 nomodify byte) KEY_B [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_10
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_10
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 nomodify byte) DTV_BORDER_OFF -- 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 nomodify byte) KEY_U [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_11
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_11
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 nomodify byte) DTV_CHUNKY -- 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 nomodify byte) KEY_C [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_12
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_12
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 nomodify byte) DTV_COLORRAM_OFF -- 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 nomodify byte) KEY_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_13
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_13
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 nomodify byte*) DTV_CONTROL) ← (byte) mode_ctrl::ctrl#14 -- _deref_pbuc1=vbuz1
lda.z ctrl
sta DTV_CONTROL
// [210] *((const nomodify byte*) BORDER_COLOR) ← (byte) mode_ctrl::ctrl#14 -- _deref_pbuc1=vbuz1
lda.z ctrl
sta BORDER_COLOR
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 zp($e) key)
keyboard_key_pressed: {
.label __2 = $d0
.label colidx = $cc
.label rowidx = $cd
.label return = $d1
.label return_1 = $a1
.label return_2 = $b1
.label return_3 = $b3
.label return_4 = $b5
.label return_5 = $b7
.label return_6 = $bc
.label return_7 = $be
.label return_8 = $c0
.label return_9 = $c2
.label return_10 = $c4
.label return_11 = $c6
.label return_12 = $c8
.label return_13 = $ca
.label key = $e
.label return_14 = $a3
.label return_15 = $a5
.label return_16 = $a7
.label return_17 = $a9
.label return_18 = $ab
.label return_19 = $ad
.label return_20 = $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_1
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_1
sta.z __2
// [218] (byte) keyboard_key_pressed::return#0 ← (byte~) keyboard_key_pressed::$2 & *((const byte*) keyboard_matrix_col_bitmask + (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 zp($ce) rowid)
keyboard_matrix_read: {
.label return = $d2
.label rowid = $ce
.label return_1 = $cf
// [220] *((byte*)(const nomodify struct MOS6526_CIA*) CIA1) ← *((const byte*) keyboard_matrix_row_bitmask + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuz1
ldy.z rowid
lda keyboard_matrix_row_bitmask,y
sta CIA1
// [221] (byte) keyboard_matrix_read::return#0 ← ~ *((byte*)(const nomodify struct MOS6526_CIA*) CIA1+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_B) -- vbuz1=_bnot__deref_pbuc1
lda CIA1+OFFSET_STRUCT_MOS6526_CIA_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 zp($f) cpuBankIdx)
dtvSetCpuBankSegment1: {
// Move CPU BANK 1 SEGMENT ($4000-$7fff)
.label cpuBank = $ff
.label cpuBankIdx = $f
// [224] *((const byte*) dtvSetCpuBankSegment1::cpuBank) ← (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 __2 = $d3
.label __3 = $d4
.label __4 = $d5
.label __5 = $d6
.label __8 = $d7
.label i = $10
// Screen Chars for Plane A (screen) - 16x16 repeating
.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 nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY
sta DTV_CONTROL
// [228] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Mode
lda #VIC_ECM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [229] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_MCM|VIC_CSEL
sta VIC_CONTROL2
// [230] *((const nomodify byte*) DTV_PLANEA_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane A Counter
lda #0
sta DTV_PLANEA_START_LO
// [231] *((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_8bpppixelcell::PLANEA -- _deref_pbuc1=vbuc2
lda #>PLANEA
sta DTV_PLANEA_START_MI
// [232] *((const nomodify byte*) DTV_PLANEA_START_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_START_HI
// [233] *((const nomodify byte*) DTV_PLANEA_STEP) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEA_STEP
// [234] *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_LO
// [235] *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_HI
// [236] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
lda #0
sta DTV_PLANEB_START_LO
// [237] *((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_8bpppixelcell::PLANEB -- _deref_pbuc1=vbuc2
lda #>PLANEB
sta DTV_PLANEB_START_MI
// [238] *((const nomodify byte*) DTV_PLANEB_START_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_HI
// [239] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_STEP
// [240] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// [241] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_HI
// [242] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Border color
lda #0
sta BORDER_COLOR
// [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 nomodify byte*) DTV_PALETTE + (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 nomodify byte*) mode_8bpppixelcell::PLANEA [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::$2 ← (byte) mode_8bpppixelcell::ay#4 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z ay
sta.z __2
// [250] (byte~) mode_8bpppixelcell::$3 ← (byte~) mode_8bpppixelcell::$2 << (byte) 4 -- vbuz1=vbuz2_rol_4
lda.z __2
asl
asl
asl
asl
sta.z __3
// [251] (byte~) mode_8bpppixelcell::$4 ← (byte) mode_8bpppixelcell::ax#2 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z ax
sta.z __4
// [252] (byte~) mode_8bpppixelcell::$5 ← (byte~) mode_8bpppixelcell::$3 | (byte~) mode_8bpppixelcell::$4 -- vbuz1=vbuz2_bor_vbuz3
lda.z __3
ora.z __4
sta.z __5
// [253] *((byte*) mode_8bpppixelcell::gfxa#2) ← (byte~) mode_8bpppixelcell::$5 -- _deref_pbuz1=vbuz2
lda.z __5
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 nomodify byte*) PROCPORT) ← (const nomodify byte) PROCPORT_RAM_CHARROM -- _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 nomodify byte*) mode_8bpppixelcell::PLANEB [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 [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::$8 ← (byte) mode_8bpppixelcell::bits#2 & (byte) $80 -- vbuz1=vbuz2_band_vbuc1
lda #$80
and.z bits
sta.z __8
// [266] if((byte~) mode_8bpppixelcell::$8==(byte) 0) goto mode_8bpppixelcell::@9 -- vbuz1_eq_0_then_la1
lda.z __8
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 nomodify byte*) PROCPORT) ← (const nomodify byte) PROCPORT_RAM_IO -- _deref_pbuc1=vbuc2
lda #PROCPORT_RAM_IO
sta PROCPORT
// [280] call mode_ctrl
// Leave control to the user until exit
// [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 nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY [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 __2 = $d8
.label __3 = $d9
.label __6 = $da
.label i = $1f
// Colors for high 4 bits of 8bpp
.label col = $22
.label cx = $21
.label cy = $20
.label row = $db
// Graphics for Plane A () - horizontal stripes every 2 pixels
.label gfxa = $25
.label ax = $27
.label ay = $24
// Graphics for Plane B - vertical stripes every 2 pixels
.label gfxb = $29
.label bx = $2b
.label by = $28
// [282] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR|DTV_LINEAR
sta DTV_CONTROL
// [283] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Mode
lda #VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [284] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_MCM|VIC_CSEL
sta VIC_CONTROL2
// [285] *((const nomodify byte*) DTV_PLANEA_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane A Counter
lda #0
sta DTV_PLANEA_START_LO
// [286] *((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_sixsfred::PLANEA -- _deref_pbuc1=vbuc2
lda #>PLANEA
sta DTV_PLANEA_START_MI
// [287] *((const nomodify byte*) DTV_PLANEA_START_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_START_HI
// [288] *((const nomodify byte*) DTV_PLANEA_STEP) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEA_STEP
// [289] *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_LO
// [290] *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_HI
// [291] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
lda #0
sta DTV_PLANEB_START_LO
// [292] *((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_sixsfred::PLANEB -- _deref_pbuc1=vbuc2
lda #>PLANEB
sta DTV_PLANEB_START_MI
// [293] *((const nomodify byte*) DTV_PLANEB_START_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_HI
// [294] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEB_STEP
// [295] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// [296] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_HI
// [297] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(const nomodify byte*) mode_sixsfred::COLORS/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// [298] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (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 nomodify byte*) DTV_PALETTE + (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 nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDER_COLOR
// [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 nomodify byte*) mode_sixsfred::COLORS [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::$2 ← (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#4 -- vbuz1=vbuz2_plus_vbuz3
lda.z cx
clc
adc.z cy
sta.z __2
// [307] (byte~) mode_sixsfred::$3 ← (byte~) mode_sixsfred::$2 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z __2
sta.z __3
// [308] *((byte*) mode_sixsfred::col#2) ← (byte~) mode_sixsfred::$3 -- _deref_pbuz1=vbuz2
lda.z __3
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 nomodify byte*) mode_sixsfred::PLANEA [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::$6 ← (byte) mode_sixsfred::ay#4 >> (byte) 1 -- vbuz1=vbuz2_ror_1
lda.z ay
lsr
sta.z __6
// [317] (byte) mode_sixsfred::row#0 ← (byte~) mode_sixsfred::$6 & (byte) 3 -- vbuz1=vbuz2_band_vbuc1
lda #3
and.z __6
sta.z row
// [318] *((byte*) mode_sixsfred::gfxa#2) ← *((const byte*) mode_sixsfred::row_bitmask + (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 nomodify byte*) mode_sixsfred::PLANEB [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
// Leave control to the user until exit
// [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 nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR [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 BG_COLORor0[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 BG_COLORor1[7:0]
mode_twoplanebitmap: {
.label PLANEA = $4000
.label PLANEB = $6000
.label COLORS = $8000
.label __2 = $dc
.label __3 = $dd
.label __4 = $de
.label __5 = $df
.label __8 = $e0
.label i = $2c
// Color for bits 11
// Colors for bits 01 / 10
.label col = $2f
.label cx = $2e
.label cy = $2d
// Graphics for Plane A - horizontal stripes
.label gfxa = $32
.label ax = $34
.label ay = $31
// Graphics for Plane B - vertical stripes
.label gfxb = $36
.label bx = $38
.label by = $35
// [335] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR|DTV_LINEAR
sta DTV_CONTROL
// [336] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Mode
lda #VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [337] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [338] *((const nomodify byte*) DTV_PLANEA_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane A Counter
lda #0
sta DTV_PLANEA_START_LO
// [339] *((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_twoplanebitmap::PLANEA -- _deref_pbuc1=vbuc2
lda #>PLANEA
sta DTV_PLANEA_START_MI
// [340] *((const nomodify byte*) DTV_PLANEA_START_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_START_HI
// [341] *((const nomodify byte*) DTV_PLANEA_STEP) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEA_STEP
// [342] *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_LO
// [343] *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_HI
// [344] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
lda #0
sta DTV_PLANEB_START_LO
// [345] *((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_twoplanebitmap::PLANEB -- _deref_pbuc1=vbuc2
lda #>PLANEB
sta DTV_PLANEB_START_MI
// [346] *((const nomodify byte*) DTV_PLANEB_START_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_HI
// [347] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEB_STEP
// [348] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// [349] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_HI
// [350] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(const nomodify byte*) mode_twoplanebitmap::COLORS/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// [351] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (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 nomodify byte*) DTV_PALETTE + (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 nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDER_COLOR
// [357] *((const nomodify byte*) BG_COLOR) ← (byte) $70 -- _deref_pbuc1=vbuc2
lda #$70
sta BG_COLOR
// [358] *((const nomodify byte*) BG_COLOR1) ← (byte) $d4 -- _deref_pbuc1=vbuc2
// Color for bits 00
lda #$d4
sta BG_COLOR1
// [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 nomodify byte*) mode_twoplanebitmap::COLORS [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::$2 ← (byte) mode_twoplanebitmap::cy#4 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cy
sta.z __2
// [362] (byte~) mode_twoplanebitmap::$3 ← (byte~) mode_twoplanebitmap::$2 << (byte) 4 -- vbuz1=vbuz2_rol_4
lda.z __2
asl
asl
asl
asl
sta.z __3
// [363] (byte~) mode_twoplanebitmap::$4 ← (byte) mode_twoplanebitmap::cx#2 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cx
sta.z __4
// [364] (byte~) mode_twoplanebitmap::$5 ← (byte~) mode_twoplanebitmap::$3 | (byte~) mode_twoplanebitmap::$4 -- vbuz1=vbuz2_bor_vbuz3
lda.z __3
ora.z __4
sta.z __5
// [365] *((byte*) mode_twoplanebitmap::col#2) ← (byte~) mode_twoplanebitmap::$5 -- _deref_pbuz1=vbuz2
lda.z __5
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 nomodify byte*) mode_twoplanebitmap::PLANEA [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::$8 ← (byte) mode_twoplanebitmap::ay#5 & (byte) 4 -- vbuz1=vbuz2_band_vbuc1
lda #4
and.z ay
sta.z __8
// [374] if((byte~) mode_twoplanebitmap::$8==(byte) 0) goto mode_twoplanebitmap::@8 -- vbuz1_eq_0_then_la1
lda.z __8
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 nomodify byte*) mode_twoplanebitmap::PLANEB [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
// Leave control to the user until exit
// [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 nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR [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 __2 = $e1
.label __3 = $e2
.label __4 = $e3
.label __5 = $e4
.label __8 = $e5
.label i = $39
// Colors for high 4 bits of 8bpp
.label col = $3c
.label cx = $3b
.label cy = $3a
.label row = $e6
// Graphics for Plane A () - horizontal stripes every 2 pixels
.label gfxa = $3f
.label ax = $41
.label ay = $3e
// Graphics for Plane B - vertical stripes every 2 pixels
.label gfxb = $43
.label bx = $45
.label by = $42
// [395] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_LINEAR -- _deref_pbuc1=vbuc2
lda #DTV_LINEAR
sta DTV_CONTROL
// [396] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Mode
lda #VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [397] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_MCM|VIC_CSEL
sta VIC_CONTROL2
// [398] *((const nomodify byte*) DTV_PLANEA_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane A Counter
lda #0
sta DTV_PLANEA_START_LO
// [399] *((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_sixsfred2::PLANEA -- _deref_pbuc1=vbuc2
lda #>PLANEA
sta DTV_PLANEA_START_MI
// [400] *((const nomodify byte*) DTV_PLANEA_START_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_START_HI
// [401] *((const nomodify byte*) DTV_PLANEA_STEP) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEA_STEP
// [402] *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_LO
// [403] *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_HI
// [404] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
lda #0
sta DTV_PLANEB_START_LO
// [405] *((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_sixsfred2::PLANEB -- _deref_pbuc1=vbuc2
lda #>PLANEB
sta DTV_PLANEB_START_MI
// [406] *((const nomodify byte*) DTV_PLANEB_START_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_HI
// [407] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEB_STEP
// [408] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// [409] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_HI
// [410] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(const nomodify byte*) mode_sixsfred2::COLORS/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// [411] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (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 nomodify byte*) DTV_PALETTE + (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 nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDER_COLOR
// [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 nomodify byte*) mode_sixsfred2::COLORS [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::$2 ← (byte) mode_sixsfred2::cx#2 & (byte) 3 -- vbuz1=vbuz2_band_vbuc1
lda #3
and.z cx
sta.z __2
// [420] (byte~) mode_sixsfred2::$3 ← (byte~) mode_sixsfred2::$2 << (byte) 4 -- vbuz1=vbuz2_rol_4
lda.z __2
asl
asl
asl
asl
sta.z __3
// [421] (byte~) mode_sixsfred2::$4 ← (byte) mode_sixsfred2::cy#4 & (byte) 3 -- vbuz1=vbuz2_band_vbuc1
lda #3
and.z cy
sta.z __4
// [422] (byte~) mode_sixsfred2::$5 ← (byte~) mode_sixsfred2::$3 | (byte~) mode_sixsfred2::$4 -- vbuz1=vbuz2_bor_vbuz3
lda.z __3
ora.z __4
sta.z __5
// [423] *((byte*) mode_sixsfred2::col#2) ← (byte~) mode_sixsfred2::$5 -- _deref_pbuz1=vbuz2
lda.z __5
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 nomodify byte*) mode_sixsfred2::PLANEA [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::$8 ← (byte) mode_sixsfred2::ay#4 >> (byte) 1 -- vbuz1=vbuz2_ror_1
lda.z ay
lsr
sta.z __8
// [432] (byte) mode_sixsfred2::row#0 ← (byte~) mode_sixsfred2::$8 & (byte) 3 -- vbuz1=vbuz2_band_vbuc1
lda #3
and.z __8
sta.z row
// [433] *((byte*) mode_sixsfred2::gfxa#2) ← *((const byte*) mode_sixsfred2::row_bitmask + (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 nomodify byte*) mode_sixsfred2::PLANEB [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
// Leave control to the user until exit
// [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 nomodify byte) DTV_LINEAR [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 BG_COLORor0[7:0]
// - 1: 8bpp ColorData[7:4] "0" & Color[2:0]
//GfxData Pixel Shifter (2) if ColorData[3:3] = 1:
// - 00: 8bpp BG_COLORor0[7:0]
// - 01: 8bpp BG_COLORor1[7:0]
// - 10: 8bpp BG_COLORor2[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 __2 = $e7
.label __3 = $e8
.label __4 = $e9
.label i = $46
.label v = $ea
// Char Colors and screen chars
.label col = $49
.label ch = $4b
.label cx = $48
.label cy = $47
// [450] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [451] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify byte*) mode_hicolmcchar::COLORS/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// [452] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [453] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR
sta DTV_CONTROL
// [454] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR
// [455] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_hicolmcchar::CHARSET/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2
// [456] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [457] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL|(const nomodify byte) VIC_MCM -- _deref_pbuc1=vbuc2
lda #VIC_CSEL|VIC_MCM
sta VIC_CONTROL2
// [458] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolmcchar::CHARSET&(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 nomodify byte*) DTV_PALETTE + (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 nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDER_COLOR
// [464] *((const nomodify byte*) BG_COLOR) ← (byte) $50 -- _deref_pbuc1=vbuc2
lda #$50
sta BG_COLOR
// [465] *((const nomodify byte*) BG_COLOR1) ← (byte) $54 -- _deref_pbuc1=vbuc2
lda #$54
sta BG_COLOR1
// [466] *((const nomodify byte*) BG_COLOR2) ← (byte) $58 -- _deref_pbuc1=vbuc2
lda #$58
sta BG_COLOR2
// [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 nomodify byte*) mode_hicolmcchar::SCREEN [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 nomodify byte*) mode_hicolmcchar::COLORS [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::$2 ← (byte) mode_hicolmcchar::cy#4 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cy
sta.z __2
// [470] (byte~) mode_hicolmcchar::$3 ← (byte~) mode_hicolmcchar::$2 << (byte) 4 -- vbuz1=vbuz2_rol_4
lda.z __2
asl
asl
asl
asl
sta.z __3
// [471] (byte~) mode_hicolmcchar::$4 ← (byte) mode_hicolmcchar::cx#2 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cx
sta.z __4
// [472] (byte) mode_hicolmcchar::v#0 ← (byte~) mode_hicolmcchar::$3 | (byte~) mode_hicolmcchar::$4 -- vbuz1=vbuz2_bor_vbuz3
lda.z __3
ora.z __4
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
// Leave control to the user until exit
// [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 nomodify byte) DTV_HIGHCOLOR [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 BG_COLORor0[7:0]
// - CharData[7:6] 01: 8bpp BG_COLORor1[7:0]
// - CharData[7:6] 10: 8bpp BG_COLORor2[7:0]
// - CharData[7:6] 11: 8bpp BG_COLORor3[7:0]
// - 1: 8bpp ColorData[7:0]
mode_hicolecmchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $8400
.label __2 = $eb
.label __3 = $ec
.label __4 = $ed
.label i = $4d
.label v = $ee
// Char Colors and screen chars
.label col = $50
.label ch = $52
.label cx = $4f
.label cy = $4e
// [484] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [485] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify byte*) mode_hicolecmchar::COLORS/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// [486] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [487] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR
sta DTV_CONTROL
// [488] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR
// [489] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_hicolecmchar::CHARSET/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2
// [490] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(const nomodify byte) VIC_ECM|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|VIC_ECM|3
sta VIC_CONTROL
// [491] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [492] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolecmchar::CHARSET&(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 nomodify byte*) DTV_PALETTE + (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 nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDER_COLOR
// [498] *((const nomodify byte*) BG_COLOR) ← (byte) $50 -- _deref_pbuc1=vbuc2
lda #$50
sta BG_COLOR
// [499] *((const nomodify byte*) BG_COLOR1) ← (byte) $54 -- _deref_pbuc1=vbuc2
lda #$54
sta BG_COLOR1
// [500] *((const nomodify byte*) BG_COLOR2) ← (byte) $58 -- _deref_pbuc1=vbuc2
lda #$58
sta BG_COLOR2
// [501] *((const nomodify byte*) BG_COLOR3) ← (byte) $5c -- _deref_pbuc1=vbuc2
lda #$5c
sta BG_COLOR3
// [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 nomodify byte*) mode_hicolecmchar::SCREEN [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 nomodify byte*) mode_hicolecmchar::COLORS [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::$2 ← (byte) mode_hicolecmchar::cy#4 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cy
sta.z __2
// [505] (byte~) mode_hicolecmchar::$3 ← (byte~) mode_hicolecmchar::$2 << (byte) 4 -- vbuz1=vbuz2_rol_4
lda.z __2
asl
asl
asl
asl
sta.z __3
// [506] (byte~) mode_hicolecmchar::$4 ← (byte) mode_hicolecmchar::cx#2 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cx
sta.z __4
// [507] (byte) mode_hicolecmchar::v#0 ← (byte~) mode_hicolecmchar::$3 | (byte~) mode_hicolecmchar::$4 -- vbuz1=vbuz2_bor_vbuz3
lda.z __3
ora.z __4
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
// Leave control to the user until exit
// [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 nomodify byte) DTV_HIGHCOLOR [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 BG_COLORor0[7:0]
// - 1: 8bpp ColorData[7:0]
mode_hicolstdchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $8400
.label __2 = $ef
.label __3 = $f0
.label __4 = $f1
.label i = $54
.label v = $f2
// Char Colors and screen chars
.label col = $57
.label ch = $59
.label cx = $56
.label cy = $55
// [519] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [520] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify byte*) mode_hicolstdchar::COLORS/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// [521] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [522] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR
sta DTV_CONTROL
// [523] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR
// [524] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_hicolstdchar::CHARSET/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2
// [525] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [526] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [527] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolstdchar::CHARSET&(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 nomodify byte*) DTV_PALETTE + (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 nomodify byte*) BG_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BG_COLOR
// [533] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta BORDER_COLOR
// [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 nomodify byte*) mode_hicolstdchar::SCREEN [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 nomodify byte*) mode_hicolstdchar::COLORS [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::$2 ← (byte) mode_hicolstdchar::cy#4 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cy
sta.z __2
// [537] (byte~) mode_hicolstdchar::$3 ← (byte~) mode_hicolstdchar::$2 << (byte) 4 -- vbuz1=vbuz2_rol_4
lda.z __2
asl
asl
asl
asl
sta.z __3
// [538] (byte~) mode_hicolstdchar::$4 ← (byte) mode_hicolstdchar::cx#2 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cx
sta.z __4
// [539] (byte) mode_hicolstdchar::v#0 ← (byte~) mode_hicolstdchar::$3 | (byte~) mode_hicolstdchar::$4 -- vbuz1=vbuz2_bor_vbuz3
lda.z __3
ora.z __4
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
// Leave control to the user until exit
// [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 nomodify byte) DTV_HIGHCOLOR [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: {
.const lines_cnt = 9
.label SCREEN = $4000
.label BITMAP = $6000
.label __4 = $f3
.label __7 = $f6
.label __8 = $f7
.label i = $5b
.label col = $f4
.label col2 = $f5
// Bitmap Colors
.label ch = $5e
.label cx = $5d
.label cy = $5c
.label l = $60
// [551] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [552] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_CONTROL
// [553] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR
// [554] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_stdbitmap::BITMAP/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^BITMAP/$4000
sta CIA2
// [555] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_BMM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [556] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [557] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_stdbitmap::BITMAP&(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 nomodify byte*) DTV_PALETTE + (byte) mode_stdbitmap::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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 nomodify byte*) BG_COLOR) ← (const nomodify byte) BLACK -- _deref_pbuc1=vbuc2
// Screen colors
lda #BLACK
sta BG_COLOR
// [563] *((const nomodify byte*) BORDER_COLOR) ← (const nomodify byte) BLACK -- _deref_pbuc1=vbuc2
lda #BLACK
sta BORDER_COLOR
// [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 nomodify byte*) mode_stdbitmap::SCREEN [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::$4 ← (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#4 -- vbuz1=vbuz2_plus_vbuz3
lda.z cx
clc
adc.z cy
sta.z __4
// [567] (byte) mode_stdbitmap::col#0 ← (byte~) mode_stdbitmap::$4 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z __4
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::$7 ← (byte) mode_stdbitmap::col#0 << (byte) 4 -- vbuz1=vbuz2_rol_4
lda.z col
asl
asl
asl
asl
sta.z __7
// [570] (byte~) mode_stdbitmap::$8 ← (byte~) mode_stdbitmap::$7 | (byte) mode_stdbitmap::col2#0 -- vbuz1=vbuz2_bor_vbuz3
lda.z __7
ora.z col2
sta.z __8
// [571] *((byte*) mode_stdbitmap::ch#2) ← (byte~) mode_stdbitmap::$8 -- _deref_pbuz1=vbuz2
lda.z __8
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
// Draw some lines on the bitmap
// [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) 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
// Leave control to the user until exit
// [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 + (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+(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 + (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+(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 zp($f8) x0, byte zp($f9) x1, byte zp($fa) y0, byte zp($fb) y1)
bitmap_line: {
.label xd = $ff
.label xd_1 = $fc
.label yd = $fe
.label yd_1 = $fd
.label x0 = $f8
.label x1 = $f9
.label y0 = $fa
.label y1 = $fb
.label yd_2 = $100
.label yd_3 = $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_1
// [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_1
// [596] if((byte) bitmap_line::yd#2<(byte) bitmap_line::xd#2) goto bitmap_line::@8 -- vbuz1_lt_vbuz2_then_la1
lda.z yd_1
cmp.z xd_1
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_1
sta.z bitmap_line_ydxi.yd
// [601] (byte) bitmap_line_ydxi::xd#0 ← (byte) bitmap_line::xd#2 -- vbuz1=vbuz2
lda.z xd_1
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_1
sta.z bitmap_line_xdyi.xd
// [608] (byte) bitmap_line_xdyi::yd#0 ← (byte) bitmap_line::yd#2 -- vbuz1=vbuz2
lda.z yd_1
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_1
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_1
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_1
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_2
// [627] if((byte) bitmap_line::yd#10<(byte) bitmap_line::xd#1) goto bitmap_line::@12 -- vbuz1_lt_vbuz2_then_la1
lda.z yd_2
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_2
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_2
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_3
// [641] if((byte) bitmap_line::yd#11<(byte) bitmap_line::xd#1) goto bitmap_line::@13 -- vbuz1_lt_vbuz2_then_la1
lda.z yd_3
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_3
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_3
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 zp($64) x, byte zp($65) y, byte zp($63) x1, byte zp($62) xd, byte zp($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 zp($67) x, byte zp($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 to_nomodify byte*) bitmap_plot_xhi + (byte) bitmap_plot::x#4) w= *((const to_nomodify byte*) bitmap_plot_xlo + (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 to_nomodify byte*) bitmap_plot_yhi + (byte) bitmap_plot::y#4) w= *((const to_nomodify byte*) bitmap_plot_ylo + (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 to_nomodify byte*) bitmap_plot_bit + (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 zp($6d) y, byte zp($6c) x, byte zp($6b) y1, byte zp($6a) yd, byte zp($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 zp($72) x, byte zp($73) y, byte zp($71) x1, byte zp($70) xd, byte zp($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 zp($79) y, byte zp($78) x, byte zp($77) y1, byte zp($76) yd, byte zp($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
// [721] (word) bitmap_clear::bitmap#0 ← *((const to_nomodify byte*) bitmap_plot_xhi) w= *((const to_nomodify byte*) bitmap_plot_xlo) -- 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_1
lda.z bitmap+1
sta.z bitmap_1+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_1),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 to_nomodify byte*) bitmap_plot_xlo + (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 to_nomodify byte*) bitmap_plot_xhi + (byte) bitmap_init::x#2) ← >(const nomodify byte*) mode_stdbitmap::BITMAP -- pbuc1_derefidx_vbuz1=vbuc2
lda #>mode_stdbitmap.BITMAP
ldy.z x
sta bitmap_plot_xhi,y
// [737] *((const to_nomodify byte*) bitmap_plot_bit + (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 to_nomodify byte*) bitmap_plot_ylo + (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 to_nomodify byte*) bitmap_plot_yhi + (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 BG_COLORor0[3:0]
// - 1: 4bpp ColorData[2:0]
// GfxData Pixel Shifter (2) if ColorData[3:3] = 1:
// - 00: 4bpp BG_COLORor0[3:0]
// - 01: 4bpp BG_COLORor1[3:0]
// - 10: 4bpp BG_COLORor2[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 __2 = $114
.label __3 = $115
.label __4 = $116
.label __5 = $117
.label __6 = $118
.label __7 = $119
.label i = $84
// Char Colors and screen chars
.label col = $87
.label ch = $89
.label cx = $86
.label cy = $85
// [757] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [758] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<DTV_COLOR_BANK_DEFAULT/$400
sta DTV_COLOR_BANK_LO
// [759] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [760] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_CONTROL
// [761] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR
// [762] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_mcchar::CHARSET/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2
// [763] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [764] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL|(const nomodify byte) VIC_MCM -- _deref_pbuc1=vbuc2
lda #VIC_CSEL|VIC_MCM
sta VIC_CONTROL2
// [765] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_mcchar::CHARSET&(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 nomodify byte*) DTV_PALETTE + (byte) mode_mcchar::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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 nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDER_COLOR
// [771] *((const nomodify byte*) BG_COLOR) ← (const nomodify byte) BLACK -- _deref_pbuc1=vbuc2
lda #BLACK
sta BG_COLOR
// [772] *((const nomodify byte*) BG_COLOR1) ← (const nomodify byte) GREEN -- _deref_pbuc1=vbuc2
lda #GREEN
sta BG_COLOR1
// [773] *((const nomodify byte*) BG_COLOR2) ← (const nomodify byte) BLUE -- _deref_pbuc1=vbuc2
lda #BLUE
sta BG_COLOR2
// [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 nomodify byte*) mode_mcchar::SCREEN [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 nomodify byte*) mode_mcchar::COLORS [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::$2 ← (byte) mode_mcchar::cx#2 + (byte) mode_mcchar::cy#4 -- vbuz1=vbuz2_plus_vbuz3
lda.z cx
clc
adc.z cy
sta.z __2
// [777] (byte~) mode_mcchar::$3 ← (byte~) mode_mcchar::$2 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z __2
sta.z __3
// [778] *((byte*) mode_mcchar::col#2) ← (byte~) mode_mcchar::$3 -- _deref_pbuz1=vbuz2
lda.z __3
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::$4 ← (byte) mode_mcchar::cy#4 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cy
sta.z __4
// [781] (byte~) mode_mcchar::$5 ← (byte~) mode_mcchar::$4 << (byte) 4 -- vbuz1=vbuz2_rol_4
lda.z __4
asl
asl
asl
asl
sta.z __5
// [782] (byte~) mode_mcchar::$6 ← (byte) mode_mcchar::cx#2 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cx
sta.z __6
// [783] (byte~) mode_mcchar::$7 ← (byte~) mode_mcchar::$5 | (byte~) mode_mcchar::$6 -- vbuz1=vbuz2_bor_vbuz3
lda.z __5
ora.z __6
sta.z __7
// [784] *((byte*) mode_mcchar::ch#2) ← (byte~) mode_mcchar::$7 -- _deref_pbuz1=vbuz2
lda.z __7
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
// Leave control to the user until exit
// [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 BG_COLORor0[3:0]
// - CharData[7:6] 01: 4bpp BG_COLORor1[3:0]
// - CharData[7:6] 10: 4bpp BG_COLORor2[3:0]
// - CharData[7:6] 11: 4bpp BG_COLORor3[3:0]
// - 1: 4bpp ColorData[3:0]
mode_ecmchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $d800
.label __2 = $11a
.label __3 = $11b
.label __4 = $11c
.label __5 = $11d
.label __6 = $11e
.label __7 = $11f
.label i = $8b
// Char Colors and screen chars
.label col = $8e
.label ch = $90
.label cx = $8d
.label cy = $8c
// [793] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [794] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<DTV_COLOR_BANK_DEFAULT/$400
sta DTV_COLOR_BANK_LO
// [795] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [796] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_CONTROL
// [797] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR
// [798] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_ecmchar::CHARSET/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2
// [799] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(const nomodify byte) VIC_ECM|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|VIC_ECM|3
sta VIC_CONTROL
// [800] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [801] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_ecmchar::CHARSET&(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 nomodify byte*) DTV_PALETTE + (byte) mode_ecmchar::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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 nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDER_COLOR
// [807] *((const nomodify byte*) BG_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta BG_COLOR
// [808] *((const nomodify byte*) BG_COLOR1) ← (byte) 2 -- _deref_pbuc1=vbuc2
lda #2
sta BG_COLOR1
// [809] *((const nomodify byte*) BG_COLOR2) ← (byte) 5 -- _deref_pbuc1=vbuc2
lda #5
sta BG_COLOR2
// [810] *((const nomodify byte*) BG_COLOR3) ← (byte) 6 -- _deref_pbuc1=vbuc2
lda #6
sta BG_COLOR3
// [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 nomodify byte*) mode_ecmchar::SCREEN [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 nomodify byte*) mode_ecmchar::COLORS [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::$2 ← (byte) mode_ecmchar::cx#2 + (byte) mode_ecmchar::cy#4 -- vbuz1=vbuz2_plus_vbuz3
lda.z cx
clc
adc.z cy
sta.z __2
// [814] (byte~) mode_ecmchar::$3 ← (byte~) mode_ecmchar::$2 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z __2
sta.z __3
// [815] *((byte*) mode_ecmchar::col#2) ← (byte~) mode_ecmchar::$3 -- _deref_pbuz1=vbuz2
lda.z __3
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::$4 ← (byte) mode_ecmchar::cy#4 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cy
sta.z __4
// [818] (byte~) mode_ecmchar::$5 ← (byte~) mode_ecmchar::$4 << (byte) 4 -- vbuz1=vbuz2_rol_4
lda.z __4
asl
asl
asl
asl
sta.z __5
// [819] (byte~) mode_ecmchar::$6 ← (byte) mode_ecmchar::cx#2 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cx
sta.z __6
// [820] (byte~) mode_ecmchar::$7 ← (byte~) mode_ecmchar::$5 | (byte~) mode_ecmchar::$6 -- vbuz1=vbuz2_bor_vbuz3
lda.z __5
ora.z __6
sta.z __7
// [821] *((byte*) mode_ecmchar::ch#2) ← (byte~) mode_ecmchar::$7 -- _deref_pbuz1=vbuz2
lda.z __7
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
// Leave control to the user until exit
// [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 BG_COLORor0[3:0]
// - 1: 4bpp ColorData[3:0]
mode_stdchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $d800
.label __2 = $120
.label __3 = $121
.label __4 = $122
.label __5 = $123
.label __6 = $124
.label __7 = $125
.label i = $92
// Char Colors and screen chars
.label col = $95
.label ch = $97
.label cx = $94
.label cy = $93
// [830] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [831] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<DTV_COLOR_BANK_DEFAULT/$400
sta DTV_COLOR_BANK_LO
// [832] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [833] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_CONTROL
// [834] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR
// [835] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_stdchar::CHARSET/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2
// [836] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [837] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [838] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_stdchar::CHARSET&(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 nomodify byte*) DTV_PALETTE + (byte) mode_stdchar::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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 nomodify byte*) BG_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BG_COLOR
// [844] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta BORDER_COLOR
// [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 nomodify byte*) mode_stdchar::SCREEN [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 nomodify byte*) mode_stdchar::COLORS [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::$2 ← (byte) mode_stdchar::cx#2 + (byte) mode_stdchar::cy#4 -- vbuz1=vbuz2_plus_vbuz3
lda.z cx
clc
adc.z cy
sta.z __2
// [848] (byte~) mode_stdchar::$3 ← (byte~) mode_stdchar::$2 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z __2
sta.z __3
// [849] *((byte*) mode_stdchar::col#2) ← (byte~) mode_stdchar::$3 -- _deref_pbuz1=vbuz2
lda.z __3
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::$4 ← (byte) mode_stdchar::cy#4 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cy
sta.z __4
// [852] (byte~) mode_stdchar::$5 ← (byte~) mode_stdchar::$4 << (byte) 4 -- vbuz1=vbuz2_rol_4
lda.z __4
asl
asl
asl
asl
sta.z __5
// [853] (byte~) mode_stdchar::$6 ← (byte) mode_stdchar::cx#2 & (byte) $f -- vbuz1=vbuz2_band_vbuc1
lda #$f
and.z cx
sta.z __6
// [854] (byte~) mode_stdchar::$7 ← (byte~) mode_stdchar::$5 | (byte~) mode_stdchar::$6 -- vbuz1=vbuz2_bor_vbuz3
lda.z __5
ora.z __6
sta.z __7
// [855] *((byte*) mode_stdchar::ch#2) ← (byte~) mode_stdchar::$7 -- _deref_pbuz1=vbuz2
lda.z __7
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
// Leave control to the user until exit
// [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* zp($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 nomodify byte*) menu::SCREEN [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#21 = (const nomodify byte*) menu::SCREEN [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 [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#35 = (byte*) print_char_cursor#21 [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::ch#0 ← (byte) print_str_lines::ch#0 -- vbuz1=vbuz2
lda.z ch
sta.z print_char.ch
// [873] call print_char
jsr print_char
// [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#36 = (byte*) print_char_cursor#35 [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#102 ← (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#21 = (byte*) print_char_cursor#102 [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#36) 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_char
// Print a single char
// print_char(byte zp($127) ch)
print_char: {
.label ch = $127
// [884] *((byte*) print_char_cursor#35) ← (byte) print_char::ch#0 -- _deref_pbuz1=vbuz2
lda.z ch
ldy #0
sta (print_char_cursor),y
// [885] (byte*) print_char_cursor#25 ← ++ (byte*) print_char_cursor#35 -- pbuz1=_inc_pbuz1
inc.z print_char_cursor
bne !+
inc.z print_char_cursor+1
!:
jmp __breturn
// print_char::@return
__breturn:
// [886] return
rts
}
// print_cls
// Clear the screen. Also resets current line/char cursor.
print_cls: {
// [888] call memset
// [890] phi from print_cls to memset [phi:print_cls->memset]
memset_from_print_cls:
jsr memset
jmp __breturn
// print_cls::@return
__breturn:
// [889] 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
// [891] phi from memset to memset::@1 [phi:memset->memset::@1]
__b1_from_memset:
// [891] 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:
// [892] 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:
// [893] return
rts
// memset::@2
__b2:
// [894] *((byte*) memset::dst#2) ← (const byte) memset::c#0 -- _deref_pbuz1=vbuc1
lda #c
ldy #0
sta (dst),y
// [895] (byte*) memset::dst#1 ← ++ (byte*) memset::dst#2 -- pbuz1=_inc_pbuz1
inc.z dst
bne !+
inc.z dst+1
!:
// [891] phi from memset::@2 to memset::@1 [phi:memset::@2->memset::@1]
__b1_from___b2:
// [891] 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:
// [897] 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[1]:273 [ bitmap_init::$7 ] has ALU potential.
Statement [5] *((const nomodify byte*) PROCPORT_DDR) ← (const nomodify byte) PROCPORT_DDR_MEMORY_MASK [ ] ( main:2 [ ] { } ) always clobbers reg byte a
Statement [6] *((const nomodify byte*) PROCPORT) ← (const nomodify byte) PROCPORT_RAM_IO [ ] ( main:2 [ ] { } ) always clobbers reg byte a
Statement [7] *((const nomodify byte*) DTV_FEATURE) ← (const nomodify byte) DTV_FEATURE_ENABLE [ ] ( main:2 [ ] { } ) always clobbers reg byte a
Statement [10] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 [ ] ( main:2::menu:9 [ ] { } ) always clobbers reg byte a
Statement [11] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400 [ ] ( main:2::menu:9 [ ] { } ) always clobbers reg byte a
Statement [12] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 [ ] ( main:2::menu:9 [ ] { } ) always clobbers reg byte a
Statement [13] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0 [ ] ( main:2::menu:9 [ ] { } ) always clobbers reg byte a
Statement [14] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 [ ] ( main:2::menu:9 [ ] { } ) always clobbers reg byte a
Statement [15] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) menu::CHARSET/(word) $4000 [ ] ( main:2::menu:9 [ ] { } ) always clobbers reg byte a
Statement [16] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 [ ] ( main:2::menu:9 [ ] { } ) always clobbers reg byte a
Statement [17] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL [ ] ( main:2::menu:9 [ ] { } ) always clobbers reg byte a
Statement [18] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) menu::CHARSET&(word) $3fff/(word) $400 [ ] ( main:2::menu:9 [ ] { } ) always clobbers reg byte a
Statement [20] *((const nomodify byte*) DTV_PALETTE + (byte) menu::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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[1]:2 [ menu::i#2 menu::i#1 ]
Statement [24] if((byte*) menu::c#2!=(const nomodify byte*) COLS+(word) $3e8) goto menu::@3 [ menu::c#2 ] ( main:2::menu:9 [ menu::c#2 ] { } ) always clobbers reg byte a
Statement [25] *((const nomodify byte*) BG_COLOR) ← (byte) 0 [ ] ( main:2::menu:9 [ ] { } ) always clobbers reg byte a
Statement [26] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 [ ] ( main:2::menu:9 [ ] { } ) always clobbers reg byte a
Statement [117] *((byte*) menu::c#2) ← (const nomodify byte) LIGHT_GREEN [ menu::c#2 ] ( main:2::menu:9 [ menu::c#2 ] { } ) always clobbers reg byte a reg byte y
Statement [119] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY|(const nomodify byte) DTV_COLORRAM_OFF [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] { } ) always clobbers reg byte a
Statement [120] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] { } ) always clobbers reg byte a
Statement [121] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] { } ) always clobbers reg byte a
Statement [122] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] { } ) always clobbers reg byte a
Statement [123] *((const nomodify byte*) DTV_PLANEB_START_MI) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] { } ) always clobbers reg byte a
Statement [124] *((const nomodify byte*) DTV_PLANEB_START_HI) ← <>(const nomodify dword) mode_8bppchunkybmm::PLANEB [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] { } ) always clobbers reg byte a
Statement [125] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 8 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] { } ) always clobbers reg byte a
Statement [126] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] { } ) always clobbers reg byte a
Statement [127] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] { } ) always clobbers reg byte a
Statement [128] *((const nomodify byte*) BORDER_COLOR) ← (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[1]:6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ]
Removing always clobbered register reg byte a as potential for zp[1]:9 [ mode_8bppchunkybmm::gfxbCpuBank#4 mode_8bppchunkybmm::gfxbCpuBank#7 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::gfxbCpuBank#2 ]
Statement [142] (word~) mode_8bppchunkybmm::$7 ← (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::$7 ] ( 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::$7 ] { } ) always clobbers reg byte a
Statement [143] (byte) mode_8bppchunkybmm::c#0 ← (byte)(word~) mode_8bppchunkybmm::$7 [ 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[1]:6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ]
Removing always clobbered register reg byte y as potential for zp[1]: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 nomodify byte*) RASTER)!=(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[1]:12 [ dtv_control#114 dtv_control#144 dtv_control#17 ]
Statement [169] (byte) mode_ctrl::ctrl#1 ← (byte) mode_ctrl::ctrl#0 | (const nomodify byte) DTV_LINEAR [ 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 nomodify byte) DTV_HIGHCOLOR [ 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 nomodify byte) DTV_OVERSCAN [ 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 nomodify byte) DTV_BORDER_OFF [ 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 nomodify byte) DTV_CHUNKY [ 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 nomodify byte) DTV_COLORRAM_OFF [ 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#2 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:41 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#24 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:48 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#25 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:55 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#26 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:62 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#27 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:69 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#28 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:76 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#29 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:83 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#30 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:90 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#10 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:97 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#11 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:104 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#12 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:111 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#13 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:204 [ keyboard_key_pressed::colidx#0 ]
Removing always clobbered register reg byte a as potential for zp[1]: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] *((byte*)(const nomodify struct MOS6526_CIA*) CIA1) ← *((const byte*) keyboard_matrix_row_bitmask + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::menu:9::keyboard_key_pressed:33::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#2 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:41::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#24 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:48::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#25 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:55::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#26 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:62::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#27 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:69::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#28 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:76::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#29 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:83::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#30 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:90::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#10 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:97::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#11 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:104::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#12 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:111::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#13 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } ) always clobbers reg byte a
Statement [221] (byte) keyboard_matrix_read::return#0 ← ~ *((byte*)(const nomodify struct MOS6526_CIA*) CIA1+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_B) [ 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#2 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:41::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#24 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:48::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#25 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:55::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#26 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:62::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#27 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:69::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#28 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:76::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#29 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:83::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#30 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:90::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#10 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:97::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#11 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:104::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#12 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:111::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#13 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } ) always clobbers reg byte a
Statement asm { .byte$32,$dd lda$ff .byte$32,$00 } always clobbers reg byte a
Statement [227] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [228] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [229] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [230] *((const nomodify byte*) DTV_PLANEA_START_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [231] *((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_8bpppixelcell::PLANEA [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [232] *((const nomodify byte*) DTV_PLANEA_START_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [233] *((const nomodify byte*) DTV_PLANEA_STEP) ← (byte) 1 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [234] *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [235] *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [236] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [237] *((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_8bpppixelcell::PLANEB [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [238] *((const nomodify byte*) DTV_PLANEB_START_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [239] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [240] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [241] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [242] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [250] (byte~) mode_8bpppixelcell::$3 ← (byte~) mode_8bpppixelcell::$2 << (byte) 4 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$3 ] ( main:2::menu:9::mode_8bpppixelcell:109 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$3 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 ]
Removing always clobbered register reg byte a as potential for zp[1]:18 [ mode_8bpppixelcell::ax#2 mode_8bpppixelcell::ax#1 ]
Statement [251] (byte~) mode_8bpppixelcell::$4 ← (byte) mode_8bpppixelcell::ax#2 & (byte) $f [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$3 mode_8bpppixelcell::$4 ] ( main:2::menu:9::mode_8bpppixelcell:109 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$3 mode_8bpppixelcell::$4 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:212 [ mode_8bpppixelcell::$3 ]
Statement [253] *((byte*) mode_8bpppixelcell::gfxa#2) ← (byte~) mode_8bpppixelcell::$5 [ 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[1]:17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 ]
Removing always clobbered register reg byte y as potential for zp[1]:18 [ mode_8bpppixelcell::ax#2 mode_8bpppixelcell::ax#1 ]
Statement [259] *((const nomodify byte*) PROCPORT) ← (const nomodify byte) PROCPORT_RAM_CHARROM [ ] ( 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[1]:21 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ]
Removing always clobbered register reg byte y as potential for zp[1]:21 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ]
Removing always clobbered register reg byte a as potential for zp[1]: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[1]: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[1]:24 [ mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ]
Removing always clobbered register reg byte y as potential for zp[1]: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[1]:25 [ mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ]
Removing always clobbered register reg byte y as potential for zp[1]:29 [ mode_8bpppixelcell::cp#2 mode_8bpppixelcell::cp#1 ]
Statement [279] *((const nomodify byte*) PROCPORT) ← (const nomodify byte) PROCPORT_RAM_IO [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [282] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [283] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [284] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [285] *((const nomodify byte*) DTV_PLANEA_START_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [286] *((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_sixsfred::PLANEA [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [287] *((const nomodify byte*) DTV_PLANEA_START_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [288] *((const nomodify byte*) DTV_PLANEA_STEP) ← (byte) 1 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [289] *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [290] *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [291] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [292] *((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_sixsfred::PLANEB [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [293] *((const nomodify byte*) DTV_PLANEB_START_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [294] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 1 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [295] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [296] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [297] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(const nomodify byte*) mode_sixsfred::COLORS/(word) $400 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [298] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [303] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [306] (byte~) mode_sixsfred::$2 ← (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#4 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 mode_sixsfred::$2 ] ( main:2::menu:9::mode_sixsfred:102 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 mode_sixsfred::$2 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:32 [ mode_sixsfred::cy#4 mode_sixsfred::cy#1 ]
Removing always clobbered register reg byte a as potential for zp[1]:33 [ mode_sixsfred::cx#2 mode_sixsfred::cx#1 ]
Statement [308] *((byte*) mode_sixsfred::col#2) ← (byte~) mode_sixsfred::$3 [ 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[1]:32 [ mode_sixsfred::cy#4 mode_sixsfred::cy#1 ]
Removing always clobbered register reg byte y as potential for zp[1]:33 [ mode_sixsfred::cx#2 mode_sixsfred::cx#1 ]
Statement [316] (byte~) mode_sixsfred::$6 ← (byte) mode_sixsfred::ay#4 >> (byte) 1 [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 mode_sixsfred::$6 ] ( main:2::menu:9::mode_sixsfred:102 [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 mode_sixsfred::$6 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:36 [ mode_sixsfred::ay#4 mode_sixsfred::ay#1 ]
Removing always clobbered register reg byte a as potential for zp[1]:39 [ mode_sixsfred::ax#2 mode_sixsfred::ax#1 ]
Statement [318] *((byte*) mode_sixsfred::gfxa#2) ← *((const byte*) mode_sixsfred::row_bitmask + (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[1]:36 [ mode_sixsfred::ay#4 mode_sixsfred::ay#1 ]
Removing always clobbered register reg byte y as potential for zp[1]: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[1]:40 [ mode_sixsfred::by#4 mode_sixsfred::by#1 ]
Removing always clobbered register reg byte y as potential for zp[1]:40 [ mode_sixsfred::by#4 mode_sixsfred::by#1 ]
Removing always clobbered register reg byte a as potential for zp[1]:43 [ mode_sixsfred::bx#2 mode_sixsfred::bx#1 ]
Removing always clobbered register reg byte y as potential for zp[1]:43 [ mode_sixsfred::bx#2 mode_sixsfred::bx#1 ]
Statement [335] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [336] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [337] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [338] *((const nomodify byte*) DTV_PLANEA_START_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [339] *((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_twoplanebitmap::PLANEA [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [340] *((const nomodify byte*) DTV_PLANEA_START_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [341] *((const nomodify byte*) DTV_PLANEA_STEP) ← (byte) 1 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [342] *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [343] *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [344] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [345] *((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_twoplanebitmap::PLANEB [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [346] *((const nomodify byte*) DTV_PLANEB_START_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [347] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 1 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [348] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [349] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [350] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(const nomodify byte*) mode_twoplanebitmap::COLORS/(word) $400 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [351] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [356] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [357] *((const nomodify byte*) BG_COLOR) ← (byte) $70 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [358] *((const nomodify byte*) BG_COLOR1) ← (byte) $d4 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [362] (byte~) mode_twoplanebitmap::$3 ← (byte~) mode_twoplanebitmap::$2 << (byte) 4 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$3 ] ( main:2::menu:9::mode_twoplanebitmap:95 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$3 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:45 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 ]
Removing always clobbered register reg byte a as potential for zp[1]:46 [ mode_twoplanebitmap::cx#2 mode_twoplanebitmap::cx#1 ]
Statement [363] (byte~) mode_twoplanebitmap::$4 ← (byte) mode_twoplanebitmap::cx#2 & (byte) $f [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$3 mode_twoplanebitmap::$4 ] ( main:2::menu:9::mode_twoplanebitmap:95 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$3 mode_twoplanebitmap::$4 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:221 [ mode_twoplanebitmap::$3 ]
Statement [365] *((byte*) mode_twoplanebitmap::col#2) ← (byte~) mode_twoplanebitmap::$5 [ 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[1]:45 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 ]
Removing always clobbered register reg byte y as potential for zp[1]: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[1]:49 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 ]
Removing always clobbered register reg byte y as potential for zp[1]:49 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 ]
Removing always clobbered register reg byte a as potential for zp[1]:52 [ mode_twoplanebitmap::ax#2 mode_twoplanebitmap::ax#1 ]
Removing always clobbered register reg byte y as potential for zp[1]: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[1]:53 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 ]
Removing always clobbered register reg byte y as potential for zp[1]:53 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 ]
Removing always clobbered register reg byte a as potential for zp[1]:56 [ mode_twoplanebitmap::bx#2 mode_twoplanebitmap::bx#1 ]
Removing always clobbered register reg byte y as potential for zp[1]: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 nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_LINEAR [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [396] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [397] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [398] *((const nomodify byte*) DTV_PLANEA_START_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [399] *((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_sixsfred2::PLANEA [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [400] *((const nomodify byte*) DTV_PLANEA_START_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [401] *((const nomodify byte*) DTV_PLANEA_STEP) ← (byte) 1 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [402] *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [403] *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [404] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [405] *((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_sixsfred2::PLANEB [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [406] *((const nomodify byte*) DTV_PLANEB_START_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [407] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 1 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [408] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [409] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [410] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(const nomodify byte*) mode_sixsfred2::COLORS/(word) $400 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [411] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [416] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [420] (byte~) mode_sixsfred2::$3 ← (byte~) mode_sixsfred2::$2 << (byte) 4 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$3 ] ( main:2::menu:9::mode_sixsfred2:88 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$3 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:58 [ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 ]
Removing always clobbered register reg byte a as potential for zp[1]:59 [ mode_sixsfred2::cx#2 mode_sixsfred2::cx#1 ]
Statement [421] (byte~) mode_sixsfred2::$4 ← (byte) mode_sixsfred2::cy#4 & (byte) 3 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$3 mode_sixsfred2::$4 ] ( main:2::menu:9::mode_sixsfred2:88 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$3 mode_sixsfred2::$4 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:226 [ mode_sixsfred2::$3 ]
Statement [423] *((byte*) mode_sixsfred2::col#2) ← (byte~) mode_sixsfred2::$5 [ 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[1]:58 [ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 ]
Removing always clobbered register reg byte y as potential for zp[1]:59 [ mode_sixsfred2::cx#2 mode_sixsfred2::cx#1 ]
Statement [431] (byte~) mode_sixsfred2::$8 ← (byte) mode_sixsfred2::ay#4 >> (byte) 1 [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 mode_sixsfred2::$8 ] ( main:2::menu:9::mode_sixsfred2:88 [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 mode_sixsfred2::$8 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:62 [ mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 ]
Removing always clobbered register reg byte a as potential for zp[1]:65 [ mode_sixsfred2::ax#2 mode_sixsfred2::ax#1 ]
Statement [433] *((byte*) mode_sixsfred2::gfxa#2) ← *((const byte*) mode_sixsfred2::row_bitmask + (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[1]:62 [ mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 ]
Removing always clobbered register reg byte y as potential for zp[1]: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[1]:66 [ mode_sixsfred2::by#4 mode_sixsfred2::by#1 ]
Removing always clobbered register reg byte y as potential for zp[1]:66 [ mode_sixsfred2::by#4 mode_sixsfred2::by#1 ]
Removing always clobbered register reg byte a as potential for zp[1]:69 [ mode_sixsfred2::bx#2 mode_sixsfred2::bx#1 ]
Removing always clobbered register reg byte y as potential for zp[1]:69 [ mode_sixsfred2::bx#2 mode_sixsfred2::bx#1 ]
Statement [450] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [451] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify byte*) mode_hicolmcchar::COLORS/(word) $400 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [452] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [453] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [454] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [455] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_hicolmcchar::CHARSET/(word) $4000 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [456] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [457] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL|(const nomodify byte) VIC_MCM [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [458] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolmcchar::CHARSET&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [463] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [464] *((const nomodify byte*) BG_COLOR) ← (byte) $50 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [465] *((const nomodify byte*) BG_COLOR1) ← (byte) $54 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [466] *((const nomodify byte*) BG_COLOR2) ← (byte) $58 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [470] (byte~) mode_hicolmcchar::$3 ← (byte~) mode_hicolmcchar::$2 << (byte) 4 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$3 ] ( 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::$3 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:71 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 ]
Removing always clobbered register reg byte a as potential for zp[1]:72 [ mode_hicolmcchar::cx#2 mode_hicolmcchar::cx#1 ]
Statement [471] (byte~) mode_hicolmcchar::$4 ← (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::$3 mode_hicolmcchar::$4 ] ( 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::$3 mode_hicolmcchar::$4 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:232 [ mode_hicolmcchar::$3 ]
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[1]:71 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 ]
Removing always clobbered register reg byte y as potential for zp[1]:72 [ mode_hicolmcchar::cx#2 mode_hicolmcchar::cx#1 ]
Removing always clobbered register reg byte y as potential for zp[1]: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 nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [485] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify byte*) mode_hicolecmchar::COLORS/(word) $400 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [486] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [487] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [488] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [489] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_hicolecmchar::CHARSET/(word) $4000 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [490] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(const nomodify byte) VIC_ECM|(byte) 3 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [491] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [492] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolecmchar::CHARSET&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [497] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [498] *((const nomodify byte*) BG_COLOR) ← (byte) $50 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [499] *((const nomodify byte*) BG_COLOR1) ← (byte) $54 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [500] *((const nomodify byte*) BG_COLOR2) ← (byte) $58 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [501] *((const nomodify byte*) BG_COLOR3) ← (byte) $5c [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [505] (byte~) mode_hicolecmchar::$3 ← (byte~) mode_hicolecmchar::$2 << (byte) 4 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$3 ] ( 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::$3 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:78 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 ]
Removing always clobbered register reg byte a as potential for zp[1]:79 [ mode_hicolecmchar::cx#2 mode_hicolecmchar::cx#1 ]
Statement [506] (byte~) mode_hicolecmchar::$4 ← (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::$3 mode_hicolecmchar::$4 ] ( 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::$3 mode_hicolecmchar::$4 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:236 [ mode_hicolecmchar::$3 ]
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[1]:78 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 ]
Removing always clobbered register reg byte y as potential for zp[1]:79 [ mode_hicolecmchar::cx#2 mode_hicolecmchar::cx#1 ]
Removing always clobbered register reg byte y as potential for zp[1]: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 nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] { } ) always clobbers reg byte a
Statement [520] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify byte*) mode_hicolstdchar::COLORS/(word) $400 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] { } ) always clobbers reg byte a
Statement [521] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] { } ) always clobbers reg byte a
Statement [522] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] { } ) always clobbers reg byte a
Statement [523] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] { } ) always clobbers reg byte a
Statement [524] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_hicolstdchar::CHARSET/(word) $4000 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] { } ) always clobbers reg byte a
Statement [525] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] { } ) always clobbers reg byte a
Statement [526] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] { } ) always clobbers reg byte a
Statement [527] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolstdchar::CHARSET&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] { } ) always clobbers reg byte a
Statement [532] *((const nomodify byte*) BG_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] { } ) always clobbers reg byte a
Statement [533] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] { } ) always clobbers reg byte a
Statement [537] (byte~) mode_hicolstdchar::$3 ← (byte~) mode_hicolstdchar::$2 << (byte) 4 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$3 ] ( 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::$3 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:85 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 ]
Removing always clobbered register reg byte a as potential for zp[1]:86 [ mode_hicolstdchar::cx#2 mode_hicolstdchar::cx#1 ]
Statement [538] (byte~) mode_hicolstdchar::$4 ← (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::$3 mode_hicolstdchar::$4 ] ( 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::$3 mode_hicolstdchar::$4 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:240 [ mode_hicolstdchar::$3 ]
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[1]:85 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 ]
Removing always clobbered register reg byte y as potential for zp[1]:86 [ mode_hicolstdchar::cx#2 mode_hicolstdchar::cx#1 ]
Removing always clobbered register reg byte y as potential for zp[1]: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 nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] { } ) always clobbers reg byte a
Statement [552] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] { } ) always clobbers reg byte a
Statement [553] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] { } ) always clobbers reg byte a
Statement [554] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_stdbitmap::BITMAP/(word) $4000 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] { } ) always clobbers reg byte a
Statement [555] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] { } ) always clobbers reg byte a
Statement [556] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] { } ) always clobbers reg byte a
Statement [557] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_stdbitmap::BITMAP&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] { } ) always clobbers reg byte a
Statement [559] *((const nomodify byte*) DTV_PALETTE + (byte) mode_stdbitmap::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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[1]:91 [ mode_stdbitmap::i#2 mode_stdbitmap::i#1 ]
Statement [562] *((const nomodify byte*) BG_COLOR) ← (const nomodify byte) BLACK [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] { } ) always clobbers reg byte a
Statement [563] *((const nomodify byte*) BORDER_COLOR) ← (const nomodify byte) BLACK [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] { } ) always clobbers reg byte a
Statement [566] (byte~) mode_stdbitmap::$4 ← (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#4 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::$4 ] ( main:2::menu:9::mode_stdbitmap:60 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::$4 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:92 [ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 ]
Removing always clobbered register reg byte a as potential for zp[1]: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[1]:244 [ mode_stdbitmap::col#0 ]
Statement [569] (byte~) mode_stdbitmap::$7 ← (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::$7 ] ( 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::$7 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:245 [ mode_stdbitmap::col2#0 ]
Statement [571] *((byte*) mode_stdbitmap::ch#2) ← (byte~) mode_stdbitmap::$8 [ 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[1]:92 [ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 ]
Removing always clobbered register reg byte y as potential for zp[1]: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[1]:96 [ mode_stdbitmap::l#2 mode_stdbitmap::l#1 ]
Removing always clobbered register reg byte a as potential for zp[1]:248 [ bitmap_line::x0#0 ]
Removing always clobbered register reg byte a as potential for zp[1]:249 [ bitmap_line::x1#0 ]
Removing always clobbered register reg byte a as potential for zp[1]:250 [ bitmap_line::y0#0 ]
Removing always clobbered register reg byte a as potential for zp[1]: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[1]: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[1]: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 ] { { bitmap_line_xdyi::yd#0 = bitmap_line_xdyi::yd#2 bitmap_line::yd#2 } { bitmap_line_xdyi::x#0 = bitmap_line_xdyi::x#6 bitmap_line::x1#0 } { bitmap_line_xdyi::y#0 = bitmap_line_xdyi::y#5 bitmap_line::y1#0 } { bitmap_line_xdyi::xd#0 = bitmap_line_xdyi::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyi::x1#0 = bitmap_line_xdyi::x1#6 bitmap_line::x0#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 ] { { bitmap_line_xdyi::yd#1 = bitmap_line_xdyi::yd#2 bitmap_line::yd#11 } { bitmap_line_xdyi::x#1 = bitmap_line_xdyi::x#6 bitmap_line::x0#0 } { bitmap_line_xdyi::y#1 = bitmap_line_xdyi::y#5 bitmap_line::y0#0 } { bitmap_line_xdyi::xd#1 = bitmap_line_xdyi::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyi::x1#1 = bitmap_line_xdyi::x1#6 bitmap_line::x1#0 } } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:97 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#1 bitmap_line_xdyi::yd#0 ]
Removing always clobbered register reg byte a as potential for zp[1]:100 [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#2 ]
Removing always clobbered register reg byte a as potential for zp[1]:101 [ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 ]
Removing always clobbered register reg byte a as potential for zp[1]:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::xd#0 ]
Removing always clobbered register reg byte a as potential for zp[1]:99 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::x1#0 ]
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 ] { { bitmap_line_xdyi::yd#0 = bitmap_line_xdyi::yd#2 bitmap_line::yd#2 } { bitmap_line_xdyi::x#0 = bitmap_line_xdyi::x#6 bitmap_line::x1#0 } { bitmap_line_xdyi::y#0 = bitmap_line_xdyi::y#5 bitmap_line::y1#0 } { bitmap_line_xdyi::xd#0 = bitmap_line_xdyi::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyi::x1#0 = bitmap_line_xdyi::x1#6 bitmap_line::x0#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::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] { { bitmap_line_xdyi::yd#1 = bitmap_line_xdyi::yd#2 bitmap_line::yd#11 } { bitmap_line_xdyi::x#1 = bitmap_line_xdyi::x#6 bitmap_line::x0#0 } { bitmap_line_xdyi::y#1 = bitmap_line_xdyi::y#5 bitmap_line::y0#0 } { bitmap_line_xdyi::xd#1 = bitmap_line_xdyi::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyi::x1#1 = bitmap_line_xdyi::x1#6 bitmap_line::x1#0 } } ) 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 ] { { bitmap_line_xdyi::yd#0 = bitmap_line_xdyi::yd#2 bitmap_line::yd#2 } { bitmap_line_xdyi::x#0 = bitmap_line_xdyi::x#6 bitmap_line::x1#0 } { bitmap_line_xdyi::y#0 = bitmap_line_xdyi::y#5 bitmap_line::y1#0 } { bitmap_line_xdyi::xd#0 = bitmap_line_xdyi::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyi::x1#0 = bitmap_line_xdyi::x1#6 bitmap_line::x0#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::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] { { bitmap_line_xdyi::yd#1 = bitmap_line_xdyi::yd#2 bitmap_line::yd#11 } { bitmap_line_xdyi::x#1 = bitmap_line_xdyi::x#6 bitmap_line::x0#0 } { bitmap_line_xdyi::y#1 = bitmap_line_xdyi::y#5 bitmap_line::y0#0 } { bitmap_line_xdyi::xd#1 = bitmap_line_xdyi::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyi::x1#1 = bitmap_line_xdyi::x1#6 bitmap_line::x1#0 } } ) always clobbers reg byte a
Statement [670] (word) bitmap_plot::plotter_x#0 ← *((const to_nomodify byte*) bitmap_plot_xhi + (byte) bitmap_plot::x#4) w= *((const to_nomodify byte*) bitmap_plot_xlo + (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 ] { { bitmap_line_xdyi::yd#0 = bitmap_line_xdyi::yd#2 bitmap_line::yd#2 } { bitmap_line_xdyi::x#0 = bitmap_line_xdyi::x#6 bitmap_line::x1#0 } { bitmap_line_xdyi::y#0 = bitmap_line_xdyi::y#5 bitmap_line::y1#0 } { bitmap_line_xdyi::xd#0 = bitmap_line_xdyi::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyi::x1#0 = bitmap_line_xdyi::x1#6 bitmap_line::x0#0 } { bitmap_plot::x#0 = bitmap_plot::x#4 bitmap_line_xdyi::x#3 } { bitmap_plot::y#0 = bitmap_plot::y#4 bitmap_line_xdyi::y#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 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] { { bitmap_line_xdyi::yd#1 = bitmap_line_xdyi::yd#2 bitmap_line::yd#11 } { bitmap_line_xdyi::x#1 = bitmap_line_xdyi::x#6 bitmap_line::x0#0 } { bitmap_line_xdyi::y#1 = bitmap_line_xdyi::y#5 bitmap_line::y0#0 } { bitmap_line_xdyi::xd#1 = bitmap_line_xdyi::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyi::x1#1 = bitmap_line_xdyi::x1#6 bitmap_line::x1#0 } { bitmap_plot::x#0 = bitmap_plot::x#4 bitmap_line_xdyi::x#3 } { bitmap_plot::y#0 = bitmap_plot::y#4 bitmap_line_xdyi::y#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 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] { { bitmap_line_ydxi::xd#0 = bitmap_line_ydxi::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxi::x#0 = bitmap_line_ydxi::x#5 bitmap_line::x1#0 } { bitmap_line_ydxi::y#0 = bitmap_line_ydxi::y#6 bitmap_line::y1#0 } { bitmap_line_ydxi::yd#0 = bitmap_line_ydxi::yd#5 bitmap_line::yd#2 } { bitmap_line_ydxi::y1#0 = bitmap_line_ydxi::y1#6 bitmap_line::y0#0 } { bitmap_plot::x#2 = bitmap_plot::x#4 bitmap_line_ydxi::x#3 } { bitmap_plot::y#2 = bitmap_plot::y#4 bitmap_line_ydxi::y#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 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] { { bitmap_line_ydxi::xd#1 = bitmap_line_ydxi::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxi::x#1 = bitmap_line_ydxi::x#5 bitmap_line::x0#0 } { bitmap_line_ydxi::y#1 = bitmap_line_ydxi::y#6 bitmap_line::y0#0 } { bitmap_line_ydxi::yd#1 = bitmap_line_ydxi::yd#5 bitmap_line::yd#11 } { bitmap_line_ydxi::y1#1 = bitmap_line_ydxi::y1#6 bitmap_line::y1#0 } { bitmap_plot::x#2 = bitmap_plot::x#4 bitmap_line_ydxi::x#3 } { bitmap_plot::y#2 = bitmap_plot::y#4 bitmap_line_ydxi::y#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 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] { { bitmap_line_xdyd::yd#0 = bitmap_line_xdyd::yd#2 bitmap_line::yd#1 } { bitmap_line_xdyd::x#0 = bitmap_line_xdyd::x#6 bitmap_line::x1#0 } { bitmap_line_xdyd::y#0 = bitmap_line_xdyd::y#5 bitmap_line::y1#0 } { bitmap_line_xdyd::xd#0 = bitmap_line_xdyd::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyd::x1#0 = bitmap_line_xdyd::x1#6 bitmap_line::x0#0 } { bitmap_plot::x#1 = bitmap_plot::x#4 bitmap_line_xdyd::x#3 } { bitmap_plot::y#1 = bitmap_plot::y#4 bitmap_line_xdyd::y#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 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] { { bitmap_line_xdyd::yd#1 = bitmap_line_xdyd::yd#2 bitmap_line::yd#10 } { bitmap_line_xdyd::x#1 = bitmap_line_xdyd::x#6 bitmap_line::x0#0 } { bitmap_line_xdyd::y#1 = bitmap_line_xdyd::y#5 bitmap_line::y0#0 } { bitmap_line_xdyd::xd#1 = bitmap_line_xdyd::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyd::x1#1 = bitmap_line_xdyd::x1#6 bitmap_line::x1#0 } { bitmap_plot::x#1 = bitmap_plot::x#4 bitmap_line_xdyd::x#3 } { bitmap_plot::y#1 = bitmap_plot::y#4 bitmap_line_xdyd::y#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 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] { { bitmap_line_ydxd::xd#0 = bitmap_line_ydxd::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxd::x#0 = bitmap_line_ydxd::x#5 bitmap_line::x0#0 } { bitmap_line_ydxd::y#0 = bitmap_line_ydxd::y#7 bitmap_line::y0#0 } { bitmap_line_ydxd::yd#0 = bitmap_line_ydxd::yd#5 bitmap_line::yd#1 } { bitmap_line_ydxd::y1#0 = bitmap_line_ydxd::y1#6 bitmap_line::y1#0 } { bitmap_plot::x#3 = bitmap_plot::x#4 bitmap_line_ydxd::x#3 } { bitmap_plot::y#3 = bitmap_plot::y#4 bitmap_line_ydxd::y#2 } } 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 ] { { bitmap_line_ydxd::xd#1 = bitmap_line_ydxd::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxd::x#1 = bitmap_line_ydxd::x#5 bitmap_line::x1#0 } { bitmap_line_ydxd::y#1 = bitmap_line_ydxd::y#7 bitmap_line::y1#0 } { bitmap_line_ydxd::yd#1 = bitmap_line_ydxd::yd#5 bitmap_line::yd#10 } { bitmap_line_ydxd::y1#1 = bitmap_line_ydxd::y1#6 bitmap_line::y0#0 } { bitmap_plot::x#3 = bitmap_plot::x#4 bitmap_line_ydxd::x#3 } { bitmap_plot::y#3 = bitmap_plot::y#4 bitmap_line_ydxd::y#2 } } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]: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[1]: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[1]: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[1]: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[1]: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[1]: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[1]: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[1]: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[1]: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[1]:111 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#1 bitmap_line_xdyd::yd#0 ]
Removing always clobbered register reg byte a as potential for zp[1]:112 [ bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#1 bitmap_line_xdyd::xd#0 ]
Removing always clobbered register reg byte a as potential for zp[1]:113 [ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::x1#0 ]
Removing always clobbered register reg byte a as potential for zp[1]:114 [ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#2 ]
Removing always clobbered register reg byte a as potential for zp[1]:115 [ bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 ]
Removing always clobbered register reg byte a as potential for zp[1]: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[1]: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[1]: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[1]: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[1]: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[1]: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[1]: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 to_nomodify byte*) bitmap_plot_yhi + (byte) bitmap_plot::y#4) w= *((const to_nomodify byte*) bitmap_plot_ylo + (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 ] { { bitmap_line_xdyi::yd#0 = bitmap_line_xdyi::yd#2 bitmap_line::yd#2 } { bitmap_line_xdyi::x#0 = bitmap_line_xdyi::x#6 bitmap_line::x1#0 } { bitmap_line_xdyi::y#0 = bitmap_line_xdyi::y#5 bitmap_line::y1#0 } { bitmap_line_xdyi::xd#0 = bitmap_line_xdyi::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyi::x1#0 = bitmap_line_xdyi::x1#6 bitmap_line::x0#0 } { bitmap_plot::x#0 = bitmap_plot::x#4 bitmap_line_xdyi::x#3 } { bitmap_plot::y#0 = bitmap_plot::y#4 bitmap_line_xdyi::y#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 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] { { bitmap_line_xdyi::yd#1 = bitmap_line_xdyi::yd#2 bitmap_line::yd#11 } { bitmap_line_xdyi::x#1 = bitmap_line_xdyi::x#6 bitmap_line::x0#0 } { bitmap_line_xdyi::y#1 = bitmap_line_xdyi::y#5 bitmap_line::y0#0 } { bitmap_line_xdyi::xd#1 = bitmap_line_xdyi::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyi::x1#1 = bitmap_line_xdyi::x1#6 bitmap_line::x1#0 } { bitmap_plot::x#0 = bitmap_plot::x#4 bitmap_line_xdyi::x#3 } { bitmap_plot::y#0 = bitmap_plot::y#4 bitmap_line_xdyi::y#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 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] { { bitmap_line_ydxi::xd#0 = bitmap_line_ydxi::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxi::x#0 = bitmap_line_ydxi::x#5 bitmap_line::x1#0 } { bitmap_line_ydxi::y#0 = bitmap_line_ydxi::y#6 bitmap_line::y1#0 } { bitmap_line_ydxi::yd#0 = bitmap_line_ydxi::yd#5 bitmap_line::yd#2 } { bitmap_line_ydxi::y1#0 = bitmap_line_ydxi::y1#6 bitmap_line::y0#0 } { bitmap_plot::x#2 = bitmap_plot::x#4 bitmap_line_ydxi::x#3 } { bitmap_plot::y#2 = bitmap_plot::y#4 bitmap_line_ydxi::y#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 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] { { bitmap_line_ydxi::xd#1 = bitmap_line_ydxi::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxi::x#1 = bitmap_line_ydxi::x#5 bitmap_line::x0#0 } { bitmap_line_ydxi::y#1 = bitmap_line_ydxi::y#6 bitmap_line::y0#0 } { bitmap_line_ydxi::yd#1 = bitmap_line_ydxi::yd#5 bitmap_line::yd#11 } { bitmap_line_ydxi::y1#1 = bitmap_line_ydxi::y1#6 bitmap_line::y1#0 } { bitmap_plot::x#2 = bitmap_plot::x#4 bitmap_line_ydxi::x#3 } { bitmap_plot::y#2 = bitmap_plot::y#4 bitmap_line_ydxi::y#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 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] { { bitmap_line_xdyd::yd#0 = bitmap_line_xdyd::yd#2 bitmap_line::yd#1 } { bitmap_line_xdyd::x#0 = bitmap_line_xdyd::x#6 bitmap_line::x1#0 } { bitmap_line_xdyd::y#0 = bitmap_line_xdyd::y#5 bitmap_line::y1#0 } { bitmap_line_xdyd::xd#0 = bitmap_line_xdyd::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyd::x1#0 = bitmap_line_xdyd::x1#6 bitmap_line::x0#0 } { bitmap_plot::x#1 = bitmap_plot::x#4 bitmap_line_xdyd::x#3 } { bitmap_plot::y#1 = bitmap_plot::y#4 bitmap_line_xdyd::y#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 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] { { bitmap_line_xdyd::yd#1 = bitmap_line_xdyd::yd#2 bitmap_line::yd#10 } { bitmap_line_xdyd::x#1 = bitmap_line_xdyd::x#6 bitmap_line::x0#0 } { bitmap_line_xdyd::y#1 = bitmap_line_xdyd::y#5 bitmap_line::y0#0 } { bitmap_line_xdyd::xd#1 = bitmap_line_xdyd::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyd::x1#1 = bitmap_line_xdyd::x1#6 bitmap_line::x1#0 } { bitmap_plot::x#1 = bitmap_plot::x#4 bitmap_line_xdyd::x#3 } { bitmap_plot::y#1 = bitmap_plot::y#4 bitmap_line_xdyd::y#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 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] { { bitmap_line_ydxd::xd#0 = bitmap_line_ydxd::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxd::x#0 = bitmap_line_ydxd::x#5 bitmap_line::x0#0 } { bitmap_line_ydxd::y#0 = bitmap_line_ydxd::y#7 bitmap_line::y0#0 } { bitmap_line_ydxd::yd#0 = bitmap_line_ydxd::yd#5 bitmap_line::yd#1 } { bitmap_line_ydxd::y1#0 = bitmap_line_ydxd::y1#6 bitmap_line::y1#0 } { bitmap_plot::x#3 = bitmap_plot::x#4 bitmap_line_ydxd::x#3 } { bitmap_plot::y#3 = bitmap_plot::y#4 bitmap_line_ydxd::y#2 } } 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 ] { { bitmap_line_ydxd::xd#1 = bitmap_line_ydxd::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxd::x#1 = bitmap_line_ydxd::x#5 bitmap_line::x1#0 } { bitmap_line_ydxd::y#1 = bitmap_line_ydxd::y#7 bitmap_line::y1#0 } { bitmap_line_ydxd::yd#1 = bitmap_line_ydxd::yd#5 bitmap_line::yd#10 } { bitmap_line_ydxd::y1#1 = bitmap_line_ydxd::y1#6 bitmap_line::y0#0 } { bitmap_plot::x#3 = bitmap_plot::x#4 bitmap_line_ydxd::x#3 } { bitmap_plot::y#3 = bitmap_plot::y#4 bitmap_line_ydxd::y#2 } } ) 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 ] { { bitmap_line_xdyi::yd#0 = bitmap_line_xdyi::yd#2 bitmap_line::yd#2 } { bitmap_line_xdyi::x#0 = bitmap_line_xdyi::x#6 bitmap_line::x1#0 } { bitmap_line_xdyi::y#0 = bitmap_line_xdyi::y#5 bitmap_line::y1#0 } { bitmap_line_xdyi::xd#0 = bitmap_line_xdyi::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyi::x1#0 = bitmap_line_xdyi::x1#6 bitmap_line::x0#0 } { bitmap_plot::x#0 = bitmap_plot::x#4 bitmap_line_xdyi::x#3 } { bitmap_plot::y#0 = bitmap_plot::y#4 bitmap_line_xdyi::y#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 bitmap_plot::x#4 bitmap_plot::plotter#0 ] { { bitmap_line_xdyi::yd#1 = bitmap_line_xdyi::yd#2 bitmap_line::yd#11 } { bitmap_line_xdyi::x#1 = bitmap_line_xdyi::x#6 bitmap_line::x0#0 } { bitmap_line_xdyi::y#1 = bitmap_line_xdyi::y#5 bitmap_line::y0#0 } { bitmap_line_xdyi::xd#1 = bitmap_line_xdyi::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyi::x1#1 = bitmap_line_xdyi::x1#6 bitmap_line::x1#0 } { bitmap_plot::x#0 = bitmap_plot::x#4 bitmap_line_xdyi::x#3 } { bitmap_plot::y#0 = bitmap_plot::y#4 bitmap_line_xdyi::y#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 bitmap_plot::x#4 bitmap_plot::plotter#0 ] { { bitmap_line_ydxi::xd#0 = bitmap_line_ydxi::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxi::x#0 = bitmap_line_ydxi::x#5 bitmap_line::x1#0 } { bitmap_line_ydxi::y#0 = bitmap_line_ydxi::y#6 bitmap_line::y1#0 } { bitmap_line_ydxi::yd#0 = bitmap_line_ydxi::yd#5 bitmap_line::yd#2 } { bitmap_line_ydxi::y1#0 = bitmap_line_ydxi::y1#6 bitmap_line::y0#0 } { bitmap_plot::x#2 = bitmap_plot::x#4 bitmap_line_ydxi::x#3 } { bitmap_plot::y#2 = bitmap_plot::y#4 bitmap_line_ydxi::y#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 bitmap_plot::x#4 bitmap_plot::plotter#0 ] { { bitmap_line_ydxi::xd#1 = bitmap_line_ydxi::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxi::x#1 = bitmap_line_ydxi::x#5 bitmap_line::x0#0 } { bitmap_line_ydxi::y#1 = bitmap_line_ydxi::y#6 bitmap_line::y0#0 } { bitmap_line_ydxi::yd#1 = bitmap_line_ydxi::yd#5 bitmap_line::yd#11 } { bitmap_line_ydxi::y1#1 = bitmap_line_ydxi::y1#6 bitmap_line::y1#0 } { bitmap_plot::x#2 = bitmap_plot::x#4 bitmap_line_ydxi::x#3 } { bitmap_plot::y#2 = bitmap_plot::y#4 bitmap_line_ydxi::y#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 bitmap_plot::x#4 bitmap_plot::plotter#0 ] { { bitmap_line_xdyd::yd#0 = bitmap_line_xdyd::yd#2 bitmap_line::yd#1 } { bitmap_line_xdyd::x#0 = bitmap_line_xdyd::x#6 bitmap_line::x1#0 } { bitmap_line_xdyd::y#0 = bitmap_line_xdyd::y#5 bitmap_line::y1#0 } { bitmap_line_xdyd::xd#0 = bitmap_line_xdyd::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyd::x1#0 = bitmap_line_xdyd::x1#6 bitmap_line::x0#0 } { bitmap_plot::x#1 = bitmap_plot::x#4 bitmap_line_xdyd::x#3 } { bitmap_plot::y#1 = bitmap_plot::y#4 bitmap_line_xdyd::y#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 bitmap_plot::x#4 bitmap_plot::plotter#0 ] { { bitmap_line_xdyd::yd#1 = bitmap_line_xdyd::yd#2 bitmap_line::yd#10 } { bitmap_line_xdyd::x#1 = bitmap_line_xdyd::x#6 bitmap_line::x0#0 } { bitmap_line_xdyd::y#1 = bitmap_line_xdyd::y#5 bitmap_line::y0#0 } { bitmap_line_xdyd::xd#1 = bitmap_line_xdyd::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyd::x1#1 = bitmap_line_xdyd::x1#6 bitmap_line::x1#0 } { bitmap_plot::x#1 = bitmap_plot::x#4 bitmap_line_xdyd::x#3 } { bitmap_plot::y#1 = bitmap_plot::y#4 bitmap_line_xdyd::y#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 bitmap_plot::x#4 bitmap_plot::plotter#0 ] { { bitmap_line_ydxd::xd#0 = bitmap_line_ydxd::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxd::x#0 = bitmap_line_ydxd::x#5 bitmap_line::x0#0 } { bitmap_line_ydxd::y#0 = bitmap_line_ydxd::y#7 bitmap_line::y0#0 } { bitmap_line_ydxd::yd#0 = bitmap_line_ydxd::yd#5 bitmap_line::yd#1 } { bitmap_line_ydxd::y1#0 = bitmap_line_ydxd::y1#6 bitmap_line::y1#0 } { bitmap_plot::x#3 = bitmap_plot::x#4 bitmap_line_ydxd::x#3 } { bitmap_plot::y#3 = bitmap_plot::y#4 bitmap_line_ydxd::y#2 } } 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 ] { { bitmap_line_ydxd::xd#1 = bitmap_line_ydxd::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxd::x#1 = bitmap_line_ydxd::x#5 bitmap_line::x1#0 } { bitmap_line_ydxd::y#1 = bitmap_line_ydxd::y#7 bitmap_line::y1#0 } { bitmap_line_ydxd::yd#1 = bitmap_line_ydxd::yd#5 bitmap_line::yd#10 } { bitmap_line_ydxd::y1#1 = bitmap_line_ydxd::y1#6 bitmap_line::y0#0 } { bitmap_plot::x#3 = bitmap_plot::x#4 bitmap_line_ydxd::x#3 } { bitmap_plot::y#3 = bitmap_plot::y#4 bitmap_line_ydxd::y#2 } } ) always clobbers reg byte a
Statement [673] (byte~) bitmap_plot::$1 ← *((byte*)(word) bitmap_plot::plotter#0) | *((const to_nomodify byte*) bitmap_plot_bit + (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 ] { { bitmap_line_xdyi::yd#0 = bitmap_line_xdyi::yd#2 bitmap_line::yd#2 } { bitmap_line_xdyi::x#0 = bitmap_line_xdyi::x#6 bitmap_line::x1#0 } { bitmap_line_xdyi::y#0 = bitmap_line_xdyi::y#5 bitmap_line::y1#0 } { bitmap_line_xdyi::xd#0 = bitmap_line_xdyi::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyi::x1#0 = bitmap_line_xdyi::x1#6 bitmap_line::x0#0 } { bitmap_plot::x#0 = bitmap_plot::x#4 bitmap_line_xdyi::x#3 } { bitmap_plot::y#0 = bitmap_plot::y#4 bitmap_line_xdyi::y#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 bitmap_plot::plotter#0 bitmap_plot::$1 ] { { bitmap_line_xdyi::yd#1 = bitmap_line_xdyi::yd#2 bitmap_line::yd#11 } { bitmap_line_xdyi::x#1 = bitmap_line_xdyi::x#6 bitmap_line::x0#0 } { bitmap_line_xdyi::y#1 = bitmap_line_xdyi::y#5 bitmap_line::y0#0 } { bitmap_line_xdyi::xd#1 = bitmap_line_xdyi::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyi::x1#1 = bitmap_line_xdyi::x1#6 bitmap_line::x1#0 } { bitmap_plot::x#0 = bitmap_plot::x#4 bitmap_line_xdyi::x#3 } { bitmap_plot::y#0 = bitmap_plot::y#4 bitmap_line_xdyi::y#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 bitmap_plot::plotter#0 bitmap_plot::$1 ] { { bitmap_line_ydxi::xd#0 = bitmap_line_ydxi::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxi::x#0 = bitmap_line_ydxi::x#5 bitmap_line::x1#0 } { bitmap_line_ydxi::y#0 = bitmap_line_ydxi::y#6 bitmap_line::y1#0 } { bitmap_line_ydxi::yd#0 = bitmap_line_ydxi::yd#5 bitmap_line::yd#2 } { bitmap_line_ydxi::y1#0 = bitmap_line_ydxi::y1#6 bitmap_line::y0#0 } { bitmap_plot::x#2 = bitmap_plot::x#4 bitmap_line_ydxi::x#3 } { bitmap_plot::y#2 = bitmap_plot::y#4 bitmap_line_ydxi::y#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 bitmap_plot::plotter#0 bitmap_plot::$1 ] { { bitmap_line_ydxi::xd#1 = bitmap_line_ydxi::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxi::x#1 = bitmap_line_ydxi::x#5 bitmap_line::x0#0 } { bitmap_line_ydxi::y#1 = bitmap_line_ydxi::y#6 bitmap_line::y0#0 } { bitmap_line_ydxi::yd#1 = bitmap_line_ydxi::yd#5 bitmap_line::yd#11 } { bitmap_line_ydxi::y1#1 = bitmap_line_ydxi::y1#6 bitmap_line::y1#0 } { bitmap_plot::x#2 = bitmap_plot::x#4 bitmap_line_ydxi::x#3 } { bitmap_plot::y#2 = bitmap_plot::y#4 bitmap_line_ydxi::y#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 bitmap_plot::plotter#0 bitmap_plot::$1 ] { { bitmap_line_xdyd::yd#0 = bitmap_line_xdyd::yd#2 bitmap_line::yd#1 } { bitmap_line_xdyd::x#0 = bitmap_line_xdyd::x#6 bitmap_line::x1#0 } { bitmap_line_xdyd::y#0 = bitmap_line_xdyd::y#5 bitmap_line::y1#0 } { bitmap_line_xdyd::xd#0 = bitmap_line_xdyd::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyd::x1#0 = bitmap_line_xdyd::x1#6 bitmap_line::x0#0 } { bitmap_plot::x#1 = bitmap_plot::x#4 bitmap_line_xdyd::x#3 } { bitmap_plot::y#1 = bitmap_plot::y#4 bitmap_line_xdyd::y#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 bitmap_plot::plotter#0 bitmap_plot::$1 ] { { bitmap_line_xdyd::yd#1 = bitmap_line_xdyd::yd#2 bitmap_line::yd#10 } { bitmap_line_xdyd::x#1 = bitmap_line_xdyd::x#6 bitmap_line::x0#0 } { bitmap_line_xdyd::y#1 = bitmap_line_xdyd::y#5 bitmap_line::y0#0 } { bitmap_line_xdyd::xd#1 = bitmap_line_xdyd::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyd::x1#1 = bitmap_line_xdyd::x1#6 bitmap_line::x1#0 } { bitmap_plot::x#1 = bitmap_plot::x#4 bitmap_line_xdyd::x#3 } { bitmap_plot::y#1 = bitmap_plot::y#4 bitmap_line_xdyd::y#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 bitmap_plot::plotter#0 bitmap_plot::$1 ] { { bitmap_line_ydxd::xd#0 = bitmap_line_ydxd::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxd::x#0 = bitmap_line_ydxd::x#5 bitmap_line::x0#0 } { bitmap_line_ydxd::y#0 = bitmap_line_ydxd::y#7 bitmap_line::y0#0 } { bitmap_line_ydxd::yd#0 = bitmap_line_ydxd::yd#5 bitmap_line::yd#1 } { bitmap_line_ydxd::y1#0 = bitmap_line_ydxd::y1#6 bitmap_line::y1#0 } { bitmap_plot::x#3 = bitmap_plot::x#4 bitmap_line_ydxd::x#3 } { bitmap_plot::y#3 = bitmap_plot::y#4 bitmap_line_ydxd::y#2 } } 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 ] { { bitmap_line_ydxd::xd#1 = bitmap_line_ydxd::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxd::x#1 = bitmap_line_ydxd::x#5 bitmap_line::x1#0 } { bitmap_line_ydxd::y#1 = bitmap_line_ydxd::y#7 bitmap_line::y1#0 } { bitmap_line_ydxd::yd#1 = bitmap_line_ydxd::yd#5 bitmap_line::yd#10 } { bitmap_line_ydxd::y1#1 = bitmap_line_ydxd::y1#6 bitmap_line::y0#0 } { bitmap_plot::x#3 = bitmap_plot::x#4 bitmap_line_ydxd::x#3 } { bitmap_plot::y#3 = bitmap_plot::y#4 bitmap_line_ydxd::y#2 } } ) always clobbers reg byte a reg byte y
Removing always clobbered register reg byte y as potential for zp[1]:96 [ mode_stdbitmap::l#2 mode_stdbitmap::l#1 ]
Removing always clobbered register reg byte y as potential for zp[1]:97 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#1 bitmap_line_xdyi::yd#0 ]
Removing always clobbered register reg byte y as potential for zp[1]:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::xd#0 ]
Removing always clobbered register reg byte y as potential for zp[1]:99 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::x1#0 ]
Removing always clobbered register reg byte y as potential for zp[1]:100 [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#2 ]
Removing always clobbered register reg byte y as potential for zp[1]:101 [ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 ]
Removing always clobbered register reg byte y as potential for zp[1]: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[1]: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[1]: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[1]: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[1]: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[1]: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[1]: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[1]:111 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#1 bitmap_line_xdyd::yd#0 ]
Removing always clobbered register reg byte y as potential for zp[1]:112 [ bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#1 bitmap_line_xdyd::xd#0 ]
Removing always clobbered register reg byte y as potential for zp[1]:113 [ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::x1#0 ]
Removing always clobbered register reg byte y as potential for zp[1]:114 [ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#2 ]
Removing always clobbered register reg byte y as potential for zp[1]:115 [ bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 ]
Removing always clobbered register reg byte y as potential for zp[1]: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[1]: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[1]: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[1]: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[1]: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[1]: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[1]: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 ] { { bitmap_line_xdyi::yd#0 = bitmap_line_xdyi::yd#2 bitmap_line::yd#2 } { bitmap_line_xdyi::x#0 = bitmap_line_xdyi::x#6 bitmap_line::x1#0 } { bitmap_line_xdyi::y#0 = bitmap_line_xdyi::y#5 bitmap_line::y1#0 } { bitmap_line_xdyi::xd#0 = bitmap_line_xdyi::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyi::x1#0 = bitmap_line_xdyi::x1#6 bitmap_line::x0#0 } { bitmap_plot::x#0 = bitmap_plot::x#4 bitmap_line_xdyi::x#3 } { bitmap_plot::y#0 = bitmap_plot::y#4 bitmap_line_xdyi::y#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 ] { { bitmap_line_xdyi::yd#1 = bitmap_line_xdyi::yd#2 bitmap_line::yd#11 } { bitmap_line_xdyi::x#1 = bitmap_line_xdyi::x#6 bitmap_line::x0#0 } { bitmap_line_xdyi::y#1 = bitmap_line_xdyi::y#5 bitmap_line::y0#0 } { bitmap_line_xdyi::xd#1 = bitmap_line_xdyi::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyi::x1#1 = bitmap_line_xdyi::x1#6 bitmap_line::x1#0 } { bitmap_plot::x#0 = bitmap_plot::x#4 bitmap_line_xdyi::x#3 } { bitmap_plot::y#0 = bitmap_plot::y#4 bitmap_line_xdyi::y#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 ] { { bitmap_line_ydxi::xd#0 = bitmap_line_ydxi::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxi::x#0 = bitmap_line_ydxi::x#5 bitmap_line::x1#0 } { bitmap_line_ydxi::y#0 = bitmap_line_ydxi::y#6 bitmap_line::y1#0 } { bitmap_line_ydxi::yd#0 = bitmap_line_ydxi::yd#5 bitmap_line::yd#2 } { bitmap_line_ydxi::y1#0 = bitmap_line_ydxi::y1#6 bitmap_line::y0#0 } { bitmap_plot::x#2 = bitmap_plot::x#4 bitmap_line_ydxi::x#3 } { bitmap_plot::y#2 = bitmap_plot::y#4 bitmap_line_ydxi::y#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 ] { { bitmap_line_ydxi::xd#1 = bitmap_line_ydxi::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxi::x#1 = bitmap_line_ydxi::x#5 bitmap_line::x0#0 } { bitmap_line_ydxi::y#1 = bitmap_line_ydxi::y#6 bitmap_line::y0#0 } { bitmap_line_ydxi::yd#1 = bitmap_line_ydxi::yd#5 bitmap_line::yd#11 } { bitmap_line_ydxi::y1#1 = bitmap_line_ydxi::y1#6 bitmap_line::y1#0 } { bitmap_plot::x#2 = bitmap_plot::x#4 bitmap_line_ydxi::x#3 } { bitmap_plot::y#2 = bitmap_plot::y#4 bitmap_line_ydxi::y#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 ] { { bitmap_line_xdyd::yd#0 = bitmap_line_xdyd::yd#2 bitmap_line::yd#1 } { bitmap_line_xdyd::x#0 = bitmap_line_xdyd::x#6 bitmap_line::x1#0 } { bitmap_line_xdyd::y#0 = bitmap_line_xdyd::y#5 bitmap_line::y1#0 } { bitmap_line_xdyd::xd#0 = bitmap_line_xdyd::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyd::x1#0 = bitmap_line_xdyd::x1#6 bitmap_line::x0#0 } { bitmap_plot::x#1 = bitmap_plot::x#4 bitmap_line_xdyd::x#3 } { bitmap_plot::y#1 = bitmap_plot::y#4 bitmap_line_xdyd::y#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 ] { { bitmap_line_xdyd::yd#1 = bitmap_line_xdyd::yd#2 bitmap_line::yd#10 } { bitmap_line_xdyd::x#1 = bitmap_line_xdyd::x#6 bitmap_line::x0#0 } { bitmap_line_xdyd::y#1 = bitmap_line_xdyd::y#5 bitmap_line::y0#0 } { bitmap_line_xdyd::xd#1 = bitmap_line_xdyd::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyd::x1#1 = bitmap_line_xdyd::x1#6 bitmap_line::x1#0 } { bitmap_plot::x#1 = bitmap_plot::x#4 bitmap_line_xdyd::x#3 } { bitmap_plot::y#1 = bitmap_plot::y#4 bitmap_line_xdyd::y#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 ] { { bitmap_line_ydxd::xd#0 = bitmap_line_ydxd::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxd::x#0 = bitmap_line_ydxd::x#5 bitmap_line::x0#0 } { bitmap_line_ydxd::y#0 = bitmap_line_ydxd::y#7 bitmap_line::y0#0 } { bitmap_line_ydxd::yd#0 = bitmap_line_ydxd::yd#5 bitmap_line::yd#1 } { bitmap_line_ydxd::y1#0 = bitmap_line_ydxd::y1#6 bitmap_line::y1#0 } { bitmap_plot::x#3 = bitmap_plot::x#4 bitmap_line_ydxd::x#3 } { bitmap_plot::y#3 = bitmap_plot::y#4 bitmap_line_ydxd::y#2 } } 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_line_ydxd::xd#1 = bitmap_line_ydxd::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxd::x#1 = bitmap_line_ydxd::x#5 bitmap_line::x1#0 } { bitmap_line_ydxd::y#1 = bitmap_line_ydxd::y#7 bitmap_line::y1#0 } { bitmap_line_ydxd::yd#1 = bitmap_line_ydxd::yd#5 bitmap_line::yd#10 } { bitmap_line_ydxd::y1#1 = bitmap_line_ydxd::y1#6 bitmap_line::y0#0 } { bitmap_plot::x#3 = bitmap_plot::x#4 bitmap_line_ydxd::x#3 } { bitmap_plot::y#3 = bitmap_plot::y#4 bitmap_line_ydxd::y#2 } } ) 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 ] { { bitmap_line_ydxi::xd#0 = bitmap_line_ydxi::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxi::x#0 = bitmap_line_ydxi::x#5 bitmap_line::x1#0 } { bitmap_line_ydxi::y#0 = bitmap_line_ydxi::y#6 bitmap_line::y1#0 } { bitmap_line_ydxi::yd#0 = bitmap_line_ydxi::yd#5 bitmap_line::yd#2 } { bitmap_line_ydxi::y1#0 = bitmap_line_ydxi::y1#6 bitmap_line::y0#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 ] { { bitmap_line_ydxi::xd#1 = bitmap_line_ydxi::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxi::x#1 = bitmap_line_ydxi::x#5 bitmap_line::x0#0 } { bitmap_line_ydxi::y#1 = bitmap_line_ydxi::y#6 bitmap_line::y0#0 } { bitmap_line_ydxi::yd#1 = bitmap_line_ydxi::yd#5 bitmap_line::yd#11 } { bitmap_line_ydxi::y1#1 = bitmap_line_ydxi::y1#6 bitmap_line::y1#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 ] { { bitmap_line_ydxi::xd#0 = bitmap_line_ydxi::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxi::x#0 = bitmap_line_ydxi::x#5 bitmap_line::x1#0 } { bitmap_line_ydxi::y#0 = bitmap_line_ydxi::y#6 bitmap_line::y1#0 } { bitmap_line_ydxi::yd#0 = bitmap_line_ydxi::yd#5 bitmap_line::yd#2 } { bitmap_line_ydxi::y1#0 = bitmap_line_ydxi::y1#6 bitmap_line::y0#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::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] { { bitmap_line_ydxi::xd#1 = bitmap_line_ydxi::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxi::x#1 = bitmap_line_ydxi::x#5 bitmap_line::x0#0 } { bitmap_line_ydxi::y#1 = bitmap_line_ydxi::y#6 bitmap_line::y0#0 } { bitmap_line_ydxi::yd#1 = bitmap_line_ydxi::yd#5 bitmap_line::yd#11 } { bitmap_line_ydxi::y1#1 = bitmap_line_ydxi::y1#6 bitmap_line::y1#0 } } ) 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 ] { { bitmap_line_ydxi::xd#0 = bitmap_line_ydxi::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxi::x#0 = bitmap_line_ydxi::x#5 bitmap_line::x1#0 } { bitmap_line_ydxi::y#0 = bitmap_line_ydxi::y#6 bitmap_line::y1#0 } { bitmap_line_ydxi::yd#0 = bitmap_line_ydxi::yd#5 bitmap_line::yd#2 } { bitmap_line_ydxi::y1#0 = bitmap_line_ydxi::y1#6 bitmap_line::y0#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::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] { { bitmap_line_ydxi::xd#1 = bitmap_line_ydxi::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxi::x#1 = bitmap_line_ydxi::x#5 bitmap_line::x0#0 } { bitmap_line_ydxi::y#1 = bitmap_line_ydxi::y#6 bitmap_line::y0#0 } { bitmap_line_ydxi::yd#1 = bitmap_line_ydxi::yd#5 bitmap_line::yd#11 } { bitmap_line_ydxi::y1#1 = bitmap_line_ydxi::y1#6 bitmap_line::y1#0 } } ) 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 ] { { bitmap_line_xdyd::yd#0 = bitmap_line_xdyd::yd#2 bitmap_line::yd#1 } { bitmap_line_xdyd::x#0 = bitmap_line_xdyd::x#6 bitmap_line::x1#0 } { bitmap_line_xdyd::y#0 = bitmap_line_xdyd::y#5 bitmap_line::y1#0 } { bitmap_line_xdyd::xd#0 = bitmap_line_xdyd::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyd::x1#0 = bitmap_line_xdyd::x1#6 bitmap_line::x0#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 ] { { bitmap_line_xdyd::yd#1 = bitmap_line_xdyd::yd#2 bitmap_line::yd#10 } { bitmap_line_xdyd::x#1 = bitmap_line_xdyd::x#6 bitmap_line::x0#0 } { bitmap_line_xdyd::y#1 = bitmap_line_xdyd::y#5 bitmap_line::y0#0 } { bitmap_line_xdyd::xd#1 = bitmap_line_xdyd::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyd::x1#1 = bitmap_line_xdyd::x1#6 bitmap_line::x1#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 ] { { bitmap_line_xdyd::yd#0 = bitmap_line_xdyd::yd#2 bitmap_line::yd#1 } { bitmap_line_xdyd::x#0 = bitmap_line_xdyd::x#6 bitmap_line::x1#0 } { bitmap_line_xdyd::y#0 = bitmap_line_xdyd::y#5 bitmap_line::y1#0 } { bitmap_line_xdyd::xd#0 = bitmap_line_xdyd::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyd::x1#0 = bitmap_line_xdyd::x1#6 bitmap_line::x0#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::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] { { bitmap_line_xdyd::yd#1 = bitmap_line_xdyd::yd#2 bitmap_line::yd#10 } { bitmap_line_xdyd::x#1 = bitmap_line_xdyd::x#6 bitmap_line::x0#0 } { bitmap_line_xdyd::y#1 = bitmap_line_xdyd::y#5 bitmap_line::y0#0 } { bitmap_line_xdyd::xd#1 = bitmap_line_xdyd::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyd::x1#1 = bitmap_line_xdyd::x1#6 bitmap_line::x1#0 } } ) 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 ] { { bitmap_line_xdyd::yd#0 = bitmap_line_xdyd::yd#2 bitmap_line::yd#1 } { bitmap_line_xdyd::x#0 = bitmap_line_xdyd::x#6 bitmap_line::x1#0 } { bitmap_line_xdyd::y#0 = bitmap_line_xdyd::y#5 bitmap_line::y1#0 } { bitmap_line_xdyd::xd#0 = bitmap_line_xdyd::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyd::x1#0 = bitmap_line_xdyd::x1#6 bitmap_line::x0#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::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] { { bitmap_line_xdyd::yd#1 = bitmap_line_xdyd::yd#2 bitmap_line::yd#10 } { bitmap_line_xdyd::x#1 = bitmap_line_xdyd::x#6 bitmap_line::x0#0 } { bitmap_line_xdyd::y#1 = bitmap_line_xdyd::y#5 bitmap_line::y0#0 } { bitmap_line_xdyd::xd#1 = bitmap_line_xdyd::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyd::x1#1 = bitmap_line_xdyd::x1#6 bitmap_line::x1#0 } } ) 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 ] { { bitmap_line_ydxd::xd#0 = bitmap_line_ydxd::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxd::x#0 = bitmap_line_ydxd::x#5 bitmap_line::x0#0 } { bitmap_line_ydxd::y#0 = bitmap_line_ydxd::y#7 bitmap_line::y0#0 } { bitmap_line_ydxd::yd#0 = bitmap_line_ydxd::yd#5 bitmap_line::yd#1 } { bitmap_line_ydxd::y1#0 = bitmap_line_ydxd::y1#6 bitmap_line::y1#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 ] { { bitmap_line_ydxd::xd#1 = bitmap_line_ydxd::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxd::x#1 = bitmap_line_ydxd::x#5 bitmap_line::x1#0 } { bitmap_line_ydxd::y#1 = bitmap_line_ydxd::y#7 bitmap_line::y1#0 } { bitmap_line_ydxd::yd#1 = bitmap_line_ydxd::yd#5 bitmap_line::yd#10 } { bitmap_line_ydxd::y1#1 = bitmap_line_ydxd::y1#6 bitmap_line::y0#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 ] { { bitmap_line_ydxd::xd#0 = bitmap_line_ydxd::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxd::x#0 = bitmap_line_ydxd::x#5 bitmap_line::x0#0 } { bitmap_line_ydxd::y#0 = bitmap_line_ydxd::y#7 bitmap_line::y0#0 } { bitmap_line_ydxd::yd#0 = bitmap_line_ydxd::yd#5 bitmap_line::yd#1 } { bitmap_line_ydxd::y1#0 = bitmap_line_ydxd::y1#6 bitmap_line::y1#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::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] { { bitmap_line_ydxd::xd#1 = bitmap_line_ydxd::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxd::x#1 = bitmap_line_ydxd::x#5 bitmap_line::x1#0 } { bitmap_line_ydxd::y#1 = bitmap_line_ydxd::y#7 bitmap_line::y1#0 } { bitmap_line_ydxd::yd#1 = bitmap_line_ydxd::yd#5 bitmap_line::yd#10 } { bitmap_line_ydxd::y1#1 = bitmap_line_ydxd::y1#6 bitmap_line::y0#0 } } ) 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 ] { { bitmap_line_ydxd::xd#0 = bitmap_line_ydxd::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxd::x#0 = bitmap_line_ydxd::x#5 bitmap_line::x0#0 } { bitmap_line_ydxd::y#0 = bitmap_line_ydxd::y#7 bitmap_line::y0#0 } { bitmap_line_ydxd::yd#0 = bitmap_line_ydxd::yd#5 bitmap_line::yd#1 } { bitmap_line_ydxd::y1#0 = bitmap_line_ydxd::y1#6 bitmap_line::y1#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::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] { { bitmap_line_ydxd::xd#1 = bitmap_line_ydxd::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxd::x#1 = bitmap_line_ydxd::x#5 bitmap_line::x1#0 } { bitmap_line_ydxd::y#1 = bitmap_line_ydxd::y#7 bitmap_line::y1#0 } { bitmap_line_ydxd::yd#1 = bitmap_line_ydxd::yd#5 bitmap_line::yd#10 } { bitmap_line_ydxd::y1#1 = bitmap_line_ydxd::y1#6 bitmap_line::y0#0 } } ) always clobbers reg byte a
Statement [721] (word) bitmap_clear::bitmap#0 ← *((const to_nomodify byte*) bitmap_plot_xhi) w= *((const to_nomodify byte*) bitmap_plot_xlo) [ 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[1]:123 [ bitmap_clear::y#4 bitmap_clear::y#1 ]
Removing always clobbered register reg byte y as potential for zp[1]:123 [ bitmap_clear::y#4 bitmap_clear::y#1 ]
Removing always clobbered register reg byte a as potential for zp[1]:126 [ bitmap_clear::x#2 bitmap_clear::x#1 ]
Removing always clobbered register reg byte y as potential for zp[1]:126 [ bitmap_clear::x#2 bitmap_clear::x#1 ]
Statement [736] *((const to_nomodify byte*) bitmap_plot_xhi + (byte) bitmap_init::x#2) ← >(const nomodify byte*) mode_stdbitmap::BITMAP [ 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[1]:127 [ bitmap_init::x#2 bitmap_init::x#1 ]
Removing always clobbered register reg byte a as potential for zp[1]:128 [ bitmap_init::bits#3 bitmap_init::bits#4 bitmap_init::bits#1 ]
Statement [737] *((const to_nomodify byte*) bitmap_plot_bit + (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[1]:129 [ bitmap_init::y#2 bitmap_init::y#1 ]
Statement [757] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [758] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [759] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [760] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [761] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [762] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_mcchar::CHARSET/(word) $4000 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [763] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [764] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL|(const nomodify byte) VIC_MCM [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [765] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_mcchar::CHARSET&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [767] *((const nomodify byte*) DTV_PALETTE + (byte) mode_mcchar::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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[1]:132 [ mode_mcchar::i#2 mode_mcchar::i#1 ]
Statement [770] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [771] *((const nomodify byte*) BG_COLOR) ← (const nomodify byte) BLACK [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [772] *((const nomodify byte*) BG_COLOR1) ← (const nomodify byte) GREEN [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [773] *((const nomodify byte*) BG_COLOR2) ← (const nomodify byte) BLUE [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [776] (byte~) mode_mcchar::$2 ← (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::$2 ] ( 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::$2 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:133 [ mode_mcchar::cy#4 mode_mcchar::cy#1 ]
Removing always clobbered register reg byte a as potential for zp[1]:134 [ mode_mcchar::cx#2 mode_mcchar::cx#1 ]
Statement [778] *((byte*) mode_mcchar::col#2) ← (byte~) mode_mcchar::$3 [ 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[1]:133 [ mode_mcchar::cy#4 mode_mcchar::cy#1 ]
Removing always clobbered register reg byte y as potential for zp[1]:134 [ mode_mcchar::cx#2 mode_mcchar::cx#1 ]
Statement [780] (byte~) mode_mcchar::$4 ← (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::$4 ] ( 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::$4 ] { } ) always clobbers reg byte a
Statement [781] (byte~) mode_mcchar::$5 ← (byte~) mode_mcchar::$4 << (byte) 4 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$5 ] ( 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::$5 ] { } ) always clobbers reg byte a
Statement [782] (byte~) mode_mcchar::$6 ← (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::$5 mode_mcchar::$6 ] ( 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::$5 mode_mcchar::$6 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:279 [ mode_mcchar::$5 ]
Statement [784] *((byte*) mode_mcchar::ch#2) ← (byte~) mode_mcchar::$7 [ 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 nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [794] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [795] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [796] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [797] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [798] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_ecmchar::CHARSET/(word) $4000 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [799] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(const nomodify byte) VIC_ECM|(byte) 3 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [800] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [801] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_ecmchar::CHARSET&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [803] *((const nomodify byte*) DTV_PALETTE + (byte) mode_ecmchar::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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[1]:139 [ mode_ecmchar::i#2 mode_ecmchar::i#1 ]
Statement [806] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [807] *((const nomodify byte*) BG_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [808] *((const nomodify byte*) BG_COLOR1) ← (byte) 2 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [809] *((const nomodify byte*) BG_COLOR2) ← (byte) 5 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [810] *((const nomodify byte*) BG_COLOR3) ← (byte) 6 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [813] (byte~) mode_ecmchar::$2 ← (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::$2 ] ( 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::$2 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:140 [ mode_ecmchar::cy#4 mode_ecmchar::cy#1 ]
Removing always clobbered register reg byte a as potential for zp[1]:141 [ mode_ecmchar::cx#2 mode_ecmchar::cx#1 ]
Statement [815] *((byte*) mode_ecmchar::col#2) ← (byte~) mode_ecmchar::$3 [ 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[1]:140 [ mode_ecmchar::cy#4 mode_ecmchar::cy#1 ]
Removing always clobbered register reg byte y as potential for zp[1]:141 [ mode_ecmchar::cx#2 mode_ecmchar::cx#1 ]
Statement [817] (byte~) mode_ecmchar::$4 ← (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::$4 ] ( 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::$4 ] { } ) always clobbers reg byte a
Statement [818] (byte~) mode_ecmchar::$5 ← (byte~) mode_ecmchar::$4 << (byte) 4 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$5 ] ( 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::$5 ] { } ) always clobbers reg byte a
Statement [819] (byte~) mode_ecmchar::$6 ← (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::$5 mode_ecmchar::$6 ] ( 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::$5 mode_ecmchar::$6 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:285 [ mode_ecmchar::$5 ]
Statement [821] *((byte*) mode_ecmchar::ch#2) ← (byte~) mode_ecmchar::$7 [ 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 nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] { } ) always clobbers reg byte a
Statement [831] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] { } ) always clobbers reg byte a
Statement [832] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] { } ) always clobbers reg byte a
Statement [833] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] { } ) always clobbers reg byte a
Statement [834] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] { } ) always clobbers reg byte a
Statement [835] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_stdchar::CHARSET/(word) $4000 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] { } ) always clobbers reg byte a
Statement [836] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] { } ) always clobbers reg byte a
Statement [837] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL [ ] ( main:2::menu:9::mode_stdchar:38 [ ] { } ) always clobbers reg byte a
Statement [838] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_stdchar::CHARSET&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] { } ) always clobbers reg byte a
Statement [840] *((const nomodify byte*) DTV_PALETTE + (byte) mode_stdchar::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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[1]:146 [ mode_stdchar::i#2 mode_stdchar::i#1 ]
Statement [843] *((const nomodify byte*) BG_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] { } ) always clobbers reg byte a
Statement [844] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] { } ) always clobbers reg byte a
Statement [847] (byte~) mode_stdchar::$2 ← (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::$2 ] ( 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::$2 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:147 [ mode_stdchar::cy#4 mode_stdchar::cy#1 ]
Removing always clobbered register reg byte a as potential for zp[1]:148 [ mode_stdchar::cx#2 mode_stdchar::cx#1 ]
Statement [849] *((byte*) mode_stdchar::col#2) ← (byte~) mode_stdchar::$3 [ 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[1]:147 [ mode_stdchar::cy#4 mode_stdchar::cy#1 ]
Removing always clobbered register reg byte y as potential for zp[1]:148 [ mode_stdchar::cx#2 mode_stdchar::cx#1 ]
Statement [851] (byte~) mode_stdchar::$4 ← (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::$4 ] ( 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::$4 ] { } ) always clobbers reg byte a
Statement [852] (byte~) mode_stdchar::$5 ← (byte~) mode_stdchar::$4 << (byte) 4 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$5 ] ( 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::$5 ] { } ) always clobbers reg byte a
Statement [853] (byte~) mode_stdchar::$6 ← (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::$5 mode_stdchar::$6 ] ( 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::$5 mode_stdchar::$6 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:291 [ mode_stdchar::$5 ]
Statement [855] *((byte*) mode_stdchar::ch#2) ← (byte~) mode_stdchar::$7 [ 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#21 print_line_cursor#17 ] ( main:2::menu:9::print_str_lines:31 [ print_str_lines::str#2 print_char_cursor#21 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#35 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#35 print_str_lines::ch#0 ] { } ) always clobbers reg byte a reg byte y
Statement [878] (byte*) print_char_cursor#102 ← (byte*) print_line_cursor#19 [ print_str_lines::str#0 print_char_cursor#102 print_line_cursor#19 ] ( main:2::menu:9::print_str_lines:31 [ print_str_lines::str#0 print_char_cursor#102 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#36 ] ( main:2::menu:9::print_str_lines:31::print_ln:877 [ print_str_lines::str#0 print_line_cursor#19 print_char_cursor#36 ] { } ) always clobbers reg byte a
Statement [882] if((byte*) print_line_cursor#19<(byte*) print_char_cursor#36) goto print_ln::@1 [ print_line_cursor#19 print_char_cursor#36 ] ( main:2::menu:9::print_str_lines:31::print_ln:877 [ print_str_lines::str#0 print_line_cursor#19 print_char_cursor#36 ] { } ) always clobbers reg byte a
Statement [884] *((byte*) print_char_cursor#35) ← (byte) print_char::ch#0 [ print_char_cursor#35 ] ( main:2::menu:9::print_str_lines:31::print_char:873 [ print_line_cursor#17 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#35 ] { { print_char::ch#0 = print_str_lines::ch#0 } } ) always clobbers reg byte y
Removing always clobbered register reg byte y as potential for zp[1]:294 [ print_str_lines::ch#0 ]
Statement [892] if((byte*) memset::dst#2!=(const byte*) memset::end#0) goto memset::@2 [ memset::dst#2 ] ( main:2::menu:9::print_cls:29::memset:888 [ memset::dst#2 ] { } ) always clobbers reg byte a
Statement [894] *((byte*) memset::dst#2) ← (const byte) memset::c#0 [ memset::dst#2 ] ( main:2::menu:9::print_cls:29::memset:888 [ memset::dst#2 ] { } ) always clobbers reg byte a reg byte y
Statement [5] *((const nomodify byte*) PROCPORT_DDR) ← (const nomodify byte) PROCPORT_DDR_MEMORY_MASK [ ] ( main:2 [ ] { } ) always clobbers reg byte a
Statement [6] *((const nomodify byte*) PROCPORT) ← (const nomodify byte) PROCPORT_RAM_IO [ ] ( main:2 [ ] { } ) always clobbers reg byte a
Statement [7] *((const nomodify byte*) DTV_FEATURE) ← (const nomodify byte) DTV_FEATURE_ENABLE [ ] ( main:2 [ ] { } ) always clobbers reg byte a
Statement [10] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 [ ] ( main:2::menu:9 [ ] { } ) always clobbers reg byte a
Statement [11] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400 [ ] ( main:2::menu:9 [ ] { } ) always clobbers reg byte a
Statement [12] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 [ ] ( main:2::menu:9 [ ] { } ) always clobbers reg byte a
Statement [13] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0 [ ] ( main:2::menu:9 [ ] { } ) always clobbers reg byte a
Statement [14] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 [ ] ( main:2::menu:9 [ ] { } ) always clobbers reg byte a
Statement [15] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) menu::CHARSET/(word) $4000 [ ] ( main:2::menu:9 [ ] { } ) always clobbers reg byte a
Statement [16] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 [ ] ( main:2::menu:9 [ ] { } ) always clobbers reg byte a
Statement [17] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL [ ] ( main:2::menu:9 [ ] { } ) always clobbers reg byte a
Statement [18] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) menu::CHARSET&(word) $3fff/(word) $400 [ ] ( main:2::menu:9 [ ] { } ) always clobbers reg byte a
Statement [20] *((const nomodify byte*) DTV_PALETTE + (byte) menu::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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 nomodify byte*) COLS+(word) $3e8) goto menu::@3 [ menu::c#2 ] ( main:2::menu:9 [ menu::c#2 ] { } ) always clobbers reg byte a
Statement [25] *((const nomodify byte*) BG_COLOR) ← (byte) 0 [ ] ( main:2::menu:9 [ ] { } ) always clobbers reg byte a
Statement [26] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 [ ] ( main:2::menu:9 [ ] { } ) always clobbers reg byte a
Statement [117] *((byte*) menu::c#2) ← (const nomodify byte) LIGHT_GREEN [ menu::c#2 ] ( main:2::menu:9 [ menu::c#2 ] { } ) always clobbers reg byte a reg byte y
Statement [119] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY|(const nomodify byte) DTV_COLORRAM_OFF [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] { } ) always clobbers reg byte a
Statement [120] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] { } ) always clobbers reg byte a
Statement [121] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] { } ) always clobbers reg byte a
Statement [122] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] { } ) always clobbers reg byte a
Statement [123] *((const nomodify byte*) DTV_PLANEB_START_MI) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] { } ) always clobbers reg byte a
Statement [124] *((const nomodify byte*) DTV_PLANEB_START_HI) ← <>(const nomodify dword) mode_8bppchunkybmm::PLANEB [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] { } ) always clobbers reg byte a
Statement [125] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 8 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] { } ) always clobbers reg byte a
Statement [126] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] { } ) always clobbers reg byte a
Statement [127] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:116 [ ] { } ) always clobbers reg byte a
Statement [128] *((const nomodify byte*) BORDER_COLOR) ← (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::$7 ← (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::$7 ] ( 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::$7 ] { } ) always clobbers reg byte a
Statement [143] (byte) mode_8bppchunkybmm::c#0 ← (byte)(word~) mode_8bppchunkybmm::$7 [ 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 nomodify byte*) RASTER)!=(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 nomodify byte) DTV_LINEAR [ 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 nomodify byte) DTV_HIGHCOLOR [ 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 nomodify byte) DTV_OVERSCAN [ 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 nomodify byte) DTV_BORDER_OFF [ 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 nomodify byte) DTV_CHUNKY [ 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 nomodify byte) DTV_COLORRAM_OFF [ 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#2 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:41 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#24 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:48 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#25 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:55 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#26 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:62 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#27 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:69 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#28 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:76 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#29 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:83 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#30 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:90 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#10 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:97 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#11 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:104 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#12 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:111 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#13 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } ) always clobbers reg byte a
Statement [220] *((byte*)(const nomodify struct MOS6526_CIA*) CIA1) ← *((const byte*) keyboard_matrix_row_bitmask + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::menu:9::keyboard_key_pressed:33::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#2 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:41::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#24 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:48::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#25 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:55::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#26 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:62::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#27 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:69::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#28 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:76::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#29 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:83::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#30 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:90::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#10 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:97::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#11 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:104::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#12 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:111::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#13 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } ) always clobbers reg byte a
Statement [221] (byte) keyboard_matrix_read::return#0 ← ~ *((byte*)(const nomodify struct MOS6526_CIA*) CIA1+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_B) [ 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#2 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:41::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#24 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:48::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#25 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:55::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#26 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:62::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#27 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:69::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#28 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:76::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#29 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:83::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#30 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:90::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#10 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:97::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#11 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:104::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#12 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } main:2::menu:9::keyboard_key_pressed:111::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#13 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#14 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#15 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#16 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#17 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#18 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#19 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#20 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } 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 ] { { keyboard_key_pressed::return#0 = keyboard_key_pressed::return#21 } { keyboard_matrix_read::rowid#0 = keyboard_key_pressed::rowidx#0 } { keyboard_matrix_read::return#0 = keyboard_matrix_read::return#2 } } ) always clobbers reg byte a
Statement asm { .byte$32,$dd lda$ff .byte$32,$00 } always clobbers reg byte a
Statement [227] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [228] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [229] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [230] *((const nomodify byte*) DTV_PLANEA_START_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [231] *((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_8bpppixelcell::PLANEA [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [232] *((const nomodify byte*) DTV_PLANEA_START_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [233] *((const nomodify byte*) DTV_PLANEA_STEP) ← (byte) 1 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [234] *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [235] *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [236] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [237] *((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_8bpppixelcell::PLANEB [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [238] *((const nomodify byte*) DTV_PLANEB_START_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [239] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [240] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [241] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [242] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [249] (byte~) mode_8bpppixelcell::$2 ← (byte) mode_8bpppixelcell::ay#4 & (byte) $f [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$2 ] ( main:2::menu:9::mode_8bpppixelcell:109 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$2 ] { } ) always clobbers reg byte a
Statement [250] (byte~) mode_8bpppixelcell::$3 ← (byte~) mode_8bpppixelcell::$2 << (byte) 4 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$3 ] ( main:2::menu:9::mode_8bpppixelcell:109 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$3 ] { } ) always clobbers reg byte a
Statement [251] (byte~) mode_8bpppixelcell::$4 ← (byte) mode_8bpppixelcell::ax#2 & (byte) $f [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$3 mode_8bpppixelcell::$4 ] ( main:2::menu:9::mode_8bpppixelcell:109 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$3 mode_8bpppixelcell::$4 ] { } ) always clobbers reg byte a
Statement [253] *((byte*) mode_8bpppixelcell::gfxa#2) ← (byte~) mode_8bpppixelcell::$5 [ 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 nomodify byte*) PROCPORT) ← (const nomodify byte) PROCPORT_RAM_CHARROM [ ] ( 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 nomodify byte*) PROCPORT) ← (const nomodify byte) PROCPORT_RAM_IO [ ] ( main:2::menu:9::mode_8bpppixelcell:109 [ ] { } ) always clobbers reg byte a
Statement [282] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [283] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [284] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [285] *((const nomodify byte*) DTV_PLANEA_START_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [286] *((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_sixsfred::PLANEA [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [287] *((const nomodify byte*) DTV_PLANEA_START_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [288] *((const nomodify byte*) DTV_PLANEA_STEP) ← (byte) 1 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [289] *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [290] *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [291] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [292] *((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_sixsfred::PLANEB [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [293] *((const nomodify byte*) DTV_PLANEB_START_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [294] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 1 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [295] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [296] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [297] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(const nomodify byte*) mode_sixsfred::COLORS/(word) $400 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [298] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [303] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred:102 [ ] { } ) always clobbers reg byte a
Statement [306] (byte~) mode_sixsfred::$2 ← (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#4 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 mode_sixsfred::$2 ] ( main:2::menu:9::mode_sixsfred:102 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 mode_sixsfred::$2 ] { } ) always clobbers reg byte a
Statement [308] *((byte*) mode_sixsfred::col#2) ← (byte~) mode_sixsfred::$3 [ 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::$6 ← (byte) mode_sixsfred::ay#4 >> (byte) 1 [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 mode_sixsfred::$6 ] ( main:2::menu:9::mode_sixsfred:102 [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 mode_sixsfred::$6 ] { } ) always clobbers reg byte a
Statement [318] *((byte*) mode_sixsfred::gfxa#2) ← *((const byte*) mode_sixsfred::row_bitmask + (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 nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [336] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [337] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [338] *((const nomodify byte*) DTV_PLANEA_START_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [339] *((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_twoplanebitmap::PLANEA [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [340] *((const nomodify byte*) DTV_PLANEA_START_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [341] *((const nomodify byte*) DTV_PLANEA_STEP) ← (byte) 1 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [342] *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [343] *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [344] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [345] *((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_twoplanebitmap::PLANEB [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [346] *((const nomodify byte*) DTV_PLANEB_START_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [347] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 1 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [348] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [349] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [350] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(const nomodify byte*) mode_twoplanebitmap::COLORS/(word) $400 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [351] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [356] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [357] *((const nomodify byte*) BG_COLOR) ← (byte) $70 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [358] *((const nomodify byte*) BG_COLOR1) ← (byte) $d4 [ ] ( main:2::menu:9::mode_twoplanebitmap:95 [ ] { } ) always clobbers reg byte a
Statement [361] (byte~) mode_twoplanebitmap::$2 ← (byte) mode_twoplanebitmap::cy#4 & (byte) $f [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$2 ] ( main:2::menu:9::mode_twoplanebitmap:95 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$2 ] { } ) always clobbers reg byte a
Statement [362] (byte~) mode_twoplanebitmap::$3 ← (byte~) mode_twoplanebitmap::$2 << (byte) 4 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$3 ] ( main:2::menu:9::mode_twoplanebitmap:95 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$3 ] { } ) always clobbers reg byte a
Statement [363] (byte~) mode_twoplanebitmap::$4 ← (byte) mode_twoplanebitmap::cx#2 & (byte) $f [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$3 mode_twoplanebitmap::$4 ] ( main:2::menu:9::mode_twoplanebitmap:95 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$3 mode_twoplanebitmap::$4 ] { } ) always clobbers reg byte a
Statement [365] *((byte*) mode_twoplanebitmap::col#2) ← (byte~) mode_twoplanebitmap::$5 [ 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::$8 ← (byte) mode_twoplanebitmap::ay#5 & (byte) 4 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 mode_twoplanebitmap::$8 ] ( main:2::menu:9::mode_twoplanebitmap:95 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 mode_twoplanebitmap::$8 ] { } ) 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 nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_LINEAR [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [396] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [397] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [398] *((const nomodify byte*) DTV_PLANEA_START_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [399] *((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_sixsfred2::PLANEA [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [400] *((const nomodify byte*) DTV_PLANEA_START_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [401] *((const nomodify byte*) DTV_PLANEA_STEP) ← (byte) 1 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [402] *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [403] *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [404] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [405] *((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_sixsfred2::PLANEB [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [406] *((const nomodify byte*) DTV_PLANEB_START_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [407] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 1 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [408] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [409] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [410] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(const nomodify byte*) mode_sixsfred2::COLORS/(word) $400 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [411] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [416] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_sixsfred2:88 [ ] { } ) always clobbers reg byte a
Statement [419] (byte~) mode_sixsfred2::$2 ← (byte) mode_sixsfred2::cx#2 & (byte) 3 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$2 ] ( main:2::menu:9::mode_sixsfred2:88 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$2 ] { } ) always clobbers reg byte a
Statement [420] (byte~) mode_sixsfred2::$3 ← (byte~) mode_sixsfred2::$2 << (byte) 4 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$3 ] ( main:2::menu:9::mode_sixsfred2:88 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$3 ] { } ) always clobbers reg byte a
Statement [421] (byte~) mode_sixsfred2::$4 ← (byte) mode_sixsfred2::cy#4 & (byte) 3 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$3 mode_sixsfred2::$4 ] ( main:2::menu:9::mode_sixsfred2:88 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$3 mode_sixsfred2::$4 ] { } ) always clobbers reg byte a
Statement [423] *((byte*) mode_sixsfred2::col#2) ← (byte~) mode_sixsfred2::$5 [ 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::$8 ← (byte) mode_sixsfred2::ay#4 >> (byte) 1 [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 mode_sixsfred2::$8 ] ( main:2::menu:9::mode_sixsfred2:88 [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 mode_sixsfred2::$8 ] { } ) always clobbers reg byte a
Statement [433] *((byte*) mode_sixsfred2::gfxa#2) ← *((const byte*) mode_sixsfred2::row_bitmask + (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 nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [451] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify byte*) mode_hicolmcchar::COLORS/(word) $400 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [452] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [453] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [454] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [455] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_hicolmcchar::CHARSET/(word) $4000 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [456] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [457] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL|(const nomodify byte) VIC_MCM [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [458] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolmcchar::CHARSET&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [463] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [464] *((const nomodify byte*) BG_COLOR) ← (byte) $50 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [465] *((const nomodify byte*) BG_COLOR1) ← (byte) $54 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [466] *((const nomodify byte*) BG_COLOR2) ← (byte) $58 [ ] ( main:2::menu:9::mode_hicolmcchar:81 [ ] { } ) always clobbers reg byte a
Statement [469] (byte~) mode_hicolmcchar::$2 ← (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::$2 ] ( 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::$2 ] { } ) always clobbers reg byte a
Statement [470] (byte~) mode_hicolmcchar::$3 ← (byte~) mode_hicolmcchar::$2 << (byte) 4 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$3 ] ( 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::$3 ] { } ) always clobbers reg byte a
Statement [471] (byte~) mode_hicolmcchar::$4 ← (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::$3 mode_hicolmcchar::$4 ] ( 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::$3 mode_hicolmcchar::$4 ] { } ) 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 nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [485] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify byte*) mode_hicolecmchar::COLORS/(word) $400 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [486] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [487] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [488] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [489] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_hicolecmchar::CHARSET/(word) $4000 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [490] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(const nomodify byte) VIC_ECM|(byte) 3 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [491] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [492] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolecmchar::CHARSET&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [497] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [498] *((const nomodify byte*) BG_COLOR) ← (byte) $50 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [499] *((const nomodify byte*) BG_COLOR1) ← (byte) $54 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [500] *((const nomodify byte*) BG_COLOR2) ← (byte) $58 [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [501] *((const nomodify byte*) BG_COLOR3) ← (byte) $5c [ ] ( main:2::menu:9::mode_hicolecmchar:74 [ ] { } ) always clobbers reg byte a
Statement [504] (byte~) mode_hicolecmchar::$2 ← (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::$2 ] ( 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::$2 ] { } ) always clobbers reg byte a
Statement [505] (byte~) mode_hicolecmchar::$3 ← (byte~) mode_hicolecmchar::$2 << (byte) 4 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$3 ] ( 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::$3 ] { } ) always clobbers reg byte a
Statement [506] (byte~) mode_hicolecmchar::$4 ← (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::$3 mode_hicolecmchar::$4 ] ( 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::$3 mode_hicolecmchar::$4 ] { } ) 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 nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] { } ) always clobbers reg byte a
Statement [520] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify byte*) mode_hicolstdchar::COLORS/(word) $400 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] { } ) always clobbers reg byte a
Statement [521] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] { } ) always clobbers reg byte a
Statement [522] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] { } ) always clobbers reg byte a
Statement [523] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] { } ) always clobbers reg byte a
Statement [524] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_hicolstdchar::CHARSET/(word) $4000 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] { } ) always clobbers reg byte a
Statement [525] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] { } ) always clobbers reg byte a
Statement [526] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] { } ) always clobbers reg byte a
Statement [527] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolstdchar::CHARSET&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] { } ) always clobbers reg byte a
Statement [532] *((const nomodify byte*) BG_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] { } ) always clobbers reg byte a
Statement [533] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_hicolstdchar:67 [ ] { } ) always clobbers reg byte a
Statement [536] (byte~) mode_hicolstdchar::$2 ← (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::$2 ] ( 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::$2 ] { } ) always clobbers reg byte a
Statement [537] (byte~) mode_hicolstdchar::$3 ← (byte~) mode_hicolstdchar::$2 << (byte) 4 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$3 ] ( 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::$3 ] { } ) always clobbers reg byte a
Statement [538] (byte~) mode_hicolstdchar::$4 ← (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::$3 mode_hicolstdchar::$4 ] ( 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::$3 mode_hicolstdchar::$4 ] { } ) 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 nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] { } ) always clobbers reg byte a
Statement [552] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] { } ) always clobbers reg byte a
Statement [553] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] { } ) always clobbers reg byte a
Statement [554] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_stdbitmap::BITMAP/(word) $4000 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] { } ) always clobbers reg byte a
Statement [555] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] { } ) always clobbers reg byte a
Statement [556] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] { } ) always clobbers reg byte a
Statement [557] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_stdbitmap::BITMAP&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] { } ) always clobbers reg byte a
Statement [559] *((const nomodify byte*) DTV_PALETTE + (byte) mode_stdbitmap::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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 nomodify byte*) BG_COLOR) ← (const nomodify byte) BLACK [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] { } ) always clobbers reg byte a
Statement [563] *((const nomodify byte*) BORDER_COLOR) ← (const nomodify byte) BLACK [ ] ( main:2::menu:9::mode_stdbitmap:60 [ ] { } ) always clobbers reg byte a
Statement [566] (byte~) mode_stdbitmap::$4 ← (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#4 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::$4 ] ( main:2::menu:9::mode_stdbitmap:60 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::$4 ] { } ) 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::$7 ← (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::$7 ] ( 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::$7 ] { } ) always clobbers reg byte a
Statement [571] *((byte*) mode_stdbitmap::ch#2) ← (byte~) mode_stdbitmap::$8 [ 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 ] { { bitmap_line_xdyi::yd#0 = bitmap_line_xdyi::yd#2 bitmap_line::yd#2 } { bitmap_line_xdyi::x#0 = bitmap_line_xdyi::x#6 bitmap_line::x1#0 } { bitmap_line_xdyi::y#0 = bitmap_line_xdyi::y#5 bitmap_line::y1#0 } { bitmap_line_xdyi::xd#0 = bitmap_line_xdyi::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyi::x1#0 = bitmap_line_xdyi::x1#6 bitmap_line::x0#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 ] { { bitmap_line_xdyi::yd#1 = bitmap_line_xdyi::yd#2 bitmap_line::yd#11 } { bitmap_line_xdyi::x#1 = bitmap_line_xdyi::x#6 bitmap_line::x0#0 } { bitmap_line_xdyi::y#1 = bitmap_line_xdyi::y#5 bitmap_line::y0#0 } { bitmap_line_xdyi::xd#1 = bitmap_line_xdyi::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyi::x1#1 = bitmap_line_xdyi::x1#6 bitmap_line::x1#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 ] { { bitmap_line_xdyi::yd#0 = bitmap_line_xdyi::yd#2 bitmap_line::yd#2 } { bitmap_line_xdyi::x#0 = bitmap_line_xdyi::x#6 bitmap_line::x1#0 } { bitmap_line_xdyi::y#0 = bitmap_line_xdyi::y#5 bitmap_line::y1#0 } { bitmap_line_xdyi::xd#0 = bitmap_line_xdyi::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyi::x1#0 = bitmap_line_xdyi::x1#6 bitmap_line::x0#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::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] { { bitmap_line_xdyi::yd#1 = bitmap_line_xdyi::yd#2 bitmap_line::yd#11 } { bitmap_line_xdyi::x#1 = bitmap_line_xdyi::x#6 bitmap_line::x0#0 } { bitmap_line_xdyi::y#1 = bitmap_line_xdyi::y#5 bitmap_line::y0#0 } { bitmap_line_xdyi::xd#1 = bitmap_line_xdyi::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyi::x1#1 = bitmap_line_xdyi::x1#6 bitmap_line::x1#0 } } ) 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 ] { { bitmap_line_xdyi::yd#0 = bitmap_line_xdyi::yd#2 bitmap_line::yd#2 } { bitmap_line_xdyi::x#0 = bitmap_line_xdyi::x#6 bitmap_line::x1#0 } { bitmap_line_xdyi::y#0 = bitmap_line_xdyi::y#5 bitmap_line::y1#0 } { bitmap_line_xdyi::xd#0 = bitmap_line_xdyi::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyi::x1#0 = bitmap_line_xdyi::x1#6 bitmap_line::x0#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::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] { { bitmap_line_xdyi::yd#1 = bitmap_line_xdyi::yd#2 bitmap_line::yd#11 } { bitmap_line_xdyi::x#1 = bitmap_line_xdyi::x#6 bitmap_line::x0#0 } { bitmap_line_xdyi::y#1 = bitmap_line_xdyi::y#5 bitmap_line::y0#0 } { bitmap_line_xdyi::xd#1 = bitmap_line_xdyi::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyi::x1#1 = bitmap_line_xdyi::x1#6 bitmap_line::x1#0 } } ) always clobbers reg byte a
Statement [670] (word) bitmap_plot::plotter_x#0 ← *((const to_nomodify byte*) bitmap_plot_xhi + (byte) bitmap_plot::x#4) w= *((const to_nomodify byte*) bitmap_plot_xlo + (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 ] { { bitmap_line_xdyi::yd#0 = bitmap_line_xdyi::yd#2 bitmap_line::yd#2 } { bitmap_line_xdyi::x#0 = bitmap_line_xdyi::x#6 bitmap_line::x1#0 } { bitmap_line_xdyi::y#0 = bitmap_line_xdyi::y#5 bitmap_line::y1#0 } { bitmap_line_xdyi::xd#0 = bitmap_line_xdyi::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyi::x1#0 = bitmap_line_xdyi::x1#6 bitmap_line::x0#0 } { bitmap_plot::x#0 = bitmap_plot::x#4 bitmap_line_xdyi::x#3 } { bitmap_plot::y#0 = bitmap_plot::y#4 bitmap_line_xdyi::y#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 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] { { bitmap_line_xdyi::yd#1 = bitmap_line_xdyi::yd#2 bitmap_line::yd#11 } { bitmap_line_xdyi::x#1 = bitmap_line_xdyi::x#6 bitmap_line::x0#0 } { bitmap_line_xdyi::y#1 = bitmap_line_xdyi::y#5 bitmap_line::y0#0 } { bitmap_line_xdyi::xd#1 = bitmap_line_xdyi::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyi::x1#1 = bitmap_line_xdyi::x1#6 bitmap_line::x1#0 } { bitmap_plot::x#0 = bitmap_plot::x#4 bitmap_line_xdyi::x#3 } { bitmap_plot::y#0 = bitmap_plot::y#4 bitmap_line_xdyi::y#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 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] { { bitmap_line_ydxi::xd#0 = bitmap_line_ydxi::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxi::x#0 = bitmap_line_ydxi::x#5 bitmap_line::x1#0 } { bitmap_line_ydxi::y#0 = bitmap_line_ydxi::y#6 bitmap_line::y1#0 } { bitmap_line_ydxi::yd#0 = bitmap_line_ydxi::yd#5 bitmap_line::yd#2 } { bitmap_line_ydxi::y1#0 = bitmap_line_ydxi::y1#6 bitmap_line::y0#0 } { bitmap_plot::x#2 = bitmap_plot::x#4 bitmap_line_ydxi::x#3 } { bitmap_plot::y#2 = bitmap_plot::y#4 bitmap_line_ydxi::y#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 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] { { bitmap_line_ydxi::xd#1 = bitmap_line_ydxi::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxi::x#1 = bitmap_line_ydxi::x#5 bitmap_line::x0#0 } { bitmap_line_ydxi::y#1 = bitmap_line_ydxi::y#6 bitmap_line::y0#0 } { bitmap_line_ydxi::yd#1 = bitmap_line_ydxi::yd#5 bitmap_line::yd#11 } { bitmap_line_ydxi::y1#1 = bitmap_line_ydxi::y1#6 bitmap_line::y1#0 } { bitmap_plot::x#2 = bitmap_plot::x#4 bitmap_line_ydxi::x#3 } { bitmap_plot::y#2 = bitmap_plot::y#4 bitmap_line_ydxi::y#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 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] { { bitmap_line_xdyd::yd#0 = bitmap_line_xdyd::yd#2 bitmap_line::yd#1 } { bitmap_line_xdyd::x#0 = bitmap_line_xdyd::x#6 bitmap_line::x1#0 } { bitmap_line_xdyd::y#0 = bitmap_line_xdyd::y#5 bitmap_line::y1#0 } { bitmap_line_xdyd::xd#0 = bitmap_line_xdyd::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyd::x1#0 = bitmap_line_xdyd::x1#6 bitmap_line::x0#0 } { bitmap_plot::x#1 = bitmap_plot::x#4 bitmap_line_xdyd::x#3 } { bitmap_plot::y#1 = bitmap_plot::y#4 bitmap_line_xdyd::y#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 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] { { bitmap_line_xdyd::yd#1 = bitmap_line_xdyd::yd#2 bitmap_line::yd#10 } { bitmap_line_xdyd::x#1 = bitmap_line_xdyd::x#6 bitmap_line::x0#0 } { bitmap_line_xdyd::y#1 = bitmap_line_xdyd::y#5 bitmap_line::y0#0 } { bitmap_line_xdyd::xd#1 = bitmap_line_xdyd::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyd::x1#1 = bitmap_line_xdyd::x1#6 bitmap_line::x1#0 } { bitmap_plot::x#1 = bitmap_plot::x#4 bitmap_line_xdyd::x#3 } { bitmap_plot::y#1 = bitmap_plot::y#4 bitmap_line_xdyd::y#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 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] { { bitmap_line_ydxd::xd#0 = bitmap_line_ydxd::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxd::x#0 = bitmap_line_ydxd::x#5 bitmap_line::x0#0 } { bitmap_line_ydxd::y#0 = bitmap_line_ydxd::y#7 bitmap_line::y0#0 } { bitmap_line_ydxd::yd#0 = bitmap_line_ydxd::yd#5 bitmap_line::yd#1 } { bitmap_line_ydxd::y1#0 = bitmap_line_ydxd::y1#6 bitmap_line::y1#0 } { bitmap_plot::x#3 = bitmap_plot::x#4 bitmap_line_ydxd::x#3 } { bitmap_plot::y#3 = bitmap_plot::y#4 bitmap_line_ydxd::y#2 } } 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 ] { { bitmap_line_ydxd::xd#1 = bitmap_line_ydxd::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxd::x#1 = bitmap_line_ydxd::x#5 bitmap_line::x1#0 } { bitmap_line_ydxd::y#1 = bitmap_line_ydxd::y#7 bitmap_line::y1#0 } { bitmap_line_ydxd::yd#1 = bitmap_line_ydxd::yd#5 bitmap_line::yd#10 } { bitmap_line_ydxd::y1#1 = bitmap_line_ydxd::y1#6 bitmap_line::y0#0 } { bitmap_plot::x#3 = bitmap_plot::x#4 bitmap_line_ydxd::x#3 } { bitmap_plot::y#3 = bitmap_plot::y#4 bitmap_line_ydxd::y#2 } } ) always clobbers reg byte a
Statement [671] (word) bitmap_plot::plotter_y#0 ← *((const to_nomodify byte*) bitmap_plot_yhi + (byte) bitmap_plot::y#4) w= *((const to_nomodify byte*) bitmap_plot_ylo + (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 ] { { bitmap_line_xdyi::yd#0 = bitmap_line_xdyi::yd#2 bitmap_line::yd#2 } { bitmap_line_xdyi::x#0 = bitmap_line_xdyi::x#6 bitmap_line::x1#0 } { bitmap_line_xdyi::y#0 = bitmap_line_xdyi::y#5 bitmap_line::y1#0 } { bitmap_line_xdyi::xd#0 = bitmap_line_xdyi::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyi::x1#0 = bitmap_line_xdyi::x1#6 bitmap_line::x0#0 } { bitmap_plot::x#0 = bitmap_plot::x#4 bitmap_line_xdyi::x#3 } { bitmap_plot::y#0 = bitmap_plot::y#4 bitmap_line_xdyi::y#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 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] { { bitmap_line_xdyi::yd#1 = bitmap_line_xdyi::yd#2 bitmap_line::yd#11 } { bitmap_line_xdyi::x#1 = bitmap_line_xdyi::x#6 bitmap_line::x0#0 } { bitmap_line_xdyi::y#1 = bitmap_line_xdyi::y#5 bitmap_line::y0#0 } { bitmap_line_xdyi::xd#1 = bitmap_line_xdyi::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyi::x1#1 = bitmap_line_xdyi::x1#6 bitmap_line::x1#0 } { bitmap_plot::x#0 = bitmap_plot::x#4 bitmap_line_xdyi::x#3 } { bitmap_plot::y#0 = bitmap_plot::y#4 bitmap_line_xdyi::y#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 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] { { bitmap_line_ydxi::xd#0 = bitmap_line_ydxi::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxi::x#0 = bitmap_line_ydxi::x#5 bitmap_line::x1#0 } { bitmap_line_ydxi::y#0 = bitmap_line_ydxi::y#6 bitmap_line::y1#0 } { bitmap_line_ydxi::yd#0 = bitmap_line_ydxi::yd#5 bitmap_line::yd#2 } { bitmap_line_ydxi::y1#0 = bitmap_line_ydxi::y1#6 bitmap_line::y0#0 } { bitmap_plot::x#2 = bitmap_plot::x#4 bitmap_line_ydxi::x#3 } { bitmap_plot::y#2 = bitmap_plot::y#4 bitmap_line_ydxi::y#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 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] { { bitmap_line_ydxi::xd#1 = bitmap_line_ydxi::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxi::x#1 = bitmap_line_ydxi::x#5 bitmap_line::x0#0 } { bitmap_line_ydxi::y#1 = bitmap_line_ydxi::y#6 bitmap_line::y0#0 } { bitmap_line_ydxi::yd#1 = bitmap_line_ydxi::yd#5 bitmap_line::yd#11 } { bitmap_line_ydxi::y1#1 = bitmap_line_ydxi::y1#6 bitmap_line::y1#0 } { bitmap_plot::x#2 = bitmap_plot::x#4 bitmap_line_ydxi::x#3 } { bitmap_plot::y#2 = bitmap_plot::y#4 bitmap_line_ydxi::y#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 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] { { bitmap_line_xdyd::yd#0 = bitmap_line_xdyd::yd#2 bitmap_line::yd#1 } { bitmap_line_xdyd::x#0 = bitmap_line_xdyd::x#6 bitmap_line::x1#0 } { bitmap_line_xdyd::y#0 = bitmap_line_xdyd::y#5 bitmap_line::y1#0 } { bitmap_line_xdyd::xd#0 = bitmap_line_xdyd::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyd::x1#0 = bitmap_line_xdyd::x1#6 bitmap_line::x0#0 } { bitmap_plot::x#1 = bitmap_plot::x#4 bitmap_line_xdyd::x#3 } { bitmap_plot::y#1 = bitmap_plot::y#4 bitmap_line_xdyd::y#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 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] { { bitmap_line_xdyd::yd#1 = bitmap_line_xdyd::yd#2 bitmap_line::yd#10 } { bitmap_line_xdyd::x#1 = bitmap_line_xdyd::x#6 bitmap_line::x0#0 } { bitmap_line_xdyd::y#1 = bitmap_line_xdyd::y#5 bitmap_line::y0#0 } { bitmap_line_xdyd::xd#1 = bitmap_line_xdyd::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyd::x1#1 = bitmap_line_xdyd::x1#6 bitmap_line::x1#0 } { bitmap_plot::x#1 = bitmap_plot::x#4 bitmap_line_xdyd::x#3 } { bitmap_plot::y#1 = bitmap_plot::y#4 bitmap_line_xdyd::y#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 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] { { bitmap_line_ydxd::xd#0 = bitmap_line_ydxd::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxd::x#0 = bitmap_line_ydxd::x#5 bitmap_line::x0#0 } { bitmap_line_ydxd::y#0 = bitmap_line_ydxd::y#7 bitmap_line::y0#0 } { bitmap_line_ydxd::yd#0 = bitmap_line_ydxd::yd#5 bitmap_line::yd#1 } { bitmap_line_ydxd::y1#0 = bitmap_line_ydxd::y1#6 bitmap_line::y1#0 } { bitmap_plot::x#3 = bitmap_plot::x#4 bitmap_line_ydxd::x#3 } { bitmap_plot::y#3 = bitmap_plot::y#4 bitmap_line_ydxd::y#2 } } 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 ] { { bitmap_line_ydxd::xd#1 = bitmap_line_ydxd::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxd::x#1 = bitmap_line_ydxd::x#5 bitmap_line::x1#0 } { bitmap_line_ydxd::y#1 = bitmap_line_ydxd::y#7 bitmap_line::y1#0 } { bitmap_line_ydxd::yd#1 = bitmap_line_ydxd::yd#5 bitmap_line::yd#10 } { bitmap_line_ydxd::y1#1 = bitmap_line_ydxd::y1#6 bitmap_line::y0#0 } { bitmap_plot::x#3 = bitmap_plot::x#4 bitmap_line_ydxd::x#3 } { bitmap_plot::y#3 = bitmap_plot::y#4 bitmap_line_ydxd::y#2 } } ) 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 ] { { bitmap_line_xdyi::yd#0 = bitmap_line_xdyi::yd#2 bitmap_line::yd#2 } { bitmap_line_xdyi::x#0 = bitmap_line_xdyi::x#6 bitmap_line::x1#0 } { bitmap_line_xdyi::y#0 = bitmap_line_xdyi::y#5 bitmap_line::y1#0 } { bitmap_line_xdyi::xd#0 = bitmap_line_xdyi::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyi::x1#0 = bitmap_line_xdyi::x1#6 bitmap_line::x0#0 } { bitmap_plot::x#0 = bitmap_plot::x#4 bitmap_line_xdyi::x#3 } { bitmap_plot::y#0 = bitmap_plot::y#4 bitmap_line_xdyi::y#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 bitmap_plot::x#4 bitmap_plot::plotter#0 ] { { bitmap_line_xdyi::yd#1 = bitmap_line_xdyi::yd#2 bitmap_line::yd#11 } { bitmap_line_xdyi::x#1 = bitmap_line_xdyi::x#6 bitmap_line::x0#0 } { bitmap_line_xdyi::y#1 = bitmap_line_xdyi::y#5 bitmap_line::y0#0 } { bitmap_line_xdyi::xd#1 = bitmap_line_xdyi::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyi::x1#1 = bitmap_line_xdyi::x1#6 bitmap_line::x1#0 } { bitmap_plot::x#0 = bitmap_plot::x#4 bitmap_line_xdyi::x#3 } { bitmap_plot::y#0 = bitmap_plot::y#4 bitmap_line_xdyi::y#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 bitmap_plot::x#4 bitmap_plot::plotter#0 ] { { bitmap_line_ydxi::xd#0 = bitmap_line_ydxi::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxi::x#0 = bitmap_line_ydxi::x#5 bitmap_line::x1#0 } { bitmap_line_ydxi::y#0 = bitmap_line_ydxi::y#6 bitmap_line::y1#0 } { bitmap_line_ydxi::yd#0 = bitmap_line_ydxi::yd#5 bitmap_line::yd#2 } { bitmap_line_ydxi::y1#0 = bitmap_line_ydxi::y1#6 bitmap_line::y0#0 } { bitmap_plot::x#2 = bitmap_plot::x#4 bitmap_line_ydxi::x#3 } { bitmap_plot::y#2 = bitmap_plot::y#4 bitmap_line_ydxi::y#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 bitmap_plot::x#4 bitmap_plot::plotter#0 ] { { bitmap_line_ydxi::xd#1 = bitmap_line_ydxi::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxi::x#1 = bitmap_line_ydxi::x#5 bitmap_line::x0#0 } { bitmap_line_ydxi::y#1 = bitmap_line_ydxi::y#6 bitmap_line::y0#0 } { bitmap_line_ydxi::yd#1 = bitmap_line_ydxi::yd#5 bitmap_line::yd#11 } { bitmap_line_ydxi::y1#1 = bitmap_line_ydxi::y1#6 bitmap_line::y1#0 } { bitmap_plot::x#2 = bitmap_plot::x#4 bitmap_line_ydxi::x#3 } { bitmap_plot::y#2 = bitmap_plot::y#4 bitmap_line_ydxi::y#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 bitmap_plot::x#4 bitmap_plot::plotter#0 ] { { bitmap_line_xdyd::yd#0 = bitmap_line_xdyd::yd#2 bitmap_line::yd#1 } { bitmap_line_xdyd::x#0 = bitmap_line_xdyd::x#6 bitmap_line::x1#0 } { bitmap_line_xdyd::y#0 = bitmap_line_xdyd::y#5 bitmap_line::y1#0 } { bitmap_line_xdyd::xd#0 = bitmap_line_xdyd::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyd::x1#0 = bitmap_line_xdyd::x1#6 bitmap_line::x0#0 } { bitmap_plot::x#1 = bitmap_plot::x#4 bitmap_line_xdyd::x#3 } { bitmap_plot::y#1 = bitmap_plot::y#4 bitmap_line_xdyd::y#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 bitmap_plot::x#4 bitmap_plot::plotter#0 ] { { bitmap_line_xdyd::yd#1 = bitmap_line_xdyd::yd#2 bitmap_line::yd#10 } { bitmap_line_xdyd::x#1 = bitmap_line_xdyd::x#6 bitmap_line::x0#0 } { bitmap_line_xdyd::y#1 = bitmap_line_xdyd::y#5 bitmap_line::y0#0 } { bitmap_line_xdyd::xd#1 = bitmap_line_xdyd::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyd::x1#1 = bitmap_line_xdyd::x1#6 bitmap_line::x1#0 } { bitmap_plot::x#1 = bitmap_plot::x#4 bitmap_line_xdyd::x#3 } { bitmap_plot::y#1 = bitmap_plot::y#4 bitmap_line_xdyd::y#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 bitmap_plot::x#4 bitmap_plot::plotter#0 ] { { bitmap_line_ydxd::xd#0 = bitmap_line_ydxd::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxd::x#0 = bitmap_line_ydxd::x#5 bitmap_line::x0#0 } { bitmap_line_ydxd::y#0 = bitmap_line_ydxd::y#7 bitmap_line::y0#0 } { bitmap_line_ydxd::yd#0 = bitmap_line_ydxd::yd#5 bitmap_line::yd#1 } { bitmap_line_ydxd::y1#0 = bitmap_line_ydxd::y1#6 bitmap_line::y1#0 } { bitmap_plot::x#3 = bitmap_plot::x#4 bitmap_line_ydxd::x#3 } { bitmap_plot::y#3 = bitmap_plot::y#4 bitmap_line_ydxd::y#2 } } 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 ] { { bitmap_line_ydxd::xd#1 = bitmap_line_ydxd::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxd::x#1 = bitmap_line_ydxd::x#5 bitmap_line::x1#0 } { bitmap_line_ydxd::y#1 = bitmap_line_ydxd::y#7 bitmap_line::y1#0 } { bitmap_line_ydxd::yd#1 = bitmap_line_ydxd::yd#5 bitmap_line::yd#10 } { bitmap_line_ydxd::y1#1 = bitmap_line_ydxd::y1#6 bitmap_line::y0#0 } { bitmap_plot::x#3 = bitmap_plot::x#4 bitmap_line_ydxd::x#3 } { bitmap_plot::y#3 = bitmap_plot::y#4 bitmap_line_ydxd::y#2 } } ) always clobbers reg byte a
Statement [673] (byte~) bitmap_plot::$1 ← *((byte*)(word) bitmap_plot::plotter#0) | *((const to_nomodify byte*) bitmap_plot_bit + (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 ] { { bitmap_line_xdyi::yd#0 = bitmap_line_xdyi::yd#2 bitmap_line::yd#2 } { bitmap_line_xdyi::x#0 = bitmap_line_xdyi::x#6 bitmap_line::x1#0 } { bitmap_line_xdyi::y#0 = bitmap_line_xdyi::y#5 bitmap_line::y1#0 } { bitmap_line_xdyi::xd#0 = bitmap_line_xdyi::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyi::x1#0 = bitmap_line_xdyi::x1#6 bitmap_line::x0#0 } { bitmap_plot::x#0 = bitmap_plot::x#4 bitmap_line_xdyi::x#3 } { bitmap_plot::y#0 = bitmap_plot::y#4 bitmap_line_xdyi::y#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 bitmap_plot::plotter#0 bitmap_plot::$1 ] { { bitmap_line_xdyi::yd#1 = bitmap_line_xdyi::yd#2 bitmap_line::yd#11 } { bitmap_line_xdyi::x#1 = bitmap_line_xdyi::x#6 bitmap_line::x0#0 } { bitmap_line_xdyi::y#1 = bitmap_line_xdyi::y#5 bitmap_line::y0#0 } { bitmap_line_xdyi::xd#1 = bitmap_line_xdyi::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyi::x1#1 = bitmap_line_xdyi::x1#6 bitmap_line::x1#0 } { bitmap_plot::x#0 = bitmap_plot::x#4 bitmap_line_xdyi::x#3 } { bitmap_plot::y#0 = bitmap_plot::y#4 bitmap_line_xdyi::y#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 bitmap_plot::plotter#0 bitmap_plot::$1 ] { { bitmap_line_ydxi::xd#0 = bitmap_line_ydxi::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxi::x#0 = bitmap_line_ydxi::x#5 bitmap_line::x1#0 } { bitmap_line_ydxi::y#0 = bitmap_line_ydxi::y#6 bitmap_line::y1#0 } { bitmap_line_ydxi::yd#0 = bitmap_line_ydxi::yd#5 bitmap_line::yd#2 } { bitmap_line_ydxi::y1#0 = bitmap_line_ydxi::y1#6 bitmap_line::y0#0 } { bitmap_plot::x#2 = bitmap_plot::x#4 bitmap_line_ydxi::x#3 } { bitmap_plot::y#2 = bitmap_plot::y#4 bitmap_line_ydxi::y#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 bitmap_plot::plotter#0 bitmap_plot::$1 ] { { bitmap_line_ydxi::xd#1 = bitmap_line_ydxi::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxi::x#1 = bitmap_line_ydxi::x#5 bitmap_line::x0#0 } { bitmap_line_ydxi::y#1 = bitmap_line_ydxi::y#6 bitmap_line::y0#0 } { bitmap_line_ydxi::yd#1 = bitmap_line_ydxi::yd#5 bitmap_line::yd#11 } { bitmap_line_ydxi::y1#1 = bitmap_line_ydxi::y1#6 bitmap_line::y1#0 } { bitmap_plot::x#2 = bitmap_plot::x#4 bitmap_line_ydxi::x#3 } { bitmap_plot::y#2 = bitmap_plot::y#4 bitmap_line_ydxi::y#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 bitmap_plot::plotter#0 bitmap_plot::$1 ] { { bitmap_line_xdyd::yd#0 = bitmap_line_xdyd::yd#2 bitmap_line::yd#1 } { bitmap_line_xdyd::x#0 = bitmap_line_xdyd::x#6 bitmap_line::x1#0 } { bitmap_line_xdyd::y#0 = bitmap_line_xdyd::y#5 bitmap_line::y1#0 } { bitmap_line_xdyd::xd#0 = bitmap_line_xdyd::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyd::x1#0 = bitmap_line_xdyd::x1#6 bitmap_line::x0#0 } { bitmap_plot::x#1 = bitmap_plot::x#4 bitmap_line_xdyd::x#3 } { bitmap_plot::y#1 = bitmap_plot::y#4 bitmap_line_xdyd::y#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 bitmap_plot::plotter#0 bitmap_plot::$1 ] { { bitmap_line_xdyd::yd#1 = bitmap_line_xdyd::yd#2 bitmap_line::yd#10 } { bitmap_line_xdyd::x#1 = bitmap_line_xdyd::x#6 bitmap_line::x0#0 } { bitmap_line_xdyd::y#1 = bitmap_line_xdyd::y#5 bitmap_line::y0#0 } { bitmap_line_xdyd::xd#1 = bitmap_line_xdyd::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyd::x1#1 = bitmap_line_xdyd::x1#6 bitmap_line::x1#0 } { bitmap_plot::x#1 = bitmap_plot::x#4 bitmap_line_xdyd::x#3 } { bitmap_plot::y#1 = bitmap_plot::y#4 bitmap_line_xdyd::y#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 bitmap_plot::plotter#0 bitmap_plot::$1 ] { { bitmap_line_ydxd::xd#0 = bitmap_line_ydxd::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxd::x#0 = bitmap_line_ydxd::x#5 bitmap_line::x0#0 } { bitmap_line_ydxd::y#0 = bitmap_line_ydxd::y#7 bitmap_line::y0#0 } { bitmap_line_ydxd::yd#0 = bitmap_line_ydxd::yd#5 bitmap_line::yd#1 } { bitmap_line_ydxd::y1#0 = bitmap_line_ydxd::y1#6 bitmap_line::y1#0 } { bitmap_plot::x#3 = bitmap_plot::x#4 bitmap_line_ydxd::x#3 } { bitmap_plot::y#3 = bitmap_plot::y#4 bitmap_line_ydxd::y#2 } } 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 ] { { bitmap_line_ydxd::xd#1 = bitmap_line_ydxd::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxd::x#1 = bitmap_line_ydxd::x#5 bitmap_line::x1#0 } { bitmap_line_ydxd::y#1 = bitmap_line_ydxd::y#7 bitmap_line::y1#0 } { bitmap_line_ydxd::yd#1 = bitmap_line_ydxd::yd#5 bitmap_line::yd#10 } { bitmap_line_ydxd::y1#1 = bitmap_line_ydxd::y1#6 bitmap_line::y0#0 } { bitmap_plot::x#3 = bitmap_plot::x#4 bitmap_line_ydxd::x#3 } { bitmap_plot::y#3 = bitmap_plot::y#4 bitmap_line_ydxd::y#2 } } ) 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 ] { { bitmap_line_xdyi::yd#0 = bitmap_line_xdyi::yd#2 bitmap_line::yd#2 } { bitmap_line_xdyi::x#0 = bitmap_line_xdyi::x#6 bitmap_line::x1#0 } { bitmap_line_xdyi::y#0 = bitmap_line_xdyi::y#5 bitmap_line::y1#0 } { bitmap_line_xdyi::xd#0 = bitmap_line_xdyi::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyi::x1#0 = bitmap_line_xdyi::x1#6 bitmap_line::x0#0 } { bitmap_plot::x#0 = bitmap_plot::x#4 bitmap_line_xdyi::x#3 } { bitmap_plot::y#0 = bitmap_plot::y#4 bitmap_line_xdyi::y#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 ] { { bitmap_line_xdyi::yd#1 = bitmap_line_xdyi::yd#2 bitmap_line::yd#11 } { bitmap_line_xdyi::x#1 = bitmap_line_xdyi::x#6 bitmap_line::x0#0 } { bitmap_line_xdyi::y#1 = bitmap_line_xdyi::y#5 bitmap_line::y0#0 } { bitmap_line_xdyi::xd#1 = bitmap_line_xdyi::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyi::x1#1 = bitmap_line_xdyi::x1#6 bitmap_line::x1#0 } { bitmap_plot::x#0 = bitmap_plot::x#4 bitmap_line_xdyi::x#3 } { bitmap_plot::y#0 = bitmap_plot::y#4 bitmap_line_xdyi::y#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 ] { { bitmap_line_ydxi::xd#0 = bitmap_line_ydxi::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxi::x#0 = bitmap_line_ydxi::x#5 bitmap_line::x1#0 } { bitmap_line_ydxi::y#0 = bitmap_line_ydxi::y#6 bitmap_line::y1#0 } { bitmap_line_ydxi::yd#0 = bitmap_line_ydxi::yd#5 bitmap_line::yd#2 } { bitmap_line_ydxi::y1#0 = bitmap_line_ydxi::y1#6 bitmap_line::y0#0 } { bitmap_plot::x#2 = bitmap_plot::x#4 bitmap_line_ydxi::x#3 } { bitmap_plot::y#2 = bitmap_plot::y#4 bitmap_line_ydxi::y#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 ] { { bitmap_line_ydxi::xd#1 = bitmap_line_ydxi::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxi::x#1 = bitmap_line_ydxi::x#5 bitmap_line::x0#0 } { bitmap_line_ydxi::y#1 = bitmap_line_ydxi::y#6 bitmap_line::y0#0 } { bitmap_line_ydxi::yd#1 = bitmap_line_ydxi::yd#5 bitmap_line::yd#11 } { bitmap_line_ydxi::y1#1 = bitmap_line_ydxi::y1#6 bitmap_line::y1#0 } { bitmap_plot::x#2 = bitmap_plot::x#4 bitmap_line_ydxi::x#3 } { bitmap_plot::y#2 = bitmap_plot::y#4 bitmap_line_ydxi::y#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 ] { { bitmap_line_xdyd::yd#0 = bitmap_line_xdyd::yd#2 bitmap_line::yd#1 } { bitmap_line_xdyd::x#0 = bitmap_line_xdyd::x#6 bitmap_line::x1#0 } { bitmap_line_xdyd::y#0 = bitmap_line_xdyd::y#5 bitmap_line::y1#0 } { bitmap_line_xdyd::xd#0 = bitmap_line_xdyd::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyd::x1#0 = bitmap_line_xdyd::x1#6 bitmap_line::x0#0 } { bitmap_plot::x#1 = bitmap_plot::x#4 bitmap_line_xdyd::x#3 } { bitmap_plot::y#1 = bitmap_plot::y#4 bitmap_line_xdyd::y#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 ] { { bitmap_line_xdyd::yd#1 = bitmap_line_xdyd::yd#2 bitmap_line::yd#10 } { bitmap_line_xdyd::x#1 = bitmap_line_xdyd::x#6 bitmap_line::x0#0 } { bitmap_line_xdyd::y#1 = bitmap_line_xdyd::y#5 bitmap_line::y0#0 } { bitmap_line_xdyd::xd#1 = bitmap_line_xdyd::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyd::x1#1 = bitmap_line_xdyd::x1#6 bitmap_line::x1#0 } { bitmap_plot::x#1 = bitmap_plot::x#4 bitmap_line_xdyd::x#3 } { bitmap_plot::y#1 = bitmap_plot::y#4 bitmap_line_xdyd::y#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 ] { { bitmap_line_ydxd::xd#0 = bitmap_line_ydxd::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxd::x#0 = bitmap_line_ydxd::x#5 bitmap_line::x0#0 } { bitmap_line_ydxd::y#0 = bitmap_line_ydxd::y#7 bitmap_line::y0#0 } { bitmap_line_ydxd::yd#0 = bitmap_line_ydxd::yd#5 bitmap_line::yd#1 } { bitmap_line_ydxd::y1#0 = bitmap_line_ydxd::y1#6 bitmap_line::y1#0 } { bitmap_plot::x#3 = bitmap_plot::x#4 bitmap_line_ydxd::x#3 } { bitmap_plot::y#3 = bitmap_plot::y#4 bitmap_line_ydxd::y#2 } } 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_line_ydxd::xd#1 = bitmap_line_ydxd::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxd::x#1 = bitmap_line_ydxd::x#5 bitmap_line::x1#0 } { bitmap_line_ydxd::y#1 = bitmap_line_ydxd::y#7 bitmap_line::y1#0 } { bitmap_line_ydxd::yd#1 = bitmap_line_ydxd::yd#5 bitmap_line::yd#10 } { bitmap_line_ydxd::y1#1 = bitmap_line_ydxd::y1#6 bitmap_line::y0#0 } { bitmap_plot::x#3 = bitmap_plot::x#4 bitmap_line_ydxd::x#3 } { bitmap_plot::y#3 = bitmap_plot::y#4 bitmap_line_ydxd::y#2 } } ) 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 ] { { bitmap_line_ydxi::xd#0 = bitmap_line_ydxi::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxi::x#0 = bitmap_line_ydxi::x#5 bitmap_line::x1#0 } { bitmap_line_ydxi::y#0 = bitmap_line_ydxi::y#6 bitmap_line::y1#0 } { bitmap_line_ydxi::yd#0 = bitmap_line_ydxi::yd#5 bitmap_line::yd#2 } { bitmap_line_ydxi::y1#0 = bitmap_line_ydxi::y1#6 bitmap_line::y0#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 ] { { bitmap_line_ydxi::xd#1 = bitmap_line_ydxi::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxi::x#1 = bitmap_line_ydxi::x#5 bitmap_line::x0#0 } { bitmap_line_ydxi::y#1 = bitmap_line_ydxi::y#6 bitmap_line::y0#0 } { bitmap_line_ydxi::yd#1 = bitmap_line_ydxi::yd#5 bitmap_line::yd#11 } { bitmap_line_ydxi::y1#1 = bitmap_line_ydxi::y1#6 bitmap_line::y1#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 ] { { bitmap_line_ydxi::xd#0 = bitmap_line_ydxi::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxi::x#0 = bitmap_line_ydxi::x#5 bitmap_line::x1#0 } { bitmap_line_ydxi::y#0 = bitmap_line_ydxi::y#6 bitmap_line::y1#0 } { bitmap_line_ydxi::yd#0 = bitmap_line_ydxi::yd#5 bitmap_line::yd#2 } { bitmap_line_ydxi::y1#0 = bitmap_line_ydxi::y1#6 bitmap_line::y0#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::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] { { bitmap_line_ydxi::xd#1 = bitmap_line_ydxi::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxi::x#1 = bitmap_line_ydxi::x#5 bitmap_line::x0#0 } { bitmap_line_ydxi::y#1 = bitmap_line_ydxi::y#6 bitmap_line::y0#0 } { bitmap_line_ydxi::yd#1 = bitmap_line_ydxi::yd#5 bitmap_line::yd#11 } { bitmap_line_ydxi::y1#1 = bitmap_line_ydxi::y1#6 bitmap_line::y1#0 } } ) 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 ] { { bitmap_line_ydxi::xd#0 = bitmap_line_ydxi::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxi::x#0 = bitmap_line_ydxi::x#5 bitmap_line::x1#0 } { bitmap_line_ydxi::y#0 = bitmap_line_ydxi::y#6 bitmap_line::y1#0 } { bitmap_line_ydxi::yd#0 = bitmap_line_ydxi::yd#5 bitmap_line::yd#2 } { bitmap_line_ydxi::y1#0 = bitmap_line_ydxi::y1#6 bitmap_line::y0#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::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] { { bitmap_line_ydxi::xd#1 = bitmap_line_ydxi::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxi::x#1 = bitmap_line_ydxi::x#5 bitmap_line::x0#0 } { bitmap_line_ydxi::y#1 = bitmap_line_ydxi::y#6 bitmap_line::y0#0 } { bitmap_line_ydxi::yd#1 = bitmap_line_ydxi::yd#5 bitmap_line::yd#11 } { bitmap_line_ydxi::y1#1 = bitmap_line_ydxi::y1#6 bitmap_line::y1#0 } } ) 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 ] { { bitmap_line_xdyd::yd#0 = bitmap_line_xdyd::yd#2 bitmap_line::yd#1 } { bitmap_line_xdyd::x#0 = bitmap_line_xdyd::x#6 bitmap_line::x1#0 } { bitmap_line_xdyd::y#0 = bitmap_line_xdyd::y#5 bitmap_line::y1#0 } { bitmap_line_xdyd::xd#0 = bitmap_line_xdyd::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyd::x1#0 = bitmap_line_xdyd::x1#6 bitmap_line::x0#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 ] { { bitmap_line_xdyd::yd#1 = bitmap_line_xdyd::yd#2 bitmap_line::yd#10 } { bitmap_line_xdyd::x#1 = bitmap_line_xdyd::x#6 bitmap_line::x0#0 } { bitmap_line_xdyd::y#1 = bitmap_line_xdyd::y#5 bitmap_line::y0#0 } { bitmap_line_xdyd::xd#1 = bitmap_line_xdyd::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyd::x1#1 = bitmap_line_xdyd::x1#6 bitmap_line::x1#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 ] { { bitmap_line_xdyd::yd#0 = bitmap_line_xdyd::yd#2 bitmap_line::yd#1 } { bitmap_line_xdyd::x#0 = bitmap_line_xdyd::x#6 bitmap_line::x1#0 } { bitmap_line_xdyd::y#0 = bitmap_line_xdyd::y#5 bitmap_line::y1#0 } { bitmap_line_xdyd::xd#0 = bitmap_line_xdyd::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyd::x1#0 = bitmap_line_xdyd::x1#6 bitmap_line::x0#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::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] { { bitmap_line_xdyd::yd#1 = bitmap_line_xdyd::yd#2 bitmap_line::yd#10 } { bitmap_line_xdyd::x#1 = bitmap_line_xdyd::x#6 bitmap_line::x0#0 } { bitmap_line_xdyd::y#1 = bitmap_line_xdyd::y#5 bitmap_line::y0#0 } { bitmap_line_xdyd::xd#1 = bitmap_line_xdyd::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyd::x1#1 = bitmap_line_xdyd::x1#6 bitmap_line::x1#0 } } ) 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 ] { { bitmap_line_xdyd::yd#0 = bitmap_line_xdyd::yd#2 bitmap_line::yd#1 } { bitmap_line_xdyd::x#0 = bitmap_line_xdyd::x#6 bitmap_line::x1#0 } { bitmap_line_xdyd::y#0 = bitmap_line_xdyd::y#5 bitmap_line::y1#0 } { bitmap_line_xdyd::xd#0 = bitmap_line_xdyd::xd#5 bitmap_line::xd#2 } { bitmap_line_xdyd::x1#0 = bitmap_line_xdyd::x1#6 bitmap_line::x0#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::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] { { bitmap_line_xdyd::yd#1 = bitmap_line_xdyd::yd#2 bitmap_line::yd#10 } { bitmap_line_xdyd::x#1 = bitmap_line_xdyd::x#6 bitmap_line::x0#0 } { bitmap_line_xdyd::y#1 = bitmap_line_xdyd::y#5 bitmap_line::y0#0 } { bitmap_line_xdyd::xd#1 = bitmap_line_xdyd::xd#5 bitmap_line::xd#1 } { bitmap_line_xdyd::x1#1 = bitmap_line_xdyd::x1#6 bitmap_line::x1#0 } } ) 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 ] { { bitmap_line_ydxd::xd#0 = bitmap_line_ydxd::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxd::x#0 = bitmap_line_ydxd::x#5 bitmap_line::x0#0 } { bitmap_line_ydxd::y#0 = bitmap_line_ydxd::y#7 bitmap_line::y0#0 } { bitmap_line_ydxd::yd#0 = bitmap_line_ydxd::yd#5 bitmap_line::yd#1 } { bitmap_line_ydxd::y1#0 = bitmap_line_ydxd::y1#6 bitmap_line::y1#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 ] { { bitmap_line_ydxd::xd#1 = bitmap_line_ydxd::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxd::x#1 = bitmap_line_ydxd::x#5 bitmap_line::x1#0 } { bitmap_line_ydxd::y#1 = bitmap_line_ydxd::y#7 bitmap_line::y1#0 } { bitmap_line_ydxd::yd#1 = bitmap_line_ydxd::yd#5 bitmap_line::yd#10 } { bitmap_line_ydxd::y1#1 = bitmap_line_ydxd::y1#6 bitmap_line::y0#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 ] { { bitmap_line_ydxd::xd#0 = bitmap_line_ydxd::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxd::x#0 = bitmap_line_ydxd::x#5 bitmap_line::x0#0 } { bitmap_line_ydxd::y#0 = bitmap_line_ydxd::y#7 bitmap_line::y0#0 } { bitmap_line_ydxd::yd#0 = bitmap_line_ydxd::yd#5 bitmap_line::yd#1 } { bitmap_line_ydxd::y1#0 = bitmap_line_ydxd::y1#6 bitmap_line::y1#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::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] { { bitmap_line_ydxd::xd#1 = bitmap_line_ydxd::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxd::x#1 = bitmap_line_ydxd::x#5 bitmap_line::x1#0 } { bitmap_line_ydxd::y#1 = bitmap_line_ydxd::y#7 bitmap_line::y1#0 } { bitmap_line_ydxd::yd#1 = bitmap_line_ydxd::yd#5 bitmap_line::yd#10 } { bitmap_line_ydxd::y1#1 = bitmap_line_ydxd::y1#6 bitmap_line::y0#0 } } ) 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 ] { { bitmap_line_ydxd::xd#0 = bitmap_line_ydxd::xd#2 bitmap_line::xd#2 } { bitmap_line_ydxd::x#0 = bitmap_line_ydxd::x#5 bitmap_line::x0#0 } { bitmap_line_ydxd::y#0 = bitmap_line_ydxd::y#7 bitmap_line::y0#0 } { bitmap_line_ydxd::yd#0 = bitmap_line_ydxd::yd#5 bitmap_line::yd#1 } { bitmap_line_ydxd::y1#0 = bitmap_line_ydxd::y1#6 bitmap_line::y1#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::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] { { bitmap_line_ydxd::xd#1 = bitmap_line_ydxd::xd#2 bitmap_line::xd#1 } { bitmap_line_ydxd::x#1 = bitmap_line_ydxd::x#5 bitmap_line::x1#0 } { bitmap_line_ydxd::y#1 = bitmap_line_ydxd::y#7 bitmap_line::y1#0 } { bitmap_line_ydxd::yd#1 = bitmap_line_ydxd::yd#5 bitmap_line::yd#10 } { bitmap_line_ydxd::y1#1 = bitmap_line_ydxd::y1#6 bitmap_line::y0#0 } } ) always clobbers reg byte a
Statement [721] (word) bitmap_clear::bitmap#0 ← *((const to_nomodify byte*) bitmap_plot_xhi) w= *((const to_nomodify byte*) bitmap_plot_xlo) [ 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 to_nomodify byte*) bitmap_plot_xhi + (byte) bitmap_init::x#2) ← >(const nomodify byte*) mode_stdbitmap::BITMAP [ 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 to_nomodify byte*) bitmap_plot_bit + (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 nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [758] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [759] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [760] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [761] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [762] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_mcchar::CHARSET/(word) $4000 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [763] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [764] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL|(const nomodify byte) VIC_MCM [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [765] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_mcchar::CHARSET&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [767] *((const nomodify byte*) DTV_PALETTE + (byte) mode_mcchar::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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 nomodify byte*) BORDER_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [771] *((const nomodify byte*) BG_COLOR) ← (const nomodify byte) BLACK [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [772] *((const nomodify byte*) BG_COLOR1) ← (const nomodify byte) GREEN [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [773] *((const nomodify byte*) BG_COLOR2) ← (const nomodify byte) BLUE [ ] ( main:2::menu:9::mode_mcchar:53 [ ] { } ) always clobbers reg byte a
Statement [776] (byte~) mode_mcchar::$2 ← (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::$2 ] ( 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::$2 ] { } ) always clobbers reg byte a
Statement [778] *((byte*) mode_mcchar::col#2) ← (byte~) mode_mcchar::$3 [ 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::$4 ← (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::$4 ] ( 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::$4 ] { } ) always clobbers reg byte a
Statement [781] (byte~) mode_mcchar::$5 ← (byte~) mode_mcchar::$4 << (byte) 4 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$5 ] ( 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::$5 ] { } ) always clobbers reg byte a
Statement [782] (byte~) mode_mcchar::$6 ← (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::$5 mode_mcchar::$6 ] ( 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::$5 mode_mcchar::$6 ] { } ) always clobbers reg byte a
Statement [784] *((byte*) mode_mcchar::ch#2) ← (byte~) mode_mcchar::$7 [ 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 nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [794] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [795] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [796] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [797] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [798] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_ecmchar::CHARSET/(word) $4000 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [799] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(const nomodify byte) VIC_ECM|(byte) 3 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [800] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [801] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_ecmchar::CHARSET&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [803] *((const nomodify byte*) DTV_PALETTE + (byte) mode_ecmchar::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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 nomodify byte*) BORDER_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [807] *((const nomodify byte*) BG_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [808] *((const nomodify byte*) BG_COLOR1) ← (byte) 2 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [809] *((const nomodify byte*) BG_COLOR2) ← (byte) 5 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [810] *((const nomodify byte*) BG_COLOR3) ← (byte) 6 [ ] ( main:2::menu:9::mode_ecmchar:46 [ ] { } ) always clobbers reg byte a
Statement [813] (byte~) mode_ecmchar::$2 ← (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::$2 ] ( 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::$2 ] { } ) always clobbers reg byte a
Statement [815] *((byte*) mode_ecmchar::col#2) ← (byte~) mode_ecmchar::$3 [ 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::$4 ← (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::$4 ] ( 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::$4 ] { } ) always clobbers reg byte a
Statement [818] (byte~) mode_ecmchar::$5 ← (byte~) mode_ecmchar::$4 << (byte) 4 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$5 ] ( 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::$5 ] { } ) always clobbers reg byte a
Statement [819] (byte~) mode_ecmchar::$6 ← (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::$5 mode_ecmchar::$6 ] ( 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::$5 mode_ecmchar::$6 ] { } ) always clobbers reg byte a
Statement [821] *((byte*) mode_ecmchar::ch#2) ← (byte~) mode_ecmchar::$7 [ 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 nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] { } ) always clobbers reg byte a
Statement [831] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] { } ) always clobbers reg byte a
Statement [832] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] { } ) always clobbers reg byte a
Statement [833] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] { } ) always clobbers reg byte a
Statement [834] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] { } ) always clobbers reg byte a
Statement [835] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_stdchar::CHARSET/(word) $4000 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] { } ) always clobbers reg byte a
Statement [836] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] { } ) always clobbers reg byte a
Statement [837] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL [ ] ( main:2::menu:9::mode_stdchar:38 [ ] { } ) always clobbers reg byte a
Statement [838] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_stdchar::CHARSET&(word) $3fff/(word) $400 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] { } ) always clobbers reg byte a
Statement [840] *((const nomodify byte*) DTV_PALETTE + (byte) mode_stdchar::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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 nomodify byte*) BG_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] { } ) always clobbers reg byte a
Statement [844] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 [ ] ( main:2::menu:9::mode_stdchar:38 [ ] { } ) always clobbers reg byte a
Statement [847] (byte~) mode_stdchar::$2 ← (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::$2 ] ( 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::$2 ] { } ) always clobbers reg byte a
Statement [849] *((byte*) mode_stdchar::col#2) ← (byte~) mode_stdchar::$3 [ 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::$4 ← (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::$4 ] ( 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::$4 ] { } ) always clobbers reg byte a
Statement [852] (byte~) mode_stdchar::$5 ← (byte~) mode_stdchar::$4 << (byte) 4 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$5 ] ( 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::$5 ] { } ) always clobbers reg byte a
Statement [853] (byte~) mode_stdchar::$6 ← (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::$5 mode_stdchar::$6 ] ( 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::$5 mode_stdchar::$6 ] { } ) always clobbers reg byte a
Statement [855] *((byte*) mode_stdchar::ch#2) ← (byte~) mode_stdchar::$7 [ 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#21 print_line_cursor#17 ] ( main:2::menu:9::print_str_lines:31 [ print_str_lines::str#2 print_char_cursor#21 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#35 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#35 print_str_lines::ch#0 ] { } ) always clobbers reg byte a reg byte y
Statement [878] (byte*) print_char_cursor#102 ← (byte*) print_line_cursor#19 [ print_str_lines::str#0 print_char_cursor#102 print_line_cursor#19 ] ( main:2::menu:9::print_str_lines:31 [ print_str_lines::str#0 print_char_cursor#102 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#36 ] ( main:2::menu:9::print_str_lines:31::print_ln:877 [ print_str_lines::str#0 print_line_cursor#19 print_char_cursor#36 ] { } ) always clobbers reg byte a
Statement [882] if((byte*) print_line_cursor#19<(byte*) print_char_cursor#36) goto print_ln::@1 [ print_line_cursor#19 print_char_cursor#36 ] ( main:2::menu:9::print_str_lines:31::print_ln:877 [ print_str_lines::str#0 print_line_cursor#19 print_char_cursor#36 ] { } ) always clobbers reg byte a
Statement [884] *((byte*) print_char_cursor#35) ← (byte) print_char::ch#0 [ print_char_cursor#35 ] ( main:2::menu:9::print_str_lines:31::print_char:873 [ print_line_cursor#17 print_str_lines::str#0 print_str_lines::ch#0 print_char_cursor#35 ] { { print_char::ch#0 = print_str_lines::ch#0 } } ) always clobbers reg byte y
Statement [892] if((byte*) memset::dst#2!=(const byte*) memset::end#0) goto memset::@2 [ memset::dst#2 ] ( main:2::menu:9::print_cls:29::memset:888 [ memset::dst#2 ] { } ) always clobbers reg byte a
Statement [894] *((byte*) memset::dst#2) ← (const byte) memset::c#0 [ memset::dst#2 ] ( main:2::menu:9::print_cls:29::memset:888 [ memset::dst#2 ] { } ) always clobbers reg byte a reg byte y
Potential registers zp[1]:2 [ menu::i#2 menu::i#1 ] : zp[1]:2 , reg byte x , reg byte y ,
Potential registers zp[2]:3 [ menu::c#2 menu::c#1 ] : zp[2]:3 ,
Potential registers zp[1]:5 [ mode_8bppchunkybmm::i#2 mode_8bppchunkybmm::i#1 ] : zp[1]:5 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ] : zp[1]:6 , reg byte x ,
Potential registers zp[2]:7 [ mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::x#1 ] : zp[2]:7 ,
Potential registers zp[1]:9 [ mode_8bppchunkybmm::gfxbCpuBank#4 mode_8bppchunkybmm::gfxbCpuBank#7 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::gfxbCpuBank#2 ] : zp[1]:9 , reg byte x ,
Potential registers zp[2]:10 [ mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::gfxb#1 ] : zp[2]:10 ,
Potential registers zp[1]:12 [ dtv_control#114 dtv_control#144 dtv_control#17 ] : zp[1]:12 , reg byte x , reg byte y ,
Potential registers zp[1]: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[1]:13 , reg byte x , reg byte y ,
Potential registers zp[1]:14 [ keyboard_key_pressed::key#20 ] : zp[1]:14 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:15 [ dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#1 ] : zp[1]:15 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:16 [ mode_8bpppixelcell::i#2 mode_8bpppixelcell::i#1 ] : zp[1]:16 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 ] : zp[1]:17 , reg byte x ,
Potential registers zp[1]:18 [ mode_8bpppixelcell::ax#2 mode_8bpppixelcell::ax#1 ] : zp[1]:18 , reg byte x ,
Potential registers zp[2]:19 [ mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::gfxa#1 ] : zp[2]:19 ,
Potential registers zp[1]:21 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ] : zp[1]:21 , reg byte x ,
Potential registers zp[2]:22 [ mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::chargen#4 mode_8bpppixelcell::chargen#1 ] : zp[2]:22 ,
Potential registers zp[1]:24 [ mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ] : zp[1]:24 , reg byte x ,
Potential registers zp[1]:25 [ mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ] : zp[1]:25 , reg byte a , reg byte x ,
Potential registers zp[2]:26 [ mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::gfxb#7 mode_8bpppixelcell::gfxb#1 ] : zp[2]:26 ,
Potential registers zp[1]:28 [ mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ] : zp[1]:28 , reg byte x ,
Potential registers zp[1]:29 [ mode_8bpppixelcell::cp#2 mode_8bpppixelcell::cp#1 ] : zp[1]:29 , reg byte a , reg byte x ,
Potential registers zp[1]:30 [ mode_8bpppixelcell::c#2 mode_8bpppixelcell::c#3 ] : zp[1]:30 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:31 [ mode_sixsfred::i#2 mode_sixsfred::i#1 ] : zp[1]:31 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:32 [ mode_sixsfred::cy#4 mode_sixsfred::cy#1 ] : zp[1]:32 , reg byte x ,
Potential registers zp[1]:33 [ mode_sixsfred::cx#2 mode_sixsfred::cx#1 ] : zp[1]:33 , reg byte x ,
Potential registers zp[2]:34 [ mode_sixsfred::col#2 mode_sixsfred::col#3 mode_sixsfred::col#1 ] : zp[2]:34 ,
Potential registers zp[1]:36 [ mode_sixsfred::ay#4 mode_sixsfred::ay#1 ] : zp[1]:36 , reg byte x ,
Potential registers zp[2]:37 [ mode_sixsfred::gfxa#2 mode_sixsfred::gfxa#3 mode_sixsfred::gfxa#1 ] : zp[2]:37 ,
Potential registers zp[1]:39 [ mode_sixsfred::ax#2 mode_sixsfred::ax#1 ] : zp[1]:39 , reg byte x ,
Potential registers zp[1]:40 [ mode_sixsfred::by#4 mode_sixsfred::by#1 ] : zp[1]:40 , reg byte x ,
Potential registers zp[2]:41 [ mode_sixsfred::gfxb#2 mode_sixsfred::gfxb#3 mode_sixsfred::gfxb#1 ] : zp[2]:41 ,
Potential registers zp[1]:43 [ mode_sixsfred::bx#2 mode_sixsfred::bx#1 ] : zp[1]:43 , reg byte x ,
Potential registers zp[1]:44 [ mode_twoplanebitmap::i#2 mode_twoplanebitmap::i#1 ] : zp[1]:44 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:45 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 ] : zp[1]:45 , reg byte x ,
Potential registers zp[1]:46 [ mode_twoplanebitmap::cx#2 mode_twoplanebitmap::cx#1 ] : zp[1]:46 , reg byte x ,
Potential registers zp[2]:47 [ mode_twoplanebitmap::col#2 mode_twoplanebitmap::col#3 mode_twoplanebitmap::col#1 ] : zp[2]:47 ,
Potential registers zp[1]:49 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 ] : zp[1]:49 , reg byte x ,
Potential registers zp[2]:50 [ mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::gfxa#7 mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::gfxa#1 ] : zp[2]:50 ,
Potential registers zp[1]:52 [ mode_twoplanebitmap::ax#2 mode_twoplanebitmap::ax#1 ] : zp[1]:52 , reg byte x ,
Potential registers zp[1]:53 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 ] : zp[1]:53 , reg byte x ,
Potential registers zp[2]:54 [ mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::gfxb#3 mode_twoplanebitmap::gfxb#1 ] : zp[2]:54 ,
Potential registers zp[1]:56 [ mode_twoplanebitmap::bx#2 mode_twoplanebitmap::bx#1 ] : zp[1]:56 , reg byte x ,
Potential registers zp[1]:57 [ mode_sixsfred2::i#2 mode_sixsfred2::i#1 ] : zp[1]:57 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:58 [ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 ] : zp[1]:58 , reg byte x ,
Potential registers zp[1]:59 [ mode_sixsfred2::cx#2 mode_sixsfred2::cx#1 ] : zp[1]:59 , reg byte x ,
Potential registers zp[2]:60 [ mode_sixsfred2::col#2 mode_sixsfred2::col#3 mode_sixsfred2::col#1 ] : zp[2]:60 ,
Potential registers zp[1]:62 [ mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 ] : zp[1]:62 , reg byte x ,
Potential registers zp[2]:63 [ mode_sixsfred2::gfxa#2 mode_sixsfred2::gfxa#3 mode_sixsfred2::gfxa#1 ] : zp[2]:63 ,
Potential registers zp[1]:65 [ mode_sixsfred2::ax#2 mode_sixsfred2::ax#1 ] : zp[1]:65 , reg byte x ,
Potential registers zp[1]:66 [ mode_sixsfred2::by#4 mode_sixsfred2::by#1 ] : zp[1]:66 , reg byte x ,
Potential registers zp[2]:67 [ mode_sixsfred2::gfxb#2 mode_sixsfred2::gfxb#3 mode_sixsfred2::gfxb#1 ] : zp[2]:67 ,
Potential registers zp[1]:69 [ mode_sixsfred2::bx#2 mode_sixsfred2::bx#1 ] : zp[1]:69 , reg byte x ,
Potential registers zp[1]:70 [ mode_hicolmcchar::i#2 mode_hicolmcchar::i#1 ] : zp[1]:70 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:71 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 ] : zp[1]:71 , reg byte x ,
Potential registers zp[1]:72 [ mode_hicolmcchar::cx#2 mode_hicolmcchar::cx#1 ] : zp[1]:72 , reg byte x ,
Potential registers zp[2]:73 [ mode_hicolmcchar::col#2 mode_hicolmcchar::col#3 mode_hicolmcchar::col#1 ] : zp[2]:73 ,
Potential registers zp[2]:75 [ mode_hicolmcchar::ch#2 mode_hicolmcchar::ch#3 mode_hicolmcchar::ch#1 ] : zp[2]:75 ,
Potential registers zp[1]:77 [ mode_hicolecmchar::i#2 mode_hicolecmchar::i#1 ] : zp[1]:77 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:78 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 ] : zp[1]:78 , reg byte x ,
Potential registers zp[1]:79 [ mode_hicolecmchar::cx#2 mode_hicolecmchar::cx#1 ] : zp[1]:79 , reg byte x ,
Potential registers zp[2]:80 [ mode_hicolecmchar::col#2 mode_hicolecmchar::col#3 mode_hicolecmchar::col#1 ] : zp[2]:80 ,
Potential registers zp[2]:82 [ mode_hicolecmchar::ch#2 mode_hicolecmchar::ch#3 mode_hicolecmchar::ch#1 ] : zp[2]:82 ,
Potential registers zp[1]:84 [ mode_hicolstdchar::i#2 mode_hicolstdchar::i#1 ] : zp[1]:84 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:85 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 ] : zp[1]:85 , reg byte x ,
Potential registers zp[1]:86 [ mode_hicolstdchar::cx#2 mode_hicolstdchar::cx#1 ] : zp[1]:86 , reg byte x ,
Potential registers zp[2]:87 [ mode_hicolstdchar::col#2 mode_hicolstdchar::col#3 mode_hicolstdchar::col#1 ] : zp[2]:87 ,
Potential registers zp[2]:89 [ mode_hicolstdchar::ch#2 mode_hicolstdchar::ch#3 mode_hicolstdchar::ch#1 ] : zp[2]:89 ,
Potential registers zp[1]:91 [ mode_stdbitmap::i#2 mode_stdbitmap::i#1 ] : zp[1]:91 , reg byte x , reg byte y ,
Potential registers zp[1]:92 [ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 ] : zp[1]:92 , reg byte x ,
Potential registers zp[1]:93 [ mode_stdbitmap::cx#2 mode_stdbitmap::cx#1 ] : zp[1]:93 , reg byte x ,
Potential registers zp[2]:94 [ mode_stdbitmap::ch#2 mode_stdbitmap::ch#3 mode_stdbitmap::ch#1 ] : zp[2]:94 ,
Potential registers zp[1]:96 [ mode_stdbitmap::l#2 mode_stdbitmap::l#1 ] : zp[1]:96 , reg byte x ,
Potential registers zp[1]:97 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#1 bitmap_line_xdyi::yd#0 ] : zp[1]:97 , reg byte x ,
Potential registers zp[1]:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::xd#0 ] : zp[1]:98 , reg byte x ,
Potential registers zp[1]:99 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::x1#0 ] : zp[1]:99 , reg byte x ,
Potential registers zp[1]:100 [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#2 ] : zp[1]:100 , reg byte x ,
Potential registers zp[1]:101 [ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 ] : zp[1]:101 , reg byte x ,
Potential registers zp[1]: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[1]:102 , reg byte x ,
Potential registers zp[1]:103 [ bitmap_plot::x#4 bitmap_plot::x#1 bitmap_plot::x#0 bitmap_plot::x#3 bitmap_plot::x#2 ] : zp[1]:103 , reg byte x , reg byte y ,
Potential registers zp[1]:104 [ bitmap_plot::y#4 bitmap_plot::y#1 bitmap_plot::y#0 bitmap_plot::y#3 bitmap_plot::y#2 ] : zp[1]:104 , reg byte x , reg byte y ,
Potential registers zp[1]:105 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 ] : zp[1]:105 , reg byte x ,
Potential registers zp[1]:106 [ bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 ] : zp[1]:106 , reg byte x ,
Potential registers zp[1]:107 [ bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 ] : zp[1]:107 , reg byte x ,
Potential registers zp[1]: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[1]:108 , reg byte x ,
Potential registers zp[1]: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[1]:109 , reg byte x ,
Potential registers zp[1]: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[1]:110 , reg byte x ,
Potential registers zp[1]:111 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#1 bitmap_line_xdyd::yd#0 ] : zp[1]:111 , reg byte x ,
Potential registers zp[1]:112 [ bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#1 bitmap_line_xdyd::xd#0 ] : zp[1]:112 , reg byte x ,
Potential registers zp[1]:113 [ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::x1#0 ] : zp[1]:113 , reg byte x ,
Potential registers zp[1]:114 [ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#2 ] : zp[1]:114 , reg byte x ,
Potential registers zp[1]:115 [ bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 ] : zp[1]:115 , reg byte x ,
Potential registers zp[1]: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[1]:116 , reg byte x ,
Potential registers zp[1]:117 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ] : zp[1]:117 , reg byte x ,
Potential registers zp[1]:118 [ bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 ] : zp[1]:118 , reg byte x ,
Potential registers zp[1]:119 [ bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 ] : zp[1]:119 , reg byte x ,
Potential registers zp[1]: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[1]:120 , reg byte x ,
Potential registers zp[1]: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[1]:121 , reg byte x ,
Potential registers zp[1]: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[1]:122 , reg byte x ,
Potential registers zp[1]:123 [ bitmap_clear::y#4 bitmap_clear::y#1 ] : zp[1]:123 , reg byte x ,
Potential registers zp[2]:124 [ bitmap_clear::bitmap#2 bitmap_clear::bitmap#3 bitmap_clear::bitmap#5 bitmap_clear::bitmap#1 ] : zp[2]:124 ,
Potential registers zp[1]:126 [ bitmap_clear::x#2 bitmap_clear::x#1 ] : zp[1]:126 , reg byte x ,
Potential registers zp[1]:127 [ bitmap_init::x#2 bitmap_init::x#1 ] : zp[1]:127 , reg byte x , reg byte y ,
Potential registers zp[1]:128 [ bitmap_init::bits#3 bitmap_init::bits#4 bitmap_init::bits#1 ] : zp[1]:128 , reg byte x , reg byte y ,
Potential registers zp[1]:129 [ bitmap_init::y#2 bitmap_init::y#1 ] : zp[1]:129 , reg byte x , reg byte y ,
Potential registers zp[2]:130 [ bitmap_init::yoffs#2 bitmap_init::yoffs#4 bitmap_init::yoffs#1 ] : zp[2]:130 ,
Potential registers zp[1]:132 [ mode_mcchar::i#2 mode_mcchar::i#1 ] : zp[1]:132 , reg byte x , reg byte y ,
Potential registers zp[1]:133 [ mode_mcchar::cy#4 mode_mcchar::cy#1 ] : zp[1]:133 , reg byte x ,
Potential registers zp[1]:134 [ mode_mcchar::cx#2 mode_mcchar::cx#1 ] : zp[1]:134 , reg byte x ,
Potential registers zp[2]:135 [ mode_mcchar::col#2 mode_mcchar::col#3 mode_mcchar::col#1 ] : zp[2]:135 ,
Potential registers zp[2]:137 [ mode_mcchar::ch#2 mode_mcchar::ch#3 mode_mcchar::ch#1 ] : zp[2]:137 ,
Potential registers zp[1]:139 [ mode_ecmchar::i#2 mode_ecmchar::i#1 ] : zp[1]:139 , reg byte x , reg byte y ,
Potential registers zp[1]:140 [ mode_ecmchar::cy#4 mode_ecmchar::cy#1 ] : zp[1]:140 , reg byte x ,
Potential registers zp[1]:141 [ mode_ecmchar::cx#2 mode_ecmchar::cx#1 ] : zp[1]:141 , reg byte x ,
Potential registers zp[2]:142 [ mode_ecmchar::col#2 mode_ecmchar::col#3 mode_ecmchar::col#1 ] : zp[2]:142 ,
Potential registers zp[2]:144 [ mode_ecmchar::ch#2 mode_ecmchar::ch#3 mode_ecmchar::ch#1 ] : zp[2]:144 ,
Potential registers zp[1]:146 [ mode_stdchar::i#2 mode_stdchar::i#1 ] : zp[1]:146 , reg byte x , reg byte y ,
Potential registers zp[1]:147 [ mode_stdchar::cy#4 mode_stdchar::cy#1 ] : zp[1]:147 , reg byte x ,
Potential registers zp[1]:148 [ mode_stdchar::cx#2 mode_stdchar::cx#1 ] : zp[1]:148 , reg byte x ,
Potential registers zp[2]:149 [ mode_stdchar::col#2 mode_stdchar::col#3 mode_stdchar::col#1 ] : zp[2]:149 ,
Potential registers zp[2]:151 [ mode_stdchar::ch#2 mode_stdchar::ch#3 mode_stdchar::ch#1 ] : zp[2]:151 ,
Potential registers zp[2]:153 [ print_str_lines::str#3 print_str_lines::str#2 print_str_lines::str#0 ] : zp[2]:153 ,
Potential registers zp[2]:155 [ print_char_cursor#35 print_char_cursor#21 print_char_cursor#102 print_char_cursor#36 print_char_cursor#25 ] : zp[2]:155 ,
Potential registers zp[2]:157 [ print_line_cursor#18 print_line_cursor#17 print_line_cursor#19 ] : zp[2]:157 ,
Potential registers zp[2]:159 [ memset::dst#2 memset::dst#1 ] : zp[2]:159 ,
Potential registers zp[1]:161 [ keyboard_key_pressed::return#2 ] : zp[1]:161 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:162 [ menu::$5 ] : zp[1]:162 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:163 [ keyboard_key_pressed::return#24 ] : zp[1]:163 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:164 [ menu::$9 ] : zp[1]:164 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:165 [ keyboard_key_pressed::return#25 ] : zp[1]:165 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:166 [ menu::$13 ] : zp[1]:166 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:167 [ keyboard_key_pressed::return#26 ] : zp[1]:167 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:168 [ menu::$17 ] : zp[1]:168 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:169 [ keyboard_key_pressed::return#27 ] : zp[1]:169 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:170 [ menu::$21 ] : zp[1]:170 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:171 [ keyboard_key_pressed::return#28 ] : zp[1]:171 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:172 [ menu::$25 ] : zp[1]:172 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:173 [ keyboard_key_pressed::return#29 ] : zp[1]:173 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:174 [ menu::$29 ] : zp[1]:174 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:175 [ keyboard_key_pressed::return#30 ] : zp[1]:175 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:176 [ menu::$33 ] : zp[1]:176 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:177 [ keyboard_key_pressed::return#10 ] : zp[1]:177 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:178 [ menu::$37 ] : zp[1]:178 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:179 [ keyboard_key_pressed::return#11 ] : zp[1]:179 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:180 [ menu::$41 ] : zp[1]:180 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:181 [ keyboard_key_pressed::return#12 ] : zp[1]:181 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:182 [ menu::$45 ] : zp[1]:182 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:183 [ keyboard_key_pressed::return#13 ] : zp[1]:183 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:184 [ menu::$49 ] : zp[1]:184 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[2]:185 [ mode_8bppchunkybmm::$7 ] : zp[2]:185 ,
Potential registers zp[1]:187 [ mode_8bppchunkybmm::c#0 ] : zp[1]:187 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:188 [ keyboard_key_pressed::return#14 ] : zp[1]:188 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:189 [ mode_ctrl::$1 ] : zp[1]:189 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:190 [ keyboard_key_pressed::return#15 ] : zp[1]:190 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:191 [ mode_ctrl::$4 ] : zp[1]:191 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:192 [ keyboard_key_pressed::return#16 ] : zp[1]:192 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:193 [ mode_ctrl::$8 ] : zp[1]:193 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:194 [ keyboard_key_pressed::return#17 ] : zp[1]:194 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:195 [ mode_ctrl::$12 ] : zp[1]:195 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:196 [ keyboard_key_pressed::return#18 ] : zp[1]:196 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:197 [ mode_ctrl::$16 ] : zp[1]:197 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:198 [ keyboard_key_pressed::return#19 ] : zp[1]:198 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:199 [ mode_ctrl::$20 ] : zp[1]:199 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:200 [ keyboard_key_pressed::return#20 ] : zp[1]:200 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:201 [ mode_ctrl::$24 ] : zp[1]:201 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:202 [ keyboard_key_pressed::return#21 ] : zp[1]:202 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:203 [ mode_ctrl::$28 ] : zp[1]:203 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:204 [ keyboard_key_pressed::colidx#0 ] : zp[1]:204 , reg byte x , reg byte y ,
Potential registers zp[1]:205 [ keyboard_key_pressed::rowidx#0 ] : zp[1]:205 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:206 [ keyboard_matrix_read::rowid#0 ] : zp[1]:206 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:207 [ keyboard_matrix_read::return#2 ] : zp[1]:207 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:208 [ keyboard_key_pressed::$2 ] : zp[1]:208 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:209 [ keyboard_key_pressed::return#0 ] : zp[1]:209 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:210 [ keyboard_matrix_read::return#0 ] : zp[1]:210 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:211 [ mode_8bpppixelcell::$2 ] : zp[1]:211 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:212 [ mode_8bpppixelcell::$3 ] : zp[1]:212 , reg byte x , reg byte y ,
Potential registers zp[1]:213 [ mode_8bpppixelcell::$4 ] : zp[1]:213 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:214 [ mode_8bpppixelcell::$5 ] : zp[1]:214 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:215 [ mode_8bpppixelcell::$8 ] : zp[1]:215 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:216 [ mode_sixsfred::$2 ] : zp[1]:216 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:217 [ mode_sixsfred::$3 ] : zp[1]:217 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:218 [ mode_sixsfred::$6 ] : zp[1]:218 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:219 [ mode_sixsfred::row#0 ] : zp[1]:219 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:220 [ mode_twoplanebitmap::$2 ] : zp[1]:220 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:221 [ mode_twoplanebitmap::$3 ] : zp[1]:221 , reg byte x , reg byte y ,
Potential registers zp[1]:222 [ mode_twoplanebitmap::$4 ] : zp[1]:222 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:223 [ mode_twoplanebitmap::$5 ] : zp[1]:223 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:224 [ mode_twoplanebitmap::$8 ] : zp[1]:224 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:225 [ mode_sixsfred2::$2 ] : zp[1]:225 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:226 [ mode_sixsfred2::$3 ] : zp[1]:226 , reg byte x , reg byte y ,
Potential registers zp[1]:227 [ mode_sixsfred2::$4 ] : zp[1]:227 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:228 [ mode_sixsfred2::$5 ] : zp[1]:228 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:229 [ mode_sixsfred2::$8 ] : zp[1]:229 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:230 [ mode_sixsfred2::row#0 ] : zp[1]:230 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:231 [ mode_hicolmcchar::$2 ] : zp[1]:231 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:232 [ mode_hicolmcchar::$3 ] : zp[1]:232 , reg byte x , reg byte y ,
Potential registers zp[1]:233 [ mode_hicolmcchar::$4 ] : zp[1]:233 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:234 [ mode_hicolmcchar::v#0 ] : zp[1]:234 , reg byte a , reg byte x ,
Potential registers zp[1]:235 [ mode_hicolecmchar::$2 ] : zp[1]:235 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:236 [ mode_hicolecmchar::$3 ] : zp[1]:236 , reg byte x , reg byte y ,
Potential registers zp[1]:237 [ mode_hicolecmchar::$4 ] : zp[1]:237 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:238 [ mode_hicolecmchar::v#0 ] : zp[1]:238 , reg byte a , reg byte x ,
Potential registers zp[1]:239 [ mode_hicolstdchar::$2 ] : zp[1]:239 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:240 [ mode_hicolstdchar::$3 ] : zp[1]:240 , reg byte x , reg byte y ,
Potential registers zp[1]:241 [ mode_hicolstdchar::$4 ] : zp[1]:241 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:242 [ mode_hicolstdchar::v#0 ] : zp[1]:242 , reg byte a , reg byte x ,
Potential registers zp[1]:243 [ mode_stdbitmap::$4 ] : zp[1]:243 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:244 [ mode_stdbitmap::col#0 ] : zp[1]:244 , reg byte x , reg byte y ,
Potential registers zp[1]:245 [ mode_stdbitmap::col2#0 ] : zp[1]:245 , reg byte x , reg byte y ,
Potential registers zp[1]:246 [ mode_stdbitmap::$7 ] : zp[1]:246 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:247 [ mode_stdbitmap::$8 ] : zp[1]:247 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:248 [ bitmap_line::x0#0 ] : zp[1]:248 , reg byte x , reg byte y ,
Potential registers zp[1]:249 [ bitmap_line::x1#0 ] : zp[1]:249 , reg byte x , reg byte y ,
Potential registers zp[1]:250 [ bitmap_line::y0#0 ] : zp[1]:250 , reg byte x , reg byte y ,
Potential registers zp[1]:251 [ bitmap_line::y1#0 ] : zp[1]:251 , reg byte x , reg byte y ,
Potential registers zp[1]:252 [ bitmap_line::xd#2 ] : zp[1]:252 , reg byte x , reg byte y ,
Potential registers zp[1]:253 [ bitmap_line::yd#2 ] : zp[1]:253 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:254 [ bitmap_line::yd#1 ] : zp[1]:254 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:255 [ bitmap_line::xd#1 ] : zp[1]:255 , reg byte x , reg byte y ,
Potential registers zp[1]:256 [ bitmap_line::yd#10 ] : zp[1]:256 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:257 [ bitmap_line::yd#11 ] : zp[1]:257 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:258 [ bitmap_line_xdyi::$6 ] : zp[1]:258 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[2]:259 [ bitmap_plot::plotter_x#0 ] : zp[2]:259 ,
Potential registers zp[2]:261 [ bitmap_plot::plotter_y#0 ] : zp[2]:261 ,
Potential registers zp[2]:263 [ bitmap_plot::plotter#0 ] : zp[2]:263 ,
Potential registers zp[1]:265 [ bitmap_plot::$1 ] : zp[1]:265 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:266 [ bitmap_line_ydxi::$6 ] : zp[1]:266 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:267 [ bitmap_line_xdyd::$6 ] : zp[1]:267 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:268 [ bitmap_line_ydxd::$6 ] : zp[1]:268 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[2]:269 [ bitmap_clear::bitmap#0 ] : zp[2]:269 ,
Potential registers zp[1]:271 [ bitmap_init::$0 ] : zp[1]:271 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:272 [ bitmap_init::$10 ] : zp[1]:272 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:273 [ bitmap_init::$7 ] : zp[1]:273 , reg byte a , reg byte x , reg byte y , reg byte alu ,
Potential registers zp[1]:274 [ bitmap_init::$8 ] : zp[1]:274 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:275 [ bitmap_init::$9 ] : zp[1]:275 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:276 [ mode_mcchar::$2 ] : zp[1]:276 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:277 [ mode_mcchar::$3 ] : zp[1]:277 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:278 [ mode_mcchar::$4 ] : zp[1]:278 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:279 [ mode_mcchar::$5 ] : zp[1]:279 , reg byte x , reg byte y ,
Potential registers zp[1]:280 [ mode_mcchar::$6 ] : zp[1]:280 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:281 [ mode_mcchar::$7 ] : zp[1]:281 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:282 [ mode_ecmchar::$2 ] : zp[1]:282 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:283 [ mode_ecmchar::$3 ] : zp[1]:283 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:284 [ mode_ecmchar::$4 ] : zp[1]:284 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:285 [ mode_ecmchar::$5 ] : zp[1]:285 , reg byte x , reg byte y ,
Potential registers zp[1]:286 [ mode_ecmchar::$6 ] : zp[1]:286 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:287 [ mode_ecmchar::$7 ] : zp[1]:287 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:288 [ mode_stdchar::$2 ] : zp[1]:288 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:289 [ mode_stdchar::$3 ] : zp[1]:289 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:290 [ mode_stdchar::$4 ] : zp[1]:290 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:291 [ mode_stdchar::$5 ] : zp[1]:291 , reg byte x , reg byte y ,
Potential registers zp[1]:292 [ mode_stdchar::$6 ] : zp[1]:292 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:293 [ mode_stdchar::$7 ] : zp[1]:293 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:294 [ print_str_lines::ch#0 ] : zp[1]:294 , reg byte a , reg byte x ,
Potential registers zp[1]:295 [ print_char::ch#0 ] : zp[1]:295 , reg byte a , reg byte x , reg byte y ,
REGISTER UPLIFT SCOPES
Uplift Scope [bitmap_plot] 2,000,000,000,011: zp[1]:104 [ bitmap_plot::y#4 bitmap_plot::y#1 bitmap_plot::y#0 bitmap_plot::y#3 bitmap_plot::y#2 ] 2,000,000,000,002: zp[2]:261 [ bitmap_plot::plotter_y#0 ] 2,000,000,000,002: zp[1]:265 [ bitmap_plot::$1 ] 1,250,000,000,005.75: zp[1]:103 [ bitmap_plot::x#4 bitmap_plot::x#1 bitmap_plot::x#0 bitmap_plot::x#3 bitmap_plot::x#2 ] 1,000,000,000,001: zp[2]:259 [ bitmap_plot::plotter_x#0 ] 500,000,000,000.5: zp[2]:263 [ bitmap_plot::plotter#0 ]
Uplift Scope [bitmap_line_xdyi] 473,553,333,340.27: zp[1]: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 ] 257,227,142,862.36: zp[1]:101 [ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 ] 200,000,000,002: zp[1]:258 [ bitmap_line_xdyi::$6 ] 112,593,000,003.67: zp[1]:100 [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#2 ] 14,307,142,859.43: zp[1]:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::xd#0 ] 7,191,428,575.71: zp[1]:97 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#1 bitmap_line_xdyi::yd#0 ] 7,157,619,049.17: zp[1]:99 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::x1#0 ]
Uplift Scope [bitmap_line_xdyd] 473,553,333,340.27: zp[1]: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 ] 257,227,142,862.36: zp[1]:115 [ bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 ] 200,000,000,002: zp[1]:267 [ bitmap_line_xdyd::$6 ] 112,593,000,003.67: zp[1]:114 [ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#2 ] 14,307,142,859.43: zp[1]:112 [ bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#1 bitmap_line_xdyd::xd#0 ] 7,191,428,575.71: zp[1]:111 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#1 bitmap_line_xdyd::yd#0 ] 7,157,619,049.17: zp[1]:113 [ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::x1#0 ]
Uplift Scope [bitmap_line_ydxi] 473,553,333,340.27: zp[1]: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 ] 257,227,142,862.36: zp[1]: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 ] 200,000,000,002: zp[1]:266 [ bitmap_line_ydxi::$6 ] 112,593,000,003.67: zp[1]: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 ] 14,307,142,859.43: zp[1]:106 [ bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 ] 7,191,428,575.71: zp[1]:105 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 ] 7,157,619,049.17: zp[1]:107 [ bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 ]
Uplift Scope [bitmap_line_ydxd] 473,553,333,340.27: zp[1]: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 ] 257,227,142,862.36: zp[1]: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 ] 200,000,000,002: zp[1]:268 [ bitmap_line_ydxd::$6 ] 112,593,000,003.67: zp[1]: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 ] 14,307,142,859.43: zp[1]:118 [ bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 ] 7,191,428,575.71: zp[1]:117 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ] 7,157,619,049.17: zp[1]:119 [ bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 ]
Uplift Scope [] 26,011,316,670.83: zp[2]:157 [ print_line_cursor#18 print_line_cursor#17 print_line_cursor#19 ] 1,509,357,147.93: zp[2]:155 [ print_char_cursor#35 print_char_cursor#21 print_char_cursor#102 print_char_cursor#36 print_char_cursor#25 ] 14,807,844.92: zp[1]:12 [ dtv_control#114 dtv_control#144 dtv_control#17 ]
Uplift Scope [keyboard_matrix_read] 11,000,000,002: zp[1]:206 [ keyboard_matrix_read::rowid#0 ] 3,666,666,667.33: zp[1]:210 [ keyboard_matrix_read::return#0 ] 2,000,000,002: zp[1]:207 [ keyboard_matrix_read::return#2 ]
Uplift Scope [keyboard_key_pressed] 2,000,000,002: zp[1]:205 [ keyboard_key_pressed::rowidx#0 ] 2,000,000,002: zp[1]:208 [ keyboard_key_pressed::$2 ] 1,000,000,001: zp[1]:14 [ keyboard_key_pressed::key#20 ] 333,333,333.67: zp[1]:204 [ keyboard_key_pressed::colidx#0 ] 200,000,002: zp[1]:188 [ keyboard_key_pressed::return#14 ] 200,000,002: zp[1]:190 [ keyboard_key_pressed::return#15 ] 200,000,002: zp[1]:192 [ keyboard_key_pressed::return#16 ] 200,000,002: zp[1]:194 [ keyboard_key_pressed::return#17 ] 200,000,002: zp[1]:196 [ keyboard_key_pressed::return#18 ] 200,000,002: zp[1]:198 [ keyboard_key_pressed::return#19 ] 200,000,002: zp[1]:200 [ keyboard_key_pressed::return#20 ] 200,000,002: zp[1]:202 [ keyboard_key_pressed::return#21 ] 81,872,728.23: zp[1]:209 [ keyboard_key_pressed::return#0 ] 200,002: zp[1]:161 [ keyboard_key_pressed::return#2 ] 200,002: zp[1]:163 [ keyboard_key_pressed::return#24 ] 200,002: zp[1]:165 [ keyboard_key_pressed::return#25 ] 200,002: zp[1]:167 [ keyboard_key_pressed::return#26 ] 200,002: zp[1]:169 [ keyboard_key_pressed::return#27 ] 200,002: zp[1]:171 [ keyboard_key_pressed::return#28 ] 200,002: zp[1]:173 [ keyboard_key_pressed::return#29 ] 200,002: zp[1]:175 [ keyboard_key_pressed::return#30 ] 200,002: zp[1]:177 [ keyboard_key_pressed::return#10 ] 200,002: zp[1]:179 [ keyboard_key_pressed::return#11 ] 200,002: zp[1]:181 [ keyboard_key_pressed::return#12 ] 200,002: zp[1]:183 [ keyboard_key_pressed::return#13 ]
Uplift Scope [mode_ctrl] 1,767,500,018.35: zp[1]: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 ] 200,000,002: zp[1]:189 [ mode_ctrl::$1 ] 200,000,002: zp[1]:191 [ mode_ctrl::$4 ] 200,000,002: zp[1]:193 [ mode_ctrl::$8 ] 200,000,002: zp[1]:195 [ mode_ctrl::$12 ] 200,000,002: zp[1]:197 [ mode_ctrl::$16 ] 200,000,002: zp[1]:199 [ mode_ctrl::$20 ] 200,000,002: zp[1]:201 [ mode_ctrl::$24 ] 200,000,002: zp[1]:203 [ mode_ctrl::$28 ]
Uplift Scope [mode_8bpppixelcell] 400,000,004: zp[1]:30 [ mode_8bpppixelcell::c#2 mode_8bpppixelcell::c#3 ] 200,000,002: zp[1]:215 [ mode_8bpppixelcell::$8 ] 172,222,223.94: zp[1]:29 [ mode_8bpppixelcell::cp#2 mode_8bpppixelcell::cp#1 ] 104,285,716.36: zp[1]:25 [ mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ] 84,111,115.22: zp[2]:26 [ mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::gfxb#7 mode_8bpppixelcell::gfxb#1 ] 77,892,861.21: zp[1]:28 [ mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ] 20,000,002: zp[1]:211 [ mode_8bpppixelcell::$2 ] 20,000,002: zp[1]:213 [ mode_8bpppixelcell::$4 ] 20,000,002: zp[1]:214 [ mode_8bpppixelcell::$5 ] 19,285,716.21: zp[1]:18 [ mode_8bpppixelcell::ax#2 mode_8bpppixelcell::ax#1 ] 18,812,504.19: zp[2]:22 [ mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::chargen#4 mode_8bpppixelcell::chargen#1 ] 16,428,573.07: zp[1]:24 [ mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ] 11,366,669.93: zp[2]:19 [ mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::gfxa#1 ] 10,000,001: zp[1]:212 [ mode_8bpppixelcell::$3 ] 3,500,003.5: zp[1]:16 [ mode_8bpppixelcell::i#2 mode_8bpppixelcell::i#1 ] 2,700,001.8: zp[1]:17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 ] 1,617,648.68: zp[1]:21 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ]
Uplift Scope [bitmap_clear] 217,300,007.6: zp[2]:124 [ bitmap_clear::bitmap#2 bitmap_clear::bitmap#3 bitmap_clear::bitmap#5 bitmap_clear::bitmap#1 ] 216,666,668.83: zp[1]:126 [ bitmap_clear::x#2 bitmap_clear::x#1 ] 18,333,335.17: zp[1]:123 [ bitmap_clear::y#4 bitmap_clear::y#1 ] 100,001: zp[2]:269 [ bitmap_clear::bitmap#0 ]
Uplift Scope [mode_twoplanebitmap] 58,400,008: zp[2]:50 [ mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::gfxa#7 mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::gfxa#1 ] 21,700,004.6: zp[2]:54 [ mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::gfxb#3 mode_twoplanebitmap::gfxb#1 ] 21,666,668.83: zp[1]:56 [ mode_twoplanebitmap::bx#2 mode_twoplanebitmap::bx#1 ] 20,000,002: zp[1]:220 [ mode_twoplanebitmap::$2 ] 20,000,002: zp[1]:222 [ mode_twoplanebitmap::$4 ] 20,000,002: zp[1]:223 [ mode_twoplanebitmap::$5 ] 20,000,002: zp[1]:224 [ mode_twoplanebitmap::$8 ] 19,285,716.21: zp[1]:46 [ mode_twoplanebitmap::cx#2 mode_twoplanebitmap::cx#1 ] 17,500,001.75: zp[1]:52 [ mode_twoplanebitmap::ax#2 mode_twoplanebitmap::ax#1 ] 11,366,669.93: zp[2]:47 [ mode_twoplanebitmap::col#2 mode_twoplanebitmap::col#3 mode_twoplanebitmap::col#1 ] 10,000,001: zp[1]:221 [ mode_twoplanebitmap::$3 ] 3,500,003.5: zp[1]:44 [ mode_twoplanebitmap::i#2 mode_twoplanebitmap::i#1 ] 2,700,001.8: zp[1]:45 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 ] 2,590,910.86: zp[1]:49 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 ] 1,833,335.17: zp[1]:53 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 ]
Uplift Scope [mode_sixsfred2] 21,700,004.6: zp[2]:67 [ mode_sixsfred2::gfxb#2 mode_sixsfred2::gfxb#3 mode_sixsfred2::gfxb#1 ] 21,666,668.83: zp[1]:69 [ mode_sixsfred2::bx#2 mode_sixsfred2::bx#1 ] 20,000,002: zp[1]:225 [ mode_sixsfred2::$2 ] 20,000,002: zp[1]:227 [ mode_sixsfred2::$4 ] 20,000,002: zp[1]:228 [ mode_sixsfred2::$5 ] 20,000,002: zp[1]:229 [ mode_sixsfred2::$8 ] 20,000,002: zp[1]:230 [ mode_sixsfred2::row#0 ] 19,285,716.21: zp[1]:59 [ mode_sixsfred2::cx#2 mode_sixsfred2::cx#1 ] 19,000,001.9: zp[1]:65 [ mode_sixsfred2::ax#2 mode_sixsfred2::ax#1 ] 13,950,003.6: zp[2]:63 [ mode_sixsfred2::gfxa#2 mode_sixsfred2::gfxa#3 mode_sixsfred2::gfxa#1 ] 11,366,669.93: zp[2]:60 [ mode_sixsfred2::col#2 mode_sixsfred2::col#3 mode_sixsfred2::col#1 ] 10,000,001: zp[1]:226 [ mode_sixsfred2::$3 ] 3,500,003.5: zp[1]:57 [ mode_sixsfred2::i#2 mode_sixsfred2::i#1 ] 3,000,001.88: zp[1]:62 [ mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 ] 2,700,001.8: zp[1]:58 [ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 ] 1,833,335.17: zp[1]:66 [ mode_sixsfred2::by#4 mode_sixsfred2::by#1 ]
Uplift Scope [mode_sixsfred] 21,700,004.6: zp[2]:41 [ mode_sixsfred::gfxb#2 mode_sixsfred::gfxb#3 mode_sixsfred::gfxb#1 ] 21,666,668.83: zp[1]:43 [ mode_sixsfred::bx#2 mode_sixsfred::bx#1 ] 21,000,002.1: zp[1]:33 [ mode_sixsfred::cx#2 mode_sixsfred::cx#1 ] 20,000,002: zp[1]:216 [ mode_sixsfred::$2 ] 20,000,002: zp[1]:217 [ mode_sixsfred::$3 ] 20,000,002: zp[1]:218 [ mode_sixsfred::$6 ] 20,000,002: zp[1]:219 [ mode_sixsfred::row#0 ] 19,000,001.9: zp[1]:39 [ mode_sixsfred::ax#2 mode_sixsfred::ax#1 ] 13,950,003.6: zp[2]:34 [ mode_sixsfred::col#2 mode_sixsfred::col#3 mode_sixsfred::col#1 ] 13,950,003.6: zp[2]:37 [ mode_sixsfred::gfxa#2 mode_sixsfred::gfxa#3 mode_sixsfred::gfxa#1 ] 3,500,003.5: zp[1]:31 [ mode_sixsfred::i#2 mode_sixsfred::i#1 ] 3,000,001.88: zp[1]:32 [ mode_sixsfred::cy#4 mode_sixsfred::cy#1 ] 3,000,001.88: zp[1]:36 [ mode_sixsfred::ay#4 mode_sixsfred::ay#1 ] 1,833,335.17: zp[1]:40 [ mode_sixsfred::by#4 mode_sixsfred::by#1 ]
Uplift Scope [bitmap_init] 36,250,003.62: zp[2]:130 [ bitmap_init::yoffs#2 bitmap_init::yoffs#4 bitmap_init::yoffs#1 ] 22,666,668.93: zp[1]:128 [ bitmap_init::bits#3 bitmap_init::bits#4 bitmap_init::bits#1 ] 21,666,668.83: zp[1]:127 [ bitmap_init::x#2 bitmap_init::x#1 ] 20,000,002: zp[1]:129 [ bitmap_init::y#2 bitmap_init::y#1 ] 20,000,002: zp[1]:271 [ bitmap_init::$0 ] 20,000,002: zp[1]:273 [ bitmap_init::$7 ] 20,000,002: zp[1]:274 [ bitmap_init::$8 ] 20,000,002: zp[1]:275 [ bitmap_init::$9 ] 5,000,000.5: zp[1]:272 [ bitmap_init::$10 ]
Uplift Scope [mode_stdchar] 20,000,002: zp[1]:288 [ mode_stdchar::$2 ] 20,000,002: zp[1]:289 [ mode_stdchar::$3 ] 20,000,002: zp[1]:290 [ mode_stdchar::$4 ] 20,000,002: zp[1]:292 [ mode_stdchar::$6 ] 20,000,002: zp[1]:293 [ mode_stdchar::$7 ] 18,636,365.5: zp[1]:148 [ mode_stdchar::cx#2 mode_stdchar::cx#1 ] 11,659,094.18: zp[2]:149 [ mode_stdchar::col#2 mode_stdchar::col#3 mode_stdchar::col#1 ] 10,000,001: zp[1]:291 [ mode_stdchar::$5 ] 9,300,003: zp[2]:151 [ mode_stdchar::ch#2 mode_stdchar::ch#3 mode_stdchar::ch#1 ] 3,500,003.5: zp[1]:146 [ mode_stdchar::i#2 mode_stdchar::i#1 ] 3,071,430.36: zp[1]:147 [ mode_stdchar::cy#4 mode_stdchar::cy#1 ]
Uplift Scope [mode_ecmchar] 20,000,002: zp[1]:282 [ mode_ecmchar::$2 ] 20,000,002: zp[1]:283 [ mode_ecmchar::$3 ] 20,000,002: zp[1]:284 [ mode_ecmchar::$4 ] 20,000,002: zp[1]:286 [ mode_ecmchar::$6 ] 20,000,002: zp[1]:287 [ mode_ecmchar::$7 ] 18,636,365.5: zp[1]:141 [ mode_ecmchar::cx#2 mode_ecmchar::cx#1 ] 11,659,094.18: zp[2]:142 [ mode_ecmchar::col#2 mode_ecmchar::col#3 mode_ecmchar::col#1 ] 10,000,001: zp[1]:285 [ mode_ecmchar::$5 ] 9,300,003: zp[2]:144 [ mode_ecmchar::ch#2 mode_ecmchar::ch#3 mode_ecmchar::ch#1 ] 3,500,003.5: zp[1]:139 [ mode_ecmchar::i#2 mode_ecmchar::i#1 ] 3,071,430.36: zp[1]:140 [ mode_ecmchar::cy#4 mode_ecmchar::cy#1 ]
Uplift Scope [mode_mcchar] 20,000,002: zp[1]:276 [ mode_mcchar::$2 ] 20,000,002: zp[1]:277 [ mode_mcchar::$3 ] 20,000,002: zp[1]:278 [ mode_mcchar::$4 ] 20,000,002: zp[1]:280 [ mode_mcchar::$6 ] 20,000,002: zp[1]:281 [ mode_mcchar::$7 ] 18,636,365.5: zp[1]:134 [ mode_mcchar::cx#2 mode_mcchar::cx#1 ] 11,659,094.18: zp[2]:135 [ mode_mcchar::col#2 mode_mcchar::col#3 mode_mcchar::col#1 ] 10,000,001: zp[1]:279 [ mode_mcchar::$5 ] 9,300,003: zp[2]:137 [ mode_mcchar::ch#2 mode_mcchar::ch#3 mode_mcchar::ch#1 ] 3,500,003.5: zp[1]:132 [ mode_mcchar::i#2 mode_mcchar::i#1 ] 3,071,430.36: zp[1]:133 [ mode_mcchar::cy#4 mode_mcchar::cy#1 ]
Uplift Scope [dtvSetCpuBankSegment1] 130,000,004: zp[1]:15 [ dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#1 ]
Uplift Scope [mode_stdbitmap] 20,000,002: zp[1]:243 [ mode_stdbitmap::$4 ] 20,000,002: zp[1]:246 [ mode_stdbitmap::$7 ] 20,000,002: zp[1]:247 [ mode_stdbitmap::$8 ] 18,750,001.88: zp[1]:93 [ mode_stdbitmap::cx#2 mode_stdbitmap::cx#1 ] 15,000,001.5: zp[1]:244 [ mode_stdbitmap::col#0 ] 10,628,574.6: zp[2]:94 [ mode_stdbitmap::ch#2 mode_stdbitmap::ch#3 mode_stdbitmap::ch#1 ] 10,000,001: zp[1]:245 [ mode_stdbitmap::col2#0 ] 3,500,003.5: zp[1]:91 [ mode_stdbitmap::i#2 mode_stdbitmap::i#1 ] 3,000,003: zp[1]:96 [ mode_stdbitmap::l#2 mode_stdbitmap::l#1 ] 2,590,910.86: zp[1]:92 [ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 ]
Uplift Scope [mode_8bppchunkybmm] 35,694,450.14: zp[1]:9 [ mode_8bppchunkybmm::gfxbCpuBank#4 mode_8bppchunkybmm::gfxbCpuBank#7 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::gfxbCpuBank#2 ] 29,200,005.35: zp[2]:10 [ mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::gfxb#1 ] 20,000,002: zp[1]:187 [ mode_8bppchunkybmm::c#0 ] 18,000,001.8: zp[2]:7 [ mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::x#1 ] 10,000,001: zp[2]:185 [ mode_8bppchunkybmm::$7 ] 3,500,003.5: zp[1]:5 [ mode_8bppchunkybmm::i#2 mode_8bppchunkybmm::i#1 ] 2,423,078.65: zp[1]:6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ]
Uplift Scope [print_char] 110,000,002: zp[1]:295 [ print_char::ch#0 ]
Uplift Scope [mode_hicolstdchar] 20,000,002: zp[1]:239 [ mode_hicolstdchar::$2 ] 20,000,002: zp[1]:241 [ mode_hicolstdchar::$4 ] 18,333,335.17: zp[1]:86 [ mode_hicolstdchar::cx#2 mode_hicolstdchar::cx#1 ] 10,166,669.76: zp[2]:87 [ mode_hicolstdchar::col#2 mode_hicolstdchar::col#3 mode_hicolstdchar::col#1 ] 10,075,003.1: zp[2]:89 [ mode_hicolstdchar::ch#2 mode_hicolstdchar::ch#3 mode_hicolstdchar::ch#1 ] 10,000,001: zp[1]:240 [ mode_hicolstdchar::$3 ] 10,000,001: zp[1]:242 [ mode_hicolstdchar::v#0 ] 3,500,003.5: zp[1]:84 [ mode_hicolstdchar::i#2 mode_hicolstdchar::i#1 ] 2,500,001.75: zp[1]:85 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 ]
Uplift Scope [mode_hicolecmchar] 20,000,002: zp[1]:235 [ mode_hicolecmchar::$2 ] 20,000,002: zp[1]:237 [ mode_hicolecmchar::$4 ] 18,333,335.17: zp[1]:79 [ mode_hicolecmchar::cx#2 mode_hicolecmchar::cx#1 ] 10,166,669.76: zp[2]:80 [ mode_hicolecmchar::col#2 mode_hicolecmchar::col#3 mode_hicolecmchar::col#1 ] 10,075,003.1: zp[2]:82 [ mode_hicolecmchar::ch#2 mode_hicolecmchar::ch#3 mode_hicolecmchar::ch#1 ] 10,000,001: zp[1]:236 [ mode_hicolecmchar::$3 ] 10,000,001: zp[1]:238 [ mode_hicolecmchar::v#0 ] 3,500,003.5: zp[1]:77 [ mode_hicolecmchar::i#2 mode_hicolecmchar::i#1 ] 2,500,001.75: zp[1]:78 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 ]
Uplift Scope [mode_hicolmcchar] 20,000,002: zp[1]:231 [ mode_hicolmcchar::$2 ] 20,000,002: zp[1]:233 [ mode_hicolmcchar::$4 ] 18,333,335.17: zp[1]:72 [ mode_hicolmcchar::cx#2 mode_hicolmcchar::cx#1 ] 10,166,669.76: zp[2]:73 [ mode_hicolmcchar::col#2 mode_hicolmcchar::col#3 mode_hicolmcchar::col#1 ] 10,075,003.1: zp[2]:75 [ mode_hicolmcchar::ch#2 mode_hicolmcchar::ch#3 mode_hicolmcchar::ch#1 ] 10,000,001: zp[1]:232 [ mode_hicolmcchar::$3 ] 10,000,001: zp[1]:234 [ mode_hicolmcchar::v#0 ] 3,500,003.5: zp[1]:70 [ mode_hicolmcchar::i#2 mode_hicolmcchar::i#1 ] 2,500,001.75: zp[1]:71 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 ]
Uplift Scope [bitmap_line] 6,050,000.65: zp[1]:251 [ bitmap_line::y1#0 ] 5,761,905.38: zp[1]:250 [ bitmap_line::y0#0 ] 4,444,444.89: zp[1]:253 [ bitmap_line::yd#2 ] 4,444,444.89: zp[1]:254 [ bitmap_line::yd#1 ] 4,444,444.89: zp[1]:256 [ bitmap_line::yd#10 ] 4,444,444.89: zp[1]:257 [ bitmap_line::yd#11 ] 4,136,364.09: zp[1]:249 [ bitmap_line::x1#0 ] 3,956,522.17: zp[1]:248 [ bitmap_line::x0#0 ] 3,500,000.35: zp[1]:252 [ bitmap_line::xd#2 ] 3,500,000.35: zp[1]:255 [ bitmap_line::xd#1 ]
Uplift Scope [memset] 33,333,336.67: zp[2]:159 [ memset::dst#2 memset::dst#1 ]
Uplift Scope [print_str_lines] 19,333,337.17: zp[2]:153 [ print_str_lines::str#3 print_str_lines::str#2 print_str_lines::str#0 ] 6,666,667.33: zp[1]:294 [ print_str_lines::ch#0 ]
Uplift Scope [menu] 350,003.5: zp[1]:2 [ menu::i#2 menu::i#1 ] 333,336.67: zp[2]:3 [ menu::c#2 menu::c#1 ] 200,002: zp[1]:162 [ menu::$5 ] 200,002: zp[1]:164 [ menu::$9 ] 200,002: zp[1]:166 [ menu::$13 ] 200,002: zp[1]:168 [ menu::$17 ] 200,002: zp[1]:170 [ menu::$21 ] 200,002: zp[1]:172 [ menu::$25 ] 200,002: zp[1]:174 [ menu::$29 ] 200,002: zp[1]:176 [ menu::$33 ] 200,002: zp[1]:178 [ menu::$37 ] 200,002: zp[1]:180 [ menu::$41 ] 200,002: zp[1]:182 [ menu::$45 ] 200,002: zp[1]:184 [ menu::$49 ]
Uplift Scope [MOS6526_CIA]
Uplift Scope [MOS6569_VICII]
Uplift Scope [MOS6581_SID]
Uplift Scope [RADIX]
Uplift Scope [print_ln]
Uplift Scope [print_cls]
Uplift Scope [print_set_screen]
Uplift Scope [main]
Uplifting [bitmap_plot] best 3756243 combination reg byte x [ bitmap_plot::y#4 bitmap_plot::y#1 bitmap_plot::y#0 bitmap_plot::y#3 bitmap_plot::y#2 ] zp[2]:261 [ bitmap_plot::plotter_y#0 ] reg byte a [ bitmap_plot::$1 ] zp[1]:103 [ bitmap_plot::x#4 bitmap_plot::x#1 bitmap_plot::x#0 bitmap_plot::x#3 bitmap_plot::x#2 ] zp[2]:259 [ bitmap_plot::plotter_x#0 ] zp[2]:263 [ bitmap_plot::plotter#0 ]
Limited combination testing to 10 combinations of 36 possible.
Uplifting [bitmap_line_xdyi] best 3746237 combination zp[1]: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 ] reg byte x [ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 ] reg byte a [ bitmap_line_xdyi::$6 ] zp[1]:100 [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#2 ] zp[1]:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::xd#0 ] zp[1]:97 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#1 bitmap_line_xdyi::yd#0 ] zp[1]:99 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::x1#0 ]
Limited combination testing to 10 combinations of 256 possible.
Uplifting [bitmap_line_xdyd] best 3736231 combination zp[1]: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 ] reg byte x [ bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 ] reg byte a [ bitmap_line_xdyd::$6 ] zp[1]:114 [ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#2 ] zp[1]:112 [ bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#1 bitmap_line_xdyd::xd#0 ] zp[1]:111 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#1 bitmap_line_xdyd::yd#0 ] zp[1]:113 [ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::x1#0 ]
Limited combination testing to 10 combinations of 256 possible.
Uplifting [bitmap_line_ydxi] best 3730231 combination zp[1]: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[1]: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 ] reg byte x [ bitmap_line_ydxi::$6 ] zp[1]: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[1]:106 [ bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 ] zp[1]:105 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 ] zp[1]: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 3724231 combination zp[1]: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[1]: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 ] reg byte x [ bitmap_line_ydxd::$6 ] zp[1]: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[1]:118 [ bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 ] zp[1]:117 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ] zp[1]: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 [] best 3717895 combination zp[2]:157 [ print_line_cursor#18 print_line_cursor#17 print_line_cursor#19 ] zp[2]:155 [ print_char_cursor#35 print_char_cursor#21 print_char_cursor#102 print_char_cursor#36 print_char_cursor#25 ] reg byte x [ dtv_control#114 dtv_control#144 dtv_control#17 ]
Uplifting [keyboard_matrix_read] best 3717883 combination reg byte y [ keyboard_matrix_read::rowid#0 ] reg byte a [ keyboard_matrix_read::return#0 ] zp[1]:207 [ keyboard_matrix_read::return#2 ]
Limited combination testing to 10 combinations of 64 possible.
Uplifting [mode_ctrl] best 3711883 combination zp[1]: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 ] reg byte a [ mode_ctrl::$1 ] zp[1]:191 [ mode_ctrl::$4 ] zp[1]:193 [ mode_ctrl::$8 ] zp[1]:195 [ mode_ctrl::$12 ] zp[1]:197 [ mode_ctrl::$16 ] zp[1]:199 [ mode_ctrl::$20 ] zp[1]:201 [ mode_ctrl::$24 ] zp[1]:203 [ mode_ctrl::$28 ]
Limited combination testing to 10 combinations of 196608 possible.
Uplifting [mode_8bpppixelcell] best 3561883 combination reg byte a [ mode_8bpppixelcell::c#2 mode_8bpppixelcell::c#3 ] reg byte a [ mode_8bpppixelcell::$8 ] zp[1]:29 [ mode_8bpppixelcell::cp#2 mode_8bpppixelcell::cp#1 ] zp[1]:25 [ mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ] zp[2]:26 [ mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::gfxb#7 mode_8bpppixelcell::gfxb#1 ] zp[1]:28 [ mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ] zp[1]:211 [ mode_8bpppixelcell::$2 ] zp[1]:213 [ mode_8bpppixelcell::$4 ] zp[1]:214 [ mode_8bpppixelcell::$5 ] zp[1]:18 [ mode_8bpppixelcell::ax#2 mode_8bpppixelcell::ax#1 ] zp[2]:22 [ mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::chargen#4 mode_8bpppixelcell::chargen#1 ] zp[1]:24 [ mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ] zp[2]:19 [ mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::gfxa#1 ] zp[1]:212 [ mode_8bpppixelcell::$3 ] zp[1]:16 [ mode_8bpppixelcell::i#2 mode_8bpppixelcell::i#1 ] zp[1]:17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 ] zp[1]:21 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ]
Limited combination testing to 10 combinations of 3538944 possible.
Uplifting [bitmap_clear] best 3552883 combination zp[2]: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[1]:123 [ bitmap_clear::y#4 bitmap_clear::y#1 ] zp[2]:269 [ bitmap_clear::bitmap#0 ]
Uplifting [mode_twoplanebitmap] best 3537883 combination zp[2]:50 [ mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::gfxa#7 mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::gfxa#1 ] zp[2]: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::$2 ] zp[1]:222 [ mode_twoplanebitmap::$4 ] zp[1]:223 [ mode_twoplanebitmap::$5 ] zp[1]:224 [ mode_twoplanebitmap::$8 ] zp[1]:46 [ mode_twoplanebitmap::cx#2 mode_twoplanebitmap::cx#1 ] zp[1]:52 [ mode_twoplanebitmap::ax#2 mode_twoplanebitmap::ax#1 ] zp[2]:47 [ mode_twoplanebitmap::col#2 mode_twoplanebitmap::col#3 mode_twoplanebitmap::col#1 ] zp[1]:221 [ mode_twoplanebitmap::$3 ] zp[1]:44 [ mode_twoplanebitmap::i#2 mode_twoplanebitmap::i#1 ] zp[1]:45 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 ] zp[1]:49 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 ] zp[1]:53 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 ]
Limited combination testing to 10 combinations of 196608 possible.
Uplifting [mode_sixsfred2] best 3522883 combination zp[2]: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::$2 ] zp[1]:227 [ mode_sixsfred2::$4 ] zp[1]:228 [ mode_sixsfred2::$5 ] zp[1]:229 [ mode_sixsfred2::$8 ] zp[1]:230 [ mode_sixsfred2::row#0 ] zp[1]:59 [ mode_sixsfred2::cx#2 mode_sixsfred2::cx#1 ] zp[1]:65 [ mode_sixsfred2::ax#2 mode_sixsfred2::ax#1 ] zp[2]:63 [ mode_sixsfred2::gfxa#2 mode_sixsfred2::gfxa#3 mode_sixsfred2::gfxa#1 ] zp[2]:60 [ mode_sixsfred2::col#2 mode_sixsfred2::col#3 mode_sixsfred2::col#1 ] zp[1]:226 [ mode_sixsfred2::$3 ] zp[1]:57 [ mode_sixsfred2::i#2 mode_sixsfred2::i#1 ] zp[1]:62 [ mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 ] zp[1]:58 [ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 ] zp[1]:66 [ mode_sixsfred2::by#4 mode_sixsfred2::by#1 ]
Limited combination testing to 10 combinations of 786432 possible.
Uplifting [mode_sixsfred] best 3497883 combination zp[2]: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::$2 ] zp[1]:217 [ mode_sixsfred::$3 ] zp[1]:218 [ mode_sixsfred::$6 ] zp[1]:219 [ mode_sixsfred::row#0 ] zp[1]:39 [ mode_sixsfred::ax#2 mode_sixsfred::ax#1 ] zp[2]:34 [ mode_sixsfred::col#2 mode_sixsfred::col#3 mode_sixsfred::col#1 ] zp[2]:37 [ mode_sixsfred::gfxa#2 mode_sixsfred::gfxa#3 mode_sixsfred::gfxa#1 ] zp[1]:31 [ mode_sixsfred::i#2 mode_sixsfred::i#1 ] zp[1]:32 [ mode_sixsfred::cy#4 mode_sixsfred::cy#1 ] zp[1]:36 [ mode_sixsfred::ay#4 mode_sixsfred::ay#1 ] zp[1]:40 [ mode_sixsfred::by#4 mode_sixsfred::by#1 ]
Limited combination testing to 10 combinations of 65536 possible.
Uplifting [bitmap_init] best 3494883 combination zp[2]: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[1]:129 [ bitmap_init::y#2 bitmap_init::y#1 ] zp[1]:271 [ bitmap_init::$0 ] zp[1]:273 [ bitmap_init::$7 ] zp[1]:274 [ bitmap_init::$8 ] zp[1]:275 [ bitmap_init::$9 ] zp[1]:272 [ bitmap_init::$10 ]
Limited combination testing to 10 combinations of 34560 possible.
Uplifting [mode_stdchar] best 3482883 combination reg byte a [ mode_stdchar::$2 ] reg byte a [ mode_stdchar::$3 ] zp[1]:290 [ mode_stdchar::$4 ] zp[1]:292 [ mode_stdchar::$6 ] zp[1]:293 [ mode_stdchar::$7 ] zp[1]:148 [ mode_stdchar::cx#2 mode_stdchar::cx#1 ] zp[2]:149 [ mode_stdchar::col#2 mode_stdchar::col#3 mode_stdchar::col#1 ] zp[1]:291 [ mode_stdchar::$5 ] zp[2]:151 [ mode_stdchar::ch#2 mode_stdchar::ch#3 mode_stdchar::ch#1 ] zp[1]:146 [ mode_stdchar::i#2 mode_stdchar::i#1 ] zp[1]:147 [ mode_stdchar::cy#4 mode_stdchar::cy#1 ]
Limited combination testing to 10 combinations of 36864 possible.
Uplifting [mode_ecmchar] best 3470883 combination reg byte a [ mode_ecmchar::$2 ] reg byte a [ mode_ecmchar::$3 ] zp[1]:284 [ mode_ecmchar::$4 ] zp[1]:286 [ mode_ecmchar::$6 ] zp[1]:287 [ mode_ecmchar::$7 ] zp[1]:141 [ mode_ecmchar::cx#2 mode_ecmchar::cx#1 ] zp[2]:142 [ mode_ecmchar::col#2 mode_ecmchar::col#3 mode_ecmchar::col#1 ] zp[1]:285 [ mode_ecmchar::$5 ] zp[2]:144 [ mode_ecmchar::ch#2 mode_ecmchar::ch#3 mode_ecmchar::ch#1 ] zp[1]:139 [ mode_ecmchar::i#2 mode_ecmchar::i#1 ] zp[1]:140 [ mode_ecmchar::cy#4 mode_ecmchar::cy#1 ]
Limited combination testing to 10 combinations of 36864 possible.
Uplifting [mode_mcchar] best 3458883 combination reg byte a [ mode_mcchar::$2 ] reg byte a [ mode_mcchar::$3 ] zp[1]:278 [ mode_mcchar::$4 ] zp[1]:280 [ mode_mcchar::$6 ] zp[1]:281 [ mode_mcchar::$7 ] zp[1]:134 [ mode_mcchar::cx#2 mode_mcchar::cx#1 ] zp[2]:135 [ mode_mcchar::col#2 mode_mcchar::col#3 mode_mcchar::col#1 ] zp[1]:279 [ mode_mcchar::$5 ] zp[2]:137 [ mode_mcchar::ch#2 mode_mcchar::ch#3 mode_mcchar::ch#1 ] zp[1]:132 [ mode_mcchar::i#2 mode_mcchar::i#1 ] zp[1]:133 [ mode_mcchar::cy#4 mode_mcchar::cy#1 ]
Limited combination testing to 10 combinations of 36864 possible.
Uplifting [dtvSetCpuBankSegment1] best 3455874 combination reg byte a [ dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#1 ]
Uplifting [mode_stdbitmap] best 3443874 combination reg byte a [ mode_stdbitmap::$4 ] reg byte a [ mode_stdbitmap::$7 ] zp[1]:247 [ mode_stdbitmap::$8 ] zp[1]:93 [ mode_stdbitmap::cx#2 mode_stdbitmap::cx#1 ] zp[1]:244 [ mode_stdbitmap::col#0 ] zp[2]:94 [ mode_stdbitmap::ch#2 mode_stdbitmap::ch#3 mode_stdbitmap::ch#1 ] zp[1]:245 [ mode_stdbitmap::col2#0 ] zp[1]:91 [ mode_stdbitmap::i#2 mode_stdbitmap::i#1 ] zp[1]:96 [ mode_stdbitmap::l#2 mode_stdbitmap::l#1 ] zp[1]:92 [ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 ]
Limited combination testing to 10 combinations of 13824 possible.
Uplifting [mode_8bppchunkybmm] best 3433574 combination reg byte x [ mode_8bppchunkybmm::gfxbCpuBank#4 mode_8bppchunkybmm::gfxbCpuBank#7 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::gfxbCpuBank#2 ] zp[2]: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[2]:7 [ mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::x#1 ] zp[2]:185 [ mode_8bppchunkybmm::$7 ] zp[1]:5 [ mode_8bppchunkybmm::i#2 mode_8bppchunkybmm::i#1 ] zp[1]:6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ]
Limited combination testing to 10 combinations of 64 possible.
Uplifting [print_char] best 3430571 combination reg byte a [ print_char::ch#0 ]
Uplifting [mode_hicolstdchar] best 3418571 combination reg byte a [ mode_hicolstdchar::$2 ] reg byte a [ mode_hicolstdchar::$4 ] zp[1]:86 [ mode_hicolstdchar::cx#2 mode_hicolstdchar::cx#1 ] zp[2]:87 [ mode_hicolstdchar::col#2 mode_hicolstdchar::col#3 mode_hicolstdchar::col#1 ] zp[2]:89 [ mode_hicolstdchar::ch#2 mode_hicolstdchar::ch#3 mode_hicolstdchar::ch#1 ] zp[1]:240 [ mode_hicolstdchar::$3 ] zp[1]:242 [ mode_hicolstdchar::v#0 ] zp[1]:84 [ mode_hicolstdchar::i#2 mode_hicolstdchar::i#1 ] zp[1]:85 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 ]
Limited combination testing to 10 combinations of 2304 possible.
Uplifting [mode_hicolecmchar] best 3406571 combination reg byte a [ mode_hicolecmchar::$2 ] reg byte a [ mode_hicolecmchar::$4 ] zp[1]:79 [ mode_hicolecmchar::cx#2 mode_hicolecmchar::cx#1 ] zp[2]:80 [ mode_hicolecmchar::col#2 mode_hicolecmchar::col#3 mode_hicolecmchar::col#1 ] zp[2]:82 [ mode_hicolecmchar::ch#2 mode_hicolecmchar::ch#3 mode_hicolecmchar::ch#1 ] zp[1]:236 [ mode_hicolecmchar::$3 ] zp[1]:238 [ mode_hicolecmchar::v#0 ] zp[1]:77 [ mode_hicolecmchar::i#2 mode_hicolecmchar::i#1 ] zp[1]:78 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 ]
Limited combination testing to 10 combinations of 2304 possible.
Uplifting [mode_hicolmcchar] best 3394571 combination reg byte a [ mode_hicolmcchar::$2 ] reg byte a [ mode_hicolmcchar::$4 ] zp[1]:72 [ mode_hicolmcchar::cx#2 mode_hicolmcchar::cx#1 ] zp[2]:73 [ mode_hicolmcchar::col#2 mode_hicolmcchar::col#3 mode_hicolmcchar::col#1 ] zp[2]:75 [ mode_hicolmcchar::ch#2 mode_hicolmcchar::ch#3 mode_hicolmcchar::ch#1 ] zp[1]:232 [ mode_hicolmcchar::$3 ] zp[1]:234 [ mode_hicolmcchar::v#0 ] zp[1]:70 [ mode_hicolmcchar::i#2 mode_hicolmcchar::i#1 ] zp[1]:71 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 ]
Limited combination testing to 10 combinations of 2304 possible.
Uplifting [bitmap_line] best 3394247 combination zp[1]:251 [ bitmap_line::y1#0 ] reg byte x [ bitmap_line::y0#0 ] zp[1]:253 [ bitmap_line::yd#2 ] zp[1]:254 [ bitmap_line::yd#1 ] zp[1]:256 [ bitmap_line::yd#10 ] zp[1]:257 [ bitmap_line::yd#11 ] zp[1]:249 [ bitmap_line::x1#0 ] zp[1]:248 [ bitmap_line::x0#0 ] zp[1]:252 [ bitmap_line::xd#2 ] zp[1]:255 [ bitmap_line::xd#1 ]
Limited combination testing to 10 combinations of 186624 possible.
Uplifting [memset] best 3394247 combination zp[2]:159 [ memset::dst#2 memset::dst#1 ]
Uplifting [print_str_lines] best 3382247 combination zp[2]: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 [menu] best 3380447 combination reg byte x [ menu::i#2 menu::i#1 ] zp[2]:3 [ menu::c#2 menu::c#1 ] reg byte a [ menu::$5 ] zp[1]:164 [ menu::$9 ] zp[1]:166 [ menu::$13 ] zp[1]:168 [ menu::$17 ] zp[1]:170 [ menu::$21 ] zp[1]:172 [ menu::$25 ] zp[1]:174 [ menu::$29 ] zp[1]:176 [ menu::$33 ] zp[1]:178 [ menu::$37 ] zp[1]:180 [ menu::$41 ] zp[1]:182 [ menu::$45 ] zp[1]:184 [ menu::$49 ]
Limited combination testing to 10 combinations of 50331648 possible.
Uplifting [MOS6526_CIA] best 3380447 combination
Uplifting [MOS6569_VICII] best 3380447 combination
Uplifting [MOS6581_SID] best 3380447 combination
Uplifting [RADIX] best 3380447 combination
Uplifting [print_ln] best 3380447 combination
Uplifting [print_cls] best 3380447 combination
Uplifting [print_set_screen] best 3380447 combination
Uplifting [main] best 3380447 combination
Attempting to uplift remaining variables inzp[1]:103 [ bitmap_plot::x#4 bitmap_plot::x#1 bitmap_plot::x#0 bitmap_plot::x#3 bitmap_plot::x#2 ]
Uplifting [bitmap_plot] best 3368441 combination reg byte y [ bitmap_plot::x#4 bitmap_plot::x#1 bitmap_plot::x#0 bitmap_plot::x#3 bitmap_plot::x#2 ]
Attempting to uplift remaining variables inzp[1]: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 3368441 combination zp[1]: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[1]: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 3368441 combination zp[1]: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[1]: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 3368441 combination zp[1]: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[1]: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 3368441 combination zp[1]: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[1]: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 ]
Uplifting [bitmap_line_ydxi] best 3368441 combination zp[1]: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 ]
Attempting to uplift remaining variables inzp[1]: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 ]
Uplifting [bitmap_line_ydxd] best 3368441 combination zp[1]: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 ]
Attempting to uplift remaining variables inzp[1]:100 [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#2 ]
Uplifting [bitmap_line_xdyi] best 3368441 combination zp[1]:100 [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#2 ]
Attempting to uplift remaining variables inzp[1]: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 3368441 combination zp[1]: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[1]:114 [ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#2 ]
Uplifting [bitmap_line_xdyd] best 3368441 combination zp[1]:114 [ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#2 ]
Attempting to uplift remaining variables inzp[1]: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 3368441 combination zp[1]: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[1]:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::xd#0 ]
Uplifting [bitmap_line_xdyi] best 3368441 combination zp[1]:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::xd#0 ]
Attempting to uplift remaining variables inzp[1]:106 [ bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 ]
Uplifting [bitmap_line_ydxi] best 3368441 combination zp[1]:106 [ bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 ]
Attempting to uplift remaining variables inzp[1]:112 [ bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#1 bitmap_line_xdyd::xd#0 ]
Uplifting [bitmap_line_xdyd] best 3368441 combination zp[1]:112 [ bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#1 bitmap_line_xdyd::xd#0 ]
Attempting to uplift remaining variables inzp[1]:118 [ bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 ]
Uplifting [bitmap_line_ydxd] best 3368441 combination zp[1]:118 [ bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 ]
Attempting to uplift remaining variables inzp[1]:97 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#1 bitmap_line_xdyi::yd#0 ]
Uplifting [bitmap_line_xdyi] best 3368441 combination zp[1]:97 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#1 bitmap_line_xdyi::yd#0 ]
Attempting to uplift remaining variables inzp[1]:105 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 ]
Uplifting [bitmap_line_ydxi] best 3368441 combination zp[1]:105 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 ]
Attempting to uplift remaining variables inzp[1]:111 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#1 bitmap_line_xdyd::yd#0 ]
Uplifting [bitmap_line_xdyd] best 3368441 combination zp[1]:111 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#1 bitmap_line_xdyd::yd#0 ]
Attempting to uplift remaining variables inzp[1]:117 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ]
Uplifting [bitmap_line_ydxd] best 3368441 combination zp[1]:117 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ]
Attempting to uplift remaining variables inzp[1]:99 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::x1#0 ]
Uplifting [bitmap_line_xdyi] best 3368441 combination zp[1]:99 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::x1#0 ]
Attempting to uplift remaining variables inzp[1]:107 [ bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 ]
Uplifting [bitmap_line_ydxi] best 3368441 combination zp[1]:107 [ bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 ]
Attempting to uplift remaining variables inzp[1]:113 [ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::x1#0 ]
Uplifting [bitmap_line_xdyd] best 3368441 combination zp[1]:113 [ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::x1#0 ]
Attempting to uplift remaining variables inzp[1]:119 [ bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 ]
Uplifting [bitmap_line_ydxd] best 3368441 combination zp[1]:119 [ bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 ]
Attempting to uplift remaining variables inzp[1]:205 [ keyboard_key_pressed::rowidx#0 ]
Uplifting [keyboard_key_pressed] best 3368437 combination reg byte a [ keyboard_key_pressed::rowidx#0 ]
Attempting to uplift remaining variables inzp[1]:207 [ keyboard_matrix_read::return#2 ]
Uplifting [keyboard_matrix_read] best 3368431 combination reg byte a [ keyboard_matrix_read::return#2 ]
Attempting to uplift remaining variables inzp[1]:208 [ keyboard_key_pressed::$2 ]
Uplifting [keyboard_key_pressed] best 3368425 combination reg byte a [ keyboard_key_pressed::$2 ]
Attempting to uplift remaining variables inzp[1]: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 ]
Uplifting [mode_ctrl] best 3368425 combination zp[1]: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 ]
Attempting to uplift remaining variables inzp[1]:14 [ keyboard_key_pressed::key#20 ]
Uplifting [keyboard_key_pressed] best 3368363 combination reg byte y [ keyboard_key_pressed::key#20 ]
Attempting to uplift remaining variables inzp[1]:204 [ keyboard_key_pressed::colidx#0 ]
Uplifting [keyboard_key_pressed] best 3368363 combination zp[1]:204 [ keyboard_key_pressed::colidx#0 ]
Attempting to uplift remaining variables inzp[1]:188 [ keyboard_key_pressed::return#14 ]
Uplifting [keyboard_key_pressed] best 3362363 combination reg byte a [ keyboard_key_pressed::return#14 ]
Attempting to uplift remaining variables inzp[1]:190 [ keyboard_key_pressed::return#15 ]
Uplifting [keyboard_key_pressed] best 3356363 combination reg byte a [ keyboard_key_pressed::return#15 ]
Attempting to uplift remaining variables inzp[1]:191 [ mode_ctrl::$4 ]
Uplifting [mode_ctrl] best 3350363 combination reg byte a [ mode_ctrl::$4 ]
Attempting to uplift remaining variables inzp[1]:192 [ keyboard_key_pressed::return#16 ]
Uplifting [keyboard_key_pressed] best 3344363 combination reg byte a [ keyboard_key_pressed::return#16 ]
Attempting to uplift remaining variables inzp[1]:193 [ mode_ctrl::$8 ]
Uplifting [mode_ctrl] best 3338363 combination reg byte a [ mode_ctrl::$8 ]
Attempting to uplift remaining variables inzp[1]:194 [ keyboard_key_pressed::return#17 ]
Uplifting [keyboard_key_pressed] best 3332363 combination reg byte a [ keyboard_key_pressed::return#17 ]
Attempting to uplift remaining variables inzp[1]:195 [ mode_ctrl::$12 ]
Uplifting [mode_ctrl] best 3326363 combination reg byte a [ mode_ctrl::$12 ]
Attempting to uplift remaining variables inzp[1]:196 [ keyboard_key_pressed::return#18 ]
Uplifting [keyboard_key_pressed] best 3320363 combination reg byte a [ keyboard_key_pressed::return#18 ]
Attempting to uplift remaining variables inzp[1]:197 [ mode_ctrl::$16 ]
Uplifting [mode_ctrl] best 3314363 combination reg byte a [ mode_ctrl::$16 ]
Attempting to uplift remaining variables inzp[1]:198 [ keyboard_key_pressed::return#19 ]
Uplifting [keyboard_key_pressed] best 3308363 combination reg byte a [ keyboard_key_pressed::return#19 ]
Attempting to uplift remaining variables inzp[1]:199 [ mode_ctrl::$20 ]
Uplifting [mode_ctrl] best 3302363 combination reg byte a [ mode_ctrl::$20 ]
Attempting to uplift remaining variables inzp[1]:200 [ keyboard_key_pressed::return#20 ]
Uplifting [keyboard_key_pressed] best 3296363 combination reg byte a [ keyboard_key_pressed::return#20 ]
Attempting to uplift remaining variables inzp[1]:201 [ mode_ctrl::$24 ]
Uplifting [mode_ctrl] best 3290363 combination reg byte a [ mode_ctrl::$24 ]
Attempting to uplift remaining variables inzp[1]:202 [ keyboard_key_pressed::return#21 ]
Uplifting [keyboard_key_pressed] best 3284363 combination reg byte a [ keyboard_key_pressed::return#21 ]
Attempting to uplift remaining variables inzp[1]:203 [ mode_ctrl::$28 ]
Uplifting [mode_ctrl] best 3278363 combination reg byte a [ mode_ctrl::$28 ]
Attempting to uplift remaining variables inzp[1]:29 [ mode_8bpppixelcell::cp#2 mode_8bpppixelcell::cp#1 ]
Uplifting [mode_8bpppixelcell] best 3188363 combination reg byte x [ mode_8bpppixelcell::cp#2 mode_8bpppixelcell::cp#1 ]
Attempting to uplift remaining variables inzp[1]:25 [ mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ]
Uplifting [mode_8bpppixelcell] best 3188363 combination zp[1]:25 [ mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ]
Attempting to uplift remaining variables inzp[1]:209 [ keyboard_key_pressed::return#0 ]
Uplifting [keyboard_key_pressed] best 3160760 combination reg byte a [ keyboard_key_pressed::return#0 ]
Attempting to uplift remaining variables inzp[1]:28 [ mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ]
Uplifting [mode_8bpppixelcell] best 3160760 combination zp[1]:28 [ mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ]
Attempting to uplift remaining variables inzp[1]:129 [ bitmap_init::y#2 bitmap_init::y#1 ]
Uplifting [bitmap_init] best 3158960 combination reg byte x [ bitmap_init::y#2 bitmap_init::y#1 ]
Attempting to uplift remaining variables inzp[1]:211 [ mode_8bpppixelcell::$2 ]
Uplifting [mode_8bpppixelcell] best 3152960 combination reg byte a [ mode_8bpppixelcell::$2 ]
Attempting to uplift remaining variables inzp[1]:213 [ mode_8bpppixelcell::$4 ]
Uplifting [mode_8bpppixelcell] best 3146960 combination reg byte a [ mode_8bpppixelcell::$4 ]
Attempting to uplift remaining variables inzp[1]:214 [ mode_8bpppixelcell::$5 ]
Uplifting [mode_8bpppixelcell] best 3140960 combination reg byte a [ mode_8bpppixelcell::$5 ]
Attempting to uplift remaining variables inzp[1]:217 [ mode_sixsfred::$3 ]
Uplifting [mode_sixsfred] best 3134960 combination reg byte a [ mode_sixsfred::$3 ]
Attempting to uplift remaining variables inzp[1]:218 [ mode_sixsfred::$6 ]
Uplifting [mode_sixsfred] best 3128960 combination reg byte a [ mode_sixsfred::$6 ]
Attempting to uplift remaining variables inzp[1]:219 [ mode_sixsfred::row#0 ]
Uplifting [mode_sixsfred] best 3124960 combination reg byte a [ mode_sixsfred::row#0 ]
Attempting to uplift remaining variables inzp[1]:222 [ mode_twoplanebitmap::$4 ]
Uplifting [mode_twoplanebitmap] best 3118960 combination reg byte a [ mode_twoplanebitmap::$4 ]
Attempting to uplift remaining variables inzp[1]:223 [ mode_twoplanebitmap::$5 ]
Uplifting [mode_twoplanebitmap] best 3112960 combination reg byte a [ mode_twoplanebitmap::$5 ]
Attempting to uplift remaining variables inzp[1]:224 [ mode_twoplanebitmap::$8 ]
Uplifting [mode_twoplanebitmap] best 3106960 combination reg byte a [ mode_twoplanebitmap::$8 ]
Attempting to uplift remaining variables inzp[1]:227 [ mode_sixsfred2::$4 ]
Uplifting [mode_sixsfred2] best 3100960 combination reg byte a [ mode_sixsfred2::$4 ]
Attempting to uplift remaining variables inzp[1]:228 [ mode_sixsfred2::$5 ]
Uplifting [mode_sixsfred2] best 3094960 combination reg byte a [ mode_sixsfred2::$5 ]
Attempting to uplift remaining variables inzp[1]:229 [ mode_sixsfred2::$8 ]
Uplifting [mode_sixsfred2] best 3088960 combination reg byte a [ mode_sixsfred2::$8 ]
Attempting to uplift remaining variables inzp[1]:230 [ mode_sixsfred2::row#0 ]
Uplifting [mode_sixsfred2] best 3084960 combination reg byte a [ mode_sixsfred2::row#0 ]
Attempting to uplift remaining variables inzp[1]:247 [ mode_stdbitmap::$8 ]
Uplifting [mode_stdbitmap] best 3078960 combination reg byte a [ mode_stdbitmap::$8 ]
Attempting to uplift remaining variables inzp[1]:271 [ bitmap_init::$0 ]
Uplifting [bitmap_init] best 3078560 combination reg byte a [ bitmap_init::$0 ]
Attempting to uplift remaining variables inzp[1]:273 [ bitmap_init::$7 ]
Uplifting [bitmap_init] best 3077960 combination reg byte a [ bitmap_init::$7 ]
Attempting to uplift remaining variables inzp[1]:274 [ bitmap_init::$8 ]
Uplifting [bitmap_init] best 3077360 combination reg byte a [ bitmap_init::$8 ]
Attempting to uplift remaining variables inzp[1]:275 [ bitmap_init::$9 ]
Uplifting [bitmap_init] best 3076760 combination reg byte a [ bitmap_init::$9 ]
Attempting to uplift remaining variables inzp[1]:278 [ mode_mcchar::$4 ]
Uplifting [mode_mcchar] best 3070760 combination reg byte a [ mode_mcchar::$4 ]
Attempting to uplift remaining variables inzp[1]:280 [ mode_mcchar::$6 ]
Uplifting [mode_mcchar] best 3064760 combination reg byte a [ mode_mcchar::$6 ]
Attempting to uplift remaining variables inzp[1]:281 [ mode_mcchar::$7 ]
Uplifting [mode_mcchar] best 3058760 combination reg byte a [ mode_mcchar::$7 ]
Attempting to uplift remaining variables inzp[1]:284 [ mode_ecmchar::$4 ]
Uplifting [mode_ecmchar] best 3052760 combination reg byte a [ mode_ecmchar::$4 ]
Attempting to uplift remaining variables inzp[1]:286 [ mode_ecmchar::$6 ]
Uplifting [mode_ecmchar] best 3046760 combination reg byte a [ mode_ecmchar::$6 ]
Attempting to uplift remaining variables inzp[1]:287 [ mode_ecmchar::$7 ]
Uplifting [mode_ecmchar] best 3040760 combination reg byte a [ mode_ecmchar::$7 ]
Attempting to uplift remaining variables inzp[1]:290 [ mode_stdchar::$4 ]
Uplifting [mode_stdchar] best 3034760 combination reg byte a [ mode_stdchar::$4 ]
Attempting to uplift remaining variables inzp[1]:292 [ mode_stdchar::$6 ]
Uplifting [mode_stdchar] best 3028760 combination reg byte a [ mode_stdchar::$6 ]
Attempting to uplift remaining variables inzp[1]:293 [ mode_stdchar::$7 ]
Uplifting [mode_stdchar] best 3022760 combination reg byte a [ mode_stdchar::$7 ]
Attempting to uplift remaining variables inzp[1]:18 [ mode_8bpppixelcell::ax#2 mode_8bpppixelcell::ax#1 ]
Uplifting [mode_8bpppixelcell] best 3012760 combination reg byte x [ mode_8bpppixelcell::ax#2 mode_8bpppixelcell::ax#1 ]
Attempting to uplift remaining variables inzp[1]:46 [ mode_twoplanebitmap::cx#2 mode_twoplanebitmap::cx#1 ]
Uplifting [mode_twoplanebitmap] best 3002760 combination reg byte x [ mode_twoplanebitmap::cx#2 mode_twoplanebitmap::cx#1 ]
Attempting to uplift remaining variables inzp[1]:59 [ mode_sixsfred2::cx#2 mode_sixsfred2::cx#1 ]
Uplifting [mode_sixsfred2] best 2992760 combination reg byte x [ mode_sixsfred2::cx#2 mode_sixsfred2::cx#1 ]
Attempting to uplift remaining variables inzp[1]:39 [ mode_sixsfred::ax#2 mode_sixsfred::ax#1 ]
Uplifting [mode_sixsfred] best 2983760 combination reg byte x [ mode_sixsfred::ax#2 mode_sixsfred::ax#1 ]
Attempting to uplift remaining variables inzp[1]:65 [ mode_sixsfred2::ax#2 mode_sixsfred2::ax#1 ]
Uplifting [mode_sixsfred2] best 2974760 combination reg byte x [ mode_sixsfred2::ax#2 mode_sixsfred2::ax#1 ]
Attempting to uplift remaining variables inzp[1]:93 [ mode_stdbitmap::cx#2 mode_stdbitmap::cx#1 ]
Uplifting [mode_stdbitmap] best 2964760 combination reg byte x [ mode_stdbitmap::cx#2 mode_stdbitmap::cx#1 ]
Attempting to uplift remaining variables inzp[1]:134 [ mode_mcchar::cx#2 mode_mcchar::cx#1 ]
Uplifting [mode_mcchar] best 2953760 combination reg byte x [ mode_mcchar::cx#2 mode_mcchar::cx#1 ]
Attempting to uplift remaining variables inzp[1]:141 [ mode_ecmchar::cx#2 mode_ecmchar::cx#1 ]
Uplifting [mode_ecmchar] best 2942760 combination reg byte x [ mode_ecmchar::cx#2 mode_ecmchar::cx#1 ]
Attempting to uplift remaining variables inzp[1]:148 [ mode_stdchar::cx#2 mode_stdchar::cx#1 ]
Uplifting [mode_stdchar] best 2931760 combination reg byte x [ mode_stdchar::cx#2 mode_stdchar::cx#1 ]
Attempting to uplift remaining variables inzp[1]:72 [ mode_hicolmcchar::cx#2 mode_hicolmcchar::cx#1 ]
Uplifting [mode_hicolmcchar] best 2921760 combination reg byte x [ mode_hicolmcchar::cx#2 mode_hicolmcchar::cx#1 ]
Attempting to uplift remaining variables inzp[1]:79 [ mode_hicolecmchar::cx#2 mode_hicolecmchar::cx#1 ]
Uplifting [mode_hicolecmchar] best 2911760 combination reg byte x [ mode_hicolecmchar::cx#2 mode_hicolecmchar::cx#1 ]
Attempting to uplift remaining variables inzp[1]:86 [ mode_hicolstdchar::cx#2 mode_hicolstdchar::cx#1 ]
Uplifting [mode_hicolstdchar] best 2901760 combination reg byte x [ mode_hicolstdchar::cx#2 mode_hicolstdchar::cx#1 ]
Attempting to uplift remaining variables inzp[1]:123 [ bitmap_clear::y#4 bitmap_clear::y#1 ]
Uplifting [bitmap_clear] best 2901760 combination zp[1]:123 [ bitmap_clear::y#4 bitmap_clear::y#1 ]
Attempting to uplift remaining variables inzp[1]:52 [ mode_twoplanebitmap::ax#2 mode_twoplanebitmap::ax#1 ]
Uplifting [mode_twoplanebitmap] best 2892760 combination reg byte x [ mode_twoplanebitmap::ax#2 mode_twoplanebitmap::ax#1 ]
Attempting to uplift remaining variables inzp[1]:24 [ mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ]
Uplifting [mode_8bpppixelcell] best 2892760 combination zp[1]:24 [ mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ]
Attempting to uplift remaining variables inzp[1]:244 [ mode_stdbitmap::col#0 ]
Uplifting [mode_stdbitmap] best 2891760 combination reg byte y [ mode_stdbitmap::col#0 ]
Attempting to uplift remaining variables inzp[1]:212 [ mode_8bpppixelcell::$3 ]
Uplifting [mode_8bpppixelcell] best 2891760 combination zp[1]:212 [ mode_8bpppixelcell::$3 ]
Attempting to uplift remaining variables inzp[1]:221 [ mode_twoplanebitmap::$3 ]
Uplifting [mode_twoplanebitmap] best 2891760 combination zp[1]:221 [ mode_twoplanebitmap::$3 ]
Attempting to uplift remaining variables inzp[1]:226 [ mode_sixsfred2::$3 ]
Uplifting [mode_sixsfred2] best 2891760 combination zp[1]:226 [ mode_sixsfred2::$3 ]
Attempting to uplift remaining variables inzp[1]:232 [ mode_hicolmcchar::$3 ]
Uplifting [mode_hicolmcchar] best 2891760 combination zp[1]:232 [ mode_hicolmcchar::$3 ]
Attempting to uplift remaining variables inzp[1]:234 [ mode_hicolmcchar::v#0 ]
Uplifting [mode_hicolmcchar] best 2882760 combination reg byte a [ mode_hicolmcchar::v#0 ]
Attempting to uplift remaining variables inzp[1]:236 [ mode_hicolecmchar::$3 ]
Uplifting [mode_hicolecmchar] best 2882760 combination zp[1]:236 [ mode_hicolecmchar::$3 ]
Attempting to uplift remaining variables inzp[1]:238 [ mode_hicolecmchar::v#0 ]
Uplifting [mode_hicolecmchar] best 2873760 combination reg byte a [ mode_hicolecmchar::v#0 ]
Attempting to uplift remaining variables inzp[1]:240 [ mode_hicolstdchar::$3 ]
Uplifting [mode_hicolstdchar] best 2873760 combination zp[1]:240 [ mode_hicolstdchar::$3 ]
Attempting to uplift remaining variables inzp[1]:242 [ mode_hicolstdchar::v#0 ]
Uplifting [mode_hicolstdchar] best 2864760 combination reg byte a [ mode_hicolstdchar::v#0 ]
Attempting to uplift remaining variables inzp[1]:245 [ mode_stdbitmap::col2#0 ]
Uplifting [mode_stdbitmap] best 2864760 combination zp[1]:245 [ mode_stdbitmap::col2#0 ]
Attempting to uplift remaining variables inzp[1]:279 [ mode_mcchar::$5 ]
Uplifting [mode_mcchar] best 2864760 combination zp[1]:279 [ mode_mcchar::$5 ]
Attempting to uplift remaining variables inzp[1]:285 [ mode_ecmchar::$5 ]
Uplifting [mode_ecmchar] best 2864760 combination zp[1]:285 [ mode_ecmchar::$5 ]
Attempting to uplift remaining variables inzp[1]:291 [ mode_stdchar::$5 ]
Uplifting [mode_stdchar] best 2864760 combination zp[1]:291 [ mode_stdchar::$5 ]
Attempting to uplift remaining variables inzp[1]:251 [ bitmap_line::y1#0 ]
Uplifting [bitmap_line] best 2864760 combination zp[1]:251 [ bitmap_line::y1#0 ]
Attempting to uplift remaining variables inzp[1]:272 [ bitmap_init::$10 ]
Uplifting [bitmap_init] best 2864760 combination zp[1]:272 [ bitmap_init::$10 ]
Attempting to uplift remaining variables inzp[1]:253 [ bitmap_line::yd#2 ]
Uplifting [bitmap_line] best 2864750 combination reg byte y [ bitmap_line::yd#2 ]
Attempting to uplift remaining variables inzp[1]:254 [ bitmap_line::yd#1 ]
Uplifting [bitmap_line] best 2864740 combination reg byte y [ bitmap_line::yd#1 ]
Attempting to uplift remaining variables inzp[1]:256 [ bitmap_line::yd#10 ]
Uplifting [bitmap_line] best 2864730 combination reg byte y [ bitmap_line::yd#10 ]
Attempting to uplift remaining variables inzp[1]:257 [ bitmap_line::yd#11 ]
Uplifting [bitmap_line] best 2864720 combination reg byte y [ bitmap_line::yd#11 ]
Attempting to uplift remaining variables inzp[1]:249 [ bitmap_line::x1#0 ]
Uplifting [bitmap_line] best 2864720 combination zp[1]:249 [ bitmap_line::x1#0 ]
Attempting to uplift remaining variables inzp[1]:248 [ bitmap_line::x0#0 ]
Uplifting [bitmap_line] best 2864720 combination zp[1]:248 [ bitmap_line::x0#0 ]
Attempting to uplift remaining variables inzp[1]:5 [ mode_8bppchunkybmm::i#2 mode_8bppchunkybmm::i#1 ]
Uplifting [mode_8bppchunkybmm] best 2863520 combination reg byte x [ mode_8bppchunkybmm::i#2 mode_8bppchunkybmm::i#1 ]
Attempting to uplift remaining variables inzp[1]:16 [ mode_8bpppixelcell::i#2 mode_8bpppixelcell::i#1 ]
Uplifting [mode_8bpppixelcell] best 2862320 combination reg byte x [ mode_8bpppixelcell::i#2 mode_8bpppixelcell::i#1 ]
Attempting to uplift remaining variables inzp[1]:31 [ mode_sixsfred::i#2 mode_sixsfred::i#1 ]
Uplifting [mode_sixsfred] best 2861120 combination reg byte x [ mode_sixsfred::i#2 mode_sixsfred::i#1 ]
Attempting to uplift remaining variables inzp[1]:44 [ mode_twoplanebitmap::i#2 mode_twoplanebitmap::i#1 ]
Uplifting [mode_twoplanebitmap] best 2859920 combination reg byte x [ mode_twoplanebitmap::i#2 mode_twoplanebitmap::i#1 ]
Attempting to uplift remaining variables inzp[1]:57 [ mode_sixsfred2::i#2 mode_sixsfred2::i#1 ]
Uplifting [mode_sixsfred2] best 2858720 combination reg byte x [ mode_sixsfred2::i#2 mode_sixsfred2::i#1 ]
Attempting to uplift remaining variables inzp[1]:70 [ mode_hicolmcchar::i#2 mode_hicolmcchar::i#1 ]
Uplifting [mode_hicolmcchar] best 2857520 combination reg byte x [ mode_hicolmcchar::i#2 mode_hicolmcchar::i#1 ]
Attempting to uplift remaining variables inzp[1]:77 [ mode_hicolecmchar::i#2 mode_hicolecmchar::i#1 ]
Uplifting [mode_hicolecmchar] best 2856320 combination reg byte x [ mode_hicolecmchar::i#2 mode_hicolecmchar::i#1 ]
Attempting to uplift remaining variables inzp[1]:84 [ mode_hicolstdchar::i#2 mode_hicolstdchar::i#1 ]
Uplifting [mode_hicolstdchar] best 2855120 combination reg byte x [ mode_hicolstdchar::i#2 mode_hicolstdchar::i#1 ]
Attempting to uplift remaining variables inzp[1]:91 [ mode_stdbitmap::i#2 mode_stdbitmap::i#1 ]
Uplifting [mode_stdbitmap] best 2853920 combination reg byte x [ mode_stdbitmap::i#2 mode_stdbitmap::i#1 ]
Attempting to uplift remaining variables inzp[1]:132 [ mode_mcchar::i#2 mode_mcchar::i#1 ]
Uplifting [mode_mcchar] best 2852720 combination reg byte x [ mode_mcchar::i#2 mode_mcchar::i#1 ]
Attempting to uplift remaining variables inzp[1]:139 [ mode_ecmchar::i#2 mode_ecmchar::i#1 ]
Uplifting [mode_ecmchar] best 2851520 combination reg byte x [ mode_ecmchar::i#2 mode_ecmchar::i#1 ]
Attempting to uplift remaining variables inzp[1]:146 [ mode_stdchar::i#2 mode_stdchar::i#1 ]
Uplifting [mode_stdchar] best 2850320 combination reg byte x [ mode_stdchar::i#2 mode_stdchar::i#1 ]
Attempting to uplift remaining variables inzp[1]:252 [ bitmap_line::xd#2 ]
Uplifting [bitmap_line] best 2850320 combination zp[1]:252 [ bitmap_line::xd#2 ]
Attempting to uplift remaining variables inzp[1]:255 [ bitmap_line::xd#1 ]
Uplifting [bitmap_line] best 2850320 combination zp[1]:255 [ bitmap_line::xd#1 ]
Attempting to uplift remaining variables inzp[1]:133 [ mode_mcchar::cy#4 mode_mcchar::cy#1 ]
Uplifting [mode_mcchar] best 2850320 combination zp[1]:133 [ mode_mcchar::cy#4 mode_mcchar::cy#1 ]
Attempting to uplift remaining variables inzp[1]:140 [ mode_ecmchar::cy#4 mode_ecmchar::cy#1 ]
Uplifting [mode_ecmchar] best 2850320 combination zp[1]:140 [ mode_ecmchar::cy#4 mode_ecmchar::cy#1 ]
Attempting to uplift remaining variables inzp[1]:147 [ mode_stdchar::cy#4 mode_stdchar::cy#1 ]
Uplifting [mode_stdchar] best 2850320 combination zp[1]:147 [ mode_stdchar::cy#4 mode_stdchar::cy#1 ]
Attempting to uplift remaining variables inzp[1]:96 [ mode_stdbitmap::l#2 mode_stdbitmap::l#1 ]
Uplifting [mode_stdbitmap] best 2850320 combination zp[1]:96 [ mode_stdbitmap::l#2 mode_stdbitmap::l#1 ]
Attempting to uplift remaining variables inzp[1]:32 [ mode_sixsfred::cy#4 mode_sixsfred::cy#1 ]
Uplifting [mode_sixsfred] best 2850320 combination zp[1]:32 [ mode_sixsfred::cy#4 mode_sixsfred::cy#1 ]
Attempting to uplift remaining variables inzp[1]:36 [ mode_sixsfred::ay#4 mode_sixsfred::ay#1 ]
Uplifting [mode_sixsfred] best 2850320 combination zp[1]:36 [ mode_sixsfred::ay#4 mode_sixsfred::ay#1 ]
Attempting to uplift remaining variables inzp[1]:62 [ mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 ]
Uplifting [mode_sixsfred2] best 2850320 combination zp[1]:62 [ mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 ]
Attempting to uplift remaining variables inzp[1]:17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 ]
Uplifting [mode_8bpppixelcell] best 2850320 combination zp[1]:17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 ]
Attempting to uplift remaining variables inzp[1]:45 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 ]
Uplifting [mode_twoplanebitmap] best 2850320 combination zp[1]:45 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 ]
Attempting to uplift remaining variables inzp[1]:58 [ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 ]
Uplifting [mode_sixsfred2] best 2850320 combination zp[1]:58 [ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 ]
Attempting to uplift remaining variables inzp[1]:49 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 ]
Uplifting [mode_twoplanebitmap] best 2850320 combination zp[1]:49 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 ]
Attempting to uplift remaining variables inzp[1]:92 [ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 ]
Uplifting [mode_stdbitmap] best 2850320 combination zp[1]:92 [ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 ]
Attempting to uplift remaining variables inzp[1]:71 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 ]
Uplifting [mode_hicolmcchar] best 2850320 combination zp[1]:71 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 ]
Attempting to uplift remaining variables inzp[1]:78 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 ]
Uplifting [mode_hicolecmchar] best 2850320 combination zp[1]:78 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 ]
Attempting to uplift remaining variables inzp[1]:85 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 ]
Uplifting [mode_hicolstdchar] best 2850320 combination zp[1]:85 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 ]
Attempting to uplift remaining variables inzp[1]:6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ]
Uplifting [mode_8bppchunkybmm] best 2850320 combination zp[1]:6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ]
Attempting to uplift remaining variables inzp[1]:40 [ mode_sixsfred::by#4 mode_sixsfred::by#1 ]
Uplifting [mode_sixsfred] best 2850320 combination zp[1]:40 [ mode_sixsfred::by#4 mode_sixsfred::by#1 ]
Attempting to uplift remaining variables inzp[1]:53 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 ]
Uplifting [mode_twoplanebitmap] best 2850320 combination zp[1]:53 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 ]
Attempting to uplift remaining variables inzp[1]:66 [ mode_sixsfred2::by#4 mode_sixsfred2::by#1 ]
Uplifting [mode_sixsfred2] best 2850320 combination zp[1]:66 [ mode_sixsfred2::by#4 mode_sixsfred2::by#1 ]
Attempting to uplift remaining variables inzp[1]:21 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ]
Uplifting [mode_8bpppixelcell] best 2850320 combination zp[1]:21 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ]
Attempting to uplift remaining variables inzp[1]:161 [ keyboard_key_pressed::return#2 ]
Uplifting [keyboard_key_pressed] best 2849720 combination reg byte a [ keyboard_key_pressed::return#2 ]
Attempting to uplift remaining variables inzp[1]:163 [ keyboard_key_pressed::return#24 ]
Uplifting [keyboard_key_pressed] best 2849120 combination reg byte a [ keyboard_key_pressed::return#24 ]
Attempting to uplift remaining variables inzp[1]:164 [ menu::$9 ]
Uplifting [menu] best 2848520 combination reg byte a [ menu::$9 ]
Attempting to uplift remaining variables inzp[1]:165 [ keyboard_key_pressed::return#25 ]
Uplifting [keyboard_key_pressed] best 2847920 combination reg byte a [ keyboard_key_pressed::return#25 ]
Attempting to uplift remaining variables inzp[1]:166 [ menu::$13 ]
Uplifting [menu] best 2847320 combination reg byte a [ menu::$13 ]
Attempting to uplift remaining variables inzp[1]:167 [ keyboard_key_pressed::return#26 ]
Uplifting [keyboard_key_pressed] best 2846720 combination reg byte a [ keyboard_key_pressed::return#26 ]
Attempting to uplift remaining variables inzp[1]:168 [ menu::$17 ]
Uplifting [menu] best 2846120 combination reg byte a [ menu::$17 ]
Attempting to uplift remaining variables inzp[1]:169 [ keyboard_key_pressed::return#27 ]
Uplifting [keyboard_key_pressed] best 2845520 combination reg byte a [ keyboard_key_pressed::return#27 ]
Attempting to uplift remaining variables inzp[1]:170 [ menu::$21 ]
Uplifting [menu] best 2844920 combination reg byte a [ menu::$21 ]
Attempting to uplift remaining variables inzp[1]:171 [ keyboard_key_pressed::return#28 ]
Uplifting [keyboard_key_pressed] best 2844320 combination reg byte a [ keyboard_key_pressed::return#28 ]
Attempting to uplift remaining variables inzp[1]:172 [ menu::$25 ]
Uplifting [menu] best 2843720 combination reg byte a [ menu::$25 ]
Attempting to uplift remaining variables inzp[1]:173 [ keyboard_key_pressed::return#29 ]
Uplifting [keyboard_key_pressed] best 2843120 combination reg byte a [ keyboard_key_pressed::return#29 ]
Attempting to uplift remaining variables inzp[1]:174 [ menu::$29 ]
Uplifting [menu] best 2842520 combination reg byte a [ menu::$29 ]
Attempting to uplift remaining variables inzp[1]:175 [ keyboard_key_pressed::return#30 ]
Uplifting [keyboard_key_pressed] best 2841920 combination reg byte a [ keyboard_key_pressed::return#30 ]
Attempting to uplift remaining variables inzp[1]:176 [ menu::$33 ]
Uplifting [menu] best 2841320 combination reg byte a [ menu::$33 ]
Attempting to uplift remaining variables inzp[1]:177 [ keyboard_key_pressed::return#10 ]
Uplifting [keyboard_key_pressed] best 2840720 combination reg byte a [ keyboard_key_pressed::return#10 ]
Attempting to uplift remaining variables inzp[1]:178 [ menu::$37 ]
Uplifting [menu] best 2840120 combination reg byte a [ menu::$37 ]
Attempting to uplift remaining variables inzp[1]:179 [ keyboard_key_pressed::return#11 ]
Uplifting [keyboard_key_pressed] best 2839520 combination reg byte a [ keyboard_key_pressed::return#11 ]
Attempting to uplift remaining variables inzp[1]:180 [ menu::$41 ]
Uplifting [menu] best 2838920 combination reg byte a [ menu::$41 ]
Attempting to uplift remaining variables inzp[1]:181 [ keyboard_key_pressed::return#12 ]
Uplifting [keyboard_key_pressed] best 2838320 combination reg byte a [ keyboard_key_pressed::return#12 ]
Attempting to uplift remaining variables inzp[1]:182 [ menu::$45 ]
Uplifting [menu] best 2837720 combination reg byte a [ menu::$45 ]
Attempting to uplift remaining variables inzp[1]:183 [ keyboard_key_pressed::return#13 ]
Uplifting [keyboard_key_pressed] best 2837120 combination reg byte a [ keyboard_key_pressed::return#13 ]
Attempting to uplift remaining variables inzp[1]:184 [ menu::$49 ]
Uplifting [menu] best 2836520 combination reg byte a [ menu::$49 ]
Coalescing zero page register [ zp[1]:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::xd#0 ] ] with [ zp[1]:252 [ bitmap_line::xd#2 ] ] - score: 1
Coalescing zero page register [ zp[1]:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::xd#0 bitmap_line::xd#2 ] ] with [ zp[1]:255 [ bitmap_line::xd#1 ] ] - score: 1
Coalescing zero page register [ zp[1]:99 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::x1#0 ] ] with [ zp[1]:248 [ bitmap_line::x0#0 ] ] - score: 1
Coalescing zero page register [ zp[1]:107 [ bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 ] ] with [ zp[1]:251 [ bitmap_line::y1#0 ] ] - score: 1
Coalescing zero page register [ zp[1]: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 ] ] with [ zp[1]:249 [ bitmap_line::x1#0 ] ] - score: 1
Coalescing zero page register [ zp[2]:124 [ bitmap_clear::bitmap#2 bitmap_clear::bitmap#3 bitmap_clear::bitmap#5 bitmap_clear::bitmap#1 ] ] with [ zp[2]:269 [ bitmap_clear::bitmap#0 ] ] - score: 1
Coalescing zero page register [ zp[2]:259 [ bitmap_plot::plotter_x#0 ] ] with [ zp[2]:263 [ bitmap_plot::plotter#0 ] ] - score: 1
Coalescing zero page register [ zp[1]:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::xd#0 bitmap_line::xd#2 bitmap_line::xd#1 ] ] with [ zp[1]:105 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 ] ] - score: 2
Coalescing zero page register [ zp[1]:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::xd#0 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[1]:112 [ bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#1 bitmap_line_xdyd::xd#0 ] ] - score: 2
Coalescing zero page register [ zp[1]:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::xd#0 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#1 bitmap_line_xdyd::xd#0 ] ] with [ zp[1]:117 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ] ] - score: 2
Coalescing zero page register [ zp[1]:99 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::x1#0 bitmap_line::x0#0 ] ] with [ zp[1]:113 [ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::x1#0 ] ] - score: 1
Coalescing zero page register [ zp[1]:99 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::x1#0 bitmap_line::x0#0 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::x1#0 ] ] with [ zp[1]: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 ] ] - score: 1
Coalescing zero page register [ zp[1]:107 [ bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 bitmap_line::y1#0 ] ] with [ zp[1]:119 [ bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 ] ] - score: 1
Coalescing zero page register [ zp[1]:17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 ] ] with [ zp[1]:6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ] ]
Coalescing zero page register [ zp[2]:19 [ mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::gfxa#1 ] ] with [ zp[2]:7 [ mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::x#1 ] ]
Coalescing zero page register [ zp[1]:21 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ] ] with [ zp[1]: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 ] ]
Coalescing zero page register [ zp[2]:22 [ mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::chargen#4 mode_8bpppixelcell::chargen#1 ] ] with [ zp[2]:10 [ mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::gfxb#1 ] ]
Coalescing zero page register [ zp[1]:32 [ mode_sixsfred::cy#4 mode_sixsfred::cy#1 ] ] with [ zp[1]:24 [ mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ] ]
Coalescing zero page register [ zp[2]:34 [ mode_sixsfred::col#2 mode_sixsfred::col#3 mode_sixsfred::col#1 ] ] with [ zp[2]:26 [ mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::gfxb#7 mode_8bpppixelcell::gfxb#1 ] ]
Coalescing zero page register [ zp[1]:36 [ mode_sixsfred::ay#4 mode_sixsfred::ay#1 ] ] with [ zp[1]:25 [ mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ] ]
Coalescing zero page register [ zp[1]:40 [ mode_sixsfred::by#4 mode_sixsfred::by#1 ] ] with [ zp[1]:28 [ mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ] ]
Coalescing zero page register [ zp[2]:47 [ mode_twoplanebitmap::col#2 mode_twoplanebitmap::col#3 mode_twoplanebitmap::col#1 ] ] with [ zp[2]:37 [ mode_sixsfred::gfxa#2 mode_sixsfred::gfxa#3 mode_sixsfred::gfxa#1 ] ]
Coalescing zero page register [ zp[2]:50 [ mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::gfxa#7 mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::gfxa#1 ] ] with [ zp[2]:41 [ mode_sixsfred::gfxb#2 mode_sixsfred::gfxb#3 mode_sixsfred::gfxb#1 ] ]
Coalescing zero page register [ zp[1]:58 [ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 ] ] with [ zp[1]:45 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 ] ]
Coalescing zero page register [ zp[2]:60 [ mode_sixsfred2::col#2 mode_sixsfred2::col#3 mode_sixsfred2::col#1 ] ] with [ zp[2]:54 [ mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::gfxb#3 mode_twoplanebitmap::gfxb#1 ] ]
Coalescing zero page register [ zp[1]:62 [ mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 ] ] with [ zp[1]:49 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 ] ]
Coalescing zero page register [ zp[1]:66 [ mode_sixsfred2::by#4 mode_sixsfred2::by#1 ] ] with [ zp[1]:53 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 ] ]
Coalescing zero page register [ zp[2]:73 [ mode_hicolmcchar::col#2 mode_hicolmcchar::col#3 mode_hicolmcchar::col#1 ] ] with [ zp[2]:63 [ mode_sixsfred2::gfxa#2 mode_sixsfred2::gfxa#3 mode_sixsfred2::gfxa#1 ] ]
Coalescing zero page register [ zp[2]:75 [ mode_hicolmcchar::ch#2 mode_hicolmcchar::ch#3 mode_hicolmcchar::ch#1 ] ] with [ zp[2]:67 [ mode_sixsfred2::gfxb#2 mode_sixsfred2::gfxb#3 mode_sixsfred2::gfxb#1 ] ]
Coalescing zero page register [ zp[1]:78 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 ] ] with [ zp[1]:71 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 ] ]
Coalescing zero page register [ zp[2]:87 [ mode_hicolstdchar::col#2 mode_hicolstdchar::col#3 mode_hicolstdchar::col#1 ] ] with [ zp[2]:80 [ mode_hicolecmchar::col#2 mode_hicolecmchar::col#3 mode_hicolecmchar::col#1 ] ]
Coalescing zero page register [ zp[2]:89 [ mode_hicolstdchar::ch#2 mode_hicolstdchar::ch#3 mode_hicolstdchar::ch#1 ] ] with [ zp[2]:82 [ mode_hicolecmchar::ch#2 mode_hicolecmchar::ch#3 mode_hicolecmchar::ch#1 ] ]
Coalescing zero page register [ zp[1]:92 [ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 ] ] with [ zp[1]:85 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 ] ]
Coalescing zero page register [ zp[1]:106 [ bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 ] ] with [ zp[1]:97 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#1 bitmap_line_xdyi::yd#0 ] ]
Coalescing zero page register [ zp[1]:107 [ bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 bitmap_line::y1#0 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 ] ] with [ zp[1]: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[1]: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[1]:100 [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#2 ] ]
Coalescing zero page register [ zp[1]:111 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#1 bitmap_line_xdyd::yd#0 ] ] with [ zp[1]: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 ] ]
Coalescing zero page register [ zp[1]:118 [ bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 ] ] with [ zp[1]:114 [ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#2 ] ]
Coalescing zero page register [ zp[1]: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[1]: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[1]:123 [ bitmap_clear::y#4 bitmap_clear::y#1 ] ] with [ zp[1]:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::xd#0 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#1 bitmap_line_xdyd::xd#0 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ] ]
Coalescing zero page register [ zp[2]:130 [ bitmap_init::yoffs#2 bitmap_init::yoffs#4 bitmap_init::yoffs#1 ] ] with [ zp[2]: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[1]:133 [ mode_mcchar::cy#4 mode_mcchar::cy#1 ] ] with [ zp[1]:96 [ mode_stdbitmap::l#2 mode_stdbitmap::l#1 ] ]
Coalescing zero page register [ zp[2]:135 [ mode_mcchar::col#2 mode_mcchar::col#3 mode_mcchar::col#1 ] ] with [ zp[2]:94 [ mode_stdbitmap::ch#2 mode_stdbitmap::ch#3 mode_stdbitmap::ch#1 ] ]
Coalescing zero page register [ zp[1]:140 [ mode_ecmchar::cy#4 mode_ecmchar::cy#1 ] ] with [ zp[1]:99 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::x1#0 bitmap_line::x0#0 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::x1#0 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 ] ]
Coalescing zero page register [ zp[2]:142 [ mode_ecmchar::col#2 mode_ecmchar::col#3 mode_ecmchar::col#1 ] ] with [ zp[2]:137 [ mode_mcchar::ch#2 mode_mcchar::ch#3 mode_mcchar::ch#1 ] ]
Coalescing zero page register [ zp[1]:147 [ mode_stdchar::cy#4 mode_stdchar::cy#1 ] ] with [ zp[1]: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 bitmap_line::x1#0 ] ]
Coalescing zero page register [ zp[2]:149 [ mode_stdchar::col#2 mode_stdchar::col#3 mode_stdchar::col#1 ] ] with [ zp[2]:144 [ mode_ecmchar::ch#2 mode_ecmchar::ch#3 mode_ecmchar::ch#1 ] ]
Coalescing zero page register [ zp[2]:153 [ print_str_lines::str#3 print_str_lines::str#2 print_str_lines::str#0 ] ] with [ zp[2]:151 [ mode_stdchar::ch#2 mode_stdchar::ch#3 mode_stdchar::ch#1 ] ]
Coalescing zero page register [ zp[2]:155 [ print_char_cursor#35 print_char_cursor#21 print_char_cursor#102 print_char_cursor#36 print_char_cursor#25 ] ] with [ zp[2]:3 [ menu::c#2 menu::c#1 ] ]
Coalescing zero page register [ zp[2]:185 [ mode_8bppchunkybmm::$7 ] ] with [ zp[2]:159 [ memset::dst#2 memset::dst#1 ] ]
Coalescing zero page register [ zp[1]:204 [ keyboard_key_pressed::colidx#0 ] ] with [ zp[1]: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 ] ]
Coalescing zero page register [ zp[1]:221 [ mode_twoplanebitmap::$3 ] ] with [ zp[1]:212 [ mode_8bpppixelcell::$3 ] ]
Coalescing zero page register [ zp[1]:232 [ mode_hicolmcchar::$3 ] ] with [ zp[1]:226 [ mode_sixsfred2::$3 ] ]
Coalescing zero page register [ zp[1]:240 [ mode_hicolstdchar::$3 ] ] with [ zp[1]:236 [ mode_hicolecmchar::$3 ] ]
Coalescing zero page register [ zp[1]:279 [ mode_mcchar::$5 ] ] with [ zp[1]:245 [ mode_stdbitmap::col2#0 ] ]
Coalescing zero page register [ zp[1]:285 [ mode_ecmchar::$5 ] ] with [ zp[1]:272 [ bitmap_init::$10 ] ]
Coalescing zero page register [ zp[2]:47 [ mode_twoplanebitmap::col#2 mode_twoplanebitmap::col#3 mode_twoplanebitmap::col#1 mode_sixsfred::gfxa#2 mode_sixsfred::gfxa#3 mode_sixsfred::gfxa#1 ] ] with [ zp[2]:19 [ mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::gfxa#1 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::x#1 ] ]
Coalescing zero page register [ zp[2]:50 [ mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::gfxa#7 mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::gfxa#1 mode_sixsfred::gfxb#2 mode_sixsfred::gfxb#3 mode_sixsfred::gfxb#1 ] ] with [ zp[2]:22 [ mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::chargen#4 mode_8bpppixelcell::chargen#1 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::gfxb#1 ] ]
Coalescing zero page register [ zp[1]:58 [ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 ] ] with [ zp[1]:17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ] ]
Coalescing zero page register [ zp[2]:60 [ mode_sixsfred2::col#2 mode_sixsfred2::col#3 mode_sixsfred2::col#1 mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::gfxb#3 mode_twoplanebitmap::gfxb#1 ] ] with [ zp[2]:34 [ mode_sixsfred::col#2 mode_sixsfred::col#3 mode_sixsfred::col#1 mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::gfxb#7 mode_8bpppixelcell::gfxb#1 ] ]
Coalescing zero page register [ zp[1]:62 [ mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 ] ] with [ zp[1]:21 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 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 ] ]
Coalescing zero page register [ zp[1]:66 [ mode_sixsfred2::by#4 mode_sixsfred2::by#1 mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 ] ] with [ zp[1]:32 [ mode_sixsfred::cy#4 mode_sixsfred::cy#1 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ] ]
Coalescing zero page register [ zp[1]:78 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 ] ] with [ zp[1]:36 [ mode_sixsfred::ay#4 mode_sixsfred::ay#1 mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ] ]
Coalescing zero page register [ zp[2]:87 [ mode_hicolstdchar::col#2 mode_hicolstdchar::col#3 mode_hicolstdchar::col#1 mode_hicolecmchar::col#2 mode_hicolecmchar::col#3 mode_hicolecmchar::col#1 ] ] with [ zp[2]:73 [ mode_hicolmcchar::col#2 mode_hicolmcchar::col#3 mode_hicolmcchar::col#1 mode_sixsfred2::gfxa#2 mode_sixsfred2::gfxa#3 mode_sixsfred2::gfxa#1 ] ]
Coalescing zero page register [ zp[2]:89 [ mode_hicolstdchar::ch#2 mode_hicolstdchar::ch#3 mode_hicolstdchar::ch#1 mode_hicolecmchar::ch#2 mode_hicolecmchar::ch#3 mode_hicolecmchar::ch#1 ] ] with [ zp[2]:75 [ mode_hicolmcchar::ch#2 mode_hicolmcchar::ch#3 mode_hicolmcchar::ch#1 mode_sixsfred2::gfxb#2 mode_sixsfred2::gfxb#3 mode_sixsfred2::gfxb#1 ] ]
Coalescing zero page register [ zp[1]:92 [ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 ] ] with [ zp[1]:40 [ mode_sixsfred::by#4 mode_sixsfred::by#1 mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ] ]
Coalescing zero page register [ zp[1]:118 [ bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#2 ] ] with [ zp[1]: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#1 bitmap_line_xdyi::yd#0 ] ]
Coalescing zero page register [ zp[1]: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::e#3 bitmap_line_xdyd::e#0 bitmap_line_xdyd::e#6 bitmap_line_xdyd::e#2 bitmap_line_xdyd::e#1 ] ] with [ zp[1]: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#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#2 ] ]
Coalescing zero page register [ zp[2]:135 [ mode_mcchar::col#2 mode_mcchar::col#3 mode_mcchar::col#1 mode_stdbitmap::ch#2 mode_stdbitmap::ch#3 mode_stdbitmap::ch#1 ] ] with [ zp[2]: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 ] ]
Coalescing zero page register [ zp[2]:153 [ print_str_lines::str#3 print_str_lines::str#2 print_str_lines::str#0 mode_stdchar::ch#2 mode_stdchar::ch#3 mode_stdchar::ch#1 ] ] with [ zp[2]:142 [ mode_ecmchar::col#2 mode_ecmchar::col#3 mode_ecmchar::col#1 mode_mcchar::ch#2 mode_mcchar::ch#3 mode_mcchar::ch#1 ] ]
Coalescing zero page register [ zp[2]:155 [ print_char_cursor#35 print_char_cursor#21 print_char_cursor#102 print_char_cursor#36 print_char_cursor#25 menu::c#2 menu::c#1 ] ] with [ zp[2]:149 [ mode_stdchar::col#2 mode_stdchar::col#3 mode_stdchar::col#1 mode_ecmchar::ch#2 mode_ecmchar::ch#3 mode_ecmchar::ch#1 ] ]
Coalescing zero page register [ zp[1]:204 [ keyboard_key_pressed::colidx#0 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[1]:111 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#1 bitmap_line_xdyd::yd#0 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 ] ]
Coalescing zero page register [ zp[1]:221 [ mode_twoplanebitmap::$3 mode_8bpppixelcell::$3 ] ] with [ zp[1]:107 [ bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 bitmap_line::y1#0 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 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[1]:232 [ mode_hicolmcchar::$3 mode_sixsfred2::$3 ] ] with [ zp[1]:123 [ bitmap_clear::y#4 bitmap_clear::y#1 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::xd#0 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#1 bitmap_line_xdyd::xd#0 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ] ]
Coalescing zero page register [ zp[1]:240 [ mode_hicolstdchar::$3 mode_hicolecmchar::$3 ] ] with [ zp[1]:133 [ mode_mcchar::cy#4 mode_mcchar::cy#1 mode_stdbitmap::l#2 mode_stdbitmap::l#1 ] ]
Coalescing zero page register [ zp[2]:259 [ bitmap_plot::plotter_x#0 bitmap_plot::plotter#0 ] ] with [ zp[2]:185 [ mode_8bppchunkybmm::$7 memset::dst#2 memset::dst#1 ] ]
Coalescing zero page register [ zp[1]:279 [ mode_mcchar::$5 mode_stdbitmap::col2#0 ] ] with [ zp[1]:140 [ mode_ecmchar::cy#4 mode_ecmchar::cy#1 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::x1#0 bitmap_line::x0#0 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::x1#0 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 ] ]
Coalescing zero page register [ zp[1]:285 [ mode_ecmchar::$5 bitmap_init::$10 ] ] with [ zp[1]:147 [ mode_stdchar::cy#4 mode_stdchar::cy#1 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::x1#0 ] ]
Coalescing zero page register [ zp[2]:87 [ mode_hicolstdchar::col#2 mode_hicolstdchar::col#3 mode_hicolstdchar::col#1 mode_hicolecmchar::col#2 mode_hicolecmchar::col#3 mode_hicolecmchar::col#1 mode_hicolmcchar::col#2 mode_hicolmcchar::col#3 mode_hicolmcchar::col#1 mode_sixsfred2::gfxa#2 mode_sixsfred2::gfxa#3 mode_sixsfred2::gfxa#1 ] ] with [ zp[2]:47 [ mode_twoplanebitmap::col#2 mode_twoplanebitmap::col#3 mode_twoplanebitmap::col#1 mode_sixsfred::gfxa#2 mode_sixsfred::gfxa#3 mode_sixsfred::gfxa#1 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::gfxa#1 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::x#1 ] ]
Coalescing zero page register [ zp[2]:89 [ mode_hicolstdchar::ch#2 mode_hicolstdchar::ch#3 mode_hicolstdchar::ch#1 mode_hicolecmchar::ch#2 mode_hicolecmchar::ch#3 mode_hicolecmchar::ch#1 mode_hicolmcchar::ch#2 mode_hicolmcchar::ch#3 mode_hicolmcchar::ch#1 mode_sixsfred2::gfxb#2 mode_sixsfred2::gfxb#3 mode_sixsfred2::gfxb#1 ] ] with [ zp[2]:50 [ mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::gfxa#7 mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::gfxa#1 mode_sixsfred::gfxb#2 mode_sixsfred::gfxb#3 mode_sixsfred::gfxb#1 mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::chargen#4 mode_8bpppixelcell::chargen#1 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::gfxb#1 ] ]
Coalescing zero page register [ zp[1]:118 [ bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#1 bitmap_line_xdyi::yd#0 ] ] with [ zp[1]:58 [ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ] ]
Coalescing zero page register [ zp[1]: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::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::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#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#2 ] ] with [ zp[1]:62 [ mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 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 ] ]
Coalescing zero page register [ zp[2]:135 [ mode_mcchar::col#2 mode_mcchar::col#3 mode_mcchar::col#1 mode_stdbitmap::ch#2 mode_stdbitmap::ch#3 mode_stdbitmap::ch#1 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[2]:60 [ mode_sixsfred2::col#2 mode_sixsfred2::col#3 mode_sixsfred2::col#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::gfxb#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::gfxb#7 mode_8bpppixelcell::gfxb#1 ] ]
Coalescing zero page register [ zp[1]:240 [ mode_hicolstdchar::$3 mode_hicolecmchar::$3 mode_mcchar::cy#4 mode_mcchar::cy#1 mode_stdbitmap::l#2 mode_stdbitmap::l#1 ] ] with [ zp[1]:66 [ mode_sixsfred2::by#4 mode_sixsfred2::by#1 mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 mode_sixsfred::cy#4 mode_sixsfred::cy#1 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ] ]
Coalescing zero page register [ zp[2]:259 [ bitmap_plot::plotter_x#0 bitmap_plot::plotter#0 mode_8bppchunkybmm::$7 memset::dst#2 memset::dst#1 ] ] with [ zp[2]:153 [ print_str_lines::str#3 print_str_lines::str#2 print_str_lines::str#0 mode_stdchar::ch#2 mode_stdchar::ch#3 mode_stdchar::ch#1 mode_ecmchar::col#2 mode_ecmchar::col#3 mode_ecmchar::col#1 mode_mcchar::ch#2 mode_mcchar::ch#3 mode_mcchar::ch#1 ] ]
Coalescing zero page register [ zp[1]:279 [ mode_mcchar::$5 mode_stdbitmap::col2#0 mode_ecmchar::cy#4 mode_ecmchar::cy#1 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::x1#0 bitmap_line::x0#0 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::x1#0 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 ] ] with [ zp[1]:78 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 mode_sixsfred::ay#4 mode_sixsfred::ay#1 mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ] ]
Coalescing zero page register [ zp[1]:291 [ mode_stdchar::$5 ] ] with [ zp[1]:92 [ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 mode_sixsfred::by#4 mode_sixsfred::by#1 mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ] ]
Coalescing zero page register [ zp[2]:155 [ print_char_cursor#35 print_char_cursor#21 print_char_cursor#102 print_char_cursor#36 print_char_cursor#25 menu::c#2 menu::c#1 mode_stdchar::col#2 mode_stdchar::col#3 mode_stdchar::col#1 mode_ecmchar::ch#2 mode_ecmchar::ch#3 mode_ecmchar::ch#1 ] ] with [ zp[2]:87 [ mode_hicolstdchar::col#2 mode_hicolstdchar::col#3 mode_hicolstdchar::col#1 mode_hicolecmchar::col#2 mode_hicolecmchar::col#3 mode_hicolecmchar::col#1 mode_hicolmcchar::col#2 mode_hicolmcchar::col#3 mode_hicolmcchar::col#1 mode_sixsfred2::gfxa#2 mode_sixsfred2::gfxa#3 mode_sixsfred2::gfxa#1 mode_twoplanebitmap::col#2 mode_twoplanebitmap::col#3 mode_twoplanebitmap::col#1 mode_sixsfred::gfxa#2 mode_sixsfred::gfxa#3 mode_sixsfred::gfxa#1 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::gfxa#1 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::x#1 ] ]
Coalescing zero page register [ zp[2]:157 [ print_line_cursor#18 print_line_cursor#17 print_line_cursor#19 ] ] with [ zp[2]:89 [ mode_hicolstdchar::ch#2 mode_hicolstdchar::ch#3 mode_hicolstdchar::ch#1 mode_hicolecmchar::ch#2 mode_hicolecmchar::ch#3 mode_hicolecmchar::ch#1 mode_hicolmcchar::ch#2 mode_hicolmcchar::ch#3 mode_hicolmcchar::ch#1 mode_sixsfred2::gfxb#2 mode_sixsfred2::gfxb#3 mode_sixsfred2::gfxb#1 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::gfxa#7 mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::gfxa#1 mode_sixsfred::gfxb#2 mode_sixsfred::gfxb#3 mode_sixsfred::gfxb#1 mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::chargen#4 mode_8bpppixelcell::chargen#1 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::gfxb#1 ] ]
Coalescing zero page register [ zp[1]:291 [ mode_stdchar::$5 mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 mode_sixsfred::by#4 mode_sixsfred::by#1 mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ] ] with [ zp[1]:204 [ keyboard_key_pressed::colidx#0 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::yd#2 bitmap_line_xdyd::yd#1 bitmap_line_xdyd::yd#0 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 (was zp[1]:118) zp[1]:2 [ bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#1 bitmap_line_xdyi::yd#0 mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ]
Allocated (was zp[1]:121) zp[1]:3 [ 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::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::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#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#2 mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 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 (was zp[2]:135) zp[2]:4 [ mode_mcchar::col#2 mode_mcchar::col#3 mode_mcchar::col#1 mode_stdbitmap::ch#2 mode_stdbitmap::ch#3 mode_stdbitmap::ch#1 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_sixsfred2::col#2 mode_sixsfred2::col#3 mode_sixsfred2::col#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::gfxb#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::gfxb#7 mode_8bpppixelcell::gfxb#1 ]
Allocated (was zp[2]:155) zp[2]:6 [ print_char_cursor#35 print_char_cursor#21 print_char_cursor#102 print_char_cursor#36 print_char_cursor#25 menu::c#2 menu::c#1 mode_stdchar::col#2 mode_stdchar::col#3 mode_stdchar::col#1 mode_ecmchar::ch#2 mode_ecmchar::ch#3 mode_ecmchar::ch#1 mode_hicolstdchar::col#2 mode_hicolstdchar::col#3 mode_hicolstdchar::col#1 mode_hicolecmchar::col#2 mode_hicolecmchar::col#3 mode_hicolecmchar::col#1 mode_hicolmcchar::col#2 mode_hicolmcchar::col#3 mode_hicolmcchar::col#1 mode_sixsfred2::gfxa#2 mode_sixsfred2::gfxa#3 mode_sixsfred2::gfxa#1 mode_twoplanebitmap::col#2 mode_twoplanebitmap::col#3 mode_twoplanebitmap::col#1 mode_sixsfred::gfxa#2 mode_sixsfred::gfxa#3 mode_sixsfred::gfxa#1 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::gfxa#1 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::x#1 ]
Allocated (was zp[2]:157) zp[2]:8 [ print_line_cursor#18 print_line_cursor#17 print_line_cursor#19 mode_hicolstdchar::ch#2 mode_hicolstdchar::ch#3 mode_hicolstdchar::ch#1 mode_hicolecmchar::ch#2 mode_hicolecmchar::ch#3 mode_hicolecmchar::ch#1 mode_hicolmcchar::ch#2 mode_hicolmcchar::ch#3 mode_hicolmcchar::ch#1 mode_sixsfred2::gfxb#2 mode_sixsfred2::gfxb#3 mode_sixsfred2::gfxb#1 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::gfxa#7 mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::gfxa#1 mode_sixsfred::gfxb#2 mode_sixsfred::gfxb#3 mode_sixsfred::gfxb#1 mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::chargen#4 mode_8bpppixelcell::chargen#1 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::gfxb#1 ]
Allocated (was zp[1]:221) zp[1]:10 [ mode_twoplanebitmap::$3 mode_8bpppixelcell::$3 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 bitmap_line::y1#0 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 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 (was zp[1]:232) zp[1]:11 [ mode_hicolmcchar::$3 mode_sixsfred2::$3 bitmap_clear::y#4 bitmap_clear::y#1 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::xd#0 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#1 bitmap_line_xdyd::xd#0 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ]
Allocated (was zp[1]:240) zp[1]:12 [ mode_hicolstdchar::$3 mode_hicolecmchar::$3 mode_mcchar::cy#4 mode_mcchar::cy#1 mode_stdbitmap::l#2 mode_stdbitmap::l#1 mode_sixsfred2::by#4 mode_sixsfred2::by#1 mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 mode_sixsfred::cy#4 mode_sixsfred::cy#1 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ]
Allocated (was zp[2]:259) zp[2]:13 [ bitmap_plot::plotter_x#0 bitmap_plot::plotter#0 mode_8bppchunkybmm::$7 memset::dst#2 memset::dst#1 print_str_lines::str#3 print_str_lines::str#2 print_str_lines::str#0 mode_stdchar::ch#2 mode_stdchar::ch#3 mode_stdchar::ch#1 mode_ecmchar::col#2 mode_ecmchar::col#3 mode_ecmchar::col#1 mode_mcchar::ch#2 mode_mcchar::ch#3 mode_mcchar::ch#1 ]
Allocated (was zp[2]:261) zp[2]:15 [ bitmap_plot::plotter_y#0 ]
Allocated (was zp[1]:279) zp[1]:17 [ mode_mcchar::$5 mode_stdbitmap::col2#0 mode_ecmchar::cy#4 mode_ecmchar::cy#1 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::x1#0 bitmap_line::x0#0 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::x1#0 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 mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 mode_sixsfred::ay#4 mode_sixsfred::ay#1 mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ]
Allocated (was zp[1]:285) zp[1]:18 [ mode_ecmchar::$5 bitmap_init::$10 mode_stdchar::cy#4 mode_stdchar::cy#1 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::x1#0 ]
Allocated (was zp[1]:291) zp[1]:19 [ mode_stdchar::$5 mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 mode_sixsfred::by#4 mode_sixsfred::by#1 mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 keyboard_key_pressed::colidx#0 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::yd#2 bitmap_line_xdyd::yd#1 bitmap_line_xdyd::yd#0 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 ]
ASSEMBLER BEFORE OPTIMIZATION
// File Comments
// Exploring C64DTV Screen Modes
// Upstart
.pc = $801 "Basic"
:BasicUpstart(main)
.pc = $80d "Program"
// Global Constants & labels
.const VIC_ECM = $40
.const VIC_BMM = $20
.const VIC_DEN = $10
.const VIC_RSEL = 8
.const VIC_MCM = $10
.const VIC_CSEL = 8
// Mask for PROCESSOR_PORT_DDR which allows only memory configuration to be written
.const PROCPORT_DDR_MEMORY_MASK = 7
// RAM in 0xA000, 0xE000 I/O in 0xD000
.const PROCPORT_RAM_IO = 5
// RAM in 0xA000, 0xE000 CHAR ROM in 0xD000
.const PROCPORT_RAM_CHARROM = 1
// The colors of the C64
.const BLACK = 0
.const GREEN = 5
.const BLUE = 6
.const LIGHT_GREEN = $d
.const DTV_FEATURE_ENABLE = 1
.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
.const DTV_COLOR_BANK_DEFAULT = $1d800
.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
.const OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR = 2
.const OFFSET_STRUCT_MOS6526_CIA_PORT_B = 1
.label RASTER = $d012
.label BORDER_COLOR = $d020
.label BG_COLOR = $d021
.label BG_COLOR1 = $d022
.label BG_COLOR2 = $d023
.label BG_COLOR3 = $d024
.label VIC_CONTROL = $d011
.label VIC_CONTROL2 = $d016
.label VIC_MEMORY = $d018
// Processor port data direction register
.label PROCPORT_DDR = 0
// Processor Port Register controlling RAM/ROM configuration and the datasette
.label PROCPORT = 1
// Color Ram
.label COLS = $d800
// The CIA#1: keyboard matrix, joystick #1/#2
.label CIA1 = $dc00
// The CIA#2: Serial bus, RS-232, VIC memory bank
.label CIA2 = $dd00
// Feature enables or disables the extra C64 DTV features
.label DTV_FEATURE = $d03f
// Controls the graphics modes of the C64 DTV
.label DTV_CONTROL = $d03c
// 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
// 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
.label print_char_cursor = 6
.label print_line_cursor = 8
// @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 nomodify byte*) PROCPORT_DDR) ← (const nomodify byte) PROCPORT_DDR_MEMORY_MASK -- _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 nomodify byte*) PROCPORT) ← (const nomodify byte) PROCPORT_RAM_IO -- _deref_pbuc1=vbuc2
lda #PROCPORT_RAM_IO
sta PROCPORT
// [7] *((const nomodify byte*) DTV_FEATURE) ← (const nomodify byte) DTV_FEATURE_ENABLE -- _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 = 6
// [10] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Charset ROM
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [11] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<DTV_COLOR_BANK_DEFAULT/$400
sta DTV_COLOR_BANK_LO
// [12] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [13] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Mode
lda #0
sta DTV_CONTROL
// [14] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR
// [15] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) menu::CHARSET/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2
// [16] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [17] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [18] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) menu::CHARSET&(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 nomodify byte*) DTV_PALETTE + (byte) menu::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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 nomodify byte*) COLS [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 nomodify byte*) COLS+(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 nomodify byte*) BG_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BG_COLOR
// [26] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta BORDER_COLOR
// [27] call print_set_screen
// Display menu Text
// [896] 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
// [887] 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 nomodify byte) KEY_1 [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::$5 ← (byte) keyboard_key_pressed::return#2
// [36] if((byte~) menu::$5==(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 nomodify byte) KEY_2 [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::$9 ← (byte) keyboard_key_pressed::return#24
// [44] if((byte~) menu::$9==(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 nomodify byte) KEY_3 [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::$13 ← (byte) keyboard_key_pressed::return#25
// [51] if((byte~) menu::$13==(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 nomodify byte) KEY_4 [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::$17 ← (byte) keyboard_key_pressed::return#26
// [58] if((byte~) menu::$17==(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 nomodify byte) KEY_6 [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::$21 ← (byte) keyboard_key_pressed::return#27
// [65] if((byte~) menu::$21==(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 nomodify byte) KEY_7 [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::$25 ← (byte) keyboard_key_pressed::return#28
// [72] if((byte~) menu::$25==(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 nomodify byte) KEY_8 [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::$29 ← (byte) keyboard_key_pressed::return#29
// [79] if((byte~) menu::$29==(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 nomodify byte) KEY_A [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::$33 ← (byte) keyboard_key_pressed::return#30
// [86] if((byte~) menu::$33==(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 nomodify byte) KEY_B [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::$37 ← (byte) keyboard_key_pressed::return#10
// [93] if((byte~) menu::$37==(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 nomodify byte) KEY_C [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::$41 ← (byte) keyboard_key_pressed::return#11
// [100] if((byte~) menu::$41==(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 nomodify byte) KEY_D [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::$45 ← (byte) keyboard_key_pressed::return#12
// [107] if((byte~) menu::$45==(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 nomodify byte) KEY_E [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::$49 ← (byte) keyboard_key_pressed::return#13
// [114] if((byte~) menu::$49==(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 nomodify byte) LIGHT_GREEN -- _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 __7 = $d
.label gfxb = 8
.label x = 6
.label y = 2
// [119] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY|(const nomodify byte) DTV_COLORRAM_OFF -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY|DTV_COLORRAM_OFF
sta DTV_CONTROL
// [120] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Mode
lda #VIC_ECM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [121] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_MCM|VIC_CSEL
sta VIC_CONTROL2
// [122] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
lda #0
sta DTV_PLANEB_START_LO
// [123] *((const nomodify byte*) DTV_PLANEB_START_MI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_MI
// [124] *((const nomodify byte*) DTV_PLANEB_START_HI) ← <>(const nomodify dword) mode_8bppchunkybmm::PLANEB -- _deref_pbuc1=vbuc2
lda #<PLANEB>>$10
sta DTV_PLANEB_START_HI
// [125] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 8 -- _deref_pbuc1=vbuc2
lda #8
sta DTV_PLANEB_STEP
// [126] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// [127] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_HI
// [128] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Border color
lda #0
sta BORDER_COLOR
// [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 nomodify byte*) DTV_PALETTE + (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 nomodify dword) mode_8bppchunkybmm::PLANEB/(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 nomodify dword) mode_8bppchunkybmm::PLANEB/(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::$7 ← (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#6 -- vwuz1=vwuz2_plus_vbuz3
lda.z y
clc
adc.z x
sta.z __7
lda #0
adc.z x+1
sta.z __7+1
// [143] (byte) mode_8bppchunkybmm::c#0 ← (byte)(word~) mode_8bppchunkybmm::$7 -- vbuaa=_byte_vwuz1
lda.z __7
// [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
// Reset CPU BANK segment to $4000
// [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
// Leave control to the user until exit
// [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 nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY|(const nomodify byte) DTV_COLORRAM_OFF [phi:mode_8bppchunkybmm::@10->mode_ctrl#0] -- vbuxx=vbuc1
ldx #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY|DTV_COLORRAM_OFF
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: {
// DTV Graphics Mode - Reset
.label ctrl = 3
// [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 nomodify byte*) RASTER)!=(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 nomodify byte) KEY_SPACE [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 -- vbuz1=vbuxx
// Read the current control byte
stx.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 nomodify byte) KEY_L [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 nomodify byte) DTV_LINEAR -- 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 nomodify byte) KEY_H [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 nomodify byte) DTV_HIGHCOLOR -- 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 nomodify byte) KEY_O [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 nomodify byte) DTV_OVERSCAN -- 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 nomodify byte) KEY_B [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 nomodify byte) DTV_BORDER_OFF -- 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 nomodify byte) KEY_U [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 nomodify byte) DTV_CHUNKY -- 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 nomodify byte) KEY_C [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 nomodify byte) DTV_COLORRAM_OFF -- 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 nomodify byte) KEY_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] -- 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_vbuxx_then_la1
cpx.z ctrl
beq __b1_from___b11
jmp __b18
// mode_ctrl::@18
__b18:
// [208] (byte) dtv_control#17 ← (byte) mode_ctrl::ctrl#14 -- vbuxx=vbuz1
ldx.z ctrl
// [209] *((const nomodify byte*) DTV_CONTROL) ← (byte) mode_ctrl::ctrl#14 -- _deref_pbuc1=vbuz1
lda.z ctrl
sta DTV_CONTROL
// [210] *((const nomodify byte*) BORDER_COLOR) ← (byte) mode_ctrl::ctrl#14 -- _deref_pbuc1=vbuz1
lda.z ctrl
sta BORDER_COLOR
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 = $13
// [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*) keyboard_matrix_col_bitmask + (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] *((byte*)(const nomodify struct MOS6526_CIA*) CIA1) ← *((const byte*) keyboard_matrix_row_bitmask + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuyy
lda keyboard_matrix_row_bitmask,y
sta CIA1
// [221] (byte) keyboard_matrix_read::return#0 ← ~ *((byte*)(const nomodify struct MOS6526_CIA*) CIA1+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_B) -- vbuaa=_bnot__deref_pbuc1
lda CIA1+OFFSET_STRUCT_MOS6526_CIA_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) ← (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 __3 = $a
// Screen Chars for Plane A (screen) - 16x16 repeating
.label gfxa = 6
.label ay = 2
.label bits = $11
.label chargen = 8
.label gfxb = 4
.label col = $13
.label cr = $c
.label ch = 3
// [227] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY
sta DTV_CONTROL
// [228] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Mode
lda #VIC_ECM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [229] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_MCM|VIC_CSEL
sta VIC_CONTROL2
// [230] *((const nomodify byte*) DTV_PLANEA_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane A Counter
lda #0
sta DTV_PLANEA_START_LO
// [231] *((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_8bpppixelcell::PLANEA -- _deref_pbuc1=vbuc2
lda #>PLANEA
sta DTV_PLANEA_START_MI
// [232] *((const nomodify byte*) DTV_PLANEA_START_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_START_HI
// [233] *((const nomodify byte*) DTV_PLANEA_STEP) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEA_STEP
// [234] *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_LO
// [235] *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_HI
// [236] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
lda #0
sta DTV_PLANEB_START_LO
// [237] *((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_8bpppixelcell::PLANEB -- _deref_pbuc1=vbuc2
lda #>PLANEB
sta DTV_PLANEB_START_MI
// [238] *((const nomodify byte*) DTV_PLANEB_START_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_HI
// [239] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_STEP
// [240] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// [241] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_HI
// [242] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Border color
lda #0
sta BORDER_COLOR
// [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 nomodify byte*) DTV_PALETTE + (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 nomodify byte*) mode_8bpppixelcell::PLANEA [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::$2 ← (byte) mode_8bpppixelcell::ay#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z ay
// [250] (byte~) mode_8bpppixelcell::$3 ← (byte~) mode_8bpppixelcell::$2 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z __3
// [251] (byte~) mode_8bpppixelcell::$4 ← (byte) mode_8bpppixelcell::ax#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// [252] (byte~) mode_8bpppixelcell::$5 ← (byte~) mode_8bpppixelcell::$3 | (byte~) mode_8bpppixelcell::$4 -- vbuaa=vbuz1_bor_vbuaa
ora.z __3
// [253] *((byte*) mode_8bpppixelcell::gfxa#2) ← (byte~) mode_8bpppixelcell::$5 -- _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 nomodify byte*) PROCPORT) ← (const nomodify byte) PROCPORT_RAM_CHARROM -- _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 nomodify byte*) mode_8bpppixelcell::PLANEB [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 [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::$8 ← (byte) mode_8bpppixelcell::bits#2 & (byte) $80 -- vbuaa=vbuz1_band_vbuc1
lda #$80
and.z bits
// [266] if((byte~) mode_8bpppixelcell::$8==(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 nomodify byte*) PROCPORT) ← (const nomodify byte) PROCPORT_RAM_IO -- _deref_pbuc1=vbuc2
lda #PROCPORT_RAM_IO
sta PROCPORT
// [280] call mode_ctrl
// Leave control to the user until exit
// [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 nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY [phi:mode_8bpppixelcell::@13->mode_ctrl#0] -- vbuxx=vbuc1
ldx #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY
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
// Colors for high 4 bits of 8bpp
.label col = 4
.label cy = $c
// Graphics for Plane A () - horizontal stripes every 2 pixels
.label gfxa = 6
.label ay = $11
// Graphics for Plane B - vertical stripes every 2 pixels
.label gfxb = 8
.label by = $13
// [282] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR|DTV_LINEAR
sta DTV_CONTROL
// [283] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Mode
lda #VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [284] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_MCM|VIC_CSEL
sta VIC_CONTROL2
// [285] *((const nomodify byte*) DTV_PLANEA_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane A Counter
lda #0
sta DTV_PLANEA_START_LO
// [286] *((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_sixsfred::PLANEA -- _deref_pbuc1=vbuc2
lda #>PLANEA
sta DTV_PLANEA_START_MI
// [287] *((const nomodify byte*) DTV_PLANEA_START_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_START_HI
// [288] *((const nomodify byte*) DTV_PLANEA_STEP) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEA_STEP
// [289] *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_LO
// [290] *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_HI
// [291] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
lda #0
sta DTV_PLANEB_START_LO
// [292] *((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_sixsfred::PLANEB -- _deref_pbuc1=vbuc2
lda #>PLANEB
sta DTV_PLANEB_START_MI
// [293] *((const nomodify byte*) DTV_PLANEB_START_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_HI
// [294] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEB_STEP
// [295] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// [296] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_HI
// [297] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(const nomodify byte*) mode_sixsfred::COLORS/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// [298] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (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 nomodify byte*) DTV_PALETTE + (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 nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDER_COLOR
// [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 nomodify byte*) mode_sixsfred::COLORS [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::$2 ← (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#4 -- vbuaa=vbuxx_plus_vbuz1
txa
clc
adc.z cy
// [307] (byte~) mode_sixsfred::$3 ← (byte~) mode_sixsfred::$2 & (byte) $f -- vbuaa=vbuaa_band_vbuc1
and #$f
// [308] *((byte*) mode_sixsfred::col#2) ← (byte~) mode_sixsfred::$3 -- _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 nomodify byte*) mode_sixsfred::PLANEA [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::$6 ← (byte) mode_sixsfred::ay#4 >> (byte) 1 -- vbuaa=vbuz1_ror_1
lda.z ay
lsr
// [317] (byte) mode_sixsfred::row#0 ← (byte~) mode_sixsfred::$6 & (byte) 3 -- vbuaa=vbuaa_band_vbuc1
and #3
// [318] *((byte*) mode_sixsfred::gfxa#2) ← *((const byte*) mode_sixsfred::row_bitmask + (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 nomodify byte*) mode_sixsfred::PLANEB [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
// Leave control to the user until exit
// [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 nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR [phi:mode_sixsfred::@12->mode_ctrl#0] -- vbuxx=vbuc1
ldx #DTV_HIGHCOLOR|DTV_LINEAR
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 BG_COLORor0[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 BG_COLORor1[7:0]
mode_twoplanebitmap: {
.label PLANEA = $4000
.label PLANEB = $6000
.label COLORS = $8000
.label __3 = $a
// Color for bits 11
// Colors for bits 01 / 10
.label col = 6
.label cy = 2
// Graphics for Plane A - horizontal stripes
.label gfxa = 8
.label ay = 3
// Graphics for Plane B - vertical stripes
.label gfxb = 4
.label by = $c
// [335] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR|DTV_LINEAR
sta DTV_CONTROL
// [336] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Mode
lda #VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [337] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [338] *((const nomodify byte*) DTV_PLANEA_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane A Counter
lda #0
sta DTV_PLANEA_START_LO
// [339] *((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_twoplanebitmap::PLANEA -- _deref_pbuc1=vbuc2
lda #>PLANEA
sta DTV_PLANEA_START_MI
// [340] *((const nomodify byte*) DTV_PLANEA_START_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_START_HI
// [341] *((const nomodify byte*) DTV_PLANEA_STEP) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEA_STEP
// [342] *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_LO
// [343] *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_HI
// [344] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
lda #0
sta DTV_PLANEB_START_LO
// [345] *((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_twoplanebitmap::PLANEB -- _deref_pbuc1=vbuc2
lda #>PLANEB
sta DTV_PLANEB_START_MI
// [346] *((const nomodify byte*) DTV_PLANEB_START_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_HI
// [347] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEB_STEP
// [348] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// [349] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_HI
// [350] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(const nomodify byte*) mode_twoplanebitmap::COLORS/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// [351] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (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 nomodify byte*) DTV_PALETTE + (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 nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDER_COLOR
// [357] *((const nomodify byte*) BG_COLOR) ← (byte) $70 -- _deref_pbuc1=vbuc2
lda #$70
sta BG_COLOR
// [358] *((const nomodify byte*) BG_COLOR1) ← (byte) $d4 -- _deref_pbuc1=vbuc2
// Color for bits 00
lda #$d4
sta BG_COLOR1
// [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 nomodify byte*) mode_twoplanebitmap::COLORS [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::$2 ← (byte) mode_twoplanebitmap::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// [362] (byte~) mode_twoplanebitmap::$3 ← (byte~) mode_twoplanebitmap::$2 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z __3
// [363] (byte~) mode_twoplanebitmap::$4 ← (byte) mode_twoplanebitmap::cx#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// [364] (byte~) mode_twoplanebitmap::$5 ← (byte~) mode_twoplanebitmap::$3 | (byte~) mode_twoplanebitmap::$4 -- vbuaa=vbuz1_bor_vbuaa
ora.z __3
// [365] *((byte*) mode_twoplanebitmap::col#2) ← (byte~) mode_twoplanebitmap::$5 -- _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 nomodify byte*) mode_twoplanebitmap::PLANEA [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::$8 ← (byte) mode_twoplanebitmap::ay#5 & (byte) 4 -- vbuaa=vbuz1_band_vbuc1
lda #4
and.z ay
// [374] if((byte~) mode_twoplanebitmap::$8==(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 nomodify byte*) mode_twoplanebitmap::PLANEB [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
// Leave control to the user until exit
// [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 nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR [phi:mode_twoplanebitmap::@15->mode_ctrl#0] -- vbuxx=vbuc1
ldx #DTV_HIGHCOLOR|DTV_LINEAR
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 __3 = $b
// Colors for high 4 bits of 8bpp
.label col = 4
.label cy = 2
// Graphics for Plane A () - horizontal stripes every 2 pixels
.label gfxa = 6
.label ay = 3
// Graphics for Plane B - vertical stripes every 2 pixels
.label gfxb = 8
.label by = $c
// [395] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_LINEAR -- _deref_pbuc1=vbuc2
lda #DTV_LINEAR
sta DTV_CONTROL
// [396] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Mode
lda #VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [397] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_MCM|VIC_CSEL
sta VIC_CONTROL2
// [398] *((const nomodify byte*) DTV_PLANEA_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane A Counter
lda #0
sta DTV_PLANEA_START_LO
// [399] *((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_sixsfred2::PLANEA -- _deref_pbuc1=vbuc2
lda #>PLANEA
sta DTV_PLANEA_START_MI
// [400] *((const nomodify byte*) DTV_PLANEA_START_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_START_HI
// [401] *((const nomodify byte*) DTV_PLANEA_STEP) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEA_STEP
// [402] *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_LO
// [403] *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_HI
// [404] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
lda #0
sta DTV_PLANEB_START_LO
// [405] *((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_sixsfred2::PLANEB -- _deref_pbuc1=vbuc2
lda #>PLANEB
sta DTV_PLANEB_START_MI
// [406] *((const nomodify byte*) DTV_PLANEB_START_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_HI
// [407] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEB_STEP
// [408] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// [409] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_HI
// [410] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(const nomodify byte*) mode_sixsfred2::COLORS/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// [411] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (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 nomodify byte*) DTV_PALETTE + (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 nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDER_COLOR
// [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 nomodify byte*) mode_sixsfred2::COLORS [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::$2 ← (byte) mode_sixsfred2::cx#2 & (byte) 3 -- vbuaa=vbuxx_band_vbuc1
txa
and #3
// [420] (byte~) mode_sixsfred2::$3 ← (byte~) mode_sixsfred2::$2 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z __3
// [421] (byte~) mode_sixsfred2::$4 ← (byte) mode_sixsfred2::cy#4 & (byte) 3 -- vbuaa=vbuz1_band_vbuc1
lda #3
and.z cy
// [422] (byte~) mode_sixsfred2::$5 ← (byte~) mode_sixsfred2::$3 | (byte~) mode_sixsfred2::$4 -- vbuaa=vbuz1_bor_vbuaa
ora.z __3
// [423] *((byte*) mode_sixsfred2::col#2) ← (byte~) mode_sixsfred2::$5 -- _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 nomodify byte*) mode_sixsfred2::PLANEA [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::$8 ← (byte) mode_sixsfred2::ay#4 >> (byte) 1 -- vbuaa=vbuz1_ror_1
lda.z ay
lsr
// [432] (byte) mode_sixsfred2::row#0 ← (byte~) mode_sixsfred2::$8 & (byte) 3 -- vbuaa=vbuaa_band_vbuc1
and #3
// [433] *((byte*) mode_sixsfred2::gfxa#2) ← *((const byte*) mode_sixsfred2::row_bitmask + (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 nomodify byte*) mode_sixsfred2::PLANEB [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
// Leave control to the user until exit
// [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 nomodify byte) DTV_LINEAR [phi:mode_sixsfred2::@12->mode_ctrl#0] -- vbuxx=vbuc1
ldx #DTV_LINEAR
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 BG_COLORor0[7:0]
// - 1: 8bpp ColorData[7:4] "0" & Color[2:0]
//GfxData Pixel Shifter (2) if ColorData[3:3] = 1:
// - 00: 8bpp BG_COLORor0[7:0]
// - 01: 8bpp BG_COLORor1[7:0]
// - 10: 8bpp BG_COLORor2[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 __3 = $b
// Char Colors and screen chars
.label col = 6
.label ch = 8
.label cy = $11
// [450] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [451] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify byte*) mode_hicolmcchar::COLORS/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// [452] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [453] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR
sta DTV_CONTROL
// [454] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR
// [455] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_hicolmcchar::CHARSET/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2
// [456] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [457] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL|(const nomodify byte) VIC_MCM -- _deref_pbuc1=vbuc2
lda #VIC_CSEL|VIC_MCM
sta VIC_CONTROL2
// [458] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolmcchar::CHARSET&(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 nomodify byte*) DTV_PALETTE + (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 nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDER_COLOR
// [464] *((const nomodify byte*) BG_COLOR) ← (byte) $50 -- _deref_pbuc1=vbuc2
lda #$50
sta BG_COLOR
// [465] *((const nomodify byte*) BG_COLOR1) ← (byte) $54 -- _deref_pbuc1=vbuc2
lda #$54
sta BG_COLOR1
// [466] *((const nomodify byte*) BG_COLOR2) ← (byte) $58 -- _deref_pbuc1=vbuc2
lda #$58
sta BG_COLOR2
// [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 nomodify byte*) mode_hicolmcchar::SCREEN [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 nomodify byte*) mode_hicolmcchar::COLORS [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::$2 ← (byte) mode_hicolmcchar::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// [470] (byte~) mode_hicolmcchar::$3 ← (byte~) mode_hicolmcchar::$2 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z __3
// [471] (byte~) mode_hicolmcchar::$4 ← (byte) mode_hicolmcchar::cx#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// [472] (byte) mode_hicolmcchar::v#0 ← (byte~) mode_hicolmcchar::$3 | (byte~) mode_hicolmcchar::$4 -- vbuaa=vbuz1_bor_vbuaa
ora.z __3
// [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
// Leave control to the user until exit
// [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 nomodify byte) DTV_HIGHCOLOR [phi:mode_hicolmcchar::@6->mode_ctrl#0] -- vbuxx=vbuc1
ldx #DTV_HIGHCOLOR
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 BG_COLORor0[7:0]
// - CharData[7:6] 01: 8bpp BG_COLORor1[7:0]
// - CharData[7:6] 10: 8bpp BG_COLORor2[7:0]
// - CharData[7:6] 11: 8bpp BG_COLORor3[7:0]
// - 1: 8bpp ColorData[7:0]
mode_hicolecmchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $8400
.label __3 = $c
// Char Colors and screen chars
.label col = 6
.label ch = 8
.label cy = $11
// [484] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [485] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify byte*) mode_hicolecmchar::COLORS/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// [486] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [487] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR
sta DTV_CONTROL
// [488] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR
// [489] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_hicolecmchar::CHARSET/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2
// [490] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(const nomodify byte) VIC_ECM|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|VIC_ECM|3
sta VIC_CONTROL
// [491] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [492] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolecmchar::CHARSET&(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 nomodify byte*) DTV_PALETTE + (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 nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDER_COLOR
// [498] *((const nomodify byte*) BG_COLOR) ← (byte) $50 -- _deref_pbuc1=vbuc2
lda #$50
sta BG_COLOR
// [499] *((const nomodify byte*) BG_COLOR1) ← (byte) $54 -- _deref_pbuc1=vbuc2
lda #$54
sta BG_COLOR1
// [500] *((const nomodify byte*) BG_COLOR2) ← (byte) $58 -- _deref_pbuc1=vbuc2
lda #$58
sta BG_COLOR2
// [501] *((const nomodify byte*) BG_COLOR3) ← (byte) $5c -- _deref_pbuc1=vbuc2
lda #$5c
sta BG_COLOR3
// [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 nomodify byte*) mode_hicolecmchar::SCREEN [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 nomodify byte*) mode_hicolecmchar::COLORS [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::$2 ← (byte) mode_hicolecmchar::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// [505] (byte~) mode_hicolecmchar::$3 ← (byte~) mode_hicolecmchar::$2 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z __3
// [506] (byte~) mode_hicolecmchar::$4 ← (byte) mode_hicolecmchar::cx#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// [507] (byte) mode_hicolecmchar::v#0 ← (byte~) mode_hicolecmchar::$3 | (byte~) mode_hicolecmchar::$4 -- vbuaa=vbuz1_bor_vbuaa
ora.z __3
// [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
// Leave control to the user until exit
// [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 nomodify byte) DTV_HIGHCOLOR [phi:mode_hicolecmchar::@6->mode_ctrl#0] -- vbuxx=vbuc1
ldx #DTV_HIGHCOLOR
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 BG_COLORor0[7:0]
// - 1: 8bpp ColorData[7:0]
mode_hicolstdchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $8400
.label __3 = $c
// Char Colors and screen chars
.label col = 6
.label ch = 8
.label cy = $13
// [519] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [520] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify byte*) mode_hicolstdchar::COLORS/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// [521] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [522] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR
sta DTV_CONTROL
// [523] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR
// [524] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_hicolstdchar::CHARSET/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2
// [525] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [526] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [527] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolstdchar::CHARSET&(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 nomodify byte*) DTV_PALETTE + (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 nomodify byte*) BG_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BG_COLOR
// [533] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta BORDER_COLOR
// [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 nomodify byte*) mode_hicolstdchar::SCREEN [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 nomodify byte*) mode_hicolstdchar::COLORS [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::$2 ← (byte) mode_hicolstdchar::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// [537] (byte~) mode_hicolstdchar::$3 ← (byte~) mode_hicolstdchar::$2 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z __3
// [538] (byte~) mode_hicolstdchar::$4 ← (byte) mode_hicolstdchar::cx#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// [539] (byte) mode_hicolstdchar::v#0 ← (byte~) mode_hicolstdchar::$3 | (byte~) mode_hicolstdchar::$4 -- vbuaa=vbuz1_bor_vbuaa
ora.z __3
// [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
// Leave control to the user until exit
// [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 nomodify byte) DTV_HIGHCOLOR [phi:mode_hicolstdchar::@6->mode_ctrl#0] -- vbuxx=vbuc1
ldx #DTV_HIGHCOLOR
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: {
.const lines_cnt = 9
.label SCREEN = $4000
.label BITMAP = $6000
.label col2 = $11
// Bitmap Colors
.label ch = 4
.label cy = $13
.label l = $c
// [551] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [552] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_CONTROL
// [553] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR
// [554] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_stdbitmap::BITMAP/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^BITMAP/$4000
sta CIA2
// [555] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_BMM|VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [556] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [557] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_stdbitmap::BITMAP&(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 nomodify byte*) DTV_PALETTE + (byte) mode_stdbitmap::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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 nomodify byte*) BG_COLOR) ← (const nomodify byte) BLACK -- _deref_pbuc1=vbuc2
// Screen colors
lda #BLACK
sta BG_COLOR
// [563] *((const nomodify byte*) BORDER_COLOR) ← (const nomodify byte) BLACK -- _deref_pbuc1=vbuc2
lda #BLACK
sta BORDER_COLOR
// [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 nomodify byte*) mode_stdbitmap::SCREEN [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::$4 ← (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::$4 & (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::$7 ← (byte) mode_stdbitmap::col#0 << (byte) 4 -- vbuaa=vbuyy_rol_4
tya
asl
asl
asl
asl
// [570] (byte~) mode_stdbitmap::$8 ← (byte~) mode_stdbitmap::$7 | (byte) mode_stdbitmap::col2#0 -- vbuaa=vbuaa_bor_vbuz1
ora.z col2
// [571] *((byte*) mode_stdbitmap::ch#2) ← (byte~) mode_stdbitmap::$8 -- _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
// Draw some lines on the bitmap
// [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) 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
// Leave control to the user until exit
// [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] -- vbuxx=vbuc1
ldx #0
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 + (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+(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 + (byte) mode_stdbitmap::l#2) -- vbuxx=pbuc1_derefidx_vbuz1
ldy.z l
ldx lines_y,y
// [589] (byte) bitmap_line::y1#0 ← *((const byte*) mode_stdbitmap::lines_y+(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 zp($11) x0, byte zp($12) x1, byte register(X) y0, byte zp($a) y1)
bitmap_line: {
.label xd = $b
.label x0 = $11
.label x1 = $12
.label y1 = $a
// [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
// [594] if((byte) bitmap_line::y0#0<(byte) bitmap_line::y1#0) goto bitmap_line::@7 -- vbuxx_lt_vbuz1_then_la1
cpx.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=vbuxx_minus_vbuz1
txa
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=vbuxx
stx.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=vbuz2
lda.z x1
sta.z bitmap_line_xdyi.x
// [605] (byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y1#0 -- vbuxx=vbuz1
ldx.z y1
// [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_vbuxx
txa
eor #$ff
sec
adc.z y1
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=vbuxx
stx.z bitmap_line_ydxd.y
// [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 -- 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=vbuz2
lda.z x1
sta.z bitmap_line_xdyd.x
// [619] (byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y1#0 -- vbuxx=vbuz1
ldx.z y1
// [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=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 -- vbuxx_lt_vbuz1_then_la1
cpx.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=vbuxx_minus_vbuz1
txa
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 -- vbuz1=vbuz2
lda.z x1
sta.z bitmap_line_ydxd.x
// [630] (byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuxx
stx.z bitmap_line_ydxd.y1
// [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=vbuz2
lda.z x1
sta.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_vbuxx
txa
eor #$ff
sec
adc.z y1
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=vbuxx
stx.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
// [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=vbuz2
lda.z x1
sta.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 zp(3) x, byte register(X) y, byte zp($11) x1, byte zp($b) xd, byte zp(2) yd)
bitmap_line_xdyi: {
.label x = 3
.label x1 = $11
.label xd = $b
.label yd = 2
.label e = $a
// [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 -- vbuyy=vbuz1
ldy.z x
// [658] (byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3
// [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 -- vbuxx=_inc_vbuxx
inx
// [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 -- vbuaa=vbuz1_plus_1
lda.z x1
clc
adc #1
// [667] if((byte) bitmap_line_xdyi::x#2!=(byte~) bitmap_line_xdyi::$6) goto bitmap_line_xdyi::@1 -- vbuz1_neq_vbuaa_then_la1
cmp.z x
bne __b1_from___b2
jmp __breturn
// bitmap_line_xdyi::@return
__breturn:
// [668] return
rts
}
// bitmap_plot
// bitmap_plot(byte register(Y) x, byte register(X) y)
bitmap_plot: {
.label plotter_x = $d
.label plotter_y = $f
.label plotter = $d
// [670] (word) bitmap_plot::plotter_x#0 ← *((const to_nomodify byte*) bitmap_plot_xhi + (byte) bitmap_plot::x#4) w= *((const to_nomodify byte*) bitmap_plot_xlo + (byte) bitmap_plot::x#4) -- vwuz1=pbuc1_derefidx_vbuyy_word_pbuc2_derefidx_vbuyy
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 to_nomodify byte*) bitmap_plot_yhi + (byte) bitmap_plot::y#4) w= *((const to_nomodify byte*) bitmap_plot_ylo + (byte) bitmap_plot::y#4) -- vwuz1=pbuc1_derefidx_vbuxx_word_pbuc2_derefidx_vbuxx
lda bitmap_plot_yhi,x
sta.z plotter_y+1
lda bitmap_plot_ylo,x
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 to_nomodify byte*) bitmap_plot_bit + (byte) bitmap_plot::x#4) -- vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbuyy
lda bitmap_plot_bit,y
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 zp(3) y, byte zp($12) x, byte zp($a) y1, byte zp(2) yd, byte zp($b) xd)
bitmap_line_ydxi: {
.label y = 3
.label x = $12
.label y1 = $a
.label yd = 2
.label xd = $b
.label e = $13
// [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 -- vbuyy=vbuz1
ldy.z x
// [680] (byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3 -- vbuxx=vbuz1
ldx.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 -- 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 -- vbuxx=vbuz1_plus_1
ldx.z y1
inx
// [689] if((byte) bitmap_line_ydxi::y#2!=(byte~) bitmap_line_ydxi::$6) goto bitmap_line_ydxi::@1 -- vbuz1_neq_vbuxx_then_la1
cpx.z y
bne __b1_from___b2
jmp __breturn
// bitmap_line_ydxi::@return
__breturn:
// [690] return
rts
}
// bitmap_line_xdyd
// bitmap_line_xdyd(byte zp(2) x, byte register(X) y, byte zp($11) x1, byte zp($b) xd, byte zp($13) yd)
bitmap_line_xdyd: {
.label x = 2
.label x1 = $11
.label xd = $b
.label yd = $13
.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 -- vbuyy=vbuz1
ldy.z x
// [695] (byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3
// [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 -- vbuxx=_dec_vbuxx
dex
// [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 -- vbuaa=vbuz1_plus_1
lda.z x1
clc
adc #1
// [704] if((byte) bitmap_line_xdyd::x#2!=(byte~) bitmap_line_xdyd::$6) goto bitmap_line_xdyd::@1 -- vbuz1_neq_vbuaa_then_la1
cmp.z x
bne __b1_from___b2
jmp __breturn
// bitmap_line_xdyd::@return
__breturn:
// [705] return
rts
}
// bitmap_line_ydxd
// bitmap_line_ydxd(byte zp(3) y, byte zp($11) x, byte zp($a) y1, byte zp(2) yd, byte zp($b) xd)
bitmap_line_ydxd: {
.label y = 3
.label x = $11
.label y1 = $a
.label yd = 2
.label xd = $b
.label e = $13
// [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 -- vbuyy=vbuz1
ldy.z x
// [710] (byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#2 -- vbuxx=vbuz1
ldx.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 -- 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 -- vbuxx=vbuz1_plus_1
ldx.z y1
inx
// [719] if((byte) bitmap_line_ydxd::y#3!=(byte~) bitmap_line_ydxd::$6) goto bitmap_line_ydxd::@1 -- vbuz1_neq_vbuxx_then_la1
cpx.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 = 4
.label y = $b
// [721] (word) bitmap_clear::bitmap#0 ← *((const to_nomodify byte*) bitmap_plot_xhi) w= *((const to_nomodify byte*) bitmap_plot_xlo) -- 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 = $12
.label yoffs = 4
// [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 to_nomodify byte*) bitmap_plot_xlo + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$0 -- pbuc1_derefidx_vbuxx=vbuaa
sta bitmap_plot_xlo,x
// [736] *((const to_nomodify byte*) bitmap_plot_xhi + (byte) bitmap_init::x#2) ← >(const nomodify byte*) mode_stdbitmap::BITMAP -- pbuc1_derefidx_vbuxx=vbuc2
lda #>mode_stdbitmap.BITMAP
sta bitmap_plot_xhi,x
// [737] *((const to_nomodify byte*) bitmap_plot_bit + (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 to_nomodify byte*) bitmap_plot_ylo + (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 to_nomodify byte*) bitmap_plot_yhi + (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 BG_COLORor0[3:0]
// - 1: 4bpp ColorData[2:0]
// GfxData Pixel Shifter (2) if ColorData[3:3] = 1:
// - 00: 4bpp BG_COLORor0[3:0]
// - 01: 4bpp BG_COLORor1[3:0]
// - 10: 4bpp BG_COLORor2[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 __5 = $11
// Char Colors and screen chars
.label col = 4
.label ch = $d
.label cy = $c
// [757] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [758] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<DTV_COLOR_BANK_DEFAULT/$400
sta DTV_COLOR_BANK_LO
// [759] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [760] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_CONTROL
// [761] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR
// [762] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_mcchar::CHARSET/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2
// [763] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [764] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL|(const nomodify byte) VIC_MCM -- _deref_pbuc1=vbuc2
lda #VIC_CSEL|VIC_MCM
sta VIC_CONTROL2
// [765] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_mcchar::CHARSET&(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 nomodify byte*) DTV_PALETTE + (byte) mode_mcchar::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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 nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDER_COLOR
// [771] *((const nomodify byte*) BG_COLOR) ← (const nomodify byte) BLACK -- _deref_pbuc1=vbuc2
lda #BLACK
sta BG_COLOR
// [772] *((const nomodify byte*) BG_COLOR1) ← (const nomodify byte) GREEN -- _deref_pbuc1=vbuc2
lda #GREEN
sta BG_COLOR1
// [773] *((const nomodify byte*) BG_COLOR2) ← (const nomodify byte) BLUE -- _deref_pbuc1=vbuc2
lda #BLUE
sta BG_COLOR2
// [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 nomodify byte*) mode_mcchar::SCREEN [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 nomodify byte*) mode_mcchar::COLORS [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::$2 ← (byte) mode_mcchar::cx#2 + (byte) mode_mcchar::cy#4 -- vbuaa=vbuxx_plus_vbuz1
txa
clc
adc.z cy
// [777] (byte~) mode_mcchar::$3 ← (byte~) mode_mcchar::$2 & (byte) $f -- vbuaa=vbuaa_band_vbuc1
and #$f
// [778] *((byte*) mode_mcchar::col#2) ← (byte~) mode_mcchar::$3 -- _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::$4 ← (byte) mode_mcchar::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// [781] (byte~) mode_mcchar::$5 ← (byte~) mode_mcchar::$4 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z __5
// [782] (byte~) mode_mcchar::$6 ← (byte) mode_mcchar::cx#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// [783] (byte~) mode_mcchar::$7 ← (byte~) mode_mcchar::$5 | (byte~) mode_mcchar::$6 -- vbuaa=vbuz1_bor_vbuaa
ora.z __5
// [784] *((byte*) mode_mcchar::ch#2) ← (byte~) mode_mcchar::$7 -- _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
// Leave control to the user until exit
// [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] -- vbuxx=vbuc1
ldx #0
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 BG_COLORor0[3:0]
// - CharData[7:6] 01: 4bpp BG_COLORor1[3:0]
// - CharData[7:6] 10: 4bpp BG_COLORor2[3:0]
// - CharData[7:6] 11: 4bpp BG_COLORor3[3:0]
// - 1: 4bpp ColorData[3:0]
mode_ecmchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $d800
.label __5 = $12
// Char Colors and screen chars
.label col = $d
.label ch = 6
.label cy = $11
// [793] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [794] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<DTV_COLOR_BANK_DEFAULT/$400
sta DTV_COLOR_BANK_LO
// [795] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [796] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_CONTROL
// [797] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR
// [798] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_ecmchar::CHARSET/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2
// [799] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(const nomodify byte) VIC_ECM|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|VIC_ECM|3
sta VIC_CONTROL
// [800] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [801] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_ecmchar::CHARSET&(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 nomodify byte*) DTV_PALETTE + (byte) mode_ecmchar::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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 nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDER_COLOR
// [807] *((const nomodify byte*) BG_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta BG_COLOR
// [808] *((const nomodify byte*) BG_COLOR1) ← (byte) 2 -- _deref_pbuc1=vbuc2
lda #2
sta BG_COLOR1
// [809] *((const nomodify byte*) BG_COLOR2) ← (byte) 5 -- _deref_pbuc1=vbuc2
lda #5
sta BG_COLOR2
// [810] *((const nomodify byte*) BG_COLOR3) ← (byte) 6 -- _deref_pbuc1=vbuc2
lda #6
sta BG_COLOR3
// [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 nomodify byte*) mode_ecmchar::SCREEN [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 nomodify byte*) mode_ecmchar::COLORS [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::$2 ← (byte) mode_ecmchar::cx#2 + (byte) mode_ecmchar::cy#4 -- vbuaa=vbuxx_plus_vbuz1
txa
clc
adc.z cy
// [814] (byte~) mode_ecmchar::$3 ← (byte~) mode_ecmchar::$2 & (byte) $f -- vbuaa=vbuaa_band_vbuc1
and #$f
// [815] *((byte*) mode_ecmchar::col#2) ← (byte~) mode_ecmchar::$3 -- _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::$4 ← (byte) mode_ecmchar::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// [818] (byte~) mode_ecmchar::$5 ← (byte~) mode_ecmchar::$4 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z __5
// [819] (byte~) mode_ecmchar::$6 ← (byte) mode_ecmchar::cx#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// [820] (byte~) mode_ecmchar::$7 ← (byte~) mode_ecmchar::$5 | (byte~) mode_ecmchar::$6 -- vbuaa=vbuz1_bor_vbuaa
ora.z __5
// [821] *((byte*) mode_ecmchar::ch#2) ← (byte~) mode_ecmchar::$7 -- _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
// Leave control to the user until exit
// [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] -- vbuxx=vbuc1
ldx #0
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 BG_COLORor0[3:0]
// - 1: 4bpp ColorData[3:0]
mode_stdchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $d800
.label __5 = $13
// Char Colors and screen chars
.label col = 6
.label ch = $d
.label cy = $12
// [830] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// [831] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<DTV_COLOR_BANK_DEFAULT/$400
sta DTV_COLOR_BANK_LO
// [832] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// [833] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_CONTROL
// [834] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR
// [835] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_stdchar::CHARSET/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2
// [836] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(byte) 3 -- _deref_pbuc1=vbuc2
// Set VIC Bank
// VIC Graphics Mode
lda #VIC_DEN|VIC_RSEL|3
sta VIC_CONTROL
// [837] *((const nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// [838] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_stdchar::CHARSET&(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 nomodify byte*) DTV_PALETTE + (byte) mode_stdchar::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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 nomodify byte*) BG_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BG_COLOR
// [844] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta BORDER_COLOR
// [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 nomodify byte*) mode_stdchar::SCREEN [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 nomodify byte*) mode_stdchar::COLORS [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::$2 ← (byte) mode_stdchar::cx#2 + (byte) mode_stdchar::cy#4 -- vbuaa=vbuxx_plus_vbuz1
txa
clc
adc.z cy
// [848] (byte~) mode_stdchar::$3 ← (byte~) mode_stdchar::$2 & (byte) $f -- vbuaa=vbuaa_band_vbuc1
and #$f
// [849] *((byte*) mode_stdchar::col#2) ← (byte~) mode_stdchar::$3 -- _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::$4 ← (byte) mode_stdchar::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// [852] (byte~) mode_stdchar::$5 ← (byte~) mode_stdchar::$4 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z __5
// [853] (byte~) mode_stdchar::$6 ← (byte) mode_stdchar::cx#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// [854] (byte~) mode_stdchar::$7 ← (byte~) mode_stdchar::$5 | (byte~) mode_stdchar::$6 -- vbuaa=vbuz1_bor_vbuaa
ora.z __5
// [855] *((byte*) mode_stdchar::ch#2) ← (byte~) mode_stdchar::$7 -- _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
// Leave control to the user until exit
// [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] -- vbuxx=vbuc1
ldx #0
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* zp($d) str)
print_str_lines: {
.label str = $d
// [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 nomodify byte*) menu::SCREEN [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#21 = (const nomodify byte*) menu::SCREEN [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 [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#35 = (byte*) print_char_cursor#21 [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::ch#0 ← (byte) print_str_lines::ch#0
// [873] call print_char
jsr print_char
// [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#36 = (byte*) print_char_cursor#35 [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#102 ← (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#21 = (byte*) print_char_cursor#102 [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#36) 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_char
// Print a single char
// print_char(byte register(A) ch)
print_char: {
// [884] *((byte*) print_char_cursor#35) ← (byte) print_char::ch#0 -- _deref_pbuz1=vbuaa
ldy #0
sta (print_char_cursor),y
// [885] (byte*) print_char_cursor#25 ← ++ (byte*) print_char_cursor#35 -- pbuz1=_inc_pbuz1
inc.z print_char_cursor
bne !+
inc.z print_char_cursor+1
!:
jmp __breturn
// print_char::@return
__breturn:
// [886] return
rts
}
// print_cls
// Clear the screen. Also resets current line/char cursor.
print_cls: {
// [888] call memset
// [890] phi from print_cls to memset [phi:print_cls->memset]
memset_from_print_cls:
jsr memset
jmp __breturn
// print_cls::@return
__breturn:
// [889] 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 = $d
// [891] phi from memset to memset::@1 [phi:memset->memset::@1]
__b1_from_memset:
// [891] 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:
// [892] 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:
// [893] return
rts
// memset::@2
__b2:
// [894] *((byte*) memset::dst#2) ← (const byte) memset::c#0 -- _deref_pbuz1=vbuc1
lda #c
ldy #0
sta (dst),y
// [895] (byte*) memset::dst#1 ← ++ (byte*) memset::dst#2 -- pbuz1=_inc_pbuz1
inc.z dst
bne !+
inc.z dst+1
!:
// [891] phi from memset::@2 to memset::@1 [phi:memset::@2->memset::@1]
__b1_from___b2:
// [891] 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:
// [897] 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 __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
Replacing instruction lda.z ctrl with TXA
Replacing instruction lda.z ctrl with TXA
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 __b10_from___b8:
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 __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 __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 __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 __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 __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 __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 __b10_from___b6:
Removing instruction __b9_from___b7:
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 __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 __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 __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 __bbegin:
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 dtvSetCpuBankSegment1_from___b8:
Removing instruction __b10:
Removing instruction mode_ctrl_from___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 mode_ctrl_from___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 mode_ctrl_from___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 mode_ctrl_from___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 mode_ctrl_from___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 mode_ctrl_from___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 mode_ctrl_from___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 bitmap_init_from___b6:
Removing instruction __b10:
Removing instruction __b7_from___b10:
Removing instruction __b9:
Removing instruction mode_ctrl_from___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 mode_ctrl_from___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 mode_ctrl_from___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 mode_ctrl_from___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 __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
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 x0
Succesful ASM optimization Pass5UnnecesaryLoadElimination
Removing instruction __breturn:
Removing instruction __breturn:
Succesful ASM optimization Pass5UnusedLabelElimination
Fixing long branch [251] beq __b5 to bne
Fixing long branch [158] bne __b3 to beq
Fixing long branch [163] bne __b3 to beq
FINAL SYMBOL TABLE
(label) @1
(label) @begin
(label) @end
(const nomodify byte*) BG_COLOR = (byte*) 53281
(const nomodify byte*) BG_COLOR1 = (byte*) 53282
(const nomodify byte*) BG_COLOR2 = (byte*) 53283
(const nomodify byte*) BG_COLOR3 = (byte*) 53284
(const nomodify byte) BLACK = (byte) 0
(const nomodify byte) BLUE = (byte) 6
(const nomodify byte*) BORDER_COLOR = (byte*) 53280
(const nomodify struct MOS6526_CIA*) CIA1 = (struct MOS6526_CIA*) 56320
(const nomodify struct MOS6526_CIA*) CIA2 = (struct MOS6526_CIA*) 56576
(const nomodify byte*) COLS = (byte*) 55296
(const nomodify byte) DTV_BORDER_OFF = (byte) 2
(const nomodify byte) DTV_CHUNKY = (byte) $40
(const nomodify byte) DTV_COLORRAM_OFF = (byte) $10
(const nomodify dword) DTV_COLOR_BANK_DEFAULT = (dword) $1d800
(const nomodify byte*) DTV_COLOR_BANK_HI = (byte*) 53303
(const nomodify byte*) DTV_COLOR_BANK_LO = (byte*) 53302
(const nomodify byte*) DTV_CONTROL = (byte*) 53308
(const nomodify byte*) DTV_FEATURE = (byte*) 53311
(const nomodify byte) DTV_FEATURE_ENABLE = (byte) 1
(const nomodify byte*) DTV_GRAPHICS_VIC_BANK = (byte*) 53309
(const nomodify byte) DTV_HIGHCOLOR = (byte) 4
(const nomodify byte) DTV_LINEAR = (byte) 1
(const nomodify byte) DTV_OVERSCAN = (byte) 8
(const nomodify byte*) DTV_PALETTE = (byte*) 53760
(const byte*) DTV_PALETTE_DEFAULT[(number) $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 }
(const nomodify byte*) DTV_PLANEA_MODULO_HI = (byte*) 53305
(const nomodify byte*) DTV_PLANEA_MODULO_LO = (byte*) 53304
(const nomodify byte*) DTV_PLANEA_START_HI = (byte*) 53317
(const nomodify byte*) DTV_PLANEA_START_LO = (byte*) 53306
(const nomodify byte*) DTV_PLANEA_START_MI = (byte*) 53307
(const nomodify byte*) DTV_PLANEA_STEP = (byte*) 53318
(const nomodify byte*) DTV_PLANEB_MODULO_HI = (byte*) 53320
(const nomodify byte*) DTV_PLANEB_MODULO_LO = (byte*) 53319
(const nomodify byte*) DTV_PLANEB_START_HI = (byte*) 53323
(const nomodify byte*) DTV_PLANEB_START_LO = (byte*) 53321
(const nomodify byte*) DTV_PLANEB_START_MI = (byte*) 53322
(const nomodify byte*) DTV_PLANEB_STEP = (byte*) 53324
(const nomodify byte) GREEN = (byte) 5
(const nomodify byte) KEY_0 = (byte) $23
(const nomodify byte) KEY_1 = (byte) $38
(const nomodify byte) KEY_2 = (byte) $3b
(const nomodify byte) KEY_3 = (byte) 8
(const nomodify byte) KEY_4 = (byte) $b
(const nomodify byte) KEY_6 = (byte) $13
(const nomodify byte) KEY_7 = (byte) $18
(const nomodify byte) KEY_8 = (byte) $1b
(const nomodify byte) KEY_A = (byte) $a
(const nomodify byte) KEY_B = (byte) $1c
(const nomodify byte) KEY_C = (byte) $14
(const nomodify byte) KEY_D = (byte) $12
(const nomodify byte) KEY_E = (byte) $e
(const nomodify byte) KEY_H = (byte) $1d
(const nomodify byte) KEY_L = (byte) $2a
(const nomodify byte) KEY_O = (byte) $26
(const nomodify byte) KEY_SPACE = (byte) $3c
(const nomodify byte) KEY_U = (byte) $1e
(const nomodify byte) LIGHT_GREEN = (byte) $d
(const byte*) MENU_TEXT[] = (byte*) "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) MOS6526_CIA::INTERRUPT
(byte) MOS6526_CIA::PORT_A
(byte) MOS6526_CIA::PORT_A_DDR
(byte) MOS6526_CIA::PORT_B
(byte) MOS6526_CIA::PORT_B_DDR
(byte) MOS6526_CIA::SERIAL_DATA
(word) MOS6526_CIA::TIMER_A
(byte) MOS6526_CIA::TIMER_A_CONTROL
(word) MOS6526_CIA::TIMER_B
(byte) MOS6526_CIA::TIMER_B_CONTROL
(byte) MOS6526_CIA::TOD_10THS
(byte) MOS6526_CIA::TOD_HOURS
(byte) MOS6526_CIA::TOD_MIN
(byte) MOS6526_CIA::TOD_SEC
(byte) MOS6569_VICII::BG_COLOR
(byte) MOS6569_VICII::BG_COLOR1
(byte) MOS6569_VICII::BG_COLOR2
(byte) MOS6569_VICII::BG_COLOR3
(byte) MOS6569_VICII::BORDER_COLOR
(byte) MOS6569_VICII::CONTROL1
(byte) MOS6569_VICII::CONTROL2
(byte) MOS6569_VICII::IRQ_ENABLE
(byte) MOS6569_VICII::IRQ_STATUS
(byte) MOS6569_VICII::LIGHTPEN_X
(byte) MOS6569_VICII::LIGHTPEN_Y
(byte) MOS6569_VICII::MEMORY
(byte) MOS6569_VICII::RASTER
(byte) MOS6569_VICII::SPRITE0_COLOR
(byte) MOS6569_VICII::SPRITE0_X
(byte) MOS6569_VICII::SPRITE0_Y
(byte) MOS6569_VICII::SPRITE1_COLOR
(byte) MOS6569_VICII::SPRITE1_X
(byte) MOS6569_VICII::SPRITE1_Y
(byte) MOS6569_VICII::SPRITE2_COLOR
(byte) MOS6569_VICII::SPRITE2_X
(byte) MOS6569_VICII::SPRITE2_Y
(byte) MOS6569_VICII::SPRITE3_COLOR
(byte) MOS6569_VICII::SPRITE3_X
(byte) MOS6569_VICII::SPRITE3_Y
(byte) MOS6569_VICII::SPRITE4_COLOR
(byte) MOS6569_VICII::SPRITE4_X
(byte) MOS6569_VICII::SPRITE4_Y
(byte) MOS6569_VICII::SPRITE5_COLOR
(byte) MOS6569_VICII::SPRITE5_X
(byte) MOS6569_VICII::SPRITE5_Y
(byte) MOS6569_VICII::SPRITE6_COLOR
(byte) MOS6569_VICII::SPRITE6_X
(byte) MOS6569_VICII::SPRITE6_Y
(byte) MOS6569_VICII::SPRITE7_COLOR
(byte) MOS6569_VICII::SPRITE7_X
(byte) MOS6569_VICII::SPRITE7_Y
(byte) MOS6569_VICII::SPRITES_BG_COLLISION
(byte) MOS6569_VICII::SPRITES_COLLISION
(byte) MOS6569_VICII::SPRITES_ENABLE
(byte) MOS6569_VICII::SPRITES_EXPAND_X
(byte) MOS6569_VICII::SPRITES_EXPAND_Y
(byte) MOS6569_VICII::SPRITES_MC
(byte) MOS6569_VICII::SPRITES_MCOLOR1
(byte) MOS6569_VICII::SPRITES_MCOLOR2
(byte) MOS6569_VICII::SPRITES_PRIORITY
(byte) MOS6569_VICII::SPRITES_XMSB
(byte) MOS6581_SID::CH1_ATTACK_DECAY
(byte) MOS6581_SID::CH1_CONTROL
(word) MOS6581_SID::CH1_FREQ
(word) MOS6581_SID::CH1_PULSE_WIDTH
(byte) MOS6581_SID::CH1_SUSTAIN_RELEASE
(byte) MOS6581_SID::CH2_ATTACK_DECAY
(byte) MOS6581_SID::CH2_CONTROL
(word) MOS6581_SID::CH2_FREQ
(word) MOS6581_SID::CH2_PULSE_WIDTH
(byte) MOS6581_SID::CH2_SUSTAIN_RELEASE
(byte) MOS6581_SID::CH3_ATTACK_DECAY
(byte) MOS6581_SID::CH3_CONTROL
(byte) MOS6581_SID::CH3_ENV
(word) MOS6581_SID::CH3_FREQ
(byte) MOS6581_SID::CH3_OSC
(word) MOS6581_SID::CH3_PULSE_WIDTH
(byte) MOS6581_SID::CH3_SUSTAIN_RELEASE
(byte) MOS6581_SID::FILTER_CUTOFF_HIGH
(byte) MOS6581_SID::FILTER_CUTOFF_LOW
(byte) MOS6581_SID::FILTER_SETUP
(byte) MOS6581_SID::POT_X
(byte) MOS6581_SID::POT_Y
(byte) MOS6581_SID::VOLUME_FILTER_MODE
(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR = (byte) 2
(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_B = (byte) 1
(const nomodify byte*) PROCPORT = (byte*) 1
(const nomodify byte*) PROCPORT_DDR = (byte*) 0
(const nomodify byte) PROCPORT_DDR_MEMORY_MASK = (byte) 7
(const nomodify byte) PROCPORT_RAM_CHARROM = (byte) 1
(const nomodify byte) PROCPORT_RAM_IO = (byte) 5
(const byte) RADIX::BINARY = (number) 2
(const byte) RADIX::DECIMAL = (number) $a
(const byte) RADIX::HEXADECIMAL = (number) $10
(const byte) RADIX::OCTAL = (number) 8
(const nomodify byte*) RASTER = (byte*) 53266
(const nomodify byte) VIC_BMM = (byte) $20
(const nomodify byte*) VIC_CONTROL = (byte*) 53265
(const nomodify byte*) VIC_CONTROL2 = (byte*) 53270
(const nomodify byte) VIC_CSEL = (byte) 8
(const nomodify byte) VIC_DEN = (byte) $10
(const nomodify byte) VIC_ECM = (byte) $40
(const nomodify byte) VIC_MCM = (byte) $10
(const nomodify byte*) VIC_MEMORY = (byte*) 53272
(const nomodify byte) 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[2]:4 100001.0
(byte*) bitmap_clear::bitmap#1 bitmap zp[2]:4 4.2000000599999994E7
(byte*) bitmap_clear::bitmap#2 bitmap zp[2]:4 1.55000002E8
(byte*) bitmap_clear::bitmap#3 bitmap zp[2]:4 2.0100003E7
(byte*) bitmap_clear::bitmap#5 bitmap zp[2]:4 200002.0
(byte) bitmap_clear::x
(byte) bitmap_clear::x#1 reg byte x 1.500000015E8
(byte) bitmap_clear::x#2 reg byte x 6.6666667333333336E7
(byte) bitmap_clear::y
(byte) bitmap_clear::y#1 y zp[1]:11 1.50000015E7
(byte) bitmap_clear::y#4 y zp[1]:11 3333333.6666666665
(void()) bitmap_init((byte*) bitmap_init::bitmap)
(byte~) bitmap_init::$0 reg byte a 2.0000002E7
(byte~) bitmap_init::$10 zp[1]:18 5000000.5
(byte~) bitmap_init::$7 reg byte a 2.0000002E7
(byte~) bitmap_init::$8 reg byte a 2.0000002E7
(byte~) bitmap_init::$9 reg byte a 2.0000002E7
(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 1.0000001E7
(byte) bitmap_init::bits#3 reg byte y 6000000.6
(byte) bitmap_init::bits#4 reg byte y 6666667.333333333
(byte) bitmap_init::x
(byte) bitmap_init::x#1 reg byte x 1.50000015E7
(byte) bitmap_init::x#2 reg byte x 6666667.333333333
(byte) bitmap_init::y
(byte) bitmap_init::y#1 reg byte x 1.50000015E7
(byte) bitmap_init::y#2 reg byte x 5000000.5
(byte*) bitmap_init::yoffs
(byte*) bitmap_init::yoffs#1 yoffs zp[2]:4 2.0000002E7
(byte*) bitmap_init::yoffs#2 yoffs zp[2]:4 6250000.625
(byte*) bitmap_init::yoffs#4 yoffs zp[2]:4 1.0000001E7
(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[1]:17 3956522.1739130435
(byte) bitmap_line::x1
(byte) bitmap_line::x1#0 x1 zp[1]:18 4136364.090909091
(byte) bitmap_line::xd
(byte) bitmap_line::xd#1 xd zp[1]:11 3500000.3499999996
(byte) bitmap_line::xd#2 xd zp[1]:11 3500000.3499999996
(byte) bitmap_line::y0
(byte) bitmap_line::y0#0 reg byte x 5761905.380952382
(byte) bitmap_line::y1
(byte) bitmap_line::y1#0 y1 zp[1]:10 6050000.6499999985
(byte) bitmap_line::yd
(byte) bitmap_line::yd#1 reg byte y 4444444.888888889
(byte) bitmap_line::yd#10 reg byte y 4444444.888888889
(byte) bitmap_line::yd#11 reg byte y 4444444.888888889
(byte) bitmap_line::yd#2 reg byte y 4444444.888888889
(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 a 2.00000000002E11
(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[1]:3 2.00000002E8
(byte) bitmap_line_xdyd::e#1 e zp[1]:3 1.3333333333466667E11
(byte) bitmap_line_xdyd::e#2 e zp[1]:3 2.00000000002E11
(byte) bitmap_line_xdyd::e#3 e zp[1]:3 4.0020000000600006E10
(byte) bitmap_line_xdyd::e#6 e zp[1]:3 1.00000000001E11
(byte) bitmap_line_xdyd::x
(byte) bitmap_line_xdyd::x#0 x zp[1]:2 4000000.4
(byte) bitmap_line_xdyd::x#1 x zp[1]:2 4000000.4
(byte) bitmap_line_xdyd::x#2 x zp[1]:2 3.7500000000375E10
(byte) bitmap_line_xdyd::x#3 x zp[1]:2 7.5025000001E10
(byte) bitmap_line_xdyd::x#6 x zp[1]:2 6.00000015E7
(byte) bitmap_line_xdyd::x1
(byte) bitmap_line_xdyd::x1#0 x1 zp[1]:17 6666667.333333333
(byte) bitmap_line_xdyd::x1#1 x1 zp[1]:17 6666667.333333333
(byte) bitmap_line_xdyd::x1#6 x1 zp[1]:17 7.1442857145E9
(byte) bitmap_line_xdyd::xd
(byte) bitmap_line_xdyd::xd#0 xd zp[1]:11 1.0000001E7
(byte) bitmap_line_xdyd::xd#1 xd zp[1]:11 1.0000001E7
(byte) bitmap_line_xdyd::xd#5 xd zp[1]:11 1.4287142857428572E10
(byte) bitmap_line_xdyd::y
(byte) bitmap_line_xdyd::y#0 reg byte x 5000000.5
(byte) bitmap_line_xdyd::y#1 reg byte x 5000000.5
(byte) bitmap_line_xdyd::y#2 reg byte x 1.00000000001E11
(byte) bitmap_line_xdyd::y#3 reg byte x 5.715714285785715E10
(byte) bitmap_line_xdyd::y#5 reg byte x 6.00000015E7
(byte) bitmap_line_xdyd::y#6 reg byte x 1.00000000001E11
(byte) bitmap_line_xdyd::yd
(byte) bitmap_line_xdyd::yd#0 yd zp[1]:19 2.0000002E7
(byte) bitmap_line_xdyd::yd#1 yd zp[1]:19 2.0000002E7
(byte) bitmap_line_xdyd::yd#2 yd zp[1]:19 7.151428571714286E9
(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 a 2.00000000002E11
(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[1]:10 2.00000002E8
(byte) bitmap_line_xdyi::e#1 e zp[1]:10 1.3333333333466667E11
(byte) bitmap_line_xdyi::e#2 e zp[1]:10 2.00000000002E11
(byte) bitmap_line_xdyi::e#3 e zp[1]:10 4.0020000000600006E10
(byte) bitmap_line_xdyi::e#6 e zp[1]:10 1.00000000001E11
(byte) bitmap_line_xdyi::x
(byte) bitmap_line_xdyi::x#0 x zp[1]:3 4000000.4
(byte) bitmap_line_xdyi::x#1 x zp[1]:3 4000000.4
(byte) bitmap_line_xdyi::x#2 x zp[1]:3 3.7500000000375E10
(byte) bitmap_line_xdyi::x#3 x zp[1]:3 7.5025000001E10
(byte) bitmap_line_xdyi::x#6 x zp[1]:3 6.00000015E7
(byte) bitmap_line_xdyi::x1
(byte) bitmap_line_xdyi::x1#0 x1 zp[1]:17 6666667.333333333
(byte) bitmap_line_xdyi::x1#1 x1 zp[1]:17 6666667.333333333
(byte) bitmap_line_xdyi::x1#6 x1 zp[1]:17 7.1442857145E9
(byte) bitmap_line_xdyi::xd
(byte) bitmap_line_xdyi::xd#0 xd zp[1]:11 1.0000001E7
(byte) bitmap_line_xdyi::xd#1 xd zp[1]:11 1.0000001E7
(byte) bitmap_line_xdyi::xd#5 xd zp[1]:11 1.4287142857428572E10
(byte) bitmap_line_xdyi::y
(byte) bitmap_line_xdyi::y#0 reg byte x 5000000.5
(byte) bitmap_line_xdyi::y#1 reg byte x 5000000.5
(byte) bitmap_line_xdyi::y#2 reg byte x 1.00000000001E11
(byte) bitmap_line_xdyi::y#3 reg byte x 5.715714285785715E10
(byte) bitmap_line_xdyi::y#5 reg byte x 6.00000015E7
(byte) bitmap_line_xdyi::y#6 reg byte x 1.00000000001E11
(byte) bitmap_line_xdyi::yd
(byte) bitmap_line_xdyi::yd#0 yd zp[1]:2 2.0000002E7
(byte) bitmap_line_xdyi::yd#1 yd zp[1]:2 2.0000002E7
(byte) bitmap_line_xdyi::yd#2 yd zp[1]:2 7.151428571714286E9
(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 x 2.00000000002E11
(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[1]:19 2.00000002E8
(byte) bitmap_line_ydxd::e#1 e zp[1]:19 1.3333333333466667E11
(byte) bitmap_line_ydxd::e#2 e zp[1]:19 2.00000000002E11
(byte) bitmap_line_ydxd::e#3 e zp[1]:19 4.0020000000600006E10
(byte) bitmap_line_ydxd::e#6 e zp[1]:19 1.00000000001E11
(byte) bitmap_line_ydxd::x
(byte) bitmap_line_ydxd::x#0 x zp[1]:17 5000000.5
(byte) bitmap_line_ydxd::x#1 x zp[1]:17 5000000.5
(byte) bitmap_line_ydxd::x#2 x zp[1]:17 1.00000000001E11
(byte) bitmap_line_ydxd::x#3 x zp[1]:17 5.715714285785715E10
(byte) bitmap_line_ydxd::x#5 x zp[1]:17 6.00000015E7
(byte) bitmap_line_ydxd::x#6 x zp[1]:17 1.00000000001E11
(byte) bitmap_line_ydxd::xd
(byte) bitmap_line_ydxd::xd#0 xd zp[1]:11 2.0000002E7
(byte) bitmap_line_ydxd::xd#1 xd zp[1]:11 2.0000002E7
(byte) bitmap_line_ydxd::xd#2 xd zp[1]:11 7.151428571714286E9
(byte) bitmap_line_ydxd::y
(byte) bitmap_line_ydxd::y#0 y zp[1]:3 4000000.4
(byte) bitmap_line_ydxd::y#1 y zp[1]:3 4000000.4
(byte) bitmap_line_ydxd::y#2 y zp[1]:3 7.5025000001E10
(byte) bitmap_line_ydxd::y#3 y zp[1]:3 3.7500000000375E10
(byte) bitmap_line_ydxd::y#7 y zp[1]:3 6.00000015E7
(byte) bitmap_line_ydxd::y1
(byte) bitmap_line_ydxd::y1#0 y1 zp[1]:10 6666667.333333333
(byte) bitmap_line_ydxd::y1#1 y1 zp[1]:10 6666667.333333333
(byte) bitmap_line_ydxd::y1#6 y1 zp[1]:10 7.1442857145E9
(byte) bitmap_line_ydxd::yd
(byte) bitmap_line_ydxd::yd#0 yd zp[1]:2 1.0000001E7
(byte) bitmap_line_ydxd::yd#1 yd zp[1]:2 1.0000001E7
(byte) bitmap_line_ydxd::yd#5 yd zp[1]:2 1.4287142857428572E10
(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 x 2.00000000002E11
(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[1]:19 2.00000002E8
(byte) bitmap_line_ydxi::e#1 e zp[1]:19 1.3333333333466667E11
(byte) bitmap_line_ydxi::e#2 e zp[1]:19 2.00000000002E11
(byte) bitmap_line_ydxi::e#3 e zp[1]:19 4.0020000000600006E10
(byte) bitmap_line_ydxi::e#6 e zp[1]:19 1.00000000001E11
(byte) bitmap_line_ydxi::x
(byte) bitmap_line_ydxi::x#0 x zp[1]:18 5000000.5
(byte) bitmap_line_ydxi::x#1 x zp[1]:18 5000000.5
(byte) bitmap_line_ydxi::x#2 x zp[1]:18 1.00000000001E11
(byte) bitmap_line_ydxi::x#3 x zp[1]:18 5.715714285785715E10
(byte) bitmap_line_ydxi::x#5 x zp[1]:18 6.00000015E7
(byte) bitmap_line_ydxi::x#6 x zp[1]:18 1.00000000001E11
(byte) bitmap_line_ydxi::xd
(byte) bitmap_line_ydxi::xd#0 xd zp[1]:11 2.0000002E7
(byte) bitmap_line_ydxi::xd#1 xd zp[1]:11 2.0000002E7
(byte) bitmap_line_ydxi::xd#2 xd zp[1]:11 7.151428571714286E9
(byte) bitmap_line_ydxi::y
(byte) bitmap_line_ydxi::y#0 y zp[1]:3 4000000.4
(byte) bitmap_line_ydxi::y#1 y zp[1]:3 4000000.4
(byte) bitmap_line_ydxi::y#2 y zp[1]:3 3.7500000000375E10
(byte) bitmap_line_ydxi::y#3 y zp[1]:3 7.5025000001E10
(byte) bitmap_line_ydxi::y#6 y zp[1]:3 6.00000015E7
(byte) bitmap_line_ydxi::y1
(byte) bitmap_line_ydxi::y1#0 y1 zp[1]:10 6666667.333333333
(byte) bitmap_line_ydxi::y1#1 y1 zp[1]:10 6666667.333333333
(byte) bitmap_line_ydxi::y1#6 y1 zp[1]:10 7.1442857145E9
(byte) bitmap_line_ydxi::yd
(byte) bitmap_line_ydxi::yd#0 yd zp[1]:2 1.0000001E7
(byte) bitmap_line_ydxi::yd#1 yd zp[1]:2 1.0000001E7
(byte) bitmap_line_ydxi::yd#5 yd zp[1]:2 1.4287142857428572E10
(void()) bitmap_plot((byte) bitmap_plot::x , (byte) bitmap_plot::y)
(byte~) bitmap_plot::$1 reg byte a 2.000000000002E12
(label) bitmap_plot::@return
(byte*) bitmap_plot::plotter
(word) bitmap_plot::plotter#0 plotter zp[2]:13 5.000000000005E11
(word) bitmap_plot::plotter_x
(word) bitmap_plot::plotter_x#0 plotter_x zp[2]:13 1.000000000001E12
(word) bitmap_plot::plotter_y
(word) bitmap_plot::plotter_y#0 plotter_y zp[2]:15 2.000000000002E12
(byte) bitmap_plot::x
(byte) bitmap_plot::x#0 reg byte y 1.00000000001E11
(byte) bitmap_plot::x#1 reg byte y 1.00000000001E11
(byte) bitmap_plot::x#2 reg byte y 1.00000000001E11
(byte) bitmap_plot::x#3 reg byte y 1.00000000001E11
(byte) bitmap_plot::x#4 reg byte y 8.5000000000175E11
(byte) bitmap_plot::y
(byte) bitmap_plot::y#0 reg byte x 2.00000000002E11
(byte) bitmap_plot::y#1 reg byte x 2.00000000002E11
(byte) bitmap_plot::y#2 reg byte x 2.00000000002E11
(byte) bitmap_plot::y#3 reg byte x 2.00000000002E11
(byte) bitmap_plot::y#4 reg byte x 1.200000000003E12
(const to_nomodify byte*) bitmap_plot_bit[(number) $100] = { fill( $100, 0) }
(const to_nomodify byte*) bitmap_plot_xhi[(number) $100] = { fill( $100, 0) }
(const to_nomodify byte*) bitmap_plot_xlo[(number) $100] = { fill( $100, 0) }
(const to_nomodify byte*) bitmap_plot_yhi[(number) $100] = { fill( $100, 0) }
(const to_nomodify byte*) bitmap_plot_ylo[(number) $100] = { fill( $100, 0) }
(void()) dtvSetCpuBankSegment1((byte) dtvSetCpuBankSegment1::cpuBankIdx)
(label) dtvSetCpuBankSegment1::@return
(const byte*) dtvSetCpuBankSegment1::cpuBank = (byte*) 255
(byte) dtvSetCpuBankSegment1::cpuBankIdx
(byte) dtvSetCpuBankSegment1::cpuBankIdx#1 reg byte a 2.0000002E7
(byte) dtvSetCpuBankSegment1::cpuBankIdx#3 reg byte a 1.10000002E8
(byte) dtv_control
(byte) dtv_control#114 reg byte x 8041176.5882352935
(byte) dtv_control#144 reg byte x 100001.0
(byte) dtv_control#17 reg byte x 6666667.333333333
(byte()) keyboard_key_pressed((byte) keyboard_key_pressed::key)
(byte~) keyboard_key_pressed::$2 reg byte a 2.000000002E9
(label) keyboard_key_pressed::@1
(label) keyboard_key_pressed::@return
(byte) keyboard_key_pressed::colidx
(byte) keyboard_key_pressed::colidx#0 colidx zp[1]:19 3.333333336666667E8
(byte) keyboard_key_pressed::key
(byte) keyboard_key_pressed::key#20 reg byte y 1.000000001E9
(byte) keyboard_key_pressed::return
(byte) keyboard_key_pressed::return#0 reg byte a 8.187272822727272E7
(byte) keyboard_key_pressed::return#10 reg byte a 200002.0
(byte) keyboard_key_pressed::return#11 reg byte a 200002.0
(byte) keyboard_key_pressed::return#12 reg byte a 200002.0
(byte) keyboard_key_pressed::return#13 reg byte a 200002.0
(byte) keyboard_key_pressed::return#14 reg byte a 2.00000002E8
(byte) keyboard_key_pressed::return#15 reg byte a 2.00000002E8
(byte) keyboard_key_pressed::return#16 reg byte a 2.00000002E8
(byte) keyboard_key_pressed::return#17 reg byte a 2.00000002E8
(byte) keyboard_key_pressed::return#18 reg byte a 2.00000002E8
(byte) keyboard_key_pressed::return#19 reg byte a 2.00000002E8
(byte) keyboard_key_pressed::return#2 reg byte a 200002.0
(byte) keyboard_key_pressed::return#20 reg byte a 2.00000002E8
(byte) keyboard_key_pressed::return#21 reg byte a 2.00000002E8
(byte) keyboard_key_pressed::return#24 reg byte a 200002.0
(byte) keyboard_key_pressed::return#25 reg byte a 200002.0
(byte) keyboard_key_pressed::return#26 reg byte a 200002.0
(byte) keyboard_key_pressed::return#27 reg byte a 200002.0
(byte) keyboard_key_pressed::return#28 reg byte a 200002.0
(byte) keyboard_key_pressed::return#29 reg byte a 200002.0
(byte) keyboard_key_pressed::return#30 reg byte a 200002.0
(byte) keyboard_key_pressed::rowidx
(byte) keyboard_key_pressed::rowidx#0 reg byte a 2.000000002E9
(const byte*) keyboard_matrix_col_bitmask[(number) 8] = { (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 3.666666667333333E9
(byte) keyboard_matrix_read::return#2 reg byte a 2.000000002E9
(byte) keyboard_matrix_read::row_pressed_bits
(byte) keyboard_matrix_read::rowid
(byte) keyboard_matrix_read::rowid#0 reg byte y 1.1000000002E10
(const byte*) keyboard_matrix_row_bitmask[(number) 8] = { (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[2]:13 2.0000002E7
(byte*) memset::dst#2 dst zp[2]:13 1.3333334666666666E7
(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 nomodify byte*) menu::SCREEN
(void()) menu()
(byte~) menu::$13 reg byte a 200002.0
(byte~) menu::$17 reg byte a 200002.0
(byte~) menu::$21 reg byte a 200002.0
(byte~) menu::$25 reg byte a 200002.0
(byte~) menu::$29 reg byte a 200002.0
(byte~) menu::$33 reg byte a 200002.0
(byte~) menu::$37 reg byte a 200002.0
(byte~) menu::$41 reg byte a 200002.0
(byte~) menu::$45 reg byte a 200002.0
(byte~) menu::$49 reg byte a 200002.0
(byte~) menu::$5 reg byte a 200002.0
(byte~) menu::$9 reg byte a 200002.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
(const nomodify byte*) menu::CHARSET = (byte*) 38912
(const nomodify byte*) menu::SCREEN = (byte*) 32768
(byte*) menu::c
(byte*) menu::c#1 c zp[2]:6 200002.0
(byte*) menu::c#2 c zp[2]:6 133334.66666666666
(byte) menu::i
(byte) menu::i#1 reg byte x 150001.5
(byte) menu::i#2 reg byte x 200002.0
(void()) mode_8bppchunkybmm()
(word~) mode_8bppchunkybmm::$7 zp[2]:13 1.0000001E7
(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
(const nomodify dword) mode_8bppchunkybmm::PLANEB = (dword) $20000
(byte) mode_8bppchunkybmm::c
(byte) mode_8bppchunkybmm::c#0 reg byte a 2.0000002E7
(byte*) mode_8bppchunkybmm::gfxb
(byte*) mode_8bppchunkybmm::gfxb#1 gfxb zp[2]:8 4200000.6
(byte*) mode_8bppchunkybmm::gfxb#3 gfxb zp[2]:8 1.5500002E7
(byte*) mode_8bppchunkybmm::gfxb#4 gfxb zp[2]:8 7500000.75
(byte*) mode_8bppchunkybmm::gfxb#5 gfxb zp[2]:8 2000002.0
(byte) mode_8bppchunkybmm::gfxbCpuBank
(byte) mode_8bppchunkybmm::gfxbCpuBank#2 reg byte x 2.0000002E7
(byte) mode_8bppchunkybmm::gfxbCpuBank#4 reg byte x 1.025000125E7
(byte) mode_8bppchunkybmm::gfxbCpuBank#7 reg byte x 2000002.0
(byte) mode_8bppchunkybmm::gfxbCpuBank#8 reg byte x 3444444.888888889
(byte) mode_8bppchunkybmm::i
(byte) mode_8bppchunkybmm::i#1 reg byte x 1500001.5
(byte) mode_8bppchunkybmm::i#2 reg byte x 2000002.0
(word) mode_8bppchunkybmm::x
(word) mode_8bppchunkybmm::x#1 x zp[2]:6 1.50000015E7
(word) mode_8bppchunkybmm::x#2 x zp[2]:6 3000000.3
(byte) mode_8bppchunkybmm::y
(byte) mode_8bppchunkybmm::y#1 y zp[1]:2 1500001.5
(byte) mode_8bppchunkybmm::y#6 y zp[1]:2 923077.1538461539
(void()) mode_8bpppixelcell()
(byte~) mode_8bpppixelcell::$2 reg byte a 2.0000002E7
(byte~) mode_8bpppixelcell::$3 zp[1]:10 1.0000001E7
(byte~) mode_8bpppixelcell::$4 reg byte a 2.0000002E7
(byte~) mode_8bpppixelcell::$5 reg byte a 2.0000002E7
(byte~) mode_8bpppixelcell::$8 reg byte a 2.00000002E8
(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
(const byte*) mode_8bpppixelcell::CHARGEN = (byte*) 53248
(const nomodify byte*) mode_8bpppixelcell::PLANEA = (byte*) 15360
(const nomodify byte*) mode_8bpppixelcell::PLANEB = (byte*) 16384
(byte) mode_8bpppixelcell::ax
(byte) mode_8bpppixelcell::ax#1 reg byte x 1.50000015E7
(byte) mode_8bpppixelcell::ax#2 reg byte x 4285714.714285715
(byte) mode_8bpppixelcell::ay
(byte) mode_8bpppixelcell::ay#1 ay zp[1]:2 1500001.5
(byte) mode_8bpppixelcell::ay#4 ay zp[1]:2 1200000.3
(byte) mode_8bpppixelcell::bits
(byte) mode_8bpppixelcell::bits#0 bits zp[1]:17 1.0000001E7
(byte) mode_8bpppixelcell::bits#1 bits zp[1]:17 5.00000005E7
(byte) mode_8bpppixelcell::bits#2 bits zp[1]:17 4.428571485714286E7
(byte) mode_8bpppixelcell::c
(byte) mode_8bpppixelcell::c#2 reg byte a 2.00000002E8
(byte) mode_8bpppixelcell::c#3 reg byte a 2.00000002E8
(byte) mode_8bpppixelcell::ch
(byte) mode_8bpppixelcell::ch#1 ch zp[1]:3 1500001.5
(byte) mode_8bpppixelcell::ch#8 ch zp[1]:3 117647.17647058824
(byte*) mode_8bpppixelcell::chargen
(byte*) mode_8bpppixelcell::chargen#1 chargen zp[2]:8 1312500.1875
(byte*) mode_8bpppixelcell::chargen#2 chargen zp[2]:8 1.5500002E7
(byte*) mode_8bpppixelcell::chargen#4 chargen zp[2]:8 2000002.0
(byte) mode_8bpppixelcell::col
(byte) mode_8bpppixelcell::col#1 col zp[1]:19 3.0142857714285716E7
(byte) mode_8bpppixelcell::col#2 col zp[1]:19 3.87500005E7
(byte) mode_8bpppixelcell::col#5 col zp[1]:19 7000001.0
(byte) mode_8bpppixelcell::col#7 col zp[1]:19 2000002.0
(byte) mode_8bpppixelcell::cp
(byte) mode_8bpppixelcell::cp#1 reg byte x 1.500000015E8
(byte) mode_8bpppixelcell::cp#2 reg byte x 2.2222222444444444E7
(byte) mode_8bpppixelcell::cr
(byte) mode_8bpppixelcell::cr#1 cr zp[1]:12 1.50000015E7
(byte) mode_8bpppixelcell::cr#6 cr zp[1]:12 1428571.5714285714
(byte*) mode_8bpppixelcell::gfxa
(byte*) mode_8bpppixelcell::gfxa#1 gfxa zp[2]:6 4200000.6
(byte*) mode_8bpppixelcell::gfxa#2 gfxa zp[2]:6 5166667.333333333
(byte*) mode_8bpppixelcell::gfxa#3 gfxa zp[2]:6 2000002.0
(byte*) mode_8bpppixelcell::gfxb
(byte*) mode_8bpppixelcell::gfxb#1 gfxb zp[2]:4 2.3444444888888888E7
(byte*) mode_8bpppixelcell::gfxb#2 gfxb zp[2]:4 5.1666667333333336E7
(byte*) mode_8bpppixelcell::gfxb#5 gfxb zp[2]:4 7000001.0
(byte*) mode_8bpppixelcell::gfxb#7 gfxb zp[2]:4 2000002.0
(byte) mode_8bpppixelcell::i
(byte) mode_8bpppixelcell::i#1 reg byte x 1500001.5
(byte) mode_8bpppixelcell::i#2 reg byte x 2000002.0
(void()) mode_ctrl()
(byte~) mode_ctrl::$1 reg byte a 2.00000002E8
(byte~) mode_ctrl::$12 reg byte a 2.00000002E8
(byte~) mode_ctrl::$16 reg byte a 2.00000002E8
(byte~) mode_ctrl::$20 reg byte a 2.00000002E8
(byte~) mode_ctrl::$24 reg byte a 2.00000002E8
(byte~) mode_ctrl::$28 reg byte a 2.00000002E8
(byte~) mode_ctrl::$4 reg byte a 2.00000002E8
(byte~) mode_ctrl::$8 reg byte a 2.00000002E8
(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 ctrl zp[1]:3 6.0000000599999994E7
(byte) mode_ctrl::ctrl#1 ctrl zp[1]:3 2.00000002E8
(byte) mode_ctrl::ctrl#10 ctrl zp[1]:3 8.00000008E7
(byte) mode_ctrl::ctrl#11 ctrl zp[1]:3 8.00000008E7
(byte) mode_ctrl::ctrl#12 ctrl zp[1]:3 8.00000008E7
(byte) mode_ctrl::ctrl#13 ctrl zp[1]:3 8.00000008E7
(byte) mode_ctrl::ctrl#14 ctrl zp[1]:3 5.750000125E7
(byte) mode_ctrl::ctrl#17 ctrl zp[1]:3 8.00000008E7
(byte) mode_ctrl::ctrl#2 ctrl zp[1]:3 2.00000002E8
(byte) mode_ctrl::ctrl#22 ctrl zp[1]:3 5.00000005E7
(byte) mode_ctrl::ctrl#3 ctrl zp[1]:3 2.00000002E8
(byte) mode_ctrl::ctrl#4 ctrl zp[1]:3 2.00000002E8
(byte) mode_ctrl::ctrl#5 ctrl zp[1]:3 2.00000002E8
(byte) mode_ctrl::ctrl#6 ctrl zp[1]:3 2.00000002E8
(void()) mode_ecmchar()
(byte~) mode_ecmchar::$2 reg byte a 2.0000002E7
(byte~) mode_ecmchar::$3 reg byte a 2.0000002E7
(byte~) mode_ecmchar::$4 reg byte a 2.0000002E7
(byte~) mode_ecmchar::$5 zp[1]:18 1.0000001E7
(byte~) mode_ecmchar::$6 reg byte a 2.0000002E7
(byte~) mode_ecmchar::$7 reg byte a 2.0000002E7
(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
(const nomodify byte*) mode_ecmchar::CHARSET = (byte*) 36864
(const nomodify byte*) mode_ecmchar::COLORS = (byte*) 55296
(const nomodify byte*) mode_ecmchar::SCREEN = (byte*) 32768
(byte*) mode_ecmchar::ch
(byte*) mode_ecmchar::ch#1 ch zp[2]:6 4200000.6
(byte*) mode_ecmchar::ch#2 ch zp[2]:6 3100000.4
(byte*) mode_ecmchar::ch#3 ch zp[2]:6 2000002.0
(byte*) mode_ecmchar::col
(byte*) mode_ecmchar::col#1 col zp[2]:13 1909091.1818181819
(byte*) mode_ecmchar::col#2 col zp[2]:13 7750001.0
(byte*) mode_ecmchar::col#3 col zp[2]:13 2000002.0
(byte) mode_ecmchar::cx
(byte) mode_ecmchar::cx#1 reg byte x 1.50000015E7
(byte) mode_ecmchar::cx#2 reg byte x 3636364.0
(byte) mode_ecmchar::cy
(byte) mode_ecmchar::cy#1 cy zp[1]:17 1500001.5
(byte) mode_ecmchar::cy#4 cy zp[1]:17 1571428.857142857
(byte) mode_ecmchar::i
(byte) mode_ecmchar::i#1 reg byte x 1500001.5
(byte) mode_ecmchar::i#2 reg byte x 2000002.0
(void()) mode_hicolecmchar()
(byte~) mode_hicolecmchar::$2 reg byte a 2.0000002E7
(byte~) mode_hicolecmchar::$3 zp[1]:12 1.0000001E7
(byte~) mode_hicolecmchar::$4 reg byte a 2.0000002E7
(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
(const nomodify byte*) mode_hicolecmchar::CHARSET = (byte*) 36864
(const nomodify byte*) mode_hicolecmchar::COLORS = (byte*) 33792
(const nomodify byte*) mode_hicolecmchar::SCREEN = (byte*) 32768
(byte*) mode_hicolecmchar::ch
(byte*) mode_hicolecmchar::ch#1 ch zp[2]:8 4200000.6
(byte*) mode_hicolecmchar::ch#2 ch zp[2]:8 3875000.5
(byte*) mode_hicolecmchar::ch#3 ch zp[2]:8 2000002.0
(byte*) mode_hicolecmchar::col
(byte*) mode_hicolecmchar::col#1 col zp[2]:6 3000000.428571428
(byte*) mode_hicolecmchar::col#2 col zp[2]:6 5166667.333333333
(byte*) mode_hicolecmchar::col#3 col zp[2]:6 2000002.0
(byte) mode_hicolecmchar::cx
(byte) mode_hicolecmchar::cx#1 reg byte x 1.50000015E7
(byte) mode_hicolecmchar::cx#2 reg byte x 3333333.666666667
(byte) mode_hicolecmchar::cy
(byte) mode_hicolecmchar::cy#1 cy zp[1]:17 1500001.5
(byte) mode_hicolecmchar::cy#4 cy zp[1]:17 1000000.2499999999
(byte) mode_hicolecmchar::i
(byte) mode_hicolecmchar::i#1 reg byte x 1500001.5
(byte) mode_hicolecmchar::i#2 reg byte x 2000002.0
(byte) mode_hicolecmchar::v
(byte) mode_hicolecmchar::v#0 reg byte a 1.0000001E7
(void()) mode_hicolmcchar()
(byte~) mode_hicolmcchar::$2 reg byte a 2.0000002E7
(byte~) mode_hicolmcchar::$3 zp[1]:11 1.0000001E7
(byte~) mode_hicolmcchar::$4 reg byte a 2.0000002E7
(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
(const nomodify byte*) mode_hicolmcchar::CHARSET = (byte*) 36864
(const nomodify byte*) mode_hicolmcchar::COLORS = (byte*) 33792
(const nomodify byte*) mode_hicolmcchar::SCREEN = (byte*) 32768
(byte*) mode_hicolmcchar::ch
(byte*) mode_hicolmcchar::ch#1 ch zp[2]:8 4200000.6
(byte*) mode_hicolmcchar::ch#2 ch zp[2]:8 3875000.5
(byte*) mode_hicolmcchar::ch#3 ch zp[2]:8 2000002.0
(byte*) mode_hicolmcchar::col
(byte*) mode_hicolmcchar::col#1 col zp[2]:6 3000000.428571428
(byte*) mode_hicolmcchar::col#2 col zp[2]:6 5166667.333333333
(byte*) mode_hicolmcchar::col#3 col zp[2]:6 2000002.0
(byte) mode_hicolmcchar::cx
(byte) mode_hicolmcchar::cx#1 reg byte x 1.50000015E7
(byte) mode_hicolmcchar::cx#2 reg byte x 3333333.666666667
(byte) mode_hicolmcchar::cy
(byte) mode_hicolmcchar::cy#1 cy zp[1]:17 1500001.5
(byte) mode_hicolmcchar::cy#4 cy zp[1]:17 1000000.2499999999
(byte) mode_hicolmcchar::i
(byte) mode_hicolmcchar::i#1 reg byte x 1500001.5
(byte) mode_hicolmcchar::i#2 reg byte x 2000002.0
(byte) mode_hicolmcchar::v
(byte) mode_hicolmcchar::v#0 reg byte a 1.0000001E7
(void()) mode_hicolstdchar()
(byte~) mode_hicolstdchar::$2 reg byte a 2.0000002E7
(byte~) mode_hicolstdchar::$3 zp[1]:12 1.0000001E7
(byte~) mode_hicolstdchar::$4 reg byte a 2.0000002E7
(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
(const nomodify byte*) mode_hicolstdchar::CHARSET = (byte*) 36864
(const nomodify byte*) mode_hicolstdchar::COLORS = (byte*) 33792
(const nomodify byte*) mode_hicolstdchar::SCREEN = (byte*) 32768
(byte*) mode_hicolstdchar::ch
(byte*) mode_hicolstdchar::ch#1 ch zp[2]:8 4200000.6
(byte*) mode_hicolstdchar::ch#2 ch zp[2]:8 3875000.5
(byte*) mode_hicolstdchar::ch#3 ch zp[2]:8 2000002.0
(byte*) mode_hicolstdchar::col
(byte*) mode_hicolstdchar::col#1 col zp[2]:6 3000000.428571428
(byte*) mode_hicolstdchar::col#2 col zp[2]:6 5166667.333333333
(byte*) mode_hicolstdchar::col#3 col zp[2]:6 2000002.0
(byte) mode_hicolstdchar::cx
(byte) mode_hicolstdchar::cx#1 reg byte x 1.50000015E7
(byte) mode_hicolstdchar::cx#2 reg byte x 3333333.666666667
(byte) mode_hicolstdchar::cy
(byte) mode_hicolstdchar::cy#1 cy zp[1]:19 1500001.5
(byte) mode_hicolstdchar::cy#4 cy zp[1]:19 1000000.2499999999
(byte) mode_hicolstdchar::i
(byte) mode_hicolstdchar::i#1 reg byte x 1500001.5
(byte) mode_hicolstdchar::i#2 reg byte x 2000002.0
(byte) mode_hicolstdchar::v
(byte) mode_hicolstdchar::v#0 reg byte a 1.0000001E7
(void()) mode_mcchar()
(byte~) mode_mcchar::$2 reg byte a 2.0000002E7
(byte~) mode_mcchar::$3 reg byte a 2.0000002E7
(byte~) mode_mcchar::$4 reg byte a 2.0000002E7
(byte~) mode_mcchar::$5 zp[1]:17 1.0000001E7
(byte~) mode_mcchar::$6 reg byte a 2.0000002E7
(byte~) mode_mcchar::$7 reg byte a 2.0000002E7
(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
(const nomodify byte*) mode_mcchar::CHARSET = (byte*) 36864
(const nomodify byte*) mode_mcchar::COLORS = (byte*) 55296
(const nomodify byte*) mode_mcchar::SCREEN = (byte*) 32768
(byte*) mode_mcchar::ch
(byte*) mode_mcchar::ch#1 ch zp[2]:13 4200000.6
(byte*) mode_mcchar::ch#2 ch zp[2]:13 3100000.4
(byte*) mode_mcchar::ch#3 ch zp[2]:13 2000002.0
(byte*) mode_mcchar::col
(byte*) mode_mcchar::col#1 col zp[2]:4 1909091.1818181819
(byte*) mode_mcchar::col#2 col zp[2]:4 7750001.0
(byte*) mode_mcchar::col#3 col zp[2]:4 2000002.0
(byte) mode_mcchar::cx
(byte) mode_mcchar::cx#1 reg byte x 1.50000015E7
(byte) mode_mcchar::cx#2 reg byte x 3636364.0
(byte) mode_mcchar::cy
(byte) mode_mcchar::cy#1 cy zp[1]:12 1500001.5
(byte) mode_mcchar::cy#4 cy zp[1]:12 1571428.857142857
(byte) mode_mcchar::i
(byte) mode_mcchar::i#1 reg byte x 1500001.5
(byte) mode_mcchar::i#2 reg byte x 2000002.0
(void()) mode_sixsfred()
(byte~) mode_sixsfred::$2 reg byte a 2.0000002E7
(byte~) mode_sixsfred::$3 reg byte a 2.0000002E7
(byte~) mode_sixsfred::$6 reg byte a 2.0000002E7
(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
(const nomodify byte*) mode_sixsfred::COLORS = (byte*) 32768
(const nomodify byte*) mode_sixsfred::PLANEA = (byte*) 16384
(const nomodify byte*) mode_sixsfred::PLANEB = (byte*) 24576
(byte) mode_sixsfred::ax
(byte) mode_sixsfred::ax#1 reg byte x 1.50000015E7
(byte) mode_sixsfred::ax#2 reg byte x 4000000.4
(byte) mode_sixsfred::ay
(byte) mode_sixsfred::ay#1 ay zp[1]:17 1500001.5
(byte) mode_sixsfred::ay#4 ay zp[1]:17 1500000.375
(byte) mode_sixsfred::bx
(byte) mode_sixsfred::bx#1 reg byte x 1.50000015E7
(byte) mode_sixsfred::bx#2 reg byte x 6666667.333333333
(byte) mode_sixsfred::by
(byte) mode_sixsfred::by#1 by zp[1]:19 1500001.5
(byte) mode_sixsfred::by#4 by zp[1]:19 333333.6666666667
(byte*) mode_sixsfred::col
(byte*) mode_sixsfred::col#1 col zp[2]:4 4200000.6
(byte*) mode_sixsfred::col#2 col zp[2]:4 7750001.0
(byte*) mode_sixsfred::col#3 col zp[2]:4 2000002.0
(byte) mode_sixsfred::cx
(byte) mode_sixsfred::cx#1 reg byte x 1.50000015E7
(byte) mode_sixsfred::cx#2 reg byte x 6000000.6
(byte) mode_sixsfred::cy
(byte) mode_sixsfred::cy#1 cy zp[1]:12 1500001.5
(byte) mode_sixsfred::cy#4 cy zp[1]:12 1500000.375
(byte*) mode_sixsfred::gfxa
(byte*) mode_sixsfred::gfxa#1 gfxa zp[2]:6 4200000.6
(byte*) mode_sixsfred::gfxa#2 gfxa zp[2]:6 7750001.0
(byte*) mode_sixsfred::gfxa#3 gfxa zp[2]:6 2000002.0
(byte*) mode_sixsfred::gfxb
(byte*) mode_sixsfred::gfxb#1 gfxb zp[2]:8 4200000.6
(byte*) mode_sixsfred::gfxb#2 gfxb zp[2]:8 1.5500002E7
(byte*) mode_sixsfred::gfxb#3 gfxb zp[2]:8 2000002.0
(byte) mode_sixsfred::i
(byte) mode_sixsfred::i#1 reg byte x 1500001.5
(byte) mode_sixsfred::i#2 reg byte x 2000002.0
(byte) mode_sixsfred::row
(byte) mode_sixsfred::row#0 reg byte a 2.0000002E7
(const byte*) mode_sixsfred::row_bitmask[] = { (byte) 0, (byte) $55, (byte) $aa, (byte) $ff }
(void()) mode_sixsfred2()
(byte~) mode_sixsfred2::$2 reg byte a 2.0000002E7
(byte~) mode_sixsfred2::$3 zp[1]:11 1.0000001E7
(byte~) mode_sixsfred2::$4 reg byte a 2.0000002E7
(byte~) mode_sixsfred2::$5 reg byte a 2.0000002E7
(byte~) mode_sixsfred2::$8 reg byte a 2.0000002E7
(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
(const nomodify byte*) mode_sixsfred2::COLORS = (byte*) 32768
(const nomodify byte*) mode_sixsfred2::PLANEA = (byte*) 16384
(const nomodify byte*) mode_sixsfred2::PLANEB = (byte*) 24576
(byte) mode_sixsfred2::ax
(byte) mode_sixsfred2::ax#1 reg byte x 1.50000015E7
(byte) mode_sixsfred2::ax#2 reg byte x 4000000.4
(byte) mode_sixsfred2::ay
(byte) mode_sixsfred2::ay#1 ay zp[1]:3 1500001.5
(byte) mode_sixsfred2::ay#4 ay zp[1]:3 1500000.375
(byte) mode_sixsfred2::bx
(byte) mode_sixsfred2::bx#1 reg byte x 1.50000015E7
(byte) mode_sixsfred2::bx#2 reg byte x 6666667.333333333
(byte) mode_sixsfred2::by
(byte) mode_sixsfred2::by#1 by zp[1]:12 1500001.5
(byte) mode_sixsfred2::by#4 by zp[1]:12 333333.6666666667
(byte*) mode_sixsfred2::col
(byte*) mode_sixsfred2::col#1 col zp[2]:4 4200000.6
(byte*) mode_sixsfred2::col#2 col zp[2]:4 5166667.333333333
(byte*) mode_sixsfred2::col#3 col zp[2]:4 2000002.0
(byte) mode_sixsfred2::cx
(byte) mode_sixsfred2::cx#1 reg byte x 1.50000015E7
(byte) mode_sixsfred2::cx#2 reg byte x 4285714.714285715
(byte) mode_sixsfred2::cy
(byte) mode_sixsfred2::cy#1 cy zp[1]:2 1500001.5
(byte) mode_sixsfred2::cy#4 cy zp[1]:2 1200000.3
(byte*) mode_sixsfred2::gfxa
(byte*) mode_sixsfred2::gfxa#1 gfxa zp[2]:6 4200000.6
(byte*) mode_sixsfred2::gfxa#2 gfxa zp[2]:6 7750001.0
(byte*) mode_sixsfred2::gfxa#3 gfxa zp[2]:6 2000002.0
(byte*) mode_sixsfred2::gfxb
(byte*) mode_sixsfred2::gfxb#1 gfxb zp[2]:8 4200000.6
(byte*) mode_sixsfred2::gfxb#2 gfxb zp[2]:8 1.5500002E7
(byte*) mode_sixsfred2::gfxb#3 gfxb zp[2]:8 2000002.0
(byte) mode_sixsfred2::i
(byte) mode_sixsfred2::i#1 reg byte x 1500001.5
(byte) mode_sixsfred2::i#2 reg byte x 2000002.0
(byte) mode_sixsfred2::row
(byte) mode_sixsfred2::row#0 reg byte a 2.0000002E7
(const byte*) mode_sixsfred2::row_bitmask[] = { (byte) 0, (byte) $55, (byte) $aa, (byte) $ff }
(void()) mode_stdbitmap()
(byte~) mode_stdbitmap::$4 reg byte a 2.0000002E7
(byte~) mode_stdbitmap::$7 reg byte a 2.0000002E7
(byte~) mode_stdbitmap::$8 reg byte a 2.0000002E7
(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
(const nomodify byte*) mode_stdbitmap::BITMAP = (byte*) 24576
(const nomodify byte*) mode_stdbitmap::SCREEN = (byte*) 16384
(byte*) mode_stdbitmap::ch
(byte*) mode_stdbitmap::ch#1 ch zp[2]:4 4200000.6
(byte*) mode_stdbitmap::ch#2 ch zp[2]:4 4428572.0
(byte*) mode_stdbitmap::ch#3 ch zp[2]:4 2000002.0
(byte) mode_stdbitmap::col
(byte) mode_stdbitmap::col#0 reg byte y 1.50000015E7
(byte) mode_stdbitmap::col2
(byte) mode_stdbitmap::col2#0 col2 zp[1]:17 1.0000001E7
(byte) mode_stdbitmap::cx
(byte) mode_stdbitmap::cx#1 reg byte x 1.50000015E7
(byte) mode_stdbitmap::cx#2 reg byte x 3750000.375
(byte) mode_stdbitmap::cy
(byte) mode_stdbitmap::cy#1 cy zp[1]:19 1500001.5
(byte) mode_stdbitmap::cy#4 cy zp[1]:19 1090909.3636363638
(byte) mode_stdbitmap::i
(byte) mode_stdbitmap::i#1 reg byte x 1500001.5
(byte) mode_stdbitmap::i#2 reg byte x 2000002.0
(byte) mode_stdbitmap::l
(byte) mode_stdbitmap::l#1 l zp[1]:12 2000002.0
(byte) mode_stdbitmap::l#2 l zp[1]:12 1000000.9999999999
(const byte) mode_stdbitmap::lines_cnt = (byte) 9
(const byte*) mode_stdbitmap::lines_x[] = { (byte) 0, (byte) $ff, (byte) $ff, (byte) 0, (byte) 0, (byte) $80, (byte) $ff, (byte) $80, (byte) 0, (byte) $80 }
(const byte*) mode_stdbitmap::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::$2 reg byte a 2.0000002E7
(byte~) mode_stdchar::$3 reg byte a 2.0000002E7
(byte~) mode_stdchar::$4 reg byte a 2.0000002E7
(byte~) mode_stdchar::$5 zp[1]:19 1.0000001E7
(byte~) mode_stdchar::$6 reg byte a 2.0000002E7
(byte~) mode_stdchar::$7 reg byte a 2.0000002E7
(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
(const nomodify byte*) mode_stdchar::CHARSET = (byte*) 36864
(const nomodify byte*) mode_stdchar::COLORS = (byte*) 55296
(const nomodify byte*) mode_stdchar::SCREEN = (byte*) 32768
(byte*) mode_stdchar::ch
(byte*) mode_stdchar::ch#1 ch zp[2]:13 4200000.6
(byte*) mode_stdchar::ch#2 ch zp[2]:13 3100000.4
(byte*) mode_stdchar::ch#3 ch zp[2]:13 2000002.0
(byte*) mode_stdchar::col
(byte*) mode_stdchar::col#1 col zp[2]:6 1909091.1818181819
(byte*) mode_stdchar::col#2 col zp[2]:6 7750001.0
(byte*) mode_stdchar::col#3 col zp[2]:6 2000002.0
(byte) mode_stdchar::cx
(byte) mode_stdchar::cx#1 reg byte x 1.50000015E7
(byte) mode_stdchar::cx#2 reg byte x 3636364.0
(byte) mode_stdchar::cy
(byte) mode_stdchar::cy#1 cy zp[1]:18 1500001.5
(byte) mode_stdchar::cy#4 cy zp[1]:18 1571428.857142857
(byte) mode_stdchar::i
(byte) mode_stdchar::i#1 reg byte x 1500001.5
(byte) mode_stdchar::i#2 reg byte x 2000002.0
(void()) mode_twoplanebitmap()
(byte~) mode_twoplanebitmap::$2 reg byte a 2.0000002E7
(byte~) mode_twoplanebitmap::$3 zp[1]:10 1.0000001E7
(byte~) mode_twoplanebitmap::$4 reg byte a 2.0000002E7
(byte~) mode_twoplanebitmap::$5 reg byte a 2.0000002E7
(byte~) mode_twoplanebitmap::$8 reg byte a 2.0000002E7
(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
(const nomodify byte*) mode_twoplanebitmap::COLORS = (byte*) 32768
(const nomodify byte*) mode_twoplanebitmap::PLANEA = (byte*) 16384
(const nomodify byte*) mode_twoplanebitmap::PLANEB = (byte*) 24576
(byte) mode_twoplanebitmap::ax
(byte) mode_twoplanebitmap::ax#1 reg byte x 1.50000015E7
(byte) mode_twoplanebitmap::ax#2 reg byte x 2500000.25
(byte) mode_twoplanebitmap::ay
(byte) mode_twoplanebitmap::ay#1 ay zp[1]:3 1500001.5
(byte) mode_twoplanebitmap::ay#5 ay zp[1]:3 1090909.3636363638
(byte) mode_twoplanebitmap::bx
(byte) mode_twoplanebitmap::bx#1 reg byte x 1.50000015E7
(byte) mode_twoplanebitmap::bx#2 reg byte x 6666667.333333333
(byte) mode_twoplanebitmap::by
(byte) mode_twoplanebitmap::by#1 by zp[1]:12 1500001.5
(byte) mode_twoplanebitmap::by#4 by zp[1]:12 333333.6666666667
(byte*) mode_twoplanebitmap::col
(byte*) mode_twoplanebitmap::col#1 col zp[2]:6 4200000.6
(byte*) mode_twoplanebitmap::col#2 col zp[2]:6 5166667.333333333
(byte*) mode_twoplanebitmap::col#3 col zp[2]:6 2000002.0
(byte) mode_twoplanebitmap::cx
(byte) mode_twoplanebitmap::cx#1 reg byte x 1.50000015E7
(byte) mode_twoplanebitmap::cx#2 reg byte x 4285714.714285715
(byte) mode_twoplanebitmap::cy
(byte) mode_twoplanebitmap::cy#1 cy zp[1]:2 1500001.5
(byte) mode_twoplanebitmap::cy#4 cy zp[1]:2 1200000.3
(byte*) mode_twoplanebitmap::gfxa
(byte*) mode_twoplanebitmap::gfxa#1 gfxa zp[2]:8 2.0000002E7
(byte*) mode_twoplanebitmap::gfxa#2 gfxa zp[2]:8 2.0000002E7
(byte*) mode_twoplanebitmap::gfxa#3 gfxa zp[2]:8 1.02000012E7
(byte*) mode_twoplanebitmap::gfxa#6 gfxa zp[2]:8 6200000.8
(byte*) mode_twoplanebitmap::gfxa#7 gfxa zp[2]:8 2000002.0
(byte*) mode_twoplanebitmap::gfxb
(byte*) mode_twoplanebitmap::gfxb#1 gfxb zp[2]:4 4200000.6
(byte*) mode_twoplanebitmap::gfxb#2 gfxb zp[2]:4 1.5500002E7
(byte*) mode_twoplanebitmap::gfxb#3 gfxb zp[2]:4 2000002.0
(byte) mode_twoplanebitmap::i
(byte) mode_twoplanebitmap::i#1 reg byte x 1500001.5
(byte) mode_twoplanebitmap::i#2 reg byte x 2000002.0
(void()) print_char((byte) print_char::ch)
(label) print_char::@return
(byte) print_char::ch
(byte) print_char::ch#0 reg byte a 1.10000002E8
(byte*) print_char_cursor
(byte*) print_char_cursor#102 print_char_cursor zp[2]:6 2000002.0
(byte*) print_char_cursor#21 print_char_cursor zp[2]:6 1000001.0
(byte*) print_char_cursor#25 print_char_cursor zp[2]:6 3.6666667333333336E7
(byte*) print_char_cursor#35 print_char_cursor zp[2]:6 3.683333416666667E7
(byte*) print_char_cursor#36 print_char_cursor zp[2]:6 1.4328571434285712E9
(void()) print_cls()
(label) print_cls::@return
(byte*) print_line_cursor
(byte*) print_line_cursor#17 print_line_cursor zp[2]:8 916666.8333333333
(byte*) print_line_cursor#18 print_line_cursor zp[2]:8 2.0010000003E10
(byte*) print_line_cursor#19 print_line_cursor zp[2]:8 6.000400001E9
(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 6666667.333333333
(byte*) print_str_lines::str
(byte*) print_str_lines::str#0 str zp[2]:13 2333333.666666667
(byte*) print_str_lines::str#2 str zp[2]:13 1500001.5
(byte*) print_str_lines::str#3 str zp[2]:13 1.5500002E7
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 [ dtv_control#114 dtv_control#144 dtv_control#17 ]
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_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 ]
reg byte y [ bitmap_plot::x#4 bitmap_plot::x#1 bitmap_plot::x#0 bitmap_plot::x#3 bitmap_plot::x#2 ]
reg byte x [ 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_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 ]
zp[1]:2 [ bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#1 bitmap_line_xdyi::yd#0 mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ]
zp[1]:3 [ 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::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::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#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#2 mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 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 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 ]
zp[2]:4 [ mode_mcchar::col#2 mode_mcchar::col#3 mode_mcchar::col#1 mode_stdbitmap::ch#2 mode_stdbitmap::ch#3 mode_stdbitmap::ch#1 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_sixsfred2::col#2 mode_sixsfred2::col#3 mode_sixsfred2::col#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::gfxb#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::gfxb#7 mode_8bpppixelcell::gfxb#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[2]:6 [ print_char_cursor#35 print_char_cursor#21 print_char_cursor#102 print_char_cursor#36 print_char_cursor#25 menu::c#2 menu::c#1 mode_stdchar::col#2 mode_stdchar::col#3 mode_stdchar::col#1 mode_ecmchar::ch#2 mode_ecmchar::ch#3 mode_ecmchar::ch#1 mode_hicolstdchar::col#2 mode_hicolstdchar::col#3 mode_hicolstdchar::col#1 mode_hicolecmchar::col#2 mode_hicolecmchar::col#3 mode_hicolecmchar::col#1 mode_hicolmcchar::col#2 mode_hicolmcchar::col#3 mode_hicolmcchar::col#1 mode_sixsfred2::gfxa#2 mode_sixsfred2::gfxa#3 mode_sixsfred2::gfxa#1 mode_twoplanebitmap::col#2 mode_twoplanebitmap::col#3 mode_twoplanebitmap::col#1 mode_sixsfred::gfxa#2 mode_sixsfred::gfxa#3 mode_sixsfred::gfxa#1 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::gfxa#1 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::x#1 ]
zp[2]:8 [ print_line_cursor#18 print_line_cursor#17 print_line_cursor#19 mode_hicolstdchar::ch#2 mode_hicolstdchar::ch#3 mode_hicolstdchar::ch#1 mode_hicolecmchar::ch#2 mode_hicolecmchar::ch#3 mode_hicolecmchar::ch#1 mode_hicolmcchar::ch#2 mode_hicolmcchar::ch#3 mode_hicolmcchar::ch#1 mode_sixsfred2::gfxb#2 mode_sixsfred2::gfxb#3 mode_sixsfred2::gfxb#1 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::gfxa#7 mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::gfxa#1 mode_sixsfred::gfxb#2 mode_sixsfred::gfxb#3 mode_sixsfred::gfxb#1 mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::chargen#4 mode_8bpppixelcell::chargen#1 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::gfxb#1 ]
reg byte a [ keyboard_key_pressed::return#2 ]
reg byte a [ menu::$5 ]
reg byte a [ keyboard_key_pressed::return#24 ]
reg byte a [ menu::$9 ]
reg byte a [ keyboard_key_pressed::return#25 ]
reg byte a [ menu::$13 ]
reg byte a [ keyboard_key_pressed::return#26 ]
reg byte a [ menu::$17 ]
reg byte a [ keyboard_key_pressed::return#27 ]
reg byte a [ menu::$21 ]
reg byte a [ keyboard_key_pressed::return#28 ]
reg byte a [ menu::$25 ]
reg byte a [ keyboard_key_pressed::return#29 ]
reg byte a [ menu::$29 ]
reg byte a [ keyboard_key_pressed::return#30 ]
reg byte a [ menu::$33 ]
reg byte a [ keyboard_key_pressed::return#10 ]
reg byte a [ menu::$37 ]
reg byte a [ keyboard_key_pressed::return#11 ]
reg byte a [ menu::$41 ]
reg byte a [ keyboard_key_pressed::return#12 ]
reg byte a [ menu::$45 ]
reg byte a [ keyboard_key_pressed::return#13 ]
reg byte a [ menu::$49 ]
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 ]
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::$2 ]
reg byte a [ mode_8bpppixelcell::$4 ]
reg byte a [ mode_8bpppixelcell::$5 ]
reg byte a [ mode_8bpppixelcell::$8 ]
reg byte a [ mode_sixsfred::$2 ]
reg byte a [ mode_sixsfred::$3 ]
reg byte a [ mode_sixsfred::$6 ]
reg byte a [ mode_sixsfred::row#0 ]
reg byte a [ mode_twoplanebitmap::$2 ]
zp[1]:10 [ mode_twoplanebitmap::$3 mode_8bpppixelcell::$3 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 bitmap_line::y1#0 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 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 ]
reg byte a [ mode_twoplanebitmap::$4 ]
reg byte a [ mode_twoplanebitmap::$5 ]
reg byte a [ mode_twoplanebitmap::$8 ]
reg byte a [ mode_sixsfred2::$2 ]
reg byte a [ mode_sixsfred2::$4 ]
reg byte a [ mode_sixsfred2::$5 ]
reg byte a [ mode_sixsfred2::$8 ]
reg byte a [ mode_sixsfred2::row#0 ]
reg byte a [ mode_hicolmcchar::$2 ]
zp[1]:11 [ mode_hicolmcchar::$3 mode_sixsfred2::$3 bitmap_clear::y#4 bitmap_clear::y#1 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::xd#0 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#1 bitmap_line_xdyd::xd#0 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ]
reg byte a [ mode_hicolmcchar::$4 ]
reg byte a [ mode_hicolmcchar::v#0 ]
reg byte a [ mode_hicolecmchar::$2 ]
reg byte a [ mode_hicolecmchar::$4 ]
reg byte a [ mode_hicolecmchar::v#0 ]
reg byte a [ mode_hicolstdchar::$2 ]
zp[1]:12 [ mode_hicolstdchar::$3 mode_hicolecmchar::$3 mode_mcchar::cy#4 mode_mcchar::cy#1 mode_stdbitmap::l#2 mode_stdbitmap::l#1 mode_sixsfred2::by#4 mode_sixsfred2::by#1 mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 mode_sixsfred::cy#4 mode_sixsfred::cy#1 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ]
reg byte a [ mode_hicolstdchar::$4 ]
reg byte a [ mode_hicolstdchar::v#0 ]
reg byte a [ mode_stdbitmap::$4 ]
reg byte y [ mode_stdbitmap::col#0 ]
reg byte a [ mode_stdbitmap::$7 ]
reg byte a [ mode_stdbitmap::$8 ]
reg byte x [ bitmap_line::y0#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 a [ bitmap_line_xdyi::$6 ]
zp[2]:13 [ bitmap_plot::plotter_x#0 bitmap_plot::plotter#0 mode_8bppchunkybmm::$7 memset::dst#2 memset::dst#1 print_str_lines::str#3 print_str_lines::str#2 print_str_lines::str#0 mode_stdchar::ch#2 mode_stdchar::ch#3 mode_stdchar::ch#1 mode_ecmchar::col#2 mode_ecmchar::col#3 mode_ecmchar::col#1 mode_mcchar::ch#2 mode_mcchar::ch#3 mode_mcchar::ch#1 ]
zp[2]:15 [ bitmap_plot::plotter_y#0 ]
reg byte a [ bitmap_plot::$1 ]
reg byte x [ bitmap_line_ydxi::$6 ]
reg byte a [ bitmap_line_xdyd::$6 ]
reg byte x [ 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::$2 ]
reg byte a [ mode_mcchar::$3 ]
reg byte a [ mode_mcchar::$4 ]
zp[1]:17 [ mode_mcchar::$5 mode_stdbitmap::col2#0 mode_ecmchar::cy#4 mode_ecmchar::cy#1 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::x1#0 bitmap_line::x0#0 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::x1#0 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 mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 mode_sixsfred::ay#4 mode_sixsfred::ay#1 mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ]
reg byte a [ mode_mcchar::$6 ]
reg byte a [ mode_mcchar::$7 ]
reg byte a [ mode_ecmchar::$2 ]
reg byte a [ mode_ecmchar::$3 ]
reg byte a [ mode_ecmchar::$4 ]
zp[1]:18 [ mode_ecmchar::$5 bitmap_init::$10 mode_stdchar::cy#4 mode_stdchar::cy#1 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::x1#0 ]
reg byte a [ mode_ecmchar::$6 ]
reg byte a [ mode_ecmchar::$7 ]
reg byte a [ mode_stdchar::$2 ]
reg byte a [ mode_stdchar::$3 ]
reg byte a [ mode_stdchar::$4 ]
zp[1]:19 [ mode_stdchar::$5 mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 mode_sixsfred::by#4 mode_sixsfred::by#1 mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 keyboard_key_pressed::colidx#0 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::yd#2 bitmap_line_xdyd::yd#1 bitmap_line_xdyd::yd#0 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 a [ mode_stdchar::$6 ]
reg byte a [ mode_stdchar::$7 ]
reg byte a [ print_str_lines::ch#0 ]
reg byte a [ print_char::ch#0 ]
FINAL ASSEMBLER
Score: 2307926
// File Comments
// Exploring C64DTV Screen Modes
// Upstart
.pc = $801 "Basic"
:BasicUpstart(main)
.pc = $80d "Program"
// Global Constants & labels
.const VIC_ECM = $40
.const VIC_BMM = $20
.const VIC_DEN = $10
.const VIC_RSEL = 8
.const VIC_MCM = $10
.const VIC_CSEL = 8
// Mask for PROCESSOR_PORT_DDR which allows only memory configuration to be written
.const PROCPORT_DDR_MEMORY_MASK = 7
// RAM in 0xA000, 0xE000 I/O in 0xD000
.const PROCPORT_RAM_IO = 5
// RAM in 0xA000, 0xE000 CHAR ROM in 0xD000
.const PROCPORT_RAM_CHARROM = 1
// The colors of the C64
.const BLACK = 0
.const GREEN = 5
.const BLUE = 6
.const LIGHT_GREEN = $d
.const DTV_FEATURE_ENABLE = 1
.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
.const DTV_COLOR_BANK_DEFAULT = $1d800
.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
.const OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR = 2
.const OFFSET_STRUCT_MOS6526_CIA_PORT_B = 1
.label RASTER = $d012
.label BORDER_COLOR = $d020
.label BG_COLOR = $d021
.label BG_COLOR1 = $d022
.label BG_COLOR2 = $d023
.label BG_COLOR3 = $d024
.label VIC_CONTROL = $d011
.label VIC_CONTROL2 = $d016
.label VIC_MEMORY = $d018
// Processor port data direction register
.label PROCPORT_DDR = 0
// Processor Port Register controlling RAM/ROM configuration and the datasette
.label PROCPORT = 1
// Color Ram
.label COLS = $d800
// The CIA#1: keyboard matrix, joystick #1/#2
.label CIA1 = $dc00
// The CIA#2: Serial bus, RS-232, VIC memory bank
.label CIA2 = $dd00
// Feature enables or disables the extra C64 DTV features
.label DTV_FEATURE = $d03f
// Controls the graphics modes of the C64 DTV
.label DTV_CONTROL = $d03c
// 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
// 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
.label print_char_cursor = 6
.label print_line_cursor = 8
// @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 nomodify byte*) PROCPORT_DDR) ← (const nomodify byte) PROCPORT_DDR_MEMORY_MASK -- _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 nomodify byte*) PROCPORT) ← (const nomodify byte) PROCPORT_RAM_IO -- _deref_pbuc1=vbuc2
lda #PROCPORT_RAM_IO
sta PROCPORT
// *DTV_FEATURE = DTV_FEATURE_ENABLE
// [7] *((const nomodify byte*) DTV_FEATURE) ← (const nomodify byte) DTV_FEATURE_ENABLE -- _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 = 6
// *DTV_GRAPHICS_VIC_BANK = (byte)((dword)CHARSET/$10000)
// [10] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (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 nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(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 nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// *DTV_CONTROL = 0
// [13] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Mode
sta DTV_CONTROL
// CIA2->PORT_A_DDR = %00000011
// [14] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR
// CIA2->PORT_A = %00000011 ^ (byte)((word)CHARSET/$4000)
// [15] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) menu::CHARSET/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2
// *VIC_CONTROL = VIC_DEN|VIC_RSEL|3
// [16] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(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 nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// *VIC_MEMORY = (byte)((((word)SCREEN&$3fff)/$40)|(((word)CHARSET&$3fff)/$400))
// [18] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) menu::CHARSET&(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 nomodify byte*) DTV_PALETTE + (byte) menu::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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 nomodify byte*) COLS [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 nomodify byte*) COLS+(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
// *BG_COLOR = 0
// [25] *((const nomodify byte*) BG_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BG_COLOR
// *BORDER_COLOR = 0
// [26] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta BORDER_COLOR
// print_set_screen(SCREEN)
// [27] call print_set_screen
// Display menu Text
// [896] 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
// [887] 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 nomodify byte) KEY_1 [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::$5 ← (byte) keyboard_key_pressed::return#2
// if(keyboard_key_pressed(KEY_1)!=0)
// [36] if((byte~) menu::$5==(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 nomodify byte) KEY_2 [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::$9 ← (byte) keyboard_key_pressed::return#24
// if(keyboard_key_pressed(KEY_2)!=0)
// [44] if((byte~) menu::$9==(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 nomodify byte) KEY_3 [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::$13 ← (byte) keyboard_key_pressed::return#25
// if(keyboard_key_pressed(KEY_3)!=0)
// [51] if((byte~) menu::$13==(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 nomodify byte) KEY_4 [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::$17 ← (byte) keyboard_key_pressed::return#26
// if(keyboard_key_pressed(KEY_4)!=0)
// [58] if((byte~) menu::$17==(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 nomodify byte) KEY_6 [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::$21 ← (byte) keyboard_key_pressed::return#27
// if(keyboard_key_pressed(KEY_6)!=0)
// [65] if((byte~) menu::$21==(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 nomodify byte) KEY_7 [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::$25 ← (byte) keyboard_key_pressed::return#28
// if(keyboard_key_pressed(KEY_7)!=0)
// [72] if((byte~) menu::$25==(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 nomodify byte) KEY_8 [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::$29 ← (byte) keyboard_key_pressed::return#29
// if(keyboard_key_pressed(KEY_8)!=0)
// [79] if((byte~) menu::$29==(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 nomodify byte) KEY_A [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::$33 ← (byte) keyboard_key_pressed::return#30
// if(keyboard_key_pressed(KEY_A)!=0)
// [86] if((byte~) menu::$33==(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 nomodify byte) KEY_B [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::$37 ← (byte) keyboard_key_pressed::return#10
// if(keyboard_key_pressed(KEY_B)!=0)
// [93] if((byte~) menu::$37==(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 nomodify byte) KEY_C [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::$41 ← (byte) keyboard_key_pressed::return#11
// if(keyboard_key_pressed(KEY_C)!=0)
// [100] if((byte~) menu::$41==(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 nomodify byte) KEY_D [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::$45 ← (byte) keyboard_key_pressed::return#12
// if(keyboard_key_pressed(KEY_D)!=0)
// [107] if((byte~) menu::$45==(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 nomodify byte) KEY_E [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::$49 ← (byte) keyboard_key_pressed::return#13
// if(keyboard_key_pressed(KEY_E)!=0)
// [114] if((byte~) menu::$49==(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 nomodify byte) LIGHT_GREEN -- _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 __7 = $d
.label gfxb = 8
.label x = 6
.label y = 2
// *DTV_CONTROL = DTV_HIGHCOLOR | DTV_LINEAR | DTV_CHUNKY | DTV_COLORRAM_OFF
// [119] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY|(const nomodify byte) DTV_COLORRAM_OFF -- _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 nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(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 nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_MCM|VIC_CSEL
sta VIC_CONTROL2
// *DTV_PLANEB_START_LO = < < PLANEB
// [122] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
lda #0
sta DTV_PLANEB_START_LO
// *DTV_PLANEB_START_MI = > < PLANEB
// [123] *((const nomodify byte*) DTV_PLANEB_START_MI) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_PLANEB_START_MI
// *DTV_PLANEB_START_HI = < > PLANEB
// [124] *((const nomodify byte*) DTV_PLANEB_START_HI) ← <>(const nomodify dword) mode_8bppchunkybmm::PLANEB -- _deref_pbuc1=vbuc2
lda #<PLANEB>>$10
sta DTV_PLANEB_START_HI
// *DTV_PLANEB_STEP = 8
// [125] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 8 -- _deref_pbuc1=vbuc2
lda #8
sta DTV_PLANEB_STEP
// *DTV_PLANEB_MODULO_LO = 0
// [126] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// *DTV_PLANEB_MODULO_HI = 0
// [127] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_PLANEB_MODULO_HI
// *BORDER_COLOR = $00
// [128] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Border color
sta BORDER_COLOR
// [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 nomodify byte*) DTV_PALETTE + (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 nomodify dword) mode_8bppchunkybmm::PLANEB/(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 nomodify dword) mode_8bppchunkybmm::PLANEB/(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::$7 ← (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#6 -- vwuz1=vwuz2_plus_vbuz3
lda.z y
clc
adc.z x
sta.z __7
lda #0
adc.z x+1
sta.z __7+1
// c = (byte)(x+y)
// [143] (byte) mode_8bppchunkybmm::c#0 ← (byte)(word~) mode_8bppchunkybmm::$7 -- vbuaa=_byte_vwuz1
lda.z __7
// *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
// Reset CPU BANK segment to $4000
// [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
// Leave control to the user until exit
// [155] phi from mode_8bppchunkybmm::@10 to mode_ctrl [phi:mode_8bppchunkybmm::@10->mode_ctrl]
// [155] phi (byte) dtv_control#144 = (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY|(const nomodify byte) DTV_COLORRAM_OFF [phi:mode_8bppchunkybmm::@10->mode_ctrl#0] -- vbuxx=vbuc1
ldx #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY|DTV_COLORRAM_OFF
jsr mode_ctrl
// mode_8bppchunkybmm::@return
// }
// [154] return
rts
}
// mode_ctrl
// Allow the user to control the DTV graphics using different keys
mode_ctrl: {
// DTV Graphics Mode - Reset
.label ctrl = 3
// [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 nomodify byte*) RASTER)!=(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 nomodify byte) KEY_SPACE [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 -- vbuz1=vbuxx
// Read the current control byte
stx.z ctrl
// 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 nomodify byte) KEY_L [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 nomodify byte) DTV_LINEAR -- 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]
// [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 nomodify byte) KEY_H [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 nomodify byte) DTV_HIGHCOLOR -- 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]
// [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 nomodify byte) KEY_O [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 nomodify byte) DTV_OVERSCAN -- 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]
// [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 nomodify byte) KEY_B [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 nomodify byte) DTV_BORDER_OFF -- 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]
// [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 nomodify byte) KEY_U [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 nomodify byte) DTV_CHUNKY -- 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]
// [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 nomodify byte) KEY_C [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 nomodify byte) DTV_COLORRAM_OFF -- 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]
// [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 nomodify byte) KEY_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] -- vbuz1=vbuc1
lda #0
sta.z ctrl
// [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 -- vbuz1_eq_vbuxx_then_la1
cpx.z ctrl
beq __b1
// mode_ctrl::@18
// dtv_control = ctrl
// [208] (byte) dtv_control#17 ← (byte) mode_ctrl::ctrl#14 -- vbuxx=vbuz1
ldx.z ctrl
// *DTV_CONTROL = ctrl
// [209] *((const nomodify byte*) DTV_CONTROL) ← (byte) mode_ctrl::ctrl#14 -- _deref_pbuc1=vbuz1
txa
sta DTV_CONTROL
// *BORDER_COLOR = ctrl
// [210] *((const nomodify byte*) BORDER_COLOR) ← (byte) mode_ctrl::ctrl#14 -- _deref_pbuc1=vbuz1
txa
sta BORDER_COLOR
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 = $13
// 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*) keyboard_matrix_col_bitmask + (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] *((byte*)(const nomodify struct MOS6526_CIA*) CIA1) ← *((const byte*) keyboard_matrix_row_bitmask + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuyy
lda keyboard_matrix_row_bitmask,y
sta CIA1
// ~CIA1->PORT_B
// [221] (byte) keyboard_matrix_read::return#0 ← ~ *((byte*)(const nomodify struct MOS6526_CIA*) CIA1+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_B) -- vbuaa=_bnot__deref_pbuc1
lda CIA1+OFFSET_STRUCT_MOS6526_CIA_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) ← (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 __3 = $a
// Screen Chars for Plane A (screen) - 16x16 repeating
.label gfxa = 6
.label ay = 2
.label bits = $11
.label chargen = 8
.label gfxb = 4
.label col = $13
.label cr = $c
.label ch = 3
// *DTV_CONTROL = DTV_HIGHCOLOR | DTV_LINEAR | DTV_CHUNKY
// [227] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY
sta DTV_CONTROL
// *VIC_CONTROL = VIC_ECM|VIC_DEN|VIC_RSEL|3
// [228] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(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 nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_MCM|VIC_CSEL
sta VIC_CONTROL2
// *DTV_PLANEA_START_LO = <PLANEA
// [230] *((const nomodify byte*) DTV_PLANEA_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane A Counter
lda #0
sta DTV_PLANEA_START_LO
// *DTV_PLANEA_START_MI = >PLANEA
// [231] *((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_8bpppixelcell::PLANEA -- _deref_pbuc1=vbuc2
lda #>PLANEA
sta DTV_PLANEA_START_MI
// *DTV_PLANEA_START_HI = 0
// [232] *((const nomodify byte*) DTV_PLANEA_START_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_START_HI
// *DTV_PLANEA_STEP = 1
// [233] *((const nomodify byte*) DTV_PLANEA_STEP) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEA_STEP
// *DTV_PLANEA_MODULO_LO = 0
// [234] *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_LO
// *DTV_PLANEA_MODULO_HI = 0
// [235] *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_PLANEA_MODULO_HI
// *DTV_PLANEB_START_LO = <PLANEB
// [236] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
sta DTV_PLANEB_START_LO
// *DTV_PLANEB_START_MI = >PLANEB
// [237] *((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_8bpppixelcell::PLANEB -- _deref_pbuc1=vbuc2
lda #>PLANEB
sta DTV_PLANEB_START_MI
// *DTV_PLANEB_START_HI = 0
// [238] *((const nomodify byte*) DTV_PLANEB_START_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_HI
// *DTV_PLANEB_STEP = 0
// [239] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_PLANEB_STEP
// *DTV_PLANEB_MODULO_LO = 0
// [240] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_PLANEB_MODULO_LO
// *DTV_PLANEB_MODULO_HI = 0
// [241] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_PLANEB_MODULO_HI
// *BORDER_COLOR = $00
// [242] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Border color
sta BORDER_COLOR
// [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 nomodify byte*) DTV_PALETTE + (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 nomodify byte*) mode_8bpppixelcell::PLANEA [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::$2 ← (byte) mode_8bpppixelcell::ay#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z ay
// (ay & $f)*$10
// [250] (byte~) mode_8bpppixelcell::$3 ← (byte~) mode_8bpppixelcell::$2 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z __3
// ax & $f
// [251] (byte~) mode_8bpppixelcell::$4 ← (byte) mode_8bpppixelcell::ax#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// (ay & $f)*$10 | (ax & $f)
// [252] (byte~) mode_8bpppixelcell::$5 ← (byte~) mode_8bpppixelcell::$3 | (byte~) mode_8bpppixelcell::$4 -- vbuaa=vbuz1_bor_vbuaa
ora.z __3
// *gfxa++ = (ay & $f)*$10 | (ax & $f)
// [253] *((byte*) mode_8bpppixelcell::gfxa#2) ← (byte~) mode_8bpppixelcell::$5 -- _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 nomodify byte*) PROCPORT) ← (const nomodify byte) PROCPORT_RAM_CHARROM -- _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 nomodify byte*) mode_8bpppixelcell::PLANEB [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 [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::$8 ← (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::$8==(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 nomodify byte*) PROCPORT) ← (const nomodify byte) PROCPORT_RAM_IO -- _deref_pbuc1=vbuc2
lda #PROCPORT_RAM_IO
sta PROCPORT
// mode_ctrl()
// [280] call mode_ctrl
// Leave control to the user until exit
// [155] phi from mode_8bpppixelcell::@13 to mode_ctrl [phi:mode_8bpppixelcell::@13->mode_ctrl]
// [155] phi (byte) dtv_control#144 = (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR|(const nomodify byte) DTV_CHUNKY [phi:mode_8bpppixelcell::@13->mode_ctrl#0] -- vbuxx=vbuc1
ldx #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY
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
// Colors for high 4 bits of 8bpp
.label col = 4
.label cy = $c
// Graphics for Plane A () - horizontal stripes every 2 pixels
.label gfxa = 6
.label ay = $11
// Graphics for Plane B - vertical stripes every 2 pixels
.label gfxb = 8
.label by = $13
// *DTV_CONTROL = DTV_HIGHCOLOR | DTV_LINEAR
// [282] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR|DTV_LINEAR
sta DTV_CONTROL
// *VIC_CONTROL = VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3
// [283] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(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 nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_MCM|VIC_CSEL
sta VIC_CONTROL2
// *DTV_PLANEA_START_LO = <PLANEA
// [285] *((const nomodify byte*) DTV_PLANEA_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane A Counter
lda #0
sta DTV_PLANEA_START_LO
// *DTV_PLANEA_START_MI = >PLANEA
// [286] *((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_sixsfred::PLANEA -- _deref_pbuc1=vbuc2
lda #>PLANEA
sta DTV_PLANEA_START_MI
// *DTV_PLANEA_START_HI = 0
// [287] *((const nomodify byte*) DTV_PLANEA_START_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_START_HI
// *DTV_PLANEA_STEP = 1
// [288] *((const nomodify byte*) DTV_PLANEA_STEP) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEA_STEP
// *DTV_PLANEA_MODULO_LO = 0
// [289] *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_LO
// *DTV_PLANEA_MODULO_HI = 0
// [290] *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_PLANEA_MODULO_HI
// *DTV_PLANEB_START_LO = <PLANEB
// [291] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
sta DTV_PLANEB_START_LO
// *DTV_PLANEB_START_MI = >PLANEB
// [292] *((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_sixsfred::PLANEB -- _deref_pbuc1=vbuc2
lda #>PLANEB
sta DTV_PLANEB_START_MI
// *DTV_PLANEB_START_HI = 0
// [293] *((const nomodify byte*) DTV_PLANEB_START_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_HI
// *DTV_PLANEB_STEP = 1
// [294] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEB_STEP
// *DTV_PLANEB_MODULO_LO = 0
// [295] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// *DTV_PLANEB_MODULO_HI = 0
// [296] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_PLANEB_MODULO_HI
// *DTV_COLOR_BANK_LO = <(COLORS/$400)
// [297] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(const nomodify byte*) mode_sixsfred::COLORS/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// *DTV_COLOR_BANK_HI = >(COLORS/$400)
// [298] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (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 nomodify byte*) DTV_PALETTE + (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
// *BORDER_COLOR = $00
// [303] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDER_COLOR
// [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 nomodify byte*) mode_sixsfred::COLORS [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::$2 ← (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::$3 ← (byte~) mode_sixsfred::$2 & (byte) $f -- vbuaa=vbuaa_band_vbuc1
and #$f
// *col++ = (cx+cy) & $f
// [308] *((byte*) mode_sixsfred::col#2) ← (byte~) mode_sixsfred::$3 -- _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 nomodify byte*) mode_sixsfred::PLANEA [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::$6 ← (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::$6 & (byte) 3 -- vbuaa=vbuaa_band_vbuc1
and #3
// *gfxa++ = row_bitmask[row]
// [318] *((byte*) mode_sixsfred::gfxa#2) ← *((const byte*) mode_sixsfred::row_bitmask + (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 nomodify byte*) mode_sixsfred::PLANEB [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
// Leave control to the user until exit
// [155] phi from mode_sixsfred::@12 to mode_ctrl [phi:mode_sixsfred::@12->mode_ctrl]
// [155] phi (byte) dtv_control#144 = (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR [phi:mode_sixsfred::@12->mode_ctrl#0] -- vbuxx=vbuc1
ldx #DTV_HIGHCOLOR|DTV_LINEAR
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 BG_COLORor0[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 BG_COLORor1[7:0]
mode_twoplanebitmap: {
.label PLANEA = $4000
.label PLANEB = $6000
.label COLORS = $8000
.label __3 = $a
// Color for bits 11
// Colors for bits 01 / 10
.label col = 6
.label cy = 2
// Graphics for Plane A - horizontal stripes
.label gfxa = 8
.label ay = 3
// Graphics for Plane B - vertical stripes
.label gfxb = 4
.label by = $c
// *DTV_CONTROL = DTV_HIGHCOLOR | DTV_LINEAR
// [335] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR|DTV_LINEAR
sta DTV_CONTROL
// *VIC_CONTROL = VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3
// [336] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(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 nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// *DTV_PLANEA_START_LO = <PLANEA
// [338] *((const nomodify byte*) DTV_PLANEA_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane A Counter
lda #0
sta DTV_PLANEA_START_LO
// *DTV_PLANEA_START_MI = >PLANEA
// [339] *((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_twoplanebitmap::PLANEA -- _deref_pbuc1=vbuc2
lda #>PLANEA
sta DTV_PLANEA_START_MI
// *DTV_PLANEA_START_HI = 0
// [340] *((const nomodify byte*) DTV_PLANEA_START_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_START_HI
// *DTV_PLANEA_STEP = 1
// [341] *((const nomodify byte*) DTV_PLANEA_STEP) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEA_STEP
// *DTV_PLANEA_MODULO_LO = 0
// [342] *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_LO
// *DTV_PLANEA_MODULO_HI = 0
// [343] *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_PLANEA_MODULO_HI
// *DTV_PLANEB_START_LO = <PLANEB
// [344] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
sta DTV_PLANEB_START_LO
// *DTV_PLANEB_START_MI = >PLANEB
// [345] *((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_twoplanebitmap::PLANEB -- _deref_pbuc1=vbuc2
lda #>PLANEB
sta DTV_PLANEB_START_MI
// *DTV_PLANEB_START_HI = 0
// [346] *((const nomodify byte*) DTV_PLANEB_START_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_HI
// *DTV_PLANEB_STEP = 1
// [347] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEB_STEP
// *DTV_PLANEB_MODULO_LO = 0
// [348] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// *DTV_PLANEB_MODULO_HI = 0
// [349] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_PLANEB_MODULO_HI
// *DTV_COLOR_BANK_LO = <(COLORS/$400)
// [350] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(const nomodify byte*) mode_twoplanebitmap::COLORS/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// *DTV_COLOR_BANK_HI = >(COLORS/$400)
// [351] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (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 nomodify byte*) DTV_PALETTE + (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
// *BORDER_COLOR = $00
// [356] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDER_COLOR
// *BG_COLOR = $70
// [357] *((const nomodify byte*) BG_COLOR) ← (byte) $70 -- _deref_pbuc1=vbuc2
lda #$70
sta BG_COLOR
// *BG_COLOR1 = $d4
// [358] *((const nomodify byte*) BG_COLOR1) ← (byte) $d4 -- _deref_pbuc1=vbuc2
// Color for bits 00
lda #$d4
sta BG_COLOR1
// [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 nomodify byte*) mode_twoplanebitmap::COLORS [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::$2 ← (byte) mode_twoplanebitmap::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// (cy & $f)*$10
// [362] (byte~) mode_twoplanebitmap::$3 ← (byte~) mode_twoplanebitmap::$2 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z __3
// cx &$f
// [363] (byte~) mode_twoplanebitmap::$4 ← (byte) mode_twoplanebitmap::cx#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// (cy & $f)*$10 | (cx &$f)
// [364] (byte~) mode_twoplanebitmap::$5 ← (byte~) mode_twoplanebitmap::$3 | (byte~) mode_twoplanebitmap::$4 -- vbuaa=vbuz1_bor_vbuaa
ora.z __3
// *col++ = (cy & $f)*$10 | (cx &$f)
// [365] *((byte*) mode_twoplanebitmap::col#2) ← (byte~) mode_twoplanebitmap::$5 -- _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 nomodify byte*) mode_twoplanebitmap::PLANEA [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::$8 ← (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::$8==(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 nomodify byte*) mode_twoplanebitmap::PLANEB [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
// Leave control to the user until exit
// [155] phi from mode_twoplanebitmap::@15 to mode_ctrl [phi:mode_twoplanebitmap::@15->mode_ctrl]
// [155] phi (byte) dtv_control#144 = (const nomodify byte) DTV_HIGHCOLOR|(const nomodify byte) DTV_LINEAR [phi:mode_twoplanebitmap::@15->mode_ctrl#0] -- vbuxx=vbuc1
ldx #DTV_HIGHCOLOR|DTV_LINEAR
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 __3 = $b
// Colors for high 4 bits of 8bpp
.label col = 4
.label cy = 2
// Graphics for Plane A () - horizontal stripes every 2 pixels
.label gfxa = 6
.label ay = 3
// Graphics for Plane B - vertical stripes every 2 pixels
.label gfxb = 8
.label by = $c
// *DTV_CONTROL = DTV_LINEAR
// [395] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_LINEAR -- _deref_pbuc1=vbuc2
lda #DTV_LINEAR
sta DTV_CONTROL
// *VIC_CONTROL = VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3
// [396] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_ECM|(const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(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 nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_MCM|(const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_MCM|VIC_CSEL
sta VIC_CONTROL2
// *DTV_PLANEA_START_LO = <PLANEA
// [398] *((const nomodify byte*) DTV_PLANEA_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane A Counter
lda #0
sta DTV_PLANEA_START_LO
// *DTV_PLANEA_START_MI = >PLANEA
// [399] *((const nomodify byte*) DTV_PLANEA_START_MI) ← >(const nomodify byte*) mode_sixsfred2::PLANEA -- _deref_pbuc1=vbuc2
lda #>PLANEA
sta DTV_PLANEA_START_MI
// *DTV_PLANEA_START_HI = 0
// [400] *((const nomodify byte*) DTV_PLANEA_START_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_START_HI
// *DTV_PLANEA_STEP = 1
// [401] *((const nomodify byte*) DTV_PLANEA_STEP) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEA_STEP
// *DTV_PLANEA_MODULO_LO = 0
// [402] *((const nomodify byte*) DTV_PLANEA_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEA_MODULO_LO
// *DTV_PLANEA_MODULO_HI = 0
// [403] *((const nomodify byte*) DTV_PLANEA_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_PLANEA_MODULO_HI
// *DTV_PLANEB_START_LO = <PLANEB
// [404] *((const nomodify byte*) DTV_PLANEB_START_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Linear Graphics Plane B Counter
sta DTV_PLANEB_START_LO
// *DTV_PLANEB_START_MI = >PLANEB
// [405] *((const nomodify byte*) DTV_PLANEB_START_MI) ← >(const nomodify byte*) mode_sixsfred2::PLANEB -- _deref_pbuc1=vbuc2
lda #>PLANEB
sta DTV_PLANEB_START_MI
// *DTV_PLANEB_START_HI = 0
// [406] *((const nomodify byte*) DTV_PLANEB_START_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_START_HI
// *DTV_PLANEB_STEP = 1
// [407] *((const nomodify byte*) DTV_PLANEB_STEP) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta DTV_PLANEB_STEP
// *DTV_PLANEB_MODULO_LO = 0
// [408] *((const nomodify byte*) DTV_PLANEB_MODULO_LO) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_PLANEB_MODULO_LO
// *DTV_PLANEB_MODULO_HI = 0
// [409] *((const nomodify byte*) DTV_PLANEB_MODULO_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_PLANEB_MODULO_HI
// *DTV_COLOR_BANK_LO = <(COLORS/$400)
// [410] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(const nomodify byte*) mode_sixsfred2::COLORS/(word) $400 -- _deref_pbuc1=vbuc2
// DTV Color Bank
lda #<COLORS/$400
sta DTV_COLOR_BANK_LO
// *DTV_COLOR_BANK_HI = >(COLORS/$400)
// [411] *((const nomodify byte*) DTV_COLOR_BANK_HI) ← (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 nomodify byte*) DTV_PALETTE + (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
// *BORDER_COLOR = $00
// [416] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDER_COLOR
// [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 nomodify byte*) mode_sixsfred2::COLORS [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::$2 ← (byte) mode_sixsfred2::cx#2 & (byte) 3 -- vbuaa=vbuxx_band_vbuc1
txa
and #3
// (cx&3)*$10
// [420] (byte~) mode_sixsfred2::$3 ← (byte~) mode_sixsfred2::$2 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z __3
// cy&3
// [421] (byte~) mode_sixsfred2::$4 ← (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::$5 ← (byte~) mode_sixsfred2::$3 | (byte~) mode_sixsfred2::$4 -- vbuaa=vbuz1_bor_vbuaa
ora.z __3
// *col++ = (cx&3)*$10|(cy&3)
// [423] *((byte*) mode_sixsfred2::col#2) ← (byte~) mode_sixsfred2::$5 -- _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 nomodify byte*) mode_sixsfred2::PLANEA [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::$8 ← (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::$8 & (byte) 3 -- vbuaa=vbuaa_band_vbuc1
and #3
// *gfxa++ = row_bitmask[row]
// [433] *((byte*) mode_sixsfred2::gfxa#2) ← *((const byte*) mode_sixsfred2::row_bitmask + (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 nomodify byte*) mode_sixsfred2::PLANEB [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
// Leave control to the user until exit
// [155] phi from mode_sixsfred2::@12 to mode_ctrl [phi:mode_sixsfred2::@12->mode_ctrl]
// [155] phi (byte) dtv_control#144 = (const nomodify byte) DTV_LINEAR [phi:mode_sixsfred2::@12->mode_ctrl#0] -- vbuxx=vbuc1
ldx #DTV_LINEAR
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 BG_COLORor0[7:0]
// - 1: 8bpp ColorData[7:4] "0" & Color[2:0]
//GfxData Pixel Shifter (2) if ColorData[3:3] = 1:
// - 00: 8bpp BG_COLORor0[7:0]
// - 01: 8bpp BG_COLORor1[7:0]
// - 10: 8bpp BG_COLORor2[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 __3 = $b
// Char Colors and screen chars
.label col = 6
.label ch = 8
.label cy = $11
// *DTV_GRAPHICS_VIC_BANK = (byte)((dword)CHARSET/$10000)
// [450] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// *DTV_COLOR_BANK_LO = <((word)(COLORS/$400))
// [451] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify byte*) mode_hicolmcchar::COLORS/(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 nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// *DTV_CONTROL = DTV_HIGHCOLOR
// [453] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR
sta DTV_CONTROL
// CIA2->PORT_A_DDR = %00000011
// [454] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR
// CIA2->PORT_A = %00000011 ^ (byte)((word)CHARSET/$4000)
// [455] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_hicolmcchar::CHARSET/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2
// *VIC_CONTROL = VIC_DEN|VIC_RSEL|3
// [456] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(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 nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL|(const nomodify byte) VIC_MCM -- _deref_pbuc1=vbuc2
lda #VIC_CSEL|VIC_MCM
sta VIC_CONTROL2
// *VIC_MEMORY = (byte)((((word)SCREEN&$3fff)/$40)|(((word)CHARSET&$3fff)/$400))
// [458] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolmcchar::CHARSET&(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 nomodify byte*) DTV_PALETTE + (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
// *BORDER_COLOR = 0
// [463] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDER_COLOR
// *BG_COLOR = $50
// [464] *((const nomodify byte*) BG_COLOR) ← (byte) $50 -- _deref_pbuc1=vbuc2
lda #$50
sta BG_COLOR
// *BG_COLOR1 = $54
// [465] *((const nomodify byte*) BG_COLOR1) ← (byte) $54 -- _deref_pbuc1=vbuc2
lda #$54
sta BG_COLOR1
// *BG_COLOR2 = $58
// [466] *((const nomodify byte*) BG_COLOR2) ← (byte) $58 -- _deref_pbuc1=vbuc2
lda #$58
sta BG_COLOR2
// [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 nomodify byte*) mode_hicolmcchar::SCREEN [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 nomodify byte*) mode_hicolmcchar::COLORS [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::$2 ← (byte) mode_hicolmcchar::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// (cy&$f)*$10
// [470] (byte~) mode_hicolmcchar::$3 ← (byte~) mode_hicolmcchar::$2 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z __3
// cx&$f
// [471] (byte~) mode_hicolmcchar::$4 ← (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::$3 | (byte~) mode_hicolmcchar::$4 -- vbuaa=vbuz1_bor_vbuaa
ora.z __3
// *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
// Leave control to the user until exit
// [155] phi from mode_hicolmcchar::@6 to mode_ctrl [phi:mode_hicolmcchar::@6->mode_ctrl]
// [155] phi (byte) dtv_control#144 = (const nomodify byte) DTV_HIGHCOLOR [phi:mode_hicolmcchar::@6->mode_ctrl#0] -- vbuxx=vbuc1
ldx #DTV_HIGHCOLOR
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 BG_COLORor0[7:0]
// - CharData[7:6] 01: 8bpp BG_COLORor1[7:0]
// - CharData[7:6] 10: 8bpp BG_COLORor2[7:0]
// - CharData[7:6] 11: 8bpp BG_COLORor3[7:0]
// - 1: 8bpp ColorData[7:0]
mode_hicolecmchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $8400
.label __3 = $c
// Char Colors and screen chars
.label col = 6
.label ch = 8
.label cy = $11
// *DTV_GRAPHICS_VIC_BANK = (byte)((dword)CHARSET/$10000)
// [484] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// *DTV_COLOR_BANK_LO = <((word)(COLORS/$400))
// [485] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify byte*) mode_hicolecmchar::COLORS/(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 nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// *DTV_CONTROL = DTV_HIGHCOLOR
// [487] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR
sta DTV_CONTROL
// CIA2->PORT_A_DDR = %00000011
// [488] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR
// CIA2->PORT_A = %00000011 ^ (byte)((word)CHARSET/$4000)
// [489] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_hicolecmchar::CHARSET/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2
// *VIC_CONTROL = VIC_DEN|VIC_RSEL|VIC_ECM|3
// [490] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(const nomodify byte) VIC_ECM|(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 nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// *VIC_MEMORY = (byte)((((word)SCREEN&$3fff)/$40)|(((word)CHARSET&$3fff)/$400))
// [492] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolecmchar::CHARSET&(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 nomodify byte*) DTV_PALETTE + (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
// *BORDER_COLOR = 0
// [497] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDER_COLOR
// *BG_COLOR = $50
// [498] *((const nomodify byte*) BG_COLOR) ← (byte) $50 -- _deref_pbuc1=vbuc2
lda #$50
sta BG_COLOR
// *BG_COLOR1 = $54
// [499] *((const nomodify byte*) BG_COLOR1) ← (byte) $54 -- _deref_pbuc1=vbuc2
lda #$54
sta BG_COLOR1
// *BG_COLOR2 = $58
// [500] *((const nomodify byte*) BG_COLOR2) ← (byte) $58 -- _deref_pbuc1=vbuc2
lda #$58
sta BG_COLOR2
// *BG_COLOR3 = $5c
// [501] *((const nomodify byte*) BG_COLOR3) ← (byte) $5c -- _deref_pbuc1=vbuc2
lda #$5c
sta BG_COLOR3
// [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 nomodify byte*) mode_hicolecmchar::SCREEN [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 nomodify byte*) mode_hicolecmchar::COLORS [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::$2 ← (byte) mode_hicolecmchar::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// (cy&$f)*$10
// [505] (byte~) mode_hicolecmchar::$3 ← (byte~) mode_hicolecmchar::$2 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z __3
// cx&$f
// [506] (byte~) mode_hicolecmchar::$4 ← (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::$3 | (byte~) mode_hicolecmchar::$4 -- vbuaa=vbuz1_bor_vbuaa
ora.z __3
// *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
// Leave control to the user until exit
// [155] phi from mode_hicolecmchar::@6 to mode_ctrl [phi:mode_hicolecmchar::@6->mode_ctrl]
// [155] phi (byte) dtv_control#144 = (const nomodify byte) DTV_HIGHCOLOR [phi:mode_hicolecmchar::@6->mode_ctrl#0] -- vbuxx=vbuc1
ldx #DTV_HIGHCOLOR
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 BG_COLORor0[7:0]
// - 1: 8bpp ColorData[7:0]
mode_hicolstdchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $8400
.label __3 = $c
// Char Colors and screen chars
.label col = 6
.label ch = 8
.label cy = $13
// *DTV_GRAPHICS_VIC_BANK = (byte)((dword)CHARSET/$10000)
// [519] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// *DTV_COLOR_BANK_LO = <((word)(COLORS/$400))
// [520] *((const nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify byte*) mode_hicolstdchar::COLORS/(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 nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// *DTV_CONTROL = DTV_HIGHCOLOR
// [522] *((const nomodify byte*) DTV_CONTROL) ← (const nomodify byte) DTV_HIGHCOLOR -- _deref_pbuc1=vbuc2
lda #DTV_HIGHCOLOR
sta DTV_CONTROL
// CIA2->PORT_A_DDR = %00000011
// [523] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR
// CIA2->PORT_A = %00000011 ^ (byte)((word)CHARSET/$4000)
// [524] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_hicolstdchar::CHARSET/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2
// *VIC_CONTROL = VIC_DEN|VIC_RSEL|3
// [525] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(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 nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// *VIC_MEMORY = (byte)((((word)SCREEN&$3fff)/$40)|(((word)CHARSET&$3fff)/$400))
// [527] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_hicolstdchar::CHARSET&(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 nomodify byte*) DTV_PALETTE + (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
// *BG_COLOR = 0
// [532] *((const nomodify byte*) BG_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BG_COLOR
// *BORDER_COLOR = 0
// [533] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta BORDER_COLOR
// [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 nomodify byte*) mode_hicolstdchar::SCREEN [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 nomodify byte*) mode_hicolstdchar::COLORS [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::$2 ← (byte) mode_hicolstdchar::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// (cy&$f)*$10
// [537] (byte~) mode_hicolstdchar::$3 ← (byte~) mode_hicolstdchar::$2 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z __3
// cx&$f
// [538] (byte~) mode_hicolstdchar::$4 ← (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::$3 | (byte~) mode_hicolstdchar::$4 -- vbuaa=vbuz1_bor_vbuaa
ora.z __3
// *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
// Leave control to the user until exit
// [155] phi from mode_hicolstdchar::@6 to mode_ctrl [phi:mode_hicolstdchar::@6->mode_ctrl]
// [155] phi (byte) dtv_control#144 = (const nomodify byte) DTV_HIGHCOLOR [phi:mode_hicolstdchar::@6->mode_ctrl#0] -- vbuxx=vbuc1
ldx #DTV_HIGHCOLOR
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: {
.const lines_cnt = 9
.label SCREEN = $4000
.label BITMAP = $6000
.label col2 = $11
// Bitmap Colors
.label ch = 4
.label cy = $13
.label l = $c
// *DTV_GRAPHICS_VIC_BANK = (byte)((dword)BITMAP/$10000)
// [551] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (byte) 0 -- _deref_pbuc1=vbuc2
// DTV Graphics Bank
lda #0
sta DTV_GRAPHICS_VIC_BANK
// *DTV_CONTROL = 0
// [552] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_CONTROL
// CIA2->PORT_A_DDR = %00000011
// [553] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR
// CIA2->PORT_A = %00000011 ^ (byte)((word)BITMAP/$4000)
// [554] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_stdbitmap::BITMAP/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^BITMAP/$4000
sta CIA2
// *VIC_CONTROL = VIC_BMM|VIC_DEN|VIC_RSEL|3
// [555] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_BMM|(const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(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 nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// *VIC_MEMORY = (byte)((((word)SCREEN&$3fff)/$40)|(((word)BITMAP&$3fff)/$400))
// [557] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_stdbitmap::BITMAP&(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 nomodify byte*) DTV_PALETTE + (byte) mode_stdbitmap::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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
// *BG_COLOR = BLACK
// [562] *((const nomodify byte*) BG_COLOR) ← (const nomodify byte) BLACK -- _deref_pbuc1=vbuc2
// Screen colors
lda #BLACK
sta BG_COLOR
// *BORDER_COLOR = BLACK
// [563] *((const nomodify byte*) BORDER_COLOR) ← (const nomodify byte) BLACK -- _deref_pbuc1=vbuc2
sta BORDER_COLOR
// [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 nomodify byte*) mode_stdbitmap::SCREEN [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::$4 ← (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::$4 & (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::$7 ← (byte) mode_stdbitmap::col#0 << (byte) 4 -- vbuaa=vbuyy_rol_4
tya
asl
asl
asl
asl
// col*$10 | col2
// [570] (byte~) mode_stdbitmap::$8 ← (byte~) mode_stdbitmap::$7 | (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::$8 -- _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
// Draw some lines on the bitmap
// [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) 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
// Leave control to the user until exit
// [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] -- vbuxx=vbuc1
ldx #0
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 + (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+(byte) 1 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2
lda lines_x+1,y
sta.z bitmap_line.x1
// [588] (byte) bitmap_line::y0#0 ← *((const byte*) mode_stdbitmap::lines_y + (byte) mode_stdbitmap::l#2) -- vbuxx=pbuc1_derefidx_vbuz1
ldx lines_y,y
// [589] (byte) bitmap_line::y1#0 ← *((const byte*) mode_stdbitmap::lines_y+(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 zp($11) x0, byte zp($12) x1, byte register(X) y0, byte zp($a) y1)
bitmap_line: {
.label xd = $b
.label x0 = $11
.label x1 = $12
.label y1 = $a
// if(x0<x1)
// [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
// 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_vbuz3
sec
sbc.z x1
sta.z xd
// if(y0<y1)
// [594] if((byte) bitmap_line::y0#0<(byte) bitmap_line::y1#0) goto bitmap_line::@7 -- vbuxx_lt_vbuz1_then_la1
cpx.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=vbuxx_minus_vbuz1
txa
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=vbuxx
stx.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=vbuz2
lda.z x1
sta.z bitmap_line_xdyi.x
// [605] (byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y1#0 -- vbuxx=vbuz1
ldx.z y1
// [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_vbuxx
txa
eor #$ff
sec
adc.z y1
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=vbuxx
stx.z bitmap_line_ydxd.y
// [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 -- 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=vbuz2
lda.z x1
sta.z bitmap_line_xdyd.x
// [619] (byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y1#0 -- vbuxx=vbuz1
ldx.z y1
// [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=vbuz2_minus_vbuz3
lda.z x1
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 -- vbuxx_lt_vbuz1_then_la1
cpx.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=vbuxx_minus_vbuz1
txa
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 -- vbuz1=vbuz2
lda.z x1
sta.z bitmap_line_ydxd.x
// [630] (byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuxx
stx.z bitmap_line_ydxd.y1
// [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=vbuz2
lda.z x1
sta.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_vbuxx
txa
eor #$ff
sec
adc.z y1
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=vbuxx
stx.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
// [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=vbuz2
lda.z x1
sta.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 zp(3) x, byte register(X) y, byte zp($11) x1, byte zp($b) xd, byte zp(2) yd)
bitmap_line_xdyi: {
.label x = 3
.label x1 = $11
.label xd = $b
.label yd = 2
.label e = $a
// 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 -- vbuyy=vbuz1
ldy.z x
// [658] (byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3
// [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 -- vbuxx=_inc_vbuxx
inx
// 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 -- vbuaa=vbuz1_plus_1
lda.z x1
clc
adc #1
// while (x!=(x1+1))
// [667] if((byte) bitmap_line_xdyi::x#2!=(byte~) bitmap_line_xdyi::$6) goto bitmap_line_xdyi::@1 -- vbuz1_neq_vbuaa_then_la1
cmp.z x
bne __b1
// bitmap_line_xdyi::@return
// }
// [668] return
rts
}
// bitmap_plot
// bitmap_plot(byte register(Y) x, byte register(X) y)
bitmap_plot: {
.label plotter_x = $d
.label plotter_y = $f
.label plotter = $d
// plotter_x = { bitmap_plot_xhi[x], bitmap_plot_xlo[x] }
// [670] (word) bitmap_plot::plotter_x#0 ← *((const to_nomodify byte*) bitmap_plot_xhi + (byte) bitmap_plot::x#4) w= *((const to_nomodify byte*) bitmap_plot_xlo + (byte) bitmap_plot::x#4) -- vwuz1=pbuc1_derefidx_vbuyy_word_pbuc2_derefidx_vbuyy
lda bitmap_plot_xhi,y
sta.z plotter_x+1
lda bitmap_plot_xlo,y
sta.z plotter_x
// plotter_y = { bitmap_plot_yhi[y], bitmap_plot_ylo[y] }
// [671] (word) bitmap_plot::plotter_y#0 ← *((const to_nomodify byte*) bitmap_plot_yhi + (byte) bitmap_plot::y#4) w= *((const to_nomodify byte*) bitmap_plot_ylo + (byte) bitmap_plot::y#4) -- vwuz1=pbuc1_derefidx_vbuxx_word_pbuc2_derefidx_vbuxx
lda bitmap_plot_yhi,x
sta.z plotter_y+1
lda bitmap_plot_ylo,x
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 to_nomodify byte*) bitmap_plot_bit + (byte) bitmap_plot::x#4) -- vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbuyy
lda bitmap_plot_bit,y
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 zp(3) y, byte zp($12) x, byte zp($a) y1, byte zp(2) yd, byte zp($b) xd)
bitmap_line_ydxi: {
.label y = 3
.label x = $12
.label y1 = $a
.label yd = 2
.label xd = $b
.label e = $13
// 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 -- vbuyy=vbuz1
ldy.z x
// [680] (byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3 -- vbuxx=vbuz1
ldx.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 -- vbuz1=_inc_vbuz1
inc.z x
// 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 -- vbuxx=vbuz1_plus_1
ldx.z y1
inx
// while (y!=(y1+1))
// [689] if((byte) bitmap_line_ydxi::y#2!=(byte~) bitmap_line_ydxi::$6) goto bitmap_line_ydxi::@1 -- vbuz1_neq_vbuxx_then_la1
cpx.z y
bne __b1
// bitmap_line_ydxi::@return
// }
// [690] return
rts
}
// bitmap_line_xdyd
// bitmap_line_xdyd(byte zp(2) x, byte register(X) y, byte zp($11) x1, byte zp($b) xd, byte zp($13) yd)
bitmap_line_xdyd: {
.label x = 2
.label x1 = $11
.label xd = $b
.label yd = $13
.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 -- vbuyy=vbuz1
ldy.z x
// [695] (byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3
// [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 -- vbuxx=_dec_vbuxx
dex
// 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 -- vbuaa=vbuz1_plus_1
lda.z x1
clc
adc #1
// while (x!=(x1+1))
// [704] if((byte) bitmap_line_xdyd::x#2!=(byte~) bitmap_line_xdyd::$6) goto bitmap_line_xdyd::@1 -- vbuz1_neq_vbuaa_then_la1
cmp.z x
bne __b1
// bitmap_line_xdyd::@return
// }
// [705] return
rts
}
// bitmap_line_ydxd
// bitmap_line_ydxd(byte zp(3) y, byte zp($11) x, byte zp($a) y1, byte zp(2) yd, byte zp($b) xd)
bitmap_line_ydxd: {
.label y = 3
.label x = $11
.label y1 = $a
.label yd = 2
.label xd = $b
.label e = $13
// 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 -- vbuyy=vbuz1
ldy.z x
// [710] (byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#2 -- vbuxx=vbuz1
ldx.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 -- vbuz1=_dec_vbuz1
dec.z x
// 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 -- vbuxx=vbuz1_plus_1
ldx.z y1
inx
// while (y!=(y1+1))
// [719] if((byte) bitmap_line_ydxd::y#3!=(byte~) bitmap_line_ydxd::$6) goto bitmap_line_ydxd::@1 -- vbuz1_neq_vbuxx_then_la1
cpx.z y
bne __b1
// bitmap_line_ydxd::@return
// }
// [720] return
rts
}
// bitmap_clear
// Clear all graphics on the bitmap
bitmap_clear: {
.label bitmap = 4
.label y = $b
// bitmap = (char*) { bitmap_plot_xhi[0], bitmap_plot_xlo[0] }
// [721] (word) bitmap_clear::bitmap#0 ← *((const to_nomodify byte*) bitmap_plot_xhi) w= *((const to_nomodify byte*) bitmap_plot_xlo) -- 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( char 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( char 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 = $12
.label yoffs = 4
// [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 to_nomodify byte*) bitmap_plot_xlo + (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 to_nomodify byte*) bitmap_plot_xhi + (byte) bitmap_init::x#2) ← >(const nomodify byte*) mode_stdbitmap::BITMAP -- pbuc1_derefidx_vbuxx=vbuc2
lda #>mode_stdbitmap.BITMAP
sta bitmap_plot_xhi,x
// bitmap_plot_bit[x] = bits
// [737] *((const to_nomodify byte*) bitmap_plot_bit + (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(char 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 to_nomodify byte*) bitmap_plot_ylo + (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 to_nomodify byte*) bitmap_plot_yhi + (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(char 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 BG_COLORor0[3:0]
// - 1: 4bpp ColorData[2:0]
// GfxData Pixel Shifter (2) if ColorData[3:3] = 1:
// - 00: 4bpp BG_COLORor0[3:0]
// - 01: 4bpp BG_COLORor1[3:0]
// - 10: 4bpp BG_COLORor2[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 __5 = $11
// Char Colors and screen chars
.label col = 4
.label ch = $d
.label cy = $c
// *DTV_GRAPHICS_VIC_BANK = (byte)((dword)CHARSET/$10000)
// [757] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (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 nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(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 nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// *DTV_CONTROL = 0
// [760] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_CONTROL
// CIA2->PORT_A_DDR = %00000011
// [761] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR
// CIA2->PORT_A = %00000011 ^ (byte)((word)CHARSET/$4000)
// [762] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_mcchar::CHARSET/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2
// *VIC_CONTROL = VIC_DEN|VIC_RSEL|3
// [763] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(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 nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL|(const nomodify byte) VIC_MCM -- _deref_pbuc1=vbuc2
lda #VIC_CSEL|VIC_MCM
sta VIC_CONTROL2
// *VIC_MEMORY = (byte)((((word)SCREEN&$3fff)/$40)|(((word)CHARSET&$3fff)/$400))
// [765] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_mcchar::CHARSET&(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 nomodify byte*) DTV_PALETTE + (byte) mode_mcchar::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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
// *BORDER_COLOR = 0
// [770] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDER_COLOR
// *BG_COLOR = BLACK
// [771] *((const nomodify byte*) BG_COLOR) ← (const nomodify byte) BLACK -- _deref_pbuc1=vbuc2
lda #BLACK
sta BG_COLOR
// *BG_COLOR1 = GREEN
// [772] *((const nomodify byte*) BG_COLOR1) ← (const nomodify byte) GREEN -- _deref_pbuc1=vbuc2
lda #GREEN
sta BG_COLOR1
// *BG_COLOR2 = BLUE
// [773] *((const nomodify byte*) BG_COLOR2) ← (const nomodify byte) BLUE -- _deref_pbuc1=vbuc2
lda #BLUE
sta BG_COLOR2
// [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 nomodify byte*) mode_mcchar::SCREEN [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 nomodify byte*) mode_mcchar::COLORS [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::$2 ← (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::$3 ← (byte~) mode_mcchar::$2 & (byte) $f -- vbuaa=vbuaa_band_vbuc1
and #$f
// *col++ = (cx+cy)&$f
// [778] *((byte*) mode_mcchar::col#2) ← (byte~) mode_mcchar::$3 -- _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::$4 ← (byte) mode_mcchar::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// (cy&$f)*$10
// [781] (byte~) mode_mcchar::$5 ← (byte~) mode_mcchar::$4 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z __5
// cx&$f
// [782] (byte~) mode_mcchar::$6 ← (byte) mode_mcchar::cx#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// (cy&$f)*$10|(cx&$f)
// [783] (byte~) mode_mcchar::$7 ← (byte~) mode_mcchar::$5 | (byte~) mode_mcchar::$6 -- vbuaa=vbuz1_bor_vbuaa
ora.z __5
// *ch++ = (cy&$f)*$10|(cx&$f)
// [784] *((byte*) mode_mcchar::ch#2) ← (byte~) mode_mcchar::$7 -- _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
// Leave control to the user until exit
// [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] -- vbuxx=vbuc1
ldx #0
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 BG_COLORor0[3:0]
// - CharData[7:6] 01: 4bpp BG_COLORor1[3:0]
// - CharData[7:6] 10: 4bpp BG_COLORor2[3:0]
// - CharData[7:6] 11: 4bpp BG_COLORor3[3:0]
// - 1: 4bpp ColorData[3:0]
mode_ecmchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $d800
.label __5 = $12
// Char Colors and screen chars
.label col = $d
.label ch = 6
.label cy = $11
// *DTV_GRAPHICS_VIC_BANK = (byte)((dword)CHARSET/$10000)
// [793] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (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 nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(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 nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// *DTV_CONTROL = 0
// [796] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_CONTROL
// CIA2->PORT_A_DDR = %00000011
// [797] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR
// CIA2->PORT_A = %00000011 ^ (byte)((word)CHARSET/$4000)
// [798] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_ecmchar::CHARSET/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2
// *VIC_CONTROL = VIC_DEN|VIC_RSEL|VIC_ECM|3
// [799] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(const nomodify byte) VIC_ECM|(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 nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// *VIC_MEMORY = (byte)((((word)SCREEN&$3fff)/$40)|(((word)CHARSET&$3fff)/$400))
// [801] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_ecmchar::CHARSET&(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 nomodify byte*) DTV_PALETTE + (byte) mode_ecmchar::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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
// *BORDER_COLOR = 0
// [806] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BORDER_COLOR
// *BG_COLOR = 0
// [807] *((const nomodify byte*) BG_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta BG_COLOR
// *BG_COLOR1 = 2
// [808] *((const nomodify byte*) BG_COLOR1) ← (byte) 2 -- _deref_pbuc1=vbuc2
lda #2
sta BG_COLOR1
// *BG_COLOR2 = 5
// [809] *((const nomodify byte*) BG_COLOR2) ← (byte) 5 -- _deref_pbuc1=vbuc2
lda #5
sta BG_COLOR2
// *BG_COLOR3 = 6
// [810] *((const nomodify byte*) BG_COLOR3) ← (byte) 6 -- _deref_pbuc1=vbuc2
lda #6
sta BG_COLOR3
// [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 nomodify byte*) mode_ecmchar::SCREEN [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 nomodify byte*) mode_ecmchar::COLORS [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::$2 ← (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::$3 ← (byte~) mode_ecmchar::$2 & (byte) $f -- vbuaa=vbuaa_band_vbuc1
and #$f
// *col++ = (cx+cy)&$f
// [815] *((byte*) mode_ecmchar::col#2) ← (byte~) mode_ecmchar::$3 -- _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::$4 ← (byte) mode_ecmchar::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// (cy&$f)*$10
// [818] (byte~) mode_ecmchar::$5 ← (byte~) mode_ecmchar::$4 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z __5
// cx&$f
// [819] (byte~) mode_ecmchar::$6 ← (byte) mode_ecmchar::cx#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// (cy&$f)*$10|(cx&$f)
// [820] (byte~) mode_ecmchar::$7 ← (byte~) mode_ecmchar::$5 | (byte~) mode_ecmchar::$6 -- vbuaa=vbuz1_bor_vbuaa
ora.z __5
// *ch++ = (cy&$f)*$10|(cx&$f)
// [821] *((byte*) mode_ecmchar::ch#2) ← (byte~) mode_ecmchar::$7 -- _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
// Leave control to the user until exit
// [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] -- vbuxx=vbuc1
ldx #0
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 BG_COLORor0[3:0]
// - 1: 4bpp ColorData[3:0]
mode_stdchar: {
.label SCREEN = $8000
.label CHARSET = $9000
// Charset ROM
.label COLORS = $d800
.label __5 = $13
// Char Colors and screen chars
.label col = 6
.label ch = $d
.label cy = $12
// *DTV_GRAPHICS_VIC_BANK = (byte)((dword)CHARSET/$10000)
// [830] *((const nomodify byte*) DTV_GRAPHICS_VIC_BANK) ← (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 nomodify byte*) DTV_COLOR_BANK_LO) ← <(word)(const nomodify dword) DTV_COLOR_BANK_DEFAULT/(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 nomodify byte*) DTV_COLOR_BANK_HI) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta DTV_COLOR_BANK_HI
// *DTV_CONTROL = 0
// [833] *((const nomodify byte*) DTV_CONTROL) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta DTV_CONTROL
// CIA2->PORT_A_DDR = %00000011
// [834] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR) ← (byte) 3 -- _deref_pbuc1=vbuc2
// VIC Graphics Bank
lda #3
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_PORT_A_DDR
// CIA2->PORT_A = %00000011 ^ (byte)((word)CHARSET/$4000)
// [835] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2) ← (byte) 3^(byte)(word)(const nomodify byte*) mode_stdchar::CHARSET/(word) $4000 -- _deref_pbuc1=vbuc2
// Set VIC Bank bits to output - all others to input
lda #3^CHARSET/$4000
sta CIA2
// *VIC_CONTROL = VIC_DEN|VIC_RSEL|3
// [836] *((const nomodify byte*) VIC_CONTROL) ← (const nomodify byte) VIC_DEN|(const nomodify byte) VIC_RSEL|(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 nomodify byte*) VIC_CONTROL2) ← (const nomodify byte) VIC_CSEL -- _deref_pbuc1=vbuc2
lda #VIC_CSEL
sta VIC_CONTROL2
// *VIC_MEMORY = (byte)((((word)SCREEN&$3fff)/$40)|(((word)CHARSET&$3fff)/$400))
// [838] *((const nomodify byte*) VIC_MEMORY) ← (byte)(word)(const nomodify byte*) mode_stdchar::CHARSET&(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 nomodify byte*) DTV_PALETTE + (byte) mode_stdchar::i#2) ← *((const byte*) DTV_PALETTE_DEFAULT + (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
// *BG_COLOR = 0
// [843] *((const nomodify byte*) BG_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
// Screen colors
lda #0
sta BG_COLOR
// *BORDER_COLOR = 0
// [844] *((const nomodify byte*) BORDER_COLOR) ← (byte) 0 -- _deref_pbuc1=vbuc2
sta BORDER_COLOR
// [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 nomodify byte*) mode_stdchar::SCREEN [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 nomodify byte*) mode_stdchar::COLORS [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::$2 ← (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::$3 ← (byte~) mode_stdchar::$2 & (byte) $f -- vbuaa=vbuaa_band_vbuc1
and #$f
// *col++ = (cx+cy)&$f
// [849] *((byte*) mode_stdchar::col#2) ← (byte~) mode_stdchar::$3 -- _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::$4 ← (byte) mode_stdchar::cy#4 & (byte) $f -- vbuaa=vbuz1_band_vbuc1
lda #$f
and.z cy
// (cy&$f)*$10
// [852] (byte~) mode_stdchar::$5 ← (byte~) mode_stdchar::$4 << (byte) 4 -- vbuz1=vbuaa_rol_4
asl
asl
asl
asl
sta.z __5
// cx&$f
// [853] (byte~) mode_stdchar::$6 ← (byte) mode_stdchar::cx#2 & (byte) $f -- vbuaa=vbuxx_band_vbuc1
txa
and #$f
// (cy&$f)*$10|(cx&$f)
// [854] (byte~) mode_stdchar::$7 ← (byte~) mode_stdchar::$5 | (byte~) mode_stdchar::$6 -- vbuaa=vbuz1_bor_vbuaa
ora.z __5
// *ch++ = (cy&$f)*$10|(cx&$f)
// [855] *((byte*) mode_stdchar::ch#2) ← (byte~) mode_stdchar::$7 -- _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
// Leave control to the user until exit
// [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] -- vbuxx=vbuc1
ldx #0
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* zp($d) str)
print_str_lines: {
.label str = $d
// [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 nomodify byte*) menu::SCREEN [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#21 = (const nomodify byte*) menu::SCREEN [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 [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#35 = (byte*) print_char_cursor#21 [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(ch)
// [872] (byte) print_char::ch#0 ← (byte) print_str_lines::ch#0
// [873] call print_char
jsr print_char
// [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#36 = (byte*) print_char_cursor#35 [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#102 ← (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#21 = (byte*) print_char_cursor#102 [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#36) 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_char
// Print a single char
// print_char(byte register(A) ch)
print_char: {
// *(print_char_cursor++) = ch
// [884] *((byte*) print_char_cursor#35) ← (byte) print_char::ch#0 -- _deref_pbuz1=vbuaa
ldy #0
sta (print_char_cursor),y
// *(print_char_cursor++) = ch;
// [885] (byte*) print_char_cursor#25 ← ++ (byte*) print_char_cursor#35 -- pbuz1=_inc_pbuz1
inc.z print_char_cursor
bne !+
inc.z print_char_cursor+1
!:
// print_char::@return
// }
// [886] return
rts
}
// print_cls
// Clear the screen. Also resets current line/char cursor.
print_cls: {
// memset(print_screen, ' ', 1000)
// [888] call memset
// [890] phi from print_cls to memset [phi:print_cls->memset]
jsr memset
// print_cls::@return
// }
// [889] 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 = $d
// [891] phi from memset to memset::@1 [phi:memset->memset::@1]
// [891] 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++)
// [892] 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
// }
// [893] return
rts
// memset::@2
__b2:
// *dst = c
// [894] *((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++)
// [895] (byte*) memset::dst#1 ← ++ (byte*) memset::dst#2 -- pbuz1=_inc_pbuz1
inc.z dst
bne !+
inc.z dst+1
!:
// [891] phi from memset::@2 to memset::@1 [phi:memset::@2->memset::@1]
// [891] 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
// }
// [897] 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