dos33fsprogs/games/sb/play_back_off.s

50 lines
644 B
ArmAsm
Raw Normal View History

2023-06-16 20:02:23 +00:00
BACK_SAMPLE = $D000
BACK_LENGTH = 30 ; $1E
2023-06-16 06:00:04 +00:00
play_back_off:
; only avail if language card
lda SOUND_STATUS
and #SOUND_IN_LC
2023-06-16 20:02:23 +00:00
beq done_play_back_off
2023-06-16 06:00:04 +00:00
; switch in language card
; read/write RAM $d000 bank 1
bit $C083
bit $C083
; call the btc player
2023-06-16 20:02:23 +00:00
lda #<BACK_SAMPLE
2023-06-16 06:00:04 +00:00
sta BTC_L
2023-06-16 20:02:23 +00:00
lda sound_parts,Y ; #>BACK_SAMPLE
2023-06-16 06:00:04 +00:00
sta BTC_H
lda sound_len,Y
tax
2023-06-16 20:02:23 +00:00
;ldx #BACK_LENGTH ; 28 pages long???
2023-06-16 06:00:04 +00:00
jsr play_audio
; read ROM/no-write
bit $c082
2023-06-16 20:02:23 +00:00
done_play_back_off:
2023-06-16 06:00:04 +00:00
rts
sound_parts:
2023-06-16 20:02:23 +00:00
.byte $D0 ; back
.byte $D8 ; off
.byte $E0 ; baby
.byte $D0 ; all
2023-06-16 06:00:04 +00:00
sound_len:
.byte $8
.byte $8
2023-06-16 20:02:23 +00:00
.byte $E
.byte 30 ; $1E