mirror of
https://gitlab.com/camelot/kickc.git
synced 2024-11-16 21:07:56 +00:00
239 lines
7.9 KiB
INI
239 lines
7.9 KiB
INI
|
|
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] call conio_c64_init
|
|
to:__start::@1
|
|
__start::@1: scope:[__start] from __start::__init1
|
|
[6] phi()
|
|
[7] call main
|
|
to:__start::@return
|
|
__start::@return: scope:[__start] from __start::@1
|
|
[8] return
|
|
to:@return
|
|
|
|
void conio_c64_init()
|
|
conio_c64_init: scope:[conio_c64_init] from __start::__init1
|
|
[9] conio_c64_init::line#0 = *conio_c64_init::BASIC_CURSOR_LINE
|
|
[10] 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
|
|
[11] phi()
|
|
to:conio_c64_init::@1
|
|
conio_c64_init::@1: scope:[conio_c64_init] from conio_c64_init conio_c64_init::@2
|
|
[12] conio_c64_init::line#2 = phi( conio_c64_init::@2/conio_c64_init::line#0, conio_c64_init/$19-1 )
|
|
[13] gotoxy::y#2 = conio_c64_init::line#2
|
|
[14] call gotoxy
|
|
to:conio_c64_init::@return
|
|
conio_c64_init::@return: scope:[conio_c64_init] from conio_c64_init::@1
|
|
[15] return
|
|
to:@return
|
|
|
|
void main()
|
|
main: scope:[main] from __start::@1
|
|
[16] phi()
|
|
[17] call clrscr
|
|
to:main::@1
|
|
main::@1: scope:[main] from main
|
|
[18] phi()
|
|
[19] call cputs
|
|
to:main::@2
|
|
main::@2: scope:[main] from main::@1
|
|
[20] phi()
|
|
[21] call cputs
|
|
to:main::@return
|
|
main::@return: scope:[main] from main::@2
|
|
[22] return
|
|
to:@return
|
|
|
|
void gotoxy(byte gotoxy::x , byte gotoxy::y)
|
|
gotoxy: scope:[gotoxy] from conio_c64_init::@1
|
|
[23] if(gotoxy::y#2<$19+1) goto gotoxy::@3
|
|
to:gotoxy::@1
|
|
gotoxy::@3: scope:[gotoxy] from gotoxy
|
|
[24] phi()
|
|
to:gotoxy::@1
|
|
gotoxy::@1: scope:[gotoxy] from gotoxy gotoxy::@3
|
|
[25] gotoxy::y#4 = phi( gotoxy::@3/gotoxy::y#2, gotoxy/0 )
|
|
to:gotoxy::@2
|
|
gotoxy::@2: scope:[gotoxy] from gotoxy::@1
|
|
[26] conio_cursor_x = gotoxy::x#2
|
|
[27] conio_cursor_y = gotoxy::y#4
|
|
[28] gotoxy::$7 = (word)gotoxy::y#4
|
|
[29] gotoxy::$8 = gotoxy::$7 << 2
|
|
[30] gotoxy::$9 = gotoxy::$8 + gotoxy::$7
|
|
[31] gotoxy::line_offset#0 = gotoxy::$9 << 3
|
|
[32] gotoxy::$5 = DEFAULT_SCREEN + gotoxy::line_offset#0
|
|
[33] conio_line_text = gotoxy::$5
|
|
[34] gotoxy::$6 = COLORRAM + gotoxy::line_offset#0
|
|
[35] conio_line_color = gotoxy::$6
|
|
to:gotoxy::@return
|
|
gotoxy::@return: scope:[gotoxy] from gotoxy::@2
|
|
[36] return
|
|
to:@return
|
|
|
|
void clrscr()
|
|
clrscr: scope:[clrscr] from main
|
|
[37] phi()
|
|
to:clrscr::@1
|
|
clrscr::@1: scope:[clrscr] from clrscr clrscr::@5
|
|
[38] clrscr::line_cols#5 = phi( clrscr/COLORRAM, clrscr::@5/clrscr::line_cols#1 )
|
|
[38] clrscr::line_text#5 = phi( clrscr/DEFAULT_SCREEN, clrscr::@5/clrscr::line_text#1 )
|
|
[38] clrscr::l#2 = phi( clrscr/0, clrscr::@5/clrscr::l#1 )
|
|
[39] if(clrscr::l#2<$19) goto clrscr::@3
|
|
to:clrscr::@2
|
|
clrscr::@2: scope:[clrscr] from clrscr::@1
|
|
[40] conio_cursor_x = 0
|
|
[41] conio_cursor_y = 0
|
|
[42] conio_line_text = DEFAULT_SCREEN
|
|
[43] conio_line_color = COLORRAM
|
|
to:clrscr::@return
|
|
clrscr::@return: scope:[clrscr] from clrscr::@2
|
|
[44] return
|
|
to:@return
|
|
clrscr::@3: scope:[clrscr] from clrscr::@1 clrscr::@4
|
|
[45] clrscr::c#2 = phi( clrscr::@1/0, clrscr::@4/clrscr::c#1 )
|
|
[46] if(clrscr::c#2<$28) goto clrscr::@4
|
|
to:clrscr::@5
|
|
clrscr::@5: scope:[clrscr] from clrscr::@3
|
|
[47] clrscr::line_text#1 = clrscr::line_text#5 + $28
|
|
[48] clrscr::line_cols#1 = clrscr::line_cols#5 + $28
|
|
[49] clrscr::l#1 = ++ clrscr::l#2
|
|
to:clrscr::@1
|
|
clrscr::@4: scope:[clrscr] from clrscr::@3
|
|
[50] clrscr::line_text#5[clrscr::c#2] = ' '
|
|
[51] clrscr::line_cols#5[clrscr::c#2] = LIGHT_BLUE
|
|
[52] clrscr::c#1 = ++ clrscr::c#2
|
|
to:clrscr::@3
|
|
|
|
void cputs(to_nomodify byte* cputs::s)
|
|
cputs: scope:[cputs] from main::@1 main::@2
|
|
[53] cputs::s#4 = phi( main::@1/main::s, main::@2/main::s1 )
|
|
to:cputs::@1
|
|
cputs::@1: scope:[cputs] from cputs cputs::@2
|
|
[54] cputs::s#3 = phi( cputs/cputs::s#4, cputs::@2/cputs::s#0 )
|
|
[55] cputs::c#1 = *cputs::s#3
|
|
[56] cputs::s#0 = ++ cputs::s#3
|
|
[57] if(0!=cputs::c#1) goto cputs::@2
|
|
to:cputs::@return
|
|
cputs::@return: scope:[cputs] from cputs::@1
|
|
[58] return
|
|
to:@return
|
|
cputs::@2: scope:[cputs] from cputs::@1
|
|
[59] cputc::c#0 = cputs::c#1
|
|
[60] call cputc
|
|
to:cputs::@1
|
|
|
|
void cputc(byte cputc::c)
|
|
cputc: scope:[cputc] from cputs::@2
|
|
[61] if(cputc::c#0=='
|
|
') goto cputc::@1
|
|
to:cputc::@2
|
|
cputc::@2: scope:[cputc] from cputc
|
|
[62] conio_line_text[conio_cursor_x] = cputc::c#0
|
|
[63] conio_line_color[conio_cursor_x] = LIGHT_BLUE
|
|
[64] conio_cursor_x = ++ conio_cursor_x
|
|
[65] if(conio_cursor_x!=$28) goto cputc::@return
|
|
to:cputc::@3
|
|
cputc::@3: scope:[cputc] from cputc::@2
|
|
[66] phi()
|
|
[67] call cputln
|
|
to:cputc::@return
|
|
cputc::@return: scope:[cputc] from cputc::@1 cputc::@2 cputc::@3
|
|
[68] return
|
|
to:@return
|
|
cputc::@1: scope:[cputc] from cputc
|
|
[69] phi()
|
|
[70] call cputln
|
|
to:cputc::@return
|
|
|
|
void cputln()
|
|
cputln: scope:[cputln] from cputc::@1 cputc::@3
|
|
[71] conio_line_text = conio_line_text + $28
|
|
[72] conio_line_color = conio_line_color + $28
|
|
[73] conio_cursor_x = 0
|
|
[74] conio_cursor_y = ++ conio_cursor_y
|
|
[75] call cscroll
|
|
to:cputln::@return
|
|
cputln::@return: scope:[cputln] from cputln
|
|
[76] return
|
|
to:@return
|
|
|
|
void cscroll()
|
|
cscroll: scope:[cscroll] from cputln
|
|
[77] if(conio_cursor_y!=$19) goto cscroll::@return
|
|
to:cscroll::@1
|
|
cscroll::@1: scope:[cscroll] from cscroll
|
|
[78] phi()
|
|
[79] call memcpy
|
|
to:cscroll::@2
|
|
cscroll::@2: scope:[cscroll] from cscroll::@1
|
|
[80] phi()
|
|
[81] call memcpy
|
|
to:cscroll::@3
|
|
cscroll::@3: scope:[cscroll] from cscroll::@2
|
|
[82] phi()
|
|
[83] call memset
|
|
to:cscroll::@4
|
|
cscroll::@4: scope:[cscroll] from cscroll::@3
|
|
[84] phi()
|
|
[85] call memset
|
|
to:cscroll::@5
|
|
cscroll::@5: scope:[cscroll] from cscroll::@4
|
|
[86] conio_line_text = conio_line_text - $28
|
|
[87] conio_line_color = conio_line_color - $28
|
|
[88] conio_cursor_y = -- conio_cursor_y
|
|
to:cscroll::@return
|
|
cscroll::@return: scope:[cscroll] from cscroll cscroll::@5
|
|
[89] return
|
|
to:@return
|
|
|
|
void* memcpy(void* memcpy::destination , void* memcpy::source , word memcpy::num)
|
|
memcpy: scope:[memcpy] from cscroll::@1 cscroll::@2
|
|
[90] memcpy::destination#2 = phi( cscroll::@1/(void*)DEFAULT_SCREEN, cscroll::@2/(void*)COLORRAM )
|
|
[90] memcpy::source#2 = phi( cscroll::@1/(void*)DEFAULT_SCREEN+$28, cscroll::@2/(void*)COLORRAM+$28 )
|
|
[91] memcpy::src_end#0 = (byte*)memcpy::source#2 + (word)$19*$28-$28
|
|
[92] memcpy::src#4 = (byte*)memcpy::source#2
|
|
[93] memcpy::dst#4 = (byte*)memcpy::destination#2
|
|
to:memcpy::@1
|
|
memcpy::@1: scope:[memcpy] from memcpy memcpy::@2
|
|
[94] memcpy::dst#2 = phi( memcpy/memcpy::dst#4, memcpy::@2/memcpy::dst#1 )
|
|
[94] memcpy::src#2 = phi( memcpy/memcpy::src#4, memcpy::@2/memcpy::src#1 )
|
|
[95] if(memcpy::src#2!=memcpy::src_end#0) goto memcpy::@2
|
|
to:memcpy::@return
|
|
memcpy::@return: scope:[memcpy] from memcpy::@1
|
|
[96] return
|
|
to:@return
|
|
memcpy::@2: scope:[memcpy] from memcpy::@1
|
|
[97] *memcpy::dst#2 = *memcpy::src#2
|
|
[98] memcpy::dst#1 = ++ memcpy::dst#2
|
|
[99] memcpy::src#1 = ++ memcpy::src#2
|
|
to:memcpy::@1
|
|
|
|
void* memset(void* memset::str , byte memset::c , word memset::num)
|
|
memset: scope:[memset] from cscroll::@3 cscroll::@4
|
|
[100] memset::c#4 = phi( cscroll::@3/' ', cscroll::@4/LIGHT_BLUE )
|
|
[100] memset::str#3 = phi( cscroll::@3/(void*)DEFAULT_SCREEN+(word)$19*$28-$28, cscroll::@4/(void*)COLORRAM+(word)$19*$28-$28 )
|
|
to:memset::@1
|
|
memset::@1: scope:[memset] from memset
|
|
[101] memset::end#0 = (byte*)memset::str#3 + $28
|
|
[102] memset::dst#4 = (byte*)memset::str#3
|
|
to:memset::@2
|
|
memset::@2: scope:[memset] from memset::@1 memset::@3
|
|
[103] memset::dst#2 = phi( memset::@1/memset::dst#4, memset::@3/memset::dst#1 )
|
|
[104] if(memset::dst#2!=memset::end#0) goto memset::@3
|
|
to:memset::@return
|
|
memset::@return: scope:[memset] from memset::@2
|
|
[105] return
|
|
to:@return
|
|
memset::@3: scope:[memset] from memset::@2
|
|
[106] *memset::dst#2 = memset::c#4
|
|
[107] memset::dst#1 = ++ memset::dst#2
|
|
to:memset::@2
|