home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Crawly Crypt Collection 1
/
crawlyvol1.bin
/
falcon
/
sound
/
f030play
/
replay4.s
< prev
Wrap
Text File
|
1993-08-21
|
32KB
|
1,552 lines
clr.l -(sp)
move #$20,-(sp)
trap #1
addq.l #6,sp
bsr.s M_SETUP
move #$2700,sr
bsr M_ON
move #$2300,sr
clr.l $466.w
move.w #0,$ff9800
moveq #0,d0
vblank
; move.l $446.w,d0
;.wait cmp.l $446.w,d0
; beq.s .wait
clr.l $446.w
cmp.b #$39+$80,$fffffc02.w
bne.s vblank
bsr.s M_OFF
clr -(sp)
trap #1
M_SETUP bra SETUP_MO
M_ON bra INT_ON
M_OFF bra INT_OFF
SETUP_MO
move.w #$80,-(a7)
trap #14
addq.l #2,a7
move.l $134.w,OLD_A
move.w #1,-(a7)
move.w #0,-(a7)
move.w #0,-(a7)
move.w #8,-(a7)
move.w #1,-(a7)
move.w #$8B,-(a7)
trap #14
lea $C(a7),a7
move.w #0,-(a7)
move.w #1,-(a7)
move.w #$89,-(a7)
trap #14
addq.w #6,a7
move.w #1,-(a7)
move.l #$1E4,-(a7)
pea DSPPROG(pc)
move.w #$6E,-(a7)
trap #14
lea $C(a7),a7
bsr MT_INIT
bra PREPARE
INT_OFF move.l OLD_A(pc),$134.w
move.b OLD_19(pc),$FFFFFA19.w
move.b OLD_1F(pc),$FFFFFA1F.w
bclr #5,$FFFFFA07.w
bclr #5,$FFFFFA13.w
move.w #1,-(a7)
move.w #0,-(a7)
move.w #0,-(a7)
move.w #8,-(a7)
move.w #0,-(a7)
move.w #$8B,-(a7)
trap #14
lea $C(a7),a7
move.w #1,-(a7)
move.w #$84,-(a7)
trap #14
addq.w #4,a7
move.w #$81,-(a7)
trap #14
addq.l #2,a7
rts
INT_ON move.b $FFFFFA19.w,OLD_19
move.b $FFFFFA1F.w,OLD_1F
bclr #3,$FFFFFA17.w
bset #5,$FFFFFA07.w
bset #5,$FFFFFA13.w
move.b #$F6,$FFFFFA1F.w
move.b #7,$FFFFFA19.w
move.l #NEW_A,$134.w
rts
OLD_A DC.L 0
OLD_19 DC.L 0
OLD_1F DC.L 0
NEW_A
movem.l d0-d7/a0-a6,-(a7)
move.l #$00000000,$ffff9800.w
lea $FFFFA200.w,a6
clr.b 7(a6)
lea CH1S(pc),a1
bsr.s SEND_VOICE
lea CH2S(pc),a1
bsr.s SEND_VOICE
lea CH3S(pc),a1
bsr.s SEND_VOICE
lea CH4S(pc),a1
bsr.s SEND_VOICE
bsr MT_MUSIC
move.l #$fffff00ff,$ffff9800.w
movem.l (a7)+,d0-d7/a0-a6
rte
vbl
addq.l #1,$466.w
rte
SEND_VOICE
move.b $17(a1),5(a6)
clr.w 6(a6)
moveq #0,d0
move.w $14(a1),d0
move.l #$24665268,d1
divul.l d0,d1:d1
swap d1
move.b d1,5(a6)
rol.l #8,d1
move.b d1,6(a6)
rol.l #8,d1
move.b d1,7(a6)
moveq #0,d0
.CHECK1 btst #0,2(a6)
beq.s .CHECK1
move.b 5(a6),d0
lsl.l #8,d0
move.b 6(a6),d0
lsl.l #8,d0
move.b 7(a6),d0
move.l (a1),d1
tst.w $C(a1)
bne.s .NOPS
add.l d0,d1
cmp.l 4(a1),d1
bcs.s .NOPS
sub.l 8(a1),d1
.NOPS move.l d1,(a1)
movea.l d1,a2
moveq #0,d0
.CHECK2 btst #0,2(a6)
beq.s .CHECK2
move.b 5(a6),d0
lsl.l #8,d0
move.b 6(a6),d0
lsl.l #8,d0
move.b 7(a6),d0
moveq #3,d2
divu.w d2,d0
addq.w #8,d0
clr.b 5(a6)
rol.w #8,d0
move.b d0,6(a6)
rol.w #8,d0
move.b d0,7(a6)
and.w d0,d2
lsr.w #2,d0
neg.w d2
jmp .kaka(pc,d2.w*8)
.VAR
move.b (a2)+,5(a6)
move.w (a2)+,6(a6)
move.b (a2)+,5(a6)
move.w (a2)+,6(a6)
move.b (a2)+,5(a6)
move.w (a2)+,6(a6)
move.b (a2)+,5(a6)
move.w (a2)+,6(a6)
.kaka dbf d0,.VAR
clr.w $C(a1)
rts
PREPARE lea WORKSPC,a6
movea.l MT_SAMPLESTARTS(pc),a0
movea.l END_OF_SAMPLE(pc),a1
TOSTACK move.w -(a1),-(a6)
cmpa.l a0,a1
bgt.s TOSTACK
lea MT_SAMPLESTARTS(pc),a2
lea MODULE,a1
movea.l (a2),a0
movea.l a0,a5
moveq #$1E,d7
ROOP move.l a0,(a2)+
tst.w $2A(a1)
beq.s SAMPLOK
tst.w $2E(a1)
bne.s REPNEG
REPEQU move.w $2A(a1),d0
move.w d0,d4
subq.w #1,d0
movea.l a0,a4
FROMSTK move.w (a6)+,(a0)+
dbf d0,FROMSTK
bra.s REP
REPNEG move.w $2E(a1),d0
move.w d0,d4
subq.w #1,d0
movea.l a6,a4
GET1ST move.w (a4)+,(a0)+
dbf d0,GET1ST
adda.w $2A(a1),a6
adda.w $2A(a1),a6
REP movea.l a0,a5
moveq #0,d1
TOOSMAL movea.l a4,a3
move.w $30(a1),d0
subq.w #1,d0
MOVEREP move.w (a3)+,(a0)+
addq.w #2,d1
dbf d0,MOVEREP
cmp.w #$320,d1
blt.s TOOSMAL
move.w #$18F,d2
.LOOP move.w (a5)+,(a0)+
dbf d2,.LOOP
DONE add.w d4,d4
move.w d4,$2A(a1)
move.w d1,$30(a1)
clr.w $2E(a1)
SAMPLOK lea $1E(a1),a1
dbf d7,ROOP
cmpa.l #WORKSPC,a0
bgt.s .FLERP
rts
.FLERP ILLEGAL
END_OF_SAMPLE
DC.L 0
MT_INIT lea MODULE,a0
move.l a0,MT_SONGDATAPOS
movea.l a0,a1
lea $3B8(a1),a1
moveq #$7F,d0
moveq #0,d1
MTLOOP move.l d1,d2
subq.w #1,d0
MTLOOP2 move.b (a1)+,d1
cmp.b d2,d1
bgt.s MTLOOP
dbf d0,MTLOOP2
addq.b #1,d2
lea MT_SAMPLESTARTS(pc),a1
asl.l #8,d2
asl.l #2,d2
addi.l #$43C,d2
add.l a0,d2
movea.l d2,a2
moveq #$1E,d0
MTLOOP3 clr.l (a2)
move.l a2,(a1)+
moveq #0,d1
move.w $2A(a0),d1
asl.l #1,d1
adda.l d1,a2
lea $1E(a0),a0
dbf d0,MTLOOP3
move.l a2,END_OF_SAMPLE
ori.b #2,SHFILTER
move.b #6,MT_SPEED
clr.b MT_COUNTER
clr.b MT_SONGPOS
clr.w MT_PATTERNPOS
MT_END move.w #0,DMACTRL
rts
MT_MUSIC
addq.b #1,MT_COUNTER
move.b MT_COUNTER(pc),d0
cmp.b MT_SPEED(pc),d0
bcs.s MT_NONEWNOTE
clr.b MT_COUNTER
tst.b MT_PATTDELTIME2
beq.s MT_GETNEWNOTE
bsr.s MT_NONEWALLCHANNELS
bra WZ_NCH4
MT_NONEWNOTE
bsr.s MT_NONEWALLCHANNELS
bra MT_NONEWPOSYET
MT_NONEWALLCHANNELS
lea CH1T(pc),a5
lea MT_CHAN1(pc),a6
bsr MT_CHECKEFX
lea CH2T(pc),a5
lea MT_CHAN2(pc),a6
bsr MT_CHECKEFX
lea CH3T(pc),a5
lea MT_CHAN3(pc),a6
bsr MT_CHECKEFX
lea CH4T(pc),a5
lea MT_CHAN4(pc),a6
bra MT_CHECKEFX
MT_GETNEWNOTE
movea.l MT_SONGDATAPOS(pc),a0
lea 12(a0),a3
lea 952(a0),a2
lea 1084(a0),a0
moveq #0,d0
moveq #0,d1
move.b MT_SONGPOS(pc),d0
move.b 0(a2,d0.w),d1
asl.l #8,d1
asl.l #2,d1
add.w MT_PATTERNPOS(pc),d1
clr.w MT_DMACONTEMP
lea CH1T(pc),a5
lea MT_CHAN1(pc),a6
bsr.s MT_PLAYVOICE
lea CH2T(pc),a5
lea MT_CHAN2(pc),a6
bsr.s MT_PLAYVOICE
lea CH3T(pc),a5
lea MT_CHAN3(pc),a6
bsr.s MT_PLAYVOICE
lea CH4T(pc),a5
lea MT_CHAN4(pc),a6
bsr.s MT_PLAYVOICE
bra MT_SETDMA
MT_PLAYVOICE
tst.l (a6)
bne.s MT_PLVSKIP
bsr MT_PERNOP
MT_PLVSKIP
move.l 0(a0,d1.l),(a6)
addq.l #4,d1
moveq #0,d2
move.b 2(a6),d2
andi.b #$F0,d2
lsr.b #4,d2
move.b (a6),d0
andi.b #$F0,d0
or.b d0,d2
tst.b d2
beq MT_SETREGS
moveq #0,d3
lea MT_SAMPLESTARTS(pc),a1
move.w d2,d4
subq.l #1,d2
asl.l #2,d2
mulu.w #$1E,d4
move.l 0(a1,d2.l),4(a6)
move.w 0(a3,d4.l),8(a6)
move.w 0(a3,d4.l),$28(a6)
move.b 2(a3,d4.l),$12(a6)
move.b 3(a3,d4.l),$13(a6)
move.w 4(a3,d4.l),d3
tst.w d3
beq.s MT_NOLOOP
move.l 4(a6),d2
asl.w #1,d3
add.l d3,d2
move.l d2,$A(a6)
move.l d2,$24(a6)
move.w 4(a3,d4.l),d0
add.w 6(a3,d4.l),d0
move.w d0,8(a6)
move.w 6(a3,d4.l),$E(a6)
moveq #0,d0
move.b $13(a6),d0
move.w d0,8(a5)
bra.s MT_SETREGS
MT_NOLOOP
move.l 4(a6),d2
add.l d3,d2
move.l d2,$A(a6)
move.l d2,$24(a6)
move.w 6(a3,d4.l),$E(a6)
moveq #0,d0
move.b $13(a6),d0
move.w d0,8(a5)
MT_SETREGS
move.w (a6),d0
andi.w #$FFF,d0
beq MT_CHECKMOREEFX
move.w 2(a6),d0
andi.w #$FF0,d0
cmp.w #$E50,d0
beq.s MT_DOSETFINETUNE
move.b 2(a6),d0
andi.b #$F,d0
cmp.b #3,d0
beq.s MT_CHKTONEPORTA
cmp.b #5,d0
beq.s MT_CHKTONEPORTA
cmp.b #9,d0
bne.s MT_SETPERIOD
bsr MT_CHECKMOREEFX
bra.s MT_SETPERIOD
MT_DOSETFINETUNE
bsr MT_SETFINETUNE
bra.s MT_SETPERIOD
MT_CHKTONEPORTA
bsr MT_SETTONEPORTA
bra MT_CHECKMOREEFX
MT_SETPERIOD
movem.l d0-d1/a0-a1,-(a7)
move.w (a6),d1
andi.w #$FFF,d1
lea MT_PERIODTABLE(pc),a1
moveq #0,d0
moveq #$24,d7
MT_FTULO
cmp.w 0(a1,d0.w),d1
bcc.s MT_FTUFO
addq.l #2,d0
dbf d7,MT_FTULO
MT_FTUFO
moveq #0,d1
move.b $12(a6),d1
mulu.w #$48,d1
adda.l d1,a1
move.w 0(a1,d0.w),$10(a6)
movem.l (a7)+,d0-d1/a0-a1
move.w 2(a6),d0
andi.w #$FF0,d0
cmp.w #$ED0,d0
beq MT_CHECKMOREEFX
move.w $14(a6),d0
or.w d0,DMACTRL
btst #2,$1E(a6)
bne.s MT_VIBNO
clr.b $1B(a6)
MT_VIBNO
btst #6,$1E(a6)
bne.s MT_TRENO
clr.b $1D(a6)
MT_TRENO
move.l 4(a6),(a5)
move.w 8(a6),4(a5)
move.w $10(a6),d0
move.w d0,6(a5)
move.w $14(a6),d0
or.w d0,MT_DMACONTEMP
bra MT_CHECKMOREEFX
MT_SETDMA
move.w MT_DMACONTEMP(pc),d0
btst #0,d0
beq.s WZ_NCH1
moveq #0,d1
moveq #0,d2
move.w AUD1LEN(pc),d1
move.w MT_CHAN1+14(pc),d2
add.l d2,d1
move.l CH1T(pc),CH1S
add.l CH1T(pc),d1
move.l d1,GRF1LEN
move.l d2,GRF1RPT
move.w #$FFFF,GRF1FLAG
WZ_NCH1 btst #1,d0
beq.s WZ_NCH2
moveq #0,d1
moveq #0,d2
move.w AUD2LEN(pc),d1
move.w MT_CHAN2+14(pc),d2
add.l d2,d1
move.l CH2T(pc),CH2S
add.l CH2T(pc),d1
move.l d1,GRF2LEN
move.l d2,GRF2RPT
move.w #$FFFF,GRF2FLAG
WZ_NCH2 btst #2,d0
beq.s WZ_NCH3
moveq #0,d1
moveq #0,d2
move.w AUD3LEN(pc),d1
move.w MT_CHAN3+14(pc),d2
add.l d2,d1
move.l CH3T(pc),CH3S
add.l CH3T(pc),d1
move.l d1,GRF3LEN
move.l d2,GRF3RPT
move.w #$FFFF,GRF3FLAG
WZ_NCH3 btst #3,d0
beq.s WZ_NCH4
moveq #0,d1
moveq #0,d2
move.w AUD4LEN(pc),d1
move.w MT_CHAN4+14(pc),d2
add.l d2,d1
move.l CH4T(pc),CH4S
add.l CH4T(pc),d1
move.l d1,GRF4LEN
move.l d2,GRF4RPT
move.w #$FFFF,GRF4FLAG
WZ_NCH4 addi.w #$10,MT_PATTERNPOS
move.b MT_PATTDELTIME,d0
beq.s MT_DSKC
move.b d0,MT_PATTDELTIME2
clr.b MT_PATTDELTIME
MT_DSKC tst.b MT_PATTDELTIME2
beq.s MT_DSKA
subq.b #1,MT_PATTDELTIME2
beq.s MT_DSKA
subi.w #$10,MT_PATTERNPOS
MT_DSKA tst.b MT_PBREAKFLAG
beq.s MT_NNPYSK
sf MT_PBREAKFLAG
moveq #0,d0
move.b MT_PBREAKPOS(pc),d0
clr.b MT_PBREAKPOS
lsl.w #4,d0
move.w d0,MT_PATTERNPOS
MT_NNPYSK
cmpi.w #$400,MT_PATTERNPOS
bcs.s MT_NONEWPOSYET
MT_NEXTPOSTITION
moveq #0,d0
move.b MT_PBREAKPOS(pc),d0
lsl.w #4,d0
move.w d0,MT_PATTERNPOS
clr.b MT_PBREAKPOS
clr.b MT_POSJUMPFLAG
addq.b #1,MT_SONGPOS
andi.b #$7F,MT_SONGPOS
move.b MT_SONGPOS(pc),d1
movea.l MT_SONGDATAPOS(pc),a0
cmp.b 950(a0),d1
bcs.s MT_NONEWPOSYET
clr.b MT_SONGPOS
MT_NONEWPOSYET
tst.b MT_POSJUMPFLAG
bne.s MT_NEXTPOSTITION
rts
MT_CHECKEFX
bsr MT_UPDATEFUNK
move.w 2(a6),d0
andi.w #$FFF,d0
beq.s MT_PERNOP
move.b 2(a6),d0
andi.b #$F,d0
beq.s MT_ARPEGGIO
cmp.b #1,d0
beq MT_PORTAUP
cmp.b #2,d0
beq MT_PORTADOWN
cmp.b #3,d0
beq MT_TONEPORTOMENTO
cmp.b #4,d0
beq MT_VIBRATO
cmp.b #5,d0
beq MT_TONEPLUSVOLSLIDE
cmp.b #6,d0
beq MT_VIBRATOPLUSVOLSLIDE
cmp.b #$E,d0
beq MT_E_COMMANDS
SETBACK move.w $10(a6),6(a5)
cmp.b #7,d0
beq MT_TREMOLO
cmp.b #$A,d0
beq MT_VOLUMESLIDE
MT_RETUR
rts
MT_PERNOP
MT_NOEFX1
move.w $10(a6),6(a5)
MT_RETURN2
rts
MT_ARPEGGIO
moveq #0,d0
move.b MT_COUNTER(pc),d0
divs.w #3,d0
swap d0
cmp.w #0,d0
beq.s MT_ARPEGGIO2
cmp.w #2,d0
beq.s MT_ARPEGGIO1
moveq #0,d0
move.b 3(a6),d0
lsr.b #4,d0
bra.s MT_ARPEGGIO3
MT_ARPEGGIO1
moveq #0,d0
move.b 3(a6),d0
andi.b #$F,d0
bra.s MT_ARPEGGIO3
MT_ARPEGGIO2
move.w $10(a6),d2
bra.s MT_ARPEGGIO4
MT_ARPEGGIO3
add D0,d0
moveq #0,d1
move.b $12(a6),d1
mulu.w #$48,d1
lea MT_PERIODTABLE(pc),a0
adda.l d1,a0
moveq #0,d1
move.w $10(a6),d1
moveq #$24,d7
.MT_ARPLOOP
move.w 0(a0,d0.w),d2
cmp.w (a0),d1
bcc.s MT_ARPEGGIO4
addq.l #2,a0
dbf d7,.MT_ARPLOOP
rts
MT_ARPEGGIO4
move.w d2,6(a5)
rts
MT_FINEPORTAUP
tst.b MT_COUNTER
bne.s MT_RTS2
move.b #$F,MT_LOWMASK
MT_PORTAUP
moveq #0,d0
move.b 3(a6),d0
and.b MT_LOWMASK(pc),d0
move.b #$FF,MT_LOWMASK
sub.w d0,$10(a6)
move.w $10(a6),d0
andi.w #$FFF,d0
cmp.w #113,d0
bpl.s MT_PORTAUSKIP
andi.w #$F000,$10(a6)
ori.w #$71,$10(a6)
MT_PORTAUSKIP
move.w $10(a6),d0
andi.w #$FFF,d0
move.w d0,6(a5)
MT_RTS2 rts
MT_FINEPORTADOWN
tst.b MT_COUNTER
bne MT_RTS2
move.b #$F,MT_LOWMASK
MT_PORTADOWN
clr.w d0
move.b 3(a6),d0
and.b MT_LOWMASK(pc),d0
move.b #$FF,MT_LOWMASK
add.w d0,$10(a6)
move.w $10(a6),d0
andi.w #$FFF,d0
cmp.w #856,d0
bmi.s MT_PORTASKIP
andi.w #$F000,$10(a6)
ori.w #856,$10(a6)
MT_PORTASKIP
move.w $10(a6),d0
andi.w #$FFF,d0
move.w d0,6(a5)
rts
MT_SETTONEPORTA
move.l a0,-(a7)
move.w (a6),d2
andi.w #$FFF,d2
moveq #0,d0
move.b $12(a6),d0
mulu.w #$48,d0
lea MT_PERIODTABLE(pc),a0
adda.l d0,a0
moveq #0,d0
MT_STPLO
cmp.w 0(a0,d0.w),d2
bcc.s MT_STPFO
addq.w #2,d0
cmp.w #$48,d0
bcs.s MT_STPLO
moveq #$46,d0
MT_STPFO
move.b $12(a6),d2
andi.b #8,d2
beq.s MT_STPGOSS
tst.w d0
beq.s MT_STPGOSS
subq.w #2,d0
MT_STPGOSS
move.w (a0,d0.w),d2
movea.l (a7)+,a0
move.w d2,$18(a6)
move.w $10(a6),d0
clr.b $16(a6)
cmp.w d0,d2
beq.s MT_CLEARTONEPORTA
bge.s .MT_ET2
move.b #1,$16(a6)
.MT_ET2 rts
MT_CLEARTONEPORTA
clr.w $18(a6)
MT_ET2 rts
MT_TONEPORTOMENTO
move.b 3(a6),d0
beq.s MT_TONEPORTNOCHANGE
move.b d0,$17(a6)
clr.b 3(a6)
MT_TONEPORTNOCHANGE
tst.w $18(a6)
beq.S MT_ET2
moveq #0,d0
move.b $17(a6),d0
tst.b $16(a6)
bne.s MT_TONEPORTAUP
MT_TONEPORTADOWN
add.w d0,$10(a6)
move.w $18(a6),d0
cmp.w $10(a6),d0
bgt.s MT_TONEPORTASETPER
move.w $18(a6),$10(a6)
clr.w $18(a6)
bra.s MT_TONEPORTASETPER
MT_TONEPORTAUP
sub.w d0,$10(a6)
move.w $18(a6),d0
cmp.w $10(a6),d0
blt.s MT_TONEPORTASETPER
move.w $18(a6),$10(a6)
clr.w $18(a6)
MT_TONEPORTASETPER
move.w $10(a6),d2
move.b $1F(a6),d0
andi.b #$F,d0
beq.s MT_GLISSKIP
moveq #0,d0
move.b $12(a6),d0
mulu.w #$48,d0
lea MT_PERIODTABLE(pc),a0
adda.w d0,a0
moveq #0,d0
MT_GLISSLOOP
cmp.w 0(a0,d0.w),d2
bhs.s MT_GLISSFOUND
addq.w #2,d0
cmp.w #36*2,d0
bcs.s MT_GLISSLOOP
moveq #35*2,d0
MT_GLISSFOUND
move.w (a0,d0.w),d2
MT_GLISSKIP
move.w d2,6(a5)
rts
MT_VIBRATO
move.b 3(a6),d0
beq.s MT_VIBRATO2
move.b $1A(a6),d2
andi.b #$F,d0
beq.s MT_VIBSKIP
andi.b #$F0,d2
or.b d0,d2
MT_VIBSKIP
move.b 3(a6),d0
andi.b #$F0,d0
beq.s MT_VIBSKIP2
andi.b #$F,d2
or.b d0,d2
MT_VIBSKIP2
move.b d2,$1A(a6)
MT_VIBRATO2
move.b $1B(a6),d0
lea MT_VIBRATOTABLE(pc),a4
lsr.w #2,d0
andi.w #$1F,d0
moveq #0,d2
move.b $1E(a6),d2
andi.b #3,d2
beq.s MT_VIB_SINE
lsl.b #3,d0
cmp.b #1,d2
beq.s MT_VIB_RAMPDOWN
move.b #$FF,d2
bra.s MT_VIB_SET
MT_VIB_RAMPDOWN
tst.b $1B(a6)
bpl.s MT_VIB_RAMPDOWN2
move.b #$FF,d2
sub.b d0,d2
bra.s MT_VIB_SET
MT_VIB_RAMPDOWN2
move.b d0,d2
bra.s MT_VIB_SET
MT_VIB_SINE
move.b 0(a4,d0.w),d2
MT_VIB_SET
move.b $1A(a6),d0
andi.w #$F,d0
mulu.w d0,d2
lsr.w #7,d2
move.w $10(a6),d0
tst.b $1B(a6)
bmi.s MT_VIBRATONEG
add.w d2,d0
bra.s MT_VIBRATO3
MT_VIBRATONEG
sub.w d2,d0
MT_VIBRATO3
move.w d0,6(a5)
move.b $1A(a6),d0
lsr.w #2,d0
andi.w #$3C,d0
add.b d0,$1B(a6)
rts
MT_TONEPLUSVOLSLIDE
bsr MT_TONEPORTNOCHANGE
bra MT_VOLUMESLIDE
MT_VIBRATOPLUSVOLSLIDE
bsr.s MT_VIBRATO2
bra MT_VOLUMESLIDE
MT_TREMOLO
move.b 3(a6),d0
beq.s MT_TREMOLO2
move.b $1C(a6),d2
andi.b #$F,d0
beq.s MT_TRESKIP2
andi.b #$F0,d2
or.b d0,d2
MT_TRESKIP2
move.b 3(a6),d0
andi.b #$F0,d0
beq.s MT_TRESKIP3
andi.b #$F,d2
or.b d0,d2
MT_TRESKIP3
move.b d2,$1C(a6)
MT_TREMOLO2
move.b $1D(a6),d0
lea MT_VIBRATOTABLE(pc),a4
lsr.w #2,d0
andi.w #$1F,d0
moveq #0,d2
move.b $1E(a6),d2
lsr.b #4,d2
andi.b #3,d2
beq.s MT_TRE_SINE
lsl.b #3,d0
cmp.b #1,d2
beq.s MT_TRE_RAMPDOWN
move.b #$FF,d2
bra.s MT_TRE_SET
MT_TRE_RAMPDOWN
tst.b $1B(a6)
bpl.s MT_TRE_RAMPDOWN2
move.b #$FF,d2
sub.b d0,d2
bra.s MT_TRE_SET
MT_TRE_RAMPDOWN2
move.b d0,d2
bra.s MT_TRE_SET
MT_TRE_SINE
move.b 0(a4,d0.w),d2
MT_TRE_SET
move.b $1C(a6),d0
andi.w #$F,d0
mulu.w d0,d2
lsr.w #6,d2
moveq #0,d0
move.b $13(a6),d0
tst.b $1D(a6)
bpl.s MT_TREMOLOPLUS
neg d2
MT_TREMOLOPLUS
add.w d2,d0
MT_TREMOLO3
bpl.s MT_TREMOLOSKIP
clr.w d0
MT_TREMOLOSKIP
cmp.w #$40,d0
bls.s MT_TREMOLOOK
move.w #$40,d0
MT_TREMOLOOK
move.w d0,8(a5)
move.b $1C(a6),d0
lsr.w #2,d0
andi.w #$3C,d0
add.b d0,$1D(a6)
rts
MT_SAMPLEOFFSET
moveq #0,d0
move.b 3(a6),d0
beq.s MT_SONONEW
move.b d0,$20(a6)
MT_SONONEW
move.b $20(a6),d0
lsl.w #7,d0
cmp.w 8(a6),d0
bge.s MT_SOFSKIP
sub.w d0,8(a6)
lsl.w #1,d0
add.l d0,4(a6)
rts
MT_SOFSKIP
move.w #1,8(a6)
rts
MT_VOLUMESLIDE
moveq #0,d0
move.b 3(a6),d0
lsr.b #4,d0
tst.b d0
beq.s MT_VOLSLIDEDOWN
MT_VOLSLIDEUP
add.b d0,$13(a6)
cmpi.b #$40,$13(a6)
bmi.s MT_VSUSKIP
move.b #$40,$13(a6)
MT_VSUSKIP
move.b $13(a6),d0
move.w d0,8(a5)
rts
MT_VOLSLIDEDOWN
moveq #0,d0
move.b 3(a6),d0
andi.b #$F,d0
MT_VOLSLIDEDOWN2
sub.b d0,$13(a6)
bpl.s MT_VSDSKIP
clr.b $13(a6)
MT_VSDSKIP
move.b $13(a6),d0
move.w d0,8(a5)
rts
MT_POSITIONJUMP
move.b 3(a6),d0
subq.b #1,d0
move.b d0,MT_SONGPOS
MT_PJ2 clr.b MT_PBREAKPOS
st MT_POSJUMPFLAG
rts
MT_VOLUMECHANGE
moveq #0,d0
move.b 3(a6),d0
cmp.b #$40,d0
bls.s MT_VOLUMEOK
moveq #$40,d0
MT_VOLUMEOK
move.b d0,$13(a6)
move.w d0,8(a5)
rts
MT_PATTERNBREAK
moveq #0,d0
move.b 3(a6),d0
move.l d0,d2
lsr.b #4,d0
mulu.w #$A,d0
andi.b #$F,d2
add.b d2,d0
cmp.b #$3F,d0
bhi.s MT_PJ2
move.b d0,MT_PBREAKPOS
st MT_POSJUMPFLAG
rts
MT_SETSPEED
move.b 3(a6),d0
beq .MT_RTS
clr.b MT_COUNTER
move.b d0,MT_SPEED
.MT_RTS rts
MT_CHECKMOREEFX
bsr MT_UPDATEFUNK
move.b 2(a6),d0
andi.b #$F,d0
cmp.b #9,d0
beq MT_SAMPLEOFFSET
cmp.b #$B,d0
beq MT_POSITIONJUMP
cmp.b #$D,d0
beq.s MT_PATTERNBREAK
cmp.b #$E,d0
beq.s MT_E_COMMANDS
cmp.b #$F,d0
beq.s MT_SETSPEED
cmp.b #$C,d0
beq MT_VOLUMECHANGE
bra MT_PERNOP
MT_E_COMMANDS
move.b 3(a6),d0
andi.b #$F0,d0
lsr.b #4,d0
beq.s MT_FILTERONOFF
cmp.b #1,d0
beq MT_FINEPORTAUP
cmp.b #2,d0
beq MT_FINEPORTADOWN
cmp.b #3,d0
beq.s MT_SETGLISSCONTROL
cmp.b #4,d0
beq MT_SETVIBRATOCONTROL
cmp.b #5,d0
beq MT_SETFINETUNE
cmp.b #6,d0
beq MT_JUMPLOOP
cmp.b #7,d0
beq MT_SETTREMOLOCONTROL
cmp.b #9,d0
beq MT_RETRIGNOTE
cmp.b #$A,d0
beq MT_VOLUMEFINEUP
cmp.b #$B,d0
beq MT_VOLUMEFINEDOWN
cmp.b #$C,d0
beq MT_NOTECUT
cmp.b #$D,d0
beq MT_NOTEDELAY
cmp.b #$E,d0
beq MT_PATTERNDELAY
cmp.b #$F,d0
beq MT_FUNKIT
rts
MT_FILTERONOFF
move.b 3(a6),d0
andi.b #1,d0
asl.b #1,d0
andi.b #$FD,SHFILTER
or.b d0,SHFILTER
MT_E_SK rts
MT_SETGLISSCONTROL
move.b 3(a6),d0
andi.b #$F,d0
andi.b #$F0,$1F(a6)
or.b d0,$1F(a6)
rts
MT_SETVIBRATOCONTROL
move.b 3(a6),d0
andi.b #$F,d0
andi.b #$F0,$1E(a6)
or.b d0,$1E(a6)
rts
MT_SETFINETUNE
move.b 3(a6),d0
andi.b #$F,d0
move.b d0,$12(a6)
rts
MT_JUMPLOOP
tst.b MT_COUNTER
bne MT_RETURN2
move.b 3(a6),d0
andi.b #$F,d0
beq.s MT_SETLOOP
tst.b $22(a6)
beq.s MT_JUMPCUT
subq.b #1,$22(a6)
beq MT_ERW2
MT_JMPLOOP
move.b $21(a6),MT_PBREAKPOS
st MT_PBREAKPOS
MT_ERW2 rts
MT_JUMPCUT
move.b d0,$22(a6)
bra.s MT_JMPLOOP
MT_SETLOOP
move.w MT_PATTERNPOS(pc),d0
lsr.w #4,d0
move.b d0,$21(a6)
rts
MT_SETTREMOLOCONTROL
move.b 3(a6),d0
andi.b #$F,d0
lsl.b #4,d0
andi.b #$F,$1E(a6)
or.b d0,$1E(a6)
rts
MT_RETRIGNOTE
move.l d1,-(a7)
moveq #0,d0
move.b 3(a6),d0
andi.b #$F,d0
beq.s MT_RTNEND
moveq #0,d1
move.b MT_COUNTER(pc),d1
bne.s MT_RTNSKP
move.w (a6),d1
andi.w #$FFF,d1
bne.s MT_RTNEND
moveq #0,d1
move.b MT_COUNTER(pc),d1
MT_RTNSKP
divu.w d0,d1
swap d1
tst.w d1
bne.s MT_RTNEND
MT_DORETRIG
move.w $14(a6),DMACTRL
move.l 4(a6),(a5)
move.w 8(a6),4(a5)
move.w $14(a6),d0
bset #$F,d0
move.w d0,DMACTRL
move.l $A(a6),(a5)
move.l $E(a6),4(a5)
MT_RTNEND move.l (a7)+,d1
rts
MT_VOLUMEFINEUP
tst.b MT_COUNTER
bne.s MT_WER2
moveq #0,d0
move.b 3(a6),d0
andi.b #$F,d0
bra MT_VOLSLIDEUP
MT_VOLUMEFINEDOWN
tst.b MT_COUNTER
bne.s MT_WER2
moveq #0,d0
move.b 3(a6),d0
andi.b #$F,d0
bra MT_VOLSLIDEDOWN2
MT_NOTECUT
moveq #0,d0
move.b 3(a6),d0
andi.b #$F,d0
cmp.b MT_COUNTER(pc),d0
bne MT_REQ2
clr.b $13(a6)
move.w #0,8(a5)
MT_WER2 rts
MT_NOTEDELAY
moveq #0,d0
move.b 3(a6),d0
andi.b #$F,d0
cmp.b MT_COUNTER,d0
bne MT_REQ2
move.w (a6),d0
beq MT_REQ2
move.l d1,-(a7)
bra MT_DORETRIG
MT_PATTERNDELAY
tst.b MT_COUNTER
bne MT_RETURN2
moveq #0,d0
move.b 3(a6),d0
andi.b #$F,d0
tst.b MT_PATTDELTIME2
bne MT_RETURN2
addq.b #1,d0
move.b d0,MT_PATTDELTIME
MT_REQ2 rts
MT_FUNKIT
tst.b MT_COUNTER
bne.s MT_REQ2
move.b 3(a6),d0
andi.b #$F,d0
lsl.b #4,d0
andi.b #$F,$1F(a6)
or.b d0,$1F(a6)
tst.b d0
beq.s MT_REQ2
MT_UPDATEFUNK
movem.l d1/a0,-(a7)
moveq #0,d0
move.b $1F(a6),d0
lsr.b #4,d0
beq.s MT_FUNKEND
lea MT_FUNKTABLE(pc),a0
move.b 0(a0,d0.w),d0
add.b d0,$23(a6)
btst #7,$23(a6)
beq.s MT_FUNKEND
clr.b $23(a6)
move.l $A(a6),d0
moveq #0,d1
move.w $E(a6),d1
add.l d1,d0
add.l d1,d0
movea.l $24(a6),a0
addq.l #1,a0
cmpa.l d0,a0
blo.s MT_FUNKOK
movea.l $A(a6),a0
MT_FUNKOK
move.l a0,$24(a6)
moveq #-1,d0
sub.b (a0),d0
move.b d0,(a0)
MT_FUNKEND
movem.l (a7)+,d1/a0
rts
MT_FUNKTABLE
DC.B 0,5,6,7,8,$A,$B,$D
DC.B $10,$13,$16,$1A,$20,$2B,$40,$80
MT_VIBRATOTABLE
DC.B 0,$18,$31,$4A,$61,$78,$8D,$A1
DC.B $B4,$C5,$D4,$E0,$EB,$F4,$FA,$FD
DC.B $FF,$FD,$FA,$F4,$EB,$E0,$D4,$C5
DC.B $B4,$A1,$8D,$78,$61,$4A,$31,$18
MT_PERIODTABLE
DC.B 3,$58,3,$28,2,$FA,2,$D0
DC.B 2,$A6,2,$80,2,$5C,2,$3A
DC.B 2,$1A,1,$FC,1,$E0,1,$C5
DC.B 1,$AC,1,$94,1,$7D,1,$68
DC.B 1,$53,1,$40,1,$2E,1,$1D
DC.B 1,$D,0,$FE,0,$F0,0,$E2
DC.B 0,$D6,0,$CA,0,$BE,0,$B4
DC.B 0,$AA,0,$A0,0,$97,0,$8F
DC.B 0,$87,0,$7F,0,$78,0,$71
DC.B 3,$52,3,$22,2,$F5,2,$CB
DC.B 2,$A2,2,$7D,2,$59,2,$37
DC.B 2,$17,1,$F9,1,$DD,1,$C2
DC.B 1,$A9,1,$91,1,$7B,1,$65
DC.B 1,$51,1,$3E,1,$2C,1,$1C
DC.B 1,$C,0,$FD,0,$EF,0,$E1
DC.B 0,$D5,0,$C9,0,$BD,0,$B3
DC.B 0,$A9,0,$9F,0,$96,0,$8E
DC.B 0,$86,0,$7E,0,$77,0,$71
DC.B 3,$4C,3,$1C,2,$F0,2,$C5
DC.B 2,$9E,2,$78,2,$55,2,$33
DC.B 2,$14,1,$F6,1,$DA,1,$BF
DC.B 1,$A6,1,$8E,1,$78,1,$63
DC.B 1,$4F,1,$3C,1,$2A,1,$1A
DC.B 1,$A,0,$FB,0,$ED,0,$E0
DC.B 0,$D3,0,$C7,0,$BC,0,$B1
DC.B 0,$A7,0,$9E,0,$95,0,$8D
DC.B 0,$85,0,$7D,0,$76,0,$70
DC.B 3,$46,3,$17,2,$EA,2,$C0
DC.B 2,$99,2,$74,2,$50,2,$2F
DC.B 2,$10,1,$F2,1,$D6,1,$BC
DC.B 1,$A3,1,$8B,1,$75,1,$60
DC.B 1,$4C,1,$3A,1,$28,1,$18
DC.B 1,8,0,$F9,0,$EB,0,$DE
DC.B 0,$D1,0,$C6,0,$BB,0,$B0
DC.B 0,$A6,0,$9D,0,$94,0,$8C
DC.B 0,$84,0,$7D,0,$76,0,$6F
DC.B 3,$40,3,$11,2,$E5,2,$BB
DC.B 2,$94,2,$6F,2,$4C,2,$2B
DC.B 2,$C,1,$EF,1,$D3,1,$B9
DC.B 1,$A0,1,$88,1,$72,1,$5E
DC.B 1,$4A,1,$38,1,$26,1,$16
DC.B 1,6,0,$F7,0,$E9,0,$DC
DC.B 0,$D0,0,$C4,0,$B9,0,$AF
DC.B 0,$A5,0,$9C,0,$93,0,$8B
DC.B 0,$83,0,$7C,0,$75,0,$6E
DC.B 3,$3A,3,$B,2,$E0,2,$B6
DC.B 2,$8F,2,$6B,2,$48,2,$27
DC.B 2,8,1,$EB,1,$CF,1,$B5
DC.B 1,$9D,1,$86,1,$70,1,$5B
DC.B 1,$48,1,$35,1,$24,1,$14
DC.B 1,4,0,$F5,0,$E8,0,$DB
DC.B 0,$CE,0,$C3,0,$B8,0,$AE
DC.B 0,$A4,0,$9B,0,$92,0,$8A
DC.B 0,$82,0,$7B,0,$74,0,$6D
DC.B 3,$34,3,6,2,$DA,2,$B1
DC.B 2,$8B,2,$66,2,$44,2,$23
DC.B 2,4,1,$E7,1,$CC,1,$B2
DC.B 1,$9A,1,$83,1,$6D,1,$59
DC.B 1,$45,1,$33,1,$22,1,$12
DC.B 1,2,0,$F4,0,$E6,0,$D9
DC.B 0,$CD,0,$C1,0,$B7,0,$AC
DC.B 0,$A3,0,$9A,0,$91,0,$89
DC.B 0,$81,0,$7A,0,$73,0,$6D
DC.B 3,$2E,3,0,2,$D5,2,$AC
DC.B 2,$86,2,$62,2,$3F,2,$1F
DC.B 2,1,1,$E4,1,$C9,1,$AF
DC.B 1,$97,1,$80,1,$6B,1,$56
DC.B 1,$43,1,$31,1,$20,1,$10
DC.B 1,0,0,$F2,0,$E4,0,$D8
DC.B 0,$CC,0,$C0,0,$B5,0,$AB
DC.B 0,$A1,0,$98,0,$90,0,$88
DC.B 0,$80,0,$79,0,$72,0,$6C
DC.B 3,$8B,3,$58,3,$28,2,$FA
DC.B 2,$D0,2,$A6,2,$80,2,$5C
DC.B 2,$3A,2,$1A,1,$FC,1,$E0
DC.B 1,$C5,1,$AC,1,$94,1,$7D
DC.B 1,$68,1,$53,1,$40,1,$2E
DC.B 1,$1D,1,$D,0,$FE,0,$F0
DC.B 0,$E2,0,$D6,0,$CA,0,$BE
DC.B 0,$B4,0,$AA,0,$A0,0,$97
DC.B 0,$8F,0,$87,0,$7F,0,$78
DC.B 3,$84,3,$52,3,$22,2,$F5
DC.B 2,$CB,2,$A3,2,$7C,2,$59
DC.B 2,$37,2,$17,1,$F9,1,$DD
DC.B 1,$C2,1,$A9,1,$91,1,$7B
DC.B 1,$65,1,$51,1,$3E,1,$2C
DC.B 1,$1C,1,$C,0,$FD,0,$EE
DC.B 0,$E1,0,$D4,0,$C8,0,$BD
DC.B 0,$B3,0,$A9,0,$9F,0,$96
DC.B 0,$8E,0,$86,0,$7E,0,$77
DC.B 3,$7E,3,$4C,3,$1C,2,$F0
DC.B 2,$C5,2,$9E,2,$78,2,$55
DC.B 2,$33,2,$14,1,$F6,1,$DA
DC.B 1,$BF,1,$A6,1,$8E,1,$78
DC.B 1,$63,1,$4F,1,$3C,1,$2A
DC.B 1,$1A,1,$A,0,$FB,0,$ED
DC.B 0,$DF,0,$D3,0,$C7,0,$BC
DC.B 0,$B1,0,$A7,0,$9E,0,$95
DC.B 0,$8D,0,$85,0,$7D,0,$76
DC.B 3,$77,3,$46,3,$17,2,$EA
DC.B 2,$C0,2,$99,2,$74,2,$50
DC.B 2,$2F,2,$10,1,$F2,1,$D6
DC.B 1,$BC,1,$A3,1,$8B,1,$75
DC.B 1,$60,1,$4C,1,$3A,1,$28
DC.B 1,$18,1,8,0,$F9,0,$EB
DC.B 0,$DE,0,$D1,0,$C6,0,$BB
DC.B 0,$B0,0,$A6,0,$9D,0,$94
DC.B 0,$8C,0,$84,0,$7D,0,$76
DC.B 3,$71,3,$40,3,$11,2,$E5
DC.B 2,$BB,2,$94,2,$6F,2,$4C
DC.B 2,$2B,2,$C,1,$EE,1,$D3
DC.B 1,$B9,1,$A0,1,$88,1,$72
DC.B 1,$5E,1,$4A,1,$38,1,$26
DC.B 1,$16,1,6,0,$F7,0,$E9
DC.B 0,$DC,0,$D0,0,$C4,0,$B9
DC.B 0,$AF,0,$A5,0,$9C,0,$93
DC.B 0,$8B,0,$83,0,$7B,0,$75
DC.B 3,$6B,3,$3A,3,$B,2,$E0
DC.B 2,$B6,2,$8F,2,$6B,2,$48
DC.B 2,$27,2,8,1,$EB,1,$CF
DC.B 1,$B5,1,$9D,1,$86,1,$70
DC.B 1,$5B,1,$48,1,$35,1,$24
DC.B 1,$14,1,4,0,$F5,0,$E8
DC.B 0,$DB,0,$CE,0,$C3,0,$B8
DC.B 0,$AE,0,$A4,0,$9B,0,$92
DC.B 0,$8A,0,$82,0,$7B,0,$74
DC.B 3,$64,3,$34,3,6,2,$DA
DC.B 2,$B1,2,$8B,2,$66,2,$44
DC.B 2,$23,2,4,1,$E7,1,$CC
DC.B 1,$B2,1,$9A,1,$83,1,$6D
DC.B 1,$59,1,$45,1,$33,1,$22
DC.B 1,$12,1,2,0,$F4,0,$E6
DC.B 0,$D9,0,$CD,0,$C1,0,$B7
DC.B 0,$AC,0,$A3,0,$9A,0,$91
DC.B 0,$89,0,$81,0,$7A,0,$73
DC.B 3,$5E,3,$2E,3,0,2,$D5
DC.B 2,$AC,2,$86,2,$62,2,$3F
DC.B 2,$1F,2,1,1,$E4,1,$C9
DC.B 1,$AF,1,$97,1,$80,1,$6B
DC.B 1,$56,1,$43,1,$31,1,$20
DC.B 1,$10,1,0,0,$F2,0,$E4
DC.B 0,$D8,0,$CB,0,$C0,0,$B5
DC.B 0,$AB,0,$A1,0,$98,0,$90
DC.B 0,$88,0,$80,0,$79,0,$72
MT_CHAN1 dc.l 0,0,0,0,0,$00010000,0,0,0,0,0
MT_CHAN2 dc.l 0,0,0,0,0,$00020000,0,0,0,0,0
MT_CHAN3 dc.l 0,0,0,0,0,$00040000,0,0,0,0,0
MT_CHAN4 dc.l 0,0,0,0,0,$00080000,0,0,0,0,0
MT_SAMPLESTARTS
DC.L 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
DC.L 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
MT_SONGDATAPOS DC.L 0
MT_SPEED DC.B 6
MT_COUNTER DC.B 0
MT_SONGPOS DC.B 0
MT_PBREAKPOS DC.B 0
MT_POSJUMPFLAG DC.B 0
MT_PBREAKFLAG DC.B 0
MT_LOWMASK DC.B 0
MT_PATTDELTIME DC.B 0
MT_PATTDELTIME2 DC.B 0,0
MT_PATTERNPOS DC.W 0
MT_DMACONTEMP DC.W 0
CH1S DC.B 0,$21,$68,$2C
GRF1LEN DC.B 0,0,0,0
GRF1RPT DC.B 0,0,0,0
GRF1FLAG DC.B 0,0
CH1T DC.B 0,$21,$68,$2C
AUD1LEN DC.B 0,8
AUD1PER DC.B $1F,$40
AUD1VOL DC.B 0,0,0,0,0,0,0,0
CH2S DC.B 0,$21,$68,$2C
GRF2LEN DC.B 0,0,0,8
GRF2RPT DC.B 0,0,0,0
GRF2FLAG DC.B 0,0
CH2T DC.B 0,$21,$68,$2C
AUD2LEN DC.B 0,0
AUD2PER DC.B $1F,$40
AUD2VOL DC.B 0,0,0,0,0,0,0,0
CH3S DC.B 0,$21,$68,$2C
GRF3LEN DC.B 0,0,0,8
GRF3RPT DC.B 0,0,0,0
GRF3FLAG DC.B 0,0
CH3T DC.B 0,$21,$68,$2C
AUD3LEN DC.B 0,0
AUD3PER DC.B $1F,$40
AUD3VOL DC.B 0,0,0,0,0,0,0,0
CH4S DC.B 0,$21,$68,$2C
GRF4LEN DC.B 0,0,0,8
GRF4RPT DC.B 0,0,0,0
GRF4FLAG DC.B 0,0
CH4T DC.B 0,$21,$68,$2C
AUD4LEN DC.B 0,8
AUD4PER DC.B $1F,$40
AUD4VOL DC.B 0,0,0,0,0,0,0,0
SHFILTER DC.w 0
DMACTRL DC.W 0
DSPPROG DC.B $A,$F0,$80,0,0,$40,0,0
DC.B 0,0,0,0,0,0,0,0
DC.B 0,0,0,0,0,0,0,0
DC.B 0,0,0,0,0,0,0,0
DC.B 0,0,0,0,0,0,0,0
DC.B 0,0,0,0,0,0,0,0
DC.B $B,$F0,$80,0,1,$B3,0,0
DC.B 0,0,0,0,0,0,0,0
DC.B 0,0,0,0,0,0,0,0
DC.B 0,0,0,0,0,0,0,0
DC.B 0,0,0,0,0,0,0,0
DC.B 0,0,0,0,0,0,0,0
DC.B 0,0,0,0,0,0,0,0
DC.B 0,0,0,0,0,0,0,0
DC.B 0,0,0,0,0,0,0,0
DC.B 0,0,0,0,0,0,0,0
DC.B 0,0,0,0,0,0,0,0
DC.B 0,0,0,0,0,0,0,0
DC.B 0,0,0,0,0,0,0,0
DC.B 0,0,0,0,0,0,0,0
DC.B 0,0,0,0,0,0,0,0
DC.B 0,0,0,0,0,0,0,0
DC.B 0,0,0,0,0,0,0,0
DC.B 0,0,0,0,0,0,0,0
DC.B 8,$F4,$BE,0,0,0,8,$F4
DC.B $A0,0,0,1,$66,$F4,0,0
DC.B $10,0,5,$F4,$26,0,$13,$FF
DC.B $67,$F4,0,0,$10,$64,4,$67
DC.B $A6,$20,0,$1B,$70,$F4,0,0
DC.B $14,0,6,$D8,0,0,0,$50
DC.B $5F,$5E,0,$20,0,$13,$56,$70
DC.B 0,0,0,6,$56,$70,0,0
DC.B 0,5,$56,$70,0,0,0,$D
DC.B $56,$70,0,0,0,$C,$56,$70
DC.B 0,0,0,$14,$56,$70,0,0
DC.B 0,$13,$56,$70,0,0,0,$1B
DC.B $56,$70,0,0,0,$1A,$56,$F4
DC.B 0,0,0,0,$57,$F4,0,0
DC.B 0,0,$56,$70,0,0,0,1
DC.B $57,$70,0,0,0,2,$57,$70
DC.B 0,0,0,8,$56,$70,0,0
DC.B 0,9,$57,$70,0,0,0,$F
DC.B $56,$70,0,0,0,$10,$56,$70
DC.B 0,0,0,$16,$57,$70,0,0
DC.B 0,$17,8,$F4,$BF,0,$30,0
DC.B 8,$F4,$AC,0,$41,0,8,$F4
DC.B $AD,0,$58,0,8,$F4,$A1,0
DC.B 1,$F0,8,$F4,$A3,0,0,8
DC.B 0,$FC,$B8,$A,$A9,$80,0,0
DC.B $81,8,$45,$2B,$22,$ED,0,$A
DC.B $CD,$20,0,0,$84,$22,$C4,0
DC.B $20,0,$4C,$A,$F0,$A3,0,0
DC.B $8E,$44,$F4,0,0,$14,0,$20
DC.B 0,$48,$20,0,$2A,$57,$70,0
DC.B 0,0,$1C,$22,$D5,0,$60,$F4
DC.B 0,0,3,0,$61,$F4,0,0
DC.B 0,3,$B,$F0,$80,0,1,$B5
DC.B $60,$F4,0,0,4,$7C,$61,$F4
DC.B 0,0,0,$A,$B,$F0,$80,0
DC.B 1,$B5,$60,$F4,0,0,5,$F8
DC.B $61,$F4,0,0,0,$11,$B,$F0
DC.B $80,0,1,$B5,$60,$F4,0,0
DC.B 7,$74,$61,$F4,0,0,0,$18
DC.B $B,$F0,$80,0,1,$B5,$46,$F4
DC.B 0,$78,0,0,$47,$F4,0,0
DC.B 0,0,$44,$F0,0,0,0,3
DC.B $20,0,$D0,$56,$70,0,0,0
DC.B 1,$20,0,$C0,$56,$70,0,0
DC.B 0,2,$44,$F0,0,0,0,$A
DC.B $20,0,$D0,$56,$70,0,0,0
DC.B 9,$20,0,$C0,$56,$70,0,0
DC.B 0,8,$44,$F0,0,0,0,$11
DC.B $20,0,$D0,$56,$70,0,0,0
DC.B $10,$20,0,$C0,$56,$70,0,0
DC.B 0,$F,$44,$F0,0,0,0,$18
DC.B $20,0,$D0,$56,$70,0,0,0
DC.B $16,$20,0,$C0,$56,$70,0,0
DC.B 0,$17,$60,$F4,0,0,3,0
DC.B $B,$F0,$80,0,1,$CE,$60,$F4
DC.B 0,0,8,$F0,$57,$F0,0,0
DC.B 0,6,$44,$F0,0,0,0,4
DC.B $70,$F0,0,0,0,$1C,6,$D8
DC.B 0,0,0,$FA,$20,0,$48,$A
DC.B $F0,$A5,0,0,$E1,$A,$CD,$57
DC.B $45,$D8,0,$45,$D8,0,$47,$D0
DC.B 0,$46,$F0,0,0,0,1,$20
DC.B 0,$E0,$21,$C5,0,$20,0,$B0
DC.B $21,$E6,$64,$21,$C7,0,$20,0
DC.B $B0,$20,0,$60,$21,$C5,0,$4D
DC.B $5E,0,$45,$D8,0,$47,$D0,0
DC.B $46,$F0,0,0,0,2,$20,0
DC.B $E0,$21,$C5,0,$20,0,$B0,$21
DC.B $E6,$64,$21,$C7,0,$20,0,$B0
DC.B $20,0,$60,$21,$C5,0,$4D,$5E
DC.B 0,$57,$70,0,0,0,6,$22
DC.B $F,0,$44,$F4,0,0,8,$F0
DC.B $20,0,$4C,$57,$70,0,0,0
DC.B 5,$60,$F4,0,0,4,$7C,$B
DC.B $F0,$80,0,1,$CE,$22,$B6,0
DC.B $60,$F4,0,0,8,$F0,$57,$F0
DC.B 0,0,0,$D,$44,$F0,0,0
DC.B 0,$B,$70,$F0,0,0,0,$1C
DC.B 6,$D8,0,0,1,$34,$20,0
DC.B $48,$A,$F0,$A5,0,1,$17,$A
DC.B $CD,$57,$45,$D8,0,$45,$D8,0
DC.B $47,$D0,0,$46,$F0,0,0,0
DC.B 8,$20,0,$E0,$21,$C5,0,$20
DC.B 0,$B0,$21,$E6,$64,$21,$C7,0
DC.B $20,0,$B0,$20,0,$60,$21,$C5
DC.B 0,$5E,$E6,0,$20,0,$60,$5E
DC.B $5E,0,$45,$D8,0,$47,$D0,0
DC.B $46,$F0,0,0,0,9,$20,0
DC.B $E0,$21,$C5,0,$20,0,$B0,$21
DC.B $E6,$64,$21,$C7,0,$20,0,$B0
DC.B $20,0,$60,$21,$C5,0,$5E,$E6
DC.B 0,$20,0,$60,$5E,$5E,0,$57
DC.B $70,0,0,0,$D,$22,$F,0
DC.B $44,$F4,0,0,8,$F0,$20,0
DC.B $4C,$57,$70,0,0,0,$C,$60
DC.B $F4,0,0,5,$F8,$B,$F0,$80
DC.B 0,1,$CE,$22,$B6,0,$60,$F4
DC.B 0,0,8,$F0,$57,$F0,0,0
DC.B 0,$14,$44,$F0,0,0,0,$12
DC.B $70,$F0,0,0,0,$1C,6,$D8
DC.B 0,0,1,$6E,$20,0,$48,$A
DC.B $F0,$A5,0,1,$51,$A,$CD,$57
DC.B $45,$D8,0,$45,$D8,0,$47,$D0
DC.B 0,$46,$F0,0,0,0,$F,$20
DC.B 0,$E0,$21,$C5,0,$20,0,$B0
DC.B $21,$E6,$64,$21,$C7,0,$20,0
DC.B $B0,$20,0,$60,$21,$C5,0,$5E
DC.B $E6,0,$20,0,$60,$5E,$5E,0
DC.B $45,$D8,0,$47,$D0,0,$46,$F0
DC.B 0,0,0,$10,$20,0,$E0,$21
DC.B $C5,0,$20,0,$B0,$21,$E6,$64
DC.B $21,$C7,0,$20,0,$B0,$20,0
DC.B $60,$21,$C5,0,$5E,$E6,0,$20
DC.B 0,$60,$5E,$5E,0,$57,$70,0
DC.B 0,0,$14,$22,$F,0,$44,$F4
DC.B 0,0,8,$F0,$20,0,$4C,$57
DC.B $70,0,0,0,$13,$60,$F4,0
DC.B 0,7,$74,$B,$F0,$80,0,1
DC.B $CE,$22,$B6,0,$60,$F4,0,0
DC.B 8,$F0,$57,$F0,0,0,0,$1B
DC.B $44,$F0,0,0,0,$19,$70,$F0
DC.B 0,0,0,$1C,6,$D8,0,0
DC.B 1,$A8,$20,0,$48,$A,$F0,$A5
DC.B 0,1,$8B,$A,$CD,$57,$45,$D8
DC.B 0,$45,$D8,0,$47,$D0,0,$46
DC.B $F0,0,0,0,$16,$20,0,$E0
DC.B $21,$C5,0,$20,0,$B0,$21,$E6
DC.B $64,$21,$C7,0,$20,0,$B0,$20
DC.B 0,$60,$21,$C5,0,$5E,$E6,0
DC.B $20,0,$60,$5E,$5E,0,$45,$D8
DC.B 0,$47,$D0,0,$46,$F0,0,0
DC.B 0,$17,$20,0,$E0,$21,$C5,0
DC.B $20,0,$B0,$21,$E6,$64,$21,$C7
DC.B 0,$20,0,$B0,$20,0,$60,$21
DC.B $C5,0,$5E,$E6,0,$20,0,$60
DC.B $5E,$5E,0,$57,$70,0,0,0
DC.B $1B,$22,$F,0,$44,$F4,0,0
DC.B 8,$F0,$20,0,$4C,$57,$70,0
DC.B 0,0,$1A,$A,$F0,$80,0,0
DC.B $81,8,$DF,$EF,0,0,4,$A
DC.B $A9,$80,0,1,$B5,8,$59,$AB
DC.B $A,$A9,$80,0,1,$B8,8,$45
DC.B $2B,$45,$59,0,$44,$F0,0,0
DC.B 0,$1C,$20,0,$A8,$A,$A9,$81
DC.B 0,1,$BF,8,$E1,$AB,$A,$A9
DC.B $81,0,1,$C2,8,$CF,$2B,$A
DC.B $A9,$80,0,1,$C5,8,$44,$2B
DC.B 6,$C4,0,0,1,$CC,$A,$A9
DC.B $80,0,1,$CA,8,$58,$AB,0
DC.B 0,$C,$46,$F4,0,$FF,0,0
DC.B $61,$F4,0,0,8,$F0,6,$7C
DC.B $81,0,1,$E2,$57,$E0,0,$45
DC.B $F4,$5E,0,0,$80,$55,$59,0
DC.B $44,$E0,0,$20,0,$A8,$21,$2F
DC.B 0,$45,$F4,$5E,0,$80,0,$55
DC.B $59,0,$44,$D8,0,$20,0,$A8
DC.B $21,$2F,0,$20,0,$5E,$55,$59
DC.B 0,0,0,$C
MODULE
incbin "d:\music\modules\overload.mod"
DS.B $20000
WORKSPC