Bu sayfadaki yazılar
Sayfanın metni
Sayfa 40
(a0)
inter
-396(a6) Tts ScrollDatas move.l — #2,DeltaX move.l — #0,DeltaY move.l — #0,FirstX move.l — #230,FirstY move.l — #360,SecondX move.l — #250,SecondY Tts Clear lea $70000,a0 move.l — #$1400,d7 CLS (A0)4 dbf d7,CLS TİS
; Amiga FUTURE COMPOSER V1.0 / 1.2/1.3 Replay routine Init Music move.w #l,onoff bset #1,$bfe00l
lea Module,a0 lea 100(a0),al move.l — al,SegPoint move.l — a0,al add.l 8(a0),al move.l — al,PatPoint move.l a0,al add.l 16(a0),al move.l — al,FrgPoint move.l — a0,al add.l 24(a0),al move.l — al,VolPoint move.l — 4(a0),d0 divu #13,d0 lea 40(a0),al lea SoundInfo--4(pc),a2
moveg InitLoop move.w
move.l — (al)4,(a2)4 addg.w dbf di ,İnitLoop moveg ,d2 move.l — a0,di add.l 32(a0),d1 sub.l #WaveForms,d1 lea SoundInfo(pc),a0 move.l — d1,(a0)4
moveg — #9-1,d3 InitLoopl move.w (a0),d2 d2,d1
add.l d2,d1 addg.w #6,a0 move.l — dbf d3,InitLoop1 move.l — SegPoint(pc),a0 moveg ,d2 move.b — 12(a0),d2 bne.s SpeedOk move.b — #3,d2
SpeedOk move.w d2,RespCnt move.w d2,RepSpd Init2 clr.w AudTemp move.w move.w #$0780,$dff09a
moveg — #0,d7 mulu #13,d0 moveg — #4-1,d6 lea V1Data(pc),a0 lea Silent(pc),al lea o4a0c8(pc),a2 TnitLoop2 move.l a1,10(a0) move.l — al,18(a0) 14(a0) 45(a0) clr.b 47(a0) 8(a0) 48(a0)
dovel
25(a0) 26(a0) clr.w 30(a0) moveg — #0,d3 move.w move.w divu #3,d3 move.b — d3,32(a0) mulu 3,d3 andi.l #$ff,d3 andi.l #$ff,dI addi.l #$dff0a0,d1 move.l — dl1,a6 move.l — #0,(a6)
move.w #$100,4(a6) move.w #0,6(a6) move.w #0,8(a6)
move.l — d1,60(a0) 64(a0) move.l — SegPoint(pc),(a0) move.l — SegPoint(pc),52(a0) add.l d0,52(a0) add.l d3,52(a0) add.l d7,(a0) d3,(a0) move.w #$d,6(a0) move.l (a0),a3 move.b (a3),di andi.l #$ff,dI #6,d1 move.l — PatPoint(pc),a4 adda.w dl,a4 move.l — a4,34(a0) 38(a0)
move.b — #1,33(a0)) move.b — #2,42(a0) 1(a3),44(a0) move.b — 2(a3),22(a0) clr.b 43(a0) cir.b 45(a0) 56(a0) adda.w — #$4a,a0
dbf d6,InitLoop2 Tt:
Ss Play PerVol(pc),a6 tst.w OnOff bne.s Music On BackToLife
Tits Music On subg.w #1,RespCnt bne.s NoNewNote move.w RepSpd(pc),RespCnt
lea VI Data(pc),a0 bsr.W New Note lea V2Data(pc),a0 bsr.W New Note lea V3Data(pc),a0 bsr.W . New Note lea V4Data(pc),a0 bsr.W New Note NoNewNote AudTemp lea V1Data(pc),a0 bsr.W Effects move.w d0,(a6)4- move.w d1,(a6)4 lea V2Data(pc),a0 bsr.W Effects move.w d0,(a6)-4- move.w d1,(a6)4 lea V3Data(pc),a0 Effects move.w d0,(a6)-4- move.w lea V4Data(pc),a0 bsr.W Effects move.w d0,(a6)4- möve.w lea PerVol(pc),a6 move.w AudTemp(pc),d0 Ori.w move.w d0,-(a7) moveg move.l Startl(pc),d2 move.w add.l di,d2 move.l — Start2(pc),d3 move.w add.l 1,d3 move.l Start3(pc),d4 move.w Offset3(pc),di add.l 1; move.l Start4(pc),d5 move.w Offset4(pc),dI add.l d1,d5 move.w SSizel(pc),d0 move.w SSize2(pc),dl move.w SSize3(pc),d6 move.w SSize4(pc),d7 move.w (a7)4,$dff096 Chani lea — VIData(pc),a0 tst.w 72(a0) beg.b Chan2 subg.w — #1,72(a0) cmpi.w #1,72(a0) bne.s Chan2 clr.w 72(a0) move.l — d2,$dffOa0 move.w d0,$dff0a4 Chan2 lea V2Data(pc),a0 tst.w 72(a0) beg.s Chan3 subg.w — #1,72(a0) cmpi.w #1,72(a0)
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 41
bne.s Chan3 beg.s NoPort add.w — di,di 72(a0) move.b 2(a1),47(a0) add.w d1,d0 move.l — d3,$dffObO NoPort andi.w adda.w move.w d1,$dffOb4 beg.B NextNote move.l — 60(a0),a3 Chan3 lea V3Data(pc),a0 move.b — d0,8(a0) move.l (a4),dl tst.w 72(a0) move.b (a1),9(a0) #WaveForms,d1 beg.s Chan4â move.b — 32(a0),d2 move.l — di, (a3) subg.w — #1,72(a0) moveg — #0,d3 move.l — di1,68(a0) cmpi.w #1,72(a0) bset d2,d3 move.w 4(a4),4(a3) bne.s Chan4 or.w d3,AudTemp move.l — 6(a4),64(a0) elr.w 72(a0) move.w d3,$dff096 swap di move.l — d4,$dff0c0 move.b move.w #3,72(a0) tst.w di move.w d6,$dff0c4 andi.w #$3f,dl bne.s 049052 Chan4 lea V4Data(pc),a0 add.b 22(a0),d1 move.w tst.w 72(a0) move.l — VolPoint(pc),a2 049c52 clr.w 16(a0) beg.s SetPerVol move.b — #1,23(a0) subg.w — #1,72(a0) adda.w addg.w — #2,50(a0) empi.w #1,72(a0) move.w d5,16(a0) bra.W 049d02 bne.s SetPerVol move.b (a2),23(a0) 049c64 cmpi.b #$e4 (al) elr.w 72(a0) move.b — (a2)4,24(a0) bne.s TestPatlmp move.l — d5,$dff0Od0 move.b (a2)4,dl move.b tta move.w d7,$dff0d4 andi.w — #$ff,di andi.w — #$ff, SetPerVollea — $dffOa6,a5 move.b (a2)4,27(a0) lea ad move.w (a6)4,(a5) move.b — #$40,46(a0) add.w d0,d0 move.w (a6)4,2(a5) move.b — (a2)4,d0 move.w move.w move.b — d0,28(a0) add.w di,di move.w (a6)4,18(a5) move.b d0,29(a0) add.w move.w (a6)4,32(a5) move.b — (a2)4,30(a0) add.w di,d0 move.w (a6)4,34(a5) move.l — a2,10(a0) move.l adda.w move.w (a6)4,48(a5) FrgPoint(pc),a2 move.l — 60(a0),a3 move.w (a6)4,50(a5) İsl.w #6,d1 move.l (a4),di bra.w BackToLife adda.w dl,a2 add.l #WaveForms,d1 New Note moveg #0,d5 move.l — a2,18(a0) move.l — move.l — 34(a0),al move.w move.l — adda.w 40(a0),al move.b — d5,26(a0) move.w 4(a4),4(a3) cmp.w — #64,40(a0) move.b — d5,25(a0) move.l — 6(a4),64(a0) bne.B — SamePat NextNote addg.w #2,40(a0) swap di move.l (a0),a2 Tts move.w #3,72(a0) adda.w 6(a0),a2 Effects moveg — #0,d7 tst.w di cmpa.l — 52(a0),a2 TestSustain bne.s 049cae bne.s NotEnd tst.b 26(a0) move.w move.w d5,6(a0) beg.s SustZero 049cae addg.w #2,50(a0) subg.b — #1,26(a0) bra.s 049d02 NotEnd moveg #0,di bra.W VolUfx TestPatlmp addg.b — #1,SpdTemp SustZero move.l 18(a0),al cmpi.b — #$e7, (al) cmpi.b — #4,SpdTemp adda.w 50(a0),al bne.s TestNewSustain bne.s NoNewSpd TestEffects move.b — 1(al),d0 move.b d5,SpdTemp cmpi.b — #$el,(al) andi.w — #$ff,d0 move.b — beg.W VolUfx #6,d0 beg.s NoNewSpd cmpi.b — #$e0,(al) move.l — FrgPoint(pc),al move.w - d1,RespCnt bne.s TestNewSound adda.w d0,al move.w d1,RepSpd move.b — 1(al),d0 move.l al,18(a0) NoNewSpd move.b (a2),di andi.w #$3f,dO move.w d7,50(a0) move.b — 1(a2),44(a0) move.w d0,50(a0) bra.W TestEffects move.b — 2(a2),22(a0) move.l — 18(a0),al TestNewSustain move.w d5,40(a0) adda.w dO,al cmpi.b — #$e8,(al) #6,d1 bne.s 049cea PatPoint(pc),d1 cmpi.b — #$e2,(al) move.b — 1(a1),26(a0) move.l — d1,34(a0) bne.s 049c64 addg.w — #2,50(a0) addi.w — #$d,6(a0) moveg — #0,d0 bra.W TestSustain move.l dli,al moveg #0,di 049cea cmpi.b #$e3,(al) SamePat move.b 1(al),di move.b 32(a0),dI bne.s 049d02 move.b (al)4,d0 bset d1,d0 addg.w #3,50(a0) bne.s Wwl Or.wW d0,AudTemp move.b — 1(al),27(a0) andi.w — #9011000000,d1 move.w d0,$dff096 move.b — 2(a1),28(a0) beg.s NoPort move.b 049d02 move.l 18(a0),al kay bra.s Wwll andi.w — #$ff, adda.w 50(a0),al Www move.w d5,56(a0) lea a4 move.b (a1),43(a0) wll move.b d5,47(a0) add.w — d0,d0 addg.w #1,50(a0) be (a1),31(a0) VolUfx tstb — 25(a0) n Dtst add.w — di,di beg.s — 049dle