diff --git a/src/main/fragment/vbuaa=_deref_pbuz1_ror_vbuxx.asm b/src/main/fragment/vbuaa=_deref_pbuz1_ror_vbuxx.asm new file mode 100644 index 000000000..f624e7695 --- /dev/null +++ b/src/main/fragment/vbuaa=_deref_pbuz1_ror_vbuxx.asm @@ -0,0 +1,9 @@ +cpx #0 +beq !e+ +ldy #0 +lda ({z1}),y +!: +ror +dex +bne !- +!e: \ No newline at end of file diff --git a/src/main/fragment/vbuaa=vbuaa_ror_vbuz1.asm b/src/main/fragment/vbuaa=vbuaa_ror_vbuz1.asm new file mode 100644 index 000000000..a739505a2 --- /dev/null +++ b/src/main/fragment/vbuaa=vbuaa_ror_vbuz1.asm @@ -0,0 +1,7 @@ +ldx {z1} +beq !e+ +!: +ror +dex +bne !- +!e: diff --git a/src/main/fragment/vbuxx=vbuyy_ror_vbuaa.asm b/src/main/fragment/vbuxx=vbuyy_ror_vbuaa.asm new file mode 100644 index 000000000..d5c06e46b --- /dev/null +++ b/src/main/fragment/vbuxx=vbuyy_ror_vbuaa.asm @@ -0,0 +1,10 @@ +cpy #0 +beq !e+ +!l: +cmp #$80 +ror +dey +bne !l- +!e: +sty $ff +ldx $ff diff --git a/src/main/fragment/vbuyy=_deref_pbuz1_ror_vbuxx.asm b/src/main/fragment/vbuyy=_deref_pbuz1_ror_vbuxx.asm new file mode 100644 index 000000000..c2bb8222f --- /dev/null +++ b/src/main/fragment/vbuyy=_deref_pbuz1_ror_vbuxx.asm @@ -0,0 +1,11 @@ +cpx #0 +beq !e+ +ldy #0 +lda ({z1}),y +!: +ror +dex +bne !- +tay +!e: + \ No newline at end of file diff --git a/src/main/fragment/vbuz1=_deref_pbuz2_ror_vbuxx.asm b/src/main/fragment/vbuz1=_deref_pbuz2_ror_vbuxx.asm new file mode 100644 index 000000000..4d411515e --- /dev/null +++ b/src/main/fragment/vbuz1=_deref_pbuz2_ror_vbuxx.asm @@ -0,0 +1,10 @@ +cpx #0 +beq !e+ +ldy #0 +lda ({z2}),y +!: +ror +dex +bne !- +sta {z1} +!e: diff --git a/src/main/fragment/vduz1=vwuc1.asm b/src/main/fragment/vduz1=vwuc1.asm new file mode 100644 index 000000000..60fc31566 --- /dev/null +++ b/src/main/fragment/vduz1=vwuc1.asm @@ -0,0 +1,12 @@ +lda #<{c1} +sta {z1} +lda #>{c1} +sta {z1}+1 +bmi !m+ +lda #0 +beq !p+ +!m: +lda #$ff +!p: +sta {z1}+2 +sta {z1}+3 diff --git a/src/main/fragment/vwuz1=vbuaa_bor_vwuz2.asm b/src/main/fragment/vwuz1=vbuaa_bor_vwuz2.asm new file mode 100644 index 000000000..6f38db42e --- /dev/null +++ b/src/main/fragment/vwuz1=vbuaa_bor_vwuz2.asm @@ -0,0 +1,6 @@ +sta $ff +lda {z2} +ora $ff +sta {z1} +lda {z2}+1 +sta {z1}+1 diff --git a/src/main/fragment/vwuz1=vwuz1_bor_vwsz2.asm b/src/main/fragment/vwuz1=vwuz1_bor_vwsz2.asm new file mode 100644 index 000000000..58bebcaaf --- /dev/null +++ b/src/main/fragment/vwuz1=vwuz1_bor_vwsz2.asm @@ -0,0 +1,6 @@ +lda {z2} +eor {z1} +sta {z1} +lda {z2}+1 +eor {z1}+1 +sta {z1}+1 diff --git a/src/main/fragment/vwuz1=vwuz1_bxor_vwsc1.asm b/src/main/fragment/vwuz1=vwuz1_bxor_vwsc1.asm new file mode 100644 index 000000000..0f9ec2420 --- /dev/null +++ b/src/main/fragment/vwuz1=vwuz1_bxor_vwsc1.asm @@ -0,0 +1,6 @@ +lda #<{c1} +eor {z1} +sta {z1} +lda #>{c1} +eor {z1} +sta {z1} diff --git a/src/main/fragment/vwuz1=vwuz1_bxor_vwuc1.asm b/src/main/fragment/vwuz1=vwuz1_bxor_vwuc1.asm new file mode 100644 index 000000000..593d85fd6 --- /dev/null +++ b/src/main/fragment/vwuz1=vwuz1_bxor_vwuc1.asm @@ -0,0 +1,6 @@ +lda #<{c1} +eor {z1} +sta {z1} +lda #>{c1} +eor {z1}+1 +sta {z1}+1