From 971cabde0d6bf21c1943da1ca4d3fb7710894174 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mario=20Pati=C3=B1o?= Date: Mon, 15 Jul 2013 20:05:37 +0200 Subject: [PATCH] Runtime optimizations * Moved the SAVEDST routine to the main loop saving one JSR and RTS on each byte. * The address calculation routine now is called once for every line instead of every byte. * Corrected Arnaud's name. Sorry for the typo! --- DISPLAY.S | 69 +++++++++++++++++++++++-------------------------- Images/VBMP.po | Bin 143360 -> 143360 bytes 2 files changed, 32 insertions(+), 37 deletions(-) diff --git a/DISPLAY.S b/DISPLAY.S index 19c74ab..a6cd90f 100644 --- a/DISPLAY.S +++ b/DISPLAY.S @@ -1,6 +1,6 @@ *********************** * Apple II BMP Viewer * -* Arnaud Coqui}re * +* Arnaud Cocqui}re * * Mario Patino * *********************** @@ -53,36 +53,6 @@ S1 STY SRCY STA COMPTS RTS -SAVEDST LDX DESTX - JSR CALC - LDY DESTY - LDA BUFFDST - LSR ; DERNIER DECALLAGE POUR 7EMEBIT - STA (MEM),Y - LDA DHGR - BEQ HGR - BIT $C01C - BPL PAGE2 - BIT $C054 - JMP S2 -PAGE2 BIT $C055 -HGR INY - CPY #40 - BNE S2 - DEX - CPX #$FF - BEQ FIN - STX DESTX - JSR READBMP ; SAUTE DES OCTETS DANS BMP - LDA DHGR - BEQ FILLD - JSR READBMP -FILLD LDY #00 -S2 STY DESTY - LDA #06 - STA COMPTD - RTS -FIN JMP END DEBUT BIT $C050 ; GRAPHIQUES @@ -134,6 +104,7 @@ GO1 LDA SOURCE+$0A STA SRCY STA DESTY LDX #191 + JSR CALC STX DESTX LDA #06 STA COMPTD @@ -145,13 +116,37 @@ BP ASL BUFFBMP BPL S3 JSR READBMP S3 DEC COMPTD ; 7 ROTATIONS - BPL S4 - JSR SAVEDST -S4 JMP BP + BPL BP + LDY DESTY + LDA BUFFDST + LSR ; DERNIER DECALLAGE POUR 7EMEBIT + STA (MEM),Y + LDA DHGR + BEQ HGR + BIT $C01C + BPL PAGE2 + BIT $C054 + JMP S2 +PAGE2 BIT $C055 +HGR INY + CPY #40 + BNE S2 + DEX + CPX #$FF + BEQ FIN + JSR CALC + STX DESTX + JSR READBMP ; SAUTE DES OCTETS DANS BMP + LDA DHGR + BEQ FILLD + JSR READBMP +FILLD LDY #00 +S2 STY DESTY + LDA #06 + STA COMPTD + JMP BP -END PLA - PLA - STA $C010 +FIN STA $C010 BF LDA $C000 BPL BF STA $C010 diff --git a/Images/VBMP.po b/Images/VBMP.po index 24921383781ae0a728c0fba7ae115df348f171dc..29722a18d145272b06031f696cce836cdb304a8c 100644 GIT binary patch delta 384 zcmZp8z|ru4V?!ScuM<1NJt+ntc+9}?e)4P)QFaw##Bn3V$ zkzOk2HIZ$p{0BZAnF9iBIw1#qJ__iB9yoD8 zp~;h>h{J}VSwYFu*U{ZoNk=Kz%ik$jiJ_ar4I~;I;u_`}3>0=WayGQIFi~RI%Mk#Q zaC8X^@$_{y0!n!X`TO}g`hoO%`UV91`+?L42l)HByE^$hDQym9b7fq{#-s%RB=3QL delta 344 zcmZp8z|ru4V?!ScZwWiYJt+ntc+9|XZ}MywDLz?7xQGA)!{);*VT_C(o2A$k^VmOr zefjs(Q-#e=B|v*&JL^!!-G3)hvz6TOg{ThV)+E0#yvT1V1Bm_W;j!6P3V*#Jn z0vQ>Tf7ShKYS`Am$kU=?z#+o0%SFXn$;rpx(M7@0$l1`+!bH!>H$cZx#l*nCK#9S9 Sx*ZFX*k&W1U5v}vn6v;Z!I3lo