dmsc / fastbasic

FastBasic - Fast BASIC interpreter for the Atari 8-bit computers
GNU General Public License v2.0
134 stars 20 forks source link

help with assembler #89

Open drarem opened 1 month ago

drarem commented 1 month ago

Trying to do this, figuring the poke is slightly faster than the sound statement. It doesn't do anything, tried various ways. The endians might be reversed or am loading the accumulator wrong. Supposed to at least hear the first note playing at volume of 12 when it runs.

.data AUDCTL1 53760 .data AUDVOL1 53761

LDA #str STA AUDCTL LDA #$172 STA AUDVOL1 RTS

* SOURCE DATA str() B. = 243,213,200,192,158,96 DATA AUDCTL1() B. = 0,210 DATA AUDVOL1() B. = 1,210

AUDCTL = 53760 AUDVOL = 53761 X = ADR(str) ? X, X+6 DATA ad() B. = $AD,str,$8D,AUDCTL1,$A9,172,$8D,AUDVOL1,$60

drarem commented 1 month ago

Nevermind, this can be closed. I can't really play the music in a loop and have any other interaction unless the music is built into the loop. But I was able to test it neatly in WUDSN:

        org $2000   ;Start of code block

AUDACTL1 = $D200
AUDVOL1 =  $D201

start   lda #243        ;Disable screen DMA

    sta $D200
    lda #172
    sta $D201

stop    jmp stop