From 28729cbd4523bb8848d95d28728e79cf25c0153a Mon Sep 17 00:00:00 2001 From: jespergravgaard Date: Thu, 3 Dec 2020 01:52:49 +0100 Subject: [PATCH] Added new MEGA65 DMA methods and tests. Added a missing fragment. --- .../cache/fragment-cache-csg65ce02.asm | 132 ++++++++--- .../cache/fragment-cache-mega45gs02.asm | 220 ++++++++++-------- .../fragment/cache/fragment-cache-mos6502.asm | 2 +- .../cache/fragment-cache-mos6502x.asm | 84 ++----- .../cache/fragment-cache-wdc65c02.asm | 2 +- 5 files changed, 259 insertions(+), 181 deletions(-) diff --git a/src/main/fragment/cache/fragment-cache-csg65ce02.asm b/src/main/fragment/cache/fragment-cache-csg65ce02.asm index 2389d5d7c..b6e482977 100644 --- a/src/main/fragment/cache/fragment-cache-csg65ce02.asm +++ b/src/main/fragment/cache/fragment-cache-csg65ce02.asm @@ -1,4 +1,4 @@ -//KICKC FRAGMENT CACHE 106673312a 1066734e54 +//KICKC FRAGMENT CACHE f8d7c2682 f8d7c43d0 //FRAGMENT vbuz1=vbuc1 lda #{c1} sta {z1} @@ -7,6 +7,16 @@ lda #<{c1} sta {z1} lda #>{c1} sta {z1}+1 +//FRAGMENT vbuz1=_deref_pbuc1 +lda {c1} +sta {z1} +//FRAGMENT vbuz1_lt_vbuc1_then_la1 +lda {z1} +cmp #{c1} +bcc {la1} +//FRAGMENT vbuz1=vbuz2 +lda {z2} +sta {z1} //FRAGMENT vduz1=vduz2 lda {z2} sta {z1} @@ -16,10 +26,52 @@ lda {z2}+2 sta {z1}+2 lda {z2}+3 sta {z1}+3 -//FRAGMENT vbuz1_lt_vbuc1_then_la1 -lda {z1} -cmp #{c1} -bcc {la1} +//FRAGMENT vwuz1=_word_vbuz2 +lda {z2} +sta {z1} +lda #0 +sta {z1}+1 +//FRAGMENT vwuz1=vwuz2_rol_2 +lda {z2} +asl +sta {z1} +lda {z2}+1 +rol +sta {z1}+1 +asl {z1} +rol {z1}+1 +//FRAGMENT vwuz1=vwuz2_plus_vwuz3 +lda {z2} +clc +adc {z3} +sta {z1} +lda {z2}+1 +adc {z3}+1 +sta {z1}+1 +//FRAGMENT vwuz1=vwuz2_rol_3 +lda {z2} +asl +sta {z1} +lda {z2}+1 +rol +sta {z1}+1 +asl {z1} +rol {z1}+1 +asl {z1} +rol {z1}+1 +//FRAGMENT pbuz1=pbuc1_plus_vwuz2 +clc +lda {z2} +adc #<{c1} +sta {z1} +lda {z2}+1 +adc #>{c1} +sta {z1}+1 +//FRAGMENT pbuz1=pbuz2 +lda {z2} +sta {z1} +lda {z2}+1 +sta {z1}+1 //FRAGMENT pbuz1=pbuz1_plus_vbuc1 lda #{c1} clc @@ -44,15 +96,9 @@ inw {z1} lda #{c1} cmp {z1} bne {la1} -//FRAGMENT vbuz1=vbuz2 -lda {z2} -sta {z1} //FRAGMENT _deref_pbuc1=vbuc2 lda #{c2} sta {c1} -//FRAGMENT vbuz1=_deref_pbuc1 -lda {c1} -sta {z1} //FRAGMENT vduz1=vduc1 lda #<{c1} sta {z1} @@ -149,11 +195,6 @@ cmp {z1} beq {la1} !: bcc {la1} -//FRAGMENT pbuz1=pbuz2 -lda {z2} -sta {z1} -lda {z2}+1 -sta {z1}+1 //FRAGMENT vwuz1=vwuz2 lda {z2} sta {z1} @@ -333,9 +374,34 @@ lda {z1} sec sbc {z2} sta {z1} +//FRAGMENT vbuaa=_deref_pbuc1 +lda {c1} +//FRAGMENT vbuxx=_deref_pbuc1 +ldx {c1} //FRAGMENT vbuaa_lt_vbuc1_then_la1 cmp #{c1} bcc {la1} +//FRAGMENT vbuaa=vbuz1 +lda {z1} +//FRAGMENT vbuxx=vbuz1 +ldx {z1} +//FRAGMENT vbuz1=vbuxx +stx {z1} +//FRAGMENT vwuz1=_word_vbuxx +txa +sta {z1} +lda #0 +sta {z1}+1 +//FRAGMENT vwuz1=_word_vbuyy +tya +sta {z1} +lda #0 +sta {z1}+1 +//FRAGMENT vwuz1=_word_vbuzz +tza +sta {z1} +lda #0 +sta {z1}+1 //FRAGMENT pbuz1_derefidx_vbuaa=vbuc1 taz lda #{c1} @@ -371,10 +437,6 @@ cmp #{c1} bne {la1} //FRAGMENT vbuz1=vbuaa sta {z1} -//FRAGMENT vbuaa=_deref_pbuc1 -lda {c1} -//FRAGMENT vbuxx=_deref_pbuc1 -ldx {c1} //FRAGMENT pbuc1_derefidx_vbuxx=_inc_pbuc1_derefidx_vbuxx inc {c1},x //FRAGMENT pbuc1_derefidx_vbuxx_eq_vbuc2_then_la1 @@ -387,10 +449,6 @@ tay lda {c1},y cmp #{c2} beq {la1} -//FRAGMENT vbuaa=vbuz1 -lda {z1} -//FRAGMENT vbuxx=vbuz1 -ldx {z1} //FRAGMENT vbuaa=pbuc1_derefidx_vbuz1 ldy {z1} lda {c1},y @@ -1842,8 +1900,6 @@ sta ({z1}),y tza ldy #0 sta ({z1}),y -//FRAGMENT vbuz1=vbuxx -stx {z1} //FRAGMENT vbuaa_le_vbuc1_then_la1 cmp #{c1} bcc {la1} @@ -2168,6 +2224,10 @@ sbc #1 //FRAGMENT vbuc1_eq_vbuyy_then_la1 cpy #{c1} beq {la1} +//FRAGMENT vbuyy=_deref_pbuc1 +ldy {c1} +//FRAGMENT vbuzz=_deref_pbuc1 +ldz {c1} //FRAGMENT vbuyy_le_vbuaa_then_la1 sty $ff cmp $ff @@ -2206,6 +2266,26 @@ dex stz $ff cpy $ff bcc {la1} +//FRAGMENT vwuz1=vwuz2_plus_vwuz1 +lda {z1} +clc +adc {z2} +sta {z1} +lda {z1}+1 +adc {z2}+1 +sta {z1}+1 +//FRAGMENT pbuz1=pbuc1_plus_vwuz1 +clc +lda {z1} +adc #<{c1} +sta {z1} +lda {z1}+1 +adc #>{c1} +sta {z1}+1 +//FRAGMENT vwuz1=vwuz1_rol_3 +asw {z1} +asw {z1} +asw {z1} //FRAGMENT pbuc1_derefidx_vbuzz=vbuzz tza tax diff --git a/src/main/fragment/cache/fragment-cache-mega45gs02.asm b/src/main/fragment/cache/fragment-cache-mega45gs02.asm index 86ec0a0ff..6189d310e 100644 --- a/src/main/fragment/cache/fragment-cache-mega45gs02.asm +++ b/src/main/fragment/cache/fragment-cache-mega45gs02.asm @@ -1,4 +1,4 @@ -//KICKC FRAGMENT CACHE 106673312a 1066734e54 +//KICKC FRAGMENT CACHE f8d7c2682 f8d7c43d0 //FRAGMENT _deref_pbuc1=vbuc2 lda #{c2} sta {c1} @@ -1614,11 +1614,138 @@ tza sta {c1} lda #0 sta {c1}+1 +//FRAGMENT _deref_pbuc1=_inc__deref_pbuc1 +inc {c1} //FRAGMENT vwuz1=vbuc1 lda #<{c1} sta {z1} lda #>{c1} sta {z1}+1 +//FRAGMENT _deref_pbuc1_eq_vbuz1_then_la1 +lda {c1} +cmp {z1} +beq {la1} +//FRAGMENT _deref_pbuc1=_dec__deref_pbuc1 +dec {c1} +//FRAGMENT pbuc1_derefidx_vbuz1=_inc_pbuc1_derefidx_vbuz1 +ldx {z1} +inc {c1},x +//FRAGMENT vbuz1=_lo_vwuz2 +lda {z2} +sta {z1} +//FRAGMENT vbuz1=_hi_vwuz2 +lda {z2}+1 +sta {z1} +//FRAGMENT vbuz1=vbuz2_bor_vbuz3 +lda {z2} +ora {z3} +sta {z1} +//FRAGMENT _deref_pbuc1_eq_vbuaa_then_la1 +cmp {c1} +beq {la1} +//FRAGMENT pbuc1_derefidx_vbuaa=_inc_pbuc1_derefidx_vbuaa +tax +inc {c1},x +//FRAGMENT pbuc1_derefidx_vbuxx=_inc_pbuc1_derefidx_vbuxx +inc {c1},x +//FRAGMENT vbuaa=_lo_vwuz1 +lda {z1} +//FRAGMENT vbuxx=_lo_vwuz1 +ldx {z1} +//FRAGMENT vbuaa=_hi_vwuz1 +lda {z1}+1 +//FRAGMENT vbuxx=_hi_vwuz1 +ldx {z1}+1 +//FRAGMENT vbuz1=vbuxx_bor_vbuz2 +txa +ora {z2} +sta {z1} +//FRAGMENT vbuz1=vbuyy_bor_vbuz2 +tya +ora {z2} +sta {z1} +//FRAGMENT vbuz1=vbuzz_bor_vbuz2 +tza +ora {z2} +sta {z1} +//FRAGMENT vbuz1=vbuz2_bor_vbuaa +ora {z2} +sta {z1} +//FRAGMENT vbuz1=vbuxx_bor_vbuaa +stx $ff +ora $ff +sta {z1} +//FRAGMENT vbuz1=vbuyy_bor_vbuaa +sty $ff +ora $ff +sta {z1} +//FRAGMENT vbuz1=vbuzz_bor_vbuaa +tay +tza +sty $ff +ora $ff +sta {z1} +//FRAGMENT vbuz1=vbuz2_bor_vbuxx +txa +ora {z2} +sta {z1} +//FRAGMENT vbuz1=vbuxx_bor_vbuxx +stx {z1} +//FRAGMENT vbuyy=_lo_vwuz1 +ldy {z1} +//FRAGMENT vbuzz=_lo_vwuz1 +ldz {z1} +//FRAGMENT vbuyy=_hi_vwuz1 +ldy {z1}+1 +//FRAGMENT vbuzz=_hi_vwuz1 +ldz {z1}+1 +//FRAGMENT vbuz1=vbuz2_bor_vbuyy +tya +ora {z2} +sta {z1} +//FRAGMENT pbuc1_derefidx_vbuyy=_inc_pbuc1_derefidx_vbuyy +lda {c1},y +inc +sta {c1},y +//FRAGMENT pbuc1_derefidx_vbuzz=_inc_pbuc1_derefidx_vbuzz +tza +tax +inc {c1},x +//FRAGMENT _deref_pbuc1_eq_vbuxx_then_la1 +cpx {c1} +beq {la1} +//FRAGMENT _deref_pbuc1_eq_vbuyy_then_la1 +cpy {c1} +beq {la1} +//FRAGMENT _deref_pbuc1_eq_vbuzz_then_la1 +cpz {c1} +beq {la1} +//FRAGMENT vbuaa=vbuz1_bor_vbuaa +ora {z1} +//FRAGMENT vbuxx=vbuz1_bor_vbuaa +ora {z1} +tax +//FRAGMENT vbuyy=vbuz1_bor_vbuaa +ora {z1} +tay +//FRAGMENT vbuzz=vbuz1_bor_vbuaa +ora {z1} +taz +//FRAGMENT vbuz1=vbuz2_bor_vbuzz +tza +ora {z2} +sta {z1} +//FRAGMENT vbuaa=vbuxx_bor_vbuaa +stx $ff +ora $ff +//FRAGMENT vbuaa=vbuyy_bor_vbuaa +sty $ff +ora $ff +//FRAGMENT vbuaa=vbuzz_bor_vbuaa +tay +tza +sty $ff +ora $ff //FRAGMENT vduz1=vduc1 lda #<{c1} sta {z1} @@ -1672,16 +1799,6 @@ lda {z2} sta {z1} lda {z2}+1 sta {z1}+1 -//FRAGMENT vbuz1=_lo_vwuz2 -lda {z2} -sta {z1} -//FRAGMENT vbuz1=_hi_vwuz2 -lda {z2}+1 -sta {z1} -//FRAGMENT vbuz1=vbuz2_bor_vbuz3 -lda {z2} -ora {z3} -sta {z1} //FRAGMENT vduz1=vduz2_ror_4 lda {z2}+3 lsr @@ -2268,49 +2385,6 @@ dey bne !- !e: taz -//FRAGMENT vbuaa=_lo_vwuz1 -lda {z1} -//FRAGMENT vbuxx=_lo_vwuz1 -ldx {z1} -//FRAGMENT vbuaa=_hi_vwuz1 -lda {z1}+1 -//FRAGMENT vbuxx=_hi_vwuz1 -ldx {z1}+1 -//FRAGMENT vbuz1=vbuxx_bor_vbuz2 -txa -ora {z2} -sta {z1} -//FRAGMENT vbuz1=vbuyy_bor_vbuz2 -tya -ora {z2} -sta {z1} -//FRAGMENT vbuz1=vbuzz_bor_vbuz2 -tza -ora {z2} -sta {z1} -//FRAGMENT vbuz1=vbuz2_bor_vbuaa -ora {z2} -sta {z1} -//FRAGMENT vbuz1=vbuxx_bor_vbuaa -stx $ff -ora $ff -sta {z1} -//FRAGMENT vbuz1=vbuyy_bor_vbuaa -sty $ff -ora $ff -sta {z1} -//FRAGMENT vbuz1=vbuzz_bor_vbuaa -tay -tza -sty $ff -ora $ff -sta {z1} -//FRAGMENT vbuz1=vbuz2_bor_vbuxx -txa -ora {z2} -sta {z1} -//FRAGMENT vbuz1=vbuxx_bor_vbuxx -stx {z1} //FRAGMENT vbuaa=_hi__word_vduz1 lda {z1}+1 //FRAGMENT vbuxx=_hi__word_vduz1 @@ -2375,20 +2449,6 @@ tay tza ora {z1} taz -//FRAGMENT vbuaa=vbuz1_bor_vbuaa -ora {z1} -//FRAGMENT vbuxx=vbuz1_bor_vbuaa -ora {z1} -tax -//FRAGMENT vbuyy=vbuz1_bor_vbuaa -ora {z1} -tay -//FRAGMENT vbuzz=vbuz1_bor_vbuaa -ora {z1} -taz -//FRAGMENT vbuaa=vbuxx_bor_vbuaa -stx $ff -ora $ff //FRAGMENT vbuxx=vbuxx_bor_vbuaa stx $ff ora $ff @@ -2401,9 +2461,6 @@ tay stx $ff ora $ff taz -//FRAGMENT vbuaa=vbuyy_bor_vbuaa -sty $ff -ora $ff //FRAGMENT vbuxx=vbuyy_bor_vbuaa sty $ff ora $ff @@ -2416,11 +2473,6 @@ tay sty $ff ora $ff taz -//FRAGMENT vbuaa=vbuzz_bor_vbuaa -tay -tza -sty $ff -ora $ff //FRAGMENT vbuxx=vbuzz_bor_vbuaa tax tza @@ -2454,18 +2506,6 @@ tay txa ora {z1} taz -//FRAGMENT vbuyy=_lo_vwuz1 -ldy {z1} -//FRAGMENT vbuzz=_lo_vwuz1 -ldz {z1} -//FRAGMENT vbuyy=_hi_vwuz1 -ldy {z1}+1 -//FRAGMENT vbuzz=_hi_vwuz1 -ldz {z1}+1 -//FRAGMENT vbuz1=vbuz2_bor_vbuyy -tya -ora {z2} -sta {z1} //FRAGMENT vbuyy=_hi__word_vduz1 ldy {z1}+1 //FRAGMENT vbuzz=_hi__word_vduz1 @@ -2492,10 +2532,6 @@ tza tax tya sta {c1},x -//FRAGMENT vbuz1=vbuz2_bor_vbuzz -tza -ora {z2} -sta {z1} //FRAGMENT vbuyy=vbuaa tay //FRAGMENT vbuzz=vbuaa diff --git a/src/main/fragment/cache/fragment-cache-mos6502.asm b/src/main/fragment/cache/fragment-cache-mos6502.asm index 51a5d8a5f..781ac8a40 100644 --- a/src/main/fragment/cache/fragment-cache-mos6502.asm +++ b/src/main/fragment/cache/fragment-cache-mos6502.asm @@ -1,4 +1,4 @@ -//KICKC FRAGMENT CACHE 106673312a 1066734e54 +//KICKC FRAGMENT CACHE f8d7c2682 f8d7c43d0 //FRAGMENT vbuz1=vbuc1 lda #{c1} sta {z1} diff --git a/src/main/fragment/cache/fragment-cache-mos6502x.asm b/src/main/fragment/cache/fragment-cache-mos6502x.asm index f09fb7e4e..21375e0ec 100644 --- a/src/main/fragment/cache/fragment-cache-mos6502x.asm +++ b/src/main/fragment/cache/fragment-cache-mos6502x.asm @@ -1,4 +1,4 @@ -//KICKC FRAGMENT CACHE 106673312a 1066734e54 +//KICKC FRAGMENT CACHE f8d7c2682 f8d7c43d0 //FRAGMENT vbuz1=vbuc1 lda #{c1} sta {z1} @@ -4880,7 +4880,6 @@ lda ({z1}),y sta {c1},x //FRAGMENT pbuc1_derefidx_vbuyy=pbuz1_derefidx_vbuxx sty $ff - txa tay lda ({z1}),y @@ -6208,11 +6207,9 @@ tay //FRAGMENT vwuz1_gt_vbuc1_then_la1 lda {z1}+1 bne {la1} -lda {z1} -cmp #{c1} -beq !+ -bcs {la1} -!: +lda #{c1} +cmp {z1} +bcc {la1} //FRAGMENT vbuz1=vbuz2_bxor_vbuc1 lda #{c1} eor {z2} @@ -9400,10 +9397,14 @@ lda {z2} clc adc #2 sta {z1} -//FRAGMENT vbuaa=vbuz1_plus_2 -lda {z1} +//FRAGMENT vbuz1=vbuaa_plus_2 clc adc #2 +sta {z1} +//FRAGMENT vbuz1=vbuxx_plus_2 +inx +inx +stx {z1} //FRAGMENT vbuxx=vbuz1_plus_2 ldx {z1} inx @@ -11961,11 +11962,10 @@ lda #>{c1} eor {z2}+1 sta {z1}+1 //FRAGMENT pbuz1_derefidx_vbuz2=pbuz1_derefidx_vbuz2_bor_pbuc1_derefidx_vbuz3 +ldx {z3} ldy {z2} lda ({z1}),y -ldy {z3} -ora {c1},y -ldy {z2} +ora {c1},x sta ({z1}),y //FRAGMENT vbuz1=vbuz1_bxor_pbuz2_derefidx_vbuz3 lda {z1} @@ -11983,13 +11983,11 @@ ldy {z2} tax lda ({z1}),y ora {c1},x -ldy {z2} sta ({z1}),y //FRAGMENT pbuz1_derefidx_vbuz2=pbuz1_derefidx_vbuz2_bor_pbuc1_derefidx_vbuxx ldy {z2} lda ({z1}),y ora {c1},x -ldy {z2} sta ({z1}),y //FRAGMENT pbuz1_derefidx_vbuz2=pbuz1_derefidx_vbuz2_bor_pbuc1_derefidx_vbuyy tya @@ -11997,16 +11995,13 @@ ldy {z2} tax lda ({z1}),y ora {c1},x -ldy {z2} sta ({z1}),y //FRAGMENT pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_bor_pbuc1_derefidx_vbuz2 txa +ldx {z2} tay lda ({z1}),y -ldy {z2} -stx $ff -ora {c1},y -ldy $ff +ora {c1},x sta ({z1}),y //FRAGMENT pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_bor_pbuc1_derefidx_vbuaa tay @@ -12014,11 +12009,8 @@ txa ldx {c1},y tay lda ({z1}),y -sty $ff - stx $ff ora $ff -ldy $ff sta ({z1}),y //FRAGMENT pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_bor_pbuc1_derefidx_vbuxx txa @@ -12033,41 +12025,26 @@ txa ldx {c1},y tay lda ({z1}),y -sty $ff - stx $ff ora $ff -ldy $ff sta ({z1}),y //FRAGMENT pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuyy_bor_pbuc1_derefidx_vbuz2 lda ({z1}),y -sty $ff - -ldy {z2} -ora {c1},y -ldy $ff +ldx {z2} +ora {c1},x sta ({z1}),y //FRAGMENT pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuyy_bor_pbuc1_derefidx_vbuaa tax lda ({z1}),y -sty $ff - ora {c1},x -ldy $ff sta ({z1}),y //FRAGMENT pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuyy_bor_pbuc1_derefidx_vbuxx lda ({z1}),y -sty $ff - ora {c1},x -ldy $ff sta ({z1}),y //FRAGMENT pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuyy_bor_pbuc1_derefidx_vbuyy lda ({z1}),y -sty $ff - ora {c1},y -ldy $ff sta ({z1}),y //FRAGMENT vbuz1=vbuz1_bxor_pbuz2_derefidx_vbuaa tay @@ -12667,12 +12644,9 @@ lda ({z1}),y ldy #{c1} tax lda ({z1}),y -sty $ff - stx $ff clc adc $ff -ldy $ff sta ({z1}),y //FRAGMENT pbsz1_derefidx_vbuc1_lt_vbsc2_then_la1 ldy #{c1} @@ -12685,9 +12659,8 @@ eor #$80 !: bmi {la1} //FRAGMENT pbsz1_derefidx_vbuc1=vbsc2 -lda #{c1} -tay lda #{c2} +ldy #{c1} sta ({z1}),y //FRAGMENT pwsz1_derefidx_vbuc1_gt_vwsc2_then_la1 ldy #{c1} @@ -12773,9 +12746,8 @@ iny lda #>{c2} sta ({z1}),y //FRAGMENT pbsz1_derefidx_vbuc1=vbsz2 -lda #{c1} -tay lda {z2} +ldy #{c1} sta ({z1}),y //FRAGMENT pbuc1_derefidx_vbuz1_lt_vbuc2_then_la1 ldy {z1} @@ -12788,8 +12760,7 @@ lda {c2},y cmp #{c1} beq {la1} //FRAGMENT pbsz1_derefidx_vbuc1=vbsxx -lda #{c1} -tay +ldy #{c1} txa sta ({z1}),y //FRAGMENT pbuc1_derefidx_vbuaa_lt_vbuc2_then_la1 @@ -12862,12 +12833,6 @@ ldx {z2} ldy {c2},x ldx {c1},y stx {z1} -//FRAGMENT pbuc1_derefidx_vbuz1=pbuc2_derefidx_(pbuc3_derefidx_vbuz2) -ldx {z2} -ldy {c3},x -lda {c2},y -ldx {z1} -sta {c1},x //FRAGMENT vbuz1=_lo_pwuc1_derefidx_vbuz2 ldy {z2} lda {c1},y @@ -15316,7 +15281,6 @@ ldy $ff sta ({z1}),y //FRAGMENT pbuz1_derefidx_vbuyy=pbuz2_derefidx_vbuz3 sty $ff - ldy {z3} lda ({z2}),y ldy $ff @@ -15334,7 +15298,6 @@ ldy $ff sta ({z1}),y //FRAGMENT pbuz1_derefidx_vbuyy=pbuz2_derefidx_vbuaa sty $ff - tay lda ({z2}),y ldy $ff @@ -15354,7 +15317,6 @@ ldy $ff sta ({z1}),y //FRAGMENT pbuz1_derefidx_vbuyy=pbuz2_derefidx_vbuxx sty $ff - txa tay lda ({z2}),y @@ -18076,6 +18038,10 @@ sta {z1} lda {c1}+1,x adc {c1}+1,y sta {z1}+1 +//FRAGMENT vbuaa=vbuz1_plus_2 +lda {z1} +clc +adc #2 //FRAGMENT vwuz1=pwuc1_derefidx_vbuxx_plus_pwuc1_derefidx_vbuz2 ldy {z2} clc @@ -18176,10 +18142,6 @@ sta {z1} lda {c1}+1,x adc {c1}+1,y sta {z1}+1 -//FRAGMENT vbuz1=vbuxx_plus_2 -inx -inx -stx {z1} //FRAGMENT vbuz1=vbuyy_plus_2 iny iny diff --git a/src/main/fragment/cache/fragment-cache-wdc65c02.asm b/src/main/fragment/cache/fragment-cache-wdc65c02.asm index c357471a3..81f2d1652 100644 --- a/src/main/fragment/cache/fragment-cache-wdc65c02.asm +++ b/src/main/fragment/cache/fragment-cache-wdc65c02.asm @@ -1,4 +1,4 @@ -//KICKC FRAGMENT CACHE 106673312a 1066734e54 +//KICKC FRAGMENT CACHE f8d7c2682 f8d7c43d0 //FRAGMENT vbuz1=_deref_pbuc1 lda {c1} sta {z1}