* * ...endlich !! * * Ich presentiere: * * * Gremlin Player - for a lot of GameMuzak * * ...made by The Vampire / PseudoDOS Group >extern"dh0:music/grem.AxelHammer",music music = $40000 init = 0 ; d0 subsong? play = 4 fx = $a stop = $e stop2 = $1a sb = $e test = 8 lea mod(pc),a0 move.l #music,(a0)+ ; adr move.w #0,(a0) ; subsong start: move.l mod(pc),a0 move.w snr(pc),d0 ; d0: subsong nr (0-x) jsr init(a0) loop MOVE.L $DFF004,D0 AND.L #$1FF00,D0 CMP.L #$08000,D0 BNE.S loop move.l mod(pc),a0 jsr play(a0) move.l mod(pc),a0 tst.w test(a0) ; ready? beq.s x * tst.w fnr * bne.s cnt * moveq #2,d0 ; d0: which fx (0-x) * move.w #0,d1 ; d1: channel (0-3) * addq.w #1,fnr * beq.s start * jsr fx(a0) * lea mod(pc),a0 * st fnr-mod(a0) cnt BTST #6,$BFE001 BNE.S loop x move.l mod(pc),a0 jSR stop2(a0) rts mod dc.l 0 snr dc.w 0 fnr dc.w 0 * einsprungtabelle sieht so aus: * * dc.w $6000,$....,$6000,$....,$..00,$6000,$.... * dc.w $41fa,$fff8,$4250,$6000,$.... * offset zur songstartadr steht nach: * * $d040 $3033 $0000 $47fa $.... <-negativ.w .