.. files/src/sidplay/sidplay.s

File last touched at: 29.08.2002

 

;-------------------------------
; little music player
;-------------------------------


STUBPOLL=$ce00+3

         *=$c000-2
         .word $c000

;-------------------------------

         jmp start
         jmp stop

;-------------------------------
; patched from host

init:    jmp $1000
play:    jmp $1003

;-------------------------------
stop:
         sei

         ; volume=0
         lda #$00
         sta $d418

         lda #$35
         sta $01

         lda #<irqoff
         sta
$fffe
         sta $0314
         lda #>irqoff
         sta
$ffff
         sta $0315

         ; acknowledge irq
         inc $d019
         lda $dc0d
         sta $dc0d
         cli
         jmp mlp
;-------------------------------

start:
         sei
         lda #
$35
         sta $01

         lda #<irq
         sta
$fffe
         sta $0314
         lda #>irq
         sta
$ffff
         sta $0315

         lda #$7f
         sta $dc0d
         lda #$01
         sta $d01a
         lda #$1b
         sta $d011
         lda #$f8
         sta $d012

         lda #$00
         tax
         tay
         jsr init

         lda #
$f0
@ww:
         cmp $d012
         bne @ww

         ; acknowledge irq
         inc $d019
         cli

;-------------------------------

mlp:
         lda #$84
@lp:
         cmp $d012
         bne @lp

         inc
$d021
         jsr STUBPOLL
         dec
$d021

         jmp mlp

;-------------------------------

irq:
         sei
         sta irqa
         stx irqx
         sty irqy

         inc
$d020
         jsr play
         dec
$d020

         ; acknowledge irq
         inc $d019

irqa=*+1
         lda #$00
irqx=*+1
         ldx #$00
irqy=*+1
         ldy #$00

         cli
         rti

irqoff:
         sei
         pha
         lda
$dc0d
         sta $dc0d
         inc $d019
         pla
         cli
         rti


 

generated by txt2htm v0.1a (w)2001 Groepaz/Hitmen