1
0
mirror of https://gitlab.com/camelot/kickc.git synced 2025-02-20 00:29:10 +00:00

Updated CX16 test data.

This commit is contained in:
Jesper Gravgaard 2021-01-13 18:28:08 +01:00
parent ee9f738f87
commit ec1da0250c
15 changed files with 40077 additions and 384 deletions

View File

@ -92,7 +92,7 @@ volatile unsigned int sin_idx_x = 119;
volatile unsigned int sin_idx_y = 79;
// VSYNC Interrupt Routine
__interrupt void irq_vsync() {
__interrupt(rom_sys_cx16) void irq_vsync() {
// Move the sprite around
if(++sin_idx_x==SINX_LEN) sin_idx_x = 0;
if(--sin_idx_y==0xffff) sin_idx_y = SINY_LEN-1;

View File

@ -114,8 +114,7 @@ volatile int delta_y = 0;
volatile int speed = 2;
// VSYNC Interrupt Routine
__interrupt void irq_vsync() {
__interrupt(rom_sys_cx16) void irq_vsync() {
scroll_x += delta_x;
scroll_y += delta_y;

View File

@ -13,6 +13,7 @@
.const VERA_DCSEL = 2
.const VERA_ADDRSEL = 1
.const VERA_VSYNC = 1
.const VERA_SPRITES_ENABLE = $40
// VERA Palette address in VRAM $1FA00 - $1FBFF
// 256 entries of 2 bytes
// byte 0 bits 4-7: Green
@ -32,7 +33,6 @@
.const SIZEOF_STRUCT_VERA_SPRITE = 8
.const OFFSET_STRUCT_VERA_SPRITE_X = 2
.const OFFSET_STRUCT_VERA_SPRITE_Y = 4
.const VERA_SPRITES_ENABLE = $40
// $9F20 VRAM Address (7:0)
.label VERA_ADDRX_L = $9f20
// $9F21 VRAM Address (15:8)
@ -165,10 +165,8 @@ irq_vsync: {
// Reset the VSYNC interrupt
lda #VERA_VSYNC
sta VERA_ISR
// asm
// Exit CX16 KERNAL IRQ
jmp $e034
// }
jmp $e034
__b6:
// SPRITE_ATTR.X = SINX[i_x]
lda.z i_x

View File

@ -43,108 +43,107 @@ irq_vsync::@5: scope:[irq_vsync] from irq_vsync::@2 irq_vsync::@9
to:irq_vsync::@7
irq_vsync::@7: scope:[irq_vsync] from irq_vsync::@5
[16] *VERA_ISR = VERA_VSYNC
asm { jmp$e034 }
to:irq_vsync::@return
irq_vsync::@return: scope:[irq_vsync] from irq_vsync::@7
[18] return
[17] return
to:@return
irq_vsync::@6: scope:[irq_vsync] from irq_vsync::@5
[19] irq_vsync::$11 = irq_vsync::i_x#3 << 1
[20] irq_vsync::$13 = SINX + irq_vsync::$11
[21] *((word*)&SPRITE_ATTR+OFFSET_STRUCT_VERA_SPRITE_X) = *irq_vsync::$13
[22] irq_vsync::$12 = irq_vsync::i_y#3 << 1
[23] irq_vsync::$14 = SINY + irq_vsync::$12
[24] *((word*)&SPRITE_ATTR+OFFSET_STRUCT_VERA_SPRITE_Y) = *irq_vsync::$14
[25] memcpy_to_vram::vdest#3 = (void*)irq_vsync::vram_sprite_pos#2
[26] call memcpy_to_vram
[18] irq_vsync::$11 = irq_vsync::i_x#3 << 1
[19] irq_vsync::$13 = SINX + irq_vsync::$11
[20] *((word*)&SPRITE_ATTR+OFFSET_STRUCT_VERA_SPRITE_X) = *irq_vsync::$13
[21] irq_vsync::$12 = irq_vsync::i_y#3 << 1
[22] irq_vsync::$14 = SINY + irq_vsync::$12
[23] *((word*)&SPRITE_ATTR+OFFSET_STRUCT_VERA_SPRITE_Y) = *irq_vsync::$14
[24] memcpy_to_vram::vdest#3 = (void*)irq_vsync::vram_sprite_pos#2
[25] call memcpy_to_vram
to:irq_vsync::@12
irq_vsync::@12: scope:[irq_vsync] from irq_vsync::@6
[27] irq_vsync::vram_sprite_pos#1 = irq_vsync::vram_sprite_pos#2 + SIZEOF_STRUCT_VERA_SPRITE
[28] irq_vsync::i_x#1 = irq_vsync::i_x#3 + $19
[29] if(irq_vsync::i_x#1<SINX_LEN) goto irq_vsync::@8
[26] irq_vsync::vram_sprite_pos#1 = irq_vsync::vram_sprite_pos#2 + SIZEOF_STRUCT_VERA_SPRITE
[27] irq_vsync::i_x#1 = irq_vsync::i_x#3 + $19
[28] if(irq_vsync::i_x#1<SINX_LEN) goto irq_vsync::@8
to:irq_vsync::@10
irq_vsync::@10: scope:[irq_vsync] from irq_vsync::@12
[30] irq_vsync::i_x#2 = irq_vsync::i_x#1 - SINX_LEN
[29] irq_vsync::i_x#2 = irq_vsync::i_x#1 - SINX_LEN
to:irq_vsync::@8
irq_vsync::@8: scope:[irq_vsync] from irq_vsync::@10 irq_vsync::@12
[31] irq_vsync::i_x#7 = phi( irq_vsync::@10/irq_vsync::i_x#2, irq_vsync::@12/irq_vsync::i_x#1 )
[32] irq_vsync::i_y#1 = irq_vsync::i_y#3 + $13
[33] if(irq_vsync::i_y#1<SINY_LEN) goto irq_vsync::@9
[30] irq_vsync::i_x#7 = phi( irq_vsync::@10/irq_vsync::i_x#2, irq_vsync::@12/irq_vsync::i_x#1 )
[31] irq_vsync::i_y#1 = irq_vsync::i_y#3 + $13
[32] if(irq_vsync::i_y#1<SINY_LEN) goto irq_vsync::@9
to:irq_vsync::@11
irq_vsync::@11: scope:[irq_vsync] from irq_vsync::@8
[34] irq_vsync::i_y#2 = irq_vsync::i_y#1 - SINY_LEN
[33] irq_vsync::i_y#2 = irq_vsync::i_y#1 - SINY_LEN
to:irq_vsync::@9
irq_vsync::@9: scope:[irq_vsync] from irq_vsync::@11 irq_vsync::@8
[35] irq_vsync::i_y#9 = phi( irq_vsync::@11/irq_vsync::i_y#2, irq_vsync::@8/irq_vsync::i_y#1 )
[36] irq_vsync::s#1 = ++ irq_vsync::s#2
[34] irq_vsync::i_y#9 = phi( irq_vsync::@11/irq_vsync::i_y#2, irq_vsync::@8/irq_vsync::i_y#1 )
[35] irq_vsync::s#1 = ++ irq_vsync::s#2
to:irq_vsync::@5
void main()
main: scope:[main] from __start::@1
[37] phi()
[38] call memcpy_to_vram
[36] phi()
[37] call memcpy_to_vram
to:main::@5
main::@5: scope:[main] from main
[39] phi()
[40] call memcpy_to_vram
[38] phi()
[39] call memcpy_to_vram
to:main::@1
main::@1: scope:[main] from main::@5 main::@6
[41] main::vram_sprite_attr#2 = phi( main::@5/(byte*)<VERA_SPRITE_ATTR, main::@6/main::vram_sprite_attr#1 )
[41] main::s#2 = phi( main::@5/0, main::@6/main::s#1 )
[42] if(main::s#2<$20) goto main::@2
[40] main::vram_sprite_attr#2 = phi( main::@5/(byte*)<VERA_SPRITE_ATTR, main::@6/main::vram_sprite_attr#1 )
[40] main::s#2 = phi( main::@5/0, main::@6/main::s#1 )
[41] if(main::s#2<$20) goto main::@2
to:main::@3
main::@3: scope:[main] from main::@1
[43] *VERA_CTRL = *VERA_CTRL & ~VERA_DCSEL
[44] *VERA_DC_VIDEO = *VERA_DC_VIDEO | VERA_SPRITES_ENABLE
[42] *VERA_CTRL = *VERA_CTRL & ~VERA_DCSEL
[43] *VERA_DC_VIDEO = *VERA_DC_VIDEO | VERA_SPRITES_ENABLE
to:main::SEI1
main::SEI1: scope:[main] from main::@3
asm { sei }
to:main::@4
main::@4: scope:[main] from main::SEI1
[46] *KERNEL_IRQ = &irq_vsync
[47] *VERA_IEN = VERA_VSYNC
[45] *KERNEL_IRQ = &irq_vsync
[46] *VERA_IEN = VERA_VSYNC
to:main::CLI1
main::CLI1: scope:[main] from main::@4
asm { cli }
to:main::@return
main::@return: scope:[main] from main::CLI1
[49] return
[48] return
to:@return
main::@2: scope:[main] from main::@1
[50] *((word*)&SPRITE_ATTR+OFFSET_STRUCT_VERA_SPRITE_X) = *((word*)&SPRITE_ATTR+OFFSET_STRUCT_VERA_SPRITE_X) + $a
[51] *((word*)&SPRITE_ATTR+OFFSET_STRUCT_VERA_SPRITE_Y) = *((word*)&SPRITE_ATTR+OFFSET_STRUCT_VERA_SPRITE_Y) + $a
[52] memcpy_to_vram::vdest#2 = (void*)main::vram_sprite_attr#2
[53] call memcpy_to_vram
[49] *((word*)&SPRITE_ATTR+OFFSET_STRUCT_VERA_SPRITE_X) = *((word*)&SPRITE_ATTR+OFFSET_STRUCT_VERA_SPRITE_X) + $a
[50] *((word*)&SPRITE_ATTR+OFFSET_STRUCT_VERA_SPRITE_Y) = *((word*)&SPRITE_ATTR+OFFSET_STRUCT_VERA_SPRITE_Y) + $a
[51] memcpy_to_vram::vdest#2 = (void*)main::vram_sprite_attr#2
[52] call memcpy_to_vram
to:main::@6
main::@6: scope:[main] from main::@2
[54] main::vram_sprite_attr#1 = main::vram_sprite_attr#2 + SIZEOF_STRUCT_VERA_SPRITE
[55] main::s#1 = ++ main::s#2
[53] main::vram_sprite_attr#1 = main::vram_sprite_attr#2 + SIZEOF_STRUCT_VERA_SPRITE
[54] main::s#1 = ++ main::s#2
to:main::@1
void memcpy_to_vram(byte memcpy_to_vram::vbank , void* memcpy_to_vram::vdest , void* memcpy_to_vram::src , word memcpy_to_vram::num)
memcpy_to_vram: scope:[memcpy_to_vram] from irq_vsync::@6 main main::@2 main::@5
[56] memcpy_to_vram::num#4 = phi( irq_vsync::@6/4, main/(word)$40*$40, main::@2/SIZEOF_STRUCT_VERA_SPRITE, main::@5/$200 )
[56] memcpy_to_vram::src#4 = phi( irq_vsync::@6/(void*)&SPRITE_ATTR+2, main/(void*)SPRITE_PIXELS, main::@2/(void*)&SPRITE_ATTR, main::@5/(void*)SPRITE_PIXELS+(word)$40*$40 )
[56] memcpy_to_vram::vbank#4 = phi( irq_vsync::@6/irq_vsync::vram_sprite_attr_bank, main/0, main::@2/(byte)>VERA_SPRITE_ATTR, main::@5/(byte)>VERA_PALETTE )
[56] memcpy_to_vram::vdest#4 = phi( irq_vsync::@6/memcpy_to_vram::vdest#3, main/(void*)<SPRITE_PIXELS_VRAM, main::@2/memcpy_to_vram::vdest#2, main::@5/(void*)<VERA_PALETTE )
[57] *VERA_CTRL = *VERA_CTRL & ~VERA_ADDRSEL
[58] memcpy_to_vram::$0 = < memcpy_to_vram::vdest#4
[59] *VERA_ADDRX_L = memcpy_to_vram::$0
[60] memcpy_to_vram::$1 = > memcpy_to_vram::vdest#4
[61] *VERA_ADDRX_M = memcpy_to_vram::$1
[62] memcpy_to_vram::$2 = VERA_INC_1 | memcpy_to_vram::vbank#4
[63] *VERA_ADDRX_H = memcpy_to_vram::$2
[64] memcpy_to_vram::end#0 = (byte*)memcpy_to_vram::src#4 + memcpy_to_vram::num#4
[65] memcpy_to_vram::s#4 = (byte*)memcpy_to_vram::src#4
[55] memcpy_to_vram::num#4 = phi( irq_vsync::@6/4, main/(word)$40*$40, main::@2/SIZEOF_STRUCT_VERA_SPRITE, main::@5/$200 )
[55] memcpy_to_vram::src#4 = phi( irq_vsync::@6/(void*)&SPRITE_ATTR+2, main/(void*)SPRITE_PIXELS, main::@2/(void*)&SPRITE_ATTR, main::@5/(void*)SPRITE_PIXELS+(word)$40*$40 )
[55] memcpy_to_vram::vbank#4 = phi( irq_vsync::@6/irq_vsync::vram_sprite_attr_bank, main/0, main::@2/(byte)>VERA_SPRITE_ATTR, main::@5/(byte)>VERA_PALETTE )
[55] memcpy_to_vram::vdest#4 = phi( irq_vsync::@6/memcpy_to_vram::vdest#3, main/(void*)<SPRITE_PIXELS_VRAM, main::@2/memcpy_to_vram::vdest#2, main::@5/(void*)<VERA_PALETTE )
[56] *VERA_CTRL = *VERA_CTRL & ~VERA_ADDRSEL
[57] memcpy_to_vram::$0 = < memcpy_to_vram::vdest#4
[58] *VERA_ADDRX_L = memcpy_to_vram::$0
[59] memcpy_to_vram::$1 = > memcpy_to_vram::vdest#4
[60] *VERA_ADDRX_M = memcpy_to_vram::$1
[61] memcpy_to_vram::$2 = VERA_INC_1 | memcpy_to_vram::vbank#4
[62] *VERA_ADDRX_H = memcpy_to_vram::$2
[63] memcpy_to_vram::end#0 = (byte*)memcpy_to_vram::src#4 + memcpy_to_vram::num#4
[64] memcpy_to_vram::s#4 = (byte*)memcpy_to_vram::src#4
to:memcpy_to_vram::@1
memcpy_to_vram::@1: scope:[memcpy_to_vram] from memcpy_to_vram memcpy_to_vram::@2
[66] memcpy_to_vram::s#2 = phi( memcpy_to_vram/memcpy_to_vram::s#4, memcpy_to_vram::@2/memcpy_to_vram::s#1 )
[67] if(memcpy_to_vram::s#2!=memcpy_to_vram::end#0) goto memcpy_to_vram::@2
[65] memcpy_to_vram::s#2 = phi( memcpy_to_vram/memcpy_to_vram::s#4, memcpy_to_vram::@2/memcpy_to_vram::s#1 )
[66] if(memcpy_to_vram::s#2!=memcpy_to_vram::end#0) goto memcpy_to_vram::@2
to:memcpy_to_vram::@return
memcpy_to_vram::@return: scope:[memcpy_to_vram] from memcpy_to_vram::@1
[68] return
[67] return
to:@return
memcpy_to_vram::@2: scope:[memcpy_to_vram] from memcpy_to_vram::@1
[69] *VERA_DATA0 = *memcpy_to_vram::s#2
[70] memcpy_to_vram::s#1 = ++ memcpy_to_vram::s#2
[68] *VERA_DATA0 = *memcpy_to_vram::s#2
[69] memcpy_to_vram::s#1 = ++ memcpy_to_vram::s#2
to:memcpy_to_vram::@1

File diff suppressed because it is too large Load Diff

View File

@ -57,7 +57,7 @@ const nomodify byte* VERA_IEN = (byte*) 40742
const nomodify byte VERA_INC_1 = $10
const nomodify byte* VERA_ISR = (byte*) 40743
const nomodify dword VERA_PALETTE = $1fa00
const byte VERA_SPRITES_ENABLE = $40
const nomodify byte VERA_SPRITES_ENABLE = $40
const nomodify word VERA_SPRITE_8BPP = $8000
const nomodify dword VERA_SPRITE_ATTR = $1fc00
const nomodify byte VERA_VSYNC = 1

View File

@ -1,4 +1,3 @@
Inlined call call __init
CONTROL FLOW GRAPH SSA
@ -55,7 +54,7 @@ memcpy_to_vram::@return: scope:[memcpy_to_vram] from memcpy_to_vram::@1
to:@return
void main()
main: scope:[main] from __start::@1
main: scope:[main] from __start
main::vaddr#0 = DEFAULT_SCREEN
main::i#0 = 0
to:main::@1
@ -104,15 +103,11 @@ main::@return: scope:[main] from main::@6
void __start()
__start: scope:[__start] from
to:__start::__init1
__start::__init1: scope:[__start] from __start
to:__start::@1
__start::@1: scope:[__start] from __start::__init1
call main
to:__start::@2
__start::@2: scope:[__start] from __start::@1
to:__start::@1
__start::@1: scope:[__start] from __start
to:__start::@return
__start::@return: scope:[__start] from __start::@2
__start::@return: scope:[__start] from __start::@1
return
to:@return
@ -265,9 +260,7 @@ Eliminating unused constant memcpy_to_vram::vbank#0
Successful SSA optimization PassNEliminateUnusedVars
Removing unused procedure __start
Removing unused procedure block __start
Removing unused procedure block __start::__init1
Removing unused procedure block __start::@1
Removing unused procedure block __start::@2
Removing unused procedure block __start::@return
Successful SSA optimization PassNEliminateEmptyStart
Resolving string sizeof() sizeof main::MSG2

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,944 @@
void __start()
__start: scope:[__start] from
[0] phi()
to:__start::__init1
__start::__init1: scope:[__start] from __start
[1] conio_screen_width = 0
[2] conio_screen_height = 0
[3] conio_screen_layer = 1
[4] conio_width = 0
[5] conio_height = 0
[6] conio_skip = 0
[7] scroll_x = 0
[8] scroll_y = 0
[9] delta_x = 2
[10] delta_y = 0
[11] speed = 2
[12] call conio_x16_init
to:__start::@1
__start::@1: scope:[__start] from __start::__init1
[13] phi()
[14] call main
to:__start::@return
__start::@return: scope:[__start] from __start::@1
[15] return
to:@return
__interrupt(rom_sys_cx16) void irq_vsync()
irq_vsync: scope:[irq_vsync] from
[16] scroll_x = scroll_x + delta_x
[17] scroll_y = scroll_y + delta_y
[18] if(scroll_x<=(signed word)$80*8-$50*8) goto irq_vsync::@1
to:irq_vsync::@5
irq_vsync::@5: scope:[irq_vsync] from irq_vsync
[19] delta_x = 0
[20] delta_y = speed
[21] scroll_x = (signed word)$80*8-$50*8
to:irq_vsync::@1
irq_vsync::@1: scope:[irq_vsync] from irq_vsync irq_vsync::@5
[22] if(scroll_y<=(signed word)$80*8-$3c*8) goto irq_vsync::@2
to:irq_vsync::@6
irq_vsync::@6: scope:[irq_vsync] from irq_vsync::@1
[23] irq_vsync::$10 = - speed
[24] delta_x = irq_vsync::$10
[25] delta_y = 0
[26] scroll_y = (signed word)$80*8-$3c*8
to:irq_vsync::@2
irq_vsync::@2: scope:[irq_vsync] from irq_vsync::@1 irq_vsync::@6
[27] if(scroll_x>=0) goto irq_vsync::@3
to:irq_vsync::@7
irq_vsync::@7: scope:[irq_vsync] from irq_vsync::@2
[28] delta_x = 0
[29] irq_vsync::$11 = - speed
[30] delta_y = irq_vsync::$11
[31] scroll_x = 0
to:irq_vsync::@3
irq_vsync::@3: scope:[irq_vsync] from irq_vsync::@2 irq_vsync::@7
[32] if(scroll_y>=0) goto irq_vsync::@4
to:irq_vsync::@8
irq_vsync::@8: scope:[irq_vsync] from irq_vsync::@3
[33] delta_x = speed
[34] delta_y = 0
[35] scroll_y = 0
to:irq_vsync::@4
irq_vsync::@4: scope:[irq_vsync] from irq_vsync::@3 irq_vsync::@8
[36] irq_vsync::vera_set_layer_horizontal_scroll1_scroll#0 = (word)scroll_x
to:irq_vsync::vera_set_layer_horizontal_scroll1
irq_vsync::vera_set_layer_horizontal_scroll1: scope:[irq_vsync] from irq_vsync::@4
[37] irq_vsync::vera_set_layer_horizontal_scroll1_$0 = < irq_vsync::vera_set_layer_horizontal_scroll1_scroll#0
[38] *(*vera_layer_hscroll_l) = irq_vsync::vera_set_layer_horizontal_scroll1_$0
[39] irq_vsync::vera_set_layer_horizontal_scroll1_$1 = > irq_vsync::vera_set_layer_horizontal_scroll1_scroll#0
[40] *(*vera_layer_hscroll_h) = irq_vsync::vera_set_layer_horizontal_scroll1_$1
to:irq_vsync::@9
irq_vsync::@9: scope:[irq_vsync] from irq_vsync::vera_set_layer_horizontal_scroll1
[41] irq_vsync::vera_set_layer_vertical_scroll1_scroll#0 = (word)scroll_y
to:irq_vsync::vera_set_layer_vertical_scroll1
irq_vsync::vera_set_layer_vertical_scroll1: scope:[irq_vsync] from irq_vsync::@9
[42] irq_vsync::vera_set_layer_vertical_scroll1_$0 = < irq_vsync::vera_set_layer_vertical_scroll1_scroll#0
[43] *(*vera_layer_vscroll_l) = irq_vsync::vera_set_layer_vertical_scroll1_$0
[44] irq_vsync::vera_set_layer_vertical_scroll1_$1 = > irq_vsync::vera_set_layer_vertical_scroll1_scroll#0
[45] *(*vera_layer_vscroll_h) = irq_vsync::vera_set_layer_vertical_scroll1_$1
to:irq_vsync::@10
irq_vsync::@10: scope:[irq_vsync] from irq_vsync::vera_set_layer_vertical_scroll1
[46] *VERA_ISR = VERA_VSYNC
to:irq_vsync::@return
irq_vsync::@return: scope:[irq_vsync] from irq_vsync::@10
[47] return
to:@return
void conio_x16_init()
conio_x16_init: scope:[conio_x16_init] from __start::__init1
[48] conio_x16_init::line#0 = *conio_x16_init::BASIC_CURSOR_LINE
[49] call screensize
to:conio_x16_init::@3
conio_x16_init::@3: scope:[conio_x16_init] from conio_x16_init
[50] phi()
[51] call screenlayer
to:conio_x16_init::@4
conio_x16_init::@4: scope:[conio_x16_init] from conio_x16_init::@3
[52] phi()
[53] call vera_set_layer_textcolor
to:conio_x16_init::@5
conio_x16_init::@5: scope:[conio_x16_init] from conio_x16_init::@4
[54] phi()
[55] call vera_set_layer_backcolor
to:conio_x16_init::@6
conio_x16_init::@6: scope:[conio_x16_init] from conio_x16_init::@5
[56] phi()
[57] call vera_set_layer_mapbase
to:conio_x16_init::@7
conio_x16_init::@7: scope:[conio_x16_init] from conio_x16_init::@6
[58] phi()
[59] call vera_set_layer_mapbase
to:conio_x16_init::@8
conio_x16_init::@8: scope:[conio_x16_init] from conio_x16_init::@7
[60] if(conio_x16_init::line#0<conio_screen_height) goto conio_x16_init::@1
to:conio_x16_init::@2
conio_x16_init::@2: scope:[conio_x16_init] from conio_x16_init::@8
[61] conio_x16_init::line#1 = conio_screen_height - 1
to:conio_x16_init::@1
conio_x16_init::@1: scope:[conio_x16_init] from conio_x16_init::@2 conio_x16_init::@8
[62] conio_x16_init::line#3 = phi( conio_x16_init::@2/conio_x16_init::line#1, conio_x16_init::@8/conio_x16_init::line#0 )
[63] gotoxy::y#0 = conio_x16_init::line#3
[64] call gotoxy
to:conio_x16_init::@return
conio_x16_init::@return: scope:[conio_x16_init] from conio_x16_init::@1
[65] return
to:@return
void main()
main: scope:[main] from __start::@1
[66] phi()
to:main::textcolor1
main::textcolor1: scope:[main] from main
[67] vera_set_layer_textcolor::layer#2 = conio_screen_layer
[68] call vera_set_layer_textcolor
to:main::bgcolor1
main::bgcolor1: scope:[main] from main::textcolor1
[69] vera_set_layer_backcolor::layer#2 = conio_screen_layer
[70] call vera_set_layer_backcolor
to:main::@4
main::@4: scope:[main] from main::bgcolor1
[71] phi()
[72] call clrscr
to:main::@14
main::@14: scope:[main] from main::@4
[73] phi()
[74] call vera_set_layer_mapbase
to:main::@15
main::@15: scope:[main] from main::@14
[75] phi()
[76] call vera_get_layer_config
[77] vera_get_layer_config::return#2 = vera_get_layer_config::return#0
to:main::@16
main::@16: scope:[main] from main::@15
[78] vera_set_layer_config::config#0 = vera_get_layer_config::return#2
[79] call vera_set_layer_config
to:main::@17
main::@17: scope:[main] from main::@16
[80] phi()
[81] call vera_get_layer_tilebase
[82] vera_get_layer_tilebase::return#2 = vera_get_layer_tilebase::return#0
to:main::@18
main::@18: scope:[main] from main::@17
[83] vera_set_layer_tilebase::tilebase#0 = vera_get_layer_tilebase::return#2
[84] call vera_set_layer_tilebase
to:main::vera_set_layer_map_width_1281
main::vera_set_layer_map_width_1281: scope:[main] from main::@18
[85] main::vera_set_layer_map_width_1281_addr#0 = *vera_layer_config
[86] *main::vera_set_layer_map_width_1281_addr#0 = *main::vera_set_layer_map_width_1281_addr#0 & ~VERA_CONFIG_WIDTH_MASK
[87] *main::vera_set_layer_map_width_1281_addr#0 = *main::vera_set_layer_map_width_1281_addr#0 | VERA_CONFIG_WIDTH_128
to:main::vera_set_layer_map_height_1281
main::vera_set_layer_map_height_1281: scope:[main] from main::vera_set_layer_map_width_1281
[88] main::vera_set_layer_map_height_1281_addr#0 = *vera_layer_config
[89] *main::vera_set_layer_map_height_1281_addr#0 = *main::vera_set_layer_map_height_1281_addr#0 & ~VERA_CONFIG_HEIGHT_MASK
[90] *main::vera_set_layer_map_height_1281_addr#0 = *main::vera_set_layer_map_height_1281_addr#0 | VERA_CONFIG_HEIGHT_128
to:main::@5
main::@5: scope:[main] from main::vera_set_layer_map_height_1281
[91] phi()
[92] call vera_get_layer_tilebase_address
[93] vera_get_layer_tilebase_address::return#2 = vera_get_layer_tilebase_address::return#0
to:main::@19
main::@19: scope:[main] from main::@5
[94] main::tilebase#0 = vera_get_layer_tilebase_address::return#2
[95] call screenlayer
to:main::@20
main::@20: scope:[main] from main::@19
[96] phi()
[97] call scroll
to:main::textcolor2
main::textcolor2: scope:[main] from main::@20
[98] vera_set_layer_textcolor::layer#3 = conio_screen_layer
[99] call vera_set_layer_textcolor
to:main::bgcolor2
main::bgcolor2: scope:[main] from main::textcolor2
[100] vera_set_layer_backcolor::layer#3 = conio_screen_layer
[101] call vera_set_layer_backcolor
to:main::@6
main::@6: scope:[main] from main::bgcolor2
[102] draw_characters::tilebase#0 = main::tilebase#0
[103] call draw_characters
to:main::SEI1
main::SEI1: scope:[main] from main::@6
asm { sei }
to:main::@7
main::@7: scope:[main] from main::SEI1
[105] *KERNEL_IRQ = &irq_vsync
[106] *VERA_IEN = VERA_VSYNC
to:main::CLI1
main::CLI1: scope:[main] from main::@7
asm { cli }
to:main::vera_show_layer1
main::vera_show_layer1: scope:[main] from main::CLI1
[108] *VERA_DC_VIDEO = *VERA_DC_VIDEO | *vera_layer_enable
to:main::@1
main::@1: scope:[main] from main::@21 main::vera_show_layer1
[109] phi()
[110] call kbhit
[111] kbhit::return#2 = kbhit::return#1
to:main::@21
main::@21: scope:[main] from main::@1
[112] main::$45 = kbhit::return#2
[113] if(0==main::$45) goto main::@1
to:main::vera_hide_layer1
main::vera_hide_layer1: scope:[main] from main::@21
[114] main::vera_hide_layer1_$0 = ~ *vera_layer_enable
[115] *VERA_DC_VIDEO = *VERA_DC_VIDEO & main::vera_hide_layer1_$0
to:main::textcolor3
main::textcolor3: scope:[main] from main::vera_hide_layer1
[116] vera_set_layer_textcolor::layer#4 = conio_screen_layer
[117] call vera_set_layer_textcolor
to:main::bgcolor3
main::bgcolor3: scope:[main] from main::textcolor3
[118] vera_set_layer_backcolor::layer#4 = conio_screen_layer
[119] call vera_set_layer_backcolor
to:main::@8
main::@8: scope:[main] from main::bgcolor3
[120] draw_characters::tilebase#1 = main::tilebase#0
[121] call draw_characters
to:main::vera_show_layer2
main::vera_show_layer2: scope:[main] from main::@8
[122] *VERA_DC_VIDEO = *VERA_DC_VIDEO | *vera_layer_enable
to:main::@9
main::@9: scope:[main] from main::vera_show_layer2
[123] phi()
[124] call screenlayer
to:main::textcolor4
main::textcolor4: scope:[main] from main::@9
[125] vera_set_layer_textcolor::layer#5 = conio_screen_layer
[126] call vera_set_layer_textcolor
to:main::bgcolor4
main::bgcolor4: scope:[main] from main::textcolor4
[127] vera_set_layer_backcolor::layer#5 = conio_screen_layer
[128] call vera_set_layer_backcolor
to:main::@10
main::@10: scope:[main] from main::bgcolor4
[129] phi()
[130] call cputs
to:main::@22
main::@22: scope:[main] from main::@10
[131] phi()
[132] call cputs
to:main::@23
main::@23: scope:[main] from main::@22
[133] phi()
[134] call cputs
to:main::@24
main::@24: scope:[main] from main::@23
[135] phi()
[136] call cputs
to:main::@25
main::@25: scope:[main] from main::@24
[137] phi()
[138] call cputs
to:main::@26
main::@26: scope:[main] from main::@25
[139] phi()
[140] call cputs
to:main::@27
main::@27: scope:[main] from main::@26
[141] phi()
[142] call cputs
to:main::@28
main::@28: scope:[main] from main::@27
[143] phi()
[144] call cputs
to:main::textcolor5
main::textcolor5: scope:[main] from main::@28
[145] vera_set_layer_textcolor::layer#6 = conio_screen_layer
[146] call vera_set_layer_textcolor
to:main::@11
main::@11: scope:[main] from main::textcolor5
[147] phi()
[148] call cputs
to:main::@2
main::@2: scope:[main] from main::@11 main::@29
[149] phi()
[150] call kbhit
[151] kbhit::return#3 = kbhit::return#1
to:main::@29
main::@29: scope:[main] from main::@2
[152] main::$47 = kbhit::return#3
[153] if(0==main::$47) goto main::@2
to:main::@3
main::@3: scope:[main] from main::@29
[154] phi()
[155] call screenlayer
to:main::vera_hide_layer2
main::vera_hide_layer2: scope:[main] from main::@3
[156] main::vera_hide_layer2_$0 = ~ *vera_layer_enable
[157] *VERA_DC_VIDEO = *VERA_DC_VIDEO & main::vera_hide_layer2_$0
to:main::textcolor6
main::textcolor6: scope:[main] from main::vera_hide_layer2
[158] vera_set_layer_textcolor::layer#7 = conio_screen_layer
[159] call vera_set_layer_textcolor
to:main::bgcolor5
main::bgcolor5: scope:[main] from main::textcolor6
[160] vera_set_layer_backcolor::layer#6 = conio_screen_layer
[161] call vera_set_layer_backcolor
to:main::@12
main::@12: scope:[main] from main::bgcolor5
[162] draw_characters::tilebase#2 = main::tilebase#0
[163] call draw_characters
to:main::vera_show_layer3
main::vera_show_layer3: scope:[main] from main::@12
[164] *VERA_DC_VIDEO = *VERA_DC_VIDEO | *vera_layer_enable
to:main::@13
main::@13: scope:[main] from main::vera_show_layer3
[165] phi()
[166] call screenlayer
to:main::@30
main::@30: scope:[main] from main::@13
[167] phi()
[168] call gotoxy
to:main::@return
main::@return: scope:[main] from main::@30
[169] return
to:@return
void screensize(byte* screensize::x , byte* screensize::y)
screensize: scope:[screensize] from conio_x16_init
[170] screensize::hscale#0 = *VERA_DC_HSCALE >> 7
[171] screensize::$1 = $28 << screensize::hscale#0
[172] *screensize::x#0 = screensize::$1
[173] screensize::vscale#0 = *VERA_DC_VSCALE >> 7
[174] screensize::$3 = $1e << screensize::vscale#0
[175] *screensize::y#0 = screensize::$3
to:screensize::@return
screensize::@return: scope:[screensize] from screensize
[176] return
to:@return
void screenlayer(byte screenlayer::layer)
screenlayer: scope:[screenlayer] from conio_x16_init::@3 main::@13 main::@19 main::@3 main::@9
[177] screenlayer::layer#6 = phi( conio_x16_init::@3/1, main::@9/1, main::@13/1, main::@19/0, main::@3/0 )
[178] screenlayer::layer#1 = screenlayer::layer#6 & 1
[179] conio_screen_layer = screenlayer::layer#1
[180] vera_get_layer_mapbase::layer#0 = screenlayer::layer#1
[181] call vera_get_layer_mapbase
[182] vera_get_layer_mapbase::return#0 = vera_get_layer_mapbase::return#1
to:screenlayer::@1
screenlayer::@1: scope:[screenlayer] from screenlayer
[183] screenlayer::addr#0 = vera_get_layer_mapbase::return#0
[184] screenlayer::addr_i#0 = screenlayer::addr#0 << 1
[185] CONIO_SCREEN_BANK#17 = > screenlayer::addr_i#0
[186] CONIO_SCREEN_TEXT#19 = screenlayer::addr_i#0 << 8
[187] vera_get_layer_map_width::layer#0 = conio_screen_layer
[188] call vera_get_layer_map_width
[189] vera_get_layer_map_width::return#0 = vera_get_layer_map_width::return#1
to:screenlayer::@2
screenlayer::@2: scope:[screenlayer] from screenlayer::@1
[190] screenlayer::$4 = vera_get_layer_map_width::return#0
[191] conio_width = screenlayer::$4
[192] screenlayer::$5 = conio_width >> 4
[193] conio_skip = (byte)screenlayer::$5
[194] vera_get_layer_map_height::layer#0 = conio_screen_layer
[195] call vera_get_layer_map_height
[196] vera_get_layer_map_height::return#0 = vera_get_layer_map_height::return#1
to:screenlayer::@3
screenlayer::@3: scope:[screenlayer] from screenlayer::@2
[197] screenlayer::$6 = vera_get_layer_map_height::return#0
[198] conio_height = screenlayer::$6
to:screenlayer::@return
screenlayer::@return: scope:[screenlayer] from screenlayer::@3
[199] return
to:@return
byte vera_set_layer_textcolor(byte vera_set_layer_textcolor::layer , byte vera_set_layer_textcolor::color)
vera_set_layer_textcolor: scope:[vera_set_layer_textcolor] from conio_x16_init::@4 main::textcolor1 main::textcolor2 main::textcolor3 main::textcolor4 main::textcolor5 main::textcolor6
[200] vera_set_layer_textcolor::color#7 = phi( conio_x16_init::@4/WHITE, main::textcolor1/WHITE, main::textcolor2/WHITE, main::textcolor3/GREY, main::textcolor4/WHITE, main::textcolor5/YELLOW, main::textcolor6/DARK_GREY )
[200] vera_set_layer_textcolor::layer#8 = phi( conio_x16_init::@4/1, main::textcolor1/vera_set_layer_textcolor::layer#2, main::textcolor2/vera_set_layer_textcolor::layer#3, main::textcolor3/vera_set_layer_textcolor::layer#4, main::textcolor4/vera_set_layer_textcolor::layer#5, main::textcolor5/vera_set_layer_textcolor::layer#6, main::textcolor6/vera_set_layer_textcolor::layer#7 )
[201] vera_set_layer_textcolor::layer#1 = vera_set_layer_textcolor::layer#8 & 1
[202] vera_layer_textcolor[vera_set_layer_textcolor::layer#1] = vera_set_layer_textcolor::color#7
to:vera_set_layer_textcolor::@return
vera_set_layer_textcolor::@return: scope:[vera_set_layer_textcolor] from vera_set_layer_textcolor
[203] return
to:@return
byte vera_set_layer_backcolor(byte vera_set_layer_backcolor::layer , byte vera_set_layer_backcolor::color)
vera_set_layer_backcolor: scope:[vera_set_layer_backcolor] from conio_x16_init::@5 main::bgcolor1 main::bgcolor2 main::bgcolor3 main::bgcolor4 main::bgcolor5
[204] vera_set_layer_backcolor::color#6 = phi( conio_x16_init::@5/BLUE, main::bgcolor1/BLACK, main::bgcolor2/GREEN, main::bgcolor3/GREEN, main::bgcolor4/BLACK, main::bgcolor5/BLACK )
[204] vera_set_layer_backcolor::layer#7 = phi( conio_x16_init::@5/1, main::bgcolor1/vera_set_layer_backcolor::layer#2, main::bgcolor2/vera_set_layer_backcolor::layer#3, main::bgcolor3/vera_set_layer_backcolor::layer#4, main::bgcolor4/vera_set_layer_backcolor::layer#5, main::bgcolor5/vera_set_layer_backcolor::layer#6 )
[205] vera_set_layer_backcolor::layer#1 = vera_set_layer_backcolor::layer#7 & 1
[206] vera_layer_backcolor[vera_set_layer_backcolor::layer#1] = vera_set_layer_backcolor::color#6
to:vera_set_layer_backcolor::@return
vera_set_layer_backcolor::@return: scope:[vera_set_layer_backcolor] from vera_set_layer_backcolor
[207] return
to:@return
void vera_set_layer_mapbase(byte vera_set_layer_mapbase::layer , byte vera_set_layer_mapbase::mapbase)
vera_set_layer_mapbase: scope:[vera_set_layer_mapbase] from conio_x16_init::@6 conio_x16_init::@7 main::@14
[208] vera_set_layer_mapbase::mapbase#3 = phi( conio_x16_init::@6/$20, conio_x16_init::@7/0, main::@14/$80 )
[208] vera_set_layer_mapbase::layer#4 = phi( conio_x16_init::@6/0, conio_x16_init::@7/1, main::@14/0 )
[209] vera_set_layer_mapbase::layer#2 = vera_set_layer_mapbase::layer#4 & 1
[210] vera_set_layer_mapbase::$0 = vera_set_layer_mapbase::layer#2 << 1
[211] vera_set_layer_mapbase::addr#0 = vera_layer_mapbase[vera_set_layer_mapbase::$0]
[212] *vera_set_layer_mapbase::addr#0 = vera_set_layer_mapbase::mapbase#3
to:vera_set_layer_mapbase::@return
vera_set_layer_mapbase::@return: scope:[vera_set_layer_mapbase] from vera_set_layer_mapbase
[213] return
to:@return
void gotoxy(byte gotoxy::x , byte gotoxy::y)
gotoxy: scope:[gotoxy] from conio_x16_init::@1 cscroll::@5 main::@30
[214] gotoxy::y#4 = phi( conio_x16_init::@1/gotoxy::y#0, cscroll::@5/gotoxy::y#2, main::@30/$14 )
[215] if(gotoxy::y#4<=conio_screen_height) goto gotoxy::@4
to:gotoxy::@1
gotoxy::@4: scope:[gotoxy] from gotoxy
[216] phi()
to:gotoxy::@1
gotoxy::@1: scope:[gotoxy] from gotoxy gotoxy::@4
[217] gotoxy::y#5 = phi( gotoxy::@4/gotoxy::y#4, gotoxy/0 )
[218] if(0<conio_screen_width) goto gotoxy::@2
to:gotoxy::@3
gotoxy::@3: scope:[gotoxy] from gotoxy::@1
[219] phi()
to:gotoxy::@2
gotoxy::@2: scope:[gotoxy] from gotoxy::@1 gotoxy::@3
[220] conio_cursor_x[conio_screen_layer] = 0
[221] conio_cursor_y[conio_screen_layer] = gotoxy::y#5
[222] gotoxy::$6 = (word)gotoxy::y#5
[223] gotoxy::line_offset#0 = gotoxy::$6 << conio_skip
[224] gotoxy::$5 = conio_screen_layer << 1
[225] conio_line_text[gotoxy::$5] = gotoxy::line_offset#0
to:gotoxy::@return
gotoxy::@return: scope:[gotoxy] from gotoxy::@2
[226] return
to:@return
void clrscr()
clrscr: scope:[clrscr] from draw_characters main::@4
[227] clrscr::line_text#0 = (byte*)CONIO_SCREEN_TEXT#19
[228] clrscr::skip#0 = 1 << conio_skip
[229] vera_get_layer_backcolor::layer#0 = conio_screen_layer
[230] call vera_get_layer_backcolor
[231] vera_get_layer_backcolor::return#0 = vera_get_layer_backcolor::return#1
to:clrscr::@7
clrscr::@7: scope:[clrscr] from clrscr
[232] clrscr::$1 = vera_get_layer_backcolor::return#0
[233] clrscr::$2 = clrscr::$1 << 4
[234] vera_get_layer_textcolor::layer#0 = conio_screen_layer
[235] call vera_get_layer_textcolor
[236] vera_get_layer_textcolor::return#0 = vera_get_layer_textcolor::return#1
to:clrscr::@8
clrscr::@8: scope:[clrscr] from clrscr::@7
[237] clrscr::$3 = vera_get_layer_textcolor::return#0
[238] clrscr::color#0 = clrscr::$2 | clrscr::$3
to:clrscr::@1
clrscr::@1: scope:[clrscr] from clrscr::@6 clrscr::@8
[239] clrscr::line_text#2 = phi( clrscr::@6/clrscr::line_text#1, clrscr::@8/clrscr::line_text#0 )
[239] clrscr::l#2 = phi( clrscr::@6/clrscr::l#1, clrscr::@8/0 )
[240] if(clrscr::l#2<conio_height) goto clrscr::@2
to:clrscr::@3
clrscr::@3: scope:[clrscr] from clrscr::@1
[241] conio_cursor_x[conio_screen_layer] = 0
[242] conio_cursor_y[conio_screen_layer] = 0
[243] clrscr::$10 = conio_screen_layer << 1
[244] conio_line_text[clrscr::$10] = 0
to:clrscr::@return
clrscr::@return: scope:[clrscr] from clrscr::@3
[245] return
to:@return
clrscr::@2: scope:[clrscr] from clrscr::@1
[246] *VERA_CTRL = *VERA_CTRL & ~VERA_ADDRSEL
[247] clrscr::$6 = < clrscr::line_text#2
[248] *VERA_ADDRX_L = clrscr::$6
[249] clrscr::$7 = > clrscr::line_text#2
[250] *VERA_ADDRX_M = clrscr::$7
[251] clrscr::$8 = CONIO_SCREEN_BANK#17 | VERA_INC_1
[252] *VERA_ADDRX_H = clrscr::$8
to:clrscr::@4
clrscr::@4: scope:[clrscr] from clrscr::@2 clrscr::@5
[253] clrscr::c#2 = phi( clrscr::@2/0, clrscr::@5/clrscr::c#1 )
[254] if(clrscr::c#2<conio_width) goto clrscr::@5
to:clrscr::@6
clrscr::@6: scope:[clrscr] from clrscr::@4
[255] clrscr::line_text#1 = clrscr::line_text#2 + clrscr::skip#0
[256] clrscr::l#1 = ++ clrscr::l#2
to:clrscr::@1
clrscr::@5: scope:[clrscr] from clrscr::@4
[257] *VERA_DATA0 = ' '
[258] *VERA_DATA0 = clrscr::color#0
[259] clrscr::c#1 = ++ clrscr::c#2
to:clrscr::@4
byte vera_get_layer_config(byte vera_get_layer_config::layer)
vera_get_layer_config: scope:[vera_get_layer_config] from main::@15
[260] vera_get_layer_config::config#0 = *(vera_layer_config+1&1*SIZEOF_POINTER)
[261] vera_get_layer_config::return#0 = *vera_get_layer_config::config#0
to:vera_get_layer_config::@return
vera_get_layer_config::@return: scope:[vera_get_layer_config] from vera_get_layer_config
[262] return
to:@return
void vera_set_layer_config(byte vera_set_layer_config::layer , byte vera_set_layer_config::config)
vera_set_layer_config: scope:[vera_set_layer_config] from main::@16
[263] vera_set_layer_config::addr#0 = *vera_layer_config
[264] *vera_set_layer_config::addr#0 = vera_set_layer_config::config#0
to:vera_set_layer_config::@return
vera_set_layer_config::@return: scope:[vera_set_layer_config] from vera_set_layer_config
[265] return
to:@return
byte vera_get_layer_tilebase(byte vera_get_layer_tilebase::layer)
vera_get_layer_tilebase: scope:[vera_get_layer_tilebase] from main::@17
[266] vera_get_layer_tilebase::tilebase#0 = *(vera_layer_tilebase+1&1*SIZEOF_POINTER)
[267] vera_get_layer_tilebase::return#0 = *vera_get_layer_tilebase::tilebase#0
to:vera_get_layer_tilebase::@return
vera_get_layer_tilebase::@return: scope:[vera_get_layer_tilebase] from vera_get_layer_tilebase
[268] return
to:@return
void vera_set_layer_tilebase(byte vera_set_layer_tilebase::layer , byte vera_set_layer_tilebase::tilebase)
vera_set_layer_tilebase: scope:[vera_set_layer_tilebase] from main::@18
[269] vera_set_layer_tilebase::addr#0 = *vera_layer_tilebase
[270] *vera_set_layer_tilebase::addr#0 = vera_set_layer_tilebase::tilebase#0
to:vera_set_layer_tilebase::@return
vera_set_layer_tilebase::@return: scope:[vera_set_layer_tilebase] from vera_set_layer_tilebase
[271] return
to:@return
dword vera_get_layer_tilebase_address(byte vera_get_layer_tilebase_address::layer)
vera_get_layer_tilebase_address: scope:[vera_get_layer_tilebase_address] from main::@5
[272] vera_get_layer_tilebase_address::tilebase#0 = *(*vera_layer_tilebase)
[273] vera_get_layer_tilebase_address::address#0 = (dword)vera_get_layer_tilebase_address::tilebase#0
[274] vera_get_layer_tilebase_address::address#1 = vera_get_layer_tilebase_address::address#0 & $fc
[275] vera_get_layer_tilebase_address::address#2 = vera_get_layer_tilebase_address::address#1 << 8
[276] vera_get_layer_tilebase_address::return#0 = vera_get_layer_tilebase_address::address#2 << 1
to:vera_get_layer_tilebase_address::@return
vera_get_layer_tilebase_address::@return: scope:[vera_get_layer_tilebase_address] from vera_get_layer_tilebase_address
[277] return
to:@return
byte scroll(byte scroll::onoff)
scroll: scope:[scroll] from main::@20
[278] conio_scroll_enable[conio_screen_layer] = scroll::onoff#0
to:scroll::@return
scroll::@return: scope:[scroll] from scroll
[279] return
to:@return
void draw_characters(dword draw_characters::tilebase)
draw_characters: scope:[draw_characters] from main::@12 main::@6 main::@8
[280] draw_characters::tilebase#4 = phi( main::@6/draw_characters::tilebase#0, main::@8/draw_characters::tilebase#1, main::@12/draw_characters::tilebase#2 )
[281] call clrscr
to:draw_characters::@1
draw_characters::@1: scope:[draw_characters] from draw_characters draw_characters::@9
[282] draw_characters::y#13 = phi( draw_characters::@9/draw_characters::y#1, draw_characters/0 )
[282] draw_characters::tilerow#1 = phi( draw_characters::@9/draw_characters::tilebase#3, draw_characters/draw_characters::tilebase#4 )
[283] draw_characters::tilecolumn#11 = draw_characters::tilerow#1
to:draw_characters::@2
draw_characters::@2: scope:[draw_characters] from draw_characters::@1 draw_characters::@8
[284] draw_characters::r#11 = phi( draw_characters::@1/0, draw_characters::@8/draw_characters::r#1 )
[284] draw_characters::tilecolumn#1 = phi( draw_characters::@1/draw_characters::tilecolumn#11, draw_characters::@8/draw_characters::tilerow#2 )
[285] draw_characters::tilecolumn#13 = draw_characters::tilecolumn#1
to:draw_characters::@3
draw_characters::@3: scope:[draw_characters] from draw_characters::@2 draw_characters::@7
[286] draw_characters::x#8 = phi( draw_characters::@2/0, draw_characters::@7/draw_characters::x#1 )
[286] draw_characters::tilecolumn#10 = phi( draw_characters::@2/draw_characters::tilecolumn#13, draw_characters::@7/draw_characters::tilecolumn#2 )
[287] vera_vram_address0::bankaddr#0 = draw_characters::tilecolumn#10
[288] call vera_vram_address0
to:draw_characters::@10
draw_characters::@10: scope:[draw_characters] from draw_characters::@3
[289] draw_characters::bit#0 = *VERA_DATA0
to:draw_characters::@4
draw_characters::@4: scope:[draw_characters] from draw_characters::@10 draw_characters::@11
[290] draw_characters::b#2 = phi( draw_characters::@10/8, draw_characters::@11/draw_characters::b#1 )
[291] draw_characters::$2 = draw_characters::b#2 - 1
[292] draw_characters::$3 = draw_characters::bit#0 >> draw_characters::$2
[293] draw_characters::bit#1 = draw_characters::$3 & 1
[294] if(0!=draw_characters::bit#1) goto draw_characters::@5
to:draw_characters::@6
draw_characters::@5: scope:[draw_characters] from draw_characters::@4
[295] phi()
to:draw_characters::@6
draw_characters::@6: scope:[draw_characters] from draw_characters::@4 draw_characters::@5
[296] cputc::c#1 = phi( draw_characters::@5/'*', draw_characters::@4/'.' )
[297] call cputc
to:draw_characters::@11
draw_characters::@11: scope:[draw_characters] from draw_characters::@6
[298] draw_characters::b#1 = -- draw_characters::b#2
[299] if(draw_characters::b#1!=0) goto draw_characters::@4
to:draw_characters::@7
draw_characters::@7: scope:[draw_characters] from draw_characters::@11
[300] draw_characters::tilecolumn#2 = draw_characters::tilecolumn#10 + 8
[301] draw_characters::x#1 = ++ draw_characters::x#8
[302] if(draw_characters::x#1!=$10) goto draw_characters::@3
to:draw_characters::@8
draw_characters::@8: scope:[draw_characters] from draw_characters::@7
[303] draw_characters::tilerow#2 = draw_characters::tilecolumn#1 + 1
[304] draw_characters::r#1 = ++ draw_characters::r#11
[305] if(draw_characters::r#1!=8) goto draw_characters::@2
to:draw_characters::@9
draw_characters::@9: scope:[draw_characters] from draw_characters::@8
[306] draw_characters::tilebase#3 = draw_characters::tilerow#1 + 8*$10
[307] draw_characters::y#1 = ++ draw_characters::y#13
[308] if(draw_characters::y#1!=$10) goto draw_characters::@1
to:draw_characters::@return
draw_characters::@return: scope:[draw_characters] from draw_characters::@9
[309] return
to:@return
byte kbhit()
kbhit: scope:[kbhit] from main::@1 main::@2
[310] kbhit::ch = 0
kickasm( uses kbhit::chptr uses kbhit::IN_DEV uses kbhit::GETIN) {{ jsr _kbhit
bne L3
jmp continue1
.var via1 = $9f60 //VIA#1
.var d1pra = via1+1
_kbhit:
ldy d1pra // The count of keys pressed is stored in RAM bank 0.
stz d1pra // Set d1pra to zero to access RAM bank 0.
lda $A00A // Get number of characters from this address in the ROM of the CX16 (ROM 38).
sty d1pra // Set d1pra to previous value.
rts
L3:
ldy IN_DEV // Save current input device
stz IN_DEV // Keyboard
phy
jsr GETIN // Read char, and return in .A
ply
sta chptr // Store the character read in ch
sty IN_DEV // Restore input device
ldx #>$0000
rts
continue1:
nop
}}
[312] kbhit::return#0 = kbhit::ch
to:kbhit::@return
kbhit::@return: scope:[kbhit] from kbhit
[313] kbhit::return#1 = kbhit::return#0
[314] return
to:@return
void cputs(to_nomodify byte* cputs::s)
cputs: scope:[cputs] from main::@10 main::@11 main::@22 main::@23 main::@24 main::@25 main::@26 main::@27 main::@28
[315] cputs::s#11 = phi( main::@10/main::s, main::@11/main::s8, main::@22/main::s1, main::@23/main::s2, main::@24/main::s3, main::@25/main::s4, main::@26/main::s5, main::@27/main::s6, main::@28/main::s7 )
to:cputs::@1
cputs::@1: scope:[cputs] from cputs cputs::@2
[316] cputs::s#10 = phi( cputs/cputs::s#11, cputs::@2/cputs::s#0 )
[317] cputs::c#1 = *cputs::s#10
[318] cputs::s#0 = ++ cputs::s#10
[319] if(0!=cputs::c#1) goto cputs::@2
to:cputs::@return
cputs::@return: scope:[cputs] from cputs::@1
[320] return
to:@return
cputs::@2: scope:[cputs] from cputs::@1
[321] cputc::c#0 = cputs::c#1
[322] call cputc
to:cputs::@1
byte vera_get_layer_mapbase(byte vera_get_layer_mapbase::layer)
vera_get_layer_mapbase: scope:[vera_get_layer_mapbase] from screenlayer
[323] vera_get_layer_mapbase::layer#1 = vera_get_layer_mapbase::layer#0 & 1
[324] vera_get_layer_mapbase::$0 = vera_get_layer_mapbase::layer#1 << 1
[325] vera_get_layer_mapbase::mapbase#0 = vera_layer_mapbase[vera_get_layer_mapbase::$0]
[326] vera_get_layer_mapbase::return#1 = *vera_get_layer_mapbase::mapbase#0
to:vera_get_layer_mapbase::@return
vera_get_layer_mapbase::@return: scope:[vera_get_layer_mapbase] from vera_get_layer_mapbase
[327] return
to:@return
word vera_get_layer_map_width(byte vera_get_layer_map_width::layer)
vera_get_layer_map_width: scope:[vera_get_layer_map_width] from screenlayer::@1
[328] vera_get_layer_map_width::$2 = vera_get_layer_map_width::layer#0 << 1
[329] vera_get_layer_map_width::config#0 = vera_layer_config[vera_get_layer_map_width::$2]
[330] vera_get_layer_map_width::$0 = *vera_get_layer_map_width::config#0 & VERA_CONFIG_WIDTH_MASK
[331] vera_get_layer_map_width::$1 = vera_get_layer_map_width::$0 >> 4
[332] vera_get_layer_map_width::$3 = vera_get_layer_map_width::$1 << 1
[333] vera_get_layer_map_width::return#1 = VERA_CONFIG_WIDTH[vera_get_layer_map_width::$3]
to:vera_get_layer_map_width::@return
vera_get_layer_map_width::@return: scope:[vera_get_layer_map_width] from vera_get_layer_map_width
[334] return
to:@return
word vera_get_layer_map_height(byte vera_get_layer_map_height::layer)
vera_get_layer_map_height: scope:[vera_get_layer_map_height] from screenlayer::@2
[335] vera_get_layer_map_height::$2 = vera_get_layer_map_height::layer#0 << 1
[336] vera_get_layer_map_height::config#0 = vera_layer_config[vera_get_layer_map_height::$2]
[337] vera_get_layer_map_height::$0 = *vera_get_layer_map_height::config#0 & VERA_CONFIG_HEIGHT_MASK
[338] vera_get_layer_map_height::$1 = vera_get_layer_map_height::$0 >> 6
[339] vera_get_layer_map_height::$3 = vera_get_layer_map_height::$1 << 1
[340] vera_get_layer_map_height::return#1 = VERA_CONFIG_HEIGHT[vera_get_layer_map_height::$3]
to:vera_get_layer_map_height::@return
vera_get_layer_map_height::@return: scope:[vera_get_layer_map_height] from vera_get_layer_map_height
[341] return
to:@return
byte vera_get_layer_backcolor(byte vera_get_layer_backcolor::layer)
vera_get_layer_backcolor: scope:[vera_get_layer_backcolor] from clrscr
[342] vera_get_layer_backcolor::layer#1 = vera_get_layer_backcolor::layer#0 & 1
[343] vera_get_layer_backcolor::return#1 = vera_layer_backcolor[vera_get_layer_backcolor::layer#1]
to:vera_get_layer_backcolor::@return
vera_get_layer_backcolor::@return: scope:[vera_get_layer_backcolor] from vera_get_layer_backcolor
[344] return
to:@return
byte vera_get_layer_textcolor(byte vera_get_layer_textcolor::layer)
vera_get_layer_textcolor: scope:[vera_get_layer_textcolor] from clrscr::@7
[345] vera_get_layer_textcolor::layer#1 = vera_get_layer_textcolor::layer#0 & 1
[346] vera_get_layer_textcolor::return#1 = vera_layer_textcolor[vera_get_layer_textcolor::layer#1]
to:vera_get_layer_textcolor::@return
vera_get_layer_textcolor::@return: scope:[vera_get_layer_textcolor] from vera_get_layer_textcolor
[347] return
to:@return
void vera_vram_address0(dword vera_vram_address0::bankaddr , byte vera_vram_address0::incr)
vera_vram_address0: scope:[vera_vram_address0] from draw_characters::@3
[348] vera_vram_address0::$0 = < vera_vram_address0::bankaddr#0
[349] vera_vram_address0::$1 = > vera_vram_address0::bankaddr#0
[350] *VERA_CTRL = *VERA_CTRL & ~VERA_ADDRSEL
[351] vera_vram_address0::$2 = < *vera_vram_address0::word_l
[352] *VERA_ADDRX_L = vera_vram_address0::$2
[353] vera_vram_address0::$3 = > *vera_vram_address0::word_l
[354] *VERA_ADDRX_M = vera_vram_address0::$3
[355] vera_vram_address0::$5 = < *vera_vram_address0::word_h
[356] *VERA_ADDRX_H = vera_vram_address0::$5
to:vera_vram_address0::@return
vera_vram_address0::@return: scope:[vera_vram_address0] from vera_vram_address0
[357] return
to:@return
void cputc(byte cputc::c)
cputc: scope:[cputc] from cputs::@2 draw_characters::@6
[358] cputc::c#2 = phi( cputs::@2/cputc::c#0, draw_characters::@6/cputc::c#1 )
[359] vera_get_layer_color::layer#0 = conio_screen_layer
[360] call vera_get_layer_color
[361] vera_get_layer_color::return#0 = vera_get_layer_color::return#2
to:cputc::@7
cputc::@7: scope:[cputc] from cputc
[362] cputc::color#0 = vera_get_layer_color::return#0
[363] cputc::$15 = conio_screen_layer << 1
[364] cputc::conio_addr#0 = (byte*)CONIO_SCREEN_TEXT#19 + conio_line_text[cputc::$15]
[365] cputc::$2 = conio_cursor_x[conio_screen_layer] << 1
[366] cputc::conio_addr#1 = cputc::conio_addr#0 + cputc::$2
[367] if(cputc::c#2=='
') goto cputc::@1
to:cputc::@2
cputc::@2: scope:[cputc] from cputc::@7
[368] *VERA_CTRL = *VERA_CTRL & ~VERA_ADDRSEL
[369] cputc::$4 = < cputc::conio_addr#1
[370] *VERA_ADDRX_L = cputc::$4
[371] cputc::$5 = > cputc::conio_addr#1
[372] *VERA_ADDRX_M = cputc::$5
[373] cputc::$6 = CONIO_SCREEN_BANK#17 | VERA_INC_1
[374] *VERA_ADDRX_H = cputc::$6
[375] *VERA_DATA0 = cputc::c#2
[376] *VERA_DATA0 = cputc::color#0
[377] conio_cursor_x[conio_screen_layer] = ++ conio_cursor_x[conio_screen_layer]
[378] cputc::scroll_enable#0 = conio_scroll_enable[conio_screen_layer]
[379] if(0!=cputc::scroll_enable#0) goto cputc::@5
to:cputc::@3
cputc::@3: scope:[cputc] from cputc::@2
[380] cputc::$16 = (word)conio_cursor_x[conio_screen_layer]
[381] if(cputc::$16!=conio_width) goto cputc::@return
to:cputc::@4
cputc::@4: scope:[cputc] from cputc::@3
[382] phi()
[383] call cputln
to:cputc::@return
cputc::@return: scope:[cputc] from cputc::@1 cputc::@3 cputc::@4 cputc::@5 cputc::@6
[384] return
to:@return
cputc::@5: scope:[cputc] from cputc::@2
[385] if(conio_cursor_x[conio_screen_layer]!=conio_screen_width) goto cputc::@return
to:cputc::@6
cputc::@6: scope:[cputc] from cputc::@5
[386] phi()
[387] call cputln
to:cputc::@return
cputc::@1: scope:[cputc] from cputc::@7
[388] phi()
[389] call cputln
to:cputc::@return
byte vera_get_layer_color(byte vera_get_layer_color::layer)
vera_get_layer_color: scope:[vera_get_layer_color] from clearline cputc
[390] vera_get_layer_color::layer#3 = phi( clearline/vera_get_layer_color::layer#1, cputc/vera_get_layer_color::layer#0 )
[391] vera_get_layer_color::layer#2 = vera_get_layer_color::layer#3 & 1
[392] vera_get_layer_color::$0 = vera_layer_backcolor[vera_get_layer_color::layer#2] << 4
[393] vera_get_layer_color::return#2 = vera_get_layer_color::$0 | vera_layer_textcolor[vera_get_layer_color::layer#2]
to:vera_get_layer_color::@return
vera_get_layer_color::@return: scope:[vera_get_layer_color] from vera_get_layer_color
[394] return
to:@return
void cputln()
cputln: scope:[cputln] from cputc::@1 cputc::@4 cputc::@6
[395] cputln::$3 = conio_screen_layer << 1
[396] cputln::temp#0 = conio_line_text[cputln::$3]
[397] cputln::$5 = 1 << conio_skip
[398] cputln::temp#1 = cputln::temp#0 + cputln::$5
[399] cputln::$4 = conio_screen_layer << 1
[400] conio_line_text[cputln::$4] = cputln::temp#1
[401] conio_cursor_x[conio_screen_layer] = 0
[402] conio_cursor_y[conio_screen_layer] = ++ conio_cursor_y[conio_screen_layer]
[403] call cscroll
to:cputln::@return
cputln::@return: scope:[cputln] from cputln
[404] return
to:@return
void cscroll()
cscroll: scope:[cscroll] from cputln
[405] if(conio_cursor_y[conio_screen_layer]<conio_screen_height) goto cscroll::@return
to:cscroll::@1
cscroll::@1: scope:[cscroll] from cscroll
[406] if(0!=conio_scroll_enable[conio_screen_layer]) goto cscroll::@4
to:cscroll::@2
cscroll::@2: scope:[cscroll] from cscroll::@1
[407] if(conio_cursor_y[conio_screen_layer]<conio_height) goto cscroll::@return
to:cscroll::@3
cscroll::@3: scope:[cscroll] from cscroll::@2
[408] phi()
to:cscroll::@return
cscroll::@return: scope:[cscroll] from cscroll cscroll::@2 cscroll::@3 cscroll::@5
[409] return
to:@return
cscroll::@4: scope:[cscroll] from cscroll::@1
[410] phi()
[411] call insertup
to:cscroll::@5
cscroll::@5: scope:[cscroll] from cscroll::@4
[412] gotoxy::y#2 = conio_screen_height - 1
[413] call gotoxy
to:cscroll::@return
void insertup()
insertup: scope:[insertup] from cscroll::@4
[414] insertup::cy#0 = conio_cursor_y[conio_screen_layer]
[415] insertup::width#0 = conio_screen_width << 1
to:insertup::@1
insertup::@1: scope:[insertup] from insertup insertup::@4
[416] insertup::i#2 = phi( insertup/1, insertup::@4/insertup::i#1 )
[417] if(insertup::i#2<=insertup::cy#0) goto insertup::@2
to:insertup::@3
insertup::@3: scope:[insertup] from insertup::@1
[418] phi()
[419] call clearline
to:insertup::@return
insertup::@return: scope:[insertup] from insertup::@3
[420] return
to:@return
insertup::@2: scope:[insertup] from insertup::@1
[421] insertup::$3 = insertup::i#2 - 1
[422] insertup::line#0 = insertup::$3 << conio_skip
[423] insertup::start#0 = (byte*)CONIO_SCREEN_TEXT#19 + insertup::line#0
[424] insertup::$6 = 1 << conio_skip
[425] memcpy_in_vram::src#0 = insertup::start#0 + insertup::$6
[426] memcpy_in_vram::dest#0 = (void*)insertup::start#0
[427] memcpy_in_vram::num#0 = insertup::width#0
[428] call memcpy_in_vram
to:insertup::@4
insertup::@4: scope:[insertup] from insertup::@2
[429] insertup::i#1 = ++ insertup::i#2
to:insertup::@1
void clearline()
clearline: scope:[clearline] from insertup::@3
[430] *VERA_CTRL = *VERA_CTRL & ~VERA_ADDRSEL
[431] clearline::$5 = conio_screen_layer << 1
[432] clearline::addr#0 = (byte*)CONIO_SCREEN_TEXT#19 + conio_line_text[clearline::$5]
[433] clearline::$1 = < clearline::addr#0
[434] *VERA_ADDRX_L = clearline::$1
[435] clearline::$2 = > clearline::addr#0
[436] *VERA_ADDRX_M = clearline::$2
[437] *VERA_ADDRX_H = VERA_INC_1
[438] vera_get_layer_color::layer#1 = conio_screen_layer
[439] call vera_get_layer_color
[440] vera_get_layer_color::return#1 = vera_get_layer_color::return#2
to:clearline::@4
clearline::@4: scope:[clearline] from clearline
[441] clearline::color#0 = vera_get_layer_color::return#1
to:clearline::@1
clearline::@1: scope:[clearline] from clearline::@2 clearline::@4
[442] clearline::c#2 = phi( clearline::@2/clearline::c#1, clearline::@4/0 )
[443] if(clearline::c#2<conio_screen_width) goto clearline::@2
to:clearline::@3
clearline::@3: scope:[clearline] from clearline::@1
[444] conio_cursor_x[conio_screen_layer] = 0
to:clearline::@return
clearline::@return: scope:[clearline] from clearline::@3
[445] return
to:@return
clearline::@2: scope:[clearline] from clearline::@1
[446] *VERA_DATA0 = ' '
[447] *VERA_DATA0 = clearline::color#0
[448] clearline::c#1 = ++ clearline::c#2
to:clearline::@1
void memcpy_in_vram(byte memcpy_in_vram::dest_bank , void* memcpy_in_vram::dest , byte memcpy_in_vram::dest_increment , byte memcpy_in_vram::src_bank , void* memcpy_in_vram::src , byte memcpy_in_vram::src_increment , word memcpy_in_vram::num)
memcpy_in_vram: scope:[memcpy_in_vram] from insertup::@2
[449] *VERA_CTRL = *VERA_CTRL & ~VERA_ADDRSEL
[450] memcpy_in_vram::$0 = < (void*)memcpy_in_vram::src#0
[451] *VERA_ADDRX_L = memcpy_in_vram::$0
[452] memcpy_in_vram::$1 = > (void*)memcpy_in_vram::src#0
[453] *VERA_ADDRX_M = memcpy_in_vram::$1
[454] *VERA_ADDRX_H = VERA_INC_1
[455] *VERA_CTRL = *VERA_CTRL | VERA_ADDRSEL
[456] memcpy_in_vram::$3 = < memcpy_in_vram::dest#0
[457] *VERA_ADDRX_L = memcpy_in_vram::$3
[458] memcpy_in_vram::$4 = > memcpy_in_vram::dest#0
[459] *VERA_ADDRX_M = memcpy_in_vram::$4
[460] *VERA_ADDRX_H = VERA_INC_1
to:memcpy_in_vram::@1
memcpy_in_vram::@1: scope:[memcpy_in_vram] from memcpy_in_vram memcpy_in_vram::@2
[461] memcpy_in_vram::i#2 = phi( memcpy_in_vram/0, memcpy_in_vram::@2/memcpy_in_vram::i#1 )
[462] if(memcpy_in_vram::i#2<memcpy_in_vram::num#0) goto memcpy_in_vram::@2
to:memcpy_in_vram::@return
memcpy_in_vram::@return: scope:[memcpy_in_vram] from memcpy_in_vram::@1
[463] return
to:@return
memcpy_in_vram::@2: scope:[memcpy_in_vram] from memcpy_in_vram::@1
[464] *VERA_DATA1 = *VERA_DATA0
[465] memcpy_in_vram::i#1 = ++ memcpy_in_vram::i#2
to:memcpy_in_vram::@1

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,621 @@
const nomodify byte BLACK = 0
const nomodify byte BLUE = 6
byte CONIO_SCREEN_BANK
byte CONIO_SCREEN_BANK#17 CONIO_SCREEN_BANK zp[1]:53 50302.02512562814
byte* CONIO_SCREEN_TEXT
word CONIO_SCREEN_TEXT#19 CONIO_SCREEN_TEXT zp[2]:54 0.4007936507936508
const nomodify byte DARK_GREY = $b
const nomodify byte GREEN = 5
const nomodify byte GREY = $c
const nomodify void()** KERNEL_IRQ = (void()**) 788
const byte RADIX::BINARY = 2
const byte RADIX::DECIMAL = $a
const byte RADIX::HEXADECIMAL = $10
const byte RADIX::OCTAL = 8
const byte SIZEOF_POINTER = 2
const nomodify byte VERA_ADDRSEL = 1
const nomodify byte* VERA_ADDRX_H = (byte*) 40738
const nomodify byte* VERA_ADDRX_L = (byte*) 40736
const nomodify byte* VERA_ADDRX_M = (byte*) 40737
const to_nomodify word* VERA_CONFIG_HEIGHT[4] = { $20, $40, $80, $100 }
const nomodify byte VERA_CONFIG_HEIGHT_128 = $80
const nomodify byte VERA_CONFIG_HEIGHT_MASK = $c0
const to_nomodify word* VERA_CONFIG_WIDTH[4] = { $20, $40, $80, $100 }
const nomodify byte VERA_CONFIG_WIDTH_128 = $20
const nomodify byte VERA_CONFIG_WIDTH_MASK = $30
const nomodify byte* VERA_CTRL = (byte*) 40741
const nomodify byte* VERA_DATA0 = (byte*) 40739
const nomodify byte* VERA_DATA1 = (byte*) 40740
const nomodify byte* VERA_DC_HSCALE = (byte*) 40746
const nomodify byte* VERA_DC_VIDEO = (byte*) 40745
const nomodify byte* VERA_DC_VSCALE = (byte*) 40747
const nomodify byte* VERA_IEN = (byte*) 40742
const nomodify byte VERA_INC_1 = $10
const nomodify byte* VERA_ISR = (byte*) 40743
const nomodify byte* VERA_L0_CONFIG = (byte*) 40749
const nomodify byte* VERA_L0_HSCROLL_H = (byte*) 40753
const nomodify byte* VERA_L0_HSCROLL_L = (byte*) 40752
const nomodify byte* VERA_L0_MAPBASE = (byte*) 40750
const nomodify byte* VERA_L0_TILEBASE = (byte*) 40751
const nomodify byte* VERA_L0_VSCROLL_H = (byte*) 40755
const nomodify byte* VERA_L0_VSCROLL_L = (byte*) 40754
const nomodify byte* VERA_L1_CONFIG = (byte*) 40756
const nomodify byte* VERA_L1_HSCROLL_H = (byte*) 40760
const nomodify byte* VERA_L1_HSCROLL_L = (byte*) 40759
const nomodify byte* VERA_L1_MAPBASE = (byte*) 40757
const nomodify byte* VERA_L1_TILEBASE = (byte*) 40758
const nomodify byte* VERA_L1_VSCROLL_H = (byte*) 40762
const nomodify byte* VERA_L1_VSCROLL_L = (byte*) 40761
const nomodify byte VERA_LAYER0_ENABLE = $10
const nomodify byte VERA_LAYER1_ENABLE = $20
const nomodify byte VERA_VSYNC = 1
const nomodify byte WHITE = 1
const nomodify byte YELLOW = 7
void __start()
void clearline()
byte~ clearline::$1 reg byte a 2.00000000002E11
byte~ clearline::$2 reg byte a 2.00000000002E11
byte~ clearline::$5 reg byte a 2.00000000002E11
byte* clearline::addr
byte* clearline::addr#0 addr zp[2]:87 1.00000000001E11
word clearline::c
word clearline::c#1 c zp[2]:47 2.0E16
word clearline::c#2 c zp[2]:47 7.5E15
byte clearline::color
byte clearline::color#0 reg byte x 1.6666833333333335E15
void clrscr()
byte~ clrscr::$1 reg byte a 2002.0
byte~ clrscr::$10 reg byte a 2002.0
byte~ clrscr::$2 zp[1]:64 400.4
byte~ clrscr::$3 reg byte a 2002.0
byte~ clrscr::$6 reg byte a 20002.0
byte~ clrscr::$7 reg byte a 20002.0
byte~ clrscr::$8 reg byte a 20002.0
byte clrscr::c
byte clrscr::c#1 reg byte y 200002.0
byte clrscr::c#2 reg byte y 75000.75
byte* clrscr::ch
byte clrscr::color
byte clrscr::color#0 color zp[1]:64 5941.294117647059
byte clrscr::l
byte clrscr::l#1 reg byte x 20002.0
byte clrscr::l#2 reg byte x 2000.2
byte* clrscr::line_text
byte* clrscr::line_text#0 line_text zp[2]:45 166.83333333333334
byte* clrscr::line_text#1 line_text zp[2]:45 10001.0
byte* clrscr::line_text#2 line_text zp[2]:45 2928.9285714285716
word clrscr::skip
word clrscr::skip#0 skip zp[2]:73 407.48148148148147
const byte* conio_cursor_x[2] = { 0, 0 }
const byte* conio_cursor_y[2] = { 0, 0 }
word conio_height loadstore zp[2]:24 4878098.073170732
const word* conio_line_text[2] = { 0, 0 }
volatile byte conio_screen_height loadstore zp[1]:20 5.1282051397435896E7
byte conio_screen_layer loadstore zp[1]:21 1.2448188607028985E9
volatile byte conio_screen_width loadstore zp[1]:19 3.703711114814817E13
const byte* conio_scroll_enable[2] = { 1, 1 }
byte conio_skip loadstore zp[1]:26 8.298797095440282E12
word conio_width loadstore zp[2]:22 52332.67357512953
void conio_x16_init()
const nomodify byte* conio_x16_init::BASIC_CURSOR_LINE = (byte*) 214
byte conio_x16_init::line
byte conio_x16_init::line#0 line zp[1]:2 2.5384615384615383
byte conio_x16_init::line#1 line zp[1]:2 22.0
byte conio_x16_init::line#3 line zp[1]:2 33.0
void cputc(byte cputc::c)
byte~ cputc::$15 reg byte a 2.0000002E7
word~ cputc::$16 zp[2]:75 2.0000002E7
byte~ cputc::$2 reg byte a 2.0000002E7
byte~ cputc::$4 reg byte a 2.0000002E7
byte~ cputc::$5 reg byte a 2.0000002E7
byte~ cputc::$6 reg byte a 2.0000002E7
byte cputc::c
byte cputc::c#0 c zp[1]:64 2002.0
byte cputc::c#1 c zp[1]:64 1000001.0
byte cputc::c#2 c zp[1]:64 1235353.1764705884
byte cputc::color
byte cputc::color#0 reg byte x 1428571.5714285714
byte* cputc::conio_addr
byte* cputc::conio_addr#0 conio_addr zp[2]:73 1.0000001E7
byte* cputc::conio_addr#1 conio_addr zp[2]:73 6000000.6
byte cputc::scroll_enable
byte cputc::scroll_enable#0 reg byte a 2.0000002E7
void cputln()
byte~ cputln::$3 reg byte a 2.00000002E8
byte~ cputln::$4 reg byte a 2.00000002E8
word~ cputln::$5 zp[2]:79 2.00000002E8
word cputln::temp
word cputln::temp#0 temp zp[2]:77 1.00000001E8
word cputln::temp#1 temp zp[2]:77 1.00000001E8
void cputs(to_nomodify byte* cputs::s)
byte cputs::c
byte cputs::c#1 reg byte a 1001.0
to_nomodify byte* cputs::s
to_nomodify byte* cputs::s#0 s zp[2]:45 500.5
to_nomodify byte* cputs::s#10 s zp[2]:45 1552.0
to_nomodify byte* cputs::s#11 s zp[2]:45 101.0
void cscroll()
volatile signed word delta_x loadstore zp[2]:31 120.0
volatile signed word delta_y loadstore zp[2]:33 12.0
void draw_characters(dword draw_characters::tilebase)
byte~ draw_characters::$2 reg byte x 2000002.0
byte~ draw_characters::$3 reg byte a 2000002.0
byte draw_characters::b
byte draw_characters::b#1 b zp[1]:18 1500001.5
byte draw_characters::b#2 b zp[1]:18 375000.375
byte draw_characters::bit
byte draw_characters::bit#0 bit zp[1]:65 100000.18181818182
byte draw_characters::bit#1 reg byte a 2000002.0
byte draw_characters::data
byte draw_characters::r
byte draw_characters::r#1 r zp[1]:12 15001.5
byte draw_characters::r#11 r zp[1]:12 1000.1
dword draw_characters::tilebase
dword draw_characters::tilebase#0 tilebase zp[4]:3 22.0
dword draw_characters::tilebase#1 tilebase zp[4]:3 22.0
dword draw_characters::tilebase#2 tilebase zp[4]:3 22.0
dword draw_characters::tilebase#3 tilebase zp[4]:3 667.3333333333334
dword draw_characters::tilebase#4 tilebase zp[4]:3 67.0
dword draw_characters::tilecolumn
dword draw_characters::tilecolumn#1 tilecolumn zp[4]:8 1631.7894736842104
dword draw_characters::tilecolumn#10 tilecolumn_1 zp[4]:13 22143.14285714286
dword draw_characters::tilecolumn#11 tilecolumn zp[4]:8 2002.0
dword draw_characters::tilecolumn#13 tilecolumn_1 zp[4]:13 20002.0
dword draw_characters::tilecolumn#2 tilecolumn_1 zp[4]:13 66667.33333333333
dword draw_characters::tilerow
dword draw_characters::tilerow#1 tilerow zp[4]:3 129.33333333333334
dword draw_characters::tilerow#2 tilerow_1 zp[4]:8 6667.333333333333
byte draw_characters::x
byte draw_characters::x#1 x zp[1]:17 150001.5
byte draw_characters::x#8 x zp[1]:17 13333.466666666667
byte draw_characters::y
byte draw_characters::y#1 y zp[1]:7 1501.5
byte draw_characters::y#13 y zp[1]:7 80.08
void gotoxy(byte gotoxy::x , byte gotoxy::y)
byte~ gotoxy::$5 reg byte a 2.0000000002E10
word~ gotoxy::$6 zp[2]:62 2.0000000002E10
word gotoxy::line_offset
word gotoxy::line_offset#0 line_offset zp[2]:62 1.0000000001E10
byte gotoxy::x
byte gotoxy::y
byte gotoxy::y#0 reg byte x 22.0
byte gotoxy::y#2 reg byte x 2.000000002E9
byte gotoxy::y#4 reg byte x 7.000000004666666E9
byte gotoxy::y#5 reg byte x 4.0000000004E9
void insertup()
byte~ insertup::$3 reg byte a 2.000000000000002E15
word~ insertup::$6 zp[2]:85 2.000000000000002E15
byte insertup::cy
byte insertup::cy#0 cy zp[1]:81 7.692384615384631E13
byte insertup::i
byte insertup::i#1 reg byte x 2.000000000000002E15
byte insertup::i#2 reg byte x 4.000000000000004E14
word insertup::line
word insertup::line#0 line zp[2]:83 2.000000000000002E15
byte* insertup::start
byte* insertup::start#0 start zp[2]:83 6.666666666666674E14
byte insertup::width
byte insertup::width#0 width zp[1]:82 8.333416666666684E13
__interrupt(rom_sys_cx16) void irq_vsync()
signed word~ irq_vsync::$10 zp[2]:37 4.0
signed word~ irq_vsync::$11 zp[2]:39 4.0
byte~ irq_vsync::vera_set_layer_horizontal_scroll1_$0 reg byte a 4.0
byte~ irq_vsync::vera_set_layer_horizontal_scroll1_$1 reg byte a 4.0
byte irq_vsync::vera_set_layer_horizontal_scroll1_layer
word irq_vsync::vera_set_layer_horizontal_scroll1_scroll
word irq_vsync::vera_set_layer_horizontal_scroll1_scroll#0 vera_set_layer_horizontal_scroll1_scroll zp[2]:41 2.0
byte~ irq_vsync::vera_set_layer_vertical_scroll1_$0 reg byte a 4.0
byte~ irq_vsync::vera_set_layer_vertical_scroll1_$1 reg byte a 4.0
byte irq_vsync::vera_set_layer_vertical_scroll1_layer
word irq_vsync::vera_set_layer_vertical_scroll1_scroll
word irq_vsync::vera_set_layer_vertical_scroll1_scroll#0 vera_set_layer_vertical_scroll1_scroll zp[2]:43 2.0
byte kbhit()
const nomodify byte* kbhit::GETIN = (byte*) 65508
const nomodify byte* kbhit::IN_DEV = (byte*) 650
volatile byte kbhit::ch loadstore zp[1]:66 1001.0
const nomodify byte* kbhit::chptr = &kbhit::ch
byte kbhit::return
byte kbhit::return#0 reg byte a 2002.0
byte kbhit::return#1 reg byte a 300.75
byte kbhit::return#2 reg byte a 202.0
byte kbhit::return#3 reg byte a 202.0
void main()
byte~ main::$45 reg byte a 202.0
byte~ main::$47 reg byte a 202.0
byte main::bgcolor1_color
byte main::bgcolor2_color
byte main::bgcolor3_color
byte main::bgcolor4_color
byte main::bgcolor5_color
const byte* main::s[$3f] = "
this demo displays the design of the standard x16 commander
"
const byte* main::s1[$4f] = "character set on the vera layer 0. it's the character set i grew up with :-).
"
const byte* main::s2[$45] = "
the smooth scrolling is implemented by manipulating the scrolling
"
const byte* main::s3[$37] = "registers of layer 0. at each raster line interrupt,
"
const byte* main::s4[$45] = "the x and y scrolling registers are manipulated. the cx16 terminal
"
const byte* main::s5[$40] = "works on layer 1. when layer 0 is enabled with the scrolling,
"
const byte* main::s6[$4c] = "it gives a nice background effect. this technique can be used to implement
"
const byte* main::s7[$44] = "smooth scrolling backgrounds using tile layouts in games or demos.
"
const byte* main::s8[$1d] = "
press a key to continue ..."
byte main::textcolor1_color
byte main::textcolor2_color
byte main::textcolor3_color
byte main::textcolor4_color
byte main::textcolor5_color
byte main::textcolor6_color
dword main::tilebase
dword main::tilebase#0 tilebase zp[4]:49 0.6470588235294118
byte~ main::vera_hide_layer1_$0 reg byte a 22.0
byte main::vera_hide_layer1_layer
byte~ main::vera_hide_layer2_$0 reg byte a 22.0
byte main::vera_hide_layer2_layer
byte* main::vera_set_layer_map_height_1281_addr
byte* main::vera_set_layer_map_height_1281_addr#0 vera_set_layer_map_height_1281_addr zp[2]:47 27.5
byte main::vera_set_layer_map_height_1281_layer
byte* main::vera_set_layer_map_width_1281_addr
byte* main::vera_set_layer_map_width_1281_addr#0 vera_set_layer_map_width_1281_addr zp[2]:45 27.5
byte main::vera_set_layer_map_width_1281_layer
byte main::vera_show_layer1_layer
byte main::vera_show_layer2_layer
byte main::vera_show_layer3_layer
void memcpy_in_vram(byte memcpy_in_vram::dest_bank , void* memcpy_in_vram::dest , byte memcpy_in_vram::dest_increment , byte memcpy_in_vram::src_bank , void* memcpy_in_vram::src , byte memcpy_in_vram::src_increment , word memcpy_in_vram::num)
byte~ memcpy_in_vram::$0 reg byte a 2.0E16
byte~ memcpy_in_vram::$1 reg byte a 2.0E16
byte~ memcpy_in_vram::$3 reg byte a 2.0E16
byte~ memcpy_in_vram::$4 reg byte a 2.0E16
void* memcpy_in_vram::dest
void* memcpy_in_vram::dest#0 dest zp[2]:83 1.9090909090909092E15
byte memcpy_in_vram::dest_bank
byte memcpy_in_vram::dest_increment
word memcpy_in_vram::i
word memcpy_in_vram::i#1 i zp[2]:47 2.0E22
word memcpy_in_vram::i#2 i zp[2]:47 1.0E22
word memcpy_in_vram::num
word memcpy_in_vram::num#0 num zp[2]:87 5.882353529411765E20
void* memcpy_in_vram::src
byte* memcpy_in_vram::src#0 src zp[2]:85 1.6666666666666684E14
byte memcpy_in_vram::src_bank
byte memcpy_in_vram::src_increment
void screenlayer(byte screenlayer::layer)
word~ screenlayer::$4 zp[2]:62 202.0
word~ screenlayer::$5 zp[2]:56 101.0
word~ screenlayer::$6 zp[2]:58 202.0
byte screenlayer::addr
byte screenlayer::addr#0 reg byte a 202.0
word screenlayer::addr_i
word screenlayer::addr_i#0 addr_i zp[2]:60 151.5
byte screenlayer::layer
byte screenlayer::layer#1 reg byte a 151.5
byte screenlayer::layer#6 reg byte a 101.0
void screensize(byte* screensize::x , byte* screensize::y)
byte~ screensize::$1 reg byte a 202.0
byte~ screensize::$3 reg byte a 202.0
byte screensize::hscale
byte screensize::hscale#0 reg byte a 202.0
byte screensize::vscale
byte screensize::vscale#0 reg byte a 202.0
byte* screensize::x
const byte* screensize::x#0 x = &conio_screen_width
byte* screensize::y
const byte* screensize::y#0 y = &conio_screen_height
byte scroll(byte scroll::onoff)
byte scroll::old
byte scroll::onoff
const byte scroll::onoff#0 onoff = 0
byte scroll::return
volatile signed word scroll_x loadstore zp[2]:27 0.9333333333333332
volatile signed word scroll_y loadstore zp[2]:29 0.7
volatile signed word speed loadstore zp[2]:35 0.5882352941176471
byte vera_get_layer_backcolor(byte vera_get_layer_backcolor::layer)
byte vera_get_layer_backcolor::layer
byte vera_get_layer_backcolor::layer#0 reg byte a 11002.0
byte vera_get_layer_backcolor::layer#1 reg byte a 20002.0
byte vera_get_layer_backcolor::return
byte vera_get_layer_backcolor::return#0 reg byte a 2002.0
byte vera_get_layer_backcolor::return#1 reg byte a 3667.333333333333
byte vera_get_layer_color(byte vera_get_layer_color::layer)
byte~ vera_get_layer_color::$0 reg byte a 2.000000000002E12
byte vera_get_layer_color::layer
byte vera_get_layer_color::layer#0 reg byte a 2.0000002E7
byte vera_get_layer_color::layer#1 reg byte a 2.00000000002E11
byte vera_get_layer_color::layer#2 reg byte x 1.5000000000015E12
byte vera_get_layer_color::layer#3 reg byte a 1.100010000003E12
byte vera_get_layer_color::return
byte vera_get_layer_color::return#0 reg byte a 2.0000002E7
byte vera_get_layer_color::return#1 reg byte a 2.00000000002E11
byte vera_get_layer_color::return#2 reg byte a 2.7500250000075E11
byte vera_get_layer_config(byte vera_get_layer_config::layer)
byte* vera_get_layer_config::config
byte* vera_get_layer_config::config#0 config zp[2]:73 202.0
byte vera_get_layer_config::layer
byte vera_get_layer_config::return
byte vera_get_layer_config::return#0 reg byte a 37.33333333333333
byte vera_get_layer_config::return#2 reg byte a 22.0
word vera_get_layer_map_height(byte vera_get_layer_map_height::layer)
byte~ vera_get_layer_map_height::$0 reg byte a 2002.0
byte~ vera_get_layer_map_height::$1 reg byte a 2002.0
byte~ vera_get_layer_map_height::$2 reg byte a 2002.0
byte~ vera_get_layer_map_height::$3 reg byte a 2002.0
byte* vera_get_layer_map_height::config
byte* vera_get_layer_map_height::config#0 config zp[2]:67 2002.0
byte vera_get_layer_map_height::layer
byte vera_get_layer_map_height::layer#0 reg byte a 1102.0
word vera_get_layer_map_height::return
word vera_get_layer_map_height::return#0 return zp[2]:58 202.0
word vera_get_layer_map_height::return#1 return zp[2]:58 367.33333333333337
word vera_get_layer_map_width(byte vera_get_layer_map_width::layer)
byte~ vera_get_layer_map_width::$0 reg byte a 2002.0
byte~ vera_get_layer_map_width::$1 reg byte a 2002.0
byte~ vera_get_layer_map_width::$2 reg byte a 2002.0
byte~ vera_get_layer_map_width::$3 reg byte a 2002.0
byte* vera_get_layer_map_width::config
byte* vera_get_layer_map_width::config#0 config zp[2]:67 2002.0
byte vera_get_layer_map_width::layer
byte vera_get_layer_map_width::layer#0 reg byte a 1102.0
word vera_get_layer_map_width::return
word vera_get_layer_map_width::return#0 return zp[2]:62 202.0
word vera_get_layer_map_width::return#1 return zp[2]:62 367.33333333333337
byte vera_get_layer_mapbase(byte vera_get_layer_mapbase::layer)
byte~ vera_get_layer_mapbase::$0 reg byte a 2002.0
byte vera_get_layer_mapbase::layer
byte vera_get_layer_mapbase::layer#0 reg byte a 1102.0
byte vera_get_layer_mapbase::layer#1 reg byte a 2002.0
byte* vera_get_layer_mapbase::mapbase
byte* vera_get_layer_mapbase::mapbase#0 mapbase zp[2]:67 2002.0
byte vera_get_layer_mapbase::return
byte vera_get_layer_mapbase::return#0 reg byte a 202.0
byte vera_get_layer_mapbase::return#1 reg byte a 367.33333333333337
byte vera_get_layer_textcolor(byte vera_get_layer_textcolor::layer)
byte vera_get_layer_textcolor::layer
byte vera_get_layer_textcolor::layer#0 reg byte a 11002.0
byte vera_get_layer_textcolor::layer#1 reg byte a 20002.0
byte vera_get_layer_textcolor::return
byte vera_get_layer_textcolor::return#0 reg byte a 2002.0
byte vera_get_layer_textcolor::return#1 reg byte a 3667.333333333333
byte vera_get_layer_tilebase(byte vera_get_layer_tilebase::layer)
byte vera_get_layer_tilebase::layer
byte vera_get_layer_tilebase::return
byte vera_get_layer_tilebase::return#0 reg byte a 37.33333333333333
byte vera_get_layer_tilebase::return#2 reg byte a 22.0
byte* vera_get_layer_tilebase::tilebase
byte* vera_get_layer_tilebase::tilebase#0 tilebase zp[2]:73 202.0
dword vera_get_layer_tilebase_address(byte vera_get_layer_tilebase_address::layer)
dword vera_get_layer_tilebase_address::address
dword vera_get_layer_tilebase_address::address#0 address zp[4]:49 202.0
dword vera_get_layer_tilebase_address::address#1 address zp[4]:49 202.0
dword vera_get_layer_tilebase_address::address#2 address zp[4]:49 202.0
byte vera_get_layer_tilebase_address::layer
dword vera_get_layer_tilebase_address::return
dword vera_get_layer_tilebase_address::return#0 return zp[4]:49 37.33333333333333
dword vera_get_layer_tilebase_address::return#2 return zp[4]:49 22.0
byte vera_get_layer_tilebase_address::tilebase
byte vera_get_layer_tilebase_address::tilebase#0 reg byte a 101.0
const byte* vera_layer_backcolor[2] = { BLUE, BLUE }
const byte** vera_layer_config[2] = { VERA_L0_CONFIG, VERA_L1_CONFIG }
const byte* vera_layer_enable[2] = { VERA_LAYER0_ENABLE, VERA_LAYER1_ENABLE }
const byte** vera_layer_hscroll_h[2] = { VERA_L0_HSCROLL_H, VERA_L1_HSCROLL_H }
const byte** vera_layer_hscroll_l[2] = { VERA_L0_HSCROLL_L, VERA_L1_HSCROLL_L }
const byte** vera_layer_mapbase[2] = { VERA_L0_MAPBASE, VERA_L1_MAPBASE }
const byte* vera_layer_textcolor[2] = { WHITE, WHITE }
const byte** vera_layer_tilebase[2] = { VERA_L0_TILEBASE, VERA_L1_TILEBASE }
const byte** vera_layer_vscroll_h[2] = { VERA_L0_VSCROLL_H, VERA_L1_VSCROLL_H }
const byte** vera_layer_vscroll_l[2] = { VERA_L0_VSCROLL_L, VERA_L1_VSCROLL_L }
byte vera_set_layer_backcolor(byte vera_set_layer_backcolor::layer , byte vera_set_layer_backcolor::color)
byte vera_set_layer_backcolor::color
byte vera_set_layer_backcolor::color#6 reg byte x 50.5
byte vera_set_layer_backcolor::layer
byte vera_set_layer_backcolor::layer#1 reg byte a 202.0
byte vera_set_layer_backcolor::layer#2 reg byte a 22.0
byte vera_set_layer_backcolor::layer#3 reg byte a 22.0
byte vera_set_layer_backcolor::layer#4 reg byte a 22.0
byte vera_set_layer_backcolor::layer#5 reg byte a 22.0
byte vera_set_layer_backcolor::layer#6 reg byte a 22.0
byte vera_set_layer_backcolor::layer#7 reg byte a 156.0
byte vera_set_layer_backcolor::old
byte vera_set_layer_backcolor::return
void vera_set_layer_config(byte vera_set_layer_config::layer , byte vera_set_layer_config::config)
byte* vera_set_layer_config::addr
byte* vera_set_layer_config::addr#0 addr zp[2]:73 202.0
byte vera_set_layer_config::config
byte vera_set_layer_config::config#0 reg byte x 56.0
byte vera_set_layer_config::layer
void vera_set_layer_mapbase(byte vera_set_layer_mapbase::layer , byte vera_set_layer_mapbase::mapbase)
byte~ vera_set_layer_mapbase::$0 reg byte a 202.0
byte* vera_set_layer_mapbase::addr
byte* vera_set_layer_mapbase::addr#0 addr zp[2]:60 202.0
byte vera_set_layer_mapbase::layer
byte vera_set_layer_mapbase::layer#2 reg byte a 202.0
byte vera_set_layer_mapbase::layer#4 reg byte a 101.0
byte vera_set_layer_mapbase::mapbase
byte vera_set_layer_mapbase::mapbase#3 reg byte x 25.25
byte vera_set_layer_textcolor(byte vera_set_layer_textcolor::layer , byte vera_set_layer_textcolor::color)
byte vera_set_layer_textcolor::color
byte vera_set_layer_textcolor::color#7 reg byte x 50.5
byte vera_set_layer_textcolor::layer
byte vera_set_layer_textcolor::layer#1 reg byte a 202.0
byte vera_set_layer_textcolor::layer#2 reg byte a 22.0
byte vera_set_layer_textcolor::layer#3 reg byte a 22.0
byte vera_set_layer_textcolor::layer#4 reg byte a 22.0
byte vera_set_layer_textcolor::layer#5 reg byte a 22.0
byte vera_set_layer_textcolor::layer#6 reg byte a 22.0
byte vera_set_layer_textcolor::layer#7 reg byte a 22.0
byte vera_set_layer_textcolor::layer#8 reg byte a 167.0
byte vera_set_layer_textcolor::old
byte vera_set_layer_textcolor::return
void vera_set_layer_tilebase(byte vera_set_layer_tilebase::layer , byte vera_set_layer_tilebase::tilebase)
byte* vera_set_layer_tilebase::addr
byte* vera_set_layer_tilebase::addr#0 addr zp[2]:73 202.0
byte vera_set_layer_tilebase::layer
byte vera_set_layer_tilebase::tilebase
byte vera_set_layer_tilebase::tilebase#0 reg byte x 56.0
void vera_vram_address0(dword vera_vram_address0::bankaddr , byte vera_vram_address0::incr)
volatile word vera_vram_address0::$0 loadstore zp[2]:69 1.000001E7
volatile word vera_vram_address0::$1 loadstore zp[2]:71 1.000001E7
byte~ vera_vram_address0::$2 reg byte a 2000002.0
byte~ vera_vram_address0::$3 reg byte a 2000002.0
byte~ vera_vram_address0::$5 reg byte a 2000002.0
dword vera_vram_address0::bankaddr
dword vera_vram_address0::bankaddr#0 bankaddr zp[4]:13 1050001.5
byte vera_vram_address0::incr
const word* vera_vram_address0::word_h = &vera_vram_address0::$1
const word* vera_vram_address0::word_l = &vera_vram_address0::$0
zp[1]:2 [ conio_x16_init::line#3 conio_x16_init::line#1 conio_x16_init::line#0 ]
reg byte a [ screenlayer::layer#6 ]
reg byte a [ vera_set_layer_textcolor::layer#8 vera_set_layer_textcolor::layer#2 vera_set_layer_textcolor::layer#3 vera_set_layer_textcolor::layer#4 vera_set_layer_textcolor::layer#5 vera_set_layer_textcolor::layer#6 vera_set_layer_textcolor::layer#7 ]
reg byte x [ vera_set_layer_textcolor::color#7 ]
reg byte a [ vera_set_layer_backcolor::layer#7 vera_set_layer_backcolor::layer#2 vera_set_layer_backcolor::layer#3 vera_set_layer_backcolor::layer#4 vera_set_layer_backcolor::layer#5 vera_set_layer_backcolor::layer#6 ]
reg byte x [ vera_set_layer_backcolor::color#6 ]
reg byte a [ vera_set_layer_mapbase::layer#4 ]
reg byte x [ vera_set_layer_mapbase::mapbase#3 ]
reg byte x [ gotoxy::y#5 gotoxy::y#4 gotoxy::y#0 gotoxy::y#2 ]
reg byte x [ clrscr::l#2 clrscr::l#1 ]
reg byte y [ clrscr::c#2 clrscr::c#1 ]
zp[4]:3 [ draw_characters::tilerow#1 draw_characters::tilebase#3 draw_characters::tilebase#4 draw_characters::tilebase#0 draw_characters::tilebase#1 draw_characters::tilebase#2 ]
zp[1]:7 [ draw_characters::y#13 draw_characters::y#1 ]
zp[4]:8 [ draw_characters::tilecolumn#1 draw_characters::tilecolumn#11 draw_characters::tilerow#2 ]
zp[1]:12 [ draw_characters::r#11 draw_characters::r#1 ]
zp[4]:13 [ draw_characters::tilecolumn#10 draw_characters::tilecolumn#13 draw_characters::tilecolumn#2 vera_vram_address0::bankaddr#0 ]
zp[1]:17 [ draw_characters::x#8 draw_characters::x#1 ]
zp[1]:18 [ draw_characters::b#2 draw_characters::b#1 ]
reg byte a [ vera_get_layer_color::layer#3 vera_get_layer_color::layer#1 vera_get_layer_color::layer#0 ]
reg byte x [ insertup::i#2 insertup::i#1 ]
zp[1]:19 [ conio_screen_width ]
zp[1]:20 [ conio_screen_height ]
zp[1]:21 [ conio_screen_layer ]
zp[2]:22 [ conio_width ]
zp[2]:24 [ conio_height ]
zp[1]:26 [ conio_skip ]
zp[2]:27 [ scroll_x ]
zp[2]:29 [ scroll_y ]
zp[2]:31 [ delta_x ]
zp[2]:33 [ delta_y ]
zp[2]:35 [ speed ]
zp[2]:37 [ irq_vsync::$10 ]
zp[2]:39 [ irq_vsync::$11 ]
zp[2]:41 [ irq_vsync::vera_set_layer_horizontal_scroll1_scroll#0 ]
reg byte a [ irq_vsync::vera_set_layer_horizontal_scroll1_$0 ]
reg byte a [ irq_vsync::vera_set_layer_horizontal_scroll1_$1 ]
zp[2]:43 [ irq_vsync::vera_set_layer_vertical_scroll1_scroll#0 ]
reg byte a [ irq_vsync::vera_set_layer_vertical_scroll1_$0 ]
reg byte a [ irq_vsync::vera_set_layer_vertical_scroll1_$1 ]
reg byte a [ vera_get_layer_config::return#2 ]
reg byte x [ vera_set_layer_config::config#0 ]
reg byte a [ vera_get_layer_tilebase::return#2 ]
reg byte x [ vera_set_layer_tilebase::tilebase#0 ]
zp[2]:45 [ main::vera_set_layer_map_width_1281_addr#0 cputs::s#10 cputs::s#11 cputs::s#0 clrscr::line_text#2 clrscr::line_text#1 clrscr::line_text#0 ]
zp[2]:47 [ main::vera_set_layer_map_height_1281_addr#0 memcpy_in_vram::i#2 memcpy_in_vram::i#1 clearline::c#2 clearline::c#1 ]
zp[4]:49 [ vera_get_layer_tilebase_address::return#2 main::tilebase#0 vera_get_layer_tilebase_address::return#0 vera_get_layer_tilebase_address::address#2 vera_get_layer_tilebase_address::address#0 vera_get_layer_tilebase_address::address#1 ]
reg byte a [ kbhit::return#2 ]
reg byte a [ main::$45 ]
reg byte a [ main::vera_hide_layer1_$0 ]
reg byte a [ kbhit::return#3 ]
reg byte a [ main::$47 ]
reg byte a [ main::vera_hide_layer2_$0 ]
reg byte a [ screensize::hscale#0 ]
reg byte a [ screensize::$1 ]
reg byte a [ screensize::vscale#0 ]
reg byte a [ screensize::$3 ]
reg byte a [ screenlayer::layer#1 ]
reg byte a [ vera_get_layer_mapbase::layer#0 ]
reg byte a [ vera_get_layer_mapbase::return#0 ]
reg byte a [ screenlayer::addr#0 ]
zp[1]:53 [ CONIO_SCREEN_BANK#17 ]
zp[2]:54 [ CONIO_SCREEN_TEXT#19 ]
reg byte a [ vera_get_layer_map_width::layer#0 ]
zp[2]:56 [ screenlayer::$5 ]
reg byte a [ vera_get_layer_map_height::layer#0 ]
zp[2]:58 [ vera_get_layer_map_height::return#0 screenlayer::$6 vera_get_layer_map_height::return#1 ]
reg byte a [ vera_set_layer_textcolor::layer#1 ]
reg byte a [ vera_set_layer_backcolor::layer#1 ]
reg byte a [ vera_set_layer_mapbase::layer#2 ]
reg byte a [ vera_set_layer_mapbase::$0 ]
zp[2]:60 [ vera_set_layer_mapbase::addr#0 screenlayer::addr_i#0 ]
zp[2]:62 [ gotoxy::$6 gotoxy::line_offset#0 vera_get_layer_map_width::return#0 screenlayer::$4 vera_get_layer_map_width::return#1 ]
reg byte a [ gotoxy::$5 ]
reg byte a [ vera_get_layer_backcolor::layer#0 ]
reg byte a [ vera_get_layer_backcolor::return#0 ]
reg byte a [ clrscr::$1 ]
zp[1]:64 [ clrscr::$2 clrscr::color#0 cputc::c#2 cputc::c#0 cputc::c#1 ]
reg byte a [ vera_get_layer_textcolor::layer#0 ]
reg byte a [ vera_get_layer_textcolor::return#0 ]
reg byte a [ clrscr::$3 ]
reg byte a [ clrscr::$10 ]
reg byte a [ clrscr::$6 ]
reg byte a [ clrscr::$7 ]
reg byte a [ clrscr::$8 ]
reg byte a [ vera_get_layer_config::return#0 ]
reg byte a [ vera_get_layer_tilebase::return#0 ]
reg byte a [ vera_get_layer_tilebase_address::tilebase#0 ]
zp[1]:65 [ draw_characters::bit#0 ]
reg byte x [ draw_characters::$2 ]
reg byte a [ draw_characters::$3 ]
reg byte a [ draw_characters::bit#1 ]
zp[1]:66 [ kbhit::ch ]
reg byte a [ kbhit::return#0 ]
reg byte a [ kbhit::return#1 ]
reg byte a [ cputs::c#1 ]
reg byte a [ vera_get_layer_mapbase::layer#1 ]
reg byte a [ vera_get_layer_mapbase::$0 ]
reg byte a [ vera_get_layer_mapbase::return#1 ]
reg byte a [ vera_get_layer_map_width::$2 ]
reg byte a [ vera_get_layer_map_width::$0 ]
reg byte a [ vera_get_layer_map_width::$1 ]
reg byte a [ vera_get_layer_map_width::$3 ]
reg byte a [ vera_get_layer_map_height::$2 ]
zp[2]:67 [ vera_get_layer_map_height::config#0 vera_get_layer_map_width::config#0 vera_get_layer_mapbase::mapbase#0 ]
reg byte a [ vera_get_layer_map_height::$0 ]
reg byte a [ vera_get_layer_map_height::$1 ]
reg byte a [ vera_get_layer_map_height::$3 ]
reg byte a [ vera_get_layer_backcolor::layer#1 ]
reg byte a [ vera_get_layer_backcolor::return#1 ]
reg byte a [ vera_get_layer_textcolor::layer#1 ]
reg byte a [ vera_get_layer_textcolor::return#1 ]
zp[2]:69 [ vera_vram_address0::$0 ]
zp[2]:71 [ vera_vram_address0::$1 ]
reg byte a [ vera_vram_address0::$2 ]
reg byte a [ vera_vram_address0::$3 ]
reg byte a [ vera_vram_address0::$5 ]
reg byte a [ vera_get_layer_color::return#0 ]
reg byte x [ cputc::color#0 ]
reg byte a [ cputc::$15 ]
zp[2]:73 [ cputc::conio_addr#0 cputc::conio_addr#1 vera_set_layer_tilebase::addr#0 vera_get_layer_tilebase::tilebase#0 vera_set_layer_config::addr#0 vera_get_layer_config::config#0 clrscr::skip#0 ]
reg byte a [ cputc::$2 ]
reg byte a [ cputc::$4 ]
reg byte a [ cputc::$5 ]
reg byte a [ cputc::$6 ]
reg byte a [ cputc::scroll_enable#0 ]
zp[2]:75 [ cputc::$16 ]
reg byte x [ vera_get_layer_color::layer#2 ]
reg byte a [ vera_get_layer_color::$0 ]
reg byte a [ vera_get_layer_color::return#2 ]
reg byte a [ cputln::$3 ]
zp[2]:77 [ cputln::temp#0 cputln::temp#1 ]
zp[2]:79 [ cputln::$5 ]
reg byte a [ cputln::$4 ]
zp[1]:81 [ insertup::cy#0 ]
zp[1]:82 [ insertup::width#0 ]
reg byte a [ insertup::$3 ]
zp[2]:83 [ insertup::line#0 insertup::start#0 memcpy_in_vram::dest#0 ]
zp[2]:85 [ insertup::$6 memcpy_in_vram::src#0 ]
reg byte a [ clearline::$5 ]
zp[2]:87 [ clearline::addr#0 memcpy_in_vram::num#0 ]
reg byte a [ clearline::$1 ]
reg byte a [ clearline::$2 ]
reg byte a [ vera_get_layer_color::return#1 ]
reg byte x [ clearline::color#0 ]
reg byte a [ memcpy_in_vram::$0 ]
reg byte a [ memcpy_in_vram::$1 ]
reg byte a [ memcpy_in_vram::$3 ]
reg byte a [ memcpy_in_vram::$4 ]

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,682 @@
const byte BINARY = 2
const nomodify byte BLACK = 0
const nomodify byte BLUE = 6
byte CONIO_SCREEN_BANK
byte CONIO_SCREEN_BANK#16 CONIO_SCREEN_BANK zp[1]:17 2820.008450704225
byte* CONIO_SCREEN_TEXT
word CONIO_SCREEN_TEXT#18 CONIO_SCREEN_TEXT zp[2]:18 0.2433734939759036
const byte DECIMAL = $a
const byte* DIGITS[] = "0123456789abcdef"z
const nomodify byte GREEN = 5
const byte HEXADECIMAL = $10
const byte OCTAL = 8
const byte OFFSET_STRUCT_PRINTF_BUFFER_NUMBER_DIGITS = 1
const byte RADIX::BINARY = 2
const byte RADIX::DECIMAL = $a
const byte RADIX::HEXADECIMAL = $10
const byte RADIX::OCTAL = 8
const byte* RADIX_BINARY_VALUES_CHAR[] = { $80, $40, $20, $10, 8, 4, 2 }
const byte* RADIX_DECIMAL_VALUES_CHAR[] = { $64, $a }
const byte* RADIX_HEXADECIMAL_VALUES_CHAR[] = { $10 }
const byte* RADIX_OCTAL_VALUES_CHAR[] = { $40, 8 }
const nomodify byte RED = 2
const byte SIZEOF_STRUCT_PRINTF_BUFFER_NUMBER = $c
const nomodify byte VERA_ADDRSEL = 1
const nomodify byte* VERA_ADDRX_H = (byte*) 40738
const nomodify byte* VERA_ADDRX_L = (byte*) 40736
const nomodify byte* VERA_ADDRX_M = (byte*) 40737
const to_nomodify word* VERA_CONFIG_HEIGHT[4] = { $20, $40, $80, $100 }
const nomodify byte VERA_CONFIG_HEIGHT_MASK = $c0
const to_nomodify word* VERA_CONFIG_WIDTH[4] = { $20, $40, $80, $100 }
const nomodify byte VERA_CONFIG_WIDTH_MASK = $30
const nomodify byte* VERA_CTRL = (byte*) 40741
const nomodify byte* VERA_DATA0 = (byte*) 40739
const nomodify byte* VERA_DATA1 = (byte*) 40740
const nomodify byte* VERA_DC_HSCALE = (byte*) 40746
const nomodify byte* VERA_DC_VIDEO = (byte*) 40745
const nomodify byte* VERA_DC_VSCALE = (byte*) 40747
const nomodify byte VERA_INC_1 = $10
const nomodify byte* VERA_L0_CONFIG = (byte*) 40749
const nomodify byte* VERA_L0_MAPBASE = (byte*) 40750
const nomodify byte* VERA_L0_TILEBASE = (byte*) 40751
const nomodify byte* VERA_L1_CONFIG = (byte*) 40756
const nomodify byte* VERA_L1_MAPBASE = (byte*) 40757
const nomodify byte* VERA_L1_TILEBASE = (byte*) 40758
const nomodify byte VERA_LAYER0_ENABLE = $10
const nomodify byte VERA_LAYER1_ENABLE = $20
const nomodify byte WHITE = 1
const nomodify byte YELLOW = 7
void __start()
void clearline()
byte~ clearline::$1 reg byte a 2.0000000002E10
byte~ clearline::$2 reg byte a 2.0000000002E10
byte~ clearline::$5 reg byte a 2.0000000002E10
byte* clearline::addr
byte* clearline::addr#0 addr zp[2]:31 1.0000000001E10
word clearline::c
word clearline::c#1 c zp[2]:29 2.000000000002E12
word clearline::c#2 c zp[2]:29 7.5000000000075E11
byte clearline::color
byte clearline::color#0 reg byte x 1.683333333336667E11
void clrscr()
byte~ clrscr::$1 reg byte a 202.0
byte~ clrscr::$10 reg byte a 202.0
byte~ clrscr::$2 zp[1]:42 40.4
byte~ clrscr::$3 reg byte a 202.0
byte~ clrscr::$6 reg byte a 2002.0
byte~ clrscr::$7 reg byte a 2002.0
byte~ clrscr::$8 reg byte a 2002.0
byte clrscr::c
byte clrscr::c#1 reg byte y 20002.0
byte clrscr::c#2 reg byte y 7500.75
byte* clrscr::ch
byte clrscr::color
byte clrscr::color#0 color zp[1]:42 594.2352941176471
byte clrscr::l
byte clrscr::l#1 reg byte x 2002.0
byte clrscr::l#2 reg byte x 200.2
byte* clrscr::line_text
byte* clrscr::line_text#0 line_text zp[2]:33 16.833333333333332
byte* clrscr::line_text#1 line_text zp[2]:33 1001.0
byte* clrscr::line_text#2 line_text zp[2]:33 293.2142857142857
word clrscr::skip
word clrscr::skip#0 skip zp[2]:31 40.81481481481482
const byte* conio_cursor_x[2] = { 0, 0 }
const byte* conio_cursor_y[2] = { 0, 0 }
word conio_height loadstore zp[2]:10 277011.3711911357
const word* conio_line_text[2] = { 0, 0 }
volatile byte conio_screen_height loadstore zp[1]:6 3324099.828254848
byte conio_screen_layer loadstore zp[1]:7 7.880046115366969E7
volatile byte conio_screen_width loadstore zp[1]:5 2.5239319899672546E9
const byte* conio_scroll_enable[2] = { 1, 1 }
byte conio_skip loadstore zp[1]:12 5.0760101062626266E8
word conio_width loadstore zp[2]:8 2894.573065902579
void conio_x16_init()
const nomodify byte* conio_x16_init::BASIC_CURSOR_LINE = (byte*) 214
byte conio_x16_init::line
byte conio_x16_init::line#0 line zp[1]:2 2.5384615384615383
byte conio_x16_init::line#1 line zp[1]:2 22.0
byte conio_x16_init::line#3 line zp[1]:2 33.0
void cputc(byte cputc::c)
byte~ cputc::$15 reg byte a 2000002.0
word~ cputc::$16 zp[2]:31 2000002.0
byte~ cputc::$2 reg byte a 2000002.0
byte~ cputc::$4 reg byte a 2000002.0
byte~ cputc::$5 reg byte a 2000002.0
byte~ cputc::$6 reg byte a 2000002.0
byte cputc::c
byte cputc::c#0 c zp[1]:4 200002.0
byte cputc::c#2 c zp[1]:4 2002.0
byte cputc::c#3 c zp[1]:4 22.0
byte cputc::c#4 c zp[1]:4 123589.11764705883
byte cputc::color
byte cputc::color#0 reg byte x 142857.2857142857
byte* cputc::conio_addr
byte* cputc::conio_addr#0 conio_addr zp[2]:29 1000001.0
byte* cputc::conio_addr#1 conio_addr zp[2]:29 600000.6000000001
byte cputc::scroll_enable
byte cputc::scroll_enable#0 reg byte a 2000002.0
void cputln()
byte~ cputln::$3 reg byte a 2.0000002E7
byte~ cputln::$4 reg byte a 2.0000002E7
word~ cputln::$5 zp[2]:39 2.0000002E7
word cputln::temp
word cputln::temp#0 temp zp[2]:37 1.0000001E7
word cputln::temp#1 temp zp[2]:37 1.0000001E7
void cputs(to_nomodify byte* cputs::s)
byte cputs::c
byte cputs::c#1 reg byte a 100001.0
to_nomodify byte* cputs::s
to_nomodify byte* cputs::s#0 s zp[2]:33 50000.5
to_nomodify byte* cputs::s#37 s zp[2]:33 155002.0
to_nomodify byte* cputs::s#38 s zp[2]:33 10001.0
void cscroll()
void gotoxy(byte gotoxy::x , byte gotoxy::y)
byte~ gotoxy::$5 reg byte a 2.000000002E9
word~ gotoxy::$6 zp[2]:26 2.000000002E9
word gotoxy::line_offset
word gotoxy::line_offset#0 line_offset zp[2]:26 1.000000001E9
byte gotoxy::x
byte gotoxy::x#10 reg byte y 3.333333336666667E8
byte gotoxy::x#11 reg byte y 2.000000002E9
byte gotoxy::y
byte gotoxy::y#0 reg byte x 22.0
byte gotoxy::y#10 reg byte x 7.000000046666667E8
byte gotoxy::y#11 reg byte x 3.333333336666667E8
byte gotoxy::y#2 reg byte x 2.00000002E8
void insertup()
byte~ insertup::$3 reg byte a 2.00000000002E11
word~ insertup::$6 zp[2]:45 2.00000000002E11
byte insertup::cy
byte insertup::cy#0 cy zp[1]:41 7.769230769384615E9
byte insertup::i
byte insertup::i#1 reg byte x 2.00000000002E11
byte insertup::i#2 reg byte x 4.00000000004E10
word insertup::line
word insertup::line#0 line zp[2]:43 2.00000000002E11
byte* insertup::start
byte* insertup::start#0 start zp[2]:43 6.6666666667333336E10
byte insertup::width
byte insertup::width#0 width zp[1]:42 8.416666666833334E9
byte kbhit()
const nomodify byte* kbhit::GETIN = (byte*) 65508
const nomodify byte* kbhit::IN_DEV = (byte*) 650
volatile byte kbhit::ch loadstore zp[1]:28 1001.0
const nomodify byte* kbhit::chptr = &kbhit::ch
byte kbhit::return
byte kbhit::return#0 reg byte a 2002.0
byte kbhit::return#1 reg byte a 215.14285714285714
byte kbhit::return#10 reg byte a 202.0
byte kbhit::return#11 reg byte a 202.0
byte kbhit::return#12 reg byte a 202.0
byte kbhit::return#2 reg byte a 202.0
byte kbhit::return#3 reg byte a 202.0
void main()
byte~ main::$81 reg byte a 202.0
byte~ main::$83 reg byte a 202.0
byte~ main::$85 reg byte a 202.0
byte~ main::$87 reg byte a 202.0
byte~ main::$89 reg byte a 202.0
byte main::bgcolor1_color
byte main::bgcolor2_color
byte main::bgcolor3_color
byte main::bgcolor4_color
byte main::bgcolor5_color
byte main::bgcolor6_color
byte main::bgcolor7_color
byte main::bgcolor8_color
byte main::bgcolor9_color
byte main::config
byte main::config#0 config zp[1]:3 11.0
byte main::dcvideo
byte main::dcvideo#0 dcvideo zp[1]:3 11.0
byte main::layershown
byte main::layershown#0 layershown zp[1]:14 11.0
byte main::layershown#1 layershown_1 zp[1]:3 11.0
byte main::mapbase
byte main::mapbase#0 mapbase zp[1]:3 4.4
byte main::mapbase#1 mapbase zp[1]:3 4.4
const byte* main::s[$c] = "press a key"
const byte* main::s1[$41] = "this program demonstrates the layer functionality in text mode.
"
const byte* main::s11[$18] = "vera layer 1 mapbase = "
const byte* main::s12[$e] = ", tilebase = "
const byte* main::s15[$18] = "
vera layer 0 config = "
const byte* main::s17[$16] = "vera layer 0 shown = "
const byte* main::s19[$18] = "vera layer 0 mapbase = "
const byte* main::s2[$14] = "
vera card width = "
const byte* main::s22[$29] = " "
const byte* main::s23[$29] = " this is printed on layer 0 !!! "
const byte* main::s25[$2f] = "press a key to show layer 0 and show the text!"
const byte* main::s27[3] = ". "
const byte* main::s28[$34] = "press a key to hide layer 0 and hide the text again"
const byte* main::s3[$c] = "; height = "
const byte* main::s31[$16] = "press a key to finish"
const byte* main::s32[$26] = " "
const byte* main::s33[$26] = " analyze the code and learn! "
const byte* main::s4[2] = "
"
const byte* main::s5[$12] = "
vera dc video = "
const byte* main::s7[$18] = "
vera layer 1 config = "
const byte* main::s9[$16] = "vera layer 1 shown = "
byte main::screensizex1_return
byte main::screensizex1_return#0 screensizex1_return zp[1]:3 4.4
byte main::screensizey1_return
byte main::screensizey1_return#0 screensizey1_return zp[1]:13 3.142857142857143
byte main::textcolor10_color
byte main::textcolor11_color
byte main::textcolor12_color
byte main::textcolor1_color
byte main::textcolor2_color
byte main::textcolor3_color
byte main::textcolor4_color
byte main::textcolor5_color
byte main::textcolor6_color
byte main::textcolor7_color
byte main::textcolor8_color
byte main::textcolor9_color
byte main::tilebase
byte main::tilebase#0 tilebase zp[1]:15 3.6666666666666665
byte main::tilebase#1 tilebase_1 zp[1]:16 3.6666666666666665
byte~ main::vera_hide_layer1_$0 reg byte a 22.0
byte main::vera_hide_layer1_layer
byte main::vera_show_layer1_layer
void memcpy_in_vram(byte memcpy_in_vram::dest_bank , void* memcpy_in_vram::dest , byte memcpy_in_vram::dest_increment , byte memcpy_in_vram::src_bank , void* memcpy_in_vram::src , byte memcpy_in_vram::src_increment , word memcpy_in_vram::num)
byte~ memcpy_in_vram::$0 reg byte a 2.000000000002E12
byte~ memcpy_in_vram::$1 reg byte a 2.000000000002E12
byte~ memcpy_in_vram::$3 reg byte a 2.000000000002E12
byte~ memcpy_in_vram::$4 reg byte a 2.000000000002E12
void* memcpy_in_vram::dest
void* memcpy_in_vram::dest#0 dest zp[2]:43 1.9090909090936365E11
byte memcpy_in_vram::dest_bank
byte memcpy_in_vram::dest_increment
word memcpy_in_vram::i
word memcpy_in_vram::i#1 i zp[2]:31 2.000000000000002E15
word memcpy_in_vram::i#2 i zp[2]:31 1.000000000000001E15
word memcpy_in_vram::num
word memcpy_in_vram::num#0 num zp[2]:47 5.8829411764706E13
void* memcpy_in_vram::src
byte* memcpy_in_vram::src#0 src zp[2]:45 1.6666666666833334E10
byte memcpy_in_vram::src_bank
byte memcpy_in_vram::src_increment
struct printf_buffer_number printf_buffer loadstore mem[12] = {}
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)
struct printf_buffer_number printf_number_buffer::buffer
byte* printf_number_buffer::buffer_digits
const byte* printf_number_buffer::buffer_digits#0 buffer_digits = (byte*)&printf_buffer+OFFSET_STRUCT_PRINTF_BUFFER_NUMBER_DIGITS
byte printf_number_buffer::buffer_sign
byte printf_number_buffer::buffer_sign#0 reg byte a 701.0
struct printf_format_number printf_number_buffer::format
byte printf_number_buffer::format_justify_left
byte printf_number_buffer::format_min_length
byte printf_number_buffer::format_radix
byte printf_number_buffer::format_sign_always
byte printf_number_buffer::format_upper_case
byte printf_number_buffer::format_zero_padding
signed byte printf_number_buffer::len
signed byte printf_number_buffer::padding
void printf_uchar(byte printf_uchar::uvalue , byte printf_uchar::format_min_length , byte printf_uchar::format_justify_left , byte printf_uchar::format_sign_always , byte printf_uchar::format_zero_padding , byte printf_uchar::format_upper_case , byte printf_uchar::format_radix)
struct printf_format_number printf_uchar::format
byte printf_uchar::format_justify_left
byte printf_uchar::format_min_length
byte printf_uchar::format_radix
byte printf_uchar::format_radix#12 reg byte y 33.666666666666664
byte printf_uchar::format_sign_always
byte printf_uchar::format_upper_case
byte printf_uchar::format_zero_padding
byte printf_uchar::uvalue
byte printf_uchar::uvalue#10 uvalue zp[1]:3 7.333333333333333
byte printf_uchar::uvalue#11 uvalue zp[1]:3 7.333333333333333
byte printf_uchar::uvalue#12 uvalue zp[1]:3 116.5
byte printf_uchar::uvalue#19 uvalue zp[1]:3 22.0
byte printf_uchar::uvalue#2 uvalue zp[1]:3 22.0
byte printf_uchar::uvalue#3 uvalue zp[1]:3 22.0
byte printf_uchar::uvalue#4 uvalue zp[1]:3 22.0
byte printf_uchar::uvalue#5 uvalue zp[1]:3 22.0
byte printf_uchar::uvalue#6 uvalue zp[1]:3 7.333333333333333
byte printf_uchar::uvalue#7 uvalue zp[1]:3 22.0
byte printf_uchar::uvalue#8 uvalue zp[1]:3 22.0
byte printf_uchar::uvalue#9 uvalue zp[1]:3 22.0
void screenlayer(byte screenlayer::layer)
word~ screenlayer::$4 zp[2]:26 202.0
word~ screenlayer::$5 zp[2]:20 101.0
word~ screenlayer::$6 zp[2]:22 202.0
byte screenlayer::addr
byte screenlayer::addr#0 reg byte a 202.0
word screenlayer::addr_i
word screenlayer::addr_i#0 addr_i zp[2]:24 151.5
byte screenlayer::layer
byte screenlayer::layer#1 reg byte a 151.5
byte screenlayer::layer#5 reg byte a 101.0
void screensize(byte* screensize::x , byte* screensize::y)
byte~ screensize::$1 reg byte a 202.0
byte~ screensize::$3 reg byte a 202.0
byte screensize::hscale
byte screensize::hscale#0 reg byte a 202.0
byte screensize::vscale
byte screensize::vscale#0 reg byte a 202.0
byte* screensize::x
const byte* screensize::x#0 x = &conio_screen_width
byte* screensize::y
const byte* screensize::y#0 y = &conio_screen_height
void uctoa(byte uctoa::value , byte* uctoa::buffer , byte uctoa::radix)
byte~ uctoa::$4 reg byte a 20002.0
byte* uctoa::buffer
byte* uctoa::buffer#11 buffer zp[2]:31 3231.230769230769
byte* uctoa::buffer#14 buffer zp[2]:31 15001.5
byte* uctoa::buffer#3 buffer zp[2]:31 2002.0
byte* uctoa::buffer#4 buffer zp[2]:31 20002.0
byte uctoa::digit
byte uctoa::digit#1 digit zp[1]:14 20002.0
byte uctoa::digit#2 digit zp[1]:14 2857.4285714285716
byte uctoa::digit_value
byte uctoa::digit_value#0 reg byte y 6000.6
byte* uctoa::digit_values
byte* uctoa::digit_values#8 digit_values zp[2]:29 625.0625
byte uctoa::max_digits
byte uctoa::max_digits#7 max_digits zp[1]:4 625.0625
byte uctoa::radix
byte uctoa::radix#0 reg byte y 1026.25
byte uctoa::started
byte uctoa::started#2 started zp[1]:42 5000.5
byte uctoa::started#4 started zp[1]:42 10001.0
byte uctoa::value
byte uctoa::value#0 reg byte x 10001.0
byte uctoa::value#1 reg byte x 157.42857142857142
byte uctoa::value#2 reg byte x 6000.857142857143
byte uctoa::value#6 reg byte x 15001.5
byte uctoa_append(byte* uctoa_append::buffer , byte uctoa_append::value , byte uctoa_append::sub)
byte* uctoa_append::buffer
byte* uctoa_append::buffer#0 buffer zp[2]:31 13750.25
byte uctoa_append::digit
byte uctoa_append::digit#1 reg byte y 1.0000001E7
byte uctoa_append::digit#2 reg byte y 1.00500015E7
byte uctoa_append::return
byte uctoa_append::return#0 reg byte x 20002.0
byte uctoa_append::sub
byte uctoa_append::sub#0 sub zp[1]:41 3335000.5
byte uctoa_append::value
byte uctoa_append::value#0 reg byte x 36667.33333333333
byte uctoa_append::value#1 reg byte x 2.0000002E7
byte uctoa_append::value#2 reg byte x 5018334.166666666
byte vera_get_layer_backcolor(byte vera_get_layer_backcolor::layer)
byte vera_get_layer_backcolor::layer
byte vera_get_layer_backcolor::layer#0 reg byte a 1102.0
byte vera_get_layer_backcolor::layer#1 reg byte a 2002.0
byte vera_get_layer_backcolor::return
byte vera_get_layer_backcolor::return#0 reg byte a 202.0
byte vera_get_layer_backcolor::return#1 reg byte a 367.33333333333337
byte vera_get_layer_color(byte vera_get_layer_color::layer)
byte~ vera_get_layer_color::$0 reg byte a 2.00000000002E11
byte vera_get_layer_color::layer
byte vera_get_layer_color::layer#0 reg byte a 2000002.0
byte vera_get_layer_color::layer#1 reg byte a 2.0000000002E10
byte vera_get_layer_color::layer#2 reg byte x 1.500000000015E11
byte vera_get_layer_color::layer#3 reg byte a 1.10001000003E11
byte vera_get_layer_color::return
byte vera_get_layer_color::return#0 reg byte a 2000002.0
byte vera_get_layer_color::return#1 reg byte a 2.0000000002E10
byte vera_get_layer_color::return#2 reg byte a 2.750025000075E10
byte vera_get_layer_config(byte vera_get_layer_config::layer)
byte~ vera_get_layer_config::$0 reg byte a 202.0
byte* vera_get_layer_config::config
byte* vera_get_layer_config::config#0 config zp[2]:29 202.0
byte vera_get_layer_config::layer
byte vera_get_layer_config::layer#0 reg byte a 202.0
byte vera_get_layer_config::layer#5 reg byte a 101.0
byte vera_get_layer_config::return
byte vera_get_layer_config::return#0 reg byte a 26.8
byte vera_get_layer_config::return#10 reg byte a 22.0
byte vera_get_layer_config::return#2 reg byte a 22.0
byte vera_get_layer_config::return#3 reg byte a 22.0
word vera_get_layer_map_height(byte vera_get_layer_map_height::layer)
byte~ vera_get_layer_map_height::$0 reg byte a 2002.0
byte~ vera_get_layer_map_height::$1 reg byte a 2002.0
byte~ vera_get_layer_map_height::$2 reg byte a 2002.0
byte~ vera_get_layer_map_height::$3 reg byte a 2002.0
byte* vera_get_layer_map_height::config
byte* vera_get_layer_map_height::config#0 config zp[2]:35 2002.0
byte vera_get_layer_map_height::layer
byte vera_get_layer_map_height::layer#0 reg byte a 1102.0
word vera_get_layer_map_height::return
word vera_get_layer_map_height::return#0 return zp[2]:22 202.0
word vera_get_layer_map_height::return#1 return zp[2]:22 367.33333333333337
word vera_get_layer_map_width(byte vera_get_layer_map_width::layer)
byte~ vera_get_layer_map_width::$0 reg byte a 2002.0
byte~ vera_get_layer_map_width::$1 reg byte a 2002.0
byte~ vera_get_layer_map_width::$2 reg byte a 2002.0
byte~ vera_get_layer_map_width::$3 reg byte a 2002.0
byte* vera_get_layer_map_width::config
byte* vera_get_layer_map_width::config#0 config zp[2]:35 2002.0
byte vera_get_layer_map_width::layer
byte vera_get_layer_map_width::layer#0 reg byte a 1102.0
word vera_get_layer_map_width::return
word vera_get_layer_map_width::return#0 return zp[2]:26 202.0
word vera_get_layer_map_width::return#1 return zp[2]:26 367.33333333333337
byte vera_get_layer_mapbase(byte vera_get_layer_mapbase::layer)
byte~ vera_get_layer_mapbase::$0 reg byte a 2002.0
byte vera_get_layer_mapbase::layer
byte vera_get_layer_mapbase::layer#0 reg byte a 202.0
byte vera_get_layer_mapbase::layer#1 reg byte a 2002.0
byte vera_get_layer_mapbase::layer#4 reg byte a 1102.0
byte* vera_get_layer_mapbase::mapbase
byte* vera_get_layer_mapbase::mapbase#0 mapbase zp[2]:35 2002.0
byte vera_get_layer_mapbase::return
byte vera_get_layer_mapbase::return#0 reg byte a 202.0
byte vera_get_layer_mapbase::return#1 reg byte a 224.79999999999998
byte vera_get_layer_mapbase::return#3 reg byte a 22.0
byte vera_get_layer_mapbase::return#4 reg byte a 22.0
byte vera_get_layer_textcolor(byte vera_get_layer_textcolor::layer)
byte vera_get_layer_textcolor::layer
byte vera_get_layer_textcolor::layer#0 reg byte a 1102.0
byte vera_get_layer_textcolor::layer#1 reg byte a 2002.0
byte vera_get_layer_textcolor::return
byte vera_get_layer_textcolor::return#0 reg byte a 202.0
byte vera_get_layer_textcolor::return#1 reg byte a 367.33333333333337
byte vera_get_layer_tilebase(byte vera_get_layer_tilebase::layer)
byte~ vera_get_layer_tilebase::$0 reg byte a 202.0
byte vera_get_layer_tilebase::layer
byte vera_get_layer_tilebase::layer#0 reg byte a 202.0
byte vera_get_layer_tilebase::layer#4 reg byte a 101.0
byte vera_get_layer_tilebase::return
byte vera_get_layer_tilebase::return#0 reg byte a 26.8
byte vera_get_layer_tilebase::return#2 reg byte a 22.0
byte vera_get_layer_tilebase::return#3 reg byte a 22.0
byte vera_get_layer_tilebase::return#4 reg byte a 22.0
byte* vera_get_layer_tilebase::tilebase
byte* vera_get_layer_tilebase::tilebase#0 tilebase zp[2]:31 202.0
byte vera_is_layer_shown(byte vera_is_layer_shown::layer)
byte vera_is_layer_shown::layer
byte vera_is_layer_shown::layer#0 reg byte a 202.0
byte vera_is_layer_shown::layer#5 reg byte a 101.0
byte vera_is_layer_shown::return
byte vera_is_layer_shown::return#0 reg byte a 24.166666666666664
byte vera_is_layer_shown::return#10 reg byte a 22.0
byte vera_is_layer_shown::return#2 reg byte a 22.0
byte vera_is_layer_shown::return#3 reg byte a 22.0
byte vera_is_layer_shown::return#4 reg byte a 22.0
const byte* vera_layer_backcolor[2] = { BLUE, BLUE }
const byte** vera_layer_config[2] = { VERA_L0_CONFIG, VERA_L1_CONFIG }
const byte* vera_layer_enable[2] = { VERA_LAYER0_ENABLE, VERA_LAYER1_ENABLE }
const byte** vera_layer_mapbase[2] = { VERA_L0_MAPBASE, VERA_L1_MAPBASE }
const byte* vera_layer_textcolor[2] = { WHITE, WHITE }
const byte** vera_layer_tilebase[2] = { VERA_L0_TILEBASE, VERA_L1_TILEBASE }
byte vera_set_layer_backcolor(byte vera_set_layer_backcolor::layer , byte vera_set_layer_backcolor::color)
byte vera_set_layer_backcolor::color
byte vera_set_layer_backcolor::color#10 reg byte x 50.5
byte vera_set_layer_backcolor::layer
byte vera_set_layer_backcolor::layer#1 reg byte a 202.0
byte vera_set_layer_backcolor::layer#10 reg byte a 22.0
byte vera_set_layer_backcolor::layer#11 reg byte a 200.0
byte vera_set_layer_backcolor::layer#2 reg byte a 22.0
byte vera_set_layer_backcolor::layer#3 reg byte a 22.0
byte vera_set_layer_backcolor::layer#4 reg byte a 22.0
byte vera_set_layer_backcolor::layer#5 reg byte a 22.0
byte vera_set_layer_backcolor::layer#6 reg byte a 22.0
byte vera_set_layer_backcolor::layer#7 reg byte a 22.0
byte vera_set_layer_backcolor::layer#8 reg byte a 22.0
byte vera_set_layer_backcolor::layer#9 reg byte a 22.0
byte vera_set_layer_backcolor::old
byte vera_set_layer_backcolor::return
void vera_set_layer_config(byte vera_set_layer_config::layer , byte vera_set_layer_config::config)
byte* vera_set_layer_config::addr
byte* vera_set_layer_config::addr#0 addr zp[2]:33 202.0
byte vera_set_layer_config::config
byte vera_set_layer_config::config#0 reg byte x 56.0
byte vera_set_layer_config::layer
void vera_set_layer_mapbase(byte vera_set_layer_mapbase::layer , byte vera_set_layer_mapbase::mapbase)
byte~ vera_set_layer_mapbase::$0 reg byte a 202.0
byte* vera_set_layer_mapbase::addr
byte* vera_set_layer_mapbase::addr#0 addr zp[2]:24 202.0
byte vera_set_layer_mapbase::layer
byte vera_set_layer_mapbase::layer#2 reg byte a 202.0
byte vera_set_layer_mapbase::layer#4 reg byte a 101.0
byte vera_set_layer_mapbase::mapbase
byte vera_set_layer_mapbase::mapbase#3 reg byte x 25.25
byte vera_set_layer_textcolor(byte vera_set_layer_textcolor::layer , byte vera_set_layer_textcolor::color)
byte vera_set_layer_textcolor::color
byte vera_set_layer_textcolor::color#13 reg byte x 50.5
byte vera_set_layer_textcolor::layer
byte vera_set_layer_textcolor::layer#1 reg byte a 202.0
byte vera_set_layer_textcolor::layer#10 reg byte a 22.0
byte vera_set_layer_textcolor::layer#11 reg byte a 22.0
byte vera_set_layer_textcolor::layer#12 reg byte a 22.0
byte vera_set_layer_textcolor::layer#13 reg byte a 22.0
byte vera_set_layer_textcolor::layer#14 reg byte a 233.0
byte vera_set_layer_textcolor::layer#2 reg byte a 22.0
byte vera_set_layer_textcolor::layer#3 reg byte a 22.0
byte vera_set_layer_textcolor::layer#4 reg byte a 22.0
byte vera_set_layer_textcolor::layer#5 reg byte a 22.0
byte vera_set_layer_textcolor::layer#6 reg byte a 22.0
byte vera_set_layer_textcolor::layer#7 reg byte a 22.0
byte vera_set_layer_textcolor::layer#8 reg byte a 22.0
byte vera_set_layer_textcolor::layer#9 reg byte a 22.0
byte vera_set_layer_textcolor::old
byte vera_set_layer_textcolor::return
void vera_set_layer_tilebase(byte vera_set_layer_tilebase::layer , byte vera_set_layer_tilebase::tilebase)
byte* vera_set_layer_tilebase::addr
byte* vera_set_layer_tilebase::addr#0 addr zp[2]:33 202.0
byte vera_set_layer_tilebase::layer
byte vera_set_layer_tilebase::tilebase
byte vera_set_layer_tilebase::tilebase#0 reg byte x 56.0
zp[1]:2 [ conio_x16_init::line#3 conio_x16_init::line#1 conio_x16_init::line#0 ]
reg byte a [ screenlayer::layer#5 ]
reg byte a [ vera_set_layer_textcolor::layer#14 vera_set_layer_textcolor::layer#2 vera_set_layer_textcolor::layer#11 vera_set_layer_textcolor::layer#12 vera_set_layer_textcolor::layer#13 vera_set_layer_textcolor::layer#3 vera_set_layer_textcolor::layer#4 vera_set_layer_textcolor::layer#5 vera_set_layer_textcolor::layer#6 vera_set_layer_textcolor::layer#7 vera_set_layer_textcolor::layer#8 vera_set_layer_textcolor::layer#9 vera_set_layer_textcolor::layer#10 ]
reg byte x [ vera_set_layer_textcolor::color#13 ]
reg byte a [ vera_set_layer_backcolor::layer#11 vera_set_layer_backcolor::layer#2 vera_set_layer_backcolor::layer#3 vera_set_layer_backcolor::layer#4 vera_set_layer_backcolor::layer#5 vera_set_layer_backcolor::layer#6 vera_set_layer_backcolor::layer#7 vera_set_layer_backcolor::layer#8 vera_set_layer_backcolor::layer#9 vera_set_layer_backcolor::layer#10 ]
reg byte x [ vera_set_layer_backcolor::color#10 ]
reg byte a [ vera_set_layer_mapbase::layer#4 ]
reg byte x [ vera_set_layer_mapbase::mapbase#3 ]
reg byte x [ gotoxy::y#11 gotoxy::y#10 gotoxy::y#0 gotoxy::y#2 ]
reg byte y [ gotoxy::x#11 gotoxy::x#10 ]
reg byte x [ clrscr::l#2 clrscr::l#1 ]
reg byte y [ clrscr::c#2 clrscr::c#1 ]
zp[1]:3 [ printf_uchar::uvalue#12 printf_uchar::uvalue#10 printf_uchar::uvalue#11 main::screensizex1_return#0 printf_uchar::uvalue#19 printf_uchar::uvalue#2 printf_uchar::uvalue#3 printf_uchar::uvalue#4 printf_uchar::uvalue#5 printf_uchar::uvalue#6 printf_uchar::uvalue#7 printf_uchar::uvalue#8 printf_uchar::uvalue#9 main::dcvideo#0 main::config#0 main::mapbase#0 main::layershown#1 main::mapbase#1 ]
reg byte y [ printf_uchar::format_radix#12 ]
reg byte a [ vera_get_layer_config::layer#5 ]
reg byte a [ vera_is_layer_shown::layer#5 ]
reg byte a [ vera_get_layer_mapbase::layer#4 vera_get_layer_mapbase::layer#0 ]
reg byte a [ vera_get_layer_tilebase::layer#4 ]
reg byte a [ vera_get_layer_color::layer#3 vera_get_layer_color::layer#1 vera_get_layer_color::layer#0 ]
zp[1]:4 [ uctoa::max_digits#7 cputc::c#4 cputc::c#0 cputc::c#3 cputc::c#2 ]
reg byte x [ uctoa::value#2 uctoa::value#6 uctoa::value#1 uctoa::value#0 ]
reg byte x [ uctoa_append::value#2 uctoa_append::value#0 uctoa_append::value#1 ]
reg byte y [ uctoa_append::digit#2 uctoa_append::digit#1 ]
reg byte x [ insertup::i#2 insertup::i#1 ]
zp[1]:5 [ conio_screen_width ]
zp[1]:6 [ conio_screen_height ]
zp[1]:7 [ conio_screen_layer ]
zp[2]:8 [ conio_width ]
zp[2]:10 [ conio_height ]
zp[1]:12 [ conio_skip ]
reg byte a [ kbhit::return#2 ]
reg byte a [ main::$81 ]
zp[1]:13 [ main::screensizey1_return#0 ]
reg byte a [ vera_get_layer_config::return#2 ]
reg byte a [ vera_is_layer_shown::return#2 ]
zp[1]:14 [ main::layershown#0 uctoa::digit#2 uctoa::digit#1 ]
reg byte a [ vera_get_layer_mapbase::return#3 ]
reg byte a [ vera_get_layer_tilebase::return#2 ]
zp[1]:15 [ main::tilebase#0 ]
reg byte a [ kbhit::return#3 ]
reg byte a [ main::$83 ]
reg byte a [ vera_get_layer_config::return#3 ]
reg byte x [ vera_set_layer_config::config#0 ]
reg byte a [ vera_get_layer_tilebase::return#3 ]
reg byte x [ vera_set_layer_tilebase::tilebase#0 ]
reg byte a [ vera_get_layer_config::return#10 ]
reg byte a [ vera_is_layer_shown::return#3 ]
reg byte a [ vera_get_layer_mapbase::return#4 ]
reg byte a [ vera_get_layer_tilebase::return#4 ]
zp[1]:16 [ main::tilebase#1 ]
reg byte a [ kbhit::return#10 ]
reg byte a [ main::$85 ]
reg byte a [ vera_is_layer_shown::return#4 ]
reg byte a [ kbhit::return#11 ]
reg byte a [ main::$87 ]
reg byte a [ main::vera_hide_layer1_$0 ]
reg byte a [ vera_is_layer_shown::return#10 ]
reg byte a [ kbhit::return#12 ]
reg byte a [ main::$89 ]
reg byte a [ screensize::hscale#0 ]
reg byte a [ screensize::$1 ]
reg byte a [ screensize::vscale#0 ]
reg byte a [ screensize::$3 ]
reg byte a [ screenlayer::layer#1 ]
reg byte a [ vera_get_layer_mapbase::return#0 ]
reg byte a [ screenlayer::addr#0 ]
zp[1]:17 [ CONIO_SCREEN_BANK#16 ]
zp[2]:18 [ CONIO_SCREEN_TEXT#18 ]
reg byte a [ vera_get_layer_map_width::layer#0 ]
zp[2]:20 [ screenlayer::$5 ]
reg byte a [ vera_get_layer_map_height::layer#0 ]
zp[2]:22 [ vera_get_layer_map_height::return#0 screenlayer::$6 vera_get_layer_map_height::return#1 ]
reg byte a [ vera_set_layer_textcolor::layer#1 ]
reg byte a [ vera_set_layer_backcolor::layer#1 ]
reg byte a [ vera_set_layer_mapbase::layer#2 ]
reg byte a [ vera_set_layer_mapbase::$0 ]
zp[2]:24 [ vera_set_layer_mapbase::addr#0 screenlayer::addr_i#0 ]
zp[2]:26 [ gotoxy::$6 gotoxy::line_offset#0 vera_get_layer_map_width::return#0 screenlayer::$4 vera_get_layer_map_width::return#1 ]
reg byte a [ gotoxy::$5 ]
reg byte a [ vera_get_layer_backcolor::layer#0 ]
reg byte a [ vera_get_layer_backcolor::return#0 ]
reg byte a [ clrscr::$1 ]
reg byte a [ vera_get_layer_textcolor::layer#0 ]
reg byte a [ vera_get_layer_textcolor::return#0 ]
reg byte a [ clrscr::$3 ]
reg byte a [ clrscr::$10 ]
reg byte a [ clrscr::$6 ]
reg byte a [ clrscr::$7 ]
reg byte a [ clrscr::$8 ]
reg byte a [ cputs::c#1 ]
zp[1]:28 [ kbhit::ch ]
reg byte a [ kbhit::return#0 ]
reg byte a [ kbhit::return#1 ]
reg byte a [ clearline::$5 ]
reg byte a [ clearline::$1 ]
reg byte a [ clearline::$2 ]
reg byte a [ vera_get_layer_color::return#1 ]
reg byte x [ clearline::color#0 ]
reg byte y [ uctoa::radix#0 ]
reg byte a [ printf_number_buffer::buffer_sign#0 ]
reg byte a [ vera_get_layer_config::layer#0 ]
reg byte a [ vera_get_layer_config::$0 ]
reg byte a [ vera_get_layer_config::return#0 ]
reg byte a [ vera_is_layer_shown::layer#0 ]
reg byte a [ vera_is_layer_shown::return#0 ]
reg byte a [ vera_get_layer_color::return#0 ]
reg byte x [ cputc::color#0 ]
reg byte a [ cputc::$15 ]
zp[2]:29 [ cputc::conio_addr#0 cputc::conio_addr#1 vera_get_layer_config::config#0 uctoa::digit_values#8 clearline::c#2 clearline::c#1 ]
reg byte a [ cputc::$2 ]
reg byte a [ cputc::$4 ]
reg byte a [ cputc::$5 ]
reg byte a [ cputc::$6 ]
reg byte a [ cputc::scroll_enable#0 ]
reg byte a [ vera_get_layer_mapbase::layer#1 ]
reg byte a [ vera_get_layer_mapbase::$0 ]
reg byte a [ vera_get_layer_mapbase::return#1 ]
reg byte a [ vera_get_layer_tilebase::layer#0 ]
reg byte a [ vera_get_layer_tilebase::$0 ]
zp[2]:31 [ vera_get_layer_tilebase::tilebase#0 cputc::$16 clearline::addr#0 clrscr::skip#0 memcpy_in_vram::i#2 memcpy_in_vram::i#1 uctoa::buffer#11 uctoa::buffer#14 uctoa::buffer#4 uctoa::buffer#3 uctoa_append::buffer#0 ]
reg byte a [ vera_get_layer_tilebase::return#0 ]
zp[2]:33 [ vera_set_layer_tilebase::addr#0 vera_set_layer_config::addr#0 cputs::s#37 cputs::s#38 cputs::s#0 clrscr::line_text#2 clrscr::line_text#1 clrscr::line_text#0 ]
reg byte a [ vera_get_layer_map_width::$2 ]
reg byte a [ vera_get_layer_map_width::$0 ]
reg byte a [ vera_get_layer_map_width::$1 ]
reg byte a [ vera_get_layer_map_width::$3 ]
reg byte a [ vera_get_layer_map_height::$2 ]
zp[2]:35 [ vera_get_layer_map_height::config#0 vera_get_layer_map_width::config#0 vera_get_layer_mapbase::mapbase#0 ]
reg byte a [ vera_get_layer_map_height::$0 ]
reg byte a [ vera_get_layer_map_height::$1 ]
reg byte a [ vera_get_layer_map_height::$3 ]
reg byte a [ vera_get_layer_backcolor::layer#1 ]
reg byte a [ vera_get_layer_backcolor::return#1 ]
reg byte a [ vera_get_layer_textcolor::layer#1 ]
reg byte a [ vera_get_layer_textcolor::return#1 ]
reg byte x [ vera_get_layer_color::layer#2 ]
reg byte a [ vera_get_layer_color::$0 ]
reg byte a [ vera_get_layer_color::return#2 ]
reg byte a [ uctoa::$4 ]
reg byte y [ uctoa::digit_value#0 ]
reg byte x [ uctoa_append::return#0 ]
reg byte a [ cputln::$3 ]
zp[2]:37 [ cputln::temp#0 cputln::temp#1 ]
zp[2]:39 [ cputln::$5 ]
reg byte a [ cputln::$4 ]
zp[1]:41 [ insertup::cy#0 uctoa_append::sub#0 ]
zp[1]:42 [ insertup::width#0 clrscr::$2 clrscr::color#0 uctoa::started#2 uctoa::started#4 ]
reg byte a [ insertup::$3 ]
zp[2]:43 [ insertup::line#0 insertup::start#0 memcpy_in_vram::dest#0 ]
zp[2]:45 [ insertup::$6 memcpy_in_vram::src#0 ]
zp[2]:47 [ memcpy_in_vram::num#0 ]
reg byte a [ memcpy_in_vram::$0 ]
reg byte a [ memcpy_in_vram::$1 ]
reg byte a [ memcpy_in_vram::$3 ]
reg byte a [ memcpy_in_vram::$4 ]
mem[12] [ printf_buffer ]