diff --git a/src/main/fragment/vdsz1=vdsz1_rol_2.asm b/src/main/fragment/vdsz1=vdsz1_rol_2.asm new file mode 100644 index 000000000..3f8b42a32 --- /dev/null +++ b/src/main/fragment/vdsz1=vdsz1_rol_2.asm @@ -0,0 +1,8 @@ +asl {z1} +rol {z1}+1 +rol {z1}+2 +rol {z1}+3 +asl {z1} +rol {z1}+1 +rol {z1}+2 +rol {z1}+3 diff --git a/src/main/fragment/vdsz1=vdsz2_minus_vdsz3.asm b/src/main/fragment/vdsz1=vdsz2_minus_vdsz3.asm new file mode 100644 index 000000000..87239d9db --- /dev/null +++ b/src/main/fragment/vdsz1=vdsz2_minus_vdsz3.asm @@ -0,0 +1,13 @@ +lda {z2} +sec +sbc {z3} +sta {z1} +lda {z2}+1 +sbc {z3}+1 +sta {z1}+1 +lda {z2}+2 +sbc {z3}+2 +sta {z1}+2 +lda {z2}+3 +sbc {z3}+3 +sta {z1}+3 diff --git a/src/main/fragment/vdsz1=vdsz2_rol_2.asm b/src/main/fragment/vdsz1=vdsz2_rol_2.asm new file mode 100644 index 000000000..9fd2d7ab6 --- /dev/null +++ b/src/main/fragment/vdsz1=vdsz2_rol_2.asm @@ -0,0 +1,16 @@ +lda {z2} +sta {z1} +lda {z2}+1 +sta {z1}+1 +lda {z2}+2 +sta {z1}+2 +lda {z2}+3 +sta {z1}+3 +asl {z1} +rol {z1}+1 +rol {z1}+2 +rol {z1}+3 +asl {z1} +rol {z1}+1 +rol {z1}+2 +rol {z1}+3 \ No newline at end of file diff --git a/src/main/fragment/vwsz1=vwuc1.asm b/src/main/fragment/vwsz1=vwuc1.asm new file mode 100644 index 000000000..8716dc864 --- /dev/null +++ b/src/main/fragment/vwsz1=vwuc1.asm @@ -0,0 +1,4 @@ +lda #<{c1} +sta {z1} +lda #>{c1} +sta {z1}+1 diff --git a/src/main/fragment/vwsz1_ge_vwsz2_then_la1.asm b/src/main/fragment/vwsz1_ge_vwsz2_then_la1.asm new file mode 100644 index 000000000..478d86873 --- /dev/null +++ b/src/main/fragment/vwsz1_ge_vwsz2_then_la1.asm @@ -0,0 +1,8 @@ +lda {z1} +cmp {z2} +lda {z1}+1 +sbc {z2}+1 +bvc !+ +eor #$80 +!: +bpl {la1}