1
0
mirror of https://gitlab.com/camelot/kickc.git synced 2024-09-08 17:54:40 +00:00

Fixed tests

This commit is contained in:
jespergravgaard 2018-04-07 17:03:36 +02:00
parent 72e39f7cc4
commit 706734360f
7 changed files with 22769 additions and 6596 deletions

View File

@ -270,9 +270,7 @@ public class AsmFragmentInstanceSpec {
* @param value The value
*/
private void bind(String name, Value value) {
if(bindings.get(name) == null) {
bindings.put(name, value);
}
bindings.putIfAbsent(name, value);
}
/**

View File

@ -2,6 +2,7 @@
import "c64dtv.kc"
import "print.kc"
import "keyboard.kc"
import "bitmap-draw.kc"
void main() {
asm { sei } // Disable normal interrupt (prevent keyboard reading glitches)
@ -17,8 +18,15 @@ void main() {
}
}
// Standard charset screen
// VIC Screen: standard charset screen
const byte* VIC_SCREEN_STDCHAR = $8400;
const byte* VIC_SCREEN_BITMAP = $8800;
// VIC Charset from ROM
const byte* VIC_CHARSET_ROM = $9800;
// VIC Bitmap
const byte* VIC_BITMAP = $a000;
// 8BPP Chunky Bitmap (contains 8bpp pixels)
const dword PLANE_8BPP_CHUNKY = $20000;
@ -28,7 +36,6 @@ const byte* FORM_SCREEN = $8000;
// Charset used for the FORM
const byte* FORM_CHARSET = $9800; // Charset ROM
byte[] FORM_COLS =
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@" +
" nnnnnnn mmmmmmmm mmmmmmmm ooooooooo @" +
@ -160,6 +167,7 @@ void gfx_mode() {
*DTV_PLANEB_MODULO_HI = 0;
// Bakground colors
*BORDERCOL = 0;
*BGCOL1 = *form_vic_bg0_hi<<4|*form_vic_bg0_lo;
*BGCOL2 = *form_vic_bg1_hi<<4|*form_vic_bg1_lo;
*BGCOL3 = *form_vic_bg2_hi<<4|*form_vic_bg2_lo;
@ -186,12 +194,19 @@ void gfx_mode() {
// Initialize the different graphics in the memory
void gfx_init() {
gfx_init_screen_stdchar();
(*BGCOL)++;
gfx_init_vic_screen_stdchar();
(*BGCOL)++;
gfx_init_vic_screen_bitmap();
(*BGCOL)++;
gfx_init_vic_bitmap();
(*BGCOL)++;
gfx_init_plane_8bppchunky();
(*BGCOL)++;
}
// Initialize std char screen
void gfx_init_screen_stdchar() {
// Initialize VIC std char screen
void gfx_init_vic_screen_stdchar() {
byte* ch=VIC_SCREEN_STDCHAR;
for(byte cy: 0..24 ) {
for(byte cx: 0..39) {
@ -200,6 +215,31 @@ void gfx_init_screen_stdchar() {
}
}
// Initialize VIC bitmap screen
void gfx_init_vic_screen_bitmap() {
byte* ch=VIC_SCREEN_BITMAP;
for(byte cy: 0..24 ) {
for(byte cx: 0..39) {
byte col = (cx+cy)&$f;
byte col2 = ($f-col);
*ch++ = col<<4 | col2;
}
}
}
// Initialize VIC bitmap
void gfx_init_vic_bitmap() {
// Draw some lines on the bitmap
bitmap_init(VIC_BITMAP);
bitmap_clear();
byte[] lines_x = { $00, $ff, $ff, $00, $00, $80, $ff, $80, $00, $80 };
byte[] lines_y = { $00, $00, $c7, $c7, $00, $00, $64, $c7, $64, $00 };
byte lines_cnt = 9;
for(byte l=0; l<lines_cnt;l++) {
bitmap_line(lines_x[l], lines_x[l+1], lines_y[l], lines_y[l+1]);
}
}
// Initialize 8BPP Chunky Bitmap (contains 8bpp pixels)
void gfx_init_plane_8bppchunky() {
// 320x200 8bpp pixels for Plane
@ -260,6 +300,7 @@ void form_mode() {
}
// Screen colors
*BGCOL = 0;
*BORDERCOL = 0;
// Let the user change values in the form
while(true) {

View File

@ -2,6 +2,7 @@
:BasicUpstart(main)
.pc = $80d "Program"
.label RASTER = $d012
.label BORDERCOL = $d020
.label BGCOL = $d021
.label BGCOL1 = $d021
.label BGCOL2 = $d022
@ -61,6 +62,8 @@
.const KEY_MODIFIER_CTRL = 4
.const KEY_MODIFIER_COMMODORE = 8
.label VIC_SCREEN_STDCHAR = $8400
.label VIC_SCREEN_BITMAP = $8800
.label VIC_BITMAP = $a000
.const PLANE_8BPP_CHUNKY = $20000
.label FORM_SCREEN = $8000
.label FORM_CHARSET = $9800
@ -128,8 +131,8 @@ gfx_mode: {
.label _46 = 7
.label _48 = 7
.label _50 = 7
.label plane_a = $d
.label plane_b = $d
.label plane_a = $f
.label plane_b = $f
lda form_ctrl_line
cmp #0
beq b12
@ -300,6 +303,7 @@ gfx_mode: {
sta DTV_PLANEB_MODULO_LO
lda #0
sta DTV_PLANEB_MODULO_HI
sta BORDERCOL
lda form_vic_bg0_hi
asl
asl
@ -361,7 +365,7 @@ keyboard_event_get: {
jmp breturn
}
keyboard_event_scan: {
.label row_scan = $11
.label row_scan = $d
.label keycode = 3
.label row = 2
lda #0
@ -513,6 +517,7 @@ form_mode: {
bne b1
lda #0
sta BGCOL
sta BORDERCOL
jmp b5
breturn:
rts
@ -808,8 +813,15 @@ print_set_screen: {
rts
}
gfx_init: {
jsr gfx_init_screen_stdchar
inc BGCOL
jsr gfx_init_vic_screen_stdchar
inc BGCOL
jsr gfx_init_vic_screen_bitmap
inc BGCOL
jsr gfx_init_vic_bitmap
inc BGCOL
jsr gfx_init_plane_8bppchunky
inc BGCOL
rts
}
gfx_init_plane_8bppchunky: {
@ -885,7 +897,414 @@ dtvSetCpuBankSegment1: {
.byte $32, $00
rts
}
gfx_init_screen_stdchar: {
gfx_init_vic_bitmap: {
.const lines_cnt = 9
.label l = 2
jsr bitmap_init
jsr bitmap_clear
lda #0
sta l
b1:
ldy l
lda lines_x,y
sta bitmap_line.x0
lda lines_x+1,y
sta bitmap_line.x1
lda lines_y,y
sta bitmap_line.y0
ldx l
ldy lines_y+1,x
jsr bitmap_line
inc l
lda l
cmp #lines_cnt
bcc b1
rts
lines_x: .byte 0, $ff, $ff, 0, 0, $80, $ff, $80, 0, $80
lines_y: .byte 0, 0, $c7, $c7, 0, 0, $64, $c7, $64, 0
}
bitmap_line: {
.label xd = 3
.label yd = 4
.label x0 = $d
.label x1 = $e
.label y0 = 5
lda x0
cmp x1
bcs b1
lda x1
sec
sbc x0
sta xd
lda y0
sty $ff
cmp $ff
bcs b2
tya
sec
sbc y0
sta yd
cmp xd
bcs b3
ldx x0
lda x1
sta bitmap_line_xdyi.x1
jsr bitmap_line_xdyi
breturn:
rts
b3:
lda y0
sta bitmap_line_ydxi.y
ldx x0
sty bitmap_line_ydxi.y1
jsr bitmap_line_ydxi
jmp breturn
b2:
tya
eor #$ff
sec
adc y0
sta yd
cmp xd
bcs b6
ldx x0
jsr bitmap_line_xdyd
jmp breturn
b6:
sty bitmap_line_ydxd.y
ldx x1
jsr bitmap_line_ydxd
jmp breturn
b1:
lda x0
sec
sbc x1
sta xd
lda y0
sty $ff
cmp $ff
bcs b9
tya
sec
sbc y0
sta yd
cmp xd
bcs b10
ldx x1
sty bitmap_line_xdyd.y
lda x0
sta bitmap_line_xdyd.x1
jsr bitmap_line_xdyd
jmp breturn
b10:
lda y0
sta bitmap_line_ydxd.y
ldx x0
sty bitmap_line_ydxd.y1
jsr bitmap_line_ydxd
jmp breturn
b9:
tya
eor #$ff
sec
adc y0
sta yd
cmp xd
bcs b13
ldx x1
sty bitmap_line_xdyi.y
jsr bitmap_line_xdyi
jmp breturn
b13:
sty bitmap_line_ydxi.y
ldx x1
jsr bitmap_line_ydxi
jmp breturn
}
bitmap_line_ydxi: {
.label y = 6
.label y1 = 5
.label yd = 4
.label xd = 3
.label e = $d
lda xd
lsr
sta e
b1:
ldy y
jsr bitmap_plot
inc y
lda e
clc
adc xd
sta e
lda yd
cmp e
bcs b2
inx
lda e
sec
sbc yd
sta e
b2:
ldy y1
iny
cpy y
bne b1
rts
}
bitmap_plot: {
.label _0 = 7
.label plotter_x = 7
.label plotter_y = 9
lda bitmap_plot_xhi,x
sta plotter_x+1
lda bitmap_plot_xlo,x
sta plotter_x
lda bitmap_plot_yhi,y
sta plotter_y+1
lda bitmap_plot_ylo,y
sta plotter_y
lda _0
clc
adc plotter_y
sta _0
lda _0+1
adc plotter_y+1
sta _0+1
lda bitmap_plot_bit,x
ldy #0
ora (_0),y
sta (_0),y
rts
}
bitmap_line_xdyi: {
.label _6 = $e
.label y = 5
.label x1 = $d
.label xd = 3
.label yd = 4
.label e = 6
lda yd
lsr
sta e
b1:
ldy y
jsr bitmap_plot
inx
lda e
clc
adc yd
sta e
lda xd
cmp e
bcs b2
inc y
lda e
sec
sbc xd
sta e
b2:
ldy x1
iny
sty _6
cpx _6
bne b1
rts
}
bitmap_line_ydxd: {
.label y = 6
.label y1 = 5
.label yd = 4
.label xd = 3
.label e = $d
lda xd
lsr
sta e
b1:
ldy y
jsr bitmap_plot
inc y
lda e
clc
adc xd
sta e
lda yd
cmp e
bcs b2
dex
lda e
sec
sbc yd
sta e
b2:
ldy y1
iny
cpy y
bne b1
rts
}
bitmap_line_xdyd: {
.label _6 = $d
.label y = 5
.label x1 = $e
.label xd = 3
.label yd = 4
.label e = 6
lda yd
lsr
sta e
b1:
ldy y
jsr bitmap_plot
inx
lda e
clc
adc yd
sta e
lda xd
cmp e
bcs b2
dec y
lda e
sec
sbc xd
sta e
b2:
ldy x1
iny
sty _6
cpx _6
bne b1
rts
}
bitmap_clear: {
.label bitmap = 7
.label y = 2
.label _3 = 7
lda bitmap_plot_xlo+0
sta _3
lda bitmap_plot_xhi+0
sta _3+1
lda #0
sta y
b1:
ldx #0
b2:
lda #0
tay
sta (bitmap),y
inc bitmap
bne !+
inc bitmap+1
!:
inx
cpx #$c8
bne b2
inc y
lda y
cmp #$28
bne b1
rts
}
bitmap_init: {
.label _6 = 2
.label yoffs = 7
ldy #$80
ldx #0
b1:
txa
and #$f8
sta bitmap_plot_xlo,x
lda #>VIC_BITMAP
sta bitmap_plot_xhi,x
tya
sta bitmap_plot_bit,x
tya
lsr
tay
cpy #0
bne b2
ldy #$80
b2:
inx
cpx #0
bne b1
lda #<0
sta yoffs
sta yoffs+1
tax
b3:
txa
and #7
sta _6
lda yoffs
ora _6
sta bitmap_plot_ylo,x
lda yoffs+1
sta bitmap_plot_yhi,x
txa
and #7
cmp #7
bne b4
clc
lda yoffs
adc #<$28*8
sta yoffs
lda yoffs+1
adc #>$28*8
sta yoffs+1
b4:
inx
cpx #0
bne b3
rts
}
gfx_init_vic_screen_bitmap: {
.label col2 = 3
.label ch = 7
.label cy = 2
lda #<VIC_SCREEN_BITMAP
sta ch
lda #>VIC_SCREEN_BITMAP
sta ch+1
lda #0
sta cy
b1:
ldx #0
b2:
txa
clc
adc cy
and #$f
tay
tya
eor #$ff
clc
adc #$f+1
sta col2
tya
asl
asl
asl
asl
ora col2
ldy #0
sta (ch),y
inc ch
bne !+
inc ch+1
!:
inx
cpx #$28
bne b2
inc cy
lda cy
cmp #$19
bne b1
rts
}
gfx_init_vic_screen_stdchar: {
.label _1 = 3
.label ch = 7
.label cy = 2
@ -936,6 +1355,11 @@ keyboard_init: {
keyboard_matrix_col_bitmask: .byte 1, 2, 4, 8, $10, $20, $40, $80
keyboard_events: .fill 8, 0
keyboard_scan_values: .fill 8, 0
bitmap_plot_xlo: .fill $100, 0
bitmap_plot_xhi: .fill $100, 0
bitmap_plot_ylo: .fill $100, 0
bitmap_plot_yhi: .fill $100, 0
bitmap_plot_bit: .fill $100, 0
form_fields_x: .byte $16, 7, 7, 7, 7, 7, 7, 7, $11, $11, $11, $10, $11, $10, $11, $10, $11, $1b, $1a, $1b, $1a, $1b, $1a, $1b, $26, $26, $26, $25, $26, $25, $26, $25, $26, $25, $26
form_fields_y: .byte 0, 2, 3, 4, 5, 6, 7, 8, 7, 8, 2, 3, 3, 4, 4, 5, 5, 2, 3, 3, 4, 4, 5, 5, 2, 3, 4, 5, 5, 6, 6, 7, 7, 8, 8
form_fields_max: .byte $d, 1, 1, 1, 1, 1, 1, 1, 1, 1, $f, $f, $f, $f, $f, $f, $f, $f, $f, $f, $f, $f, $f, $f, $f, $f, $f, $f, $f, $f, $f, $f, $f, $f, $f

File diff suppressed because one or more lines are too long

View File

@ -1,4 +1,4 @@
(label) @33
(label) @43
(label) @begin
(label) @end
(byte*) BGCOL
@ -11,6 +11,8 @@
(const byte*) BGCOL3#0 BGCOL3 = ((byte*))(word/dword/signed dword) 53283
(byte*) BGCOL4
(const byte*) BGCOL4#0 BGCOL4 = ((byte*))(word/dword/signed dword) 53284
(byte*) BORDERCOL
(const byte*) BORDERCOL#0 BORDERCOL = ((byte*))(word/dword/signed dword) 53280
(byte*) CIA1_PORT_A
(const byte*) CIA1_PORT_A#0 CIA1_PORT_A = ((byte*))(word/dword/signed dword) 56320
(byte*) CIA1_PORT_A_DDR
@ -117,6 +119,8 @@
(const dword) PLANE_8BPP_CHUNKY#0 PLANE_8BPP_CHUNKY = (dword/signed dword) 131072
(byte*) RASTER
(const byte*) RASTER#0 RASTER = ((byte*))(word/dword/signed dword) 53266
(byte*) VIC_BITMAP
(const byte*) VIC_BITMAP#0 VIC_BITMAP = ((byte*))(word/dword/signed dword) 40960
(byte) VIC_BMM
(const byte) VIC_BMM#0 VIC_BMM = (byte/signed byte/word/signed word/dword/signed dword) 32
(byte*) VIC_CONTROL
@ -135,8 +139,271 @@
(const byte*) VIC_MEMORY#0 VIC_MEMORY = ((byte*))(word/dword/signed dword) 53272
(byte) VIC_RSEL
(const byte) VIC_RSEL#0 VIC_RSEL = (byte/signed byte/word/signed word/dword/signed dword) 8
(byte*) VIC_SCREEN_BITMAP
(const byte*) VIC_SCREEN_BITMAP#0 VIC_SCREEN_BITMAP = ((byte*))(word/dword/signed dword) 34816
(byte*) VIC_SCREEN_STDCHAR
(const byte*) VIC_SCREEN_STDCHAR#0 VIC_SCREEN_STDCHAR = ((byte*))(word/dword/signed dword) 33792
(void()) bitmap_clear()
(word~) bitmap_clear::$3 $3 zp ZP_WORD:7 2.0
(label) bitmap_clear::@1
(label) bitmap_clear::@2
(label) bitmap_clear::@3
(label) bitmap_clear::@return
(byte*) bitmap_clear::bitmap
(byte*) bitmap_clear::bitmap#1 bitmap zp ZP_WORD:7 42.599999999999994
(byte*) bitmap_clear::bitmap#2 bitmap zp ZP_WORD:7 157.0
(byte*) bitmap_clear::bitmap#3 bitmap zp ZP_WORD:7 24.0
(byte*~) bitmap_clear::bitmap#5 bitmap zp ZP_WORD:7 4.0
(byte) bitmap_clear::x
(byte) bitmap_clear::x#1 reg byte x 151.5
(byte) bitmap_clear::x#2 reg byte x 67.33333333333333
(byte) bitmap_clear::y
(byte) bitmap_clear::y#1 y zp ZP_BYTE:2 16.5
(byte) bitmap_clear::y#4 y zp ZP_BYTE:2 3.6666666666666665
(void()) bitmap_init((byte*) bitmap_init::bitmap)
(byte~) bitmap_init::$0 reg byte a 22.0
(byte~) bitmap_init::$10 reg byte a 22.0
(byte~) bitmap_init::$6 $6 zp ZP_BYTE:2 11.0
(byte~) bitmap_init::$7 reg byte a 22.0
(byte~) bitmap_init::$8 reg byte a 22.0
(byte~) bitmap_init::$9 reg byte a 22.0
(label) bitmap_init::@1
(label) bitmap_init::@10
(label) bitmap_init::@2
(label) bitmap_init::@3
(label) bitmap_init::@4
(label) bitmap_init::@7
(label) bitmap_init::@return
(byte*) bitmap_init::bitmap
(byte) bitmap_init::bits
(byte) bitmap_init::bits#1 reg byte y 11.0
(byte) bitmap_init::bits#3 reg byte y 6.6000000000000005
(byte) bitmap_init::bits#4 reg byte y 7.333333333333333
(byte) bitmap_init::x
(byte) bitmap_init::x#1 reg byte x 16.5
(byte) bitmap_init::x#2 reg byte x 7.333333333333334
(byte) bitmap_init::y
(byte) bitmap_init::y#1 reg byte x 16.5
(byte) bitmap_init::y#2 reg byte x 6.0
(byte*) bitmap_init::yoffs
(byte*) bitmap_init::yoffs#1 yoffs zp ZP_WORD:7 22.0
(byte*) bitmap_init::yoffs#2 yoffs zp ZP_WORD:7 6.111111111111112
(byte*) bitmap_init::yoffs#4 yoffs zp ZP_WORD:7 11.0
(void()) bitmap_line((byte) bitmap_line::x0 , (byte) bitmap_line::x1 , (byte) bitmap_line::y0 , (byte) bitmap_line::y1)
(label) bitmap_line::@1
(label) bitmap_line::@10
(label) bitmap_line::@13
(label) bitmap_line::@15
(label) bitmap_line::@16
(label) bitmap_line::@17
(label) bitmap_line::@2
(label) bitmap_line::@20
(label) bitmap_line::@23
(label) bitmap_line::@24
(label) bitmap_line::@27
(label) bitmap_line::@3
(label) bitmap_line::@6
(label) bitmap_line::@9
(label) bitmap_line::@return
(byte) bitmap_line::x0
(byte) bitmap_line::x0#0 x0 zp ZP_BYTE:13 1.260869565217391
(byte) bitmap_line::x1
(byte) bitmap_line::x1#0 x1 zp ZP_BYTE:14 1.3181818181818181
(byte) bitmap_line::xd
(byte) bitmap_line::xd#0 xd zp ZP_BYTE:3 0.7
(byte) bitmap_line::xd#1 xd zp ZP_BYTE:3 0.7
(byte) bitmap_line::y0
(byte) bitmap_line::y0#0 y0 zp ZP_BYTE:5 1.6666666666666674
(byte) bitmap_line::y1
(byte) bitmap_line::y1#0 reg byte y 1.7500000000000007
(byte) bitmap_line::yd
(byte) bitmap_line::yd#0 yd zp ZP_BYTE:4 0.8888888888888888
(byte) bitmap_line::yd#1 yd zp ZP_BYTE:4 0.8888888888888888
(byte) bitmap_line::yd#10 yd zp ZP_BYTE:4 0.8888888888888888
(byte) bitmap_line::yd#3 yd zp ZP_BYTE:4 0.8888888888888888
(void()) bitmap_line_xdyd((byte) bitmap_line_xdyd::x , (byte) bitmap_line_xdyd::y , (byte) bitmap_line_xdyd::x1 , (byte) bitmap_line_xdyd::xd , (byte) bitmap_line_xdyd::yd)
(byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 $6 zp ZP_BYTE:13 202.0
(label) bitmap_line_xdyd::@1
(label) bitmap_line_xdyd::@2
(label) bitmap_line_xdyd::@3
(label) bitmap_line_xdyd::@5
(label) bitmap_line_xdyd::@return
(byte) bitmap_line_xdyd::e
(byte) bitmap_line_xdyd::e#0 e zp ZP_BYTE:6 4.0
(byte) bitmap_line_xdyd::e#1 e zp ZP_BYTE:6 134.66666666666666
(byte) bitmap_line_xdyd::e#2 e zp ZP_BYTE:6 202.0
(byte) bitmap_line_xdyd::e#3 e zp ZP_BYTE:6 40.8
(byte) bitmap_line_xdyd::e#6 e zp ZP_BYTE:6 101.0
(byte) bitmap_line_xdyd::x
(byte) bitmap_line_xdyd::x#0 reg byte x 0.8
(byte) bitmap_line_xdyd::x#1 reg byte x 0.8
(byte) bitmap_line_xdyd::x#2 reg byte x 37.875
(byte) bitmap_line_xdyd::x#3 reg byte x 76.25
(byte) bitmap_line_xdyd::x#6 reg byte x 3.0
(byte) bitmap_line_xdyd::x1
(byte) bitmap_line_xdyd::x1#0 x1 zp ZP_BYTE:14 1.3333333333333333
(byte) bitmap_line_xdyd::x1#1 x1 zp ZP_BYTE:14 1.3333333333333333
(byte) bitmap_line_xdyd::x1#6 x1 zp ZP_BYTE:14 7.5
(byte) bitmap_line_xdyd::xd
(byte) bitmap_line_xdyd::xd#0 xd zp ZP_BYTE:3 2.0
(byte) bitmap_line_xdyd::xd#1 xd zp ZP_BYTE:3 2.0
(byte) bitmap_line_xdyd::xd#5 xd zp ZP_BYTE:3 14.714285714285715
(byte) bitmap_line_xdyd::y
(byte) bitmap_line_xdyd::y#0 y zp ZP_BYTE:5 1.0
(byte) bitmap_line_xdyd::y#1 y zp ZP_BYTE:5 1.0
(byte) bitmap_line_xdyd::y#2 y zp ZP_BYTE:5 101.0
(byte) bitmap_line_xdyd::y#3 y zp ZP_BYTE:5 58.00000000000001
(byte) bitmap_line_xdyd::y#5 y zp ZP_BYTE:5 3.0
(byte) bitmap_line_xdyd::y#6 y zp ZP_BYTE:5 101.0
(byte) bitmap_line_xdyd::yd
(byte) bitmap_line_xdyd::yd#0 yd zp ZP_BYTE:4 4.0
(byte) bitmap_line_xdyd::yd#1 yd zp ZP_BYTE:4 4.0
(byte) bitmap_line_xdyd::yd#2 yd zp ZP_BYTE:4 7.642857142857143
(void()) bitmap_line_xdyi((byte) bitmap_line_xdyi::x , (byte) bitmap_line_xdyi::y , (byte) bitmap_line_xdyi::x1 , (byte) bitmap_line_xdyi::xd , (byte) bitmap_line_xdyi::yd)
(byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 $6 zp ZP_BYTE:14 202.0
(label) bitmap_line_xdyi::@1
(label) bitmap_line_xdyi::@2
(label) bitmap_line_xdyi::@3
(label) bitmap_line_xdyi::@5
(label) bitmap_line_xdyi::@return
(byte) bitmap_line_xdyi::e
(byte) bitmap_line_xdyi::e#0 e zp ZP_BYTE:6 4.0
(byte) bitmap_line_xdyi::e#1 e zp ZP_BYTE:6 134.66666666666666
(byte) bitmap_line_xdyi::e#2 e zp ZP_BYTE:6 202.0
(byte) bitmap_line_xdyi::e#3 e zp ZP_BYTE:6 40.8
(byte) bitmap_line_xdyi::e#6 e zp ZP_BYTE:6 101.0
(byte) bitmap_line_xdyi::x
(byte) bitmap_line_xdyi::x#0 reg byte x 0.8
(byte) bitmap_line_xdyi::x#1 reg byte x 0.8
(byte) bitmap_line_xdyi::x#2 reg byte x 37.875
(byte) bitmap_line_xdyi::x#3 reg byte x 76.25
(byte) bitmap_line_xdyi::x#6 reg byte x 3.0
(byte) bitmap_line_xdyi::x1
(byte) bitmap_line_xdyi::x1#0 x1 zp ZP_BYTE:13 1.3333333333333333
(byte) bitmap_line_xdyi::x1#1 x1 zp ZP_BYTE:13 1.3333333333333333
(byte) bitmap_line_xdyi::x1#6 x1 zp ZP_BYTE:13 7.5
(byte) bitmap_line_xdyi::xd
(byte) bitmap_line_xdyi::xd#0 xd zp ZP_BYTE:3 2.0
(byte) bitmap_line_xdyi::xd#1 xd zp ZP_BYTE:3 2.0
(byte) bitmap_line_xdyi::xd#5 xd zp ZP_BYTE:3 14.714285714285715
(byte) bitmap_line_xdyi::y
(byte) bitmap_line_xdyi::y#0 y zp ZP_BYTE:5 1.0
(byte) bitmap_line_xdyi::y#1 y zp ZP_BYTE:5 1.0
(byte) bitmap_line_xdyi::y#2 y zp ZP_BYTE:5 101.0
(byte) bitmap_line_xdyi::y#3 y zp ZP_BYTE:5 58.00000000000001
(byte) bitmap_line_xdyi::y#5 y zp ZP_BYTE:5 3.0
(byte) bitmap_line_xdyi::y#6 y zp ZP_BYTE:5 101.0
(byte) bitmap_line_xdyi::yd
(byte) bitmap_line_xdyi::yd#0 yd zp ZP_BYTE:4 4.0
(byte) bitmap_line_xdyi::yd#1 yd zp ZP_BYTE:4 4.0
(byte) bitmap_line_xdyi::yd#2 yd zp ZP_BYTE:4 7.642857142857143
(void()) bitmap_line_ydxd((byte) bitmap_line_ydxd::y , (byte) bitmap_line_ydxd::x , (byte) bitmap_line_ydxd::y1 , (byte) bitmap_line_ydxd::yd , (byte) bitmap_line_ydxd::xd)
(byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 reg byte y 202.0
(label) bitmap_line_ydxd::@1
(label) bitmap_line_ydxd::@2
(label) bitmap_line_ydxd::@3
(label) bitmap_line_ydxd::@5
(label) bitmap_line_ydxd::@return
(byte) bitmap_line_ydxd::e
(byte) bitmap_line_ydxd::e#0 e zp ZP_BYTE:13 4.0
(byte) bitmap_line_ydxd::e#1 e zp ZP_BYTE:13 134.66666666666666
(byte) bitmap_line_ydxd::e#2 e zp ZP_BYTE:13 202.0
(byte) bitmap_line_ydxd::e#3 e zp ZP_BYTE:13 40.8
(byte) bitmap_line_ydxd::e#6 e zp ZP_BYTE:13 101.0
(byte) bitmap_line_ydxd::x
(byte) bitmap_line_ydxd::x#0 reg byte x 1.0
(byte) bitmap_line_ydxd::x#1 reg byte x 1.0
(byte) bitmap_line_ydxd::x#2 reg byte x 101.0
(byte) bitmap_line_ydxd::x#3 reg byte x 58.00000000000001
(byte) bitmap_line_ydxd::x#5 reg byte x 3.0
(byte) bitmap_line_ydxd::x#6 reg byte x 101.0
(byte) bitmap_line_ydxd::xd
(byte) bitmap_line_ydxd::xd#0 xd zp ZP_BYTE:3 4.0
(byte) bitmap_line_ydxd::xd#1 xd zp ZP_BYTE:3 4.0
(byte) bitmap_line_ydxd::xd#2 xd zp ZP_BYTE:3 7.642857142857143
(byte) bitmap_line_ydxd::y
(byte) bitmap_line_ydxd::y#0 y zp ZP_BYTE:6 0.8
(byte) bitmap_line_ydxd::y#1 y zp ZP_BYTE:6 0.8
(byte) bitmap_line_ydxd::y#2 y zp ZP_BYTE:6 76.25
(byte) bitmap_line_ydxd::y#3 y zp ZP_BYTE:6 37.875
(byte) bitmap_line_ydxd::y#7 y zp ZP_BYTE:6 3.0
(byte) bitmap_line_ydxd::y1
(byte) bitmap_line_ydxd::y1#0 y1 zp ZP_BYTE:5 1.3333333333333333
(byte) bitmap_line_ydxd::y1#1 y1 zp ZP_BYTE:5 1.3333333333333333
(byte) bitmap_line_ydxd::y1#6 y1 zp ZP_BYTE:5 7.5
(byte) bitmap_line_ydxd::yd
(byte) bitmap_line_ydxd::yd#0 yd zp ZP_BYTE:4 2.0
(byte) bitmap_line_ydxd::yd#1 yd zp ZP_BYTE:4 2.0
(byte) bitmap_line_ydxd::yd#5 yd zp ZP_BYTE:4 14.714285714285715
(void()) bitmap_line_ydxi((byte) bitmap_line_ydxi::y , (byte) bitmap_line_ydxi::x , (byte) bitmap_line_ydxi::y1 , (byte) bitmap_line_ydxi::yd , (byte) bitmap_line_ydxi::xd)
(byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 reg byte y 202.0
(label) bitmap_line_ydxi::@1
(label) bitmap_line_ydxi::@2
(label) bitmap_line_ydxi::@3
(label) bitmap_line_ydxi::@5
(label) bitmap_line_ydxi::@return
(byte) bitmap_line_ydxi::e
(byte) bitmap_line_ydxi::e#0 e zp ZP_BYTE:13 4.0
(byte) bitmap_line_ydxi::e#1 e zp ZP_BYTE:13 134.66666666666666
(byte) bitmap_line_ydxi::e#2 e zp ZP_BYTE:13 202.0
(byte) bitmap_line_ydxi::e#3 e zp ZP_BYTE:13 40.8
(byte) bitmap_line_ydxi::e#6 e zp ZP_BYTE:13 101.0
(byte) bitmap_line_ydxi::x
(byte) bitmap_line_ydxi::x#0 reg byte x 1.0
(byte) bitmap_line_ydxi::x#1 reg byte x 1.0
(byte) bitmap_line_ydxi::x#2 reg byte x 101.0
(byte) bitmap_line_ydxi::x#3 reg byte x 58.00000000000001
(byte) bitmap_line_ydxi::x#5 reg byte x 3.0
(byte) bitmap_line_ydxi::x#6 reg byte x 101.0
(byte) bitmap_line_ydxi::xd
(byte) bitmap_line_ydxi::xd#0 xd zp ZP_BYTE:3 4.0
(byte) bitmap_line_ydxi::xd#1 xd zp ZP_BYTE:3 4.0
(byte) bitmap_line_ydxi::xd#2 xd zp ZP_BYTE:3 7.642857142857143
(byte) bitmap_line_ydxi::y
(byte) bitmap_line_ydxi::y#0 y zp ZP_BYTE:6 0.8
(byte) bitmap_line_ydxi::y#1 y zp ZP_BYTE:6 0.8
(byte) bitmap_line_ydxi::y#2 y zp ZP_BYTE:6 37.875
(byte) bitmap_line_ydxi::y#3 y zp ZP_BYTE:6 76.25
(byte) bitmap_line_ydxi::y#6 y zp ZP_BYTE:6 3.0
(byte) bitmap_line_ydxi::y1
(byte) bitmap_line_ydxi::y1#0 y1 zp ZP_BYTE:5 1.3333333333333333
(byte) bitmap_line_ydxi::y1#1 y1 zp ZP_BYTE:5 1.3333333333333333
(byte) bitmap_line_ydxi::y1#6 y1 zp ZP_BYTE:5 7.5
(byte) bitmap_line_ydxi::yd
(byte) bitmap_line_ydxi::yd#0 yd zp ZP_BYTE:4 2.0
(byte) bitmap_line_ydxi::yd#1 yd zp ZP_BYTE:4 2.0
(byte) bitmap_line_ydxi::yd#5 yd zp ZP_BYTE:4 14.714285714285715
(void()) bitmap_plot((byte) bitmap_plot::x , (byte) bitmap_plot::y)
(word~) bitmap_plot::$0 $0 zp ZP_WORD:7 1.0
(byte~) bitmap_plot::$1 reg byte a 4.0
(label) bitmap_plot::@return
(byte*) bitmap_plot::plotter
(word) bitmap_plot::plotter_x
(word) bitmap_plot::plotter_x#0 plotter_x zp ZP_WORD:7 2.0
(word) bitmap_plot::plotter_y
(word) bitmap_plot::plotter_y#0 plotter_y zp ZP_WORD:9 4.0
(byte) bitmap_plot::x
(byte) bitmap_plot::x#0 reg byte x 101.0
(byte) bitmap_plot::x#1 reg byte x 101.0
(byte) bitmap_plot::x#2 reg byte x 101.0
(byte) bitmap_plot::x#3 reg byte x 101.0
(byte) bitmap_plot::x#4 reg byte x 102.5
(byte) bitmap_plot::y
(byte) bitmap_plot::y#0 reg byte y 202.0
(byte) bitmap_plot::y#1 reg byte y 202.0
(byte) bitmap_plot::y#2 reg byte y 202.0
(byte) bitmap_plot::y#3 reg byte y 202.0
(byte) bitmap_plot::y#4 reg byte y 204.0
(byte[256]) bitmap_plot_bit
(const byte[256]) bitmap_plot_bit#0 bitmap_plot_bit = { fill( 256, 0) }
(byte[256]) bitmap_plot_xhi
(const byte[256]) bitmap_plot_xhi#0 bitmap_plot_xhi = { fill( 256, 0) }
(byte[256]) bitmap_plot_xlo
(const byte[256]) bitmap_plot_xlo#0 bitmap_plot_xlo = { fill( 256, 0) }
(byte[256]) bitmap_plot_yhi
(const byte[256]) bitmap_plot_yhi#0 bitmap_plot_yhi = { fill( 256, 0) }
(byte[256]) bitmap_plot_ylo
(const byte[256]) bitmap_plot_ylo#0 bitmap_plot_ylo = { fill( 256, 0) }
(void()) dtvSetCpuBankSegment1((byte) dtvSetCpuBankSegment1::cpuBankIdx)
(label) dtvSetCpuBankSegment1::@return
(byte*) dtvSetCpuBankSegment1::cpuBank
@ -224,14 +491,14 @@
(byte*) form_ctrl_overs
(const byte*) form_ctrl_overs#0 form_ctrl_overs = (const byte[]) form_fields_val#0+(byte/signed byte/word/signed word/dword/signed dword) 9
(signed byte) form_cursor_count
(signed byte) form_cursor_count#1 form_cursor_count zp ZP_BYTE:5 0.7647058823529412
(signed byte) form_cursor_count#1 form_cursor_count zp ZP_BYTE:5 0.7222222222222223
(signed byte) form_cursor_count#13 form_cursor_count zp ZP_BYTE:5 42.599999999999994
(signed byte) form_cursor_count#15 form_cursor_count zp ZP_BYTE:5 0.4
(signed byte) form_cursor_count#16 form_cursor_count zp ZP_BYTE:5 34.66666666666667
(signed byte) form_cursor_count#21 form_cursor_count zp ZP_BYTE:5 25.75
(signed byte) form_cursor_count#5 form_cursor_count zp ZP_BYTE:5 2.0
(byte) form_field_idx
(byte) form_field_idx#1 form_field_idx zp ZP_BYTE:6 0.7647058823529412
(byte) form_field_idx#1 form_field_idx zp ZP_BYTE:6 0.7222222222222223
(byte) form_field_idx#14 form_field_idx zp ZP_BYTE:6 42.599999999999994
(byte) form_field_idx#18 form_field_idx zp ZP_BYTE:6 35.00000000000001
(byte) form_field_idx#28 form_field_idx zp ZP_BYTE:6 5.949999999999997
@ -329,6 +596,9 @@
(const byte*) form_vic_bg3_lo#0 form_vic_bg3_lo = (const byte[]) form_fields_val#0+(byte/signed byte/word/signed word/dword/signed dword) 34
(void()) gfx_init()
(label) gfx_init::@1
(label) gfx_init::@2
(label) gfx_init::@3
(label) gfx_init::@4
(label) gfx_init::@return
(void()) gfx_init_plane_8bppchunky()
(word~) gfx_init_plane_8bppchunky::$6 $6 zp ZP_WORD:11 202.0
@ -358,25 +628,61 @@
(byte) gfx_init_plane_8bppchunky::y
(byte) gfx_init_plane_8bppchunky::y#1 y zp ZP_BYTE:2 16.5
(byte) gfx_init_plane_8bppchunky::y#6 y zp ZP_BYTE:2 9.461538461538462
(void()) gfx_init_screen_stdchar()
(byte~) gfx_init_screen_stdchar::$0 reg byte a 202.0
(byte~) gfx_init_screen_stdchar::$1 $1 zp ZP_BYTE:3 101.0
(byte~) gfx_init_screen_stdchar::$2 reg byte a 202.0
(byte~) gfx_init_screen_stdchar::$3 reg byte a 202.0
(label) gfx_init_screen_stdchar::@1
(label) gfx_init_screen_stdchar::@2
(label) gfx_init_screen_stdchar::@3
(label) gfx_init_screen_stdchar::@return
(byte*) gfx_init_screen_stdchar::ch
(byte*) gfx_init_screen_stdchar::ch#1 ch zp ZP_WORD:7 42.599999999999994
(byte*) gfx_init_screen_stdchar::ch#2 ch zp ZP_WORD:7 52.33333333333333
(byte*) gfx_init_screen_stdchar::ch#3 ch zp ZP_WORD:7 22.0
(byte) gfx_init_screen_stdchar::cx
(byte) gfx_init_screen_stdchar::cx#1 reg byte x 151.5
(byte) gfx_init_screen_stdchar::cx#2 reg byte x 43.285714285714285
(byte) gfx_init_screen_stdchar::cy
(byte) gfx_init_screen_stdchar::cy#1 cy zp ZP_BYTE:2 16.5
(byte) gfx_init_screen_stdchar::cy#4 cy zp ZP_BYTE:2 12.299999999999999
(void()) gfx_init_vic_bitmap()
(label) gfx_init_vic_bitmap::@1
(label) gfx_init_vic_bitmap::@3
(label) gfx_init_vic_bitmap::@5
(label) gfx_init_vic_bitmap::@return
(byte) gfx_init_vic_bitmap::l
(byte) gfx_init_vic_bitmap::l#1 l zp ZP_BYTE:2 16.5
(byte) gfx_init_vic_bitmap::l#2 l zp ZP_BYTE:2 11.0
(byte) gfx_init_vic_bitmap::lines_cnt
(const byte) gfx_init_vic_bitmap::lines_cnt#0 lines_cnt = (byte/signed byte/word/signed word/dword/signed dword) 9
(byte[]) gfx_init_vic_bitmap::lines_x
(const byte[]) gfx_init_vic_bitmap::lines_x#0 lines_x = { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/word/signed word/dword/signed dword) 255, (byte/word/signed word/dword/signed dword) 255, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/word/signed word/dword/signed dword) 128, (byte/word/signed word/dword/signed dword) 255, (byte/word/signed word/dword/signed dword) 128, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/word/signed word/dword/signed dword) 128 }
(byte[]) gfx_init_vic_bitmap::lines_y
(const byte[]) gfx_init_vic_bitmap::lines_y#0 lines_y = { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/word/signed word/dword/signed dword) 199, (byte/word/signed word/dword/signed dword) 199, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 100, (byte/word/signed word/dword/signed dword) 199, (byte/signed byte/word/signed word/dword/signed dword) 100, (byte/signed byte/word/signed word/dword/signed dword) 0 }
(void()) gfx_init_vic_screen_bitmap()
(byte~) gfx_init_vic_screen_bitmap::$0 reg byte a 202.0
(byte~) gfx_init_vic_screen_bitmap::$3 reg byte a 202.0
(byte~) gfx_init_vic_screen_bitmap::$4 reg byte a 202.0
(label) gfx_init_vic_screen_bitmap::@1
(label) gfx_init_vic_screen_bitmap::@2
(label) gfx_init_vic_screen_bitmap::@3
(label) gfx_init_vic_screen_bitmap::@return
(byte*) gfx_init_vic_screen_bitmap::ch
(byte*) gfx_init_vic_screen_bitmap::ch#1 ch zp ZP_WORD:7 42.599999999999994
(byte*) gfx_init_vic_screen_bitmap::ch#2 ch zp ZP_WORD:7 44.85714285714286
(byte*) gfx_init_vic_screen_bitmap::ch#3 ch zp ZP_WORD:7 22.0
(byte) gfx_init_vic_screen_bitmap::col
(byte) gfx_init_vic_screen_bitmap::col#0 reg byte y 151.5
(byte) gfx_init_vic_screen_bitmap::col2
(byte) gfx_init_vic_screen_bitmap::col2#0 col2 zp ZP_BYTE:3 101.0
(byte) gfx_init_vic_screen_bitmap::cx
(byte) gfx_init_vic_screen_bitmap::cx#1 reg byte x 151.5
(byte) gfx_init_vic_screen_bitmap::cx#2 reg byte x 37.875
(byte) gfx_init_vic_screen_bitmap::cy
(byte) gfx_init_vic_screen_bitmap::cy#1 cy zp ZP_BYTE:2 16.5
(byte) gfx_init_vic_screen_bitmap::cy#4 cy zp ZP_BYTE:2 11.181818181818182
(void()) gfx_init_vic_screen_stdchar()
(byte~) gfx_init_vic_screen_stdchar::$0 reg byte a 202.0
(byte~) gfx_init_vic_screen_stdchar::$1 $1 zp ZP_BYTE:3 101.0
(byte~) gfx_init_vic_screen_stdchar::$2 reg byte a 202.0
(byte~) gfx_init_vic_screen_stdchar::$3 reg byte a 202.0
(label) gfx_init_vic_screen_stdchar::@1
(label) gfx_init_vic_screen_stdchar::@2
(label) gfx_init_vic_screen_stdchar::@3
(label) gfx_init_vic_screen_stdchar::@return
(byte*) gfx_init_vic_screen_stdchar::ch
(byte*) gfx_init_vic_screen_stdchar::ch#1 ch zp ZP_WORD:7 42.599999999999994
(byte*) gfx_init_vic_screen_stdchar::ch#2 ch zp ZP_WORD:7 52.33333333333333
(byte*) gfx_init_vic_screen_stdchar::ch#3 ch zp ZP_WORD:7 22.0
(byte) gfx_init_vic_screen_stdchar::cx
(byte) gfx_init_vic_screen_stdchar::cx#1 reg byte x 151.5
(byte) gfx_init_vic_screen_stdchar::cx#2 reg byte x 43.285714285714285
(byte) gfx_init_vic_screen_stdchar::cy
(byte) gfx_init_vic_screen_stdchar::cy#1 cy zp ZP_BYTE:2 16.5
(byte) gfx_init_vic_screen_stdchar::cy#4 cy zp ZP_BYTE:2 12.299999999999999
(void()) gfx_mode()
(byte~) gfx_mode::$29 reg byte a 4.0
(word~) gfx_mode::$33 $33 zp ZP_WORD:7 4.0
@ -451,11 +757,11 @@
(byte) gfx_mode::keyboard_event
(byte) gfx_mode::keyboard_event#0 reg byte a 202.0
(dword) gfx_mode::plane_a
(dword) gfx_mode::plane_a#0 plane_a zp ZP_DWORD:13 1.1428571428571428
(dword) gfx_mode::plane_a#0 plane_a zp ZP_DWORD:15 1.1428571428571428
(byte) gfx_mode::plane_a_offs
(byte) gfx_mode::plane_a_offs#0 reg byte a 4.0
(dword) gfx_mode::plane_b
(dword) gfx_mode::plane_b#0 plane_b zp ZP_DWORD:13 1.1428571428571428
(dword) gfx_mode::plane_b#0 plane_b zp ZP_DWORD:15 1.1428571428571428
(byte) gfx_mode::plane_b_offs
(byte) gfx_mode::plane_b_offs#0 reg byte a 4.0
(byte) gfx_mode::vic_control
@ -533,21 +839,21 @@
(byte) keyboard_event_scan::row#1 row zp ZP_BYTE:2 1501.5
(byte) keyboard_event_scan::row#2 row zp ZP_BYTE:2 600.24
(byte) keyboard_event_scan::row_scan
(byte) keyboard_event_scan::row_scan#0 row_scan zp ZP_BYTE:17 1278.0555555555554
(byte) keyboard_event_scan::row_scan#0 row_scan zp ZP_BYTE:13 1278.0555555555554
(byte[8]) keyboard_events
(const byte[8]) keyboard_events#0 keyboard_events = { fill( 8, 0) }
(byte) keyboard_events_size
(byte) keyboard_events_size#1 keyboard_events_size zp ZP_BYTE:4 20002.0
(byte) keyboard_events_size#104 keyboard_events_size zp ZP_BYTE:4 105.0
(byte) keyboard_events_size#105 keyboard_events_size zp ZP_BYTE:4 88.5
(byte) keyboard_events_size#105 keyboard_events_size zp ZP_BYTE:4 105.0
(byte) keyboard_events_size#106 keyboard_events_size zp ZP_BYTE:4 88.5
(byte) keyboard_events_size#11 keyboard_events_size zp ZP_BYTE:4 71.0
(byte) keyboard_events_size#111 keyboard_events_size zp ZP_BYTE:4 10201.2
(byte) keyboard_events_size#112 keyboard_events_size zp ZP_BYTE:4 429.2857142857143
(byte) keyboard_events_size#13 keyboard_events_size zp ZP_BYTE:4 3.4431818181818183
(byte) keyboard_events_size#112 keyboard_events_size zp ZP_BYTE:4 10201.2
(byte) keyboard_events_size#113 keyboard_events_size zp ZP_BYTE:4 429.2857142857143
(byte) keyboard_events_size#13 keyboard_events_size zp ZP_BYTE:4 3.404494382022472
(byte) keyboard_events_size#18 keyboard_events_size zp ZP_BYTE:4 8100.9000000000015
(byte) keyboard_events_size#2 keyboard_events_size zp ZP_BYTE:4 20002.0
(byte) keyboard_events_size#24 keyboard_events_size zp ZP_BYTE:4 10.461538461538462
(byte) keyboard_events_size#27 keyboard_events_size zp ZP_BYTE:4 0.7647058823529412
(byte) keyboard_events_size#27 keyboard_events_size zp ZP_BYTE:4 0.7222222222222223
(byte) keyboard_events_size#4 keyboard_events_size zp ZP_BYTE:4 3.0
(byte) keyboard_events_size#45 keyboard_events_size zp ZP_BYTE:4 101.0
(byte) keyboard_events_size#47 keyboard_events_size zp ZP_BYTE:4 11.444444444444443
@ -567,12 +873,12 @@
(const byte[8]) keyboard_matrix_row_bitmask#0 keyboard_matrix_row_bitmask = { (byte/word/signed word/dword/signed dword) 254, (byte/word/signed word/dword/signed dword) 253, (byte/word/signed word/dword/signed dword) 251, (byte/word/signed word/dword/signed dword) 247, (byte/word/signed word/dword/signed dword) 239, (byte/word/signed word/dword/signed dword) 223, (byte/word/signed word/dword/signed dword) 191, (byte/signed byte/word/signed word/dword/signed dword) 127 }
(byte) keyboard_modifiers
(byte) keyboard_modifiers#11 keyboard_modifiers zp ZP_BYTE:3 71.0
(byte) keyboard_modifiers#13 keyboard_modifiers zp ZP_BYTE:3 3.4431818181818183
(byte) keyboard_modifiers#13 keyboard_modifiers zp ZP_BYTE:3 3.404494382022472
(byte) keyboard_modifiers#18 keyboard_modifiers zp ZP_BYTE:3 0.8
(byte) keyboard_modifiers#19 keyboard_modifiers zp ZP_BYTE:3 1.6
(byte) keyboard_modifiers#20 keyboard_modifiers zp ZP_BYTE:3 1.6
(byte) keyboard_modifiers#21 keyboard_modifiers zp ZP_BYTE:3 9.58139534883721
(byte) keyboard_modifiers#24 keyboard_modifiers zp ZP_BYTE:3 0.7647058823529412
(byte) keyboard_modifiers#24 keyboard_modifiers zp ZP_BYTE:3 0.7222222222222223
(byte) keyboard_modifiers#3 keyboard_modifiers zp ZP_BYTE:3 4.0
(byte) keyboard_modifiers#4 keyboard_modifiers zp ZP_BYTE:3 4.0
(byte) keyboard_modifiers#42 keyboard_modifiers zp ZP_BYTE:3 151.5
@ -592,8 +898,8 @@
(byte*) print_char_cursor#20 print_char_cursor zp ZP_WORD:9 83.0
(byte*) print_char_cursor#22 print_char_cursor zp ZP_WORD:9 12.0
(byte*) print_char_cursor#38 print_char_cursor zp ZP_WORD:9 57.714285714285715
(byte*~) print_char_cursor#60 print_char_cursor zp ZP_WORD:9 4.0
(byte*~) print_char_cursor#61 print_char_cursor zp ZP_WORD:9 22.0
(byte*~) print_char_cursor#61 print_char_cursor zp ZP_WORD:9 4.0
(byte*~) print_char_cursor#62 print_char_cursor zp ZP_WORD:9 22.0
(void()) print_cls()
(byte*~) print_cls::$0 $0 zp ZP_WORD:9 22.0
(label) print_cls::@1
@ -636,26 +942,39 @@ reg byte x [ gfx_mode::vic_control#4 gfx_mode::vic_control#2 gfx_mode::vic_contr
reg byte a [ gfx_mode::vic_control2#2 ]
reg byte x [ gfx_mode::i#2 gfx_mode::i#1 ]
reg byte a [ keyboard_event_get::return#2 keyboard_event_get::return#0 ]
zp ZP_BYTE:2 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 keyboard_event_pressed::keycode#4 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 gfx_init_screen_stdchar::cy#4 gfx_init_screen_stdchar::cy#1 ]
zp ZP_BYTE:2 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 keyboard_event_pressed::keycode#4 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 gfx_init_vic_bitmap::l#2 gfx_init_vic_bitmap::l#1 bitmap_clear::y#4 bitmap_clear::y#1 gfx_init_vic_screen_bitmap::cy#4 gfx_init_vic_screen_bitmap::cy#1 gfx_init_vic_screen_stdchar::cy#4 gfx_init_vic_screen_stdchar::cy#1 bitmap_init::$6 ]
reg byte x [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ]
zp ZP_BYTE:3 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 keyboard_modifiers#45 keyboard_modifiers#24 keyboard_modifiers#11 keyboard_modifiers#42 keyboard_modifiers#13 keyboard_modifiers#21 keyboard_modifiers#20 keyboard_modifiers#4 keyboard_modifiers#19 keyboard_modifiers#3 keyboard_modifiers#18 keyboard_modifiers#5 gfx_init_screen_stdchar::$1 ]
zp ZP_BYTE:4 [ keyboard_events_size#18 keyboard_events_size#112 keyboard_events_size#104 keyboard_events_size#47 keyboard_events_size#27 keyboard_events_size#11 keyboard_events_size#45 keyboard_events_size#13 keyboard_events_size#24 keyboard_events_size#4 keyboard_events_size#105 keyboard_events_size#111 keyboard_events_size#2 keyboard_events_size#1 ]
zp ZP_BYTE:3 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 keyboard_modifiers#45 keyboard_modifiers#24 keyboard_modifiers#11 keyboard_modifiers#42 keyboard_modifiers#13 keyboard_modifiers#21 keyboard_modifiers#20 keyboard_modifiers#4 keyboard_modifiers#19 keyboard_modifiers#3 keyboard_modifiers#18 keyboard_modifiers#5 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 bitmap_line::xd#1 bitmap_line::xd#0 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#1 bitmap_line_ydxd::xd#0 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::xd#1 gfx_init_vic_screen_bitmap::col2#0 gfx_init_vic_screen_stdchar::$1 ]
zp ZP_BYTE:4 [ keyboard_events_size#18 keyboard_events_size#113 keyboard_events_size#105 keyboard_events_size#47 keyboard_events_size#27 keyboard_events_size#11 keyboard_events_size#45 keyboard_events_size#13 keyboard_events_size#24 keyboard_events_size#4 keyboard_events_size#106 keyboard_events_size#112 keyboard_events_size#2 keyboard_events_size#1 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 bitmap_line::yd#1 bitmap_line::yd#10 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#1 bitmap_line_ydxd::yd#0 bitmap_line::yd#0 bitmap_line::yd#3 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#0 bitmap_line_xdyd::yd#1 ]
reg byte x [ form_mode::i#2 form_mode::i#1 ]
zp ZP_BYTE:5 [ form_cursor_count#21 form_cursor_count#16 form_cursor_count#1 form_cursor_count#13 form_cursor_count#15 form_cursor_count#5 ]
zp ZP_BYTE:6 [ form_field_idx#28 form_field_idx#18 form_field_idx#1 form_field_idx#14 form_field_idx#32 form_field_idx#43 form_field_idx#44 ]
zp ZP_BYTE:5 [ form_cursor_count#21 form_cursor_count#16 form_cursor_count#1 form_cursor_count#13 form_cursor_count#15 form_cursor_count#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 bitmap_line::y0#0 bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#1 bitmap_line_ydxd::y1#0 bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 ]
zp ZP_BYTE:6 [ form_field_idx#28 form_field_idx#18 form_field_idx#1 form_field_idx#14 form_field_idx#32 form_field_idx#43 form_field_idx#44 bitmap_line_ydxi::y#3 bitmap_line_ydxi::y#6 bitmap_line_ydxi::y#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::y#2 bitmap_line_xdyi::e#3 bitmap_line_xdyi::e#0 bitmap_line_xdyi::e#6 bitmap_line_xdyi::e#2 bitmap_line_xdyi::e#1 bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#3 bitmap_line_xdyd::e#3 bitmap_line_xdyd::e#0 bitmap_line_xdyd::e#6 bitmap_line_xdyd::e#2 bitmap_line_xdyd::e#1 ]
reg byte x [ form_control::return#2 ]
reg byte x [ form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 form_field_ptr::field_idx#0 ]
reg byte x [ form_render_values::idx#2 form_render_values::idx#1 ]
zp ZP_WORD:7 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 print_cls::sc#2 print_cls::sc#0 print_cls::sc#1 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 gfx_init_screen_stdchar::ch#2 gfx_init_screen_stdchar::ch#3 gfx_init_screen_stdchar::ch#1 gfx_mode::$33 gfx_mode::$35 gfx_mode::$37 gfx_mode::$46 gfx_mode::$48 gfx_mode::$50 form_field_ptr::return#3 form_control::field#0 form_field_ptr::return#0 form_field_ptr::$2 form_field_ptr::return#2 form_render_values::field#0 ]
zp ZP_WORD:7 [ form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 print_cls::sc#2 print_cls::sc#0 print_cls::sc#1 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 bitmap_clear::bitmap#2 bitmap_clear::bitmap#3 bitmap_clear::bitmap#5 bitmap_clear::bitmap#1 bitmap_clear::$3 bitmap_init::yoffs#2 bitmap_init::yoffs#4 bitmap_init::yoffs#1 gfx_init_vic_screen_bitmap::ch#2 gfx_init_vic_screen_bitmap::ch#3 gfx_init_vic_screen_bitmap::ch#1 gfx_init_vic_screen_stdchar::ch#2 gfx_init_vic_screen_stdchar::ch#3 gfx_init_vic_screen_stdchar::ch#1 gfx_mode::$33 gfx_mode::$35 gfx_mode::$37 gfx_mode::$46 gfx_mode::$48 gfx_mode::$50 form_field_ptr::return#3 form_control::field#0 form_field_ptr::return#0 form_field_ptr::$2 form_field_ptr::return#2 form_render_values::field#0 bitmap_plot::plotter_x#0 bitmap_plot::$0 ]
reg byte x [ form_set_screen::y#2 form_set_screen::y#1 ]
zp ZP_WORD:9 [ print_char_cursor#20 print_char_cursor#22 print_char_cursor#60 print_char_cursor#61 print_char_cursor#38 print_char_cursor#1 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::gfxb#1 print_cls::$0 ]
zp ZP_WORD:9 [ print_char_cursor#20 print_char_cursor#22 print_char_cursor#61 print_char_cursor#62 print_char_cursor#38 print_char_cursor#1 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::gfxb#1 print_cls::$0 bitmap_plot::plotter_y#0 ]
zp ZP_WORD:11 [ print_line_cursor#21 print_line_cursor#2 print_set_screen::screen#2 print_line_cursor#22 gfx_init_plane_8bppchunky::$6 ]
reg byte x [ gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ]
reg byte a [ dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#1 ]
reg byte x [ gfx_init_screen_stdchar::cx#2 gfx_init_screen_stdchar::cx#1 ]
reg byte x [ bitmap_line_ydxi::x#3 bitmap_line_ydxi::x#5 bitmap_line_ydxi::x#1 bitmap_line_ydxi::x#0 bitmap_line_ydxi::x#6 bitmap_line_ydxi::x#2 ]
zp ZP_BYTE:13 [ bitmap_line_ydxi::e#3 bitmap_line_ydxi::e#0 bitmap_line_ydxi::e#6 bitmap_line_ydxi::e#2 bitmap_line_ydxi::e#1 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::x1#1 bitmap_line::x0#0 bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 keyboard_event_scan::row_scan#0 bitmap_line_xdyd::$6 ]
reg byte x [ bitmap_plot::x#4 bitmap_plot::x#1 bitmap_plot::x#0 bitmap_plot::x#3 bitmap_plot::x#2 ]
reg byte y [ bitmap_plot::y#4 bitmap_plot::y#1 bitmap_plot::y#0 bitmap_plot::y#3 bitmap_plot::y#2 ]
reg byte x [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#2 ]
reg byte x [ bitmap_line_ydxd::x#3 bitmap_line_ydxd::x#5 bitmap_line_ydxd::x#1 bitmap_line_ydxd::x#0 bitmap_line_ydxd::x#6 bitmap_line_ydxd::x#2 ]
zp ZP_BYTE:14 [ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::x1#1 bitmap_line::x1#0 bitmap_line_xdyi::$6 ]
reg byte x [ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#2 ]
reg byte x [ bitmap_clear::x#2 bitmap_clear::x#1 ]
reg byte x [ bitmap_init::x#2 bitmap_init::x#1 ]
reg byte y [ bitmap_init::bits#3 bitmap_init::bits#4 bitmap_init::bits#1 ]
reg byte x [ bitmap_init::y#2 bitmap_init::y#1 ]
reg byte x [ gfx_init_vic_screen_bitmap::cx#2 gfx_init_vic_screen_bitmap::cx#1 ]
reg byte x [ gfx_init_vic_screen_stdchar::cx#2 gfx_init_vic_screen_stdchar::cx#1 ]
reg byte a [ gfx_mode::$29 ]
reg byte a [ gfx_mode::plane_a_offs#0 ]
zp ZP_DWORD:13 [ gfx_mode::plane_a#0 gfx_mode::plane_b#0 ]
zp ZP_DWORD:15 [ gfx_mode::plane_a#0 gfx_mode::plane_b#0 ]
reg byte a [ gfx_mode::$34 ]
reg byte a [ gfx_mode::$36 ]
reg byte a [ gfx_mode::$38 ]
@ -684,7 +1003,6 @@ reg byte a [ keyboard_event_get::return#3 ]
reg byte a [ gfx_mode::keyboard_event#0 ]
reg byte x [ keyboard_matrix_read::rowid#0 ]
reg byte a [ keyboard_matrix_read::return#2 ]
zp ZP_BYTE:17 [ keyboard_event_scan::row_scan#0 ]
reg byte a [ keyboard_event_scan::$3 ]
reg byte a [ keyboard_event_scan::$4 ]
reg byte a [ keyboard_event_scan::event_type#0 ]
@ -717,6 +1035,19 @@ reg byte a [ form_set_screen::$0 ]
reg byte a [ form_set_screen::$1 ]
reg byte a [ print_str_lines::ch#0 ]
reg byte a [ gfx_init_plane_8bppchunky::c#0 ]
reg byte a [ gfx_init_screen_stdchar::$0 ]
reg byte a [ gfx_init_screen_stdchar::$2 ]
reg byte a [ gfx_init_screen_stdchar::$3 ]
reg byte y [ bitmap_line::y1#0 ]
reg byte y [ bitmap_line_ydxi::$6 ]
reg byte a [ bitmap_plot::$1 ]
reg byte y [ bitmap_line_ydxd::$6 ]
reg byte a [ bitmap_init::$0 ]
reg byte a [ bitmap_init::$7 ]
reg byte a [ bitmap_init::$8 ]
reg byte a [ bitmap_init::$9 ]
reg byte a [ bitmap_init::$10 ]
reg byte a [ gfx_init_vic_screen_bitmap::$0 ]
reg byte y [ gfx_init_vic_screen_bitmap::col#0 ]
reg byte a [ gfx_init_vic_screen_bitmap::$3 ]
reg byte a [ gfx_init_vic_screen_bitmap::$4 ]
reg byte a [ gfx_init_vic_screen_stdchar::$0 ]
reg byte a [ gfx_init_vic_screen_stdchar::$2 ]
reg byte a [ gfx_init_vic_screen_stdchar::$3 ]