; T incdir asm: include bincs.i incdir include: include misc/deliplayer.i SECTION Player,code PLAYERHEADER PlayerTagArray dc.b '$VER: Gravity Force Custom Player V1.1 (2005-11-08)',0 even PlayerTagArray dc.l DTP_CustomPlayer,1 dc.l DTP_Creator,playercreator dc.l DTP_Interrupt,interrupt dc.l DTP_InitPlayer,initplayer dc.l DTP_EndPlayer,endplayer dc.l DTP_InitSound,initsound dc.l DTP_EndSound,endsound dc.l DTP_DeliBase,delibase dc.l $80004474,2 dc.l 0 delibase dc.l 0 playercreator dc.b 'Kingsoft 1989',10 dc.b 'Adapted for Eagleplayer and UADE by shd / uade team',0 even initplayer move.l dtg_AudioAlloc(a5),a0 jsr (a0) rts endplayer move.l dtg_AudioFree(a5),a0 jsr (a0) rts testing bset #1,$bfe001 bsr initsound testingl cmp.b #$80,$dff006 bne.b testingl testingl2 cmp.b #$81,$dff006 bne.b testingl2 bsr interrupt btst #6,$bfe001 bne.b testingl bsr endsound rts initsound bsr init_samples bsr init_song bclr #1,$bfe001 rts endsound push all bsr stop pull all rts songend push all move.l delibase(pc),a5 move.l dtg_SongEnd(a5),a0 jsr (a0) pull all rts waitsampledma push d0-d1 moveq #10-1,d0 wsdl1 move.b $dff006,d1 wsdl2 cmp.b $dff006,d1 beq.b wsdl2 dbf d0,wsdl1 pull d0-d1 rts init_samples MOVE.L #sampletable+4,A0 CLR.L D0 lbC03C4DA MOVE.L (A0,D0.L),A1 CLR.L (A1) ADDQ.L #4,D0 CMP.L #$3C,D0 BNE.W lbC03C4DA LEA (song_3C958),A0 MOVE.B ($1D6,A0),(lbB03C90B) * song length RTS init_song MOVE.W #$FFFF,(stopbit) ;init MOVE.W #0,($DFF0A8) MOVE.W #0,($DFF0B8) MOVE.W #0,($DFF0C8) MOVE.W #0,($DFF0D8) CLR.W (playcounter) CLR.L (lbL03C902) CLR.L (lbL03C8FE) RTS stop CLR.W (stopbit) ;stop => cant play MOVE.W #0,($DFF0A8) MOVE.W #0,($DFF0B8) MOVE.W #0,($DFF0C8) MOVE.W #0,($DFF0D8) MOVE.W #15,($DFF096) RTS interrupt MOVEM.L D0-D7/A0-A6,-(SP) CMP.W #0,(stopbit) BEQ.B lbC03C590 ADDQ.W #1,(playcounter) CMP.W #6,(playcounter) BNE.B nonewnote CLR.W (playcounter) BRA.W newnote lbC03C590 MOVEM.L (SP)+,D0-D7/A0-A6 RTS nonewnote LEA (chan0struct),A6 CMP.B #0,(3,A6) BEQ.B lbC03C5AC MOVE.L #$DFF0A0,A5 BSR.B effect lbC03C5AC LEA (chan1struct),A6 CMP.B #0,(3,A6) BEQ.B lbC03C5C2 MOVE.L #$DFF0B0,A5 BSR.B effect lbC03C5C2 LEA (chan2struct),A6 CMP.B #0,(3,A6) BEQ.B lbC03C5D8 MOVE.L #$DFF0C0,A5 BSR.B effect lbC03C5D8 LEA (chan3struct),A6 CMP.B #0,(3,A6) BEQ.B lbC03C5EE MOVE.L #$DFF0D0,A5 BSR.B effect lbC03C5EE MOVEM.L (SP)+,D0-D7/A0-A6 RTS effect MOVE.B (2,A6),D0 ;effect code? AND.B #15,D0 CMP.B #1,D0 BEQ.W lbC03C60E CMP.B #2,D0 BEQ.W lbC03C67E RTS lbC03C60E CMP.W #1,(playcounter) BEQ.B lbC03C642 CMP.W #2,(playcounter) BEQ.B lbC03C64C CMP.W #3,(playcounter) BEQ.B lbC03C658 CMP.W #4,(playcounter) BEQ.B lbC03C642 CMP.W #5,(playcounter) BEQ.B lbC03C64C RTS lbC03C642 CLR.L D0 MOVE.B (3,A6),D0 LSR.B #4,D0 BRA.B lbC03C65E lbC03C64C CLR.L D0 MOVE.B (3,A6),D0 AND.B #15,D0 BRA.B lbC03C65E lbC03C658 MOVE.W ($10,A6),D2 BRA.B lbC03C678 lbC03C65E LSL.L #1,D0 CLR.L D1 MOVE.W ($10,A6),D1 LEA (lbW03C90E),A0 lbC03C66C MOVE.W (A0,D0.L),D2 CMP.W (A0),D1 BEQ.B lbC03C678 ADDQ.L #2,A0 BRA.B lbC03C66C lbC03C678 MOVE.W D2,(6,A5) RTS lbC03C67E CLR.L D0 MOVE.B (3,A6),D0 LSR.B #4,D0 CMP.B #0,D0 BEQ.B lbC03C694 ADD.W D0,(A6) MOVE.W (A6),(6,A5) RTS lbC03C694 CLR.L D0 MOVE.B (3,A6),D0 AND.B #15,D0 CMP.B #0,D0 BEQ.B lbC03C6AA SUB.W D0,(A6) MOVE.W (A6),(6,A5) lbC03C6AA RTS newnote LEA (song_3C958),A0 MOVE.L A0,A3 ADD.L #$0C,A3 MOVE.L A0,A2 ADD.L #$01D8,A2 ADD.L #$0258,A0 MOVE.L (lbL03C902),D0 CLR.L D1 MOVE.B (A2,D0.L),D1 MULU #$400,D1 ADD.L (lbL03C8FE),D1 CLR.W (dmamask) MOVE.L #$DFF0A0,A5 LEA (chan0struct),A6 BSR.W getsample MOVE.L #$DFF0B0,A5 LEA (chan1struct),A6 BSR.W getsample MOVE.L #$DFF0C0,A5 LEA (chan2struct),A6 BSR.W getsample MOVE.L #$DFF0D0,A5 LEA (chan3struct),A6 BSR.W getsample jsr waitsampledma MOVE.L #$8000,D0 ADD.W (dmamask),D0 MOVE.W D0,($DFF096) MOVE.L #chan3struct,A6 CMP.W #1,(14,A6) BNE.B chan3norepeat ;repeat? MOVE.L (10,A6),($DFF0D0) ;repeat ptr MOVE.W (14,A6),($DFF0D4) ;repeat len chan3norepeat MOVE.L #chan2struct,A6 CMP.W #1,(14,A6) BNE.B lbC03C77C MOVE.L (10,A6),($DFF0C0) MOVE.W (14,A6),($DFF0C4) lbC03C77C MOVE.L #chan1struct,A6 CMP.W #1,(14,A6) BNE.B lbC03C79A MOVE.L (10,A6),($DFF0B0) MOVE.W (14,A6),($DFF0B4) lbC03C79A MOVE.L #chan0struct,A6 CMP.W #1,(14,A6) BNE.B lbC03C7B8 MOVE.L (10,A6),($DFF0A0) MOVE.W (14,A6),($DFF0A4) lbC03C7B8 ADD.L #$10,(lbL03C8FE) CMP.L #$0400,(lbL03C8FE) BNE.B lbC03C7F2 * new pattern CLR.L (lbL03C8FE) ADDQ.L #1,(lbL03C902) CLR.L D0 MOVE.W (lbB03C90A),D0 MOVE.L (lbL03C902),D1 CMP.W D0,D1 BNE.B lbC03C7F2 * song restart CLR.L (lbL03C902) bsr songend lbC03C7F2 MOVEM.L (SP)+,D0-D7/A0-A6 RTS getsample MOVE.L (A0,D1.L),(A6) ADDQ.L #4,D1 CLR.L D2 MOVE.B (2,A6),D2 AND.B #$F0,D2 LSR.B #4,D2 CMP.B #0,D2 BEQ.B lbC03C876 CLR.L D3 LEA (sampletable),A1 MOVE.L D2,D4 MULU #4,D2 MULU #$1E,D4 MOVE.L (A1,D2.L),(4,A6) ;play ptr MOVE.W (A3,D4.L),(8,A6) ;play len MOVE.W (2,A3,D4.L),($12,A6) ;volume MOVE.W (4,A3,D4.L),D3 ;repeat offset CMP.W #0,D3 BEQ.B norepeat MOVE.L (4,A6),D2 ;sample ptr ADD.L D3,D2 ;add repeat offset MOVE.L D2,(4,A6) ;play ptr MOVE.L D2,(10,A6) ;repeat ptr MOVE.W (6,A3,D4.L),(8,A6) ;play len MOVE.W (6,A3,D4.L),(14,A6) ;repeat len MOVE.W ($12,A6),(8,A5) ;set hw vol BRA.B lbC03C876 norepeat MOVE.L (4,A6),D2 ;sample ptr ADD.L D3,D2 ;add repeat offset MOVE.L D2,(10,A6) ;repeat ptr MOVE.W (6,A3,D4.L),(14,A6) ;repeat len MOVE.W ($12,A6),(8,A5) ;set hw vol lbC03C876 CMP.W #0,(A6) BEQ.B lbC03C8A4 MOVE.W (A6),($10,A6) MOVE.W ($14,A6),($DFF096) MOVE.L (4,A6),(0,A5) MOVE.W (8,A6),(4,A5) MOVE.W (0,A6),(6,A5) MOVE.W ($14,A6),D0 OR.W D0,(dmamask) lbC03C8A4 RTS chan0struct dcb.w 10,0 dc.w 1 chan1struct dcb.w 10,0 dc.w 2 chan2struct dcb.w 10,0 dc.w 4 chan3struct dcb.w 10,0 dc.w 8 lbL03C8FE dc.l $0 lbL03C902 dc.l $0 playcounter dc.w 0 dmamask dc.w 0 lbB03C90A dc.b 0 lbB03C90B dc.b 10 stopbit dc.w $FFFF lbW03C90E dc.w $358 dc.w $328 dc.w $2FA dc.w $2D0 dc.w $2A6 dc.w $280 dc.w $25C dc.w $23A dc.w $21A dc.w $1FC dc.w $1E0 dc.w $1C5 dc.w $1AC dc.w $194 dc.w $17D dc.w $168 dc.w $153 dc.w $140 dc.w $12E dc.w $11D dc.w $10D dc.w $FE dc.w $F0 dc.w $E2 dc.w $D6 dc.w $CA dc.w $BE dc.w $B4 dc.w $AA dc.w $A0 dc.w $97 dc.w $8F dc.w $87 dc.w $7F dc.w $78 dc.w $71 dc.w 0 song_3C958 dcb.w 2,$2E2E dc.w $2E72 dcb.w 7,0 dcb.w 6,$2E2E dcb.w 5,0 dc.w $2BC dc.w $28 dc.w 0 dc.w 1 dcb.w 7,$2E2E dc.w $3200 dcb.w 3,0 dc.w $7D0 dc.w $37 dc.w 0 dc.w 1 dcb.w 6,$2E2E dc.w $7337 dcb.w 4,0 dc.w $1356 dc.w $40 dc.w $1F4 dc.w $1117 dcb.w 7,$2E2E dc.w $3200 dcb.w 3,0 dc.w $5DC dc.w $2D dc.w 0 dc.w 1 dcb.w 6,$2E2E dcb.w 5,0 dc.w $60E dc.w $40 dc.w 0 dc.w 1 dcb.w 5,$2E2E dcb.w 6,0 dc.w $CE4 dc.w $40 dc.w 0 dc.w 1 dcb.w 7,$2E2E dcb.w 4,0 dc.w $1162 dc.w $30 dc.w 0 dc.w 1 dcb.w 7,$2E2E dcb.w 4,0 dc.w $12F2 dc.w $40 dc.w $116E dc.w $81E dcb.w 7,$2E2E dc.w $2E00 dcb.w 3,0 dc.w $6A4 dc.w $40 dc.w 0 dc.w 1 dcb.w 2,$2E2E dc.w $2E3A dcb.w 12,0 dc.w $6664 dc.w $2E2E dc.w $2E3A dcb.w 12,0 dcb.w 3,$2E2E dcb.w 12,0 dcb.w 3,$2E2E dcb.w 12,0 dcb.w 3,$2E2E dcb.w 12,0 dc.w $2F2E dcb.w 2,$2E2E dcb.w 12,0 dc.w $A78 dc.w 2 dc.w $203 dc.w $402 dc.w $203 dc.w $401 dc.w $102 dc.w $204 dc.w $100 dcb.w $3A,0 dc.w $1AC dc.w $3000 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dcb.w 6,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dcb.w 6,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 2,0 dc.w $168 dc.w $3000 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $168 dc.w $5000 dcb.w 6,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $168 dc.w $5000 dcb.w 6,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 6,0 dc.w $E2 dc.w $2000 dcb.w 2,0 dc.w $1AC dc.w $3000 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 2,0 dc.w $168 dc.w $3000 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 2,0 dc.w $17D dc.w $3000 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 2,0 dc.w $140 dc.w $3000 dc.w $140 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $140 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $140 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $140 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $140 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $140 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $140 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $140 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 4,0 dc.w $140 dc.w $5000 dc.w $E2 dc.w $2000 dc.w $11D dc.w $7000 dc.w $1AC dc.w $3000 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 8,0 dc.w $11D dc.w $7000 dcb.w 2,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dc.w $FE dc.w $7000 dcb.w 2,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dc.w $F0 dc.w $7000 dc.w $168 dc.w $3000 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 8,0 dc.w $FE dc.w $7000 dc.w $17D dc.w $3000 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dc.w $F0 dc.w $7000 dc.w $168 dc.w $3000 dc.w $168 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dc.w $11D dc.w $7000 dc.w $1AC dc.w $3000 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 8,0 dc.w $11D dc.w $7000 dcb.w 2,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dc.w $FE dc.w $7000 dcb.w 2,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dc.w $F0 dc.w $7000 dc.w $168 dc.w $3000 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 8,0 dc.w $FE dc.w $7000 dc.w $17D dc.w $3000 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dc.w $F0 dc.w $7000 dc.w $168 dc.w $3000 dc.w $168 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 8,0 dc.w $FE dc.w $7000 dcb.w 2,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dc.w $11D dc.w $7000 dc.w $1AC dc.w $3000 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dc.w $11D dc.w $7000 dcb.w 2,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 8,0 dc.w $FE dc.w $7000 dcb.w 2,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dc.w $F0 dc.w $7000 dc.w $168 dc.w $3000 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 8,0 dc.w $FE dc.w $7000 dcb.w 2,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dc.w $F0 dc.w $7000 dcb.w 2,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dc.w $FE dc.w $7000 dc.w $17D dc.w $3000 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dc.w $F0 dc.w $7000 dc.w $140 dc.w $3000 dc.w $140 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $140 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dc.w $FE dc.w $7000 dcb.w 2,0 dc.w $140 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 8,0 dc.w $F0 dc.w $7000 dcb.w 2,0 dc.w $140 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $140 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 8,0 dc.w $FE dc.w $7000 dcb.w 2,0 dc.w $140 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dc.w $F0 dc.w $7000 dcb.w 2,0 dc.w $140 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 8,0 dc.w $FE dc.w $7000 dcb.w 2,0 dc.w $140 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 4,0 dc.w $140 dc.w $5000 dc.w $E2 dc.w $2000 dc.w $11D dc.w $7000 dc.w $1AC dc.w $3000 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $1AC dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 2,0 dc.w $168 dc.w $3000 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $168 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 2,0 dc.w $17D dc.w $3000 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $17D dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 2,0 dc.w $140 dc.w $3000 dc.w $140 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $140 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $140 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $140 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $140 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 12,0 dc.w $140 dc.w $5000 dc.w $E2 dc.w $1000 dcb.w 6,0 dc.w $E2 dc.w $1000 dcb.w 4,0 dc.w $140 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 12,0 dc.w $140 dc.w $5000 dc.w $E2 dc.w $2000 dcb.w 4,0 dc.w $140 dc.w $5000 dc.w $E2 dc.w $2000 section data,data_c sample incbin sample_18000_22000.bin even sample_18000 equ sample+$18000-$18000 sample_18578 equ sample+$18578-$18000 sample_19518 equ sample+$19518-$18000 sample_1bbc4 equ sample+$1bbc4-$18000 sample_1c7e0 equ sample+$1c7e0-$18000 sample_1eaa4 equ sample+$1eaa4-$18000 sample_zeros_3060e dcb.b $4000,0 sampletable dc.l sample_zeros_3060e dc.l sample_18000 dc.l sample_18578 dc.l sample_19518 dc.l sample_zeros_3060e dc.l sample_1bbc4 dc.l sample_zeros_3060e dc.l sample_1c7e0 dc.l sample_1eaa4 dc.l sample_zeros_3060e dc.l sample_zeros_3060e dc.l sample_zeros_3060e dc.l sample_zeros_3060e dc.l sample_zeros_3060e dc.l sample_zeros_3060e dc.l sample_zeros_3060e dc.l sample_zeros_3060e end