From ecb173ba8a2353cb14a63a1193c9d80afbba341b Mon Sep 17 00:00:00 2001 From: 4am Date: Sat, 5 Sep 2020 19:11:29 -0400 Subject: [PATCH] shave 92081 cycles from all precomputed 3-bit HGR transitions (~5% faster) --- src/fx/fx.hgr.precomputed.3bit.a | 115 ++++++++++++++++++------------- 1 file changed, 66 insertions(+), 49 deletions(-) diff --git a/src/fx/fx.hgr.precomputed.3bit.a b/src/fx/fx.hgr.precomputed.3bit.a index 47528d835..a7dadd0ee 100644 --- a/src/fx/fx.hgr.precomputed.3bit.a +++ b/src/fx/fx.hgr.precomputed.3bit.a @@ -1,13 +1,6 @@ ;license:MIT -;(c) 2019 by 4am +;(c) 2019-2020 by 4am ; -src1 = $F0 ; word -dest1 = $F2 ; word -src2 = $F4 ; word -dest2 = $F6 ; word -src3 = $F8 ; word -dest3 = $FA ; word -input = $FE ; word copymasks = $0200 ; $100 bytes but sparse, index is 0..7 but in high 3 bits, so $00, $20, $40... tmplo = $0300 ; $C0 bytes @@ -91,75 +84,99 @@ hgrhi3c = $BE80 ; $80 bytes !macro ROW_X_TO_3BIT_BASE_ADDRESSES { ; X = $00..$3F, mapping to row 0, 3, 6, 9, 12, ... 189 - lda hgrlo3a,x - sta dest1 - sta src1 - lda hgrhi3a,x - sta dest1+1 + lda hgrlo3a, x + sta