From 08d90f90d9d681fdd5211959bf182649057f0304 Mon Sep 17 00:00:00 2001 From: jespergravgaard Date: Sat, 30 May 2020 23:12:44 +0200 Subject: [PATCH] Introduces void-pointer synthesis. This enables removal of a lot of pointer fragments. #449 --- ...pptz1=pbuc1.asm => _deref_pptz1=pvoc1.asm} | 0 ...pptz1=pssm2.asm => _deref_pptz1=pvom2.asm} | 2 +- .../mos6502-common/_deref_pptz1=pwum2.asm | 6 ----- .../mos6502-common/pbum1=_ptr_pbsm1.asm | 1 - .../mos6502-common/pbum1=_ptr_vwum2.asm | 4 ---- .../pbum1=_stackidxptr_vbuc1.asm | 5 ---- .../mos6502-common/pbum1=_stackpullptr_.asm | 4 ---- .../fragment/mos6502-common/pbum1=pbum2.asm | 4 ---- .../fragment/mos6502-common/pbum1=vwuc1.asm | 4 ---- .../mos6502-common/pbuz1=_deref_pptz1.asm | 8 ------- .../pbuz1=pptz1_derefidx_vbuyy.asm | 7 ------ .../mos6502-common/pdum1=_deref_pptc1.asm | 4 ---- .../fragment/mos6502-common/pdum1=vwuc1.asm | 4 ---- .../mos6502-common/pprm1=_deref_pptc1.asm | 4 ---- .../pprm1=_stackidxptr_vbuc1.asm | 5 ---- .../fragment/mos6502-common/pprm1=pprc1.asm | 4 ---- .../fragment/mos6502-common/pprm1=pprm2.asm | 4 ---- .../pprm1=pptc1_derefidx_vbuxx.asm | 4 ---- .../pprm1=pptc1_derefidx_vbuyy.asm | 4 ---- ...uc2.asm => pptc1_derefidx_vbuxx=pvoc2.asm} | 0 ...um1.asm => pptc1_derefidx_vbuxx=pvom1.asm} | 0 ...uc2.asm => pptc1_derefidx_vbuyy=pvoc2.asm} | 0 ...um1.asm => pptc1_derefidx_vbuyy=pvom1.asm} | 0 .../pptc1_derefidx_vbuyy=pwum1.asm | 4 ---- .../mos6502-common/pptm1=_ptr_pbum1.asm | 1 - .../mos6502-common/pptm1=_ptr_pbum2.asm | 4 ---- .../pptm1=_stackidxptr_vbuc1.asm | 5 ---- .../fragment/mos6502-common/pptm1=pptc1.asm | 4 ---- .../fragment/mos6502-common/pptm1=pptm2.asm | 4 ---- .../pptz1_derefidx_vbuc1=_ptr_vwum2.asm | 6 ----- .../pptz1_derefidx_vbuc1=pbum2.asm | 6 ----- .../pptz1_derefidx_vbuc1=pwum2.asm | 6 ----- ...sm => pptz1_derefidx_vbuyy=_ptr_vbuaa.asm} | 1 - ...sm => pptz1_derefidx_vbuyy=_ptr_vwum2.asm} | 1 - ...1_derefidx_vbuyy=pptz2_derefidx_vbuyy.asm} | 4 ++-- .../pssm1=_addr__deref_pssc1.asm | 4 ---- .../mos6502-common/pssm1=_deref_pptz2.asm | 6 ----- .../pssm1=_stackidxptr_vbuc1.asm | 5 ---- .../fragment/mos6502-common/pssm1=pssm2.asm | 4 ---- .../fragment/mos6502-common/pssm1=vwuc1.asm | 4 ---- ...en_la1.asm => pvoc1_le_pvoc2_then_la1.asm} | 0 ...sm => pvoc1_neq__deref_pptz1_then_la1.asm} | 0 ...pbsc1.asm => pvom1=_addr__deref_pvoc1.asm} | 0 ...m1=_dec_pbum2.asm => pvom1=_dec_pvom2.asm} | 0 ...deref_pptc1.asm => pvom1=_deref_pptc1.asm} | 0 ....asm => pvom1=_deref_pptc1_plus_vwuc2.asm} | 0 ...deref_pptz2.asm => pvom1=_deref_pptz2.asm} | 0 ....asm => pvom1=_deref_pptz2_plus_vbuaa.asm} | 0 ...m1=_inc_pbum1.asm => pvom1=_inc_pvom1.asm} | 0 ...m1=_inc_pbum2.asm => pvom1=_inc_pvom2.asm} | 0 ...m1=_ptr_pbum1.asm => pvom1=_ptr_pvom1.asm} | 0 ...m1=_ptr_pbum2.asm => pvom1=_ptr_pvom2.asm} | 0 ...m1=_ptr_vbuaa.asm => pvom1=_ptr_vbuaa.asm} | 0 ...m1=_ptr_vbuxx.asm => pvom1=_ptr_vbuxx.asm} | 0 ...m1=_ptr_vbuyy.asm => pvom1=_ptr_vbuyy.asm} | 0 .../{pbsm1=pbsm2.asm => pvom1=_ptr_vwum2.asm} | 0 ...uxx.asm => pvom1=pptc1_derefidx_vbuxx.asm} | 0 ...pvom1=pptc1_derefidx_vbuxx_plus_vbuc2.asm} | 0 ...uyy.asm => pvom1=pptc1_derefidx_vbuyy.asm} | 0 ...pvom1=pptc1_derefidx_vbuyy_plus_vbuc2.asm} | 0 ...uyy.asm => pvom1=pptz2_derefidx_vbuyy.asm} | 0 .../{pbum1=pbuaa.asm => pvom1=pvoaa.asm} | 0 ...s_vwsm1.asm => pvom1=pvoc1_plus_vwsm1.asm} | 0 ...s_vwsm2.asm => pvom1=pvoc1_plus_vwsm2.asm} | 0 ...s_vbuaa.asm => pvom1=pvom1_plus_vbuaa.asm} | 0 ...s_vwsm2.asm => pvom1=pvom1_plus_vwsm2.asm} | 0 ..._vbuc1.asm => pvom1=pvom2_minus_vbuc1.asm} | 0 ...s_vbuaa.asm => pvom1=pvom2_plus_vbuaa.asm} | 0 ...s_vwsm1.asm => pvom1=pvom2_plus_vwsm1.asm} | 0 ...s_vwsm3.asm => pvom1=pvom2_plus_vwsm3.asm} | 0 ..._addr__deref_pbuc1.asm => pvom1=vwuc1.asm} | 0 ...deref_pptz1.asm => pvoz1=_deref_pptz1.asm} | 0 ....asm => pvoz1=_deref_pptz1_plus_vbuaa.asm} | 0 ...uyy.asm => pvoz1=pptz1_derefidx_vbuyy.asm} | 0 .../pwsm1=_stackidxptr_vbuc1.asm | 5 ---- .../fragment/mos6502-common/pwsm1=pwsc1.asm | 4 ---- .../fragment/mos6502-common/pwsm1=pwsm2.asm | 4 ---- .../mos6502-common/pwum1=_deref_pptc1.asm | 4 ---- .../mos6502-common/pwum1=_deref_pptz2.asm | 6 ----- .../mos6502-common/pwum1=_ptr_pbum1.asm | 1 - .../mos6502-common/pwum1=_ptr_pbum2.asm | 4 ---- .../pwum1=_stackidxptr_vbuc1.asm | 5 ---- .../mos6502-common/pwum1=_stackpullptr_.asm | 4 ---- .../fragment/mos6502-common/pwum1=pbuc1.asm | 4 ---- .../pwum1=pptc1_derefidx_vbuxx.asm | 4 ---- .../pwum1=pptc1_derefidx_vbuyy.asm | 4 ---- .../fragment/mos6502-common/pwum1=pwuc1.asm | 4 ---- .../fragment/mos6502-common/pwum1=pwum2.asm | 4 ---- .../mos6502-common/pwuz1=_deref_pptz1.asm | 8 ------- .../pwuz1=pptz1_derefidx_vbuyy.asm | 7 ------ .../mos6502-common/vwum1=_word_pbum2.asm | 4 ---- ...1=_ptr_pbsm2.asm => vwum1=_word_pvom2.asm} | 0 ...d_vwuc1.asm => vwum1=pvom1_band_vwuc1.asm} | 0 ...d_vwuc1.asm => vwum1=pvom2_band_vwuc1.asm} | 0 .../AsmFragmentTemplateSynthesisRule.java | 4 ++++ .../dk/camelot64/kickc/test/TestPrograms.java | 1 - src/test/ref/primes-1000.log | 24 +++++++++---------- 97 files changed, 19 insertions(+), 233 deletions(-) rename src/main/fragment/mos6502-common/{_deref_pptz1=pbuc1.asm => _deref_pptz1=pvoc1.asm} (100%) rename src/main/fragment/mos6502-common/{_deref_pptz1=pssm2.asm => _deref_pptz1=pvom2.asm} (77%) delete mode 100644 src/main/fragment/mos6502-common/_deref_pptz1=pwum2.asm delete mode 100644 src/main/fragment/mos6502-common/pbum1=_ptr_pbsm1.asm delete mode 100644 src/main/fragment/mos6502-common/pbum1=_ptr_vwum2.asm delete mode 100644 src/main/fragment/mos6502-common/pbum1=_stackidxptr_vbuc1.asm delete mode 100644 src/main/fragment/mos6502-common/pbum1=_stackpullptr_.asm delete mode 100644 src/main/fragment/mos6502-common/pbum1=pbum2.asm delete mode 100644 src/main/fragment/mos6502-common/pbum1=vwuc1.asm delete mode 100644 src/main/fragment/mos6502-common/pbuz1=_deref_pptz1.asm delete mode 100644 src/main/fragment/mos6502-common/pbuz1=pptz1_derefidx_vbuyy.asm delete mode 100644 src/main/fragment/mos6502-common/pdum1=_deref_pptc1.asm delete mode 100644 src/main/fragment/mos6502-common/pdum1=vwuc1.asm delete mode 100644 src/main/fragment/mos6502-common/pprm1=_deref_pptc1.asm delete mode 100644 src/main/fragment/mos6502-common/pprm1=_stackidxptr_vbuc1.asm delete mode 100644 src/main/fragment/mos6502-common/pprm1=pprc1.asm delete mode 100644 src/main/fragment/mos6502-common/pprm1=pprm2.asm delete mode 100644 src/main/fragment/mos6502-common/pprm1=pptc1_derefidx_vbuxx.asm delete mode 100644 src/main/fragment/mos6502-common/pprm1=pptc1_derefidx_vbuyy.asm rename src/main/fragment/mos6502-common/{pptc1_derefidx_vbuxx=pbuc2.asm => pptc1_derefidx_vbuxx=pvoc2.asm} (100%) rename src/main/fragment/mos6502-common/{pptc1_derefidx_vbuxx=pwum1.asm => pptc1_derefidx_vbuxx=pvom1.asm} (100%) rename src/main/fragment/mos6502-common/{pptc1_derefidx_vbuyy=pbuc2.asm => pptc1_derefidx_vbuyy=pvoc2.asm} (100%) rename src/main/fragment/mos6502-common/{pptc1_derefidx_vbuyy=pbum1.asm => pptc1_derefidx_vbuyy=pvom1.asm} (100%) delete mode 100644 src/main/fragment/mos6502-common/pptc1_derefidx_vbuyy=pwum1.asm delete mode 100644 src/main/fragment/mos6502-common/pptm1=_ptr_pbum1.asm delete mode 100644 src/main/fragment/mos6502-common/pptm1=_ptr_pbum2.asm delete mode 100644 src/main/fragment/mos6502-common/pptm1=_stackidxptr_vbuc1.asm delete mode 100644 src/main/fragment/mos6502-common/pptm1=pptc1.asm delete mode 100644 src/main/fragment/mos6502-common/pptm1=pptm2.asm delete mode 100644 src/main/fragment/mos6502-common/pptz1_derefidx_vbuc1=_ptr_vwum2.asm delete mode 100644 src/main/fragment/mos6502-common/pptz1_derefidx_vbuc1=pbum2.asm delete mode 100644 src/main/fragment/mos6502-common/pptz1_derefidx_vbuc1=pwum2.asm rename src/main/fragment/mos6502-common/{pptz1_derefidx_vbuc1=_ptr_vbuaa.asm => pptz1_derefidx_vbuyy=_ptr_vbuaa.asm} (78%) rename src/main/fragment/mos6502-common/{_deref_pptz1=pbum2.asm => pptz1_derefidx_vbuyy=_ptr_vwum2.asm} (87%) rename src/main/fragment/mos6502-common/{pwum1=pptz2_derefidx_vbuyy.asm => pptz1_derefidx_vbuyy=pptz2_derefidx_vbuyy.asm} (53%) delete mode 100644 src/main/fragment/mos6502-common/pssm1=_addr__deref_pssc1.asm delete mode 100644 src/main/fragment/mos6502-common/pssm1=_deref_pptz2.asm delete mode 100644 src/main/fragment/mos6502-common/pssm1=_stackidxptr_vbuc1.asm delete mode 100644 src/main/fragment/mos6502-common/pssm1=pssm2.asm delete mode 100644 src/main/fragment/mos6502-common/pssm1=vwuc1.asm rename src/main/fragment/mos6502-common/{pbuc1_le_pbuc2_then_la1.asm => pvoc1_le_pvoc2_then_la1.asm} (100%) rename src/main/fragment/mos6502-common/{pbuc1_neq__deref_pptz1_then_la1.asm => pvoc1_neq__deref_pptz1_then_la1.asm} (100%) rename src/main/fragment/mos6502-common/{pbsm1=pbsc1.asm => pvom1=_addr__deref_pvoc1.asm} (100%) rename src/main/fragment/mos6502-common/{pbum1=_dec_pbum2.asm => pvom1=_dec_pvom2.asm} (100%) rename src/main/fragment/mos6502-common/{pbum1=_deref_pptc1.asm => pvom1=_deref_pptc1.asm} (100%) rename src/main/fragment/mos6502-common/{pbum1=_deref_pptc1_plus_vwuc2.asm => pvom1=_deref_pptc1_plus_vwuc2.asm} (100%) rename src/main/fragment/mos6502-common/{pbum1=_deref_pptz2.asm => pvom1=_deref_pptz2.asm} (100%) rename src/main/fragment/mos6502-common/{pbum1=_deref_pptz2_plus_vbuaa.asm => pvom1=_deref_pptz2_plus_vbuaa.asm} (100%) rename src/main/fragment/mos6502-common/{pbum1=_inc_pbum1.asm => pvom1=_inc_pvom1.asm} (100%) rename src/main/fragment/mos6502-common/{pbum1=_inc_pbum2.asm => pvom1=_inc_pvom2.asm} (100%) rename src/main/fragment/mos6502-common/{pbsm1=_ptr_pbum1.asm => pvom1=_ptr_pvom1.asm} (100%) rename src/main/fragment/mos6502-common/{pbsm1=_ptr_pbum2.asm => pvom1=_ptr_pvom2.asm} (100%) rename src/main/fragment/mos6502-common/{pbum1=_ptr_vbuaa.asm => pvom1=_ptr_vbuaa.asm} (100%) rename src/main/fragment/mos6502-common/{pbum1=_ptr_vbuxx.asm => pvom1=_ptr_vbuxx.asm} (100%) rename src/main/fragment/mos6502-common/{pbum1=_ptr_vbuyy.asm => pvom1=_ptr_vbuyy.asm} (100%) rename src/main/fragment/mos6502-common/{pbsm1=pbsm2.asm => pvom1=_ptr_vwum2.asm} (100%) rename src/main/fragment/mos6502-common/{pbum1=pptc1_derefidx_vbuxx.asm => pvom1=pptc1_derefidx_vbuxx.asm} (100%) rename src/main/fragment/mos6502-common/{pbum1=pptc1_derefidx_vbuxx_plus_vbuc2.asm => pvom1=pptc1_derefidx_vbuxx_plus_vbuc2.asm} (100%) rename src/main/fragment/mos6502-common/{pbum1=pptc1_derefidx_vbuyy.asm => pvom1=pptc1_derefidx_vbuyy.asm} (100%) rename src/main/fragment/mos6502-common/{pbum1=pptc1_derefidx_vbuyy_plus_vbuc2.asm => pvom1=pptc1_derefidx_vbuyy_plus_vbuc2.asm} (100%) rename src/main/fragment/mos6502-common/{pbum1=pptz2_derefidx_vbuyy.asm => pvom1=pptz2_derefidx_vbuyy.asm} (100%) rename src/main/fragment/mos6502-common/{pbum1=pbuaa.asm => pvom1=pvoaa.asm} (100%) rename src/main/fragment/mos6502-common/{pbum1=pbuc1_plus_vwsm1.asm => pvom1=pvoc1_plus_vwsm1.asm} (100%) rename src/main/fragment/mos6502-common/{pbum1=pbuc1_plus_vwsm2.asm => pvom1=pvoc1_plus_vwsm2.asm} (100%) rename src/main/fragment/mos6502-common/{pbum1=pbum1_plus_vbuaa.asm => pvom1=pvom1_plus_vbuaa.asm} (100%) rename src/main/fragment/mos6502-common/{pbum1=pbum1_plus_vwsm2.asm => pvom1=pvom1_plus_vwsm2.asm} (100%) rename src/main/fragment/mos6502-common/{pbum1=pbum2_minus_vbuc1.asm => pvom1=pvom2_minus_vbuc1.asm} (100%) rename src/main/fragment/mos6502-common/{pbum1=pbum2_plus_vbuaa.asm => pvom1=pvom2_plus_vbuaa.asm} (100%) rename src/main/fragment/mos6502-common/{pbum1=pbum2_plus_vwsm1.asm => pvom1=pvom2_plus_vwsm1.asm} (100%) rename src/main/fragment/mos6502-common/{pbum1=pbum2_plus_vwsm3.asm => pvom1=pvom2_plus_vwsm3.asm} (100%) rename src/main/fragment/mos6502-common/{pbum1=_addr__deref_pbuc1.asm => pvom1=vwuc1.asm} (100%) rename src/main/fragment/mos6502-common/{pssz1=_deref_pptz1.asm => pvoz1=_deref_pptz1.asm} (100%) rename src/main/fragment/mos6502-common/{pbuz1=_deref_pptz1_plus_vbuaa.asm => pvoz1=_deref_pptz1_plus_vbuaa.asm} (100%) rename src/main/fragment/mos6502-common/{pssz1=pptz1_derefidx_vbuyy.asm => pvoz1=pptz1_derefidx_vbuyy.asm} (100%) delete mode 100644 src/main/fragment/mos6502-common/pwsm1=_stackidxptr_vbuc1.asm delete mode 100644 src/main/fragment/mos6502-common/pwsm1=pwsc1.asm delete mode 100644 src/main/fragment/mos6502-common/pwsm1=pwsm2.asm delete mode 100644 src/main/fragment/mos6502-common/pwum1=_deref_pptc1.asm delete mode 100644 src/main/fragment/mos6502-common/pwum1=_deref_pptz2.asm delete mode 100644 src/main/fragment/mos6502-common/pwum1=_ptr_pbum1.asm delete mode 100644 src/main/fragment/mos6502-common/pwum1=_ptr_pbum2.asm delete mode 100644 src/main/fragment/mos6502-common/pwum1=_stackidxptr_vbuc1.asm delete mode 100644 src/main/fragment/mos6502-common/pwum1=_stackpullptr_.asm delete mode 100644 src/main/fragment/mos6502-common/pwum1=pbuc1.asm delete mode 100644 src/main/fragment/mos6502-common/pwum1=pptc1_derefidx_vbuxx.asm delete mode 100644 src/main/fragment/mos6502-common/pwum1=pptc1_derefidx_vbuyy.asm delete mode 100644 src/main/fragment/mos6502-common/pwum1=pwuc1.asm delete mode 100644 src/main/fragment/mos6502-common/pwum1=pwum2.asm delete mode 100644 src/main/fragment/mos6502-common/pwuz1=_deref_pptz1.asm delete mode 100644 src/main/fragment/mos6502-common/pwuz1=pptz1_derefidx_vbuyy.asm delete mode 100644 src/main/fragment/mos6502-common/vwum1=_word_pbum2.asm rename src/main/fragment/mos6502-common/{pbum1=_ptr_pbsm2.asm => vwum1=_word_pvom2.asm} (100%) rename src/main/fragment/mos6502-common/{vwum1=pbum1_band_vwuc1.asm => vwum1=pvom1_band_vwuc1.asm} (100%) rename src/main/fragment/mos6502-common/{vwum1=pbum2_band_vwuc1.asm => vwum1=pvom2_band_vwuc1.asm} (100%) diff --git a/src/main/fragment/mos6502-common/_deref_pptz1=pbuc1.asm b/src/main/fragment/mos6502-common/_deref_pptz1=pvoc1.asm similarity index 100% rename from src/main/fragment/mos6502-common/_deref_pptz1=pbuc1.asm rename to src/main/fragment/mos6502-common/_deref_pptz1=pvoc1.asm diff --git a/src/main/fragment/mos6502-common/_deref_pptz1=pssm2.asm b/src/main/fragment/mos6502-common/_deref_pptz1=pvom2.asm similarity index 77% rename from src/main/fragment/mos6502-common/_deref_pptz1=pssm2.asm rename to src/main/fragment/mos6502-common/_deref_pptz1=pvom2.asm index f266f66b7..00a1112f0 100644 --- a/src/main/fragment/mos6502-common/_deref_pptz1=pssm2.asm +++ b/src/main/fragment/mos6502-common/_deref_pptz1=pvom2.asm @@ -3,4 +3,4 @@ lda {m2} sta ({z1}),y iny lda {m2}+1 -sta ({z1}),y +sta ({z1}),y \ No newline at end of file diff --git a/src/main/fragment/mos6502-common/_deref_pptz1=pwum2.asm b/src/main/fragment/mos6502-common/_deref_pptz1=pwum2.asm deleted file mode 100644 index f266f66b7..000000000 --- a/src/main/fragment/mos6502-common/_deref_pptz1=pwum2.asm +++ /dev/null @@ -1,6 +0,0 @@ -ldy #0 -lda {m2} -sta ({z1}),y -iny -lda {m2}+1 -sta ({z1}),y diff --git a/src/main/fragment/mos6502-common/pbum1=_ptr_pbsm1.asm b/src/main/fragment/mos6502-common/pbum1=_ptr_pbsm1.asm deleted file mode 100644 index 964e6599a..000000000 --- a/src/main/fragment/mos6502-common/pbum1=_ptr_pbsm1.asm +++ /dev/null @@ -1 +0,0 @@ -// No operation needed diff --git a/src/main/fragment/mos6502-common/pbum1=_ptr_vwum2.asm b/src/main/fragment/mos6502-common/pbum1=_ptr_vwum2.asm deleted file mode 100644 index ca239d94f..000000000 --- a/src/main/fragment/mos6502-common/pbum1=_ptr_vwum2.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda {m2} -sta {m1} -lda {m2}+1 -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pbum1=_stackidxptr_vbuc1.asm b/src/main/fragment/mos6502-common/pbum1=_stackidxptr_vbuc1.asm deleted file mode 100644 index fb56042f3..000000000 --- a/src/main/fragment/mos6502-common/pbum1=_stackidxptr_vbuc1.asm +++ /dev/null @@ -1,5 +0,0 @@ -tsx -lda STACK_BASE+{c1},x -sta {m1} -lda STACK_BASE+{c1}+1,x -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pbum1=_stackpullptr_.asm b/src/main/fragment/mos6502-common/pbum1=_stackpullptr_.asm deleted file mode 100644 index 1d681205d..000000000 --- a/src/main/fragment/mos6502-common/pbum1=_stackpullptr_.asm +++ /dev/null @@ -1,4 +0,0 @@ -pla -sta {m1} -pla -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pbum1=pbum2.asm b/src/main/fragment/mos6502-common/pbum1=pbum2.asm deleted file mode 100644 index ca239d94f..000000000 --- a/src/main/fragment/mos6502-common/pbum1=pbum2.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda {m2} -sta {m1} -lda {m2}+1 -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pbum1=vwuc1.asm b/src/main/fragment/mos6502-common/pbum1=vwuc1.asm deleted file mode 100644 index 7fa49e4f7..000000000 --- a/src/main/fragment/mos6502-common/pbum1=vwuc1.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda #<{c1} -sta {m1} -lda #>{c1} -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pbuz1=_deref_pptz1.asm b/src/main/fragment/mos6502-common/pbuz1=_deref_pptz1.asm deleted file mode 100644 index 94fcb2f49..000000000 --- a/src/main/fragment/mos6502-common/pbuz1=_deref_pptz1.asm +++ /dev/null @@ -1,8 +0,0 @@ -ldy #0 -lda ({z1}),y -pha -iny -lda ({z1}),y -sta {z1}+1 -pla -sta {z1} diff --git a/src/main/fragment/mos6502-common/pbuz1=pptz1_derefidx_vbuyy.asm b/src/main/fragment/mos6502-common/pbuz1=pptz1_derefidx_vbuyy.asm deleted file mode 100644 index 117f5eede..000000000 --- a/src/main/fragment/mos6502-common/pbuz1=pptz1_derefidx_vbuyy.asm +++ /dev/null @@ -1,7 +0,0 @@ -lda ({z1}),y -pha -iny -lda ({z1}),y -sta {z1}+1 -pla -sta {z1} diff --git a/src/main/fragment/mos6502-common/pdum1=_deref_pptc1.asm b/src/main/fragment/mos6502-common/pdum1=_deref_pptc1.asm deleted file mode 100644 index f3142cc92..000000000 --- a/src/main/fragment/mos6502-common/pdum1=_deref_pptc1.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda {c1} -sta {m1} -lda {c1}+1 -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pdum1=vwuc1.asm b/src/main/fragment/mos6502-common/pdum1=vwuc1.asm deleted file mode 100644 index 7fa49e4f7..000000000 --- a/src/main/fragment/mos6502-common/pdum1=vwuc1.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda #<{c1} -sta {m1} -lda #>{c1} -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pprm1=_deref_pptc1.asm b/src/main/fragment/mos6502-common/pprm1=_deref_pptc1.asm deleted file mode 100644 index f3142cc92..000000000 --- a/src/main/fragment/mos6502-common/pprm1=_deref_pptc1.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda {c1} -sta {m1} -lda {c1}+1 -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pprm1=_stackidxptr_vbuc1.asm b/src/main/fragment/mos6502-common/pprm1=_stackidxptr_vbuc1.asm deleted file mode 100644 index fb56042f3..000000000 --- a/src/main/fragment/mos6502-common/pprm1=_stackidxptr_vbuc1.asm +++ /dev/null @@ -1,5 +0,0 @@ -tsx -lda STACK_BASE+{c1},x -sta {m1} -lda STACK_BASE+{c1}+1,x -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pprm1=pprc1.asm b/src/main/fragment/mos6502-common/pprm1=pprc1.asm deleted file mode 100644 index 7fa49e4f7..000000000 --- a/src/main/fragment/mos6502-common/pprm1=pprc1.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda #<{c1} -sta {m1} -lda #>{c1} -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pprm1=pprm2.asm b/src/main/fragment/mos6502-common/pprm1=pprm2.asm deleted file mode 100644 index ca239d94f..000000000 --- a/src/main/fragment/mos6502-common/pprm1=pprm2.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda {m2} -sta {m1} -lda {m2}+1 -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pprm1=pptc1_derefidx_vbuxx.asm b/src/main/fragment/mos6502-common/pprm1=pptc1_derefidx_vbuxx.asm deleted file mode 100644 index 097b58a0d..000000000 --- a/src/main/fragment/mos6502-common/pprm1=pptc1_derefidx_vbuxx.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda {c1},x -sta {m1} -lda {c1}+1,x -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pprm1=pptc1_derefidx_vbuyy.asm b/src/main/fragment/mos6502-common/pprm1=pptc1_derefidx_vbuyy.asm deleted file mode 100644 index 85dd2a129..000000000 --- a/src/main/fragment/mos6502-common/pprm1=pptc1_derefidx_vbuyy.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda {c1},y -sta {m1} -lda {c1}+1,y -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pptc1_derefidx_vbuxx=pbuc2.asm b/src/main/fragment/mos6502-common/pptc1_derefidx_vbuxx=pvoc2.asm similarity index 100% rename from src/main/fragment/mos6502-common/pptc1_derefidx_vbuxx=pbuc2.asm rename to src/main/fragment/mos6502-common/pptc1_derefidx_vbuxx=pvoc2.asm diff --git a/src/main/fragment/mos6502-common/pptc1_derefidx_vbuxx=pwum1.asm b/src/main/fragment/mos6502-common/pptc1_derefidx_vbuxx=pvom1.asm similarity index 100% rename from src/main/fragment/mos6502-common/pptc1_derefidx_vbuxx=pwum1.asm rename to src/main/fragment/mos6502-common/pptc1_derefidx_vbuxx=pvom1.asm diff --git a/src/main/fragment/mos6502-common/pptc1_derefidx_vbuyy=pbuc2.asm b/src/main/fragment/mos6502-common/pptc1_derefidx_vbuyy=pvoc2.asm similarity index 100% rename from src/main/fragment/mos6502-common/pptc1_derefidx_vbuyy=pbuc2.asm rename to src/main/fragment/mos6502-common/pptc1_derefidx_vbuyy=pvoc2.asm diff --git a/src/main/fragment/mos6502-common/pptc1_derefidx_vbuyy=pbum1.asm b/src/main/fragment/mos6502-common/pptc1_derefidx_vbuyy=pvom1.asm similarity index 100% rename from src/main/fragment/mos6502-common/pptc1_derefidx_vbuyy=pbum1.asm rename to src/main/fragment/mos6502-common/pptc1_derefidx_vbuyy=pvom1.asm diff --git a/src/main/fragment/mos6502-common/pptc1_derefidx_vbuyy=pwum1.asm b/src/main/fragment/mos6502-common/pptc1_derefidx_vbuyy=pwum1.asm deleted file mode 100644 index 63e089b13..000000000 --- a/src/main/fragment/mos6502-common/pptc1_derefidx_vbuyy=pwum1.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda {m1} -sta {c1},y -lda {m1}+1 -sta {c1}+1,y diff --git a/src/main/fragment/mos6502-common/pptm1=_ptr_pbum1.asm b/src/main/fragment/mos6502-common/pptm1=_ptr_pbum1.asm deleted file mode 100644 index 964e6599a..000000000 --- a/src/main/fragment/mos6502-common/pptm1=_ptr_pbum1.asm +++ /dev/null @@ -1 +0,0 @@ -// No operation needed diff --git a/src/main/fragment/mos6502-common/pptm1=_ptr_pbum2.asm b/src/main/fragment/mos6502-common/pptm1=_ptr_pbum2.asm deleted file mode 100644 index ca239d94f..000000000 --- a/src/main/fragment/mos6502-common/pptm1=_ptr_pbum2.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda {m2} -sta {m1} -lda {m2}+1 -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pptm1=_stackidxptr_vbuc1.asm b/src/main/fragment/mos6502-common/pptm1=_stackidxptr_vbuc1.asm deleted file mode 100644 index fb56042f3..000000000 --- a/src/main/fragment/mos6502-common/pptm1=_stackidxptr_vbuc1.asm +++ /dev/null @@ -1,5 +0,0 @@ -tsx -lda STACK_BASE+{c1},x -sta {m1} -lda STACK_BASE+{c1}+1,x -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pptm1=pptc1.asm b/src/main/fragment/mos6502-common/pptm1=pptc1.asm deleted file mode 100644 index 7fa49e4f7..000000000 --- a/src/main/fragment/mos6502-common/pptm1=pptc1.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda #<{c1} -sta {m1} -lda #>{c1} -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pptm1=pptm2.asm b/src/main/fragment/mos6502-common/pptm1=pptm2.asm deleted file mode 100644 index b25001a66..000000000 --- a/src/main/fragment/mos6502-common/pptm1=pptm2.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda {m2} -sta {m1} -lda {m2}+1 -sta {m1}+1 \ No newline at end of file diff --git a/src/main/fragment/mos6502-common/pptz1_derefidx_vbuc1=_ptr_vwum2.asm b/src/main/fragment/mos6502-common/pptz1_derefidx_vbuc1=_ptr_vwum2.asm deleted file mode 100644 index c034ab280..000000000 --- a/src/main/fragment/mos6502-common/pptz1_derefidx_vbuc1=_ptr_vwum2.asm +++ /dev/null @@ -1,6 +0,0 @@ -ldy #{c1} -lda {m2} -sta ({z1}),y -iny -lda {m2}+1 -sta ({z1}),y diff --git a/src/main/fragment/mos6502-common/pptz1_derefidx_vbuc1=pbum2.asm b/src/main/fragment/mos6502-common/pptz1_derefidx_vbuc1=pbum2.asm deleted file mode 100644 index c034ab280..000000000 --- a/src/main/fragment/mos6502-common/pptz1_derefidx_vbuc1=pbum2.asm +++ /dev/null @@ -1,6 +0,0 @@ -ldy #{c1} -lda {m2} -sta ({z1}),y -iny -lda {m2}+1 -sta ({z1}),y diff --git a/src/main/fragment/mos6502-common/pptz1_derefidx_vbuc1=pwum2.asm b/src/main/fragment/mos6502-common/pptz1_derefidx_vbuc1=pwum2.asm deleted file mode 100644 index c034ab280..000000000 --- a/src/main/fragment/mos6502-common/pptz1_derefidx_vbuc1=pwum2.asm +++ /dev/null @@ -1,6 +0,0 @@ -ldy #{c1} -lda {m2} -sta ({z1}),y -iny -lda {m2}+1 -sta ({z1}),y diff --git a/src/main/fragment/mos6502-common/pptz1_derefidx_vbuc1=_ptr_vbuaa.asm b/src/main/fragment/mos6502-common/pptz1_derefidx_vbuyy=_ptr_vbuaa.asm similarity index 78% rename from src/main/fragment/mos6502-common/pptz1_derefidx_vbuc1=_ptr_vbuaa.asm rename to src/main/fragment/mos6502-common/pptz1_derefidx_vbuyy=_ptr_vbuaa.asm index a1e2ba504..2a63cd1fb 100644 --- a/src/main/fragment/mos6502-common/pptz1_derefidx_vbuc1=_ptr_vbuaa.asm +++ b/src/main/fragment/mos6502-common/pptz1_derefidx_vbuyy=_ptr_vbuaa.asm @@ -1,4 +1,3 @@ -ldy #{c1} sta ({z1}),y lda #0 iny diff --git a/src/main/fragment/mos6502-common/_deref_pptz1=pbum2.asm b/src/main/fragment/mos6502-common/pptz1_derefidx_vbuyy=_ptr_vwum2.asm similarity index 87% rename from src/main/fragment/mos6502-common/_deref_pptz1=pbum2.asm rename to src/main/fragment/mos6502-common/pptz1_derefidx_vbuyy=_ptr_vwum2.asm index f266f66b7..1bfb19391 100644 --- a/src/main/fragment/mos6502-common/_deref_pptz1=pbum2.asm +++ b/src/main/fragment/mos6502-common/pptz1_derefidx_vbuyy=_ptr_vwum2.asm @@ -1,4 +1,3 @@ -ldy #0 lda {m2} sta ({z1}),y iny diff --git a/src/main/fragment/mos6502-common/pwum1=pptz2_derefidx_vbuyy.asm b/src/main/fragment/mos6502-common/pptz1_derefidx_vbuyy=pptz2_derefidx_vbuyy.asm similarity index 53% rename from src/main/fragment/mos6502-common/pwum1=pptz2_derefidx_vbuyy.asm rename to src/main/fragment/mos6502-common/pptz1_derefidx_vbuyy=pptz2_derefidx_vbuyy.asm index 799708e74..66ee03e0b 100644 --- a/src/main/fragment/mos6502-common/pwum1=pptz2_derefidx_vbuyy.asm +++ b/src/main/fragment/mos6502-common/pptz1_derefidx_vbuyy=pptz2_derefidx_vbuyy.asm @@ -1,5 +1,5 @@ lda ({z2}),y -sta {m1} +sta ({z1}),y iny lda ({z2}),y -sta {m1}+1 +sta ({z1}),y diff --git a/src/main/fragment/mos6502-common/pssm1=_addr__deref_pssc1.asm b/src/main/fragment/mos6502-common/pssm1=_addr__deref_pssc1.asm deleted file mode 100644 index 7fa49e4f7..000000000 --- a/src/main/fragment/mos6502-common/pssm1=_addr__deref_pssc1.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda #<{c1} -sta {m1} -lda #>{c1} -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pssm1=_deref_pptz2.asm b/src/main/fragment/mos6502-common/pssm1=_deref_pptz2.asm deleted file mode 100644 index f8633a2ee..000000000 --- a/src/main/fragment/mos6502-common/pssm1=_deref_pptz2.asm +++ /dev/null @@ -1,6 +0,0 @@ -ldy #0 -lda ({z2}),y -sta {m1} -iny -lda ({z2}),y -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pssm1=_stackidxptr_vbuc1.asm b/src/main/fragment/mos6502-common/pssm1=_stackidxptr_vbuc1.asm deleted file mode 100644 index fb56042f3..000000000 --- a/src/main/fragment/mos6502-common/pssm1=_stackidxptr_vbuc1.asm +++ /dev/null @@ -1,5 +0,0 @@ -tsx -lda STACK_BASE+{c1},x -sta {m1} -lda STACK_BASE+{c1}+1,x -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pssm1=pssm2.asm b/src/main/fragment/mos6502-common/pssm1=pssm2.asm deleted file mode 100644 index ca239d94f..000000000 --- a/src/main/fragment/mos6502-common/pssm1=pssm2.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda {m2} -sta {m1} -lda {m2}+1 -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pssm1=vwuc1.asm b/src/main/fragment/mos6502-common/pssm1=vwuc1.asm deleted file mode 100644 index 7fa49e4f7..000000000 --- a/src/main/fragment/mos6502-common/pssm1=vwuc1.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda #<{c1} -sta {m1} -lda #>{c1} -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pbuc1_le_pbuc2_then_la1.asm b/src/main/fragment/mos6502-common/pvoc1_le_pvoc2_then_la1.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbuc1_le_pbuc2_then_la1.asm rename to src/main/fragment/mos6502-common/pvoc1_le_pvoc2_then_la1.asm diff --git a/src/main/fragment/mos6502-common/pbuc1_neq__deref_pptz1_then_la1.asm b/src/main/fragment/mos6502-common/pvoc1_neq__deref_pptz1_then_la1.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbuc1_neq__deref_pptz1_then_la1.asm rename to src/main/fragment/mos6502-common/pvoc1_neq__deref_pptz1_then_la1.asm diff --git a/src/main/fragment/mos6502-common/pbsm1=pbsc1.asm b/src/main/fragment/mos6502-common/pvom1=_addr__deref_pvoc1.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbsm1=pbsc1.asm rename to src/main/fragment/mos6502-common/pvom1=_addr__deref_pvoc1.asm diff --git a/src/main/fragment/mos6502-common/pbum1=_dec_pbum2.asm b/src/main/fragment/mos6502-common/pvom1=_dec_pvom2.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=_dec_pbum2.asm rename to src/main/fragment/mos6502-common/pvom1=_dec_pvom2.asm diff --git a/src/main/fragment/mos6502-common/pbum1=_deref_pptc1.asm b/src/main/fragment/mos6502-common/pvom1=_deref_pptc1.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=_deref_pptc1.asm rename to src/main/fragment/mos6502-common/pvom1=_deref_pptc1.asm diff --git a/src/main/fragment/mos6502-common/pbum1=_deref_pptc1_plus_vwuc2.asm b/src/main/fragment/mos6502-common/pvom1=_deref_pptc1_plus_vwuc2.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=_deref_pptc1_plus_vwuc2.asm rename to src/main/fragment/mos6502-common/pvom1=_deref_pptc1_plus_vwuc2.asm diff --git a/src/main/fragment/mos6502-common/pbum1=_deref_pptz2.asm b/src/main/fragment/mos6502-common/pvom1=_deref_pptz2.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=_deref_pptz2.asm rename to src/main/fragment/mos6502-common/pvom1=_deref_pptz2.asm diff --git a/src/main/fragment/mos6502-common/pbum1=_deref_pptz2_plus_vbuaa.asm b/src/main/fragment/mos6502-common/pvom1=_deref_pptz2_plus_vbuaa.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=_deref_pptz2_plus_vbuaa.asm rename to src/main/fragment/mos6502-common/pvom1=_deref_pptz2_plus_vbuaa.asm diff --git a/src/main/fragment/mos6502-common/pbum1=_inc_pbum1.asm b/src/main/fragment/mos6502-common/pvom1=_inc_pvom1.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=_inc_pbum1.asm rename to src/main/fragment/mos6502-common/pvom1=_inc_pvom1.asm diff --git a/src/main/fragment/mos6502-common/pbum1=_inc_pbum2.asm b/src/main/fragment/mos6502-common/pvom1=_inc_pvom2.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=_inc_pbum2.asm rename to src/main/fragment/mos6502-common/pvom1=_inc_pvom2.asm diff --git a/src/main/fragment/mos6502-common/pbsm1=_ptr_pbum1.asm b/src/main/fragment/mos6502-common/pvom1=_ptr_pvom1.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbsm1=_ptr_pbum1.asm rename to src/main/fragment/mos6502-common/pvom1=_ptr_pvom1.asm diff --git a/src/main/fragment/mos6502-common/pbsm1=_ptr_pbum2.asm b/src/main/fragment/mos6502-common/pvom1=_ptr_pvom2.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbsm1=_ptr_pbum2.asm rename to src/main/fragment/mos6502-common/pvom1=_ptr_pvom2.asm diff --git a/src/main/fragment/mos6502-common/pbum1=_ptr_vbuaa.asm b/src/main/fragment/mos6502-common/pvom1=_ptr_vbuaa.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=_ptr_vbuaa.asm rename to src/main/fragment/mos6502-common/pvom1=_ptr_vbuaa.asm diff --git a/src/main/fragment/mos6502-common/pbum1=_ptr_vbuxx.asm b/src/main/fragment/mos6502-common/pvom1=_ptr_vbuxx.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=_ptr_vbuxx.asm rename to src/main/fragment/mos6502-common/pvom1=_ptr_vbuxx.asm diff --git a/src/main/fragment/mos6502-common/pbum1=_ptr_vbuyy.asm b/src/main/fragment/mos6502-common/pvom1=_ptr_vbuyy.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=_ptr_vbuyy.asm rename to src/main/fragment/mos6502-common/pvom1=_ptr_vbuyy.asm diff --git a/src/main/fragment/mos6502-common/pbsm1=pbsm2.asm b/src/main/fragment/mos6502-common/pvom1=_ptr_vwum2.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbsm1=pbsm2.asm rename to src/main/fragment/mos6502-common/pvom1=_ptr_vwum2.asm diff --git a/src/main/fragment/mos6502-common/pbum1=pptc1_derefidx_vbuxx.asm b/src/main/fragment/mos6502-common/pvom1=pptc1_derefidx_vbuxx.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=pptc1_derefidx_vbuxx.asm rename to src/main/fragment/mos6502-common/pvom1=pptc1_derefidx_vbuxx.asm diff --git a/src/main/fragment/mos6502-common/pbum1=pptc1_derefidx_vbuxx_plus_vbuc2.asm b/src/main/fragment/mos6502-common/pvom1=pptc1_derefidx_vbuxx_plus_vbuc2.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=pptc1_derefidx_vbuxx_plus_vbuc2.asm rename to src/main/fragment/mos6502-common/pvom1=pptc1_derefidx_vbuxx_plus_vbuc2.asm diff --git a/src/main/fragment/mos6502-common/pbum1=pptc1_derefidx_vbuyy.asm b/src/main/fragment/mos6502-common/pvom1=pptc1_derefidx_vbuyy.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=pptc1_derefidx_vbuyy.asm rename to src/main/fragment/mos6502-common/pvom1=pptc1_derefidx_vbuyy.asm diff --git a/src/main/fragment/mos6502-common/pbum1=pptc1_derefidx_vbuyy_plus_vbuc2.asm b/src/main/fragment/mos6502-common/pvom1=pptc1_derefidx_vbuyy_plus_vbuc2.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=pptc1_derefidx_vbuyy_plus_vbuc2.asm rename to src/main/fragment/mos6502-common/pvom1=pptc1_derefidx_vbuyy_plus_vbuc2.asm diff --git a/src/main/fragment/mos6502-common/pbum1=pptz2_derefidx_vbuyy.asm b/src/main/fragment/mos6502-common/pvom1=pptz2_derefidx_vbuyy.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=pptz2_derefidx_vbuyy.asm rename to src/main/fragment/mos6502-common/pvom1=pptz2_derefidx_vbuyy.asm diff --git a/src/main/fragment/mos6502-common/pbum1=pbuaa.asm b/src/main/fragment/mos6502-common/pvom1=pvoaa.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=pbuaa.asm rename to src/main/fragment/mos6502-common/pvom1=pvoaa.asm diff --git a/src/main/fragment/mos6502-common/pbum1=pbuc1_plus_vwsm1.asm b/src/main/fragment/mos6502-common/pvom1=pvoc1_plus_vwsm1.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=pbuc1_plus_vwsm1.asm rename to src/main/fragment/mos6502-common/pvom1=pvoc1_plus_vwsm1.asm diff --git a/src/main/fragment/mos6502-common/pbum1=pbuc1_plus_vwsm2.asm b/src/main/fragment/mos6502-common/pvom1=pvoc1_plus_vwsm2.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=pbuc1_plus_vwsm2.asm rename to src/main/fragment/mos6502-common/pvom1=pvoc1_plus_vwsm2.asm diff --git a/src/main/fragment/mos6502-common/pbum1=pbum1_plus_vbuaa.asm b/src/main/fragment/mos6502-common/pvom1=pvom1_plus_vbuaa.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=pbum1_plus_vbuaa.asm rename to src/main/fragment/mos6502-common/pvom1=pvom1_plus_vbuaa.asm diff --git a/src/main/fragment/mos6502-common/pbum1=pbum1_plus_vwsm2.asm b/src/main/fragment/mos6502-common/pvom1=pvom1_plus_vwsm2.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=pbum1_plus_vwsm2.asm rename to src/main/fragment/mos6502-common/pvom1=pvom1_plus_vwsm2.asm diff --git a/src/main/fragment/mos6502-common/pbum1=pbum2_minus_vbuc1.asm b/src/main/fragment/mos6502-common/pvom1=pvom2_minus_vbuc1.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=pbum2_minus_vbuc1.asm rename to src/main/fragment/mos6502-common/pvom1=pvom2_minus_vbuc1.asm diff --git a/src/main/fragment/mos6502-common/pbum1=pbum2_plus_vbuaa.asm b/src/main/fragment/mos6502-common/pvom1=pvom2_plus_vbuaa.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=pbum2_plus_vbuaa.asm rename to src/main/fragment/mos6502-common/pvom1=pvom2_plus_vbuaa.asm diff --git a/src/main/fragment/mos6502-common/pbum1=pbum2_plus_vwsm1.asm b/src/main/fragment/mos6502-common/pvom1=pvom2_plus_vwsm1.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=pbum2_plus_vwsm1.asm rename to src/main/fragment/mos6502-common/pvom1=pvom2_plus_vwsm1.asm diff --git a/src/main/fragment/mos6502-common/pbum1=pbum2_plus_vwsm3.asm b/src/main/fragment/mos6502-common/pvom1=pvom2_plus_vwsm3.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=pbum2_plus_vwsm3.asm rename to src/main/fragment/mos6502-common/pvom1=pvom2_plus_vwsm3.asm diff --git a/src/main/fragment/mos6502-common/pbum1=_addr__deref_pbuc1.asm b/src/main/fragment/mos6502-common/pvom1=vwuc1.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=_addr__deref_pbuc1.asm rename to src/main/fragment/mos6502-common/pvom1=vwuc1.asm diff --git a/src/main/fragment/mos6502-common/pssz1=_deref_pptz1.asm b/src/main/fragment/mos6502-common/pvoz1=_deref_pptz1.asm similarity index 100% rename from src/main/fragment/mos6502-common/pssz1=_deref_pptz1.asm rename to src/main/fragment/mos6502-common/pvoz1=_deref_pptz1.asm diff --git a/src/main/fragment/mos6502-common/pbuz1=_deref_pptz1_plus_vbuaa.asm b/src/main/fragment/mos6502-common/pvoz1=_deref_pptz1_plus_vbuaa.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbuz1=_deref_pptz1_plus_vbuaa.asm rename to src/main/fragment/mos6502-common/pvoz1=_deref_pptz1_plus_vbuaa.asm diff --git a/src/main/fragment/mos6502-common/pssz1=pptz1_derefidx_vbuyy.asm b/src/main/fragment/mos6502-common/pvoz1=pptz1_derefidx_vbuyy.asm similarity index 100% rename from src/main/fragment/mos6502-common/pssz1=pptz1_derefidx_vbuyy.asm rename to src/main/fragment/mos6502-common/pvoz1=pptz1_derefidx_vbuyy.asm diff --git a/src/main/fragment/mos6502-common/pwsm1=_stackidxptr_vbuc1.asm b/src/main/fragment/mos6502-common/pwsm1=_stackidxptr_vbuc1.asm deleted file mode 100644 index fb56042f3..000000000 --- a/src/main/fragment/mos6502-common/pwsm1=_stackidxptr_vbuc1.asm +++ /dev/null @@ -1,5 +0,0 @@ -tsx -lda STACK_BASE+{c1},x -sta {m1} -lda STACK_BASE+{c1}+1,x -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pwsm1=pwsc1.asm b/src/main/fragment/mos6502-common/pwsm1=pwsc1.asm deleted file mode 100644 index 7fa49e4f7..000000000 --- a/src/main/fragment/mos6502-common/pwsm1=pwsc1.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda #<{c1} -sta {m1} -lda #>{c1} -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pwsm1=pwsm2.asm b/src/main/fragment/mos6502-common/pwsm1=pwsm2.asm deleted file mode 100644 index ca239d94f..000000000 --- a/src/main/fragment/mos6502-common/pwsm1=pwsm2.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda {m2} -sta {m1} -lda {m2}+1 -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pwum1=_deref_pptc1.asm b/src/main/fragment/mos6502-common/pwum1=_deref_pptc1.asm deleted file mode 100644 index f3142cc92..000000000 --- a/src/main/fragment/mos6502-common/pwum1=_deref_pptc1.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda {c1} -sta {m1} -lda {c1}+1 -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pwum1=_deref_pptz2.asm b/src/main/fragment/mos6502-common/pwum1=_deref_pptz2.asm deleted file mode 100644 index f8633a2ee..000000000 --- a/src/main/fragment/mos6502-common/pwum1=_deref_pptz2.asm +++ /dev/null @@ -1,6 +0,0 @@ -ldy #0 -lda ({z2}),y -sta {m1} -iny -lda ({z2}),y -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pwum1=_ptr_pbum1.asm b/src/main/fragment/mos6502-common/pwum1=_ptr_pbum1.asm deleted file mode 100644 index 964e6599a..000000000 --- a/src/main/fragment/mos6502-common/pwum1=_ptr_pbum1.asm +++ /dev/null @@ -1 +0,0 @@ -// No operation needed diff --git a/src/main/fragment/mos6502-common/pwum1=_ptr_pbum2.asm b/src/main/fragment/mos6502-common/pwum1=_ptr_pbum2.asm deleted file mode 100644 index ca239d94f..000000000 --- a/src/main/fragment/mos6502-common/pwum1=_ptr_pbum2.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda {m2} -sta {m1} -lda {m2}+1 -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pwum1=_stackidxptr_vbuc1.asm b/src/main/fragment/mos6502-common/pwum1=_stackidxptr_vbuc1.asm deleted file mode 100644 index fb56042f3..000000000 --- a/src/main/fragment/mos6502-common/pwum1=_stackidxptr_vbuc1.asm +++ /dev/null @@ -1,5 +0,0 @@ -tsx -lda STACK_BASE+{c1},x -sta {m1} -lda STACK_BASE+{c1}+1,x -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pwum1=_stackpullptr_.asm b/src/main/fragment/mos6502-common/pwum1=_stackpullptr_.asm deleted file mode 100644 index 1d681205d..000000000 --- a/src/main/fragment/mos6502-common/pwum1=_stackpullptr_.asm +++ /dev/null @@ -1,4 +0,0 @@ -pla -sta {m1} -pla -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pwum1=pbuc1.asm b/src/main/fragment/mos6502-common/pwum1=pbuc1.asm deleted file mode 100644 index 7fa49e4f7..000000000 --- a/src/main/fragment/mos6502-common/pwum1=pbuc1.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda #<{c1} -sta {m1} -lda #>{c1} -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pwum1=pptc1_derefidx_vbuxx.asm b/src/main/fragment/mos6502-common/pwum1=pptc1_derefidx_vbuxx.asm deleted file mode 100644 index 097b58a0d..000000000 --- a/src/main/fragment/mos6502-common/pwum1=pptc1_derefidx_vbuxx.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda {c1},x -sta {m1} -lda {c1}+1,x -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pwum1=pptc1_derefidx_vbuyy.asm b/src/main/fragment/mos6502-common/pwum1=pptc1_derefidx_vbuyy.asm deleted file mode 100644 index 85dd2a129..000000000 --- a/src/main/fragment/mos6502-common/pwum1=pptc1_derefidx_vbuyy.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda {c1},y -sta {m1} -lda {c1}+1,y -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pwum1=pwuc1.asm b/src/main/fragment/mos6502-common/pwum1=pwuc1.asm deleted file mode 100644 index 7fa49e4f7..000000000 --- a/src/main/fragment/mos6502-common/pwum1=pwuc1.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda #<{c1} -sta {m1} -lda #>{c1} -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pwum1=pwum2.asm b/src/main/fragment/mos6502-common/pwum1=pwum2.asm deleted file mode 100644 index ca239d94f..000000000 --- a/src/main/fragment/mos6502-common/pwum1=pwum2.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda {m2} -sta {m1} -lda {m2}+1 -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pwuz1=_deref_pptz1.asm b/src/main/fragment/mos6502-common/pwuz1=_deref_pptz1.asm deleted file mode 100644 index 98dd976ea..000000000 --- a/src/main/fragment/mos6502-common/pwuz1=_deref_pptz1.asm +++ /dev/null @@ -1,8 +0,0 @@ -ldy #0 -lda ({z1}),y -pha -iny -lda ({z1}),y -sta {z1}+1 -pla -sta {z1} \ No newline at end of file diff --git a/src/main/fragment/mos6502-common/pwuz1=pptz1_derefidx_vbuyy.asm b/src/main/fragment/mos6502-common/pwuz1=pptz1_derefidx_vbuyy.asm deleted file mode 100644 index 117f5eede..000000000 --- a/src/main/fragment/mos6502-common/pwuz1=pptz1_derefidx_vbuyy.asm +++ /dev/null @@ -1,7 +0,0 @@ -lda ({z1}),y -pha -iny -lda ({z1}),y -sta {z1}+1 -pla -sta {z1} diff --git a/src/main/fragment/mos6502-common/vwum1=_word_pbum2.asm b/src/main/fragment/mos6502-common/vwum1=_word_pbum2.asm deleted file mode 100644 index ca239d94f..000000000 --- a/src/main/fragment/mos6502-common/vwum1=_word_pbum2.asm +++ /dev/null @@ -1,4 +0,0 @@ -lda {m2} -sta {m1} -lda {m2}+1 -sta {m1}+1 diff --git a/src/main/fragment/mos6502-common/pbum1=_ptr_pbsm2.asm b/src/main/fragment/mos6502-common/vwum1=_word_pvom2.asm similarity index 100% rename from src/main/fragment/mos6502-common/pbum1=_ptr_pbsm2.asm rename to src/main/fragment/mos6502-common/vwum1=_word_pvom2.asm diff --git a/src/main/fragment/mos6502-common/vwum1=pbum1_band_vwuc1.asm b/src/main/fragment/mos6502-common/vwum1=pvom1_band_vwuc1.asm similarity index 100% rename from src/main/fragment/mos6502-common/vwum1=pbum1_band_vwuc1.asm rename to src/main/fragment/mos6502-common/vwum1=pvom1_band_vwuc1.asm diff --git a/src/main/fragment/mos6502-common/vwum1=pbum2_band_vwuc1.asm b/src/main/fragment/mos6502-common/vwum1=pvom2_band_vwuc1.asm similarity index 100% rename from src/main/fragment/mos6502-common/vwum1=pbum2_band_vwuc1.asm rename to src/main/fragment/mos6502-common/vwum1=pvom2_band_vwuc1.asm diff --git a/src/main/java/dk/camelot64/kickc/fragment/AsmFragmentTemplateSynthesisRule.java b/src/main/java/dk/camelot64/kickc/fragment/AsmFragmentTemplateSynthesisRule.java index df98315b5..715e6b197 100644 --- a/src/main/java/dk/camelot64/kickc/fragment/AsmFragmentTemplateSynthesisRule.java +++ b/src/main/java/dk/camelot64/kickc/fragment/AsmFragmentTemplateSynthesisRule.java @@ -710,6 +710,10 @@ class AsmFragmentTemplateSynthesisRule { // Rewrite (Z1),a to save A to $FF and reload it into YY synths.add(new AsmFragmentTemplateSynthesisRule("pb(.)z1_derefidx_vbuaa=(.*)", twoZM1, "sta $ff" , "vb$1aa=$2", "ldy $ff\nsta ({z1}),y", mapZM1)); + // Synthesize typed pointer math using void pointers + synths.add(new AsmFragmentTemplateSynthesisRule("(.*)p..([czm][1-9])(.*)", null, null, "$1pvo$2$3", null, null)); + synths.add(new AsmFragmentTemplateSynthesisRule("(.*)p..([czm][1-9])(.*p.*)", null, null, "$1pvo$2$3", null, null)); + // Synthesize some constant pointers as constant words (remove when the above section can be included) synths.add(new AsmFragmentTemplateSynthesisRule("(.*)_(lt|gt|le|ge|eq|neq)_p..([czm].)_then_(.*)", null, null, "$1_$2_vwu$3_then_$4", null, null)); synths.add(new AsmFragmentTemplateSynthesisRule("p..([czm].)_(lt|gt|le|ge|eq|neq)_(.*)", null, null, "vwu$1_$2_$3", null, null)); diff --git a/src/test/java/dk/camelot64/kickc/test/TestPrograms.java b/src/test/java/dk/camelot64/kickc/test/TestPrograms.java index 8e35b5d81..036e4b2c7 100644 --- a/src/test/java/dk/camelot64/kickc/test/TestPrograms.java +++ b/src/test/java/dk/camelot64/kickc/test/TestPrograms.java @@ -518,7 +518,6 @@ public class TestPrograms { compileAndCompare("millfork-benchmarks/linkedlist-kc.c"); } - @Test public void testSqrDelta() throws IOException, URISyntaxException { compileAndCompare("sqr-delta.c"); diff --git a/src/test/ref/primes-1000.log b/src/test/ref/primes-1000.log index 55c877fd6..8bfc7ed4c 100644 --- a/src/test/ref/primes-1000.log +++ b/src/test/ref/primes-1000.log @@ -3147,12 +3147,12 @@ main: { rol sta.z __12+1 // [8] (signed word*~) main::$16 ← (const signed word*) primenum + (signed word~) main::$12 -- pwsz1=pwsc1_plus_vwsz2 - lda.z __12 + lda #primenum + lda #>primenum + adc.z __12+1 sta.z __16+1 // [9] (signed word) main::p#0 ← *((signed word*~) main::$16) -- vwsz1=_deref_pwsz2 ldy #0 @@ -3260,12 +3260,12 @@ main: { lda.z testnum+1 sta.z div16s.dividend+1 // [23] (signed word*~) main::$17 ← (const signed word*) primenum + (signed word~) main::$13 -- pwsz1=pwsc1_plus_vwsz2 - lda.z __13 + lda #primenum + lda #>primenum + adc.z __13+1 sta.z __17+1 // [24] (signed word) div16s::divisor#0 ← *((signed word*~) main::$17) -- vwsz1=_deref_pwsz2 ldy #0 @@ -3341,12 +3341,12 @@ main: { rol sta.z __14+1 // [33] (signed word*~) main::$18 ← (const signed word*) primenum + (signed word~) main::$14 -- pwsz1=pwsc1_plus_vwsz2 - lda.z __14 + lda #primenum + lda #>primenum + adc.z __14+1 sta.z __18+1 // [34] *((signed word*~) main::$18) ← (signed word) testnum#10 -- _deref_pwsz1=vwsz2 ldy #0