home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
AMOS PD CD
/
amospdcd.iso
/
251-275
/
apd272
/
smeg
/
smeg.amosSourceCode
< prev
Wrap
AMOS Source Code
|
1992-05-20
|
24KB
|
730 lines
Screen Open 0,350,300,32,Lowres
Paper 0 : Hide On : Curs Off : Flash Off : Cls
Global T,T2
CREDZ : SETUP : AHEAD : QUART : PRODUCTION : MOVTITLE : ITRO : BENDLOGO
CULFONT : NEWLOGO : BALLS : POTS : MIRROR : SCRNCPY : MOVRAN : BLACK_OUT
DINOSAW : CREDZ2 : SETUP_SCREENS : FLICKER
Procedure CREDZ
Screen Open 2,350,270,32,Lowres : Curs Off : Hide On : Flash Off : Cls 0
Screen Hide 0 : Unpack 8 To 2
Set Rainbow 0,2,32,"(1,1,15)(1,-1,15)","(1,1,15)(1,-1,15)","(1,1,15)(1,-1,15)"
Rainbow 0,0,40,150 : Set Rainbow 1,1,32,"(1,1,15)(1,-1,15)","","" : Rainbow 1,0,155,260
Wait 150 : CLEER[2,False,False,0,900] : Ink 0 : Bar 0,100 To 5,255
Bar 0,250 To 325,270 : Bar 315,100 To 325,250 : Screen Open 1,500,20,32,Lowres
Screen 1 : Ink 1 : Curs Off : Hide On : Cls 0 : Screen Hide 1 : Screen 2 : Wait 50
SCROLER["<<< WARNING >>> ",153,1] : SCROLER["YOU ARE NOW ENTERING.. ",138,1] : SCROLER["THE CYBORNETICS ZONE ",140,1]
Wait 50 : CLEER[0,True,True,0,600] : SETCULERS : Screen Close 1 : Screen Close 2
End Proc
Procedure SETUP
Curs Off : Hide On : Flash Off : Cls 0 : Unpack 6 To 1 : Screen Hide 1
Screen Open 2,350,80,32,Lowres : Screen Display 2,113,100,350,80
Curs Off : Hide On : Flash Off : Cls 0 : Get Palette 1
Screen To Front 0 : Screen Show 0 : Screen 0 : SETCULERS
End Proc
Procedure AHEAD
Music 1
For A=226 To 165 Step -2 : Screen Copy 1,A-1,0,A,80 To 0,A-37,-30 : PAUSE[100] : Next A
For A=164 To 226 Step 2 : Screen Copy 1,A,0,A+1,80 To 0,A-36,-30 : PAUSE[100] : Next A
End Proc
Procedure QUART
For X=0 To 162 Step 6
For Y=0 To 80 Step 6 : Screen Copy 1,X,Y,X+3,Y+3 To 0,X+85,Y+53 : Next Y
Next X
For Y=80 To 0 Step -6
For X=162 To 0 Step -6 : Screen Copy 1,X-3,Y-3,X,Y To 0,X+82,Y+50 : Next X
Next Y
For X=159 To 0 Step -6
For Y=78 To 0 Step -6 : Screen Copy 1,X-3,Y-3,X,Y To 0,X+82,Y+50 : Next Y
Next X
For Y=2 To 80 Step 6
For X=3 To 162 Step 6 : Screen Copy 1,X,Y,X+3,Y+3 To 0,X+85,Y+50 : Next X
Next Y
End Proc
Procedure PRODUCTION
For A=0 To 230 Step 2 : Screen Copy 1,A,80,A+1,115 To 0,A+55,200 : PAUSE[100] : Next A
For A=230 To 0 Step -2 : Screen Copy 1,A-1,80,A,115 To 0,A+54,200 : PAUSE[100] : Next A
End Proc
Procedure MOVTITLE
Screen Copy 1,0,0,162,80 To 2,85,0 : Screen To Front 2 : Channel 0 To Screen Display 2
Amal 0,"Loop: Move 0,50,50 ; Move 0,-50,50 ; Jump Loop" : Amal On 0 : Screen 0
Ink 0 : Bar 0,49 To 260,130 : Wait 250
CLEER[0,False,False,0,500] : CLEER[2,False,False,0,480]
Amal Off : Screen Close 2
End Proc
Procedure ITRO
Set Rainbow 0,0,32,"","","" : Rainbow 0,0,49,260 : CLEER[0,False,False,0,600]
SETCULERS : DROPTEXT[0,"welcome",60,30,10,False] : DROPTEXT[0,"to",140,90,10,False]
DROPTEXT[0,"robs demo",20,150,10,False] : Wait 130
CLEER[0,False,False,0,600] : SETCULERS : DROPTEXT[0,"this demo",20,30,10,False]
DROPTEXT[0,"is",130,90,10,False] : DROPTEXT[0,"called...",45,150,10,False]
Wait 130 : CLEER[0,False,False,0,600] : SETCULERS
DROPTEXT[0,"smeg!",100,30,10,False] : DROPTEXT[0,"and",120,100,10,False]
DROPTEXT[0,"you will",40,140,10,False] : DROPTEXT[0,"see why",55,180,10,False]
Wait 130 : CLEER[0,False,False,0,600] : SETCULERS
End Proc
Procedure BENDLOGO
VUBOTTOM=195
Screen Open 2,350,32,32,Lowres : Paper 0 : Cls : Curs Off : Flash Off : Screen Hide 2
Screen 2 : Get Palette 1 : Channel 0 To Screen Display 2
Amal 0," Move 0,29,1 " : Amal On 0
Set Rainbow 0,0,32,"(1,1,15)(1,-1,15)","(1,1,15)(1,-1,15)","(1,1,15)(1,-1,15)"
For OH_IR=1 To 260 : Rainbow 0,0,49,OH_IR : Wait Vbl : Next OH_IR
DROPTEXT[0,"c",20,70,10,False] : DROPTEXT[0,"y",20,110,10,False]
DROPTEXT[0,"s",20,150,10,False] : DROPTEXT[0,"c",290,70,10,False]
DROPTEXT[0,"y",290,110,10,False] : DROPTEXT[0,"s",290,150,10,False]
DROPTEXT[0,"rave on!",35,215,10,False] : Screen To Front 2 : Screen Show 2 : Screen 0
DROPTEXT[2,"smeg!",100,0,10,False] : Ink 0
Amal Off : Def Scroll 1,120,171 To 212,200,0,-6
Def Scroll 2,120,146 To 212,175,0,-4 : Def Scroll 3,120,122 To 212,150,0,-2
Def Scroll 4,120,72 To 212,125,0,-1 : Def Scroll 5,120,46 To 212,75,0,-2
Def Scroll 6,120,21 To 212,50,0,-4 : Def Scroll 7,120,0 To 212,25,0,-4
COUNTER=1 : ROB=1 : Y=VUBOTTOM : Y2=VUBOTTOM : Screen Copy 1,170,250,228,262 To 0,51,198
Screen Copy 1,170,250,228,262 To 0,231,198
Repeat
For G=1 To 112
Screen Copy 1,228,G,330,G+6 To 0,120,194
Scroll 1 : Scroll 2 : Scroll 3 : Scroll 4 : Scroll 5 : Scroll 6 : Scroll 7
Inc COUNTER
If Vumeter(0)>50
While(Y mod 5)<>0 : Inc Y : Wend
For CTR=Y To 100 Step -5
If CTR<130
Screen Copy 1,180,7,218,13 To 0,60,CTR
Else
Screen Copy 1,180,15,218,21 To 0,60,CTR
End If
Next CTR
Y=CTR
End If
If Y<VUBOTTOM-5 : Add Y,5 : Bar 60,Y To 98,Y+5 : End If
If Vumeter(1)>0
While(Y2 mod 5)<>0 : Inc Y2 : Wend
For CTR=Y2 To 100 Step -5
If CTR<130
Screen Copy 1,180,7,218,13 To 0,240,CTR
Else
Screen Copy 1,180,15,218,21 To 0,240,CTR
End If
Next CTR
Y2=CTR
End If
If Y2<VUBOTTOM-5 : Add Y2,5 : Bar 240,Y2 To 278,Y2+5 : End If
Inc ROB
If ROB=390
Screen Hide 0 : Screen Hide 2
Screen Open 3,350,300,2,Lowres : Get Palette 1 : Cls 0
For CLEERBOW=0 To 31
Rain(0,CLEERBOW)=0
Next CLEERBOW
Screen To Front 3 : Mvolume 0 : Wait 10 : Sam Play 1 : Wait 80
Set Rainbow 0,0,32,"(1,1,15)(1,-1,15)","(1,1,15)(1,-1,15)","(1,1,15)(1,-1,15)"
Rainbow 0,0,49,260 : Mvolume 63 : Screen To Front 0 : Screen To Front 2
Screen Close 3 : Screen Show 0 : Screen Show 2 : Screen 0
End If
Exit If ROB>800
Next G
Exit If ROB>700
Until IMPOSSIBLE_CONDITION
Y=100 : Y2=100
Repeat
Add Y2,6 : Bar 240,Y2 To 278,Y2+6 : Add Y,6 : Bar 60,Y To 98,Y+6 : Wait 2
Until Y>185
OOER=0 : AHYEAH=320
Repeat
Ink 0 : Bar OOER,0 To OOER+1,300 : Bar AHYEAH-1,0 To AHYEAH,300
PAUSE[50] : Inc OOER : Dec AHYEAH
Until AHYEAH<160
Channel 0 To Screen Display 2
Amal 0," Loop : Move 0,100,50 ; Move 0,-100,50 ; Jump Loop ;"
Amal On 0 : Screen 0 : CLEER[0,True,False,0,800] : Wait 50 : Amal Off
Unpack 7 To 1 : Screen Hide 1 : CLEER[2,False,False,0,600] : Screen Close 2
Screen To Front 0 : Screen 0 : SETCULERS
End Proc
Procedure CULFONT
Screen 0
DROPTEXT[0,"well this",20,30,10,False] : DROPTEXT[0,"is a very",20,80,10,False]
DROPTEXT[0,"colourful",20,130,10,False] : DROPTEXT[0,"demo!",90,180,10,False]
Ink 0 : Wait 30
For A=0 To 350 : Bar 0,A To 350,A+1 : PAUSE[5] : Next A
Set Rainbow 0,2,32,"(1,1,1)(1,-1,1)","(1,1,15)(1,-1,15)","(1,1,1)(1,-1,1)"
T=1
Every 2 Proc RANBOWCOL
DROPTEXT[0,"ooer",100,25,1,True] : DROPTEXT[0,"this is",50,75,1,True]
DROPTEXT[0,"weird",90,135,1,True] : DROPTEXT[0,"a pause",20,280,1,True]
CLEER[0,True,True,0,600] : SETCULERS : Wait 50
Set Rainbow 0,2,32,"(1,1,1)(1,-1,1)","(1,1,1)(1,-1,1)","(1,1,15)(1,-1,15)"
DROPTEXT[0,"check out",10,26,1,True] : DROPTEXT[0,"This cool",10,76,1,True]
DROPTEXT[0,"rainbow",50,126,1,True] : DROPTEXT[0,"text!",90,176,1,True]
DROPTEXT[0,"a pause",100,280,1,True] : CLEER[0,True,True,0,600]
SETCULERS : Wait 50
Set Rainbow 0,2,32,"(1,1,15)(1,-1,15)","(1,1,1)(1,-1,1)","(1,1,1)(1,-1,1)"
DROPTEXT[0,"now for",50,36,1,True] : DROPTEXT[0,"the next",40,86,1,True]
DROPTEXT[0,"part..",90,136,1,True] : DROPTEXT[0,"a pause",20,280,1,True]
CLEER[0,True,True,0,600] : SETCULERS
End Proc
Procedure NEWLOGO
For ROB=0 To 65
Screen Copy 1,0,ROB,185,ROB+1 To 0,0,ROB : Screen Copy 1,0,ROB,185,ROB+1 To 0,185,ROB
Screen Copy 1,35,ROB,185,ROB+1 To 0,0,ROB+65 : Screen Copy 1,0,ROB,185,ROB+1 To 0,150,ROB+65
Screen Copy 1,0,ROB,185,ROB+1 To 0,0,ROB+130 : Screen Copy 1,0,ROB,185,ROB+1 To 0,185,ROB+130
Screen Copy 1,35,ROB,185,ROB+1 To 0,0,ROB+195 : Screen Copy 1,0,ROB,185,ROB+1 To 0,150,ROB+195
Next ROB
CLEER[0,False,False,0,600] : SETCULERS
Wait 10
For X=1 To 185 Step 6
For Y=1 To 65 Step 6 : Screen Copy 1,X,Y,X+3,Y+3 To 0,X+82,Y+53 : Next Y
Next X
For Y=65 To 0 Step -6
For X=185 To 0 Step -6 : Screen Copy 1,X-3,Y-3,X,Y To 0,X+82,Y+50 : Next X
Next Y
For X=182 To 0 Step -6
For Y=63 To 0 Step -6 : Screen Copy 1,X-3,Y-3,X,Y To 0,X+82,Y+50 : Next Y
Next X
For Y=2 To 65 Step 6
For X=3 To 185 Step 6 : Screen Copy 1,X,Y,X+3,Y+3 To 0,X+85,Y+53 : Next X
Next Y
Wait 20 : CLEER[0,False,False,0,600] : SETCULERS
For ROB=65 To 0 Step -2
Screen Copy 1,0,ROB-1,185,ROB To 0,0,ROB : Screen Copy 1,0,ROB-1,185,ROB To 0,185,ROB
Screen Copy 1,35,ROB-1,185,ROB To 0,0,ROB+65 : Screen Copy 1,0,ROB-1,185,ROB To 0,150,ROB+65
Screen Copy 1,0,ROB-1,185,ROB To 0,0,ROB+130 : Screen Copy 1,0,ROB-1,185,ROB To 0,185,ROB+130
Screen Copy 1,35,ROB-1,185,ROB To 0,0,ROB+195 : Screen Copy 1,0,ROB-1,185,ROB To 0,150,ROB+195
Next ROB
For ROB=0 To 65 Step 2
Screen Copy 1,0,ROB,185,ROB+1 To 0,0,ROB : Screen Copy 1,0,ROB,185,ROB+1 To 0,185,ROB
Screen Copy 1,35,ROB,185,ROB+1 To 0,0,ROB+65 : Screen Copy 1,0,ROB,185,ROB+1 To 0,150,ROB+65
Screen Copy 1,0,ROB,185,ROB+1 To 0,0,ROB+130 : Screen Copy 1,0,ROB,185,ROB+1 To 0,185,ROB+130
Screen Copy 1,35,ROB,185,ROB+1 To 0,0,ROB+195 : Screen Copy 1,0,ROB,185,ROB+1 To 0,150,ROB+195
Next ROB
Wait 50 : CLEER[0,False,False,0,600] : SETCULERS
End Proc
Procedure BALLS
Set Rainbow 0,0,32,"","","" : Rainbow 0,0,49,260 : Screen Close 0
Unpack 9 To 3 : Screen Hide 3 : Screen Open 0,340,50,32,Lowres
Hide On : Flash Off : Curs Off : Cls 0 : Get Palette 3
Screen Display 0,112,151,, : Screen Open 1,340,100,32,Lowres
Hide On : Flash Off : Curs Off : Cls 0 : Get Palette 3
Screen Display 1,112,74,, : Screen Open 2,340,100,32,Lowres
Hide On : Flash Off : Curs Off : Cls 0 : Get Palette 3 : Screen Display 2,112,175,,
SETCULERS
Screen Copy 3,0,145,85,235 To 1,5,9 : Screen Copy 3,208,145,290,235 To 2,5,1
Screen Copy 3,208,145,290,235 To 1,250,9 : Screen Copy 3,0,145,85,235 To 2,250,1
Screen Copy 3,4,110,305,133 To 0,20,12 : Screen Copy 3,190,5,320,55 To 1,107,50
Screen Copy 3,190,55,320,110 To 2,107,0 : Wait 100 : Channel 0 To Screen Display 1
Channel 1 To Screen Display 2 : Amal 0,"L: M 0,-40,40 ; M 0,40,40 ; J L"
Amal 1,"L: M 0,40,40 ; M 0,-40,40 ; J L" : Amal On : CANTER=0
Repeat : Inc CANTER : Until CANTER>14000
Amal Off : Wait 50 : Screen 1 : Ink 0
For ZIP=0 To 100 : Bar 0,ZIP To 340,ZIP+1 : Next ZIP
Screen 0 : Ink 0
For ZIP=0 To 49 : Bar 0,ZIP To 340,ZIP+1 : Next ZIP
CLEER[2,False,False,0,1000]
Screen Close 0 : Screen Close 1 : Screen Close 2 : Screen Close 3
End Proc
Procedure POTS
Screen Open 0,350,270,32,Lowres : Hide On : Curs Off : Flash Off : Cls 0
Screen Display 0,,40,, : Unpack 7 To 1 : Screen Hide 1 : Screen 0 : Get Palette 1
STIN=0 : ROBDWN=61
Set Rainbow 0,1,32,"(1,1,15)(1,-1,15)","(1,1,15)(1,-1,15)","(1,1,15)(1,-1,15)"
Repeat
Screen Copy 1,200,ROBDWN-1,320,ROBDWN To 0,100,ROBDWN
Screen Copy 1,200,ROBDWN-1,320,ROBDWN To 0,100,112-ROBDWN
Screen Copy 1,STIN,72,STIN+1,120 To 0,STIN+8,150
Screen Copy 1,STIN,72,STIN+1,120 To 0,330-STIN,150
RANBOWCOL
Inc STIN
If ROBDWN>1 : Dec ROBDWN : End If
Until STIN=160
DES_VEN=0
Repeat
RANBOWCOL : Wait Vbl : Inc DES_VEN
Until DES_VEN=200
CLEER[0,False,True,0,600] : DES_EW=0
Repeat
RANBOWCOL : Wait 2 : Inc DES_EW
Until DES_EW=100
CLEER[0,True,True,0,600]
SETCULERS
End Proc
Procedure MIRROR
T2=31
Set Rainbow 0,2,32,"(1,1,1)(1,-1,1)","(1,1,15)(1,-1,15)","(1,1,1)(1,-1,1)"
Set Rainbow 1,2,32,"(1,1,15)(1,-1,15)","(1,1,1)(1,-1,1)","(1,1,15)(1,-1,15)"
Set Rainbow 2,2,32,"(1,1,1)(1,-1,1)","(1,1,15)(1,-1,15)","(1,1,1)(1,-1,1)"
Set Rainbow 3,2,32,"(1,1,15)(1,-1,15)","(1,1,1)(1,-1,1)","(1,1,15)(1,-1,15)"
DROPTEXT2[0,"mirror",60,70,1,False,True] : DROPTEXT2[0,"that text",10,160,1,False,True]
DROPTEXT2[0,"lkajfh",20,300,6,False,True] : CLEER[0,True,True,0,600]
SETCULERS
Set Rainbow 0,2,32,"(1,1,15)(1,-1,15)","(1,1,15)(1,-1,15)","(1,1,1)(1,-1,1)"
DROPTEXT2[0,"this is",50,25,1,True,False] : DROPTEXT2[0,"my last",50,90,1,True,False]
DROPTEXT2[0,"rainbow",50,155,1,True,False] : DROPTEXT2[0,"text",100,220,1,True,False]
DROPTEXT2[0,"lkajfh",20,300,6,True,False] : CLEER[0,True,True,0,600]
SETCULERS
Set Rainbow 0,2,32,"(1,1,15)(1,-1,15)","(1,1,1)(1,-1,1)","(1,1,15)(1,-1,15)"
DROPTEXT2[0,"honest!",40,100,1,True,False] : DROPTEXT2[0,"lkajsdttfh",20,300,6,True,False]
CLEER[0,True,True,0,600]
Set Rainbow 0,2,32,"(1,1,15)(1,-1,15)","(1,1,1)(1,-1,1)","(1,1,15)(1,-1,15)"
Set Rainbow 1,2,32,"(1,1,15)(1,-1,15)","(1,1,1)(1,-1,1)","(1,1,15)(1,-1,15)"
Set Rainbow 2,2,32,"(1,1,15)(1,-1,15)","(1,1,1)(1,-1,1)","(1,1,15)(1,-1,15)"
Set Rainbow 3,2,32,"(1,1,15)(1,-1,15)","(1,1,1)(1,-1,1)","(1,1,15)(1,-1,15)"
Rainbow 0,1,300,3 : Rainbow 1,1,300,3 : Rainbow 2,1,300,3 : Rainbow 3,1,300,3
SETCULERS
End Proc
Procedure SCRNCPY
NUMERO_UNO=0
Repeat
X=Rnd(300)-50 : Y=Rnd(240)-10 : Screen Copy 1,0,71,158,116 To 0,X,Y,%11001100
Inc NUMERO_UNO
Until NUMERO_UNO>500
Screen Copy 1,0,71,158,116 To 0,90,100
End Proc
Procedure MOVRAN
Set Rainbow 0,0,32,"(1,1,1)(1,-1,1)","(1,1,15)(1,-1,15)","(1,1,15)(1,-1,15)"
For OH_IR=1 To 260 Step 2 : Rainbow 0,0,49,OH_IR : Wait Vbl : Next OH_IR
CTR=0
Repeat
Wait 5
For UPNDOWN=40 To 280
Rainbow 0,0,UPNDOWN,260
If UPNDOWN<100
PAUSE[110-UPNDOWN]
Else
PAUSE[10]
End If
Next UPNDOWN
For DAWNNUP=280 To 40 Step -1
Rainbow 0,0,DAWNNUP,260
If DAWNNUP<130
PAUSE[140-DAWNNUP]
Else
PAUSE[10]
End If
Next DAWNNUP
Inc CTR
Until CTR=5
T=0
T2=350
End Proc
Procedure BLACK_OUT
Ink 1 : T2=350 : T1=270 : T=0
Repeat
Bar T,0 To T+1,300 : Bar 0,T1 To 350,T1+1
Bar T2,0 To T2+1,300 : Bar 0,T To 350,T+1
T=T+4 : T2=T2-4 : T1=T1-4
Until T2<1
Sprite Off 8 : Sprite Off 9 : Sprite Off 10
Ink 0 : T2=350 : T1=270 : T=0
Set Rainbow 0,0,32,"(1,1,15)(1,-1,15)","(1,1,1)(1,-1,1)","(1,1,15)(1,-1,15)"
Rainbow 0,32,40,300
Repeat
Bar T,0 To T+1,300 : Bar 0,T1 To 350,T1+1 : Bar T2,0 To T2+1,300
Bar 0,T To 350,T+1 : T=T+4 : T2=T2-4 : T1=T1-4 : Until T2<1
Ink 1 : T2=350 : T1=270 : T=0
Repeat
Bar T,0 To T+1,300 : Bar 0,T1 To 350,T1+1 : Bar T2,0 To T2+1,300
Bar 0,T To 350,T+1 : T=T+4 : T2=T2-4 : T1=T1-4 : Until T2<1
Ink 0 : T2=350 : T1=270 : T=0
Set Rainbow 0,0,32,"(1,1,1)(1,-1,1)","(1,1,1)(1,-1,1)","(1,1,15)(1,-1,15)"
Rainbow 0,32,40,300
Repeat
Bar T,0 To T+1,300 : Bar 0,T1 To 350,T1+1 : Bar T2,0 To T2+1,300
Bar 0,T To 350,T+1 : T=T+4 : T2=T2-4 : T1=T1-4
Until T2<1
WON_OFF
End Proc
Procedure DINOSAW
For X=300 To 210 Step -1 : Screen Copy 1,165,60,300,122 To 0,0,X : Wait Vbl : Next X
DROPTEXT[0,"arrghh!",50,40,10,False] : DROPTEXT[0,"its that",30,90,10,False]
DROPTEXT[0,"dinosaur",30,140,10,False] : DROPTEXT[0,"pause it man",340,40,10,False]
For X=0 To 330 : Screen Copy 1,165,60,300,122 To 0,X,210 : Wait Vbl : Next X
WON_OFF : DROPTEXT[0,"brilliant",10,40,10,False]
DROPTEXT[0,"animation",10,90,10,False] : DROPTEXT[0,"eh!",120,140,10,False]
DROPTEXT[0,"pause it man",340,40,10,False] : Unpack 6 To 1 : Screen Hide 1
Screen 0 : WON_OFF : SETCULERS : Get Palette 1 : TWO_OFF[3]
End Proc
Procedure CREDZ2
DROPTEXT[0,"code.",20,50,10,False] : DROPTEXT[0,"rob of",60,110,10,False]
DROPTEXT[0,"cys!",100,150,10,False] : Wait 130
THREE_OFF[2] : DROPTEXT[0,"music.",20,50,10,False]
DROPTEXT[0,"stew the",30,110,10,False] : DROPTEXT[0,"music",80,150,10,False]
DROPTEXT[0,"maker!",70,190,10,False] : Wait 130 : TWO_OFF[3]
DROPTEXT[0,"fanatix.",35,20,10,False] : DROPTEXT[0,"thanks",60,110,10,False]
DROPTEXT[0,"for your",25,150,10,False] : DROPTEXT[0,"disk!",85,190,10,False]
Wait 130 : THREE_OFF[1]
DROPTEXT[0,"i hope",65,40,10,False]
DROPTEXT[0,"you like",45,110,10,False]
DROPTEXT[0,"this one!",35,180,10,False]
Unpack 7 To 1
Screen Hide 1
Screen 0
Wait 60
Get Palette 1
TWO_OFF[1]
DROPTEXT[0,"talk",100,50,10,True]
DROPTEXT[0,"about",90,100,10,True]
DROPTEXT[0,"sick",100,150,10,True]
DROPTEXT[0,"a small pause",100,290,10,True]
TWO_OFF[3]
'
DROPTEXT[0,"alright!",30,50,10,False]
DROPTEXT[0,"no more",40,100,10,False]
DROPTEXT[0,"rainbows",30,150,10,False]
Wait 130
CLEER[0,True,True,0,200]
SETCULERS
End Proc
Procedure SETUP_SCREENS
Unpack 9 To 1
Screen Hide 1
Screen To Front 0
Screen 0
Get Palette 1
Ink 0
End Proc
Procedure RAVE
For A=56 To 107
Screen Copy 1,1,A,190,A+1 To 0,70,A+100
PAUSE[100]
Next A
Wait 10
A=1
B=190
Repeat
Screen Copy 1,A,5,A+1,56 To 0,A+69,157
Screen Copy 1,B-1,5,B,56 To 0,B+69,157
Inc A
Dec B
Until B=95
Wait 10
For A=107 To 56 Step -1
Screen Copy 1,1,A,190,A+1 To 0,70,A+100
PAUSE[100]
Next A
Wait 10
A=95
B=95
'
Repeat
Screen Copy 1,A,5,A+1,56 To 0,A+69,157
Screen Copy 1,B-1,5,B,56 To 0,B+69,157
Inc A
Dec B
Until A=190
Wait 10
A=1
B=190
Repeat
Screen Copy 1,A,57,A+1,107 To 0,A+69,157
Screen Copy 1,B-1,57,B,107 To 0,B+69,157
Inc A
Dec B
Until B=95
BLANK=150
BLANKUP=220
Repeat
Bar 40,BLANK To 270,BLANK+1
Bar 40,BLANKUP-1 To 270,BLANKUP
Inc BLANK
Dec BLANKUP
Wait Vbl
Until BLANK>190
End Proc
Procedure FLICKER
A=1
Screen Copy 1,1,134,300,250 To 0,28,10
Colour 19,$F00
Screen Copy 1,1,134,300,250 To 0,28,10
RAVE
Channel 0 To Screen Display 0
Screen To Front 0
Amal 0,"L: M 0,20,20 ; J L"
Amal On
LEUP=5000
LOUD=63
Repeat
RAN=Rnd($FFF)
Colour 19,RAN
Dec LEUP
If LEUP mod(79)=0
Mvolume LOUD
Dec LOUD
End If
Until LEUP<1
End Proc
Procedure SCROLER[MESS$,ACROZZ,CUL]
Y=0
Screen 1
Ink CUL,0,0
Text 1,10,MESS$
For X=330 To ACROZZ Step -3
Screen Copy 1,0,0,300,15 To 2,X+Y,245
Dec Y
Wait Vbl
Next X
Wait 30
For X=ACROZZ To -60 Step -3
Screen Copy 1,0,0,500,15 To 2,X+Y,245
Dec Y
Wait Vbl
Next X
End Proc
Procedure RANBOWCOL
Add T,1,0 To 31
Rainbow 0,T,40,380
End Proc
Procedure WON_OFF
Ink 1
T2=350
T1=270
T=0
Repeat
Bar T,0 To T+1,300
Bar 0,T1 To 350,T1+1
Bar T2,0 To T2+1,300
Bar 0,T To 350,T+1
T=T+4
T2=T2-4
T1=T1-4
Until T2<1
Ink 0
T2=350
T1=270
T=0
Set Rainbow 0,0,32,"(1,1,15)(1,-1,15)","(1,1,1)(1,-1,1)","(1,1,1)(1,-1,1)"
Rainbow 0,32,40,300
Repeat
Bar T,0 To T+1,300
Bar 0,T1 To 350,T1+1
Bar T2,0 To T2+1,300
Bar 0,T To 350,T+1
T=T+4
T2=T2-4
T1=T1-4
Until T2<1
End Proc
Procedure TWO_OFF[UZI]
Ink 1
T2=350
T1=270
T=0
Repeat
Bar T,0 To T+1,300
Bar 0,T1 To 350,T1+1
Bar T2,0 To T2+1,300
Bar 0,T To 350,T+1
T=T+4
T2=T2-4
T1=T1-4
Until T2<1
Ink 0
T2=350
T1=270
T=0
If UZI=1
Set Rainbow 0,0,32,"(1,1,51)(1,-1,5)","(1,1,9)(1,-1,9)","(1,1,12)(1,-1,12)"
Rainbow 0,32,40,300
Else
If UZI=2
Set Rainbow 0,0,32,"(1,1,1)(1,-1,1)","(1,1,15)(1,-1,15)","(1,1,15)(1,-1,15)"
Rainbow 0,32,40,300
Else
If UZI=3
Set Rainbow 0,0,32,"(1,1,1)(1,-1,1)","(1,1,15)(1,-1,15)","(1,1,1)(1,-1,1)"
Rainbow 0,32,40,300
End If
End If
End If
Repeat
Bar T,0 To T+1,300
Bar 0,T1 To 350,T1+1
Bar T2,0 To T2+1,300
Bar 0,T To 350,T+1
T=T+4
T2=T2-4
T1=T1-4
Until T2<1
End Proc
Procedure THREE_OFF[MM]
Ink 1
T=0
T2=350
Repeat
Bar T,0 To T+2,270
Bar T2,0 To T2+2,270
T=T+4
T2=T2-4
PAUSE[30]
Until T2<1
If MM=1
Set Rainbow 0,0,32,"(1,1,1)(1,-1,1)","(1,1,1)(1,-1,1)","(1,1,15)(1,-1,15)"
Rainbow 0,32,40,300
Else
If MM=2
Set Rainbow 0,0,32,"(1,1,1)(1,-1,1)","(1,1,15)(1,-1,15)","(1,1,15)(1,-1,15)"
Rainbow 0,32,40,300
Else
If MM=3
Set Rainbow 0,0,32,"(1,1,1)(1,-1,1)","(1,1,15)(1,-1,15)","(1,1,1)(1,-1,1)"
Rainbow 0,32,40,300
End If
End If
End If
Ink 0
T=0
T2=270
Repeat
Bar 0,T To 350,T+2
Bar 0,T2 To 350,T2+2
T=T+4
T2=T2-4
PAUSE[80]
Until T2<1
End Proc
Procedure RANBOWCOL2
Add T,1,0 To 31
SUB[T2,31,0]
Rainbow 0,T,70,40
Rainbow 1,T2,111,35
Rainbow 2,T,159,40
Rainbow 3,T2,200,40
End Proc
Procedure SUB[T2,BEGIN,FINISH]
T2=T2-1
If T2<FINISH
T2=BEGIN
End If
End Proc
Procedure SETCULERS
Screen 0
Cls 0
Get Palette 1
Cls 0
End Proc
Procedure CLEER[SCRNO,WEVE_GOT_A_RAINBO,ITS_SCROLLIN,RANUMB,LONG]
Screen SCRNO
For COZ=0 To 31
RGB=Colour(COZ)
RGB=RGB-$1
Colour COZ,RBG
If WEVE_GOT_A_RAINBO
Rain(RANUMB,COZ)=0
End If
If ITS_SCROLLIN
RANBOWCOL
End If
PAUSE[LONG]
Next COZ
End Proc
Procedure PAUSE[TIME]
For PORSE=1 To TIME
Next PORSE
End Proc
Procedure DROPTEXT[SCRN,MESSAGE$,DISTACROSS,LINE,PAWZ,RAN1]
For A=1 To Len(MESSAGE$)
LETTER$=Mid$(MESSAGE$,A,1)
If LETTER$<>" "
If LETTER$="."
LETTER$="DT"
End If
If LETTER$="!"
LETTER$="EX"
End If
Restore LETTER$ : Read W,X,Y,Z
For FAD=30 To 0 Step -1
If RAN1
RANBOWCOL
End If
Screen Copy 1,W,X,Y,Z-FAD To SCRN,DISTACROSS,LINE,%11100000
PAUSE[PAWZ]
Next FAD
End If
DISTACROSS=DISTACROSS+33
Next A
End Proc
Procedure DROPTEXT2[SCRN,MESSAGE$,DISTACROSS,LINE,PAWZ,RAN1,RAN2]
For A=1 To Len(MESSAGE$)
LETTER$=Mid$(MESSAGE$,A,1)
If LETTER$<>" "
If LETTER$="."
LETTER$="DT"
End If
If LETTER$="!"
LETTER$="EX"
End If
Restore LETTER$ : Read W,X,Y,Z
OFFSET=0
For FAD=0 To 30
If RAN1
RANBOWCOL
Else
If RAN2
RANBOWCOL2
End If
End If
Screen Copy 1,W,Z-FAD,Y,(Z-FAD)+1 To SCRN,DISTACROSS,LINE-FAD,%11100000
'
If FAD<16
Screen Copy 1,W,Z-(FAD*2),Y,(Z-(FAD*2))+1 To SCRN,DISTACROSS+OFFSET,LINE+(FAD*2),%11100000
Inc OFFSET : Inc OFFSET
End If
Next FAD
End If
DISTACROSS=DISTACROSS+33
Next A
End Proc
A:
Data 5,120,40,150
B:
Data 45,120,80,150
C:
Data 85,120,120,150
D:
Data 125,120,160,150
E:
Data 165,120,200,150
F:
Data 205,120,240,150
G:
Data 245,120,280,150
H:
Data 5,152,40,182
I:
Data 45,152,80,182
J:
Data 85,152,120,182
K:
Data 125,152,160,182
L:
Data 165,152,200,182
M:
Data 205,152,240,182
N:
Data 245,152,280,182
O:
Data 5,184,40,214
P:
Data 45,184,80,214
Q:
Data 85,184,120,214
R:
Data 125,184,160,214
S:
Data 165,184,200,214
T:
Data 205,184,240,214
U:
Data 245,184,280,214
V:
Data 5,216,40,246
W:
Data 45,216,80,246
X:
Data 85,216,120,246
Y:
Data 125,216,160,246
Z:
Data 165,216,200,246
DT:
Data 215,216,240,246
EX:
Data 245,216,280,246