Re: [stella] single digit scoring...

Subject: Re: [stella] single digit scoring...
From: Dennis Debro <ddebro@xxxxxxxxxxxxx>
Date: Mon, 25 Aug 2003 8:28:58 -0400
Hi Kirk,

Just to add to both Erik's and Chris' suggestions...

I would recommend you do asl instead of rol. rol will move D7 into the carry bit and the carry bit into D0. This could mess up your values. asl will move 0 into D0 which would give you better results.

There's also another way to do this...isn't there always :)

Your numbers would have to reside on the same page. Then use a table for the LSB of your numbers...
NumberTable
   .byte <zero,<one,<two,<three,<four,<five,<six,<seven,<eight,<nine

In your kernel (or wherever) set the MSB to the page the number fonts reside

  lda #>NumberFonts
  sta tempPointer+1

 and then do...
  ldx p0score           ; assuming they range from 0 to 9
  lda NumberTable,x
  sta tempPointer

This has it's trade offs too of course. The thing I like about this is you can combine your graphic tables to save a couple of bytes. For example if the bottom of your 0 font is the same as your 3 font then you could define it in the ROM as...
zero
        .byte #%00111100
        .byte #%01000010
        .byte #%01000010
        .byte #%01000010
three
        .byte #%00111100
        .byte #%00000010
        .byte #%00111110
        .byte #%00000010
        .byte #%00111100

Take care,
Dennis

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


Current Thread