__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 OFFSET_STRUCT_PRINTF_BUFFER_NUMBER_DIGITS = 1
__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 }
__constant unsigned long RADIX_DECIMAL_VALUES_LONG[] = { $3b9aca00, $5f5e100, $989680, $f4240, $186a0, $2710, $3e8, $64, $a }
__constant char SIZEOF_STRUCT_PRINTF_BUFFER_NUMBER = $c
__constant unsigned int STACK_BASE = $103
__constant const char WHITE = 1
void __start()
unsigned int _rand()
unsigned int _rand::$0 // zp[2]:37 2002.0
unsigned int _rand::$1 // zp[2]:41 2002.0
unsigned int _rand::$2 // zp[2]:39 2002.0
unsigned int _rand::return
unsigned int _rand::return#0 // return zp[2]:29 22.0
unsigned int _rand::return#1 // return_1 zp[2]:8 202.0
unsigned int _rand::return#2 // return_1 zp[2]:8 278.25
unsigned int _rand_state
unsigned int _rand_state#13 // _rand_state zp[2]:10 1051.5
unsigned int _rand_state#14 // _rand_state zp[2]:10 77.88888888888889
unsigned int _rand_state#3 // _rand_state zp[2]:10 1501.5
unsigned int _rand_state#4 // _rand_state zp[2]:10 1501.5
void clrscr()
char clrscr::c
char clrscr::c#1 // reg byte y 20002.0
char clrscr::c#2 // reg byte y 12501.25
char clrscr::l
char clrscr::l#1 // reg byte x 2002.0
char clrscr::l#2 // reg byte x 333.6666666666667
char *clrscr::line_cols
char *clrscr::line_cols#1 // line_cols zp[2]:41 1001.0
char *clrscr::line_cols#5 // line_cols zp[2]:41 1500.375
char *clrscr::line_text
char *clrscr::line_text#1 // line_text zp[2]:39 667.3333333333334
char *clrscr::line_text#5 // line_text zp[2]:39 1714.7142857142858
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 // reg byte a 11.0
char conio_c64_init::line#2 // reg byte a 22.0
__loadstore char conio_cursor_x // zp[1]:22 224.99999999999997
__loadstore char conio_cursor_y // zp[1]:23 62.130434782608695
__loadstore char *conio_line_color // zp[2]:26 60.45454545454546
__loadstore char *conio_line_text // zp[2]:24 63.333333333333336
__loadstore char conio_textcolor // zp[1]:28 300.2058823529412
__stackcall void cputc(char c)
__constant char cputc::OFFSET_STACK_C = 0
char cputc::c
char cputc::c#0 // reg byte a 3.0
void cputln()
void cscroll()
void gotoxy(char x , char y)
char *gotoxy::$5 // zp[2]:35 2002.0
char *gotoxy::$6 // zp[2]:31 2002.0
unsigned int gotoxy::$7 // zp[2]:31 1501.5
unsigned int gotoxy::$8 // zp[2]:33 2002.0
unsigned int gotoxy::$9 // zp[2]:31 2002.0
unsigned int gotoxy::line_offset
unsigned int gotoxy::line_offset#0 // line_offset zp[2]:31 1001.0
char gotoxy::x
char gotoxy::x#3 // reg byte x 101.0
char gotoxy::x#5 // reg byte x 350.5
char gotoxy::x#6 // reg byte x 2002.0
char gotoxy::y
char gotoxy::y#2 // reg byte a 22.0
char gotoxy::y#3 // reg byte a 202.0
char gotoxy::y#5 // reg byte a 704.6666666666667
char gotoxy::y#6 // reg byte a 333.6666666666667
void main()
char main::$17 // reg byte a 202.0
unsigned long main::cnt
unsigned long main::cnt#1 // cnt zp[4]:2 9.681818181818182
unsigned long main::cnt#2 // cnt zp[4]:2 202.0
char main::col
char main::col#1 // col zp[1]:6 101.0
char main::col#3 // col zp[1]:6 45.90909090909091
char main::col#7 // col zp[1]:6 80.8
unsigned int main::first
unsigned int main::first#0 // first zp[2]:29 5.590909090909091
unsigned int main::rnd
unsigned int main::rnd#1 // rnd zp[2]:8 151.5
unsigned int main::rnd#2 // rnd zp[2]:8 30.42857142857143
unsigned int main::rnd#5 // rnd zp[2]:8 22.0
char main::row
char main::row#1 // row zp[1]:7 151.5
char main::row#3 // row zp[1]:7 44.888888888888886
char main::row#7 // row zp[1]:7 60.599999999999994
__constant char main::s[$1d] = "generating unique randoms..."
__constant char main::s1[7] = "found "
void * memcpy(void *destination , void *source , unsigned int num)
void *memcpy::destination
void *memcpy::destination#2 // destination zp[2]:49
char *memcpy::dst
char *memcpy::dst#1 // dst zp[2]:49 10001.0
char *memcpy::dst#2 // dst zp[2]:49 10334.666666666666
char *memcpy::dst#4 // dst zp[2]:49 2002.0
unsigned int memcpy::num
void *memcpy::return
void *memcpy::source
void *memcpy::source#2 // source zp[2]:17
char *memcpy::src
char *memcpy::src#1 // src zp[2]:17 20002.0
char *memcpy::src#2 // src zp[2]:17 10251.25
char *memcpy::src#4 // src zp[2]:17 1001.0
char *memcpy::src_end
char *memcpy::src_end#0 // src_end zp[2]:47 1375.25
void * memset(void *str , char c , unsigned int num)
char memset::c
char memset::c#1 // reg byte x 202.0
char memset::c#4 // reg byte x 1443.142857142857
char *memset::dst
char *memset::dst#1 // dst zp[2]:17 20002.0
char *memset::dst#2 // dst zp[2]:17 13668.333333333332
char *memset::dst#4 // dst zp[2]:17 2002.0
char *memset::end
char *memset::end#0 // end zp[2]:49 1833.6666666666665
unsigned int memset::num
void *memset::return
void *memset::str
void *memset::str#3 // str zp[2]:17
__loadstore struct printf_buffer_number printf_buffer = {} // mem[12]
void printf_number_buffer(void (*putc)(char) , char buffer_sign , char *buffer_digits , char format_min_length , char format_justify_left , char format_sign_always , char format_zero_padding , char format_upper_case , char format_radix)
unsigned int printf_number_buffer::$19 // zp[2]:37 10001.0
struct printf_buffer_number printf_number_buffer::buffer
char *printf_number_buffer::buffer_digits
char printf_number_buffer::buffer_sign
char printf_number_buffer::buffer_sign#0 // buffer_sign zp[1]:13 202.0
char printf_number_buffer::buffer_sign#1 // buffer_sign zp[1]:13 2002.0
char printf_number_buffer::buffer_sign#10 // buffer_sign zp[1]:13 1481.1904761904761
struct printf_format_number printf_number_buffer::format
char printf_number_buffer::format_justify_left
char printf_number_buffer::format_justify_left#10 // format_justify_left zp[1]:12 606.1212121212121
char printf_number_buffer::format_min_length
char printf_number_buffer::format_min_length#2 // reg byte x 1000.1
char printf_number_buffer::format_radix
char printf_number_buffer::format_sign_always
char printf_number_buffer::format_upper_case
char printf_number_buffer::format_upper_case#10 // format_upper_case zp[1]:14 357.17857142857144
char printf_number_buffer::format_zero_padding
char printf_number_buffer::format_zero_padding#10 // format_zero_padding zp[1]:16 882.4411764705882
signed char printf_number_buffer::len
signed char printf_number_buffer::len#0 // reg byte y 15001.5
signed char printf_number_buffer::len#1 // reg byte y 20002.0
signed char printf_number_buffer::len#2 // reg byte y 30003.0
signed char printf_number_buffer::padding
signed char printf_number_buffer::padding#1 // padding zp[1]:15 10001.0
signed char printf_number_buffer::padding#10 // padding zp[1]:15 1666.8333333333333
void (*printf_number_buffer::putc)(char)
void (*printf_number_buffer::putc#10)(char) // putc zp[2]:39 1111.2222222222222
void printf_padding(void (*putc)(char) , char pad , char length)
char printf_padding::i
char printf_padding::i#1 // i zp[1]:21 2.0000002E7
char printf_padding::i#2 // i zp[1]:21 1.0000001E7
char printf_padding::length
char printf_padding::length#0 // length zp[1]:19 20002.0
char printf_padding::length#1 // length zp[1]:19 20002.0
char printf_padding::length#2 // length zp[1]:19 20002.0
char printf_padding::length#4 // length zp[1]:19 2006000.8
char printf_padding::pad
char printf_padding::pad#5 // pad zp[1]:20 1666666.8333333333
void (*printf_padding::putc)(char)
void (*printf_padding::putc#0)(char) // putc zp[2]:39 10001.0
void (*printf_padding::putc#1)(char) // putc zp[2]:39 10001.0
void (*printf_padding::putc#2)(char) // putc zp[2]:39 10001.0
void (*printf_padding::putc#5)(char) // putc zp[2]:39 300030.0
void printf_str(void (*putc)(char) , const char *s)
char printf_str::c
char printf_str::c#1 // reg byte a 1.0000001E7
void (*printf_str::putc)(char)
void (*printf_str::putc#0)(char) // putc zp[2]:39 20002.0
void (*printf_str::putc#5)(char) // putc zp[2]:39 100010.0
const char *printf_str::s
const char *printf_str::s#0 // s zp[2]:41 1.0000001E7
const char *printf_str::s#4 // s zp[2]:41 1.5050002E7
const char *printf_str::s#5 // s zp[2]:41 100001.0
void printf_uint(void (*putc)(char) , unsigned int uvalue , char format_min_length , char format_justify_left , char format_sign_always , char format_zero_padding , char format_upper_case , char format_radix)
struct printf_format_number printf_uint::format
char printf_uint::format_justify_left
__constant char printf_uint::format_justify_left#0 = 0 // format_justify_left
char printf_uint::format_min_length
__constant char printf_uint::format_min_length#0 = 5 // format_min_length
char printf_uint::format_radix
char printf_uint::format_sign_always
char printf_uint::format_upper_case
__constant char printf_uint::format_upper_case#0 = 0 // format_upper_case
char printf_uint::format_zero_padding
__constant char printf_uint::format_zero_padding#0 = 0 // format_zero_padding
void (*printf_uint::putc)(char)
__constant void (*printf_uint::putc#0)(char) = &cputc // putc
unsigned int printf_uint::uvalue
unsigned int printf_uint::uvalue#0 // uvalue zp[2]:8 367.33333333333337
void printf_ulong(void (*putc)(char) , unsigned long uvalue , char format_min_length , char format_justify_left , char format_sign_always , char format_zero_padding , char format_upper_case , char format_radix)
struct printf_format_number printf_ulong::format
char printf_ulong::format_justify_left
__constant char printf_ulong::format_justify_left#0 = 0 // format_justify_left
char printf_ulong::format_min_length
__constant char printf_ulong::format_min_length#0 = 0 // format_min_length
char printf_ulong::format_radix
char printf_ulong::format_sign_always
char printf_ulong::format_upper_case
__constant char printf_ulong::format_upper_case#0 = 0 // format_upper_case
char printf_ulong::format_zero_padding
__constant char printf_ulong::format_zero_padding#0 = 0 // format_zero_padding
void (*printf_ulong::putc)(char)
__constant void (*printf_ulong::putc#0)(char) = &cputc // putc
unsigned long printf_ulong::uvalue
unsigned long printf_ulong::uvalue#0 // uvalue zp[4]:2 37.33333333333333
unsigned int strlen(char *str)
unsigned int strlen::len
unsigned int strlen::len#1 // len zp[2]:37 1.0000001E7
unsigned int strlen::len#2 // len zp[2]:37 5002500.75
unsigned int strlen::return
unsigned int strlen::return#2 // return zp[2]:37 20002.0
char *strlen::str
char *strlen::str#0 // str zp[2]:41 2.0000002E7
char *strlen::str#2 // str zp[2]:41 1.0000001E7
char * strupr(char *str)
char strupr::$0 // reg byte a 2.0000002E7
char *strupr::return
char *strupr::src
char *strupr::src#1 // src zp[2]:41 2.0000002E7
char *strupr::src#2 // src zp[2]:41 7142857.857142856
char *strupr::str
__constant char *strupr::str#0 = (char *)&printf_buffer+OFFSET_STRUCT_PRINTF_BUFFER_NUMBER_DIGITS // str
char textcolor(char color)
char textcolor::color
char textcolor::color#2 // reg byte a 101.0
char textcolor::old
char textcolor::return
char toupper(char ch)
char toupper::ch
char toupper::ch#0 // reg byte a 1.70000002E8
char toupper::return
char toupper::return#0 // reg byte a 2.00000002E8
char toupper::return#2 // reg byte a 1.0333333466666667E8
char toupper::return#3 // reg byte a 2.0000002E7
void ultoa(unsigned long value , char *buffer , char radix)
char ultoa::$10 // reg byte a 20002.0
char ultoa::$11 // reg byte a 2002.0
char *ultoa::buffer
char *ultoa::buffer#11 // buffer zp[2]:39 3000.4285714285716
char *ultoa::buffer#14 // buffer zp[2]:39 15001.5
char *ultoa::buffer#3 // buffer zp[2]:39 2002.0
char *ultoa::buffer#4 // buffer zp[2]:39 20002.0
char ultoa::digit
char ultoa::digit#1 // digit zp[1]:16 20002.0
char ultoa::digit#2 // digit zp[1]:16 2857.4285714285716
unsigned long ultoa::digit_value
unsigned long ultoa::digit_value#0 // digit_value zp[4]:43 6000.6
unsigned long *ultoa::digit_values
char ultoa::max_digits
__constant char ultoa::max_digits#1 = $a // max_digits
char ultoa::radix
char ultoa::started
char ultoa::started#2 // reg byte x 5000.5
char ultoa::started#4 // reg byte x 10001.0
unsigned long ultoa::value
unsigned long ultoa::value#0 // value zp[4]:2 10001.0
unsigned long ultoa::value#1 // value zp[4]:2 551.0
unsigned long ultoa::value#2 // value zp[4]:2 5857.857142857143
unsigned long ultoa::value#6 // value zp[4]:2 15001.5
unsigned long ultoa_append(char *buffer , unsigned long value , unsigned long sub)
char *ultoa_append::buffer
char *ultoa_append::buffer#0 // buffer zp[2]:39 13750.25
char ultoa_append::digit
char ultoa_append::digit#1 // reg byte x 1.0000001E7
char ultoa_append::digit#2 // reg byte x 1.00500015E7
unsigned long ultoa_append::return
unsigned long ultoa_append::return#0 // return zp[4]:2 20002.0
unsigned long ultoa_append::sub
unsigned long ultoa_append::sub#0 // sub zp[4]:43 3335000.5
unsigned long ultoa_append::value
unsigned long ultoa_append::value#0 // value zp[4]:2 36667.33333333333
unsigned long ultoa_append::value#1 // value zp[4]:2 2.0000002E7
unsigned long ultoa_append::value#2 // value zp[4]:2 5018334.166666666
void utoa(unsigned int value , char *buffer , char radix)
char utoa::$10 // reg byte a 2000002.0
char utoa::$11 // reg byte x 20002.0
char *utoa::buffer
char *utoa::buffer#11 // buffer zp[2]:39 287143.2857142857
char *utoa::buffer#14 // buffer zp[2]:39 1500001.5
char *utoa::buffer#3 // buffer zp[2]:39 20002.0
char *utoa::buffer#4 // buffer zp[2]:39 2000002.0
char utoa::digit
char utoa::digit#1 // digit zp[1]:12 2000002.0
char utoa::digit#2 // digit zp[1]:12 285714.5714285714
unsigned int utoa::digit_value
unsigned int utoa::digit_value#0 // digit_value zp[2]:41 600000.6000000001
unsigned int *utoa::digit_values
char utoa::max_digits
__constant char utoa::max_digits#1 = 5 // max_digits
char utoa::radix
char utoa::started
char utoa::started#2 // reg byte x 500000.5
char utoa::started#4 // reg byte x 1000001.0
unsigned int utoa::value
unsigned int utoa::value#0 // value zp[2]:8 1000001.0
unsigned int utoa::value#1 // value zp[2]:8 5501.0
unsigned int utoa::value#2 // value zp[2]:8 572857.857142857
unsigned int utoa::value#6 // value zp[2]:8 1500001.5
unsigned int utoa_append(char *buffer , unsigned int value , unsigned int sub)
char *utoa_append::buffer
char *utoa_append::buffer#0 // buffer zp[2]:39 1375000.25
char utoa_append::digit
char utoa_append::digit#1 // reg byte x 1.0000000001E10
char utoa_append::digit#2 // reg byte x 1.00050000015E10
unsigned int utoa_append::return
unsigned int utoa_append::return#0 // return zp[2]:8 2000002.0
unsigned int utoa_append::sub
unsigned int utoa_append::sub#0 // sub zp[2]:41 3.3335000005E9
unsigned int utoa_append::value
unsigned int utoa_append::value#0 // value zp[2]:8 3666667.333333333
unsigned int utoa_append::value#1 // value zp[2]:8 2.0000000002E10
unsigned int utoa_append::value#2 // value zp[2]:8 5.001833334166666E9

reg byte a [ conio_c64_init::line#2 conio_c64_init::line#0 ]
zp[4]:2 [ main::cnt#2 main::cnt#1 printf_ulong::uvalue#0 ultoa::value#2 ultoa::value#6 ultoa::value#1 ultoa::value#0 ultoa_append::value#2 ultoa_append::value#0 ultoa_append::value#1 ultoa_append::return#0 ]
zp[1]:6 [ main::col#3 main::col#7 main::col#1 ]
zp[1]:7 [ main::row#3 main::row#7 main::row#1 ]
zp[2]:8 [ main::rnd#2 main::rnd#5 main::rnd#1 printf_uint::uvalue#0 _rand::return#1 utoa::value#2 utoa::value#6 utoa::value#1 utoa::value#0 utoa_append::value#2 utoa_append::value#0 utoa_append::value#1 utoa_append::return#0 _rand::return#2 ]
reg byte a [ gotoxy::y#6 gotoxy::y#5 gotoxy::y#2 gotoxy::y#3 ]
reg byte x [ gotoxy::x#6 gotoxy::x#5 gotoxy::x#3 ]
reg byte x [ clrscr::l#2 clrscr::l#1 ]
reg byte y [ clrscr::c#2 clrscr::c#1 ]
reg byte a [ textcolor::color#2 ]
zp[2]:10 [ _rand_state#13 _rand_state#14 _rand_state#3 _rand_state#4 ]
reg byte x [ utoa::started#2 utoa::started#4 ]
reg byte x [ printf_number_buffer::format_min_length#2 ]
zp[1]:12 [ printf_number_buffer::format_justify_left#10 utoa::digit#2 utoa::digit#1 ]
zp[1]:13 [ printf_number_buffer::buffer_sign#10 printf_number_buffer::buffer_sign#1 printf_number_buffer::buffer_sign#0 ]
zp[1]:14 [ printf_number_buffer::format_upper_case#10 ]
reg byte y [ printf_number_buffer::len#2 printf_number_buffer::len#0 printf_number_buffer::len#1 ]
zp[1]:15 [ printf_number_buffer::padding#10 printf_number_buffer::padding#1 ]
zp[1]:16 [ ultoa::digit#2 ultoa::digit#1 printf_number_buffer::format_zero_padding#10 ]
reg byte x [ ultoa::started#2 ultoa::started#4 ]
zp[2]:17 [ memset::str#3 memset::dst#2 memset::dst#4 memset::dst#1 memcpy::source#2 memcpy::src#2 memcpy::src#4 memcpy::src#1 ]
reg byte x [ memset::c#4 memset::c#1 ]
reg byte x [ utoa_append::digit#2 utoa_append::digit#1 ]
zp[1]:19 [ printf_padding::length#4 printf_padding::length#1 printf_padding::length#2 printf_padding::length#0 ]
zp[1]:20 [ printf_padding::pad#5 ]
zp[1]:21 [ printf_padding::i#2 printf_padding::i#1 ]
reg byte x [ ultoa_append::digit#2 ultoa_append::digit#1 ]
reg byte a [ toupper::return#2 toupper::return#0 toupper::ch#0 ]
zp[1]:22 [ conio_cursor_x ]
zp[1]:23 [ conio_cursor_y ]
zp[2]:24 [ conio_line_text ]
zp[2]:26 [ conio_line_color ]
zp[1]:28 [ conio_textcolor ]
reg byte a [ cputc::c#0 ]
zp[2]:29 [ _rand::return#0 main::first#0 ]
reg byte a [ main::$17 ]
zp[2]:31 [ gotoxy::$7 gotoxy::$9 gotoxy::line_offset#0 gotoxy::$6 ]
zp[2]:33 [ gotoxy::$8 ]
zp[2]:35 [ gotoxy::$5 ]
reg byte a [ printf_str::c#1 ]
zp[2]:37 [ _rand::$0 strlen::len#2 strlen::len#1 strlen::return#2 printf_number_buffer::$19 ]
zp[2]:39 [ _rand::$2 ultoa::buffer#11 ultoa::buffer#14 ultoa::buffer#4 ultoa::buffer#3 ultoa_append::buffer#0 utoa::buffer#11 utoa::buffer#14 utoa::buffer#4 utoa::buffer#3 utoa_append::buffer#0 printf_str::putc#5 printf_str::putc#0 printf_number_buffer::putc#10 printf_padding::putc#5 printf_padding::putc#1 printf_padding::putc#2 printf_padding::putc#0 clrscr::line_text#5 clrscr::line_text#1 ]
reg byte x [ utoa::$11 ]
reg byte a [ utoa::$10 ]
zp[2]:41 [ utoa::digit_value#0 utoa_append::sub#0 _rand::$1 strupr::src#2 strupr::src#1 strlen::str#2 strlen::str#0 printf_str::s#4 printf_str::s#5 printf_str::s#0 clrscr::line_cols#5 clrscr::line_cols#1 ]
reg byte a [ ultoa::$11 ]
reg byte a [ ultoa::$10 ]
zp[4]:43 [ ultoa::digit_value#0 ultoa_append::sub#0 ]
zp[2]:47 [ memcpy::src_end#0 ]
zp[2]:49 [ memset::end#0 memcpy::destination#2 memcpy::dst#2 memcpy::dst#4 memcpy::dst#1 ]
reg byte a [ toupper::return#3 ]
reg byte a [ strupr::$0 ]
mem[12] [ printf_buffer ]
