From 102ca9438ec1618d2c8dc79edaaa73b3e6c39aea Mon Sep 17 00:00:00 2001 From: Michaelangel007 Date: Wed, 19 Jul 2017 09:16:13 -0700 Subject: [PATCH] More qkumba's optimizations: 673 --- README.md | 2 +- linuxlogo | Bin 681 -> 673 bytes linuxlogo.s | 24 +++++++++--------------- ll_6502.dsk | Bin 143360 -> 143360 bytes 4 files changed, 10 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index 021716c..47d5bc2 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ Linux Logo in 6502 assembly language. -Size: 681 ($2A9) bytes +Size: 673 ($2A1) bytes # Screenshots diff --git a/linuxlogo b/linuxlogo index cfc7f1f007e583c7728d52b507acb40253d678ad..1b330feccb777cd9a2567353807bab993f8af891 100644 GIT binary patch delta 158 zcmV;P0Ac^B1)&9yBo@62jJ^tuzY3|Kjf@JSwxG3+jS7s8kvb+uoeGYg3XGo$&>XG6 z`|t+I;Lzak45{OdjS8*5`^g2+1)>2U*$It-z>R^xsRxB6pa6vZg!!${3Wff;&90WFMAVE_OC delta 183 zcmV;o07(C#1*rv)Bo@UAjK&I$#|o*Sjg$(awxG3+l?sfOkvb+wr3#Lw3XG=;&>XG6 z`|t+I;Lzak45{Odl?tuD`^g2+1)>2U+X;<R^xsRxB6sQ{>|h5d#3t=9^L{<+u+ zh5w=ehWsGlk)|I-UkZ^Z=*Yk*(Dmjer6tK1(CEe`sjHpG3WWNl{t603{wWMa{wWWl l0EYXd{qP0~Ci{rc`U)odIBKT(9ne3W&_AX97_$TcodE`$T(1BC diff --git a/linuxlogo.s b/linuxlogo.s index e54600d..30e4a3c 100644 --- a/linuxlogo.s +++ b/linuxlogo.s @@ -163,11 +163,10 @@ Unpack lda #7 ; will INC, $0428 (Text) + $1C00 => $2028 (HGR) sta zCursorY ; Start Row=8 - lda #0 - tay - tax ; SrcShift=0 - sta zDstShift - sta zDstOffset + + ldy #0 ; zSrcOffset + sty zDstShift + sty zDstOffset lda PackedBits sta zUnpackBits+0 @@ -175,7 +174,7 @@ Unpack NextSrcShift lda PackedBits+1,Y sta zUnpackBits+1 - ldx #0 + ldx #0 ; zSrcShift UpdateSrcShift stx zSrcShift @@ -277,16 +276,12 @@ Unpack2Bits stx zMask ldy zDstShift ; which 280 px column is next pixel writing to? - beq NoShiftSherlock MakeShiftMask - asl - rol zMask - dey - bne MakeShiftMask -NoShiftSherlock - asl ; msb of byte0 set? rol zMask ; shift in to lsb of byte1 + dey + bpl MakeShiftMask + sec ; MSB=1 color=blue/orange ror ldx zDstOffset @@ -294,8 +289,7 @@ NoShiftSherlock sta UnpackAddr,X lda zDstShift ; x={0,1,2} + 4 < 7 - clc - adc #4 + adc #4 ; C=0 from ASL ROR above cmp #7 ; all bits fit into dest byte? bcc FitSameByte diff --git a/ll_6502.dsk b/ll_6502.dsk index 3074eeeb841fcd94a1897f4166eb458218cf21b9..1ec32e679e9c33c146bafa415ace1fb9b135e020 100644 GIT binary patch delta 198 zcmV;%06G7F;0S==2!ON!0cw{aTmj#c5DFj&9ne3W&_AX9mk?_K@C*On|NsC0|Nj69 zp_c<}0VNi_3XHxAjlT-1ppA?QqPC#5j*SY8j+Z`O0VWxp3XYx%jGqe79Ie3n@CM1? z(BSY4spE}}mwjFV7Z#uZg#Cp1tPx# delta 203 zcmV;+05t!A;0S==2!ON!0cr=||NsC0|NoY10r(IKCi^&QruiMvKb_D&rTrL}2x|fG z0{{uBmji48B^JdBjK&I$#|o*Sjg$(awxG3+l?sfOmp)zrCP<|Uj;0EXrwY&