Re: [stella] Qb: v1.01 TITLE SCREEN!

Subject: Re: [stella] Qb: v1.01 TITLE SCREEN!
From: "Thomas Jentzsch" <tjentzsch@xxxxxx>
Date: Thu, 1 Mar 2001 10:47:03 +0100
Andrew Davie wrote:
> Code follows.  The routines VBPreliminary and VBFinal were not included in
> the byte-count, as they were already used for the other kernal display -
> they've been re-used for the title screen.   That is, there was no
> title-screen-related cost in using them.  This is the preliminary
> (not-very-much-optimised) title routine, and as you can see its pretty
> simple.  The best bit is how I packed almost full-screen graphics into just
> 4 bytes/line, just 6o bytes for the total screen graphics (I'll optimise-out
> those trailing 0's later).  Total is about 180 bytes.

Thanks for the code!

BTW: a little optimization:

VBPreliminary
        lda #D1+D6
        sta VBLANK              ; start with tia disabled

;        lda #D1
        sta WSYNC
        sta VSYNC               ; start vertical synch
;just use the old contents D1+D6, VSYNC doesn't have a valid bit 6.

        sta WSYNC               ; 1st
        sta WSYNC               ; 2nd   TV SYNCH (2 tested OK on PAL, 1 FAILED)
        sta WSYNC               ; 3rd, to satisfy ES :)

        IF COMPILE_VERSION = PAL
        ldx #72                 ; PAL
        ELSE
        ldx #31                 ; NTSC
        ENDIF

        stx TIM64T              ; 40/48 scan lines -2 (above)


;        lda #0
        lsr
        sta VSYNC               ; stop vertical synch
        rts
;you could also write stx VSYNC (PAL only), but then there is a dependency with the timer values.

Or you can even try this:
VBPreliminary
        lda #D1+D6
        sta VBLANK              ; start with tia disabled
        ldy #4
.loop:
        sta WSYNC
        sta VSYNC               ; enable/disable vertical synch 
        dey 
        bne .loop
        tya                  ; or asl
        beq .loop         ;   bmi .loop 

        IF COMPILE_VERSION = PAL
        lda #72                 ; PAL
        ELSE
        lda #31                 ; NTSC
        ENDIF

        sta TIM64T              ; 40/48 scan lines -2 (above)
        rts

Have fun!
Thomas
_______________________________________________________
Thomas Jentzsch         | *** Every bit is sacred ! ***
tjentzsch at web dot de |


______________________________________________________________________________
Die Fachpresse ist sich einig: WEB.DE 18mal Testsieger! Kostenlos E-Mail, 
Fax, SMS, Verschlüsselung, POP3, WAP....testen Sie uns! http://freemail.web.de


-
Archives (includes files) at http://www.biglist.com/lists/stella/archives/
Unsub & more at http://www.biglist.com/lists/stella/

Current Thread