mirror of
https://gitlab.com/camelot/kickc.git
synced 2024-09-09 08:54:40 +00:00
652 lines
34 KiB
INI
652 lines
34 KiB
INI
@begin: scope:[] from
|
|
[0] phi()
|
|
to:@1
|
|
@1: scope:[] from @begin
|
|
[1] (byte) conio_cursor_x ← (byte) 0
|
|
[2] (byte) conio_cursor_y ← (byte) 0
|
|
[3] (byte*) conio_cursor_text ← (const nomodify byte*) CONIO_SCREEN_TEXT
|
|
[4] (byte*) conio_cursor_color ← (const nomodify byte*) CONIO_SCREEN_COLORS
|
|
[5] (byte) conio_textcolor ← (const nomodify byte) CONIO_TEXTCOLOR_DEFAULT
|
|
to:@2
|
|
@2: scope:[] from @1
|
|
[6] phi()
|
|
[7] call main
|
|
to:@end
|
|
@end: scope:[] from @2
|
|
[8] phi()
|
|
|
|
(void()) main()
|
|
main: scope:[main] from @2
|
|
[9] phi()
|
|
[10] call clrscr
|
|
to:main::@6
|
|
main::@6: scope:[main] from main
|
|
[11] phi()
|
|
[12] call textcolor
|
|
to:main::@7
|
|
main::@7: scope:[main] from main::@6
|
|
[13] phi()
|
|
[14] call cputs
|
|
to:main::@8
|
|
main::@8: scope:[main] from main::@7
|
|
[15] phi()
|
|
[16] call _rand
|
|
[17] (word) _rand::return#0 ← (word) _rand::return#2
|
|
to:main::@9
|
|
main::@9: scope:[main] from main::@8
|
|
[18] (word) main::first#0 ← (word) _rand::return#0
|
|
[19] call textcolor
|
|
to:main::@10
|
|
main::@10: scope:[main] from main::@9
|
|
[20] (word) main::rnd#5 ← (word) main::first#0
|
|
to:main::@1
|
|
main::@1: scope:[main] from main::@10 main::@11
|
|
[21] (word) main::rnd#2 ← phi( main::@10/(word) main::rnd#5 main::@11/(word) main::rnd#1 )
|
|
[21] (byte) main::row#3 ← phi( main::@10/(byte) 1 main::@11/(byte) main::row#7 )
|
|
[21] (byte) main::col#3 ← phi( main::@10/(byte) 3 main::@11/(byte) main::col#7 )
|
|
[21] (dword) main::cnt#2 ← phi( main::@10/(dword) 0 main::@11/(dword) main::cnt#1 )
|
|
[22] (dword) main::cnt#1 ← ++ (dword) main::cnt#2
|
|
[23] (byte~) main::$17 ← (byte)(dword) main::cnt#1
|
|
[24] if((byte~) main::$17!=(byte) 0) goto main::@2
|
|
to:main::@3
|
|
main::@3: scope:[main] from main::@1
|
|
[25] (byte) gotoxy::x#2 ← (byte) main::col#3
|
|
[26] (byte) gotoxy::y#2 ← (byte) main::row#3
|
|
[27] call gotoxy
|
|
to:main::@12
|
|
main::@12: scope:[main] from main::@3
|
|
[28] (word) printf_uint::uvalue#0 ← (word) main::rnd#2
|
|
[29] call printf_uint
|
|
to:main::@13
|
|
main::@13: scope:[main] from main::@12
|
|
[30] (byte) main::row#1 ← ++ (byte) main::row#3
|
|
[31] if((byte) main::row#1!=(byte) $19) goto main::@2
|
|
to:main::@4
|
|
main::@4: scope:[main] from main::@13
|
|
[32] (byte) main::col#1 ← (byte) main::col#3 + (byte) 6
|
|
[33] if((byte) main::col#1<(byte)(number) $28-(number) 5+(byte) 1) goto main::@16
|
|
to:main::@2
|
|
main::@16: scope:[main] from main::@4
|
|
[34] phi()
|
|
to:main::@2
|
|
main::@2: scope:[main] from main::@1 main::@13 main::@16 main::@4
|
|
[35] (byte) main::row#7 ← phi( main::@1/(byte) main::row#3 main::@13/(byte) main::row#1 main::@16/(byte) 1 main::@4/(byte) 1 )
|
|
[35] (byte) main::col#7 ← phi( main::@1/(byte) main::col#3 main::@13/(byte) main::col#3 main::@16/(byte) main::col#1 main::@4/(byte) 3 )
|
|
[36] call _rand
|
|
[37] (word) _rand::return#1 ← (word) _rand::return#2
|
|
to:main::@11
|
|
main::@11: scope:[main] from main::@2
|
|
[38] (word) main::rnd#1 ← (word) _rand::return#1
|
|
[39] if((word) main::rnd#1!=(word) main::first#0) goto main::@1
|
|
to:main::@5
|
|
main::@5: scope:[main] from main::@11
|
|
[40] phi()
|
|
[41] call gotoxy
|
|
to:main::@14
|
|
main::@14: scope:[main] from main::@5
|
|
[42] phi()
|
|
[43] call cputs
|
|
to:main::@15
|
|
main::@15: scope:[main] from main::@14
|
|
[44] (dword) printf_ulong::uvalue#0 ← (dword) main::cnt#1
|
|
[45] call printf_ulong
|
|
to:main::@return
|
|
main::@return: scope:[main] from main::@15
|
|
[46] return
|
|
to:@return
|
|
|
|
(void()) printf_ulong((dword) printf_ulong::uvalue , (byte) printf_ulong::format_min_length , (byte) printf_ulong::format_justify_left , (byte) printf_ulong::format_sign_always , (byte) printf_ulong::format_zero_padding , (byte) printf_ulong::format_upper_case , (byte) printf_ulong::format_radix)
|
|
printf_ulong: scope:[printf_ulong] from main::@15
|
|
[47] phi()
|
|
to:printf_ulong::@1
|
|
printf_ulong::@1: scope:[printf_ulong] from printf_ulong
|
|
[48] *((byte*)&(struct printf_buffer_number) printf_buffer) ← (byte) 0
|
|
[49] (dword) ultoa::value#1 ← (dword) printf_ulong::uvalue#0
|
|
[50] call ultoa
|
|
to:printf_ulong::@2
|
|
printf_ulong::@2: scope:[printf_ulong] from printf_ulong::@1
|
|
[51] (byte) printf_number_buffer::buffer_sign#0 ← *((byte*)&(struct printf_buffer_number) printf_buffer)
|
|
[52] call printf_number_buffer
|
|
to:printf_ulong::@return
|
|
printf_ulong::@return: scope:[printf_ulong] from printf_ulong::@2
|
|
[53] return
|
|
to:@return
|
|
|
|
(void()) printf_number_buffer((byte) printf_number_buffer::buffer_sign , (byte*) printf_number_buffer::buffer_digits , (byte) printf_number_buffer::format_min_length , (byte) printf_number_buffer::format_justify_left , (byte) printf_number_buffer::format_sign_always , (byte) printf_number_buffer::format_zero_padding , (byte) printf_number_buffer::format_upper_case , (byte) printf_number_buffer::format_radix)
|
|
printf_number_buffer: scope:[printf_number_buffer] from printf_uint::@2 printf_ulong::@2
|
|
[54] (byte) printf_number_buffer::format_upper_case#10 ← phi( printf_uint::@2/(const byte) printf_uint::format_upper_case#0 printf_ulong::@2/(const byte) printf_ulong::format_upper_case#0 )
|
|
[54] (byte) printf_number_buffer::buffer_sign#10 ← phi( printf_uint::@2/(byte) printf_number_buffer::buffer_sign#1 printf_ulong::@2/(byte) printf_number_buffer::buffer_sign#0 )
|
|
[54] (byte) printf_number_buffer::format_zero_padding#10 ← phi( printf_uint::@2/(const byte) printf_uint::format_zero_padding#0 printf_ulong::@2/(const byte) printf_ulong::format_zero_padding#0 )
|
|
[54] (byte) printf_number_buffer::format_justify_left#10 ← phi( printf_uint::@2/(const byte) printf_uint::format_justify_left#0 printf_ulong::@2/(const byte) printf_ulong::format_justify_left#0 )
|
|
[54] (byte) printf_number_buffer::format_min_length#2 ← phi( printf_uint::@2/(const byte) printf_uint::format_min_length#0 printf_ulong::@2/(const byte) printf_ulong::format_min_length#0 )
|
|
[55] if((byte) 0==(byte) printf_number_buffer::format_min_length#2) goto printf_number_buffer::@1
|
|
to:printf_number_buffer::@6
|
|
printf_number_buffer::@6: scope:[printf_number_buffer] from printf_number_buffer
|
|
[56] phi()
|
|
[57] call strlen
|
|
[58] (word) strlen::return#2 ← (word) strlen::len#2
|
|
to:printf_number_buffer::@14
|
|
printf_number_buffer::@14: scope:[printf_number_buffer] from printf_number_buffer::@6
|
|
[59] (word~) printf_number_buffer::$19 ← (word) strlen::return#2
|
|
[60] (signed byte) printf_number_buffer::len#0 ← (signed byte)(word~) printf_number_buffer::$19
|
|
[61] if((byte) 0==(byte) printf_number_buffer::buffer_sign#10) goto printf_number_buffer::@13
|
|
to:printf_number_buffer::@7
|
|
printf_number_buffer::@7: scope:[printf_number_buffer] from printf_number_buffer::@14
|
|
[62] (signed byte) printf_number_buffer::len#1 ← ++ (signed byte) printf_number_buffer::len#0
|
|
to:printf_number_buffer::@13
|
|
printf_number_buffer::@13: scope:[printf_number_buffer] from printf_number_buffer::@14 printf_number_buffer::@7
|
|
[63] (signed byte) printf_number_buffer::len#2 ← phi( printf_number_buffer::@14/(signed byte) printf_number_buffer::len#0 printf_number_buffer::@7/(signed byte) printf_number_buffer::len#1 )
|
|
[64] (signed byte) printf_number_buffer::padding#1 ← (signed byte)(byte) printf_number_buffer::format_min_length#2 - (signed byte) printf_number_buffer::len#2
|
|
[65] if((signed byte) printf_number_buffer::padding#1>=(signed byte) 0) goto printf_number_buffer::@21
|
|
to:printf_number_buffer::@1
|
|
printf_number_buffer::@21: scope:[printf_number_buffer] from printf_number_buffer::@13
|
|
[66] phi()
|
|
to:printf_number_buffer::@1
|
|
printf_number_buffer::@1: scope:[printf_number_buffer] from printf_number_buffer printf_number_buffer::@13 printf_number_buffer::@21
|
|
[67] (signed byte) printf_number_buffer::padding#10 ← phi( printf_number_buffer/(signed byte) 0 printf_number_buffer::@21/(signed byte) printf_number_buffer::padding#1 printf_number_buffer::@13/(signed byte) 0 )
|
|
[68] if((byte) 0!=(byte) printf_number_buffer::format_justify_left#10) goto printf_number_buffer::@2
|
|
to:printf_number_buffer::@17
|
|
printf_number_buffer::@17: scope:[printf_number_buffer] from printf_number_buffer::@1
|
|
[69] if((byte) 0!=(byte) printf_number_buffer::format_zero_padding#10) goto printf_number_buffer::@2
|
|
to:printf_number_buffer::@16
|
|
printf_number_buffer::@16: scope:[printf_number_buffer] from printf_number_buffer::@17
|
|
[70] if((signed byte) 0!=(signed byte) printf_number_buffer::padding#10) goto printf_number_buffer::@8
|
|
to:printf_number_buffer::@2
|
|
printf_number_buffer::@8: scope:[printf_number_buffer] from printf_number_buffer::@16
|
|
[71] (byte) printf_padding::length#0 ← (byte)(signed byte) printf_number_buffer::padding#10
|
|
[72] call printf_padding
|
|
to:printf_number_buffer::@2
|
|
printf_number_buffer::@2: scope:[printf_number_buffer] from printf_number_buffer::@1 printf_number_buffer::@16 printf_number_buffer::@17 printf_number_buffer::@8
|
|
[73] if((byte) 0==(byte) printf_number_buffer::buffer_sign#10) goto printf_number_buffer::@3
|
|
to:printf_number_buffer::@9
|
|
printf_number_buffer::@9: scope:[printf_number_buffer] from printf_number_buffer::@2
|
|
[74] (byte) cputc::c#2 ← (byte) printf_number_buffer::buffer_sign#10
|
|
[75] call cputc
|
|
to:printf_number_buffer::@3
|
|
printf_number_buffer::@3: scope:[printf_number_buffer] from printf_number_buffer::@2 printf_number_buffer::@9
|
|
[76] if((byte) 0==(byte) printf_number_buffer::format_zero_padding#10) goto printf_number_buffer::@4
|
|
to:printf_number_buffer::@18
|
|
printf_number_buffer::@18: scope:[printf_number_buffer] from printf_number_buffer::@3
|
|
[77] if((signed byte) 0!=(signed byte) printf_number_buffer::padding#10) goto printf_number_buffer::@10
|
|
to:printf_number_buffer::@4
|
|
printf_number_buffer::@10: scope:[printf_number_buffer] from printf_number_buffer::@18
|
|
[78] (byte) printf_padding::length#1 ← (byte)(signed byte) printf_number_buffer::padding#10
|
|
[79] call printf_padding
|
|
to:printf_number_buffer::@4
|
|
printf_number_buffer::@4: scope:[printf_number_buffer] from printf_number_buffer::@10 printf_number_buffer::@18 printf_number_buffer::@3
|
|
[80] if((byte) 0==(byte) printf_number_buffer::format_upper_case#10) goto printf_number_buffer::@5
|
|
to:printf_number_buffer::@11
|
|
printf_number_buffer::@11: scope:[printf_number_buffer] from printf_number_buffer::@4
|
|
[81] phi()
|
|
[82] call strupr
|
|
to:printf_number_buffer::@5
|
|
printf_number_buffer::@5: scope:[printf_number_buffer] from printf_number_buffer::@11 printf_number_buffer::@4
|
|
[83] phi()
|
|
[84] call cputs
|
|
to:printf_number_buffer::@15
|
|
printf_number_buffer::@15: scope:[printf_number_buffer] from printf_number_buffer::@5
|
|
[85] if((byte) 0==(byte) printf_number_buffer::format_justify_left#10) goto printf_number_buffer::@return
|
|
to:printf_number_buffer::@20
|
|
printf_number_buffer::@20: scope:[printf_number_buffer] from printf_number_buffer::@15
|
|
[86] if((byte) 0!=(byte) printf_number_buffer::format_zero_padding#10) goto printf_number_buffer::@return
|
|
to:printf_number_buffer::@19
|
|
printf_number_buffer::@19: scope:[printf_number_buffer] from printf_number_buffer::@20
|
|
[87] if((signed byte) 0!=(signed byte) printf_number_buffer::padding#10) goto printf_number_buffer::@12
|
|
to:printf_number_buffer::@return
|
|
printf_number_buffer::@12: scope:[printf_number_buffer] from printf_number_buffer::@19
|
|
[88] (byte) printf_padding::length#2 ← (byte)(signed byte) printf_number_buffer::padding#10
|
|
[89] call printf_padding
|
|
to:printf_number_buffer::@return
|
|
printf_number_buffer::@return: scope:[printf_number_buffer] from printf_number_buffer::@12 printf_number_buffer::@15 printf_number_buffer::@19 printf_number_buffer::@20
|
|
[90] return
|
|
to:@return
|
|
|
|
(void()) printf_padding((byte) printf_padding::pad , (byte) printf_padding::length)
|
|
printf_padding: scope:[printf_padding] from printf_number_buffer::@10 printf_number_buffer::@12 printf_number_buffer::@8
|
|
[91] (byte) printf_padding::pad#5 ← phi( printf_number_buffer::@10/(byte) '0' printf_number_buffer::@12/(byte) ' ' printf_number_buffer::@8/(byte) ' ' )
|
|
[91] (byte) printf_padding::length#4 ← phi( printf_number_buffer::@10/(byte) printf_padding::length#1 printf_number_buffer::@12/(byte) printf_padding::length#2 printf_number_buffer::@8/(byte) printf_padding::length#0 )
|
|
to:printf_padding::@1
|
|
printf_padding::@1: scope:[printf_padding] from printf_padding printf_padding::@3
|
|
[92] (byte) printf_padding::i#2 ← phi( printf_padding/(byte) 0 printf_padding::@3/(byte) printf_padding::i#1 )
|
|
[93] if((byte) printf_padding::i#2<(byte) printf_padding::length#4) goto printf_padding::@2
|
|
to:printf_padding::@return
|
|
printf_padding::@return: scope:[printf_padding] from printf_padding::@1
|
|
[94] return
|
|
to:@return
|
|
printf_padding::@2: scope:[printf_padding] from printf_padding::@1
|
|
[95] (byte) cputc::c#1 ← (byte) printf_padding::pad#5
|
|
[96] call cputc
|
|
to:printf_padding::@3
|
|
printf_padding::@3: scope:[printf_padding] from printf_padding::@2
|
|
[97] (byte) printf_padding::i#1 ← ++ (byte) printf_padding::i#2
|
|
to:printf_padding::@1
|
|
|
|
(void()) cputc((byte) cputc::c)
|
|
cputc: scope:[cputc] from cputs::@2 printf_number_buffer::@9 printf_padding::@2
|
|
[98] (byte) cputc::c#3 ← phi( cputs::@2/(byte) cputc::c#0 printf_number_buffer::@9/(byte) cputc::c#2 printf_padding::@2/(byte) cputc::c#1 )
|
|
[99] if((byte) cputc::c#3==(byte) '
|
|
') goto cputc::@1
|
|
to:cputc::@2
|
|
cputc::@2: scope:[cputc] from cputc
|
|
[100] *((byte*) conio_cursor_text) ← (byte) cputc::c#3
|
|
[101] (byte*) conio_cursor_text ← ++ (byte*) conio_cursor_text
|
|
[102] *((byte*) conio_cursor_color) ← (byte) conio_textcolor
|
|
[103] (byte*) conio_cursor_color ← ++ (byte*) conio_cursor_color
|
|
[104] (byte) conio_cursor_x ← ++ (byte) conio_cursor_x
|
|
[105] if((byte) conio_cursor_x!=(byte) $28) goto cputc::@return
|
|
to:cputc::@3
|
|
cputc::@3: scope:[cputc] from cputc::@2
|
|
[106] (byte) conio_cursor_x ← (byte) 0
|
|
[107] (byte) conio_cursor_y ← ++ (byte) conio_cursor_y
|
|
[108] call cscroll
|
|
to:cputc::@return
|
|
cputc::@return: scope:[cputc] from cputc::@1 cputc::@2 cputc::@3
|
|
[109] return
|
|
to:@return
|
|
cputc::@1: scope:[cputc] from cputc
|
|
[110] phi()
|
|
[111] call cputln
|
|
to:cputc::@return
|
|
|
|
(void()) cputln()
|
|
cputln: scope:[cputln] from cputc::@1
|
|
[112] (word) cputln::ln_offset#0 ← (byte) $28 - (byte) conio_cursor_x
|
|
[113] (byte*~) cputln::$1 ← (byte*) conio_cursor_text + (word) cputln::ln_offset#0
|
|
[114] (byte*) conio_cursor_text ← (byte*~) cputln::$1
|
|
[115] (byte*~) cputln::$2 ← (byte*) conio_cursor_color + (word) cputln::ln_offset#0
|
|
[116] (byte*) conio_cursor_color ← (byte*~) cputln::$2
|
|
[117] (byte) conio_cursor_x ← (byte) 0
|
|
[118] (byte) conio_cursor_y ← ++ (byte) conio_cursor_y
|
|
[119] call cscroll
|
|
to:cputln::@return
|
|
cputln::@return: scope:[cputln] from cputln
|
|
[120] return
|
|
to:@return
|
|
|
|
(void()) cscroll()
|
|
cscroll: scope:[cscroll] from cputc::@3 cputln
|
|
[121] if((byte) conio_cursor_y!=(byte) $19) goto cscroll::@return
|
|
to:cscroll::@1
|
|
cscroll::@1: scope:[cscroll] from cscroll
|
|
[122] phi()
|
|
[123] call memcpy
|
|
to:cscroll::@2
|
|
cscroll::@2: scope:[cscroll] from cscroll::@1
|
|
[124] phi()
|
|
[125] call memcpy
|
|
to:cscroll::@3
|
|
cscroll::@3: scope:[cscroll] from cscroll::@2
|
|
[126] phi()
|
|
[127] call memset
|
|
to:cscroll::@4
|
|
cscroll::@4: scope:[cscroll] from cscroll::@3
|
|
[128] (byte) memset::c#1 ← (byte) conio_textcolor
|
|
[129] call memset
|
|
to:cscroll::@5
|
|
cscroll::@5: scope:[cscroll] from cscroll::@4
|
|
[130] (byte*~) cscroll::$7 ← (byte*) conio_cursor_text - (byte) $28
|
|
[131] (byte*) conio_cursor_text ← (byte*~) cscroll::$7
|
|
[132] (byte*~) cscroll::$8 ← (byte*) conio_cursor_color - (byte) $28
|
|
[133] (byte*) conio_cursor_color ← (byte*~) cscroll::$8
|
|
[134] (byte) conio_cursor_y ← -- (byte) conio_cursor_y
|
|
to:cscroll::@return
|
|
cscroll::@return: scope:[cscroll] from cscroll cscroll::@5
|
|
[135] return
|
|
to:@return
|
|
|
|
(void*()) memset((void*) memset::str , (byte) memset::c , (word) memset::num)
|
|
memset: scope:[memset] from cscroll::@3 cscroll::@4
|
|
[136] (byte) memset::c#4 ← phi( cscroll::@3/(byte) ' ' cscroll::@4/(byte) memset::c#1 )
|
|
[136] (void*) memset::str#3 ← phi( cscroll::@3/(void*)(const nomodify byte*) CONIO_SCREEN_TEXT+(word)(number) $19*(number) $28-(byte) $28 cscroll::@4/(void*)(const nomodify byte*) CONIO_SCREEN_COLORS+(word)(number) $19*(number) $28-(byte) $28 )
|
|
to:memset::@1
|
|
memset::@1: scope:[memset] from memset
|
|
[137] (byte*) memset::end#0 ← (byte*)(void*) memset::str#3 + (byte) $28
|
|
[138] (byte*) memset::dst#4 ← (byte*)(void*) memset::str#3
|
|
to:memset::@2
|
|
memset::@2: scope:[memset] from memset::@1 memset::@3
|
|
[139] (byte*) memset::dst#2 ← phi( memset::@1/(byte*) memset::dst#4 memset::@3/(byte*) memset::dst#1 )
|
|
[140] if((byte*) memset::dst#2!=(byte*) memset::end#0) goto memset::@3
|
|
to:memset::@return
|
|
memset::@return: scope:[memset] from memset::@2
|
|
[141] return
|
|
to:@return
|
|
memset::@3: scope:[memset] from memset::@2
|
|
[142] *((byte*) memset::dst#2) ← (byte) memset::c#4
|
|
[143] (byte*) memset::dst#1 ← ++ (byte*) memset::dst#2
|
|
to:memset::@2
|
|
|
|
(void*()) memcpy((void*) memcpy::destination , (void*) memcpy::source , (word) memcpy::num)
|
|
memcpy: scope:[memcpy] from cscroll::@1 cscroll::@2
|
|
[144] (void*) memcpy::destination#2 ← phi( cscroll::@1/(void*)(const nomodify byte*) CONIO_SCREEN_TEXT cscroll::@2/(void*)(const nomodify byte*) CONIO_SCREEN_COLORS )
|
|
[144] (void*) memcpy::source#2 ← phi( cscroll::@1/(void*)(const nomodify byte*) CONIO_SCREEN_TEXT+(byte) $28 cscroll::@2/(void*)(const nomodify byte*) CONIO_SCREEN_COLORS+(byte) $28 )
|
|
[145] (byte*) memcpy::src_end#0 ← (byte*)(void*) memcpy::source#2 + (word)(number) $19*(number) $28-(number) $28
|
|
[146] (byte*) memcpy::src#4 ← (byte*)(void*) memcpy::source#2
|
|
[147] (byte*) memcpy::dst#4 ← (byte*)(void*) memcpy::destination#2
|
|
to:memcpy::@1
|
|
memcpy::@1: scope:[memcpy] from memcpy memcpy::@2
|
|
[148] (byte*) memcpy::dst#2 ← phi( memcpy/(byte*) memcpy::dst#4 memcpy::@2/(byte*) memcpy::dst#1 )
|
|
[148] (byte*) memcpy::src#2 ← phi( memcpy/(byte*) memcpy::src#4 memcpy::@2/(byte*) memcpy::src#1 )
|
|
[149] if((byte*) memcpy::src#2!=(byte*) memcpy::src_end#0) goto memcpy::@2
|
|
to:memcpy::@return
|
|
memcpy::@return: scope:[memcpy] from memcpy::@1
|
|
[150] return
|
|
to:@return
|
|
memcpy::@2: scope:[memcpy] from memcpy::@1
|
|
[151] *((byte*) memcpy::dst#2) ← *((byte*) memcpy::src#2)
|
|
[152] (byte*) memcpy::dst#1 ← ++ (byte*) memcpy::dst#2
|
|
[153] (byte*) memcpy::src#1 ← ++ (byte*) memcpy::src#2
|
|
to:memcpy::@1
|
|
|
|
(void()) cputs((to_nomodify byte*) cputs::s)
|
|
cputs: scope:[cputs] from main::@14 main::@7 printf_number_buffer::@5
|
|
[154] (to_nomodify byte*) cputs::s#5 ← phi( main::@14/(const byte*) main::s1 main::@7/(const byte*) main::s printf_number_buffer::@5/(byte*)&(struct printf_buffer_number) printf_buffer+(const byte) OFFSET_STRUCT_PRINTF_BUFFER_NUMBER_DIGITS )
|
|
to:cputs::@1
|
|
cputs::@1: scope:[cputs] from cputs cputs::@2
|
|
[155] (to_nomodify byte*) cputs::s#4 ← phi( cputs/(to_nomodify byte*) cputs::s#5 cputs::@2/(to_nomodify byte*) cputs::s#0 )
|
|
[156] (byte) cputs::c#1 ← *((to_nomodify byte*) cputs::s#4)
|
|
[157] (to_nomodify byte*) cputs::s#0 ← ++ (to_nomodify byte*) cputs::s#4
|
|
[158] if((byte) 0!=(byte) cputs::c#1) goto cputs::@2
|
|
to:cputs::@return
|
|
cputs::@return: scope:[cputs] from cputs::@1
|
|
[159] return
|
|
to:@return
|
|
cputs::@2: scope:[cputs] from cputs::@1
|
|
[160] (byte) cputc::c#0 ← (byte) cputs::c#1
|
|
[161] call cputc
|
|
to:cputs::@1
|
|
|
|
(byte*()) strupr((byte*) strupr::str)
|
|
strupr: scope:[strupr] from printf_number_buffer::@11
|
|
[162] phi()
|
|
to:strupr::@1
|
|
strupr::@1: scope:[strupr] from strupr strupr::@3
|
|
[163] (byte*) strupr::src#2 ← phi( strupr/(const byte*) strupr::str#0 strupr::@3/(byte*) strupr::src#1 )
|
|
[164] if((byte) 0!=*((byte*) strupr::src#2)) goto strupr::@2
|
|
to:strupr::@return
|
|
strupr::@return: scope:[strupr] from strupr::@1
|
|
[165] return
|
|
to:@return
|
|
strupr::@2: scope:[strupr] from strupr::@1
|
|
[166] (byte) toupper::ch#0 ← *((byte*) strupr::src#2)
|
|
[167] call toupper
|
|
[168] (byte) toupper::return#3 ← (byte) toupper::return#2
|
|
to:strupr::@3
|
|
strupr::@3: scope:[strupr] from strupr::@2
|
|
[169] (byte~) strupr::$0 ← (byte) toupper::return#3
|
|
[170] *((byte*) strupr::src#2) ← (byte~) strupr::$0
|
|
[171] (byte*) strupr::src#1 ← ++ (byte*) strupr::src#2
|
|
to:strupr::@1
|
|
|
|
(byte()) toupper((byte) toupper::ch)
|
|
toupper: scope:[toupper] from strupr::@2
|
|
[172] if((byte) toupper::ch#0<(byte) 'a') goto toupper::@return
|
|
to:toupper::@2
|
|
toupper::@2: scope:[toupper] from toupper
|
|
[173] if((byte) toupper::ch#0<=(byte) 'z') goto toupper::@1
|
|
to:toupper::@return
|
|
toupper::@1: scope:[toupper] from toupper::@2
|
|
[174] (byte) toupper::return#0 ← (byte) toupper::ch#0 + (byte) 'A'-(byte) 'a'
|
|
to:toupper::@return
|
|
toupper::@return: scope:[toupper] from toupper toupper::@1 toupper::@2
|
|
[175] (byte) toupper::return#2 ← phi( toupper::@1/(byte) toupper::return#0 toupper/(byte) toupper::ch#0 toupper::@2/(byte) toupper::ch#0 )
|
|
[176] return
|
|
to:@return
|
|
|
|
(word()) strlen((byte*) strlen::str)
|
|
strlen: scope:[strlen] from printf_number_buffer::@6
|
|
[177] phi()
|
|
to:strlen::@1
|
|
strlen::@1: scope:[strlen] from strlen strlen::@2
|
|
[178] (word) strlen::len#2 ← phi( strlen/(word) 0 strlen::@2/(word) strlen::len#1 )
|
|
[178] (byte*) strlen::str#2 ← phi( strlen/(byte*)&(struct printf_buffer_number) printf_buffer+(const byte) OFFSET_STRUCT_PRINTF_BUFFER_NUMBER_DIGITS strlen::@2/(byte*) strlen::str#0 )
|
|
[179] if((byte) 0!=*((byte*) strlen::str#2)) goto strlen::@2
|
|
to:strlen::@return
|
|
strlen::@return: scope:[strlen] from strlen::@1
|
|
[180] return
|
|
to:@return
|
|
strlen::@2: scope:[strlen] from strlen::@1
|
|
[181] (word) strlen::len#1 ← ++ (word) strlen::len#2
|
|
[182] (byte*) strlen::str#0 ← ++ (byte*) strlen::str#2
|
|
to:strlen::@1
|
|
|
|
(void()) ultoa((dword) ultoa::value , (byte*) ultoa::buffer , (byte) ultoa::radix)
|
|
ultoa: scope:[ultoa] from printf_ulong::@1
|
|
[183] phi()
|
|
to:ultoa::@1
|
|
ultoa::@1: scope:[ultoa] from ultoa ultoa::@4
|
|
[184] (byte*) ultoa::buffer#11 ← phi( ultoa::@4/(byte*) ultoa::buffer#14 ultoa/(byte*)&(struct printf_buffer_number) printf_buffer+(const byte) OFFSET_STRUCT_PRINTF_BUFFER_NUMBER_DIGITS )
|
|
[184] (byte) ultoa::started#2 ← phi( ultoa::@4/(byte) ultoa::started#4 ultoa/(byte) 0 )
|
|
[184] (dword) ultoa::value#2 ← phi( ultoa::@4/(dword) ultoa::value#6 ultoa/(dword) ultoa::value#1 )
|
|
[184] (byte) ultoa::digit#2 ← phi( ultoa::@4/(byte) ultoa::digit#1 ultoa/(byte) 0 )
|
|
[185] if((byte) ultoa::digit#2<(const byte) ultoa::max_digits#1-(byte) 1) goto ultoa::@2
|
|
to:ultoa::@3
|
|
ultoa::@3: scope:[ultoa] from ultoa::@1
|
|
[186] (byte~) ultoa::$11 ← (byte)(dword) ultoa::value#2
|
|
[187] *((byte*) ultoa::buffer#11) ← *((const byte*) DIGITS + (byte~) ultoa::$11)
|
|
[188] (byte*) ultoa::buffer#3 ← ++ (byte*) ultoa::buffer#11
|
|
[189] *((byte*) ultoa::buffer#3) ← (byte) 0
|
|
to:ultoa::@return
|
|
ultoa::@return: scope:[ultoa] from ultoa::@3
|
|
[190] return
|
|
to:@return
|
|
ultoa::@2: scope:[ultoa] from ultoa::@1
|
|
[191] (byte~) ultoa::$10 ← (byte) ultoa::digit#2 << (byte) 2
|
|
[192] (dword) ultoa::digit_value#0 ← *((const dword*) RADIX_DECIMAL_VALUES_LONG + (byte~) ultoa::$10)
|
|
[193] if((byte) 0!=(byte) ultoa::started#2) goto ultoa::@5
|
|
to:ultoa::@7
|
|
ultoa::@7: scope:[ultoa] from ultoa::@2
|
|
[194] if((dword) ultoa::value#2>=(dword) ultoa::digit_value#0) goto ultoa::@5
|
|
to:ultoa::@4
|
|
ultoa::@4: scope:[ultoa] from ultoa::@6 ultoa::@7
|
|
[195] (byte*) ultoa::buffer#14 ← phi( ultoa::@7/(byte*) ultoa::buffer#11 ultoa::@6/(byte*) ultoa::buffer#4 )
|
|
[195] (byte) ultoa::started#4 ← phi( ultoa::@7/(byte) ultoa::started#2 ultoa::@6/(byte) 1 )
|
|
[195] (dword) ultoa::value#6 ← phi( ultoa::@7/(dword) ultoa::value#2 ultoa::@6/(dword) ultoa::value#0 )
|
|
[196] (byte) ultoa::digit#1 ← ++ (byte) ultoa::digit#2
|
|
to:ultoa::@1
|
|
ultoa::@5: scope:[ultoa] from ultoa::@2 ultoa::@7
|
|
[197] (byte*) ultoa_append::buffer#0 ← (byte*) ultoa::buffer#11
|
|
[198] (dword) ultoa_append::value#0 ← (dword) ultoa::value#2
|
|
[199] (dword) ultoa_append::sub#0 ← (dword) ultoa::digit_value#0
|
|
[200] call ultoa_append
|
|
[201] (dword) ultoa_append::return#0 ← (dword) ultoa_append::value#2
|
|
to:ultoa::@6
|
|
ultoa::@6: scope:[ultoa] from ultoa::@5
|
|
[202] (dword) ultoa::value#0 ← (dword) ultoa_append::return#0
|
|
[203] (byte*) ultoa::buffer#4 ← ++ (byte*) ultoa::buffer#11
|
|
to:ultoa::@4
|
|
|
|
(dword()) ultoa_append((byte*) ultoa_append::buffer , (dword) ultoa_append::value , (dword) ultoa_append::sub)
|
|
ultoa_append: scope:[ultoa_append] from ultoa::@5
|
|
[204] phi()
|
|
to:ultoa_append::@1
|
|
ultoa_append::@1: scope:[ultoa_append] from ultoa_append ultoa_append::@2
|
|
[205] (byte) ultoa_append::digit#2 ← phi( ultoa_append/(byte) 0 ultoa_append::@2/(byte) ultoa_append::digit#1 )
|
|
[205] (dword) ultoa_append::value#2 ← phi( ultoa_append/(dword) ultoa_append::value#0 ultoa_append::@2/(dword) ultoa_append::value#1 )
|
|
[206] if((dword) ultoa_append::value#2>=(dword) ultoa_append::sub#0) goto ultoa_append::@2
|
|
to:ultoa_append::@3
|
|
ultoa_append::@3: scope:[ultoa_append] from ultoa_append::@1
|
|
[207] *((byte*) ultoa_append::buffer#0) ← *((const byte*) DIGITS + (byte) ultoa_append::digit#2)
|
|
to:ultoa_append::@return
|
|
ultoa_append::@return: scope:[ultoa_append] from ultoa_append::@3
|
|
[208] return
|
|
to:@return
|
|
ultoa_append::@2: scope:[ultoa_append] from ultoa_append::@1
|
|
[209] (byte) ultoa_append::digit#1 ← ++ (byte) ultoa_append::digit#2
|
|
[210] (dword) ultoa_append::value#1 ← (dword) ultoa_append::value#2 - (dword) ultoa_append::sub#0
|
|
to:ultoa_append::@1
|
|
|
|
(void()) gotoxy((byte) gotoxy::x , (byte) gotoxy::y)
|
|
gotoxy: scope:[gotoxy] from main::@3 main::@5
|
|
[211] (byte) gotoxy::x#4 ← phi( main::@3/(byte) gotoxy::x#2 main::@5/(byte) $1c )
|
|
[211] (byte) gotoxy::y#4 ← phi( main::@3/(byte) gotoxy::y#2 main::@5/(byte) 0 )
|
|
[212] if((byte) gotoxy::y#4<(byte) $19+(byte) 1) goto gotoxy::@3
|
|
to:gotoxy::@1
|
|
gotoxy::@3: scope:[gotoxy] from gotoxy
|
|
[213] phi()
|
|
to:gotoxy::@1
|
|
gotoxy::@1: scope:[gotoxy] from gotoxy gotoxy::@3
|
|
[214] (byte) gotoxy::y#5 ← phi( gotoxy::@3/(byte) gotoxy::y#4 gotoxy/(byte) 0 )
|
|
[215] if((byte) gotoxy::x#4<(byte) $28) goto gotoxy::@4
|
|
to:gotoxy::@2
|
|
gotoxy::@4: scope:[gotoxy] from gotoxy::@1
|
|
[216] phi()
|
|
to:gotoxy::@2
|
|
gotoxy::@2: scope:[gotoxy] from gotoxy::@1 gotoxy::@4
|
|
[217] (byte) gotoxy::x#5 ← phi( gotoxy::@4/(byte) gotoxy::x#4 gotoxy::@1/(byte) 0 )
|
|
[218] (byte) conio_cursor_x ← (byte) gotoxy::x#5
|
|
[219] (byte) conio_cursor_y ← (byte) gotoxy::y#5
|
|
[220] (word~) gotoxy::$8 ← (word)(byte) gotoxy::y#5
|
|
[221] (word~) gotoxy::$9 ← (word~) gotoxy::$8 << (byte) 2
|
|
[222] (word~) gotoxy::$10 ← (word~) gotoxy::$9 + (word~) gotoxy::$8
|
|
[223] (word~) gotoxy::$4 ← (word~) gotoxy::$10 << (byte) 3
|
|
[224] (word) gotoxy::offset#0 ← (word~) gotoxy::$4 + (byte) gotoxy::x#5
|
|
[225] (byte*~) gotoxy::$6 ← (const nomodify byte*) CONIO_SCREEN_TEXT + (word) gotoxy::offset#0
|
|
[226] (byte*) conio_cursor_text ← (byte*~) gotoxy::$6
|
|
[227] (byte*~) gotoxy::$7 ← (const nomodify byte*) CONIO_SCREEN_COLORS + (word) gotoxy::offset#0
|
|
[228] (byte*) conio_cursor_color ← (byte*~) gotoxy::$7
|
|
to:gotoxy::@return
|
|
gotoxy::@return: scope:[gotoxy] from gotoxy::@2
|
|
[229] return
|
|
to:@return
|
|
|
|
(word()) _rand()
|
|
_rand: scope:[_rand] from main::@2 main::@8
|
|
[230] (word) _rand_state#12 ← phi( main::@2/(word) _rand_state#13 main::@8/(word) 1 )
|
|
[231] (word~) _rand::$0 ← (word) _rand_state#12 << (byte) 7
|
|
[232] (word) _rand_state#4 ← (word) _rand_state#12 ^ (word~) _rand::$0
|
|
[233] (word~) _rand::$1 ← (word) _rand_state#4 >> (byte) 9
|
|
[234] (word) _rand_state#5 ← (word) _rand_state#4 ^ (word~) _rand::$1
|
|
[235] (word~) _rand::$2 ← (word) _rand_state#5 << (byte) 8
|
|
[236] (word) _rand_state#13 ← (word) _rand_state#5 ^ (word~) _rand::$2
|
|
[237] (word) _rand::return#2 ← (word) _rand_state#13
|
|
to:_rand::@return
|
|
_rand::@return: scope:[_rand] from _rand
|
|
[238] return
|
|
to:@return
|
|
|
|
(void()) printf_uint((word) printf_uint::uvalue , (byte) printf_uint::format_min_length , (byte) printf_uint::format_justify_left , (byte) printf_uint::format_sign_always , (byte) printf_uint::format_zero_padding , (byte) printf_uint::format_upper_case , (byte) printf_uint::format_radix)
|
|
printf_uint: scope:[printf_uint] from main::@12
|
|
[239] phi()
|
|
to:printf_uint::@1
|
|
printf_uint::@1: scope:[printf_uint] from printf_uint
|
|
[240] *((byte*)&(struct printf_buffer_number) printf_buffer) ← (byte) 0
|
|
[241] (word) utoa::value#1 ← (word) printf_uint::uvalue#0
|
|
[242] call utoa
|
|
to:printf_uint::@2
|
|
printf_uint::@2: scope:[printf_uint] from printf_uint::@1
|
|
[243] (byte) printf_number_buffer::buffer_sign#1 ← *((byte*)&(struct printf_buffer_number) printf_buffer)
|
|
[244] call printf_number_buffer
|
|
to:printf_uint::@return
|
|
printf_uint::@return: scope:[printf_uint] from printf_uint::@2
|
|
[245] return
|
|
to:@return
|
|
|
|
(void()) utoa((word) utoa::value , (byte*) utoa::buffer , (byte) utoa::radix)
|
|
utoa: scope:[utoa] from printf_uint::@1
|
|
[246] phi()
|
|
to:utoa::@1
|
|
utoa::@1: scope:[utoa] from utoa utoa::@4
|
|
[247] (byte*) utoa::buffer#11 ← phi( utoa::@4/(byte*) utoa::buffer#14 utoa/(byte*)&(struct printf_buffer_number) printf_buffer+(const byte) OFFSET_STRUCT_PRINTF_BUFFER_NUMBER_DIGITS )
|
|
[247] (byte) utoa::started#2 ← phi( utoa::@4/(byte) utoa::started#4 utoa/(byte) 0 )
|
|
[247] (word) utoa::value#2 ← phi( utoa::@4/(word) utoa::value#6 utoa/(word) utoa::value#1 )
|
|
[247] (byte) utoa::digit#2 ← phi( utoa::@4/(byte) utoa::digit#1 utoa/(byte) 0 )
|
|
[248] if((byte) utoa::digit#2<(const byte) utoa::max_digits#1-(byte) 1) goto utoa::@2
|
|
to:utoa::@3
|
|
utoa::@3: scope:[utoa] from utoa::@1
|
|
[249] (byte~) utoa::$11 ← (byte)(word) utoa::value#2
|
|
[250] *((byte*) utoa::buffer#11) ← *((const byte*) DIGITS + (byte~) utoa::$11)
|
|
[251] (byte*) utoa::buffer#3 ← ++ (byte*) utoa::buffer#11
|
|
[252] *((byte*) utoa::buffer#3) ← (byte) 0
|
|
to:utoa::@return
|
|
utoa::@return: scope:[utoa] from utoa::@3
|
|
[253] return
|
|
to:@return
|
|
utoa::@2: scope:[utoa] from utoa::@1
|
|
[254] (byte~) utoa::$10 ← (byte) utoa::digit#2 << (byte) 1
|
|
[255] (word) utoa::digit_value#0 ← *((const word*) RADIX_DECIMAL_VALUES + (byte~) utoa::$10)
|
|
[256] if((byte) 0!=(byte) utoa::started#2) goto utoa::@5
|
|
to:utoa::@7
|
|
utoa::@7: scope:[utoa] from utoa::@2
|
|
[257] if((word) utoa::value#2>=(word) utoa::digit_value#0) goto utoa::@5
|
|
to:utoa::@4
|
|
utoa::@4: scope:[utoa] from utoa::@6 utoa::@7
|
|
[258] (byte*) utoa::buffer#14 ← phi( utoa::@7/(byte*) utoa::buffer#11 utoa::@6/(byte*) utoa::buffer#4 )
|
|
[258] (byte) utoa::started#4 ← phi( utoa::@7/(byte) utoa::started#2 utoa::@6/(byte) 1 )
|
|
[258] (word) utoa::value#6 ← phi( utoa::@7/(word) utoa::value#2 utoa::@6/(word) utoa::value#0 )
|
|
[259] (byte) utoa::digit#1 ← ++ (byte) utoa::digit#2
|
|
to:utoa::@1
|
|
utoa::@5: scope:[utoa] from utoa::@2 utoa::@7
|
|
[260] (byte*) utoa_append::buffer#0 ← (byte*) utoa::buffer#11
|
|
[261] (word) utoa_append::value#0 ← (word) utoa::value#2
|
|
[262] (word) utoa_append::sub#0 ← (word) utoa::digit_value#0
|
|
[263] call utoa_append
|
|
[264] (word) utoa_append::return#0 ← (word) utoa_append::value#2
|
|
to:utoa::@6
|
|
utoa::@6: scope:[utoa] from utoa::@5
|
|
[265] (word) utoa::value#0 ← (word) utoa_append::return#0
|
|
[266] (byte*) utoa::buffer#4 ← ++ (byte*) utoa::buffer#11
|
|
to:utoa::@4
|
|
|
|
(word()) utoa_append((byte*) utoa_append::buffer , (word) utoa_append::value , (word) utoa_append::sub)
|
|
utoa_append: scope:[utoa_append] from utoa::@5
|
|
[267] phi()
|
|
to:utoa_append::@1
|
|
utoa_append::@1: scope:[utoa_append] from utoa_append utoa_append::@2
|
|
[268] (byte) utoa_append::digit#2 ← phi( utoa_append/(byte) 0 utoa_append::@2/(byte) utoa_append::digit#1 )
|
|
[268] (word) utoa_append::value#2 ← phi( utoa_append/(word) utoa_append::value#0 utoa_append::@2/(word) utoa_append::value#1 )
|
|
[269] if((word) utoa_append::value#2>=(word) utoa_append::sub#0) goto utoa_append::@2
|
|
to:utoa_append::@3
|
|
utoa_append::@3: scope:[utoa_append] from utoa_append::@1
|
|
[270] *((byte*) utoa_append::buffer#0) ← *((const byte*) DIGITS + (byte) utoa_append::digit#2)
|
|
to:utoa_append::@return
|
|
utoa_append::@return: scope:[utoa_append] from utoa_append::@3
|
|
[271] return
|
|
to:@return
|
|
utoa_append::@2: scope:[utoa_append] from utoa_append::@1
|
|
[272] (byte) utoa_append::digit#1 ← ++ (byte) utoa_append::digit#2
|
|
[273] (word) utoa_append::value#1 ← (word) utoa_append::value#2 - (word) utoa_append::sub#0
|
|
to:utoa_append::@1
|
|
|
|
(byte()) textcolor((byte) textcolor::color)
|
|
textcolor: scope:[textcolor] from main::@6 main::@9
|
|
[274] (byte) textcolor::color#2 ← phi( main::@9/(const nomodify byte) LIGHT_BLUE main::@6/(const nomodify byte) WHITE )
|
|
[275] (byte) conio_textcolor ← (byte) textcolor::color#2
|
|
to:textcolor::@return
|
|
textcolor::@return: scope:[textcolor] from textcolor
|
|
[276] return
|
|
to:@return
|
|
|
|
(void()) clrscr()
|
|
clrscr: scope:[clrscr] from main
|
|
[277] phi()
|
|
to:clrscr::@1
|
|
clrscr::@1: scope:[clrscr] from clrscr clrscr::@5
|
|
[278] (byte*) clrscr::line_cols#5 ← phi( clrscr/(const nomodify byte*) CONIO_SCREEN_COLORS clrscr::@5/(byte*) clrscr::line_cols#1 )
|
|
[278] (byte*) clrscr::line_text#5 ← phi( clrscr/(const nomodify byte*) CONIO_SCREEN_TEXT clrscr::@5/(byte*) clrscr::line_text#1 )
|
|
[278] (byte) clrscr::l#2 ← phi( clrscr/(byte) 0 clrscr::@5/(byte) clrscr::l#1 )
|
|
[279] if((byte) clrscr::l#2<(byte) $19) goto clrscr::@3
|
|
to:clrscr::@2
|
|
clrscr::@2: scope:[clrscr] from clrscr::@1
|
|
[280] (byte) conio_cursor_x ← (byte) 0
|
|
[281] (byte) conio_cursor_y ← (byte) 0
|
|
[282] (byte*) conio_cursor_text ← (const nomodify byte*) CONIO_SCREEN_TEXT
|
|
[283] (byte*) conio_cursor_color ← (const nomodify byte*) CONIO_SCREEN_COLORS
|
|
to:clrscr::@return
|
|
clrscr::@return: scope:[clrscr] from clrscr::@2
|
|
[284] return
|
|
to:@return
|
|
clrscr::@3: scope:[clrscr] from clrscr::@1 clrscr::@4
|
|
[285] (byte) clrscr::c#2 ← phi( clrscr::@1/(byte) 0 clrscr::@4/(byte) clrscr::c#1 )
|
|
[286] if((byte) clrscr::c#2<(byte) $28) goto clrscr::@4
|
|
to:clrscr::@5
|
|
clrscr::@5: scope:[clrscr] from clrscr::@3
|
|
[287] (byte*) clrscr::line_text#1 ← (byte*) clrscr::line_text#5 + (byte) $28
|
|
[288] (byte*) clrscr::line_cols#1 ← (byte*) clrscr::line_cols#5 + (byte) $28
|
|
[289] (byte) clrscr::l#1 ← ++ (byte) clrscr::l#2
|
|
to:clrscr::@1
|
|
clrscr::@4: scope:[clrscr] from clrscr::@3
|
|
[290] *((byte*) clrscr::line_text#5 + (byte) clrscr::c#2) ← (byte) ' '
|
|
[291] *((byte*) clrscr::line_cols#5 + (byte) clrscr::c#2) ← (byte) conio_textcolor
|
|
[292] (byte) clrscr::c#1 ← ++ (byte) clrscr::c#2
|
|
to:clrscr::@3
|