I have been futzing around for almost a week trying to get a logo to show up on the high score cart. I thought I understood it well enough to implement it but I guess I was wrong.
Here is the code I have:
; TEMPLATE FOR HSC TABLE HSCTEMP .byte $00,$00 ;ID NUMBER AND TRAILING ZERO .byte $00 ;DIFFICULTY [7..2] AND PLAYER [1..0] .byte $01 ;CONTROLLER TYPE .byte $00,$00 ;WE USE THE LOGO .byte <(HSCDIF),>(HSCDIF);POINTER TO DIFFICULTY NAME .byte $00,$00 ;POINTER TO SCORE .byte <(HSCDLL),>(HSCDLL);POINTER TO DLL FOR LOGO .byte <(HSCSOUND),>(HSCSOUND);POINTER TO SOUND ROUTINE .byte $00 ;TIME TO WAIT TILL RETURN HSCDLL: .byte $0B,>(NULDLIST),<(NULDLIST);12 BLANK LINES .byte $0B,>(NULDLIST),<(NULDLIST);12 BLANK LINES .byte $0B,>(NULDLIST),<(NULDLIST);12 BLANK LINES .byte $05,>(HSCDL1),<(HSCDL1);5 LINES OF DLL FOR LOGO .byte $05,>(HSCDL2),<(HSCDL2) .byte $05,>(HSCDL3),<(HSCDL3) .byte $05,>(HSCDL4),<(HSCDL4) .byte $05,>(HSCDL5),<(HSCDL5) .byte $0B,>(NULDLIST),<(NULDLIST);12 BLANK LINES (SEPERATOR) .byte $00,$00,$00 ; COPY HSCROM1,2,3,4 AND 5 TO HSCDL1,2,3,4 AND 5 IN RAM HSCROM1: .byte <(HSCSCR1),$60,>(HSCSCR1),$00+$04,$18;SCREEN - PLAY FIELD LINE 1 .byte $00,$00,$00 HSCROM2: .byte <(HSCSCR2),$60,>(HSCSCR2),$00+$04,$18;SCREEN - PLAY FIELD LINE 2 .byte $00,$00,$00 HSCROM3: .byte <(HSCSCR3),$60,>(HSCSCR3),$00+$04,$18;SCREEN - PLAY FIELD LINE 3 .byte $00,$00,$00 HSCROM4: .byte <(HSCSCR4),$60,>(HSCSCR4),$00+$04,$18;SCREEN - PLAY FIELD LINE 4 .byte $00,$00,$00 HSCROM5: .byte <(HSCSCR5),$60,>(HSCSCR5),$00+$04,$18;SCREEN - PLAY FIELD LINE 5 .byte $00,$00,$00
Here is the RAM section for HSCDL1-5:
HSCDL1 = $1AE0 HSCDL2 = $1AF0 HSCDL3 = $1B00 HSCDL4 = $1B10 HSCDL5 = $1B20
Here is where the Screen RAM is defined:
HSCSCR1 = $1A20 HSCSCR2 = $1A40 HSCSCR3 = $1A60 HSCSCR4 = $1A80 HSCSCR5 = $1AA0
hscdl1, hscdl2, hscdl3, hscdl4, and hscdl5 are in ram, and cleared out (zeroed) and an oval-shaped logo is put there via Character Mode. The problem I get is that I get all 'A's in the background ($00, which I'm using as the blank character, is 'A' in the HSC's alphabet). If you look carefully, you will see a 'garbage' oval where the logo should be. So I know it's partially right.
BTW, Asteroids uses the DLL in ROM for the HSC so I know that psrt of it is ok. I know the character mode is set right, because it works in-game.
Each Display List is 6 pixels high. I've studied Kenfused's example he gave me a while back. I understand what he did but for the life of me I can't understand why what I did isn't working. I've attached screen shots of what I see.
I hope someone can help. Thanks in advance.
Bob
Edited by PacManPlus, Sun Sep 14, 2008 6:16 PM.













