kickc/src/test/ref/ducks-total.log

16906 lines
975 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Fixing struct type size struct printf_buffer_number to 12
Fixing struct type size struct printf_buffer_number to 12
Fixing struct type size struct printf_buffer_number to 12
Fixing struct type SIZE_OF struct printf_buffer_number to 12
Fixing struct type SIZE_OF struct printf_buffer_number to 12
Setting inferred volatile on symbol affected by address-of: l in asm { jsr$ffde stal stxm }
Setting inferred volatile on symbol affected by address-of: m in asm { jsr$ffde stal stxm }
Inlined call vicSelectGfxBank::$0 = call toDd00(vicSelectGfxBank::gfx)
Inlined call call __init
Eliminating unused variable with no statement memcpy::$0
Eliminating unused variable with no statement memset::$2
Eliminating unused variable with no statement gotoxy::$4
Eliminating unused variable with no statement printf_buffer
Eliminating unused variable with no statement __snprintf_capacity
Eliminating unused variable with no statement __snprintf_size
Eliminating unused variable with no statement div16u8u::$1
Eliminating unused variable with no statement div16u8u::$3
Eliminating unused variable with no statement div16u8u::$4
CONTROL FLOW GRAPH SSA
void * memcpy(void *destination , void *source , unsigned int num)
memcpy: scope:[memcpy] from cscroll::@3 cscroll::@4
memcpy::num#2 = phi( cscroll::@3/memcpy::num#0, cscroll::@4/memcpy::num#1 )
memcpy::destination#2 = phi( cscroll::@3/memcpy::destination#0, cscroll::@4/memcpy::destination#1 )
memcpy::source#2 = phi( cscroll::@3/memcpy::source#0, cscroll::@4/memcpy::source#1 )
memcpy::src#0 = ((char *)) memcpy::source#2
memcpy::dst#0 = ((char *)) memcpy::destination#2
memcpy::$2 = (char *)memcpy::source#2
memcpy::src_end#0 = memcpy::$2 + memcpy::num#2
to:memcpy::@1
memcpy::@1: scope:[memcpy] from memcpy memcpy::@2
memcpy::destination#4 = phi( memcpy/memcpy::destination#2, memcpy::@2/memcpy::destination#5 )
memcpy::dst#3 = phi( memcpy/memcpy::dst#0, memcpy::@2/memcpy::dst#1 )
memcpy::src_end#1 = phi( memcpy/memcpy::src_end#0, memcpy::@2/memcpy::src_end#2 )
memcpy::src#2 = phi( memcpy/memcpy::src#0, memcpy::@2/memcpy::src#1 )
memcpy::$1 = memcpy::src#2 != memcpy::src_end#1
if(memcpy::$1) goto memcpy::@2
to:memcpy::@3
memcpy::@2: scope:[memcpy] from memcpy::@1
memcpy::destination#5 = phi( memcpy::@1/memcpy::destination#4 )
memcpy::src_end#2 = phi( memcpy::@1/memcpy::src_end#1 )
memcpy::dst#2 = phi( memcpy::@1/memcpy::dst#3 )
memcpy::src#3 = phi( memcpy::@1/memcpy::src#2 )
*memcpy::dst#2 = *memcpy::src#3
memcpy::dst#1 = ++ memcpy::dst#2
memcpy::src#1 = ++ memcpy::src#3
to:memcpy::@1
memcpy::@3: scope:[memcpy] from memcpy::@1
memcpy::destination#3 = phi( memcpy::@1/memcpy::destination#4 )
memcpy::return#0 = memcpy::destination#3
to:memcpy::@return
memcpy::@return: scope:[memcpy] from memcpy::@3
memcpy::return#4 = phi( memcpy::@3/memcpy::return#0 )
memcpy::return#1 = memcpy::return#4
return
to:@return
void * memset(void *str , char c , unsigned int num)
memset: scope:[memset] from cscroll::@5 cscroll::@6
memset::c#5 = phi( cscroll::@5/memset::c#0, cscroll::@6/memset::c#1 )
memset::str#4 = phi( cscroll::@5/memset::str#0, cscroll::@6/memset::str#1 )
memset::num#2 = phi( cscroll::@5/memset::num#0, cscroll::@6/memset::num#1 )
memset::$0 = memset::num#2 > 0
memset::$1 = ! memset::$0
if(memset::$1) goto memset::@1
to:memset::@2
memset::@1: scope:[memset] from memset memset::@3
memset::str#2 = phi( memset/memset::str#4, memset::@3/memset::str#5 )
memset::return#0 = memset::str#2
to:memset::@return
memset::@2: scope:[memset] from memset
memset::c#4 = phi( memset/memset::c#5 )
memset::num#3 = phi( memset/memset::num#2 )
memset::str#3 = phi( memset/memset::str#4 )
memset::$4 = (char *)memset::str#3
memset::end#0 = memset::$4 + memset::num#3
memset::dst#0 = ((char *)) memset::str#3
to:memset::@3
memset::@3: scope:[memset] from memset::@2 memset::@4
memset::c#3 = phi( memset::@2/memset::c#4, memset::@4/memset::c#2 )
memset::str#5 = phi( memset::@2/memset::str#3, memset::@4/memset::str#6 )
memset::end#1 = phi( memset::@2/memset::end#0, memset::@4/memset::end#2 )
memset::dst#2 = phi( memset::@2/memset::dst#0, memset::@4/memset::dst#1 )
memset::$3 = memset::dst#2 != memset::end#1
if(memset::$3) goto memset::@4
to:memset::@1
memset::@4: scope:[memset] from memset::@3
memset::str#6 = phi( memset::@3/memset::str#5 )
memset::end#2 = phi( memset::@3/memset::end#1 )
memset::dst#3 = phi( memset::@3/memset::dst#2 )
memset::c#2 = phi( memset::@3/memset::c#3 )
*memset::dst#3 = memset::c#2
memset::dst#1 = ++ memset::dst#3
to:memset::@3
memset::@return: scope:[memset] from memset::@1
memset::return#4 = phi( memset::@1/memset::return#0 )
memset::return#1 = memset::return#4
return
to:@return
void utoa(unsigned int value , char *buffer , char radix)
utoa: scope:[utoa] from main::@48 write_score::@8
utoa::buffer#22 = phi( main::@48/utoa::buffer#6, write_score::@8/utoa::buffer#5 )
utoa::value#13 = phi( main::@48/utoa::value#2, write_score::@8/utoa::value#1 )
utoa::radix#2 = phi( main::@48/utoa::radix#1, write_score::@8/utoa::radix#0 )
utoa::max_digits#0 = 0
utoa::digit_values#0 = (unsigned int *) 0
utoa::$0 = utoa::radix#2 == DECIMAL
if(utoa::$0) goto utoa::@1
to:utoa::@6
utoa::@1: scope:[utoa] from utoa
utoa::buffer#18 = phi( utoa/utoa::buffer#22 )
utoa::value#9 = phi( utoa/utoa::value#13 )
utoa::max_digits#1 = 5
utoa::digit_values#1 = RADIX_DECIMAL_VALUES
to:utoa::@5
utoa::@6: scope:[utoa] from utoa
utoa::value#14 = phi( utoa/utoa::value#13 )
utoa::buffer#17 = phi( utoa/utoa::buffer#22 )
utoa::radix#3 = phi( utoa/utoa::radix#2 )
utoa::$1 = utoa::radix#3 == HEXADECIMAL
if(utoa::$1) goto utoa::@2
to:utoa::@7
utoa::@2: scope:[utoa] from utoa::@6
utoa::buffer#19 = phi( utoa::@6/utoa::buffer#17 )
utoa::value#10 = phi( utoa::@6/utoa::value#14 )
utoa::max_digits#2 = 4
utoa::digit_values#2 = RADIX_HEXADECIMAL_VALUES
to:utoa::@5
utoa::@7: scope:[utoa] from utoa::@6
utoa::value#15 = phi( utoa::@6/utoa::value#14 )
utoa::buffer#14 = phi( utoa::@6/utoa::buffer#17 )
utoa::radix#4 = phi( utoa::@6/utoa::radix#3 )
utoa::$2 = utoa::radix#4 == OCTAL
if(utoa::$2) goto utoa::@3
to:utoa::@8
utoa::@3: scope:[utoa] from utoa::@7
utoa::buffer#20 = phi( utoa::@7/utoa::buffer#14 )
utoa::value#11 = phi( utoa::@7/utoa::value#15 )
utoa::max_digits#3 = 6
utoa::digit_values#3 = RADIX_OCTAL_VALUES
to:utoa::@5
utoa::@8: scope:[utoa] from utoa::@7
utoa::value#16 = phi( utoa::@7/utoa::value#15 )
utoa::buffer#11 = phi( utoa::@7/utoa::buffer#14 )
utoa::radix#5 = phi( utoa::@7/utoa::radix#4 )
utoa::$3 = utoa::radix#5 == BINARY
if(utoa::$3) goto utoa::@4
to:utoa::@9
utoa::@4: scope:[utoa] from utoa::@8
utoa::buffer#21 = phi( utoa::@8/utoa::buffer#11 )
utoa::value#12 = phi( utoa::@8/utoa::value#16 )
utoa::max_digits#4 = $10
utoa::digit_values#4 = RADIX_BINARY_VALUES
to:utoa::@5
utoa::@9: scope:[utoa] from utoa::@8
utoa::buffer#7 = phi( utoa::@8/utoa::buffer#11 )
*utoa::buffer#7 = 'e'
utoa::buffer#0 = ++ utoa::buffer#7
*utoa::buffer#0 = 'r'
utoa::buffer#1 = ++ utoa::buffer#0
*utoa::buffer#1 = 'r'
utoa::buffer#2 = ++ utoa::buffer#1
*utoa::buffer#2 = 0
to:utoa::@return
utoa::@return: scope:[utoa] from utoa::@12 utoa::@9
return
to:@return
utoa::@5: scope:[utoa] from utoa::@1 utoa::@2 utoa::@3 utoa::@4
utoa::buffer#16 = phi( utoa::@1/utoa::buffer#18, utoa::@2/utoa::buffer#19, utoa::@3/utoa::buffer#20, utoa::@4/utoa::buffer#21 )
utoa::value#8 = phi( utoa::@1/utoa::value#9, utoa::@2/utoa::value#10, utoa::@3/utoa::value#11, utoa::@4/utoa::value#12 )
utoa::digit_values#8 = phi( utoa::@1/utoa::digit_values#1, utoa::@2/utoa::digit_values#2, utoa::@3/utoa::digit_values#3, utoa::@4/utoa::digit_values#4 )
utoa::max_digits#7 = phi( utoa::@1/utoa::max_digits#1, utoa::@2/utoa::max_digits#2, utoa::@3/utoa::max_digits#3, utoa::@4/utoa::max_digits#4 )
utoa::started#0 = 0
utoa::digit#0 = 0
to:utoa::@10
utoa::@10: scope:[utoa] from utoa::@13 utoa::@5
utoa::buffer#12 = phi( utoa::@13/utoa::buffer#15, utoa::@5/utoa::buffer#16 )
utoa::started#3 = phi( utoa::@13/utoa::started#4, utoa::@5/utoa::started#0 )
utoa::value#6 = phi( utoa::@13/utoa::value#7, utoa::@5/utoa::value#8 )
utoa::digit_values#6 = phi( utoa::@13/utoa::digit_values#7, utoa::@5/utoa::digit_values#8 )
utoa::digit#2 = phi( utoa::@13/utoa::digit#1, utoa::@5/utoa::digit#0 )
utoa::max_digits#5 = phi( utoa::@13/utoa::max_digits#6, utoa::@5/utoa::max_digits#7 )
utoa::$4 = utoa::max_digits#5 - 1
utoa::$5 = utoa::digit#2 < utoa::$4
if(utoa::$5) goto utoa::@11
to:utoa::@12
utoa::@11: scope:[utoa] from utoa::@10
utoa::max_digits#8 = phi( utoa::@10/utoa::max_digits#5 )
utoa::buffer#13 = phi( utoa::@10/utoa::buffer#12 )
utoa::started#2 = phi( utoa::@10/utoa::started#3 )
utoa::value#3 = phi( utoa::@10/utoa::value#6 )
utoa::digit_values#5 = phi( utoa::@10/utoa::digit_values#6 )
utoa::digit#3 = phi( utoa::@10/utoa::digit#2 )
utoa::$10 = utoa::digit#3 * SIZEOF_UNSIGNED_INT
utoa::digit_value#0 = utoa::digit_values#5[utoa::$10]
utoa::$6 = utoa::value#3 >= utoa::digit_value#0
utoa::$7 = utoa::started#2 || utoa::$6
utoa::$8 = ! utoa::$7
if(utoa::$8) goto utoa::@13
to:utoa::@14
utoa::@12: scope:[utoa] from utoa::@10
utoa::buffer#8 = phi( utoa::@10/utoa::buffer#12 )
utoa::value#4 = phi( utoa::@10/utoa::value#6 )
utoa::$11 = (char)utoa::value#4
*utoa::buffer#8 = DIGITS[utoa::$11]
utoa::buffer#3 = ++ utoa::buffer#8
*utoa::buffer#3 = 0
to:utoa::@return
utoa::@13: scope:[utoa] from utoa::@11 utoa::@15
utoa::buffer#15 = phi( utoa::@11/utoa::buffer#13, utoa::@15/utoa::buffer#4 )
utoa::started#4 = phi( utoa::@11/utoa::started#2, utoa::@15/utoa::started#1 )
utoa::value#7 = phi( utoa::@11/utoa::value#3, utoa::@15/utoa::value#0 )
utoa::digit_values#7 = phi( utoa::@11/utoa::digit_values#5, utoa::@15/utoa::digit_values#9 )
utoa::max_digits#6 = phi( utoa::@11/utoa::max_digits#8, utoa::@15/utoa::max_digits#9 )
utoa::digit#4 = phi( utoa::@11/utoa::digit#3, utoa::@15/utoa::digit#5 )
utoa::digit#1 = ++ utoa::digit#4
to:utoa::@10
utoa::@14: scope:[utoa] from utoa::@11
utoa::digit_values#10 = phi( utoa::@11/utoa::digit_values#5 )
utoa::max_digits#10 = phi( utoa::@11/utoa::max_digits#8 )
utoa::digit#6 = phi( utoa::@11/utoa::digit#3 )
utoa::digit_value#1 = phi( utoa::@11/utoa::digit_value#0 )
utoa::value#5 = phi( utoa::@11/utoa::value#3 )
utoa::buffer#9 = phi( utoa::@11/utoa::buffer#13 )
utoa_append::buffer#0 = utoa::buffer#9
utoa_append::value#0 = utoa::value#5
utoa_append::sub#0 = utoa::digit_value#1
call utoa_append
utoa_append::return#0 = utoa_append::return#2
to:utoa::@15
utoa::@15: scope:[utoa] from utoa::@14
utoa::digit_values#9 = phi( utoa::@14/utoa::digit_values#10 )
utoa::max_digits#9 = phi( utoa::@14/utoa::max_digits#10 )
utoa::digit#5 = phi( utoa::@14/utoa::digit#6 )
utoa::buffer#10 = phi( utoa::@14/utoa::buffer#9 )
utoa_append::return#3 = phi( utoa::@14/utoa_append::return#0 )
utoa::$9 = utoa_append::return#3
utoa::value#0 = utoa::$9
utoa::buffer#4 = ++ utoa::buffer#10
utoa::started#1 = 1
to:utoa::@13
unsigned int utoa_append(char *buffer , unsigned int value , unsigned int sub)
utoa_append: scope:[utoa_append] from utoa::@14
utoa_append::buffer#3 = phi( utoa::@14/utoa_append::buffer#0 )
utoa_append::sub#3 = phi( utoa::@14/utoa_append::sub#0 )
utoa_append::value#5 = phi( utoa::@14/utoa_append::value#0 )
utoa_append::digit#0 = 0
to:utoa_append::@1
utoa_append::@1: scope:[utoa_append] from utoa_append utoa_append::@2
utoa_append::buffer#2 = phi( utoa_append/utoa_append::buffer#3, utoa_append::@2/utoa_append::buffer#4 )
utoa_append::digit#4 = phi( utoa_append/utoa_append::digit#0, utoa_append::@2/utoa_append::digit#1 )
utoa_append::sub#1 = phi( utoa_append/utoa_append::sub#3, utoa_append::@2/utoa_append::sub#2 )
utoa_append::value#2 = phi( utoa_append/utoa_append::value#5, utoa_append::@2/utoa_append::value#1 )
utoa_append::$0 = utoa_append::value#2 >= utoa_append::sub#1
if(utoa_append::$0) goto utoa_append::@2
to:utoa_append::@3
utoa_append::@2: scope:[utoa_append] from utoa_append::@1
utoa_append::buffer#4 = phi( utoa_append::@1/utoa_append::buffer#2 )
utoa_append::sub#2 = phi( utoa_append::@1/utoa_append::sub#1 )
utoa_append::value#3 = phi( utoa_append::@1/utoa_append::value#2 )
utoa_append::digit#2 = phi( utoa_append::@1/utoa_append::digit#4 )
utoa_append::digit#1 = ++ utoa_append::digit#2
utoa_append::value#1 = utoa_append::value#3 - utoa_append::sub#2
to:utoa_append::@1
utoa_append::@3: scope:[utoa_append] from utoa_append::@1
utoa_append::value#4 = phi( utoa_append::@1/utoa_append::value#2 )
utoa_append::buffer#1 = phi( utoa_append::@1/utoa_append::buffer#2 )
utoa_append::digit#3 = phi( utoa_append::@1/utoa_append::digit#4 )
*utoa_append::buffer#1 = DIGITS[utoa_append::digit#3]
utoa_append::return#1 = utoa_append::value#4
to:utoa_append::@return
utoa_append::@return: scope:[utoa_append] from utoa_append::@3
utoa_append::return#4 = phi( utoa_append::@3/utoa_append::return#1 )
utoa_append::return#2 = utoa_append::return#4
return
to:@return
void gotoxy(char x , char y)
gotoxy: scope:[gotoxy] from clear_screen::@3 conio_c64_init::@1 cscroll::@2
gotoxy::x#6 = phi( clear_screen::@3/gotoxy::x#3, conio_c64_init::@1/gotoxy::x#2, cscroll::@2/gotoxy::x#1 )
gotoxy::y#4 = phi( clear_screen::@3/gotoxy::y#3, conio_c64_init::@1/gotoxy::y#2, cscroll::@2/gotoxy::y#1 )
gotoxy::$0 = gotoxy::y#4 > $19
gotoxy::$1 = ! gotoxy::$0
if(gotoxy::$1) goto gotoxy::@1
to:gotoxy::@3
gotoxy::@1: scope:[gotoxy] from gotoxy gotoxy::@3
gotoxy::y#6 = phi( gotoxy/gotoxy::y#4, gotoxy::@3/gotoxy::y#0 )
gotoxy::x#4 = phi( gotoxy/gotoxy::x#6, gotoxy::@3/gotoxy::x#7 )
gotoxy::$2 = gotoxy::x#4 >= $28
gotoxy::$3 = ! gotoxy::$2
if(gotoxy::$3) goto gotoxy::@2
to:gotoxy::@4
gotoxy::@3: scope:[gotoxy] from gotoxy
gotoxy::x#7 = phi( gotoxy/gotoxy::x#6 )
gotoxy::y#0 = 0
to:gotoxy::@1
gotoxy::@2: scope:[gotoxy] from gotoxy::@1 gotoxy::@4
gotoxy::y#5 = phi( gotoxy::@1/gotoxy::y#6, gotoxy::@4/gotoxy::y#7 )
gotoxy::x#5 = phi( gotoxy::@1/gotoxy::x#4, gotoxy::@4/gotoxy::x#0 )
conio_cursor_x = gotoxy::x#5
conio_cursor_y = gotoxy::y#5
gotoxy::$7 = (unsigned int)gotoxy::y#5
gotoxy::line_offset#0 = gotoxy::$7 * $28
gotoxy::$5 = DEFAULT_SCREEN + gotoxy::line_offset#0
conio_line_text = gotoxy::$5
gotoxy::$6 = COLORRAM + gotoxy::line_offset#0
conio_line_color = gotoxy::$6
to:gotoxy::@return
gotoxy::@4: scope:[gotoxy] from gotoxy::@1
gotoxy::y#7 = phi( gotoxy::@1/gotoxy::y#6 )
gotoxy::x#0 = 0
to:gotoxy::@2
gotoxy::@return: scope:[gotoxy] from gotoxy::@2
return
to:@return
void cputc(char c)
cputc: scope:[cputc] from cputs::@2
cputc::c#1 = phi( cputs::@2/cputc::c#0 )
cputc::$0 = cputc::c#1 == '
'
if(cputc::$0) goto cputc::@1
to:cputc::@2
cputc::@1: scope:[cputc] from cputc
call cputln
to:cputc::@4
cputc::@4: scope:[cputc] from cputc::@1
to:cputc::@return
cputc::@2: scope:[cputc] from cputc
cputc::c#2 = phi( cputc/cputc::c#1 )
conio_line_text[conio_cursor_x] = cputc::c#2
conio_line_color[conio_cursor_x] = conio_textcolor
conio_cursor_x = ++ conio_cursor_x
cputc::$1 = conio_cursor_x == $28
cputc::$2 = ! cputc::$1
if(cputc::$2) goto cputc::@return
to:cputc::@3
cputc::@3: scope:[cputc] from cputc::@2
call cputln
to:cputc::@5
cputc::@5: scope:[cputc] from cputc::@3
to:cputc::@return
cputc::@return: scope:[cputc] from cputc::@2 cputc::@4 cputc::@5
return
to:@return
void cputln()
cputln: scope:[cputln] from cputc::@1 cputc::@3
conio_line_text = conio_line_text + $28
conio_line_color = conio_line_color + $28
conio_cursor_x = 0
conio_cursor_y = ++ conio_cursor_y
call cscroll
to:cputln::@1
cputln::@1: scope:[cputln] from cputln
to:cputln::@return
cputln::@return: scope:[cputln] from cputln::@1
return
to:@return
void cputs(const char *s)
cputs: scope:[cputs] from main::@103 main::@105 main::@106 main::@108 main::@110 main::@112 main::@55 main::@57 main::@59
cputs::s#11 = phi( main::@103/cputs::s#4, main::@105/cputs::s#5, main::@106/cputs::s#6, main::@108/cputs::s#7, main::@110/cputs::s#8, main::@112/cputs::s#9, main::@55/cputs::s#1, main::@57/cputs::s#2, main::@59/cputs::s#3 )
cputs::c#0 = 0
to:cputs::@1
cputs::@1: scope:[cputs] from cputs cputs::@3
cputs::s#10 = phi( cputs/cputs::s#11, cputs::@3/cputs::s#12 )
cputs::c#1 = *cputs::s#10
cputs::$0 = cputs::c#1
cputs::s#0 = ++ cputs::s#10
cputs::$2 = 0 != cputs::$0
if(cputs::$2) goto cputs::@2
to:cputs::@return
cputs::@2: scope:[cputs] from cputs::@1
cputs::s#13 = phi( cputs::@1/cputs::s#0 )
cputs::c#2 = phi( cputs::@1/cputs::c#1 )
cputc::c#0 = cputs::c#2
call cputc
to:cputs::@3
cputs::@3: scope:[cputs] from cputs::@2
cputs::s#12 = phi( cputs::@2/cputs::s#13 )
to:cputs::@1
cputs::@return: scope:[cputs] from cputs::@1
return
to:@return
char textcolor(char color)
textcolor: scope:[textcolor] from main::@102 main::@104 main::@107 main::@111 main::@54 main::@56 main::@58
textcolor::color#7 = phi( main::@102/textcolor::color#3, main::@104/textcolor::color#4, main::@107/textcolor::color#5, main::@111/textcolor::color#6, main::@54/textcolor::color#0, main::@56/textcolor::color#1, main::@58/textcolor::color#2 )
textcolor::old#0 = conio_textcolor
conio_textcolor = textcolor::color#7
textcolor::return#0 = textcolor::old#0
to:textcolor::@return
textcolor::@return: scope:[textcolor] from textcolor
textcolor::return#9 = phi( textcolor/textcolor::return#0 )
textcolor::return#1 = textcolor::return#9
return
to:@return
void cscroll()
cscroll: scope:[cscroll] from cputln
cscroll::$0 = conio_cursor_y == $19
cscroll::$1 = ! cscroll::$0
if(cscroll::$1) goto cscroll::@return
to:cscroll::@1
cscroll::@1: scope:[cscroll] from cscroll
cscroll::$7 = 0 != conio_scroll_enable
if(cscroll::$7) goto cscroll::@3
to:cscroll::@2
cscroll::@3: scope:[cscroll] from cscroll::@1
memcpy::destination#0 = (void *)DEFAULT_SCREEN
memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
memcpy::num#0 = $19*$28-$28
call memcpy
memcpy::return#2 = memcpy::return#1
to:cscroll::@4
cscroll::@4: scope:[cscroll] from cscroll::@3
memcpy::destination#1 = (void *)COLORRAM
memcpy::source#1 = (void *)COLORRAM+$28
memcpy::num#1 = $19*$28-$28
call memcpy
memcpy::return#3 = memcpy::return#1
to:cscroll::@5
cscroll::@5: scope:[cscroll] from cscroll::@4
memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
memset::c#0 = ' '
memset::num#0 = $28
call memset
memset::return#2 = memset::return#1
to:cscroll::@6
cscroll::@6: scope:[cscroll] from cscroll::@5
memset::str#1 = (void *)COLORRAM+$19*$28-$28
memset::c#1 = conio_textcolor
memset::num#1 = $28
call memset
memset::return#3 = memset::return#1
to:cscroll::@7
cscroll::@7: scope:[cscroll] from cscroll::@6
conio_line_text = conio_line_text - $28
conio_line_color = conio_line_color - $28
conio_cursor_y = -- conio_cursor_y
to:cscroll::@return
cscroll::@2: scope:[cscroll] from cscroll::@1
gotoxy::x#1 = 0
gotoxy::y#1 = 0
call gotoxy
to:cscroll::@8
cscroll::@8: scope:[cscroll] from cscroll::@2
to:cscroll::@return
cscroll::@return: scope:[cscroll] from cscroll cscroll::@7 cscroll::@8
return
to:@return
void conio_c64_init()
conio_c64_init: scope:[conio_c64_init] from __start::__init1
conio_c64_init::line#0 = *conio_c64_init::BASIC_CURSOR_LINE
conio_c64_init::$0 = conio_c64_init::line#0 >= $19
conio_c64_init::$1 = ! conio_c64_init::$0
if(conio_c64_init::$1) goto conio_c64_init::@1
to:conio_c64_init::@2
conio_c64_init::@1: scope:[conio_c64_init] from conio_c64_init conio_c64_init::@2
conio_c64_init::line#2 = phi( conio_c64_init/conio_c64_init::line#0, conio_c64_init::@2/conio_c64_init::line#1 )
gotoxy::x#2 = 0
gotoxy::y#2 = conio_c64_init::line#2
call gotoxy
to:conio_c64_init::@3
conio_c64_init::@3: scope:[conio_c64_init] from conio_c64_init::@1
to:conio_c64_init::@return
conio_c64_init::@2: scope:[conio_c64_init] from conio_c64_init
conio_c64_init::line#1 = $19-1
to:conio_c64_init::@1
conio_c64_init::@return: scope:[conio_c64_init] from conio_c64_init::@3
return
to:@return
char divr8u(char dividend , char divisor , char rem)
divr8u: scope:[divr8u] from div16u8u div16u8u::@1
divr8u::divisor#6 = phi( div16u8u/divr8u::divisor#0, div16u8u::@1/divr8u::divisor#1 )
divr8u::dividend#5 = phi( div16u8u/divr8u::dividend#1, div16u8u::@1/divr8u::dividend#2 )
divr8u::rem#10 = phi( div16u8u/divr8u::rem#3, div16u8u::@1/divr8u::rem#4 )
divr8u::quotient#0 = 0
divr8u::i#0 = 0
to:divr8u::@1
divr8u::@1: scope:[divr8u] from divr8u divr8u::@3
divr8u::i#5 = phi( divr8u/divr8u::i#0, divr8u::@3/divr8u::i#1 )
divr8u::divisor#4 = phi( divr8u/divr8u::divisor#6, divr8u::@3/divr8u::divisor#7 )
divr8u::quotient#6 = phi( divr8u/divr8u::quotient#0, divr8u::@3/divr8u::quotient#8 )
divr8u::dividend#3 = phi( divr8u/divr8u::dividend#5, divr8u::@3/divr8u::dividend#6 )
divr8u::rem#5 = phi( divr8u/divr8u::rem#10, divr8u::@3/divr8u::rem#11 )
divr8u::$0 = divr8u::rem#5 << 1
divr8u::rem#0 = divr8u::$0
divr8u::$1 = divr8u::dividend#3 & $80
divr8u::$2 = divr8u::$1 != 0
divr8u::$3 = ! divr8u::$2
if(divr8u::$3) goto divr8u::@2
to:divr8u::@4
divr8u::@2: scope:[divr8u] from divr8u::@1 divr8u::@4
divr8u::i#3 = phi( divr8u::@1/divr8u::i#5, divr8u::@4/divr8u::i#6 )
divr8u::divisor#2 = phi( divr8u::@1/divr8u::divisor#4, divr8u::@4/divr8u::divisor#5 )
divr8u::rem#6 = phi( divr8u::@1/divr8u::rem#0, divr8u::@4/divr8u::rem#1 )
divr8u::quotient#3 = phi( divr8u::@1/divr8u::quotient#6, divr8u::@4/divr8u::quotient#7 )
divr8u::dividend#4 = phi( divr8u::@1/divr8u::dividend#3, divr8u::@4/divr8u::dividend#7 )
divr8u::$5 = divr8u::dividend#4 << 1
divr8u::dividend#0 = divr8u::$5
divr8u::$6 = divr8u::quotient#3 << 1
divr8u::quotient#1 = divr8u::$6
divr8u::$7 = divr8u::rem#6 >= divr8u::divisor#2
divr8u::$8 = ! divr8u::$7
if(divr8u::$8) goto divr8u::@3
to:divr8u::@5
divr8u::@4: scope:[divr8u] from divr8u::@1
divr8u::i#6 = phi( divr8u::@1/divr8u::i#5 )
divr8u::divisor#5 = phi( divr8u::@1/divr8u::divisor#4 )
divr8u::quotient#7 = phi( divr8u::@1/divr8u::quotient#6 )
divr8u::dividend#7 = phi( divr8u::@1/divr8u::dividend#3 )
divr8u::rem#7 = phi( divr8u::@1/divr8u::rem#0 )
divr8u::$4 = divr8u::rem#7 | 1
divr8u::rem#1 = divr8u::$4
to:divr8u::@2
divr8u::@3: scope:[divr8u] from divr8u::@2 divr8u::@5
divr8u::divisor#7 = phi( divr8u::@2/divr8u::divisor#2, divr8u::@5/divr8u::divisor#3 )
divr8u::quotient#8 = phi( divr8u::@2/divr8u::quotient#1, divr8u::@5/divr8u::quotient#2 )
divr8u::dividend#6 = phi( divr8u::@2/divr8u::dividend#0, divr8u::@5/divr8u::dividend#8 )
divr8u::rem#11 = phi( divr8u::@2/divr8u::rem#6, divr8u::@5/divr8u::rem#2 )
divr8u::i#2 = phi( divr8u::@2/divr8u::i#3, divr8u::@5/divr8u::i#4 )
divr8u::i#1 = divr8u::i#2 + rangenext(0,7)
divr8u::$10 = divr8u::i#1 != rangelast(0,7)
if(divr8u::$10) goto divr8u::@1
to:divr8u::@6
divr8u::@5: scope:[divr8u] from divr8u::@2
divr8u::dividend#8 = phi( divr8u::@2/divr8u::dividend#0 )
divr8u::i#4 = phi( divr8u::@2/divr8u::i#3 )
divr8u::divisor#3 = phi( divr8u::@2/divr8u::divisor#2 )
divr8u::rem#8 = phi( divr8u::@2/divr8u::rem#6 )
divr8u::quotient#4 = phi( divr8u::@2/divr8u::quotient#1 )
divr8u::quotient#2 = ++ divr8u::quotient#4
divr8u::$9 = divr8u::rem#8 - divr8u::divisor#3
divr8u::rem#2 = divr8u::$9
to:divr8u::@3
divr8u::@6: scope:[divr8u] from divr8u::@3
divr8u::quotient#5 = phi( divr8u::@3/divr8u::quotient#8 )
divr8u::rem#9 = phi( divr8u::@3/divr8u::rem#11 )
rem8u#0 = divr8u::rem#9
divr8u::return#0 = divr8u::quotient#5
to:divr8u::@return
divr8u::@return: scope:[divr8u] from divr8u::@6
rem8u#12 = phi( divr8u::@6/rem8u#0 )
divr8u::return#4 = phi( divr8u::@6/divr8u::return#0 )
divr8u::return#1 = divr8u::return#4
rem8u#1 = rem8u#12
return
to:@return
unsigned int div16u8u(unsigned int dividend , char divisor)
div16u8u: scope:[div16u8u] from read_chrono
rem8u#22 = phi( read_chrono/rem8u#23 )
div16u8u::divisor#1 = phi( read_chrono/div16u8u::divisor#0 )
div16u8u::dividend#1 = phi( read_chrono/div16u8u::dividend#0 )
div16u8u::$0 = byte1 div16u8u::dividend#1
divr8u::dividend#1 = div16u8u::$0
divr8u::divisor#0 = div16u8u::divisor#1
divr8u::rem#3 = 0
call divr8u
divr8u::return#2 = divr8u::return#1
to:div16u8u::@1
div16u8u::@1: scope:[div16u8u] from div16u8u
div16u8u::divisor#2 = phi( div16u8u/div16u8u::divisor#1 )
div16u8u::dividend#2 = phi( div16u8u/div16u8u::dividend#1 )
rem8u#13 = phi( div16u8u/rem8u#1 )
divr8u::return#5 = phi( div16u8u/divr8u::return#2 )
div16u8u::quotient_hi#0 = divr8u::return#5
rem8u#2 = rem8u#13
div16u8u::$2 = byte0 div16u8u::dividend#2
divr8u::dividend#2 = div16u8u::$2
divr8u::divisor#1 = div16u8u::divisor#2
divr8u::rem#4 = rem8u#2
call divr8u
divr8u::return#3 = divr8u::return#1
to:div16u8u::@2
div16u8u::@2: scope:[div16u8u] from div16u8u::@1
div16u8u::quotient_hi#1 = phi( div16u8u::@1/div16u8u::quotient_hi#0 )
rem8u#14 = phi( div16u8u::@1/rem8u#1 )
divr8u::return#6 = phi( div16u8u::@1/divr8u::return#3 )
div16u8u::quotient_lo#0 = divr8u::return#6
rem8u#3 = rem8u#14
div16u8u::quotient#0 = div16u8u::quotient_hi#1 w= div16u8u::quotient_lo#0
div16u8u::return#0 = div16u8u::quotient#0
to:div16u8u::@return
div16u8u::@return: scope:[div16u8u] from div16u8u::@2
rem8u#15 = phi( div16u8u::@2/rem8u#3 )
div16u8u::return#3 = phi( div16u8u::@2/div16u8u::return#0 )
div16u8u::return#1 = div16u8u::return#3
rem8u#4 = rem8u#15
return
to:@return
void clear_screen(char n , char m)
clear_screen: scope:[clear_screen] from main::@3 main::@45 main::@5
clear_screen::n#5 = phi( main::@3/clear_screen::n#0, main::@45/clear_screen::n#2, main::@5/clear_screen::n#1 )
clear_screen::m#5 = phi( main::@3/clear_screen::m#0, main::@45/clear_screen::m#2, main::@5/clear_screen::m#1 )
z#0 = 0
to:clear_screen::@1
clear_screen::@1: scope:[clear_screen] from clear_screen clear_screen::@2
clear_screen::n#4 = phi( clear_screen/clear_screen::n#5, clear_screen::@2/clear_screen::n#3 )
clear_screen::m#4 = phi( clear_screen/clear_screen::m#5, clear_screen::@2/clear_screen::m#3 )
z#20 = phi( clear_screen/z#0, clear_screen::@2/z#1 )
clear_screen::$2 = z#20 < $1fa
if(clear_screen::$2) goto clear_screen::@2
to:clear_screen::@3
clear_screen::@2: scope:[clear_screen] from clear_screen::@1
clear_screen::n#3 = phi( clear_screen::@1/clear_screen::n#4 )
clear_screen::m#3 = phi( clear_screen::@1/clear_screen::m#4 )
z#21 = phi( clear_screen::@1/z#20 )
clear_screen::$3 = $1e00 + z#21
clear_screen::$4 = clear_screen::$3 + c
*((char *)clear_screen::$4) = clear_screen::m#3
clear_screen::$5 = $1e00 + z#21
*((char *)clear_screen::$5) = clear_screen::n#3
z#1 = ++ z#21
to:clear_screen::@1
clear_screen::@3: scope:[clear_screen] from clear_screen::@1
z#65 = phi( clear_screen::@1/z#20 )
gotoxy::x#3 = 0
gotoxy::y#3 = 0
call gotoxy
to:clear_screen::@4
clear_screen::@4: scope:[clear_screen] from clear_screen::@3
z#52 = phi( clear_screen::@3/z#65 )
chrout::petscii = home
call chrout
to:clear_screen::@5
clear_screen::@5: scope:[clear_screen] from clear_screen::@4
z#39 = phi( clear_screen::@4/z#52 )
to:clear_screen::@return
clear_screen::@return: scope:[clear_screen] from clear_screen::@5
z#22 = phi( clear_screen::@5/z#39 )
z#2 = z#22
return
to:@return
void random(char k , char n)
random: scope:[random] from main::@13 main::@25 main::@90
random::n#4 = phi( main::@13/random::n#0, main::@25/random::n#1, main::@90/random::n#2 )
random::k#4 = phi( main::@13/random::k#0, main::@25/random::k#1, main::@90/random::k#2 )
to:random::@1
random::@1: scope:[random] from random random::@1
random::n#3 = phi( random/random::n#4, random::@1/random::n#3 )
random::k#3 = phi( random/random::k#4, random::@1/random::k#3 )
m = *((char *)$9114)
random::$0 = m < random::k#3
random::$1 = m > random::n#3
random::$2 = random::$0 || random::$1
if(random::$2) goto random::@1
to:random::@return
random::@return: scope:[random] from random::@1
return
to:@return
void chrout(volatile char petscii)
chrout: scope:[chrout] from clear_screen::@4 main main::@10 main::@101 main::@11 main::@12 main::@16 main::@17 main::@19 main::@22 main::@23 main::@24 main::@47 main::@52 main::@61 main::@62 main::@63 main::@66 main::@7 main::@70 main::@71 main::@72 main::@73 main::@74 main::@8 main::@80 main::@81 main::@84 main::@85 main::@88 write_score::@11 write_score::@13 write_score::@3
asm { ldapetscii jsr$ffd2 }
to:chrout::@return
chrout::@return: scope:[chrout] from chrout
return
to:@return
void write_score()
write_score: scope:[write_score] from main::@20 main::@29 main::@35
score#13 = phi( main::@20/score#29, main::@29/score#4, main::@35/score#6 )
write_score::$0 = score#13 > $fde8
write_score::$1 = ! write_score::$0
if(write_score::$1) goto write_score::@1
to:write_score::@4
write_score::@1: scope:[write_score] from write_score write_score::@4
score#38 = phi( write_score/score#13, write_score::@4/score#0 )
m = 0
to:write_score::@6
write_score::@4: scope:[write_score] from write_score
score#0 = 0
to:write_score::@1
write_score::@6: scope:[write_score] from write_score::@1 write_score::@7
score#30 = phi( write_score::@1/score#38, write_score::@7/score#39 )
write_score::$9 = m < 4
if(write_score::$9) goto write_score::@7
to:write_score::@8
write_score::@7: scope:[write_score] from write_score::@6
score#39 = phi( write_score::@6/score#30 )
points[m] = '0'
m = ++ m
to:write_score::@6
write_score::@8: scope:[write_score] from write_score::@6
score#14 = phi( write_score::@6/score#30 )
utoa::value#1 = score#14
utoa::buffer#5 = buffer
utoa::radix#0 = $a
call utoa
to:write_score::@12
write_score::@12: scope:[write_score] from write_score::@8
score#15 = phi( write_score::@8/score#14 )
write_score::$3 = score#15 > 9
write_score::$4 = ! write_score::$3
if(write_score::$4) goto write_score::@2
to:write_score::@9
write_score::@2: scope:[write_score] from write_score::@12 write_score::@9
score#16 = phi( write_score::@12/score#15, write_score::@9/score#31 )
write_score::$5 = score#16 > $63
write_score::$6 = ! write_score::$5
if(write_score::$6) goto write_score::@3
to:write_score::@5
write_score::@9: scope:[write_score] from write_score::@12
score#31 = phi( write_score::@12/score#15 )
points[2] = buffer[0]
points[3] = buffer[1]
to:write_score::@2
write_score::@3: scope:[write_score] from write_score::@2 write_score::@5
score#59 = phi( write_score::@2/score#16, write_score::@5/score#68 )
chrout::petscii = yellow
call chrout
to:write_score::@13
write_score::@13: scope:[write_score] from write_score::@3
score#49 = phi( write_score::@3/score#59 )
chrout::petscii = home
call chrout
to:write_score::@14
write_score::@14: scope:[write_score] from write_score::@13
score#40 = phi( write_score::@13/score#49 )
*((char *)$d3) = 4
m = 0
to:write_score::@10
write_score::@5: scope:[write_score] from write_score::@2
score#68 = phi( write_score::@2/score#16 )
points[1] = buffer[0]
points[2] = buffer[1]
points[3] = buffer[2]
to:write_score::@3
write_score::@10: scope:[write_score] from write_score::@14 write_score::@15
score#32 = phi( write_score::@14/score#40, write_score::@15/score#41 )
write_score::$10 = m < 4
if(write_score::$10) goto write_score::@11
to:write_score::@return
write_score::@11: scope:[write_score] from write_score::@10
score#50 = phi( write_score::@10/score#32 )
chrout::petscii = points[m]
call chrout
to:write_score::@15
write_score::@15: scope:[write_score] from write_score::@11
score#41 = phi( write_score::@11/score#50 )
m = ++ m
to:write_score::@10
write_score::@return: scope:[write_score] from write_score::@10
score#17 = phi( write_score::@10/score#32 )
score#1 = score#17
return
to:@return
void wait(char n)
wait: scope:[wait] from main::@37 main::@43 main::@94 main::@96 main::@99
z#53 = phi( main::@37/z#48, main::@43/z#47, main::@94/z#45, main::@96/z#46, main::@99/z#13 )
wait::n#6 = phi( main::@37/wait::n#3, main::@43/wait::n#2, main::@94/wait::n#0, main::@96/wait::n#1, main::@99/wait::n#4 )
m = 0
to:wait::@1
wait::@1: scope:[wait] from wait wait::@5
z#40 = phi( wait/z#53, wait::@5/z#54 )
wait::n#5 = phi( wait/wait::n#6, wait::@5/wait::n#7 )
wait::$0 = m < wait::n#5
if(wait::$0) goto wait::@2
to:wait::@return
wait::@2: scope:[wait] from wait::@1
wait::n#9 = phi( wait::@1/wait::n#5 )
z#3 = 0
to:wait::@3
wait::@3: scope:[wait] from wait::@2 wait::@4
wait::n#8 = phi( wait::@2/wait::n#9, wait::@4/wait::n#10 )
z#23 = phi( wait::@2/z#3, wait::@4/z#4 )
wait::$1 = z#23 < $21c
if(wait::$1) goto wait::@4
to:wait::@5
wait::@4: scope:[wait] from wait::@3
wait::n#10 = phi( wait::@3/wait::n#8 )
z#24 = phi( wait::@3/z#23 )
z#4 = ++ z#24
to:wait::@3
wait::@5: scope:[wait] from wait::@3
z#54 = phi( wait::@3/z#23 )
wait::n#7 = phi( wait::@3/wait::n#8 )
m = ++ m
to:wait::@1
wait::@return: scope:[wait] from wait::@1
z#25 = phi( wait::@1/z#40 )
z#5 = z#25
return
to:@return
void chrono_restart()
chrono_restart: scope:[chrono_restart] from main::@26
asm { lda#0 ldy#0 ldx#0 jsr$ffdb }
to:chrono_restart::@return
chrono_restart::@return: scope:[chrono_restart] from chrono_restart
return
to:@return
void read_chrono()
read_chrono: scope:[read_chrono] from main::@28
rem8u#23 = phi( main::@28/rem8u#25 )
asm { jsr$ffde stal stxm }
read_chrono::$0 = m * $100
read_chrono::$1 = read_chrono::$0 + l
div16u8u::dividend#0 = read_chrono::$1
div16u8u::divisor#0 = $3c
call div16u8u
div16u8u::return#2 = div16u8u::return#1
to:read_chrono::@2
read_chrono::@2: scope:[read_chrono] from read_chrono
rem8u#16 = phi( read_chrono/rem8u#4 )
div16u8u::return#4 = phi( read_chrono/div16u8u::return#2 )
read_chrono::$2 = div16u8u::return#4
rem8u#5 = rem8u#16
time#0 = read_chrono::$2
*((char *)$1e15+c) = 7
*((char *)$1e15) = $b9
read_chrono::$3 = time#0 < $a
read_chrono::$4 = ! read_chrono::$3
if(read_chrono::$4) goto read_chrono::@return
to:read_chrono::@1
read_chrono::@1: scope:[read_chrono] from read_chrono::@2
rem8u#24 = phi( read_chrono::@2/rem8u#5 )
time#9 = phi( read_chrono::@2/time#0 )
read_chrono::$5 = $b9 - time#9
*((char *)$1e15) = read_chrono::$5
to:read_chrono::@return
read_chrono::@return: scope:[read_chrono] from read_chrono::@1 read_chrono::@2
time#10 = phi( read_chrono::@1/time#9, read_chrono::@2/time#0 )
rem8u#17 = phi( read_chrono::@1/rem8u#24, read_chrono::@2/rem8u#5 )
rem8u#6 = rem8u#17
time#1 = time#10
return
to:@return
void main()
main: scope:[main] from __start::@1
n#121 = phi( __start::@1/n#16 )
hiscore#122 = phi( __start::@1/hiscore#12 )
y#126 = phi( __start::@1/y#25 )
rem8u#139 = phi( __start::@1/rem8u#27 )
z#82 = phi( __start::@1/z#51 )
*((char *)$900f) = 8
chrout::petscii = lock
call chrout
to:main::@52
main::@52: scope:[main] from main
n#120 = phi( main/n#121 )
hiscore#121 = phi( main/hiscore#122 )
y#125 = phi( main/y#126 )
rem8u#138 = phi( main/rem8u#139 )
z#75 = phi( main/z#82 )
chrout::petscii = lower
call chrout
to:main::@53
main::@53: scope:[main] from main::@52
n#119 = phi( main::@52/n#120 )
hiscore#120 = phi( main::@52/hiscore#121 )
y#124 = phi( main::@52/y#125 )
rem8u#137 = phi( main::@52/rem8u#138 )
z#67 = phi( main::@52/z#75 )
m = 0
to:main::@1
main::@1: scope:[main] from main::@2 main::@53
n#117 = phi( main::@2/n#118, main::@53/n#119 )
hiscore#118 = phi( main::@2/hiscore#119, main::@53/hiscore#120 )
y#122 = phi( main::@2/y#123, main::@53/y#124 )
rem8u#135 = phi( main::@2/rem8u#136, main::@53/rem8u#137 )
z#55 = phi( main::@2/z#66, main::@53/z#67 )
main::$2 = m < $28
if(main::$2) goto main::@2
to:main::@3
main::@2: scope:[main] from main::@1
n#118 = phi( main::@1/n#117 )
hiscore#119 = phi( main::@1/hiscore#118 )
y#123 = phi( main::@1/y#122 )
rem8u#136 = phi( main::@1/rem8u#135 )
z#66 = phi( main::@1/z#55 )
main::$3 = $1c00 + m
*((char *)main::$3) = duck_udg[m]
m = ++ m
to:main::@1
main::@3: scope:[main] from main::@1 main::@50
n#116 = phi( main::@1/n#117, main::@50/n#17 )
hiscore#117 = phi( main::@1/hiscore#118, main::@50/hiscore#14 )
y#121 = phi( main::@1/y#122, main::@50/y#29 )
rem8u#134 = phi( main::@1/rem8u#135, main::@50/rem8u#29 )
z#41 = phi( main::@1/z#55, main::@50/z#56 )
clear_screen::n#0 = $20
clear_screen::m#0 = 0
call clear_screen
to:main::@54
main::@54: scope:[main] from main::@3
n#115 = phi( main::@3/n#116 )
hiscore#116 = phi( main::@3/hiscore#117 )
y#120 = phi( main::@3/y#121 )
rem8u#133 = phi( main::@3/rem8u#134 )
z#26 = phi( main::@3/z#2 )
z#6 = z#26
textcolor::color#0 = 7
call textcolor
textcolor::return#2 = textcolor::return#1
to:main::@55
main::@55: scope:[main] from main::@54
n#114 = phi( main::@54/n#115 )
hiscore#115 = phi( main::@54/hiscore#116 )
y#119 = phi( main::@54/y#120 )
rem8u#132 = phi( main::@54/rem8u#133 )
z#98 = phi( main::@54/z#6 )
cputs::s#1 = intro
call cputs
to:main::@56
main::@56: scope:[main] from main::@55
n#113 = phi( main::@55/n#114 )
hiscore#114 = phi( main::@55/hiscore#115 )
y#118 = phi( main::@55/y#119 )
rem8u#131 = phi( main::@55/rem8u#132 )
z#93 = phi( main::@55/z#98 )
textcolor::color#1 = 1
call textcolor
textcolor::return#3 = textcolor::return#1
to:main::@57
main::@57: scope:[main] from main::@56
n#112 = phi( main::@56/n#113 )
hiscore#113 = phi( main::@56/hiscore#114 )
y#117 = phi( main::@56/y#118 )
rem8u#130 = phi( main::@56/rem8u#131 )
z#88 = phi( main::@56/z#93 )
cputs::s#2 = levels
call cputs
to:main::@58
main::@58: scope:[main] from main::@57
n#111 = phi( main::@57/n#112 )
hiscore#112 = phi( main::@57/hiscore#113 )
y#116 = phi( main::@57/y#117 )
rem8u#129 = phi( main::@57/rem8u#130 )
z#83 = phi( main::@57/z#88 )
textcolor::color#2 = 2
call textcolor
textcolor::return#4 = textcolor::return#1
to:main::@59
main::@59: scope:[main] from main::@58
n#110 = phi( main::@58/n#111 )
hiscore#111 = phi( main::@58/hiscore#112 )
y#115 = phi( main::@58/y#116 )
rem8u#128 = phi( main::@58/rem8u#129 )
z#76 = phi( main::@58/z#83 )
cputs::s#3 = foot
call cputs
to:main::@60
main::@60: scope:[main] from main::@59
n#109 = phi( main::@59/n#110 )
hiscore#110 = phi( main::@59/hiscore#111 )
y#114 = phi( main::@59/y#115 )
rem8u#127 = phi( main::@59/rem8u#128 )
z#68 = phi( main::@59/z#76 )
to:main::@4
main::@4: scope:[main] from main::@4 main::@60
n#108 = phi( main::@4/n#108, main::@60/n#109 )
hiscore#109 = phi( main::@4/hiscore#109, main::@60/hiscore#110 )
y#113 = phi( main::@4/y#113, main::@60/y#114 )
rem8u#126 = phi( main::@4/rem8u#126, main::@60/rem8u#127 )
z#57 = phi( main::@4/z#57, main::@60/z#68 )
l = *((char *)$c5)
l = ++ l
main::$11 = l > 5
if(main::$11) goto main::@4
to:main::@5
main::@5: scope:[main] from main::@4
n#107 = phi( main::@4/n#108 )
hiscore#106 = phi( main::@4/hiscore#109 )
y#110 = phi( main::@4/y#113 )
rem8u#123 = phi( main::@4/rem8u#126 )
z#42 = phi( main::@4/z#57 )
clear_screen::n#1 = 4
clear_screen::m#1 = 0
call clear_screen
to:main::@61
main::@61: scope:[main] from main::@5
n#106 = phi( main::@5/n#107 )
hiscore#103 = phi( main::@5/hiscore#106 )
y#107 = phi( main::@5/y#110 )
rem8u#120 = phi( main::@5/rem8u#123 )
z#27 = phi( main::@5/z#2 )
z#7 = z#27
*((char *)$9005) = $ff
chrout::petscii = reverse_on
call chrout
to:main::@62
main::@62: scope:[main] from main::@61
n#105 = phi( main::@61/n#106 )
hiscore#101 = phi( main::@61/hiscore#103 )
y#105 = phi( main::@61/y#107 )
rem8u#118 = phi( main::@61/rem8u#120 )
chrout::petscii = red
call chrout
to:main::@63
main::@63: scope:[main] from main::@62
n#103 = phi( main::@62/n#105 )
hiscore#99 = phi( main::@62/hiscore#101 )
y#103 = phi( main::@62/y#105 )
rem8u#116 = phi( main::@62/rem8u#118 )
chrout::petscii = down
call chrout
to:main::@64
main::@64: scope:[main] from main::@63
n#100 = phi( main::@63/n#103 )
hiscore#96 = phi( main::@63/hiscore#99 )
y#100 = phi( main::@63/y#103 )
rem8u#113 = phi( main::@63/rem8u#116 )
k#0 = 1
to:main::@6
main::@6: scope:[main] from main::@64 main::@69
n#97 = phi( main::@64/n#100, main::@69/n#101 )
hiscore#93 = phi( main::@64/hiscore#96, main::@69/hiscore#97 )
y#97 = phi( main::@64/y#100, main::@69/y#101 )
rem8u#110 = phi( main::@64/rem8u#113, main::@69/rem8u#114 )
k#6 = phi( main::@64/k#0, main::@69/k#1 )
main::$16 = k#6 < $16
if(main::$16) goto main::@7
to:main::@8
main::@7: scope:[main] from main::@6
hiscore#107 = phi( main::@6/hiscore#93 )
y#111 = phi( main::@6/y#97 )
rem8u#124 = phi( main::@6/rem8u#110 )
k#20 = phi( main::@6/k#6 )
chrout::petscii = brick
call chrout
to:main::@65
main::@65: scope:[main] from main::@7
hiscore#104 = phi( main::@7/hiscore#107 )
y#108 = phi( main::@7/y#111 )
rem8u#121 = phi( main::@7/rem8u#124 )
k#17 = phi( main::@7/k#20 )
n#0 = 2
to:main::@9
main::@8: scope:[main] from main::@6
n#95 = phi( main::@6/n#97 )
k#101 = phi( main::@6/k#6 )
hiscore#91 = phi( main::@6/hiscore#93 )
y#95 = phi( main::@6/y#97 )
rem8u#108 = phi( main::@6/rem8u#110 )
chrout::petscii = brick
call chrout
to:main::@66
main::@66: scope:[main] from main::@8
n#92 = phi( main::@8/n#95 )
k#98 = phi( main::@8/k#101 )
hiscore#88 = phi( main::@8/hiscore#91 )
y#92 = phi( main::@8/y#95 )
rem8u#105 = phi( main::@8/rem8u#108 )
*((char *)$1ff9) = brick
*((char *)$1ff9+c) = 2
chrout::petscii = home
call chrout
to:main::@67
main::@67: scope:[main] from main::@66
n#89 = phi( main::@66/n#92 )
k#95 = phi( main::@66/k#98 )
hiscore#85 = phi( main::@66/hiscore#88 )
y#89 = phi( main::@66/y#92 )
rem8u#102 = phi( main::@66/rem8u#105 )
z#8 = 1
main::$23 = l > 1
main::$24 = ! main::$23
if(main::$24) goto main::@12
to:main::@13
main::@9: scope:[main] from main::@65 main::@68
hiscore#102 = phi( main::@65/hiscore#104, main::@68/hiscore#105 )
y#106 = phi( main::@65/y#108, main::@68/y#109 )
rem8u#119 = phi( main::@65/rem8u#121, main::@68/rem8u#122 )
k#14 = phi( main::@65/k#17, main::@68/k#18 )
n#7 = phi( main::@65/n#0, main::@68/n#1 )
main::$18 = n#7 < $16
if(main::$18) goto main::@10
to:main::@11
main::@10: scope:[main] from main::@9
hiscore#108 = phi( main::@9/hiscore#102 )
y#112 = phi( main::@9/y#106 )
rem8u#125 = phi( main::@9/rem8u#119 )
k#21 = phi( main::@9/k#14 )
n#13 = phi( main::@9/n#7 )
chrout::petscii = right
call chrout
to:main::@68
main::@68: scope:[main] from main::@10
hiscore#105 = phi( main::@10/hiscore#108 )
y#109 = phi( main::@10/y#112 )
rem8u#122 = phi( main::@10/rem8u#125 )
k#18 = phi( main::@10/k#21 )
n#8 = phi( main::@10/n#13 )
n#1 = ++ n#8
to:main::@9
main::@11: scope:[main] from main::@9
n#104 = phi( main::@9/n#7 )
hiscore#100 = phi( main::@9/hiscore#102 )
y#104 = phi( main::@9/y#106 )
rem8u#117 = phi( main::@9/rem8u#119 )
k#11 = phi( main::@9/k#14 )
chrout::petscii = brick
call chrout
to:main::@69
main::@69: scope:[main] from main::@11
n#101 = phi( main::@11/n#104 )
hiscore#97 = phi( main::@11/hiscore#100 )
y#101 = phi( main::@11/y#104 )
rem8u#114 = phi( main::@11/rem8u#117 )
k#7 = phi( main::@11/k#11 )
k#1 = ++ k#7
to:main::@6
main::@12: scope:[main] from main::@67 main::@76 main::@78
n#88 = phi( main::@67/n#89, main::@76/n#90, main::@78/n#91 )
k#94 = phi( main::@67/k#95, main::@76/k#96, main::@78/k#97 )
hiscore#84 = phi( main::@67/hiscore#85, main::@76/hiscore#86, main::@78/hiscore#87 )
z#136 = phi( main::@67/z#8, main::@76/z#28, main::@78/z#9 )
y#88 = phi( main::@67/y#89, main::@76/y#90, main::@78/y#91 )
rem8u#101 = phi( main::@67/rem8u#102, main::@76/rem8u#103, main::@78/rem8u#104 )
peephole#0 = $1f1f
*((char *)$900e) = $f
score#2 = 0
tu#0 = 1
chrout::petscii = home
call chrout
to:main::@70
main::@70: scope:[main] from main::@12
n#87 = phi( main::@12/n#88 )
k#93 = phi( main::@12/k#94 )
hiscore#83 = phi( main::@12/hiscore#84 )
peephole#85 = phi( main::@12/peephole#0 )
z#135 = phi( main::@12/z#136 )
y#87 = phi( main::@12/y#88 )
rem8u#100 = phi( main::@12/rem8u#101 )
tu#81 = phi( main::@12/tu#0 )
score#92 = phi( main::@12/score#2 )
chrout::petscii = yellow
call chrout
to:main::@71
main::@71: scope:[main] from main::@70
n#86 = phi( main::@70/n#87 )
k#92 = phi( main::@70/k#93 )
hiscore#82 = phi( main::@70/hiscore#83 )
peephole#84 = phi( main::@70/peephole#85 )
z#134 = phi( main::@70/z#135 )
y#86 = phi( main::@70/y#87 )
rem8u#99 = phi( main::@70/rem8u#100 )
tu#79 = phi( main::@70/tu#81 )
score#84 = phi( main::@70/score#92 )
chrout::petscii = $50
call chrout
to:main::@72
main::@72: scope:[main] from main::@71
n#85 = phi( main::@71/n#86 )
k#91 = phi( main::@71/k#92 )
hiscore#81 = phi( main::@71/hiscore#82 )
peephole#83 = phi( main::@71/peephole#84 )
z#133 = phi( main::@71/z#134 )
y#85 = phi( main::@71/y#86 )
rem8u#98 = phi( main::@71/rem8u#99 )
tu#77 = phi( main::@71/tu#79 )
score#77 = phi( main::@71/score#84 )
chrout::petscii = $54
call chrout
to:main::@73
main::@73: scope:[main] from main::@72
n#84 = phi( main::@72/n#85 )
k#90 = phi( main::@72/k#91 )
hiscore#80 = phi( main::@72/hiscore#81 )
peephole#82 = phi( main::@72/peephole#83 )
z#132 = phi( main::@72/z#133 )
y#84 = phi( main::@72/y#85 )
rem8u#97 = phi( main::@72/rem8u#98 )
tu#75 = phi( main::@72/tu#77 )
score#69 = phi( main::@72/score#77 )
chrout::petscii = $53
call chrout
to:main::@74
main::@74: scope:[main] from main::@73
n#82 = phi( main::@73/n#84 )
k#88 = phi( main::@73/k#90 )
hiscore#78 = phi( main::@73/hiscore#80 )
peephole#80 = phi( main::@73/peephole#82 )
z#130 = phi( main::@73/z#132 )
y#82 = phi( main::@73/y#84 )
rem8u#95 = phi( main::@73/rem8u#97 )
tu#71 = phi( main::@73/tu#75 )
score#60 = phi( main::@73/score#69 )
chrout::petscii = $3a
call chrout
to:main::@75
main::@75: scope:[main] from main::@74
n#80 = phi( main::@74/n#82 )
k#86 = phi( main::@74/k#88 )
hiscore#76 = phi( main::@74/hiscore#78 )
peephole#78 = phi( main::@74/peephole#80 )
z#128 = phi( main::@74/z#130 )
y#80 = phi( main::@74/y#82 )
rem8u#93 = phi( main::@74/rem8u#95 )
tu#66 = phi( main::@74/tu#71 )
score#51 = phi( main::@74/score#60 )
*((char *)$d3) = $12
j#0 = 0
to:main::@18
main::@13: scope:[main] from main::@67 main::@78
n#93 = phi( main::@67/n#89, main::@78/n#91 )
k#99 = phi( main::@67/k#95, main::@78/k#97 )
hiscore#89 = phi( main::@67/hiscore#85, main::@78/hiscore#87 )
y#93 = phi( main::@67/y#89, main::@78/y#91 )
rem8u#106 = phi( main::@67/rem8u#102, main::@78/rem8u#104 )
z#43 = phi( main::@67/z#8, main::@78/z#9 )
main::$25 = 7 - l
main::$26 = 3 * l
main::$27 = $1a - main::$26
random::k#0 = main::$25
random::n#0 = main::$27
call random
to:main::@76
main::@76: scope:[main] from main::@13
n#90 = phi( main::@13/n#93 )
k#96 = phi( main::@13/k#99 )
hiscore#86 = phi( main::@13/hiscore#89 )
y#90 = phi( main::@13/y#93 )
rem8u#103 = phi( main::@13/rem8u#106 )
z#28 = phi( main::@13/z#43 )
main::$29 = z#28 + m
main::$30 = main::$29 > $1f9
main::$31 = ! main::$30
if(main::$31) goto main::@14
to:main::@12
main::@14: scope:[main] from main::@76
n#98 = phi( main::@76/n#90 )
k#103 = phi( main::@76/k#96 )
hiscore#94 = phi( main::@76/hiscore#86 )
y#98 = phi( main::@76/y#90 )
rem8u#111 = phi( main::@76/rem8u#103 )
z#69 = phi( main::@76/z#28 )
j#1 = 1
to:main::@15
main::@15: scope:[main] from main::@14 main::@77
n#96 = phi( main::@14/n#98, main::@77/n#99 )
k#102 = phi( main::@14/k#103, main::@77/k#104 )
hiscore#92 = phi( main::@14/hiscore#94, main::@77/hiscore#95 )
y#96 = phi( main::@14/y#98, main::@77/y#99 )
rem8u#109 = phi( main::@14/rem8u#111, main::@77/rem8u#112 )
z#58 = phi( main::@14/z#69, main::@77/z#70 )
j#11 = phi( main::@14/j#1, main::@77/j#2 )
main::$32 = j#11 <= m
if(main::$32) goto main::@16
to:main::@17
main::@16: scope:[main] from main::@15
n#102 = phi( main::@15/n#96 )
k#105 = phi( main::@15/k#102 )
hiscore#98 = phi( main::@15/hiscore#92 )
y#102 = phi( main::@15/y#96 )
rem8u#115 = phi( main::@15/rem8u#109 )
z#77 = phi( main::@15/z#58 )
j#23 = phi( main::@15/j#11 )
chrout::petscii = right
call chrout
to:main::@77
main::@77: scope:[main] from main::@16
n#99 = phi( main::@16/n#102 )
k#104 = phi( main::@16/k#105 )
hiscore#95 = phi( main::@16/hiscore#98 )
y#99 = phi( main::@16/y#102 )
rem8u#112 = phi( main::@16/rem8u#115 )
z#70 = phi( main::@16/z#77 )
j#12 = phi( main::@16/j#23 )
j#2 = ++ j#12
to:main::@15
main::@17: scope:[main] from main::@15
n#94 = phi( main::@15/n#96 )
k#100 = phi( main::@15/k#102 )
hiscore#90 = phi( main::@15/hiscore#92 )
y#94 = phi( main::@15/y#96 )
rem8u#107 = phi( main::@15/rem8u#109 )
z#44 = phi( main::@15/z#58 )
chrout::petscii = brick
call chrout
to:main::@78
main::@78: scope:[main] from main::@17
n#91 = phi( main::@17/n#94 )
k#97 = phi( main::@17/k#100 )
hiscore#87 = phi( main::@17/hiscore#90 )
y#91 = phi( main::@17/y#94 )
rem8u#104 = phi( main::@17/rem8u#107 )
z#29 = phi( main::@17/z#44 )
main::$35 = z#29 + m
main::$36 = main::$35 + 1
z#9 = main::$36
main::$37 = z#9 < $1fa
if(main::$37) goto main::@13
to:main::@12
main::@18: scope:[main] from main::@75 main::@79
n#79 = phi( main::@75/n#80, main::@79/n#81 )
k#85 = phi( main::@75/k#86, main::@79/k#87 )
hiscore#75 = phi( main::@75/hiscore#76, main::@79/hiscore#77 )
peephole#77 = phi( main::@75/peephole#78, main::@79/peephole#79 )
z#127 = phi( main::@75/z#128, main::@79/z#129 )
y#79 = phi( main::@75/y#80, main::@79/y#81 )
rem8u#92 = phi( main::@75/rem8u#93, main::@79/rem8u#94 )
tu#58 = phi( main::@75/tu#66, main::@79/tu#67 )
score#42 = phi( main::@75/score#51, main::@79/score#52 )
j#13 = phi( main::@75/j#0, main::@79/j#3 )
main::$44 = j#13 < 4
if(main::$44) goto main::@19
to:main::@20
main::@19: scope:[main] from main::@18
n#83 = phi( main::@18/n#79 )
k#89 = phi( main::@18/k#85 )
hiscore#79 = phi( main::@18/hiscore#75 )
peephole#81 = phi( main::@18/peephole#77 )
z#131 = phi( main::@18/z#127 )
y#83 = phi( main::@18/y#79 )
rem8u#96 = phi( main::@18/rem8u#92 )
tu#72 = phi( main::@18/tu#58 )
score#61 = phi( main::@18/score#42 )
j#14 = phi( main::@18/j#13 )
chrout::petscii = chrono[j#14]
call chrout
to:main::@79
main::@79: scope:[main] from main::@19
n#81 = phi( main::@19/n#83 )
k#87 = phi( main::@19/k#89 )
hiscore#77 = phi( main::@19/hiscore#79 )
peephole#79 = phi( main::@19/peephole#81 )
z#129 = phi( main::@19/z#131 )
y#81 = phi( main::@19/y#83 )
rem8u#94 = phi( main::@19/rem8u#96 )
tu#67 = phi( main::@19/tu#72 )
score#52 = phi( main::@19/score#61 )
j#15 = phi( main::@19/j#14 )
j#3 = ++ j#15
to:main::@18
main::@20: scope:[main] from main::@18
n#78 = phi( main::@18/n#79 )
k#84 = phi( main::@18/k#85 )
hiscore#74 = phi( main::@18/hiscore#75 )
peephole#76 = phi( main::@18/peephole#77 )
z#126 = phi( main::@18/z#127 )
y#78 = phi( main::@18/y#79 )
rem8u#90 = phi( main::@18/rem8u#92 )
tu#51 = phi( main::@18/tu#58 )
score#29 = phi( main::@18/score#42 )
call write_score
to:main::@80
main::@80: scope:[main] from main::@20
n#77 = phi( main::@20/n#78 )
k#83 = phi( main::@20/k#84 )
hiscore#73 = phi( main::@20/hiscore#74 )
peephole#75 = phi( main::@20/peephole#76 )
z#125 = phi( main::@20/z#126 )
y#76 = phi( main::@20/y#78 )
rem8u#88 = phi( main::@20/rem8u#90 )
tu#43 = phi( main::@20/tu#51 )
score#18 = phi( main::@20/score#1 )
score#3 = score#18
chrout::petscii = home
call chrout
to:main::@81
main::@81: scope:[main] from main::@80
n#75 = phi( main::@80/n#77 )
k#81 = phi( main::@80/k#83 )
hiscore#71 = phi( main::@80/hiscore#73 )
peephole#72 = phi( main::@80/peephole#75 )
z#123 = phi( main::@80/z#125 )
y#72 = phi( main::@80/y#76 )
rem8u#84 = phi( main::@80/rem8u#88 )
score#107 = phi( main::@80/score#3 )
tu#37 = phi( main::@80/tu#43 )
chrout::petscii = green
call chrout
to:main::@82
main::@82: scope:[main] from main::@81
n#73 = phi( main::@81/n#75 )
k#79 = phi( main::@81/k#81 )
hiscore#69 = phi( main::@81/hiscore#71 )
peephole#69 = phi( main::@81/peephole#72 )
z#120 = phi( main::@81/z#123 )
y#68 = phi( main::@81/y#72 )
rem8u#80 = phi( main::@81/rem8u#84 )
score#105 = phi( main::@81/score#107 )
tu#31 = phi( main::@81/tu#37 )
*((char *)$d3) = $a
j#4 = 0
to:main::@21
main::@21: scope:[main] from main::@82 main::@83
n#72 = phi( main::@82/n#73, main::@83/n#74 )
k#78 = phi( main::@82/k#79, main::@83/k#80 )
hiscore#68 = phi( main::@82/hiscore#69, main::@83/hiscore#70 )
peephole#67 = phi( main::@82/peephole#69, main::@83/peephole#70 )
z#118 = phi( main::@82/z#120, main::@83/z#121 )
y#65 = phi( main::@82/y#68, main::@83/y#69 )
rem8u#77 = phi( main::@82/rem8u#80, main::@83/rem8u#81 )
score#104 = phi( main::@82/score#105, main::@83/score#106 )
tu#27 = phi( main::@82/tu#31, main::@83/tu#32 )
j#16 = phi( main::@82/j#4, main::@83/j#5 )
main::$49 = j#16 < 5
if(main::$49) goto main::@22
to:main::@23
main::@22: scope:[main] from main::@21
n#76 = phi( main::@21/n#72 )
k#82 = phi( main::@21/k#78 )
hiscore#72 = phi( main::@21/hiscore#68 )
peephole#73 = phi( main::@21/peephole#67 )
z#124 = phi( main::@21/z#118 )
y#73 = phi( main::@21/y#65 )
rem8u#85 = phi( main::@21/rem8u#77 )
score#108 = phi( main::@21/score#104 )
tu#38 = phi( main::@21/tu#27 )
j#17 = phi( main::@21/j#16 )
chrout::petscii = ducknumber[j#17]
call chrout
to:main::@83
main::@83: scope:[main] from main::@22
n#74 = phi( main::@22/n#76 )
k#80 = phi( main::@22/k#82 )
hiscore#70 = phi( main::@22/hiscore#72 )
peephole#70 = phi( main::@22/peephole#73 )
z#121 = phi( main::@22/z#124 )
y#69 = phi( main::@22/y#73 )
rem8u#81 = phi( main::@22/rem8u#85 )
score#106 = phi( main::@22/score#108 )
tu#32 = phi( main::@22/tu#38 )
j#18 = phi( main::@22/j#17 )
j#5 = ++ j#18
to:main::@21
main::@23: scope:[main] from main::@21 main::@95
n#71 = phi( main::@21/n#72, main::@95/n#36 )
k#77 = phi( main::@21/k#78, main::@95/k#38 )
hiscore#67 = phi( main::@21/hiscore#68, main::@95/hiscore#28 )
peephole#65 = phi( main::@21/peephole#67, main::@95/peephole#68 )
z#116 = phi( main::@21/z#118, main::@95/z#10 )
y#63 = phi( main::@21/y#65, main::@95/y#66 )
rem8u#75 = phi( main::@21/rem8u#77, main::@95/rem8u#78 )
score#103 = phi( main::@21/score#104, main::@95/score#101 )
tu#23 = phi( main::@21/tu#27, main::@95/tu#9 )
chrout::petscii = home
call chrout
to:main::@84
main::@84: scope:[main] from main::@23
n#70 = phi( main::@23/n#71 )
k#75 = phi( main::@23/k#77 )
hiscore#65 = phi( main::@23/hiscore#67 )
peephole#63 = phi( main::@23/peephole#65 )
z#114 = phi( main::@23/z#116 )
y#61 = phi( main::@23/y#63 )
rem8u#73 = phi( main::@23/rem8u#75 )
score#102 = phi( main::@23/score#103 )
tu#18 = phi( main::@23/tu#23 )
chrout::petscii = green
call chrout
to:main::@85
main::@85: scope:[main] from main::@84
n#69 = phi( main::@84/n#70 )
k#72 = phi( main::@84/k#75 )
hiscore#62 = phi( main::@84/hiscore#65 )
peephole#61 = phi( main::@84/peephole#63 )
z#112 = phi( main::@84/z#114 )
y#59 = phi( main::@84/y#61 )
rem8u#70 = phi( main::@84/rem8u#73 )
score#100 = phi( main::@84/score#102 )
tu#13 = phi( main::@84/tu#18 )
chrout::petscii = reverse_on
call chrout
to:main::@86
main::@86: scope:[main] from main::@85
n#64 = phi( main::@85/n#69 )
k#66 = phi( main::@85/k#72 )
hiscore#56 = phi( main::@85/hiscore#62 )
peephole#58 = phi( main::@85/peephole#61 )
z#109 = phi( main::@85/z#112 )
y#56 = phi( main::@85/y#59 )
rem8u#63 = phi( main::@85/rem8u#70 )
score#97 = phi( main::@85/score#100 )
tu#6 = phi( main::@85/tu#13 )
*((char *)$d3) = $f
main::$54 = tu#6 < $a
if(main::$54) goto main::@24
to:main::@47
main::@24: scope:[main] from main::@86
n#58 = phi( main::@86/n#64 )
k#60 = phi( main::@86/k#66 )
hiscore#50 = phi( main::@86/hiscore#56 )
peephole#55 = phi( main::@86/peephole#58 )
z#106 = phi( main::@86/z#109 )
y#53 = phi( main::@86/y#56 )
rem8u#55 = phi( main::@86/rem8u#63 )
score#93 = phi( main::@86/score#97 )
tu#7 = phi( main::@86/tu#6 )
main::$57 = $30 + tu#7
chrout::petscii = main::$57
call chrout
to:main::@87
main::@87: scope:[main] from main::@24
n#52 = phi( main::@24/n#58 )
k#54 = phi( main::@24/k#60 )
hiscore#44 = phi( main::@24/hiscore#50 )
peephole#52 = phi( main::@24/peephole#55 )
z#102 = phi( main::@24/z#106 )
y#49 = phi( main::@24/y#53 )
rem8u#48 = phi( main::@24/rem8u#55 )
score#85 = phi( main::@24/score#93 )
tu#44 = phi( main::@24/tu#7 )
to:main::@25
main::@47: scope:[main] from main::@86
n#65 = phi( main::@86/n#64 )
k#67 = phi( main::@86/k#66 )
hiscore#57 = phi( main::@86/hiscore#56 )
peephole#59 = phi( main::@86/peephole#58 )
z#110 = phi( main::@86/z#109 )
y#57 = phi( main::@86/y#56 )
rem8u#64 = phi( main::@86/rem8u#63 )
score#98 = phi( main::@86/score#97 )
tu#59 = phi( main::@86/tu#6 )
chrout::petscii = $31
call chrout
to:main::@88
main::@88: scope:[main] from main::@47
n#59 = phi( main::@47/n#65 )
k#61 = phi( main::@47/k#67 )
hiscore#51 = phi( main::@47/hiscore#57 )
peephole#56 = phi( main::@47/peephole#59 )
z#107 = phi( main::@47/z#110 )
y#54 = phi( main::@47/y#57 )
rem8u#56 = phi( main::@47/rem8u#64 )
score#94 = phi( main::@47/score#98 )
tu#52 = phi( main::@47/tu#59 )
chrout::petscii = $30
call chrout
to:main::@89
main::@89: scope:[main] from main::@88
n#53 = phi( main::@88/n#59 )
k#55 = phi( main::@88/k#61 )
hiscore#45 = phi( main::@88/hiscore#51 )
peephole#53 = phi( main::@88/peephole#56 )
z#103 = phi( main::@88/z#107 )
y#50 = phi( main::@88/y#54 )
rem8u#49 = phi( main::@88/rem8u#56 )
score#86 = phi( main::@88/score#94 )
tu#45 = phi( main::@88/tu#52 )
to:main::@25
main::@25: scope:[main] from main::@87 main::@89 main::@91
n#49 = phi( main::@87/n#52, main::@89/n#53, main::@91/n#44 )
k#51 = phi( main::@87/k#54, main::@89/k#55, main::@91/k#46 )
hiscore#41 = phi( main::@87/hiscore#44, main::@89/hiscore#45, main::@91/hiscore#36 )
peephole#50 = phi( main::@87/peephole#52, main::@89/peephole#53, main::@91/peephole#46 )
z#99 = phi( main::@87/z#102, main::@89/z#103, main::@91/z#89 )
y#47 = phi( main::@87/y#49, main::@89/y#50, main::@91/y#43 )
rem8u#44 = phi( main::@87/rem8u#48, main::@89/rem8u#49, main::@91/rem8u#37 )
score#78 = phi( main::@87/score#85, main::@89/score#86, main::@91/score#62 )
tu#39 = phi( main::@87/tu#44, main::@89/tu#45, main::@91/tu#28 )
random::k#1 = 0
random::n#1 = $ff
call random
to:main::@90
main::@90: scope:[main] from main::@25
n#46 = phi( main::@25/n#49 )
k#48 = phi( main::@25/k#51 )
hiscore#38 = phi( main::@25/hiscore#41 )
peephole#48 = phi( main::@25/peephole#50 )
z#94 = phi( main::@25/z#99 )
y#45 = phi( main::@25/y#47 )
rem8u#40 = phi( main::@25/rem8u#44 )
score#70 = phi( main::@25/score#78 )
tu#33 = phi( main::@25/tu#39 )
duck#0 = m
random::k#2 = 0
random::n#2 = $ff
call random
to:main::@91
main::@91: scope:[main] from main::@90
n#44 = phi( main::@90/n#46 )
k#46 = phi( main::@90/k#48 )
hiscore#36 = phi( main::@90/hiscore#38 )
peephole#46 = phi( main::@90/peephole#48 )
z#89 = phi( main::@90/z#94 )
y#43 = phi( main::@90/y#45 )
rem8u#37 = phi( main::@90/rem8u#40 )
score#62 = phi( main::@90/score#70 )
tu#28 = phi( main::@90/tu#33 )
duck#6 = phi( main::@90/duck#0 )
main::$61 = m + $1e15
main::$62 = main::$61 + duck#6
duck#1 = main::$62
main::$63 = duck#1 > $1fe3
main::$64 = *((char *)duck#1) == brick
main::$65 = main::$63 || main::$64
main::$66 = duck#1 + 1
main::$67 = *((char *)main::$66) == brick
main::$68 = main::$65 || main::$67
main::$69 = duck#1 + $16
main::$70 = *((char *)main::$69) == brick
main::$71 = main::$68 || main::$70
main::$72 = duck#1 + $17
main::$73 = *((char *)main::$72) == brick
main::$74 = main::$71 || main::$73
if(main::$74) goto main::@25
to:main::@26
main::@26: scope:[main] from main::@91
n#42 = phi( main::@91/n#44 )
k#44 = phi( main::@91/k#46 )
hiscore#34 = phi( main::@91/hiscore#36 )
peephole#42 = phi( main::@91/peephole#46 )
duck#37 = phi( main::@91/duck#1 )
z#84 = phi( main::@91/z#89 )
y#40 = phi( main::@91/y#43 )
rem8u#34 = phi( main::@91/rem8u#37 )
score#53 = phi( main::@91/score#62 )
tu#24 = phi( main::@91/tu#28 )
time#2 = 0
call chrono_restart
to:main::@92
main::@92: scope:[main] from main::@26
n#41 = phi( main::@26/n#42 )
k#43 = phi( main::@26/k#44 )
hiscore#33 = phi( main::@26/hiscore#34 )
peephole#40 = phi( main::@26/peephole#42 )
duck#31 = phi( main::@26/duck#37 )
z#78 = phi( main::@26/z#84 )
y#36 = phi( main::@26/y#40 )
rem8u#32 = phi( main::@26/rem8u#34 )
score#44 = phi( main::@26/score#53 )
tu#20 = phi( main::@26/tu#24 )
time#18 = phi( main::@26/time#2 )
to:main::@27
main::@27: scope:[main] from main::@100 main::@92
n#39 = phi( main::@100/n#40, main::@92/n#41 )
k#41 = phi( main::@100/k#42, main::@92/k#43 )
hiscore#31 = phi( main::@100/hiscore#32, main::@92/hiscore#33 )
peephole#37 = phi( main::@100/peephole#39, main::@92/peephole#40 )
duck#25 = phi( main::@100/duck#30, main::@92/duck#31 )
z#71 = phi( main::@100/z#14, main::@92/z#78 )
y#31 = phi( main::@100/y#35, main::@92/y#36 )
rem8u#28 = phi( main::@100/rem8u#31, main::@92/rem8u#32 )
score#33 = phi( main::@100/score#43, main::@92/score#44 )
tu#14 = phi( main::@100/tu#19, main::@92/tu#20 )
time#11 = phi( main::@100/time#17, main::@92/time#18 )
main::$76 = time#11 < $a
if(main::$76) goto main::@28
to:main::@29
main::@28: scope:[main] from main::@27
k#76 = phi( main::@27/k#41 )
hiscore#66 = phi( main::@27/hiscore#31 )
tu#73 = phi( main::@27/tu#14 )
z#100 = phi( main::@27/z#71 )
score#87 = phi( main::@27/score#33 )
duck#43 = phi( main::@27/duck#25 )
peephole#35 = phi( main::@27/peephole#37 )
y#26 = phi( main::@27/y#31 )
time#19 = phi( main::@27/time#11 )
rem8u#25 = phi( main::@27/rem8u#28 )
call read_chrono
to:main::@93
main::@93: scope:[main] from main::@28
k#74 = phi( main::@28/k#76 )
hiscore#64 = phi( main::@28/hiscore#66 )
tu#69 = phi( main::@28/tu#73 )
z#96 = phi( main::@28/z#100 )
score#80 = phi( main::@28/score#87 )
duck#39 = phi( main::@28/duck#43 )
peephole#32 = phi( main::@28/peephole#35 )
y#18 = phi( main::@28/y#26 )
time#12 = phi( main::@28/time#1 )
rem8u#18 = phi( main::@28/rem8u#6 )
rem8u#7 = rem8u#18
time#3 = time#12
m = *((char *)$911f)
*((char *)$9122) = $7f
n#2 = *((char *)$9120)
*((char *)$9122) = $ff
main::$78 = $10 & m
main::$79 = main::$78 == 0
main::$80 = ! main::$79
if(main::$80) goto main::@30
to:main::@38
main::@29: scope:[main] from main::@27
time#60 = phi( main::@27/time#11 )
n#38 = phi( main::@27/n#39 )
k#40 = phi( main::@27/k#41 )
peephole#74 = phi( main::@27/peephole#37 )
y#74 = phi( main::@27/y#31 )
rem8u#86 = phi( main::@27/rem8u#28 )
hiscore#30 = phi( main::@27/hiscore#31 )
duck#18 = phi( main::@27/duck#25 )
z#59 = phi( main::@27/z#71 )
score#19 = phi( main::@27/score#33 )
tu#8 = phi( main::@27/tu#14 )
tu#1 = ++ tu#8
main::$147 = score#19 - $a
score#4 = main::$147
call write_score
to:main::@94
main::@94: scope:[main] from main::@29
time#59 = phi( main::@29/time#60 )
n#37 = phi( main::@29/n#38 )
k#39 = phi( main::@29/k#40 )
peephole#71 = phi( main::@29/peephole#74 )
y#70 = phi( main::@29/y#74 )
rem8u#82 = phi( main::@29/rem8u#86 )
hiscore#29 = phi( main::@29/hiscore#30 )
tu#15 = phi( main::@29/tu#1 )
duck#13 = phi( main::@29/duck#18 )
z#45 = phi( main::@29/z#59 )
score#20 = phi( main::@29/score#1 )
score#5 = score#20
*((char *)$900d) = $82
wait::n#0 = $14
call wait
to:main::@95
main::@95: scope:[main] from main::@94
time#58 = phi( main::@94/time#59 )
n#36 = phi( main::@94/n#37 )
k#38 = phi( main::@94/k#39 )
peephole#68 = phi( main::@94/peephole#71 )
y#66 = phi( main::@94/y#70 )
rem8u#78 = phi( main::@94/rem8u#82 )
hiscore#28 = phi( main::@94/hiscore#29 )
score#101 = phi( main::@94/score#5 )
tu#9 = phi( main::@94/tu#15 )
duck#7 = phi( main::@94/duck#13 )
z#30 = phi( main::@94/z#5 )
z#10 = z#30
*((char *)$900d) = 0
main::$150 = duck#7 + c
*((char *)main::$150) = 0
main::$151 = duck#7 + 1
main::$152 = main::$151 + c
*((char *)main::$152) = 0
main::$153 = duck#7 + $16
main::$154 = main::$153 + c
*((char *)main::$154) = 0
main::$155 = duck#7 + $17
main::$156 = main::$155 + c
*((char *)main::$156) = 0
main::$157 = tu#9 < $b
if(main::$157) goto main::@23
to:main::@45
main::@30: scope:[main] from main::@38 main::@93
k#68 = phi( main::@38/k#73, main::@93/k#74 )
hiscore#58 = phi( main::@38/hiscore#63, main::@93/hiscore#64 )
rem8u#65 = phi( main::@38/rem8u#71, main::@93/rem8u#7 )
tu#60 = phi( main::@38/tu#68, main::@93/tu#69 )
z#90 = phi( main::@38/z#95, main::@93/z#96 )
time#36 = phi( main::@38/time#40, main::@93/time#3 )
score#71 = phi( main::@38/score#79, main::@93/score#80 )
duck#32 = phi( main::@38/duck#38, main::@93/duck#39 )
peephole#26 = phi( main::@38/peephole#31, main::@93/peephole#32 )
y#19 = phi( main::@38/y#0, main::@93/y#18 )
n#9 = phi( main::@38/n#14, main::@93/n#2 )
main::$81 = $80 & n#9
main::$82 = main::$81 == 0
main::$83 = ! main::$82
if(main::$83) goto main::@31
to:main::@39
main::@38: scope:[main] from main::@93
k#73 = phi( main::@93/k#74 )
hiscore#63 = phi( main::@93/hiscore#64 )
rem8u#71 = phi( main::@93/rem8u#7 )
tu#68 = phi( main::@93/tu#69 )
z#95 = phi( main::@93/z#96 )
time#40 = phi( main::@93/time#3 )
score#79 = phi( main::@93/score#80 )
duck#38 = phi( main::@93/duck#39 )
peephole#31 = phi( main::@93/peephole#32 )
n#14 = phi( main::@93/n#2 )
y#9 = phi( main::@93/y#18 )
y#0 = -- y#9
to:main::@30
main::@31: scope:[main] from main::@30 main::@39
n#60 = phi( main::@30/n#9, main::@39/n#66 )
k#62 = phi( main::@30/k#68, main::@39/k#69 )
hiscore#52 = phi( main::@30/hiscore#58, main::@39/hiscore#59 )
rem8u#57 = phi( main::@30/rem8u#65, main::@39/rem8u#66 )
tu#53 = phi( main::@30/tu#60, main::@39/tu#61 )
z#85 = phi( main::@30/z#90, main::@39/z#91 )
time#31 = phi( main::@30/time#36, main::@39/time#37 )
score#63 = phi( main::@30/score#71, main::@39/score#72 )
duck#26 = phi( main::@30/duck#32, main::@39/duck#33 )
peephole#21 = phi( main::@30/peephole#26, main::@39/peephole#27 )
y#20 = phi( main::@30/y#19, main::@39/y#1 )
main::$84 = 4 & m
main::$85 = main::$84 == 0
main::$86 = ! main::$85
if(main::$86) goto main::@32
to:main::@40
main::@39: scope:[main] from main::@30
n#66 = phi( main::@30/n#9 )
k#69 = phi( main::@30/k#68 )
hiscore#59 = phi( main::@30/hiscore#58 )
rem8u#66 = phi( main::@30/rem8u#65 )
tu#61 = phi( main::@30/tu#60 )
z#91 = phi( main::@30/z#90 )
time#37 = phi( main::@30/time#36 )
score#72 = phi( main::@30/score#71 )
duck#33 = phi( main::@30/duck#32 )
peephole#27 = phi( main::@30/peephole#26 )
y#10 = phi( main::@30/y#19 )
y#1 = ++ y#10
to:main::@31
main::@32: scope:[main] from main::@31 main::@40
n#54 = phi( main::@31/n#60, main::@40/n#61 )
k#56 = phi( main::@31/k#62, main::@40/k#63 )
hiscore#46 = phi( main::@31/hiscore#52, main::@40/hiscore#53 )
rem8u#50 = phi( main::@31/rem8u#57, main::@40/rem8u#58 )
tu#46 = phi( main::@31/tu#53, main::@40/tu#54 )
z#79 = phi( main::@31/z#85, main::@40/z#86 )
time#27 = phi( main::@31/time#31, main::@40/time#32 )
score#54 = phi( main::@31/score#63, main::@40/score#64 )
duck#19 = phi( main::@31/duck#26, main::@40/duck#27 )
peephole#16 = phi( main::@31/peephole#21, main::@40/peephole#22 )
y#21 = phi( main::@31/y#20, main::@40/y#2 )
main::$88 = 8 & m
main::$89 = main::$88 == 0
main::$90 = ! main::$89
if(main::$90) goto main::@33
to:main::@41
main::@40: scope:[main] from main::@31
n#61 = phi( main::@31/n#60 )
k#63 = phi( main::@31/k#62 )
hiscore#53 = phi( main::@31/hiscore#52 )
rem8u#58 = phi( main::@31/rem8u#57 )
tu#54 = phi( main::@31/tu#53 )
z#86 = phi( main::@31/z#85 )
time#32 = phi( main::@31/time#31 )
score#64 = phi( main::@31/score#63 )
duck#27 = phi( main::@31/duck#26 )
peephole#22 = phi( main::@31/peephole#21 )
y#11 = phi( main::@31/y#20 )
main::$87 = y#11 - $16
y#2 = main::$87
to:main::@32
main::@33: scope:[main] from main::@32 main::@41
n#50 = phi( main::@32/n#54, main::@41/n#55 )
k#52 = phi( main::@32/k#56, main::@41/k#57 )
hiscore#42 = phi( main::@32/hiscore#46, main::@41/hiscore#47 )
rem8u#45 = phi( main::@32/rem8u#50, main::@41/rem8u#51 )
tu#40 = phi( main::@32/tu#46, main::@41/tu#47 )
z#72 = phi( main::@32/z#79, main::@41/z#80 )
time#23 = phi( main::@32/time#27, main::@41/time#28 )
score#45 = phi( main::@32/score#54, main::@41/score#55 )
duck#14 = phi( main::@32/duck#19, main::@41/duck#20 )
peephole#12 = phi( main::@32/peephole#16, main::@41/peephole#17 )
y#22 = phi( main::@32/y#21, main::@41/y#3 )
main::$92 = $20 & m
main::$93 = main::$92 == 0
main::$94 = ! main::$93
if(main::$94) goto main::@34
to:main::@42
main::@41: scope:[main] from main::@32
n#55 = phi( main::@32/n#54 )
k#57 = phi( main::@32/k#56 )
hiscore#47 = phi( main::@32/hiscore#46 )
rem8u#51 = phi( main::@32/rem8u#50 )
tu#47 = phi( main::@32/tu#46 )
z#80 = phi( main::@32/z#79 )
time#28 = phi( main::@32/time#27 )
score#55 = phi( main::@32/score#54 )
duck#20 = phi( main::@32/duck#19 )
peephole#17 = phi( main::@32/peephole#16 )
y#12 = phi( main::@32/y#21 )
main::$91 = y#12 + $16
y#3 = main::$91
to:main::@33
main::@34: scope:[main] from main::@33 main::@36
n#47 = phi( main::@33/n#50, main::@36/n#51 )
k#49 = phi( main::@33/k#52, main::@36/k#53 )
hiscore#39 = phi( main::@33/hiscore#42, main::@36/hiscore#43 )
rem8u#41 = phi( main::@33/rem8u#45, main::@36/rem8u#46 )
score#73 = phi( main::@33/score#45, main::@36/score#81 )
tu#34 = phi( main::@33/tu#40, main::@36/tu#41 )
time#33 = phi( main::@33/time#23, main::@36/time#38 )
duck#21 = phi( main::@33/duck#14, main::@36/duck#28 )
z#62 = phi( main::@33/z#72, main::@36/z#73 )
peephole#13 = phi( main::@33/peephole#12, main::@36/peephole#18 )
y#13 = phi( main::@33/y#22, main::@36/y#23 )
main::$103 = *((char *)y#13) != brick
main::$104 = y#13 + 1
main::$105 = *((char *)main::$104) != brick
main::$106 = main::$103 && main::$105
main::$107 = y#13 + $16
main::$108 = *((char *)main::$107) != brick
main::$109 = main::$106 && main::$108
main::$110 = y#13 + $17
main::$111 = *((char *)main::$110) != brick
main::$112 = main::$109 && main::$111
main::$113 = y#13 > $1e16
main::$114 = main::$112 && main::$113
main::$115 = y#13 < $1fe3
main::$116 = main::$114 && main::$115
main::$117 = ! main::$116
if(main::$117) goto main::@37
to:main::@44
main::@42: scope:[main] from main::@33
n#68 = phi( main::@33/n#50 )
k#71 = phi( main::@33/k#52 )
hiscore#61 = phi( main::@33/hiscore#42 )
rem8u#68 = phi( main::@33/rem8u#45 )
tu#63 = phi( main::@33/tu#40 )
y#38 = phi( main::@33/y#22 )
z#61 = phi( main::@33/z#72 )
time#20 = phi( main::@33/time#23 )
score#34 = phi( main::@33/score#45 )
duck#8 = phi( main::@33/duck#14 )
peephole#6 = phi( main::@33/peephole#12 )
*((char *)$900d) = $82
main::$95 = peephole#6 != duck#8
if(main::$95) goto main::@35
to:main::@43
main::@35: scope:[main] from main::@42
n#67 = phi( main::@42/n#68 )
k#70 = phi( main::@42/k#71 )
hiscore#60 = phi( main::@42/hiscore#61 )
rem8u#67 = phi( main::@42/rem8u#68 )
tu#62 = phi( main::@42/tu#63 )
time#45 = phi( main::@42/time#20 )
duck#44 = phi( main::@42/duck#8 )
peephole#33 = phi( main::@42/peephole#6 )
y#37 = phi( main::@42/y#38 )
z#60 = phi( main::@42/z#61 )
score#21 = phi( main::@42/score#34 )
main::$100 = score#21 - $a
score#6 = main::$100
call write_score
to:main::@96
main::@96: scope:[main] from main::@35
n#62 = phi( main::@35/n#67 )
k#64 = phi( main::@35/k#70 )
hiscore#54 = phi( main::@35/hiscore#60 )
rem8u#59 = phi( main::@35/rem8u#67 )
tu#55 = phi( main::@35/tu#62 )
time#43 = phi( main::@35/time#45 )
duck#40 = phi( main::@35/duck#44 )
peephole#28 = phi( main::@35/peephole#33 )
y#32 = phi( main::@35/y#37 )
z#46 = phi( main::@35/z#60 )
score#22 = phi( main::@35/score#1 )
score#7 = score#22
wait::n#1 = $a
call wait
to:main::@97
main::@97: scope:[main] from main::@96
n#56 = phi( main::@96/n#62 )
k#58 = phi( main::@96/k#64 )
hiscore#48 = phi( main::@96/hiscore#54 )
rem8u#52 = phi( main::@96/rem8u#59 )
score#88 = phi( main::@96/score#7 )
tu#48 = phi( main::@96/tu#55 )
time#41 = phi( main::@96/time#43 )
duck#34 = phi( main::@96/duck#40 )
peephole#23 = phi( main::@96/peephole#28 )
y#27 = phi( main::@96/y#32 )
z#31 = phi( main::@96/z#5 )
z#11 = z#31
to:main::@36
main::@43: scope:[main] from main::@42
n#63 = phi( main::@42/n#68 )
k#65 = phi( main::@42/k#71 )
hiscore#55 = phi( main::@42/hiscore#61 )
rem8u#60 = phi( main::@42/rem8u#68 )
tu#56 = phi( main::@42/tu#63 )
duck#41 = phi( main::@42/duck#8 )
peephole#29 = phi( main::@42/peephole#6 )
y#33 = phi( main::@42/y#38 )
z#47 = phi( main::@42/z#61 )
score#23 = phi( main::@42/score#34 )
time#13 = phi( main::@42/time#20 )
main::$96 = $c - time#13
main::$97 = main::$96 * $a
main::$98 = score#23 + main::$97
score#8 = main::$98
wait::n#2 = $a
call wait
to:main::@98
main::@98: scope:[main] from main::@43
n#57 = phi( main::@43/n#63 )
k#59 = phi( main::@43/k#65 )
hiscore#49 = phi( main::@43/hiscore#55 )
rem8u#53 = phi( main::@43/rem8u#60 )
score#89 = phi( main::@43/score#8 )
tu#49 = phi( main::@43/tu#56 )
duck#35 = phi( main::@43/duck#41 )
peephole#24 = phi( main::@43/peephole#29 )
y#28 = phi( main::@43/y#33 )
z#32 = phi( main::@43/z#5 )
z#12 = z#32
time#4 = $a
to:main::@36
main::@36: scope:[main] from main::@97 main::@98
n#51 = phi( main::@97/n#56, main::@98/n#57 )
k#53 = phi( main::@97/k#58, main::@98/k#59 )
hiscore#43 = phi( main::@97/hiscore#48, main::@98/hiscore#49 )
rem8u#46 = phi( main::@97/rem8u#52, main::@98/rem8u#53 )
score#81 = phi( main::@97/score#88, main::@98/score#89 )
tu#41 = phi( main::@97/tu#48, main::@98/tu#49 )
time#38 = phi( main::@97/time#41, main::@98/time#4 )
duck#28 = phi( main::@97/duck#34, main::@98/duck#35 )
z#73 = phi( main::@97/z#11, main::@98/z#12 )
peephole#18 = phi( main::@97/peephole#23, main::@98/peephole#24 )
y#23 = phi( main::@97/y#27, main::@98/y#28 )
*((char *)$900d) = 0
to:main::@34
main::@37: scope:[main] from main::@34 main::@44
n#45 = phi( main::@34/n#47, main::@44/n#48 )
k#47 = phi( main::@34/k#49, main::@44/k#50 )
hiscore#37 = phi( main::@34/hiscore#39, main::@44/hiscore#40 )
rem8u#38 = phi( main::@34/rem8u#41, main::@44/rem8u#42 )
score#65 = phi( main::@34/score#73, main::@44/score#74 )
tu#29 = phi( main::@34/tu#34, main::@44/tu#35 )
time#29 = phi( main::@34/time#33, main::@44/time#34 )
duck#15 = phi( main::@34/duck#21, main::@44/duck#22 )
z#48 = phi( main::@34/z#62, main::@44/z#63 )
peephole#7 = phi( main::@34/peephole#13, main::@44/peephole#1 )
y#4 = peephole#7
*((char *)peephole#7) = $fd
main::$125 = peephole#7 + c
*((char *)main::$125) = 1
main::$126 = peephole#7 + 1
*((char *)main::$126) = $ed
main::$127 = peephole#7 + 1
main::$128 = main::$127 + c
*((char *)main::$128) = 1
main::$129 = peephole#7 + $16
*((char *)main::$129) = $ee
main::$130 = peephole#7 + $16
main::$131 = main::$130 + c
*((char *)main::$131) = 1
main::$132 = peephole#7 + $17
*((char *)main::$132) = $f0
main::$133 = peephole#7 + $17
main::$134 = main::$133 + c
*((char *)main::$134) = 1
wait::n#3 = 5
call wait
to:main::@99
main::@99: scope:[main] from main::@37
n#43 = phi( main::@37/n#45 )
k#45 = phi( main::@37/k#47 )
hiscore#35 = phi( main::@37/hiscore#37 )
peephole#43 = phi( main::@37/peephole#7 )
y#41 = phi( main::@37/y#4 )
rem8u#35 = phi( main::@37/rem8u#38 )
score#56 = phi( main::@37/score#65 )
tu#25 = phi( main::@37/tu#29 )
time#24 = phi( main::@37/time#29 )
duck#9 = phi( main::@37/duck#15 )
z#33 = phi( main::@37/z#5 )
z#13 = z#33
*((char *)duck#9) = 0
main::$136 = duck#9 + c
*((char *)main::$136) = 7
main::$137 = duck#9 + 1
*((char *)main::$137) = 1
main::$138 = duck#9 + 1
main::$139 = main::$138 + c
*((char *)main::$139) = 7
main::$140 = duck#9 + $16
*((char *)main::$140) = 2
main::$141 = duck#9 + $16
main::$142 = main::$141 + c
*((char *)main::$142) = 7
main::$143 = duck#9 + $17
*((char *)main::$143) = 3
main::$144 = duck#9 + $17
main::$145 = main::$144 + c
*((char *)main::$145) = 7
wait::n#4 = 5
call wait
to:main::@100
main::@100: scope:[main] from main::@99
n#40 = phi( main::@99/n#43 )
k#42 = phi( main::@99/k#45 )
hiscore#32 = phi( main::@99/hiscore#35 )
peephole#39 = phi( main::@99/peephole#43 )
duck#30 = phi( main::@99/duck#9 )
y#35 = phi( main::@99/y#41 )
rem8u#31 = phi( main::@99/rem8u#35 )
score#43 = phi( main::@99/score#56 )
tu#19 = phi( main::@99/tu#25 )
time#17 = phi( main::@99/time#24 )
z#34 = phi( main::@99/z#5 )
z#14 = z#34
to:main::@27
main::@44: scope:[main] from main::@34
n#48 = phi( main::@34/n#47 )
k#50 = phi( main::@34/k#49 )
hiscore#40 = phi( main::@34/hiscore#39 )
rem8u#42 = phi( main::@34/rem8u#41 )
score#74 = phi( main::@34/score#73 )
tu#35 = phi( main::@34/tu#34 )
time#34 = phi( main::@34/time#33 )
duck#22 = phi( main::@34/duck#21 )
z#63 = phi( main::@34/z#62 )
y#14 = phi( main::@34/y#13 )
peephole#8 = phi( main::@34/peephole#13 )
main::$118 = peephole#8 + c
*((char *)main::$118) = 0
main::$119 = peephole#8 + c
main::$120 = main::$119 + 1
*((char *)main::$120) = 0
main::$121 = peephole#8 + c
main::$122 = main::$121 + $16
*((char *)main::$122) = 0
main::$123 = peephole#8 + c
main::$124 = main::$123 + $17
*((char *)main::$124) = 0
peephole#1 = y#14
to:main::@37
main::@45: scope:[main] from main::@95
y#77 = phi( main::@95/y#66 )
rem8u#91 = phi( main::@95/rem8u#78 )
time#57 = phi( main::@95/time#58 )
duck#58 = phi( main::@95/duck#7 )
tu#85 = phi( main::@95/tu#9 )
peephole#66 = phi( main::@95/peephole#68 )
n#35 = phi( main::@95/n#36 )
k#37 = phi( main::@95/k#38 )
hiscore#27 = phi( main::@95/hiscore#28 )
score#99 = phi( main::@95/score#101 )
z#49 = phi( main::@95/z#10 )
clear_screen::n#2 = 4
clear_screen::m#2 = 0
call clear_screen
to:main::@101
main::@101: scope:[main] from main::@45
y#75 = phi( main::@45/y#77 )
rem8u#89 = phi( main::@45/rem8u#91 )
time#56 = phi( main::@45/time#57 )
duck#57 = phi( main::@45/duck#58 )
tu#84 = phi( main::@45/tu#85 )
peephole#64 = phi( main::@45/peephole#66 )
n#34 = phi( main::@45/n#35 )
k#36 = phi( main::@45/k#37 )
hiscore#26 = phi( main::@45/hiscore#27 )
score#95 = phi( main::@45/score#99 )
z#35 = phi( main::@45/z#2 )
z#15 = z#35
*((char *)$9005) = $f0
chrout::petscii = lower
call chrout
to:main::@102
main::@102: scope:[main] from main::@101
y#71 = phi( main::@101/y#75 )
rem8u#87 = phi( main::@101/rem8u#89 )
time#55 = phi( main::@101/time#56 )
duck#56 = phi( main::@101/duck#57 )
tu#83 = phi( main::@101/tu#84 )
peephole#62 = phi( main::@101/peephole#64 )
n#33 = phi( main::@101/n#34 )
k#35 = phi( main::@101/k#36 )
z#122 = phi( main::@101/z#15 )
hiscore#24 = phi( main::@101/hiscore#26 )
score#90 = phi( main::@101/score#95 )
textcolor::color#3 = 7
call textcolor
textcolor::return#5 = textcolor::return#1
to:main::@103
main::@103: scope:[main] from main::@102
y#67 = phi( main::@102/y#71 )
rem8u#83 = phi( main::@102/rem8u#87 )
time#54 = phi( main::@102/time#55 )
duck#55 = phi( main::@102/duck#56 )
tu#82 = phi( main::@102/tu#83 )
peephole#60 = phi( main::@102/peephole#62 )
n#32 = phi( main::@102/n#33 )
k#34 = phi( main::@102/k#35 )
z#119 = phi( main::@102/z#122 )
hiscore#22 = phi( main::@102/hiscore#24 )
score#82 = phi( main::@102/score#90 )
cputs::s#4 = game_over
call cputs
to:main::@104
main::@104: scope:[main] from main::@103
y#64 = phi( main::@103/y#67 )
rem8u#79 = phi( main::@103/rem8u#83 )
time#53 = phi( main::@103/time#54 )
duck#54 = phi( main::@103/duck#55 )
tu#80 = phi( main::@103/tu#82 )
peephole#57 = phi( main::@103/peephole#60 )
n#31 = phi( main::@103/n#32 )
k#33 = phi( main::@103/k#34 )
z#117 = phi( main::@103/z#119 )
hiscore#20 = phi( main::@103/hiscore#22 )
score#75 = phi( main::@103/score#82 )
textcolor::color#4 = 2
call textcolor
textcolor::return#6 = textcolor::return#1
to:main::@105
main::@105: scope:[main] from main::@104
y#62 = phi( main::@104/y#64 )
rem8u#76 = phi( main::@104/rem8u#79 )
time#52 = phi( main::@104/time#53 )
duck#53 = phi( main::@104/duck#54 )
tu#78 = phi( main::@104/tu#80 )
peephole#54 = phi( main::@104/peephole#57 )
n#30 = phi( main::@104/n#31 )
k#32 = phi( main::@104/k#33 )
z#115 = phi( main::@104/z#117 )
hiscore#18 = phi( main::@104/hiscore#20 )
score#66 = phi( main::@104/score#75 )
cputs::s#5 = your_score
call cputs
to:main::@106
main::@106: scope:[main] from main::@105
y#60 = phi( main::@105/y#62 )
rem8u#74 = phi( main::@105/rem8u#76 )
time#51 = phi( main::@105/time#52 )
duck#52 = phi( main::@105/duck#53 )
tu#76 = phi( main::@105/tu#78 )
peephole#51 = phi( main::@105/peephole#54 )
n#29 = phi( main::@105/n#30 )
k#31 = phi( main::@105/k#32 )
z#113 = phi( main::@105/z#115 )
hiscore#16 = phi( main::@105/hiscore#18 )
score#57 = phi( main::@105/score#66 )
cputs::s#6 = buffer
call cputs
to:main::@107
main::@107: scope:[main] from main::@106
y#58 = phi( main::@106/y#60 )
rem8u#72 = phi( main::@106/rem8u#74 )
time#50 = phi( main::@106/time#51 )
duck#51 = phi( main::@106/duck#52 )
tu#74 = phi( main::@106/tu#76 )
peephole#49 = phi( main::@106/peephole#51 )
n#28 = phi( main::@106/n#29 )
k#30 = phi( main::@106/k#31 )
z#111 = phi( main::@106/z#113 )
hiscore#13 = phi( main::@106/hiscore#16 )
score#46 = phi( main::@106/score#57 )
textcolor::color#5 = 3
call textcolor
textcolor::return#7 = textcolor::return#1
to:main::@108
main::@108: scope:[main] from main::@107
y#55 = phi( main::@107/y#58 )
rem8u#69 = phi( main::@107/rem8u#72 )
time#49 = phi( main::@107/time#50 )
duck#50 = phi( main::@107/duck#51 )
tu#70 = phi( main::@107/tu#74 )
peephole#47 = phi( main::@107/peephole#49 )
n#27 = phi( main::@107/n#28 )
k#29 = phi( main::@107/k#30 )
z#108 = phi( main::@107/z#111 )
hiscore#10 = phi( main::@107/hiscore#13 )
score#35 = phi( main::@107/score#46 )
cputs::s#7 = high_score
call cputs
to:main::@109
main::@109: scope:[main] from main::@108
y#51 = phi( main::@108/y#55 )
rem8u#61 = phi( main::@108/rem8u#69 )
time#47 = phi( main::@108/time#49 )
duck#48 = phi( main::@108/duck#50 )
tu#64 = phi( main::@108/tu#70 )
peephole#44 = phi( main::@108/peephole#47 )
n#25 = phi( main::@108/n#27 )
k#27 = phi( main::@108/k#29 )
z#104 = phi( main::@108/z#108 )
hiscore#5 = phi( main::@108/hiscore#10 )
score#24 = phi( main::@108/score#35 )
main::$167 = score#24 > hiscore#5
main::$168 = ! main::$167
if(main::$168) goto main::@48
to:main::@46
main::@48: scope:[main] from main::@109 main::@46
y#48 = phi( main::@109/y#51, main::@46/y#52 )
rem8u#54 = phi( main::@109/rem8u#61, main::@46/rem8u#62 )
time#46 = phi( main::@109/time#47, main::@46/time#48 )
duck#47 = phi( main::@109/duck#48, main::@46/duck#49 )
tu#57 = phi( main::@109/tu#64, main::@46/tu#65 )
score#96 = phi( main::@109/score#24, main::@46/score#25 )
peephole#41 = phi( main::@109/peephole#44, main::@46/peephole#45 )
n#24 = phi( main::@109/n#25, main::@46/n#26 )
k#26 = phi( main::@109/k#27, main::@46/k#28 )
z#101 = phi( main::@109/z#104, main::@46/z#105 )
hiscore#6 = phi( main::@109/hiscore#5, main::@46/hiscore#0 )
utoa::value#2 = hiscore#6
utoa::buffer#6 = buffer
utoa::radix#1 = $a
call utoa
to:main::@110
main::@110: scope:[main] from main::@48
hiscore#25 = phi( main::@48/hiscore#6 )
y#46 = phi( main::@48/y#48 )
rem8u#47 = phi( main::@48/rem8u#54 )
time#44 = phi( main::@48/time#46 )
duck#46 = phi( main::@48/duck#47 )
tu#50 = phi( main::@48/tu#57 )
score#91 = phi( main::@48/score#96 )
peephole#38 = phi( main::@48/peephole#41 )
n#23 = phi( main::@48/n#24 )
k#25 = phi( main::@48/k#26 )
z#97 = phi( main::@48/z#101 )
cputs::s#8 = buffer
call cputs
to:main::@111
main::@111: scope:[main] from main::@110
hiscore#23 = phi( main::@110/hiscore#25 )
y#44 = phi( main::@110/y#46 )
rem8u#43 = phi( main::@110/rem8u#47 )
time#42 = phi( main::@110/time#44 )
duck#45 = phi( main::@110/duck#46 )
tu#42 = phi( main::@110/tu#50 )
score#83 = phi( main::@110/score#91 )
peephole#36 = phi( main::@110/peephole#38 )
n#22 = phi( main::@110/n#23 )
k#24 = phi( main::@110/k#25 )
z#92 = phi( main::@110/z#97 )
textcolor::color#6 = 1
call textcolor
textcolor::return#8 = textcolor::return#1
to:main::@112
main::@112: scope:[main] from main::@111
hiscore#21 = phi( main::@111/hiscore#23 )
y#42 = phi( main::@111/y#44 )
rem8u#39 = phi( main::@111/rem8u#43 )
time#39 = phi( main::@111/time#42 )
duck#42 = phi( main::@111/duck#45 )
tu#36 = phi( main::@111/tu#42 )
score#76 = phi( main::@111/score#83 )
peephole#34 = phi( main::@111/peephole#36 )
n#21 = phi( main::@111/n#22 )
k#23 = phi( main::@111/k#24 )
z#87 = phi( main::@111/z#92 )
cputs::s#9 = play_again
call cputs
to:main::@113
main::@113: scope:[main] from main::@112
hiscore#19 = phi( main::@112/hiscore#21 )
y#39 = phi( main::@112/y#42 )
rem8u#36 = phi( main::@112/rem8u#39 )
time#35 = phi( main::@112/time#39 )
duck#36 = phi( main::@112/duck#42 )
tu#30 = phi( main::@112/tu#36 )
score#67 = phi( main::@112/score#76 )
peephole#30 = phi( main::@112/peephole#34 )
n#20 = phi( main::@112/n#21 )
k#22 = phi( main::@112/k#23 )
z#81 = phi( main::@112/z#87 )
to:main::@49
main::@46: scope:[main] from main::@109
y#52 = phi( main::@109/y#51 )
rem8u#62 = phi( main::@109/rem8u#61 )
time#48 = phi( main::@109/time#47 )
duck#49 = phi( main::@109/duck#48 )
tu#65 = phi( main::@109/tu#64 )
peephole#45 = phi( main::@109/peephole#44 )
n#26 = phi( main::@109/n#25 )
k#28 = phi( main::@109/k#27 )
z#105 = phi( main::@109/z#104 )
score#25 = phi( main::@109/score#24 )
hiscore#0 = score#25
to:main::@48
main::@49: scope:[main] from main::@113 main::@49
hiscore#17 = phi( main::@113/hiscore#19, main::@49/hiscore#17 )
y#34 = phi( main::@113/y#39, main::@49/y#34 )
rem8u#33 = phi( main::@113/rem8u#36, main::@49/rem8u#33 )
time#30 = phi( main::@113/time#35, main::@49/time#30 )
duck#29 = phi( main::@113/duck#36, main::@49/duck#29 )
tu#26 = phi( main::@113/tu#30, main::@49/tu#26 )
score#58 = phi( main::@113/score#67, main::@49/score#58 )
peephole#25 = phi( main::@113/peephole#30, main::@49/peephole#25 )
n#19 = phi( main::@113/n#20, main::@49/n#19 )
k#19 = phi( main::@113/k#22, main::@49/k#19 )
z#74 = phi( main::@113/z#81, main::@49/z#74 )
j#6 = *((char *)$c5)
main::$173 = j#6 != $b
main::$174 = j#6 != $1c
main::$175 = main::$173 && main::$174
if(main::$175) goto main::@49
to:main::@50
main::@50: scope:[main] from main::@49
hiscore#14 = phi( main::@49/hiscore#17 )
y#29 = phi( main::@49/y#34 )
rem8u#29 = phi( main::@49/rem8u#33 )
time#25 = phi( main::@49/time#30 )
duck#23 = phi( main::@49/duck#29 )
tu#21 = phi( main::@49/tu#26 )
score#47 = phi( main::@49/score#58 )
peephole#19 = phi( main::@49/peephole#25 )
n#17 = phi( main::@49/n#19 )
k#15 = phi( main::@49/k#19 )
z#56 = phi( main::@49/z#74 )
j#19 = phi( main::@49/j#6 )
main::$176 = j#19 == $b
if(main::$176) goto main::@3
to:main::@51
main::@51: scope:[main] from main::@50
hiscore#11 = phi( main::@50/hiscore#14 )
y#24 = phi( main::@50/y#29 )
rem8u#26 = phi( main::@50/rem8u#29 )
time#21 = phi( main::@50/time#25 )
duck#16 = phi( main::@50/duck#23 )
j#24 = phi( main::@50/j#19 )
tu#16 = phi( main::@50/tu#21 )
score#36 = phi( main::@50/score#47 )
peephole#14 = phi( main::@50/peephole#19 )
n#15 = phi( main::@50/n#17 )
k#12 = phi( main::@50/k#15 )
z#50 = phi( main::@50/z#56 )
asm { jsr$FD22 }
to:main::@return
main::@return: scope:[main] from main::@51
hiscore#7 = phi( main::@51/hiscore#11 )
y#15 = phi( main::@51/y#24 )
rem8u#19 = phi( main::@51/rem8u#26 )
time#14 = phi( main::@51/time#21 )
duck#10 = phi( main::@51/duck#16 )
j#20 = phi( main::@51/j#24 )
tu#10 = phi( main::@51/tu#16 )
score#26 = phi( main::@51/score#36 )
peephole#9 = phi( main::@51/peephole#14 )
n#10 = phi( main::@51/n#15 )
k#8 = phi( main::@51/k#12 )
z#36 = phi( main::@51/z#50 )
z#16 = z#36
k#2 = k#8
n#3 = n#10
peephole#2 = peephole#9
score#9 = score#26
tu#2 = tu#10
j#7 = j#20
duck#2 = duck#10
time#5 = time#14
rem8u#8 = rem8u#19
y#5 = y#15
hiscore#1 = hiscore#7
return
to:@return
void __start()
__start: scope:[__start] from
to:__start::__init1
__start::__init1: scope:[__start] from __start
conio_cursor_x = 0
conio_cursor_y = 0
conio_line_text = DEFAULT_SCREEN
conio_line_color = COLORRAM
conio_textcolor = LIGHT_BLUE
conio_scroll_enable = 1
rem8u#9 = 0
j#8 = 0
k#3 = 0
l = 0
m = 0
n#4 = 0
tu#3 = 0
duck#3 = 0
peephole#3 = 0
y#6 = 0
z#17 = 0
time#6 = 0
score#10 = 0
hiscore#2 = 0
call conio_c64_init
to:__start::@2
__start::@2: scope:[__start] from __start::__init1
hiscore#15 = phi( __start::__init1/hiscore#2 )
y#30 = phi( __start::__init1/y#6 )
rem8u#30 = phi( __start::__init1/rem8u#9 )
time#26 = phi( __start::__init1/time#6 )
duck#24 = phi( __start::__init1/duck#3 )
j#26 = phi( __start::__init1/j#8 )
tu#22 = phi( __start::__init1/tu#3 )
score#48 = phi( __start::__init1/score#10 )
peephole#20 = phi( __start::__init1/peephole#3 )
n#18 = phi( __start::__init1/n#4 )
k#16 = phi( __start::__init1/k#3 )
z#64 = phi( __start::__init1/z#17 )
to:__start::@1
__start::@1: scope:[__start] from __start::@2
hiscore#12 = phi( __start::@2/hiscore#15 )
y#25 = phi( __start::@2/y#30 )
rem8u#27 = phi( __start::@2/rem8u#30 )
time#22 = phi( __start::@2/time#26 )
duck#17 = phi( __start::@2/duck#24 )
j#25 = phi( __start::@2/j#26 )
tu#17 = phi( __start::@2/tu#22 )
score#37 = phi( __start::@2/score#48 )
peephole#15 = phi( __start::@2/peephole#20 )
n#16 = phi( __start::@2/n#18 )
k#13 = phi( __start::@2/k#16 )
z#51 = phi( __start::@2/z#64 )
call main
to:__start::@3
__start::@3: scope:[__start] from __start::@1
hiscore#8 = phi( __start::@1/hiscore#1 )
y#16 = phi( __start::@1/y#5 )
rem8u#20 = phi( __start::@1/rem8u#8 )
time#15 = phi( __start::@1/time#5 )
duck#11 = phi( __start::@1/duck#2 )
j#21 = phi( __start::@1/j#7 )
tu#11 = phi( __start::@1/tu#2 )
score#27 = phi( __start::@1/score#9 )
peephole#10 = phi( __start::@1/peephole#2 )
n#11 = phi( __start::@1/n#3 )
k#9 = phi( __start::@1/k#2 )
z#37 = phi( __start::@1/z#16 )
z#18 = z#37
k#4 = k#9
n#5 = n#11
peephole#4 = peephole#10
score#11 = score#27
tu#4 = tu#11
j#9 = j#21
duck#4 = duck#11
time#7 = time#15
rem8u#10 = rem8u#20
y#7 = y#16
hiscore#3 = hiscore#8
to:__start::@return
__start::@return: scope:[__start] from __start::@3
hiscore#9 = phi( __start::@3/hiscore#3 )
score#28 = phi( __start::@3/score#11 )
time#16 = phi( __start::@3/time#7 )
z#38 = phi( __start::@3/z#18 )
y#17 = phi( __start::@3/y#7 )
peephole#11 = phi( __start::@3/peephole#4 )
duck#12 = phi( __start::@3/duck#4 )
tu#12 = phi( __start::@3/tu#4 )
n#12 = phi( __start::@3/n#5 )
k#10 = phi( __start::@3/k#4 )
j#22 = phi( __start::@3/j#9 )
rem8u#21 = phi( __start::@3/rem8u#10 )
rem8u#11 = rem8u#21
j#10 = j#22
k#5 = k#10
n#6 = n#12
tu#5 = tu#12
duck#5 = duck#12
peephole#5 = peephole#11
y#8 = y#17
z#19 = z#38
time#8 = time#16
score#12 = score#28
hiscore#4 = hiscore#9
return
to:@return
SYMBOL TABLE SSA
__constant char BINARY = 2
__constant char * const COLORRAM = (char *)$d800
__constant char DECIMAL = $a
__constant char * const DEFAULT_SCREEN = (char *)$400
__constant char DIGITS[] = "0123456789abcdef"z
__constant char HEXADECIMAL = $10
__constant const char LIGHT_BLUE = $e
__constant char OCTAL = 8
__constant char RADIX::BINARY = 2
__constant char RADIX::DECIMAL = $a
__constant char RADIX::HEXADECIMAL = $10
__constant char RADIX::OCTAL = 8
__constant unsigned int RADIX_BINARY_VALUES[] = { $8000, $4000, $2000, $1000, $800, $400, $200, $100, $80, $40, $20, $10, 8, 4, 2 }
__constant unsigned int RADIX_DECIMAL_VALUES[] = { $2710, $3e8, $64, $a }
__constant unsigned int RADIX_HEXADECIMAL_VALUES[] = { $1000, $100, $10 }
__constant unsigned int RADIX_OCTAL_VALUES[] = { $8000, $1000, $200, $40, 8 }
__constant char SIZEOF_UNSIGNED_INT = 2
void __start()
__constant const char brick = $e6
__constant char buffer[] = { 0, 0, 0, 0 }
__constant const unsigned int c = $7800
__constant const char chrono[] = { $54, $4d, $3a, $39 }
void chrono_restart()
void chrout(volatile char petscii)
__loadstore volatile char chrout::petscii
void clear_screen(char n , char m)
bool clear_screen::$2
number clear_screen::$3
number clear_screen::$4
number clear_screen::$5
char clear_screen::m
char clear_screen::m#0
char clear_screen::m#1
char clear_screen::m#2
char clear_screen::m#3
char clear_screen::m#4
char clear_screen::m#5
char clear_screen::n
char clear_screen::n#0
char clear_screen::n#1
char clear_screen::n#2
char clear_screen::n#3
char clear_screen::n#4
char clear_screen::n#5
void conio_c64_init()
bool conio_c64_init::$0
bool conio_c64_init::$1
__constant char * const conio_c64_init::BASIC_CURSOR_LINE = (char *)$d6
char conio_c64_init::line
char conio_c64_init::line#0
char conio_c64_init::line#1
char conio_c64_init::line#2
__loadstore char conio_cursor_x
__loadstore char conio_cursor_y
__loadstore char *conio_line_color
__loadstore char *conio_line_text
__loadstore char conio_scroll_enable
__loadstore char conio_textcolor
void cputc(char c)
bool cputc::$0
bool cputc::$1
bool cputc::$2
char cputc::c
char cputc::c#0
char cputc::c#1
char cputc::c#2
void cputln()
void cputs(const char *s)
char cputs::$0
bool cputs::$2
char cputs::c
char cputs::c#0
char cputs::c#1
char cputs::c#2
const char *cputs::s
const char *cputs::s#0
const char *cputs::s#1
const char *cputs::s#10
const char *cputs::s#11
const char *cputs::s#12
const char *cputs::s#13
const char *cputs::s#2
const char *cputs::s#3
const char *cputs::s#4
const char *cputs::s#5
const char *cputs::s#6
const char *cputs::s#7
const char *cputs::s#8
const char *cputs::s#9
void cscroll()
bool cscroll::$0
bool cscroll::$1
bool cscroll::$7
unsigned int div16u8u(unsigned int dividend , char divisor)
char div16u8u::$0
char div16u8u::$2
unsigned int div16u8u::dividend
unsigned int div16u8u::dividend#0
unsigned int div16u8u::dividend#1
unsigned int div16u8u::dividend#2
char div16u8u::divisor
char div16u8u::divisor#0
char div16u8u::divisor#1
char div16u8u::divisor#2
unsigned int div16u8u::quotient
unsigned int div16u8u::quotient#0
char div16u8u::quotient_hi
char div16u8u::quotient_hi#0
char div16u8u::quotient_hi#1
char div16u8u::quotient_lo
char div16u8u::quotient_lo#0
unsigned int div16u8u::return
unsigned int div16u8u::return#0
unsigned int div16u8u::return#1
unsigned int div16u8u::return#2
unsigned int div16u8u::return#3
unsigned int div16u8u::return#4
char divr8u(char dividend , char divisor , char rem)
char divr8u::$0
number divr8u::$1
bool divr8u::$10
bool divr8u::$2
bool divr8u::$3
number divr8u::$4
char divr8u::$5
char divr8u::$6
bool divr8u::$7
bool divr8u::$8
char divr8u::$9
char divr8u::dividend
char divr8u::dividend#0
char divr8u::dividend#1
char divr8u::dividend#2
char divr8u::dividend#3
char divr8u::dividend#4
char divr8u::dividend#5
char divr8u::dividend#6
char divr8u::dividend#7
char divr8u::dividend#8
char divr8u::divisor
char divr8u::divisor#0
char divr8u::divisor#1
char divr8u::divisor#2
char divr8u::divisor#3
char divr8u::divisor#4
char divr8u::divisor#5
char divr8u::divisor#6
char divr8u::divisor#7
char divr8u::i
char divr8u::i#0
char divr8u::i#1
char divr8u::i#2
char divr8u::i#3
char divr8u::i#4
char divr8u::i#5
char divr8u::i#6
char divr8u::quotient
char divr8u::quotient#0
char divr8u::quotient#1
char divr8u::quotient#2
char divr8u::quotient#3
char divr8u::quotient#4
char divr8u::quotient#5
char divr8u::quotient#6
char divr8u::quotient#7
char divr8u::quotient#8
char divr8u::rem
char divr8u::rem#0
char divr8u::rem#1
char divr8u::rem#10
char divr8u::rem#11
char divr8u::rem#2
char divr8u::rem#3
char divr8u::rem#4
char divr8u::rem#5
char divr8u::rem#6
char divr8u::rem#7
char divr8u::rem#8
char divr8u::rem#9
char divr8u::return
char divr8u::return#0
char divr8u::return#1
char divr8u::return#2
char divr8u::return#3
char divr8u::return#4
char divr8u::return#5
char divr8u::return#6
__constant const char down = $11
unsigned int duck
unsigned int duck#0
unsigned int duck#1
unsigned int duck#10
unsigned int duck#11
unsigned int duck#12
unsigned int duck#13
unsigned int duck#14
unsigned int duck#15
unsigned int duck#16
unsigned int duck#17
unsigned int duck#18
unsigned int duck#19
unsigned int duck#2
unsigned int duck#20
unsigned int duck#21
unsigned int duck#22
unsigned int duck#23
unsigned int duck#24
unsigned int duck#25
unsigned int duck#26
unsigned int duck#27
unsigned int duck#28
unsigned int duck#29
unsigned int duck#3
unsigned int duck#30
unsigned int duck#31
unsigned int duck#32
unsigned int duck#33
unsigned int duck#34
unsigned int duck#35
unsigned int duck#36
unsigned int duck#37
unsigned int duck#38
unsigned int duck#39
unsigned int duck#4
unsigned int duck#40
unsigned int duck#41
unsigned int duck#42
unsigned int duck#43
unsigned int duck#44
unsigned int duck#45
unsigned int duck#46
unsigned int duck#47
unsigned int duck#48
unsigned int duck#49
unsigned int duck#5
unsigned int duck#50
unsigned int duck#51
unsigned int duck#52
unsigned int duck#53
unsigned int duck#54
unsigned int duck#55
unsigned int duck#56
unsigned int duck#57
unsigned int duck#58
unsigned int duck#6
unsigned int duck#7
unsigned int duck#8
unsigned int duck#9
__constant const char duck_udg[] = { $e, $1b, $3f, $1f, $f, 7, $f, $1f, 0, 0, 0, 0, 0, $c0, $70, $bc, $1f, $1d, $1e, $f, 3, 1, 1, 3, $ce, $1e, $7c, $f8, $e0, $40, $40, $e0, 0, 0, 0, 0, 0, 0, 0, 0 }
__constant const char ducknumber[] = { $44, $55, $43, $4b, $3a }
__constant const char foot[] = "PRESS: 1,3,5,7 or 9
"
__constant const char game_over[] = "
GAME OVER"
void gotoxy(char x , char y)
bool gotoxy::$0
bool gotoxy::$1
bool gotoxy::$2
bool gotoxy::$3
char *gotoxy::$5
char *gotoxy::$6
unsigned int gotoxy::$7
unsigned int gotoxy::line_offset
unsigned int gotoxy::line_offset#0
char gotoxy::x
char gotoxy::x#0
char gotoxy::x#1
char gotoxy::x#2
char gotoxy::x#3
char gotoxy::x#4
char gotoxy::x#5
char gotoxy::x#6
char gotoxy::x#7
char gotoxy::y
char gotoxy::y#0
char gotoxy::y#1
char gotoxy::y#2
char gotoxy::y#3
char gotoxy::y#4
char gotoxy::y#5
char gotoxy::y#6
char gotoxy::y#7
__constant const char green = $1e
__constant const char high_score[] = "
Hi-Score: "
unsigned int hiscore
unsigned int hiscore#0
unsigned int hiscore#1
unsigned int hiscore#10
unsigned int hiscore#100
unsigned int hiscore#101
unsigned int hiscore#102
unsigned int hiscore#103
unsigned int hiscore#104
unsigned int hiscore#105
unsigned int hiscore#106
unsigned int hiscore#107
unsigned int hiscore#108
unsigned int hiscore#109
unsigned int hiscore#11
unsigned int hiscore#110
unsigned int hiscore#111
unsigned int hiscore#112
unsigned int hiscore#113
unsigned int hiscore#114
unsigned int hiscore#115
unsigned int hiscore#116
unsigned int hiscore#117
unsigned int hiscore#118
unsigned int hiscore#119
unsigned int hiscore#12
unsigned int hiscore#120
unsigned int hiscore#121
unsigned int hiscore#122
unsigned int hiscore#13
unsigned int hiscore#14
unsigned int hiscore#15
unsigned int hiscore#16
unsigned int hiscore#17
unsigned int hiscore#18
unsigned int hiscore#19
unsigned int hiscore#2
unsigned int hiscore#20
unsigned int hiscore#21
unsigned int hiscore#22
unsigned int hiscore#23
unsigned int hiscore#24
unsigned int hiscore#25
unsigned int hiscore#26
unsigned int hiscore#27
unsigned int hiscore#28
unsigned int hiscore#29
unsigned int hiscore#3
unsigned int hiscore#30
unsigned int hiscore#31
unsigned int hiscore#32
unsigned int hiscore#33
unsigned int hiscore#34
unsigned int hiscore#35
unsigned int hiscore#36
unsigned int hiscore#37
unsigned int hiscore#38
unsigned int hiscore#39
unsigned int hiscore#4
unsigned int hiscore#40
unsigned int hiscore#41
unsigned int hiscore#42
unsigned int hiscore#43
unsigned int hiscore#44
unsigned int hiscore#45
unsigned int hiscore#46
unsigned int hiscore#47
unsigned int hiscore#48
unsigned int hiscore#49
unsigned int hiscore#5
unsigned int hiscore#50
unsigned int hiscore#51
unsigned int hiscore#52
unsigned int hiscore#53
unsigned int hiscore#54
unsigned int hiscore#55
unsigned int hiscore#56
unsigned int hiscore#57
unsigned int hiscore#58
unsigned int hiscore#59
unsigned int hiscore#6
unsigned int hiscore#60
unsigned int hiscore#61
unsigned int hiscore#62
unsigned int hiscore#63
unsigned int hiscore#64
unsigned int hiscore#65
unsigned int hiscore#66
unsigned int hiscore#67
unsigned int hiscore#68
unsigned int hiscore#69
unsigned int hiscore#7
unsigned int hiscore#70
unsigned int hiscore#71
unsigned int hiscore#72
unsigned int hiscore#73
unsigned int hiscore#74
unsigned int hiscore#75
unsigned int hiscore#76
unsigned int hiscore#77
unsigned int hiscore#78
unsigned int hiscore#79
unsigned int hiscore#8
unsigned int hiscore#80
unsigned int hiscore#81
unsigned int hiscore#82
unsigned int hiscore#83
unsigned int hiscore#84
unsigned int hiscore#85
unsigned int hiscore#86
unsigned int hiscore#87
unsigned int hiscore#88
unsigned int hiscore#89
unsigned int hiscore#9
unsigned int hiscore#90
unsigned int hiscore#91
unsigned int hiscore#92
unsigned int hiscore#93
unsigned int hiscore#94
unsigned int hiscore#95
unsigned int hiscore#96
unsigned int hiscore#97
unsigned int hiscore#98
unsigned int hiscore#99
__constant const char home = $13
__constant const char intro[] = "
DIFFICULTY
----------
"
char j
char j#0
char j#1
char j#10
char j#11
char j#12
char j#13
char j#14
char j#15
char j#16
char j#17
char j#18
char j#19
char j#2
char j#20
char j#21
char j#22
char j#23
char j#24
char j#25
char j#26
char j#3
char j#4
char j#5
char j#6
char j#7
char j#8
char j#9
char k
char k#0
char k#1
char k#10
char k#100
char k#101
char k#102
char k#103
char k#104
char k#105
char k#11
char k#12
char k#13
char k#14
char k#15
char k#16
char k#17
char k#18
char k#19
char k#2
char k#20
char k#21
char k#22
char k#23
char k#24
char k#25
char k#26
char k#27
char k#28
char k#29
char k#3
char k#30
char k#31
char k#32
char k#33
char k#34
char k#35
char k#36
char k#37
char k#38
char k#39
char k#4
char k#40
char k#41
char k#42
char k#43
char k#44
char k#45
char k#46
char k#47
char k#48
char k#49
char k#5
char k#50
char k#51
char k#52
char k#53
char k#54
char k#55
char k#56
char k#57
char k#58
char k#59
char k#6
char k#60
char k#61
char k#62
char k#63
char k#64
char k#65
char k#66
char k#67
char k#68
char k#69
char k#7
char k#70
char k#71
char k#72
char k#73
char k#74
char k#75
char k#76
char k#77
char k#78
char k#79
char k#8
char k#80
char k#81
char k#82
char k#83
char k#84
char k#85
char k#86
char k#87
char k#88
char k#89
char k#9
char k#90
char k#91
char k#92
char k#93
char k#94
char k#95
char k#96
char k#97
char k#98
char k#99
__loadstore volatile char l
__constant const char levels[] = "1.EASIEST
3.EASY
5.MEDIUM
7.HARD
9.EXPERT
"
__constant const char lock = 8
__constant const char lower = $e
__loadstore volatile char m
void main()
number main::$100
bool main::$103
number main::$104
bool main::$105
bool main::$106
number main::$107
bool main::$108
bool main::$109
bool main::$11
number main::$110
bool main::$111
bool main::$112
bool main::$113
bool main::$114
bool main::$115
bool main::$116
bool main::$117
unsigned int main::$118
unsigned int main::$119
number main::$120
unsigned int main::$121
number main::$122
unsigned int main::$123
number main::$124
unsigned int main::$125
number main::$126
number main::$127
number main::$128
number main::$129
number main::$130
number main::$131
number main::$132
number main::$133
number main::$134
unsigned int main::$136
number main::$137
number main::$138
number main::$139
number main::$140
number main::$141
number main::$142
number main::$143
number main::$144
number main::$145
number main::$147
unsigned int main::$150
number main::$151
number main::$152
number main::$153
number main::$154
number main::$155
number main::$156
bool main::$157
bool main::$16
bool main::$167
bool main::$168
bool main::$173
bool main::$174
bool main::$175
bool main::$176
bool main::$18
bool main::$2
bool main::$23
bool main::$24
number main::$25
number main::$26
number main::$27
unsigned int main::$29
number main::$3
bool main::$30
bool main::$31
bool main::$32
unsigned int main::$35
number main::$36
bool main::$37
bool main::$44
bool main::$49
bool main::$54
number main::$57
number main::$61
number main::$62
bool main::$63
bool main::$64
bool main::$65
number main::$66
bool main::$67
bool main::$68
number main::$69
bool main::$70
bool main::$71
number main::$72
bool main::$73
bool main::$74
bool main::$76
number main::$78
bool main::$79
bool main::$80
number main::$81
bool main::$82
bool main::$83
number main::$84
bool main::$85
bool main::$86
number main::$87
number main::$88
bool main::$89
bool main::$90
number main::$91
number main::$92
bool main::$93
bool main::$94
bool main::$95
number main::$96
number main::$97
number main::$98
void * memcpy(void *destination , void *source , unsigned int num)
bool memcpy::$1
char *memcpy::$2
void *memcpy::destination
void *memcpy::destination#0
void *memcpy::destination#1
void *memcpy::destination#2
void *memcpy::destination#3
void *memcpy::destination#4
void *memcpy::destination#5
char *memcpy::dst
char *memcpy::dst#0
char *memcpy::dst#1
char *memcpy::dst#2
char *memcpy::dst#3
unsigned int memcpy::num
unsigned int memcpy::num#0
unsigned int memcpy::num#1
unsigned int memcpy::num#2
void *memcpy::return
void *memcpy::return#0
void *memcpy::return#1
void *memcpy::return#2
void *memcpy::return#3
void *memcpy::return#4
void *memcpy::source
void *memcpy::source#0
void *memcpy::source#1
void *memcpy::source#2
char *memcpy::src
char *memcpy::src#0
char *memcpy::src#1
char *memcpy::src#2
char *memcpy::src#3
char *memcpy::src_end
char *memcpy::src_end#0
char *memcpy::src_end#1
char *memcpy::src_end#2
void * memset(void *str , char c , unsigned int num)
bool memset::$0
bool memset::$1
bool memset::$3
char *memset::$4
char memset::c
char memset::c#0
char memset::c#1
char memset::c#2
char memset::c#3
char memset::c#4
char memset::c#5
char *memset::dst
char *memset::dst#0
char *memset::dst#1
char *memset::dst#2
char *memset::dst#3
char *memset::end
char *memset::end#0
char *memset::end#1
char *memset::end#2
unsigned int memset::num
unsigned int memset::num#0
unsigned int memset::num#1
unsigned int memset::num#2
unsigned int memset::num#3
void *memset::return
void *memset::return#0
void *memset::return#1
void *memset::return#2
void *memset::return#3
void *memset::return#4
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 *memset::str#6
char n
char n#0
char n#1
char n#10
char n#100
char n#101
char n#102
char n#103
char n#104
char n#105
char n#106
char n#107
char n#108
char n#109
char n#11
char n#110
char n#111
char n#112
char n#113
char n#114
char n#115
char n#116
char n#117
char n#118
char n#119
char n#12
char n#120
char n#121
char n#13
char n#14
char n#15
char n#16
char n#17
char n#18
char n#19
char n#2
char n#20
char n#21
char n#22
char n#23
char n#24
char n#25
char n#26
char n#27
char n#28
char n#29
char n#3
char n#30
char n#31
char n#32
char n#33
char n#34
char n#35
char n#36
char n#37
char n#38
char n#39
char n#4
char n#40
char n#41
char n#42
char n#43
char n#44
char n#45
char n#46
char n#47
char n#48
char n#49
char n#5
char n#50
char n#51
char n#52
char n#53
char n#54
char n#55
char n#56
char n#57
char n#58
char n#59
char n#6
char n#60
char n#61
char n#62
char n#63
char n#64
char n#65
char n#66
char n#67
char n#68
char n#69
char n#7
char n#70
char n#71
char n#72
char n#73
char n#74
char n#75
char n#76
char n#77
char n#78
char n#79
char n#8
char n#80
char n#81
char n#82
char n#83
char n#84
char n#85
char n#86
char n#87
char n#88
char n#89
char n#9
char n#90
char n#91
char n#92
char n#93
char n#94
char n#95
char n#96
char n#97
char n#98
char n#99
unsigned int peephole
unsigned int peephole#0
unsigned int peephole#1
unsigned int peephole#10
unsigned int peephole#11
unsigned int peephole#12
unsigned int peephole#13
unsigned int peephole#14
unsigned int peephole#15
unsigned int peephole#16
unsigned int peephole#17
unsigned int peephole#18
unsigned int peephole#19
unsigned int peephole#2
unsigned int peephole#20
unsigned int peephole#21
unsigned int peephole#22
unsigned int peephole#23
unsigned int peephole#24
unsigned int peephole#25
unsigned int peephole#26
unsigned int peephole#27
unsigned int peephole#28
unsigned int peephole#29
unsigned int peephole#3
unsigned int peephole#30
unsigned int peephole#31
unsigned int peephole#32
unsigned int peephole#33
unsigned int peephole#34
unsigned int peephole#35
unsigned int peephole#36
unsigned int peephole#37
unsigned int peephole#38
unsigned int peephole#39
unsigned int peephole#4
unsigned int peephole#40
unsigned int peephole#41
unsigned int peephole#42
unsigned int peephole#43
unsigned int peephole#44
unsigned int peephole#45
unsigned int peephole#46
unsigned int peephole#47
unsigned int peephole#48
unsigned int peephole#49
unsigned int peephole#5
unsigned int peephole#50
unsigned int peephole#51
unsigned int peephole#52
unsigned int peephole#53
unsigned int peephole#54
unsigned int peephole#55
unsigned int peephole#56
unsigned int peephole#57
unsigned int peephole#58
unsigned int peephole#59
unsigned int peephole#6
unsigned int peephole#60
unsigned int peephole#61
unsigned int peephole#62
unsigned int peephole#63
unsigned int peephole#64
unsigned int peephole#65
unsigned int peephole#66
unsigned int peephole#67
unsigned int peephole#68
unsigned int peephole#69
unsigned int peephole#7
unsigned int peephole#70
unsigned int peephole#71
unsigned int peephole#72
unsigned int peephole#73
unsigned int peephole#74
unsigned int peephole#75
unsigned int peephole#76
unsigned int peephole#77
unsigned int peephole#78
unsigned int peephole#79
unsigned int peephole#8
unsigned int peephole#80
unsigned int peephole#81
unsigned int peephole#82
unsigned int peephole#83
unsigned int peephole#84
unsigned int peephole#85
unsigned int peephole#9
__constant const char play_again[] = "
Play Again (Y/N)?"
__constant char points[] = { 0, 0, 0, 0 }
void random(char k , char n)
bool random::$0
bool random::$1
bool random::$2
char random::k
char random::k#0
char random::k#1
char random::k#2
char random::k#3
char random::k#4
char random::n
char random::n#0
char random::n#1
char random::n#2
char random::n#3
char random::n#4
void read_chrono()
number read_chrono::$0
number read_chrono::$1
unsigned int read_chrono::$2
bool read_chrono::$3
bool read_chrono::$4
number read_chrono::$5
__constant const char red = $1c
char rem8u
char rem8u#0
char rem8u#1
char rem8u#10
char rem8u#100
char rem8u#101
char rem8u#102
char rem8u#103
char rem8u#104
char rem8u#105
char rem8u#106
char rem8u#107
char rem8u#108
char rem8u#109
char rem8u#11
char rem8u#110
char rem8u#111
char rem8u#112
char rem8u#113
char rem8u#114
char rem8u#115
char rem8u#116
char rem8u#117
char rem8u#118
char rem8u#119
char rem8u#12
char rem8u#120
char rem8u#121
char rem8u#122
char rem8u#123
char rem8u#124
char rem8u#125
char rem8u#126
char rem8u#127
char rem8u#128
char rem8u#129
char rem8u#13
char rem8u#130
char rem8u#131
char rem8u#132
char rem8u#133
char rem8u#134
char rem8u#135
char rem8u#136
char rem8u#137
char rem8u#138
char rem8u#139
char rem8u#14
char rem8u#15
char rem8u#16
char rem8u#17
char rem8u#18
char rem8u#19
char rem8u#2
char rem8u#20
char rem8u#21
char rem8u#22
char rem8u#23
char rem8u#24
char rem8u#25
char rem8u#26
char rem8u#27
char rem8u#28
char rem8u#29
char rem8u#3
char rem8u#30
char rem8u#31
char rem8u#32
char rem8u#33
char rem8u#34
char rem8u#35
char rem8u#36
char rem8u#37
char rem8u#38
char rem8u#39
char rem8u#4
char rem8u#40
char rem8u#41
char rem8u#42
char rem8u#43
char rem8u#44
char rem8u#45
char rem8u#46
char rem8u#47
char rem8u#48
char rem8u#49
char rem8u#5
char rem8u#50
char rem8u#51
char rem8u#52
char rem8u#53
char rem8u#54
char rem8u#55
char rem8u#56
char rem8u#57
char rem8u#58
char rem8u#59
char rem8u#6
char rem8u#60
char rem8u#61
char rem8u#62
char rem8u#63
char rem8u#64
char rem8u#65
char rem8u#66
char rem8u#67
char rem8u#68
char rem8u#69
char rem8u#7
char rem8u#70
char rem8u#71
char rem8u#72
char rem8u#73
char rem8u#74
char rem8u#75
char rem8u#76
char rem8u#77
char rem8u#78
char rem8u#79
char rem8u#8
char rem8u#80
char rem8u#81
char rem8u#82
char rem8u#83
char rem8u#84
char rem8u#85
char rem8u#86
char rem8u#87
char rem8u#88
char rem8u#89
char rem8u#9
char rem8u#90
char rem8u#91
char rem8u#92
char rem8u#93
char rem8u#94
char rem8u#95
char rem8u#96
char rem8u#97
char rem8u#98
char rem8u#99
__constant const char reverse_on = $12
__constant const char right = $1d
unsigned int score
unsigned int score#0
unsigned int score#1
unsigned int score#10
unsigned int score#100
unsigned int score#101
unsigned int score#102
unsigned int score#103
unsigned int score#104
unsigned int score#105
unsigned int score#106
unsigned int score#107
unsigned int score#108
unsigned int score#11
unsigned int score#12
unsigned int score#13
unsigned int score#14
unsigned int score#15
unsigned int score#16
unsigned int score#17
unsigned int score#18
unsigned int score#19
unsigned int score#2
unsigned int score#20
unsigned int score#21
unsigned int score#22
unsigned int score#23
unsigned int score#24
unsigned int score#25
unsigned int score#26
unsigned int score#27
unsigned int score#28
unsigned int score#29
unsigned int score#3
unsigned int score#30
unsigned int score#31
unsigned int score#32
unsigned int score#33
unsigned int score#34
unsigned int score#35
unsigned int score#36
unsigned int score#37
unsigned int score#38
unsigned int score#39
unsigned int score#4
unsigned int score#40
unsigned int score#41
unsigned int score#42
unsigned int score#43
unsigned int score#44
unsigned int score#45
unsigned int score#46
unsigned int score#47
unsigned int score#48
unsigned int score#49
unsigned int score#5
unsigned int score#50
unsigned int score#51
unsigned int score#52
unsigned int score#53
unsigned int score#54
unsigned int score#55
unsigned int score#56
unsigned int score#57
unsigned int score#58
unsigned int score#59
unsigned int score#6
unsigned int score#60
unsigned int score#61
unsigned int score#62
unsigned int score#63
unsigned int score#64
unsigned int score#65
unsigned int score#66
unsigned int score#67
unsigned int score#68
unsigned int score#69
unsigned int score#7
unsigned int score#70
unsigned int score#71
unsigned int score#72
unsigned int score#73
unsigned int score#74
unsigned int score#75
unsigned int score#76
unsigned int score#77
unsigned int score#78
unsigned int score#79
unsigned int score#8
unsigned int score#80
unsigned int score#81
unsigned int score#82
unsigned int score#83
unsigned int score#84
unsigned int score#85
unsigned int score#86
unsigned int score#87
unsigned int score#88
unsigned int score#89
unsigned int score#9
unsigned int score#90
unsigned int score#91
unsigned int score#92
unsigned int score#93
unsigned int score#94
unsigned int score#95
unsigned int score#96
unsigned int score#97
unsigned int score#98
unsigned int score#99
char textcolor(char color)
char textcolor::color
char textcolor::color#0
char textcolor::color#1
char textcolor::color#2
char textcolor::color#3
char textcolor::color#4
char textcolor::color#5
char textcolor::color#6
char textcolor::color#7
char textcolor::old
char textcolor::old#0
char textcolor::return
char textcolor::return#0
char textcolor::return#1
char textcolor::return#2
char textcolor::return#3
char textcolor::return#4
char textcolor::return#5
char textcolor::return#6
char textcolor::return#7
char textcolor::return#8
char textcolor::return#9
unsigned int time
unsigned int time#0
unsigned int time#1
unsigned int time#10
unsigned int time#11
unsigned int time#12
unsigned int time#13
unsigned int time#14
unsigned int time#15
unsigned int time#16
unsigned int time#17
unsigned int time#18
unsigned int time#19
unsigned int time#2
unsigned int time#20
unsigned int time#21
unsigned int time#22
unsigned int time#23
unsigned int time#24
unsigned int time#25
unsigned int time#26
unsigned int time#27
unsigned int time#28
unsigned int time#29
unsigned int time#3
unsigned int time#30
unsigned int time#31
unsigned int time#32
unsigned int time#33
unsigned int time#34
unsigned int time#35
unsigned int time#36
unsigned int time#37
unsigned int time#38
unsigned int time#39
unsigned int time#4
unsigned int time#40
unsigned int time#41
unsigned int time#42
unsigned int time#43
unsigned int time#44
unsigned int time#45
unsigned int time#46
unsigned int time#47
unsigned int time#48
unsigned int time#49
unsigned int time#5
unsigned int time#50
unsigned int time#51
unsigned int time#52
unsigned int time#53
unsigned int time#54
unsigned int time#55
unsigned int time#56
unsigned int time#57
unsigned int time#58
unsigned int time#59
unsigned int time#6
unsigned int time#60
unsigned int time#7
unsigned int time#8
unsigned int time#9
unsigned int tu
unsigned int tu#0
unsigned int tu#1
unsigned int tu#10
unsigned int tu#11
unsigned int tu#12
unsigned int tu#13
unsigned int tu#14
unsigned int tu#15
unsigned int tu#16
unsigned int tu#17
unsigned int tu#18
unsigned int tu#19
unsigned int tu#2
unsigned int tu#20
unsigned int tu#21
unsigned int tu#22
unsigned int tu#23
unsigned int tu#24
unsigned int tu#25
unsigned int tu#26
unsigned int tu#27
unsigned int tu#28
unsigned int tu#29
unsigned int tu#3
unsigned int tu#30
unsigned int tu#31
unsigned int tu#32
unsigned int tu#33
unsigned int tu#34
unsigned int tu#35
unsigned int tu#36
unsigned int tu#37
unsigned int tu#38
unsigned int tu#39
unsigned int tu#4
unsigned int tu#40
unsigned int tu#41
unsigned int tu#42
unsigned int tu#43
unsigned int tu#44
unsigned int tu#45
unsigned int tu#46
unsigned int tu#47
unsigned int tu#48
unsigned int tu#49
unsigned int tu#5
unsigned int tu#50
unsigned int tu#51
unsigned int tu#52
unsigned int tu#53
unsigned int tu#54
unsigned int tu#55
unsigned int tu#56
unsigned int tu#57
unsigned int tu#58
unsigned int tu#59
unsigned int tu#6
unsigned int tu#60
unsigned int tu#61
unsigned int tu#62
unsigned int tu#63
unsigned int tu#64
unsigned int tu#65
unsigned int tu#66
unsigned int tu#67
unsigned int tu#68
unsigned int tu#69
unsigned int tu#7
unsigned int tu#70
unsigned int tu#71
unsigned int tu#72
unsigned int tu#73
unsigned int tu#74
unsigned int tu#75
unsigned int tu#76
unsigned int tu#77
unsigned int tu#78
unsigned int tu#79
unsigned int tu#8
unsigned int tu#80
unsigned int tu#81
unsigned int tu#82
unsigned int tu#83
unsigned int tu#84
unsigned int tu#85
unsigned int tu#9
void utoa(unsigned int value , char *buffer , char radix)
bool utoa::$0
bool utoa::$1
char utoa::$10
char utoa::$11
bool utoa::$2
bool utoa::$3
number utoa::$4
bool utoa::$5
bool utoa::$6
bool utoa::$7
bool utoa::$8
unsigned int utoa::$9
char *utoa::buffer
char *utoa::buffer#0
char *utoa::buffer#1
char *utoa::buffer#10
char *utoa::buffer#11
char *utoa::buffer#12
char *utoa::buffer#13
char *utoa::buffer#14
char *utoa::buffer#15
char *utoa::buffer#16
char *utoa::buffer#17
char *utoa::buffer#18
char *utoa::buffer#19
char *utoa::buffer#2
char *utoa::buffer#20
char *utoa::buffer#21
char *utoa::buffer#22
char *utoa::buffer#3
char *utoa::buffer#4
char *utoa::buffer#5
char *utoa::buffer#6
char *utoa::buffer#7
char *utoa::buffer#8
char *utoa::buffer#9
char utoa::digit
char utoa::digit#0
char utoa::digit#1
char utoa::digit#2
char utoa::digit#3
char utoa::digit#4
char utoa::digit#5
char utoa::digit#6
unsigned int utoa::digit_value
unsigned int utoa::digit_value#0
unsigned int utoa::digit_value#1
unsigned int *utoa::digit_values
unsigned int *utoa::digit_values#0
unsigned int *utoa::digit_values#1
unsigned int *utoa::digit_values#10
unsigned int *utoa::digit_values#2
unsigned int *utoa::digit_values#3
unsigned int *utoa::digit_values#4
unsigned int *utoa::digit_values#5
unsigned int *utoa::digit_values#6
unsigned int *utoa::digit_values#7
unsigned int *utoa::digit_values#8
unsigned int *utoa::digit_values#9
char utoa::max_digits
char utoa::max_digits#0
char utoa::max_digits#1
char utoa::max_digits#10
char utoa::max_digits#2
char utoa::max_digits#3
char utoa::max_digits#4
char utoa::max_digits#5
char utoa::max_digits#6
char utoa::max_digits#7
char utoa::max_digits#8
char utoa::max_digits#9
char utoa::radix
char utoa::radix#0
char utoa::radix#1
char utoa::radix#2
char utoa::radix#3
char utoa::radix#4
char utoa::radix#5
char utoa::started
char utoa::started#0
char utoa::started#1
char utoa::started#2
char utoa::started#3
char utoa::started#4
unsigned int utoa::value
unsigned int utoa::value#0
unsigned int utoa::value#1
unsigned int utoa::value#10
unsigned int utoa::value#11
unsigned int utoa::value#12
unsigned int utoa::value#13
unsigned int utoa::value#14
unsigned int utoa::value#15
unsigned int utoa::value#16
unsigned int utoa::value#2
unsigned int utoa::value#3
unsigned int utoa::value#4
unsigned int utoa::value#5
unsigned int utoa::value#6
unsigned int utoa::value#7
unsigned int utoa::value#8
unsigned int utoa::value#9
unsigned int utoa_append(char *buffer , unsigned int value , unsigned int sub)
bool utoa_append::$0
char *utoa_append::buffer
char *utoa_append::buffer#0
char *utoa_append::buffer#1
char *utoa_append::buffer#2
char *utoa_append::buffer#3
char *utoa_append::buffer#4
char utoa_append::digit
char utoa_append::digit#0
char utoa_append::digit#1
char utoa_append::digit#2
char utoa_append::digit#3
char utoa_append::digit#4
unsigned int utoa_append::return
unsigned int utoa_append::return#0
unsigned int utoa_append::return#1
unsigned int utoa_append::return#2
unsigned int utoa_append::return#3
unsigned int utoa_append::return#4
unsigned int utoa_append::sub
unsigned int utoa_append::sub#0
unsigned int utoa_append::sub#1
unsigned int utoa_append::sub#2
unsigned int utoa_append::sub#3
unsigned int utoa_append::value
unsigned int utoa_append::value#0
unsigned int utoa_append::value#1
unsigned int utoa_append::value#2
unsigned int utoa_append::value#3
unsigned int utoa_append::value#4
unsigned int utoa_append::value#5
void wait(char n)
bool wait::$0
bool wait::$1
char wait::n
char wait::n#0
char wait::n#1
char wait::n#10
char wait::n#2
char wait::n#3
char wait::n#4
char wait::n#5
char wait::n#6
char wait::n#7
char wait::n#8
char wait::n#9
void write_score()
bool write_score::$0
bool write_score::$1
bool write_score::$10
bool write_score::$3
bool write_score::$4
bool write_score::$5
bool write_score::$6
bool write_score::$9
unsigned int y
unsigned int y#0
unsigned int y#1
unsigned int y#10
unsigned int y#100
unsigned int y#101
unsigned int y#102
unsigned int y#103
unsigned int y#104
unsigned int y#105
unsigned int y#106
unsigned int y#107
unsigned int y#108
unsigned int y#109
unsigned int y#11
unsigned int y#110
unsigned int y#111
unsigned int y#112
unsigned int y#113
unsigned int y#114
unsigned int y#115
unsigned int y#116
unsigned int y#117
unsigned int y#118
unsigned int y#119
unsigned int y#12
unsigned int y#120
unsigned int y#121
unsigned int y#122
unsigned int y#123
unsigned int y#124
unsigned int y#125
unsigned int y#126
unsigned int y#13
unsigned int y#14
unsigned int y#15
unsigned int y#16
unsigned int y#17
unsigned int y#18
unsigned int y#19
unsigned int y#2
unsigned int y#20
unsigned int y#21
unsigned int y#22
unsigned int y#23
unsigned int y#24
unsigned int y#25
unsigned int y#26
unsigned int y#27
unsigned int y#28
unsigned int y#29
unsigned int y#3
unsigned int y#30
unsigned int y#31
unsigned int y#32
unsigned int y#33
unsigned int y#34
unsigned int y#35
unsigned int y#36
unsigned int y#37
unsigned int y#38
unsigned int y#39
unsigned int y#4
unsigned int y#40
unsigned int y#41
unsigned int y#42
unsigned int y#43
unsigned int y#44
unsigned int y#45
unsigned int y#46
unsigned int y#47
unsigned int y#48
unsigned int y#49
unsigned int y#5
unsigned int y#50
unsigned int y#51
unsigned int y#52
unsigned int y#53
unsigned int y#54
unsigned int y#55
unsigned int y#56
unsigned int y#57
unsigned int y#58
unsigned int y#59
unsigned int y#6
unsigned int y#60
unsigned int y#61
unsigned int y#62
unsigned int y#63
unsigned int y#64
unsigned int y#65
unsigned int y#66
unsigned int y#67
unsigned int y#68
unsigned int y#69
unsigned int y#7
unsigned int y#70
unsigned int y#71
unsigned int y#72
unsigned int y#73
unsigned int y#74
unsigned int y#75
unsigned int y#76
unsigned int y#77
unsigned int y#78
unsigned int y#79
unsigned int y#8
unsigned int y#80
unsigned int y#81
unsigned int y#82
unsigned int y#83
unsigned int y#84
unsigned int y#85
unsigned int y#86
unsigned int y#87
unsigned int y#88
unsigned int y#89
unsigned int y#9
unsigned int y#90
unsigned int y#91
unsigned int y#92
unsigned int y#93
unsigned int y#94
unsigned int y#95
unsigned int y#96
unsigned int y#97
unsigned int y#98
unsigned int y#99
__constant const char yellow = $9e
__constant const char your_score[] = "
Your Score: "
unsigned int z
unsigned int z#0
unsigned int z#1
unsigned int z#10
unsigned int z#100
unsigned int z#101
unsigned int z#102
unsigned int z#103
unsigned int z#104
unsigned int z#105
unsigned int z#106
unsigned int z#107
unsigned int z#108
unsigned int z#109
unsigned int z#11
unsigned int z#110
unsigned int z#111
unsigned int z#112
unsigned int z#113
unsigned int z#114
unsigned int z#115
unsigned int z#116
unsigned int z#117
unsigned int z#118
unsigned int z#119
unsigned int z#12
unsigned int z#120
unsigned int z#121
unsigned int z#122
unsigned int z#123
unsigned int z#124
unsigned int z#125
unsigned int z#126
unsigned int z#127
unsigned int z#128
unsigned int z#129
unsigned int z#13
unsigned int z#130
unsigned int z#131
unsigned int z#132
unsigned int z#133
unsigned int z#134
unsigned int z#135
unsigned int z#136
unsigned int z#14
unsigned int z#15
unsigned int z#16
unsigned int z#17
unsigned int z#18
unsigned int z#19
unsigned int z#2
unsigned int z#20
unsigned int z#21
unsigned int z#22
unsigned int z#23
unsigned int z#24
unsigned int z#25
unsigned int z#26
unsigned int z#27
unsigned int z#28
unsigned int z#29
unsigned int z#3
unsigned int z#30
unsigned int z#31
unsigned int z#32
unsigned int z#33
unsigned int z#34
unsigned int z#35
unsigned int z#36
unsigned int z#37
unsigned int z#38
unsigned int z#39
unsigned int z#4
unsigned int z#40
unsigned int z#41
unsigned int z#42
unsigned int z#43
unsigned int z#44
unsigned int z#45
unsigned int z#46
unsigned int z#47
unsigned int z#48
unsigned int z#49
unsigned int z#5
unsigned int z#50
unsigned int z#51
unsigned int z#52
unsigned int z#53
unsigned int z#54
unsigned int z#55
unsigned int z#56
unsigned int z#57
unsigned int z#58
unsigned int z#59
unsigned int z#6
unsigned int z#60
unsigned int z#61
unsigned int z#62
unsigned int z#63
unsigned int z#64
unsigned int z#65
unsigned int z#66
unsigned int z#67
unsigned int z#68
unsigned int z#69
unsigned int z#7
unsigned int z#70
unsigned int z#71
unsigned int z#72
unsigned int z#73
unsigned int z#74
unsigned int z#75
unsigned int z#76
unsigned int z#77
unsigned int z#78
unsigned int z#79
unsigned int z#8
unsigned int z#80
unsigned int z#81
unsigned int z#82
unsigned int z#83
unsigned int z#84
unsigned int z#85
unsigned int z#86
unsigned int z#87
unsigned int z#88
unsigned int z#89
unsigned int z#9
unsigned int z#90
unsigned int z#91
unsigned int z#92
unsigned int z#93
unsigned int z#94
unsigned int z#95
unsigned int z#96
unsigned int z#97
unsigned int z#98
unsigned int z#99
Adding number conversion cast (unumber) 0 in memset::$0 = memset::num#2 > 0
Adding number conversion cast (unumber) 5 in utoa::max_digits#1 = 5
Adding number conversion cast (unumber) 4 in utoa::max_digits#2 = 4
Adding number conversion cast (unumber) 6 in utoa::max_digits#3 = 6
Adding number conversion cast (unumber) $10 in utoa::max_digits#4 = $10
Adding number conversion cast (unumber) 0 in *utoa::buffer#2 = 0
Adding number conversion cast (unumber) 1 in utoa::$4 = utoa::max_digits#5 - 1
Adding number conversion cast (unumber) utoa::$4 in utoa::$4 = utoa::max_digits#5 - (unumber)1
Adding number conversion cast (unumber) 0 in *utoa::buffer#3 = 0
Adding number conversion cast (unumber) 1 in utoa::started#1 = 1
Adding number conversion cast (unumber) $19 in gotoxy::$0 = gotoxy::y#4 > $19
Adding number conversion cast (unumber) $28 in gotoxy::$2 = gotoxy::x#4 >= $28
Adding number conversion cast (unumber) 0 in gotoxy::y#0 = 0
Adding number conversion cast (unumber) $28 in gotoxy::line_offset#0 = gotoxy::$7 * $28
Adding number conversion cast (unumber) 0 in gotoxy::x#0 = 0
Adding number conversion cast (unumber) $28 in cputc::$1 = conio_cursor_x == $28
Adding number conversion cast (unumber) $28 in conio_line_text = conio_line_text + $28
Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_color + $28
Adding number conversion cast (unumber) 0 in conio_cursor_x = 0
Adding number conversion cast (unumber) 0 in cputs::$2 = 0 != cputs::$0
Adding number conversion cast (unumber) $19 in cscroll::$0 = conio_cursor_y == $19
Adding number conversion cast (unumber) 0 in cscroll::$7 = 0 != conio_scroll_enable
Adding number conversion cast (unumber) $28 in memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#0 = $19*$28-$28
Adding number conversion cast (unumber) $28 in memcpy::source#1 = (void *)COLORRAM+$28
Adding number conversion cast (unumber) $19*$28-$28 in memcpy::num#1 = $19*$28-$28
Adding number conversion cast (unumber) $28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-$28
Adding number conversion cast (unumber) $19*$28 in memset::str#0 = (void *)DEFAULT_SCREEN+$19*$28-(unumber)$28
Adding number conversion cast (unumber) $28 in memset::num#0 = $28
Adding number conversion cast (unumber) $28 in memset::str#1 = (void *)COLORRAM+$19*$28-$28
Adding number conversion cast (unumber) $19*$28 in memset::str#1 = (void *)COLORRAM+$19*$28-(unumber)$28
Adding number conversion cast (unumber) $28 in memset::num#1 = $28
Adding number conversion cast (unumber) $28 in conio_line_text = conio_line_text - $28
Adding number conversion cast (unumber) $28 in conio_line_color = conio_line_color - $28
Adding number conversion cast (unumber) 0 in gotoxy::x#1 = 0
Adding number conversion cast (unumber) 0 in gotoxy::y#1 = 0
Adding number conversion cast (unumber) $19 in conio_c64_init::$0 = conio_c64_init::line#0 >= $19
Adding number conversion cast (unumber) 0 in gotoxy::x#2 = 0
Adding number conversion cast (unumber) $19-1 in conio_c64_init::line#1 = $19-1
Adding number conversion cast (unumber) 1 in divr8u::$0 = divr8u::rem#5 << 1
Adding number conversion cast (unumber) $80 in divr8u::$1 = divr8u::dividend#3 & $80
Adding number conversion cast (unumber) divr8u::$1 in divr8u::$1 = divr8u::dividend#3 & (unumber)$80
Adding number conversion cast (unumber) 0 in divr8u::$2 = divr8u::$1 != 0
Adding number conversion cast (unumber) 1 in divr8u::$5 = divr8u::dividend#4 << 1
Adding number conversion cast (unumber) 1 in divr8u::$6 = divr8u::quotient#3 << 1
Adding number conversion cast (unumber) 1 in divr8u::$4 = divr8u::rem#7 | 1
Adding number conversion cast (unumber) divr8u::$4 in divr8u::$4 = divr8u::rem#7 | (unumber)1
Adding number conversion cast (unumber) 0 in divr8u::rem#3 = 0
Adding number conversion cast (unumber) 0 in z#0 = 0
Adding number conversion cast (unumber) $1fa in clear_screen::$2 = z#20 < $1fa
Adding number conversion cast (unumber) $1e00 in clear_screen::$3 = $1e00 + z#21
Adding number conversion cast (unumber) clear_screen::$3 in clear_screen::$3 = (unumber)$1e00 + z#21
Adding number conversion cast (unumber) clear_screen::$4 in clear_screen::$4 = clear_screen::$3 + c
Adding number conversion cast (unumber) $1e00 in clear_screen::$5 = $1e00 + z#21
Adding number conversion cast (unumber) clear_screen::$5 in clear_screen::$5 = (unumber)$1e00 + z#21
Adding number conversion cast (unumber) 0 in gotoxy::x#3 = 0
Adding number conversion cast (unumber) 0 in gotoxy::y#3 = 0
Adding number conversion cast (unumber) $fde8 in write_score::$0 = score#13 > $fde8
Adding number conversion cast (unumber) 0 in m = 0
Adding number conversion cast (unumber) 0 in score#0 = 0
Adding number conversion cast (unumber) 4 in write_score::$9 = m < 4
Adding number conversion cast (unumber) $a in utoa::radix#0 = $a
Adding number conversion cast (unumber) 9 in write_score::$3 = score#15 > 9
Adding number conversion cast (unumber) $63 in write_score::$5 = score#16 > $63
Adding number conversion cast (unumber) 0 in points[2] = buffer[0]
Adding number conversion cast (unumber) 2 in points[2] = buffer[(unumber)0]
Adding number conversion cast (unumber) 1 in points[3] = buffer[1]
Adding number conversion cast (unumber) 3 in points[3] = buffer[(unumber)1]
Adding number conversion cast (unumber) 4 in *((char *)$d3) = 4
Adding number conversion cast (unumber) 0 in m = 0
Adding number conversion cast (unumber) 0 in points[1] = buffer[0]
Adding number conversion cast (unumber) 1 in points[1] = buffer[(unumber)0]
Adding number conversion cast (unumber) 1 in points[2] = buffer[1]
Adding number conversion cast (unumber) 2 in points[2] = buffer[(unumber)1]
Adding number conversion cast (unumber) 2 in points[3] = buffer[2]
Adding number conversion cast (unumber) 3 in points[3] = buffer[(unumber)2]
Adding number conversion cast (unumber) 4 in write_score::$10 = m < 4
Adding number conversion cast (unumber) 0 in m = 0
Adding number conversion cast (unumber) 0 in z#3 = 0
Adding number conversion cast (unumber) $21c in wait::$1 = z#23 < $21c
Adding number conversion cast (unumber) $100 in read_chrono::$0 = m * $100
Adding number conversion cast (unumber) read_chrono::$0 in read_chrono::$0 = m * (unumber)$100
Adding number conversion cast (unumber) read_chrono::$1 in read_chrono::$1 = read_chrono::$0 + l
Adding number conversion cast (unumber) $3c in div16u8u::divisor#0 = $3c
Adding number conversion cast (unumber) 7 in *((char *)$1e15+c) = 7
Adding number conversion cast (unumber) $1e15 in *((char *)$1e15+c) = ((unumber)) 7
Adding number conversion cast (unumber) $b9 in *((char *)$1e15) = $b9
Adding number conversion cast (unumber) $a in read_chrono::$3 = time#0 < $a
Adding number conversion cast (unumber) $b9 in read_chrono::$5 = $b9 - time#9
Adding number conversion cast (unumber) read_chrono::$5 in read_chrono::$5 = (unumber)$b9 - time#9
Adding number conversion cast (unumber) 8 in *((char *)$900f) = 8
Adding number conversion cast (unumber) 0 in m = 0
Adding number conversion cast (unumber) $28 in main::$2 = m < $28
Adding number conversion cast (unumber) $1c00 in main::$3 = $1c00 + m
Adding number conversion cast (unumber) main::$3 in main::$3 = (unumber)$1c00 + m
Adding number conversion cast (unumber) $20 in clear_screen::n#0 = $20
Adding number conversion cast (unumber) 0 in clear_screen::m#0 = 0
Adding number conversion cast (unumber) 7 in textcolor::color#0 = 7
Adding number conversion cast (unumber) 1 in textcolor::color#1 = 1
Adding number conversion cast (unumber) 2 in textcolor::color#2 = 2
Adding number conversion cast (unumber) 5 in main::$11 = l > 5
Adding number conversion cast (unumber) 4 in clear_screen::n#1 = 4
Adding number conversion cast (unumber) 0 in clear_screen::m#1 = 0
Adding number conversion cast (unumber) $ff in *((char *)$9005) = $ff
Adding number conversion cast (unumber) 1 in k#0 = 1
Adding number conversion cast (unumber) $16 in main::$16 = k#6 < $16
Adding number conversion cast (unumber) 2 in n#0 = 2
Adding number conversion cast (unumber) 2 in *((char *)$1ff9+c) = 2
Adding number conversion cast (unumber) $1ff9 in *((char *)$1ff9+c) = ((unumber)) 2
Adding number conversion cast (unumber) 1 in z#8 = 1
Adding number conversion cast (unumber) 1 in main::$23 = l > 1
Adding number conversion cast (unumber) $16 in main::$18 = n#7 < $16
Adding number conversion cast (unumber) $1f1f in peephole#0 = $1f1f
Adding number conversion cast (unumber) $f in *((char *)$900e) = $f
Adding number conversion cast (unumber) 0 in score#2 = 0
Adding number conversion cast (unumber) 1 in tu#0 = 1
Adding number conversion cast (unumber) $50 in chrout::petscii = $50
Adding number conversion cast (unumber) $54 in chrout::petscii = $54
Adding number conversion cast (unumber) $53 in chrout::petscii = $53
Adding number conversion cast (unumber) $3a in chrout::petscii = $3a
Adding number conversion cast (unumber) $12 in *((char *)$d3) = $12
Adding number conversion cast (unumber) 0 in j#0 = 0
Adding number conversion cast (unumber) 7 in main::$25 = 7 - l
Adding number conversion cast (unumber) main::$25 in main::$25 = (unumber)7 - l
Adding number conversion cast (unumber) 3 in main::$26 = 3 * l
Adding number conversion cast (unumber) main::$26 in main::$26 = (unumber)3 * l
Adding number conversion cast (unumber) $1a in main::$27 = $1a - main::$26
Adding number conversion cast (unumber) main::$27 in main::$27 = (unumber)$1a - main::$26
Adding number conversion cast (unumber) $1f9 in main::$30 = main::$29 > $1f9
Adding number conversion cast (unumber) 1 in j#1 = 1
Adding number conversion cast (unumber) 1 in main::$36 = main::$35 + 1
Adding number conversion cast (unumber) main::$36 in main::$36 = main::$35 + (unumber)1
Adding number conversion cast (unumber) $1fa in main::$37 = z#9 < $1fa
Adding number conversion cast (unumber) 4 in main::$44 = j#13 < 4
Adding number conversion cast (unumber) $a in *((char *)$d3) = $a
Adding number conversion cast (unumber) 0 in j#4 = 0
Adding number conversion cast (unumber) 5 in main::$49 = j#16 < 5
Adding number conversion cast (unumber) $f in *((char *)$d3) = $f
Adding number conversion cast (unumber) $a in main::$54 = tu#6 < $a
Adding number conversion cast (unumber) $30 in main::$57 = $30 + tu#7
Adding number conversion cast (unumber) main::$57 in main::$57 = (unumber)$30 + tu#7
Adding number conversion cast (unumber) $31 in chrout::petscii = $31
Adding number conversion cast (unumber) $30 in chrout::petscii = $30
Adding number conversion cast (unumber) 0 in random::k#1 = 0
Adding number conversion cast (unumber) $ff in random::n#1 = $ff
Adding number conversion cast (unumber) 0 in random::k#2 = 0
Adding number conversion cast (unumber) $ff in random::n#2 = $ff
Adding number conversion cast (unumber) $1e15 in main::$61 = m + $1e15
Adding number conversion cast (unumber) main::$61 in main::$61 = m + (unumber)$1e15
Adding number conversion cast (unumber) main::$62 in main::$62 = main::$61 + duck#6
Adding number conversion cast (unumber) $1fe3 in main::$63 = duck#1 > $1fe3
Adding number conversion cast (unumber) 1 in main::$66 = duck#1 + 1
Adding number conversion cast (unumber) main::$66 in main::$66 = duck#1 + (unumber)1
Adding number conversion cast (unumber) $16 in main::$69 = duck#1 + $16
Adding number conversion cast (unumber) main::$69 in main::$69 = duck#1 + (unumber)$16
Adding number conversion cast (unumber) $17 in main::$72 = duck#1 + $17
Adding number conversion cast (unumber) main::$72 in main::$72 = duck#1 + (unumber)$17
Adding number conversion cast (unumber) 0 in time#2 = 0
Adding number conversion cast (unumber) $a in main::$76 = time#11 < $a
Adding number conversion cast (unumber) $7f in *((char *)$9122) = $7f
Adding number conversion cast (unumber) $ff in *((char *)$9122) = $ff
Adding number conversion cast (unumber) $10 in main::$78 = $10 & m
Adding number conversion cast (unumber) main::$78 in main::$78 = (unumber)$10 & m
Adding number conversion cast (unumber) 0 in main::$79 = main::$78 == 0
Adding number conversion cast (unumber) $a in main::$147 = score#19 - $a
Adding number conversion cast (unumber) main::$147 in main::$147 = score#19 - (unumber)$a
Adding number conversion cast (unumber) $82 in *((char *)$900d) = $82
Adding number conversion cast (unumber) $14 in wait::n#0 = $14
Adding number conversion cast (unumber) 0 in *((char *)$900d) = 0
Adding number conversion cast (unumber) 0 in *((char *)main::$150) = 0
Adding number conversion cast (unumber) 1 in main::$151 = duck#7 + 1
Adding number conversion cast (unumber) main::$151 in main::$151 = duck#7 + (unumber)1
Adding number conversion cast (unumber) main::$152 in main::$152 = main::$151 + c
Adding number conversion cast (unumber) 0 in *((char *)main::$152) = 0
Adding number conversion cast (unumber) $16 in main::$153 = duck#7 + $16
Adding number conversion cast (unumber) main::$153 in main::$153 = duck#7 + (unumber)$16
Adding number conversion cast (unumber) main::$154 in main::$154 = main::$153 + c
Adding number conversion cast (unumber) 0 in *((char *)main::$154) = 0
Adding number conversion cast (unumber) $17 in main::$155 = duck#7 + $17
Adding number conversion cast (unumber) main::$155 in main::$155 = duck#7 + (unumber)$17
Adding number conversion cast (unumber) main::$156 in main::$156 = main::$155 + c
Adding number conversion cast (unumber) 0 in *((char *)main::$156) = 0
Adding number conversion cast (unumber) $b in main::$157 = tu#9 < $b
Adding number conversion cast (unumber) $80 in main::$81 = $80 & n#9
Adding number conversion cast (unumber) main::$81 in main::$81 = (unumber)$80 & n#9
Adding number conversion cast (unumber) 0 in main::$82 = main::$81 == 0
Adding number conversion cast (unumber) 4 in main::$84 = 4 & m
Adding number conversion cast (unumber) main::$84 in main::$84 = (unumber)4 & m
Adding number conversion cast (unumber) 0 in main::$85 = main::$84 == 0
Adding number conversion cast (unumber) 8 in main::$88 = 8 & m
Adding number conversion cast (unumber) main::$88 in main::$88 = (unumber)8 & m
Adding number conversion cast (unumber) 0 in main::$89 = main::$88 == 0
Adding number conversion cast (unumber) $16 in main::$87 = y#11 - $16
Adding number conversion cast (unumber) main::$87 in main::$87 = y#11 - (unumber)$16
Adding number conversion cast (unumber) $20 in main::$92 = $20 & m
Adding number conversion cast (unumber) main::$92 in main::$92 = (unumber)$20 & m
Adding number conversion cast (unumber) 0 in main::$93 = main::$92 == 0
Adding number conversion cast (unumber) $16 in main::$91 = y#12 + $16
Adding number conversion cast (unumber) main::$91 in main::$91 = y#12 + (unumber)$16
Adding number conversion cast (unumber) 1 in main::$104 = y#13 + 1
Adding number conversion cast (unumber) main::$104 in main::$104 = y#13 + (unumber)1
Adding number conversion cast (unumber) $16 in main::$107 = y#13 + $16
Adding number conversion cast (unumber) main::$107 in main::$107 = y#13 + (unumber)$16
Adding number conversion cast (unumber) $17 in main::$110 = y#13 + $17
Adding number conversion cast (unumber) main::$110 in main::$110 = y#13 + (unumber)$17
Adding number conversion cast (unumber) $1e16 in main::$113 = y#13 > $1e16
Adding number conversion cast (unumber) $1fe3 in main::$115 = y#13 < $1fe3
Adding number conversion cast (unumber) $82 in *((char *)$900d) = $82
Adding number conversion cast (unumber) $a in main::$100 = score#21 - $a
Adding number conversion cast (unumber) main::$100 in main::$100 = score#21 - (unumber)$a
Adding number conversion cast (unumber) $a in wait::n#1 = $a
Adding number conversion cast (unumber) $c in main::$96 = $c - time#13
Adding number conversion cast (unumber) main::$96 in main::$96 = (unumber)$c - time#13
Adding number conversion cast (unumber) $a in main::$97 = main::$96 * $a
Adding number conversion cast (unumber) main::$97 in main::$97 = main::$96 * (unumber)$a
Adding number conversion cast (unumber) main::$98 in main::$98 = score#23 + main::$97
Adding number conversion cast (unumber) $a in wait::n#2 = $a
Adding number conversion cast (unumber) $a in time#4 = $a
Adding number conversion cast (unumber) 0 in *((char *)$900d) = 0
Adding number conversion cast (unumber) $fd in *((char *)peephole#7) = $fd
Adding number conversion cast (unumber) 1 in *((char *)main::$125) = 1
Adding number conversion cast (unumber) 1 in main::$126 = peephole#7 + 1
Adding number conversion cast (unumber) main::$126 in main::$126 = peephole#7 + (unumber)1
Adding number conversion cast (unumber) $ed in *((char *)main::$126) = $ed
Adding number conversion cast (unumber) 1 in main::$127 = peephole#7 + 1
Adding number conversion cast (unumber) main::$127 in main::$127 = peephole#7 + (unumber)1
Adding number conversion cast (unumber) main::$128 in main::$128 = main::$127 + c
Adding number conversion cast (unumber) 1 in *((char *)main::$128) = 1
Adding number conversion cast (unumber) $16 in main::$129 = peephole#7 + $16
Adding number conversion cast (unumber) main::$129 in main::$129 = peephole#7 + (unumber)$16
Adding number conversion cast (unumber) $ee in *((char *)main::$129) = $ee
Adding number conversion cast (unumber) $16 in main::$130 = peephole#7 + $16
Adding number conversion cast (unumber) main::$130 in main::$130 = peephole#7 + (unumber)$16
Adding number conversion cast (unumber) main::$131 in main::$131 = main::$130 + c
Adding number conversion cast (unumber) 1 in *((char *)main::$131) = 1
Adding number conversion cast (unumber) $17 in main::$132 = peephole#7 + $17
Adding number conversion cast (unumber) main::$132 in main::$132 = peephole#7 + (unumber)$17
Adding number conversion cast (unumber) $f0 in *((char *)main::$132) = $f0
Adding number conversion cast (unumber) $17 in main::$133 = peephole#7 + $17
Adding number conversion cast (unumber) main::$133 in main::$133 = peephole#7 + (unumber)$17
Adding number conversion cast (unumber) main::$134 in main::$134 = main::$133 + c
Adding number conversion cast (unumber) 1 in *((char *)main::$134) = 1
Adding number conversion cast (unumber) 5 in wait::n#3 = 5
Adding number conversion cast (unumber) 0 in *((char *)duck#9) = 0
Adding number conversion cast (unumber) 7 in *((char *)main::$136) = 7
Adding number conversion cast (unumber) 1 in main::$137 = duck#9 + 1
Adding number conversion cast (unumber) main::$137 in main::$137 = duck#9 + (unumber)1
Adding number conversion cast (unumber) 1 in *((char *)main::$137) = 1
Adding number conversion cast (unumber) 1 in main::$138 = duck#9 + 1
Adding number conversion cast (unumber) main::$138 in main::$138 = duck#9 + (unumber)1
Adding number conversion cast (unumber) main::$139 in main::$139 = main::$138 + c
Adding number conversion cast (unumber) 7 in *((char *)main::$139) = 7
Adding number conversion cast (unumber) $16 in main::$140 = duck#9 + $16
Adding number conversion cast (unumber) main::$140 in main::$140 = duck#9 + (unumber)$16
Adding number conversion cast (unumber) 2 in *((char *)main::$140) = 2
Adding number conversion cast (unumber) $16 in main::$141 = duck#9 + $16
Adding number conversion cast (unumber) main::$141 in main::$141 = duck#9 + (unumber)$16
Adding number conversion cast (unumber) main::$142 in main::$142 = main::$141 + c
Adding number conversion cast (unumber) 7 in *((char *)main::$142) = 7
Adding number conversion cast (unumber) $17 in main::$143 = duck#9 + $17
Adding number conversion cast (unumber) main::$143 in main::$143 = duck#9 + (unumber)$17
Adding number conversion cast (unumber) 3 in *((char *)main::$143) = 3
Adding number conversion cast (unumber) $17 in main::$144 = duck#9 + $17
Adding number conversion cast (unumber) main::$144 in main::$144 = duck#9 + (unumber)$17
Adding number conversion cast (unumber) main::$145 in main::$145 = main::$144 + c
Adding number conversion cast (unumber) 7 in *((char *)main::$145) = 7
Adding number conversion cast (unumber) 5 in wait::n#4 = 5
Adding number conversion cast (unumber) 0 in *((char *)main::$118) = 0
Adding number conversion cast (unumber) 1 in main::$120 = main::$119 + 1
Adding number conversion cast (unumber) main::$120 in main::$120 = main::$119 + (unumber)1
Adding number conversion cast (unumber) 0 in *((char *)main::$120) = 0
Adding number conversion cast (unumber) $16 in main::$122 = main::$121 + $16
Adding number conversion cast (unumber) main::$122 in main::$122 = main::$121 + (unumber)$16
Adding number conversion cast (unumber) 0 in *((char *)main::$122) = 0
Adding number conversion cast (unumber) $17 in main::$124 = main::$123 + $17
Adding number conversion cast (unumber) main::$124 in main::$124 = main::$123 + (unumber)$17
Adding number conversion cast (unumber) 0 in *((char *)main::$124) = 0
Adding number conversion cast (unumber) 4 in clear_screen::n#2 = 4
Adding number conversion cast (unumber) 0 in clear_screen::m#2 = 0
Adding number conversion cast (unumber) $f0 in *((char *)$9005) = $f0
Adding number conversion cast (unumber) 7 in textcolor::color#3 = 7
Adding number conversion cast (unumber) 2 in textcolor::color#4 = 2
Adding number conversion cast (unumber) 3 in textcolor::color#5 = 3
Adding number conversion cast (unumber) $a in utoa::radix#1 = $a
Adding number conversion cast (unumber) 1 in textcolor::color#6 = 1
Adding number conversion cast (unumber) $b in main::$173 = j#6 != $b
Adding number conversion cast (unumber) $1c in main::$174 = j#6 != $1c
Adding number conversion cast (unumber) $b in main::$176 = j#19 == $b
Successful SSA optimization PassNAddNumberTypeConversions
Inlining cast memcpy::src#0 = (char *)memcpy::source#2
Inlining cast memcpy::dst#0 = (char *)memcpy::destination#2
Inlining cast memset::dst#0 = (char *)memset::str#3
Inlining cast utoa::max_digits#1 = (unumber)5
Inlining cast utoa::max_digits#2 = (unumber)4
Inlining cast utoa::max_digits#3 = (unumber)6
Inlining cast utoa::max_digits#4 = (unumber)$10
Inlining cast *utoa::buffer#2 = (unumber)0
Inlining cast *utoa::buffer#3 = (unumber)0
Inlining cast utoa::started#1 = (unumber)1
Inlining cast gotoxy::y#0 = (unumber)0
Inlining cast gotoxy::x#0 = (unumber)0
Inlining cast conio_cursor_x = (unumber)0
Inlining cast memcpy::num#0 = (unumber)$19*$28-$28
Inlining cast memcpy::num#1 = (unumber)$19*$28-$28
Inlining cast memset::num#0 = (unumber)$28
Inlining cast memset::num#1 = (unumber)$28
Inlining cast gotoxy::x#1 = (unumber)0
Inlining cast gotoxy::y#1 = (unumber)0
Inlining cast gotoxy::x#2 = (unumber)0
Inlining cast conio_c64_init::line#1 = (unumber)$19-1
Inlining cast divr8u::rem#3 = (unumber)0
Inlining cast z#0 = (unumber)0
Inlining cast gotoxy::x#3 = (unumber)0
Inlining cast gotoxy::y#3 = (unumber)0
Inlining cast m = (unumber)0
Inlining cast score#0 = (unumber)0
Inlining cast utoa::radix#0 = (unumber)$a
Inlining cast *((char *)$d3) = (unumber)4
Inlining cast m = (unumber)0
Inlining cast m = (unumber)0
Inlining cast z#3 = (unumber)0
Inlining cast div16u8u::divisor#0 = (unumber)$3c
Inlining cast *((char *)(unumber)$1e15+c) = (unumber)7
Inlining cast *((char *)$1e15) = (unumber)$b9
Inlining cast *((char *)$900f) = (unumber)8
Inlining cast m = (unumber)0
Inlining cast clear_screen::n#0 = (unumber)$20
Inlining cast clear_screen::m#0 = (unumber)0
Inlining cast textcolor::color#0 = (unumber)7
Inlining cast textcolor::color#1 = (unumber)1
Inlining cast textcolor::color#2 = (unumber)2
Inlining cast clear_screen::n#1 = (unumber)4
Inlining cast clear_screen::m#1 = (unumber)0
Inlining cast *((char *)$9005) = (unumber)$ff
Inlining cast k#0 = (unumber)1
Inlining cast n#0 = (unumber)2
Inlining cast *((char *)(unumber)$1ff9+c) = (unumber)2
Inlining cast z#8 = (unumber)1
Inlining cast peephole#0 = (unumber)$1f1f
Inlining cast *((char *)$900e) = (unumber)$f
Inlining cast score#2 = (unumber)0
Inlining cast tu#0 = (unumber)1
Inlining cast chrout::petscii = (unumber)$50
Inlining cast chrout::petscii = (unumber)$54
Inlining cast chrout::petscii = (unumber)$53
Inlining cast chrout::petscii = (unumber)$3a
Inlining cast *((char *)$d3) = (unumber)$12
Inlining cast j#0 = (unumber)0
Inlining cast j#1 = (unumber)1
Inlining cast *((char *)$d3) = (unumber)$a
Inlining cast j#4 = (unumber)0
Inlining cast *((char *)$d3) = (unumber)$f
Inlining cast chrout::petscii = (unumber)$31
Inlining cast chrout::petscii = (unumber)$30
Inlining cast random::k#1 = (unumber)0
Inlining cast random::n#1 = (unumber)$ff
Inlining cast random::k#2 = (unumber)0
Inlining cast random::n#2 = (unumber)$ff
Inlining cast time#2 = (unumber)0
Inlining cast *((char *)$9122) = (unumber)$7f
Inlining cast *((char *)$9122) = (unumber)$ff
Inlining cast *((char *)$900d) = (unumber)$82
Inlining cast wait::n#0 = (unumber)$14
Inlining cast *((char *)$900d) = (unumber)0
Inlining cast *((char *)main::$150) = (unumber)0
Inlining cast *((char *)main::$152) = (unumber)0
Inlining cast *((char *)main::$154) = (unumber)0
Inlining cast *((char *)main::$156) = (unumber)0
Inlining cast *((char *)$900d) = (unumber)$82
Inlining cast wait::n#1 = (unumber)$a
Inlining cast wait::n#2 = (unumber)$a
Inlining cast time#4 = (unumber)$a
Inlining cast *((char *)$900d) = (unumber)0
Inlining cast *((char *)peephole#7) = (unumber)$fd
Inlining cast *((char *)main::$125) = (unumber)1
Inlining cast *((char *)main::$126) = (unumber)$ed
Inlining cast *((char *)main::$128) = (unumber)1
Inlining cast *((char *)main::$129) = (unumber)$ee
Inlining cast *((char *)main::$131) = (unumber)1
Inlining cast *((char *)main::$132) = (unumber)$f0
Inlining cast *((char *)main::$134) = (unumber)1
Inlining cast wait::n#3 = (unumber)5
Inlining cast *((char *)duck#9) = (unumber)0
Inlining cast *((char *)main::$136) = (unumber)7
Inlining cast *((char *)main::$137) = (unumber)1
Inlining cast *((char *)main::$139) = (unumber)7
Inlining cast *((char *)main::$140) = (unumber)2
Inlining cast *((char *)main::$142) = (unumber)7
Inlining cast *((char *)main::$143) = (unumber)3
Inlining cast *((char *)main::$145) = (unumber)7
Inlining cast wait::n#4 = (unumber)5
Inlining cast *((char *)main::$118) = (unumber)0
Inlining cast *((char *)main::$120) = (unumber)0
Inlining cast *((char *)main::$122) = (unumber)0
Inlining cast *((char *)main::$124) = (unumber)0
Inlining cast clear_screen::n#2 = (unumber)4
Inlining cast clear_screen::m#2 = (unumber)0
Inlining cast *((char *)$9005) = (unumber)$f0
Inlining cast textcolor::color#3 = (unumber)7
Inlining cast textcolor::color#4 = (unumber)2
Inlining cast textcolor::color#5 = (unumber)3
Inlining cast utoa::radix#1 = (unumber)$a
Inlining cast textcolor::color#6 = (unumber)1
Successful SSA optimization Pass2InlineCast
Simplifying constant pointer cast (char *) 55296
Simplifying constant pointer cast (char *) 1024
Simplifying constant pointer cast (char *) 214
Simplifying constant integer cast 0
Simplifying constant integer cast 5
Simplifying constant integer cast 4
Simplifying constant integer cast 6
Simplifying constant integer cast $10
Simplifying constant integer cast 0
Simplifying constant integer cast 1
Simplifying constant integer cast 0
Simplifying constant integer cast 1
Simplifying constant integer cast $19
Simplifying constant integer cast $28
Simplifying constant integer cast 0
Simplifying constant integer cast $28
Simplifying constant integer cast 0
Simplifying constant integer cast $28
Simplifying constant integer cast $28
Simplifying constant integer cast $28
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast $19
Simplifying constant integer cast 0
Simplifying constant integer cast $28
Simplifying constant integer cast $28
Simplifying constant integer cast $28
Simplifying constant integer cast $28
Simplifying constant integer cast $28
Simplifying constant integer cast $28
Simplifying constant integer cast $28
Simplifying constant integer cast $28
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast $19
Simplifying constant integer cast 0
Simplifying constant integer cast 1
Simplifying constant integer cast $80
Simplifying constant integer cast 0
Simplifying constant integer cast 1
Simplifying constant integer cast 1
Simplifying constant integer cast 1
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast $1fa
Simplifying constant integer cast $1e00
Simplifying constant integer cast $1e00
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant pointer cast (char *) 37140
Simplifying constant integer cast $fde8
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 4
Simplifying constant integer cast $a
Simplifying constant integer cast 9
Simplifying constant integer cast $63
Simplifying constant integer cast 0
Simplifying constant integer cast 2
Simplifying constant integer cast 1
Simplifying constant integer cast 3
Simplifying constant integer cast 4
Simplifying constant pointer cast (char *) 211
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 1
Simplifying constant integer cast 1
Simplifying constant integer cast 2
Simplifying constant integer cast 2
Simplifying constant integer cast 3
Simplifying constant integer cast 4
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast $21c
Simplifying constant integer cast $100
Simplifying constant integer cast $3c
Simplifying constant integer cast 7
Simplifying constant integer cast $1e15
Simplifying constant integer cast $b9
Simplifying constant pointer cast (char *) 7701
Simplifying constant integer cast $a
Simplifying constant integer cast $b9
Simplifying constant pointer cast (char *) 7701
Simplifying constant integer cast 8
Simplifying constant pointer cast (char *) 36879
Simplifying constant integer cast 0
Simplifying constant integer cast $28
Simplifying constant integer cast $1c00
Simplifying constant integer cast $20
Simplifying constant integer cast 0
Simplifying constant integer cast 7
Simplifying constant integer cast 1
Simplifying constant integer cast 2
Simplifying constant pointer cast (char *) 197
Simplifying constant integer cast 5
Simplifying constant integer cast 4
Simplifying constant integer cast 0
Simplifying constant integer cast $ff
Simplifying constant pointer cast (char *) 36869
Simplifying constant integer cast 1
Simplifying constant integer cast $16
Simplifying constant integer cast 2
Simplifying constant pointer cast (char *) 8185
Simplifying constant integer cast 2
Simplifying constant integer cast $1ff9
Simplifying constant integer cast 1
Simplifying constant integer cast 1
Simplifying constant integer cast $16
Simplifying constant integer cast $1f1f
Simplifying constant integer cast $f
Simplifying constant pointer cast (char *) 36878
Simplifying constant integer cast 0
Simplifying constant integer cast 1
Simplifying constant integer cast $50
Simplifying constant integer cast $54
Simplifying constant integer cast $53
Simplifying constant integer cast $3a
Simplifying constant integer cast $12
Simplifying constant pointer cast (char *) 211
Simplifying constant integer cast 0
Simplifying constant integer cast 7
Simplifying constant integer cast 3
Simplifying constant integer cast $1a
Simplifying constant integer cast $1f9
Simplifying constant integer cast 1
Simplifying constant integer cast 1
Simplifying constant integer cast $1fa
Simplifying constant integer cast 4
Simplifying constant integer cast $a
Simplifying constant pointer cast (char *) 211
Simplifying constant integer cast 0
Simplifying constant integer cast 5
Simplifying constant integer cast $f
Simplifying constant pointer cast (char *) 211
Simplifying constant integer cast $a
Simplifying constant integer cast $30
Simplifying constant integer cast $31
Simplifying constant integer cast $30
Simplifying constant integer cast 0
Simplifying constant integer cast $ff
Simplifying constant integer cast 0
Simplifying constant integer cast $ff
Simplifying constant integer cast $1e15
Simplifying constant integer cast $1fe3
Simplifying constant integer cast 1
Simplifying constant integer cast $16
Simplifying constant integer cast $17
Simplifying constant integer cast 0
Simplifying constant integer cast $a
Simplifying constant pointer cast (char *) 37151
Simplifying constant integer cast $7f
Simplifying constant pointer cast (char *) 37154
Simplifying constant pointer cast (char *) 37152
Simplifying constant integer cast $ff
Simplifying constant pointer cast (char *) 37154
Simplifying constant integer cast $10
Simplifying constant integer cast 0
Simplifying constant integer cast $a
Simplifying constant integer cast $82
Simplifying constant pointer cast (char *) 36877
Simplifying constant integer cast $14
Simplifying constant integer cast 0
Simplifying constant pointer cast (char *) 36877
Simplifying constant integer cast 0
Simplifying constant integer cast 1
Simplifying constant integer cast 0
Simplifying constant integer cast $16
Simplifying constant integer cast 0
Simplifying constant integer cast $17
Simplifying constant integer cast 0
Simplifying constant integer cast $b
Simplifying constant integer cast $80
Simplifying constant integer cast 0
Simplifying constant integer cast 4
Simplifying constant integer cast 0
Simplifying constant integer cast 8
Simplifying constant integer cast 0
Simplifying constant integer cast $16
Simplifying constant integer cast $20
Simplifying constant integer cast 0
Simplifying constant integer cast $16
Simplifying constant integer cast 1
Simplifying constant integer cast $16
Simplifying constant integer cast $17
Simplifying constant integer cast $1e16
Simplifying constant integer cast $1fe3
Simplifying constant integer cast $82
Simplifying constant pointer cast (char *) 36877
Simplifying constant integer cast $a
Simplifying constant integer cast $a
Simplifying constant integer cast $c
Simplifying constant integer cast $a
Simplifying constant integer cast $a
Simplifying constant integer cast $a
Simplifying constant integer cast 0
Simplifying constant pointer cast (char *) 36877
Simplifying constant integer cast $fd
Simplifying constant integer cast 1
Simplifying constant integer cast 1
Simplifying constant integer cast $ed
Simplifying constant integer cast 1
Simplifying constant integer cast 1
Simplifying constant integer cast $16
Simplifying constant integer cast $ee
Simplifying constant integer cast $16
Simplifying constant integer cast 1
Simplifying constant integer cast $17
Simplifying constant integer cast $f0
Simplifying constant integer cast $17
Simplifying constant integer cast 1
Simplifying constant integer cast 5
Simplifying constant integer cast 0
Simplifying constant integer cast 7
Simplifying constant integer cast 1
Simplifying constant integer cast 1
Simplifying constant integer cast 1
Simplifying constant integer cast 7
Simplifying constant integer cast $16
Simplifying constant integer cast 2
Simplifying constant integer cast $16
Simplifying constant integer cast 7
Simplifying constant integer cast $17
Simplifying constant integer cast 3
Simplifying constant integer cast $17
Simplifying constant integer cast 7
Simplifying constant integer cast 5
Simplifying constant integer cast 0
Simplifying constant integer cast 1
Simplifying constant integer cast 0
Simplifying constant integer cast $16
Simplifying constant integer cast 0
Simplifying constant integer cast $17
Simplifying constant integer cast 0
Simplifying constant integer cast 4
Simplifying constant integer cast 0
Simplifying constant integer cast $f0
Simplifying constant pointer cast (char *) 36869
Simplifying constant integer cast 7
Simplifying constant integer cast 2
Simplifying constant integer cast 3
Simplifying constant integer cast $a
Simplifying constant integer cast 1
Simplifying constant pointer cast (char *) 197
Simplifying constant integer cast $b
Simplifying constant integer cast $1c
Simplifying constant integer cast $b
Successful SSA optimization PassNCastSimplification
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 5
Finalized unsigned number type (char) 4
Finalized unsigned number type (char) 6
Finalized unsigned number type (char) $10
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) $19
Finalized unsigned number type (char) $28
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) $28
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) $28
Finalized unsigned number type (char) $28
Finalized unsigned number type (char) $28
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) $19
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) $28
Finalized unsigned number type (char) $28
Finalized unsigned number type (char) $28
Finalized unsigned number type (char) $28
Finalized unsigned number type (char) $28
Finalized unsigned number type (char) $28
Finalized unsigned number type (char) $28
Finalized unsigned number type (char) $28
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) $19
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) $80
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 0
Finalized unsigned number type (unsigned int) $1fa
Finalized unsigned number type (unsigned int) $1e00
Finalized unsigned number type (unsigned int) $1e00
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 0
Finalized unsigned number type (unsigned int) $fde8
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 4
Finalized unsigned number type (char) $a
Finalized unsigned number type (char) 9
Finalized unsigned number type (char) $63
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 2
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 3
Finalized unsigned number type (char) 4
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 2
Finalized unsigned number type (char) 2
Finalized unsigned number type (char) 3
Finalized unsigned number type (char) 4
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 0
Finalized unsigned number type (unsigned int) $21c
Finalized unsigned number type (unsigned int) $100
Finalized unsigned number type (char) $3c
Finalized unsigned number type (char) 7
Finalized unsigned number type (unsigned int) $1e15
Finalized unsigned number type (char) $b9
Finalized unsigned number type (char) $a
Finalized unsigned number type (char) $b9
Finalized unsigned number type (char) 8
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) $28
Finalized unsigned number type (unsigned int) $1c00
Finalized unsigned number type (char) $20
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 7
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 2
Finalized unsigned number type (char) 5
Finalized unsigned number type (char) 4
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) $ff
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) $16
Finalized unsigned number type (char) 2
Finalized unsigned number type (char) 2
Finalized unsigned number type (unsigned int) $1ff9
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) $16
Finalized unsigned number type (unsigned int) $1f1f
Finalized unsigned number type (char) $f
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) $50
Finalized unsigned number type (char) $54
Finalized unsigned number type (char) $53
Finalized unsigned number type (char) $3a
Finalized unsigned number type (char) $12
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 7
Finalized unsigned number type (char) 3
Finalized unsigned number type (char) $1a
Finalized unsigned number type (unsigned int) $1f9
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 1
Finalized unsigned number type (unsigned int) $1fa
Finalized unsigned number type (char) 4
Finalized unsigned number type (char) $a
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 5
Finalized unsigned number type (char) $f
Finalized unsigned number type (char) $a
Finalized unsigned number type (char) $30
Finalized unsigned number type (char) $31
Finalized unsigned number type (char) $30
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) $ff
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) $ff
Finalized unsigned number type (unsigned int) $1e15
Finalized unsigned number type (unsigned int) $1fe3
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) $16
Finalized unsigned number type (char) $17
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) $a
Finalized unsigned number type (char) $7f
Finalized unsigned number type (char) $ff
Finalized unsigned number type (char) $10
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) $a
Finalized unsigned number type (char) $82
Finalized unsigned number type (char) $14
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) $16
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) $17
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) $b
Finalized unsigned number type (char) $80
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 4
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 8
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) $16
Finalized unsigned number type (char) $20
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) $16
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) $16
Finalized unsigned number type (char) $17
Finalized unsigned number type (unsigned int) $1e16
Finalized unsigned number type (unsigned int) $1fe3
Finalized unsigned number type (char) $82
Finalized unsigned number type (char) $a
Finalized unsigned number type (char) $a
Finalized unsigned number type (char) $c
Finalized unsigned number type (char) $a
Finalized unsigned number type (char) $a
Finalized unsigned number type (char) $a
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) $fd
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) $ed
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) $16
Finalized unsigned number type (char) $ee
Finalized unsigned number type (char) $16
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) $17
Finalized unsigned number type (char) $f0
Finalized unsigned number type (char) $17
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 5
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 7
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 7
Finalized unsigned number type (char) $16
Finalized unsigned number type (char) 2
Finalized unsigned number type (char) $16
Finalized unsigned number type (char) 7
Finalized unsigned number type (char) $17
Finalized unsigned number type (char) 3
Finalized unsigned number type (char) $17
Finalized unsigned number type (char) 7
Finalized unsigned number type (char) 5
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) $16
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) $17
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 4
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) $f0
Finalized unsigned number type (char) 7
Finalized unsigned number type (char) 2
Finalized unsigned number type (char) 3
Finalized unsigned number type (char) $a
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) $b
Finalized unsigned number type (char) $1c
Finalized unsigned number type (char) $b
Successful SSA optimization PassNFinalizeNumberTypeConversions
Inferred type updated to char in utoa::$4 = utoa::max_digits#5 - 1
Inferred type updated to char in divr8u::$1 = divr8u::dividend#3 & $80
Inferred type updated to char in divr8u::$4 = divr8u::rem#7 | 1
Inferred type updated to unsigned int in clear_screen::$3 = $1e00 + z#21
Inferred type updated to unsigned int in clear_screen::$4 = clear_screen::$3 + c
Inferred type updated to unsigned int in clear_screen::$5 = $1e00 + z#21
Inferred type updated to unsigned int in read_chrono::$0 = m * $100
Inferred type updated to unsigned int in read_chrono::$1 = read_chrono::$0 + l
Inferred type updated to unsigned int in read_chrono::$5 = $b9 - time#9
Inferred type updated to unsigned int in main::$3 = $1c00 + m
Inferred type updated to char in main::$25 = 7 - l
Inferred type updated to char in main::$26 = 3 * l
Inferred type updated to char in main::$27 = $1a - main::$26
Inferred type updated to unsigned int in main::$36 = main::$35 + 1
Inferred type updated to unsigned int in main::$57 = $30 + tu#7
Inferred type updated to unsigned int in main::$61 = m + $1e15
Inferred type updated to unsigned int in main::$62 = main::$61 + duck#6
Inferred type updated to unsigned int in main::$66 = duck#1 + 1
Inferred type updated to unsigned int in main::$69 = duck#1 + $16
Inferred type updated to unsigned int in main::$72 = duck#1 + $17
Inferred type updated to char in main::$78 = $10 & m
Inferred type updated to unsigned int in main::$147 = score#19 - $a
Inferred type updated to unsigned int in main::$151 = duck#7 + 1
Inferred type updated to unsigned int in main::$152 = main::$151 + c
Inferred type updated to unsigned int in main::$153 = duck#7 + $16
Inferred type updated to unsigned int in main::$154 = main::$153 + c
Inferred type updated to unsigned int in main::$155 = duck#7 + $17
Inferred type updated to unsigned int in main::$156 = main::$155 + c
Inferred type updated to char in main::$81 = $80 & n#9
Inferred type updated to char in main::$84 = 4 & m
Inferred type updated to char in main::$88 = 8 & m
Inferred type updated to unsigned int in main::$87 = y#11 - $16
Inferred type updated to char in main::$92 = $20 & m
Inferred type updated to unsigned int in main::$91 = y#12 + $16
Inferred type updated to unsigned int in main::$104 = y#13 + 1
Inferred type updated to unsigned int in main::$107 = y#13 + $16
Inferred type updated to unsigned int in main::$110 = y#13 + $17
Inferred type updated to unsigned int in main::$100 = score#21 - $a
Inferred type updated to unsigned int in main::$96 = $c - time#13
Inferred type updated to unsigned int in main::$97 = main::$96 * $a
Inferred type updated to unsigned int in main::$98 = score#23 + main::$97
Inferred type updated to unsigned int in main::$126 = peephole#7 + 1
Inferred type updated to unsigned int in main::$127 = peephole#7 + 1
Inferred type updated to unsigned int in main::$128 = main::$127 + c
Inferred type updated to unsigned int in main::$129 = peephole#7 + $16
Inferred type updated to unsigned int in main::$130 = peephole#7 + $16
Inferred type updated to unsigned int in main::$131 = main::$130 + c
Inferred type updated to unsigned int in main::$132 = peephole#7 + $17
Inferred type updated to unsigned int in main::$133 = peephole#7 + $17
Inferred type updated to unsigned int in main::$134 = main::$133 + c
Inferred type updated to unsigned int in main::$137 = duck#9 + 1
Inferred type updated to unsigned int in main::$138 = duck#9 + 1
Inferred type updated to unsigned int in main::$139 = main::$138 + c
Inferred type updated to unsigned int in main::$140 = duck#9 + $16
Inferred type updated to unsigned int in main::$141 = duck#9 + $16
Inferred type updated to unsigned int in main::$142 = main::$141 + c
Inferred type updated to unsigned int in main::$143 = duck#9 + $17
Inferred type updated to unsigned int in main::$144 = duck#9 + $17
Inferred type updated to unsigned int in main::$145 = main::$144 + c
Inferred type updated to unsigned int in main::$120 = main::$119 + 1
Inferred type updated to unsigned int in main::$122 = main::$121 + $16
Inferred type updated to unsigned int in main::$124 = main::$123 + $17
Inversing boolean not [19] memset::$1 = memset::num#2 <= 0 from [18] memset::$0 = memset::num#2 > 0
Inversing boolean not [119] gotoxy::$1 = gotoxy::y#4 <= $19 from [118] gotoxy::$0 = gotoxy::y#4 > $19
Inversing boolean not [123] gotoxy::$3 = gotoxy::x#4 < $28 from [122] gotoxy::$2 = gotoxy::x#4 >= $28
Inversing boolean not [148] cputc::$2 = conio_cursor_x != $28 from [147] cputc::$1 = conio_cursor_x == $28
Inversing boolean not [179] cscroll::$1 = conio_cursor_y != $19 from [178] cscroll::$0 = conio_cursor_y == $19
Inversing boolean not [212] conio_c64_init::$1 = conio_c64_init::line#0 < $19 from [211] conio_c64_init::$0 = conio_c64_init::line#0 >= $19
Inversing boolean not [228] divr8u::$3 = divr8u::$1 == 0 from [227] divr8u::$2 = divr8u::$1 != 0
Inversing boolean not [236] divr8u::$8 = divr8u::rem#6 < divr8u::divisor#2 from [235] divr8u::$7 = divr8u::rem#6 >= divr8u::divisor#2
Inversing boolean not [316] write_score::$1 = score#13 <= $fde8 from [315] write_score::$0 = score#13 > $fde8
Inversing boolean not [334] write_score::$4 = score#15 <= 9 from [333] write_score::$3 = score#15 > 9
Inversing boolean not [338] write_score::$6 = score#16 <= $63 from [337] write_score::$5 = score#16 > $63
Inversing boolean not [401] read_chrono::$4 = time#0 >= $a from [400] read_chrono::$3 = time#0 < $a
Inversing boolean not [494] main::$24 = l <= 1 from [493] main::$23 = l > 1
Inversing boolean not [544] main::$31 = main::$29 <= $1f9 from [543] main::$30 = main::$29 > $1f9
Inversing boolean not [662] main::$80 = main::$78 != 0 from [661] main::$79 = main::$78 == 0
Inversing boolean not [693] main::$83 = main::$81 != 0 from [692] main::$82 = main::$81 == 0
Inversing boolean not [700] main::$86 = main::$84 != 0 from [699] main::$85 = main::$84 == 0
Inversing boolean not [707] main::$90 = main::$88 != 0 from [706] main::$89 = main::$88 == 0
Inversing boolean not [715] main::$94 = main::$92 != 0 from [714] main::$93 = main::$92 == 0
Inversing boolean not [857] main::$168 = score#24 <= hiscore#5 from [856] main::$167 = score#24 > hiscore#5
Successful SSA optimization Pass2UnaryNotSimplification
Alias candidate removed (volatile)conio_line_text = gotoxy::$5
Alias candidate removed (volatile)conio_line_color = gotoxy::$6
Alias candidate removed (volatile)chrout::petscii = main::$57
Alias memcpy::src#2 = memcpy::src#3
Alias memcpy::dst#2 = memcpy::dst#3
Alias memcpy::src_end#1 = memcpy::src_end#2
Alias memcpy::destination#3 = memcpy::destination#5 memcpy::destination#4 memcpy::return#0 memcpy::return#4 memcpy::return#1
Alias memset::return#0 = memset::str#2 memset::return#4 memset::return#1
Alias memset::str#3 = memset::str#4
Alias memset::num#2 = memset::num#3
Alias memset::c#4 = memset::c#5
Alias memset::c#2 = memset::c#3
Alias memset::dst#2 = memset::dst#3
Alias memset::end#1 = memset::end#2
Alias memset::str#5 = memset::str#6
Alias utoa::value#10 = utoa::value#9 utoa::value#13 utoa::value#14 utoa::value#15 utoa::value#11 utoa::value#16 utoa::value#12
Alias utoa::buffer#11 = utoa::buffer#18 utoa::buffer#22 utoa::buffer#17 utoa::buffer#19 utoa::buffer#14 utoa::buffer#20 utoa::buffer#21 utoa::buffer#7
Alias utoa::radix#2 = utoa::radix#3 utoa::radix#4 utoa::radix#5
Alias utoa::digit#2 = utoa::digit#3 utoa::digit#6 utoa::digit#5
Alias utoa::digit_values#10 = utoa::digit_values#5 utoa::digit_values#6 utoa::digit_values#9
Alias utoa::value#3 = utoa::value#6 utoa::value#4 utoa::value#5
Alias utoa::started#2 = utoa::started#3
Alias utoa::buffer#10 = utoa::buffer#13 utoa::buffer#12 utoa::buffer#8 utoa::buffer#9
Alias utoa::max_digits#10 = utoa::max_digits#8 utoa::max_digits#5 utoa::max_digits#9
Alias utoa::digit_value#0 = utoa::digit_value#1
Alias utoa_append::return#0 = utoa_append::return#3
Alias utoa::value#0 = utoa::$9
Alias utoa_append::digit#2 = utoa_append::digit#4 utoa_append::digit#3
Alias utoa_append::value#2 = utoa_append::value#3 utoa_append::value#4 utoa_append::return#1 utoa_append::return#4 utoa_append::return#2
Alias utoa_append::sub#1 = utoa_append::sub#2
Alias utoa_append::buffer#1 = utoa_append::buffer#4 utoa_append::buffer#2
Alias gotoxy::x#6 = gotoxy::x#7
Alias gotoxy::y#6 = gotoxy::y#7
Alias cputc::c#1 = cputc::c#2
Alias cputs::c#1 = cputs::$0 cputs::c#2
Alias cputs::s#0 = cputs::s#13 cputs::s#12
Alias textcolor::return#0 = textcolor::old#0 textcolor::return#9 textcolor::return#1
Alias divr8u::rem#0 = divr8u::$0 divr8u::rem#7
Alias divr8u::dividend#0 = divr8u::$5 divr8u::dividend#8
Alias divr8u::quotient#1 = divr8u::$6 divr8u::quotient#4
Alias divr8u::dividend#3 = divr8u::dividend#7
Alias divr8u::quotient#6 = divr8u::quotient#7
Alias divr8u::divisor#4 = divr8u::divisor#5
Alias divr8u::i#5 = divr8u::i#6
Alias divr8u::rem#1 = divr8u::$4
Alias divr8u::rem#6 = divr8u::rem#8
Alias divr8u::divisor#2 = divr8u::divisor#3
Alias divr8u::i#3 = divr8u::i#4
Alias divr8u::rem#2 = divr8u::$9
Alias divr8u::rem#11 = divr8u::rem#9
Alias divr8u::return#0 = divr8u::quotient#5 divr8u::quotient#8 divr8u::return#4 divr8u::return#1
Alias rem8u#0 = rem8u#12 rem8u#1
Alias divr8u::dividend#1 = div16u8u::$0
Alias divr8u::return#2 = divr8u::return#5
Alias div16u8u::dividend#1 = div16u8u::dividend#2
Alias div16u8u::divisor#1 = div16u8u::divisor#2
Alias rem8u#13 = rem8u#2
Alias divr8u::dividend#2 = div16u8u::$2
Alias divr8u::return#3 = divr8u::return#6
Alias div16u8u::quotient_hi#0 = div16u8u::quotient_hi#1
Alias rem8u#14 = rem8u#3 rem8u#15 rem8u#4
Alias div16u8u::return#0 = div16u8u::quotient#0 div16u8u::return#3 div16u8u::return#1
Alias z#2 = z#21 z#20 z#65 z#52 z#39 z#22
Alias clear_screen::m#3 = clear_screen::m#4
Alias clear_screen::n#3 = clear_screen::n#4
Alias score#14 = score#39 score#30 score#15 score#31
Alias score#40 = score#49 score#59
Alias score#16 = score#68
Alias score#1 = score#50 score#32 score#41 score#17
Alias wait::n#5 = wait::n#9
Alias z#23 = z#24 z#54
Alias wait::n#10 = wait::n#8 wait::n#7
Alias z#25 = z#40 z#5
Alias div16u8u::dividend#0 = read_chrono::$1
Alias div16u8u::return#2 = div16u8u::return#4
Alias rem8u#16 = rem8u#5 rem8u#24
Alias time#0 = read_chrono::$2 time#9
Alias rem8u#17 = rem8u#6
Alias time#1 = time#10
Alias z#67 = z#75 z#82
Alias rem8u#137 = rem8u#138 rem8u#139
Alias y#124 = y#125 y#126
Alias hiscore#120 = hiscore#121 hiscore#122
Alias n#119 = n#120 n#121
Alias z#55 = z#66
Alias rem8u#135 = rem8u#136
Alias y#122 = y#123
Alias hiscore#118 = hiscore#119
Alias n#117 = n#118
Alias rem8u#127 = rem8u#133 rem8u#134 rem8u#132 rem8u#131 rem8u#130 rem8u#129 rem8u#128
Alias y#114 = y#120 y#121 y#119 y#118 y#117 y#116 y#115
Alias hiscore#110 = hiscore#116 hiscore#117 hiscore#115 hiscore#114 hiscore#113 hiscore#112 hiscore#111
Alias n#109 = n#115 n#116 n#114 n#113 n#112 n#111 n#110
Alias z#26 = z#6 z#98 z#93 z#88 z#83 z#76 z#68
Alias z#42 = z#57
Alias rem8u#113 = rem8u#123 rem8u#126 rem8u#120 rem8u#118 rem8u#116
Alias y#100 = y#110 y#113 y#107 y#105 y#103
Alias hiscore#101 = hiscore#106 hiscore#109 hiscore#103 hiscore#99 hiscore#96
Alias n#100 = n#107 n#108 n#106 n#105 n#103
Alias z#27 = z#7
Alias k#101 = k#20 k#6 k#17 k#98 k#95
Alias rem8u#102 = rem8u#124 rem8u#110 rem8u#121 rem8u#108 rem8u#105
Alias y#108 = y#111 y#97 y#95 y#92 y#89
Alias hiscore#104 = hiscore#107 hiscore#93 hiscore#91 hiscore#88 hiscore#85
Alias n#89 = n#95 n#97 n#92
Alias n#101 = n#13 n#7 n#8 n#104
Alias k#11 = k#21 k#14 k#18 k#7
Alias rem8u#114 = rem8u#125 rem8u#119 rem8u#122 rem8u#117
Alias y#101 = y#112 y#106 y#109 y#104
Alias hiscore#100 = hiscore#108 hiscore#102 hiscore#105 hiscore#97
Alias score#2 = score#92 score#84 score#77 score#69 score#60 score#51
Alias tu#0 = tu#81 tu#79 tu#77 tu#75 tu#71 tu#66
Alias rem8u#100 = rem8u#101 rem8u#99 rem8u#98 rem8u#97 rem8u#95 rem8u#93
Alias y#80 = y#87 y#88 y#86 y#85 y#84 y#82
Alias z#128 = z#135 z#136 z#134 z#133 z#132 z#130
Alias peephole#0 = peephole#85 peephole#84 peephole#83 peephole#82 peephole#80 peephole#78
Alias hiscore#76 = hiscore#83 hiscore#84 hiscore#82 hiscore#81 hiscore#80 hiscore#78
Alias k#86 = k#93 k#94 k#92 k#91 k#90 k#88
Alias n#80 = n#87 n#88 n#86 n#85 n#84 n#82
Alias random::k#0 = main::$25
Alias random::n#0 = main::$27
Alias z#28 = z#43 z#69
Alias rem8u#103 = rem8u#106 rem8u#111
Alias y#90 = y#93 y#98
Alias hiscore#86 = hiscore#89 hiscore#94
Alias k#103 = k#96 k#99
Alias n#90 = n#93 n#98
Alias j#11 = j#23 j#12
Alias z#29 = z#77 z#58 z#70 z#44
Alias rem8u#104 = rem8u#115 rem8u#109 rem8u#112 rem8u#107
Alias y#102 = y#96 y#99 y#94 y#91
Alias hiscore#87 = hiscore#98 hiscore#92 hiscore#95 hiscore#90
Alias k#100 = k#105 k#102 k#104 k#97
Alias n#102 = n#96 n#99 n#94 n#91
Alias z#9 = main::$36
Alias j#13 = j#14 j#15
Alias score#29 = score#61 score#42 score#52
Alias tu#31 = tu#72 tu#58 tu#67 tu#51 tu#43 tu#37
Alias rem8u#80 = rem8u#96 rem8u#92 rem8u#94 rem8u#90 rem8u#88 rem8u#84
Alias y#68 = y#83 y#79 y#81 y#78 y#76 y#72
Alias z#120 = z#131 z#127 z#129 z#126 z#125 z#123
Alias peephole#69 = peephole#81 peephole#77 peephole#79 peephole#76 peephole#75 peephole#72
Alias hiscore#69 = hiscore#79 hiscore#75 hiscore#77 hiscore#74 hiscore#73 hiscore#71
Alias k#79 = k#89 k#85 k#87 k#84 k#83 k#81
Alias n#73 = n#83 n#79 n#81 n#78 n#77 n#75
Alias score#105 = score#3 score#18 score#107
Alias j#16 = j#17 j#18
Alias tu#27 = tu#38 tu#32
Alias score#104 = score#108 score#106
Alias rem8u#77 = rem8u#85 rem8u#81
Alias y#65 = y#73 y#69
Alias z#118 = z#124 z#121
Alias peephole#67 = peephole#73 peephole#70
Alias hiscore#68 = hiscore#72 hiscore#70
Alias k#78 = k#82 k#80
Alias n#72 = n#76 n#74
Alias tu#13 = tu#18 tu#23 tu#6 tu#7 tu#44 tu#59 tu#52 tu#45
Alias score#100 = score#102 score#103 score#97 score#93 score#85 score#98 score#94 score#86
Alias rem8u#48 = rem8u#73 rem8u#75 rem8u#70 rem8u#63 rem8u#55 rem8u#64 rem8u#56 rem8u#49
Alias y#49 = y#61 y#63 y#59 y#56 y#53 y#57 y#54 y#50
Alias z#102 = z#114 z#116 z#112 z#109 z#106 z#110 z#107 z#103
Alias peephole#52 = peephole#63 peephole#65 peephole#61 peephole#58 peephole#55 peephole#59 peephole#56 peephole#53
Alias hiscore#44 = hiscore#65 hiscore#67 hiscore#62 hiscore#56 hiscore#50 hiscore#57 hiscore#51 hiscore#45
Alias k#54 = k#75 k#77 k#72 k#66 k#60 k#67 k#61 k#55
Alias n#52 = n#70 n#71 n#69 n#64 n#58 n#65 n#59 n#53
Alias tu#20 = tu#33 tu#39 tu#28 tu#24
Alias score#44 = score#70 score#78 score#62 score#53
Alias rem8u#32 = rem8u#40 rem8u#44 rem8u#37 rem8u#34
Alias y#36 = y#45 y#47 y#43 y#40
Alias z#78 = z#94 z#99 z#89 z#84
Alias peephole#40 = peephole#48 peephole#50 peephole#46 peephole#42
Alias hiscore#33 = hiscore#38 hiscore#41 hiscore#36 hiscore#34
Alias k#43 = k#48 k#51 k#46 k#44
Alias n#41 = n#46 n#49 n#44 n#42
Alias duck#0 = duck#6
Alias duck#1 = main::$62 duck#37 duck#31
Alias time#18 = time#2
Alias rem8u#25 = rem8u#28 rem8u#86 rem8u#82 rem8u#78 rem8u#91 rem8u#89 rem8u#87 rem8u#83 rem8u#79 rem8u#76 rem8u#74 rem8u#72 rem8u#69 rem8u#61 rem8u#62
Alias time#11 = time#19 time#60 time#59 time#58 time#57 time#56 time#55 time#54 time#53 time#52 time#51 time#50 time#49 time#47 time#48
Alias y#18 = y#26 y#31 y#74 y#70 y#66 y#9 y#77 y#75 y#71 y#67 y#64 y#62 y#60 y#58 y#55 y#51 y#52
Alias peephole#31 = peephole#35 peephole#37 peephole#32 peephole#74 peephole#71 peephole#68 peephole#66 peephole#64 peephole#62 peephole#60 peephole#57 peephole#54 peephole#51 peephole#49 peephole#47 peephole#44 peephole#45
Alias duck#13 = duck#43 duck#25 duck#39 duck#18 duck#7 duck#38 duck#58 duck#57 duck#56 duck#55 duck#54 duck#53 duck#52 duck#51 duck#50 duck#48 duck#49
Alias score#19 = score#87 score#33 score#80 score#79
Alias z#100 = z#71 z#96 z#59 z#45 z#95
Alias tu#14 = tu#73 tu#69 tu#8 tu#68
Alias hiscore#10 = hiscore#66 hiscore#31 hiscore#64 hiscore#30 hiscore#29 hiscore#28 hiscore#63 hiscore#27 hiscore#26 hiscore#24 hiscore#22 hiscore#20 hiscore#18 hiscore#16 hiscore#13 hiscore#5
Alias k#27 = k#76 k#41 k#74 k#40 k#39 k#38 k#73 k#37 k#36 k#35 k#34 k#33 k#32 k#31 k#30 k#29 k#28
Alias rem8u#18 = rem8u#7 rem8u#71
Alias time#12 = time#3 time#40
Alias n#25 = n#38 n#39 n#37 n#36 n#35 n#34 n#33 n#32 n#31 n#30 n#29 n#28 n#27 n#26
Alias score#4 = main::$147
Alias tu#1 = tu#15 tu#9 tu#85 tu#84 tu#83 tu#82 tu#80 tu#78 tu#76 tu#74 tu#70 tu#64 tu#65
Alias score#101 = score#5 score#20 score#99 score#95 score#90 score#82 score#75 score#66 score#57 score#46 score#35 score#24 score#25 hiscore#0
Alias z#10 = z#30 z#49
Alias n#14 = n#2
Alias y#10 = y#19
Alias peephole#26 = peephole#27
Alias duck#32 = duck#33
Alias score#71 = score#72
Alias time#36 = time#37
Alias z#90 = z#91
Alias tu#60 = tu#61
Alias rem8u#65 = rem8u#66
Alias hiscore#58 = hiscore#59
Alias k#68 = k#69
Alias n#66 = n#9
Alias y#11 = y#20
Alias peephole#21 = peephole#22
Alias duck#26 = duck#27
Alias score#63 = score#64
Alias time#31 = time#32
Alias z#85 = z#86
Alias tu#53 = tu#54
Alias rem8u#57 = rem8u#58
Alias hiscore#52 = hiscore#53
Alias k#62 = k#63
Alias n#60 = n#61
Alias y#2 = main::$87
Alias y#12 = y#21
Alias peephole#16 = peephole#17
Alias duck#19 = duck#20
Alias score#54 = score#55
Alias time#27 = time#28
Alias z#79 = z#80
Alias tu#46 = tu#47
Alias rem8u#50 = rem8u#51
Alias hiscore#46 = hiscore#47
Alias k#56 = k#57
Alias n#54 = n#55
Alias y#3 = main::$91
Alias peephole#12 = peephole#6 peephole#33 peephole#28 peephole#23 peephole#29 peephole#24
Alias duck#14 = duck#8 duck#44 duck#40 duck#34 duck#41 duck#35
Alias score#21 = score#34 score#45 score#23
Alias time#13 = time#20 time#23 time#45 time#43 time#41
Alias z#46 = z#61 z#72 z#60 z#47
Alias y#22 = y#38 y#37 y#32 y#27 y#33 y#28
Alias tu#40 = tu#63 tu#62 tu#55 tu#48 tu#56 tu#49
Alias rem8u#45 = rem8u#68 rem8u#67 rem8u#59 rem8u#52 rem8u#60 rem8u#53
Alias hiscore#42 = hiscore#61 hiscore#60 hiscore#54 hiscore#48 hiscore#55 hiscore#49
Alias k#52 = k#71 k#70 k#64 k#58 k#65 k#59
Alias n#50 = n#68 n#67 n#62 n#56 n#63 n#57
Alias score#6 = main::$100
Alias score#22 = score#7 score#88
Alias z#11 = z#31
Alias score#8 = main::$98 score#89
Alias z#12 = z#32
Alias y#35 = y#4 peephole#7 y#41 peephole#43 peephole#39
Alias duck#15 = duck#9 duck#30
Alias time#17 = time#24 time#29
Alias tu#19 = tu#25 tu#29
Alias score#43 = score#56 score#65
Alias rem8u#31 = rem8u#35 rem8u#38
Alias hiscore#32 = hiscore#35 hiscore#37
Alias k#42 = k#45 k#47
Alias n#40 = n#43 n#45
Alias z#13 = z#33
Alias z#14 = z#34
Alias peephole#13 = peephole#8
Alias y#13 = y#14 peephole#1
Alias z#62 = z#63
Alias duck#21 = duck#22
Alias time#33 = time#34
Alias tu#34 = tu#35
Alias score#73 = score#74
Alias rem8u#41 = rem8u#42
Alias hiscore#39 = hiscore#40
Alias k#49 = k#50
Alias n#47 = n#48
Alias z#104 = z#15 z#35 z#122 z#119 z#117 z#115 z#113 z#111 z#108 z#105
Alias z#101 = z#97 z#92 z#87 z#81
Alias k#22 = k#25 k#26 k#24 k#23
Alias n#20 = n#23 n#24 n#22 n#21
Alias peephole#30 = peephole#38 peephole#41 peephole#36 peephole#34
Alias score#67 = score#91 score#96 score#83 score#76
Alias tu#30 = tu#50 tu#57 tu#42 tu#36
Alias duck#36 = duck#46 duck#47 duck#45 duck#42
Alias time#35 = time#44 time#46 time#42 time#39
Alias rem8u#36 = rem8u#47 rem8u#54 rem8u#43 rem8u#39
Alias y#39 = y#46 y#48 y#44 y#42
Alias hiscore#19 = hiscore#25 hiscore#6 hiscore#23 hiscore#21
Alias j#19 = j#6 j#24 j#20 j#7
Alias z#16 = z#56 z#74 z#50 z#36
Alias k#12 = k#15 k#19 k#8 k#2
Alias n#10 = n#17 n#19 n#15 n#3
Alias peephole#14 = peephole#19 peephole#25 peephole#9 peephole#2
Alias score#26 = score#47 score#58 score#36 score#9
Alias tu#10 = tu#21 tu#26 tu#16 tu#2
Alias duck#10 = duck#23 duck#29 duck#16 duck#2
Alias time#14 = time#25 time#30 time#21 time#5
Alias rem8u#19 = rem8u#29 rem8u#33 rem8u#26 rem8u#8
Alias y#15 = y#29 y#34 y#24 y#5
Alias hiscore#1 = hiscore#14 hiscore#17 hiscore#11 hiscore#7
Alias z#17 = z#64 z#51
Alias k#13 = k#16 k#3
Alias n#16 = n#18 n#4
Alias peephole#15 = peephole#20 peephole#3
Alias score#10 = score#48 score#37
Alias tu#17 = tu#22 tu#3
Alias j#25 = j#26 j#8
Alias duck#17 = duck#24 duck#3
Alias time#22 = time#26 time#6
Alias rem8u#27 = rem8u#30 rem8u#9
Alias y#25 = y#30 y#6
Alias hiscore#12 = hiscore#15 hiscore#2
Alias z#18 = z#37 z#38 z#19
Alias k#10 = k#4 k#9 k#5
Alias n#11 = n#5 n#12 n#6
Alias peephole#10 = peephole#4 peephole#11 peephole#5
Alias score#11 = score#27 score#28 score#12
Alias tu#11 = tu#4 tu#12 tu#5
Alias j#10 = j#9 j#21 j#22
Alias duck#11 = duck#4 duck#12 duck#5
Alias time#15 = time#7 time#16 time#8
Alias rem8u#10 = rem8u#20 rem8u#21 rem8u#11
Alias y#16 = y#7 y#17 y#8
Alias hiscore#3 = hiscore#8 hiscore#9 hiscore#4
Successful SSA optimization Pass2AliasElimination
Alias candidate removed (volatile)conio_line_text = gotoxy::$5
Alias candidate removed (volatile)conio_line_color = gotoxy::$6
Alias candidate removed (volatile)chrout::petscii = main::$57
Alias utoa::value#10 = utoa::value#8
Alias utoa::buffer#11 = utoa::buffer#16
Alias utoa::digit#2 = utoa::digit#4
Alias utoa::max_digits#10 = utoa::max_digits#6
Alias utoa::digit_values#10 = utoa::digit_values#7
Alias gotoxy::x#4 = gotoxy::x#6
Alias gotoxy::y#5 = gotoxy::y#6
Alias divr8u::dividend#3 = divr8u::dividend#4
Alias divr8u::quotient#3 = divr8u::quotient#6
Alias divr8u::divisor#2 = divr8u::divisor#4 divr8u::divisor#7
Alias divr8u::i#2 = divr8u::i#3 divr8u::i#5
Alias divr8u::dividend#0 = divr8u::dividend#6
Alias score#14 = score#16 score#40
Alias rem8u#16 = rem8u#17
Alias time#0 = time#1
Alias n#14 = n#66 n#60 n#54 n#50 n#51
Alias peephole#12 = peephole#26 peephole#31 peephole#21 peephole#16 peephole#18 peephole#30
Alias duck#13 = duck#32 duck#26 duck#19 duck#14 duck#28 duck#36
Alias score#19 = score#71 score#63 score#54 score#21
Alias time#12 = time#36 time#31 time#27 time#13
Alias z#100 = z#90 z#85 z#79 z#46
Alias tu#14 = tu#60 tu#53 tu#46 tu#40 tu#41
Alias rem8u#18 = rem8u#65 rem8u#57 rem8u#50 rem8u#45 rem8u#46
Alias hiscore#10 = hiscore#58 hiscore#52 hiscore#46 hiscore#42 hiscore#43
Alias k#22 = k#68 k#27 k#62 k#56 k#52 k#53
Alias y#22 = y#23
Alias z#48 = z#62
Alias duck#15 = duck#21
Alias time#17 = time#33
Alias tu#19 = tu#34
Alias score#43 = score#73
Alias rem8u#31 = rem8u#41
Alias hiscore#32 = hiscore#39
Alias k#42 = k#49
Alias n#40 = n#47
Alias z#101 = z#104
Alias n#20 = n#25
Alias score#101 = score#67
Alias tu#1 = tu#30
Alias time#11 = time#35
Alias rem8u#25 = rem8u#36
Alias y#18 = y#39
Successful SSA optimization Pass2AliasElimination
Alias candidate removed (volatile)conio_line_text = gotoxy::$5
Alias candidate removed (volatile)conio_line_color = gotoxy::$6
Alias candidate removed (volatile)chrout::petscii = main::$57
Alias y#13 = y#22
Alias peephole#12 = peephole#13
Alias duck#13 = duck#15
Alias tu#14 = tu#19
Alias rem8u#18 = rem8u#31
Alias hiscore#10 = hiscore#32
Alias k#22 = k#42
Alias n#14 = n#40
Successful SSA optimization Pass2AliasElimination
Alias candidate removed (volatile)conio_line_text = gotoxy::$5
Alias candidate removed (volatile)conio_line_color = gotoxy::$6
Alias candidate removed (volatile)chrout::petscii = main::$57
Identical Phi Values memcpy::src_end#1 memcpy::src_end#0
Identical Phi Values memcpy::destination#3 memcpy::destination#2
Identical Phi Values memset::end#1 memset::end#0
Identical Phi Values memset::str#5 memset::str#3
Identical Phi Values memset::c#2 memset::c#4
Identical Phi Values utoa::max_digits#10 utoa::max_digits#7
Identical Phi Values utoa::digit_values#10 utoa::digit_values#8
Identical Phi Values utoa_append::value#5 utoa_append::value#0
Identical Phi Values utoa_append::sub#3 utoa_append::sub#0
Identical Phi Values utoa_append::buffer#3 utoa_append::buffer#0
Identical Phi Values utoa_append::sub#1 utoa_append::sub#3
Identical Phi Values utoa_append::buffer#1 utoa_append::buffer#3
Identical Phi Values cputc::c#1 cputc::c#0
Identical Phi Values divr8u::divisor#2 divr8u::divisor#6
Identical Phi Values div16u8u::dividend#1 div16u8u::dividend#0
Identical Phi Values div16u8u::divisor#1 div16u8u::divisor#0
Identical Phi Values rem8u#22 rem8u#23
Identical Phi Values rem8u#13 rem8u#0
Identical Phi Values rem8u#14 rem8u#0
Identical Phi Values clear_screen::m#3 clear_screen::m#5
Identical Phi Values clear_screen::n#3 clear_screen::n#5
Identical Phi Values random::k#3 random::k#4
Identical Phi Values random::n#3 random::n#4
Identical Phi Values score#14 score#38
Identical Phi Values score#1 score#14
Identical Phi Values wait::n#10 wait::n#5
Identical Phi Values rem8u#23 rem8u#25
Identical Phi Values rem8u#16 rem8u#14
Identical Phi Values z#67 z#17
Identical Phi Values rem8u#137 rem8u#27
Identical Phi Values y#124 y#25
Identical Phi Values hiscore#120 hiscore#12
Identical Phi Values n#119 n#16
Identical Phi Values z#55 z#67
Identical Phi Values rem8u#135 rem8u#137
Identical Phi Values y#122 y#124
Identical Phi Values hiscore#118 hiscore#120
Identical Phi Values n#117 n#119
Identical Phi Values z#26 z#2
Identical Phi Values z#42 z#26
Identical Phi Values rem8u#113 rem8u#127
Identical Phi Values y#100 y#114
Identical Phi Values hiscore#101 hiscore#110
Identical Phi Values n#100 n#109
Identical Phi Values z#27 z#2
Identical Phi Values k#11 k#101
Identical Phi Values rem8u#114 rem8u#102
Identical Phi Values y#101 y#108
Identical Phi Values hiscore#100 hiscore#104
Identical Phi Values z#29 z#28
Identical Phi Values rem8u#104 rem8u#103
Identical Phi Values y#102 y#90
Identical Phi Values hiscore#87 hiscore#86
Identical Phi Values k#100 k#103
Identical Phi Values n#102 n#90
Identical Phi Values score#29 score#2
Identical Phi Values tu#31 tu#0
Identical Phi Values rem8u#80 rem8u#100
Identical Phi Values y#68 y#80
Identical Phi Values z#120 z#128
Identical Phi Values peephole#69 peephole#0
Identical Phi Values hiscore#69 hiscore#76
Identical Phi Values k#79 k#86
Identical Phi Values n#73 n#80
Identical Phi Values score#105 score#1
Identical Phi Values tu#27 tu#31
Identical Phi Values score#104 score#105
Identical Phi Values rem8u#77 rem8u#80
Identical Phi Values y#65 y#68
Identical Phi Values z#118 z#120
Identical Phi Values peephole#67 peephole#69
Identical Phi Values hiscore#68 hiscore#69
Identical Phi Values k#78 k#79
Identical Phi Values n#72 n#73
Identical Phi Values tu#20 tu#13
Identical Phi Values score#44 score#100
Identical Phi Values rem8u#32 rem8u#48
Identical Phi Values y#36 y#49
Identical Phi Values z#78 z#102
Identical Phi Values peephole#40 peephole#52
Identical Phi Values hiscore#33 hiscore#44
Identical Phi Values k#43 k#54
Identical Phi Values n#41 n#52
Identical Phi Values tu#14 tu#20
Identical Phi Values duck#13 duck#1
Identical Phi Values hiscore#10 hiscore#33
Identical Phi Values k#22 k#43
Identical Phi Values rem8u#18 rem8u#16
Identical Phi Values time#12 time#0
Identical Phi Values score#101 score#1
Identical Phi Values z#10 z#25
Identical Phi Values score#22 score#1
Identical Phi Values z#11 z#25
Identical Phi Values z#12 z#25
Identical Phi Values z#13 z#25
Identical Phi Values z#14 z#25
Identical Phi Values z#101 z#2
Identical Phi Values z#16 z#101
Identical Phi Values k#12 k#22
Identical Phi Values n#10 n#20
Identical Phi Values peephole#14 peephole#12
Identical Phi Values score#26 score#101
Identical Phi Values tu#10 tu#1
Identical Phi Values duck#10 duck#13
Identical Phi Values time#14 time#11
Identical Phi Values rem8u#19 rem8u#25
Identical Phi Values y#15 y#18
Identical Phi Values hiscore#1 hiscore#19
Identical Phi Values z#18 z#16
Identical Phi Values k#10 k#12
Identical Phi Values n#11 n#10
Identical Phi Values peephole#10 peephole#14
Identical Phi Values score#11 score#26
Identical Phi Values tu#11 tu#10
Identical Phi Values j#10 j#19
Identical Phi Values duck#11 duck#10
Identical Phi Values time#15 time#14
Identical Phi Values rem8u#10 rem8u#19
Identical Phi Values y#16 y#15
Identical Phi Values hiscore#3 hiscore#1
Successful SSA optimization Pass2IdenticalPhiElimination
Identical Phi Values memset::return#0 memset::str#3
Identical Phi Values wait::n#5 wait::n#6
Identical Phi Values rem8u#102 rem8u#127
Identical Phi Values y#108 y#114
Identical Phi Values hiscore#104 hiscore#110
Identical Phi Values rem8u#103 rem8u#102
Identical Phi Values y#90 y#108
Identical Phi Values hiscore#86 hiscore#104
Identical Phi Values k#103 k#101
Identical Phi Values n#90 n#89
Identical Phi Values score#100 score#38
Identical Phi Values hiscore#44 hiscore#76
Identical Phi Values k#54 k#86
Identical Phi Values z#73 z#25
Successful SSA optimization Pass2IdenticalPhiElimination
Identical Phi Values rem8u#100 rem8u#127
Identical Phi Values y#80 y#114
Identical Phi Values hiscore#76 hiscore#110
Identical Phi Values k#86 k#101
Identical Phi Values n#80 n#89
Successful SSA optimization Pass2IdenticalPhiElimination
Identified duplicate assignment right side [290] clear_screen::$5 = $1e00 + z#2
Identified duplicate assignment right side [770] main::$127 = y#35 + 1
Identified duplicate assignment right side [775] main::$130 = y#35 + $16
Identified duplicate assignment right side [780] main::$133 = y#35 + $17
Identified duplicate assignment right side [792] main::$138 = duck#1 + 1
Identified duplicate assignment right side [797] main::$141 = duck#1 + $16
Identified duplicate assignment right side [802] main::$144 = duck#1 + $17
Identified duplicate assignment right side [812] main::$119 = peephole#12 + c
Identified duplicate assignment right side [815] main::$121 = peephole#12 + c
Identified duplicate assignment right side [818] main::$123 = peephole#12 + c
Successful SSA optimization Pass2DuplicateRValueIdentification
Simple Condition memcpy::$1 [7] if(memcpy::src#2!=memcpy::src_end#0) goto memcpy::@2
Simple Condition memset::$1 [14] if(memset::num#2<=0) goto memset::@1
Simple Condition memset::$3 [21] if(memset::dst#2!=memset::end#0) goto memset::@4
Simple Condition utoa::$0 [29] if(utoa::radix#2==DECIMAL) goto utoa::@1
Simple Condition utoa::$1 [33] if(utoa::radix#2==HEXADECIMAL) goto utoa::@2
Simple Condition utoa::$2 [37] if(utoa::radix#2==OCTAL) goto utoa::@3
Simple Condition utoa::$3 [41] if(utoa::radix#2==BINARY) goto utoa::@4
Simple Condition utoa::$5 [58] if(utoa::digit#2<utoa::$4) goto utoa::@11
Simple Condition utoa_append::$0 [83] if(utoa_append::value#2>=utoa_append::sub#0) goto utoa_append::@2
Simple Condition gotoxy::$1 [90] if(gotoxy::y#4<=$19) goto gotoxy::@1
Simple Condition gotoxy::$3 [93] if(gotoxy::x#4<$28) goto gotoxy::@2
Simple Condition cputc::$0 [108] if(cputc::c#0=='
') goto cputc::@1
Simple Condition cputc::$2 [114] if(conio_cursor_x!=$28) goto cputc::@return
Simple Condition cputs::$2 [129] if(0!=cputs::c#1) goto cputs::@2
Simple Condition cscroll::$1 [138] if(conio_cursor_y!=$19) goto cscroll::@return
Simple Condition cscroll::$7 [140] if(0!=conio_scroll_enable) goto cscroll::@3
Simple Condition conio_c64_init::$1 [170] if(conio_c64_init::line#0<$19) goto conio_c64_init::@1
Simple Condition divr8u::$3 [184] if(divr8u::$1==0) goto divr8u::@2
Simple Condition divr8u::$8 [189] if(divr8u::rem#6<divr8u::divisor#6) goto divr8u::@3
Simple Condition divr8u::$10 [194] if(divr8u::i#1!=rangelast(0,7)) goto divr8u::@1
Simple Condition clear_screen::$2 [220] if(z#2<$1fa) goto clear_screen::@2
Simple Condition write_score::$1 [245] if(score#13<=$fde8) goto write_score::@1
Simple Condition write_score::$9 [251] if(m<4) goto write_score::@7
Simple Condition write_score::$4 [259] if(score#38<=9) goto write_score::@2
Simple Condition write_score::$6 [261] if(score#38<=$63) goto write_score::@3
Simple Condition write_score::$10 [275] if(m<4) goto write_score::@11
Simple Condition wait::$0 [284] if(m<wait::n#6) goto wait::@2
Simple Condition wait::$1 [288] if(z#23<$21c) goto wait::@4
Simple Condition read_chrono::$4 [306] if(time#0>=$a) goto read_chrono::@return
Simple Condition main::$2 [319] if(m<$28) goto main::@2
Simple Condition main::$11 [347] if(l>5) goto main::@4
Simple Condition main::$16 [362] if(k#101<$16) goto main::@7
Simple Condition main::$24 [374] if(l<=1) goto main::@12
Simple Condition main::$18 [377] if(n#101<$16) goto main::@10
Simple Condition main::$31 [410] if(main::$29<=$1f9) goto main::@14
Simple Condition main::$32 [414] if(j#11<=m) goto main::@16
Simple Condition main::$37 [423] if(z#9<$1fa) goto main::@13
Simple Condition main::$44 [426] if(j#13<4) goto main::@19
Simple Condition main::$49 [440] if(j#16<5) goto main::@22
Simple Condition main::$54 [453] if(tu#13<$a) goto main::@24
Simple Condition main::$76 [488] if(time#11<$a) goto main::@28
Simple Condition main::$80 [497] if(main::$78!=0) goto main::@30
Simple Condition main::$157 [519] if(tu#1<$b) goto main::@23
Simple Condition main::$83 [523] if(main::$81!=0) goto main::@31
Simple Condition main::$86 [528] if(main::$84!=0) goto main::@32
Simple Condition main::$90 [533] if(main::$88!=0) goto main::@33
Simple Condition main::$94 [538] if(main::$92!=0) goto main::@34
Simple Condition main::$95 [559] if(peephole#12!=duck#1) goto main::@35
Simple Condition main::$168 [654] if(score#38<=hiscore#110) goto main::@48
Simple Condition main::$176 [674] if(j#19==$b) goto main::@3
Successful SSA optimization Pass2ConditionalJumpSimplification
Rewriting ! if()-condition to reversed if() [63] utoa::$8 = ! utoa::$7
Rewriting || if()-condition to two if()s [62] utoa::$7 = utoa::started#2 || utoa::$6
Rewriting || if()-condition to two if()s [238] random::$2 = random::$0 || random::$1
Rewriting || if()-condition to two if()s [482] main::$74 = main::$71 || main::$73
Rewriting || if()-condition to two if()s [479] main::$71 = main::$68 || main::$70
Rewriting || if()-condition to two if()s [476] main::$68 = main::$65 || main::$67
Rewriting || if()-condition to two if()s [473] main::$65 = main::$63 || main::$64
Rewriting ! if()-condition to reversed if() [555] main::$117 = ! main::$116
Rewriting && if()-condition to two if()s [554] main::$116 = main::$114 && main::$115
Rewriting && if()-condition to two if()s [552] main::$114 = main::$112 && main::$113
Rewriting && if()-condition to two if()s [550] main::$112 = main::$109 && main::$111
Rewriting && if()-condition to two if()s [547] main::$109 = main::$106 && main::$108
Rewriting && if()-condition to two if()s [544] main::$106 = main::$103 && main::$105
Rewriting && if()-condition to two if()s [671] main::$175 = main::$173 && main::$174
Successful SSA optimization Pass2ConditionalAndOrRewriting
Warning! Adding boolean cast to non-boolean condition utoa::started#2
Constant right-side identified [143] memcpy::num#0 = (unumber)$19*$28-$28
Constant right-side identified [148] memcpy::num#1 = (unumber)$19*$28-$28
Constant right-side identified [175] conio_c64_init::line#1 = (unumber)$19-1
Successful SSA optimization Pass2ConstantRValueConsolidation
Constant utoa::max_digits#0 = 0
Constant utoa::digit_values#0 = (unsigned int *) 0
Constant utoa::max_digits#1 = 5
Constant utoa::digit_values#1 = RADIX_DECIMAL_VALUES
Constant utoa::max_digits#2 = 4
Constant utoa::digit_values#2 = RADIX_HEXADECIMAL_VALUES
Constant utoa::max_digits#3 = 6
Constant utoa::digit_values#3 = RADIX_OCTAL_VALUES
Constant utoa::max_digits#4 = $10
Constant utoa::digit_values#4 = RADIX_BINARY_VALUES
Constant utoa::started#0 = 0
Constant utoa::digit#0 = 0
Constant utoa::started#1 = 1
Constant utoa_append::digit#0 = 0
Constant gotoxy::y#0 = 0
Constant gotoxy::x#0 = 0
Constant cputs::c#0 = 0
Constant memcpy::destination#0 = (void *)DEFAULT_SCREEN
Constant memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
Constant memcpy::num#0 = (unumber)$19*$28-$28
Constant memcpy::destination#1 = (void *)COLORRAM
Constant memcpy::source#1 = (void *)COLORRAM+$28
Constant memcpy::num#1 = (unumber)$19*$28-$28
Constant memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
Constant memset::c#0 = ' '
Constant memset::num#0 = $28
Constant memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
Constant memset::num#1 = $28
Constant gotoxy::x#1 = 0
Constant gotoxy::y#1 = 0
Constant gotoxy::x#2 = 0
Constant conio_c64_init::line#1 = (unumber)$19-1
Constant divr8u::quotient#0 = 0
Constant divr8u::i#0 = 0
Constant divr8u::rem#3 = 0
Constant z#0 = 0
Constant gotoxy::x#3 = 0
Constant gotoxy::y#3 = 0
Constant score#0 = 0
Constant utoa::buffer#5 = buffer
Constant utoa::radix#0 = $a
Constant z#3 = 0
Constant div16u8u::divisor#0 = $3c
Constant clear_screen::n#0 = $20
Constant clear_screen::m#0 = 0
Constant textcolor::color#0 = 7
Constant cputs::s#1 = intro
Constant textcolor::color#1 = 1
Constant cputs::s#2 = levels
Constant textcolor::color#2 = 2
Constant cputs::s#3 = foot
Constant clear_screen::n#1 = 4
Constant clear_screen::m#1 = 0
Constant k#0 = 1
Constant n#0 = 2
Constant z#8 = 1
Constant peephole#0 = $1f1f
Constant score#2 = 0
Constant tu#0 = 1
Constant j#0 = 0
Constant j#1 = 1
Constant j#4 = 0
Constant random::k#1 = 0
Constant random::n#1 = $ff
Constant random::k#2 = 0
Constant random::n#2 = $ff
Constant time#18 = 0
Constant wait::n#0 = $14
Constant wait::n#1 = $a
Constant wait::n#2 = $a
Constant time#4 = $a
Constant wait::n#3 = 5
Constant wait::n#4 = 5
Constant clear_screen::n#2 = 4
Constant clear_screen::m#2 = 0
Constant textcolor::color#3 = 7
Constant cputs::s#4 = game_over
Constant textcolor::color#4 = 2
Constant cputs::s#5 = your_score
Constant cputs::s#6 = buffer
Constant textcolor::color#5 = 3
Constant cputs::s#7 = high_score
Constant utoa::buffer#6 = buffer
Constant utoa::radix#1 = $a
Constant cputs::s#8 = buffer
Constant textcolor::color#6 = 1
Constant cputs::s#9 = play_again
Constant rem8u#27 = 0
Constant j#25 = 0
Constant k#13 = 0
Constant n#16 = 0
Constant tu#17 = 0
Constant duck#17 = 0
Constant peephole#15 = 0
Constant y#25 = 0
Constant z#17 = 0
Constant time#22 = 0
Constant score#10 = 0
Constant hiscore#12 = 0
Constant conio_scroll_enable = 1
Successful SSA optimization Pass2ConstantIdentification
Constant divr8u::divisor#0 = div16u8u::divisor#0
Constant divr8u::divisor#1 = div16u8u::divisor#0
Successful SSA optimization Pass2ConstantIdentification
if() condition always true - replacing block destination [140] if(0!=conio_scroll_enable) goto cscroll::@3
Successful SSA optimization Pass2ConstantIfs
Resolved ranged next value [192] divr8u::i#1 = ++ divr8u::i#2 to ++
Resolved ranged comparison value [194] if(divr8u::i#1!=rangelast(0,7)) goto divr8u::@1 to 8
Rewriting conditional comparison [90] if(gotoxy::y#4<=$19) goto gotoxy::@1
Rewriting conditional comparison [259] if(score#38<=9) goto write_score::@2
Rewriting conditional comparison [261] if(score#38<=$63) goto write_score::@3
Rewriting conditional comparison [347] if(l>5) goto main::@4
Rewriting conditional comparison [374] if(l<=1) goto main::@12
Simplifying expression containing zero buffer in [262] points[2] = buffer[0]
Simplifying expression containing zero buffer in [270] points[1] = buffer[0]
Successful SSA optimization PassNSimplifyExpressionWithZero
Removing PHI-reference to removed block (cscroll::@2) in block gotoxy
Removing PHI-reference to removed block (cscroll::@2) in block gotoxy
Removing unused block cscroll::@2
Removing unused block cscroll::@8
Successful SSA optimization Pass2EliminateUnusedBlocks
Eliminating unused variable memcpy::return#2 and assignment [105] memcpy::return#2 = memcpy::destination#2
Eliminating unused variable memcpy::return#3 and assignment [107] memcpy::return#3 = memcpy::destination#2
Eliminating unused variable memset::return#2 and assignment [109] memset::return#2 = memset::str#3
Eliminating unused variable memset::return#3 and assignment [112] memset::return#3 = memset::str#3
Eliminating unused variable - keeping the phi block z#41
Eliminating unused variable textcolor::return#2 and assignment [236] textcolor::return#2 = textcolor::return#0
Eliminating unused variable textcolor::return#3 and assignment [239] textcolor::return#3 = textcolor::return#0
Eliminating unused variable textcolor::return#4 and assignment [242] textcolor::return#4 = textcolor::return#0
Eliminating unused variable textcolor::return#5 and assignment [473] textcolor::return#5 = textcolor::return#0
Eliminating unused variable textcolor::return#6 and assignment [476] textcolor::return#6 = textcolor::return#0
Eliminating unused variable textcolor::return#7 and assignment [480] textcolor::return#7 = textcolor::return#0
Eliminating unused variable textcolor::return#8 and assignment [488] textcolor::return#8 = textcolor::return#0
Eliminating unused constant utoa::max_digits#0
Eliminating unused constant utoa::digit_values#0
Eliminating unused constant gotoxy::x#1
Eliminating unused constant gotoxy::y#1
Eliminating unused constant cputs::c#0
Eliminating unused constant j#25
Eliminating unused constant k#13
Eliminating unused constant tu#17
Eliminating unused constant duck#17
Eliminating unused constant peephole#15
Eliminating unused constant time#22
Eliminating unused constant score#10
Eliminating unused constant conio_scroll_enable
Successful SSA optimization PassNEliminateUnusedVars
Eliminating unused variable textcolor::return#0 and assignment [100] textcolor::return#0 = conio_textcolor
Eliminating unused constant z#17
Successful SSA optimization PassNEliminateUnusedVars
Adding number conversion cast (unumber) 0 in utoa::$12 = 0 != utoa::started#2
Adding number conversion cast (unumber) $19+1 in if(gotoxy::y#4<$19+1) goto gotoxy::@1
Adding number conversion cast (unumber) 1 in if(gotoxy::y#4<(unumber)$19+1) goto gotoxy::@1
Adding number conversion cast (unumber) 8 in if(divr8u::i#1!=8) goto divr8u::@1
Adding number conversion cast (unumber) 9+1 in if(score#38<9+1) goto write_score::@2
Adding number conversion cast (unumber) 1 in if(score#38<(unumber)9+1) goto write_score::@2
Adding number conversion cast (unumber) $63+1 in if(score#38<$63+1) goto write_score::@3
Adding number conversion cast (unumber) 1 in if(score#38<(unumber)$63+1) goto write_score::@3
Adding number conversion cast (unumber) 5+1 in if(l>=5+1) goto main::@4
Adding number conversion cast (unumber) 1 in if(l>=(unumber)5+1) goto main::@4
Adding number conversion cast (unumber) 1+1 in if(l<1+1) goto main::@12
Adding number conversion cast (unumber) 1 in if(l<(unumber)1+1) goto main::@12
Successful SSA optimization PassNAddNumberTypeConversions
Simplifying constant integer cast 0
Simplifying constant integer cast $19+(unumber)1
Simplifying constant integer cast 1
Simplifying constant integer cast 8
Simplifying constant integer cast 9+(unumber)1
Simplifying constant integer cast 1
Simplifying constant integer cast $63+(unumber)1
Simplifying constant integer cast 1
Simplifying constant integer cast 5+(unumber)1
Simplifying constant integer cast 1
Simplifying constant integer cast 1+(unumber)1
Simplifying constant integer cast 1
Successful SSA optimization PassNCastSimplification
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 8
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 1
Successful SSA optimization PassNFinalizeNumberTypeConversions
Alias candidate removed (volatile)conio_line_text = gotoxy::$5
Alias candidate removed (volatile)conio_line_color = gotoxy::$6
Alias candidate removed (volatile)chrout::petscii = main::$57
Alias clear_screen::$5 = clear_screen::$3
Alias main::$127 = main::$126
Alias main::$130 = main::$129
Alias main::$133 = main::$132
Alias main::$138 = main::$137
Alias main::$141 = main::$140
Alias main::$144 = main::$143
Alias main::$119 = main::$118 main::$121 main::$123
Successful SSA optimization Pass2AliasElimination
Alias candidate removed (volatile)conio_line_text = gotoxy::$5
Alias candidate removed (volatile)conio_line_color = gotoxy::$6
Alias candidate removed (volatile)chrout::petscii = main::$57
Simple Condition utoa::$12 [42] if(0!=utoa::started#2) goto utoa::@14
Simple Condition utoa::$6 [56] if(utoa::value#3>=utoa::digit_value#0) goto utoa::@14
Simple Condition random::$0 [162] if(m<random::k#4) goto random::@1
Condition not simple random::$1 [164] if(random::$1) goto random::@1
Introduced intermediate condition variable random::$3 = m
Simple Condition random::$1 [164] if(random::$3>random::n#4) goto random::@1
Simple Condition main::$63 [342] if(duck#1>$1fe3) goto main::@25
Simple Condition main::$103 [397] if(*((char *)y#13)!=brick) goto main::@122
Simple Condition main::$173 [471] if(j#19!=$b) goto main::@123
Simple Condition main::$73 [475] if(*((char *)main::$72)==brick) goto main::@25
Simple Condition main::$70 [476] if(*((char *)main::$69)==brick) goto main::@25
Simple Condition main::$67 [477] if(*((char *)main::$66)==brick) goto main::@25
Simple Condition main::$64 [478] if(*((char *)duck#1)==brick) goto main::@25
Simple Condition main::$115 [479] if(y#13<$1fe3) goto main::@44
Simple Condition main::$113 [480] if(y#13>$1e16) goto main::@118
Simple Condition main::$111 [481] if(*((char *)main::$110)!=brick) goto main::@119
Simple Condition main::$108 [482] if(*((char *)main::$107)!=brick) goto main::@120
Simple Condition main::$105 [483] if(*((char *)main::$104)!=brick) goto main::@121
Simple Condition main::$174 [484] if(j#19!=$1c) goto main::@49
Successful SSA optimization Pass2ConditionalJumpSimplification
Negating conditional jump and destination [397] if(*((char *)y#13)==brick) goto main::@37
Negating conditional jump and destination [471] if(j#19==$b) goto main::@50
Negating conditional jump and destination [479] if(y#13>=$1fe3) goto main::@37
Negating conditional jump and destination [481] if(*((char *)main::$110)==brick) goto main::@37
Negating conditional jump and destination [483] if(*((char *)main::$104)==brick) goto main::@37
Successful SSA optimization Pass2ConditionalJumpSequenceImprovement
Alias candidate removed (volatile)conio_line_text = gotoxy::$5
Alias candidate removed (volatile)conio_line_color = gotoxy::$6
Alias candidate removed (volatile)chrout::petscii = main::$57
Inlining Noop Cast [1] memcpy::src#0 = (char *)memcpy::source#2 keeping memcpy::source#2
Inlining Noop Cast [2] memcpy::dst#0 = (char *)memcpy::destination#2 keeping memcpy::destination#2
Inlining Noop Cast [3] memcpy::$2 = (char *)memcpy::source#2 keeping memcpy::source#2
Inlining Noop Cast [13] memset::$4 = (char *)memset::str#3 keeping memset::str#3
Inlining Noop Cast [15] memset::dst#0 = (char *)memset::str#3 keeping memset::str#3
Successful SSA optimization Pass2NopCastInlining
Rewriting multiplication to use shift [38] utoa::$10 = utoa::digit#2 * SIZEOF_UNSIGNED_INT
Rewriting multiplication to use shift and addition[69] gotoxy::line_offset#0 = gotoxy::$7 * $28
Rewriting multiplication to use shift [203] read_chrono::$0 = m * $100
Rewriting multiplication to use shift and addition[279] main::$26 = 3 * l
Rewriting multiplication to use shift and addition[390] main::$97 = main::$96 * $a
Successful SSA optimization Pass2MultiplyToShiftRewriting
Inlining constant with var siblings memcpy::destination#0
Inlining constant with var siblings memcpy::source#0
Inlining constant with var siblings memcpy::num#0
Inlining constant with var siblings memcpy::destination#1
Inlining constant with var siblings memcpy::source#1
Inlining constant with var siblings memcpy::num#1
Inlining constant with var siblings memset::str#0
Inlining constant with var siblings memset::c#0
Inlining constant with var siblings memset::num#0
Inlining constant with var siblings memset::str#1
Inlining constant with var siblings memset::num#1
Inlining constant with var siblings utoa::max_digits#1
Inlining constant with var siblings utoa::digit_values#1
Inlining constant with var siblings utoa::max_digits#2
Inlining constant with var siblings utoa::digit_values#2
Inlining constant with var siblings utoa::max_digits#3
Inlining constant with var siblings utoa::digit_values#3
Inlining constant with var siblings utoa::max_digits#4
Inlining constant with var siblings utoa::digit_values#4
Inlining constant with var siblings utoa::started#0
Inlining constant with var siblings utoa::digit#0
Inlining constant with var siblings utoa::started#1
Inlining constant with var siblings utoa::buffer#5
Inlining constant with var siblings utoa::radix#0
Inlining constant with var siblings utoa::buffer#6
Inlining constant with var siblings utoa::radix#1
Inlining constant with var siblings utoa_append::digit#0
Inlining constant with var siblings gotoxy::y#0
Inlining constant with var siblings gotoxy::x#0
Inlining constant with var siblings gotoxy::x#2
Inlining constant with var siblings gotoxy::x#3
Inlining constant with var siblings gotoxy::y#3
Inlining constant with var siblings cputs::s#1
Inlining constant with var siblings cputs::s#2
Inlining constant with var siblings cputs::s#3
Inlining constant with var siblings cputs::s#4
Inlining constant with var siblings cputs::s#5
Inlining constant with var siblings cputs::s#6
Inlining constant with var siblings cputs::s#7
Inlining constant with var siblings cputs::s#8
Inlining constant with var siblings cputs::s#9
Inlining constant with var siblings textcolor::color#0
Inlining constant with var siblings textcolor::color#1
Inlining constant with var siblings textcolor::color#2
Inlining constant with var siblings textcolor::color#3
Inlining constant with var siblings textcolor::color#4
Inlining constant with var siblings textcolor::color#5
Inlining constant with var siblings textcolor::color#6
Inlining constant with var siblings conio_c64_init::line#1
Inlining constant with var siblings divr8u::quotient#0
Inlining constant with var siblings divr8u::i#0
Inlining constant with var siblings divr8u::rem#3
Inlining constant with var siblings divr8u::divisor#0
Inlining constant with var siblings divr8u::divisor#1
Inlining constant with var siblings clear_screen::n#0
Inlining constant with var siblings clear_screen::m#0
Inlining constant with var siblings clear_screen::n#1
Inlining constant with var siblings clear_screen::m#1
Inlining constant with var siblings clear_screen::n#2
Inlining constant with var siblings clear_screen::m#2
Inlining constant with var siblings random::k#1
Inlining constant with var siblings random::n#1
Inlining constant with var siblings random::k#2
Inlining constant with var siblings random::n#2
Inlining constant with var siblings wait::n#0
Inlining constant with var siblings wait::n#1
Inlining constant with var siblings wait::n#2
Inlining constant with var siblings wait::n#3
Inlining constant with var siblings wait::n#4
Inlining constant with var siblings z#0
Inlining constant with var siblings score#0
Inlining constant with var siblings z#3
Inlining constant with var siblings k#0
Inlining constant with var siblings n#0
Inlining constant with var siblings z#8
Inlining constant with var siblings peephole#0
Inlining constant with var siblings score#2
Inlining constant with var siblings tu#0
Inlining constant with var siblings j#0
Inlining constant with var siblings j#1
Inlining constant with var siblings j#4
Inlining constant with var siblings time#18
Inlining constant with var siblings time#4
Inlining constant with var siblings rem8u#27
Inlining constant with var siblings n#16
Inlining constant with var siblings y#25
Inlining constant with var siblings hiscore#12
Constant inlined cputs::s#5 = your_score
Constant inlined utoa::digit_values#1 = RADIX_DECIMAL_VALUES
Constant inlined cputs::s#6 = buffer
Constant inlined cputs::s#3 = foot
Constant inlined utoa::radix#0 = $a
Constant inlined cputs::s#4 = game_over
Constant inlined utoa::radix#1 = $a
Constant inlined utoa::digit_values#4 = RADIX_BINARY_VALUES
Constant inlined cputs::s#1 = intro
Constant inlined cputs::s#2 = levels
Constant inlined wait::n#4 = 5
Constant inlined utoa::digit_values#2 = RADIX_HEXADECIMAL_VALUES
Constant inlined wait::n#3 = 5
Constant inlined utoa::digit_values#3 = RADIX_OCTAL_VALUES
Constant inlined wait::n#2 = $a
Constant inlined wait::n#1 = $a
Constant inlined wait::n#0 = $14
Constant inlined memset::num#1 = $28
Constant inlined memset::num#0 = $28
Constant inlined divr8u::i#0 = 0
Constant inlined random::n#1 = $ff
Constant inlined time#4 = $a
Constant inlined random::n#2 = $ff
Constant inlined rem8u#27 = 0
Constant inlined clear_screen::m#0 = 0
Constant inlined tu#0 = 1
Constant inlined clear_screen::m#1 = 0
Constant inlined k#0 = 1
Constant inlined clear_screen::m#2 = 0
Constant inlined divr8u::rem#3 = 0
Constant inlined memcpy::source#0 = (void *)DEFAULT_SCREEN+$28
Constant inlined score#2 = 0
Constant inlined textcolor::color#6 = 1
Constant inlined gotoxy::x#3 = 0
Constant inlined utoa::buffer#6 = buffer
Constant inlined time#18 = 0
Constant inlined utoa::buffer#5 = buffer
Constant inlined gotoxy::x#0 = 0
Constant inlined gotoxy::x#2 = 0
Constant inlined utoa::max_digits#1 = 5
Constant inlined utoa::max_digits#2 = 4
Constant inlined utoa::max_digits#3 = 6
Constant inlined y#25 = 0
Constant inlined memset::c#0 = ' '
Constant inlined utoa::max_digits#4 = $10
Constant inlined cputs::s#9 = play_again
Constant inlined cputs::s#7 = high_score
Constant inlined cputs::s#8 = buffer
Constant inlined utoa_append::digit#0 = 0
Constant inlined divr8u::divisor#1 = div16u8u::divisor#0
Constant inlined divr8u::divisor#0 = div16u8u::divisor#0
Constant inlined hiscore#12 = 0
Constant inlined memcpy::destination#0 = (void *)DEFAULT_SCREEN
Constant inlined memcpy::destination#1 = (void *)COLORRAM
Constant inlined textcolor::color#3 = 7
Constant inlined textcolor::color#2 = 2
Constant inlined textcolor::color#5 = 3
Constant inlined conio_c64_init::line#1 = (char)$19-1
Constant inlined score#0 = 0
Constant inlined memcpy::source#1 = (void *)COLORRAM+$28
Constant inlined textcolor::color#4 = 2
Constant inlined utoa::digit#0 = 0
Constant inlined textcolor::color#1 = 1
Constant inlined j#0 = 0
Constant inlined textcolor::color#0 = 7
Constant inlined clear_screen::n#0 = $20
Constant inlined j#1 = 1
Constant inlined clear_screen::n#1 = 4
Constant inlined n#0 = 2
Constant inlined j#4 = 0
Constant inlined clear_screen::n#2 = 4
Constant inlined random::k#2 = 0
Constant inlined random::k#1 = 0
Constant inlined memset::str#1 = (void *)COLORRAM+(unsigned int)$19*$28-$28
Constant inlined memset::str#0 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28
Constant inlined z#0 = 0
Constant inlined n#16 = 0
Constant inlined utoa::started#1 = 1
Constant inlined utoa::started#0 = 0
Constant inlined z#3 = 0
Constant inlined z#8 = 1
Constant inlined memcpy::num#1 = (unsigned int)$19*$28-$28
Constant inlined divr8u::quotient#0 = 0
Constant inlined memcpy::num#0 = (unsigned int)$19*$28-$28
Constant inlined gotoxy::y#3 = 0
Constant inlined peephole#0 = $1f1f
Constant inlined gotoxy::y#0 = 0
Successful SSA optimization Pass2ConstantInlining
Consolidated array index constant in *(points+2)
Consolidated array index constant in *(buffer+1)
Consolidated array index constant in *(points+3)
Consolidated array index constant in *(points+1)
Consolidated array index constant in *(buffer+1)
Consolidated array index constant in *(points+2)
Consolidated array index constant in *(buffer+2)
Consolidated array index constant in *(points+3)
Consolidated constant in assignment main::$152
Consolidated constant in assignment main::$154
Consolidated constant in assignment main::$156
Successful SSA optimization Pass2ConstantAdditionElimination
Alias candidate removed (volatile)conio_line_text = gotoxy::$5
Alias candidate removed (volatile)conio_line_color = gotoxy::$6
Alias candidate removed (volatile)chrout::petscii = main::$57
Alias gotoxy::line_offset#0 = gotoxy::$10
Alias main::$26 = main::$178
Alias main::$97 = main::$181
Successful SSA optimization Pass2AliasElimination
Alias candidate removed (volatile)conio_line_text = gotoxy::$5
Alias candidate removed (volatile)conio_line_color = gotoxy::$6
Alias candidate removed (volatile)chrout::petscii = main::$57
Identical Phi Values memcpy::num#2 (unsigned int)$19*$28-$28
Identical Phi Values memset::num#2 $28
Identical Phi Values utoa::radix#2 $a
Identical Phi Values utoa::buffer#11 buffer
Identical Phi Values gotoxy::x#4 0
Identical Phi Values divr8u::divisor#6 div16u8u::divisor#0
Identical Phi Values clear_screen::m#5 0
Successful SSA optimization Pass2IdenticalPhiElimination
Identical Phi Values gotoxy::x#5 0
Successful SSA optimization Pass2IdenticalPhiElimination
Constant right-side identified [22] utoa::buffer#0 = ++ buffer
Successful SSA optimization Pass2ConstantRValueConsolidation
Constant utoa::buffer#0 = ++buffer
Successful SSA optimization Pass2ConstantIdentification
if() condition always false - eliminating [9] if($28<=0) goto memset::@1
if() condition always true - replacing block destination [17] if($a==DECIMAL) goto utoa::@1
if() condition always false - eliminating [18] if($a==HEXADECIMAL) goto utoa::@2
if() condition always false - eliminating [19] if($a==OCTAL) goto utoa::@3
if() condition always false - eliminating [20] if($a==BINARY) goto utoa::@4
if() condition always true - replacing block destination [59] if(0<$28) goto gotoxy::@2
Successful SSA optimization Pass2ConstantIfs
Eliminating variable utoa::buffer#1 from unused block utoa::@9
Eliminating variable utoa::buffer#2 from unused block utoa::@9
Removing unused block utoa::@6
Removing PHI-reference to removed block (utoa::@2) in block utoa::@5
Removing PHI-reference to removed block (utoa::@2) in block utoa::@5
Removing unused block utoa::@2
Removing unused block utoa::@7
Removing PHI-reference to removed block (utoa::@3) in block utoa::@5
Removing PHI-reference to removed block (utoa::@3) in block utoa::@5
Removing unused block utoa::@3
Removing unused block utoa::@8
Removing PHI-reference to removed block (utoa::@4) in block utoa::@5
Removing PHI-reference to removed block (utoa::@4) in block utoa::@5
Removing unused block utoa::@4
Removing unused block utoa::@9
Removing unused block gotoxy::@4
Successful SSA optimization Pass2EliminateUnusedBlocks
Eliminating unused constant BINARY
Eliminating unused constant OCTAL
Eliminating unused constant DECIMAL
Eliminating unused constant HEXADECIMAL
Eliminating unused constant utoa::buffer#0
Eliminating unused constant RADIX_BINARY_VALUES
Eliminating unused constant RADIX_OCTAL_VALUES
Eliminating unused constant RADIX_HEXADECIMAL_VALUES
Eliminating unused constant SIZEOF_UNSIGNED_INT
Successful SSA optimization PassNEliminateUnusedVars
Alias candidate removed (volatile)conio_line_text = gotoxy::$5
Alias candidate removed (volatile)conio_line_color = gotoxy::$6
Alias candidate removed (volatile)chrout::petscii = main::$57
Identical Phi Values utoa::max_digits#7 5
Identical Phi Values utoa::digit_values#8 RADIX_DECIMAL_VALUES
Successful SSA optimization Pass2IdenticalPhiElimination
Constant right-side identified [19] utoa::$4 = 5 - 1
Successful SSA optimization Pass2ConstantRValueConsolidation
Constant utoa::$4 = 5-1
Successful SSA optimization Pass2ConstantIdentification
Constant inlined utoa::$4 = 5-1
Successful SSA optimization Pass2ConstantInlining
Alias candidate removed (volatile)conio_line_text = gotoxy::$5
Alias candidate removed (volatile)conio_line_color = gotoxy::$6
Alias candidate removed (volatile)chrout::petscii = main::$57
Alias candidate removed (volatile)conio_line_text = gotoxy::$5
Alias candidate removed (volatile)conio_line_color = gotoxy::$6
Alias candidate removed (volatile)chrout::petscii = main::$57
Finalized unsigned number type (char) 2
Finalized unsigned number type (char) 8
Finalized unsigned number type (char) $a
Finalized unsigned number type (char) $10
Finalized unsigned number type (char) $b
Finalized unsigned number type (char) $b
Finalized unsigned number type (char) $19
Finalized unsigned number type (char) $28
Finalized unsigned number type (char) $28
Finalized unsigned number type (char) $19
Finalized unsigned number type (char) $28
Finalized unsigned number type (char) $19
Finalized unsigned number type (char) $28
Finalized unsigned number type (char) $19
Finalized unsigned number type (char) 1
Successful SSA optimization PassNFinalizeNumberTypeConversions
Simplifying constant integer cast $19-1
Successful SSA optimization PassNCastSimplification
Alias candidate removed (volatile)conio_line_text = gotoxy::$5
Alias candidate removed (volatile)conio_line_color = gotoxy::$6
Alias candidate removed (volatile)chrout::petscii = main::$57
Alias candidate removed (volatile)conio_line_text = gotoxy::$5
Alias candidate removed (volatile)conio_line_color = gotoxy::$6
Alias candidate removed (volatile)chrout::petscii = main::$57
Added new block during phi lifting utoa::@17(between utoa::@16 and utoa::@13)
Added new block during phi lifting gotoxy::@5(between gotoxy and gotoxy::@1)
Added new block during phi lifting conio_c64_init::@4(between conio_c64_init and conio_c64_init::@1)
Added new block during phi lifting divr8u::@7(between divr8u::@3 and divr8u::@1)
Added new block during phi lifting divr8u::@8(between divr8u::@1 and divr8u::@2)
Added new block during phi lifting divr8u::@9(between divr8u::@2 and divr8u::@3)
Added new block during phi lifting write_score::@16(between write_score and write_score::@1)
Added new block during phi lifting main::@124(between main::@50 and main::@3)
Added new block during phi lifting main::@125(between main::@76 and main::@12)
Added new block during phi lifting main::@126(between main::@78 and main::@12)
Added new block during phi lifting main::@127(between main::@78 and main::@13)
Added new block during phi lifting main::@128(between main::@95 and main::@23)
Added new block during phi lifting main::@129(between main::@21 and main::@23)
Fixing phi predecessor for tu#13 to new block ( main::@21 -> main::@129 ) during phi lifting.
Fixing phi predecessor for peephole#52 to new block ( main::@21 -> main::@129 ) during phi lifting.
Added new block during phi lifting main::@130(between main::@93 and main::@30)
Added new block during phi lifting main::@131(between main::@30 and main::@31)
Added new block during phi lifting main::@132(between main::@31 and main::@32)
Added new block during phi lifting main::@133(between main::@32 and main::@33)
Added new block during phi lifting main::@134(between main::@33 and main::@34)
Added new block during phi lifting main::@135(between main::@34 and main::@37)
Added new block during phi lifting main::@136(between main::@109 and main::@48)
Adding NOP phi() at start of __start
Adding NOP phi() at start of __start::@2
Adding NOP phi() at start of __start::@1
Adding NOP phi() at start of __start::@3
Adding NOP phi() at start of conio_c64_init::@2
Adding NOP phi() at start of conio_c64_init::@3
Adding NOP phi() at start of main::@54
Adding NOP phi() at start of main::@55
Adding NOP phi() at start of main::@56
Adding NOP phi() at start of main::@57
Adding NOP phi() at start of main::@58
Adding NOP phi() at start of main::@59
Adding NOP phi() at start of main::@60
Adding NOP phi() at start of main::@5
Adding NOP phi() at start of main::@20
Adding NOP phi() at start of main::@89
Adding NOP phi() at start of main::@25
Adding NOP phi() at start of main::@26
Adding NOP phi() at start of main::@45
Adding NOP phi() at start of main::@102
Adding NOP phi() at start of main::@103
Adding NOP phi() at start of main::@104
Adding NOP phi() at start of main::@105
Adding NOP phi() at start of main::@106
Adding NOP phi() at start of main::@107
Adding NOP phi() at start of main::@108
Adding NOP phi() at start of main::@110
Adding NOP phi() at start of main::@111
Adding NOP phi() at start of main::@112
Adding NOP phi() at start of main::@113
Adding NOP phi() at start of main::@28
Adding NOP phi() at start of main::@87
Adding NOP phi() at start of main::@14
Adding NOP phi() at start of main::@65
Adding NOP phi() at start of gotoxy::@3
Adding NOP phi() at start of clear_screen::@3
Adding NOP phi() at start of clear_screen::@5
Adding NOP phi() at start of write_score::@4
Adding NOP phi() at start of wait::@2
Adding NOP phi() at start of utoa::@1
Adding NOP phi() at start of cputc::@3
Adding NOP phi() at start of cputc::@5
Adding NOP phi() at start of cputc::@1
Adding NOP phi() at start of cputc::@4
Adding NOP phi() at start of cputln::@1
Adding NOP phi() at start of cscroll::@1
Adding NOP phi() at start of cscroll::@3
Adding NOP phi() at start of cscroll::@4
Adding NOP phi() at start of cscroll::@5
Adding NOP phi() at start of memcpy::@3
Adding NOP phi() at start of memset::@1
CALL GRAPH
Calls in [__start] to conio_c64_init:8 main:11
Calls in [conio_c64_init] to gotoxy:20
Calls in [main] to chrout:26 chrout:28 clear_screen:32 textcolor:34 cputs:36 textcolor:38 cputs:40 textcolor:42 cputs:44 clear_screen:50 chrout:53 chrout:55 chrout:57 chrout:62 chrout:66 random:75 chrout:82 chrout:84 chrout:86 chrout:88 chrout:90 chrout:92 write_score:97 chrout:99 chrout:101 chrout:111 chrout:113 chrout:115 chrout:119 chrout:121 random:124 random:126 chrono_restart:138 write_score:150 wait:153 clear_screen:168 chrout:171 textcolor:173 cputs:175 textcolor:177 cputs:179 cputs:181 textcolor:183 cputs:185 utoa:191 cputs:193 textcolor:195 cputs:197 read_chrono:217 wait:252 wait:283 wait:300 write_score:323 wait:325 chrout:337 chrout:340 chrout:344 chrout:351 chrout:358 chrout:362 chrout:367 chrout:372
Calls in [clear_screen] to gotoxy:400 chrout:402
Calls in [cputs] to cputc:422
Calls in [write_score] to utoa:438 chrout:447 chrout:449 chrout:455
Calls in [utoa] to utoa_append:501
Calls in [read_chrono] to div16u8u:510
Calls in [cputc] to cputln:525 cputln:529
Calls in [div16u8u] to divr8u:542 divr8u:549
Calls in [cputln] to cscroll:558
Calls in [cscroll] to memcpy:593 memcpy:595 memset:597 memset:600
Created 78 initial phi equivalence classes
Coalesced [19] gotoxy::y#8 = gotoxy::y#2
Coalesced [23] conio_c64_init::line#3 = conio_c64_init::line#0
Coalesced [58] n#123 = n#109
Coalesced [73] random::k#5 = random::k#0
Coalesced [74] random::n#5 = random::n#0
Coalesced [78] z#146 = z#28
Coalesced [105] rem8u#141 = rem8u#127
Coalesced [106] y#128 = y#114
Coalesced [107] z#149 = z#128
Coalesced [108] n#126 = n#89
Coalesced [139] score#113 = score#38
Coalesced [140] rem8u#144 = rem8u#48
Coalesced [141] y#131 = y#49
Coalesced [142] z#152 = z#102
Coalesced [143] peephole#88 = peephole#52
Coalesced [144] n#129 = n#52
Coalesced [149] score#109 = score#4
Coalesced [152] z#140 = z#100
Coalesced [187] hiscore#125 = score#38
Coalesced [190] utoa::value#17 = utoa::value#2
Coalesced (already) [205] rem8u#140 = rem8u#25
Coalesced (already) [206] y#127 = y#18
Not coalescing [207] hiscore#123 = hiscore#19
Coalesced (already) [208] n#122 = n#20
Not coalescing [209] hiscore#124 = hiscore#110
Coalesced [210] tu#86 = tu#1
Coalesced (already) [211] rem8u#142 = rem8u#25
Coalesced (already) [212] y#129 = y#18
Coalesced [213] z#150 = z#25
Coalesced (already) [214] peephole#86 = peephole#12
Coalesced (already) [215] n#127 = n#20
Coalesced [225] y#132 = y#0
Coalesced [230] y#135 = y#1
Coalesced [235] y#137 = y#2
Coalesced [240] y#139 = y#3
Coalesced (already) [251] z#139 = z#100
Coalesced [253] score#117 = score#8
Coalesced [256] z#154 = z#25
Coalesced [257] time#63 = time#38
Coalesced [258] score#115 = score#81
Coalesced (already) [282] z#138 = z#48
Coalesced (already) [299] z#142 = z#25
Coalesced [301] time#61 = time#17
Coalesced [302] score#112 = score#43
Coalesced [303] rem8u#143 = rem8u#0
Not coalescing [304] y#130 = y#35
Coalesced (already) [305] z#151 = z#25
Coalesced [306] peephole#87 = y#35
Coalesced [307] n#128 = n#14
Not coalescing [319] y#141 = y#13
Coalesced (already) [320] y#140 = peephole#12
Coalesced [322] score#110 = score#6
Coalesced (already) [324] z#141 = z#100
Coalesced [326] time#64 = time#0
Coalesced (already) [327] score#116 = score#38
Coalesced (already) [328] z#153 = z#100
Coalesced (already) [329] time#62 = time#0
Coalesced (already) [330] score#114 = score#19
Coalesced [331] y#138 = y#12
Coalesced [332] y#136 = y#11
Coalesced [333] y#134 = y#10
Coalesced [334] y#133 = y#18
Coalesced [342] j#29 = j#5
Coalesced [346] j#28 = j#3
Coalesced [355] z#147 = z#9
Coalesced (already) [356] z#148 = z#9
Coalesced [360] j#27 = j#2
Coalesced [369] k#106 = k#1
Coalesced [370] n#124 = n#101
Coalesced [374] n#125 = n#1
Coalesced [393] gotoxy::y#9 = gotoxy::y#4
Coalesced [410] z#137 = z#1
Coalesced [415] cputs::s#14 = cputs::s#11
Coalesced [423] cputs::s#15 = cputs::s#0
Coalesced [437] utoa::value#18 = utoa::value#1
Coalesced [459] score#111 = score#13
Coalesced (already) [464] z#143 = z#53
Coalesced [472] z#144 = z#23
Coalesced [474] z#145 = z#4
Coalesced [477] utoa::value#20 = utoa::value#10
Coalesced [489] utoa::value#21 = utoa::value#3
Coalesced [490] utoa::started#6 = utoa::started#2
Coalesced [491] utoa::buffer#24 = utoa::buffer#10
Coalesced [494] utoa::digit#7 = utoa::digit#1
Coalesced (already) [495] utoa::value#19 = utoa::value#7
Coalesced (already) [496] utoa::started#5 = utoa::started#4
Coalesced (already) [497] utoa::buffer#23 = utoa::buffer#15
Coalesced [505] utoa::value#22 = utoa::value#0
Coalesced [506] utoa::buffer#25 = utoa::buffer#4
Coalesced [512] time#0 = div16u8u::return#2
Coalesced [531] utoa_append::value#6 = utoa_append::value#0
Coalesced [538] utoa_append::value#7 = utoa_append::value#1
Coalesced [539] utoa_append::digit#5 = utoa_append::digit#1
Coalesced [541] divr8u::dividend#9 = divr8u::dividend#1
Coalesced [547] divr8u::rem#12 = divr8u::rem#4
Coalesced [548] divr8u::dividend#10 = divr8u::dividend#2
Coalesced [562] divr8u::rem#13 = divr8u::rem#10
Coalesced [563] divr8u::dividend#11 = divr8u::dividend#5
Coalesced [569] divr8u::rem#16 = divr8u::rem#1
Coalesced [576] divr8u::rem#18 = divr8u::rem#2
Coalesced [577] divr8u::return#8 = divr8u::quotient#2
Coalesced [581] rem8u#0 = divr8u::rem#11
Coalesced [583] divr8u::rem#14 = divr8u::rem#11
Coalesced [584] divr8u::dividend#12 = divr8u::dividend#0
Coalesced [585] divr8u::quotient#9 = divr8u::return#0
Coalesced [586] divr8u::i#7 = divr8u::i#1
Coalesced [587] divr8u::rem#17 = divr8u::rem#6
Coalesced [588] divr8u::return#7 = divr8u::quotient#1
Coalesced [589] divr8u::rem#15 = divr8u::rem#0
Coalesced [599] memset::c#6 = memset::c#1
Coalesced [616] memcpy::src#5 = memcpy::src#1
Coalesced [617] memcpy::dst#5 = memcpy::dst#1
Coalesced [627] memset::dst#5 = memset::dst#1
Coalesced down to 38 phi equivalence classes
Culled Empty Block label __start::@2
Culled Empty Block label __start::@3
Culled Empty Block label conio_c64_init::@2
Culled Empty Block label conio_c64_init::@3
Culled Empty Block label main::@60
Culled Empty Block label main::@64
Culled Empty Block label main::@125
Culled Empty Block label main::@129
Culled Empty Block label main::@89
Culled Empty Block label main::@92
Culled Empty Block label main::@46
Culled Empty Block label main::@113
Culled Empty Block label main::@128
Culled Empty Block label main::@98
Culled Empty Block label main::@135
Culled Empty Block label main::@97
Culled Empty Block label main::@134
Culled Empty Block label main::@133
Culled Empty Block label main::@132
Culled Empty Block label main::@131
Culled Empty Block label main::@130
Culled Empty Block label main::@87
Culled Empty Block label main::@14
Culled Empty Block label main::@126
Culled Empty Block label main::@127
Culled Empty Block label main::@65
Culled Empty Block label gotoxy::@3
Culled Empty Block label clear_screen::@5
Culled Empty Block label cputs::@3
Culled Empty Block label write_score::@4
Culled Empty Block label wait::@2
Culled Empty Block label utoa::@1
Culled Empty Block label utoa::@5
Culled Empty Block label utoa::@17
Culled Empty Block label cputc::@5
Culled Empty Block label cputc::@4
Culled Empty Block label cputln::@1
Culled Empty Block label divr8u::@6
Culled Empty Block label divr8u::@7
Culled Empty Block label divr8u::@9
Culled Empty Block label divr8u::@8
Culled Empty Block label cscroll::@1
Culled Empty Block label memcpy::@3
Culled Empty Block label memset::@1
Renumbering block memset::@2 to memset::@1
Renumbering block memset::@3 to memset::@2
Renumbering block memset::@4 to memset::@3
Renumbering block utoa::@10 to utoa::@1
Renumbering block utoa::@11 to utoa::@2
Renumbering block utoa::@12 to utoa::@3
Renumbering block utoa::@13 to utoa::@4
Renumbering block utoa::@14 to utoa::@5
Renumbering block utoa::@15 to utoa::@6
Renumbering block utoa::@16 to utoa::@7
Renumbering block gotoxy::@5 to gotoxy::@3
Renumbering block cscroll::@3 to cscroll::@1
Renumbering block cscroll::@4 to cscroll::@2
Renumbering block cscroll::@5 to cscroll::@3
Renumbering block cscroll::@6 to cscroll::@4
Renumbering block cscroll::@7 to cscroll::@5
Renumbering block conio_c64_init::@4 to conio_c64_init::@2
Renumbering block write_score::@5 to write_score::@4
Renumbering block write_score::@6 to write_score::@5
Renumbering block write_score::@7 to write_score::@6
Renumbering block write_score::@8 to write_score::@7
Renumbering block write_score::@9 to write_score::@8
Renumbering block write_score::@10 to write_score::@9
Renumbering block write_score::@11 to write_score::@10
Renumbering block write_score::@12 to write_score::@11
Renumbering block write_score::@13 to write_score::@12
Renumbering block write_score::@14 to write_score::@13
Renumbering block write_score::@15 to write_score::@14
Renumbering block write_score::@16 to write_score::@15
Renumbering block wait::@3 to wait::@2
Renumbering block wait::@4 to wait::@3
Renumbering block wait::@5 to wait::@4
Renumbering block main::@15 to main::@14
Renumbering block main::@16 to main::@15
Renumbering block main::@17 to main::@16
Renumbering block main::@18 to main::@17
Renumbering block main::@19 to main::@18
Renumbering block main::@20 to main::@19
Renumbering block main::@21 to main::@20
Renumbering block main::@22 to main::@21
Renumbering block main::@23 to main::@22
Renumbering block main::@24 to main::@23
Renumbering block main::@25 to main::@24
Renumbering block main::@26 to main::@25
Renumbering block main::@27 to main::@26
Renumbering block main::@28 to main::@27
Renumbering block main::@29 to main::@28
Renumbering block main::@30 to main::@29
Renumbering block main::@31 to main::@30
Renumbering block main::@32 to main::@31
Renumbering block main::@33 to main::@32
Renumbering block main::@34 to main::@33
Renumbering block main::@35 to main::@34
Renumbering block main::@36 to main::@35
Renumbering block main::@37 to main::@36
Renumbering block main::@38 to main::@37
Renumbering block main::@39 to main::@38
Renumbering block main::@40 to main::@39
Renumbering block main::@41 to main::@40
Renumbering block main::@42 to main::@41
Renumbering block main::@43 to main::@42
Renumbering block main::@44 to main::@43
Renumbering block main::@45 to main::@44
Renumbering block main::@47 to main::@45
Renumbering block main::@48 to main::@46
Renumbering block main::@49 to main::@47
Renumbering block main::@50 to main::@48
Renumbering block main::@51 to main::@49
Renumbering block main::@52 to main::@50
Renumbering block main::@53 to main::@51
Renumbering block main::@54 to main::@52
Renumbering block main::@55 to main::@53
Renumbering block main::@56 to main::@54
Renumbering block main::@57 to main::@55
Renumbering block main::@58 to main::@56
Renumbering block main::@59 to main::@57
Renumbering block main::@61 to main::@58
Renumbering block main::@62 to main::@59
Renumbering block main::@63 to main::@60
Renumbering block main::@66 to main::@61
Renumbering block main::@67 to main::@62
Renumbering block main::@68 to main::@63
Renumbering block main::@69 to main::@64
Renumbering block main::@70 to main::@65
Renumbering block main::@71 to main::@66
Renumbering block main::@72 to main::@67
Renumbering block main::@73 to main::@68
Renumbering block main::@74 to main::@69
Renumbering block main::@75 to main::@70
Renumbering block main::@76 to main::@71
Renumbering block main::@77 to main::@72
Renumbering block main::@78 to main::@73
Renumbering block main::@79 to main::@74
Renumbering block main::@80 to main::@75
Renumbering block main::@81 to main::@76
Renumbering block main::@82 to main::@77
Renumbering block main::@83 to main::@78
Renumbering block main::@84 to main::@79
Renumbering block main::@85 to main::@80
Renumbering block main::@86 to main::@81
Renumbering block main::@88 to main::@82
Renumbering block main::@90 to main::@83
Renumbering block main::@91 to main::@84
Renumbering block main::@93 to main::@85
Renumbering block main::@94 to main::@86
Renumbering block main::@95 to main::@87
Renumbering block main::@96 to main::@88
Renumbering block main::@99 to main::@89
Renumbering block main::@100 to main::@90
Renumbering block main::@101 to main::@91
Renumbering block main::@102 to main::@92
Renumbering block main::@103 to main::@93
Renumbering block main::@104 to main::@94
Renumbering block main::@105 to main::@95
Renumbering block main::@106 to main::@96
Renumbering block main::@107 to main::@97
Renumbering block main::@108 to main::@98
Renumbering block main::@109 to main::@99
Renumbering block main::@110 to main::@100
Renumbering block main::@111 to main::@101
Renumbering block main::@112 to main::@102
Renumbering block main::@114 to main::@103
Renumbering block main::@115 to main::@104
Renumbering block main::@116 to main::@105
Renumbering block main::@117 to main::@106
Renumbering block main::@118 to main::@107
Renumbering block main::@119 to main::@108
Renumbering block main::@120 to main::@109
Renumbering block main::@121 to main::@110
Renumbering block main::@122 to main::@111
Renumbering block main::@123 to main::@112
Renumbering block main::@124 to main::@113
Renumbering block main::@136 to main::@114
Adding NOP phi() at start of __start
Adding NOP phi() at start of __start::@1
Adding NOP phi() at start of conio_c64_init::@2
Adding NOP phi() at start of main::@52
Adding NOP phi() at start of main::@53
Adding NOP phi() at start of main::@54
Adding NOP phi() at start of main::@55
Adding NOP phi() at start of main::@56
Adding NOP phi() at start of main::@57
Adding NOP phi() at start of main::@5
Adding NOP phi() at start of main::@19
Adding NOP phi() at start of main::@24
Adding NOP phi() at start of main::@25
Adding NOP phi() at start of main::@44
Adding NOP phi() at start of main::@92
Adding NOP phi() at start of main::@93
Adding NOP phi() at start of main::@94
Adding NOP phi() at start of main::@95
Adding NOP phi() at start of main::@96
Adding NOP phi() at start of main::@97
Adding NOP phi() at start of main::@98
Adding NOP phi() at start of main::@100
Adding NOP phi() at start of main::@101
Adding NOP phi() at start of main::@102
Adding NOP phi() at start of main::@27
Adding NOP phi() at start of main::@88
Adding NOP phi() at start of gotoxy::@3
Adding NOP phi() at start of clear_screen::@3
Adding NOP phi() at start of write_score::@15
Adding NOP phi() at start of cputc::@3
Adding NOP phi() at start of cputc::@1
Adding NOP phi() at start of utoa_append
Adding NOP phi() at start of cscroll::@1
Adding NOP phi() at start of cscroll::@2
Adding NOP phi() at start of cscroll::@3
FINAL CONTROL FLOW GRAPH
void __start()
__start: scope:[__start] from
[0] phi()
to:__start::__init1
__start::__init1: scope:[__start] from __start
[1] conio_cursor_x = 0
[2] conio_cursor_y = 0
[3] conio_line_text = DEFAULT_SCREEN
[4] conio_line_color = COLORRAM
[5] conio_textcolor = LIGHT_BLUE
[6] l = 0
[7] m = 0
[8] call conio_c64_init
to:__start::@1
__start::@1: scope:[__start] from __start::__init1
[9] phi()
[10] call main
to:__start::@return
__start::@return: scope:[__start] from __start::@1
[11] return
to:@return
void conio_c64_init()
conio_c64_init: scope:[conio_c64_init] from __start::__init1
[12] conio_c64_init::line#0 = *conio_c64_init::BASIC_CURSOR_LINE
[13] if(conio_c64_init::line#0<$19) goto conio_c64_init::@2
to:conio_c64_init::@1
conio_c64_init::@2: scope:[conio_c64_init] from conio_c64_init
[14] phi()
to:conio_c64_init::@1
conio_c64_init::@1: scope:[conio_c64_init] from conio_c64_init conio_c64_init::@2
[15] conio_c64_init::line#2 = phi( conio_c64_init::@2/conio_c64_init::line#0, conio_c64_init/$19-1 )
[16] gotoxy::y#2 = conio_c64_init::line#2
[17] call gotoxy
to:conio_c64_init::@return
conio_c64_init::@return: scope:[conio_c64_init] from conio_c64_init::@1
[18] return
to:@return
void main()
main: scope:[main] from __start::@1
[19] *((char *) 36879) = 8
[20] chrout::petscii = lock
[21] call chrout
to:main::@50
main::@50: scope:[main] from main
[22] chrout::petscii = lower
[23] call chrout
to:main::@51
main::@51: scope:[main] from main::@50
[24] m = 0
to:main::@1
main::@1: scope:[main] from main::@2 main::@51
[25] if(m<$28) goto main::@2
to:main::@3
main::@3: scope:[main] from main::@1 main::@113
[26] n#109 = phi( main::@1/0, main::@113/n#20 )
[26] hiscore#110 = phi( main::@1/0, main::@113/hiscore#123 )
[26] y#114 = phi( main::@1/0, main::@113/y#18 )
[26] rem8u#127 = phi( main::@1/0, main::@113/rem8u#25 )
[27] call clear_screen
to:main::@52
main::@52: scope:[main] from main::@3
[28] phi()
[29] call textcolor
to:main::@53
main::@53: scope:[main] from main::@52
[30] phi()
[31] call cputs
to:main::@54
main::@54: scope:[main] from main::@53
[32] phi()
[33] call textcolor
to:main::@55
main::@55: scope:[main] from main::@54
[34] phi()
[35] call cputs
to:main::@56
main::@56: scope:[main] from main::@55
[36] phi()
[37] call textcolor
to:main::@57
main::@57: scope:[main] from main::@56
[38] phi()
[39] call cputs
to:main::@4
main::@4: scope:[main] from main::@4 main::@57
[40] l = *((char *) 197)
[41] l = ++ l
[42] if(l>=5+1) goto main::@4
to:main::@5
main::@5: scope:[main] from main::@4
[43] phi()
[44] call clear_screen
to:main::@58
main::@58: scope:[main] from main::@5
[45] *((char *) 36869) = $ff
[46] chrout::petscii = reverse_on
[47] call chrout
to:main::@59
main::@59: scope:[main] from main::@58
[48] chrout::petscii = red
[49] call chrout
to:main::@60
main::@60: scope:[main] from main::@59
[50] chrout::petscii = down
[51] call chrout
to:main::@6
main::@6: scope:[main] from main::@60 main::@64
[52] n#89 = phi( main::@60/n#109, main::@64/n#101 )
[52] k#101 = phi( main::@60/1, main::@64/k#1 )
[53] if(k#101<$16) goto main::@7
to:main::@8
main::@8: scope:[main] from main::@6
[54] chrout::petscii = brick
[55] call chrout
to:main::@61
main::@61: scope:[main] from main::@8
[56] *((char *) 8185) = brick
[57] *((char *)$1ff9+c) = 2
[58] chrout::petscii = home
[59] call chrout
to:main::@62
main::@62: scope:[main] from main::@61
[60] if(l<1+1) goto main::@12
to:main::@13
main::@13: scope:[main] from main::@62 main::@73
[61] z#28 = phi( main::@62/1, main::@73/z#9 )
[62] random::k#0 = 7 - l
[63] main::$177 = l << 1
[64] main::$26 = main::$177 + l
[65] random::n#0 = $1a - main::$26
[66] call random
to:main::@71
main::@71: scope:[main] from main::@13
[67] main::$29 = z#28 + m
[68] if(main::$29<=$1f9) goto main::@14
to:main::@12
main::@12: scope:[main] from main::@62 main::@71 main::@73
[69] z#128 = phi( main::@62/1, main::@71/z#28, main::@73/z#9 )
[70] *((char *) 36878) = $f
[71] chrout::petscii = home
[72] call chrout
to:main::@65
main::@65: scope:[main] from main::@12
[73] chrout::petscii = yellow
[74] call chrout
to:main::@66
main::@66: scope:[main] from main::@65
[75] chrout::petscii = $50
[76] call chrout
to:main::@67
main::@67: scope:[main] from main::@66
[77] chrout::petscii = $54
[78] call chrout
to:main::@68
main::@68: scope:[main] from main::@67
[79] chrout::petscii = $53
[80] call chrout
to:main::@69
main::@69: scope:[main] from main::@68
[81] chrout::petscii = $3a
[82] call chrout
to:main::@70
main::@70: scope:[main] from main::@69
[83] *((char *) 211) = $12
to:main::@17
main::@17: scope:[main] from main::@70 main::@74
[84] j#13 = phi( main::@70/0, main::@74/j#3 )
[85] if(j#13<4) goto main::@18
to:main::@19
main::@19: scope:[main] from main::@17
[86] phi()
[87] call write_score
to:main::@75
main::@75: scope:[main] from main::@19
[88] chrout::petscii = home
[89] call chrout
to:main::@76
main::@76: scope:[main] from main::@75
[90] chrout::petscii = green
[91] call chrout
to:main::@77
main::@77: scope:[main] from main::@76
[92] *((char *) 211) = $a
to:main::@20
main::@20: scope:[main] from main::@77 main::@78
[93] j#16 = phi( main::@77/0, main::@78/j#5 )
[94] if(j#16<5) goto main::@21
to:main::@22
main::@22: scope:[main] from main::@20 main::@87
[95] n#52 = phi( main::@20/n#89, main::@87/n#20 )
[95] peephole#52 = phi( main::@20/$1f1f, main::@87/peephole#12 )
[95] z#102 = phi( main::@20/z#128, main::@87/z#25 )
[95] y#49 = phi( main::@20/y#114, main::@87/y#18 )
[95] rem8u#48 = phi( main::@20/rem8u#127, main::@87/rem8u#25 )
[95] tu#13 = phi( main::@20/1, main::@87/tu#1 )
[96] chrout::petscii = home
[97] call chrout
to:main::@79
main::@79: scope:[main] from main::@22
[98] chrout::petscii = green
[99] call chrout
to:main::@80
main::@80: scope:[main] from main::@79
[100] chrout::petscii = reverse_on
[101] call chrout
to:main::@81
main::@81: scope:[main] from main::@80
[102] *((char *) 211) = $f
[103] if(tu#13<$a) goto main::@23
to:main::@45
main::@45: scope:[main] from main::@81
[104] chrout::petscii = $31
[105] call chrout
to:main::@82
main::@82: scope:[main] from main::@45
[106] chrout::petscii = $30
[107] call chrout
to:main::@24
main::@24: scope:[main] from main::@103 main::@104 main::@105 main::@106 main::@23 main::@82 main::@84
[108] phi()
[109] call random
to:main::@83
main::@83: scope:[main] from main::@24
[110] duck#0 = m
[111] call random
to:main::@84
main::@84: scope:[main] from main::@83
[112] main::$61 = m + $1e15
[113] duck#1 = main::$61 + duck#0
[114] main::$66 = duck#1 + 1
[115] main::$69 = duck#1 + $16
[116] main::$72 = duck#1 + $17
[117] if(duck#1>$1fe3) goto main::@24
to:main::@106
main::@106: scope:[main] from main::@84
[118] if(*((char *)duck#1)==brick) goto main::@24
to:main::@105
main::@105: scope:[main] from main::@106
[119] if(*((char *)main::$66)==brick) goto main::@24
to:main::@104
main::@104: scope:[main] from main::@105
[120] if(*((char *)main::$69)==brick) goto main::@24
to:main::@103
main::@103: scope:[main] from main::@104
[121] if(*((char *)main::$72)==brick) goto main::@24
to:main::@25
main::@25: scope:[main] from main::@103
[122] phi()
[123] call chrono_restart
to:main::@26
main::@26: scope:[main] from main::@25 main::@90
[124] n#20 = phi( main::@90/n#14, main::@25/n#52 )
[124] peephole#12 = phi( main::@90/y#35, main::@25/peephole#52 )
[124] z#100 = phi( main::@90/z#25, main::@25/z#102 )
[124] y#18 = phi( main::@90/y#130, main::@25/y#49 )
[124] rem8u#25 = phi( main::@90/divr8u::rem#11, main::@25/rem8u#48 )
[124] score#19 = phi( main::@90/score#43, main::@25/score#38 )
[124] time#11 = phi( main::@90/time#17, main::@25/0 )
[125] if(time#11<$a) goto main::@27
to:main::@28
main::@28: scope:[main] from main::@26
[126] tu#1 = ++ tu#13
[127] score#4 = score#19 - $a
[128] call write_score
to:main::@86
main::@86: scope:[main] from main::@28
[129] *((char *) 36877) = $82
[130] call wait
to:main::@87
main::@87: scope:[main] from main::@86
[131] *((char *) 36877) = 0
[132] main::$150 = duck#1 + c
[133] *((char *)main::$150) = 0
[134] main::$151 = duck#1
[135] main::$152 = main::$151 + 1+c
[136] *((char *)main::$152) = 0
[137] main::$153 = duck#1
[138] main::$154 = main::$153 + $16+c
[139] *((char *)main::$154) = 0
[140] main::$155 = duck#1
[141] main::$156 = main::$155 + $17+c
[142] *((char *)main::$156) = 0
[143] if(tu#1<$b) goto main::@22
to:main::@44
main::@44: scope:[main] from main::@87
[144] phi()
[145] call clear_screen
to:main::@91
main::@91: scope:[main] from main::@44
[146] *((char *) 36869) = $f0
[147] chrout::petscii = lower
[148] call chrout
to:main::@92
main::@92: scope:[main] from main::@91
[149] phi()
[150] call textcolor
to:main::@93
main::@93: scope:[main] from main::@92
[151] phi()
[152] call cputs
to:main::@94
main::@94: scope:[main] from main::@93
[153] phi()
[154] call textcolor
to:main::@95
main::@95: scope:[main] from main::@94
[155] phi()
[156] call cputs
to:main::@96
main::@96: scope:[main] from main::@95
[157] phi()
[158] call cputs
to:main::@97
main::@97: scope:[main] from main::@96
[159] phi()
[160] call textcolor
to:main::@98
main::@98: scope:[main] from main::@97
[161] phi()
[162] call cputs
to:main::@99
main::@99: scope:[main] from main::@98
[163] if(score#38<=hiscore#110) goto main::@114
to:main::@46
main::@114: scope:[main] from main::@99
[164] hiscore#124 = hiscore#110
to:main::@46
main::@46: scope:[main] from main::@114 main::@99
[165] hiscore#19 = phi( main::@114/hiscore#124, main::@99/score#38 )
[166] utoa::value#2 = hiscore#19
[167] call utoa
to:main::@100
main::@100: scope:[main] from main::@46
[168] phi()
[169] call cputs
to:main::@101
main::@101: scope:[main] from main::@100
[170] phi()
[171] call textcolor
to:main::@102
main::@102: scope:[main] from main::@101
[172] phi()
[173] call cputs
to:main::@47
main::@47: scope:[main] from main::@102 main::@112
[174] j#19 = *((char *) 197)
[175] if(j#19==$b) goto main::@48
to:main::@112
main::@112: scope:[main] from main::@47
[176] if(j#19!=$1c) goto main::@47
to:main::@48
main::@48: scope:[main] from main::@112 main::@47
[177] if(j#19==$b) goto main::@113
to:main::@49
main::@49: scope:[main] from main::@48
asm { jsr$FD22 }
to:main::@return
main::@return: scope:[main] from main::@49
[179] return
to:@return
main::@113: scope:[main] from main::@48
[180] hiscore#123 = hiscore#19
to:main::@3
main::@27: scope:[main] from main::@26
[181] phi()
[182] call read_chrono
to:main::@85
main::@85: scope:[main] from main::@27
[183] m = *((char *) 37151)
[184] *((char *) 37154) = $7f
[185] n#14 = *((char *) 37152)
[186] *((char *) 37154) = $ff
[187] main::$78 = $10 & m
[188] if(main::$78!=0) goto main::@29
to:main::@37
main::@37: scope:[main] from main::@85
[189] y#0 = -- y#18
to:main::@29
main::@29: scope:[main] from main::@37 main::@85
[190] y#10 = phi( main::@37/y#0, main::@85/y#18 )
[191] main::$81 = $80 & n#14
[192] if(main::$81!=0) goto main::@30
to:main::@38
main::@38: scope:[main] from main::@29
[193] y#1 = ++ y#10
to:main::@30
main::@30: scope:[main] from main::@29 main::@38
[194] y#11 = phi( main::@29/y#10, main::@38/y#1 )
[195] main::$84 = 4 & m
[196] if(main::$84!=0) goto main::@31
to:main::@39
main::@39: scope:[main] from main::@30
[197] y#2 = y#11 - $16
to:main::@31
main::@31: scope:[main] from main::@30 main::@39
[198] y#12 = phi( main::@30/y#11, main::@39/y#2 )
[199] main::$88 = 8 & m
[200] if(main::$88!=0) goto main::@32
to:main::@40
main::@40: scope:[main] from main::@31
[201] y#3 = y#12 + $16
to:main::@32
main::@32: scope:[main] from main::@31 main::@40
[202] y#13 = phi( main::@31/y#12, main::@40/y#3 )
[203] main::$92 = $20 & m
[204] if(main::$92!=0) goto main::@33
to:main::@41
main::@41: scope:[main] from main::@32
[205] *((char *) 36877) = $82
[206] if(peephole#12!=duck#1) goto main::@34
to:main::@42
main::@42: scope:[main] from main::@41
[207] main::$96 = $c - div16u8u::return#2
[208] main::$179 = main::$96 << 2
[209] main::$180 = main::$179 + main::$96
[210] main::$97 = main::$180 << 1
[211] score#8 = score#19 + main::$97
[212] call wait
to:main::@35
main::@35: scope:[main] from main::@42 main::@88
[213] score#81 = phi( main::@88/score#38, main::@42/score#8 )
[213] time#38 = phi( main::@88/div16u8u::return#2, main::@42/$a )
[214] *((char *) 36877) = 0
to:main::@33
main::@33: scope:[main] from main::@32 main::@35
[215] score#43 = phi( main::@32/score#19, main::@35/score#81 )
[215] time#17 = phi( main::@32/div16u8u::return#2, main::@35/time#38 )
[215] z#48 = phi( main::@32/z#100, main::@35/z#25 )
[216] main::$104 = y#13 + 1
[217] main::$107 = y#13 + $16
[218] main::$110 = y#13 + $17
[219] if(*((char *)y#13)==brick) goto main::@36
to:main::@111
main::@111: scope:[main] from main::@33
[220] if(*((char *)main::$104)==brick) goto main::@36
to:main::@110
main::@110: scope:[main] from main::@111
[221] if(*((char *)main::$107)!=brick) goto main::@109
to:main::@36
main::@36: scope:[main] from main::@107 main::@108 main::@109 main::@110 main::@111 main::@33 main::@43
[222] y#35 = phi( main::@33/peephole#12, main::@43/y#141 )
[223] *((char *)y#35) = $fd
[224] main::$125 = y#35 + c
[225] *((char *)main::$125) = 1
[226] main::$127 = y#35 + 1
[227] *((char *)main::$127) = $ed
[228] main::$128 = main::$127 + c
[229] *((char *)main::$128) = 1
[230] main::$130 = y#35 + $16
[231] *((char *)main::$130) = $ee
[232] main::$131 = main::$130 + c
[233] *((char *)main::$131) = 1
[234] main::$133 = y#35 + $17
[235] *((char *)main::$133) = $f0
[236] main::$134 = main::$133 + c
[237] *((char *)main::$134) = 1
[238] call wait
to:main::@89
main::@89: scope:[main] from main::@36
[239] *((char *)duck#1) = 0
[240] main::$136 = duck#1 + c
[241] *((char *)main::$136) = 7
[242] main::$138 = duck#1 + 1
[243] *((char *)main::$138) = 1
[244] main::$139 = main::$138 + c
[245] *((char *)main::$139) = 7
[246] main::$141 = duck#1 + $16
[247] *((char *)main::$141) = 2
[248] main::$142 = main::$141 + c
[249] *((char *)main::$142) = 7
[250] main::$144 = duck#1 + $17
[251] *((char *)main::$144) = 3
[252] main::$145 = main::$144 + c
[253] *((char *)main::$145) = 7
[254] call wait
to:main::@90
main::@90: scope:[main] from main::@89
[255] y#130 = y#35
to:main::@26
main::@109: scope:[main] from main::@110
[256] if(*((char *)main::$110)==brick) goto main::@36
to:main::@108
main::@108: scope:[main] from main::@109
[257] if(y#13>$1e16) goto main::@107
to:main::@36
main::@107: scope:[main] from main::@108
[258] if(y#13>=$1fe3) goto main::@36
to:main::@43
main::@43: scope:[main] from main::@107
[259] main::$119 = peephole#12 + c
[260] *((char *)main::$119) = 0
[261] main::$120 = main::$119 + 1
[262] *((char *)main::$120) = 0
[263] main::$122 = main::$119 + $16
[264] *((char *)main::$122) = 0
[265] main::$124 = main::$119 + $17
[266] *((char *)main::$124) = 0
[267] y#141 = y#13
to:main::@36
main::@34: scope:[main] from main::@41
[268] score#6 = score#19 - $a
[269] call write_score
to:main::@88
main::@88: scope:[main] from main::@34
[270] phi()
[271] call wait
to:main::@35
main::@23: scope:[main] from main::@81
[272] main::$57 = $30 + tu#13
[273] chrout::petscii = main::$57
[274] call chrout
to:main::@24
main::@21: scope:[main] from main::@20
[275] chrout::petscii = ducknumber[j#16]
[276] call chrout
to:main::@78
main::@78: scope:[main] from main::@21
[277] j#5 = ++ j#16
to:main::@20
main::@18: scope:[main] from main::@17
[278] chrout::petscii = chrono[j#13]
[279] call chrout
to:main::@74
main::@74: scope:[main] from main::@18
[280] j#3 = ++ j#13
to:main::@17
main::@14: scope:[main] from main::@71 main::@72
[281] j#11 = phi( main::@71/1, main::@72/j#2 )
[282] if(j#11<=m) goto main::@15
to:main::@16
main::@16: scope:[main] from main::@14
[283] chrout::petscii = brick
[284] call chrout
to:main::@73
main::@73: scope:[main] from main::@16
[285] main::$35 = z#28 + m
[286] z#9 = main::$35 + 1
[287] if(z#9<$1fa) goto main::@13
to:main::@12
main::@15: scope:[main] from main::@14
[288] chrout::petscii = right
[289] call chrout
to:main::@72
main::@72: scope:[main] from main::@15
[290] j#2 = ++ j#11
to:main::@14
main::@7: scope:[main] from main::@6
[291] chrout::petscii = brick
[292] call chrout
to:main::@9
main::@9: scope:[main] from main::@63 main::@7
[293] n#101 = phi( main::@7/2, main::@63/n#1 )
[294] if(n#101<$16) goto main::@10
to:main::@11
main::@11: scope:[main] from main::@9
[295] chrout::petscii = brick
[296] call chrout
to:main::@64
main::@64: scope:[main] from main::@11
[297] k#1 = ++ k#101
to:main::@6
main::@10: scope:[main] from main::@9
[298] chrout::petscii = right
[299] call chrout
to:main::@63
main::@63: scope:[main] from main::@10
[300] n#1 = ++ n#101
to:main::@9
main::@2: scope:[main] from main::@1
[301] main::$3 = $1c00 + m
[302] *((char *)main::$3) = duck_udg[m]
[303] m = ++ m
to:main::@1
void gotoxy(char x , char y)
gotoxy: scope:[gotoxy] from clear_screen::@3 conio_c64_init::@1
[304] gotoxy::y#4 = phi( clear_screen::@3/0, conio_c64_init::@1/gotoxy::y#2 )
[305] if(gotoxy::y#4<$19+1) goto gotoxy::@3
to:gotoxy::@1
gotoxy::@3: scope:[gotoxy] from gotoxy
[306] phi()
to:gotoxy::@1
gotoxy::@1: scope:[gotoxy] from gotoxy gotoxy::@3
[307] gotoxy::y#5 = phi( gotoxy::@3/gotoxy::y#4, gotoxy/0 )
to:gotoxy::@2
gotoxy::@2: scope:[gotoxy] from gotoxy::@1
[308] conio_cursor_x = 0
[309] conio_cursor_y = gotoxy::y#5
[310] gotoxy::$7 = (unsigned int)gotoxy::y#5
[311] gotoxy::$8 = gotoxy::$7 << 2
[312] gotoxy::$9 = gotoxy::$8 + gotoxy::$7
[313] gotoxy::line_offset#0 = gotoxy::$9 << 3
[314] gotoxy::$5 = DEFAULT_SCREEN + gotoxy::line_offset#0
[315] conio_line_text = gotoxy::$5
[316] gotoxy::$6 = COLORRAM + gotoxy::line_offset#0
[317] conio_line_color = gotoxy::$6
to:gotoxy::@return
gotoxy::@return: scope:[gotoxy] from gotoxy::@2
[318] return
to:@return
void chrout(volatile char petscii)
chrout: scope:[chrout] from clear_screen::@4 main main::@10 main::@11 main::@12 main::@15 main::@16 main::@18 main::@21 main::@22 main::@23 main::@45 main::@50 main::@58 main::@59 main::@60 main::@61 main::@65 main::@66 main::@67 main::@68 main::@69 main::@7 main::@75 main::@76 main::@79 main::@8 main::@80 main::@82 main::@91 write_score::@10 write_score::@12 write_score::@3
asm { ldapetscii jsr$ffd2 }
to:chrout::@return
chrout::@return: scope:[chrout] from chrout
[320] return
to:@return
void clear_screen(char n , char m)
clear_screen: scope:[clear_screen] from main::@3 main::@44 main::@5
[321] clear_screen::n#5 = phi( main::@3/$20, main::@44/4, main::@5/4 )
to:clear_screen::@1
clear_screen::@1: scope:[clear_screen] from clear_screen clear_screen::@2
[322] z#2 = phi( clear_screen/0, clear_screen::@2/z#1 )
[323] if(z#2<$1fa) goto clear_screen::@2
to:clear_screen::@3
clear_screen::@3: scope:[clear_screen] from clear_screen::@1
[324] phi()
[325] call gotoxy
to:clear_screen::@4
clear_screen::@4: scope:[clear_screen] from clear_screen::@3
[326] chrout::petscii = home
[327] call chrout
to:clear_screen::@return
clear_screen::@return: scope:[clear_screen] from clear_screen::@4
[328] return
to:@return
clear_screen::@2: scope:[clear_screen] from clear_screen::@1
[329] clear_screen::$5 = $1e00 + z#2
[330] clear_screen::$4 = clear_screen::$5 + c
[331] *((char *)clear_screen::$4) = 0
[332] *((char *)clear_screen::$5) = clear_screen::n#5
[333] z#1 = ++ z#2
to:clear_screen::@1
char textcolor(char color)
textcolor: scope:[textcolor] from main::@101 main::@52 main::@54 main::@56 main::@92 main::@94 main::@97
[334] textcolor::color#7 = phi( main::@92/7, main::@94/2, main::@97/3, main::@101/1, main::@52/7, main::@54/1, main::@56/2 )
[335] conio_textcolor = textcolor::color#7
to:textcolor::@return
textcolor::@return: scope:[textcolor] from textcolor
[336] return
to:@return
void cputs(const char *s)
cputs: scope:[cputs] from main::@100 main::@102 main::@53 main::@55 main::@57 main::@93 main::@95 main::@96 main::@98
[337] cputs::s#11 = phi( main::@93/game_over, main::@95/your_score, main::@96/buffer, main::@98/high_score, main::@100/buffer, main::@102/play_again, main::@53/intro, main::@55/levels, main::@57/foot )
to:cputs::@1
cputs::@1: scope:[cputs] from cputs cputs::@2
[338] cputs::s#10 = phi( cputs/cputs::s#11, cputs::@2/cputs::s#0 )
[339] cputs::c#1 = *cputs::s#10
[340] cputs::s#0 = ++ cputs::s#10
[341] if(0!=cputs::c#1) goto cputs::@2
to:cputs::@return
cputs::@return: scope:[cputs] from cputs::@1
[342] return
to:@return
cputs::@2: scope:[cputs] from cputs::@1
[343] cputc::c#0 = cputs::c#1
[344] call cputc
to:cputs::@1
void random(char k , char n)
random: scope:[random] from main::@13 main::@24 main::@83
[345] random::n#4 = phi( main::@13/random::n#0, main::@24/$ff, main::@83/$ff )
[345] random::k#4 = phi( main::@13/random::k#0, main::@24/0, main::@83/0 )
to:random::@1
random::@1: scope:[random] from random random::@1 random::@2
[346] m = *((char *) 37140)
[347] random::$3 = m
[348] if(m<random::k#4) goto random::@1
to:random::@2
random::@2: scope:[random] from random::@1
[349] if(random::$3>random::n#4) goto random::@1
to:random::@return
random::@return: scope:[random] from random::@2
[350] return
to:@return
void write_score()
write_score: scope:[write_score] from main::@19 main::@28 main::@34
[351] score#13 = phi( main::@19/0, main::@28/score#4, main::@34/score#6 )
[352] if(score#13<=$fde8) goto write_score::@15
to:write_score::@1
write_score::@15: scope:[write_score] from write_score
[353] phi()
to:write_score::@1
write_score::@1: scope:[write_score] from write_score write_score::@15
[354] score#38 = phi( write_score::@15/score#13, write_score/0 )
[355] m = 0
to:write_score::@5
write_score::@5: scope:[write_score] from write_score::@1 write_score::@6
[356] if(m<4) goto write_score::@6
to:write_score::@7
write_score::@7: scope:[write_score] from write_score::@5
[357] utoa::value#1 = score#38
[358] call utoa
to:write_score::@11
write_score::@11: scope:[write_score] from write_score::@7
[359] if(score#38<9+1) goto write_score::@2
to:write_score::@8
write_score::@8: scope:[write_score] from write_score::@11
[360] *(points+2) = *buffer
[361] *(points+3) = *(buffer+1)
to:write_score::@2
write_score::@2: scope:[write_score] from write_score::@11 write_score::@8
[362] if(score#38<$63+1) goto write_score::@3
to:write_score::@4
write_score::@4: scope:[write_score] from write_score::@2
[363] *(points+1) = *buffer
[364] *(points+2) = *(buffer+1)
[365] *(points+3) = *(buffer+2)
to:write_score::@3
write_score::@3: scope:[write_score] from write_score::@2 write_score::@4
[366] chrout::petscii = yellow
[367] call chrout
to:write_score::@12
write_score::@12: scope:[write_score] from write_score::@3
[368] chrout::petscii = home
[369] call chrout
to:write_score::@13
write_score::@13: scope:[write_score] from write_score::@12
[370] *((char *) 211) = 4
[371] m = 0
to:write_score::@9
write_score::@9: scope:[write_score] from write_score::@13 write_score::@14
[372] if(m<4) goto write_score::@10
to:write_score::@return
write_score::@return: scope:[write_score] from write_score::@9
[373] return
to:@return
write_score::@10: scope:[write_score] from write_score::@9
[374] chrout::petscii = points[m]
[375] call chrout
to:write_score::@14
write_score::@14: scope:[write_score] from write_score::@10
[376] m = ++ m
to:write_score::@9
write_score::@6: scope:[write_score] from write_score::@5
[377] points[m] = '0'
[378] m = ++ m
to:write_score::@5
void chrono_restart()
chrono_restart: scope:[chrono_restart] from main::@25
asm { lda#0 ldy#0 ldx#0 jsr$ffdb }
to:chrono_restart::@return
chrono_restart::@return: scope:[chrono_restart] from chrono_restart
[380] return
to:@return
void wait(char n)
wait: scope:[wait] from main::@36 main::@42 main::@86 main::@88 main::@89
[381] z#53 = phi( main::@36/z#48, main::@42/z#100, main::@86/z#100, main::@88/z#100, main::@89/z#25 )
[381] wait::n#6 = phi( main::@36/5, main::@42/$a, main::@86/$14, main::@88/$a, main::@89/5 )
[382] m = 0
to:wait::@1
wait::@1: scope:[wait] from wait wait::@4
[383] z#25 = phi( wait/z#53, wait::@4/z#23 )
[384] if(m<wait::n#6) goto wait::@2
to:wait::@return
wait::@return: scope:[wait] from wait::@1
[385] return
to:@return
wait::@2: scope:[wait] from wait::@1 wait::@3
[386] z#23 = phi( wait::@1/0, wait::@3/z#4 )
[387] if(z#23<$21c) goto wait::@3
to:wait::@4
wait::@4: scope:[wait] from wait::@2
[388] m = ++ m
to:wait::@1
wait::@3: scope:[wait] from wait::@2
[389] z#4 = ++ z#23
to:wait::@2
void utoa(unsigned int value , char *buffer , char radix)
utoa: scope:[utoa] from main::@46 write_score::@7
[390] utoa::value#10 = phi( main::@46/utoa::value#2, write_score::@7/utoa::value#1 )
to:utoa::@1
utoa::@1: scope:[utoa] from utoa utoa::@4
[391] utoa::buffer#10 = phi( utoa::@4/utoa::buffer#15, utoa/buffer )
[391] utoa::started#2 = phi( utoa::@4/utoa::started#4, utoa/0 )
[391] utoa::value#3 = phi( utoa::@4/utoa::value#7, utoa/utoa::value#10 )
[391] utoa::digit#2 = phi( utoa::@4/utoa::digit#1, utoa/0 )
[392] if(utoa::digit#2<5-1) goto utoa::@2
to:utoa::@3
utoa::@3: scope:[utoa] from utoa::@1
[393] utoa::$11 = (char)utoa::value#3
[394] *utoa::buffer#10 = DIGITS[utoa::$11]
[395] utoa::buffer#3 = ++ utoa::buffer#10
[396] *utoa::buffer#3 = 0
to:utoa::@return
utoa::@return: scope:[utoa] from utoa::@3
[397] return
to:@return
utoa::@2: scope:[utoa] from utoa::@1
[398] utoa::$10 = utoa::digit#2 << 1
[399] utoa::digit_value#0 = RADIX_DECIMAL_VALUES[utoa::$10]
[400] if(0!=utoa::started#2) goto utoa::@5
to:utoa::@7
utoa::@7: scope:[utoa] from utoa::@2
[401] if(utoa::value#3>=utoa::digit_value#0) goto utoa::@5
to:utoa::@4
utoa::@4: scope:[utoa] from utoa::@6 utoa::@7
[402] utoa::buffer#15 = phi( utoa::@7/utoa::buffer#10, utoa::@6/utoa::buffer#4 )
[402] utoa::started#4 = phi( utoa::@7/utoa::started#2, utoa::@6/1 )
[402] utoa::value#7 = phi( utoa::@7/utoa::value#3, utoa::@6/utoa::value#0 )
[403] utoa::digit#1 = ++ utoa::digit#2
to:utoa::@1
utoa::@5: scope:[utoa] from utoa::@2 utoa::@7
[404] utoa_append::buffer#0 = utoa::buffer#10
[405] utoa_append::value#0 = utoa::value#3
[406] utoa_append::sub#0 = utoa::digit_value#0
[407] call utoa_append
[408] utoa_append::return#0 = utoa_append::value#2
to:utoa::@6
utoa::@6: scope:[utoa] from utoa::@5
[409] utoa::value#0 = utoa_append::return#0
[410] utoa::buffer#4 = ++ utoa::buffer#10
to:utoa::@4
void read_chrono()
read_chrono: scope:[read_chrono] from main::@27
asm { jsr$ffde stal stxm }
[412] read_chrono::$0 = m << 8
[413] div16u8u::dividend#0 = read_chrono::$0 + l
[414] call div16u8u
[415] div16u8u::return#2 = div16u8u::return#0
to:read_chrono::@2
read_chrono::@2: scope:[read_chrono] from read_chrono
[416] *((char *)$1e15+c) = 7
[417] *((char *) 7701) = $b9
[418] if(div16u8u::return#2>=$a) goto read_chrono::@return
to:read_chrono::@1
read_chrono::@1: scope:[read_chrono] from read_chrono::@2
[419] read_chrono::$5 = $b9 - div16u8u::return#2
[420] *((char *) 7701) = read_chrono::$5
to:read_chrono::@return
read_chrono::@return: scope:[read_chrono] from read_chrono::@1 read_chrono::@2
[421] return
to:@return
void cputc(char c)
cputc: scope:[cputc] from cputs::@2
[422] if(cputc::c#0=='
') goto cputc::@1
to:cputc::@2
cputc::@2: scope:[cputc] from cputc
[423] conio_line_text[conio_cursor_x] = cputc::c#0
[424] conio_line_color[conio_cursor_x] = conio_textcolor
[425] conio_cursor_x = ++ conio_cursor_x
[426] if(conio_cursor_x!=$28) goto cputc::@return
to:cputc::@3
cputc::@3: scope:[cputc] from cputc::@2
[427] phi()
[428] call cputln
to:cputc::@return
cputc::@return: scope:[cputc] from cputc::@1 cputc::@2 cputc::@3
[429] return
to:@return
cputc::@1: scope:[cputc] from cputc
[430] phi()
[431] call cputln
to:cputc::@return
unsigned int utoa_append(char *buffer , unsigned int value , unsigned int sub)
utoa_append: scope:[utoa_append] from utoa::@5
[432] phi()
to:utoa_append::@1
utoa_append::@1: scope:[utoa_append] from utoa_append utoa_append::@2
[433] utoa_append::digit#2 = phi( utoa_append/0, utoa_append::@2/utoa_append::digit#1 )
[433] utoa_append::value#2 = phi( utoa_append/utoa_append::value#0, utoa_append::@2/utoa_append::value#1 )
[434] if(utoa_append::value#2>=utoa_append::sub#0) goto utoa_append::@2
to:utoa_append::@3
utoa_append::@3: scope:[utoa_append] from utoa_append::@1
[435] *utoa_append::buffer#0 = DIGITS[utoa_append::digit#2]
to:utoa_append::@return
utoa_append::@return: scope:[utoa_append] from utoa_append::@3
[436] return
to:@return
utoa_append::@2: scope:[utoa_append] from utoa_append::@1
[437] utoa_append::digit#1 = ++ utoa_append::digit#2
[438] utoa_append::value#1 = utoa_append::value#2 - utoa_append::sub#0
to:utoa_append::@1
unsigned int div16u8u(unsigned int dividend , char divisor)
div16u8u: scope:[div16u8u] from read_chrono
[439] divr8u::dividend#1 = byte1 div16u8u::dividend#0
[440] call divr8u
[441] divr8u::return#2 = divr8u::return#0
to:div16u8u::@1
div16u8u::@1: scope:[div16u8u] from div16u8u
[442] div16u8u::quotient_hi#0 = divr8u::return#2
[443] divr8u::dividend#2 = byte0 div16u8u::dividend#0
[444] divr8u::rem#4 = divr8u::rem#11
[445] call divr8u
[446] divr8u::return#3 = divr8u::return#0
to:div16u8u::@2
div16u8u::@2: scope:[div16u8u] from div16u8u::@1
[447] div16u8u::quotient_lo#0 = divr8u::return#3
[448] div16u8u::return#0 = div16u8u::quotient_hi#0 w= div16u8u::quotient_lo#0
to:div16u8u::@return
div16u8u::@return: scope:[div16u8u] from div16u8u::@2
[449] return
to:@return
void cputln()
cputln: scope:[cputln] from cputc::@1 cputc::@3
[450] conio_line_text = conio_line_text + $28
[451] conio_line_color = conio_line_color + $28
[452] conio_cursor_x = 0
[453] conio_cursor_y = ++ conio_cursor_y
[454] call cscroll
to:cputln::@return
cputln::@return: scope:[cputln] from cputln
[455] return
to:@return
char divr8u(char dividend , char divisor , char rem)
divr8u: scope:[divr8u] from div16u8u div16u8u::@1
[456] divr8u::dividend#5 = phi( div16u8u/divr8u::dividend#1, div16u8u::@1/divr8u::dividend#2 )
[456] divr8u::rem#10 = phi( div16u8u/0, div16u8u::@1/divr8u::rem#4 )
to:divr8u::@1
divr8u::@1: scope:[divr8u] from divr8u divr8u::@3
[457] divr8u::i#2 = phi( divr8u/0, divr8u::@3/divr8u::i#1 )
[457] divr8u::quotient#3 = phi( divr8u/0, divr8u::@3/divr8u::return#0 )
[457] divr8u::dividend#3 = phi( divr8u/divr8u::dividend#5, divr8u::@3/divr8u::dividend#0 )
[457] divr8u::rem#5 = phi( divr8u/divr8u::rem#10, divr8u::@3/divr8u::rem#11 )
[458] divr8u::rem#0 = divr8u::rem#5 << 1
[459] divr8u::$1 = divr8u::dividend#3 & $80
[460] if(divr8u::$1==0) goto divr8u::@2
to:divr8u::@4
divr8u::@4: scope:[divr8u] from divr8u::@1
[461] divr8u::rem#1 = divr8u::rem#0 | 1
to:divr8u::@2
divr8u::@2: scope:[divr8u] from divr8u::@1 divr8u::@4
[462] divr8u::rem#6 = phi( divr8u::@1/divr8u::rem#0, divr8u::@4/divr8u::rem#1 )
[463] divr8u::dividend#0 = divr8u::dividend#3 << 1
[464] divr8u::quotient#1 = divr8u::quotient#3 << 1
[465] if(divr8u::rem#6<div16u8u::divisor#0) goto divr8u::@3
to:divr8u::@5
divr8u::@5: scope:[divr8u] from divr8u::@2
[466] divr8u::quotient#2 = ++ divr8u::quotient#1
[467] divr8u::rem#2 = divr8u::rem#6 - div16u8u::divisor#0
to:divr8u::@3
divr8u::@3: scope:[divr8u] from divr8u::@2 divr8u::@5
[468] divr8u::return#0 = phi( divr8u::@2/divr8u::quotient#1, divr8u::@5/divr8u::quotient#2 )
[468] divr8u::rem#11 = phi( divr8u::@2/divr8u::rem#6, divr8u::@5/divr8u::rem#2 )
[469] divr8u::i#1 = ++ divr8u::i#2
[470] if(divr8u::i#1!=8) goto divr8u::@1
to:divr8u::@return
divr8u::@return: scope:[divr8u] from divr8u::@3
[471] return
to:@return
void cscroll()
cscroll: scope:[cscroll] from cputln
[472] if(conio_cursor_y!=$19) goto cscroll::@return
to:cscroll::@1
cscroll::@1: scope:[cscroll] from cscroll
[473] phi()
[474] call memcpy
to:cscroll::@2
cscroll::@2: scope:[cscroll] from cscroll::@1
[475] phi()
[476] call memcpy
to:cscroll::@3
cscroll::@3: scope:[cscroll] from cscroll::@2
[477] phi()
[478] call memset
to:cscroll::@4
cscroll::@4: scope:[cscroll] from cscroll::@3
[479] memset::c#1 = conio_textcolor
[480] call memset
to:cscroll::@5
cscroll::@5: scope:[cscroll] from cscroll::@4
[481] conio_line_text = conio_line_text - $28
[482] conio_line_color = conio_line_color - $28
[483] conio_cursor_y = -- conio_cursor_y
to:cscroll::@return
cscroll::@return: scope:[cscroll] from cscroll cscroll::@5
[484] return
to:@return
void * memcpy(void *destination , void *source , unsigned int num)
memcpy: scope:[memcpy] from cscroll::@1 cscroll::@2
[485] memcpy::destination#2 = phi( cscroll::@1/(void *)DEFAULT_SCREEN, cscroll::@2/(void *)COLORRAM )
[485] memcpy::source#2 = phi( cscroll::@1/(void *)DEFAULT_SCREEN+$28, cscroll::@2/(void *)COLORRAM+$28 )
[486] memcpy::src_end#0 = (char *)memcpy::source#2 + (unsigned int)$19*$28-$28
[487] memcpy::src#4 = (char *)memcpy::source#2
[488] memcpy::dst#4 = (char *)memcpy::destination#2
to:memcpy::@1
memcpy::@1: scope:[memcpy] from memcpy memcpy::@2
[489] memcpy::dst#2 = phi( memcpy/memcpy::dst#4, memcpy::@2/memcpy::dst#1 )
[489] memcpy::src#2 = phi( memcpy/memcpy::src#4, memcpy::@2/memcpy::src#1 )
[490] if(memcpy::src#2!=memcpy::src_end#0) goto memcpy::@2
to:memcpy::@return
memcpy::@return: scope:[memcpy] from memcpy::@1
[491] return
to:@return
memcpy::@2: scope:[memcpy] from memcpy::@1
[492] *memcpy::dst#2 = *memcpy::src#2
[493] memcpy::dst#1 = ++ memcpy::dst#2
[494] memcpy::src#1 = ++ memcpy::src#2
to:memcpy::@1
void * memset(void *str , char c , unsigned int num)
memset: scope:[memset] from cscroll::@3 cscroll::@4
[495] memset::c#4 = phi( cscroll::@3/' ', cscroll::@4/memset::c#1 )
[495] memset::str#3 = phi( cscroll::@3/(void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28, cscroll::@4/(void *)COLORRAM+(unsigned int)$19*$28-$28 )
to:memset::@1
memset::@1: scope:[memset] from memset
[496] memset::end#0 = (char *)memset::str#3 + $28
[497] memset::dst#4 = (char *)memset::str#3
to:memset::@2
memset::@2: scope:[memset] from memset::@1 memset::@3
[498] memset::dst#2 = phi( memset::@1/memset::dst#4, memset::@3/memset::dst#1 )
[499] if(memset::dst#2!=memset::end#0) goto memset::@3
to:memset::@return
memset::@return: scope:[memset] from memset::@2
[500] return
to:@return
memset::@3: scope:[memset] from memset::@2
[501] *memset::dst#2 = memset::c#4
[502] memset::dst#1 = ++ memset::dst#2
to:memset::@2
null depth in calling loop Loop head: write_score::@9 tails: write_score::@14 blocks: write_score::@14 write_score::@10 write_score::@9 in scope chrout
VARIABLE REGISTER WEIGHTS
void __start()
void chrono_restart()
void chrout(volatile char petscii)
__loadstore volatile char chrout::petscii // 3.0310104636363637E7
void clear_screen(char n , char m)
unsigned int clear_screen::$4 // 100001.0
unsigned int clear_screen::$5 // 66667.33333333333
char clear_screen::m
char clear_screen::n
char clear_screen::n#5 // 12500.125
void conio_c64_init()
char conio_c64_init::line
char conio_c64_init::line#0 // 11.0
char conio_c64_init::line#2 // 22.0
__loadstore char conio_cursor_x // 200133.45333333334
__loadstore char conio_cursor_y // 3516593.4945054944
__loadstore char *conio_line_color // 2662771.1807228914
__loadstore char *conio_line_text // 2600117.7411764706
__loadstore char conio_textcolor // 1629048.4677419355
void cputc(char c)
char cputc::c
char cputc::c#0 // 1050001.5
void cputln()
void cputs(const char *s)
char cputs::c
char cputs::c#1 // 100001.0
const char *cputs::s
const char *cputs::s#0 // 50000.5
const char *cputs::s#10 // 150502.0
const char *cputs::s#11 // 1001.0
void cscroll()
unsigned int div16u8u(unsigned int dividend , char divisor)
unsigned int div16u8u::dividend
unsigned int div16u8u::dividend#0 // 420000.60000000003
char div16u8u::divisor
unsigned int div16u8u::quotient
char div16u8u::quotient_hi
char div16u8u::quotient_hi#0 // 333333.6666666667
char div16u8u::quotient_lo
char div16u8u::quotient_lo#0 // 2000002.0
unsigned int div16u8u::return
unsigned int div16u8u::return#0 // 366667.3333333334
unsigned int div16u8u::return#2 // 9166.833333333332
char divr8u(char dividend , char divisor , char rem)
char divr8u::$1 // 2.00000000002E11
char divr8u::dividend
char divr8u::dividend#0 // 2.500000000025E10
char divr8u::dividend#1 // 2000002.0
char divr8u::dividend#2 // 1000001.0
char divr8u::dividend#3 // 5.0001666667333336E10
char divr8u::dividend#5 // 1.2000003E7
char divr8u::divisor
char divr8u::i
char divr8u::i#1 // 1.500000000015E11
char divr8u::i#2 // 1.6666666666833334E10
char divr8u::quotient
char divr8u::quotient#1 // 1.500000000015E11
char divr8u::quotient#2 // 1.00000000001E11
char divr8u::quotient#3 // 2.8571428571714287E10
char divr8u::rem
char divr8u::rem#0 // 1.00000000001E11
char divr8u::rem#1 // 2.00000000002E11
char divr8u::rem#10 // 1.1000002E7
char divr8u::rem#11 // 2.702711801846847E9
char divr8u::rem#2 // 2.00000000002E11
char divr8u::rem#4 // 2000002.0
char divr8u::rem#5 // 2.00010000003E11
char divr8u::rem#6 // 1.00000000001E11
char divr8u::return
char divr8u::return#0 // 5.000033333416667E10
char divr8u::return#2 // 2000002.0
char divr8u::return#3 // 2000002.0
unsigned int duck
unsigned int duck#0 // 6.6666667333333336E7
unsigned int duck#1 // 4237745.88135593
void gotoxy(char x , char y)
char *gotoxy::$5 // 20002.0
char *gotoxy::$6 // 20002.0
unsigned int gotoxy::$7 // 15001.5
unsigned int gotoxy::$8 // 20002.0
unsigned int gotoxy::$9 // 20002.0
unsigned int gotoxy::line_offset
unsigned int gotoxy::line_offset#0 // 10001.0
char gotoxy::x
char gotoxy::y
char gotoxy::y#2 // 22.0
char gotoxy::y#4 // 6671.0
char gotoxy::y#5 // 6667.333333333333
unsigned int hiscore
unsigned int hiscore#110 // 1.1744186046511627
unsigned int hiscore#123 // 202.0
unsigned int hiscore#124 // 202.0
unsigned int hiscore#19 // 31.076923076923077
char j
char j#11 // 7500.75
char j#13 // 1001.0
char j#16 // 1001.0
char j#19 // 1034.6666666666667
char j#2 // 20002.0
char j#3 // 2002.0
char j#5 // 2002.0
char k
char k#1 // 2002.0
char k#101 // 273.0
__loadstore volatile char l // 455.79148936170213
__loadstore volatile char m // 3.8961039106499544E16
void main()
unsigned int main::$104 // 2500.25
unsigned int main::$107 // 2500.25
unsigned int main::$110 // 2500.25
unsigned int main::$119 // 6667.333333333333
unsigned int main::$120 // 10001.0
unsigned int main::$122 // 10001.0
unsigned int main::$124 // 10001.0
unsigned int main::$125 // 10001.0
unsigned int main::$127 // 10001.0
unsigned int main::$128 // 10001.0
unsigned int main::$130 // 10001.0
unsigned int main::$131 // 10001.0
unsigned int main::$133 // 10001.0
unsigned int main::$134 // 10001.0
unsigned int main::$136 // 10001.0
unsigned int main::$138 // 10001.0
unsigned int main::$139 // 10001.0
unsigned int main::$141 // 10001.0
unsigned int main::$142 // 10001.0
unsigned int main::$144 // 10001.0
unsigned int main::$145 // 10001.0
unsigned int main::$150 // 1001.0
unsigned int main::$151 // 2002.0
unsigned int main::$152 // 1001.0
unsigned int main::$153 // 2002.0
unsigned int main::$154 // 1001.0
unsigned int main::$155 // 2002.0
unsigned int main::$156 // 1001.0
char main::$177 // 2002.0
unsigned int main::$179 // 20002.0
unsigned int main::$180 // 20002.0
char main::$26 // 2002.0
unsigned int main::$29 // 2002.0
unsigned int main::$3 // 101.0
unsigned int main::$35 // 2002.0
unsigned int main::$57 // 2002.0
unsigned int main::$61 // 2.00000002E8
unsigned int main::$66 // 2.00000002E7
unsigned int main::$69 // 2.00000002E7
unsigned int main::$72 // 2.00000002E7
char main::$78 // 20002.0
char main::$81 // 20002.0
char main::$84 // 20002.0
char main::$88 // 20002.0
char main::$92 // 20002.0
unsigned int main::$96 // 15001.5
unsigned int main::$97 // 20002.0
void * memcpy(void *destination , void *source , unsigned int num)
void *memcpy::destination
void *memcpy::destination#2
char *memcpy::dst
char *memcpy::dst#1 // 1.000000000001E12
char *memcpy::dst#2 // 1.0003333333346667E12
char *memcpy::dst#4 // 2.000000002E9
unsigned int memcpy::num
void *memcpy::return
void *memcpy::source
void *memcpy::source#2
char *memcpy::src
char *memcpy::src#1 // 2.000000000002E12
char *memcpy::src#2 // 1.00025000000125E12
char *memcpy::src#4 // 1.000000001E9
char *memcpy::src_end
char *memcpy::src_end#0 // 1.2512500000025E11
void * memset(void *str , char c , unsigned int num)
char memset::c
char memset::c#1 // 2.00000002E8
char memset::c#4 // 1.4287142857171426E11
char *memset::dst
char *memset::dst#1 // 2.000000000002E12
char *memset::dst#2 // 1.3336666666683335E12
char *memset::dst#4 // 2.000000002E9
char *memset::end
char *memset::end#0 // 1.668333333336667E11
unsigned int memset::num
void *memset::return
void *memset::str
void *memset::str#3
char n
char n#1 // 20002.0
char n#101 // 4429.142857142857
char n#109 // 7.769230769230769
char n#14 // 344.8620689655172
char n#20 // 220.07272727272726
char n#52 // 93.84375
char n#89 // 35.644067796610166
unsigned int peephole
unsigned int peephole#12 // 617.7352941176471
unsigned int peephole#52 // 62.5625
void random(char k , char n)
char random::$3 // 5.5E17
char random::k
char random::k#0 // 500.5
char random::k#4 // 2.000000000000002E17
char random::n
char random::n#0 // 2002.0
char random::n#4 // 2.00000000000002E16
void read_chrono()
unsigned int read_chrono::$0 // 200002.0
unsigned int read_chrono::$5 // 200002.0
char rem8u
char rem8u#127 // 11.6
char rem8u#25 // 220.07272727272726
char rem8u#48 // 93.84375
unsigned int score
unsigned int score#13 // 70334.66666666666
unsigned int score#19 // 1272.9090909090908
unsigned int score#38 // 3843.0654205607475
unsigned int score#4 // 2002.0
unsigned int score#43 // 566.0943396226415
unsigned int score#6 // 20002.0
unsigned int score#8 // 10001.0
unsigned int score#81 // 15001.5
char textcolor(char color)
char textcolor::color
char textcolor::color#7 // 1001.0
char textcolor::old
char textcolor::return
unsigned int time
unsigned int time#11 // 20002.0
unsigned int time#17 // 566.0943396226415
unsigned int time#38 // 10001.0
unsigned int tu
unsigned int tu#1 // 166.83333333333334
unsigned int tu#13 // 32.032
void utoa(unsigned int value , char *buffer , char radix)
char utoa::$10 // 2.0000000002E10
char utoa::$11 // 2000002.0
char *utoa::buffer
char *utoa::buffer#10 // 2.857285714714286E9
char *utoa::buffer#15 // 1.50000000015E10
char *utoa::buffer#3 // 2000002.0
char *utoa::buffer#4 // 2.0000000002E10
char utoa::digit
char utoa::digit#1 // 2.0000000002E10
char utoa::digit#2 // 2.857142857428571E9
unsigned int utoa::digit_value
unsigned int utoa::digit_value#0 // 6.0000000006E9
unsigned int *utoa::digit_values
char utoa::max_digits
char utoa::radix
char utoa::started
char utoa::started#2 // 5.0000000005E9
char utoa::started#4 // 1.0000000001E10
unsigned int utoa::value
unsigned int utoa::value#0 // 1.0000000001E10
unsigned int utoa::value#1 // 200002.0
unsigned int utoa::value#10 // 1100103.0
unsigned int utoa::value#2 // 202.0
unsigned int utoa::value#3 // 5.714428572142858E9
unsigned int utoa::value#7 // 1.50000000015E10
unsigned int utoa_append(char *buffer , unsigned int value , unsigned int sub)
char *utoa_append::buffer
char *utoa_append::buffer#0 // 1.375000000025E10
char utoa_append::digit
char utoa_append::digit#1 // 1.0E16
char utoa_append::digit#2 // 1.000005E16
unsigned int utoa_append::return
unsigned int utoa_append::return#0 // 2.0000000002E10
unsigned int utoa_append::sub
unsigned int utoa_append::sub#0 // 3.333335E15
unsigned int utoa_append::value
unsigned int utoa_append::value#0 // 3.6666666667333336E10
unsigned int utoa_append::value#1 // 2.0E16
unsigned int utoa_append::value#2 // 5.000018333333334E15
void wait(char n)
char wait::n
char wait::n#6 // 1.25000000125E8
void write_score()
unsigned int y
unsigned int y#0 // 20002.0
unsigned int y#1 // 20002.0
unsigned int y#10 // 13334.666666666666
unsigned int y#11 // 13334.666666666666
unsigned int y#114 // 11.6
unsigned int y#12 // 13334.666666666666
unsigned int y#13 // 2285.9428571428575
unsigned int y#130 // 20002.0
unsigned int y#141 // 20002.0
unsigned int y#18 // 509.61904761904765
unsigned int y#2 // 20002.0
unsigned int y#3 // 20002.0
unsigned int y#35 // 2353.1764705882347
unsigned int y#49 // 93.84375
unsigned int z
unsigned int z#1 // 200002.0
unsigned int z#100 // 1050.15
unsigned int z#102 // 93.84375
unsigned int z#128 // 93.84375
unsigned int z#2 // 66667.33333333333
unsigned int z#23 // 1.0333333334666666E10
unsigned int z#25 // 2.564438476923077E7
unsigned int z#28 // 266.93333333333334
unsigned int z#4 // 2.0000000002E10
unsigned int z#48 // 857.2285714285714
unsigned int z#53 // 70503.0
unsigned int z#9 // 2002.0
Initial phi equivalence classes
[ conio_c64_init::line#2 conio_c64_init::line#0 ]
[ hiscore#110 hiscore#123 ]
[ k#101 k#1 ]
[ j#13 j#3 ]
[ j#16 j#5 ]
[ tu#13 tu#1 ]
[ peephole#52 peephole#12 y#35 y#141 ]
[ n#52 n#89 n#109 n#20 n#101 n#14 n#1 ]
[ time#11 time#17 time#38 div16u8u::return#2 ]
[ y#13 y#12 y#11 y#10 y#0 y#49 y#114 y#18 y#130 y#1 y#2 y#3 ]
[ score#81 hiscore#19 hiscore#124 score#19 score#43 score#38 score#8 score#13 score#4 score#6 ]
[ j#11 j#2 ]
[ gotoxy::y#5 gotoxy::y#4 gotoxy::y#2 ]
[ clear_screen::n#5 ]
[ z#2 z#1 ]
[ textcolor::color#7 ]
[ cputs::s#10 cputs::s#11 cputs::s#0 ]
[ random::k#4 random::k#0 ]
[ random::n#4 random::n#0 ]
[ wait::n#6 ]
[ z#53 z#48 z#100 z#102 z#128 z#28 z#9 z#25 z#23 z#4 ]
[ utoa::digit#2 utoa::digit#1 ]
[ utoa::value#3 utoa::value#7 utoa::value#10 utoa::value#2 utoa::value#1 utoa::value#0 ]
[ utoa::started#2 utoa::started#4 ]
[ utoa::buffer#10 utoa::buffer#15 utoa::buffer#4 ]
[ utoa_append::value#2 utoa_append::value#0 utoa_append::value#1 ]
[ utoa_append::digit#2 utoa_append::digit#1 ]
[ divr8u::rem#5 divr8u::rem#10 divr8u::rem#4 rem8u#48 rem8u#127 rem8u#25 divr8u::rem#11 divr8u::rem#6 divr8u::rem#0 divr8u::rem#1 divr8u::rem#2 ]
[ divr8u::dividend#3 divr8u::dividend#5 divr8u::dividend#1 divr8u::dividend#2 divr8u::dividend#0 ]
[ divr8u::quotient#3 divr8u::return#0 divr8u::quotient#1 divr8u::quotient#2 ]
[ divr8u::i#2 divr8u::i#1 ]
[ memcpy::source#2 ]
[ memcpy::destination#2 ]
[ memcpy::src#2 memcpy::src#4 memcpy::src#1 ]
[ memcpy::dst#2 memcpy::dst#4 memcpy::dst#1 ]
[ memset::str#3 ]
[ memset::c#4 memset::c#1 ]
[ memset::dst#2 memset::dst#4 memset::dst#1 ]
Added variable conio_cursor_x to live range equivalence class [ conio_cursor_x ]
Added variable conio_cursor_y to live range equivalence class [ conio_cursor_y ]
Added variable conio_line_text to live range equivalence class [ conio_line_text ]
Added variable conio_line_color to live range equivalence class [ conio_line_color ]
Added variable conio_textcolor to live range equivalence class [ conio_textcolor ]
Added variable l to live range equivalence class [ l ]
Added variable m to live range equivalence class [ m ]
Added variable chrout::petscii to live range equivalence class [ chrout::petscii ]
Added variable main::$177 to live range equivalence class [ main::$177 ]
Added variable main::$26 to live range equivalence class [ main::$26 ]
Added variable main::$29 to live range equivalence class [ main::$29 ]
Added variable duck#0 to live range equivalence class [ duck#0 ]
Added variable main::$61 to live range equivalence class [ main::$61 ]
Added variable duck#1 to live range equivalence class [ duck#1 ]
Added variable main::$66 to live range equivalence class [ main::$66 ]
Added variable main::$69 to live range equivalence class [ main::$69 ]
Added variable main::$72 to live range equivalence class [ main::$72 ]
Added variable main::$150 to live range equivalence class [ main::$150 ]
Added variable main::$151 to live range equivalence class [ main::$151 ]
Added variable main::$152 to live range equivalence class [ main::$152 ]
Added variable main::$153 to live range equivalence class [ main::$153 ]
Added variable main::$154 to live range equivalence class [ main::$154 ]
Added variable main::$155 to live range equivalence class [ main::$155 ]
Added variable main::$156 to live range equivalence class [ main::$156 ]
Added variable j#19 to live range equivalence class [ j#19 ]
Added variable main::$78 to live range equivalence class [ main::$78 ]
Added variable main::$81 to live range equivalence class [ main::$81 ]
Added variable main::$84 to live range equivalence class [ main::$84 ]
Added variable main::$88 to live range equivalence class [ main::$88 ]
Added variable main::$92 to live range equivalence class [ main::$92 ]
Added variable main::$96 to live range equivalence class [ main::$96 ]
Added variable main::$179 to live range equivalence class [ main::$179 ]
Added variable main::$180 to live range equivalence class [ main::$180 ]
Added variable main::$97 to live range equivalence class [ main::$97 ]
Added variable main::$104 to live range equivalence class [ main::$104 ]
Added variable main::$107 to live range equivalence class [ main::$107 ]
Added variable main::$110 to live range equivalence class [ main::$110 ]
Added variable main::$125 to live range equivalence class [ main::$125 ]
Added variable main::$127 to live range equivalence class [ main::$127 ]
Added variable main::$128 to live range equivalence class [ main::$128 ]
Added variable main::$130 to live range equivalence class [ main::$130 ]
Added variable main::$131 to live range equivalence class [ main::$131 ]
Added variable main::$133 to live range equivalence class [ main::$133 ]
Added variable main::$134 to live range equivalence class [ main::$134 ]
Added variable main::$136 to live range equivalence class [ main::$136 ]
Added variable main::$138 to live range equivalence class [ main::$138 ]
Added variable main::$139 to live range equivalence class [ main::$139 ]
Added variable main::$141 to live range equivalence class [ main::$141 ]
Added variable main::$142 to live range equivalence class [ main::$142 ]
Added variable main::$144 to live range equivalence class [ main::$144 ]
Added variable main::$145 to live range equivalence class [ main::$145 ]
Added variable main::$119 to live range equivalence class [ main::$119 ]
Added variable main::$120 to live range equivalence class [ main::$120 ]
Added variable main::$122 to live range equivalence class [ main::$122 ]
Added variable main::$124 to live range equivalence class [ main::$124 ]
Added variable main::$57 to live range equivalence class [ main::$57 ]
Added variable main::$35 to live range equivalence class [ main::$35 ]
Added variable main::$3 to live range equivalence class [ main::$3 ]
Added variable gotoxy::$7 to live range equivalence class [ gotoxy::$7 ]
Added variable gotoxy::$8 to live range equivalence class [ gotoxy::$8 ]
Added variable gotoxy::$9 to live range equivalence class [ gotoxy::$9 ]
Added variable gotoxy::line_offset#0 to live range equivalence class [ gotoxy::line_offset#0 ]
Added variable gotoxy::$5 to live range equivalence class [ gotoxy::$5 ]
Added variable gotoxy::$6 to live range equivalence class [ gotoxy::$6 ]
Added variable clear_screen::$5 to live range equivalence class [ clear_screen::$5 ]
Added variable clear_screen::$4 to live range equivalence class [ clear_screen::$4 ]
Added variable cputs::c#1 to live range equivalence class [ cputs::c#1 ]
Added variable cputc::c#0 to live range equivalence class [ cputc::c#0 ]
Added variable random::$3 to live range equivalence class [ random::$3 ]
Added variable utoa::$11 to live range equivalence class [ utoa::$11 ]
Added variable utoa::buffer#3 to live range equivalence class [ utoa::buffer#3 ]
Added variable utoa::$10 to live range equivalence class [ utoa::$10 ]
Added variable utoa::digit_value#0 to live range equivalence class [ utoa::digit_value#0 ]
Added variable utoa_append::buffer#0 to live range equivalence class [ utoa_append::buffer#0 ]
Added variable utoa_append::sub#0 to live range equivalence class [ utoa_append::sub#0 ]
Added variable utoa_append::return#0 to live range equivalence class [ utoa_append::return#0 ]
Added variable read_chrono::$0 to live range equivalence class [ read_chrono::$0 ]
Added variable div16u8u::dividend#0 to live range equivalence class [ div16u8u::dividend#0 ]
Added variable read_chrono::$5 to live range equivalence class [ read_chrono::$5 ]
Added variable divr8u::return#2 to live range equivalence class [ divr8u::return#2 ]
Added variable div16u8u::quotient_hi#0 to live range equivalence class [ div16u8u::quotient_hi#0 ]
Added variable divr8u::return#3 to live range equivalence class [ divr8u::return#3 ]
Added variable div16u8u::quotient_lo#0 to live range equivalence class [ div16u8u::quotient_lo#0 ]
Added variable div16u8u::return#0 to live range equivalence class [ div16u8u::return#0 ]
Added variable divr8u::$1 to live range equivalence class [ divr8u::$1 ]
Added variable memcpy::src_end#0 to live range equivalence class [ memcpy::src_end#0 ]
Added variable memset::end#0 to live range equivalence class [ memset::end#0 ]
Complete equivalence classes
[ conio_c64_init::line#2 conio_c64_init::line#0 ]
[ hiscore#110 hiscore#123 ]
[ k#101 k#1 ]
[ j#13 j#3 ]
[ j#16 j#5 ]
[ tu#13 tu#1 ]
[ peephole#52 peephole#12 y#35 y#141 ]
[ n#52 n#89 n#109 n#20 n#101 n#14 n#1 ]
[ time#11 time#17 time#38 div16u8u::return#2 ]
[ y#13 y#12 y#11 y#10 y#0 y#49 y#114 y#18 y#130 y#1 y#2 y#3 ]
[ score#81 hiscore#19 hiscore#124 score#19 score#43 score#38 score#8 score#13 score#4 score#6 ]
[ j#11 j#2 ]
[ gotoxy::y#5 gotoxy::y#4 gotoxy::y#2 ]
[ clear_screen::n#5 ]
[ z#2 z#1 ]
[ textcolor::color#7 ]
[ cputs::s#10 cputs::s#11 cputs::s#0 ]
[ random::k#4 random::k#0 ]
[ random::n#4 random::n#0 ]
[ wait::n#6 ]
[ z#53 z#48 z#100 z#102 z#128 z#28 z#9 z#25 z#23 z#4 ]
[ utoa::digit#2 utoa::digit#1 ]
[ utoa::value#3 utoa::value#7 utoa::value#10 utoa::value#2 utoa::value#1 utoa::value#0 ]
[ utoa::started#2 utoa::started#4 ]
[ utoa::buffer#10 utoa::buffer#15 utoa::buffer#4 ]
[ utoa_append::value#2 utoa_append::value#0 utoa_append::value#1 ]
[ utoa_append::digit#2 utoa_append::digit#1 ]
[ divr8u::rem#5 divr8u::rem#10 divr8u::rem#4 rem8u#48 rem8u#127 rem8u#25 divr8u::rem#11 divr8u::rem#6 divr8u::rem#0 divr8u::rem#1 divr8u::rem#2 ]
[ divr8u::dividend#3 divr8u::dividend#5 divr8u::dividend#1 divr8u::dividend#2 divr8u::dividend#0 ]
[ divr8u::quotient#3 divr8u::return#0 divr8u::quotient#1 divr8u::quotient#2 ]
[ divr8u::i#2 divr8u::i#1 ]
[ memcpy::source#2 ]
[ memcpy::destination#2 ]
[ memcpy::src#2 memcpy::src#4 memcpy::src#1 ]
[ memcpy::dst#2 memcpy::dst#4 memcpy::dst#1 ]
[ memset::str#3 ]
[ memset::c#4 memset::c#1 ]
[ memset::dst#2 memset::dst#4 memset::dst#1 ]
[ conio_cursor_x ]
[ conio_cursor_y ]
[ conio_line_text ]
[ conio_line_color ]
[ conio_textcolor ]
[ l ]
[ m ]
[ chrout::petscii ]
[ main::$177 ]
[ main::$26 ]
[ main::$29 ]
[ duck#0 ]
[ main::$61 ]
[ duck#1 ]
[ main::$66 ]
[ main::$69 ]
[ main::$72 ]
[ main::$150 ]
[ main::$151 ]
[ main::$152 ]
[ main::$153 ]
[ main::$154 ]
[ main::$155 ]
[ main::$156 ]
[ j#19 ]
[ main::$78 ]
[ main::$81 ]
[ main::$84 ]
[ main::$88 ]
[ main::$92 ]
[ main::$96 ]
[ main::$179 ]
[ main::$180 ]
[ main::$97 ]
[ main::$104 ]
[ main::$107 ]
[ main::$110 ]
[ main::$125 ]
[ main::$127 ]
[ main::$128 ]
[ main::$130 ]
[ main::$131 ]
[ main::$133 ]
[ main::$134 ]
[ main::$136 ]
[ main::$138 ]
[ main::$139 ]
[ main::$141 ]
[ main::$142 ]
[ main::$144 ]
[ main::$145 ]
[ main::$119 ]
[ main::$120 ]
[ main::$122 ]
[ main::$124 ]
[ main::$57 ]
[ main::$35 ]
[ main::$3 ]
[ gotoxy::$7 ]
[ gotoxy::$8 ]
[ gotoxy::$9 ]
[ gotoxy::line_offset#0 ]
[ gotoxy::$5 ]
[ gotoxy::$6 ]
[ clear_screen::$5 ]
[ clear_screen::$4 ]
[ cputs::c#1 ]
[ cputc::c#0 ]
[ random::$3 ]
[ utoa::$11 ]
[ utoa::buffer#3 ]
[ utoa::$10 ]
[ utoa::digit_value#0 ]
[ utoa_append::buffer#0 ]
[ utoa_append::sub#0 ]
[ utoa_append::return#0 ]
[ read_chrono::$0 ]
[ div16u8u::dividend#0 ]
[ read_chrono::$5 ]
[ divr8u::return#2 ]
[ div16u8u::quotient_hi#0 ]
[ divr8u::return#3 ]
[ div16u8u::quotient_lo#0 ]
[ div16u8u::return#0 ]
[ divr8u::$1 ]
[ memcpy::src_end#0 ]
[ memset::end#0 ]
Allocated zp[1]:2 [ random::$3 ]
Allocated zp[1]:3 [ random::k#4 random::k#0 ]
Allocated zp[1]:4 [ m ]
Allocated zp[2]:5 [ utoa_append::value#2 utoa_append::value#0 utoa_append::value#1 ]
Allocated zp[1]:7 [ utoa_append::digit#2 utoa_append::digit#1 ]
Allocated zp[1]:8 [ random::n#4 random::n#0 ]
Allocated zp[2]:9 [ utoa_append::sub#0 ]
Allocated zp[2]:11 [ memset::dst#2 memset::dst#4 memset::dst#1 ]
Allocated zp[2]:13 [ memcpy::src#2 memcpy::src#4 memcpy::src#1 ]
Allocated zp[2]:15 [ memcpy::dst#2 memcpy::dst#4 memcpy::dst#1 ]
Allocated zp[1]:17 [ divr8u::rem#5 divr8u::rem#10 divr8u::rem#4 rem8u#48 rem8u#127 rem8u#25 divr8u::rem#11 divr8u::rem#6 divr8u::rem#0 divr8u::rem#1 divr8u::rem#2 ]
Allocated zp[1]:18 [ divr8u::quotient#3 divr8u::return#0 divr8u::quotient#1 divr8u::quotient#2 ]
Allocated zp[1]:19 [ divr8u::$1 ]
Allocated zp[2]:20 [ memset::end#0 ]
Allocated zp[1]:22 [ divr8u::i#2 divr8u::i#1 ]
Allocated zp[1]:23 [ memset::c#4 memset::c#1 ]
Allocated zp[2]:24 [ memcpy::src_end#0 ]
Allocated zp[1]:26 [ divr8u::dividend#3 divr8u::dividend#5 divr8u::dividend#1 divr8u::dividend#2 divr8u::dividend#0 ]
Allocated zp[2]:27 [ utoa::buffer#10 utoa::buffer#15 utoa::buffer#4 ]
Allocated zp[2]:29 [ utoa::value#3 utoa::value#7 utoa::value#10 utoa::value#2 utoa::value#1 utoa::value#0 ]
Allocated zp[2]:31 [ z#53 z#48 z#100 z#102 z#128 z#28 z#9 z#25 z#23 z#4 ]
Allocated zp[1]:33 [ utoa::digit#2 utoa::digit#1 ]
Allocated zp[1]:34 [ utoa::$10 ]
Allocated zp[2]:35 [ utoa_append::return#0 ]
Allocated zp[1]:37 [ utoa::started#2 utoa::started#4 ]
Allocated zp[2]:38 [ utoa_append::buffer#0 ]
Allocated zp[2]:40 [ utoa::digit_value#0 ]
Allocated zp[2]:42 [ main::$61 ]
Allocated zp[1]:44 [ wait::n#6 ]
Allocated zp[2]:45 [ duck#0 ]
Allocated zp[1]:47 [ chrout::petscii ]
Allocated zp[2]:48 [ main::$66 ]
Allocated zp[2]:50 [ main::$69 ]
Allocated zp[2]:52 [ main::$72 ]
Allocated zp[2]:54 [ duck#1 ]
Allocated zp[1]:56 [ conio_cursor_y ]
Allocated zp[2]:57 [ conio_line_color ]
Allocated zp[2]:59 [ conio_line_text ]
Allocated zp[1]:61 [ utoa::$11 ]
Allocated zp[2]:62 [ utoa::buffer#3 ]
Allocated zp[1]:64 [ divr8u::return#2 ]
Allocated zp[1]:65 [ divr8u::return#3 ]
Allocated zp[1]:66 [ div16u8u::quotient_lo#0 ]
Allocated zp[1]:67 [ conio_textcolor ]
Allocated zp[1]:68 [ cputc::c#0 ]
Allocated zp[2]:69 [ div16u8u::dividend#0 ]
Allocated zp[2]:71 [ div16u8u::return#0 ]
Allocated zp[1]:73 [ div16u8u::quotient_hi#0 ]
Allocated zp[2]:74 [ z#2 z#1 ]
Allocated zp[2]:76 [ cputs::s#10 cputs::s#11 cputs::s#0 ]
Allocated zp[1]:78 [ conio_cursor_x ]
Allocated zp[2]:79 [ read_chrono::$0 ]
Allocated zp[2]:81 [ read_chrono::$5 ]
Allocated zp[2]:83 [ y#13 y#12 y#11 y#10 y#0 y#49 y#114 y#18 y#130 y#1 y#2 y#3 ]
Allocated zp[2]:85 [ score#81 hiscore#19 hiscore#124 score#19 score#43 score#38 score#8 score#13 score#4 score#6 ]
Allocated zp[2]:87 [ clear_screen::$4 ]
Allocated zp[1]:89 [ cputs::c#1 ]
Allocated zp[2]:90 [ clear_screen::$5 ]
Allocated zp[2]:92 [ time#11 time#17 time#38 div16u8u::return#2 ]
Allocated zp[1]:94 [ j#11 j#2 ]
Allocated zp[1]:95 [ n#52 n#89 n#109 n#20 n#101 n#14 n#1 ]
Allocated zp[2]:96 [ peephole#52 peephole#12 y#35 y#141 ]
Allocated zp[1]:98 [ main::$78 ]
Allocated zp[1]:99 [ main::$81 ]
Allocated zp[1]:100 [ main::$84 ]
Allocated zp[1]:101 [ main::$88 ]
Allocated zp[1]:102 [ main::$92 ]
Allocated zp[2]:103 [ main::$179 ]
Allocated zp[2]:105 [ main::$180 ]
Allocated zp[2]:107 [ main::$97 ]
Allocated zp[2]:109 [ gotoxy::$8 ]
Allocated zp[2]:111 [ gotoxy::$9 ]
Allocated zp[2]:113 [ gotoxy::$5 ]
Allocated zp[2]:115 [ gotoxy::$6 ]
Allocated zp[2]:117 [ main::$96 ]
Allocated zp[2]:119 [ gotoxy::$7 ]
Allocated zp[1]:121 [ gotoxy::y#5 gotoxy::y#4 gotoxy::y#2 ]
Allocated zp[1]:122 [ clear_screen::n#5 ]
Allocated zp[2]:123 [ main::$125 ]
Allocated zp[2]:125 [ main::$127 ]
Allocated zp[2]:127 [ main::$128 ]
Allocated zp[2]:129 [ main::$130 ]
Allocated zp[2]:131 [ main::$131 ]
Allocated zp[2]:133 [ main::$133 ]
Allocated zp[2]:135 [ main::$134 ]
Allocated zp[2]:137 [ main::$136 ]
Allocated zp[2]:139 [ main::$138 ]
Allocated zp[2]:141 [ main::$139 ]
Allocated zp[2]:143 [ main::$141 ]
Allocated zp[2]:145 [ main::$142 ]
Allocated zp[2]:147 [ main::$144 ]
Allocated zp[2]:149 [ main::$145 ]
Allocated zp[2]:151 [ main::$120 ]
Allocated zp[2]:153 [ main::$122 ]
Allocated zp[2]:155 [ main::$124 ]
Allocated zp[2]:157 [ gotoxy::line_offset#0 ]
Allocated zp[2]:159 [ main::$119 ]
Allocated zp[1]:161 [ j#13 j#3 ]
Allocated zp[1]:162 [ j#16 j#5 ]
Allocated zp[2]:163 [ main::$104 ]
Allocated zp[2]:165 [ main::$107 ]
Allocated zp[2]:167 [ main::$110 ]
Allocated zp[1]:169 [ k#101 k#1 ]
Allocated zp[1]:170 [ main::$177 ]
Allocated zp[1]:171 [ main::$26 ]
Allocated zp[2]:172 [ main::$29 ]
Allocated zp[2]:174 [ main::$151 ]
Allocated zp[2]:176 [ main::$153 ]
Allocated zp[2]:178 [ main::$155 ]
Allocated zp[2]:180 [ main::$57 ]
Allocated zp[2]:182 [ main::$35 ]
Allocated zp[1]:184 [ j#19 ]
Allocated zp[1]:185 [ textcolor::color#7 ]
Allocated zp[2]:186 [ main::$150 ]
Allocated zp[2]:188 [ main::$152 ]
Allocated zp[2]:190 [ main::$154 ]
Allocated zp[2]:192 [ main::$156 ]
Allocated zp[1]:194 [ l ]
Allocated zp[2]:195 [ hiscore#110 hiscore#123 ]
Allocated zp[2]:197 [ tu#13 tu#1 ]
Allocated zp[2]:199 [ main::$3 ]
Allocated zp[1]:201 [ conio_c64_init::line#2 conio_c64_init::line#0 ]
Allocated zp[2]:202 [ memcpy::source#2 ]
Allocated zp[2]:204 [ memcpy::destination#2 ]
Allocated zp[2]:206 [ memset::str#3 ]
REGISTER UPLIFT POTENTIAL REGISTERS
Statement [1] conio_cursor_x = 0 [ ] ( [ ] { } ) always clobbers reg byte a
Statement [2] conio_cursor_y = 0 [ ] ( [ ] { } ) always clobbers reg byte a
Statement [3] conio_line_text = DEFAULT_SCREEN [ ] ( [ ] { } ) always clobbers reg byte a
Statement [4] conio_line_color = COLORRAM [ ] ( [ ] { } ) always clobbers reg byte a
Statement [5] conio_textcolor = LIGHT_BLUE [ ] ( [ ] { } ) always clobbers reg byte a
Statement [6] l = 0 [ ] ( [ ] { } ) always clobbers reg byte a
Statement [7] m = 0 [ ] ( [ ] { } ) always clobbers reg byte a
Statement [19] *((char *) 36879) = 8 [ ] ( main:10 [ ] { } ) always clobbers reg byte a
Statement [20] chrout::petscii = lock [ chrout::petscii ] ( main:10 [ chrout::petscii ] { } ) always clobbers reg byte a
Statement [22] chrout::petscii = lower [ chrout::petscii ] ( main:10 [ chrout::petscii ] { } ) always clobbers reg byte a
Statement [24] m = 0 [ m ] ( main:10 [ m ] { } ) always clobbers reg byte a
Statement [25] if(m<$28) goto main::@2 [ m ] ( main:10 [ m ] { } ) always clobbers reg byte a
Statement [40] l = *((char *) 197) [ l rem8u#127 y#114 hiscore#110 n#109 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#109 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:17 [ divr8u::rem#5 divr8u::rem#10 divr8u::rem#4 rem8u#48 rem8u#127 rem8u#25 divr8u::rem#11 divr8u::rem#6 divr8u::rem#0 divr8u::rem#1 divr8u::rem#2 ]
Removing always clobbered register reg byte a as potential for zp[1]:95 [ n#52 n#89 n#109 n#20 n#101 n#14 n#1 ]
Statement [42] if(l>=5+1) goto main::@4 [ l rem8u#127 y#114 hiscore#110 n#109 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#109 ] { } ) always clobbers reg byte a
Statement [45] *((char *) 36869) = $ff [ l rem8u#127 y#114 hiscore#110 n#109 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#109 ] { } ) always clobbers reg byte a
Statement [46] chrout::petscii = reverse_on [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#109 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#109 ] { } ) always clobbers reg byte a
Statement [48] chrout::petscii = red [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#109 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#109 ] { } ) always clobbers reg byte a
Statement [50] chrout::petscii = down [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#109 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#109 ] { } ) always clobbers reg byte a
Statement [54] chrout::petscii = brick [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 ] { } ) always clobbers reg byte a
Statement [56] *((char *) 8185) = brick [ l rem8u#127 y#114 hiscore#110 n#89 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 ] { } ) always clobbers reg byte a
Statement [57] *((char *)$1ff9+c) = 2 [ l rem8u#127 y#114 hiscore#110 n#89 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 ] { } ) always clobbers reg byte a
Statement [58] chrout::petscii = home [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 ] { } ) always clobbers reg byte a
Statement [60] if(l<1+1) goto main::@12 [ l rem8u#127 y#114 hiscore#110 n#89 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 ] { } ) always clobbers reg byte a
Statement [62] random::k#0 = 7 - l [ l rem8u#127 y#114 hiscore#110 n#89 z#28 random::k#0 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 z#28 random::k#0 ] { { random::k#0 = random::k#4 } { random::n#0 = random::n#4 } } ) always clobbers reg byte a
Statement [63] main::$177 = l << 1 [ l rem8u#127 y#114 hiscore#110 n#89 z#28 random::k#0 main::$177 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 z#28 random::k#0 main::$177 ] { { random::k#0 = random::k#4 } { random::n#0 = random::n#4 } } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:3 [ random::k#4 random::k#0 ]
Statement [64] main::$26 = main::$177 + l [ l rem8u#127 y#114 hiscore#110 n#89 z#28 random::k#0 main::$26 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 z#28 random::k#0 main::$26 ] { { random::k#0 = random::k#4 } { random::n#0 = random::n#4 } } ) always clobbers reg byte a
Statement [65] random::n#0 = $1a - main::$26 [ l rem8u#127 y#114 hiscore#110 n#89 z#28 random::k#0 random::n#0 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 z#28 random::k#0 random::n#0 ] { { random::k#0 = random::k#4 } { random::n#0 = random::n#4 } } ) always clobbers reg byte a
Statement [67] main::$29 = z#28 + m [ l m rem8u#127 y#114 hiscore#110 n#89 z#28 main::$29 ] ( main:10 [ l m rem8u#127 y#114 hiscore#110 n#89 z#28 main::$29 ] { } ) always clobbers reg byte a
Statement [68] if(main::$29<=$1f9) goto main::@14 [ l m rem8u#127 y#114 hiscore#110 n#89 z#28 ] ( main:10 [ l m rem8u#127 y#114 hiscore#110 n#89 z#28 ] { } ) always clobbers reg byte a
Statement [70] *((char *) 36878) = $f [ l rem8u#127 y#114 hiscore#110 n#89 z#128 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 ] { } ) always clobbers reg byte a
Statement [71] chrout::petscii = home [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 ] { } ) always clobbers reg byte a
Statement [73] chrout::petscii = yellow [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 ] { } ) always clobbers reg byte a
Statement [75] chrout::petscii = $50 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 ] { } ) always clobbers reg byte a
Statement [77] chrout::petscii = $54 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 ] { } ) always clobbers reg byte a
Statement [79] chrout::petscii = $53 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 ] { } ) always clobbers reg byte a
Statement [81] chrout::petscii = $3a [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 ] { } ) always clobbers reg byte a
Statement [83] *((char *) 211) = $12 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 ] { } ) always clobbers reg byte a
Statement [88] chrout::petscii = home [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] { } ) always clobbers reg byte a
Statement [90] chrout::petscii = green [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] { } ) always clobbers reg byte a
Statement [92] *((char *) 211) = $a [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] { } ) always clobbers reg byte a
Statement [96] chrout::petscii = home [ l chrout::petscii hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] ( main:10 [ l chrout::petscii hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] { } ) always clobbers reg byte a
Statement [98] chrout::petscii = green [ l chrout::petscii hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] ( main:10 [ l chrout::petscii hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] { } ) always clobbers reg byte a
Statement [100] chrout::petscii = reverse_on [ l chrout::petscii hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] ( main:10 [ l chrout::petscii hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] { } ) always clobbers reg byte a
Statement [102] *((char *) 211) = $f [ l hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] ( main:10 [ l hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] { } ) always clobbers reg byte a
Statement [103] if(tu#13<$a) goto main::@23 [ l hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] ( main:10 [ l hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] { } ) always clobbers reg byte a
Statement [104] chrout::petscii = $31 [ l chrout::petscii hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] ( main:10 [ l chrout::petscii hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] { } ) always clobbers reg byte a
Statement [106] chrout::petscii = $30 [ l chrout::petscii hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] ( main:10 [ l chrout::petscii hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] { } ) always clobbers reg byte a
Statement [110] duck#0 = m [ l hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#0 score#38 ] ( main:10 [ l hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#0 score#38 ] { } ) always clobbers reg byte a
Statement [112] main::$61 = m + $1e15 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#0 main::$61 score#38 ] ( main:10 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#0 main::$61 score#38 ] { } ) always clobbers reg byte a
Statement [113] duck#1 = main::$61 + duck#0 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 score#38 ] ( main:10 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 score#38 ] { } ) always clobbers reg byte a
Statement [114] main::$66 = duck#1 + 1 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$66 score#38 ] ( main:10 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$66 score#38 ] { } ) always clobbers reg byte a
Statement [115] main::$69 = duck#1 + $16 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$66 main::$69 score#38 ] ( main:10 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$66 main::$69 score#38 ] { } ) always clobbers reg byte a
Statement [116] main::$72 = duck#1 + $17 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$66 main::$69 main::$72 score#38 ] ( main:10 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$66 main::$69 main::$72 score#38 ] { } ) always clobbers reg byte a
Statement [117] if(duck#1>$1fe3) goto main::@24 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$66 main::$69 main::$72 score#38 ] ( main:10 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$66 main::$69 main::$72 score#38 ] { } ) always clobbers reg byte a
Statement [118] if(*((char *)duck#1)==brick) goto main::@24 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$66 main::$69 main::$72 score#38 ] ( main:10 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$66 main::$69 main::$72 score#38 ] { } ) always clobbers reg byte a reg byte y
Removing always clobbered register reg byte y as potential for zp[1]:17 [ divr8u::rem#5 divr8u::rem#10 divr8u::rem#4 rem8u#48 rem8u#127 rem8u#25 divr8u::rem#11 divr8u::rem#6 divr8u::rem#0 divr8u::rem#1 divr8u::rem#2 ]
Removing always clobbered register reg byte y as potential for zp[1]:95 [ n#52 n#89 n#109 n#20 n#101 n#14 n#1 ]
Statement [119] if(*((char *)main::$66)==brick) goto main::@24 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$69 main::$72 score#38 ] ( main:10 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$69 main::$72 score#38 ] { } ) always clobbers reg byte a reg byte y
Statement [120] if(*((char *)main::$69)==brick) goto main::@24 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$72 score#38 ] ( main:10 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$72 score#38 ] { } ) always clobbers reg byte a reg byte y
Statement [121] if(*((char *)main::$72)==brick) goto main::@24 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 score#38 ] ( main:10 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 score#38 ] { } ) always clobbers reg byte a reg byte y
Statement [125] if(time#11<$a) goto main::@27 [ l m hiscore#110 rem8u#25 y#18 n#20 tu#13 peephole#12 duck#1 score#19 z#100 ] ( main:10 [ l m hiscore#110 rem8u#25 y#18 n#20 tu#13 peephole#12 duck#1 score#19 z#100 ] { } ) always clobbers reg byte a
Statement [127] score#4 = score#19 - $a [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#4 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#4 ] { { score#13 = score#4 } } ) always clobbers reg byte a
Statement [129] *((char *) 36877) = $82 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 ] { { z#100 = z#53 } } ) always clobbers reg byte a
Statement [131] *((char *) 36877) = 0 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 ] { } ) always clobbers reg byte a
Statement [132] main::$150 = duck#1 + c [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 main::$150 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 main::$150 ] { } ) always clobbers reg byte a
Statement [133] *((char *)main::$150) = 0 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 ] { } ) always clobbers reg byte a reg byte y
Statement [134] main::$151 = duck#1 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 main::$151 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 main::$151 ] { } ) always clobbers reg byte a
Statement [135] main::$152 = main::$151 + 1+c [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 main::$152 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 main::$152 ] { } ) always clobbers reg byte a
Statement [136] *((char *)main::$152) = 0 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 ] { } ) always clobbers reg byte a reg byte y
Statement [137] main::$153 = duck#1 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 main::$153 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 main::$153 ] { } ) always clobbers reg byte a
Statement [138] main::$154 = main::$153 + $16+c [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 main::$154 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 main::$154 ] { } ) always clobbers reg byte a
Statement [139] *((char *)main::$154) = 0 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 ] { } ) always clobbers reg byte a reg byte y
Statement [140] main::$155 = duck#1 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 score#38 main::$155 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 score#38 main::$155 ] { } ) always clobbers reg byte a
Statement [141] main::$156 = main::$155 + $17+c [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 score#38 main::$156 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 score#38 main::$156 ] { } ) always clobbers reg byte a
Statement [142] *((char *)main::$156) = 0 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 score#38 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 score#38 ] { } ) always clobbers reg byte a reg byte y
Statement [143] if(tu#1<$b) goto main::@22 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 score#38 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 score#38 ] { } ) always clobbers reg byte a
Statement [146] *((char *) 36869) = $f0 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color hiscore#110 rem8u#25 y#18 n#20 score#38 ] ( main:10 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color hiscore#110 rem8u#25 y#18 n#20 score#38 ] { } ) always clobbers reg byte a
Statement [147] chrout::petscii = lower [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color chrout::petscii hiscore#110 rem8u#25 y#18 n#20 score#38 ] ( main:10 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color chrout::petscii hiscore#110 rem8u#25 y#18 n#20 score#38 ] { } ) always clobbers reg byte a
Statement [163] if(score#38<=hiscore#110) goto main::@114 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor hiscore#110 rem8u#25 y#18 n#20 score#38 ] ( main:10 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor hiscore#110 rem8u#25 y#18 n#20 score#38 ] { } ) always clobbers reg byte a
Statement [164] hiscore#124 = hiscore#110 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#124 ] ( main:10 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#124 ] { } ) always clobbers reg byte a
Statement [166] utoa::value#2 = hiscore#19 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::value#2 ] ( main:10 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::value#2 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } } ) always clobbers reg byte a
Statement asm { jsr$FD22 } always clobbers reg byte a reg byte x reg byte y
Statement [180] hiscore#123 = hiscore#19 [ rem8u#25 y#18 hiscore#123 n#20 ] ( main:10 [ rem8u#25 y#18 hiscore#123 n#20 ] { } ) always clobbers reg byte a
Statement [183] m = *((char *) 37151) [ l m hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 div16u8u::return#2 ] ( main:10 [ l m hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [184] *((char *) 37154) = $7f [ l m hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 div16u8u::return#2 ] ( main:10 [ l m hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [186] *((char *) 37154) = $ff [ l m hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 div16u8u::return#2 ] ( main:10 [ l m hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [187] main::$78 = $10 & m [ l m hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 main::$78 div16u8u::return#2 ] ( main:10 [ l m hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 main::$78 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [189] y#0 = -- y#18 [ l m hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#0 div16u8u::return#2 ] ( main:10 [ l m hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#0 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [191] main::$81 = $80 & n#14 [ l m hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#10 main::$81 div16u8u::return#2 ] ( main:10 [ l m hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#10 main::$81 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [195] main::$84 = 4 & m [ l m hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#11 main::$84 div16u8u::return#2 ] ( main:10 [ l m hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#11 main::$84 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [197] y#2 = y#11 - $16 [ l m hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#2 div16u8u::return#2 ] ( main:10 [ l m hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#2 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [199] main::$88 = 8 & m [ l m hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#12 main::$88 div16u8u::return#2 ] ( main:10 [ l m hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#12 main::$88 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [201] y#3 = y#12 + $16 [ l m hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#3 div16u8u::return#2 ] ( main:10 [ l m hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#3 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [203] main::$92 = $20 & m [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 main::$92 div16u8u::return#2 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 main::$92 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [205] *((char *) 36877) = $82 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [206] if(peephole#12!=duck#1) goto main::@34 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [207] main::$96 = $c - div16u8u::return#2 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 main::$96 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 main::$96 ] { { z#100 = z#53 } } ) always clobbers reg byte a
Statement [208] main::$179 = main::$96 << 2 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 main::$96 main::$179 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 main::$96 main::$179 ] { { z#100 = z#53 } } ) always clobbers reg byte a
Statement [209] main::$180 = main::$179 + main::$96 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 main::$180 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 main::$180 ] { { z#100 = z#53 } } ) always clobbers reg byte a
Statement [210] main::$97 = main::$180 << 1 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 main::$97 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 main::$97 ] { { z#100 = z#53 } } ) always clobbers reg byte a
Statement [211] score#8 = score#19 + main::$97 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 score#8 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 score#8 ] { { z#100 = z#53 } } ) always clobbers reg byte a
Statement [214] *((char *) 36877) = 0 [ l hiscore#110 tu#13 z#25 peephole#12 duck#1 divr8u::rem#11 n#14 y#13 time#38 score#81 ] ( main:10 [ l hiscore#110 tu#13 z#25 peephole#12 duck#1 divr8u::rem#11 n#14 y#13 time#38 score#81 ] { } ) always clobbers reg byte a
Statement [216] main::$104 = y#13 + 1 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$104 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$104 ] { } ) always clobbers reg byte a
Statement [217] main::$107 = y#13 + $16 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$104 main::$107 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$104 main::$107 ] { } ) always clobbers reg byte a
Statement [218] main::$110 = y#13 + $17 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$104 main::$107 main::$110 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$104 main::$107 main::$110 ] { } ) always clobbers reg byte a
Statement [219] if(*((char *)y#13)==brick) goto main::@36 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$104 main::$107 main::$110 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$104 main::$107 main::$110 ] { } ) always clobbers reg byte a reg byte y
Statement [220] if(*((char *)main::$104)==brick) goto main::@36 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$107 main::$110 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$107 main::$110 ] { } ) always clobbers reg byte a reg byte y
Statement [221] if(*((char *)main::$107)!=brick) goto main::@109 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$110 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$110 ] { } ) always clobbers reg byte a reg byte y
Statement [223] *((char *)y#35) = $fd [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 ] { { z#48 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [224] main::$125 = y#35 + c [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$125 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$125 ] { { z#48 = z#53 } } ) always clobbers reg byte a
Statement [225] *((char *)main::$125) = 1 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 ] { { z#48 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [226] main::$127 = y#35 + 1 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$127 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$127 ] { { z#48 = z#53 } } ) always clobbers reg byte a
Statement [227] *((char *)main::$127) = $ed [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$127 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$127 ] { { z#48 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [228] main::$128 = main::$127 + c [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$128 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$128 ] { { z#48 = z#53 } } ) always clobbers reg byte a
Statement [229] *((char *)main::$128) = 1 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 ] { { z#48 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [230] main::$130 = y#35 + $16 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$130 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$130 ] { { z#48 = z#53 } } ) always clobbers reg byte a
Statement [231] *((char *)main::$130) = $ee [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$130 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$130 ] { { z#48 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [232] main::$131 = main::$130 + c [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$131 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$131 ] { { z#48 = z#53 } } ) always clobbers reg byte a
Statement [233] *((char *)main::$131) = 1 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 ] { { z#48 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [234] main::$133 = y#35 + $17 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$133 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$133 ] { { z#48 = z#53 } } ) always clobbers reg byte a
Statement [235] *((char *)main::$133) = $f0 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$133 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$133 ] { { z#48 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [236] main::$134 = main::$133 + c [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$134 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$134 ] { { z#48 = z#53 } } ) always clobbers reg byte a
Statement [237] *((char *)main::$134) = 1 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 ] { { z#48 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [239] *((char *)duck#1) = 0 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 ] { { z#25 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [240] main::$136 = duck#1 + c [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$136 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$136 ] { { z#25 = z#53 } } ) always clobbers reg byte a
Statement [241] *((char *)main::$136) = 7 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 ] { { z#25 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [242] main::$138 = duck#1 + 1 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$138 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$138 ] { { z#25 = z#53 } } ) always clobbers reg byte a
Statement [243] *((char *)main::$138) = 1 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$138 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$138 ] { { z#25 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [244] main::$139 = main::$138 + c [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$139 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$139 ] { { z#25 = z#53 } } ) always clobbers reg byte a
Statement [245] *((char *)main::$139) = 7 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 ] { { z#25 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [246] main::$141 = duck#1 + $16 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$141 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$141 ] { { z#25 = z#53 } } ) always clobbers reg byte a
Statement [247] *((char *)main::$141) = 2 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$141 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$141 ] { { z#25 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [248] main::$142 = main::$141 + c [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$142 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$142 ] { { z#25 = z#53 } } ) always clobbers reg byte a
Statement [249] *((char *)main::$142) = 7 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 ] { { z#25 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [250] main::$144 = duck#1 + $17 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$144 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$144 ] { { z#25 = z#53 } } ) always clobbers reg byte a
Statement [251] *((char *)main::$144) = 3 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$144 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$144 ] { { z#25 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [252] main::$145 = main::$144 + c [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$145 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$145 ] { { z#25 = z#53 } } ) always clobbers reg byte a
Statement [253] *((char *)main::$145) = 7 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 ] { { z#25 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [255] y#130 = y#35 [ l m hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#130 y#35 n#14 ] ( main:10 [ l m hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#130 y#35 n#14 ] { } ) always clobbers reg byte a
Statement [256] if(*((char *)main::$110)==brick) goto main::@36 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 ] { } ) always clobbers reg byte a reg byte y
Statement [257] if(y#13>$1e16) goto main::@107 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 ] { } ) always clobbers reg byte a
Statement [258] if(y#13>=$1fe3) goto main::@36 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 ] { } ) always clobbers reg byte a
Statement [259] main::$119 = peephole#12 + c [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$119 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$119 ] { } ) always clobbers reg byte a
Statement [260] *((char *)main::$119) = 0 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$119 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$119 ] { } ) always clobbers reg byte a reg byte y
Statement [261] main::$120 = main::$119 + 1 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$119 main::$120 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$119 main::$120 ] { } ) always clobbers reg byte a
Statement [262] *((char *)main::$120) = 0 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$119 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$119 ] { } ) always clobbers reg byte a reg byte y
Statement [263] main::$122 = main::$119 + $16 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$119 main::$122 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$119 main::$122 ] { } ) always clobbers reg byte a
Statement [264] *((char *)main::$122) = 0 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$119 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$119 ] { } ) always clobbers reg byte a reg byte y
Statement [265] main::$124 = main::$119 + $17 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$124 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$124 ] { } ) always clobbers reg byte a
Statement [266] *((char *)main::$124) = 0 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 ] { } ) always clobbers reg byte a reg byte y
Statement [267] y#141 = y#13 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 z#48 y#141 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 z#48 y#141 ] { } ) always clobbers reg byte a
Statement [268] score#6 = score#19 - $a [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#6 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#6 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [272] main::$57 = $30 + tu#13 [ l hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 main::$57 ] ( main:10 [ l hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 main::$57 ] { { chrout::petscii = main::$57 } } ) always clobbers reg byte a
Statement [273] chrout::petscii = main::$57 [ l chrout::petscii hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] ( main:10 [ l chrout::petscii hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] { { chrout::petscii = main::$57 } } ) always clobbers reg byte a
Statement [275] chrout::petscii = ducknumber[j#16] [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 j#16 score#38 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 j#16 score#38 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:162 [ j#16 j#5 ]
Statement [278] chrout::petscii = chrono[j#13] [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 j#13 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 j#13 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:161 [ j#13 j#3 ]
Statement [283] chrout::petscii = brick [ l m chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#28 ] ( main:10 [ l m chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#28 ] { } ) always clobbers reg byte a
Statement [285] main::$35 = z#28 + m [ l rem8u#127 y#114 hiscore#110 n#89 main::$35 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 main::$35 ] { } ) always clobbers reg byte a
Statement [286] z#9 = main::$35 + 1 [ l rem8u#127 y#114 hiscore#110 n#89 z#9 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 z#9 ] { } ) always clobbers reg byte a
Statement [287] if(z#9<$1fa) goto main::@13 [ l rem8u#127 y#114 hiscore#110 n#89 z#9 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 z#9 ] { } ) always clobbers reg byte a
Statement [288] chrout::petscii = right [ l m chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#28 j#11 ] ( main:10 [ l m chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#28 j#11 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:94 [ j#11 j#2 ]
Statement [291] chrout::petscii = brick [ l chrout::petscii rem8u#127 y#114 hiscore#110 k#101 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 k#101 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:169 [ k#101 k#1 ]
Statement [295] chrout::petscii = brick [ l chrout::petscii rem8u#127 y#114 hiscore#110 k#101 n#101 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 k#101 n#101 ] { } ) always clobbers reg byte a
Statement [298] chrout::petscii = right [ l chrout::petscii rem8u#127 y#114 hiscore#110 k#101 n#101 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 k#101 n#101 ] { } ) always clobbers reg byte a
Statement [301] main::$3 = $1c00 + m [ m main::$3 ] ( main:10 [ m main::$3 ] { } ) always clobbers reg byte a
Statement [302] *((char *)main::$3) = duck_udg[m] [ m ] ( main:10 [ m ] { } ) always clobbers reg byte a reg byte y
Statement [308] conio_cursor_x = 0 [ conio_cursor_x gotoxy::y#5 ] ( gotoxy:17 [ conio_cursor_x gotoxy::y#5 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } conio_c64_init:8::gotoxy:17 [ conio_cursor_x gotoxy::y#5 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } main:10::clear_screen:27::gotoxy:325 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x gotoxy::y#5 ] { } main:10::clear_screen:44::gotoxy:325 [ l rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x gotoxy::y#5 ] { } main:10::clear_screen:145::gotoxy:325 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x gotoxy::y#5 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:121 [ gotoxy::y#5 gotoxy::y#4 gotoxy::y#2 ]
Statement [310] gotoxy::$7 = (unsigned int)gotoxy::y#5 [ conio_cursor_x conio_cursor_y gotoxy::$7 ] ( gotoxy:17 [ conio_cursor_x conio_cursor_y gotoxy::$7 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } conio_c64_init:8::gotoxy:17 [ conio_cursor_x conio_cursor_y gotoxy::$7 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } main:10::clear_screen:27::gotoxy:325 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y gotoxy::$7 ] { } main:10::clear_screen:44::gotoxy:325 [ l rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y gotoxy::$7 ] { } main:10::clear_screen:145::gotoxy:325 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y gotoxy::$7 ] { } ) always clobbers reg byte a
Statement [311] gotoxy::$8 = gotoxy::$7 << 2 [ conio_cursor_x conio_cursor_y gotoxy::$7 gotoxy::$8 ] ( gotoxy:17 [ conio_cursor_x conio_cursor_y gotoxy::$7 gotoxy::$8 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } conio_c64_init:8::gotoxy:17 [ conio_cursor_x conio_cursor_y gotoxy::$7 gotoxy::$8 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } main:10::clear_screen:27::gotoxy:325 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y gotoxy::$7 gotoxy::$8 ] { } main:10::clear_screen:44::gotoxy:325 [ l rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y gotoxy::$7 gotoxy::$8 ] { } main:10::clear_screen:145::gotoxy:325 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y gotoxy::$7 gotoxy::$8 ] { } ) always clobbers reg byte a
Statement [312] gotoxy::$9 = gotoxy::$8 + gotoxy::$7 [ conio_cursor_x conio_cursor_y gotoxy::$9 ] ( gotoxy:17 [ conio_cursor_x conio_cursor_y gotoxy::$9 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } conio_c64_init:8::gotoxy:17 [ conio_cursor_x conio_cursor_y gotoxy::$9 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } main:10::clear_screen:27::gotoxy:325 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y gotoxy::$9 ] { } main:10::clear_screen:44::gotoxy:325 [ l rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y gotoxy::$9 ] { } main:10::clear_screen:145::gotoxy:325 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y gotoxy::$9 ] { } ) always clobbers reg byte a
Statement [313] gotoxy::line_offset#0 = gotoxy::$9 << 3 [ conio_cursor_x conio_cursor_y gotoxy::line_offset#0 ] ( gotoxy:17 [ conio_cursor_x conio_cursor_y gotoxy::line_offset#0 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } conio_c64_init:8::gotoxy:17 [ conio_cursor_x conio_cursor_y gotoxy::line_offset#0 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } main:10::clear_screen:27::gotoxy:325 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y gotoxy::line_offset#0 ] { } main:10::clear_screen:44::gotoxy:325 [ l rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y gotoxy::line_offset#0 ] { } main:10::clear_screen:145::gotoxy:325 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y gotoxy::line_offset#0 ] { } ) always clobbers reg byte a
Statement [314] gotoxy::$5 = DEFAULT_SCREEN + gotoxy::line_offset#0 [ conio_cursor_x conio_cursor_y gotoxy::line_offset#0 gotoxy::$5 ] ( gotoxy:17 [ conio_cursor_x conio_cursor_y gotoxy::line_offset#0 gotoxy::$5 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } conio_c64_init:8::gotoxy:17 [ conio_cursor_x conio_cursor_y gotoxy::line_offset#0 gotoxy::$5 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } main:10::clear_screen:27::gotoxy:325 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y gotoxy::line_offset#0 gotoxy::$5 ] { } main:10::clear_screen:44::gotoxy:325 [ l rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y gotoxy::line_offset#0 gotoxy::$5 ] { } main:10::clear_screen:145::gotoxy:325 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y gotoxy::line_offset#0 gotoxy::$5 ] { } ) always clobbers reg byte a
Statement [315] conio_line_text = gotoxy::$5 [ conio_cursor_x conio_cursor_y conio_line_text gotoxy::line_offset#0 ] ( gotoxy:17 [ conio_cursor_x conio_cursor_y conio_line_text gotoxy::line_offset#0 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } conio_c64_init:8::gotoxy:17 [ conio_cursor_x conio_cursor_y conio_line_text gotoxy::line_offset#0 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } main:10::clear_screen:27::gotoxy:325 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y conio_line_text gotoxy::line_offset#0 ] { } main:10::clear_screen:44::gotoxy:325 [ l rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y conio_line_text gotoxy::line_offset#0 ] { } main:10::clear_screen:145::gotoxy:325 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y conio_line_text gotoxy::line_offset#0 ] { } ) always clobbers reg byte a
Statement [316] gotoxy::$6 = COLORRAM + gotoxy::line_offset#0 [ conio_cursor_x conio_cursor_y conio_line_text gotoxy::$6 ] ( gotoxy:17 [ conio_cursor_x conio_cursor_y conio_line_text gotoxy::$6 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } conio_c64_init:8::gotoxy:17 [ conio_cursor_x conio_cursor_y conio_line_text gotoxy::$6 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } main:10::clear_screen:27::gotoxy:325 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y conio_line_text gotoxy::$6 ] { } main:10::clear_screen:44::gotoxy:325 [ l rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y conio_line_text gotoxy::$6 ] { } main:10::clear_screen:145::gotoxy:325 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y conio_line_text gotoxy::$6 ] { } ) always clobbers reg byte a
Statement [317] conio_line_color = gotoxy::$6 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color ] ( gotoxy:17 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } conio_c64_init:8::gotoxy:17 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } main:10::clear_screen:27::gotoxy:325 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y conio_line_text conio_line_color ] { } main:10::clear_screen:44::gotoxy:325 [ l rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y conio_line_text conio_line_color ] { } main:10::clear_screen:145::gotoxy:325 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y conio_line_text conio_line_color ] { } ) always clobbers reg byte a
Statement asm { ldapetscii jsr$ffd2 } always clobbers reg byte a reg byte x reg byte y
Removing always clobbered register reg byte x as potential for zp[1]:17 [ divr8u::rem#5 divr8u::rem#10 divr8u::rem#4 rem8u#48 rem8u#127 rem8u#25 divr8u::rem#11 divr8u::rem#6 divr8u::rem#0 divr8u::rem#1 divr8u::rem#2 ]
Removing always clobbered register reg byte x as potential for zp[1]:95 [ n#52 n#89 n#109 n#20 n#101 n#14 n#1 ]
Removing always clobbered register reg byte x as potential for zp[1]:162 [ j#16 j#5 ]
Removing always clobbered register reg byte y as potential for zp[1]:162 [ j#16 j#5 ]
Removing always clobbered register reg byte x as potential for zp[1]:161 [ j#13 j#3 ]
Removing always clobbered register reg byte y as potential for zp[1]:161 [ j#13 j#3 ]
Removing always clobbered register reg byte x as potential for zp[1]:94 [ j#11 j#2 ]
Removing always clobbered register reg byte y as potential for zp[1]:94 [ j#11 j#2 ]
Removing always clobbered register reg byte x as potential for zp[1]:169 [ k#101 k#1 ]
Removing always clobbered register reg byte y as potential for zp[1]:169 [ k#101 k#1 ]
Statement [323] if(z#2<$1fa) goto clear_screen::@2 [ clear_screen::n#5 z#2 ] ( main:10::clear_screen:27 [ rem8u#127 y#114 hiscore#110 n#109 clear_screen::n#5 z#2 ] { } main:10::clear_screen:44 [ l rem8u#127 y#114 hiscore#110 n#109 clear_screen::n#5 z#2 ] { } main:10::clear_screen:145 [ hiscore#110 rem8u#25 y#18 n#20 score#38 clear_screen::n#5 z#2 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:122 [ clear_screen::n#5 ]
Statement [326] chrout::petscii = home [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color chrout::petscii ] ( main:10::clear_screen:27 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y conio_line_text conio_line_color chrout::petscii ] { } main:10::clear_screen:44 [ l rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y conio_line_text conio_line_color chrout::petscii ] { } main:10::clear_screen:145 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y conio_line_text conio_line_color chrout::petscii ] { } ) always clobbers reg byte a
Statement [329] clear_screen::$5 = $1e00 + z#2 [ clear_screen::n#5 z#2 clear_screen::$5 ] ( main:10::clear_screen:27 [ rem8u#127 y#114 hiscore#110 n#109 clear_screen::n#5 z#2 clear_screen::$5 ] { } main:10::clear_screen:44 [ l rem8u#127 y#114 hiscore#110 n#109 clear_screen::n#5 z#2 clear_screen::$5 ] { } main:10::clear_screen:145 [ hiscore#110 rem8u#25 y#18 n#20 score#38 clear_screen::n#5 z#2 clear_screen::$5 ] { } ) always clobbers reg byte a
Statement [330] clear_screen::$4 = clear_screen::$5 + c [ clear_screen::n#5 z#2 clear_screen::$5 clear_screen::$4 ] ( main:10::clear_screen:27 [ rem8u#127 y#114 hiscore#110 n#109 clear_screen::n#5 z#2 clear_screen::$5 clear_screen::$4 ] { } main:10::clear_screen:44 [ l rem8u#127 y#114 hiscore#110 n#109 clear_screen::n#5 z#2 clear_screen::$5 clear_screen::$4 ] { } main:10::clear_screen:145 [ hiscore#110 rem8u#25 y#18 n#20 score#38 clear_screen::n#5 z#2 clear_screen::$5 clear_screen::$4 ] { } ) always clobbers reg byte a
Statement [331] *((char *)clear_screen::$4) = 0 [ clear_screen::n#5 z#2 clear_screen::$5 ] ( main:10::clear_screen:27 [ rem8u#127 y#114 hiscore#110 n#109 clear_screen::n#5 z#2 clear_screen::$5 ] { } main:10::clear_screen:44 [ l rem8u#127 y#114 hiscore#110 n#109 clear_screen::n#5 z#2 clear_screen::$5 ] { } main:10::clear_screen:145 [ hiscore#110 rem8u#25 y#18 n#20 score#38 clear_screen::n#5 z#2 clear_screen::$5 ] { } ) always clobbers reg byte a reg byte y
Removing always clobbered register reg byte y as potential for zp[1]:122 [ clear_screen::n#5 ]
Statement [332] *((char *)clear_screen::$5) = clear_screen::n#5 [ clear_screen::n#5 z#2 ] ( main:10::clear_screen:27 [ rem8u#127 y#114 hiscore#110 n#109 clear_screen::n#5 z#2 ] { } main:10::clear_screen:44 [ l rem8u#127 y#114 hiscore#110 n#109 clear_screen::n#5 z#2 ] { } main:10::clear_screen:145 [ hiscore#110 rem8u#25 y#18 n#20 score#38 clear_screen::n#5 z#2 ] { } ) always clobbers reg byte a reg byte y
Statement [339] cputs::c#1 = *cputs::s#10 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor cputs::s#10 cputs::c#1 ] ( main:10::cputs:31 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor cputs::s#10 cputs::c#1 ] { } main:10::cputs:35 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor cputs::s#10 cputs::c#1 ] { } main:10::cputs:39 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor cputs::s#10 cputs::c#1 ] { } main:10::cputs:152 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor cputs::s#10 cputs::c#1 ] { } main:10::cputs:156 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor cputs::s#10 cputs::c#1 ] { } main:10::cputs:158 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor cputs::s#10 cputs::c#1 ] { } main:10::cputs:162 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor cputs::s#10 cputs::c#1 ] { } main:10::cputs:169 [ rem8u#25 y#18 n#20 hiscore#19 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor cputs::s#10 cputs::c#1 ] { } main:10::cputs:173 [ rem8u#25 y#18 n#20 hiscore#19 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor cputs::s#10 cputs::c#1 ] { } ) always clobbers reg byte a reg byte y
Statement [346] m = *((char *) 37140) [ m random::k#4 random::n#4 ] ( main:10::random:66 [ l rem8u#127 y#114 hiscore#110 n#89 z#28 m random::k#4 random::n#4 ] { { random::k#0 = random::k#4 } { random::n#0 = random::n#4 } } main:10::random:109 [ l hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 m random::k#4 random::n#4 ] { } main:10::random:111 [ l hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#0 score#38 m random::k#4 random::n#4 ] { } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:8 [ random::n#4 random::n#0 ]
Statement [352] if(score#13<=$fde8) goto write_score::@15 [ score#13 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#13 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#13 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#13 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [355] m = 0 [ m score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 m score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 m score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 m score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [356] if(m<4) goto write_score::@6 [ m score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 m score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 m score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 m score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [357] utoa::value#1 = score#38 [ score#38 utoa::value#1 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::value#1 ] { { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::value#1 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::value#1 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } } ) always clobbers reg byte a
Statement [359] if(score#38<9+1) goto write_score::@2 [ score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [360] *(points+2) = *buffer [ score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [361] *(points+3) = *(buffer+1) [ score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [362] if(score#38<$63+1) goto write_score::@3 [ score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [363] *(points+1) = *buffer [ score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [364] *(points+2) = *(buffer+1) [ score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [365] *(points+3) = *(buffer+2) [ score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [366] chrout::petscii = yellow [ chrout::petscii score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 chrout::petscii score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 chrout::petscii score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 chrout::petscii score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [368] chrout::petscii = home [ chrout::petscii score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 chrout::petscii score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 chrout::petscii score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 chrout::petscii score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [370] *((char *) 211) = 4 [ score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [371] m = 0 [ m score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 m score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 m score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 m score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [372] if(m<4) goto write_score::@10 [ m score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 m score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 m score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 m score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [374] chrout::petscii = points[m] [ m chrout::petscii score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 m chrout::petscii score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 m chrout::petscii score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 m chrout::petscii score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a reg byte y
Statement [377] points[m] = '0' [ m score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 m score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 m score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 m score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a reg byte y
Statement asm { lda#0 ldy#0 ldx#0 jsr$ffdb } always clobbers reg byte a reg byte x reg byte y
Statement [382] m = 0 [ m wait::n#6 z#53 ] ( main:10::wait:130 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 score#38 m wait::n#6 z#53 ] { { z#100 = z#53 } } main:10::wait:212 [ l hiscore#110 tu#13 peephole#12 duck#1 divr8u::rem#11 n#14 y#13 score#8 m wait::n#6 z#53 ] { { z#100 = z#53 } } main:10::wait:238 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 m wait::n#6 z#53 ] { { z#48 = z#53 } } main:10::wait:254 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 m wait::n#6 z#53 ] { { z#25 = z#53 } } main:10::wait:271 [ l hiscore#110 tu#13 peephole#12 duck#1 score#38 divr8u::rem#11 n#14 y#13 div16u8u::return#2 m wait::n#6 z#53 ] { { z#100 = z#53 } } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:44 [ wait::n#6 ]
Statement [387] if(z#23<$21c) goto wait::@3 [ m wait::n#6 z#23 ] ( main:10::wait:130 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 score#38 m wait::n#6 z#23 ] { { z#100 = z#53 } } main:10::wait:212 [ l hiscore#110 tu#13 peephole#12 duck#1 divr8u::rem#11 n#14 y#13 score#8 m wait::n#6 z#23 ] { { z#100 = z#53 } } main:10::wait:238 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 m wait::n#6 z#23 ] { { z#48 = z#53 } } main:10::wait:254 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 m wait::n#6 z#23 ] { { z#25 = z#53 } } main:10::wait:271 [ l hiscore#110 tu#13 peephole#12 duck#1 score#38 divr8u::rem#11 n#14 y#13 div16u8u::return#2 m wait::n#6 z#23 ] { { z#100 = z#53 } } ) always clobbers reg byte a
Statement [394] *utoa::buffer#10 = DIGITS[utoa::$11] [ utoa::buffer#10 ] ( main:10::utoa:167 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::buffer#10 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } } main:10::write_score:87::utoa:358 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::buffer#10 ] { { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:128::utoa:358 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::buffer#10 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:269::utoa:358 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::buffer#10 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } } ) always clobbers reg byte a reg byte y
Statement [395] utoa::buffer#3 = ++ utoa::buffer#10 [ utoa::buffer#3 ] ( main:10::utoa:167 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::buffer#3 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } } main:10::write_score:87::utoa:358 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::buffer#3 ] { { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:128::utoa:358 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::buffer#3 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:269::utoa:358 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::buffer#3 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } } ) always clobbers reg byte a
Statement [396] *utoa::buffer#3 = 0 [ ] ( main:10::utoa:167 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } } main:10::write_score:87::utoa:358 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] { { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:128::utoa:358 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:269::utoa:358 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } } ) always clobbers reg byte a reg byte y
Statement [398] utoa::$10 = utoa::digit#2 << 1 [ utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::$10 ] ( main:10::utoa:167 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::$10 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } } main:10::write_score:87::utoa:358 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::$10 ] { { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:128::utoa:358 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::$10 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:269::utoa:358 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::$10 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:33 [ utoa::digit#2 utoa::digit#1 ]
Removing always clobbered register reg byte a as potential for zp[1]:37 [ utoa::started#2 utoa::started#4 ]
Statement [399] utoa::digit_value#0 = RADIX_DECIMAL_VALUES[utoa::$10] [ utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::digit_value#0 ] ( main:10::utoa:167 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::digit_value#0 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } } main:10::write_score:87::utoa:358 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::digit_value#0 ] { { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:128::utoa:358 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::digit_value#0 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:269::utoa:358 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::digit_value#0 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } } ) always clobbers reg byte a
Statement [401] if(utoa::value#3>=utoa::digit_value#0) goto utoa::@5 [ utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::digit_value#0 ] ( main:10::utoa:167 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::digit_value#0 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } } main:10::write_score:87::utoa:358 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::digit_value#0 ] { { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:128::utoa:358 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::digit_value#0 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:269::utoa:358 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::digit_value#0 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } } ) always clobbers reg byte a
Statement [404] utoa_append::buffer#0 = utoa::buffer#10 [ utoa::digit#2 utoa::value#3 utoa::buffer#10 utoa::digit_value#0 utoa_append::buffer#0 ] ( main:10::utoa:167 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::digit#2 utoa::value#3 utoa::buffer#10 utoa::digit_value#0 utoa_append::buffer#0 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:87::utoa:358 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::digit#2 utoa::value#3 utoa::buffer#10 utoa::digit_value#0 utoa_append::buffer#0 ] { { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:128::utoa:358 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::digit#2 utoa::value#3 utoa::buffer#10 utoa::digit_value#0 utoa_append::buffer#0 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:269::utoa:358 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::digit#2 utoa::value#3 utoa::buffer#10 utoa::digit_value#0 utoa_append::buffer#0 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } ) always clobbers reg byte a
Statement [405] utoa_append::value#0 = utoa::value#3 [ utoa::digit#2 utoa::buffer#10 utoa::digit_value#0 utoa_append::buffer#0 utoa_append::value#0 ] ( main:10::utoa:167 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::digit#2 utoa::buffer#10 utoa::digit_value#0 utoa_append::buffer#0 utoa_append::value#0 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:87::utoa:358 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::digit#2 utoa::buffer#10 utoa::digit_value#0 utoa_append::buffer#0 utoa_append::value#0 ] { { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:128::utoa:358 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::digit#2 utoa::buffer#10 utoa::digit_value#0 utoa_append::buffer#0 utoa_append::value#0 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:269::utoa:358 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::digit#2 utoa::buffer#10 utoa::digit_value#0 utoa_append::buffer#0 utoa_append::value#0 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } ) always clobbers reg byte a
Statement [406] utoa_append::sub#0 = utoa::digit_value#0 [ utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::value#0 utoa_append::sub#0 ] ( main:10::utoa:167 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::value#0 utoa_append::sub#0 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:87::utoa:358 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::value#0 utoa_append::sub#0 ] { { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:128::utoa:358 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::value#0 utoa_append::sub#0 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:269::utoa:358 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::value#0 utoa_append::sub#0 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } ) always clobbers reg byte a
Statement [408] utoa_append::return#0 = utoa_append::value#2 [ utoa::digit#2 utoa::buffer#10 utoa_append::return#0 ] ( main:10::utoa:167 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::digit#2 utoa::buffer#10 utoa_append::return#0 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:87::utoa:358 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::return#0 ] { { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:128::utoa:358 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::return#0 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:269::utoa:358 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::return#0 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } ) always clobbers reg byte a
Statement [409] utoa::value#0 = utoa_append::return#0 [ utoa::digit#2 utoa::buffer#10 utoa::value#0 ] ( main:10::utoa:167 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::digit#2 utoa::buffer#10 utoa::value#0 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } } main:10::write_score:87::utoa:358 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::digit#2 utoa::buffer#10 utoa::value#0 ] { { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:128::utoa:358 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::digit#2 utoa::buffer#10 utoa::value#0 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:269::utoa:358 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::digit#2 utoa::buffer#10 utoa::value#0 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } } ) always clobbers reg byte a
Statement asm { jsr$ffde stal stxm } always clobbers reg byte a reg byte x reg byte y
Statement [412] read_chrono::$0 = m << 8 [ l read_chrono::$0 ] ( main:10::read_chrono:182 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l read_chrono::$0 ] { { div16u8u::return#0 = div16u8u::return#2 } } ) always clobbers reg byte a
Statement [413] div16u8u::dividend#0 = read_chrono::$0 + l [ l div16u8u::dividend#0 ] ( main:10::read_chrono:182 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l div16u8u::dividend#0 ] { { div16u8u::return#0 = div16u8u::return#2 } } ) always clobbers reg byte a
Statement [415] div16u8u::return#2 = div16u8u::return#0 [ l divr8u::rem#11 div16u8u::return#2 ] ( main:10::read_chrono:182 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l divr8u::rem#11 div16u8u::return#2 ] { { div16u8u::return#0 = div16u8u::return#2 } } ) always clobbers reg byte a
Statement [416] *((char *)$1e15+c) = 7 [ l divr8u::rem#11 div16u8u::return#2 ] ( main:10::read_chrono:182 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l divr8u::rem#11 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [417] *((char *) 7701) = $b9 [ l divr8u::rem#11 div16u8u::return#2 ] ( main:10::read_chrono:182 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l divr8u::rem#11 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [418] if(div16u8u::return#2>=$a) goto read_chrono::@return [ l divr8u::rem#11 div16u8u::return#2 ] ( main:10::read_chrono:182 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l divr8u::rem#11 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [419] read_chrono::$5 = $b9 - div16u8u::return#2 [ l divr8u::rem#11 div16u8u::return#2 read_chrono::$5 ] ( main:10::read_chrono:182 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l divr8u::rem#11 div16u8u::return#2 read_chrono::$5 ] { } ) always clobbers reg byte a
Statement [420] *((char *) 7701) = read_chrono::$5 [ l divr8u::rem#11 div16u8u::return#2 ] ( main:10::read_chrono:182 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l divr8u::rem#11 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [423] conio_line_text[conio_cursor_x] = cputc::c#0 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] ( main:10::cputs:31::cputc:344 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte y
Statement [424] conio_line_color[conio_cursor_x] = conio_textcolor [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] ( main:10::cputs:31::cputc:344 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a reg byte y
Statement [426] if(conio_cursor_x!=$28) goto cputc::@return [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] ( main:10::cputs:31::cputc:344 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a
Statement [434] if(utoa_append::value#2>=utoa_append::sub#0) goto utoa_append::@2 [ utoa_append::buffer#0 utoa_append::sub#0 utoa_append::value#2 utoa_append::digit#2 ] ( main:10::utoa:167::utoa_append:407 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::sub#0 utoa_append::value#2 utoa_append::digit#2 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:87::utoa:358::utoa_append:407 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::sub#0 utoa_append::value#2 utoa_append::digit#2 ] { { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:128::utoa:358::utoa_append:407 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::sub#0 utoa_append::value#2 utoa_append::digit#2 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:269::utoa:358::utoa_append:407 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::sub#0 utoa_append::value#2 utoa_append::digit#2 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:7 [ utoa_append::digit#2 utoa_append::digit#1 ]
Statement [435] *utoa_append::buffer#0 = DIGITS[utoa_append::digit#2] [ utoa_append::value#2 ] ( main:10::utoa:167::utoa_append:407 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::digit#2 utoa::buffer#10 utoa_append::value#2 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:87::utoa:358::utoa_append:407 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::value#2 ] { { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:128::utoa:358::utoa_append:407 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::value#2 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:269::utoa:358::utoa_append:407 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::value#2 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } ) always clobbers reg byte a reg byte y
Removing always clobbered register reg byte y as potential for zp[1]:33 [ utoa::digit#2 utoa::digit#1 ]
Statement [438] utoa_append::value#1 = utoa_append::value#2 - utoa_append::sub#0 [ utoa_append::buffer#0 utoa_append::sub#0 utoa_append::value#1 utoa_append::digit#1 ] ( main:10::utoa:167::utoa_append:407 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::sub#0 utoa_append::value#1 utoa_append::digit#1 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:87::utoa:358::utoa_append:407 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::sub#0 utoa_append::value#1 utoa_append::digit#1 ] { { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:128::utoa:358::utoa_append:407 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::sub#0 utoa_append::value#1 utoa_append::digit#1 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:269::utoa:358::utoa_append:407 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::sub#0 utoa_append::value#1 utoa_append::digit#1 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } ) always clobbers reg byte a
Statement [450] conio_line_text = conio_line_text + $28 [ conio_cursor_y conio_line_text conio_line_color conio_textcolor ] ( main:10::cputs:31::cputc:344::cputln:428 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a
Statement [451] conio_line_color = conio_line_color + $28 [ conio_cursor_y conio_line_text conio_line_color conio_textcolor ] ( main:10::cputs:31::cputc:344::cputln:428 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a
Statement [452] conio_cursor_x = 0 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] ( main:10::cputs:31::cputc:344::cputln:428 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a
Statement [461] divr8u::rem#1 = divr8u::rem#0 | 1 [ divr8u::dividend#3 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 ] ( main:10::read_chrono:182::div16u8u:414::divr8u:440 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l div16u8u::dividend#0 divr8u::dividend#3 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 ] { { div16u8u::return#0 = div16u8u::return#2 } { divr8u::dividend#1 = divr8u::dividend#5 } { divr8u::return#0 = divr8u::return#2 } } main:10::read_chrono:182::div16u8u:414::divr8u:445 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l div16u8u::quotient_hi#0 divr8u::dividend#3 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 ] { { div16u8u::return#0 = div16u8u::return#2 } { divr8u::rem#10 = divr8u::rem#4 divr8u::rem#11 } { divr8u::dividend#2 = divr8u::dividend#5 } { divr8u::return#0 = divr8u::return#3 } } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:26 [ divr8u::dividend#3 divr8u::dividend#5 divr8u::dividend#1 divr8u::dividend#2 divr8u::dividend#0 ]
Removing always clobbered register reg byte a as potential for zp[1]:18 [ divr8u::quotient#3 divr8u::return#0 divr8u::quotient#1 divr8u::quotient#2 ]
Removing always clobbered register reg byte a as potential for zp[1]:22 [ divr8u::i#2 divr8u::i#1 ]
Removing always clobbered register reg byte a as potential for zp[1]:73 [ div16u8u::quotient_hi#0 ]
Statement [465] if(divr8u::rem#6<div16u8u::divisor#0) goto divr8u::@3 [ divr8u::i#2 divr8u::dividend#0 divr8u::rem#6 divr8u::quotient#1 ] ( main:10::read_chrono:182::div16u8u:414::divr8u:440 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l div16u8u::dividend#0 divr8u::i#2 divr8u::dividend#0 divr8u::rem#6 divr8u::quotient#1 ] { { div16u8u::return#0 = div16u8u::return#2 } { divr8u::dividend#1 = divr8u::dividend#5 } { divr8u::return#0 = divr8u::return#2 } } main:10::read_chrono:182::div16u8u:414::divr8u:445 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l div16u8u::quotient_hi#0 divr8u::i#2 divr8u::dividend#0 divr8u::rem#6 divr8u::quotient#1 ] { { div16u8u::return#0 = div16u8u::return#2 } { divr8u::rem#10 = divr8u::rem#4 divr8u::rem#11 } { divr8u::dividend#2 = divr8u::dividend#5 } { divr8u::return#0 = divr8u::return#3 } } ) always clobbers reg byte a
Statement [467] divr8u::rem#2 = divr8u::rem#6 - div16u8u::divisor#0 [ divr8u::i#2 divr8u::dividend#0 divr8u::quotient#2 divr8u::rem#2 ] ( main:10::read_chrono:182::div16u8u:414::divr8u:440 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l div16u8u::dividend#0 divr8u::i#2 divr8u::dividend#0 divr8u::quotient#2 divr8u::rem#2 ] { { div16u8u::return#0 = div16u8u::return#2 } { divr8u::dividend#1 = divr8u::dividend#5 } { divr8u::return#0 = divr8u::return#2 } } main:10::read_chrono:182::div16u8u:414::divr8u:445 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l div16u8u::quotient_hi#0 divr8u::i#2 divr8u::dividend#0 divr8u::quotient#2 divr8u::rem#2 ] { { div16u8u::return#0 = div16u8u::return#2 } { divr8u::rem#10 = divr8u::rem#4 divr8u::rem#11 } { divr8u::dividend#2 = divr8u::dividend#5 } { divr8u::return#0 = divr8u::return#3 } } ) always clobbers reg byte a reg byte x
Removing always clobbered register reg byte x as potential for zp[1]:22 [ divr8u::i#2 divr8u::i#1 ]
Removing always clobbered register reg byte x as potential for zp[1]:26 [ divr8u::dividend#3 divr8u::dividend#5 divr8u::dividend#1 divr8u::dividend#2 divr8u::dividend#0 ]
Removing always clobbered register reg byte x as potential for zp[1]:18 [ divr8u::quotient#3 divr8u::return#0 divr8u::quotient#1 divr8u::quotient#2 ]
Removing always clobbered register reg byte x as potential for zp[1]:73 [ div16u8u::quotient_hi#0 ]
Statement [472] if(conio_cursor_y!=$19) goto cscroll::@return [ conio_cursor_y conio_line_text conio_line_color conio_textcolor ] ( main:10::cputs:31::cputc:344::cputln:428::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a
Statement [481] conio_line_text = conio_line_text - $28 [ conio_cursor_y conio_line_text conio_line_color conio_textcolor ] ( main:10::cputs:31::cputc:344::cputln:428::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a
Statement [482] conio_line_color = conio_line_color - $28 [ conio_cursor_y conio_line_text conio_line_color conio_textcolor ] ( main:10::cputs:31::cputc:344::cputln:428::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a
Statement [486] memcpy::src_end#0 = (char *)memcpy::source#2 + (unsigned int)$19*$28-$28 [ memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] ( main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a
Statement [487] memcpy::src#4 = (char *)memcpy::source#2 [ memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] ( main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a
Statement [488] memcpy::dst#4 = (char *)memcpy::destination#2 [ memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] ( main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a
Statement [490] if(memcpy::src#2!=memcpy::src_end#0) goto memcpy::@2 [ memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] ( main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a
Statement [492] *memcpy::dst#2 = *memcpy::src#2 [ memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] ( main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a reg byte y
Statement [496] memset::end#0 = (char *)memset::str#3 + $28 [ memset::str#3 memset::c#4 memset::end#0 ] ( main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } ) always clobbers reg byte a
Removing always clobbered register reg byte a as potential for zp[1]:23 [ memset::c#4 memset::c#1 ]
Statement [497] memset::dst#4 = (char *)memset::str#3 [ memset::c#4 memset::end#0 memset::dst#4 ] ( main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } ) always clobbers reg byte a
Statement [499] if(memset::dst#2!=memset::end#0) goto memset::@3 [ memset::c#4 memset::end#0 memset::dst#2 ] ( main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } ) always clobbers reg byte a
Statement [501] *memset::dst#2 = memset::c#4 [ memset::c#4 memset::end#0 memset::dst#2 ] ( main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } ) always clobbers reg byte a reg byte y
Removing always clobbered register reg byte y as potential for zp[1]:23 [ memset::c#4 memset::c#1 ]
Statement [1] conio_cursor_x = 0 [ ] ( [ ] { } ) always clobbers reg byte a
Statement [2] conio_cursor_y = 0 [ ] ( [ ] { } ) always clobbers reg byte a
Statement [3] conio_line_text = DEFAULT_SCREEN [ ] ( [ ] { } ) always clobbers reg byte a
Statement [4] conio_line_color = COLORRAM [ ] ( [ ] { } ) always clobbers reg byte a
Statement [5] conio_textcolor = LIGHT_BLUE [ ] ( [ ] { } ) always clobbers reg byte a
Statement [6] l = 0 [ ] ( [ ] { } ) always clobbers reg byte a
Statement [7] m = 0 [ ] ( [ ] { } ) always clobbers reg byte a
Statement [19] *((char *) 36879) = 8 [ ] ( main:10 [ ] { } ) always clobbers reg byte a
Statement [20] chrout::petscii = lock [ chrout::petscii ] ( main:10 [ chrout::petscii ] { } ) always clobbers reg byte a
Statement [22] chrout::petscii = lower [ chrout::petscii ] ( main:10 [ chrout::petscii ] { } ) always clobbers reg byte a
Statement [24] m = 0 [ m ] ( main:10 [ m ] { } ) always clobbers reg byte a
Statement [25] if(m<$28) goto main::@2 [ m ] ( main:10 [ m ] { } ) always clobbers reg byte a
Statement [40] l = *((char *) 197) [ l rem8u#127 y#114 hiscore#110 n#109 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#109 ] { } ) always clobbers reg byte a
Statement [42] if(l>=5+1) goto main::@4 [ l rem8u#127 y#114 hiscore#110 n#109 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#109 ] { } ) always clobbers reg byte a
Statement [45] *((char *) 36869) = $ff [ l rem8u#127 y#114 hiscore#110 n#109 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#109 ] { } ) always clobbers reg byte a
Statement [46] chrout::petscii = reverse_on [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#109 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#109 ] { } ) always clobbers reg byte a
Statement [48] chrout::petscii = red [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#109 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#109 ] { } ) always clobbers reg byte a
Statement [50] chrout::petscii = down [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#109 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#109 ] { } ) always clobbers reg byte a
Statement [53] if(k#101<$16) goto main::@7 [ l rem8u#127 y#114 hiscore#110 k#101 n#89 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 k#101 n#89 ] { } ) always clobbers reg byte a
Statement [54] chrout::petscii = brick [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 ] { } ) always clobbers reg byte a
Statement [56] *((char *) 8185) = brick [ l rem8u#127 y#114 hiscore#110 n#89 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 ] { } ) always clobbers reg byte a
Statement [57] *((char *)$1ff9+c) = 2 [ l rem8u#127 y#114 hiscore#110 n#89 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 ] { } ) always clobbers reg byte a
Statement [58] chrout::petscii = home [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 ] { } ) always clobbers reg byte a
Statement [60] if(l<1+1) goto main::@12 [ l rem8u#127 y#114 hiscore#110 n#89 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 ] { } ) always clobbers reg byte a
Statement [62] random::k#0 = 7 - l [ l rem8u#127 y#114 hiscore#110 n#89 z#28 random::k#0 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 z#28 random::k#0 ] { { random::k#0 = random::k#4 } { random::n#0 = random::n#4 } } ) always clobbers reg byte a
Statement [63] main::$177 = l << 1 [ l rem8u#127 y#114 hiscore#110 n#89 z#28 random::k#0 main::$177 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 z#28 random::k#0 main::$177 ] { { random::k#0 = random::k#4 } { random::n#0 = random::n#4 } } ) always clobbers reg byte a
Statement [64] main::$26 = main::$177 + l [ l rem8u#127 y#114 hiscore#110 n#89 z#28 random::k#0 main::$26 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 z#28 random::k#0 main::$26 ] { { random::k#0 = random::k#4 } { random::n#0 = random::n#4 } } ) always clobbers reg byte a
Statement [65] random::n#0 = $1a - main::$26 [ l rem8u#127 y#114 hiscore#110 n#89 z#28 random::k#0 random::n#0 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 z#28 random::k#0 random::n#0 ] { { random::k#0 = random::k#4 } { random::n#0 = random::n#4 } } ) always clobbers reg byte a
Statement [67] main::$29 = z#28 + m [ l m rem8u#127 y#114 hiscore#110 n#89 z#28 main::$29 ] ( main:10 [ l m rem8u#127 y#114 hiscore#110 n#89 z#28 main::$29 ] { } ) always clobbers reg byte a
Statement [68] if(main::$29<=$1f9) goto main::@14 [ l m rem8u#127 y#114 hiscore#110 n#89 z#28 ] ( main:10 [ l m rem8u#127 y#114 hiscore#110 n#89 z#28 ] { } ) always clobbers reg byte a
Statement [70] *((char *) 36878) = $f [ l rem8u#127 y#114 hiscore#110 n#89 z#128 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 ] { } ) always clobbers reg byte a
Statement [71] chrout::petscii = home [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 ] { } ) always clobbers reg byte a
Statement [73] chrout::petscii = yellow [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 ] { } ) always clobbers reg byte a
Statement [75] chrout::petscii = $50 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 ] { } ) always clobbers reg byte a
Statement [77] chrout::petscii = $54 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 ] { } ) always clobbers reg byte a
Statement [79] chrout::petscii = $53 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 ] { } ) always clobbers reg byte a
Statement [81] chrout::petscii = $3a [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 ] { } ) always clobbers reg byte a
Statement [83] *((char *) 211) = $12 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 ] { } ) always clobbers reg byte a
Statement [85] if(j#13<4) goto main::@18 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 j#13 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 j#13 ] { } ) always clobbers reg byte a
Statement [88] chrout::petscii = home [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] { } ) always clobbers reg byte a
Statement [90] chrout::petscii = green [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] { } ) always clobbers reg byte a
Statement [92] *((char *) 211) = $a [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] { } ) always clobbers reg byte a
Statement [94] if(j#16<5) goto main::@21 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 j#16 score#38 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 j#16 score#38 ] { } ) always clobbers reg byte a
Statement [96] chrout::petscii = home [ l chrout::petscii hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] ( main:10 [ l chrout::petscii hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] { } ) always clobbers reg byte a
Statement [98] chrout::petscii = green [ l chrout::petscii hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] ( main:10 [ l chrout::petscii hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] { } ) always clobbers reg byte a
Statement [100] chrout::petscii = reverse_on [ l chrout::petscii hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] ( main:10 [ l chrout::petscii hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] { } ) always clobbers reg byte a
Statement [102] *((char *) 211) = $f [ l hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] ( main:10 [ l hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] { } ) always clobbers reg byte a
Statement [103] if(tu#13<$a) goto main::@23 [ l hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] ( main:10 [ l hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] { } ) always clobbers reg byte a
Statement [104] chrout::petscii = $31 [ l chrout::petscii hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] ( main:10 [ l chrout::petscii hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] { } ) always clobbers reg byte a
Statement [106] chrout::petscii = $30 [ l chrout::petscii hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] ( main:10 [ l chrout::petscii hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] { } ) always clobbers reg byte a
Statement [110] duck#0 = m [ l hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#0 score#38 ] ( main:10 [ l hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#0 score#38 ] { } ) always clobbers reg byte a
Statement [112] main::$61 = m + $1e15 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#0 main::$61 score#38 ] ( main:10 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#0 main::$61 score#38 ] { } ) always clobbers reg byte a
Statement [113] duck#1 = main::$61 + duck#0 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 score#38 ] ( main:10 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 score#38 ] { } ) always clobbers reg byte a
Statement [114] main::$66 = duck#1 + 1 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$66 score#38 ] ( main:10 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$66 score#38 ] { } ) always clobbers reg byte a
Statement [115] main::$69 = duck#1 + $16 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$66 main::$69 score#38 ] ( main:10 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$66 main::$69 score#38 ] { } ) always clobbers reg byte a
Statement [116] main::$72 = duck#1 + $17 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$66 main::$69 main::$72 score#38 ] ( main:10 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$66 main::$69 main::$72 score#38 ] { } ) always clobbers reg byte a
Statement [117] if(duck#1>$1fe3) goto main::@24 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$66 main::$69 main::$72 score#38 ] ( main:10 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$66 main::$69 main::$72 score#38 ] { } ) always clobbers reg byte a
Statement [118] if(*((char *)duck#1)==brick) goto main::@24 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$66 main::$69 main::$72 score#38 ] ( main:10 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$66 main::$69 main::$72 score#38 ] { } ) always clobbers reg byte a reg byte y
Statement [119] if(*((char *)main::$66)==brick) goto main::@24 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$69 main::$72 score#38 ] ( main:10 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$69 main::$72 score#38 ] { } ) always clobbers reg byte a reg byte y
Statement [120] if(*((char *)main::$69)==brick) goto main::@24 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$72 score#38 ] ( main:10 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 main::$72 score#38 ] { } ) always clobbers reg byte a reg byte y
Statement [121] if(*((char *)main::$72)==brick) goto main::@24 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 score#38 ] ( main:10 [ l m hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#1 score#38 ] { } ) always clobbers reg byte a reg byte y
Statement [125] if(time#11<$a) goto main::@27 [ l m hiscore#110 rem8u#25 y#18 n#20 tu#13 peephole#12 duck#1 score#19 z#100 ] ( main:10 [ l m hiscore#110 rem8u#25 y#18 n#20 tu#13 peephole#12 duck#1 score#19 z#100 ] { } ) always clobbers reg byte a
Statement [127] score#4 = score#19 - $a [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#4 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#4 ] { { score#13 = score#4 } } ) always clobbers reg byte a
Statement [129] *((char *) 36877) = $82 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 ] { { z#100 = z#53 } } ) always clobbers reg byte a
Statement [131] *((char *) 36877) = 0 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 ] { } ) always clobbers reg byte a
Statement [132] main::$150 = duck#1 + c [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 main::$150 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 main::$150 ] { } ) always clobbers reg byte a
Statement [133] *((char *)main::$150) = 0 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 ] { } ) always clobbers reg byte a reg byte y
Statement [134] main::$151 = duck#1 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 main::$151 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 main::$151 ] { } ) always clobbers reg byte a
Statement [135] main::$152 = main::$151 + 1+c [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 main::$152 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 main::$152 ] { } ) always clobbers reg byte a
Statement [136] *((char *)main::$152) = 0 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 ] { } ) always clobbers reg byte a reg byte y
Statement [137] main::$153 = duck#1 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 main::$153 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 main::$153 ] { } ) always clobbers reg byte a
Statement [138] main::$154 = main::$153 + $16+c [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 main::$154 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 main::$154 ] { } ) always clobbers reg byte a
Statement [139] *((char *)main::$154) = 0 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 duck#1 score#38 ] { } ) always clobbers reg byte a reg byte y
Statement [140] main::$155 = duck#1 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 score#38 main::$155 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 score#38 main::$155 ] { } ) always clobbers reg byte a
Statement [141] main::$156 = main::$155 + $17+c [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 score#38 main::$156 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 score#38 main::$156 ] { } ) always clobbers reg byte a
Statement [142] *((char *)main::$156) = 0 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 score#38 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 score#38 ] { } ) always clobbers reg byte a reg byte y
Statement [143] if(tu#1<$b) goto main::@22 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 score#38 ] ( main:10 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 z#25 peephole#12 score#38 ] { } ) always clobbers reg byte a
Statement [146] *((char *) 36869) = $f0 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color hiscore#110 rem8u#25 y#18 n#20 score#38 ] ( main:10 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color hiscore#110 rem8u#25 y#18 n#20 score#38 ] { } ) always clobbers reg byte a
Statement [147] chrout::petscii = lower [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color chrout::petscii hiscore#110 rem8u#25 y#18 n#20 score#38 ] ( main:10 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color chrout::petscii hiscore#110 rem8u#25 y#18 n#20 score#38 ] { } ) always clobbers reg byte a
Statement [163] if(score#38<=hiscore#110) goto main::@114 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor hiscore#110 rem8u#25 y#18 n#20 score#38 ] ( main:10 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor hiscore#110 rem8u#25 y#18 n#20 score#38 ] { } ) always clobbers reg byte a
Statement [164] hiscore#124 = hiscore#110 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#124 ] ( main:10 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#124 ] { } ) always clobbers reg byte a
Statement [166] utoa::value#2 = hiscore#19 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::value#2 ] ( main:10 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::value#2 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } } ) always clobbers reg byte a
Statement asm { jsr$FD22 } always clobbers reg byte a reg byte x reg byte y
Statement [180] hiscore#123 = hiscore#19 [ rem8u#25 y#18 hiscore#123 n#20 ] ( main:10 [ rem8u#25 y#18 hiscore#123 n#20 ] { } ) always clobbers reg byte a
Statement [183] m = *((char *) 37151) [ l m hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 div16u8u::return#2 ] ( main:10 [ l m hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [184] *((char *) 37154) = $7f [ l m hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 div16u8u::return#2 ] ( main:10 [ l m hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [185] n#14 = *((char *) 37152) [ l m hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 div16u8u::return#2 ] ( main:10 [ l m hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [186] *((char *) 37154) = $ff [ l m hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 div16u8u::return#2 ] ( main:10 [ l m hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [187] main::$78 = $10 & m [ l m hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 main::$78 div16u8u::return#2 ] ( main:10 [ l m hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 main::$78 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [189] y#0 = -- y#18 [ l m hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#0 div16u8u::return#2 ] ( main:10 [ l m hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#0 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [191] main::$81 = $80 & n#14 [ l m hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#10 main::$81 div16u8u::return#2 ] ( main:10 [ l m hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#10 main::$81 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [195] main::$84 = 4 & m [ l m hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#11 main::$84 div16u8u::return#2 ] ( main:10 [ l m hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#11 main::$84 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [197] y#2 = y#11 - $16 [ l m hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#2 div16u8u::return#2 ] ( main:10 [ l m hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#2 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [199] main::$88 = 8 & m [ l m hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#12 main::$88 div16u8u::return#2 ] ( main:10 [ l m hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#12 main::$88 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [201] y#3 = y#12 + $16 [ l m hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#3 div16u8u::return#2 ] ( main:10 [ l m hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#3 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [203] main::$92 = $20 & m [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 main::$92 div16u8u::return#2 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 main::$92 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [205] *((char *) 36877) = $82 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [206] if(peephole#12!=duck#1) goto main::@34 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [207] main::$96 = $c - div16u8u::return#2 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 main::$96 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 main::$96 ] { { z#100 = z#53 } } ) always clobbers reg byte a
Statement [208] main::$179 = main::$96 << 2 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 main::$96 main::$179 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 main::$96 main::$179 ] { { z#100 = z#53 } } ) always clobbers reg byte a
Statement [209] main::$180 = main::$179 + main::$96 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 main::$180 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 main::$180 ] { { z#100 = z#53 } } ) always clobbers reg byte a
Statement [210] main::$97 = main::$180 << 1 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 main::$97 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 score#19 z#100 divr8u::rem#11 n#14 y#13 main::$97 ] { { z#100 = z#53 } } ) always clobbers reg byte a
Statement [211] score#8 = score#19 + main::$97 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 score#8 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 score#8 ] { { z#100 = z#53 } } ) always clobbers reg byte a
Statement [214] *((char *) 36877) = 0 [ l hiscore#110 tu#13 z#25 peephole#12 duck#1 divr8u::rem#11 n#14 y#13 time#38 score#81 ] ( main:10 [ l hiscore#110 tu#13 z#25 peephole#12 duck#1 divr8u::rem#11 n#14 y#13 time#38 score#81 ] { } ) always clobbers reg byte a
Statement [216] main::$104 = y#13 + 1 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$104 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$104 ] { } ) always clobbers reg byte a
Statement [217] main::$107 = y#13 + $16 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$104 main::$107 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$104 main::$107 ] { } ) always clobbers reg byte a
Statement [218] main::$110 = y#13 + $17 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$104 main::$107 main::$110 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$104 main::$107 main::$110 ] { } ) always clobbers reg byte a
Statement [219] if(*((char *)y#13)==brick) goto main::@36 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$104 main::$107 main::$110 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$104 main::$107 main::$110 ] { } ) always clobbers reg byte a reg byte y
Statement [220] if(*((char *)main::$104)==brick) goto main::@36 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$107 main::$110 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$107 main::$110 ] { } ) always clobbers reg byte a reg byte y
Statement [221] if(*((char *)main::$107)!=brick) goto main::@109 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$110 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$110 ] { } ) always clobbers reg byte a reg byte y
Statement [223] *((char *)y#35) = $fd [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 ] { { z#48 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [224] main::$125 = y#35 + c [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$125 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$125 ] { { z#48 = z#53 } } ) always clobbers reg byte a
Statement [225] *((char *)main::$125) = 1 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 ] { { z#48 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [226] main::$127 = y#35 + 1 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$127 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$127 ] { { z#48 = z#53 } } ) always clobbers reg byte a
Statement [227] *((char *)main::$127) = $ed [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$127 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$127 ] { { z#48 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [228] main::$128 = main::$127 + c [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$128 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$128 ] { { z#48 = z#53 } } ) always clobbers reg byte a
Statement [229] *((char *)main::$128) = 1 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 ] { { z#48 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [230] main::$130 = y#35 + $16 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$130 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$130 ] { { z#48 = z#53 } } ) always clobbers reg byte a
Statement [231] *((char *)main::$130) = $ee [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$130 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$130 ] { { z#48 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [232] main::$131 = main::$130 + c [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$131 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$131 ] { { z#48 = z#53 } } ) always clobbers reg byte a
Statement [233] *((char *)main::$131) = 1 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 ] { { z#48 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [234] main::$133 = y#35 + $17 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$133 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$133 ] { { z#48 = z#53 } } ) always clobbers reg byte a
Statement [235] *((char *)main::$133) = $f0 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$133 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$133 ] { { z#48 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [236] main::$134 = main::$133 + c [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$134 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 main::$134 ] { { z#48 = z#53 } } ) always clobbers reg byte a
Statement [237] *((char *)main::$134) = 1 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 z#48 ] { { z#48 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [239] *((char *)duck#1) = 0 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 ] { { z#25 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [240] main::$136 = duck#1 + c [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$136 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$136 ] { { z#25 = z#53 } } ) always clobbers reg byte a
Statement [241] *((char *)main::$136) = 7 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 ] { { z#25 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [242] main::$138 = duck#1 + 1 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$138 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$138 ] { { z#25 = z#53 } } ) always clobbers reg byte a
Statement [243] *((char *)main::$138) = 1 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$138 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$138 ] { { z#25 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [244] main::$139 = main::$138 + c [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$139 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$139 ] { { z#25 = z#53 } } ) always clobbers reg byte a
Statement [245] *((char *)main::$139) = 7 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 ] { { z#25 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [246] main::$141 = duck#1 + $16 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$141 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$141 ] { { z#25 = z#53 } } ) always clobbers reg byte a
Statement [247] *((char *)main::$141) = 2 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$141 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$141 ] { { z#25 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [248] main::$142 = main::$141 + c [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$142 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$142 ] { { z#25 = z#53 } } ) always clobbers reg byte a
Statement [249] *((char *)main::$142) = 7 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 ] { { z#25 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [250] main::$144 = duck#1 + $17 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$144 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$144 ] { { z#25 = z#53 } } ) always clobbers reg byte a
Statement [251] *((char *)main::$144) = 3 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$144 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$144 ] { { z#25 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [252] main::$145 = main::$144 + c [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$145 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 main::$145 ] { { z#25 = z#53 } } ) always clobbers reg byte a
Statement [253] *((char *)main::$145) = 7 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 ] ( main:10 [ l hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 ] { { z#25 = z#53 } } ) always clobbers reg byte a reg byte y
Statement [255] y#130 = y#35 [ l m hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#130 y#35 n#14 ] ( main:10 [ l m hiscore#110 tu#13 z#25 duck#1 time#17 score#43 divr8u::rem#11 y#130 y#35 n#14 ] { } ) always clobbers reg byte a
Statement [256] if(*((char *)main::$110)==brick) goto main::@36 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 ] { } ) always clobbers reg byte a reg byte y
Statement [257] if(y#13>$1e16) goto main::@107 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 ] { } ) always clobbers reg byte a
Statement [258] if(y#13>=$1fe3) goto main::@36 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 ] { } ) always clobbers reg byte a
Statement [259] main::$119 = peephole#12 + c [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$119 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$119 ] { } ) always clobbers reg byte a
Statement [260] *((char *)main::$119) = 0 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$119 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$119 ] { } ) always clobbers reg byte a reg byte y
Statement [261] main::$120 = main::$119 + 1 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$119 main::$120 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$119 main::$120 ] { } ) always clobbers reg byte a
Statement [262] *((char *)main::$120) = 0 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$119 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$119 ] { } ) always clobbers reg byte a reg byte y
Statement [263] main::$122 = main::$119 + $16 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$119 main::$122 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$119 main::$122 ] { } ) always clobbers reg byte a
Statement [264] *((char *)main::$122) = 0 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$119 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$119 ] { } ) always clobbers reg byte a reg byte y
Statement [265] main::$124 = main::$119 + $17 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$124 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 main::$124 ] { } ) always clobbers reg byte a
Statement [266] *((char *)main::$124) = 0 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 y#13 z#48 ] { } ) always clobbers reg byte a reg byte y
Statement [267] y#141 = y#13 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 z#48 y#141 ] ( main:10 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 n#14 z#48 y#141 ] { } ) always clobbers reg byte a
Statement [268] score#6 = score#19 - $a [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#6 ] ( main:10 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#6 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [272] main::$57 = $30 + tu#13 [ l hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 main::$57 ] ( main:10 [ l hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 main::$57 ] { { chrout::petscii = main::$57 } } ) always clobbers reg byte a
Statement [273] chrout::petscii = main::$57 [ l chrout::petscii hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] ( main:10 [ l chrout::petscii hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 ] { { chrout::petscii = main::$57 } } ) always clobbers reg byte a
Statement [275] chrout::petscii = ducknumber[j#16] [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 j#16 score#38 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 j#16 score#38 ] { } ) always clobbers reg byte a reg byte y
Statement [278] chrout::petscii = chrono[j#13] [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 j#13 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#128 j#13 ] { } ) always clobbers reg byte a reg byte y
Statement [282] if(j#11<=m) goto main::@15 [ l m rem8u#127 y#114 hiscore#110 n#89 z#28 j#11 ] ( main:10 [ l m rem8u#127 y#114 hiscore#110 n#89 z#28 j#11 ] { } ) always clobbers reg byte a
Statement [283] chrout::petscii = brick [ l m chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#28 ] ( main:10 [ l m chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#28 ] { } ) always clobbers reg byte a
Statement [285] main::$35 = z#28 + m [ l rem8u#127 y#114 hiscore#110 n#89 main::$35 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 main::$35 ] { } ) always clobbers reg byte a
Statement [286] z#9 = main::$35 + 1 [ l rem8u#127 y#114 hiscore#110 n#89 z#9 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 z#9 ] { } ) always clobbers reg byte a
Statement [287] if(z#9<$1fa) goto main::@13 [ l rem8u#127 y#114 hiscore#110 n#89 z#9 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 n#89 z#9 ] { } ) always clobbers reg byte a
Statement [288] chrout::petscii = right [ l m chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#28 j#11 ] ( main:10 [ l m chrout::petscii rem8u#127 y#114 hiscore#110 n#89 z#28 j#11 ] { } ) always clobbers reg byte a
Statement [291] chrout::petscii = brick [ l chrout::petscii rem8u#127 y#114 hiscore#110 k#101 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 k#101 ] { } ) always clobbers reg byte a
Statement [294] if(n#101<$16) goto main::@10 [ l rem8u#127 y#114 hiscore#110 k#101 n#101 ] ( main:10 [ l rem8u#127 y#114 hiscore#110 k#101 n#101 ] { } ) always clobbers reg byte a
Statement [295] chrout::petscii = brick [ l chrout::petscii rem8u#127 y#114 hiscore#110 k#101 n#101 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 k#101 n#101 ] { } ) always clobbers reg byte a
Statement [298] chrout::petscii = right [ l chrout::petscii rem8u#127 y#114 hiscore#110 k#101 n#101 ] ( main:10 [ l chrout::petscii rem8u#127 y#114 hiscore#110 k#101 n#101 ] { } ) always clobbers reg byte a
Statement [301] main::$3 = $1c00 + m [ m main::$3 ] ( main:10 [ m main::$3 ] { } ) always clobbers reg byte a
Statement [302] *((char *)main::$3) = duck_udg[m] [ m ] ( main:10 [ m ] { } ) always clobbers reg byte a reg byte y
Statement [308] conio_cursor_x = 0 [ conio_cursor_x gotoxy::y#5 ] ( gotoxy:17 [ conio_cursor_x gotoxy::y#5 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } conio_c64_init:8::gotoxy:17 [ conio_cursor_x gotoxy::y#5 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } main:10::clear_screen:27::gotoxy:325 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x gotoxy::y#5 ] { } main:10::clear_screen:44::gotoxy:325 [ l rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x gotoxy::y#5 ] { } main:10::clear_screen:145::gotoxy:325 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x gotoxy::y#5 ] { } ) always clobbers reg byte a
Statement [310] gotoxy::$7 = (unsigned int)gotoxy::y#5 [ conio_cursor_x conio_cursor_y gotoxy::$7 ] ( gotoxy:17 [ conio_cursor_x conio_cursor_y gotoxy::$7 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } conio_c64_init:8::gotoxy:17 [ conio_cursor_x conio_cursor_y gotoxy::$7 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } main:10::clear_screen:27::gotoxy:325 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y gotoxy::$7 ] { } main:10::clear_screen:44::gotoxy:325 [ l rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y gotoxy::$7 ] { } main:10::clear_screen:145::gotoxy:325 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y gotoxy::$7 ] { } ) always clobbers reg byte a
Statement [311] gotoxy::$8 = gotoxy::$7 << 2 [ conio_cursor_x conio_cursor_y gotoxy::$7 gotoxy::$8 ] ( gotoxy:17 [ conio_cursor_x conio_cursor_y gotoxy::$7 gotoxy::$8 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } conio_c64_init:8::gotoxy:17 [ conio_cursor_x conio_cursor_y gotoxy::$7 gotoxy::$8 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } main:10::clear_screen:27::gotoxy:325 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y gotoxy::$7 gotoxy::$8 ] { } main:10::clear_screen:44::gotoxy:325 [ l rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y gotoxy::$7 gotoxy::$8 ] { } main:10::clear_screen:145::gotoxy:325 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y gotoxy::$7 gotoxy::$8 ] { } ) always clobbers reg byte a
Statement [312] gotoxy::$9 = gotoxy::$8 + gotoxy::$7 [ conio_cursor_x conio_cursor_y gotoxy::$9 ] ( gotoxy:17 [ conio_cursor_x conio_cursor_y gotoxy::$9 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } conio_c64_init:8::gotoxy:17 [ conio_cursor_x conio_cursor_y gotoxy::$9 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } main:10::clear_screen:27::gotoxy:325 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y gotoxy::$9 ] { } main:10::clear_screen:44::gotoxy:325 [ l rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y gotoxy::$9 ] { } main:10::clear_screen:145::gotoxy:325 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y gotoxy::$9 ] { } ) always clobbers reg byte a
Statement [313] gotoxy::line_offset#0 = gotoxy::$9 << 3 [ conio_cursor_x conio_cursor_y gotoxy::line_offset#0 ] ( gotoxy:17 [ conio_cursor_x conio_cursor_y gotoxy::line_offset#0 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } conio_c64_init:8::gotoxy:17 [ conio_cursor_x conio_cursor_y gotoxy::line_offset#0 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } main:10::clear_screen:27::gotoxy:325 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y gotoxy::line_offset#0 ] { } main:10::clear_screen:44::gotoxy:325 [ l rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y gotoxy::line_offset#0 ] { } main:10::clear_screen:145::gotoxy:325 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y gotoxy::line_offset#0 ] { } ) always clobbers reg byte a
Statement [314] gotoxy::$5 = DEFAULT_SCREEN + gotoxy::line_offset#0 [ conio_cursor_x conio_cursor_y gotoxy::line_offset#0 gotoxy::$5 ] ( gotoxy:17 [ conio_cursor_x conio_cursor_y gotoxy::line_offset#0 gotoxy::$5 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } conio_c64_init:8::gotoxy:17 [ conio_cursor_x conio_cursor_y gotoxy::line_offset#0 gotoxy::$5 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } main:10::clear_screen:27::gotoxy:325 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y gotoxy::line_offset#0 gotoxy::$5 ] { } main:10::clear_screen:44::gotoxy:325 [ l rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y gotoxy::line_offset#0 gotoxy::$5 ] { } main:10::clear_screen:145::gotoxy:325 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y gotoxy::line_offset#0 gotoxy::$5 ] { } ) always clobbers reg byte a
Statement [315] conio_line_text = gotoxy::$5 [ conio_cursor_x conio_cursor_y conio_line_text gotoxy::line_offset#0 ] ( gotoxy:17 [ conio_cursor_x conio_cursor_y conio_line_text gotoxy::line_offset#0 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } conio_c64_init:8::gotoxy:17 [ conio_cursor_x conio_cursor_y conio_line_text gotoxy::line_offset#0 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } main:10::clear_screen:27::gotoxy:325 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y conio_line_text gotoxy::line_offset#0 ] { } main:10::clear_screen:44::gotoxy:325 [ l rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y conio_line_text gotoxy::line_offset#0 ] { } main:10::clear_screen:145::gotoxy:325 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y conio_line_text gotoxy::line_offset#0 ] { } ) always clobbers reg byte a
Statement [316] gotoxy::$6 = COLORRAM + gotoxy::line_offset#0 [ conio_cursor_x conio_cursor_y conio_line_text gotoxy::$6 ] ( gotoxy:17 [ conio_cursor_x conio_cursor_y conio_line_text gotoxy::$6 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } conio_c64_init:8::gotoxy:17 [ conio_cursor_x conio_cursor_y conio_line_text gotoxy::$6 ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } main:10::clear_screen:27::gotoxy:325 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y conio_line_text gotoxy::$6 ] { } main:10::clear_screen:44::gotoxy:325 [ l rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y conio_line_text gotoxy::$6 ] { } main:10::clear_screen:145::gotoxy:325 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y conio_line_text gotoxy::$6 ] { } ) always clobbers reg byte a
Statement [317] conio_line_color = gotoxy::$6 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color ] ( gotoxy:17 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } conio_c64_init:8::gotoxy:17 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color ] { { gotoxy::y#2 = gotoxy::y#4 conio_c64_init::line#2 } } main:10::clear_screen:27::gotoxy:325 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y conio_line_text conio_line_color ] { } main:10::clear_screen:44::gotoxy:325 [ l rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y conio_line_text conio_line_color ] { } main:10::clear_screen:145::gotoxy:325 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y conio_line_text conio_line_color ] { } ) always clobbers reg byte a
Statement asm { ldapetscii jsr$ffd2 } always clobbers reg byte a reg byte x reg byte y
Statement [323] if(z#2<$1fa) goto clear_screen::@2 [ clear_screen::n#5 z#2 ] ( main:10::clear_screen:27 [ rem8u#127 y#114 hiscore#110 n#109 clear_screen::n#5 z#2 ] { } main:10::clear_screen:44 [ l rem8u#127 y#114 hiscore#110 n#109 clear_screen::n#5 z#2 ] { } main:10::clear_screen:145 [ hiscore#110 rem8u#25 y#18 n#20 score#38 clear_screen::n#5 z#2 ] { } ) always clobbers reg byte a
Statement [326] chrout::petscii = home [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color chrout::petscii ] ( main:10::clear_screen:27 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y conio_line_text conio_line_color chrout::petscii ] { } main:10::clear_screen:44 [ l rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y conio_line_text conio_line_color chrout::petscii ] { } main:10::clear_screen:145 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y conio_line_text conio_line_color chrout::petscii ] { } ) always clobbers reg byte a
Statement [329] clear_screen::$5 = $1e00 + z#2 [ clear_screen::n#5 z#2 clear_screen::$5 ] ( main:10::clear_screen:27 [ rem8u#127 y#114 hiscore#110 n#109 clear_screen::n#5 z#2 clear_screen::$5 ] { } main:10::clear_screen:44 [ l rem8u#127 y#114 hiscore#110 n#109 clear_screen::n#5 z#2 clear_screen::$5 ] { } main:10::clear_screen:145 [ hiscore#110 rem8u#25 y#18 n#20 score#38 clear_screen::n#5 z#2 clear_screen::$5 ] { } ) always clobbers reg byte a
Statement [330] clear_screen::$4 = clear_screen::$5 + c [ clear_screen::n#5 z#2 clear_screen::$5 clear_screen::$4 ] ( main:10::clear_screen:27 [ rem8u#127 y#114 hiscore#110 n#109 clear_screen::n#5 z#2 clear_screen::$5 clear_screen::$4 ] { } main:10::clear_screen:44 [ l rem8u#127 y#114 hiscore#110 n#109 clear_screen::n#5 z#2 clear_screen::$5 clear_screen::$4 ] { } main:10::clear_screen:145 [ hiscore#110 rem8u#25 y#18 n#20 score#38 clear_screen::n#5 z#2 clear_screen::$5 clear_screen::$4 ] { } ) always clobbers reg byte a
Statement [331] *((char *)clear_screen::$4) = 0 [ clear_screen::n#5 z#2 clear_screen::$5 ] ( main:10::clear_screen:27 [ rem8u#127 y#114 hiscore#110 n#109 clear_screen::n#5 z#2 clear_screen::$5 ] { } main:10::clear_screen:44 [ l rem8u#127 y#114 hiscore#110 n#109 clear_screen::n#5 z#2 clear_screen::$5 ] { } main:10::clear_screen:145 [ hiscore#110 rem8u#25 y#18 n#20 score#38 clear_screen::n#5 z#2 clear_screen::$5 ] { } ) always clobbers reg byte a reg byte y
Statement [332] *((char *)clear_screen::$5) = clear_screen::n#5 [ clear_screen::n#5 z#2 ] ( main:10::clear_screen:27 [ rem8u#127 y#114 hiscore#110 n#109 clear_screen::n#5 z#2 ] { } main:10::clear_screen:44 [ l rem8u#127 y#114 hiscore#110 n#109 clear_screen::n#5 z#2 ] { } main:10::clear_screen:145 [ hiscore#110 rem8u#25 y#18 n#20 score#38 clear_screen::n#5 z#2 ] { } ) always clobbers reg byte a reg byte y
Statement [339] cputs::c#1 = *cputs::s#10 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor cputs::s#10 cputs::c#1 ] ( main:10::cputs:31 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor cputs::s#10 cputs::c#1 ] { } main:10::cputs:35 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor cputs::s#10 cputs::c#1 ] { } main:10::cputs:39 [ rem8u#127 y#114 hiscore#110 n#109 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor cputs::s#10 cputs::c#1 ] { } main:10::cputs:152 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor cputs::s#10 cputs::c#1 ] { } main:10::cputs:156 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor cputs::s#10 cputs::c#1 ] { } main:10::cputs:158 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor cputs::s#10 cputs::c#1 ] { } main:10::cputs:162 [ hiscore#110 rem8u#25 y#18 n#20 score#38 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor cputs::s#10 cputs::c#1 ] { } main:10::cputs:169 [ rem8u#25 y#18 n#20 hiscore#19 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor cputs::s#10 cputs::c#1 ] { } main:10::cputs:173 [ rem8u#25 y#18 n#20 hiscore#19 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor cputs::s#10 cputs::c#1 ] { } ) always clobbers reg byte a reg byte y
Statement [346] m = *((char *) 37140) [ m random::k#4 random::n#4 ] ( main:10::random:66 [ l rem8u#127 y#114 hiscore#110 n#89 z#28 m random::k#4 random::n#4 ] { { random::k#0 = random::k#4 } { random::n#0 = random::n#4 } } main:10::random:109 [ l hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 score#38 m random::k#4 random::n#4 ] { } main:10::random:111 [ l hiscore#110 tu#13 rem8u#48 y#49 z#102 peephole#52 n#52 duck#0 score#38 m random::k#4 random::n#4 ] { } ) always clobbers reg byte a
Statement [352] if(score#13<=$fde8) goto write_score::@15 [ score#13 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#13 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#13 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#13 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [355] m = 0 [ m score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 m score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 m score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 m score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [356] if(m<4) goto write_score::@6 [ m score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 m score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 m score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 m score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [357] utoa::value#1 = score#38 [ score#38 utoa::value#1 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::value#1 ] { { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::value#1 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::value#1 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } } ) always clobbers reg byte a
Statement [359] if(score#38<9+1) goto write_score::@2 [ score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [360] *(points+2) = *buffer [ score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [361] *(points+3) = *(buffer+1) [ score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [362] if(score#38<$63+1) goto write_score::@3 [ score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [363] *(points+1) = *buffer [ score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [364] *(points+2) = *(buffer+1) [ score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [365] *(points+3) = *(buffer+2) [ score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [366] chrout::petscii = yellow [ chrout::petscii score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 chrout::petscii score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 chrout::petscii score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 chrout::petscii score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [368] chrout::petscii = home [ chrout::petscii score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 chrout::petscii score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 chrout::petscii score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 chrout::petscii score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [370] *((char *) 211) = 4 [ score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [371] m = 0 [ m score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 m score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 m score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 m score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [372] if(m<4) goto write_score::@10 [ m score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 m score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 m score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 m score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a
Statement [374] chrout::petscii = points[m] [ m chrout::petscii score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 m chrout::petscii score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 m chrout::petscii score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 m chrout::petscii score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a reg byte y
Statement [377] points[m] = '0' [ m score#38 ] ( main:10::write_score:87 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 m score#38 ] { } main:10::write_score:128 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 m score#38 ] { { score#13 = score#4 } } main:10::write_score:269 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 m score#38 ] { { score#13 = score#6 } } ) always clobbers reg byte a reg byte y
Statement asm { lda#0 ldy#0 ldx#0 jsr$ffdb } always clobbers reg byte a reg byte x reg byte y
Statement [382] m = 0 [ m wait::n#6 z#53 ] ( main:10::wait:130 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 score#38 m wait::n#6 z#53 ] { { z#100 = z#53 } } main:10::wait:212 [ l hiscore#110 tu#13 peephole#12 duck#1 divr8u::rem#11 n#14 y#13 score#8 m wait::n#6 z#53 ] { { z#100 = z#53 } } main:10::wait:238 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 m wait::n#6 z#53 ] { { z#48 = z#53 } } main:10::wait:254 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 m wait::n#6 z#53 ] { { z#25 = z#53 } } main:10::wait:271 [ l hiscore#110 tu#13 peephole#12 duck#1 score#38 divr8u::rem#11 n#14 y#13 div16u8u::return#2 m wait::n#6 z#53 ] { { z#100 = z#53 } } ) always clobbers reg byte a
Statement [387] if(z#23<$21c) goto wait::@3 [ m wait::n#6 z#23 ] ( main:10::wait:130 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 score#38 m wait::n#6 z#23 ] { { z#100 = z#53 } } main:10::wait:212 [ l hiscore#110 tu#13 peephole#12 duck#1 divr8u::rem#11 n#14 y#13 score#8 m wait::n#6 z#23 ] { { z#100 = z#53 } } main:10::wait:238 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 m wait::n#6 z#23 ] { { z#48 = z#53 } } main:10::wait:254 [ l hiscore#110 tu#13 duck#1 time#17 score#43 divr8u::rem#11 y#35 n#14 m wait::n#6 z#23 ] { { z#25 = z#53 } } main:10::wait:271 [ l hiscore#110 tu#13 peephole#12 duck#1 score#38 divr8u::rem#11 n#14 y#13 div16u8u::return#2 m wait::n#6 z#23 ] { { z#100 = z#53 } } ) always clobbers reg byte a
Statement [394] *utoa::buffer#10 = DIGITS[utoa::$11] [ utoa::buffer#10 ] ( main:10::utoa:167 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::buffer#10 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } } main:10::write_score:87::utoa:358 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::buffer#10 ] { { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:128::utoa:358 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::buffer#10 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:269::utoa:358 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::buffer#10 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } } ) always clobbers reg byte a reg byte y
Statement [395] utoa::buffer#3 = ++ utoa::buffer#10 [ utoa::buffer#3 ] ( main:10::utoa:167 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::buffer#3 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } } main:10::write_score:87::utoa:358 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::buffer#3 ] { { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:128::utoa:358 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::buffer#3 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:269::utoa:358 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::buffer#3 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } } ) always clobbers reg byte a
Statement [396] *utoa::buffer#3 = 0 [ ] ( main:10::utoa:167 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } } main:10::write_score:87::utoa:358 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 ] { { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:128::utoa:358 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:269::utoa:358 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } } ) always clobbers reg byte a reg byte y
Statement [398] utoa::$10 = utoa::digit#2 << 1 [ utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::$10 ] ( main:10::utoa:167 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::$10 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } } main:10::write_score:87::utoa:358 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::$10 ] { { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:128::utoa:358 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::$10 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:269::utoa:358 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::$10 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } } ) always clobbers reg byte a
Statement [399] utoa::digit_value#0 = RADIX_DECIMAL_VALUES[utoa::$10] [ utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::digit_value#0 ] ( main:10::utoa:167 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::digit_value#0 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } } main:10::write_score:87::utoa:358 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::digit_value#0 ] { { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:128::utoa:358 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::digit_value#0 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:269::utoa:358 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::digit_value#0 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } } ) always clobbers reg byte a
Statement [401] if(utoa::value#3>=utoa::digit_value#0) goto utoa::@5 [ utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::digit_value#0 ] ( main:10::utoa:167 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::digit_value#0 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } } main:10::write_score:87::utoa:358 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::digit_value#0 ] { { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:128::utoa:358 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::digit_value#0 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:269::utoa:358 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::digit#2 utoa::value#3 utoa::started#2 utoa::buffer#10 utoa::digit_value#0 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } } ) always clobbers reg byte a
Statement [404] utoa_append::buffer#0 = utoa::buffer#10 [ utoa::digit#2 utoa::value#3 utoa::buffer#10 utoa::digit_value#0 utoa_append::buffer#0 ] ( main:10::utoa:167 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::digit#2 utoa::value#3 utoa::buffer#10 utoa::digit_value#0 utoa_append::buffer#0 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:87::utoa:358 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::digit#2 utoa::value#3 utoa::buffer#10 utoa::digit_value#0 utoa_append::buffer#0 ] { { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:128::utoa:358 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::digit#2 utoa::value#3 utoa::buffer#10 utoa::digit_value#0 utoa_append::buffer#0 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:269::utoa:358 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::digit#2 utoa::value#3 utoa::buffer#10 utoa::digit_value#0 utoa_append::buffer#0 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } ) always clobbers reg byte a
Statement [405] utoa_append::value#0 = utoa::value#3 [ utoa::digit#2 utoa::buffer#10 utoa::digit_value#0 utoa_append::buffer#0 utoa_append::value#0 ] ( main:10::utoa:167 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::digit#2 utoa::buffer#10 utoa::digit_value#0 utoa_append::buffer#0 utoa_append::value#0 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:87::utoa:358 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::digit#2 utoa::buffer#10 utoa::digit_value#0 utoa_append::buffer#0 utoa_append::value#0 ] { { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:128::utoa:358 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::digit#2 utoa::buffer#10 utoa::digit_value#0 utoa_append::buffer#0 utoa_append::value#0 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:269::utoa:358 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::digit#2 utoa::buffer#10 utoa::digit_value#0 utoa_append::buffer#0 utoa_append::value#0 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } ) always clobbers reg byte a
Statement [406] utoa_append::sub#0 = utoa::digit_value#0 [ utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::value#0 utoa_append::sub#0 ] ( main:10::utoa:167 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::value#0 utoa_append::sub#0 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:87::utoa:358 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::value#0 utoa_append::sub#0 ] { { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:128::utoa:358 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::value#0 utoa_append::sub#0 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:269::utoa:358 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::value#0 utoa_append::sub#0 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } ) always clobbers reg byte a
Statement [408] utoa_append::return#0 = utoa_append::value#2 [ utoa::digit#2 utoa::buffer#10 utoa_append::return#0 ] ( main:10::utoa:167 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::digit#2 utoa::buffer#10 utoa_append::return#0 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:87::utoa:358 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::return#0 ] { { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:128::utoa:358 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::return#0 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:269::utoa:358 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::return#0 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } ) always clobbers reg byte a
Statement [409] utoa::value#0 = utoa_append::return#0 [ utoa::digit#2 utoa::buffer#10 utoa::value#0 ] ( main:10::utoa:167 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::digit#2 utoa::buffer#10 utoa::value#0 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } } main:10::write_score:87::utoa:358 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::digit#2 utoa::buffer#10 utoa::value#0 ] { { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:128::utoa:358 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::digit#2 utoa::buffer#10 utoa::value#0 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } } main:10::write_score:269::utoa:358 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::digit#2 utoa::buffer#10 utoa::value#0 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } } ) always clobbers reg byte a
Statement asm { jsr$ffde stal stxm } always clobbers reg byte a reg byte x reg byte y
Statement [412] read_chrono::$0 = m << 8 [ l read_chrono::$0 ] ( main:10::read_chrono:182 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l read_chrono::$0 ] { { div16u8u::return#0 = div16u8u::return#2 } } ) always clobbers reg byte a
Statement [413] div16u8u::dividend#0 = read_chrono::$0 + l [ l div16u8u::dividend#0 ] ( main:10::read_chrono:182 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l div16u8u::dividend#0 ] { { div16u8u::return#0 = div16u8u::return#2 } } ) always clobbers reg byte a
Statement [415] div16u8u::return#2 = div16u8u::return#0 [ l divr8u::rem#11 div16u8u::return#2 ] ( main:10::read_chrono:182 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l divr8u::rem#11 div16u8u::return#2 ] { { div16u8u::return#0 = div16u8u::return#2 } } ) always clobbers reg byte a
Statement [416] *((char *)$1e15+c) = 7 [ l divr8u::rem#11 div16u8u::return#2 ] ( main:10::read_chrono:182 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l divr8u::rem#11 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [417] *((char *) 7701) = $b9 [ l divr8u::rem#11 div16u8u::return#2 ] ( main:10::read_chrono:182 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l divr8u::rem#11 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [418] if(div16u8u::return#2>=$a) goto read_chrono::@return [ l divr8u::rem#11 div16u8u::return#2 ] ( main:10::read_chrono:182 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l divr8u::rem#11 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [419] read_chrono::$5 = $b9 - div16u8u::return#2 [ l divr8u::rem#11 div16u8u::return#2 read_chrono::$5 ] ( main:10::read_chrono:182 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l divr8u::rem#11 div16u8u::return#2 read_chrono::$5 ] { } ) always clobbers reg byte a
Statement [420] *((char *) 7701) = read_chrono::$5 [ l divr8u::rem#11 div16u8u::return#2 ] ( main:10::read_chrono:182 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l divr8u::rem#11 div16u8u::return#2 ] { } ) always clobbers reg byte a
Statement [423] conio_line_text[conio_cursor_x] = cputc::c#0 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] ( main:10::cputs:31::cputc:344 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte y
Statement [424] conio_line_color[conio_cursor_x] = conio_textcolor [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] ( main:10::cputs:31::cputc:344 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a reg byte y
Statement [426] if(conio_cursor_x!=$28) goto cputc::@return [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] ( main:10::cputs:31::cputc:344 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a
Statement [434] if(utoa_append::value#2>=utoa_append::sub#0) goto utoa_append::@2 [ utoa_append::buffer#0 utoa_append::sub#0 utoa_append::value#2 utoa_append::digit#2 ] ( main:10::utoa:167::utoa_append:407 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::sub#0 utoa_append::value#2 utoa_append::digit#2 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:87::utoa:358::utoa_append:407 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::sub#0 utoa_append::value#2 utoa_append::digit#2 ] { { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:128::utoa:358::utoa_append:407 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::sub#0 utoa_append::value#2 utoa_append::digit#2 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:269::utoa:358::utoa_append:407 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::sub#0 utoa_append::value#2 utoa_append::digit#2 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } ) always clobbers reg byte a
Statement [435] *utoa_append::buffer#0 = DIGITS[utoa_append::digit#2] [ utoa_append::value#2 ] ( main:10::utoa:167::utoa_append:407 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::digit#2 utoa::buffer#10 utoa_append::value#2 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:87::utoa:358::utoa_append:407 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::value#2 ] { { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:128::utoa:358::utoa_append:407 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::value#2 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:269::utoa:358::utoa_append:407 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::value#2 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } ) always clobbers reg byte a reg byte y
Statement [438] utoa_append::value#1 = utoa_append::value#2 - utoa_append::sub#0 [ utoa_append::buffer#0 utoa_append::sub#0 utoa_append::value#1 utoa_append::digit#1 ] ( main:10::utoa:167::utoa_append:407 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor rem8u#25 y#18 n#20 hiscore#19 utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::sub#0 utoa_append::value#1 utoa_append::digit#1 ] { { utoa::value#10 = utoa::value#2 hiscore#19 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:87::utoa:358::utoa_append:407 [ l rem8u#127 y#114 hiscore#110 n#89 z#128 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::sub#0 utoa_append::value#1 utoa_append::digit#1 ] { { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:128::utoa:358::utoa_append:407 [ l hiscore#110 rem8u#25 y#18 n#20 tu#1 peephole#12 duck#1 z#100 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::sub#0 utoa_append::value#1 utoa_append::digit#1 ] { { score#13 = score#4 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } main:10::write_score:269::utoa:358::utoa_append:407 [ l hiscore#110 tu#13 peephole#12 duck#1 z#100 divr8u::rem#11 n#14 y#13 div16u8u::return#2 score#38 utoa::digit#2 utoa::buffer#10 utoa_append::buffer#0 utoa_append::sub#0 utoa_append::value#1 utoa_append::digit#1 ] { { score#13 = score#6 } { utoa::value#1 = utoa::value#10 score#38 } { utoa_append::buffer#0 = utoa::buffer#10 } { utoa_append::value#0 = utoa::value#3 } { utoa_append::sub#0 = utoa::digit_value#0 } { utoa_append::return#0 = utoa_append::value#2 } } ) always clobbers reg byte a
Statement [450] conio_line_text = conio_line_text + $28 [ conio_cursor_y conio_line_text conio_line_color conio_textcolor ] ( main:10::cputs:31::cputc:344::cputln:428 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a
Statement [451] conio_line_color = conio_line_color + $28 [ conio_cursor_y conio_line_text conio_line_color conio_textcolor ] ( main:10::cputs:31::cputc:344::cputln:428 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a
Statement [452] conio_cursor_x = 0 [ conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] ( main:10::cputs:31::cputc:344::cputln:428 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a
Statement [459] divr8u::$1 = divr8u::dividend#3 & $80 [ divr8u::dividend#3 divr8u::quotient#3 divr8u::i#2 divr8u::rem#0 divr8u::$1 ] ( main:10::read_chrono:182::div16u8u:414::divr8u:440 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l div16u8u::dividend#0 divr8u::dividend#3 divr8u::quotient#3 divr8u::i#2 divr8u::rem#0 divr8u::$1 ] { { div16u8u::return#0 = div16u8u::return#2 } { divr8u::dividend#1 = divr8u::dividend#5 } { divr8u::return#0 = divr8u::return#2 } } main:10::read_chrono:182::div16u8u:414::divr8u:445 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l div16u8u::quotient_hi#0 divr8u::dividend#3 divr8u::quotient#3 divr8u::i#2 divr8u::rem#0 divr8u::$1 ] { { div16u8u::return#0 = div16u8u::return#2 } { divr8u::rem#10 = divr8u::rem#4 divr8u::rem#11 } { divr8u::dividend#2 = divr8u::dividend#5 } { divr8u::return#0 = divr8u::return#3 } } ) always clobbers reg byte a
Statement [461] divr8u::rem#1 = divr8u::rem#0 | 1 [ divr8u::dividend#3 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 ] ( main:10::read_chrono:182::div16u8u:414::divr8u:440 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l div16u8u::dividend#0 divr8u::dividend#3 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 ] { { div16u8u::return#0 = div16u8u::return#2 } { divr8u::dividend#1 = divr8u::dividend#5 } { divr8u::return#0 = divr8u::return#2 } } main:10::read_chrono:182::div16u8u:414::divr8u:445 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l div16u8u::quotient_hi#0 divr8u::dividend#3 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 ] { { div16u8u::return#0 = div16u8u::return#2 } { divr8u::rem#10 = divr8u::rem#4 divr8u::rem#11 } { divr8u::dividend#2 = divr8u::dividend#5 } { divr8u::return#0 = divr8u::return#3 } } ) always clobbers reg byte a
Statement [465] if(divr8u::rem#6<div16u8u::divisor#0) goto divr8u::@3 [ divr8u::i#2 divr8u::dividend#0 divr8u::rem#6 divr8u::quotient#1 ] ( main:10::read_chrono:182::div16u8u:414::divr8u:440 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l div16u8u::dividend#0 divr8u::i#2 divr8u::dividend#0 divr8u::rem#6 divr8u::quotient#1 ] { { div16u8u::return#0 = div16u8u::return#2 } { divr8u::dividend#1 = divr8u::dividend#5 } { divr8u::return#0 = divr8u::return#2 } } main:10::read_chrono:182::div16u8u:414::divr8u:445 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l div16u8u::quotient_hi#0 divr8u::i#2 divr8u::dividend#0 divr8u::rem#6 divr8u::quotient#1 ] { { div16u8u::return#0 = div16u8u::return#2 } { divr8u::rem#10 = divr8u::rem#4 divr8u::rem#11 } { divr8u::dividend#2 = divr8u::dividend#5 } { divr8u::return#0 = divr8u::return#3 } } ) always clobbers reg byte a
Statement [467] divr8u::rem#2 = divr8u::rem#6 - div16u8u::divisor#0 [ divr8u::i#2 divr8u::dividend#0 divr8u::quotient#2 divr8u::rem#2 ] ( main:10::read_chrono:182::div16u8u:414::divr8u:440 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l div16u8u::dividend#0 divr8u::i#2 divr8u::dividend#0 divr8u::quotient#2 divr8u::rem#2 ] { { div16u8u::return#0 = div16u8u::return#2 } { divr8u::dividend#1 = divr8u::dividend#5 } { divr8u::return#0 = divr8u::return#2 } } main:10::read_chrono:182::div16u8u:414::divr8u:445 [ hiscore#110 y#18 tu#13 peephole#12 duck#1 score#19 z#100 l div16u8u::quotient_hi#0 divr8u::i#2 divr8u::dividend#0 divr8u::quotient#2 divr8u::rem#2 ] { { div16u8u::return#0 = div16u8u::return#2 } { divr8u::rem#10 = divr8u::rem#4 divr8u::rem#11 } { divr8u::dividend#2 = divr8u::dividend#5 } { divr8u::return#0 = divr8u::return#3 } } ) always clobbers reg byte a reg byte x
Statement [472] if(conio_cursor_y!=$19) goto cscroll::@return [ conio_cursor_y conio_line_text conio_line_color conio_textcolor ] ( main:10::cputs:31::cputc:344::cputln:428::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a
Statement [481] conio_line_text = conio_line_text - $28 [ conio_cursor_y conio_line_text conio_line_color conio_textcolor ] ( main:10::cputs:31::cputc:344::cputln:428::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a
Statement [482] conio_line_color = conio_line_color - $28 [ conio_cursor_y conio_line_text conio_line_color conio_textcolor ] ( main:10::cputs:31::cputc:344::cputln:428::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a
Statement [486] memcpy::src_end#0 = (char *)memcpy::source#2 + (unsigned int)$19*$28-$28 [ memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] ( main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::source#2 memcpy::destination#2 memcpy::src_end#0 ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a
Statement [487] memcpy::src#4 = (char *)memcpy::source#2 [ memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] ( main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::destination#2 memcpy::src_end#0 memcpy::src#4 ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a
Statement [488] memcpy::dst#4 = (char *)memcpy::destination#2 [ memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] ( main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#4 memcpy::dst#4 ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a
Statement [490] if(memcpy::src#2!=memcpy::src_end#0) goto memcpy::@2 [ memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] ( main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a
Statement [492] *memcpy::dst#2 = *memcpy::src#2 [ memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] ( main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memcpy:474 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memcpy:474 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memcpy:476 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memcpy:476 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memcpy::src_end#0 memcpy::src#2 memcpy::dst#2 ] { { cputc::c#0 = cputs::c#1 } } ) always clobbers reg byte a reg byte y
Statement [496] memset::end#0 = (char *)memset::str#3 + $28 [ memset::str#3 memset::c#4 memset::end#0 ] ( main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::str#3 memset::c#4 memset::end#0 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } ) always clobbers reg byte a
Statement [497] memset::dst#4 = (char *)memset::str#3 [ memset::c#4 memset::end#0 memset::dst#4 ] ( main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#4 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } ) always clobbers reg byte a
Statement [499] if(memset::dst#2!=memset::end#0) goto memset::@3 [ memset::c#4 memset::end#0 memset::dst#2 ] ( main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } ) always clobbers reg byte a
Statement [501] *memset::dst#2 = memset::c#4 [ memset::c#4 memset::end#0 memset::dst#2 ] ( main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memset:478 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memset:478 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } } main:10::cputs:31::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:35::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:39::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:152::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:156::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:158::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:162::cputc:344::cputln:428::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:169::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:173::cputc:344::cputln:428::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:31::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:35::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:39::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#127 y#114 hiscore#110 n#109 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:152::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:156::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:158::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:162::cputc:344::cputln:431::cscroll:454::memset:480 [ hiscore#110 rem8u#25 y#18 n#20 score#38 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:169::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } main:10::cputs:173::cputc:344::cputln:431::cscroll:454::memset:480 [ rem8u#25 y#18 n#20 hiscore#19 cputs::s#0 conio_cursor_x conio_cursor_y conio_line_text conio_line_color conio_textcolor memset::c#4 memset::end#0 memset::dst#2 ] { { cputc::c#0 = cputs::c#1 } { memset::c#1 = memset::c#4 conio_textcolor } } ) always clobbers reg byte a reg byte y
Potential registers zp[1]:201 [ conio_c64_init::line#2 conio_c64_init::line#0 ] : zp[1]:201 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[2]:195 [ hiscore#110 hiscore#123 ] : zp[2]:195 ,
Potential registers zp[1]:169 [ k#101 k#1 ] : zp[1]:169 ,
Potential registers zp[1]:161 [ j#13 j#3 ] : zp[1]:161 ,
Potential registers zp[1]:162 [ j#16 j#5 ] : zp[1]:162 ,
Potential registers zp[2]:197 [ tu#13 tu#1 ] : zp[2]:197 ,
Potential registers zp[2]:96 [ peephole#52 peephole#12 y#35 y#141 ] : zp[2]:96 ,
Potential registers zp[1]:95 [ n#52 n#89 n#109 n#20 n#101 n#14 n#1 ] : zp[1]:95 ,
Potential registers zp[2]:92 [ time#11 time#17 time#38 div16u8u::return#2 ] : zp[2]:92 ,
Potential registers zp[2]:83 [ y#13 y#12 y#11 y#10 y#0 y#49 y#114 y#18 y#130 y#1 y#2 y#3 ] : zp[2]:83 ,
Potential registers zp[2]:85 [ score#81 hiscore#19 hiscore#124 score#19 score#43 score#38 score#8 score#13 score#4 score#6 ] : zp[2]:85 ,
Potential registers zp[1]:94 [ j#11 j#2 ] : zp[1]:94 ,
Potential registers zp[1]:121 [ gotoxy::y#5 gotoxy::y#4 gotoxy::y#2 ] : zp[1]:121 , reg byte x , reg byte y ,
Potential registers zp[1]:122 [ clear_screen::n#5 ] : zp[1]:122 , reg byte x ,
Potential registers zp[2]:74 [ z#2 z#1 ] : zp[2]:74 ,
Potential registers zp[1]:185 [ textcolor::color#7 ] : zp[1]:185 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[2]:76 [ cputs::s#10 cputs::s#11 cputs::s#0 ] : zp[2]:76 ,
Potential registers zp[1]:3 [ random::k#4 random::k#0 ] : zp[1]:3 , reg byte x , reg byte y ,
Potential registers zp[1]:8 [ random::n#4 random::n#0 ] : zp[1]:8 , reg byte x , reg byte y ,
Potential registers zp[1]:44 [ wait::n#6 ] : zp[1]:44 , reg byte x , reg byte y ,
Potential registers zp[2]:31 [ z#53 z#48 z#100 z#102 z#128 z#28 z#9 z#25 z#23 z#4 ] : zp[2]:31 ,
Potential registers zp[1]:33 [ utoa::digit#2 utoa::digit#1 ] : zp[1]:33 , reg byte x ,
Potential registers zp[2]:29 [ utoa::value#3 utoa::value#7 utoa::value#10 utoa::value#2 utoa::value#1 utoa::value#0 ] : zp[2]:29 ,
Potential registers zp[1]:37 [ utoa::started#2 utoa::started#4 ] : zp[1]:37 , reg byte x , reg byte y ,
Potential registers zp[2]:27 [ utoa::buffer#10 utoa::buffer#15 utoa::buffer#4 ] : zp[2]:27 ,
Potential registers zp[2]:5 [ utoa_append::value#2 utoa_append::value#0 utoa_append::value#1 ] : zp[2]:5 ,
Potential registers zp[1]:7 [ utoa_append::digit#2 utoa_append::digit#1 ] : zp[1]:7 , reg byte x , reg byte y ,
Potential registers zp[1]:17 [ divr8u::rem#5 divr8u::rem#10 divr8u::rem#4 rem8u#48 rem8u#127 rem8u#25 divr8u::rem#11 divr8u::rem#6 divr8u::rem#0 divr8u::rem#1 divr8u::rem#2 ] : zp[1]:17 ,
Potential registers zp[1]:26 [ divr8u::dividend#3 divr8u::dividend#5 divr8u::dividend#1 divr8u::dividend#2 divr8u::dividend#0 ] : zp[1]:26 , reg byte y ,
Potential registers zp[1]:18 [ divr8u::quotient#3 divr8u::return#0 divr8u::quotient#1 divr8u::quotient#2 ] : zp[1]:18 , reg byte y ,
Potential registers zp[1]:22 [ divr8u::i#2 divr8u::i#1 ] : zp[1]:22 , reg byte y ,
Potential registers zp[2]:202 [ memcpy::source#2 ] : zp[2]:202 ,
Potential registers zp[2]:204 [ memcpy::destination#2 ] : zp[2]:204 ,
Potential registers zp[2]:13 [ memcpy::src#2 memcpy::src#4 memcpy::src#1 ] : zp[2]:13 ,
Potential registers zp[2]:15 [ memcpy::dst#2 memcpy::dst#4 memcpy::dst#1 ] : zp[2]:15 ,
Potential registers zp[2]:206 [ memset::str#3 ] : zp[2]:206 ,
Potential registers zp[1]:23 [ memset::c#4 memset::c#1 ] : zp[1]:23 , reg byte x ,
Potential registers zp[2]:11 [ memset::dst#2 memset::dst#4 memset::dst#1 ] : zp[2]:11 ,
Potential registers zp[1]:78 [ conio_cursor_x ] : zp[1]:78 ,
Potential registers zp[1]:56 [ conio_cursor_y ] : zp[1]:56 ,
Potential registers zp[2]:59 [ conio_line_text ] : zp[2]:59 ,
Potential registers zp[2]:57 [ conio_line_color ] : zp[2]:57 ,
Potential registers zp[1]:67 [ conio_textcolor ] : zp[1]:67 ,
Potential registers zp[1]:194 [ l ] : zp[1]:194 ,
Potential registers zp[1]:4 [ m ] : zp[1]:4 ,
Potential registers zp[1]:47 [ chrout::petscii ] : zp[1]:47 ,
Potential registers zp[1]:170 [ main::$177 ] : zp[1]:170 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:171 [ main::$26 ] : zp[1]:171 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[2]:172 [ main::$29 ] : zp[2]:172 ,
Potential registers zp[2]:45 [ duck#0 ] : zp[2]:45 ,
Potential registers zp[2]:42 [ main::$61 ] : zp[2]:42 ,
Potential registers zp[2]:54 [ duck#1 ] : zp[2]:54 ,
Potential registers zp[2]:48 [ main::$66 ] : zp[2]:48 ,
Potential registers zp[2]:50 [ main::$69 ] : zp[2]:50 ,
Potential registers zp[2]:52 [ main::$72 ] : zp[2]:52 ,
Potential registers zp[2]:186 [ main::$150 ] : zp[2]:186 ,
Potential registers zp[2]:174 [ main::$151 ] : zp[2]:174 ,
Potential registers zp[2]:188 [ main::$152 ] : zp[2]:188 ,
Potential registers zp[2]:176 [ main::$153 ] : zp[2]:176 ,
Potential registers zp[2]:190 [ main::$154 ] : zp[2]:190 ,
Potential registers zp[2]:178 [ main::$155 ] : zp[2]:178 ,
Potential registers zp[2]:192 [ main::$156 ] : zp[2]:192 ,
Potential registers zp[1]:184 [ j#19 ] : zp[1]:184 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:98 [ main::$78 ] : zp[1]:98 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:99 [ main::$81 ] : zp[1]:99 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:100 [ main::$84 ] : zp[1]:100 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:101 [ main::$88 ] : zp[1]:101 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:102 [ main::$92 ] : zp[1]:102 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[2]:117 [ main::$96 ] : zp[2]:117 ,
Potential registers zp[2]:103 [ main::$179 ] : zp[2]:103 ,
Potential registers zp[2]:105 [ main::$180 ] : zp[2]:105 ,
Potential registers zp[2]:107 [ main::$97 ] : zp[2]:107 ,
Potential registers zp[2]:163 [ main::$104 ] : zp[2]:163 ,
Potential registers zp[2]:165 [ main::$107 ] : zp[2]:165 ,
Potential registers zp[2]:167 [ main::$110 ] : zp[2]:167 ,
Potential registers zp[2]:123 [ main::$125 ] : zp[2]:123 ,
Potential registers zp[2]:125 [ main::$127 ] : zp[2]:125 ,
Potential registers zp[2]:127 [ main::$128 ] : zp[2]:127 ,
Potential registers zp[2]:129 [ main::$130 ] : zp[2]:129 ,
Potential registers zp[2]:131 [ main::$131 ] : zp[2]:131 ,
Potential registers zp[2]:133 [ main::$133 ] : zp[2]:133 ,
Potential registers zp[2]:135 [ main::$134 ] : zp[2]:135 ,
Potential registers zp[2]:137 [ main::$136 ] : zp[2]:137 ,
Potential registers zp[2]:139 [ main::$138 ] : zp[2]:139 ,
Potential registers zp[2]:141 [ main::$139 ] : zp[2]:141 ,
Potential registers zp[2]:143 [ main::$141 ] : zp[2]:143 ,
Potential registers zp[2]:145 [ main::$142 ] : zp[2]:145 ,
Potential registers zp[2]:147 [ main::$144 ] : zp[2]:147 ,
Potential registers zp[2]:149 [ main::$145 ] : zp[2]:149 ,
Potential registers zp[2]:159 [ main::$119 ] : zp[2]:159 ,
Potential registers zp[2]:151 [ main::$120 ] : zp[2]:151 ,
Potential registers zp[2]:153 [ main::$122 ] : zp[2]:153 ,
Potential registers zp[2]:155 [ main::$124 ] : zp[2]:155 ,
Potential registers zp[2]:180 [ main::$57 ] : zp[2]:180 ,
Potential registers zp[2]:182 [ main::$35 ] : zp[2]:182 ,
Potential registers zp[2]:199 [ main::$3 ] : zp[2]:199 ,
Potential registers zp[2]:119 [ gotoxy::$7 ] : zp[2]:119 ,
Potential registers zp[2]:109 [ gotoxy::$8 ] : zp[2]:109 ,
Potential registers zp[2]:111 [ gotoxy::$9 ] : zp[2]:111 ,
Potential registers zp[2]:157 [ gotoxy::line_offset#0 ] : zp[2]:157 ,
Potential registers zp[2]:113 [ gotoxy::$5 ] : zp[2]:113 ,
Potential registers zp[2]:115 [ gotoxy::$6 ] : zp[2]:115 ,
Potential registers zp[2]:90 [ clear_screen::$5 ] : zp[2]:90 ,
Potential registers zp[2]:87 [ clear_screen::$4 ] : zp[2]:87 ,
Potential registers zp[1]:89 [ cputs::c#1 ] : zp[1]:89 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:68 [ cputc::c#0 ] : zp[1]:68 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:2 [ random::$3 ] : zp[1]:2 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:61 [ utoa::$11 ] : zp[1]:61 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[2]:62 [ utoa::buffer#3 ] : zp[2]:62 ,
Potential registers zp[1]:34 [ utoa::$10 ] : zp[1]:34 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[2]:40 [ utoa::digit_value#0 ] : zp[2]:40 ,
Potential registers zp[2]:38 [ utoa_append::buffer#0 ] : zp[2]:38 ,
Potential registers zp[2]:9 [ utoa_append::sub#0 ] : zp[2]:9 ,
Potential registers zp[2]:35 [ utoa_append::return#0 ] : zp[2]:35 ,
Potential registers zp[2]:79 [ read_chrono::$0 ] : zp[2]:79 ,
Potential registers zp[2]:69 [ div16u8u::dividend#0 ] : zp[2]:69 ,
Potential registers zp[2]:81 [ read_chrono::$5 ] : zp[2]:81 ,
Potential registers zp[1]:64 [ divr8u::return#2 ] : zp[1]:64 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:73 [ div16u8u::quotient_hi#0 ] : zp[1]:73 , reg byte y ,
Potential registers zp[1]:65 [ divr8u::return#3 ] : zp[1]:65 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[1]:66 [ div16u8u::quotient_lo#0 ] : zp[1]:66 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[2]:71 [ div16u8u::return#0 ] : zp[2]:71 ,
Potential registers zp[1]:19 [ divr8u::$1 ] : zp[1]:19 , reg byte a , reg byte x , reg byte y ,
Potential registers zp[2]:24 [ memcpy::src_end#0 ] : zp[2]:24 ,
Potential registers zp[2]:20 [ memset::end#0 ] : zp[2]:20 ,
REGISTER UPLIFT SCOPES
Uplift Scope [random] 550,000,000,000,000,000: zp[1]:2 [ random::$3 ] 200,000,000,000,000,704: zp[1]:3 [ random::k#4 random::k#0 ] 20,000,000,000,002,200: zp[1]:8 [ random::n#4 random::n#0 ]
Uplift Scope [utoa_append] 25,000,055,000,000,000: zp[2]:5 [ utoa_append::value#2 utoa_append::value#0 utoa_append::value#1 ] 20,000,050,000,000,000: zp[1]:7 [ utoa_append::digit#2 utoa_append::digit#1 ] 3,333,335,000,000,000: zp[2]:9 [ utoa_append::sub#0 ] 20,000,000,002: zp[2]:35 [ utoa_append::return#0 ] 13,750,000,000.25: zp[2]:38 [ utoa_append::buffer#0 ]
Uplift Scope [] 38,961,039,106,499,544: zp[1]:4 [ m ] 30,359,052,588.44: zp[2]:31 [ z#53 z#48 z#100 z#102 z#128 z#28 z#9 z#25 z#23 z#4 ] 66,666,667.33: zp[2]:45 [ duck#0 ] 4,237,745.88: zp[2]:54 [ duck#1 ] 3,516,593.49: zp[1]:56 [ conio_cursor_y ] 2,662,771.18: zp[2]:57 [ conio_line_color ] 2,600,117.74: zp[2]:59 [ conio_line_text ] 1,629,048.47: zp[1]:67 [ conio_textcolor ] 266,669.33: zp[2]:74 [ z#2 z#1 ] 200,133.45: zp[1]:78 [ conio_cursor_x ] 142,915.01: zp[2]:83 [ y#13 y#12 y#11 y#10 y#0 y#49 y#114 y#18 y#130 y#1 y#2 y#3 ] 123,256.31: zp[2]:85 [ score#81 hiscore#19 hiscore#124 score#19 score#43 score#38 score#8 score#13 score#4 score#6 ] 39,735.93: zp[2]:92 [ time#11 time#17 time#38 div16u8u::return#2 ] 27,502.75: zp[1]:94 [ j#11 j#2 ] 25,133.33: zp[1]:95 [ n#52 n#89 n#109 n#20 n#101 n#14 n#1 ] 23,035.47: zp[2]:96 [ peephole#52 peephole#12 y#35 y#141 ] 3,003: zp[1]:161 [ j#13 j#3 ] 3,003: zp[1]:162 [ j#16 j#5 ] 2,275: zp[1]:169 [ k#101 k#1 ] 1,034.67: zp[1]:184 [ j#19 ] 455.79: zp[1]:194 [ l ] 203.17: zp[2]:195 [ hiscore#110 hiscore#123 ] 198.87: zp[2]:197 [ tu#13 tu#1 ]
Uplift Scope [memcpy] 3,001,250,000,004.25: zp[2]:13 [ memcpy::src#2 memcpy::src#4 memcpy::src#1 ] 2,002,333,333,337.67: zp[2]:15 [ memcpy::dst#2 memcpy::dst#4 memcpy::dst#1 ] 125,125,000,000.25: zp[2]:24 [ memcpy::src_end#0 ] 0: zp[2]:202 [ memcpy::source#2 ] 0: zp[2]:204 [ memcpy::destination#2 ]
Uplift Scope [memset] 3,335,666,666,672.33: zp[2]:11 [ memset::dst#2 memset::dst#4 memset::dst#1 ] 166,833,333,333.67: zp[2]:20 [ memset::end#0 ] 143,071,428,573.71: zp[1]:23 [ memset::c#4 memset::c#1 ] 0: zp[2]:206 [ memset::str#3 ]
Uplift Scope [divr8u] 802,725,712,140.36: zp[1]:17 [ divr8u::rem#5 divr8u::rem#10 divr8u::rem#4 rem8u#48 rem8u#127 rem8u#25 divr8u::rem#11 divr8u::rem#6 divr8u::rem#0 divr8u::rem#1 divr8u::rem#2 ] 328,571,761,908.38: zp[1]:18 [ divr8u::quotient#3 divr8u::return#0 divr8u::quotient#1 divr8u::quotient#2 ] 200,000,000,002: zp[1]:19 [ divr8u::$1 ] 166,666,666,668.33: zp[1]:22 [ divr8u::i#2 divr8u::i#1 ] 75,016,666,673.58: zp[1]:26 [ divr8u::dividend#3 divr8u::dividend#5 divr8u::dividend#1 divr8u::dividend#2 divr8u::dividend#0 ] 2,000,002: zp[1]:64 [ divr8u::return#2 ] 2,000,002: zp[1]:65 [ divr8u::return#3 ]
Uplift Scope [utoa] 37,857,285,718.21: zp[2]:27 [ utoa::buffer#10 utoa::buffer#15 utoa::buffer#4 ] 30,715,728,881.64: zp[2]:29 [ utoa::value#3 utoa::value#7 utoa::value#10 utoa::value#2 utoa::value#1 utoa::value#0 ] 22,857,142,859.43: zp[1]:33 [ utoa::digit#2 utoa::digit#1 ] 20,000,000,002: zp[1]:34 [ utoa::$10 ] 15,000,000,001.5: zp[1]:37 [ utoa::started#2 utoa::started#4 ] 6,000,000,000.6: zp[2]:40 [ utoa::digit_value#0 ] 2,000,002: zp[1]:61 [ utoa::$11 ] 2,000,002: zp[2]:62 [ utoa::buffer#3 ]
Uplift Scope [main] 200,000,002: zp[2]:42 [ main::$61 ] 20,000,000.2: zp[2]:48 [ main::$66 ] 20,000,000.2: zp[2]:50 [ main::$69 ] 20,000,000.2: zp[2]:52 [ main::$72 ] 20,002: zp[1]:98 [ main::$78 ] 20,002: zp[1]:99 [ main::$81 ] 20,002: zp[1]:100 [ main::$84 ] 20,002: zp[1]:101 [ main::$88 ] 20,002: zp[1]:102 [ main::$92 ] 20,002: zp[2]:103 [ main::$179 ] 20,002: zp[2]:105 [ main::$180 ] 20,002: zp[2]:107 [ main::$97 ] 15,001.5: zp[2]:117 [ main::$96 ] 10,001: zp[2]:123 [ main::$125 ] 10,001: zp[2]:125 [ main::$127 ] 10,001: zp[2]:127 [ main::$128 ] 10,001: zp[2]:129 [ main::$130 ] 10,001: zp[2]:131 [ main::$131 ] 10,001: zp[2]:133 [ main::$133 ] 10,001: zp[2]:135 [ main::$134 ] 10,001: zp[2]:137 [ main::$136 ] 10,001: zp[2]:139 [ main::$138 ] 10,001: zp[2]:141 [ main::$139 ] 10,001: zp[2]:143 [ main::$141 ] 10,001: zp[2]:145 [ main::$142 ] 10,001: zp[2]:147 [ main::$144 ] 10,001: zp[2]:149 [ main::$145 ] 10,001: zp[2]:151 [ main::$120 ] 10,001: zp[2]:153 [ main::$122 ] 10,001: zp[2]:155 [ main::$124 ] 6,667.33: zp[2]:159 [ main::$119 ] 2,500.25: zp[2]:163 [ main::$104 ] 2,500.25: zp[2]:165 [ main::$107 ] 2,500.25: zp[2]:167 [ main::$110 ] 2,002: zp[1]:170 [ main::$177 ] 2,002: zp[1]:171 [ main::$26 ] 2,002: zp[2]:172 [ main::$29 ] 2,002: zp[2]:174 [ main::$151 ] 2,002: zp[2]:176 [ main::$153 ] 2,002: zp[2]:178 [ main::$155 ] 2,002: zp[2]:180 [ main::$57 ] 2,002: zp[2]:182 [ main::$35 ] 1,001: zp[2]:186 [ main::$150 ] 1,001: zp[2]:188 [ main::$152 ] 1,001: zp[2]:190 [ main::$154 ] 1,001: zp[2]:192 [ main::$156 ] 101: zp[2]:199 [ main::$3 ]
Uplift Scope [wait] 125,000,000.12: zp[1]:44 [ wait::n#6 ]
Uplift Scope [chrout] 30,310,104.64: zp[1]:47 [ chrout::petscii ]
Uplift Scope [div16u8u] 2,000,002: zp[1]:66 [ div16u8u::quotient_lo#0 ] 420,000.6: zp[2]:69 [ div16u8u::dividend#0 ] 366,667.33: zp[2]:71 [ div16u8u::return#0 ] 333,333.67: zp[1]:73 [ div16u8u::quotient_hi#0 ]
Uplift Scope [cputc] 1,050,001.5: zp[1]:68 [ cputc::c#0 ]
Uplift Scope [read_chrono] 200,002: zp[2]:79 [ read_chrono::$0 ] 200,002: zp[2]:81 [ read_chrono::$5 ]
Uplift Scope [cputs] 201,503.5: zp[2]:76 [ cputs::s#10 cputs::s#11 cputs::s#0 ] 100,001: zp[1]:89 [ cputs::c#1 ]
Uplift Scope [clear_screen] 100,001: zp[2]:87 [ clear_screen::$4 ] 66,667.33: zp[2]:90 [ clear_screen::$5 ] 12,500.12: zp[1]:122 [ clear_screen::n#5 ]
Uplift Scope [gotoxy] 20,002: zp[2]:109 [ gotoxy::$8 ] 20,002: zp[2]:111 [ gotoxy::$9 ] 20,002: zp[2]:113 [ gotoxy::$5 ] 20,002: zp[2]:115 [ gotoxy::$6 ] 15,001.5: zp[2]:119 [ gotoxy::$7 ] 13,360.33: zp[1]:121 [ gotoxy::y#5 gotoxy::y#4 gotoxy::y#2 ] 10,001: zp[2]:157 [ gotoxy::line_offset#0 ]
Uplift Scope [textcolor] 1,001: zp[1]:185 [ textcolor::color#7 ]
Uplift Scope [conio_c64_init] 33: zp[1]:201 [ conio_c64_init::line#2 conio_c64_init::line#0 ]
Uplift Scope [RADIX]
Uplift Scope [cputln]
Uplift Scope [MOS6526_CIA]
Uplift Scope [MOS6569_VICII]
Uplift Scope [MOS6581_SID]
Uplift Scope [cscroll]
Uplift Scope [printf_format_number]
Uplift Scope [printf_buffer_number]
Uplift Scope [printf_format_string]
Uplift Scope [write_score]
Uplift Scope [chrono_restart]
Uplift Scope [__start]
Limited combination testing to 100 combinations of 512 possible.
Limited combination testing to 100 combinations of 16384 possible.
Attempting to uplift remaining variables inzp[1]:2 [ random::$3 ]
Attempting to uplift remaining variables inzp[1]:3 [ random::k#4 random::k#0 ]
Attempting to uplift remaining variables inzp[1]:4 [ m ]
Attempting to uplift remaining variables inzp[1]:7 [ utoa_append::digit#2 utoa_append::digit#1 ]
Attempting to uplift remaining variables inzp[1]:8 [ random::n#4 random::n#0 ]
Attempting to uplift remaining variables inzp[1]:17 [ divr8u::rem#5 divr8u::rem#10 divr8u::rem#4 rem8u#48 rem8u#127 rem8u#25 divr8u::rem#11 divr8u::rem#6 divr8u::rem#0 divr8u::rem#1 divr8u::rem#2 ]
Attempting to uplift remaining variables inzp[1]:18 [ divr8u::quotient#3 divr8u::return#0 divr8u::quotient#1 divr8u::quotient#2 ]
Attempting to uplift remaining variables inzp[1]:19 [ divr8u::$1 ]
Attempting to uplift remaining variables inzp[1]:22 [ divr8u::i#2 divr8u::i#1 ]
Attempting to uplift remaining variables inzp[1]:23 [ memset::c#4 memset::c#1 ]
Attempting to uplift remaining variables inzp[1]:26 [ divr8u::dividend#3 divr8u::dividend#5 divr8u::dividend#1 divr8u::dividend#2 divr8u::dividend#0 ]
Attempting to uplift remaining variables inzp[1]:33 [ utoa::digit#2 utoa::digit#1 ]
Attempting to uplift remaining variables inzp[1]:34 [ utoa::$10 ]
Attempting to uplift remaining variables inzp[1]:37 [ utoa::started#2 utoa::started#4 ]
Attempting to uplift remaining variables inzp[1]:44 [ wait::n#6 ]
Attempting to uplift remaining variables inzp[1]:47 [ chrout::petscii ]
Attempting to uplift remaining variables inzp[1]:56 [ conio_cursor_y ]
Attempting to uplift remaining variables inzp[1]:61 [ utoa::$11 ]
Attempting to uplift remaining variables inzp[1]:64 [ divr8u::return#2 ]
Attempting to uplift remaining variables inzp[1]:65 [ divr8u::return#3 ]
Attempting to uplift remaining variables inzp[1]:66 [ div16u8u::quotient_lo#0 ]
Attempting to uplift remaining variables inzp[1]:67 [ conio_textcolor ]
Attempting to uplift remaining variables inzp[1]:68 [ cputc::c#0 ]
Attempting to uplift remaining variables inzp[1]:73 [ div16u8u::quotient_hi#0 ]
Attempting to uplift remaining variables inzp[1]:78 [ conio_cursor_x ]
Attempting to uplift remaining variables inzp[1]:89 [ cputs::c#1 ]
Attempting to uplift remaining variables inzp[1]:94 [ j#11 j#2 ]
Attempting to uplift remaining variables inzp[1]:95 [ n#52 n#89 n#109 n#20 n#101 n#14 n#1 ]
Attempting to uplift remaining variables inzp[1]:98 [ main::$78 ]
Attempting to uplift remaining variables inzp[1]:99 [ main::$81 ]
Attempting to uplift remaining variables inzp[1]:100 [ main::$84 ]
Attempting to uplift remaining variables inzp[1]:101 [ main::$88 ]
Attempting to uplift remaining variables inzp[1]:102 [ main::$92 ]
Attempting to uplift remaining variables inzp[1]:121 [ gotoxy::y#5 gotoxy::y#4 gotoxy::y#2 ]
Attempting to uplift remaining variables inzp[1]:122 [ clear_screen::n#5 ]
Attempting to uplift remaining variables inzp[1]:161 [ j#13 j#3 ]
Attempting to uplift remaining variables inzp[1]:162 [ j#16 j#5 ]
Attempting to uplift remaining variables inzp[1]:169 [ k#101 k#1 ]
Attempting to uplift remaining variables inzp[1]:170 [ main::$177 ]
Attempting to uplift remaining variables inzp[1]:171 [ main::$26 ]
Attempting to uplift remaining variables inzp[1]:184 [ j#19 ]
Attempting to uplift remaining variables inzp[1]:185 [ textcolor::color#7 ]
Attempting to uplift remaining variables inzp[1]:194 [ l ]
Attempting to uplift remaining variables inzp[1]:201 [ conio_c64_init::line#2 conio_c64_init::line#0 ]
Coalescing zero page register [ zp[1]:201 [ conio_c64_init::line#2 conio_c64_init::line#0 ] ] with [ zp[1]:121 [ gotoxy::y#5 gotoxy::y#4 gotoxy::y#2 ] ] - score: 1
Coalescing zero page register [ zp[1]:8 [ random::n#4 random::n#0 ] ] with [ zp[1]:171 [ main::$26 ] ] - score: 1
Coalescing zero page register [ zp[2]:29 [ utoa::value#3 utoa::value#7 utoa::value#10 utoa::value#2 utoa::value#1 utoa::value#0 ] ] with [ zp[2]:5 [ utoa_append::value#2 utoa_append::value#0 utoa_append::value#1 ] ] - score: 1
Coalescing zero page register [ zp[2]:29 [ utoa::value#3 utoa::value#7 utoa::value#10 utoa::value#2 utoa::value#1 utoa::value#0 utoa_append::value#2 utoa_append::value#0 utoa_append::value#1 ] ] with [ zp[2]:35 [ utoa_append::return#0 ] ] - score: 1
Coalescing zero page register [ zp[2]:27 [ utoa::buffer#10 utoa::buffer#15 utoa::buffer#4 ] ] with [ zp[2]:62 [ utoa::buffer#3 ] ] - score: 1
Coalescing zero page register [ zp[2]:27 [ utoa::buffer#10 utoa::buffer#15 utoa::buffer#4 utoa::buffer#3 ] ] with [ zp[2]:38 [ utoa_append::buffer#0 ] ] - score: 1
Coalescing zero page register [ zp[1]:18 [ divr8u::quotient#3 divr8u::return#0 divr8u::quotient#1 divr8u::quotient#2 ] ] with [ zp[1]:64 [ divr8u::return#2 ] ] - score: 1
Coalescing zero page register [ zp[1]:18 [ divr8u::quotient#3 divr8u::return#0 divr8u::quotient#1 divr8u::quotient#2 divr8u::return#2 ] ] with [ zp[1]:65 [ divr8u::return#3 ] ] - score: 1
Coalescing zero page register [ zp[2]:202 [ memcpy::source#2 ] ] with [ zp[2]:13 [ memcpy::src#2 memcpy::src#4 memcpy::src#1 ] ] - score: 1
Coalescing zero page register [ zp[2]:204 [ memcpy::destination#2 ] ] with [ zp[2]:15 [ memcpy::dst#2 memcpy::dst#4 memcpy::dst#1 ] ] - score: 1
Coalescing zero page register [ zp[2]:206 [ memset::str#3 ] ] with [ zp[2]:11 [ memset::dst#2 memset::dst#4 memset::dst#1 ] ] - score: 1
Coalescing zero page register [ zp[2]:45 [ duck#0 ] ] with [ zp[2]:54 [ duck#1 ] ] - score: 1
Coalescing zero page register [ zp[2]:174 [ main::$151 ] ] with [ zp[2]:188 [ main::$152 ] ] - score: 1
Coalescing zero page register [ zp[2]:176 [ main::$153 ] ] with [ zp[2]:190 [ main::$154 ] ] - score: 1
Coalescing zero page register [ zp[2]:178 [ main::$155 ] ] with [ zp[2]:192 [ main::$156 ] ] - score: 1
Coalescing zero page register [ zp[2]:117 [ main::$96 ] ] with [ zp[2]:105 [ main::$180 ] ] - score: 1
Coalescing zero page register [ zp[2]:125 [ main::$127 ] ] with [ zp[2]:127 [ main::$128 ] ] - score: 1
Coalescing zero page register [ zp[2]:129 [ main::$130 ] ] with [ zp[2]:131 [ main::$131 ] ] - score: 1
Coalescing zero page register [ zp[2]:133 [ main::$133 ] ] with [ zp[2]:135 [ main::$134 ] ] - score: 1
Coalescing zero page register [ zp[2]:139 [ main::$138 ] ] with [ zp[2]:141 [ main::$139 ] ] - score: 1
Coalescing zero page register [ zp[2]:143 [ main::$141 ] ] with [ zp[2]:145 [ main::$142 ] ] - score: 1
Coalescing zero page register [ zp[2]:147 [ main::$144 ] ] with [ zp[2]:149 [ main::$145 ] ] - score: 1
Coalescing zero page register [ zp[2]:159 [ main::$119 ] ] with [ zp[2]:155 [ main::$124 ] ] - score: 1
Coalescing zero page register [ zp[2]:119 [ gotoxy::$7 ] ] with [ zp[2]:111 [ gotoxy::$9 ] ] - score: 1
Coalescing zero page register [ zp[2]:157 [ gotoxy::line_offset#0 ] ] with [ zp[2]:115 [ gotoxy::$6 ] ] - score: 1
Coalescing zero page register [ zp[1]:89 [ cputs::c#1 ] ] with [ zp[1]:68 [ cputc::c#0 ] ] - score: 1
Coalescing zero page register [ zp[2]:40 [ utoa::digit_value#0 ] ] with [ zp[2]:9 [ utoa_append::sub#0 ] ] - score: 1
Coalescing zero page register [ zp[2]:79 [ read_chrono::$0 ] ] with [ zp[2]:69 [ div16u8u::dividend#0 ] ] - score: 1
Coalescing zero page register [ zp[1]:8 [ random::n#4 random::n#0 main::$26 ] ] with [ zp[1]:170 [ main::$177 ] ] - score: 1
Coalescing zero page register [ zp[1]:18 [ divr8u::quotient#3 divr8u::return#0 divr8u::quotient#1 divr8u::quotient#2 divr8u::return#2 divr8u::return#3 ] ] with [ zp[1]:66 [ div16u8u::quotient_lo#0 ] ] - score: 1
Coalescing zero page register [ zp[2]:117 [ main::$96 main::$180 ] ] with [ zp[2]:107 [ main::$97 ] ] - score: 1
Coalescing zero page register [ zp[2]:119 [ gotoxy::$7 gotoxy::$9 ] ] with [ zp[2]:157 [ gotoxy::line_offset#0 gotoxy::$6 ] ] - score: 1
Coalescing zero page register [ zp[1]:185 [ textcolor::color#7 ] ] with [ zp[1]:122 [ clear_screen::n#5 ] ]
Coalescing zero page register [ zp[1]:44 [ wait::n#6 ] ] with [ zp[1]:3 [ random::k#4 random::k#0 ] ]
Coalescing zero page register [ zp[2]:29 [ utoa::value#3 utoa::value#7 utoa::value#10 utoa::value#2 utoa::value#1 utoa::value#0 utoa_append::value#2 utoa_append::value#0 utoa_append::value#1 utoa_append::return#0 ] ] with [ zp[2]:76 [ cputs::s#10 cputs::s#11 cputs::s#0 ] ]
Coalescing zero page register [ zp[1]:26 [ divr8u::dividend#3 divr8u::dividend#5 divr8u::dividend#1 divr8u::dividend#2 divr8u::dividend#0 ] ] with [ zp[1]:33 [ utoa::digit#2 utoa::digit#1 ] ]
Coalescing zero page register [ zp[1]:18 [ divr8u::quotient#3 divr8u::return#0 divr8u::quotient#1 divr8u::quotient#2 divr8u::return#2 divr8u::return#3 div16u8u::quotient_lo#0 ] ] with [ zp[1]:37 [ utoa::started#2 utoa::started#4 ] ]
Coalescing zero page register [ zp[1]:22 [ divr8u::i#2 divr8u::i#1 ] ] with [ zp[1]:7 [ utoa_append::digit#2 utoa_append::digit#1 ] ]
Coalescing zero page register [ zp[2]:202 [ memcpy::source#2 memcpy::src#2 memcpy::src#4 memcpy::src#1 ] ] with [ zp[2]:27 [ utoa::buffer#10 utoa::buffer#15 utoa::buffer#4 utoa::buffer#3 utoa_append::buffer#0 ] ]
Coalescing zero page register [ zp[2]:206 [ memset::str#3 memset::dst#2 memset::dst#4 memset::dst#1 ] ] with [ zp[2]:204 [ memcpy::destination#2 memcpy::dst#2 memcpy::dst#4 memcpy::dst#1 ] ]
Coalescing zero page register [ zp[1]:98 [ main::$78 ] ] with [ zp[1]:23 [ memset::c#4 memset::c#1 ] ]
Coalescing zero page register [ zp[1]:2 [ random::$3 ] ] with [ zp[1]:89 [ cputs::c#1 cputc::c#0 ] ]
Coalescing zero page register [ zp[2]:40 [ utoa::digit_value#0 utoa_append::sub#0 ] ] with [ zp[2]:90 [ clear_screen::$5 ] ]
Coalescing zero page register [ zp[2]:79 [ read_chrono::$0 div16u8u::dividend#0 ] ] with [ zp[2]:87 [ clear_screen::$4 ] ]
Coalescing zero page register [ zp[1]:73 [ div16u8u::quotient_hi#0 ] ] with [ zp[1]:61 [ utoa::$11 ] ]
Coalescing zero page register [ zp[1]:19 [ divr8u::$1 ] ] with [ zp[1]:34 [ utoa::$10 ] ]
Coalescing zero page register [ zp[2]:24 [ memcpy::src_end#0 ] ] with [ zp[2]:81 [ read_chrono::$5 ] ]
Coalescing zero page register [ zp[2]:20 [ memset::end#0 ] ] with [ zp[2]:71 [ div16u8u::return#0 ] ]
Coalescing zero page register [ zp[1]:8 [ random::n#4 random::n#0 main::$26 main::$177 ] ] with [ zp[1]:185 [ textcolor::color#7 clear_screen::n#5 ] ]
Coalescing zero page register [ zp[1]:26 [ divr8u::dividend#3 divr8u::dividend#5 divr8u::dividend#1 divr8u::dividend#2 divr8u::dividend#0 utoa::digit#2 utoa::digit#1 ] ] with [ zp[1]:44 [ wait::n#6 random::k#4 random::k#0 ] ]
Coalescing zero page register [ zp[2]:172 [ main::$29 ] ] with [ zp[2]:29 [ utoa::value#3 utoa::value#7 utoa::value#10 utoa::value#2 utoa::value#1 utoa::value#0 utoa_append::value#2 utoa_append::value#0 utoa_append::value#1 utoa_append::return#0 cputs::s#10 cputs::s#11 cputs::s#0 ] ]
Coalescing zero page register [ zp[2]:42 [ main::$61 ] ] with [ zp[2]:202 [ memcpy::source#2 memcpy::src#2 memcpy::src#4 memcpy::src#1 utoa::buffer#10 utoa::buffer#15 utoa::buffer#4 utoa::buffer#3 utoa_append::buffer#0 ] ]
Coalescing zero page register [ zp[2]:48 [ main::$66 ] ] with [ zp[2]:206 [ memset::str#3 memset::dst#2 memset::dst#4 memset::dst#1 memcpy::destination#2 memcpy::dst#2 memcpy::dst#4 memcpy::dst#1 ] ]
Coalescing zero page register [ zp[1]:98 [ main::$78 memset::c#4 memset::c#1 ] ] with [ zp[1]:18 [ divr8u::quotient#3 divr8u::return#0 divr8u::quotient#1 divr8u::quotient#2 divr8u::return#2 divr8u::return#3 div16u8u::quotient_lo#0 utoa::started#2 utoa::started#4 ] ]
Coalescing zero page register [ zp[1]:99 [ main::$81 ] ] with [ zp[1]:22 [ divr8u::i#2 divr8u::i#1 utoa_append::digit#2 utoa_append::digit#1 ] ]
Coalescing zero page register [ zp[1]:73 [ div16u8u::quotient_hi#0 utoa::$11 ] ] with [ zp[1]:2 [ random::$3 cputs::c#1 cputc::c#0 ] ]
Coalescing zero page register [ zp[2]:24 [ memcpy::src_end#0 read_chrono::$5 ] ] with [ zp[2]:40 [ utoa::digit_value#0 utoa_append::sub#0 clear_screen::$5 ] ]
Coalescing zero page register [ zp[1]:100 [ main::$84 ] ] with [ zp[1]:26 [ divr8u::dividend#3 divr8u::dividend#5 divr8u::dividend#1 divr8u::dividend#2 divr8u::dividend#0 utoa::digit#2 utoa::digit#1 wait::n#6 random::k#4 random::k#0 ] ]
Allocated (was zp[1]:73) zp[1]:2 [ div16u8u::quotient_hi#0 utoa::$11 random::$3 cputs::c#1 cputc::c#0 ]
Allocated (was zp[1]:100) zp[1]:3 [ main::$84 divr8u::dividend#3 divr8u::dividend#5 divr8u::dividend#1 divr8u::dividend#2 divr8u::dividend#0 utoa::digit#2 utoa::digit#1 wait::n#6 random::k#4 random::k#0 ]
Allocated (was zp[2]:172) zp[2]:5 [ main::$29 utoa::value#3 utoa::value#7 utoa::value#10 utoa::value#2 utoa::value#1 utoa::value#0 utoa_append::value#2 utoa_append::value#0 utoa_append::value#1 utoa_append::return#0 cputs::s#10 cputs::s#11 cputs::s#0 ]
Allocated (was zp[1]:99) zp[1]:7 [ main::$81 divr8u::i#2 divr8u::i#1 utoa_append::digit#2 utoa_append::digit#1 ]
Allocated (was zp[2]:24) zp[2]:9 [ memcpy::src_end#0 read_chrono::$5 utoa::digit_value#0 utoa_append::sub#0 clear_screen::$5 ]
Allocated (was zp[2]:48) zp[2]:11 [ main::$66 memset::str#3 memset::dst#2 memset::dst#4 memset::dst#1 memcpy::destination#2 memcpy::dst#2 memcpy::dst#4 memcpy::dst#1 ]
Allocated (was zp[2]:42) zp[2]:13 [ main::$61 memcpy::source#2 memcpy::src#2 memcpy::src#4 memcpy::src#1 utoa::buffer#10 utoa::buffer#15 utoa::buffer#4 utoa::buffer#3 utoa_append::buffer#0 ]
Allocated (was zp[1]:17) zp[1]:15 [ divr8u::rem#5 divr8u::rem#10 divr8u::rem#4 rem8u#48 rem8u#127 rem8u#25 divr8u::rem#11 divr8u::rem#6 divr8u::rem#0 divr8u::rem#1 divr8u::rem#2 ]
Allocated (was zp[1]:98) zp[1]:16 [ main::$78 memset::c#4 memset::c#1 divr8u::quotient#3 divr8u::return#0 divr8u::quotient#1 divr8u::quotient#2 divr8u::return#2 divr8u::return#3 div16u8u::quotient_lo#0 utoa::started#2 utoa::started#4 ]
Allocated (was zp[1]:19) zp[1]:17 [ divr8u::$1 utoa::$10 ]
Allocated (was zp[2]:20) zp[2]:18 [ memset::end#0 div16u8u::return#0 ]
Allocated (was zp[2]:31) zp[2]:20 [ z#53 z#48 z#100 z#102 z#128 z#28 z#9 z#25 z#23 z#4 ]
Allocated (was zp[2]:45) zp[2]:22 [ duck#0 duck#1 ]
Allocated (was zp[1]:47) zp[1]:24 [ chrout::petscii ]
Allocated (was zp[2]:50) zp[2]:25 [ main::$69 ]
Allocated (was zp[2]:52) zp[2]:27 [ main::$72 ]
Allocated (was zp[1]:56) zp[1]:29 [ conio_cursor_y ]
Allocated (was zp[2]:57) zp[2]:30 [ conio_line_color ]
Allocated (was zp[2]:59) zp[2]:32 [ conio_line_text ]
Allocated (was zp[1]:67) zp[1]:34 [ conio_textcolor ]
Allocated (was zp[2]:79) zp[2]:35 [ read_chrono::$0 div16u8u::dividend#0 clear_screen::$4 ]
Allocated (was zp[2]:74) zp[2]:37 [ z#2 z#1 ]
Allocated (was zp[1]:78) zp[1]:39 [ conio_cursor_x ]
Allocated (was zp[2]:83) zp[2]:40 [ y#13 y#12 y#11 y#10 y#0 y#49 y#114 y#18 y#130 y#1 y#2 y#3 ]
Allocated (was zp[2]:85) zp[2]:42 [ score#81 hiscore#19 hiscore#124 score#19 score#43 score#38 score#8 score#13 score#4 score#6 ]
Allocated (was zp[2]:119) zp[2]:44 [ gotoxy::$7 gotoxy::$9 gotoxy::line_offset#0 gotoxy::$6 ]
Allocated (was zp[2]:117) zp[2]:46 [ main::$96 main::$180 main::$97 ]
Allocated (was zp[2]:92) zp[2]:48 [ time#11 time#17 time#38 div16u8u::return#2 ]
Allocated (was zp[1]:94) zp[1]:50 [ j#11 j#2 ]
Allocated (was zp[1]:95) zp[1]:51 [ n#52 n#89 n#109 n#20 n#101 n#14 n#1 ]
Allocated (was zp[2]:96) zp[2]:52 [ peephole#52 peephole#12 y#35 y#141 ]
Allocated (was zp[1]:101) zp[1]:54 [ main::$88 ]
Allocated (was zp[1]:102) zp[1]:55 [ main::$92 ]
Allocated (was zp[2]:103) zp[2]:56 [ main::$179 ]
Allocated (was zp[2]:125) zp[2]:58 [ main::$127 main::$128 ]
Allocated (was zp[2]:129) zp[2]:60 [ main::$130 main::$131 ]
Allocated (was zp[2]:133) zp[2]:62 [ main::$133 main::$134 ]
Allocated (was zp[2]:139) zp[2]:64 [ main::$138 main::$139 ]
Allocated (was zp[2]:143) zp[2]:66 [ main::$141 main::$142 ]
Allocated (was zp[2]:147) zp[2]:68 [ main::$144 main::$145 ]
Allocated (was zp[2]:109) zp[2]:70 [ gotoxy::$8 ]
Allocated (was zp[2]:113) zp[2]:72 [ gotoxy::$5 ]
Allocated (was zp[2]:159) zp[2]:74 [ main::$119 main::$124 ]
Allocated (was zp[1]:201) zp[1]:76 [ conio_c64_init::line#2 conio_c64_init::line#0 gotoxy::y#5 gotoxy::y#4 gotoxy::y#2 ]
Allocated (was zp[2]:123) zp[2]:77 [ main::$125 ]
Allocated (was zp[2]:137) zp[2]:79 [ main::$136 ]
Allocated (was zp[2]:151) zp[2]:81 [ main::$120 ]
Allocated (was zp[2]:153) zp[2]:83 [ main::$122 ]
Allocated (was zp[1]:161) zp[1]:85 [ j#13 j#3 ]
Allocated (was zp[1]:162) zp[1]:86 [ j#16 j#5 ]
Allocated (was zp[2]:174) zp[2]:87 [ main::$151 main::$152 ]
Allocated (was zp[2]:176) zp[2]:89 [ main::$153 main::$154 ]
Allocated (was zp[2]:178) zp[2]:91 [ main::$155 main::$156 ]
Allocated (was zp[2]:163) zp[2]:93 [ main::$104 ]
Allocated (was zp[2]:165) zp[2]:95 [ main::$107 ]
Allocated (was zp[2]:167) zp[2]:97 [ main::$110 ]
Allocated (was zp[1]:169) zp[1]:99 [ k#101 k#1 ]
Allocated (was zp[2]:180) zp[2]:100 [ main::$57 ]
Allocated (was zp[2]:182) zp[2]:102 [ main::$35 ]
Allocated (was zp[1]:184) zp[1]:104 [ j#19 ]
Allocated (was zp[2]:186) zp[2]:105 [ main::$150 ]
Allocated (was zp[1]:194) zp[1]:107 [ l ]
Allocated (was zp[2]:195) zp[2]:108 [ hiscore#110 hiscore#123 ]
Allocated (was zp[2]:197) zp[2]:110 [ tu#13 tu#1 ]
Allocated (was zp[2]:199) zp[2]:112 [ main::$3 ]
ASSEMBLER BEFORE OPTIMIZATION
// File Comments
/// @file
/// Functions for performing input and output.
// Upstart
// Commodore 64 PRG executable file
.file [name="ducks-total.prg", type="prg", segments="Program"]
.segmentdef Program [segments="Basic, Code, Data"]
.segmentdef Basic [start=$0801]
.segmentdef Code [start=$80d]
.segmentdef Data [startAfter="Code"]
.segment Basic
:BasicUpstart(__start)
// Global Constants & labels
.const LIGHT_BLUE = $e
.const down = $11
.const right = $1d
.const lock = 8
.const lower = $e
.const home = $13
.const reverse_on = $12
.const brick = $e6
.const green = $1e
.const yellow = $9e
.const red = $1c
.const c = $7800
/// Color Ram
.label COLORRAM = $d800
/// Default address of screen character matrix
.label DEFAULT_SCREEN = $400
// The number of bytes on the screen
// The current cursor x-position
.label conio_cursor_x = $27
// The current cursor y-position
.label conio_cursor_y = $1d
// The current text cursor line start
.label conio_line_text = $20
// The current color cursor line start
.label conio_line_color = $1e
// The current text color
.label conio_textcolor = $22
.label l = $6b
.label m = 4
.label z = $25
.label z_1 = $14
.label n = $33
.label k = $63
.label j = $32
.label j_1 = $55
.label j_2 = $56
.label duck = $16
// [0..255] 8-bit
.label tu = $6e
// Volume to max
.label score = $2a
.label y = $28
.label time = $30
.label j_3 = $68
// Remainder after signed 8 bit division
.label rem8u = $f
.label peephole = $34
.label y_1 = $34
.label hiscore = $2a
.label hiscore_1 = $6c
.segment Code
// __start
__start: {
jmp __init1
// __start::__init1
__init1:
// [1] conio_cursor_x = 0 -- vbuz1=vbuc1
lda #0
sta.z conio_cursor_x
// [2] conio_cursor_y = 0 -- vbuz1=vbuc1
lda #0
sta.z conio_cursor_y
// [3] conio_line_text = DEFAULT_SCREEN -- pbuz1=pbuc1
lda #<DEFAULT_SCREEN
sta.z conio_line_text
lda #>DEFAULT_SCREEN
sta.z conio_line_text+1
// [4] conio_line_color = COLORRAM -- pbuz1=pbuc1
lda #<COLORRAM
sta.z conio_line_color
lda #>COLORRAM
sta.z conio_line_color+1
// [5] conio_textcolor = LIGHT_BLUE -- vbuz1=vbuc1
lda #LIGHT_BLUE
sta.z conio_textcolor
// [6] l = 0 -- vbuz1=vbuc1
lda #0
sta.z l
// [7] m = 0 -- vbuz1=vbuc1
lda #0
sta.z m
// [8] call conio_c64_init
jsr conio_c64_init
// [9] phi from __start::__init1 to __start::@1 [phi:__start::__init1->__start::@1]
__b1_from___init1:
jmp __b1
// __start::@1
__b1:
// [10] call main
jsr main
jmp __breturn
// __start::@return
__breturn:
// [11] return
rts
}
// conio_c64_init
// Set initial cursor position
conio_c64_init: {
// Position cursor at current line
.label BASIC_CURSOR_LINE = $d6
.label line = $4c
// [12] conio_c64_init::line#0 = *conio_c64_init::BASIC_CURSOR_LINE -- vbuz1=_deref_pbuc1
lda.z BASIC_CURSOR_LINE
sta.z line
// [13] if(conio_c64_init::line#0<$19) goto conio_c64_init::@2 -- vbuz1_lt_vbuc1_then_la1
lda.z line
cmp #$19
bcc __b2_from_conio_c64_init
// [15] phi from conio_c64_init to conio_c64_init::@1 [phi:conio_c64_init->conio_c64_init::@1]
__b1_from_conio_c64_init:
// [15] phi conio_c64_init::line#2 = $19-1 [phi:conio_c64_init->conio_c64_init::@1#0] -- vbuz1=vbuc1
lda #$19-1
sta.z line
jmp __b1
// [14] phi from conio_c64_init to conio_c64_init::@2 [phi:conio_c64_init->conio_c64_init::@2]
__b2_from_conio_c64_init:
jmp __b2
// conio_c64_init::@2
__b2:
// [15] phi from conio_c64_init::@2 to conio_c64_init::@1 [phi:conio_c64_init::@2->conio_c64_init::@1]
__b1_from___b2:
// [15] phi conio_c64_init::line#2 = conio_c64_init::line#0 [phi:conio_c64_init::@2->conio_c64_init::@1#0] -- register_copy
jmp __b1
// conio_c64_init::@1
__b1:
// [16] gotoxy::y#2 = conio_c64_init::line#2
// [17] call gotoxy
// [304] phi from conio_c64_init::@1 to gotoxy [phi:conio_c64_init::@1->gotoxy]
gotoxy_from___b1:
// [304] phi gotoxy::y#4 = gotoxy::y#2 [phi:conio_c64_init::@1->gotoxy#0] -- register_copy
jsr gotoxy
jmp __breturn
// conio_c64_init::@return
__breturn:
// [18] return
rts
}
// main
main: {
.label __3 = $70
.label __26 = 8
.label __29 = 5
.label __35 = $66
.label __57 = $64
.label __61 = $d
.label __66 = $b
.label __69 = $19
.label __72 = $1b
.label __78 = $10
.label __81 = 7
.label __84 = 3
.label __88 = $36
.label __92 = $37
.label __96 = $2e
.label __97 = $2e
.label __104 = $5d
.label __107 = $5f
.label __110 = $61
.label __119 = $4a
.label __120 = $51
.label __122 = $53
.label __124 = $4a
.label __125 = $4d
.label __127 = $3a
.label __128 = $3a
.label __130 = $3c
.label __131 = $3c
.label __133 = $3e
.label __134 = $3e
.label __136 = $4f
.label __138 = $40
.label __139 = $40
.label __141 = $42
.label __142 = $42
.label __144 = $44
.label __145 = $44
.label __150 = $69
.label __151 = $57
.label __152 = $57
.label __153 = $59
.label __154 = $59
.label __155 = $5b
.label __156 = $5b
.label __177 = 8
.label __179 = $38
.label __180 = $2e
// [19] *((char *) 36879) = 8 -- _deref_pbuc1=vbuc2
lda #8
sta $900f
// [20] chrout::petscii = lock -- vbuz1=vbuc1
lda #lock
sta.z chrout.petscii
// [21] call chrout
// border and black paper
jsr chrout
jmp __b50
// main::@50
__b50:
// [22] chrout::petscii = lower -- vbuz1=vbuc1
lda #lower
sta.z chrout.petscii
// [23] call chrout
//Lock UpperCase to Lowercase key
jsr chrout
jmp __b51
// main::@51
__b51:
// [24] m = 0 -- vbuz1=vbuc1
lda #0
sta.z m
jmp __b1
//Put text in Lowercase set
// main::@1
__b1:
// [25] if(m<$28) goto main::@2 -- vbuz1_lt_vbuc1_then_la1
lda.z m
cmp #$28
bcc __b2
// [26] phi from main::@1 to main::@3 [phi:main::@1->main::@3]
__b3_from___b1:
// [26] phi n#109 = 0 [phi:main::@1->main::@3#0] -- vbuz1=vbuc1
lda #0
sta.z n
// [26] phi hiscore#110 = 0 [phi:main::@1->main::@3#1] -- vwuz1=vwuc1
lda #<0
sta.z hiscore_1
lda #>0
sta.z hiscore_1+1
// [26] phi y#114 = 0 [phi:main::@1->main::@3#2] -- vwuz1=vwuc1
lda #<0
sta.z y
lda #>0
sta.z y+1
// [26] phi rem8u#127 = 0 [phi:main::@1->main::@3#3] -- vbuz1=vbuc1
lda #0
sta.z rem8u
jmp __b3
// Load udgs. From 0-->39;
// main::@3
__b3:
// [27] call clear_screen
// [321] phi from main::@3 to clear_screen [phi:main::@3->clear_screen]
clear_screen_from___b3:
// [321] phi clear_screen::n#5 = $20 [phi:main::@3->clear_screen#0] -- vbuz1=vbuc1
lda #$20
sta.z clear_screen.n
jsr clear_screen
// [28] phi from main::@3 to main::@52 [phi:main::@3->main::@52]
__b52_from___b3:
jmp __b52
// main::@52
__b52:
// [29] call textcolor
// Clear Screen with spaces & black ink
// [334] phi from main::@52 to textcolor [phi:main::@52->textcolor]
textcolor_from___b52:
// [334] phi textcolor::color#7 = 7 [phi:main::@52->textcolor#0] -- vbuz1=vbuc1
lda #7
sta.z textcolor.color
jsr textcolor
// [30] phi from main::@52 to main::@53 [phi:main::@52->main::@53]
__b53_from___b52:
jmp __b53
// main::@53
__b53:
// [31] call cputs
// [337] phi from main::@53 to cputs [phi:main::@53->cputs]
cputs_from___b53:
// [337] phi cputs::s#11 = intro [phi:main::@53->cputs#0] -- pbuz1=pbuc1
lda #<intro
sta.z cputs.s
lda #>intro
sta.z cputs.s+1
jsr cputs
// [32] phi from main::@53 to main::@54 [phi:main::@53->main::@54]
__b54_from___b53:
jmp __b54
// main::@54
__b54:
// [33] call textcolor
// Yellow ink
// [334] phi from main::@54 to textcolor [phi:main::@54->textcolor]
textcolor_from___b54:
// [334] phi textcolor::color#7 = 1 [phi:main::@54->textcolor#0] -- vbuz1=vbuc1
lda #1
sta.z textcolor.color
jsr textcolor
// [34] phi from main::@54 to main::@55 [phi:main::@54->main::@55]
__b55_from___b54:
jmp __b55
// main::@55
__b55:
// [35] call cputs
// [337] phi from main::@55 to cputs [phi:main::@55->cputs]
cputs_from___b55:
// [337] phi cputs::s#11 = levels [phi:main::@55->cputs#0] -- pbuz1=pbuc1
lda #<levels
sta.z cputs.s
lda #>levels
sta.z cputs.s+1
jsr cputs
// [36] phi from main::@55 to main::@56 [phi:main::@55->main::@56]
__b56_from___b55:
jmp __b56
// main::@56
__b56:
// [37] call textcolor
// White
// [334] phi from main::@56 to textcolor [phi:main::@56->textcolor]
textcolor_from___b56:
// [334] phi textcolor::color#7 = 2 [phi:main::@56->textcolor#0] -- vbuz1=vbuc1
lda #2
sta.z textcolor.color
jsr textcolor
// [38] phi from main::@56 to main::@57 [phi:main::@56->main::@57]
__b57_from___b56:
jmp __b57
// main::@57
__b57:
// [39] call cputs
// [337] phi from main::@57 to cputs [phi:main::@57->cputs]
cputs_from___b57:
// [337] phi cputs::s#11 = foot [phi:main::@57->cputs#0] -- pbuz1=pbuc1
lda #<foot
sta.z cputs.s
lda #>foot
sta.z cputs.s+1
jsr cputs
jmp __b4
// Red
// main::@4
__b4:
// [40] l = *((char *) 197) -- vbuz1=_deref_pbuc1
lda.z $c5
sta.z l
// [41] l = ++ l -- vbuz1=_inc_vbuz1
inc.z l
// [42] if(l>=5+1) goto main::@4 -- vbuz1_ge_vbuc1_then_la1
lda.z l
cmp #5+1
bcs __b4
// [43] phi from main::@4 to main::@5 [phi:main::@4->main::@5]
__b5_from___b4:
jmp __b5
// main::@5
__b5:
// [44] call clear_screen
// wait for 1-3-5-7-9 keys only
// [321] phi from main::@5 to clear_screen [phi:main::@5->clear_screen]
clear_screen_from___b5:
// [321] phi clear_screen::n#5 = 4 [phi:main::@5->clear_screen#0] -- vbuz1=vbuc1
lda #4
sta.z clear_screen.n
jsr clear_screen
jmp __b58
// main::@58
__b58:
// [45] *((char *) 36869) = $ff -- _deref_pbuc1=vbuc2
lda #$ff
sta $9005
// [46] chrout::petscii = reverse_on -- vbuz1=vbuc1
lda #reverse_on
sta.z chrout.petscii
// [47] call chrout
// Graphic mode
jsr chrout
jmp __b59
// main::@59
__b59:
// [48] chrout::petscii = red -- vbuz1=vbuc1
lda #red
sta.z chrout.petscii
// [49] call chrout
jsr chrout
jmp __b60
// main::@60
__b60:
// [50] chrout::petscii = down -- vbuz1=vbuc1
lda #down
sta.z chrout.petscii
// [51] call chrout
jsr chrout
// [52] phi from main::@60 to main::@6 [phi:main::@60->main::@6]
__b6_from___b60:
// [52] phi n#89 = n#109 [phi:main::@60->main::@6#0] -- register_copy
// [52] phi k#101 = 1 [phi:main::@60->main::@6#1] -- vbuz1=vbuc1
lda #1
sta.z k
jmp __b6
//for (z=1;z<23;z++) { POKE(7680+z*22,230);POKE(c+7680+z*22,2); POKE(7679+z*22,230); POKE(c+7679+z*22,2); } // 23 rows * 22 columns (7680 to 8185). 506 positions.
//k=1; do { chrout(brick); POKE(211,20); chrout(brick); ++k; } while (k<23);
//for (k=1;k<22;k++) { chrout(brick); POKE(211,22); chrout(brick); }; // 23 rows * 22 columns (7680 to 8185). 506 positions.
// main::@6
__b6:
// [53] if(k#101<$16) goto main::@7 -- vbuz1_lt_vbuc1_then_la1
lda.z k
cmp #$16
bcc __b7
jmp __b8
// main::@8
__b8:
// [54] chrout::petscii = brick -- vbuz1=vbuc1
lda #brick
sta.z chrout.petscii
// [55] call chrout
// 23 rows * 22 columns (7680 to 8185). 506 positions.
jsr chrout
jmp __b61
// main::@61
__b61:
// [56] *((char *) 8185) = brick -- _deref_pbuc1=vbuc2
lda #brick
sta $1ff9
// [57] *((char *)$1ff9+c) = 2 -- _deref_pbuc1=vbuc2
lda #2
sta $1ff9+c
// [58] chrout::petscii = home -- vbuz1=vbuc1
lda #home
sta.z chrout.petscii
// [59] call chrout
//last brick from last line (#23) to avoid scrolling
jsr chrout
jmp __b62
// main::@62
__b62:
// [60] if(l<1+1) goto main::@12 -- vbuz1_lt_vbuc1_then_la1
lda.z l
cmp #1+1
bcc __b12_from___b62
// [61] phi from main::@62 to main::@13 [phi:main::@62->main::@13]
__b13_from___b62:
// [61] phi z#28 = 1 [phi:main::@62->main::@13#0] -- vwuz1=vbuc1
lda #<1
sta.z z_1
lda #>1
sta.z z_1+1
jmp __b13
// [61] phi from main::@73 to main::@13 [phi:main::@73->main::@13]
__b13_from___b73:
// [61] phi z#28 = z#9 [phi:main::@73->main::@13#0] -- register_copy
jmp __b13
// main::@13
__b13:
// [62] random::k#0 = 7 - l -- vbuz1=vbuc1_minus_vbuz2
lda #7
sec
sbc.z l
sta.z random.k
// [63] main::$177 = l << 1 -- vbuz1=vbuz2_rol_1
lda.z l
asl
sta.z __177
// [64] main::$26 = main::$177 + l -- vbuz1=vbuz1_plus_vbuz2
lda.z __26
clc
adc.z l
sta.z __26
// [65] random::n#0 = $1a - main::$26 -- vbuz1=vbuc1_minus_vbuz1
lda #$1a
sec
sbc.z random.n
sta.z random.n
// [66] call random
// Write differential random bricks depending on 'l' level choosen
// [345] phi from main::@13 to random [phi:main::@13->random]
random_from___b13:
// [345] phi random::n#4 = random::n#0 [phi:main::@13->random#0] -- register_copy
// [345] phi random::k#4 = random::k#0 [phi:main::@13->random#1] -- register_copy
jsr random
jmp __b71
// main::@71
__b71:
// [67] main::$29 = z#28 + m -- vwuz1=vwuz2_plus_vbuz3
lda.z m
clc
adc.z z_1
sta.z __29
lda #0
adc.z z_1+1
sta.z __29+1
// [68] if(main::$29<=$1f9) goto main::@14 -- vwuz1_le_vwuc1_then_la1
lda.z __29+1
cmp #>$1f9
bne !+
lda.z __29
cmp #<$1f9
!:
bcc __b14_from___b71
beq __b14_from___b71
// [69] phi from main::@71 main::@73 to main::@12 [phi:main::@71/main::@73->main::@12]
__b12_from___b71:
__b12_from___b73:
// [69] phi z#128 = z#28 [phi:main::@71/main::@73->main::@12#0] -- register_copy
jmp __b12
// [69] phi from main::@62 to main::@12 [phi:main::@62->main::@12]
__b12_from___b62:
// [69] phi z#128 = 1 [phi:main::@62->main::@12#0] -- vwuz1=vbuc1
lda #<1
sta.z z_1
lda #>1
sta.z z_1+1
jmp __b12
// main::@12
__b12:
// [70] *((char *) 36878) = $f -- _deref_pbuc1=vbuc2
lda #$f
sta $900e
// [71] chrout::petscii = home -- vbuz1=vbuc1
lda #home
sta.z chrout.petscii
// [72] call chrout
// Duck #1
jsr chrout
jmp __b65
// main::@65
__b65:
// [73] chrout::petscii = yellow -- vbuz1=vbuc1
lda #yellow
sta.z chrout.petscii
// [74] call chrout
jsr chrout
jmp __b66
// main::@66
__b66:
// [75] chrout::petscii = $50 -- vbuz1=vbuc1
lda #$50
sta.z chrout.petscii
// [76] call chrout
jsr chrout
jmp __b67
// main::@67
__b67:
// [77] chrout::petscii = $54 -- vbuz1=vbuc1
lda #$54
sta.z chrout.petscii
// [78] call chrout
jsr chrout
jmp __b68
// main::@68
__b68:
// [79] chrout::petscii = $53 -- vbuz1=vbuc1
lda #$53
sta.z chrout.petscii
// [80] call chrout
jsr chrout
jmp __b69
// main::@69
__b69:
// [81] chrout::petscii = $3a -- vbuz1=vbuc1
lda #$3a
sta.z chrout.petscii
// [82] call chrout
jsr chrout
jmp __b70
// main::@70
__b70:
// [83] *((char *) 211) = $12 -- _deref_pbuc1=vbuc2
lda #$12
sta.z $d3
// [84] phi from main::@70 to main::@17 [phi:main::@70->main::@17]
__b17_from___b70:
// [84] phi j#13 = 0 [phi:main::@70->main::@17#0] -- vbuz1=vbuc1
lda #0
sta.z j_1
jmp __b17
// jump to Column 18
// main::@17
__b17:
// [85] if(j#13<4) goto main::@18 -- vbuz1_lt_vbuc1_then_la1
lda.z j_1
cmp #4
bcc __b18
// [86] phi from main::@17 to main::@19 [phi:main::@17->main::@19]
__b19_from___b17:
jmp __b19
// main::@19
__b19:
// [87] call write_score
// Write 'TM:9', yellow
// [351] phi from main::@19 to write_score [phi:main::@19->write_score]
write_score_from___b19:
// [351] phi score#13 = 0 [phi:main::@19->write_score#0] -- vwuz1=vbuc1
lda #<0
sta.z score
lda #>0
sta.z score+1
jsr write_score
jmp __b75
// main::@75
__b75:
// [88] chrout::petscii = home -- vbuz1=vbuc1
lda #home
sta.z chrout.petscii
// [89] call chrout
// Write Score (yellow)
jsr chrout
jmp __b76
// main::@76
__b76:
// [90] chrout::petscii = green -- vbuz1=vbuc1
lda #green
sta.z chrout.petscii
// [91] call chrout
jsr chrout
jmp __b77
// main::@77
__b77:
// [92] *((char *) 211) = $a -- _deref_pbuc1=vbuc2
lda #$a
sta.z $d3
// [93] phi from main::@77 to main::@20 [phi:main::@77->main::@20]
__b20_from___b77:
// [93] phi j#16 = 0 [phi:main::@77->main::@20#0] -- vbuz1=vbuc1
lda #0
sta.z j_2
jmp __b20
// Jump to column 10
// main::@20
__b20:
// [94] if(j#16<5) goto main::@21 -- vbuz1_lt_vbuc1_then_la1
lda.z j_2
cmp #5
bcc __b21
// [95] phi from main::@20 to main::@22 [phi:main::@20->main::@22]
__b22_from___b20:
// [95] phi n#52 = n#89 [phi:main::@20->main::@22#0] -- register_copy
// [95] phi peephole#52 = $1f1f [phi:main::@20->main::@22#1] -- vwuz1=vwuc1
lda #<$1f1f
sta.z peephole
lda #>$1f1f
sta.z peephole+1
// [95] phi z#102 = z#128 [phi:main::@20->main::@22#2] -- register_copy
// [95] phi y#49 = y#114 [phi:main::@20->main::@22#3] -- register_copy
// [95] phi rem8u#48 = rem8u#127 [phi:main::@20->main::@22#4] -- register_copy
// [95] phi tu#13 = 1 [phi:main::@20->main::@22#5] -- vwuz1=vbuc1
lda #<1
sta.z tu
lda #>1
sta.z tu+1
jmp __b22
// Write 'DUCK', green
// [95] phi from main::@87 to main::@22 [phi:main::@87->main::@22]
__b22_from___b87:
// [95] phi n#52 = n#20 [phi:main::@87->main::@22#0] -- register_copy
// [95] phi peephole#52 = peephole#12 [phi:main::@87->main::@22#1] -- register_copy
// [95] phi z#102 = z#25 [phi:main::@87->main::@22#2] -- register_copy
// [95] phi y#49 = y#18 [phi:main::@87->main::@22#3] -- register_copy
// [95] phi rem8u#48 = rem8u#25 [phi:main::@87->main::@22#4] -- register_copy
// [95] phi tu#13 = tu#1 [phi:main::@87->main::@22#5] -- register_copy
jmp __b22
// main::@22
__b22:
// [96] chrout::petscii = home -- vbuz1=vbuc1
lda #home
sta.z chrout.petscii
// [97] call chrout
jsr chrout
jmp __b79
// main::@79
__b79:
// [98] chrout::petscii = green -- vbuz1=vbuc1
lda #green
sta.z chrout.petscii
// [99] call chrout
jsr chrout
jmp __b80
// main::@80
__b80:
// [100] chrout::petscii = reverse_on -- vbuz1=vbuc1
lda #reverse_on
sta.z chrout.petscii
// [101] call chrout
jsr chrout
jmp __b81
// main::@81
__b81:
// [102] *((char *) 211) = $f -- _deref_pbuc1=vbuc2
lda #$f
sta.z $d3
// [103] if(tu#13<$a) goto main::@23 -- vwuz1_lt_vbuc1_then_la1
// Jump to column 15
lda.z tu+1
bne !+
lda.z tu
cmp #$a
bcc __b23
!:
jmp __b45
// main::@45
__b45:
// [104] chrout::petscii = $31 -- vbuz1=vbuc1
lda #$31
sta.z chrout.petscii
// [105] call chrout
jsr chrout
jmp __b82
// main::@82
__b82:
// [106] chrout::petscii = $30 -- vbuz1=vbuc1
lda #$30
sta.z chrout.petscii
// [107] call chrout
jsr chrout
// [108] phi from main::@103 main::@104 main::@105 main::@106 main::@23 main::@82 main::@84 to main::@24 [phi:main::@103/main::@104/main::@105/main::@106/main::@23/main::@82/main::@84->main::@24]
__b24_from___b103:
__b24_from___b104:
__b24_from___b105:
__b24_from___b106:
__b24_from___b23:
__b24_from___b82:
__b24_from___b84:
jmp __b24
// Write duck number
// main::@24
__b24:
// [109] call random
// [345] phi from main::@24 to random [phi:main::@24->random]
random_from___b24:
// [345] phi random::n#4 = $ff [phi:main::@24->random#0] -- vbuz1=vbuc1
lda #$ff
sta.z random.n
// [345] phi random::k#4 = 0 [phi:main::@24->random#1] -- vbuz1=vbuc1
lda #0
sta.z random.k
jsr random
jmp __b83
// main::@83
__b83:
// [110] duck#0 = m -- vwuz1=vbuz2
lda.z m
sta.z duck
lda #0
sta.z duck+1
// [111] call random
// [345] phi from main::@83 to random [phi:main::@83->random]
random_from___b83:
// [345] phi random::n#4 = $ff [phi:main::@83->random#0] -- vbuz1=vbuc1
lda #$ff
sta.z random.n
// [345] phi random::k#4 = 0 [phi:main::@83->random#1] -- vbuz1=vbuc1
lda #0
sta.z random.k
jsr random
jmp __b84
// main::@84
__b84:
// [112] main::$61 = m + $1e15 -- vwuz1=vbuz2_plus_vwuc1
lda.z m
clc
adc #<$1e15
sta.z __61
lda #>$1e15
adc #0
sta.z __61+1
// [113] duck#1 = main::$61 + duck#0 -- vwuz1=vwuz2_plus_vwuz1
clc
lda.z duck
adc.z __61
sta.z duck
lda.z duck+1
adc.z __61+1
sta.z duck+1
// [114] main::$66 = duck#1 + 1 -- vwuz1=vwuz2_plus_1
clc
lda.z duck
adc #1
sta.z __66
lda.z duck+1
adc #0
sta.z __66+1
// [115] main::$69 = duck#1 + $16 -- vwuz1=vwuz2_plus_vbuc1
lda #$16
clc
adc.z duck
sta.z __69
lda #0
adc.z duck+1
sta.z __69+1
// [116] main::$72 = duck#1 + $17 -- vwuz1=vwuz2_plus_vbuc1
lda #$17
clc
adc.z duck
sta.z __72
lda #0
adc.z duck+1
sta.z __72+1
// [117] if(duck#1>$1fe3) goto main::@24 -- vwuz1_gt_vwuc1_then_la1
lda #>$1fe3
cmp.z duck+1
bcc __b24_from___b84
bne !+
lda #<$1fe3
cmp.z duck
bcc __b24_from___b84
!:
jmp __b106
// main::@106
__b106:
// [118] if(*((char *)duck#1)==brick) goto main::@24 -- _deref_pbuz1_eq_vbuc1_then_la1
lda #brick
ldy #0
cmp (duck),y
beq __b24_from___b106
jmp __b105
// main::@105
__b105:
// [119] if(*((char *)main::$66)==brick) goto main::@24 -- _deref_pbuz1_eq_vbuc1_then_la1
lda #brick
ldy #0
cmp (__66),y
beq __b24_from___b105
jmp __b104
// main::@104
__b104:
// [120] if(*((char *)main::$69)==brick) goto main::@24 -- _deref_pbuz1_eq_vbuc1_then_la1
lda #brick
ldy #0
cmp (__69),y
beq __b24_from___b104
jmp __b103
// main::@103
__b103:
// [121] if(*((char *)main::$72)==brick) goto main::@24 -- _deref_pbuz1_eq_vbuc1_then_la1
lda #brick
ldy #0
cmp (__72),y
beq __b24_from___b103
// [122] phi from main::@103 to main::@25 [phi:main::@103->main::@25]
__b25_from___b103:
jmp __b25
// main::@25
__b25:
// [123] call chrono_restart
jsr chrono_restart
// [124] phi from main::@25 to main::@26 [phi:main::@25->main::@26]
__b26_from___b25:
// [124] phi n#20 = n#52 [phi:main::@25->main::@26#0] -- register_copy
// [124] phi peephole#12 = peephole#52 [phi:main::@25->main::@26#1] -- register_copy
// [124] phi z#100 = z#102 [phi:main::@25->main::@26#2] -- register_copy
// [124] phi y#18 = y#49 [phi:main::@25->main::@26#3] -- register_copy
// [124] phi rem8u#25 = rem8u#48 [phi:main::@25->main::@26#4] -- register_copy
// [124] phi score#19 = score#38 [phi:main::@25->main::@26#5] -- register_copy
// [124] phi time#11 = 0 [phi:main::@25->main::@26#6] -- vwuz1=vbuc1
lda #<0
sta.z time
lda #>0
sta.z time+1
jmp __b26
// main::@26
__b26:
// [125] if(time#11<$a) goto main::@27 -- vwuz1_lt_vbuc1_then_la1
lda.z time+1
bne !+
lda.z time
cmp #$a
bcc __b27_from___b26
!:
jmp __b28
// main::@28
__b28:
// [126] tu#1 = ++ tu#13 -- vwuz1=_inc_vwuz1
inc.z tu
bne !+
inc.z tu+1
!:
// [127] score#4 = score#19 - $a -- vwuz1=vwuz1_minus_vbuc1
sec
lda.z score
sbc #$a
sta.z score
lda.z score+1
sbc #0
sta.z score+1
// [128] call write_score
// [351] phi from main::@28 to write_score [phi:main::@28->write_score]
write_score_from___b28:
// [351] phi score#13 = score#4 [phi:main::@28->write_score#0] -- register_copy
jsr write_score
jmp __b86
// main::@86
__b86:
// [129] *((char *) 36877) = $82 -- _deref_pbuc1=vbuc2
lda #$82
sta $900d
// [130] call wait
// [381] phi from main::@86 to wait [phi:main::@86->wait]
wait_from___b86:
// [381] phi z#53 = z#100 [phi:main::@86->wait#0] -- register_copy
// [381] phi wait::n#6 = $14 [phi:main::@86->wait#1] -- vbuz1=vbuc1
lda #$14
sta.z wait.n
jsr wait
jmp __b87
// main::@87
__b87:
// [131] *((char *) 36877) = 0 -- _deref_pbuc1=vbuc2
lda #0
sta $900d
// [132] main::$150 = duck#1 + c -- vwuz1=vwuz2_plus_vwuc1
lda.z duck
clc
adc #<c
sta.z __150
lda.z duck+1
adc #>c
sta.z __150+1
// [133] *((char *)main::$150) = 0 -- _deref_pbuz1=vbuc1
lda #0
ldy #0
sta (__150),y
// [134] main::$151 = duck#1 -- vwuz1=vwuz2
lda.z duck
sta.z __151
lda.z duck+1
sta.z __151+1
// [135] main::$152 = main::$151 + 1+c -- vwuz1=vwuz1_plus_vwuc1
lda.z __152
clc
adc #<1+c
sta.z __152
lda.z __152+1
adc #>1+c
sta.z __152+1
// [136] *((char *)main::$152) = 0 -- _deref_pbuz1=vbuc1
lda #0
ldy #0
sta (__152),y
// [137] main::$153 = duck#1 -- vwuz1=vwuz2
lda.z duck
sta.z __153
lda.z duck+1
sta.z __153+1
// [138] main::$154 = main::$153 + $16+c -- vwuz1=vwuz1_plus_vwuc1
lda.z __154
clc
adc #<$16+c
sta.z __154
lda.z __154+1
adc #>$16+c
sta.z __154+1
// [139] *((char *)main::$154) = 0 -- _deref_pbuz1=vbuc1
lda #0
ldy #0
sta (__154),y
// [140] main::$155 = duck#1 -- vwuz1=vwuz2
lda.z duck
sta.z __155
lda.z duck+1
sta.z __155+1
// [141] main::$156 = main::$155 + $17+c -- vwuz1=vwuz1_plus_vwuc1
lda.z __156
clc
adc #<$17+c
sta.z __156
lda.z __156+1
adc #>$17+c
sta.z __156+1
// [142] *((char *)main::$156) = 0 -- _deref_pbuz1=vbuc1
lda #0
ldy #0
sta (__156),y
// [143] if(tu#1<$b) goto main::@22 -- vwuz1_lt_vbuc1_then_la1
lda.z tu+1
bne !+
lda.z tu
cmp #$b
bcc __b22_from___b87
!:
// [144] phi from main::@87 to main::@44 [phi:main::@87->main::@44]
__b44_from___b87:
jmp __b44
// main::@44
__b44:
// [145] call clear_screen
// 10 ducks
// [321] phi from main::@44 to clear_screen [phi:main::@44->clear_screen]
clear_screen_from___b44:
// [321] phi clear_screen::n#5 = 4 [phi:main::@44->clear_screen#0] -- vbuz1=vbuc1
lda #4
sta.z clear_screen.n
jsr clear_screen
jmp __b91
// main::@91
__b91:
// [146] *((char *) 36869) = $f0 -- _deref_pbuc1=vbuc2
lda #$f0
sta $9005
// [147] chrout::petscii = lower -- vbuz1=vbuc1
lda #lower
sta.z chrout.petscii
// [148] call chrout
jsr chrout
// [149] phi from main::@91 to main::@92 [phi:main::@91->main::@92]
__b92_from___b91:
jmp __b92
// main::@92
__b92:
// [150] call textcolor
// Return to text mode, lowcase
// [334] phi from main::@92 to textcolor [phi:main::@92->textcolor]
textcolor_from___b92:
// [334] phi textcolor::color#7 = 7 [phi:main::@92->textcolor#0] -- vbuz1=vbuc1
lda #7
sta.z textcolor.color
jsr textcolor
// [151] phi from main::@92 to main::@93 [phi:main::@92->main::@93]
__b93_from___b92:
jmp __b93
// main::@93
__b93:
// [152] call cputs
// [337] phi from main::@93 to cputs [phi:main::@93->cputs]
cputs_from___b93:
// [337] phi cputs::s#11 = game_over [phi:main::@93->cputs#0] -- pbuz1=pbuc1
lda #<game_over
sta.z cputs.s
lda #>game_over
sta.z cputs.s+1
jsr cputs
// [153] phi from main::@93 to main::@94 [phi:main::@93->main::@94]
__b94_from___b93:
jmp __b94
// main::@94
__b94:
// [154] call textcolor
// Yellow
// [334] phi from main::@94 to textcolor [phi:main::@94->textcolor]
textcolor_from___b94:
// [334] phi textcolor::color#7 = 2 [phi:main::@94->textcolor#0] -- vbuz1=vbuc1
lda #2
sta.z textcolor.color
jsr textcolor
// [155] phi from main::@94 to main::@95 [phi:main::@94->main::@95]
__b95_from___b94:
jmp __b95
// main::@95
__b95:
// [156] call cputs
// [337] phi from main::@95 to cputs [phi:main::@95->cputs]
cputs_from___b95:
// [337] phi cputs::s#11 = your_score [phi:main::@95->cputs#0] -- pbuz1=pbuc1
lda #<your_score
sta.z cputs.s
lda #>your_score
sta.z cputs.s+1
jsr cputs
// [157] phi from main::@95 to main::@96 [phi:main::@95->main::@96]
__b96_from___b95:
jmp __b96
// main::@96
__b96:
// [158] call cputs
// [337] phi from main::@96 to cputs [phi:main::@96->cputs]
cputs_from___b96:
// [337] phi cputs::s#11 = buffer [phi:main::@96->cputs#0] -- pbuz1=pbuc1
lda #<buffer
sta.z cputs.s
lda #>buffer
sta.z cputs.s+1
jsr cputs
// [159] phi from main::@96 to main::@97 [phi:main::@96->main::@97]
__b97_from___b96:
jmp __b97
// main::@97
__b97:
// [160] call textcolor
// Red
// [334] phi from main::@97 to textcolor [phi:main::@97->textcolor]
textcolor_from___b97:
// [334] phi textcolor::color#7 = 3 [phi:main::@97->textcolor#0] -- vbuz1=vbuc1
lda #3
sta.z textcolor.color
jsr textcolor
// [161] phi from main::@97 to main::@98 [phi:main::@97->main::@98]
__b98_from___b97:
jmp __b98
// main::@98
__b98:
// [162] call cputs
// [337] phi from main::@98 to cputs [phi:main::@98->cputs]
cputs_from___b98:
// [337] phi cputs::s#11 = high_score [phi:main::@98->cputs#0] -- pbuz1=pbuc1
lda #<high_score
sta.z cputs.s
lda #>high_score
sta.z cputs.s+1
jsr cputs
jmp __b99
// main::@99
__b99:
// [163] if(score#38<=hiscore#110) goto main::@114 -- vwuz1_le_vwuz2_then_la1
lda.z score+1
cmp.z hiscore_1+1
bne !+
lda.z score
cmp.z hiscore_1
beq __b114
!:
bcc __b114
// [165] phi from main::@114 main::@99 to main::@46 [phi:main::@114/main::@99->main::@46]
__b46_from___b114:
__b46_from___b99:
// [165] phi hiscore#19 = hiscore#124 [phi:main::@114/main::@99->main::@46#0] -- register_copy
jmp __b46
// main::@114
__b114:
// [164] hiscore#124 = hiscore#110 -- vwuz1=vwuz2
lda.z hiscore_1
sta.z hiscore
lda.z hiscore_1+1
sta.z hiscore+1
jmp __b46_from___b114
// main::@46
__b46:
// [166] utoa::value#2 = hiscore#19 -- vwuz1=vwuz2
lda.z hiscore
sta.z utoa.value
lda.z hiscore+1
sta.z utoa.value+1
// [167] call utoa
// [390] phi from main::@46 to utoa [phi:main::@46->utoa]
utoa_from___b46:
// [390] phi utoa::value#10 = utoa::value#2 [phi:main::@46->utoa#0] -- register_copy
jsr utoa
// [168] phi from main::@46 to main::@100 [phi:main::@46->main::@100]
__b100_from___b46:
jmp __b100
// main::@100
__b100:
// [169] call cputs
// [337] phi from main::@100 to cputs [phi:main::@100->cputs]
cputs_from___b100:
// [337] phi cputs::s#11 = buffer [phi:main::@100->cputs#0] -- pbuz1=pbuc1
lda #<buffer
sta.z cputs.s
lda #>buffer
sta.z cputs.s+1
jsr cputs
// [170] phi from main::@100 to main::@101 [phi:main::@100->main::@101]
__b101_from___b100:
jmp __b101
// main::@101
__b101:
// [171] call textcolor
// Cyan
// [334] phi from main::@101 to textcolor [phi:main::@101->textcolor]
textcolor_from___b101:
// [334] phi textcolor::color#7 = 1 [phi:main::@101->textcolor#0] -- vbuz1=vbuc1
lda #1
sta.z textcolor.color
jsr textcolor
// [172] phi from main::@101 to main::@102 [phi:main::@101->main::@102]
__b102_from___b101:
jmp __b102
// main::@102
__b102:
// [173] call cputs
// [337] phi from main::@102 to cputs [phi:main::@102->cputs]
cputs_from___b102:
// [337] phi cputs::s#11 = play_again [phi:main::@102->cputs#0] -- pbuz1=pbuc1
lda #<play_again
sta.z cputs.s
lda #>play_again
sta.z cputs.s+1
jsr cputs
jmp __b47
// white
// main::@47
__b47:
// [174] j#19 = *((char *) 197) -- vbuz1=_deref_pbuc1
lda.z $c5
sta.z j_3
// [175] if(j#19==$b) goto main::@48 -- vbuz1_eq_vbuc1_then_la1
lda #$b
cmp.z j_3
beq __b48
jmp __b112
// main::@112
__b112:
// [176] if(j#19!=$1c) goto main::@47 -- vbuz1_neq_vbuc1_then_la1
lda #$1c
cmp.z j_3
bne __b47
jmp __b48
// main::@48
__b48:
// [177] if(j#19==$b) goto main::@113 -- vbuz1_eq_vbuc1_then_la1
lda #$b
cmp.z j_3
beq __b113
jmp __b49
// main::@49
__b49:
// asm { jsr$FD22 }
// N pressed. Exit game
jsr $fd22
jmp __breturn
// main::@return
__breturn:
// [179] return
rts
// main::@113
__b113:
// [180] hiscore#123 = hiscore#19 -- vwuz1=vwuz2
lda.z hiscore
sta.z hiscore_1
lda.z hiscore+1
sta.z hiscore_1+1
// [26] phi from main::@113 to main::@3 [phi:main::@113->main::@3]
__b3_from___b113:
// [26] phi n#109 = n#20 [phi:main::@113->main::@3#0] -- register_copy
// [26] phi hiscore#110 = hiscore#123 [phi:main::@113->main::@3#1] -- register_copy
// [26] phi y#114 = y#18 [phi:main::@113->main::@3#2] -- register_copy
// [26] phi rem8u#127 = rem8u#25 [phi:main::@113->main::@3#3] -- register_copy
jmp __b3
// [181] phi from main::@26 to main::@27 [phi:main::@26->main::@27]
__b27_from___b26:
jmp __b27
// main::@27
__b27:
// [182] call read_chrono
jsr read_chrono
jmp __b85
// main::@85
__b85:
// [183] m = *((char *) 37151) -- vbuz1=_deref_pbuc1
// Joystick routine
lda $911f
sta.z m
// [184] *((char *) 37154) = $7f -- _deref_pbuc1=vbuc2
lda #$7f
sta $9122
// [185] n#14 = *((char *) 37152) -- vbuz1=_deref_pbuc1
lda $9120
sta.z n
// [186] *((char *) 37154) = $ff -- _deref_pbuc1=vbuc2
lda #$ff
sta $9122
// [187] main::$78 = $10 & m -- vbuz1=vbuc1_band_vbuz2
lda #$10
and.z m
sta.z __78
// [188] if(main::$78!=0) goto main::@29 -- vbuz1_neq_0_then_la1
lda.z __78
bne __b29_from___b85
jmp __b37
// main::@37
__b37:
// [189] y#0 = -- y#18 -- vwuz1=_dec_vwuz1
lda.z y
bne !+
dec.z y+1
!:
dec.z y
// [190] phi from main::@37 main::@85 to main::@29 [phi:main::@37/main::@85->main::@29]
__b29_from___b37:
__b29_from___b85:
// [190] phi y#10 = y#0 [phi:main::@37/main::@85->main::@29#0] -- register_copy
jmp __b29
// main::@29
__b29:
// [191] main::$81 = $80 & n#14 -- vbuz1=vbuc1_band_vbuz2
lda #$80
and.z n
sta.z __81
// [192] if(main::$81!=0) goto main::@30 -- vbuz1_neq_0_then_la1
lda.z __81
bne __b30_from___b29
jmp __b38
// main::@38
__b38:
// [193] y#1 = ++ y#10 -- vwuz1=_inc_vwuz1
inc.z y
bne !+
inc.z y+1
!:
// [194] phi from main::@29 main::@38 to main::@30 [phi:main::@29/main::@38->main::@30]
__b30_from___b29:
__b30_from___b38:
// [194] phi y#11 = y#10 [phi:main::@29/main::@38->main::@30#0] -- register_copy
jmp __b30
// main::@30
__b30:
// [195] main::$84 = 4 & m -- vbuz1=vbuc1_band_vbuz2
lda #4
and.z m
sta.z __84
// [196] if(main::$84!=0) goto main::@31 -- vbuz1_neq_0_then_la1
lda.z __84
bne __b31_from___b30
jmp __b39
// main::@39
__b39:
// [197] y#2 = y#11 - $16 -- vwuz1=vwuz1_minus_vbuc1
sec
lda.z y
sbc #$16
sta.z y
lda.z y+1
sbc #0
sta.z y+1
// [198] phi from main::@30 main::@39 to main::@31 [phi:main::@30/main::@39->main::@31]
__b31_from___b30:
__b31_from___b39:
// [198] phi y#12 = y#11 [phi:main::@30/main::@39->main::@31#0] -- register_copy
jmp __b31
// main::@31
__b31:
// [199] main::$88 = 8 & m -- vbuz1=vbuc1_band_vbuz2
lda #8
and.z m
sta.z __88
// [200] if(main::$88!=0) goto main::@32 -- vbuz1_neq_0_then_la1
lda.z __88
bne __b32_from___b31
jmp __b40
// main::@40
__b40:
// [201] y#3 = y#12 + $16 -- vwuz1=vwuz1_plus_vbuc1
lda #$16
clc
adc.z y
sta.z y
bcc !+
inc.z y+1
!:
// [202] phi from main::@31 main::@40 to main::@32 [phi:main::@31/main::@40->main::@32]
__b32_from___b31:
__b32_from___b40:
// [202] phi y#13 = y#12 [phi:main::@31/main::@40->main::@32#0] -- register_copy
jmp __b32
// main::@32
__b32:
// [203] main::$92 = $20 & m -- vbuz1=vbuc1_band_vbuz2
lda #$20
and.z m
sta.z __92
// [204] if(main::$92!=0) goto main::@33 -- vbuz1_neq_0_then_la1
lda.z __92
bne __b33_from___b32
jmp __b41
// main::@41
__b41:
// [205] *((char *) 36877) = $82 -- _deref_pbuc1=vbuc2
lda #$82
sta $900d
// [206] if(peephole#12!=duck#1) goto main::@34 -- vwuz1_neq_vwuz2_then_la1
lda.z peephole+1
cmp.z duck+1
bne __b34
lda.z peephole
cmp.z duck
bne __b34
jmp __b42
// main::@42
__b42:
// [207] main::$96 = $c - div16u8u::return#2 -- vwuz1=vwuc1_minus_vwuz2
sec
lda #<$c
sbc.z div16u8u.return_1
sta.z __96
lda #>$c
sbc.z div16u8u.return_1+1
sta.z __96+1
// [208] main::$179 = main::$96 << 2 -- vwuz1=vwuz2_rol_2
lda.z __96
asl
sta.z __179
lda.z __96+1
rol
sta.z __179+1
asl.z __179
rol.z __179+1
// [209] main::$180 = main::$179 + main::$96 -- vwuz1=vwuz2_plus_vwuz1
clc
lda.z __180
adc.z __179
sta.z __180
lda.z __180+1
adc.z __179+1
sta.z __180+1
// [210] main::$97 = main::$180 << 1 -- vwuz1=vwuz1_rol_1
asl.z __97
rol.z __97+1
// [211] score#8 = score#19 + main::$97 -- vwuz1=vwuz1_plus_vwuz2
clc
lda.z score
adc.z __97
sta.z score
lda.z score+1
adc.z __97+1
sta.z score+1
// [212] call wait
// [381] phi from main::@42 to wait [phi:main::@42->wait]
wait_from___b42:
// [381] phi z#53 = z#100 [phi:main::@42->wait#0] -- register_copy
// [381] phi wait::n#6 = $a [phi:main::@42->wait#1] -- vbuz1=vbuc1
lda #$a
sta.z wait.n
jsr wait
// [213] phi from main::@42 to main::@35 [phi:main::@42->main::@35]
__b35_from___b42:
// [213] phi score#81 = score#8 [phi:main::@42->main::@35#0] -- register_copy
// [213] phi time#38 = $a [phi:main::@42->main::@35#1] -- vwuz1=vbuc1
lda #<$a
sta.z time
lda #>$a
sta.z time+1
jmp __b35
// main::@35
__b35:
// [214] *((char *) 36877) = 0 -- _deref_pbuc1=vbuc2
lda #0
sta $900d
// [215] phi from main::@32 main::@35 to main::@33 [phi:main::@32/main::@35->main::@33]
__b33_from___b32:
__b33_from___b35:
// [215] phi score#43 = score#19 [phi:main::@32/main::@35->main::@33#0] -- register_copy
// [215] phi time#17 = div16u8u::return#2 [phi:main::@32/main::@35->main::@33#1] -- register_copy
// [215] phi z#48 = z#100 [phi:main::@32/main::@35->main::@33#2] -- register_copy
jmp __b33
// main::@33
__b33:
// [216] main::$104 = y#13 + 1 -- vwuz1=vwuz2_plus_1
clc
lda.z y
adc #1
sta.z __104
lda.z y+1
adc #0
sta.z __104+1
// [217] main::$107 = y#13 + $16 -- vwuz1=vwuz2_plus_vbuc1
lda #$16
clc
adc.z y
sta.z __107
lda #0
adc.z y+1
sta.z __107+1
// [218] main::$110 = y#13 + $17 -- vwuz1=vwuz2_plus_vbuc1
lda #$17
clc
adc.z y
sta.z __110
lda #0
adc.z y+1
sta.z __110+1
// [219] if(*((char *)y#13)==brick) goto main::@36 -- _deref_pbuz1_eq_vbuc1_then_la1
lda #brick
ldy #0
cmp (y),y
beq __b36_from___b33
jmp __b111
// main::@111
__b111:
// [220] if(*((char *)main::$104)==brick) goto main::@36 -- _deref_pbuz1_eq_vbuc1_then_la1
lda #brick
ldy #0
cmp (__104),y
beq __b36_from___b111
jmp __b110
// main::@110
__b110:
// [221] if(*((char *)main::$107)!=brick) goto main::@109 -- _deref_pbuz1_neq_vbuc1_then_la1
ldy #0
lda (__107),y
cmp #brick
bne __b109
// [222] phi from main::@107 main::@108 main::@109 main::@110 main::@111 to main::@36 [phi:main::@107/main::@108/main::@109/main::@110/main::@111->main::@36]
__b36_from___b107:
__b36_from___b108:
__b36_from___b109:
__b36_from___b110:
__b36_from___b111:
jmp __b36
// [222] phi from main::@33 main::@43 to main::@36 [phi:main::@33/main::@43->main::@36]
__b36_from___b33:
__b36_from___b43:
// [222] phi y#35 = peephole#12 [phi:main::@33/main::@43->main::@36#0] -- register_copy
jmp __b36
// main::@36
__b36:
// [223] *((char *)y#35) = $fd -- _deref_pbuz1=vbuc1
lda #$fd
ldy #0
sta (y_1),y
// [224] main::$125 = y#35 + c -- vwuz1=vwuz2_plus_vwuc1
lda.z y_1
clc
adc #<c
sta.z __125
lda.z y_1+1
adc #>c
sta.z __125+1
// [225] *((char *)main::$125) = 1 -- _deref_pbuz1=vbuc1
lda #1
ldy #0
sta (__125),y
// [226] main::$127 = y#35 + 1 -- vwuz1=vwuz2_plus_1
clc
lda.z y_1
adc #1
sta.z __127
lda.z y_1+1
adc #0
sta.z __127+1
// [227] *((char *)main::$127) = $ed -- _deref_pbuz1=vbuc1
lda #$ed
ldy #0
sta (__127),y
// [228] main::$128 = main::$127 + c -- vwuz1=vwuz1_plus_vwuc1
lda.z __128
clc
adc #<c
sta.z __128
lda.z __128+1
adc #>c
sta.z __128+1
// [229] *((char *)main::$128) = 1 -- _deref_pbuz1=vbuc1
lda #1
ldy #0
sta (__128),y
// [230] main::$130 = y#35 + $16 -- vwuz1=vwuz2_plus_vbuc1
lda #$16
clc
adc.z y_1
sta.z __130
lda #0
adc.z y_1+1
sta.z __130+1
// [231] *((char *)main::$130) = $ee -- _deref_pbuz1=vbuc1
lda #$ee
ldy #0
sta (__130),y
// [232] main::$131 = main::$130 + c -- vwuz1=vwuz1_plus_vwuc1
lda.z __131
clc
adc #<c
sta.z __131
lda.z __131+1
adc #>c
sta.z __131+1
// [233] *((char *)main::$131) = 1 -- _deref_pbuz1=vbuc1
lda #1
ldy #0
sta (__131),y
// [234] main::$133 = y#35 + $17 -- vwuz1=vwuz2_plus_vbuc1
lda #$17
clc
adc.z y_1
sta.z __133
lda #0
adc.z y_1+1
sta.z __133+1
// [235] *((char *)main::$133) = $f0 -- _deref_pbuz1=vbuc1
lda #$f0
ldy #0
sta (__133),y
// [236] main::$134 = main::$133 + c -- vwuz1=vwuz1_plus_vwuc1
lda.z __134
clc
adc #<c
sta.z __134
lda.z __134+1
adc #>c
sta.z __134+1
// [237] *((char *)main::$134) = 1 -- _deref_pbuz1=vbuc1
lda #1
ldy #0
sta (__134),y
// [238] call wait
// Clear peephole if there is not bricks contact
// [381] phi from main::@36 to wait [phi:main::@36->wait]
wait_from___b36:
// [381] phi z#53 = z#48 [phi:main::@36->wait#0] -- register_copy
// [381] phi wait::n#6 = 5 [phi:main::@36->wait#1] -- vbuz1=vbuc1
lda #5
sta.z wait.n
jsr wait
jmp __b89
// main::@89
__b89:
// [239] *((char *)duck#1) = 0 -- _deref_pbuz1=vbuc1
lda #0
ldy #0
sta (duck),y
// [240] main::$136 = duck#1 + c -- vwuz1=vwuz2_plus_vwuc1
lda.z duck
clc
adc #<c
sta.z __136
lda.z duck+1
adc #>c
sta.z __136+1
// [241] *((char *)main::$136) = 7 -- _deref_pbuz1=vbuc1
lda #7
ldy #0
sta (__136),y
// [242] main::$138 = duck#1 + 1 -- vwuz1=vwuz2_plus_1
clc
lda.z duck
adc #1
sta.z __138
lda.z duck+1
adc #0
sta.z __138+1
// [243] *((char *)main::$138) = 1 -- _deref_pbuz1=vbuc1
lda #1
ldy #0
sta (__138),y
// [244] main::$139 = main::$138 + c -- vwuz1=vwuz1_plus_vwuc1
lda.z __139
clc
adc #<c
sta.z __139
lda.z __139+1
adc #>c
sta.z __139+1
// [245] *((char *)main::$139) = 7 -- _deref_pbuz1=vbuc1
lda #7
ldy #0
sta (__139),y
// [246] main::$141 = duck#1 + $16 -- vwuz1=vwuz2_plus_vbuc1
lda #$16
clc
adc.z duck
sta.z __141
lda #0
adc.z duck+1
sta.z __141+1
// [247] *((char *)main::$141) = 2 -- _deref_pbuz1=vbuc1
lda #2
ldy #0
sta (__141),y
// [248] main::$142 = main::$141 + c -- vwuz1=vwuz1_plus_vwuc1
lda.z __142
clc
adc #<c
sta.z __142
lda.z __142+1
adc #>c
sta.z __142+1
// [249] *((char *)main::$142) = 7 -- _deref_pbuz1=vbuc1
lda #7
ldy #0
sta (__142),y
// [250] main::$144 = duck#1 + $17 -- vwuz1=vwuz2_plus_vbuc1
lda #$17
clc
adc.z duck
sta.z __144
lda #0
adc.z duck+1
sta.z __144+1
// [251] *((char *)main::$144) = 3 -- _deref_pbuz1=vbuc1
lda #3
ldy #0
sta (__144),y
// [252] main::$145 = main::$144 + c -- vwuz1=vwuz1_plus_vwuc1
lda.z __145
clc
adc #<c
sta.z __145
lda.z __145+1
adc #>c
sta.z __145+1
// [253] *((char *)main::$145) = 7 -- _deref_pbuz1=vbuc1
lda #7
ldy #0
sta (__145),y
// [254] call wait
// [381] phi from main::@89 to wait [phi:main::@89->wait]
wait_from___b89:
// [381] phi z#53 = z#25 [phi:main::@89->wait#0] -- register_copy
// [381] phi wait::n#6 = 5 [phi:main::@89->wait#1] -- vbuz1=vbuc1
lda #5
sta.z wait.n
jsr wait
jmp __b90
// main::@90
__b90:
// [255] y#130 = y#35 -- vwuz1=vwuz2
lda.z y_1
sta.z y
lda.z y_1+1
sta.z y+1
// [124] phi from main::@90 to main::@26 [phi:main::@90->main::@26]
__b26_from___b90:
// [124] phi n#20 = n#14 [phi:main::@90->main::@26#0] -- register_copy
// [124] phi peephole#12 = y#35 [phi:main::@90->main::@26#1] -- register_copy
// [124] phi z#100 = z#25 [phi:main::@90->main::@26#2] -- register_copy
// [124] phi y#18 = y#130 [phi:main::@90->main::@26#3] -- register_copy
// [124] phi rem8u#25 = divr8u::rem#11 [phi:main::@90->main::@26#4] -- register_copy
// [124] phi score#19 = score#43 [phi:main::@90->main::@26#5] -- register_copy
// [124] phi time#11 = time#17 [phi:main::@90->main::@26#6] -- register_copy
jmp __b26
// main::@109
__b109:
// [256] if(*((char *)main::$110)==brick) goto main::@36 -- _deref_pbuz1_eq_vbuc1_then_la1
lda #brick
ldy #0
cmp (__110),y
beq __b36_from___b109
jmp __b108
// main::@108
__b108:
// [257] if(y#13>$1e16) goto main::@107 -- vwuz1_gt_vwuc1_then_la1
lda #>$1e16
cmp.z y+1
bcc __b107
bne !+
lda #<$1e16
cmp.z y
bcc __b107
!:
jmp __b36_from___b108
// main::@107
__b107:
// [258] if(y#13>=$1fe3) goto main::@36 -- vwuz1_ge_vwuc1_then_la1
lda.z y+1
cmp #>$1fe3
bcc !+
bne __b36_from___b107
lda.z y
cmp #<$1fe3
bcs __b36_from___b107
!:
jmp __b43
// main::@43
__b43:
// [259] main::$119 = peephole#12 + c -- vwuz1=vwuz2_plus_vwuc1
lda.z peephole
clc
adc #<c
sta.z __119
lda.z peephole+1
adc #>c
sta.z __119+1
// [260] *((char *)main::$119) = 0 -- _deref_pbuz1=vbuc1
lda #0
ldy #0
sta (__119),y
// [261] main::$120 = main::$119 + 1 -- vwuz1=vwuz2_plus_1
clc
lda.z __119
adc #1
sta.z __120
lda.z __119+1
adc #0
sta.z __120+1
// [262] *((char *)main::$120) = 0 -- _deref_pbuz1=vbuc1
lda #0
ldy #0
sta (__120),y
// [263] main::$122 = main::$119 + $16 -- vwuz1=vwuz2_plus_vbuc1
lda #$16
clc
adc.z __119
sta.z __122
lda #0
adc.z __119+1
sta.z __122+1
// [264] *((char *)main::$122) = 0 -- _deref_pbuz1=vbuc1
lda #0
ldy #0
sta (__122),y
// [265] main::$124 = main::$119 + $17 -- vwuz1=vwuz1_plus_vbuc1
lda #$17
clc
adc.z __124
sta.z __124
bcc !+
inc.z __124+1
!:
// [266] *((char *)main::$124) = 0 -- _deref_pbuz1=vbuc1
lda #0
ldy #0
sta (__124),y
// [267] y#141 = y#13 -- vwuz1=vwuz2
lda.z y
sta.z y_1
lda.z y+1
sta.z y_1+1
jmp __b36_from___b43
// main::@34
__b34:
// [268] score#6 = score#19 - $a -- vwuz1=vwuz1_minus_vbuc1
sec
lda.z score
sbc #$a
sta.z score
lda.z score+1
sbc #0
sta.z score+1
// [269] call write_score
// [351] phi from main::@34 to write_score [phi:main::@34->write_score]
write_score_from___b34:
// [351] phi score#13 = score#6 [phi:main::@34->write_score#0] -- register_copy
jsr write_score
// [270] phi from main::@34 to main::@88 [phi:main::@34->main::@88]
__b88_from___b34:
jmp __b88
// main::@88
__b88:
// [271] call wait
// [381] phi from main::@88 to wait [phi:main::@88->wait]
wait_from___b88:
// [381] phi z#53 = z#100 [phi:main::@88->wait#0] -- register_copy
// [381] phi wait::n#6 = $a [phi:main::@88->wait#1] -- vbuz1=vbuc1
lda #$a
sta.z wait.n
jsr wait
// [213] phi from main::@88 to main::@35 [phi:main::@88->main::@35]
__b35_from___b88:
// [213] phi score#81 = score#38 [phi:main::@88->main::@35#0] -- register_copy
// [213] phi time#38 = div16u8u::return#2 [phi:main::@88->main::@35#1] -- register_copy
jmp __b35
// main::@23
__b23:
// [272] main::$57 = $30 + tu#13 -- vwuz1=vbuc1_plus_vwuz2
lda #$30
clc
adc.z tu
sta.z __57
lda #0
adc.z tu+1
sta.z __57+1
// [273] chrout::petscii = main::$57 -- vbuz1=vwuz2
lda.z __57
sta.z chrout.petscii
// [274] call chrout
jsr chrout
jmp __b24_from___b23
// main::@21
__b21:
// [275] chrout::petscii = ducknumber[j#16] -- vbuz1=pbuc1_derefidx_vbuz2
ldy.z j_2
lda ducknumber,y
sta.z chrout.petscii
// [276] call chrout
jsr chrout
jmp __b78
// main::@78
__b78:
// [277] j#5 = ++ j#16 -- vbuz1=_inc_vbuz1
inc.z j_2
// [93] phi from main::@78 to main::@20 [phi:main::@78->main::@20]
__b20_from___b78:
// [93] phi j#16 = j#5 [phi:main::@78->main::@20#0] -- register_copy
jmp __b20
// main::@18
__b18:
// [278] chrout::petscii = chrono[j#13] -- vbuz1=pbuc1_derefidx_vbuz2
ldy.z j_1
lda chrono,y
sta.z chrout.petscii
// [279] call chrout
jsr chrout
jmp __b74
// main::@74
__b74:
// [280] j#3 = ++ j#13 -- vbuz1=_inc_vbuz1
inc.z j_1
// [84] phi from main::@74 to main::@17 [phi:main::@74->main::@17]
__b17_from___b74:
// [84] phi j#13 = j#3 [phi:main::@74->main::@17#0] -- register_copy
jmp __b17
// [281] phi from main::@71 to main::@14 [phi:main::@71->main::@14]
__b14_from___b71:
// [281] phi j#11 = 1 [phi:main::@71->main::@14#0] -- vbuz1=vbuc1
lda #1
sta.z j
jmp __b14
// main::@14
__b14:
// [282] if(j#11<=m) goto main::@15 -- vbuz1_le_vbuz2_then_la1
lda.z m
cmp.z j
bcs __b15
jmp __b16
// main::@16
__b16:
// [283] chrout::petscii = brick -- vbuz1=vbuc1
lda #brick
sta.z chrout.petscii
// [284] call chrout
jsr chrout
jmp __b73
// main::@73
__b73:
// [285] main::$35 = z#28 + m -- vwuz1=vwuz2_plus_vbuz3
lda.z m
clc
adc.z z_1
sta.z __35
lda #0
adc.z z_1+1
sta.z __35+1
// [286] z#9 = main::$35 + 1 -- vwuz1=vwuz2_plus_1
clc
lda.z __35
adc #1
sta.z z_1
lda.z __35+1
adc #0
sta.z z_1+1
// [287] if(z#9<$1fa) goto main::@13 -- vwuz1_lt_vwuc1_then_la1
lda.z z_1+1
cmp #>$1fa
bcc __b13_from___b73
bne !+
lda.z z_1
cmp #<$1fa
bcc __b13_from___b73
!:
jmp __b12_from___b73
// main::@15
__b15:
// [288] chrout::petscii = right -- vbuz1=vbuc1
lda #right
sta.z chrout.petscii
// [289] call chrout
jsr chrout
jmp __b72
// main::@72
__b72:
// [290] j#2 = ++ j#11 -- vbuz1=_inc_vbuz1
inc.z j
// [281] phi from main::@72 to main::@14 [phi:main::@72->main::@14]
__b14_from___b72:
// [281] phi j#11 = j#2 [phi:main::@72->main::@14#0] -- register_copy
jmp __b14
// main::@7
__b7:
// [291] chrout::petscii = brick -- vbuz1=vbuc1
lda #brick
sta.z chrout.petscii
// [292] call chrout
jsr chrout
// [293] phi from main::@7 to main::@9 [phi:main::@7->main::@9]
__b9_from___b7:
// [293] phi n#101 = 2 [phi:main::@7->main::@9#0] -- vbuz1=vbuc1
lda #2
sta.z n
jmp __b9
// main::@9
__b9:
// [294] if(n#101<$16) goto main::@10 -- vbuz1_lt_vbuc1_then_la1
lda.z n
cmp #$16
bcc __b10
jmp __b11
// main::@11
__b11:
// [295] chrout::petscii = brick -- vbuz1=vbuc1
lda #brick
sta.z chrout.petscii
// [296] call chrout
jsr chrout
jmp __b64
// main::@64
__b64:
// [297] k#1 = ++ k#101 -- vbuz1=_inc_vbuz1
inc.z k
// [52] phi from main::@64 to main::@6 [phi:main::@64->main::@6]
__b6_from___b64:
// [52] phi n#89 = n#101 [phi:main::@64->main::@6#0] -- register_copy
// [52] phi k#101 = k#1 [phi:main::@64->main::@6#1] -- register_copy
jmp __b6
// main::@10
__b10:
// [298] chrout::petscii = right -- vbuz1=vbuc1
lda #right
sta.z chrout.petscii
// [299] call chrout
jsr chrout
jmp __b63
// main::@63
__b63:
// [300] n#1 = ++ n#101 -- vbuz1=_inc_vbuz1
inc.z n
// [293] phi from main::@63 to main::@9 [phi:main::@63->main::@9]
__b9_from___b63:
// [293] phi n#101 = n#1 [phi:main::@63->main::@9#0] -- register_copy
jmp __b9
// main::@2
__b2:
// [301] main::$3 = $1c00 + m -- vwuz1=vwuc1_plus_vbuz2
lda.z m
clc
adc #<$1c00
sta.z __3
lda #>$1c00
adc #0
sta.z __3+1
// [302] *((char *)main::$3) = duck_udg[m] -- _deref_pbuz1=pbuc1_derefidx_vbuz2
ldy.z m
lda duck_udg,y
ldy #0
sta (__3),y
// [303] m = ++ m -- vbuz1=_inc_vbuz1
inc.z m
jmp __b1
}
// gotoxy
// Set the cursor to the specified position
// void gotoxy(char x, __zp($4c) char y)
gotoxy: {
.label __5 = $48
.label __6 = $2c
.label __7 = $2c
.label line_offset = $2c
.label y = $4c
.label __8 = $46
.label __9 = $2c
// [305] if(gotoxy::y#4<$19+1) goto gotoxy::@3 -- vbuz1_lt_vbuc1_then_la1
lda.z y
cmp #$19+1
bcc __b3_from_gotoxy
// [307] phi from gotoxy to gotoxy::@1 [phi:gotoxy->gotoxy::@1]
__b1_from_gotoxy:
// [307] phi gotoxy::y#5 = 0 [phi:gotoxy->gotoxy::@1#0] -- vbuz1=vbuc1
lda #0
sta.z y
jmp __b1
// [306] phi from gotoxy to gotoxy::@3 [phi:gotoxy->gotoxy::@3]
__b3_from_gotoxy:
jmp __b3
// gotoxy::@3
__b3:
// [307] phi from gotoxy::@3 to gotoxy::@1 [phi:gotoxy::@3->gotoxy::@1]
__b1_from___b3:
// [307] phi gotoxy::y#5 = gotoxy::y#4 [phi:gotoxy::@3->gotoxy::@1#0] -- register_copy
jmp __b1
// gotoxy::@1
__b1:
jmp __b2
// gotoxy::@2
__b2:
// [308] conio_cursor_x = 0 -- vbuz1=vbuc1
lda #0
sta.z conio_cursor_x
// [309] conio_cursor_y = gotoxy::y#5 -- vbuz1=vbuz2
lda.z y
sta.z conio_cursor_y
// [310] gotoxy::$7 = (unsigned int)gotoxy::y#5 -- vwuz1=_word_vbuz2
lda.z y
sta.z __7
lda #0
sta.z __7+1
// [311] gotoxy::$8 = gotoxy::$7 << 2 -- vwuz1=vwuz2_rol_2
lda.z __7
asl
sta.z __8
lda.z __7+1
rol
sta.z __8+1
asl.z __8
rol.z __8+1
// [312] gotoxy::$9 = gotoxy::$8 + gotoxy::$7 -- vwuz1=vwuz2_plus_vwuz1
clc
lda.z __9
adc.z __8
sta.z __9
lda.z __9+1
adc.z __8+1
sta.z __9+1
// [313] gotoxy::line_offset#0 = gotoxy::$9 << 3 -- vwuz1=vwuz1_rol_3
asl.z line_offset
rol.z line_offset+1
asl.z line_offset
rol.z line_offset+1
asl.z line_offset
rol.z line_offset+1
// [314] gotoxy::$5 = DEFAULT_SCREEN + gotoxy::line_offset#0 -- pbuz1=pbuc1_plus_vwuz2
lda.z line_offset
clc
adc #<DEFAULT_SCREEN
sta.z __5
lda.z line_offset+1
adc #>DEFAULT_SCREEN
sta.z __5+1
// [315] conio_line_text = gotoxy::$5 -- pbuz1=pbuz2
lda.z __5
sta.z conio_line_text
lda.z __5+1
sta.z conio_line_text+1
// [316] gotoxy::$6 = COLORRAM + gotoxy::line_offset#0 -- pbuz1=pbuc1_plus_vwuz1
lda.z __6
clc
adc #<COLORRAM
sta.z __6
lda.z __6+1
adc #>COLORRAM
sta.z __6+1
// [317] conio_line_color = gotoxy::$6 -- pbuz1=pbuz2
lda.z __6
sta.z conio_line_color
lda.z __6+1
sta.z conio_line_color+1
jmp __breturn
// gotoxy::@return
__breturn:
// [318] return
rts
}
// chrout
// void chrout(__zp($18) volatile char petscii)
chrout: {
.label petscii = $18
// asm { ldapetscii jsr$ffd2 }
lda petscii
jsr $ffd2
jmp __breturn
// chrout::@return
__breturn:
// [320] return
rts
}
// clear_screen
// void clear_screen(__zp(8) char n, char m)
clear_screen: {
.label __4 = $23
.label __5 = 9
.label n = 8
// [322] phi from clear_screen to clear_screen::@1 [phi:clear_screen->clear_screen::@1]
__b1_from_clear_screen:
// [322] phi z#2 = 0 [phi:clear_screen->clear_screen::@1#0] -- vwuz1=vbuc1
lda #<0
sta.z z
lda #>0
sta.z z+1
jmp __b1
// clear_screen::@1
__b1:
// [323] if(z#2<$1fa) goto clear_screen::@2 -- vwuz1_lt_vwuc1_then_la1
lda.z z+1
cmp #>$1fa
bcc __b2
bne !+
lda.z z
cmp #<$1fa
bcc __b2
!:
// [324] phi from clear_screen::@1 to clear_screen::@3 [phi:clear_screen::@1->clear_screen::@3]
__b3_from___b1:
jmp __b3
// clear_screen::@3
__b3:
// [325] call gotoxy
// From 0-->505 (506 bytes). ClearScreen with byte 'n' with color 'm'
// [304] phi from clear_screen::@3 to gotoxy [phi:clear_screen::@3->gotoxy]
gotoxy_from___b3:
// [304] phi gotoxy::y#4 = 0 [phi:clear_screen::@3->gotoxy#0] -- vbuz1=vbuc1
lda #0
sta.z gotoxy.y
jsr gotoxy
jmp __b4
// clear_screen::@4
__b4:
// [326] chrout::petscii = home -- vbuz1=vbuc1
lda #home
sta.z chrout.petscii
// [327] call chrout
jsr chrout
jmp __breturn
// clear_screen::@return
__breturn:
// [328] return
rts
// clear_screen::@2
__b2:
// [329] clear_screen::$5 = $1e00 + z#2 -- vwuz1=vwuc1_plus_vwuz2
lda.z z
clc
adc #<$1e00
sta.z __5
lda.z z+1
adc #>$1e00
sta.z __5+1
// [330] clear_screen::$4 = clear_screen::$5 + c -- vwuz1=vwuz2_plus_vwuc1
lda.z __5
clc
adc #<c
sta.z __4
lda.z __5+1
adc #>c
sta.z __4+1
// [331] *((char *)clear_screen::$4) = 0 -- _deref_pbuz1=vbuc1
lda #0
ldy #0
sta (__4),y
// [332] *((char *)clear_screen::$5) = clear_screen::n#5 -- _deref_pbuz1=vbuz2
lda.z n
ldy #0
sta (__5),y
// [333] z#1 = ++ z#2 -- vwuz1=_inc_vwuz1
inc.z z
bne !+
inc.z z+1
!:
// [322] phi from clear_screen::@2 to clear_screen::@1 [phi:clear_screen::@2->clear_screen::@1]
__b1_from___b2:
// [322] phi z#2 = z#1 [phi:clear_screen::@2->clear_screen::@1#0] -- register_copy
jmp __b1
}
// textcolor
// Set the color for text output. The old color setting is returned.
// char textcolor(__zp(8) char color)
textcolor: {
.label color = 8
// [335] conio_textcolor = textcolor::color#7 -- vbuz1=vbuz2
lda.z color
sta.z conio_textcolor
jmp __breturn
// textcolor::@return
__breturn:
// [336] return
rts
}
// cputs
// Output a NUL-terminated string at the current cursor position
// void cputs(__zp(5) const char *s)
cputs: {
.label c = 2
.label s = 5
// [338] phi from cputs cputs::@2 to cputs::@1 [phi:cputs/cputs::@2->cputs::@1]
__b1_from_cputs:
__b1_from___b2:
// [338] phi cputs::s#10 = cputs::s#11 [phi:cputs/cputs::@2->cputs::@1#0] -- register_copy
jmp __b1
// cputs::@1
__b1:
// [339] cputs::c#1 = *cputs::s#10 -- vbuz1=_deref_pbuz2
ldy #0
lda (s),y
sta.z c
// [340] cputs::s#0 = ++ cputs::s#10 -- pbuz1=_inc_pbuz1
inc.z s
bne !+
inc.z s+1
!:
// [341] if(0!=cputs::c#1) goto cputs::@2 -- 0_neq_vbuz1_then_la1
lda.z c
bne __b2
jmp __breturn
// cputs::@return
__breturn:
// [342] return
rts
// cputs::@2
__b2:
// [343] cputc::c#0 = cputs::c#1
// [344] call cputc
jsr cputc
jmp __b1_from___b2
}
// random
// Return to home position
// void random(__zp(3) char k, __zp(8) char n)
random: {
.label k = 3
.label n = 8
.label __3 = 2
jmp __b1
// random::@1
__b1:
// [346] m = *((char *) 37140) -- vbuz1=_deref_pbuc1
lda $9114
sta.z m
// [347] random::$3 = m -- vbuz1=vbuz2
lda.z m
sta.z __3
// [348] if(m<random::k#4) goto random::@1 -- vbuz1_lt_vbuz2_then_la1
lda.z m
cmp.z k
bcc __b1
jmp __b2
// random::@2
__b2:
// [349] if(random::$3>random::n#4) goto random::@1 -- vbuz1_gt_vbuz2_then_la1
lda.z n
cmp.z __3
bcc __b1
jmp __breturn
// random::@return
__breturn:
// [350] return
rts
}
// write_score
write_score: {
// [352] if(score#13<=$fde8) goto write_score::@15 -- vwuz1_le_vwuc1_then_la1
lda.z score+1
cmp #>$fde8
bne !+
lda.z score
cmp #<$fde8
!:
bcc __b15_from_write_score
beq __b15_from_write_score
// [354] phi from write_score to write_score::@1 [phi:write_score->write_score::@1]
__b1_from_write_score:
// [354] phi score#38 = 0 [phi:write_score->write_score::@1#0] -- vwuz1=vbuc1
lda #<0
sta.z score
lda #>0
sta.z score+1
jmp __b1
// [353] phi from write_score to write_score::@15 [phi:write_score->write_score::@15]
__b15_from_write_score:
jmp __b15
// write_score::@15
__b15:
// [354] phi from write_score::@15 to write_score::@1 [phi:write_score::@15->write_score::@1]
__b1_from___b15:
// [354] phi score#38 = score#13 [phi:write_score::@15->write_score::@1#0] -- register_copy
jmp __b1
// write_score::@1
__b1:
// [355] m = 0 -- vbuz1=vbuc1
lda #0
sta.z m
jmp __b5
// write_score::@5
__b5:
// [356] if(m<4) goto write_score::@6 -- vbuz1_lt_vbuc1_then_la1
lda.z m
cmp #4
bcc __b6
jmp __b7
// write_score::@7
__b7:
// [357] utoa::value#1 = score#38 -- vwuz1=vwuz2
lda.z score
sta.z utoa.value
lda.z score+1
sta.z utoa.value+1
// [358] call utoa
// (!!) Needed. Possibly a bug
// [390] phi from write_score::@7 to utoa [phi:write_score::@7->utoa]
utoa_from___b7:
// [390] phi utoa::value#10 = utoa::value#1 [phi:write_score::@7->utoa#0] -- register_copy
jsr utoa
jmp __b11
// write_score::@11
__b11:
// [359] if(score#38<9+1) goto write_score::@2 -- vwuz1_lt_vbuc1_then_la1
lda.z score+1
bne !+
lda.z score
cmp #9+1
bcc __b2
!:
jmp __b8
// write_score::@8
__b8:
// [360] *(points+2) = *buffer -- _deref_pbuc1=_deref_pbuc2
lda buffer
sta points+2
// [361] *(points+3) = *(buffer+1) -- _deref_pbuc1=_deref_pbuc2
lda buffer+1
sta points+3
jmp __b2
// write_score::@2
__b2:
// [362] if(score#38<$63+1) goto write_score::@3 -- vwuz1_lt_vbuc1_then_la1
lda.z score+1
bne !+
lda.z score
cmp #$63+1
bcc __b3
!:
jmp __b4
// write_score::@4
__b4:
// [363] *(points+1) = *buffer -- _deref_pbuc1=_deref_pbuc2
lda buffer
sta points+1
// [364] *(points+2) = *(buffer+1) -- _deref_pbuc1=_deref_pbuc2
lda buffer+1
sta points+2
// [365] *(points+3) = *(buffer+2) -- _deref_pbuc1=_deref_pbuc2
lda buffer+2
sta points+3
jmp __b3
// write_score::@3
__b3:
// [366] chrout::petscii = yellow -- vbuz1=vbuc1
lda #yellow
sta.z chrout.petscii
// [367] call chrout
jsr chrout
jmp __b12
// write_score::@12
__b12:
// [368] chrout::petscii = home -- vbuz1=vbuc1
lda #home
sta.z chrout.petscii
// [369] call chrout
jsr chrout
jmp __b13
// write_score::@13
__b13:
// [370] *((char *) 211) = 4 -- _deref_pbuc1=vbuc2
lda #4
sta.z $d3
// [371] m = 0 -- vbuz1=vbuc1
lda #0
sta.z m
jmp __b9
// write_score::@9
__b9:
// [372] if(m<4) goto write_score::@10 -- vbuz1_lt_vbuc1_then_la1
lda.z m
cmp #4
bcc __b10
jmp __breturn
// write_score::@return
__breturn:
// [373] return
rts
// write_score::@10
__b10:
// [374] chrout::petscii = points[m] -- vbuz1=pbuc1_derefidx_vbuz2
ldy.z m
lda points,y
sta.z chrout.petscii
// [375] call chrout
jsr chrout
jmp __b14
// write_score::@14
__b14:
// [376] m = ++ m -- vbuz1=_inc_vbuz1
inc.z m
jmp __b9
// write_score::@6
__b6:
// [377] points[m] = '0' -- pbuc1_derefidx_vbuz1=vbuc2
lda #'0'
ldy.z m
sta points,y
// [378] m = ++ m -- vbuz1=_inc_vbuz1
inc.z m
jmp __b5
}
// chrono_restart
chrono_restart: {
// asm { lda#0 ldy#0 ldx#0 jsr$ffdb }
lda #0
ldy #0
ldx #0
jsr $ffdb
jmp __breturn
// chrono_restart::@return
__breturn:
// [380] return
rts
}
// wait
// void wait(__zp(3) char n)
wait: {
.label n = 3
// [382] m = 0 -- vbuz1=vbuc1
lda #0
sta.z m
// [383] phi from wait wait::@4 to wait::@1 [phi:wait/wait::@4->wait::@1]
__b1_from_wait:
__b1_from___b4:
// [383] phi z#25 = z#53 [phi:wait/wait::@4->wait::@1#0] -- register_copy
jmp __b1
// wait::@1
__b1:
// [384] if(m<wait::n#6) goto wait::@2 -- vbuz1_lt_vbuz2_then_la1
lda.z m
cmp.z n
bcc __b2_from___b1
jmp __breturn
// wait::@return
__breturn:
// [385] return
rts
// [386] phi from wait::@1 to wait::@2 [phi:wait::@1->wait::@2]
__b2_from___b1:
// [386] phi z#23 = 0 [phi:wait::@1->wait::@2#0] -- vwuz1=vbuc1
lda #<0
sta.z z_1
lda #>0
sta.z z_1+1
jmp __b2
// wait::@2
__b2:
// [387] if(z#23<$21c) goto wait::@3 -- vwuz1_lt_vwuc1_then_la1
lda.z z_1+1
cmp #>$21c
bcc __b3
bne !+
lda.z z_1
cmp #<$21c
bcc __b3
!:
jmp __b4
// wait::@4
__b4:
// [388] m = ++ m -- vbuz1=_inc_vbuz1
inc.z m
jmp __b1_from___b4
// wait::@3
__b3:
// [389] z#4 = ++ z#23 -- vwuz1=_inc_vwuz1
inc.z z_1
bne !+
inc.z z_1+1
!:
// [386] phi from wait::@3 to wait::@2 [phi:wait::@3->wait::@2]
__b2_from___b3:
// [386] phi z#23 = z#4 [phi:wait::@3->wait::@2#0] -- register_copy
jmp __b2
}
// utoa
// Converts unsigned number value to a string representing it in RADIX format.
// If the leading digits are zero they are not included in the string.
// - value : The number to be converted to RADIX
// - buffer : receives the string representing the number and zero-termination.
// - radix : The radix to convert the number to (from the enum RADIX)
// void utoa(__zp(5) unsigned int value, __zp($d) char *buffer, char radix)
utoa: {
.label __10 = $11
.label __11 = 2
.label digit_value = 9
.label buffer = $d
.label digit = 3
.label value = 5
.label started = $10
// [391] phi from utoa to utoa::@1 [phi:utoa->utoa::@1]
__b1_from_utoa:
// [391] phi utoa::buffer#10 = buffer [phi:utoa->utoa::@1#0] -- pbuz1=pbuc1
lda #<@buffer
sta.z buffer
lda #>@buffer
sta.z buffer+1
// [391] phi utoa::started#2 = 0 [phi:utoa->utoa::@1#1] -- vbuz1=vbuc1
lda #0
sta.z started
// [391] phi utoa::value#3 = utoa::value#10 [phi:utoa->utoa::@1#2] -- register_copy
// [391] phi utoa::digit#2 = 0 [phi:utoa->utoa::@1#3] -- vbuz1=vbuc1
lda #0
sta.z digit
jmp __b1
// utoa::@1
__b1:
// [392] if(utoa::digit#2<5-1) goto utoa::@2 -- vbuz1_lt_vbuc1_then_la1
lda.z digit
cmp #5-1
bcc __b2
jmp __b3
// utoa::@3
__b3:
// [393] utoa::$11 = (char)utoa::value#3 -- vbuz1=_byte_vwuz2
lda.z value
sta.z __11
// [394] *utoa::buffer#10 = DIGITS[utoa::$11] -- _deref_pbuz1=pbuc1_derefidx_vbuz2
ldy.z __11
lda DIGITS,y
ldy #0
sta (buffer),y
// [395] utoa::buffer#3 = ++ utoa::buffer#10 -- pbuz1=_inc_pbuz1
inc.z buffer
bne !+
inc.z buffer+1
!:
// [396] *utoa::buffer#3 = 0 -- _deref_pbuz1=vbuc1
lda #0
ldy #0
sta (buffer),y
jmp __breturn
// utoa::@return
__breturn:
// [397] return
rts
// utoa::@2
__b2:
// [398] utoa::$10 = utoa::digit#2 << 1 -- vbuz1=vbuz2_rol_1
lda.z digit
asl
sta.z __10
// [399] utoa::digit_value#0 = RADIX_DECIMAL_VALUES[utoa::$10] -- vwuz1=pwuc1_derefidx_vbuz2
ldy.z __10
lda RADIX_DECIMAL_VALUES,y
sta.z digit_value
lda RADIX_DECIMAL_VALUES+1,y
sta.z digit_value+1
// [400] if(0!=utoa::started#2) goto utoa::@5 -- 0_neq_vbuz1_then_la1
lda.z started
bne __b5
jmp __b7
// utoa::@7
__b7:
// [401] if(utoa::value#3>=utoa::digit_value#0) goto utoa::@5 -- vwuz1_ge_vwuz2_then_la1
lda.z digit_value+1
cmp.z value+1
bne !+
lda.z digit_value
cmp.z value
beq __b5
!:
bcc __b5
// [402] phi from utoa::@7 to utoa::@4 [phi:utoa::@7->utoa::@4]
__b4_from___b7:
// [402] phi utoa::buffer#15 = utoa::buffer#10 [phi:utoa::@7->utoa::@4#0] -- register_copy
// [402] phi utoa::started#4 = utoa::started#2 [phi:utoa::@7->utoa::@4#1] -- register_copy
// [402] phi utoa::value#7 = utoa::value#3 [phi:utoa::@7->utoa::@4#2] -- register_copy
jmp __b4
// utoa::@4
__b4:
// [403] utoa::digit#1 = ++ utoa::digit#2 -- vbuz1=_inc_vbuz1
inc.z digit
// [391] phi from utoa::@4 to utoa::@1 [phi:utoa::@4->utoa::@1]
__b1_from___b4:
// [391] phi utoa::buffer#10 = utoa::buffer#15 [phi:utoa::@4->utoa::@1#0] -- register_copy
// [391] phi utoa::started#2 = utoa::started#4 [phi:utoa::@4->utoa::@1#1] -- register_copy
// [391] phi utoa::value#3 = utoa::value#7 [phi:utoa::@4->utoa::@1#2] -- register_copy
// [391] phi utoa::digit#2 = utoa::digit#1 [phi:utoa::@4->utoa::@1#3] -- register_copy
jmp __b1
// utoa::@5
__b5:
// [404] utoa_append::buffer#0 = utoa::buffer#10
// [405] utoa_append::value#0 = utoa::value#3
// [406] utoa_append::sub#0 = utoa::digit_value#0
// [407] call utoa_append
// [432] phi from utoa::@5 to utoa_append [phi:utoa::@5->utoa_append]
utoa_append_from___b5:
jsr utoa_append
// [408] utoa_append::return#0 = utoa_append::value#2
jmp __b6
// utoa::@6
__b6:
// [409] utoa::value#0 = utoa_append::return#0
// [410] utoa::buffer#4 = ++ utoa::buffer#10 -- pbuz1=_inc_pbuz1
inc.z buffer
bne !+
inc.z buffer+1
!:
// [402] phi from utoa::@6 to utoa::@4 [phi:utoa::@6->utoa::@4]
__b4_from___b6:
// [402] phi utoa::buffer#15 = utoa::buffer#4 [phi:utoa::@6->utoa::@4#0] -- register_copy
// [402] phi utoa::started#4 = 1 [phi:utoa::@6->utoa::@4#1] -- vbuz1=vbuc1
lda #1
sta.z started
// [402] phi utoa::value#7 = utoa::value#0 [phi:utoa::@6->utoa::@4#2] -- register_copy
jmp __b4
}
// read_chrono
read_chrono: {
.label __0 = $23
.label __5 = 9
// asm { jsr$ffde stal stxm }
jsr $ffde
sta l
stx m
// [412] read_chrono::$0 = m << 8 -- vwuz1=vbuz2_rol_8
lda.z m
sta.z __0+1
lda #0
sta.z __0
// [413] div16u8u::dividend#0 = read_chrono::$0 + l -- vwuz1=vwuz1_plus_vbuz2
lda.z l
clc
adc.z div16u8u.dividend
sta.z div16u8u.dividend
bcc !+
inc.z div16u8u.dividend+1
!:
// [414] call div16u8u
jsr div16u8u
// [415] div16u8u::return#2 = div16u8u::return#0 -- vwuz1=vwuz2
lda.z div16u8u.return
sta.z div16u8u.return_1
lda.z div16u8u.return+1
sta.z div16u8u.return_1+1
jmp __b2
// read_chrono::@2
__b2:
// [416] *((char *)$1e15+c) = 7 -- _deref_pbuc1=vbuc2
lda #7
sta $1e15+c
// [417] *((char *) 7701) = $b9 -- _deref_pbuc1=vbuc2
lda #$b9
sta $1e15
// [418] if(div16u8u::return#2>=$a) goto read_chrono::@return -- vwuz1_ge_vbuc1_then_la1
lda.z div16u8u.return_1+1
bne __breturn
lda.z div16u8u.return_1
cmp #$a
bcs __breturn
!:
jmp __b1
// read_chrono::@1
__b1:
// [419] read_chrono::$5 = $b9 - div16u8u::return#2 -- vwuz1=vwuc1_minus_vwuz2
sec
lda #<$b9
sbc.z div16u8u.return_1
sta.z __5
lda #>$b9
sbc.z div16u8u.return_1+1
sta.z __5+1
// [420] *((char *) 7701) = read_chrono::$5 -- _deref_pbuc1=vwuz1
lda.z __5
sta $1e15
jmp __breturn
// read_chrono::@return
__breturn:
// [421] return
rts
}
// cputc
// Output one character at the current cursor position
// Moves the cursor forward. Scrolls the entire screen if needed
// void cputc(__zp(2) char c)
cputc: {
.label c = 2
// [422] if(cputc::c#0==' ') goto cputc::@1 -- vbuz1_eq_vbuc1_then_la1
lda #'\n'
cmp.z c
beq __b1_from_cputc
jmp __b2
// cputc::@2
__b2:
// [423] conio_line_text[conio_cursor_x] = cputc::c#0 -- pbuz1_derefidx_vbuz2=vbuz3
lda.z c
ldy.z conio_cursor_x
sta (conio_line_text),y
// [424] conio_line_color[conio_cursor_x] = conio_textcolor -- pbuz1_derefidx_vbuz2=vbuz3
lda.z conio_textcolor
ldy.z conio_cursor_x
sta (conio_line_color),y
// [425] conio_cursor_x = ++ conio_cursor_x -- vbuz1=_inc_vbuz1
inc.z conio_cursor_x
// [426] if(conio_cursor_x!=$28) goto cputc::@return -- vbuz1_neq_vbuc1_then_la1
lda #$28
cmp.z conio_cursor_x
bne __breturn
// [427] phi from cputc::@2 to cputc::@3 [phi:cputc::@2->cputc::@3]
__b3_from___b2:
jmp __b3
// cputc::@3
__b3:
// [428] call cputln
jsr cputln
jmp __breturn
// cputc::@return
__breturn:
// [429] return
rts
// [430] phi from cputc to cputc::@1 [phi:cputc->cputc::@1]
__b1_from_cputc:
jmp __b1
// cputc::@1
__b1:
// [431] call cputln
jsr cputln
jmp __breturn
}
// utoa_append
// Used to convert a single digit of an unsigned number value to a string representation
// Counts a single digit up from '0' as long as the value is larger than sub.
// Each time the digit is increased sub is subtracted from value.
// - buffer : pointer to the char that receives the digit
// - value : The value where the digit will be derived from
// - sub : the value of a '1' in the digit. Subtracted continually while the digit is increased.
// (For decimal the subs used are 10000, 1000, 100, 10, 1)
// returns : the value reduced by sub * digit so that it is less than sub.
// __zp(5) unsigned int utoa_append(__zp($d) char *buffer, __zp(5) unsigned int value, __zp(9) unsigned int sub)
utoa_append: {
.label buffer = $d
.label value = 5
.label sub = 9
.label return = 5
.label digit = 7
// [433] phi from utoa_append to utoa_append::@1 [phi:utoa_append->utoa_append::@1]
__b1_from_utoa_append:
// [433] phi utoa_append::digit#2 = 0 [phi:utoa_append->utoa_append::@1#0] -- vbuz1=vbuc1
lda #0
sta.z digit
// [433] phi utoa_append::value#2 = utoa_append::value#0 [phi:utoa_append->utoa_append::@1#1] -- register_copy
jmp __b1
// utoa_append::@1
__b1:
// [434] if(utoa_append::value#2>=utoa_append::sub#0) goto utoa_append::@2 -- vwuz1_ge_vwuz2_then_la1
lda.z sub+1
cmp.z value+1
bne !+
lda.z sub
cmp.z value
beq __b2
!:
bcc __b2
jmp __b3
// utoa_append::@3
__b3:
// [435] *utoa_append::buffer#0 = DIGITS[utoa_append::digit#2] -- _deref_pbuz1=pbuc1_derefidx_vbuz2
ldy.z digit
lda DIGITS,y
ldy #0
sta (buffer),y
jmp __breturn
// utoa_append::@return
__breturn:
// [436] return
rts
// utoa_append::@2
__b2:
// [437] utoa_append::digit#1 = ++ utoa_append::digit#2 -- vbuz1=_inc_vbuz1
inc.z digit
// [438] utoa_append::value#1 = utoa_append::value#2 - utoa_append::sub#0 -- vwuz1=vwuz1_minus_vwuz2
lda.z value
sec
sbc.z sub
sta.z value
lda.z value+1
sbc.z sub+1
sta.z value+1
// [433] phi from utoa_append::@2 to utoa_append::@1 [phi:utoa_append::@2->utoa_append::@1]
__b1_from___b2:
// [433] phi utoa_append::digit#2 = utoa_append::digit#1 [phi:utoa_append::@2->utoa_append::@1#0] -- register_copy
// [433] phi utoa_append::value#2 = utoa_append::value#1 [phi:utoa_append::@2->utoa_append::@1#1] -- register_copy
jmp __b1
}
// div16u8u
// Divide unsigned 16-bit unsigned long dividend with a 8-bit unsigned char divisor
// The 8-bit unsigned char remainder can be found in rem8u after the division
// __zp($30) unsigned int div16u8u(__zp($23) unsigned int dividend, char divisor)
div16u8u: {
.label divisor = $3c
.label quotient_hi = 2
.label quotient_lo = $10
.label return = $12
.label dividend = $23
.label return_1 = $30
// [439] divr8u::dividend#1 = byte1 div16u8u::dividend#0 -- vbuz1=_byte1_vwuz2
lda.z dividend+1
sta.z divr8u.dividend
// [440] call divr8u
// [456] phi from div16u8u to divr8u [phi:div16u8u->divr8u]
divr8u_from_div16u8u:
// [456] phi divr8u::dividend#5 = divr8u::dividend#1 [phi:div16u8u->divr8u#0] -- register_copy
// [456] phi divr8u::rem#10 = 0 [phi:div16u8u->divr8u#1] -- vbuz1=vbuc1
lda #0
sta.z divr8u.rem
jsr divr8u
// [441] divr8u::return#2 = divr8u::return#0
jmp __b1
// div16u8u::@1
__b1:
// [442] div16u8u::quotient_hi#0 = divr8u::return#2 -- vbuz1=vbuz2
lda.z divr8u.return
sta.z quotient_hi
// [443] divr8u::dividend#2 = byte0 div16u8u::dividend#0 -- vbuz1=_byte0_vwuz2
lda.z dividend
sta.z divr8u.dividend
// [444] divr8u::rem#4 = divr8u::rem#11
// [445] call divr8u
// [456] phi from div16u8u::@1 to divr8u [phi:div16u8u::@1->divr8u]
divr8u_from___b1:
// [456] phi divr8u::dividend#5 = divr8u::dividend#2 [phi:div16u8u::@1->divr8u#0] -- register_copy
// [456] phi divr8u::rem#10 = divr8u::rem#4 [phi:div16u8u::@1->divr8u#1] -- register_copy
jsr divr8u
// [446] divr8u::return#3 = divr8u::return#0
jmp __b2
// div16u8u::@2
__b2:
// [447] div16u8u::quotient_lo#0 = divr8u::return#3
// [448] div16u8u::return#0 = div16u8u::quotient_hi#0 w= div16u8u::quotient_lo#0 -- vwuz1=vbuz2_word_vbuz3
lda.z quotient_hi
sta.z return+1
lda.z quotient_lo
sta.z return
jmp __breturn
// div16u8u::@return
__breturn:
// [449] return
rts
}
// cputln
// Print a newline
cputln: {
// [450] conio_line_text = conio_line_text + $28 -- pbuz1=pbuz1_plus_vbuc1
lda #$28
clc
adc.z conio_line_text
sta.z conio_line_text
bcc !+
inc.z conio_line_text+1
!:
// [451] conio_line_color = conio_line_color + $28 -- pbuz1=pbuz1_plus_vbuc1
lda #$28
clc
adc.z conio_line_color
sta.z conio_line_color
bcc !+
inc.z conio_line_color+1
!:
// [452] conio_cursor_x = 0 -- vbuz1=vbuc1
lda #0
sta.z conio_cursor_x
// [453] conio_cursor_y = ++ conio_cursor_y -- vbuz1=_inc_vbuz1
inc.z conio_cursor_y
// [454] call cscroll
jsr cscroll
jmp __breturn
// cputln::@return
__breturn:
// [455] return
rts
}
// divr8u
// Performs division on two 8 bit unsigned chars and an initial remainder
// Returns dividend/divisor.
// The final remainder will be set into the global variable rem8u
// Implemented using simple binary division
// __zp($10) char divr8u(__zp(3) char dividend, char divisor, __zp($f) char rem)
divr8u: {
.label __1 = $11
.label rem = $f
.label dividend = 3
.label quotient = $10
.label i = 7
.label return = $10
// [457] phi from divr8u to divr8u::@1 [phi:divr8u->divr8u::@1]
__b1_from_divr8u:
// [457] phi divr8u::i#2 = 0 [phi:divr8u->divr8u::@1#0] -- vbuz1=vbuc1
lda #0
sta.z i
// [457] phi divr8u::quotient#3 = 0 [phi:divr8u->divr8u::@1#1] -- vbuz1=vbuc1
lda #0
sta.z quotient
// [457] phi divr8u::dividend#3 = divr8u::dividend#5 [phi:divr8u->divr8u::@1#2] -- register_copy
// [457] phi divr8u::rem#5 = divr8u::rem#10 [phi:divr8u->divr8u::@1#3] -- register_copy
jmp __b1
// [457] phi from divr8u::@3 to divr8u::@1 [phi:divr8u::@3->divr8u::@1]
__b1_from___b3:
// [457] phi divr8u::i#2 = divr8u::i#1 [phi:divr8u::@3->divr8u::@1#0] -- register_copy
// [457] phi divr8u::quotient#3 = divr8u::return#0 [phi:divr8u::@3->divr8u::@1#1] -- register_copy
// [457] phi divr8u::dividend#3 = divr8u::dividend#0 [phi:divr8u::@3->divr8u::@1#2] -- register_copy
// [457] phi divr8u::rem#5 = divr8u::rem#11 [phi:divr8u::@3->divr8u::@1#3] -- register_copy
jmp __b1
// divr8u::@1
__b1:
// [458] divr8u::rem#0 = divr8u::rem#5 << 1 -- vbuz1=vbuz1_rol_1
asl.z rem
// [459] divr8u::$1 = divr8u::dividend#3 & $80 -- vbuz1=vbuz2_band_vbuc1
lda #$80
and.z dividend
sta.z __1
// [460] if(divr8u::$1==0) goto divr8u::@2 -- vbuz1_eq_0_then_la1
lda.z __1
beq __b2_from___b1
jmp __b4
// divr8u::@4
__b4:
// [461] divr8u::rem#1 = divr8u::rem#0 | 1 -- vbuz1=vbuz1_bor_vbuc1
lda #1
ora.z rem
sta.z rem
// [462] phi from divr8u::@1 divr8u::@4 to divr8u::@2 [phi:divr8u::@1/divr8u::@4->divr8u::@2]
__b2_from___b1:
__b2_from___b4:
// [462] phi divr8u::rem#6 = divr8u::rem#0 [phi:divr8u::@1/divr8u::@4->divr8u::@2#0] -- register_copy
jmp __b2
// divr8u::@2
__b2:
// [463] divr8u::dividend#0 = divr8u::dividend#3 << 1 -- vbuz1=vbuz1_rol_1
asl.z dividend
// [464] divr8u::quotient#1 = divr8u::quotient#3 << 1 -- vbuz1=vbuz1_rol_1
asl.z quotient
// [465] if(divr8u::rem#6<div16u8u::divisor#0) goto divr8u::@3 -- vbuz1_lt_vbuc1_then_la1
lda.z rem
cmp #div16u8u.divisor
bcc __b3_from___b2
jmp __b5
// divr8u::@5
__b5:
// [466] divr8u::quotient#2 = ++ divr8u::quotient#1 -- vbuz1=_inc_vbuz1
inc.z quotient
// [467] divr8u::rem#2 = divr8u::rem#6 - div16u8u::divisor#0 -- vbuz1=vbuz1_minus_vbuc1
lax.z rem
axs #div16u8u.divisor
stx.z rem
// [468] phi from divr8u::@2 divr8u::@5 to divr8u::@3 [phi:divr8u::@2/divr8u::@5->divr8u::@3]
__b3_from___b2:
__b3_from___b5:
// [468] phi divr8u::return#0 = divr8u::quotient#1 [phi:divr8u::@2/divr8u::@5->divr8u::@3#0] -- register_copy
// [468] phi divr8u::rem#11 = divr8u::rem#6 [phi:divr8u::@2/divr8u::@5->divr8u::@3#1] -- register_copy
jmp __b3
// divr8u::@3
__b3:
// [469] divr8u::i#1 = ++ divr8u::i#2 -- vbuz1=_inc_vbuz1
inc.z i
// [470] if(divr8u::i#1!=8) goto divr8u::@1 -- vbuz1_neq_vbuc1_then_la1
lda #8
cmp.z i
bne __b1_from___b3
jmp __breturn
// divr8u::@return
__breturn:
// [471] return
rts
}
// cscroll
// Scroll the entire screen if the cursor is beyond the last line
cscroll: {
// [472] if(conio_cursor_y!=$19) goto cscroll::@return -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z conio_cursor_y
bne __breturn
// [473] phi from cscroll to cscroll::@1 [phi:cscroll->cscroll::@1]
__b1_from_cscroll:
jmp __b1
// cscroll::@1
__b1:
// [474] call memcpy
// [485] phi from cscroll::@1 to memcpy [phi:cscroll::@1->memcpy]
memcpy_from___b1:
// [485] phi memcpy::destination#2 = (void *)DEFAULT_SCREEN [phi:cscroll::@1->memcpy#0] -- pvoz1=pvoc1
lda #<DEFAULT_SCREEN
sta.z memcpy.destination
lda #>DEFAULT_SCREEN
sta.z memcpy.destination+1
// [485] phi memcpy::source#2 = (void *)DEFAULT_SCREEN+$28 [phi:cscroll::@1->memcpy#1] -- pvoz1=pvoc1
lda #<DEFAULT_SCREEN+$28
sta.z memcpy.source
lda #>DEFAULT_SCREEN+$28
sta.z memcpy.source+1
jsr memcpy
// [475] phi from cscroll::@1 to cscroll::@2 [phi:cscroll::@1->cscroll::@2]
__b2_from___b1:
jmp __b2
// cscroll::@2
__b2:
// [476] call memcpy
// [485] phi from cscroll::@2 to memcpy [phi:cscroll::@2->memcpy]
memcpy_from___b2:
// [485] phi memcpy::destination#2 = (void *)COLORRAM [phi:cscroll::@2->memcpy#0] -- pvoz1=pvoc1
lda #<COLORRAM
sta.z memcpy.destination
lda #>COLORRAM
sta.z memcpy.destination+1
// [485] phi memcpy::source#2 = (void *)COLORRAM+$28 [phi:cscroll::@2->memcpy#1] -- pvoz1=pvoc1
lda #<COLORRAM+$28
sta.z memcpy.source
lda #>COLORRAM+$28
sta.z memcpy.source+1
jsr memcpy
// [477] phi from cscroll::@2 to cscroll::@3 [phi:cscroll::@2->cscroll::@3]
__b3_from___b2:
jmp __b3
// cscroll::@3
__b3:
// [478] call memset
// [495] phi from cscroll::@3 to memset [phi:cscroll::@3->memset]
memset_from___b3:
// [495] phi memset::c#4 = ' ' [phi:cscroll::@3->memset#0] -- vbuz1=vbuc1
lda #' '
sta.z memset.c
// [495] phi memset::str#3 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28 [phi:cscroll::@3->memset#1] -- pvoz1=pvoc1
lda #<DEFAULT_SCREEN+$19*$28-$28
sta.z memset.str
lda #>DEFAULT_SCREEN+$19*$28-$28
sta.z memset.str+1
jsr memset
jmp __b4
// cscroll::@4
__b4:
// [479] memset::c#1 = conio_textcolor -- vbuz1=vbuz2
lda.z conio_textcolor
sta.z memset.c
// [480] call memset
// [495] phi from cscroll::@4 to memset [phi:cscroll::@4->memset]
memset_from___b4:
// [495] phi memset::c#4 = memset::c#1 [phi:cscroll::@4->memset#0] -- register_copy
// [495] phi memset::str#3 = (void *)COLORRAM+(unsigned int)$19*$28-$28 [phi:cscroll::@4->memset#1] -- pvoz1=pvoc1
lda #<COLORRAM+$19*$28-$28
sta.z memset.str
lda #>COLORRAM+$19*$28-$28
sta.z memset.str+1
jsr memset
jmp __b5
// cscroll::@5
__b5:
// [481] conio_line_text = conio_line_text - $28 -- pbuz1=pbuz1_minus_vbuc1
sec
lda.z conio_line_text
sbc #$28
sta.z conio_line_text
lda.z conio_line_text+1
sbc #0
sta.z conio_line_text+1
// [482] conio_line_color = conio_line_color - $28 -- pbuz1=pbuz1_minus_vbuc1
sec
lda.z conio_line_color
sbc #$28
sta.z conio_line_color
lda.z conio_line_color+1
sbc #0
sta.z conio_line_color+1
// [483] conio_cursor_y = -- conio_cursor_y -- vbuz1=_dec_vbuz1
dec.z conio_cursor_y
jmp __breturn
// cscroll::@return
__breturn:
// [484] return
rts
}
// memcpy
// Copy block of memory (forwards)
// Copies the values of num bytes from the location pointed to by source directly to the memory block pointed to by destination.
// void * memcpy(__zp($b) void *destination, __zp($d) void *source, unsigned int num)
memcpy: {
.label src_end = 9
.label dst = $b
.label src = $d
.label source = $d
.label destination = $b
// [486] memcpy::src_end#0 = (char *)memcpy::source#2 + (unsigned int)$19*$28-$28 -- pbuz1=pbuz2_plus_vwuc1
lda.z source
clc
adc #<$19*$28-$28
sta.z src_end
lda.z source+1
adc #>$19*$28-$28
sta.z src_end+1
// [487] memcpy::src#4 = (char *)memcpy::source#2
// [488] memcpy::dst#4 = (char *)memcpy::destination#2
// [489] phi from memcpy memcpy::@2 to memcpy::@1 [phi:memcpy/memcpy::@2->memcpy::@1]
__b1_from_memcpy:
__b1_from___b2:
// [489] phi memcpy::dst#2 = memcpy::dst#4 [phi:memcpy/memcpy::@2->memcpy::@1#0] -- register_copy
// [489] phi memcpy::src#2 = memcpy::src#4 [phi:memcpy/memcpy::@2->memcpy::@1#1] -- register_copy
jmp __b1
// memcpy::@1
__b1:
// [490] if(memcpy::src#2!=memcpy::src_end#0) goto memcpy::@2 -- pbuz1_neq_pbuz2_then_la1
lda.z src+1
cmp.z src_end+1
bne __b2
lda.z src
cmp.z src_end
bne __b2
jmp __breturn
// memcpy::@return
__breturn:
// [491] return
rts
// memcpy::@2
__b2:
// [492] *memcpy::dst#2 = *memcpy::src#2 -- _deref_pbuz1=_deref_pbuz2
ldy #0
lda (src),y
ldy #0
sta (dst),y
// [493] memcpy::dst#1 = ++ memcpy::dst#2 -- pbuz1=_inc_pbuz1
inc.z dst
bne !+
inc.z dst+1
!:
// [494] memcpy::src#1 = ++ memcpy::src#2 -- pbuz1=_inc_pbuz1
inc.z src
bne !+
inc.z src+1
!:
jmp __b1_from___b2
}
// memset
// Copies the character c (an unsigned char) to the first num characters of the object pointed to by the argument str.
// void * memset(__zp($b) void *str, __zp($10) char c, unsigned int num)
memset: {
.label end = $12
.label dst = $b
.label c = $10
.label str = $b
jmp __b1
// memset::@1
__b1:
// [496] memset::end#0 = (char *)memset::str#3 + $28 -- pbuz1=pbuz2_plus_vbuc1
lda #$28
clc
adc.z str
sta.z end
lda #0
adc.z str+1
sta.z end+1
// [497] memset::dst#4 = (char *)memset::str#3
// [498] phi from memset::@1 memset::@3 to memset::@2 [phi:memset::@1/memset::@3->memset::@2]
__b2_from___b1:
__b2_from___b3:
// [498] phi memset::dst#2 = memset::dst#4 [phi:memset::@1/memset::@3->memset::@2#0] -- register_copy
jmp __b2
// memset::@2
__b2:
// [499] if(memset::dst#2!=memset::end#0) goto memset::@3 -- pbuz1_neq_pbuz2_then_la1
lda.z dst+1
cmp.z end+1
bne __b3
lda.z dst
cmp.z end
bne __b3
jmp __breturn
// memset::@return
__breturn:
// [500] return
rts
// memset::@3
__b3:
// [501] *memset::dst#2 = memset::c#4 -- _deref_pbuz1=vbuz2
lda.z c
ldy #0
sta (dst),y
// [502] memset::dst#1 = ++ memset::dst#2 -- pbuz1=_inc_pbuz1
inc.z dst
bne !+
inc.z dst+1
!:
jmp __b2_from___b3
}
// File Data
.segment Data
// The digits used for numbers
DIGITS: .text "0123456789abcdef"
// Values of decimal digits
RADIX_DECIMAL_VALUES: .word $2710, $3e8, $64, $a
// [0..65536] 16-bit
points: .byte 0, 0, 0, 0
buffer: .byte 0, 0, 0, 0
// for unexpanded. 37888-4096 color for expanded
ducknumber: .byte $44, $55, $43, $4b, $3a
// DUCK:
chrono: .byte $54, $4d, $3a, $39
// TM:9
duck_udg: .byte $e, $1b, $3f, $1f, $f, 7, $f, $1f, 0, 0, 0, 0, 0, $c0, $70, $bc, $1f, $1d, $1e, $f, 3, 1, 1, 3, $ce, $1e, $7c, $f8, $e0, $40, $40, $e0, 0, 0, 0, 0, 0, 0, 0, 0
// POKE CODES = 0,1,2,3,4; CHROUT CODES = 64, 65, 66, 67, 68 (with previous reverse_off "chrout(146)")
intro: .text @"\n\n\nDIFFICULTY\n----------\n\n\n"
.byte 0
levels: .text @"1.EASIEST\n\n3.EASY\n\n5.MEDIUM\n\n7.HARD\n\n9.EXPERT\n\n\n\n\n"
.byte 0
foot: .text @"PRESS: 1,3,5,7 or 9\n\n"
.byte 0
game_over: .text @"\n\n\n\nGAME OVER"
.byte 0
play_again: .text @"\n\n\nPlay Again (Y/N)?"
.byte 0
your_score: .text @"\n\n\nYour Score: "
.byte 0
high_score: .text @"\n\nHi-Score: "
.byte 0
ASSEMBLER OPTIMIZATIONS
Removing instruction jmp __init1
Removing instruction jmp __b1
Removing instruction jmp __breturn
Removing instruction jmp __b2
Removing instruction jmp __b1
Removing instruction jmp __breturn
Removing instruction jmp __b50
Removing instruction jmp __b51
Removing instruction jmp __b1
Removing instruction jmp __b3
Removing instruction jmp __b52
Removing instruction jmp __b53
Removing instruction jmp __b54
Removing instruction jmp __b55
Removing instruction jmp __b56
Removing instruction jmp __b57
Removing instruction jmp __b4
Removing instruction jmp __b5
Removing instruction jmp __b58
Removing instruction jmp __b59
Removing instruction jmp __b60
Removing instruction jmp __b6
Removing instruction jmp __b8
Removing instruction jmp __b61
Removing instruction jmp __b62
Removing instruction jmp __b13
Removing instruction jmp __b71
Removing instruction jmp __b12
Removing instruction jmp __b65
Removing instruction jmp __b66
Removing instruction jmp __b67
Removing instruction jmp __b68
Removing instruction jmp __b69
Removing instruction jmp __b70
Removing instruction jmp __b17
Removing instruction jmp __b19
Removing instruction jmp __b75
Removing instruction jmp __b76
Removing instruction jmp __b77
Removing instruction jmp __b20
Removing instruction jmp __b22
Removing instruction jmp __b79
Removing instruction jmp __b80
Removing instruction jmp __b81
Removing instruction jmp __b45
Removing instruction jmp __b82
Removing instruction jmp __b24
Removing instruction jmp __b83
Removing instruction jmp __b84
Removing instruction jmp __b106
Removing instruction jmp __b105
Removing instruction jmp __b104
Removing instruction jmp __b103
Removing instruction jmp __b25
Removing instruction jmp __b26
Removing instruction jmp __b28
Removing instruction jmp __b86
Removing instruction jmp __b87
Removing instruction jmp __b44
Removing instruction jmp __b91
Removing instruction jmp __b92
Removing instruction jmp __b93
Removing instruction jmp __b94
Removing instruction jmp __b95
Removing instruction jmp __b96
Removing instruction jmp __b97
Removing instruction jmp __b98
Removing instruction jmp __b99
Removing instruction jmp __b100
Removing instruction jmp __b101
Removing instruction jmp __b102
Removing instruction jmp __b47
Removing instruction jmp __b112
Removing instruction jmp __b48
Removing instruction jmp __b49
Removing instruction jmp __breturn
Removing instruction jmp __b27
Removing instruction jmp __b85
Removing instruction jmp __b37
Removing instruction jmp __b29
Removing instruction jmp __b38
Removing instruction jmp __b30
Removing instruction jmp __b39
Removing instruction jmp __b31
Removing instruction jmp __b40
Removing instruction jmp __b32
Removing instruction jmp __b41
Removing instruction jmp __b42
Removing instruction jmp __b35
Removing instruction jmp __b33
Removing instruction jmp __b111
Removing instruction jmp __b110
Removing instruction jmp __b36
Removing instruction jmp __b89
Removing instruction jmp __b90
Removing instruction jmp __b108
Removing instruction jmp __b43
Removing instruction jmp __b88
Removing instruction jmp __b78
Removing instruction jmp __b74
Removing instruction jmp __b14
Removing instruction jmp __b16
Removing instruction jmp __b73
Removing instruction jmp __b72
Removing instruction jmp __b9
Removing instruction jmp __b11
Removing instruction jmp __b64
Removing instruction jmp __b63
Removing instruction jmp __b3
Removing instruction jmp __b1
Removing instruction jmp __b2
Removing instruction jmp __breturn
Removing instruction jmp __breturn
Removing instruction jmp __b1
Removing instruction jmp __b3
Removing instruction jmp __b4
Removing instruction jmp __breturn
Removing instruction jmp __breturn
Removing instruction jmp __b1
Removing instruction jmp __breturn
Removing instruction jmp __b1
Removing instruction jmp __b2
Removing instruction jmp __breturn
Removing instruction jmp __b15
Removing instruction jmp __b1
Removing instruction jmp __b5
Removing instruction jmp __b7
Removing instruction jmp __b11
Removing instruction jmp __b8
Removing instruction jmp __b2
Removing instruction jmp __b4
Removing instruction jmp __b3
Removing instruction jmp __b12
Removing instruction jmp __b13
Removing instruction jmp __b9
Removing instruction jmp __breturn
Removing instruction jmp __b14
Removing instruction jmp __breturn
Removing instruction jmp __b1
Removing instruction jmp __breturn
Removing instruction jmp __b2
Removing instruction jmp __b4
Removing instruction jmp __b1
Removing instruction jmp __b3
Removing instruction jmp __breturn
Removing instruction jmp __b7
Removing instruction jmp __b4
Removing instruction jmp __b6
Removing instruction jmp __b2
Removing instruction jmp __b1
Removing instruction jmp __breturn
Removing instruction jmp __b2
Removing instruction jmp __b3
Removing instruction jmp __breturn
Removing instruction jmp __b1
Removing instruction jmp __b1
Removing instruction jmp __b3
Removing instruction jmp __breturn
Removing instruction jmp __b1
Removing instruction jmp __b2
Removing instruction jmp __breturn
Removing instruction jmp __breturn
Removing instruction jmp __b1
Removing instruction jmp __b4
Removing instruction jmp __b2
Removing instruction jmp __b5
Removing instruction jmp __b3
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 __breturn
Removing instruction jmp __b1
Removing instruction jmp __breturn
Removing instruction jmp __b1
Removing instruction jmp __b2
Removing instruction jmp __breturn
Succesful ASM optimization Pass5NextJumpElimination
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda.z line
Removing instruction lda #<0
Removing instruction lda #>0
Removing instruction lda #<0
Removing instruction lda #>0
Removing instruction lda #0
Removing instruction lda.z __29+1
Removing instruction lda #>0
Removing instruction lda #>0
Replacing instruction ldy #0 with TAY
Replacing instruction lda #0 with TYA
Removing instruction ldy #0
Replacing instruction lda #0 with TYA
Removing instruction ldy #0
Replacing instruction lda #0 with TYA
Removing instruction ldy #0
Removing instruction lda.z __78
Removing instruction lda.z __81
Removing instruction lda.z __84
Removing instruction lda.z __88
Removing instruction lda.z __92
Removing instruction ldy #0
Removing instruction ldy #0
Removing instruction ldy #0
Replacing instruction lda #0 with TYA
Removing instruction ldy #0
Removing instruction ldy #0
Replacing instruction lda #0 with TYA
Removing instruction ldy #0
Removing instruction ldy #0
Replacing instruction ldy #0 with TAY
Removing instruction ldy #0
Removing instruction ldy #0
Removing instruction ldy #0
Replacing instruction lda #0 with TYA
Removing instruction ldy #0
Removing instruction ldy #0
Replacing instruction lda #0 with TYA
Removing instruction ldy #0
Removing instruction ldy #0
Replacing instruction ldy #0 with TAY
Replacing instruction lda #0 with TYA
Removing instruction ldy #0
Replacing instruction lda #0 with TYA
Replacing instruction lda #0 with TYA
Removing instruction ldy #0
Replacing instruction ldy #0 with TAY
Removing instruction lda.z z_1+1
Removing instruction lda #>0
Replacing instruction ldy #0 with TAY
Removing instruction ldy #0
Removing instruction lda.z m
Removing instruction lda #>0
Replacing instruction ldy #0 with TAY
Replacing instruction ldx #0 with TAX
Removing instruction lda #>0
Removing instruction lda #0
Replacing instruction ldy.z __11 with TAY
Replacing instruction ldy #0 with TAY
Replacing instruction ldy.z __10 with TAY
Replacing instruction lda.z m with TXA
Removing instruction ldy.z conio_cursor_x
Removing instruction lda #0
Removing instruction lda.z __1
Removing instruction ldy #0
Succesful ASM optimization Pass5UnnecesaryLoadElimination
Replacing label __b2_from_conio_c64_init with __b1
Replacing label __b24_from___b106 with __b24_from___b84
Replacing label __b24_from___b105 with __b24_from___b84
Replacing label __b24_from___b104 with __b24_from___b84
Replacing label __b24_from___b103 with __b24_from___b84
Replacing label __b27_from___b26 with __b27
Replacing label __b22_from___b87 with __b22
Replacing label __b46_from___b114 with __b46_from___b99
Replacing label __b29_from___b85 with __b29
Replacing label __b30_from___b29 with __b30
Replacing label __b31_from___b30 with __b31
Replacing label __b32_from___b31 with __b32
Replacing label __b33_from___b32 with __b33
Replacing label __b36_from___b33 with __b36
Replacing label __b36_from___b109 with __b36_from___b111
Replacing label __b36_from___b108 with __b36_from___b111
Replacing label __b36_from___b107 with __b36_from___b111
Replacing label __b36_from___b107 with __b36_from___b111
Replacing label __b36_from___b43 with __b36
Replacing label __b24_from___b23 with __b24_from___b84
Replacing label __b13_from___b73 with __b13
Replacing label __b13_from___b73 with __b13
Replacing label __b3_from_gotoxy with __b2
Replacing label __b1 with __b2
Replacing label __b1_from___b2 with __b1
Replacing label __b15_from_write_score with __b1
Replacing label __b15_from_write_score with __b1
Replacing label __b1_from___b4 with __b1
Replacing label __b1_from_cputc with __b1
Replacing label __b2_from___b1 with __b2
Replacing label __b3_from___b2 with __b3
Replacing label __b1_from___b3 with __b1
Replacing label __b1_from___b2 with __b1
Replacing label __b2_from___b3 with __b2
Removing instruction __b1_from___init1:
Removing instruction __b2_from_conio_c64_init:
Removing instruction __b2:
Removing instruction __b1_from___b2:
Removing instruction gotoxy_from___b1:
Removing instruction clear_screen_from___b3:
Removing instruction __b52_from___b3:
Removing instruction __b53_from___b52:
Removing instruction cputs_from___b53:
Removing instruction __b54_from___b53:
Removing instruction __b55_from___b54:
Removing instruction cputs_from___b55:
Removing instruction __b56_from___b55:
Removing instruction __b57_from___b56:
Removing instruction cputs_from___b57:
Removing instruction __b5_from___b4:
Removing instruction __b13_from___b73:
Removing instruction __b12_from___b71:
Removing instruction __b19_from___b17:
Removing instruction __b22_from___b87:
Removing instruction __b24_from___b103:
Removing instruction __b24_from___b104:
Removing instruction __b24_from___b105:
Removing instruction __b24_from___b106:
Removing instruction __b24_from___b23:
Removing instruction __b24_from___b82:
Removing instruction random_from___b24:
Removing instruction __b25_from___b103:
Removing instruction __b44_from___b87:
Removing instruction __b92_from___b91:
Removing instruction __b93_from___b92:
Removing instruction cputs_from___b93:
Removing instruction __b94_from___b93:
Removing instruction __b95_from___b94:
Removing instruction cputs_from___b95:
Removing instruction __b96_from___b95:
Removing instruction cputs_from___b96:
Removing instruction __b97_from___b96:
Removing instruction __b98_from___b97:
Removing instruction cputs_from___b98:
Removing instruction __b46_from___b114:
Removing instruction __b100_from___b46:
Removing instruction cputs_from___b100:
Removing instruction __b101_from___b100:
Removing instruction __b102_from___b101:
Removing instruction cputs_from___b102:
Removing instruction __b27_from___b26:
Removing instruction __b29_from___b37:
Removing instruction __b29_from___b85:
Removing instruction __b30_from___b29:
Removing instruction __b30_from___b38:
Removing instruction __b31_from___b30:
Removing instruction __b31_from___b39:
Removing instruction __b32_from___b31:
Removing instruction __b32_from___b40:
Removing instruction __b33_from___b32:
Removing instruction __b33_from___b35:
Removing instruction __b36_from___b107:
Removing instruction __b36_from___b108:
Removing instruction __b36_from___b109:
Removing instruction __b36_from___b110:
Removing instruction __b36_from___b33:
Removing instruction __b36_from___b43:
Removing instruction __b88_from___b34:
Removing instruction wait_from___b88:
Removing instruction __b3_from_gotoxy:
Removing instruction __b3:
Removing instruction __b1_from___b3:
Removing instruction __b1:
Removing instruction __b3_from___b1:
Removing instruction __b1_from_cputs:
Removing instruction __b1_from___b2:
Removing instruction __b15_from_write_score:
Removing instruction __b15:
Removing instruction __b1_from___b15:
Removing instruction __b1_from_wait:
Removing instruction __b1_from___b4:
Removing instruction __b4_from___b7:
Removing instruction utoa_append_from___b5:
Removing instruction __b3_from___b2:
Removing instruction __b1_from_cputc:
Removing instruction __b1_from___b3:
Removing instruction __b2_from___b1:
Removing instruction __b2_from___b4:
Removing instruction __b3_from___b2:
Removing instruction __b3_from___b5:
Removing instruction __b1_from_cscroll:
Removing instruction memcpy_from___b1:
Removing instruction __b2_from___b1:
Removing instruction memcpy_from___b2:
Removing instruction __b3_from___b2:
Removing instruction memset_from___b3:
Removing instruction __b1_from_memcpy:
Removing instruction __b1_from___b2:
Removing instruction __b2_from___b1:
Removing instruction __b2_from___b3:
Succesful ASM optimization Pass5RedundantLabelElimination
Removing instruction __init1:
Removing instruction __b1:
Removing instruction __breturn:
Removing instruction __b1_from_conio_c64_init:
Removing instruction __breturn:
Removing instruction __b50:
Removing instruction __b51:
Removing instruction __b3_from___b1:
Removing instruction __b52:
Removing instruction textcolor_from___b52:
Removing instruction __b53:
Removing instruction __b54:
Removing instruction textcolor_from___b54:
Removing instruction __b55:
Removing instruction __b56:
Removing instruction textcolor_from___b56:
Removing instruction __b57:
Removing instruction __b5:
Removing instruction clear_screen_from___b5:
Removing instruction __b58:
Removing instruction __b59:
Removing instruction __b60:
Removing instruction __b6_from___b60:
Removing instruction __b8:
Removing instruction __b61:
Removing instruction __b62:
Removing instruction __b13_from___b62:
Removing instruction random_from___b13:
Removing instruction __b71:
Removing instruction __b65:
Removing instruction __b66:
Removing instruction __b67:
Removing instruction __b68:
Removing instruction __b69:
Removing instruction __b70:
Removing instruction __b17_from___b70:
Removing instruction __b19:
Removing instruction write_score_from___b19:
Removing instruction __b75:
Removing instruction __b76:
Removing instruction __b77:
Removing instruction __b20_from___b77:
Removing instruction __b22_from___b20:
Removing instruction __b79:
Removing instruction __b80:
Removing instruction __b81:
Removing instruction __b45:
Removing instruction __b82:
Removing instruction __b24:
Removing instruction __b83:
Removing instruction random_from___b83:
Removing instruction __b84:
Removing instruction __b106:
Removing instruction __b105:
Removing instruction __b104:
Removing instruction __b103:
Removing instruction __b25:
Removing instruction __b26_from___b25:
Removing instruction __b28:
Removing instruction write_score_from___b28:
Removing instruction __b86:
Removing instruction wait_from___b86:
Removing instruction __b87:
Removing instruction __b44:
Removing instruction clear_screen_from___b44:
Removing instruction __b91:
Removing instruction __b92:
Removing instruction textcolor_from___b92:
Removing instruction __b93:
Removing instruction __b94:
Removing instruction textcolor_from___b94:
Removing instruction __b95:
Removing instruction __b96:
Removing instruction __b97:
Removing instruction textcolor_from___b97:
Removing instruction __b98:
Removing instruction __b99:
Removing instruction utoa_from___b46:
Removing instruction __b100:
Removing instruction __b101:
Removing instruction textcolor_from___b101:
Removing instruction __b102:
Removing instruction __b112:
Removing instruction __b49:
Removing instruction __breturn:
Removing instruction __b3_from___b113:
Removing instruction __b85:
Removing instruction __b37:
Removing instruction __b38:
Removing instruction __b39:
Removing instruction __b40:
Removing instruction __b41:
Removing instruction __b42:
Removing instruction wait_from___b42:
Removing instruction __b35_from___b42:
Removing instruction __b111:
Removing instruction __b110:
Removing instruction wait_from___b36:
Removing instruction __b89:
Removing instruction wait_from___b89:
Removing instruction __b90:
Removing instruction __b26_from___b90:
Removing instruction __b108:
Removing instruction __b43:
Removing instruction write_score_from___b34:
Removing instruction __b88:
Removing instruction __b35_from___b88:
Removing instruction __b78:
Removing instruction __b20_from___b78:
Removing instruction __b74:
Removing instruction __b17_from___b74:
Removing instruction __b16:
Removing instruction __b73:
Removing instruction __b72:
Removing instruction __b14_from___b72:
Removing instruction __b9_from___b7:
Removing instruction __b11:
Removing instruction __b64:
Removing instruction __b6_from___b64:
Removing instruction __b63:
Removing instruction __b9_from___b63:
Removing instruction __b1_from_gotoxy:
Removing instruction __breturn:
Removing instruction __breturn:
Removing instruction __b1_from_clear_screen:
Removing instruction __b3:
Removing instruction gotoxy_from___b3:
Removing instruction __b4:
Removing instruction __breturn:
Removing instruction __b1_from___b2:
Removing instruction __breturn:
Removing instruction __breturn:
Removing instruction __b2:
Removing instruction __breturn:
Removing instruction __b1_from_write_score:
Removing instruction __b7:
Removing instruction utoa_from___b7:
Removing instruction __b11:
Removing instruction __b8:
Removing instruction __b4:
Removing instruction __b12:
Removing instruction __b13:
Removing instruction __breturn:
Removing instruction __b14:
Removing instruction __breturn:
Removing instruction __breturn:
Removing instruction __b4:
Removing instruction __b2_from___b3:
Removing instruction __b1_from_utoa:
Removing instruction __b3:
Removing instruction __breturn:
Removing instruction __b7:
Removing instruction __b1_from___b4:
Removing instruction __b6:
Removing instruction __b4_from___b6:
Removing instruction __b2:
Removing instruction __b1:
Removing instruction __b2:
Removing instruction __b3:
Removing instruction __b1_from_utoa_append:
Removing instruction __b3:
Removing instruction __breturn:
Removing instruction __b1_from___b2:
Removing instruction divr8u_from_div16u8u:
Removing instruction __b1:
Removing instruction divr8u_from___b1:
Removing instruction __b2:
Removing instruction __breturn:
Removing instruction __breturn:
Removing instruction __b1_from_divr8u:
Removing instruction __b4:
Removing instruction __b5:
Removing instruction __breturn:
Removing instruction __b1:
Removing instruction __b2:
Removing instruction __b3:
Removing instruction __b4:
Removing instruction memset_from___b4:
Removing instruction __b5:
Removing instruction __breturn:
Removing instruction __b1:
Removing instruction __breturn:
Succesful ASM optimization Pass5UnusedLabelElimination
Skipping double jump to __b46 in jmp __b46_from___b99
Skipping double jump to __b36 in beq __b36_from___b111
Skipping double jump to __b36 in beq __b36_from___b111
Skipping double jump to __b36 in jmp __b36_from___b111
Skipping double jump to __b36 in bne __b36_from___b111
Skipping double jump to __b36 in bcs __b36_from___b111
Skipping double jump to __b12 in jmp __b12_from___b73
Replacing jump to rts with rts in jmp __breturn
Succesful ASM optimization Pass5DoubleJumpElimination
Relabelling long label __b12_from___b73 to __b5
Relabelling long label __b12_from___b62 to __b8
Relabelling long label __b24_from___b84 to __b11
Relabelling long label __b46_from___b99 to __b16
Relabelling long label __b36_from___b111 to __b19
Relabelling long label __b14_from___b71 to __b24
Relabelling long label __b2_from___b1 to __b4
Succesful ASM optimization Pass5RelabelLongLabels
Removing instruction jmp __b1
Removing instruction jmp __b13
Removing instruction jmp __b22
Removing instruction jmp __b46
Removing instruction jmp __b36
Removing instruction jmp __b2
Removing instruction jmp __b1
Removing instruction jmp __b1
Succesful ASM optimization Pass5NextJumpElimination
Removing instruction lda #brick
Removing instruction ldy #0
Removing instruction lda #brick
Removing instruction ldy #0
Removing instruction lda #brick
Removing instruction ldy #0
Removing instruction lda #brick
Removing instruction ldy #0
Removing instruction ldy #0
Succesful ASM optimization Pass5UnnecesaryLoadElimination
Removing instruction __b19:
Succesful ASM optimization Pass5RedundantLabelElimination
Removing instruction __b5:
Removing instruction __b16:
Succesful ASM optimization Pass5UnusedLabelElimination
Fixing long branch [445] beq __b11 to bne
Fixing long branch [531] bcc __b22 to bcs
Fixing long branch [920] beq __b36 to bne
Fixing long branch [936] bne __b36 to beq
Fixing long branch [941] bcs __b36 to bcc
Fixing long branch [1052] bcc __b13 to bcs
Fixing long branch [1058] bcc __b13 to bcs
Fixing long branch [161] bcc __b2 to bcs
Fixing long branch [235] bcc __b7 to bcs
Fixing long branch [287] bcc __b24 to bcs
Fixing long branch [290] beq __b24 to bne
Fixing long branch [329] bcc __b18 to bcs
Fixing long branch [352] bcc __b21 to bcs
Fixing long branch [381] bcc __b23 to bcs
Fixing long branch [471] bcc __b27 to bcs
Fixing long branch [711] bne __b34 to beq
Fixing long branch [716] bne __b34 to beq
Fixing long branch [790] bne __b109 to beq
FINAL SYMBOL TABLE
__constant char * const COLORRAM = (char *) 55296
__constant char * const DEFAULT_SCREEN = (char *) 1024
__constant char DIGITS[] = "0123456789abcdef"z
__constant const char LIGHT_BLUE = $e
__constant char RADIX::BINARY = 2
__constant char RADIX::DECIMAL = $a
__constant char RADIX::HEXADECIMAL = $10
__constant char RADIX::OCTAL = 8
__constant unsigned int RADIX_DECIMAL_VALUES[] = { $2710, $3e8, $64, $a }
void __start()
__constant const char brick = $e6
__constant char buffer[] = { 0, 0, 0, 0 }
__constant const unsigned int c = $7800
__constant const char chrono[] = { $54, $4d, $3a, $39 }
void chrono_restart()
void chrout(volatile char petscii)
__loadstore volatile char chrout::petscii // zp[1]:24 3.0310104636363637E7
void clear_screen(char n , char m)
unsigned int clear_screen::$4 // zp[2]:35 100001.0
unsigned int clear_screen::$5 // zp[2]:9 66667.33333333333
char clear_screen::m
char clear_screen::n
char clear_screen::n#5 // n zp[1]:8 12500.125
void conio_c64_init()
__constant char * const conio_c64_init::BASIC_CURSOR_LINE = (char *) 214
char conio_c64_init::line
char conio_c64_init::line#0 // line zp[1]:76 11.0
char conio_c64_init::line#2 // line zp[1]:76 22.0
__loadstore char conio_cursor_x // zp[1]:39 200133.45333333334
__loadstore char conio_cursor_y // zp[1]:29 3516593.4945054944
__loadstore char *conio_line_color // zp[2]:30 2662771.1807228914
__loadstore char *conio_line_text // zp[2]:32 2600117.7411764706
__loadstore char conio_textcolor // zp[1]:34 1629048.4677419355
void cputc(char c)
char cputc::c
char cputc::c#0 // c zp[1]:2 1050001.5
void cputln()
void cputs(const char *s)
char cputs::c
char cputs::c#1 // c zp[1]:2 100001.0
const char *cputs::s
const char *cputs::s#0 // s zp[2]:5 50000.5
const char *cputs::s#10 // s zp[2]:5 150502.0
const char *cputs::s#11 // s zp[2]:5 1001.0
void cscroll()
unsigned int div16u8u(unsigned int dividend , char divisor)
unsigned int div16u8u::dividend
unsigned int div16u8u::dividend#0 // dividend zp[2]:35 420000.60000000003
char div16u8u::divisor
__constant char div16u8u::divisor#0 = $3c // divisor
unsigned int div16u8u::quotient
char div16u8u::quotient_hi
char div16u8u::quotient_hi#0 // quotient_hi zp[1]:2 333333.6666666667
char div16u8u::quotient_lo
char div16u8u::quotient_lo#0 // quotient_lo zp[1]:16 2000002.0
unsigned int div16u8u::return
unsigned int div16u8u::return#0 // return zp[2]:18 366667.3333333334
unsigned int div16u8u::return#2 // return_1 zp[2]:48 9166.833333333332
char divr8u(char dividend , char divisor , char rem)
char divr8u::$1 // zp[1]:17 2.00000000002E11
char divr8u::dividend
char divr8u::dividend#0 // dividend zp[1]:3 2.500000000025E10
char divr8u::dividend#1 // dividend zp[1]:3 2000002.0
char divr8u::dividend#2 // dividend zp[1]:3 1000001.0
char divr8u::dividend#3 // dividend zp[1]:3 5.0001666667333336E10
char divr8u::dividend#5 // dividend zp[1]:3 1.2000003E7
char divr8u::divisor
char divr8u::i
char divr8u::i#1 // i zp[1]:7 1.500000000015E11
char divr8u::i#2 // i zp[1]:7 1.6666666666833334E10
char divr8u::quotient
char divr8u::quotient#1 // quotient zp[1]:16 1.500000000015E11
char divr8u::quotient#2 // quotient zp[1]:16 1.00000000001E11
char divr8u::quotient#3 // quotient zp[1]:16 2.8571428571714287E10
char divr8u::rem
char divr8u::rem#0 // rem zp[1]:15 1.00000000001E11
char divr8u::rem#1 // rem zp[1]:15 2.00000000002E11
char divr8u::rem#10 // rem zp[1]:15 1.1000002E7
char divr8u::rem#11 // rem zp[1]:15 2.702711801846847E9
char divr8u::rem#2 // rem zp[1]:15 2.00000000002E11
char divr8u::rem#4 // rem zp[1]:15 2000002.0
char divr8u::rem#5 // rem zp[1]:15 2.00010000003E11
char divr8u::rem#6 // rem zp[1]:15 1.00000000001E11
char divr8u::return
char divr8u::return#0 // return zp[1]:16 5.000033333416667E10
char divr8u::return#2 // return zp[1]:16 2000002.0
char divr8u::return#3 // return zp[1]:16 2000002.0
__constant const char down = $11
unsigned int duck
unsigned int duck#0 // duck zp[2]:22 6.6666667333333336E7
unsigned int duck#1 // duck zp[2]:22 4237745.88135593
__constant const char duck_udg[] = { $e, $1b, $3f, $1f, $f, 7, $f, $1f, 0, 0, 0, 0, 0, $c0, $70, $bc, $1f, $1d, $1e, $f, 3, 1, 1, 3, $ce, $1e, $7c, $f8, $e0, $40, $40, $e0, 0, 0, 0, 0, 0, 0, 0, 0 }
__constant const char ducknumber[] = { $44, $55, $43, $4b, $3a }
__constant const char foot[] = "PRESS: 1,3,5,7 or 9
"
__constant const char game_over[] = "
GAME OVER"
void gotoxy(char x , char y)
char *gotoxy::$5 // zp[2]:72 20002.0
char *gotoxy::$6 // zp[2]:44 20002.0
unsigned int gotoxy::$7 // zp[2]:44 15001.5
unsigned int gotoxy::$8 // zp[2]:70 20002.0
unsigned int gotoxy::$9 // zp[2]:44 20002.0
unsigned int gotoxy::line_offset
unsigned int gotoxy::line_offset#0 // line_offset zp[2]:44 10001.0
char gotoxy::x
char gotoxy::y
char gotoxy::y#2 // y zp[1]:76 22.0
char gotoxy::y#4 // y zp[1]:76 6671.0
char gotoxy::y#5 // y zp[1]:76 6667.333333333333
__constant const char green = $1e
__constant const char high_score[] = "
Hi-Score: "
unsigned int hiscore
unsigned int hiscore#110 // hiscore_1 zp[2]:108 1.1744186046511627
unsigned int hiscore#123 // hiscore_1 zp[2]:108 202.0
unsigned int hiscore#124 // hiscore zp[2]:42 202.0
unsigned int hiscore#19 // hiscore zp[2]:42 31.076923076923077
__constant const char home = $13
__constant const char intro[] = "
DIFFICULTY
----------
"
char j
char j#11 // j zp[1]:50 7500.75
char j#13 // j_1 zp[1]:85 1001.0
char j#16 // j_2 zp[1]:86 1001.0
char j#19 // j_3 zp[1]:104 1034.6666666666667
char j#2 // j zp[1]:50 20002.0
char j#3 // j_1 zp[1]:85 2002.0
char j#5 // j_2 zp[1]:86 2002.0
char k
char k#1 // k zp[1]:99 2002.0
char k#101 // k zp[1]:99 273.0
__loadstore volatile char l // zp[1]:107 455.79148936170213
__constant const char levels[] = "1.EASIEST
3.EASY
5.MEDIUM
7.HARD
9.EXPERT
"
__constant const char lock = 8
__constant const char lower = $e
__loadstore volatile char m // zp[1]:4 3.8961039106499544E16
void main()
unsigned int main::$104 // zp[2]:93 2500.25
unsigned int main::$107 // zp[2]:95 2500.25
unsigned int main::$110 // zp[2]:97 2500.25
unsigned int main::$119 // zp[2]:74 6667.333333333333
unsigned int main::$120 // zp[2]:81 10001.0
unsigned int main::$122 // zp[2]:83 10001.0
unsigned int main::$124 // zp[2]:74 10001.0
unsigned int main::$125 // zp[2]:77 10001.0
unsigned int main::$127 // zp[2]:58 10001.0
unsigned int main::$128 // zp[2]:58 10001.0
unsigned int main::$130 // zp[2]:60 10001.0
unsigned int main::$131 // zp[2]:60 10001.0
unsigned int main::$133 // zp[2]:62 10001.0
unsigned int main::$134 // zp[2]:62 10001.0
unsigned int main::$136 // zp[2]:79 10001.0
unsigned int main::$138 // zp[2]:64 10001.0
unsigned int main::$139 // zp[2]:64 10001.0
unsigned int main::$141 // zp[2]:66 10001.0
unsigned int main::$142 // zp[2]:66 10001.0
unsigned int main::$144 // zp[2]:68 10001.0
unsigned int main::$145 // zp[2]:68 10001.0
unsigned int main::$150 // zp[2]:105 1001.0
unsigned int main::$151 // zp[2]:87 2002.0
unsigned int main::$152 // zp[2]:87 1001.0
unsigned int main::$153 // zp[2]:89 2002.0
unsigned int main::$154 // zp[2]:89 1001.0
unsigned int main::$155 // zp[2]:91 2002.0
unsigned int main::$156 // zp[2]:91 1001.0
char main::$177 // zp[1]:8 2002.0
unsigned int main::$179 // zp[2]:56 20002.0
unsigned int main::$180 // zp[2]:46 20002.0
char main::$26 // zp[1]:8 2002.0
unsigned int main::$29 // zp[2]:5 2002.0
unsigned int main::$3 // zp[2]:112 101.0
unsigned int main::$35 // zp[2]:102 2002.0
unsigned int main::$57 // zp[2]:100 2002.0
unsigned int main::$61 // zp[2]:13 2.00000002E8
unsigned int main::$66 // zp[2]:11 2.00000002E7
unsigned int main::$69 // zp[2]:25 2.00000002E7
unsigned int main::$72 // zp[2]:27 2.00000002E7
char main::$78 // zp[1]:16 20002.0
char main::$81 // zp[1]:7 20002.0
char main::$84 // zp[1]:3 20002.0
char main::$88 // zp[1]:54 20002.0
char main::$92 // zp[1]:55 20002.0
unsigned int main::$96 // zp[2]:46 15001.5
unsigned int main::$97 // zp[2]:46 20002.0
void * memcpy(void *destination , void *source , unsigned int num)
void *memcpy::destination
void *memcpy::destination#2 // destination zp[2]:11
char *memcpy::dst
char *memcpy::dst#1 // dst zp[2]:11 1.000000000001E12
char *memcpy::dst#2 // dst zp[2]:11 1.0003333333346667E12
char *memcpy::dst#4 // dst zp[2]:11 2.000000002E9
unsigned int memcpy::num
void *memcpy::return
void *memcpy::source
void *memcpy::source#2 // source zp[2]:13
char *memcpy::src
char *memcpy::src#1 // src zp[2]:13 2.000000000002E12
char *memcpy::src#2 // src zp[2]:13 1.00025000000125E12
char *memcpy::src#4 // src zp[2]:13 1.000000001E9
char *memcpy::src_end
char *memcpy::src_end#0 // src_end zp[2]:9 1.2512500000025E11
void * memset(void *str , char c , unsigned int num)
char memset::c
char memset::c#1 // c zp[1]:16 2.00000002E8
char memset::c#4 // c zp[1]:16 1.4287142857171426E11
char *memset::dst
char *memset::dst#1 // dst zp[2]:11 2.000000000002E12
char *memset::dst#2 // dst zp[2]:11 1.3336666666683335E12
char *memset::dst#4 // dst zp[2]:11 2.000000002E9
char *memset::end
char *memset::end#0 // end zp[2]:18 1.668333333336667E11
unsigned int memset::num
void *memset::return
void *memset::str
void *memset::str#3 // str zp[2]:11
char n
char n#1 // n zp[1]:51 20002.0
char n#101 // n zp[1]:51 4429.142857142857
char n#109 // n zp[1]:51 7.769230769230769
char n#14 // n zp[1]:51 344.8620689655172
char n#20 // n zp[1]:51 220.07272727272726
char n#52 // n zp[1]:51 93.84375
char n#89 // n zp[1]:51 35.644067796610166
unsigned int peephole
unsigned int peephole#12 // peephole zp[2]:52 617.7352941176471
unsigned int peephole#52 // peephole zp[2]:52 62.5625
__constant const char play_again[] = "
Play Again (Y/N)?"
__constant char points[] = { 0, 0, 0, 0 }
void random(char k , char n)
char random::$3 // zp[1]:2 5.5E17
char random::k
char random::k#0 // k zp[1]:3 500.5
char random::k#4 // k zp[1]:3 2.000000000000002E17
char random::n
char random::n#0 // n zp[1]:8 2002.0
char random::n#4 // n zp[1]:8 2.00000000000002E16
void read_chrono()
unsigned int read_chrono::$0 // zp[2]:35 200002.0
unsigned int read_chrono::$5 // zp[2]:9 200002.0
__constant const char red = $1c
char rem8u
char rem8u#127 // rem8u zp[1]:15 11.6
char rem8u#25 // rem8u zp[1]:15 220.07272727272726
char rem8u#48 // rem8u zp[1]:15 93.84375
__constant const char reverse_on = $12
__constant const char right = $1d
unsigned int score
unsigned int score#13 // score zp[2]:42 70334.66666666666
unsigned int score#19 // score zp[2]:42 1272.9090909090908
unsigned int score#38 // score zp[2]:42 3843.0654205607475
unsigned int score#4 // score zp[2]:42 2002.0
unsigned int score#43 // score zp[2]:42 566.0943396226415
unsigned int score#6 // score zp[2]:42 20002.0
unsigned int score#8 // score zp[2]:42 10001.0
unsigned int score#81 // score zp[2]:42 15001.5
char textcolor(char color)
char textcolor::color
char textcolor::color#7 // color zp[1]:8 1001.0
char textcolor::old
char textcolor::return
unsigned int time
unsigned int time#11 // time zp[2]:48 20002.0
unsigned int time#17 // time zp[2]:48 566.0943396226415
unsigned int time#38 // time zp[2]:48 10001.0
unsigned int tu
unsigned int tu#1 // tu zp[2]:110 166.83333333333334
unsigned int tu#13 // tu zp[2]:110 32.032
void utoa(unsigned int value , char *buffer , char radix)
char utoa::$10 // zp[1]:17 2.0000000002E10
char utoa::$11 // zp[1]:2 2000002.0
char *utoa::buffer
char *utoa::buffer#10 // buffer zp[2]:13 2.857285714714286E9
char *utoa::buffer#15 // buffer zp[2]:13 1.50000000015E10
char *utoa::buffer#3 // buffer zp[2]:13 2000002.0
char *utoa::buffer#4 // buffer zp[2]:13 2.0000000002E10
char utoa::digit
char utoa::digit#1 // digit zp[1]:3 2.0000000002E10
char utoa::digit#2 // digit zp[1]:3 2.857142857428571E9
unsigned int utoa::digit_value
unsigned int utoa::digit_value#0 // digit_value zp[2]:9 6.0000000006E9
unsigned int *utoa::digit_values
char utoa::max_digits
char utoa::radix
char utoa::started
char utoa::started#2 // started zp[1]:16 5.0000000005E9
char utoa::started#4 // started zp[1]:16 1.0000000001E10
unsigned int utoa::value
unsigned int utoa::value#0 // value zp[2]:5 1.0000000001E10
unsigned int utoa::value#1 // value zp[2]:5 200002.0
unsigned int utoa::value#10 // value zp[2]:5 1100103.0
unsigned int utoa::value#2 // value zp[2]:5 202.0
unsigned int utoa::value#3 // value zp[2]:5 5.714428572142858E9
unsigned int utoa::value#7 // value zp[2]:5 1.50000000015E10
unsigned int utoa_append(char *buffer , unsigned int value , unsigned int sub)
char *utoa_append::buffer
char *utoa_append::buffer#0 // buffer zp[2]:13 1.375000000025E10
char utoa_append::digit
char utoa_append::digit#1 // digit zp[1]:7 1.0E16
char utoa_append::digit#2 // digit zp[1]:7 1.000005E16
unsigned int utoa_append::return
unsigned int utoa_append::return#0 // return zp[2]:5 2.0000000002E10
unsigned int utoa_append::sub
unsigned int utoa_append::sub#0 // sub zp[2]:9 3.333335E15
unsigned int utoa_append::value
unsigned int utoa_append::value#0 // value zp[2]:5 3.6666666667333336E10
unsigned int utoa_append::value#1 // value zp[2]:5 2.0E16
unsigned int utoa_append::value#2 // value zp[2]:5 5.000018333333334E15
void wait(char n)
char wait::n
char wait::n#6 // n zp[1]:3 1.25000000125E8
void write_score()
unsigned int y
unsigned int y#0 // y zp[2]:40 20002.0
unsigned int y#1 // y zp[2]:40 20002.0
unsigned int y#10 // y zp[2]:40 13334.666666666666
unsigned int y#11 // y zp[2]:40 13334.666666666666
unsigned int y#114 // y zp[2]:40 11.6
unsigned int y#12 // y zp[2]:40 13334.666666666666
unsigned int y#13 // y zp[2]:40 2285.9428571428575
unsigned int y#130 // y zp[2]:40 20002.0
unsigned int y#141 // y_1 zp[2]:52 20002.0
unsigned int y#18 // y zp[2]:40 509.61904761904765
unsigned int y#2 // y zp[2]:40 20002.0
unsigned int y#3 // y zp[2]:40 20002.0
unsigned int y#35 // y_1 zp[2]:52 2353.1764705882347
unsigned int y#49 // y zp[2]:40 93.84375
__constant const char yellow = $9e
__constant const char your_score[] = "
Your Score: "
unsigned int z
unsigned int z#1 // z zp[2]:37 200002.0
unsigned int z#100 // z_1 zp[2]:20 1050.15
unsigned int z#102 // z_1 zp[2]:20 93.84375
unsigned int z#128 // z_1 zp[2]:20 93.84375
unsigned int z#2 // z zp[2]:37 66667.33333333333
unsigned int z#23 // z_1 zp[2]:20 1.0333333334666666E10
unsigned int z#25 // z_1 zp[2]:20 2.564438476923077E7
unsigned int z#28 // z_1 zp[2]:20 266.93333333333334
unsigned int z#4 // z_1 zp[2]:20 2.0000000002E10
unsigned int z#48 // z_1 zp[2]:20 857.2285714285714
unsigned int z#53 // z_1 zp[2]:20 70503.0
unsigned int z#9 // z_1 zp[2]:20 2002.0
zp[1]:76 [ conio_c64_init::line#2 conio_c64_init::line#0 gotoxy::y#5 gotoxy::y#4 gotoxy::y#2 ]
zp[2]:108 [ hiscore#110 hiscore#123 ]
zp[1]:99 [ k#101 k#1 ]
zp[1]:85 [ j#13 j#3 ]
zp[1]:86 [ j#16 j#5 ]
zp[2]:110 [ tu#13 tu#1 ]
zp[2]:52 [ peephole#52 peephole#12 y#35 y#141 ]
zp[1]:51 [ n#52 n#89 n#109 n#20 n#101 n#14 n#1 ]
zp[2]:48 [ time#11 time#17 time#38 div16u8u::return#2 ]
zp[2]:40 [ y#13 y#12 y#11 y#10 y#0 y#49 y#114 y#18 y#130 y#1 y#2 y#3 ]
zp[2]:42 [ score#81 hiscore#19 hiscore#124 score#19 score#43 score#38 score#8 score#13 score#4 score#6 ]
zp[1]:50 [ j#11 j#2 ]
zp[2]:37 [ z#2 z#1 ]
zp[1]:8 [ random::n#4 random::n#0 main::$26 main::$177 textcolor::color#7 clear_screen::n#5 ]
zp[2]:20 [ z#53 z#48 z#100 z#102 z#128 z#28 z#9 z#25 z#23 z#4 ]
zp[1]:15 [ divr8u::rem#5 divr8u::rem#10 divr8u::rem#4 rem8u#48 rem8u#127 rem8u#25 divr8u::rem#11 divr8u::rem#6 divr8u::rem#0 divr8u::rem#1 divr8u::rem#2 ]
zp[1]:39 [ conio_cursor_x ]
zp[1]:29 [ conio_cursor_y ]
zp[2]:32 [ conio_line_text ]
zp[2]:30 [ conio_line_color ]
zp[1]:34 [ conio_textcolor ]
zp[1]:107 [ l ]
zp[1]:4 [ m ]
zp[1]:24 [ chrout::petscii ]
zp[2]:5 [ main::$29 utoa::value#3 utoa::value#7 utoa::value#10 utoa::value#2 utoa::value#1 utoa::value#0 utoa_append::value#2 utoa_append::value#0 utoa_append::value#1 utoa_append::return#0 cputs::s#10 cputs::s#11 cputs::s#0 ]
zp[2]:22 [ duck#0 duck#1 ]
zp[2]:13 [ main::$61 memcpy::source#2 memcpy::src#2 memcpy::src#4 memcpy::src#1 utoa::buffer#10 utoa::buffer#15 utoa::buffer#4 utoa::buffer#3 utoa_append::buffer#0 ]
zp[2]:11 [ main::$66 memset::str#3 memset::dst#2 memset::dst#4 memset::dst#1 memcpy::destination#2 memcpy::dst#2 memcpy::dst#4 memcpy::dst#1 ]
zp[2]:25 [ main::$69 ]
zp[2]:27 [ main::$72 ]
zp[2]:105 [ main::$150 ]
zp[2]:87 [ main::$151 main::$152 ]
zp[2]:89 [ main::$153 main::$154 ]
zp[2]:91 [ main::$155 main::$156 ]
zp[1]:104 [ j#19 ]
zp[1]:16 [ main::$78 memset::c#4 memset::c#1 divr8u::quotient#3 divr8u::return#0 divr8u::quotient#1 divr8u::quotient#2 divr8u::return#2 divr8u::return#3 div16u8u::quotient_lo#0 utoa::started#2 utoa::started#4 ]
zp[1]:7 [ main::$81 divr8u::i#2 divr8u::i#1 utoa_append::digit#2 utoa_append::digit#1 ]
zp[1]:3 [ main::$84 divr8u::dividend#3 divr8u::dividend#5 divr8u::dividend#1 divr8u::dividend#2 divr8u::dividend#0 utoa::digit#2 utoa::digit#1 wait::n#6 random::k#4 random::k#0 ]
zp[1]:54 [ main::$88 ]
zp[1]:55 [ main::$92 ]
zp[2]:46 [ main::$96 main::$180 main::$97 ]
zp[2]:56 [ main::$179 ]
zp[2]:93 [ main::$104 ]
zp[2]:95 [ main::$107 ]
zp[2]:97 [ main::$110 ]
zp[2]:77 [ main::$125 ]
zp[2]:58 [ main::$127 main::$128 ]
zp[2]:60 [ main::$130 main::$131 ]
zp[2]:62 [ main::$133 main::$134 ]
zp[2]:79 [ main::$136 ]
zp[2]:64 [ main::$138 main::$139 ]
zp[2]:66 [ main::$141 main::$142 ]
zp[2]:68 [ main::$144 main::$145 ]
zp[2]:74 [ main::$119 main::$124 ]
zp[2]:81 [ main::$120 ]
zp[2]:83 [ main::$122 ]
zp[2]:100 [ main::$57 ]
zp[2]:102 [ main::$35 ]
zp[2]:112 [ main::$3 ]
zp[2]:44 [ gotoxy::$7 gotoxy::$9 gotoxy::line_offset#0 gotoxy::$6 ]
zp[2]:70 [ gotoxy::$8 ]
zp[2]:72 [ gotoxy::$5 ]
zp[2]:35 [ read_chrono::$0 div16u8u::dividend#0 clear_screen::$4 ]
zp[1]:2 [ div16u8u::quotient_hi#0 utoa::$11 random::$3 cputs::c#1 cputc::c#0 ]
zp[1]:17 [ divr8u::$1 utoa::$10 ]
zp[2]:9 [ memcpy::src_end#0 read_chrono::$5 utoa::digit_value#0 utoa_append::sub#0 clear_screen::$5 ]
zp[2]:18 [ memset::end#0 div16u8u::return#0 ]
FINAL ASSEMBLER
Score: 2147483647
// File Comments
/// @file
/// Functions for performing input and output.
// Upstart
// Commodore 64 PRG executable file
.file [name="ducks-total.prg", type="prg", segments="Program"]
.segmentdef Program [segments="Basic, Code, Data"]
.segmentdef Basic [start=$0801]
.segmentdef Code [start=$80d]
.segmentdef Data [startAfter="Code"]
.segment Basic
:BasicUpstart(__start)
// Global Constants & labels
.const LIGHT_BLUE = $e
.const down = $11
.const right = $1d
.const lock = 8
.const lower = $e
.const home = $13
.const reverse_on = $12
.const brick = $e6
.const green = $1e
.const yellow = $9e
.const red = $1c
.const c = $7800
/// Color Ram
.label COLORRAM = $d800
/// Default address of screen character matrix
.label DEFAULT_SCREEN = $400
// The number of bytes on the screen
// The current cursor x-position
.label conio_cursor_x = $27
// The current cursor y-position
.label conio_cursor_y = $1d
// The current text cursor line start
.label conio_line_text = $20
// The current color cursor line start
.label conio_line_color = $1e
// The current text color
.label conio_textcolor = $22
.label l = $6b
.label m = 4
.label z = $25
.label z_1 = $14
.label n = $33
.label k = $63
.label j = $32
.label j_1 = $55
.label j_2 = $56
.label duck = $16
// [0..255] 8-bit
.label tu = $6e
// Volume to max
.label score = $2a
.label y = $28
.label time = $30
.label j_3 = $68
// Remainder after signed 8 bit division
.label rem8u = $f
.label peephole = $34
.label y_1 = $34
.label hiscore = $2a
.label hiscore_1 = $6c
.segment Code
// __start
__start: {
// __start::__init1
// __ma char conio_cursor_x = 0
// [1] conio_cursor_x = 0 -- vbuz1=vbuc1
lda #0
sta.z conio_cursor_x
// __ma char conio_cursor_y = 0
// [2] conio_cursor_y = 0 -- vbuz1=vbuc1
sta.z conio_cursor_y
// __ma char *conio_line_text = CONIO_SCREEN_TEXT
// [3] conio_line_text = DEFAULT_SCREEN -- pbuz1=pbuc1
lda #<DEFAULT_SCREEN
sta.z conio_line_text
lda #>DEFAULT_SCREEN
sta.z conio_line_text+1
// __ma char *conio_line_color = CONIO_SCREEN_COLORS
// [4] conio_line_color = COLORRAM -- pbuz1=pbuc1
lda #<COLORRAM
sta.z conio_line_color
lda #>COLORRAM
sta.z conio_line_color+1
// __ma char conio_textcolor = CONIO_TEXTCOLOR_DEFAULT
// [5] conio_textcolor = LIGHT_BLUE -- vbuz1=vbuc1
lda #LIGHT_BLUE
sta.z conio_textcolor
// j,k,l,m
// [6] l = 0 -- vbuz1=vbuc1
lda #0
sta.z l
// j,k,l,m,n=0
// [7] m = 0 -- vbuz1=vbuc1
sta.z m
// #pragma constructor_for(conio_c64_init, cputc, clrscr, cscroll)
// [8] call conio_c64_init
jsr conio_c64_init
// [9] phi from __start::__init1 to __start::@1 [phi:__start::__init1->__start::@1]
// __start::@1
// [10] call main
jsr main
// __start::@return
// [11] return
rts
}
// conio_c64_init
// Set initial cursor position
conio_c64_init: {
// Position cursor at current line
.label BASIC_CURSOR_LINE = $d6
.label line = $4c
// char line = *BASIC_CURSOR_LINE
// [12] conio_c64_init::line#0 = *conio_c64_init::BASIC_CURSOR_LINE -- vbuz1=_deref_pbuc1
lda.z BASIC_CURSOR_LINE
sta.z line
// if(line>=CONIO_HEIGHT)
// [13] if(conio_c64_init::line#0<$19) goto conio_c64_init::@2 -- vbuz1_lt_vbuc1_then_la1
cmp #$19
bcc __b1
// [15] phi from conio_c64_init to conio_c64_init::@1 [phi:conio_c64_init->conio_c64_init::@1]
// [15] phi conio_c64_init::line#2 = $19-1 [phi:conio_c64_init->conio_c64_init::@1#0] -- vbuz1=vbuc1
lda #$19-1
sta.z line
// [14] phi from conio_c64_init to conio_c64_init::@2 [phi:conio_c64_init->conio_c64_init::@2]
// conio_c64_init::@2
// [15] phi from conio_c64_init::@2 to conio_c64_init::@1 [phi:conio_c64_init::@2->conio_c64_init::@1]
// [15] phi conio_c64_init::line#2 = conio_c64_init::line#0 [phi:conio_c64_init::@2->conio_c64_init::@1#0] -- register_copy
// conio_c64_init::@1
__b1:
// gotoxy(0, line)
// [16] gotoxy::y#2 = conio_c64_init::line#2
// [17] call gotoxy
// [304] phi from conio_c64_init::@1 to gotoxy [phi:conio_c64_init::@1->gotoxy]
// [304] phi gotoxy::y#4 = gotoxy::y#2 [phi:conio_c64_init::@1->gotoxy#0] -- register_copy
jsr gotoxy
// conio_c64_init::@return
// }
// [18] return
rts
}
// main
main: {
.label __3 = $70
.label __26 = 8
.label __29 = 5
.label __35 = $66
.label __57 = $64
.label __61 = $d
.label __66 = $b
.label __69 = $19
.label __72 = $1b
.label __78 = $10
.label __81 = 7
.label __84 = 3
.label __88 = $36
.label __92 = $37
.label __96 = $2e
.label __97 = $2e
.label __104 = $5d
.label __107 = $5f
.label __110 = $61
.label __119 = $4a
.label __120 = $51
.label __122 = $53
.label __124 = $4a
.label __125 = $4d
.label __127 = $3a
.label __128 = $3a
.label __130 = $3c
.label __131 = $3c
.label __133 = $3e
.label __134 = $3e
.label __136 = $4f
.label __138 = $40
.label __139 = $40
.label __141 = $42
.label __142 = $42
.label __144 = $44
.label __145 = $44
.label __150 = $69
.label __151 = $57
.label __152 = $57
.label __153 = $59
.label __154 = $59
.label __155 = $5b
.label __156 = $5b
.label __177 = 8
.label __179 = $38
.label __180 = $2e
// POKE
// [19] *((char *) 36879) = 8 -- _deref_pbuc1=vbuc2
lda #8
sta $900f
// chrout(lock)
// [20] chrout::petscii = lock -- vbuz1=vbuc1
lda #lock
sta.z chrout.petscii
// [21] call chrout
// border and black paper
jsr chrout
// main::@50
// chrout(lower)
// [22] chrout::petscii = lower -- vbuz1=vbuc1
lda #lower
sta.z chrout.petscii
// [23] call chrout
//Lock UpperCase to Lowercase key
jsr chrout
// main::@51
// m=0
// [24] m = 0 -- vbuz1=vbuc1
lda #0
sta.z m
//Put text in Lowercase set
// main::@1
__b1:
// for (m=0; m<40; m++)
// [25] if(m<$28) goto main::@2 -- vbuz1_lt_vbuc1_then_la1
lda.z m
cmp #$28
bcs !__b2+
jmp __b2
!__b2:
// [26] phi from main::@1 to main::@3 [phi:main::@1->main::@3]
// [26] phi n#109 = 0 [phi:main::@1->main::@3#0] -- vbuz1=vbuc1
lda #0
sta.z n
// [26] phi hiscore#110 = 0 [phi:main::@1->main::@3#1] -- vwuz1=vwuc1
sta.z hiscore_1
sta.z hiscore_1+1
// [26] phi y#114 = 0 [phi:main::@1->main::@3#2] -- vwuz1=vwuc1
sta.z y
sta.z y+1
// [26] phi rem8u#127 = 0 [phi:main::@1->main::@3#3] -- vbuz1=vbuc1
sta.z rem8u
// Load udgs. From 0-->39;
// main::@3
__b3:
// clear_screen(32,0)
// [27] call clear_screen
// [321] phi from main::@3 to clear_screen [phi:main::@3->clear_screen]
// [321] phi clear_screen::n#5 = $20 [phi:main::@3->clear_screen#0] -- vbuz1=vbuc1
lda #$20
sta.z clear_screen.n
jsr clear_screen
// [28] phi from main::@3 to main::@52 [phi:main::@3->main::@52]
// main::@52
// textcolor(7)
// [29] call textcolor
// Clear Screen with spaces & black ink
// [334] phi from main::@52 to textcolor [phi:main::@52->textcolor]
// [334] phi textcolor::color#7 = 7 [phi:main::@52->textcolor#0] -- vbuz1=vbuc1
lda #7
sta.z textcolor.color
jsr textcolor
// [30] phi from main::@52 to main::@53 [phi:main::@52->main::@53]
// main::@53
// cputs(intro)
// [31] call cputs
// [337] phi from main::@53 to cputs [phi:main::@53->cputs]
// [337] phi cputs::s#11 = intro [phi:main::@53->cputs#0] -- pbuz1=pbuc1
lda #<intro
sta.z cputs.s
lda #>intro
sta.z cputs.s+1
jsr cputs
// [32] phi from main::@53 to main::@54 [phi:main::@53->main::@54]
// main::@54
// textcolor(1)
// [33] call textcolor
// Yellow ink
// [334] phi from main::@54 to textcolor [phi:main::@54->textcolor]
// [334] phi textcolor::color#7 = 1 [phi:main::@54->textcolor#0] -- vbuz1=vbuc1
lda #1
sta.z textcolor.color
jsr textcolor
// [34] phi from main::@54 to main::@55 [phi:main::@54->main::@55]
// main::@55
// cputs(levels)
// [35] call cputs
// [337] phi from main::@55 to cputs [phi:main::@55->cputs]
// [337] phi cputs::s#11 = levels [phi:main::@55->cputs#0] -- pbuz1=pbuc1
lda #<levels
sta.z cputs.s
lda #>levels
sta.z cputs.s+1
jsr cputs
// [36] phi from main::@55 to main::@56 [phi:main::@55->main::@56]
// main::@56
// textcolor(2)
// [37] call textcolor
// White
// [334] phi from main::@56 to textcolor [phi:main::@56->textcolor]
// [334] phi textcolor::color#7 = 2 [phi:main::@56->textcolor#0] -- vbuz1=vbuc1
lda #2
sta.z textcolor.color
jsr textcolor
// [38] phi from main::@56 to main::@57 [phi:main::@56->main::@57]
// main::@57
// cputs(foot)
// [39] call cputs
// [337] phi from main::@57 to cputs [phi:main::@57->cputs]
// [337] phi cputs::s#11 = foot [phi:main::@57->cputs#0] -- pbuz1=pbuc1
lda #<foot
sta.z cputs.s
lda #>foot
sta.z cputs.s+1
jsr cputs
// Red
// main::@4
__b4:
// l=PEEK
// [40] l = *((char *) 197) -- vbuz1=_deref_pbuc1
lda.z $c5
sta.z l
// ++l;
// [41] l = ++ l -- vbuz1=_inc_vbuz1
inc.z l
// while (l>5)
// [42] if(l>=5+1) goto main::@4 -- vbuz1_ge_vbuc1_then_la1
lda.z l
cmp #5+1
bcs __b4
// [43] phi from main::@4 to main::@5 [phi:main::@4->main::@5]
// main::@5
// clear_screen(4,0)
// [44] call clear_screen
// wait for 1-3-5-7-9 keys only
// [321] phi from main::@5 to clear_screen [phi:main::@5->clear_screen]
// [321] phi clear_screen::n#5 = 4 [phi:main::@5->clear_screen#0] -- vbuz1=vbuc1
lda #4
sta.z clear_screen.n
jsr clear_screen
// main::@58
// POKE
// [45] *((char *) 36869) = $ff -- _deref_pbuc1=vbuc2
lda #$ff
sta $9005
// chrout(reverse_on)
// [46] chrout::petscii = reverse_on -- vbuz1=vbuc1
lda #reverse_on
sta.z chrout.petscii
// [47] call chrout
// Graphic mode
jsr chrout
// main::@59
// chrout(red)
// [48] chrout::petscii = red -- vbuz1=vbuc1
lda #red
sta.z chrout.petscii
// [49] call chrout
jsr chrout
// main::@60
// chrout(down)
// [50] chrout::petscii = down -- vbuz1=vbuc1
lda #down
sta.z chrout.petscii
// [51] call chrout
jsr chrout
// [52] phi from main::@60 to main::@6 [phi:main::@60->main::@6]
// [52] phi n#89 = n#109 [phi:main::@60->main::@6#0] -- register_copy
// [52] phi k#101 = 1 [phi:main::@60->main::@6#1] -- vbuz1=vbuc1
lda #1
sta.z k
//for (z=1;z<23;z++) { POKE(7680+z*22,230);POKE(c+7680+z*22,2); POKE(7679+z*22,230); POKE(c+7679+z*22,2); } // 23 rows * 22 columns (7680 to 8185). 506 positions.
//k=1; do { chrout(brick); POKE(211,20); chrout(brick); ++k; } while (k<23);
//for (k=1;k<22;k++) { chrout(brick); POKE(211,22); chrout(brick); }; // 23 rows * 22 columns (7680 to 8185). 506 positions.
// main::@6
__b6:
// for (k=1;k<22;k++)
// [53] if(k#101<$16) goto main::@7 -- vbuz1_lt_vbuc1_then_la1
lda.z k
cmp #$16
bcs !__b7+
jmp __b7
!__b7:
// main::@8
// chrout(brick)
// [54] chrout::petscii = brick -- vbuz1=vbuc1
lda #brick
sta.z chrout.petscii
// [55] call chrout
// 23 rows * 22 columns (7680 to 8185). 506 positions.
jsr chrout
// main::@61
// POKE
// [56] *((char *) 8185) = brick -- _deref_pbuc1=vbuc2
lda #brick
sta $1ff9
// [57] *((char *)$1ff9+c) = 2 -- _deref_pbuc1=vbuc2
lda #2
sta $1ff9+c
// chrout(home)
// [58] chrout::petscii = home -- vbuz1=vbuc1
lda #home
sta.z chrout.petscii
// [59] call chrout
//last brick from last line (#23) to avoid scrolling
jsr chrout
// main::@62
// if (l>1)
// [60] if(l<1+1) goto main::@12 -- vbuz1_lt_vbuc1_then_la1
lda.z l
cmp #1+1
bcc __b8
// [61] phi from main::@62 to main::@13 [phi:main::@62->main::@13]
// [61] phi z#28 = 1 [phi:main::@62->main::@13#0] -- vwuz1=vbuc1
lda #<1
sta.z z_1
lda #>1
sta.z z_1+1
// [61] phi from main::@73 to main::@13 [phi:main::@73->main::@13]
// [61] phi z#28 = z#9 [phi:main::@73->main::@13#0] -- register_copy
// main::@13
__b13:
// random((7-l),26-(3*l))
// [62] random::k#0 = 7 - l -- vbuz1=vbuc1_minus_vbuz2
lda #7
sec
sbc.z l
sta.z random.k
// 3*l
// [63] main::$177 = l << 1 -- vbuz1=vbuz2_rol_1
lda.z l
asl
sta.z __177
// [64] main::$26 = main::$177 + l -- vbuz1=vbuz1_plus_vbuz2
lda.z __26
clc
adc.z l
sta.z __26
// random((7-l),26-(3*l))
// [65] random::n#0 = $1a - main::$26 -- vbuz1=vbuc1_minus_vbuz1
lda #$1a
sec
sbc.z random.n
sta.z random.n
// [66] call random
// Write differential random bricks depending on 'l' level choosen
// [345] phi from main::@13 to random [phi:main::@13->random]
// [345] phi random::n#4 = random::n#0 [phi:main::@13->random#0] -- register_copy
// [345] phi random::k#4 = random::k#0 [phi:main::@13->random#1] -- register_copy
jsr random
// main::@71
// z+m
// [67] main::$29 = z#28 + m -- vwuz1=vwuz2_plus_vbuz3
lda.z m
clc
adc.z z_1
sta.z __29
lda #0
adc.z z_1+1
sta.z __29+1
// if (z+m>505)
// [68] if(main::$29<=$1f9) goto main::@14 -- vwuz1_le_vwuc1_then_la1
cmp #>$1f9
bne !+
lda.z __29
cmp #<$1f9
!:
bcs !__b24+
jmp __b24
!__b24:
bne !__b24+
jmp __b24
!__b24:
// [69] phi from main::@71 main::@73 to main::@12 [phi:main::@71/main::@73->main::@12]
// [69] phi z#128 = z#28 [phi:main::@71/main::@73->main::@12#0] -- register_copy
jmp __b12
// [69] phi from main::@62 to main::@12 [phi:main::@62->main::@12]
__b8:
// [69] phi z#128 = 1 [phi:main::@62->main::@12#0] -- vwuz1=vbuc1
lda #<1
sta.z z_1
lda #>1
sta.z z_1+1
// main::@12
__b12:
// POKE
// [70] *((char *) 36878) = $f -- _deref_pbuc1=vbuc2
lda #$f
sta $900e
// chrout(home)
// [71] chrout::petscii = home -- vbuz1=vbuc1
lda #home
sta.z chrout.petscii
// [72] call chrout
// Duck #1
jsr chrout
// main::@65
// chrout(yellow)
// [73] chrout::petscii = yellow -- vbuz1=vbuc1
lda #yellow
sta.z chrout.petscii
// [74] call chrout
jsr chrout
// main::@66
// chrout(80)
// [75] chrout::petscii = $50 -- vbuz1=vbuc1
lda #$50
sta.z chrout.petscii
// [76] call chrout
jsr chrout
// main::@67
// chrout(84)
// [77] chrout::petscii = $54 -- vbuz1=vbuc1
lda #$54
sta.z chrout.petscii
// [78] call chrout
jsr chrout
// main::@68
// chrout(83)
// [79] chrout::petscii = $53 -- vbuz1=vbuc1
lda #$53
sta.z chrout.petscii
// [80] call chrout
jsr chrout
// main::@69
// chrout(58)
// [81] chrout::petscii = $3a -- vbuz1=vbuc1
lda #$3a
sta.z chrout.petscii
// [82] call chrout
jsr chrout
// main::@70
// POKE
// [83] *((char *) 211) = $12 -- _deref_pbuc1=vbuc2
lda #$12
sta.z $d3
// [84] phi from main::@70 to main::@17 [phi:main::@70->main::@17]
// [84] phi j#13 = 0 [phi:main::@70->main::@17#0] -- vbuz1=vbuc1
lda #0
sta.z j_1
// jump to Column 18
// main::@17
__b17:
// for (j=0; j<4; ++j)
// [85] if(j#13<4) goto main::@18 -- vbuz1_lt_vbuc1_then_la1
lda.z j_1
cmp #4
bcs !__b18+
jmp __b18
!__b18:
// [86] phi from main::@17 to main::@19 [phi:main::@17->main::@19]
// main::@19
// write_score()
// [87] call write_score
// Write 'TM:9', yellow
// [351] phi from main::@19 to write_score [phi:main::@19->write_score]
// [351] phi score#13 = 0 [phi:main::@19->write_score#0] -- vwuz1=vbuc1
lda #<0
sta.z score
sta.z score+1
jsr write_score
// main::@75
// chrout(home)
// [88] chrout::petscii = home -- vbuz1=vbuc1
lda #home
sta.z chrout.petscii
// [89] call chrout
// Write Score (yellow)
jsr chrout
// main::@76
// chrout(green)
// [90] chrout::petscii = green -- vbuz1=vbuc1
lda #green
sta.z chrout.petscii
// [91] call chrout
jsr chrout
// main::@77
// POKE
// [92] *((char *) 211) = $a -- _deref_pbuc1=vbuc2
lda #$a
sta.z $d3
// [93] phi from main::@77 to main::@20 [phi:main::@77->main::@20]
// [93] phi j#16 = 0 [phi:main::@77->main::@20#0] -- vbuz1=vbuc1
lda #0
sta.z j_2
// Jump to column 10
// main::@20
__b20:
// for (j=0; j<5; j++)
// [94] if(j#16<5) goto main::@21 -- vbuz1_lt_vbuc1_then_la1
lda.z j_2
cmp #5
bcs !__b21+
jmp __b21
!__b21:
// [95] phi from main::@20 to main::@22 [phi:main::@20->main::@22]
// [95] phi n#52 = n#89 [phi:main::@20->main::@22#0] -- register_copy
// [95] phi peephole#52 = $1f1f [phi:main::@20->main::@22#1] -- vwuz1=vwuc1
lda #<$1f1f
sta.z peephole
lda #>$1f1f
sta.z peephole+1
// [95] phi z#102 = z#128 [phi:main::@20->main::@22#2] -- register_copy
// [95] phi y#49 = y#114 [phi:main::@20->main::@22#3] -- register_copy
// [95] phi rem8u#48 = rem8u#127 [phi:main::@20->main::@22#4] -- register_copy
// [95] phi tu#13 = 1 [phi:main::@20->main::@22#5] -- vwuz1=vbuc1
lda #<1
sta.z tu
lda #>1
sta.z tu+1
// Write 'DUCK', green
// [95] phi from main::@87 to main::@22 [phi:main::@87->main::@22]
// [95] phi n#52 = n#20 [phi:main::@87->main::@22#0] -- register_copy
// [95] phi peephole#52 = peephole#12 [phi:main::@87->main::@22#1] -- register_copy
// [95] phi z#102 = z#25 [phi:main::@87->main::@22#2] -- register_copy
// [95] phi y#49 = y#18 [phi:main::@87->main::@22#3] -- register_copy
// [95] phi rem8u#48 = rem8u#25 [phi:main::@87->main::@22#4] -- register_copy
// [95] phi tu#13 = tu#1 [phi:main::@87->main::@22#5] -- register_copy
// main::@22
__b22:
// chrout(home)
// [96] chrout::petscii = home -- vbuz1=vbuc1
lda #home
sta.z chrout.petscii
// [97] call chrout
jsr chrout
// main::@79
// chrout(green)
// [98] chrout::petscii = green -- vbuz1=vbuc1
lda #green
sta.z chrout.petscii
// [99] call chrout
jsr chrout
// main::@80
// chrout(reverse_on)
// [100] chrout::petscii = reverse_on -- vbuz1=vbuc1
lda #reverse_on
sta.z chrout.petscii
// [101] call chrout
jsr chrout
// main::@81
// POKE
// [102] *((char *) 211) = $f -- _deref_pbuc1=vbuc2
lda #$f
sta.z $d3
// if (tu<10)
// [103] if(tu#13<$a) goto main::@23 -- vwuz1_lt_vbuc1_then_la1
// Jump to column 15
lda.z tu+1
bne !+
lda.z tu
cmp #$a
bcs !__b23+
jmp __b23
!__b23:
!:
// main::@45
// chrout(49)
// [104] chrout::petscii = $31 -- vbuz1=vbuc1
lda #$31
sta.z chrout.petscii
// [105] call chrout
jsr chrout
// main::@82
// chrout(48)
// [106] chrout::petscii = $30 -- vbuz1=vbuc1
lda #$30
sta.z chrout.petscii
// [107] call chrout
jsr chrout
// [108] phi from main::@103 main::@104 main::@105 main::@106 main::@23 main::@82 main::@84 to main::@24 [phi:main::@103/main::@104/main::@105/main::@106/main::@23/main::@82/main::@84->main::@24]
__b11:
// Write duck number
// main::@24
// random(0,255)
// [109] call random
// [345] phi from main::@24 to random [phi:main::@24->random]
// [345] phi random::n#4 = $ff [phi:main::@24->random#0] -- vbuz1=vbuc1
lda #$ff
sta.z random.n
// [345] phi random::k#4 = 0 [phi:main::@24->random#1] -- vbuz1=vbuc1
lda #0
sta.z random.k
jsr random
// main::@83
// duck=m
// [110] duck#0 = m -- vwuz1=vbuz2
lda.z m
sta.z duck
lda #0
sta.z duck+1
// random(0,255)
// [111] call random
// [345] phi from main::@83 to random [phi:main::@83->random]
// [345] phi random::n#4 = $ff [phi:main::@83->random#0] -- vbuz1=vbuc1
lda #$ff
sta.z random.n
// [345] phi random::k#4 = 0 [phi:main::@83->random#1] -- vbuz1=vbuc1
lda #0
sta.z random.k
jsr random
// main::@84
// m+7701
// [112] main::$61 = m + $1e15 -- vwuz1=vbuz2_plus_vwuc1
lda.z m
clc
adc #<$1e15
sta.z __61
lda #>$1e15
adc #0
sta.z __61+1
// duck=m+7701+duck
// [113] duck#1 = main::$61 + duck#0 -- vwuz1=vwuz2_plus_vwuz1
clc
lda.z duck
adc.z __61
sta.z duck
lda.z duck+1
adc.z __61+1
sta.z duck+1
// PEEK
// [114] main::$66 = duck#1 + 1 -- vwuz1=vwuz2_plus_1
clc
lda.z duck
adc #1
sta.z __66
lda.z duck+1
adc #0
sta.z __66+1
// [115] main::$69 = duck#1 + $16 -- vwuz1=vwuz2_plus_vbuc1
lda #$16
clc
adc.z duck
sta.z __69
lda #0
adc.z duck+1
sta.z __69+1
// [116] main::$72 = duck#1 + $17 -- vwuz1=vwuz2_plus_vbuc1
lda #$17
clc
adc.z duck
sta.z __72
lda #0
adc.z duck+1
sta.z __72+1
// while ((duck>8163) || PEEK(duck)==brick || PEEK(duck+1)==brick || PEEK(duck+22)==brick || PEEK(duck+23)==brick)
// [117] if(duck#1>$1fe3) goto main::@24 -- vwuz1_gt_vwuc1_then_la1
lda #>$1fe3
cmp.z duck+1
bcc __b11
bne !+
lda #<$1fe3
cmp.z duck
bcc __b11
!:
// main::@106
// [118] if(*((char *)duck#1)==brick) goto main::@24 -- _deref_pbuz1_eq_vbuc1_then_la1
lda #brick
ldy #0
cmp (duck),y
beq __b11
// main::@105
// [119] if(*((char *)main::$66)==brick) goto main::@24 -- _deref_pbuz1_eq_vbuc1_then_la1
cmp (__66),y
beq __b11
// main::@104
// [120] if(*((char *)main::$69)==brick) goto main::@24 -- _deref_pbuz1_eq_vbuc1_then_la1
cmp (__69),y
beq __b11
// main::@103
// [121] if(*((char *)main::$72)==brick) goto main::@24 -- _deref_pbuz1_eq_vbuc1_then_la1
cmp (__72),y
bne !__b11+
jmp __b11
!__b11:
// [122] phi from main::@103 to main::@25 [phi:main::@103->main::@25]
// main::@25
// chrono_restart()
// [123] call chrono_restart
jsr chrono_restart
// [124] phi from main::@25 to main::@26 [phi:main::@25->main::@26]
// [124] phi n#20 = n#52 [phi:main::@25->main::@26#0] -- register_copy
// [124] phi peephole#12 = peephole#52 [phi:main::@25->main::@26#1] -- register_copy
// [124] phi z#100 = z#102 [phi:main::@25->main::@26#2] -- register_copy
// [124] phi y#18 = y#49 [phi:main::@25->main::@26#3] -- register_copy
// [124] phi rem8u#25 = rem8u#48 [phi:main::@25->main::@26#4] -- register_copy
// [124] phi score#19 = score#38 [phi:main::@25->main::@26#5] -- register_copy
// [124] phi time#11 = 0 [phi:main::@25->main::@26#6] -- vwuz1=vbuc1
lda #<0
sta.z time
sta.z time+1
// main::@26
__b26:
// while (time<10)
// [125] if(time#11<$a) goto main::@27 -- vwuz1_lt_vbuc1_then_la1
lda.z time+1
bne !+
lda.z time
cmp #$a
bcs !__b27+
jmp __b27
!__b27:
!:
// main::@28
// tu++;
// [126] tu#1 = ++ tu#13 -- vwuz1=_inc_vwuz1
inc.z tu
bne !+
inc.z tu+1
!:
// score=score-10
// [127] score#4 = score#19 - $a -- vwuz1=vwuz1_minus_vbuc1
sec
lda.z score
sbc #$a
sta.z score
lda.z score+1
sbc #0
sta.z score+1
// write_score()
// [128] call write_score
// [351] phi from main::@28 to write_score [phi:main::@28->write_score]
// [351] phi score#13 = score#4 [phi:main::@28->write_score#0] -- register_copy
jsr write_score
// main::@86
// POKE
// [129] *((char *) 36877) = $82 -- _deref_pbuc1=vbuc2
lda #$82
sta $900d
// wait(20)
// [130] call wait
// [381] phi from main::@86 to wait [phi:main::@86->wait]
// [381] phi z#53 = z#100 [phi:main::@86->wait#0] -- register_copy
// [381] phi wait::n#6 = $14 [phi:main::@86->wait#1] -- vbuz1=vbuc1
lda #$14
sta.z wait.n
jsr wait
// main::@87
// POKE
// [131] *((char *) 36877) = 0 -- _deref_pbuc1=vbuc2
lda #0
sta $900d
// [132] main::$150 = duck#1 + c -- vwuz1=vwuz2_plus_vwuc1
lda.z duck
clc
adc #<c
sta.z __150
lda.z duck+1
adc #>c
sta.z __150+1
// [133] *((char *)main::$150) = 0 -- _deref_pbuz1=vbuc1
lda #0
tay
sta (__150),y
// [134] main::$151 = duck#1 -- vwuz1=vwuz2
lda.z duck
sta.z __151
lda.z duck+1
sta.z __151+1
// [135] main::$152 = main::$151 + 1+c -- vwuz1=vwuz1_plus_vwuc1
lda.z __152
clc
adc #<1+c
sta.z __152
lda.z __152+1
adc #>1+c
sta.z __152+1
// [136] *((char *)main::$152) = 0 -- _deref_pbuz1=vbuc1
tya
sta (__152),y
// [137] main::$153 = duck#1 -- vwuz1=vwuz2
lda.z duck
sta.z __153
lda.z duck+1
sta.z __153+1
// [138] main::$154 = main::$153 + $16+c -- vwuz1=vwuz1_plus_vwuc1
lda.z __154
clc
adc #<$16+c
sta.z __154
lda.z __154+1
adc #>$16+c
sta.z __154+1
// [139] *((char *)main::$154) = 0 -- _deref_pbuz1=vbuc1
tya
sta (__154),y
// [140] main::$155 = duck#1 -- vwuz1=vwuz2
lda.z duck
sta.z __155
lda.z duck+1
sta.z __155+1
// [141] main::$156 = main::$155 + $17+c -- vwuz1=vwuz1_plus_vwuc1
lda.z __156
clc
adc #<$17+c
sta.z __156
lda.z __156+1
adc #>$17+c
sta.z __156+1
// [142] *((char *)main::$156) = 0 -- _deref_pbuz1=vbuc1
tya
sta (__156),y
// while (tu<11)
// [143] if(tu#1<$b) goto main::@22 -- vwuz1_lt_vbuc1_then_la1
lda.z tu+1
bne !+
lda.z tu
cmp #$b
bcs !__b22+
jmp __b22
!__b22:
!:
// [144] phi from main::@87 to main::@44 [phi:main::@87->main::@44]
// main::@44
// clear_screen(4,0)
// [145] call clear_screen
// 10 ducks
// [321] phi from main::@44 to clear_screen [phi:main::@44->clear_screen]
// [321] phi clear_screen::n#5 = 4 [phi:main::@44->clear_screen#0] -- vbuz1=vbuc1
lda #4
sta.z clear_screen.n
jsr clear_screen
// main::@91
// POKE
// [146] *((char *) 36869) = $f0 -- _deref_pbuc1=vbuc2
lda #$f0
sta $9005
// chrout(lower)
// [147] chrout::petscii = lower -- vbuz1=vbuc1
lda #lower
sta.z chrout.petscii
// [148] call chrout
jsr chrout
// [149] phi from main::@91 to main::@92 [phi:main::@91->main::@92]
// main::@92
// textcolor(7)
// [150] call textcolor
// Return to text mode, lowcase
// [334] phi from main::@92 to textcolor [phi:main::@92->textcolor]
// [334] phi textcolor::color#7 = 7 [phi:main::@92->textcolor#0] -- vbuz1=vbuc1
lda #7
sta.z textcolor.color
jsr textcolor
// [151] phi from main::@92 to main::@93 [phi:main::@92->main::@93]
// main::@93
// cputs(game_over)
// [152] call cputs
// [337] phi from main::@93 to cputs [phi:main::@93->cputs]
// [337] phi cputs::s#11 = game_over [phi:main::@93->cputs#0] -- pbuz1=pbuc1
lda #<game_over
sta.z cputs.s
lda #>game_over
sta.z cputs.s+1
jsr cputs
// [153] phi from main::@93 to main::@94 [phi:main::@93->main::@94]
// main::@94
// textcolor(2)
// [154] call textcolor
// Yellow
// [334] phi from main::@94 to textcolor [phi:main::@94->textcolor]
// [334] phi textcolor::color#7 = 2 [phi:main::@94->textcolor#0] -- vbuz1=vbuc1
lda #2
sta.z textcolor.color
jsr textcolor
// [155] phi from main::@94 to main::@95 [phi:main::@94->main::@95]
// main::@95
// cputs(your_score)
// [156] call cputs
// [337] phi from main::@95 to cputs [phi:main::@95->cputs]
// [337] phi cputs::s#11 = your_score [phi:main::@95->cputs#0] -- pbuz1=pbuc1
lda #<your_score
sta.z cputs.s
lda #>your_score
sta.z cputs.s+1
jsr cputs
// [157] phi from main::@95 to main::@96 [phi:main::@95->main::@96]
// main::@96
// cputs(buffer)
// [158] call cputs
// [337] phi from main::@96 to cputs [phi:main::@96->cputs]
// [337] phi cputs::s#11 = buffer [phi:main::@96->cputs#0] -- pbuz1=pbuc1
lda #<buffer
sta.z cputs.s
lda #>buffer
sta.z cputs.s+1
jsr cputs
// [159] phi from main::@96 to main::@97 [phi:main::@96->main::@97]
// main::@97
// textcolor(3)
// [160] call textcolor
// Red
// [334] phi from main::@97 to textcolor [phi:main::@97->textcolor]
// [334] phi textcolor::color#7 = 3 [phi:main::@97->textcolor#0] -- vbuz1=vbuc1
lda #3
sta.z textcolor.color
jsr textcolor
// [161] phi from main::@97 to main::@98 [phi:main::@97->main::@98]
// main::@98
// cputs(high_score)
// [162] call cputs
// [337] phi from main::@98 to cputs [phi:main::@98->cputs]
// [337] phi cputs::s#11 = high_score [phi:main::@98->cputs#0] -- pbuz1=pbuc1
lda #<high_score
sta.z cputs.s
lda #>high_score
sta.z cputs.s+1
jsr cputs
// main::@99
// if (score>hiscore)
// [163] if(score#38<=hiscore#110) goto main::@114 -- vwuz1_le_vwuz2_then_la1
lda.z score+1
cmp.z hiscore_1+1
bne !+
lda.z score
cmp.z hiscore_1
beq __b114
!:
bcc __b114
// [165] phi from main::@114 main::@99 to main::@46 [phi:main::@114/main::@99->main::@46]
// [165] phi hiscore#19 = hiscore#124 [phi:main::@114/main::@99->main::@46#0] -- register_copy
jmp __b46
// main::@114
__b114:
// [164] hiscore#124 = hiscore#110 -- vwuz1=vwuz2
lda.z hiscore_1
sta.z hiscore
lda.z hiscore_1+1
sta.z hiscore+1
// main::@46
__b46:
// utoa(hiscore,buffer,10)
// [166] utoa::value#2 = hiscore#19 -- vwuz1=vwuz2
lda.z hiscore
sta.z utoa.value
lda.z hiscore+1
sta.z utoa.value+1
// [167] call utoa
// [390] phi from main::@46 to utoa [phi:main::@46->utoa]
// [390] phi utoa::value#10 = utoa::value#2 [phi:main::@46->utoa#0] -- register_copy
jsr utoa
// [168] phi from main::@46 to main::@100 [phi:main::@46->main::@100]
// main::@100
// cputs(buffer)
// [169] call cputs
// [337] phi from main::@100 to cputs [phi:main::@100->cputs]
// [337] phi cputs::s#11 = buffer [phi:main::@100->cputs#0] -- pbuz1=pbuc1
lda #<buffer
sta.z cputs.s
lda #>buffer
sta.z cputs.s+1
jsr cputs
// [170] phi from main::@100 to main::@101 [phi:main::@100->main::@101]
// main::@101
// textcolor(1)
// [171] call textcolor
// Cyan
// [334] phi from main::@101 to textcolor [phi:main::@101->textcolor]
// [334] phi textcolor::color#7 = 1 [phi:main::@101->textcolor#0] -- vbuz1=vbuc1
lda #1
sta.z textcolor.color
jsr textcolor
// [172] phi from main::@101 to main::@102 [phi:main::@101->main::@102]
// main::@102
// cputs(play_again)
// [173] call cputs
// [337] phi from main::@102 to cputs [phi:main::@102->cputs]
// [337] phi cputs::s#11 = play_again [phi:main::@102->cputs#0] -- pbuz1=pbuc1
lda #<play_again
sta.z cputs.s
lda #>play_again
sta.z cputs.s+1
jsr cputs
// white
// main::@47
__b47:
// j=PEEK
// [174] j#19 = *((char *) 197) -- vbuz1=_deref_pbuc1
lda.z $c5
sta.z j_3
// while (j!= 11 && j!=28 )
// [175] if(j#19==$b) goto main::@48 -- vbuz1_eq_vbuc1_then_la1
lda #$b
cmp.z j_3
beq __b48
// main::@112
// [176] if(j#19!=$1c) goto main::@47 -- vbuz1_neq_vbuc1_then_la1
lda #$1c
cmp.z j_3
bne __b47
// main::@48
__b48:
// while (j==11)
// [177] if(j#19==$b) goto main::@113 -- vbuz1_eq_vbuc1_then_la1
lda #$b
cmp.z j_3
beq __b113
// main::@49
// asm
// asm { jsr$FD22 }
// N pressed. Exit game
jsr $fd22
// main::@return
// }
// [179] return
rts
// main::@113
__b113:
// [180] hiscore#123 = hiscore#19 -- vwuz1=vwuz2
lda.z hiscore
sta.z hiscore_1
lda.z hiscore+1
sta.z hiscore_1+1
// [26] phi from main::@113 to main::@3 [phi:main::@113->main::@3]
// [26] phi n#109 = n#20 [phi:main::@113->main::@3#0] -- register_copy
// [26] phi hiscore#110 = hiscore#123 [phi:main::@113->main::@3#1] -- register_copy
// [26] phi y#114 = y#18 [phi:main::@113->main::@3#2] -- register_copy
// [26] phi rem8u#127 = rem8u#25 [phi:main::@113->main::@3#3] -- register_copy
jmp __b3
// [181] phi from main::@26 to main::@27 [phi:main::@26->main::@27]
// main::@27
__b27:
// read_chrono()
// [182] call read_chrono
jsr read_chrono
// main::@85
// m=PEEK
// [183] m = *((char *) 37151) -- vbuz1=_deref_pbuc1
// Joystick routine
lda $911f
sta.z m
// POKE
// [184] *((char *) 37154) = $7f -- _deref_pbuc1=vbuc2
lda #$7f
sta $9122
// n=PEEK
// [185] n#14 = *((char *) 37152) -- vbuz1=_deref_pbuc1
lda $9120
sta.z n
// POKE
// [186] *((char *) 37154) = $ff -- _deref_pbuc1=vbuc2
lda #$ff
sta $9122
// 16&m
// [187] main::$78 = $10 & m -- vbuz1=vbuc1_band_vbuz2
lda #$10
and.z m
sta.z __78
// if ((16&m)==0)
// [188] if(main::$78!=0) goto main::@29 -- vbuz1_neq_0_then_la1
bne __b29
// main::@37
// y--;
// [189] y#0 = -- y#18 -- vwuz1=_dec_vwuz1
lda.z y
bne !+
dec.z y+1
!:
dec.z y
// [190] phi from main::@37 main::@85 to main::@29 [phi:main::@37/main::@85->main::@29]
// [190] phi y#10 = y#0 [phi:main::@37/main::@85->main::@29#0] -- register_copy
// main::@29
__b29:
// 128&n
// [191] main::$81 = $80 & n#14 -- vbuz1=vbuc1_band_vbuz2
lda #$80
and.z n
sta.z __81
// if ((128&n)==0)
// [192] if(main::$81!=0) goto main::@30 -- vbuz1_neq_0_then_la1
bne __b30
// main::@38
// y++;
// [193] y#1 = ++ y#10 -- vwuz1=_inc_vwuz1
inc.z y
bne !+
inc.z y+1
!:
// [194] phi from main::@29 main::@38 to main::@30 [phi:main::@29/main::@38->main::@30]
// [194] phi y#11 = y#10 [phi:main::@29/main::@38->main::@30#0] -- register_copy
// main::@30
__b30:
// 4&m
// [195] main::$84 = 4 & m -- vbuz1=vbuc1_band_vbuz2
lda #4
and.z m
sta.z __84
// if ((4&m)==0)
// [196] if(main::$84!=0) goto main::@31 -- vbuz1_neq_0_then_la1
bne __b31
// main::@39
// y=y-22
// [197] y#2 = y#11 - $16 -- vwuz1=vwuz1_minus_vbuc1
sec
lda.z y
sbc #$16
sta.z y
lda.z y+1
sbc #0
sta.z y+1
// [198] phi from main::@30 main::@39 to main::@31 [phi:main::@30/main::@39->main::@31]
// [198] phi y#12 = y#11 [phi:main::@30/main::@39->main::@31#0] -- register_copy
// main::@31
__b31:
// 8&m
// [199] main::$88 = 8 & m -- vbuz1=vbuc1_band_vbuz2
lda #8
and.z m
sta.z __88
// if ((8&m)==0)
// [200] if(main::$88!=0) goto main::@32 -- vbuz1_neq_0_then_la1
bne __b32
// main::@40
// y=y+22
// [201] y#3 = y#12 + $16 -- vwuz1=vwuz1_plus_vbuc1
lda #$16
clc
adc.z y
sta.z y
bcc !+
inc.z y+1
!:
// [202] phi from main::@31 main::@40 to main::@32 [phi:main::@31/main::@40->main::@32]
// [202] phi y#13 = y#12 [phi:main::@31/main::@40->main::@32#0] -- register_copy
// main::@32
__b32:
// 32&m
// [203] main::$92 = $20 & m -- vbuz1=vbuc1_band_vbuz2
lda #$20
and.z m
sta.z __92
// if ((32&m)==0)
// [204] if(main::$92!=0) goto main::@33 -- vbuz1_neq_0_then_la1
bne __b33
// main::@41
// POKE
// [205] *((char *) 36877) = $82 -- _deref_pbuc1=vbuc2
lda #$82
sta $900d
// if (peephole!=duck)
// [206] if(peephole#12!=duck#1) goto main::@34 -- vwuz1_neq_vwuz2_then_la1
lda.z peephole+1
cmp.z duck+1
beq !__b34+
jmp __b34
!__b34:
lda.z peephole
cmp.z duck
beq !__b34+
jmp __b34
!__b34:
// main::@42
// 12-time
// [207] main::$96 = $c - div16u8u::return#2 -- vwuz1=vwuc1_minus_vwuz2
sec
lda #<$c
sbc.z div16u8u.return_1
sta.z __96
lda #>$c
sbc.z div16u8u.return_1+1
sta.z __96+1
// (12-time)*10
// [208] main::$179 = main::$96 << 2 -- vwuz1=vwuz2_rol_2
lda.z __96
asl
sta.z __179
lda.z __96+1
rol
sta.z __179+1
asl.z __179
rol.z __179+1
// [209] main::$180 = main::$179 + main::$96 -- vwuz1=vwuz2_plus_vwuz1
clc
lda.z __180
adc.z __179
sta.z __180
lda.z __180+1
adc.z __179+1
sta.z __180+1
// [210] main::$97 = main::$180 << 1 -- vwuz1=vwuz1_rol_1
asl.z __97
rol.z __97+1
// score=score+(12-time)*10
// [211] score#8 = score#19 + main::$97 -- vwuz1=vwuz1_plus_vwuz2
clc
lda.z score
adc.z __97
sta.z score
lda.z score+1
adc.z __97+1
sta.z score+1
// wait(10)
// [212] call wait
// [381] phi from main::@42 to wait [phi:main::@42->wait]
// [381] phi z#53 = z#100 [phi:main::@42->wait#0] -- register_copy
// [381] phi wait::n#6 = $a [phi:main::@42->wait#1] -- vbuz1=vbuc1
lda #$a
sta.z wait.n
jsr wait
// [213] phi from main::@42 to main::@35 [phi:main::@42->main::@35]
// [213] phi score#81 = score#8 [phi:main::@42->main::@35#0] -- register_copy
// [213] phi time#38 = $a [phi:main::@42->main::@35#1] -- vwuz1=vbuc1
lda #<$a
sta.z time
lda #>$a
sta.z time+1
// main::@35
__b35:
// POKE
// [214] *((char *) 36877) = 0 -- _deref_pbuc1=vbuc2
lda #0
sta $900d
// [215] phi from main::@32 main::@35 to main::@33 [phi:main::@32/main::@35->main::@33]
// [215] phi score#43 = score#19 [phi:main::@32/main::@35->main::@33#0] -- register_copy
// [215] phi time#17 = div16u8u::return#2 [phi:main::@32/main::@35->main::@33#1] -- register_copy
// [215] phi z#48 = z#100 [phi:main::@32/main::@35->main::@33#2] -- register_copy
// main::@33
__b33:
// PEEK
// [216] main::$104 = y#13 + 1 -- vwuz1=vwuz2_plus_1
clc
lda.z y
adc #1
sta.z __104
lda.z y+1
adc #0
sta.z __104+1
// [217] main::$107 = y#13 + $16 -- vwuz1=vwuz2_plus_vbuc1
lda #$16
clc
adc.z y
sta.z __107
lda #0
adc.z y+1
sta.z __107+1
// [218] main::$110 = y#13 + $17 -- vwuz1=vwuz2_plus_vbuc1
lda #$17
clc
adc.z y
sta.z __110
lda #0
adc.z y+1
sta.z __110+1
// if (PEEK(y)!=brick && PEEK(y+1)!=brick && PEEK(y+22)!=brick && PEEK(y+23)!=brick && y>7702 && y<8163)
// [219] if(*((char *)y#13)==brick) goto main::@36 -- _deref_pbuz1_eq_vbuc1_then_la1
lda #brick
ldy #0
cmp (y),y
beq __b36
// main::@111
// [220] if(*((char *)main::$104)==brick) goto main::@36 -- _deref_pbuz1_eq_vbuc1_then_la1
cmp (__104),y
beq __b36
// main::@110
// [221] if(*((char *)main::$107)!=brick) goto main::@109 -- _deref_pbuz1_neq_vbuc1_then_la1
lda (__107),y
cmp #brick
beq !__b109+
jmp __b109
!__b109:
// [222] phi from main::@107 main::@108 main::@109 main::@110 main::@111 to main::@36 [phi:main::@107/main::@108/main::@109/main::@110/main::@111->main::@36]
// [222] phi from main::@33 main::@43 to main::@36 [phi:main::@33/main::@43->main::@36]
// [222] phi y#35 = peephole#12 [phi:main::@33/main::@43->main::@36#0] -- register_copy
// main::@36
__b36:
// POKE
// [223] *((char *)y#35) = $fd -- _deref_pbuz1=vbuc1
lda #$fd
ldy #0
sta (y_1),y
// [224] main::$125 = y#35 + c -- vwuz1=vwuz2_plus_vwuc1
lda.z y_1
clc
adc #<c
sta.z __125
lda.z y_1+1
adc #>c
sta.z __125+1
// [225] *((char *)main::$125) = 1 -- _deref_pbuz1=vbuc1
lda #1
sta (__125),y
// [226] main::$127 = y#35 + 1 -- vwuz1=vwuz2_plus_1
clc
lda.z y_1
adc #1
sta.z __127
lda.z y_1+1
adc #0
sta.z __127+1
// [227] *((char *)main::$127) = $ed -- _deref_pbuz1=vbuc1
lda #$ed
sta (__127),y
// [228] main::$128 = main::$127 + c -- vwuz1=vwuz1_plus_vwuc1
lda.z __128
clc
adc #<c
sta.z __128
lda.z __128+1
adc #>c
sta.z __128+1
// [229] *((char *)main::$128) = 1 -- _deref_pbuz1=vbuc1
lda #1
sta (__128),y
// [230] main::$130 = y#35 + $16 -- vwuz1=vwuz2_plus_vbuc1
lda #$16
clc
adc.z y_1
sta.z __130
tya
adc.z y_1+1
sta.z __130+1
// [231] *((char *)main::$130) = $ee -- _deref_pbuz1=vbuc1
lda #$ee
sta (__130),y
// [232] main::$131 = main::$130 + c -- vwuz1=vwuz1_plus_vwuc1
lda.z __131
clc
adc #<c
sta.z __131
lda.z __131+1
adc #>c
sta.z __131+1
// [233] *((char *)main::$131) = 1 -- _deref_pbuz1=vbuc1
lda #1
sta (__131),y
// [234] main::$133 = y#35 + $17 -- vwuz1=vwuz2_plus_vbuc1
lda #$17
clc
adc.z y_1
sta.z __133
tya
adc.z y_1+1
sta.z __133+1
// [235] *((char *)main::$133) = $f0 -- _deref_pbuz1=vbuc1
lda #$f0
sta (__133),y
// [236] main::$134 = main::$133 + c -- vwuz1=vwuz1_plus_vwuc1
lda.z __134
clc
adc #<c
sta.z __134
lda.z __134+1
adc #>c
sta.z __134+1
// [237] *((char *)main::$134) = 1 -- _deref_pbuz1=vbuc1
lda #1
sta (__134),y
// wait(5)
// [238] call wait
// Clear peephole if there is not bricks contact
// [381] phi from main::@36 to wait [phi:main::@36->wait]
// [381] phi z#53 = z#48 [phi:main::@36->wait#0] -- register_copy
// [381] phi wait::n#6 = 5 [phi:main::@36->wait#1] -- vbuz1=vbuc1
lda #5
sta.z wait.n
jsr wait
// main::@89
// POKE
// [239] *((char *)duck#1) = 0 -- _deref_pbuz1=vbuc1
lda #0
tay
sta (duck),y
// [240] main::$136 = duck#1 + c -- vwuz1=vwuz2_plus_vwuc1
lda.z duck
clc
adc #<c
sta.z __136
lda.z duck+1
adc #>c
sta.z __136+1
// [241] *((char *)main::$136) = 7 -- _deref_pbuz1=vbuc1
lda #7
sta (__136),y
// [242] main::$138 = duck#1 + 1 -- vwuz1=vwuz2_plus_1
clc
lda.z duck
adc #1
sta.z __138
lda.z duck+1
adc #0
sta.z __138+1
// [243] *((char *)main::$138) = 1 -- _deref_pbuz1=vbuc1
lda #1
sta (__138),y
// [244] main::$139 = main::$138 + c -- vwuz1=vwuz1_plus_vwuc1
lda.z __139
clc
adc #<c
sta.z __139
lda.z __139+1
adc #>c
sta.z __139+1
// [245] *((char *)main::$139) = 7 -- _deref_pbuz1=vbuc1
lda #7
sta (__139),y
// [246] main::$141 = duck#1 + $16 -- vwuz1=vwuz2_plus_vbuc1
lda #$16
clc
adc.z duck
sta.z __141
tya
adc.z duck+1
sta.z __141+1
// [247] *((char *)main::$141) = 2 -- _deref_pbuz1=vbuc1
lda #2
sta (__141),y
// [248] main::$142 = main::$141 + c -- vwuz1=vwuz1_plus_vwuc1
lda.z __142
clc
adc #<c
sta.z __142
lda.z __142+1
adc #>c
sta.z __142+1
// [249] *((char *)main::$142) = 7 -- _deref_pbuz1=vbuc1
lda #7
sta (__142),y
// [250] main::$144 = duck#1 + $17 -- vwuz1=vwuz2_plus_vbuc1
lda #$17
clc
adc.z duck
sta.z __144
tya
adc.z duck+1
sta.z __144+1
// [251] *((char *)main::$144) = 3 -- _deref_pbuz1=vbuc1
lda #3
sta (__144),y
// [252] main::$145 = main::$144 + c -- vwuz1=vwuz1_plus_vwuc1
lda.z __145
clc
adc #<c
sta.z __145
lda.z __145+1
adc #>c
sta.z __145+1
// [253] *((char *)main::$145) = 7 -- _deref_pbuz1=vbuc1
lda #7
sta (__145),y
// wait(5)
// [254] call wait
// [381] phi from main::@89 to wait [phi:main::@89->wait]
// [381] phi z#53 = z#25 [phi:main::@89->wait#0] -- register_copy
// [381] phi wait::n#6 = 5 [phi:main::@89->wait#1] -- vbuz1=vbuc1
lda #5
sta.z wait.n
jsr wait
// main::@90
// [255] y#130 = y#35 -- vwuz1=vwuz2
lda.z y_1
sta.z y
lda.z y_1+1
sta.z y+1
// [124] phi from main::@90 to main::@26 [phi:main::@90->main::@26]
// [124] phi n#20 = n#14 [phi:main::@90->main::@26#0] -- register_copy
// [124] phi peephole#12 = y#35 [phi:main::@90->main::@26#1] -- register_copy
// [124] phi z#100 = z#25 [phi:main::@90->main::@26#2] -- register_copy
// [124] phi y#18 = y#130 [phi:main::@90->main::@26#3] -- register_copy
// [124] phi rem8u#25 = divr8u::rem#11 [phi:main::@90->main::@26#4] -- register_copy
// [124] phi score#19 = score#43 [phi:main::@90->main::@26#5] -- register_copy
// [124] phi time#11 = time#17 [phi:main::@90->main::@26#6] -- register_copy
jmp __b26
// main::@109
__b109:
// if (PEEK(y)!=brick && PEEK(y+1)!=brick && PEEK(y+22)!=brick && PEEK(y+23)!=brick && y>7702 && y<8163)
// [256] if(*((char *)main::$110)==brick) goto main::@36 -- _deref_pbuz1_eq_vbuc1_then_la1
lda #brick
ldy #0
cmp (__110),y
bne !__b36+
jmp __b36
!__b36:
// main::@108
// [257] if(y#13>$1e16) goto main::@107 -- vwuz1_gt_vwuc1_then_la1
lda #>$1e16
cmp.z y+1
bcc __b107
bne !+
lda #<$1e16
cmp.z y
bcc __b107
!:
jmp __b36
// main::@107
__b107:
// [258] if(y#13>=$1fe3) goto main::@36 -- vwuz1_ge_vwuc1_then_la1
lda.z y+1
cmp #>$1fe3
bcc !+
beq !__b36+
jmp __b36
!__b36:
lda.z y
cmp #<$1fe3
bcc !__b36+
jmp __b36
!__b36:
!:
// main::@43
// POKE
// [259] main::$119 = peephole#12 + c -- vwuz1=vwuz2_plus_vwuc1
lda.z peephole
clc
adc #<c
sta.z __119
lda.z peephole+1
adc #>c
sta.z __119+1
// [260] *((char *)main::$119) = 0 -- _deref_pbuz1=vbuc1
lda #0
tay
sta (__119),y
// [261] main::$120 = main::$119 + 1 -- vwuz1=vwuz2_plus_1
clc
lda.z __119
adc #1
sta.z __120
lda.z __119+1
adc #0
sta.z __120+1
// [262] *((char *)main::$120) = 0 -- _deref_pbuz1=vbuc1
tya
sta (__120),y
// [263] main::$122 = main::$119 + $16 -- vwuz1=vwuz2_plus_vbuc1
lda #$16
clc
adc.z __119
sta.z __122
tya
adc.z __119+1
sta.z __122+1
// [264] *((char *)main::$122) = 0 -- _deref_pbuz1=vbuc1
tya
sta (__122),y
// [265] main::$124 = main::$119 + $17 -- vwuz1=vwuz1_plus_vbuc1
lda #$17
clc
adc.z __124
sta.z __124
bcc !+
inc.z __124+1
!:
// [266] *((char *)main::$124) = 0 -- _deref_pbuz1=vbuc1
lda #0
tay
sta (__124),y
// [267] y#141 = y#13 -- vwuz1=vwuz2
lda.z y
sta.z y_1
lda.z y+1
sta.z y_1+1
jmp __b36
// main::@34
__b34:
// score=score-10
// [268] score#6 = score#19 - $a -- vwuz1=vwuz1_minus_vbuc1
sec
lda.z score
sbc #$a
sta.z score
lda.z score+1
sbc #0
sta.z score+1
// write_score()
// [269] call write_score
// [351] phi from main::@34 to write_score [phi:main::@34->write_score]
// [351] phi score#13 = score#6 [phi:main::@34->write_score#0] -- register_copy
jsr write_score
// [270] phi from main::@34 to main::@88 [phi:main::@34->main::@88]
// main::@88
// wait(10)
// [271] call wait
// [381] phi from main::@88 to wait [phi:main::@88->wait]
// [381] phi z#53 = z#100 [phi:main::@88->wait#0] -- register_copy
// [381] phi wait::n#6 = $a [phi:main::@88->wait#1] -- vbuz1=vbuc1
lda #$a
sta.z wait.n
jsr wait
// [213] phi from main::@88 to main::@35 [phi:main::@88->main::@35]
// [213] phi score#81 = score#38 [phi:main::@88->main::@35#0] -- register_copy
// [213] phi time#38 = div16u8u::return#2 [phi:main::@88->main::@35#1] -- register_copy
jmp __b35
// main::@23
__b23:
// 48+tu
// [272] main::$57 = $30 + tu#13 -- vwuz1=vbuc1_plus_vwuz2
lda #$30
clc
adc.z tu
sta.z __57
lda #0
adc.z tu+1
sta.z __57+1
// chrout(48+tu)
// [273] chrout::petscii = main::$57 -- vbuz1=vwuz2
lda.z __57
sta.z chrout.petscii
// [274] call chrout
jsr chrout
jmp __b11
// main::@21
__b21:
// chrout(ducknumber[j])
// [275] chrout::petscii = ducknumber[j#16] -- vbuz1=pbuc1_derefidx_vbuz2
ldy.z j_2
lda ducknumber,y
sta.z chrout.petscii
// [276] call chrout
jsr chrout
// main::@78
// for (j=0; j<5; j++)
// [277] j#5 = ++ j#16 -- vbuz1=_inc_vbuz1
inc.z j_2
// [93] phi from main::@78 to main::@20 [phi:main::@78->main::@20]
// [93] phi j#16 = j#5 [phi:main::@78->main::@20#0] -- register_copy
jmp __b20
// main::@18
__b18:
// chrout(chrono[j])
// [278] chrout::petscii = chrono[j#13] -- vbuz1=pbuc1_derefidx_vbuz2
ldy.z j_1
lda chrono,y
sta.z chrout.petscii
// [279] call chrout
jsr chrout
// main::@74
// for (j=0; j<4; ++j)
// [280] j#3 = ++ j#13 -- vbuz1=_inc_vbuz1
inc.z j_1
// [84] phi from main::@74 to main::@17 [phi:main::@74->main::@17]
// [84] phi j#13 = j#3 [phi:main::@74->main::@17#0] -- register_copy
jmp __b17
// [281] phi from main::@71 to main::@14 [phi:main::@71->main::@14]
__b24:
// [281] phi j#11 = 1 [phi:main::@71->main::@14#0] -- vbuz1=vbuc1
lda #1
sta.z j
// main::@14
__b14:
// for (j=1; j<=m; ++j)
// [282] if(j#11<=m) goto main::@15 -- vbuz1_le_vbuz2_then_la1
lda.z m
cmp.z j
bcs __b15
// main::@16
// chrout(brick)
// [283] chrout::petscii = brick -- vbuz1=vbuc1
lda #brick
sta.z chrout.petscii
// [284] call chrout
jsr chrout
// main::@73
// z+m
// [285] main::$35 = z#28 + m -- vwuz1=vwuz2_plus_vbuz3
lda.z m
clc
adc.z z_1
sta.z __35
lda #0
adc.z z_1+1
sta.z __35+1
// z=z+m+1
// [286] z#9 = main::$35 + 1 -- vwuz1=vwuz2_plus_1
clc
lda.z __35
adc #1
sta.z z_1
lda.z __35+1
adc #0
sta.z z_1+1
// while (z<506)
// [287] if(z#9<$1fa) goto main::@13 -- vwuz1_lt_vwuc1_then_la1
cmp #>$1fa
bcs !__b13+
jmp __b13
!__b13:
bne !+
lda.z z_1
cmp #<$1fa
bcs !__b13+
jmp __b13
!__b13:
!:
jmp __b12
// main::@15
__b15:
// chrout(right)
// [288] chrout::petscii = right -- vbuz1=vbuc1
lda #right
sta.z chrout.petscii
// [289] call chrout
jsr chrout
// main::@72
// for (j=1; j<=m; ++j)
// [290] j#2 = ++ j#11 -- vbuz1=_inc_vbuz1
inc.z j
// [281] phi from main::@72 to main::@14 [phi:main::@72->main::@14]
// [281] phi j#11 = j#2 [phi:main::@72->main::@14#0] -- register_copy
jmp __b14
// main::@7
__b7:
// chrout(brick)
// [291] chrout::petscii = brick -- vbuz1=vbuc1
lda #brick
sta.z chrout.petscii
// [292] call chrout
jsr chrout
// [293] phi from main::@7 to main::@9 [phi:main::@7->main::@9]
// [293] phi n#101 = 2 [phi:main::@7->main::@9#0] -- vbuz1=vbuc1
lda #2
sta.z n
// main::@9
__b9:
// for(n=2;n<22;++n)
// [294] if(n#101<$16) goto main::@10 -- vbuz1_lt_vbuc1_then_la1
lda.z n
cmp #$16
bcc __b10
// main::@11
// chrout(brick)
// [295] chrout::petscii = brick -- vbuz1=vbuc1
lda #brick
sta.z chrout.petscii
// [296] call chrout
jsr chrout
// main::@64
// for (k=1;k<22;k++)
// [297] k#1 = ++ k#101 -- vbuz1=_inc_vbuz1
inc.z k
// [52] phi from main::@64 to main::@6 [phi:main::@64->main::@6]
// [52] phi n#89 = n#101 [phi:main::@64->main::@6#0] -- register_copy
// [52] phi k#101 = k#1 [phi:main::@64->main::@6#1] -- register_copy
jmp __b6
// main::@10
__b10:
// chrout(right)
// [298] chrout::petscii = right -- vbuz1=vbuc1
lda #right
sta.z chrout.petscii
// [299] call chrout
jsr chrout
// main::@63
// for(n=2;n<22;++n)
// [300] n#1 = ++ n#101 -- vbuz1=_inc_vbuz1
inc.z n
// [293] phi from main::@63 to main::@9 [phi:main::@63->main::@9]
// [293] phi n#101 = n#1 [phi:main::@63->main::@9#0] -- register_copy
jmp __b9
// main::@2
__b2:
// POKE
// [301] main::$3 = $1c00 + m -- vwuz1=vwuc1_plus_vbuz2
lda.z m
clc
adc #<$1c00
sta.z __3
lda #>$1c00
adc #0
sta.z __3+1
// [302] *((char *)main::$3) = duck_udg[m] -- _deref_pbuz1=pbuc1_derefidx_vbuz2
ldy.z m
lda duck_udg,y
ldy #0
sta (__3),y
// for (m=0; m<40; m++)
// [303] m = ++ m -- vbuz1=_inc_vbuz1
inc.z m
jmp __b1
}
// gotoxy
// Set the cursor to the specified position
// void gotoxy(char x, __zp($4c) char y)
gotoxy: {
.label __5 = $48
.label __6 = $2c
.label __7 = $2c
.label line_offset = $2c
.label y = $4c
.label __8 = $46
.label __9 = $2c
// if(y>CONIO_HEIGHT)
// [305] if(gotoxy::y#4<$19+1) goto gotoxy::@3 -- vbuz1_lt_vbuc1_then_la1
lda.z y
cmp #$19+1
bcc __b2
// [307] phi from gotoxy to gotoxy::@1 [phi:gotoxy->gotoxy::@1]
// [307] phi gotoxy::y#5 = 0 [phi:gotoxy->gotoxy::@1#0] -- vbuz1=vbuc1
lda #0
sta.z y
// [306] phi from gotoxy to gotoxy::@3 [phi:gotoxy->gotoxy::@3]
// gotoxy::@3
// [307] phi from gotoxy::@3 to gotoxy::@1 [phi:gotoxy::@3->gotoxy::@1]
// [307] phi gotoxy::y#5 = gotoxy::y#4 [phi:gotoxy::@3->gotoxy::@1#0] -- register_copy
// gotoxy::@1
// gotoxy::@2
__b2:
// conio_cursor_x = x
// [308] conio_cursor_x = 0 -- vbuz1=vbuc1
lda #0
sta.z conio_cursor_x
// conio_cursor_y = y
// [309] conio_cursor_y = gotoxy::y#5 -- vbuz1=vbuz2
lda.z y
sta.z conio_cursor_y
// unsigned int line_offset = (unsigned int)y*CONIO_WIDTH
// [310] gotoxy::$7 = (unsigned int)gotoxy::y#5 -- vwuz1=_word_vbuz2
lda.z y
sta.z __7
lda #0
sta.z __7+1
// [311] gotoxy::$8 = gotoxy::$7 << 2 -- vwuz1=vwuz2_rol_2
lda.z __7
asl
sta.z __8
lda.z __7+1
rol
sta.z __8+1
asl.z __8
rol.z __8+1
// [312] gotoxy::$9 = gotoxy::$8 + gotoxy::$7 -- vwuz1=vwuz2_plus_vwuz1
clc
lda.z __9
adc.z __8
sta.z __9
lda.z __9+1
adc.z __8+1
sta.z __9+1
// [313] gotoxy::line_offset#0 = gotoxy::$9 << 3 -- vwuz1=vwuz1_rol_3
asl.z line_offset
rol.z line_offset+1
asl.z line_offset
rol.z line_offset+1
asl.z line_offset
rol.z line_offset+1
// CONIO_SCREEN_TEXT + line_offset
// [314] gotoxy::$5 = DEFAULT_SCREEN + gotoxy::line_offset#0 -- pbuz1=pbuc1_plus_vwuz2
lda.z line_offset
clc
adc #<DEFAULT_SCREEN
sta.z __5
lda.z line_offset+1
adc #>DEFAULT_SCREEN
sta.z __5+1
// conio_line_text = CONIO_SCREEN_TEXT + line_offset
// [315] conio_line_text = gotoxy::$5 -- pbuz1=pbuz2
lda.z __5
sta.z conio_line_text
lda.z __5+1
sta.z conio_line_text+1
// CONIO_SCREEN_COLORS + line_offset
// [316] gotoxy::$6 = COLORRAM + gotoxy::line_offset#0 -- pbuz1=pbuc1_plus_vwuz1
lda.z __6
clc
adc #<COLORRAM
sta.z __6
lda.z __6+1
adc #>COLORRAM
sta.z __6+1
// conio_line_color = CONIO_SCREEN_COLORS + line_offset
// [317] conio_line_color = gotoxy::$6 -- pbuz1=pbuz2
lda.z __6
sta.z conio_line_color
lda.z __6+1
sta.z conio_line_color+1
// gotoxy::@return
// }
// [318] return
rts
}
// chrout
// void chrout(__zp($18) volatile char petscii)
chrout: {
.label petscii = $18
// asm
// asm { ldapetscii jsr$ffd2 }
lda petscii
jsr $ffd2
// chrout::@return
// }
// [320] return
rts
}
// clear_screen
// void clear_screen(__zp(8) char n, char m)
clear_screen: {
.label __4 = $23
.label __5 = 9
.label n = 8
// [322] phi from clear_screen to clear_screen::@1 [phi:clear_screen->clear_screen::@1]
// [322] phi z#2 = 0 [phi:clear_screen->clear_screen::@1#0] -- vwuz1=vbuc1
lda #<0
sta.z z
sta.z z+1
// clear_screen::@1
__b1:
// for (z=0; z<506; ++z)
// [323] if(z#2<$1fa) goto clear_screen::@2 -- vwuz1_lt_vwuc1_then_la1
lda.z z+1
cmp #>$1fa
bcc __b2
bne !+
lda.z z
cmp #<$1fa
bcc __b2
!:
// [324] phi from clear_screen::@1 to clear_screen::@3 [phi:clear_screen::@1->clear_screen::@3]
// clear_screen::@3
// gotoxy(0,0)
// [325] call gotoxy
// From 0-->505 (506 bytes). ClearScreen with byte 'n' with color 'm'
// [304] phi from clear_screen::@3 to gotoxy [phi:clear_screen::@3->gotoxy]
// [304] phi gotoxy::y#4 = 0 [phi:clear_screen::@3->gotoxy#0] -- vbuz1=vbuc1
lda #0
sta.z gotoxy.y
jsr gotoxy
// clear_screen::@4
// chrout(home)
// [326] chrout::petscii = home -- vbuz1=vbuc1
lda #home
sta.z chrout.petscii
// [327] call chrout
jsr chrout
// clear_screen::@return
// }
// [328] return
rts
// clear_screen::@2
__b2:
// POKE
// [329] clear_screen::$5 = $1e00 + z#2 -- vwuz1=vwuc1_plus_vwuz2
lda.z z
clc
adc #<$1e00
sta.z __5
lda.z z+1
adc #>$1e00
sta.z __5+1
// [330] clear_screen::$4 = clear_screen::$5 + c -- vwuz1=vwuz2_plus_vwuc1
lda.z __5
clc
adc #<c
sta.z __4
lda.z __5+1
adc #>c
sta.z __4+1
// [331] *((char *)clear_screen::$4) = 0 -- _deref_pbuz1=vbuc1
lda #0
tay
sta (__4),y
// [332] *((char *)clear_screen::$5) = clear_screen::n#5 -- _deref_pbuz1=vbuz2
lda.z n
sta (__5),y
// for (z=0; z<506; ++z)
// [333] z#1 = ++ z#2 -- vwuz1=_inc_vwuz1
inc.z z
bne !+
inc.z z+1
!:
// [322] phi from clear_screen::@2 to clear_screen::@1 [phi:clear_screen::@2->clear_screen::@1]
// [322] phi z#2 = z#1 [phi:clear_screen::@2->clear_screen::@1#0] -- register_copy
jmp __b1
}
// textcolor
// Set the color for text output. The old color setting is returned.
// char textcolor(__zp(8) char color)
textcolor: {
.label color = 8
// conio_textcolor = color
// [335] conio_textcolor = textcolor::color#7 -- vbuz1=vbuz2
lda.z color
sta.z conio_textcolor
// textcolor::@return
// }
// [336] return
rts
}
// cputs
// Output a NUL-terminated string at the current cursor position
// void cputs(__zp(5) const char *s)
cputs: {
.label c = 2
.label s = 5
// [338] phi from cputs cputs::@2 to cputs::@1 [phi:cputs/cputs::@2->cputs::@1]
// [338] phi cputs::s#10 = cputs::s#11 [phi:cputs/cputs::@2->cputs::@1#0] -- register_copy
// cputs::@1
__b1:
// while(c=*s++)
// [339] cputs::c#1 = *cputs::s#10 -- vbuz1=_deref_pbuz2
ldy #0
lda (s),y
sta.z c
// [340] cputs::s#0 = ++ cputs::s#10 -- pbuz1=_inc_pbuz1
inc.z s
bne !+
inc.z s+1
!:
// [341] if(0!=cputs::c#1) goto cputs::@2 -- 0_neq_vbuz1_then_la1
lda.z c
bne __b2
// cputs::@return
// }
// [342] return
rts
// cputs::@2
__b2:
// cputc(c)
// [343] cputc::c#0 = cputs::c#1
// [344] call cputc
jsr cputc
jmp __b1
}
// random
// Return to home position
// void random(__zp(3) char k, __zp(8) char n)
random: {
.label k = 3
.label n = 8
.label __3 = 2
// random::@1
__b1:
// m=PEEK
// [346] m = *((char *) 37140) -- vbuz1=_deref_pbuc1
lda $9114
sta.z m
// m>n
// [347] random::$3 = m -- vbuz1=vbuz2
sta.z __3
// while (m<k || m>n)
// [348] if(m<random::k#4) goto random::@1 -- vbuz1_lt_vbuz2_then_la1
lda.z m
cmp.z k
bcc __b1
// random::@2
// [349] if(random::$3>random::n#4) goto random::@1 -- vbuz1_gt_vbuz2_then_la1
lda.z n
cmp.z __3
bcc __b1
// random::@return
// }
// [350] return
rts
}
// write_score
write_score: {
// if (score>65000)
// [352] if(score#13<=$fde8) goto write_score::@15 -- vwuz1_le_vwuc1_then_la1
lda.z score+1
cmp #>$fde8
bne !+
lda.z score
cmp #<$fde8
!:
bcc __b1
beq __b1
// [354] phi from write_score to write_score::@1 [phi:write_score->write_score::@1]
// [354] phi score#38 = 0 [phi:write_score->write_score::@1#0] -- vwuz1=vbuc1
lda #<0
sta.z score
sta.z score+1
// [353] phi from write_score to write_score::@15 [phi:write_score->write_score::@15]
// write_score::@15
// [354] phi from write_score::@15 to write_score::@1 [phi:write_score::@15->write_score::@1]
// [354] phi score#38 = score#13 [phi:write_score::@15->write_score::@1#0] -- register_copy
// write_score::@1
__b1:
// m=0
// [355] m = 0 -- vbuz1=vbuc1
lda #0
sta.z m
// write_score::@5
__b5:
// for (m=0;m<4;m++)
// [356] if(m<4) goto write_score::@6 -- vbuz1_lt_vbuc1_then_la1
lda.z m
cmp #4
bcc __b6
// write_score::@7
// utoa(score,buffer,10)
// [357] utoa::value#1 = score#38 -- vwuz1=vwuz2
lda.z score
sta.z utoa.value
lda.z score+1
sta.z utoa.value+1
// [358] call utoa
// (!!) Needed. Possibly a bug
// [390] phi from write_score::@7 to utoa [phi:write_score::@7->utoa]
// [390] phi utoa::value#10 = utoa::value#1 [phi:write_score::@7->utoa#0] -- register_copy
jsr utoa
// write_score::@11
// if (score>9)
// [359] if(score#38<9+1) goto write_score::@2 -- vwuz1_lt_vbuc1_then_la1
lda.z score+1
bne !+
lda.z score
cmp #9+1
bcc __b2
!:
// write_score::@8
// points[2]=buffer[0]
// [360] *(points+2) = *buffer -- _deref_pbuc1=_deref_pbuc2
lda buffer
sta points+2
// points[3]=buffer[1]
// [361] *(points+3) = *(buffer+1) -- _deref_pbuc1=_deref_pbuc2
lda buffer+1
sta points+3
// write_score::@2
__b2:
// if (score>99)
// [362] if(score#38<$63+1) goto write_score::@3 -- vwuz1_lt_vbuc1_then_la1
lda.z score+1
bne !+
lda.z score
cmp #$63+1
bcc __b3
!:
// write_score::@4
// points[1]=buffer[0]
// [363] *(points+1) = *buffer -- _deref_pbuc1=_deref_pbuc2
lda buffer
sta points+1
// points[2]=buffer[1]
// [364] *(points+2) = *(buffer+1) -- _deref_pbuc1=_deref_pbuc2
lda buffer+1
sta points+2
// points[3]=buffer[2]
// [365] *(points+3) = *(buffer+2) -- _deref_pbuc1=_deref_pbuc2
lda buffer+2
sta points+3
// write_score::@3
__b3:
// chrout(yellow)
// [366] chrout::petscii = yellow -- vbuz1=vbuc1
lda #yellow
sta.z chrout.petscii
// [367] call chrout
jsr chrout
// write_score::@12
// chrout(home)
// [368] chrout::petscii = home -- vbuz1=vbuc1
lda #home
sta.z chrout.petscii
// [369] call chrout
jsr chrout
// write_score::@13
// POKE
// [370] *((char *) 211) = 4 -- _deref_pbuc1=vbuc2
lda #4
sta.z $d3
// m=0
// [371] m = 0 -- vbuz1=vbuc1
lda #0
sta.z m
// write_score::@9
__b9:
// for (m=0;m<4;m++)
// [372] if(m<4) goto write_score::@10 -- vbuz1_lt_vbuc1_then_la1
lda.z m
cmp #4
bcc __b10
// write_score::@return
// }
// [373] return
rts
// write_score::@10
__b10:
// chrout(points[m])
// [374] chrout::petscii = points[m] -- vbuz1=pbuc1_derefidx_vbuz2
ldy.z m
lda points,y
sta.z chrout.petscii
// [375] call chrout
jsr chrout
// write_score::@14
// for (m=0;m<4;m++)
// [376] m = ++ m -- vbuz1=_inc_vbuz1
inc.z m
jmp __b9
// write_score::@6
__b6:
// points[m]='0'
// [377] points[m] = '0' -- pbuc1_derefidx_vbuz1=vbuc2
lda #'0'
ldy.z m
sta points,y
// for (m=0;m<4;m++)
// [378] m = ++ m -- vbuz1=_inc_vbuz1
inc.z m
jmp __b5
}
// chrono_restart
chrono_restart: {
// asm
// asm { lda#0 ldy#0 ldx#0 jsr$ffdb }
lda #0
tay
tax
jsr $ffdb
// chrono_restart::@return
// }
// [380] return
rts
}
// wait
// void wait(__zp(3) char n)
wait: {
.label n = 3
// m=0
// [382] m = 0 -- vbuz1=vbuc1
lda #0
sta.z m
// [383] phi from wait wait::@4 to wait::@1 [phi:wait/wait::@4->wait::@1]
// [383] phi z#25 = z#53 [phi:wait/wait::@4->wait::@1#0] -- register_copy
// wait::@1
__b1:
// for (m=0;m<n;++m)
// [384] if(m<wait::n#6) goto wait::@2 -- vbuz1_lt_vbuz2_then_la1
lda.z m
cmp.z n
bcc __b4
// wait::@return
// }
// [385] return
rts
// [386] phi from wait::@1 to wait::@2 [phi:wait::@1->wait::@2]
__b4:
// [386] phi z#23 = 0 [phi:wait::@1->wait::@2#0] -- vwuz1=vbuc1
lda #<0
sta.z z_1
sta.z z_1+1
// wait::@2
__b2:
// for (z=0;z<540;++z)
// [387] if(z#23<$21c) goto wait::@3 -- vwuz1_lt_vwuc1_then_la1
lda.z z_1+1
cmp #>$21c
bcc __b3
bne !+
lda.z z_1
cmp #<$21c
bcc __b3
!:
// wait::@4
// for (m=0;m<n;++m)
// [388] m = ++ m -- vbuz1=_inc_vbuz1
inc.z m
jmp __b1
// wait::@3
__b3:
// for (z=0;z<540;++z)
// [389] z#4 = ++ z#23 -- vwuz1=_inc_vwuz1
inc.z z_1
bne !+
inc.z z_1+1
!:
// [386] phi from wait::@3 to wait::@2 [phi:wait::@3->wait::@2]
// [386] phi z#23 = z#4 [phi:wait::@3->wait::@2#0] -- register_copy
jmp __b2
}
// utoa
// Converts unsigned number value to a string representing it in RADIX format.
// If the leading digits are zero they are not included in the string.
// - value : The number to be converted to RADIX
// - buffer : receives the string representing the number and zero-termination.
// - radix : The radix to convert the number to (from the enum RADIX)
// void utoa(__zp(5) unsigned int value, __zp($d) char *buffer, char radix)
utoa: {
.label __10 = $11
.label __11 = 2
.label digit_value = 9
.label buffer = $d
.label digit = 3
.label value = 5
.label started = $10
// [391] phi from utoa to utoa::@1 [phi:utoa->utoa::@1]
// [391] phi utoa::buffer#10 = buffer [phi:utoa->utoa::@1#0] -- pbuz1=pbuc1
lda #<@buffer
sta.z buffer
lda #>@buffer
sta.z buffer+1
// [391] phi utoa::started#2 = 0 [phi:utoa->utoa::@1#1] -- vbuz1=vbuc1
lda #0
sta.z started
// [391] phi utoa::value#3 = utoa::value#10 [phi:utoa->utoa::@1#2] -- register_copy
// [391] phi utoa::digit#2 = 0 [phi:utoa->utoa::@1#3] -- vbuz1=vbuc1
sta.z digit
// utoa::@1
__b1:
// for( char digit=0; digit<max_digits-1; digit++ )
// [392] if(utoa::digit#2<5-1) goto utoa::@2 -- vbuz1_lt_vbuc1_then_la1
lda.z digit
cmp #5-1
bcc __b2
// utoa::@3
// *buffer++ = DIGITS[(char)value]
// [393] utoa::$11 = (char)utoa::value#3 -- vbuz1=_byte_vwuz2
lda.z value
sta.z __11
// [394] *utoa::buffer#10 = DIGITS[utoa::$11] -- _deref_pbuz1=pbuc1_derefidx_vbuz2
tay
lda DIGITS,y
ldy #0
sta (buffer),y
// *buffer++ = DIGITS[(char)value];
// [395] utoa::buffer#3 = ++ utoa::buffer#10 -- pbuz1=_inc_pbuz1
inc.z buffer
bne !+
inc.z buffer+1
!:
// *buffer = 0
// [396] *utoa::buffer#3 = 0 -- _deref_pbuz1=vbuc1
lda #0
tay
sta (buffer),y
// utoa::@return
// }
// [397] return
rts
// utoa::@2
__b2:
// unsigned int digit_value = digit_values[digit]
// [398] utoa::$10 = utoa::digit#2 << 1 -- vbuz1=vbuz2_rol_1
lda.z digit
asl
sta.z __10
// [399] utoa::digit_value#0 = RADIX_DECIMAL_VALUES[utoa::$10] -- vwuz1=pwuc1_derefidx_vbuz2
tay
lda RADIX_DECIMAL_VALUES,y
sta.z digit_value
lda RADIX_DECIMAL_VALUES+1,y
sta.z digit_value+1
// if (started || value >= digit_value)
// [400] if(0!=utoa::started#2) goto utoa::@5 -- 0_neq_vbuz1_then_la1
lda.z started
bne __b5
// utoa::@7
// [401] if(utoa::value#3>=utoa::digit_value#0) goto utoa::@5 -- vwuz1_ge_vwuz2_then_la1
lda.z digit_value+1
cmp.z value+1
bne !+
lda.z digit_value
cmp.z value
beq __b5
!:
bcc __b5
// [402] phi from utoa::@7 to utoa::@4 [phi:utoa::@7->utoa::@4]
// [402] phi utoa::buffer#15 = utoa::buffer#10 [phi:utoa::@7->utoa::@4#0] -- register_copy
// [402] phi utoa::started#4 = utoa::started#2 [phi:utoa::@7->utoa::@4#1] -- register_copy
// [402] phi utoa::value#7 = utoa::value#3 [phi:utoa::@7->utoa::@4#2] -- register_copy
// utoa::@4
__b4:
// for( char digit=0; digit<max_digits-1; digit++ )
// [403] utoa::digit#1 = ++ utoa::digit#2 -- vbuz1=_inc_vbuz1
inc.z digit
// [391] phi from utoa::@4 to utoa::@1 [phi:utoa::@4->utoa::@1]
// [391] phi utoa::buffer#10 = utoa::buffer#15 [phi:utoa::@4->utoa::@1#0] -- register_copy
// [391] phi utoa::started#2 = utoa::started#4 [phi:utoa::@4->utoa::@1#1] -- register_copy
// [391] phi utoa::value#3 = utoa::value#7 [phi:utoa::@4->utoa::@1#2] -- register_copy
// [391] phi utoa::digit#2 = utoa::digit#1 [phi:utoa::@4->utoa::@1#3] -- register_copy
jmp __b1
// utoa::@5
__b5:
// utoa_append(buffer++, value, digit_value)
// [404] utoa_append::buffer#0 = utoa::buffer#10
// [405] utoa_append::value#0 = utoa::value#3
// [406] utoa_append::sub#0 = utoa::digit_value#0
// [407] call utoa_append
// [432] phi from utoa::@5 to utoa_append [phi:utoa::@5->utoa_append]
jsr utoa_append
// utoa_append(buffer++, value, digit_value)
// [408] utoa_append::return#0 = utoa_append::value#2
// utoa::@6
// value = utoa_append(buffer++, value, digit_value)
// [409] utoa::value#0 = utoa_append::return#0
// value = utoa_append(buffer++, value, digit_value);
// [410] utoa::buffer#4 = ++ utoa::buffer#10 -- pbuz1=_inc_pbuz1
inc.z buffer
bne !+
inc.z buffer+1
!:
// [402] phi from utoa::@6 to utoa::@4 [phi:utoa::@6->utoa::@4]
// [402] phi utoa::buffer#15 = utoa::buffer#4 [phi:utoa::@6->utoa::@4#0] -- register_copy
// [402] phi utoa::started#4 = 1 [phi:utoa::@6->utoa::@4#1] -- vbuz1=vbuc1
lda #1
sta.z started
// [402] phi utoa::value#7 = utoa::value#0 [phi:utoa::@6->utoa::@4#2] -- register_copy
jmp __b4
}
// read_chrono
read_chrono: {
.label __0 = $23
.label __5 = 9
// asm
// asm { jsr$ffde stal stxm }
jsr $ffde
sta l
stx m
// m*256
// [412] read_chrono::$0 = m << 8 -- vwuz1=vbuz2_rol_8
txa
sta.z __0+1
lda #0
sta.z __0
// div16u8u((m*256)+l,60)
// [413] div16u8u::dividend#0 = read_chrono::$0 + l -- vwuz1=vwuz1_plus_vbuz2
lda.z l
clc
adc.z div16u8u.dividend
sta.z div16u8u.dividend
bcc !+
inc.z div16u8u.dividend+1
!:
// [414] call div16u8u
jsr div16u8u
// [415] div16u8u::return#2 = div16u8u::return#0 -- vwuz1=vwuz2
lda.z div16u8u.return
sta.z div16u8u.return_1
lda.z div16u8u.return+1
sta.z div16u8u.return_1+1
// read_chrono::@2
// POKE
// [416] *((char *)$1e15+c) = 7 -- _deref_pbuc1=vbuc2
lda #7
sta $1e15+c
// [417] *((char *) 7701) = $b9 -- _deref_pbuc1=vbuc2
lda #$b9
sta $1e15
// if (time<10)
// [418] if(div16u8u::return#2>=$a) goto read_chrono::@return -- vwuz1_ge_vbuc1_then_la1
lda.z div16u8u.return_1+1
bne __breturn
lda.z div16u8u.return_1
cmp #$a
bcs __breturn
!:
// read_chrono::@1
// POKE
// [419] read_chrono::$5 = $b9 - div16u8u::return#2 -- vwuz1=vwuc1_minus_vwuz2
sec
lda #<$b9
sbc.z div16u8u.return_1
sta.z __5
lda #>$b9
sbc.z div16u8u.return_1+1
sta.z __5+1
// [420] *((char *) 7701) = read_chrono::$5 -- _deref_pbuc1=vwuz1
lda.z __5
sta $1e15
// read_chrono::@return
__breturn:
// }
// [421] return
rts
}
// cputc
// Output one character at the current cursor position
// Moves the cursor forward. Scrolls the entire screen if needed
// void cputc(__zp(2) char c)
cputc: {
.label c = 2
// if(c=='\n')
// [422] if(cputc::c#0==' ') goto cputc::@1 -- vbuz1_eq_vbuc1_then_la1
lda #'\n'
cmp.z c
beq __b1
// cputc::@2
// conio_line_text[conio_cursor_x] = c
// [423] conio_line_text[conio_cursor_x] = cputc::c#0 -- pbuz1_derefidx_vbuz2=vbuz3
lda.z c
ldy.z conio_cursor_x
sta (conio_line_text),y
// conio_line_color[conio_cursor_x] = conio_textcolor
// [424] conio_line_color[conio_cursor_x] = conio_textcolor -- pbuz1_derefidx_vbuz2=vbuz3
lda.z conio_textcolor
sta (conio_line_color),y
// if(++conio_cursor_x==CONIO_WIDTH)
// [425] conio_cursor_x = ++ conio_cursor_x -- vbuz1=_inc_vbuz1
inc.z conio_cursor_x
// [426] if(conio_cursor_x!=$28) goto cputc::@return -- vbuz1_neq_vbuc1_then_la1
lda #$28
cmp.z conio_cursor_x
bne __breturn
// [427] phi from cputc::@2 to cputc::@3 [phi:cputc::@2->cputc::@3]
// cputc::@3
// cputln()
// [428] call cputln
jsr cputln
// cputc::@return
__breturn:
// }
// [429] return
rts
// [430] phi from cputc to cputc::@1 [phi:cputc->cputc::@1]
// cputc::@1
__b1:
// cputln()
// [431] call cputln
jsr cputln
rts
}
// utoa_append
// Used to convert a single digit of an unsigned number value to a string representation
// Counts a single digit up from '0' as long as the value is larger than sub.
// Each time the digit is increased sub is subtracted from value.
// - buffer : pointer to the char that receives the digit
// - value : The value where the digit will be derived from
// - sub : the value of a '1' in the digit. Subtracted continually while the digit is increased.
// (For decimal the subs used are 10000, 1000, 100, 10, 1)
// returns : the value reduced by sub * digit so that it is less than sub.
// __zp(5) unsigned int utoa_append(__zp($d) char *buffer, __zp(5) unsigned int value, __zp(9) unsigned int sub)
utoa_append: {
.label buffer = $d
.label value = 5
.label sub = 9
.label return = 5
.label digit = 7
// [433] phi from utoa_append to utoa_append::@1 [phi:utoa_append->utoa_append::@1]
// [433] phi utoa_append::digit#2 = 0 [phi:utoa_append->utoa_append::@1#0] -- vbuz1=vbuc1
lda #0
sta.z digit
// [433] phi utoa_append::value#2 = utoa_append::value#0 [phi:utoa_append->utoa_append::@1#1] -- register_copy
// utoa_append::@1
__b1:
// while (value >= sub)
// [434] if(utoa_append::value#2>=utoa_append::sub#0) goto utoa_append::@2 -- vwuz1_ge_vwuz2_then_la1
lda.z sub+1
cmp.z value+1
bne !+
lda.z sub
cmp.z value
beq __b2
!:
bcc __b2
// utoa_append::@3
// *buffer = DIGITS[digit]
// [435] *utoa_append::buffer#0 = DIGITS[utoa_append::digit#2] -- _deref_pbuz1=pbuc1_derefidx_vbuz2
ldy.z digit
lda DIGITS,y
ldy #0
sta (buffer),y
// utoa_append::@return
// }
// [436] return
rts
// utoa_append::@2
__b2:
// digit++;
// [437] utoa_append::digit#1 = ++ utoa_append::digit#2 -- vbuz1=_inc_vbuz1
inc.z digit
// value -= sub
// [438] utoa_append::value#1 = utoa_append::value#2 - utoa_append::sub#0 -- vwuz1=vwuz1_minus_vwuz2
lda.z value
sec
sbc.z sub
sta.z value
lda.z value+1
sbc.z sub+1
sta.z value+1
// [433] phi from utoa_append::@2 to utoa_append::@1 [phi:utoa_append::@2->utoa_append::@1]
// [433] phi utoa_append::digit#2 = utoa_append::digit#1 [phi:utoa_append::@2->utoa_append::@1#0] -- register_copy
// [433] phi utoa_append::value#2 = utoa_append::value#1 [phi:utoa_append::@2->utoa_append::@1#1] -- register_copy
jmp __b1
}
// div16u8u
// Divide unsigned 16-bit unsigned long dividend with a 8-bit unsigned char divisor
// The 8-bit unsigned char remainder can be found in rem8u after the division
// __zp($30) unsigned int div16u8u(__zp($23) unsigned int dividend, char divisor)
div16u8u: {
.label divisor = $3c
.label quotient_hi = 2
.label quotient_lo = $10
.label return = $12
.label dividend = $23
.label return_1 = $30
// unsigned char quotient_hi = divr8u(BYTE1(dividend), divisor, 0)
// [439] divr8u::dividend#1 = byte1 div16u8u::dividend#0 -- vbuz1=_byte1_vwuz2
lda.z dividend+1
sta.z divr8u.dividend
// [440] call divr8u
// [456] phi from div16u8u to divr8u [phi:div16u8u->divr8u]
// [456] phi divr8u::dividend#5 = divr8u::dividend#1 [phi:div16u8u->divr8u#0] -- register_copy
// [456] phi divr8u::rem#10 = 0 [phi:div16u8u->divr8u#1] -- vbuz1=vbuc1
lda #0
sta.z divr8u.rem
jsr divr8u
// unsigned char quotient_hi = divr8u(BYTE1(dividend), divisor, 0)
// [441] divr8u::return#2 = divr8u::return#0
// div16u8u::@1
// [442] div16u8u::quotient_hi#0 = divr8u::return#2 -- vbuz1=vbuz2
lda.z divr8u.return
sta.z quotient_hi
// unsigned char quotient_lo = divr8u(BYTE0(dividend), divisor, rem8u)
// [443] divr8u::dividend#2 = byte0 div16u8u::dividend#0 -- vbuz1=_byte0_vwuz2
lda.z dividend
sta.z divr8u.dividend
// [444] divr8u::rem#4 = divr8u::rem#11
// [445] call divr8u
// [456] phi from div16u8u::@1 to divr8u [phi:div16u8u::@1->divr8u]
// [456] phi divr8u::dividend#5 = divr8u::dividend#2 [phi:div16u8u::@1->divr8u#0] -- register_copy
// [456] phi divr8u::rem#10 = divr8u::rem#4 [phi:div16u8u::@1->divr8u#1] -- register_copy
jsr divr8u
// unsigned char quotient_lo = divr8u(BYTE0(dividend), divisor, rem8u)
// [446] divr8u::return#3 = divr8u::return#0
// div16u8u::@2
// [447] div16u8u::quotient_lo#0 = divr8u::return#3
// unsigned int quotient = MAKEWORD( quotient_hi, quotient_lo )
// [448] div16u8u::return#0 = div16u8u::quotient_hi#0 w= div16u8u::quotient_lo#0 -- vwuz1=vbuz2_word_vbuz3
lda.z quotient_hi
sta.z return+1
lda.z quotient_lo
sta.z return
// div16u8u::@return
// }
// [449] return
rts
}
// cputln
// Print a newline
cputln: {
// conio_line_text += CONIO_WIDTH
// [450] conio_line_text = conio_line_text + $28 -- pbuz1=pbuz1_plus_vbuc1
lda #$28
clc
adc.z conio_line_text
sta.z conio_line_text
bcc !+
inc.z conio_line_text+1
!:
// conio_line_color += CONIO_WIDTH
// [451] conio_line_color = conio_line_color + $28 -- pbuz1=pbuz1_plus_vbuc1
lda #$28
clc
adc.z conio_line_color
sta.z conio_line_color
bcc !+
inc.z conio_line_color+1
!:
// conio_cursor_x = 0
// [452] conio_cursor_x = 0 -- vbuz1=vbuc1
lda #0
sta.z conio_cursor_x
// conio_cursor_y++;
// [453] conio_cursor_y = ++ conio_cursor_y -- vbuz1=_inc_vbuz1
inc.z conio_cursor_y
// cscroll()
// [454] call cscroll
jsr cscroll
// cputln::@return
// }
// [455] return
rts
}
// divr8u
// Performs division on two 8 bit unsigned chars and an initial remainder
// Returns dividend/divisor.
// The final remainder will be set into the global variable rem8u
// Implemented using simple binary division
// __zp($10) char divr8u(__zp(3) char dividend, char divisor, __zp($f) char rem)
divr8u: {
.label __1 = $11
.label rem = $f
.label dividend = 3
.label quotient = $10
.label i = 7
.label return = $10
// [457] phi from divr8u to divr8u::@1 [phi:divr8u->divr8u::@1]
// [457] phi divr8u::i#2 = 0 [phi:divr8u->divr8u::@1#0] -- vbuz1=vbuc1
lda #0
sta.z i
// [457] phi divr8u::quotient#3 = 0 [phi:divr8u->divr8u::@1#1] -- vbuz1=vbuc1
sta.z quotient
// [457] phi divr8u::dividend#3 = divr8u::dividend#5 [phi:divr8u->divr8u::@1#2] -- register_copy
// [457] phi divr8u::rem#5 = divr8u::rem#10 [phi:divr8u->divr8u::@1#3] -- register_copy
// [457] phi from divr8u::@3 to divr8u::@1 [phi:divr8u::@3->divr8u::@1]
// [457] phi divr8u::i#2 = divr8u::i#1 [phi:divr8u::@3->divr8u::@1#0] -- register_copy
// [457] phi divr8u::quotient#3 = divr8u::return#0 [phi:divr8u::@3->divr8u::@1#1] -- register_copy
// [457] phi divr8u::dividend#3 = divr8u::dividend#0 [phi:divr8u::@3->divr8u::@1#2] -- register_copy
// [457] phi divr8u::rem#5 = divr8u::rem#11 [phi:divr8u::@3->divr8u::@1#3] -- register_copy
// divr8u::@1
__b1:
// rem = rem << 1
// [458] divr8u::rem#0 = divr8u::rem#5 << 1 -- vbuz1=vbuz1_rol_1
asl.z rem
// dividend & 0x80
// [459] divr8u::$1 = divr8u::dividend#3 & $80 -- vbuz1=vbuz2_band_vbuc1
lda #$80
and.z dividend
sta.z __1
// if( (dividend & 0x80) != 0 )
// [460] if(divr8u::$1==0) goto divr8u::@2 -- vbuz1_eq_0_then_la1
beq __b2
// divr8u::@4
// rem = rem | 1
// [461] divr8u::rem#1 = divr8u::rem#0 | 1 -- vbuz1=vbuz1_bor_vbuc1
lda #1
ora.z rem
sta.z rem
// [462] phi from divr8u::@1 divr8u::@4 to divr8u::@2 [phi:divr8u::@1/divr8u::@4->divr8u::@2]
// [462] phi divr8u::rem#6 = divr8u::rem#0 [phi:divr8u::@1/divr8u::@4->divr8u::@2#0] -- register_copy
// divr8u::@2
__b2:
// dividend = dividend << 1
// [463] divr8u::dividend#0 = divr8u::dividend#3 << 1 -- vbuz1=vbuz1_rol_1
asl.z dividend
// quotient = quotient << 1
// [464] divr8u::quotient#1 = divr8u::quotient#3 << 1 -- vbuz1=vbuz1_rol_1
asl.z quotient
// if(rem>=divisor)
// [465] if(divr8u::rem#6<div16u8u::divisor#0) goto divr8u::@3 -- vbuz1_lt_vbuc1_then_la1
lda.z rem
cmp #div16u8u.divisor
bcc __b3
// divr8u::@5
// quotient++;
// [466] divr8u::quotient#2 = ++ divr8u::quotient#1 -- vbuz1=_inc_vbuz1
inc.z quotient
// rem = rem - divisor
// [467] divr8u::rem#2 = divr8u::rem#6 - div16u8u::divisor#0 -- vbuz1=vbuz1_minus_vbuc1
lax.z rem
axs #div16u8u.divisor
stx.z rem
// [468] phi from divr8u::@2 divr8u::@5 to divr8u::@3 [phi:divr8u::@2/divr8u::@5->divr8u::@3]
// [468] phi divr8u::return#0 = divr8u::quotient#1 [phi:divr8u::@2/divr8u::@5->divr8u::@3#0] -- register_copy
// [468] phi divr8u::rem#11 = divr8u::rem#6 [phi:divr8u::@2/divr8u::@5->divr8u::@3#1] -- register_copy
// divr8u::@3
__b3:
// for( char i : 0..7)
// [469] divr8u::i#1 = ++ divr8u::i#2 -- vbuz1=_inc_vbuz1
inc.z i
// [470] if(divr8u::i#1!=8) goto divr8u::@1 -- vbuz1_neq_vbuc1_then_la1
lda #8
cmp.z i
bne __b1
// divr8u::@return
// }
// [471] return
rts
}
// cscroll
// Scroll the entire screen if the cursor is beyond the last line
cscroll: {
// if(conio_cursor_y==CONIO_HEIGHT)
// [472] if(conio_cursor_y!=$19) goto cscroll::@return -- vbuz1_neq_vbuc1_then_la1
lda #$19
cmp.z conio_cursor_y
bne __breturn
// [473] phi from cscroll to cscroll::@1 [phi:cscroll->cscroll::@1]
// cscroll::@1
// memcpy(CONIO_SCREEN_TEXT, CONIO_SCREEN_TEXT+CONIO_WIDTH, CONIO_BYTES-CONIO_WIDTH)
// [474] call memcpy
// [485] phi from cscroll::@1 to memcpy [phi:cscroll::@1->memcpy]
// [485] phi memcpy::destination#2 = (void *)DEFAULT_SCREEN [phi:cscroll::@1->memcpy#0] -- pvoz1=pvoc1
lda #<DEFAULT_SCREEN
sta.z memcpy.destination
lda #>DEFAULT_SCREEN
sta.z memcpy.destination+1
// [485] phi memcpy::source#2 = (void *)DEFAULT_SCREEN+$28 [phi:cscroll::@1->memcpy#1] -- pvoz1=pvoc1
lda #<DEFAULT_SCREEN+$28
sta.z memcpy.source
lda #>DEFAULT_SCREEN+$28
sta.z memcpy.source+1
jsr memcpy
// [475] phi from cscroll::@1 to cscroll::@2 [phi:cscroll::@1->cscroll::@2]
// cscroll::@2
// memcpy(CONIO_SCREEN_COLORS, CONIO_SCREEN_COLORS+CONIO_WIDTH, CONIO_BYTES-CONIO_WIDTH)
// [476] call memcpy
// [485] phi from cscroll::@2 to memcpy [phi:cscroll::@2->memcpy]
// [485] phi memcpy::destination#2 = (void *)COLORRAM [phi:cscroll::@2->memcpy#0] -- pvoz1=pvoc1
lda #<COLORRAM
sta.z memcpy.destination
lda #>COLORRAM
sta.z memcpy.destination+1
// [485] phi memcpy::source#2 = (void *)COLORRAM+$28 [phi:cscroll::@2->memcpy#1] -- pvoz1=pvoc1
lda #<COLORRAM+$28
sta.z memcpy.source
lda #>COLORRAM+$28
sta.z memcpy.source+1
jsr memcpy
// [477] phi from cscroll::@2 to cscroll::@3 [phi:cscroll::@2->cscroll::@3]
// cscroll::@3
// memset(CONIO_SCREEN_TEXT+CONIO_BYTES-CONIO_WIDTH, ' ', CONIO_WIDTH)
// [478] call memset
// [495] phi from cscroll::@3 to memset [phi:cscroll::@3->memset]
// [495] phi memset::c#4 = ' ' [phi:cscroll::@3->memset#0] -- vbuz1=vbuc1
lda #' '
sta.z memset.c
// [495] phi memset::str#3 = (void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28 [phi:cscroll::@3->memset#1] -- pvoz1=pvoc1
lda #<DEFAULT_SCREEN+$19*$28-$28
sta.z memset.str
lda #>DEFAULT_SCREEN+$19*$28-$28
sta.z memset.str+1
jsr memset
// cscroll::@4
// memset(CONIO_SCREEN_COLORS+CONIO_BYTES-CONIO_WIDTH, conio_textcolor, CONIO_WIDTH)
// [479] memset::c#1 = conio_textcolor -- vbuz1=vbuz2
lda.z conio_textcolor
sta.z memset.c
// [480] call memset
// [495] phi from cscroll::@4 to memset [phi:cscroll::@4->memset]
// [495] phi memset::c#4 = memset::c#1 [phi:cscroll::@4->memset#0] -- register_copy
// [495] phi memset::str#3 = (void *)COLORRAM+(unsigned int)$19*$28-$28 [phi:cscroll::@4->memset#1] -- pvoz1=pvoc1
lda #<COLORRAM+$19*$28-$28
sta.z memset.str
lda #>COLORRAM+$19*$28-$28
sta.z memset.str+1
jsr memset
// cscroll::@5
// conio_line_text -= CONIO_WIDTH
// [481] conio_line_text = conio_line_text - $28 -- pbuz1=pbuz1_minus_vbuc1
sec
lda.z conio_line_text
sbc #$28
sta.z conio_line_text
lda.z conio_line_text+1
sbc #0
sta.z conio_line_text+1
// conio_line_color -= CONIO_WIDTH
// [482] conio_line_color = conio_line_color - $28 -- pbuz1=pbuz1_minus_vbuc1
sec
lda.z conio_line_color
sbc #$28
sta.z conio_line_color
lda.z conio_line_color+1
sbc #0
sta.z conio_line_color+1
// conio_cursor_y--;
// [483] conio_cursor_y = -- conio_cursor_y -- vbuz1=_dec_vbuz1
dec.z conio_cursor_y
// cscroll::@return
__breturn:
// }
// [484] return
rts
}
// memcpy
// Copy block of memory (forwards)
// Copies the values of num bytes from the location pointed to by source directly to the memory block pointed to by destination.
// void * memcpy(__zp($b) void *destination, __zp($d) void *source, unsigned int num)
memcpy: {
.label src_end = 9
.label dst = $b
.label src = $d
.label source = $d
.label destination = $b
// char* src_end = (char*)source+num
// [486] memcpy::src_end#0 = (char *)memcpy::source#2 + (unsigned int)$19*$28-$28 -- pbuz1=pbuz2_plus_vwuc1
lda.z source
clc
adc #<$19*$28-$28
sta.z src_end
lda.z source+1
adc #>$19*$28-$28
sta.z src_end+1
// [487] memcpy::src#4 = (char *)memcpy::source#2
// [488] memcpy::dst#4 = (char *)memcpy::destination#2
// [489] phi from memcpy memcpy::@2 to memcpy::@1 [phi:memcpy/memcpy::@2->memcpy::@1]
// [489] phi memcpy::dst#2 = memcpy::dst#4 [phi:memcpy/memcpy::@2->memcpy::@1#0] -- register_copy
// [489] phi memcpy::src#2 = memcpy::src#4 [phi:memcpy/memcpy::@2->memcpy::@1#1] -- register_copy
// memcpy::@1
__b1:
// while(src!=src_end)
// [490] if(memcpy::src#2!=memcpy::src_end#0) goto memcpy::@2 -- pbuz1_neq_pbuz2_then_la1
lda.z src+1
cmp.z src_end+1
bne __b2
lda.z src
cmp.z src_end
bne __b2
// memcpy::@return
// }
// [491] return
rts
// memcpy::@2
__b2:
// *dst++ = *src++
// [492] *memcpy::dst#2 = *memcpy::src#2 -- _deref_pbuz1=_deref_pbuz2
ldy #0
lda (src),y
sta (dst),y
// *dst++ = *src++;
// [493] memcpy::dst#1 = ++ memcpy::dst#2 -- pbuz1=_inc_pbuz1
inc.z dst
bne !+
inc.z dst+1
!:
// [494] memcpy::src#1 = ++ memcpy::src#2 -- pbuz1=_inc_pbuz1
inc.z src
bne !+
inc.z src+1
!:
jmp __b1
}
// memset
// Copies the character c (an unsigned char) to the first num characters of the object pointed to by the argument str.
// void * memset(__zp($b) void *str, __zp($10) char c, unsigned int num)
memset: {
.label end = $12
.label dst = $b
.label c = $10
.label str = $b
// memset::@1
// char* end = (char*)str + num
// [496] memset::end#0 = (char *)memset::str#3 + $28 -- pbuz1=pbuz2_plus_vbuc1
lda #$28
clc
adc.z str
sta.z end
lda #0
adc.z str+1
sta.z end+1
// [497] memset::dst#4 = (char *)memset::str#3
// [498] phi from memset::@1 memset::@3 to memset::@2 [phi:memset::@1/memset::@3->memset::@2]
// [498] phi memset::dst#2 = memset::dst#4 [phi:memset::@1/memset::@3->memset::@2#0] -- register_copy
// memset::@2
__b2:
// for(char* dst = str; dst!=end; dst++)
// [499] if(memset::dst#2!=memset::end#0) goto memset::@3 -- pbuz1_neq_pbuz2_then_la1
lda.z dst+1
cmp.z end+1
bne __b3
lda.z dst
cmp.z end
bne __b3
// memset::@return
// }
// [500] return
rts
// memset::@3
__b3:
// *dst = c
// [501] *memset::dst#2 = memset::c#4 -- _deref_pbuz1=vbuz2
lda.z c
ldy #0
sta (dst),y
// for(char* dst = str; dst!=end; dst++)
// [502] memset::dst#1 = ++ memset::dst#2 -- pbuz1=_inc_pbuz1
inc.z dst
bne !+
inc.z dst+1
!:
jmp __b2
}
// File Data
.segment Data
// The digits used for numbers
DIGITS: .text "0123456789abcdef"
// Values of decimal digits
RADIX_DECIMAL_VALUES: .word $2710, $3e8, $64, $a
// [0..65536] 16-bit
points: .byte 0, 0, 0, 0
buffer: .byte 0, 0, 0, 0
// for unexpanded. 37888-4096 color for expanded
ducknumber: .byte $44, $55, $43, $4b, $3a
// DUCK:
chrono: .byte $54, $4d, $3a, $39
// TM:9
duck_udg: .byte $e, $1b, $3f, $1f, $f, 7, $f, $1f, 0, 0, 0, 0, 0, $c0, $70, $bc, $1f, $1d, $1e, $f, 3, 1, 1, 3, $ce, $1e, $7c, $f8, $e0, $40, $40, $e0, 0, 0, 0, 0, 0, 0, 0, 0
// POKE CODES = 0,1,2,3,4; CHROUT CODES = 64, 65, 66, 67, 68 (with previous reverse_off "chrout(146)")
intro: .text @"\n\n\nDIFFICULTY\n----------\n\n\n"
.byte 0
levels: .text @"1.EASIEST\n\n3.EASY\n\n5.MEDIUM\n\n7.HARD\n\n9.EXPERT\n\n\n\n\n"
.byte 0
foot: .text @"PRESS: 1,3,5,7 or 9\n\n"
.byte 0
game_over: .text @"\n\n\n\nGAME OVER"
.byte 0
play_again: .text @"\n\n\nPlay Again (Y/N)?"
.byte 0
your_score: .text @"\n\n\nYour Score: "
.byte 0
high_score: .text @"\n\nHi-Score: "
.byte 0