Set Buffer 50
' This is the source of the Fanatix Megademo 6 
' ALL code by JAG over 2 months of hard work.  
'
' Remember, this code is unlocked.  We don't mind people looking through 
'  for help in AMOS, but we cannot stand bloody code rippers!!!
'  We get ALL AMOS demos that are released, and with the new rules 
'  from Sandra Sharkey, we will look through your code to check for
'  lame code ripping...  And if we find that you have, we will tell
'  everybody how utterly talentless you really are...  It is in no way 
'  clever to rip off other peoples code, anyone can do that. 
'
' While looking about you may notice that the 'HOW I WON THE WAR' code 
'  (or part of it) is run before anything else!  This last minute botch
'  was used so the Amigas memory is allocated properly, or the demo would
'  crash 90% of times.  Also, only the banks from the intro are stored in this 
'  code, the others have to be loaded from your original disks.
'
' Good luck in understanding all this, as the code is spaghetti..... 
'
' We are available for hire as freelance AMOS programmers, so contact
'  us if you want something written. (Not likely after looking through this!!) 
'
' This code must not be edited and recompiled by PD libraries. 
'
Led Off : Degree : Music 1
Dim CX#(720),A(3),B(3),FL$(5),CX(720)
Dim XC(4),YC(4),XIC(4),YIC(4)
Dim VU(4),C0(16),C1(16),C2(16),C3(16)
Dim X#(4),SB(4),AN$(10),X2#(4),SB2(4)
Shared XC(),YC(),XIC(),YIC()
Shared CX#(),CX(),A(),B(),F,T$,T1$,T2$,T3$,T0$,X,Y,XI,YI,FL$(),A$,B$,C$,D$,E$
Shared VU(),C0(),C1(),C2(),C3(),CH,X#(),SB(),AN$(),X2#(),SB2()
Global XC(),YC(),XIC(),YIC()
Global CX#(),CX(),A(),B(),F,T$,T1$,T2$,T3$,T0$,X,Y,XI,YI,FL$(),A$,B$,C$,D$,E$
Global VU(),C0(),C1(),C2(),C3(),CH,X#(),SB(),AN$(),X2#(),SB2()
No Mask : For F=1 To 31 : Make Mask F : Next F
Screen Open 0,750,380,8,Lowres : Flash Off : Curs Off : Cls 0 : Hide On 
Screen Open 1,750,380,8,Lowres : Flash Off : Curs Off : Cls 0
Screen Display 0,,30,,
Screen Display 1,,30,,
Wait Vbl : Dual Playfield 0,1
Screen Hide 0
Screen Open 2,800,30,8,Lowres : Flash Off : Hide On : Curs Off : Cls 0
Screen Display 2,110,280,, : Get Sprite Palette 
Screen 0 : Palette 0,$F00,$D00,$B00,$900,$700,$500,$300,0,$F,$D,$B,$9,$7,$5,$3
For F=16 To 28 Step 4 : Colour F,$0 : Colour F+1,$CCD : Colour F+2,$889 : Colour F+3,$334 : Next F
X=-10
For F=0 To 740 Step 10
Add X,10
For G=-120 To 300 Step 60
If(Cos(X)*10)+G<-90 Then Goto N
If(Cos(X)*10)+G>350 Then Goto N
Screen 0 : Paste Bob F,((Cos(X))*10)+G,2
N:
Next G
For G=-120 To 300 Step 60
If(Cos(X)*35)+G<-90 Then Goto N2
If(Cos(X)*35)+G>350 Then Goto N2
Screen 1 : Paste Bob 740-F,((Cos(X))*35)+G,2
N2:
Next G
Next F
For F=0 To 380 Step 2 : Screen 0 : Ink 0 : Draw 0,F To 750,F : Next F
Screen Offset 0,1,1 : Screen Offset 1,1,1
CH=1
   T$="  FANATIX PRESENT....         MEGADEMO 6!!!!!      AFTER A LONG WAIT, (WELL NOT THAT LONG), WE ARE BACK WITH A "
T$=T$+"NEW TWO DISK MEGADEMO..  IT USES 2 DRIVES, AND ALL THE MEMORY I COULD SQUEEZE OUT FROM A 1 MEG AMIGA (IT WAS WRITTEN"
T$=T$+" ON A 1.5 MEG MACHINE, AND THAT RAN OUT SOMETIMES!!!)....    SO IF THIS MEGADEMO CRASHES OUT OR STARTS JERKING REALLY BADLY, THEN"
T$=T$+" RESET AND RELOAD COS YOUR MACHINE HAS JUST RUN OUT OF CHIP MEM.  THIS MEGADEMO IS PARTICULARLY BAD ON THE CHIP MEM SIDE, COPPERBITZ LEAVES"
T$=T$+" NOT ENOUGH EVEN FOR A LOGO, AND THE MUSIC IS SMALL TOO...  THIS INTRO WILL BE USED ON THE FRONT OF ALL OUR PRODUCTIONS FROM NOW ON, IT IS THE NEW FANATIX COPPER INTRO!!"
T$=T$+"      IT WAS CODED BY JAG, GFX BY JAG, FONT BY RSI, AND MUSIC BY 4 MAT OF ANARCHY...    THE TUNE IS FAKE CHIP MUSIC, AND I HAVE A FEW DISKS FULL OF IT.  THE MODULES ARE REALLY SMALL"
T$=T$+", BUT I REALLY LIKE THE SOUND OF IT!!!          HERES CHAOS...                  GROOVE, WE HAD SO FEW IDEAS FOR THIS MEGADEMO THAT WE DID A GAME!!!  CUTEFISH IS REALLY COOL, I DID THE EXCELLENT"
T$=T$+" GFX, JAG DID THE MINDBLOWING CODE, AND THE SOUNDTRACK IS A HUGE 2000K MASTERPIECE WRITTEN BY KEFRENS..(ALL THIS IS CRAP - JAG)   AS FOR THE OTHER BITS, THE MAJORITY OF THEM ARE TECHNICALLY"
T$=T$+" BRILLIANT (MORE CRAP - JAG), EXCEPT FOR 'HOW I WON THE WAR' (I DIDN'T DO THE LOGO, HONEST)..  BY THE WAY, YOU WILL LIKE MY LOGO ON FULL METAL VECTORS, "
T$=T$+"CHECK OUT THE SKULLS.  ANYWAY, I MUST GO NOW, AS JAG IS ITCHING TO GET AT THE KEYBOARD (OH NO I'M NOT - JAG)....                IT'S NO FUN HAVING THE"
T$=T$+" KEYBOARD PASSED BACK TO YOU.  THERE IS NOTHING TO SAY SO I WILL GREET PEOPLE...   BITMAP, CYBORNETICS, ALMIGHTY, THE BEHOLDER, ROBOTS, HANISSIS 5, SANDRA SHARKEY, SYNTEX, ANNE AND"
T$=T$+" LEN TUCKER, FRANCOIS LIONET, AND ALL THE REST...   BY THE WAY, THE LOADER IS CODED BY JAG, GFX BY JAG, AND MUSIC BY DEFJAM.   SEE YA...                          "
A$=" R:  L X=1; P; F:  L X=X+10; I X>360 J R; P; J F;"
B$=" L X=301; B:  L X=X-10; I X<1 J R; P; J B; R:  L X=361; J B;"
C$=" R:  L Y=1; P; D:  L Y=Y+2; I Y>60 J R; P; J D;"
SC$="L RB=0; R:  L RA=1; P; L:  L RA=RA+4; L X=RA; L RB=RB+1; I RB=4 J G; H:  I X>384 J R; P; J L; G:  L RB=0; J H;"
Channel 0 To Screen Offset 0 : Channel 2 To Screen Offset 0
Channel 1 To Screen Offset 1 : Channel 3 To Screen Offset 2
Amal 0,C$ : Amal 1,A$ : Amal 2,B$ : Amal 3,SC$ : Amal On 
Screen Show 0 : Screen 2
Do 
Add X,3 : If X>360 Then Add X,-360
Add Y,4 : If Y>360 Then Add Y,-360
Sprite 0,(Sin(X)*120)+288,(Sin(Y)*100)+148,3
Inc T : If T=300 Then T=0 : Gosub CCOL
Gosub MESSAGE
Wait Vbl 
If Mouse Key=1 Then Goto DIE
Loop 
MESSAGE:
B=Asc(Mid$(T$,CH,1))
SC=Amreg(0)
N=Amreg(1)
If N=3 Then Gosub NCHAR
Return 
NCHAR:
Screen 2
Add CH,1,1 To Len(T$)
Paste Bob SC-16,5,B : Paste Bob SC+368,5,B
Return 
CCOL:
Screen 0
Inc CTYPE : If CTYPE=7 Then CTYPE=1
If CTYPE=1 Then Fade 3,0,$F00,$D00,$B00,$900,$700,$500,$300,0,$F,$D,$B,$9,$7,$5,$3
If CTYPE=2 Then Fade 3,0,$F0,$D0,$B0,$90,$70,$50,$30,0,$F,$D,$B,$9,$7,$5,$3
If CTYPE=3 Then Fade 3,0,$F,$D,$B,$9,$7,$5,$3,0,$F00,$D00,$B00,$900,$700,$500,$300
If CTYPE=4 Then Fade 3,0,$F00,$D00,$B00,$900,$700,$500,$300,0,$F0,$D0,$B0,$90,$70,$50,$30
If CTYPE=5 Then Fade 3,0,$F0,$D0,$B0,$90,$70,$50,$30,0,$F00,$D00,$B00,$900,$700,$500,$300
If CTYPE=6 Then Fade 3,0,$F,$D,$B,$9,$7,$5,$3,0,$F0,$D0,$B0,$90,$70,$50,$30
Return 
DIE:
Amal Off 
Screen 2 : Fade 3 : Wait 45
Sprite Off : Screen 0 : Fade 3
For F=63 To 0 Step -1
Mvolume F : For T=0 To 500 : Next T
Next F
Screen Close 2 : Screen Close 0 : Music Off : Mvolume 63
T$=" "
Erase 1 : Erase 5
Proc LAME
Load "lo14",14 : Load "lo15",15
LDER:
Load "lospr",1 : Load "lomus",3
Led Off : Music 1
Screen Open 0,320,216,8,Lowres : Flash Off : Curs Off : Cls 0 : Hide On 
Update On : Synchro On 
Set Rainbow 1,1,64,"(1,2,15)(1,-2,15)","(1,2,15)(1,-2,15)","(1,2,15)(1,-2,15)"
Rainbow 1,0,274,30
Unpack 14 To 0 : Fade 3,0,4095,2783,1471,141,90,54,35 : Wait 45
Synchro Off 
For F=18 To 31 Step 2
Colour(F),$22F : Colour(F-1),$99F
Flash F,"(fff,3)(ddd,3)(bbb,3)(999,3)(777,3)(555,3)(333,3)(111,3)(333,3)(555,3)(777,3)(999,3)(bbb,3)(ddd,3)"
Flash F+1,"(ddd,3)(bbb,3)(999,3)(777,3)(555,3)(333,3)(111,3)(000,3)(111,3)(333,3)(555,3)(777,3)(999,3)(bbb,3)"
Wait Rnd(5)+2
Next F
A$=" L X=Z(320)+128; L R0=Z(7)+1; L:  L X=X+R0; I X>448 J R; P; J L; R:  L X=126;  L R0=Z(7)+1; J L; "
Set Rainbow 0,6,16,"","","" : Rainbow 0,0,136,16
Rain(0,0)=$B00 : Rain(0,1)=$F33 : Rain(0,2)=$F77 : Rain(0,3)=$FAA : Rain(0,4)=$FAA : Rain(0,5)=$F77 : Rain(0,6)=$F33 : Rain(0,7)=$B00
For F=8 To 15 : Rain(0,F)=Colour(6) : Next F
For F=8 To 38 : Sprite F,10,((F-7)*7)+45,1 : Next F
For F=8 To 40 : Channel F To Sprite F : Amal F,A$ : Next F
Amal On 
R=0 : H=136
Do 
If Fire(1)=-1 Then Goto NDEMO
If Jup(1)=-1 Then Gosub UP
If Jdown(1)=-1 Then Gosub DWN
Synchro : Wait Vbl 
Loop 
DWN:
If H=224 Then Return 
For F=H To H+10
Rainbow 0,0,F,16
Synchro : Wait Vbl 
Next F
H=F
Return 
UP:
If H=136 Then Return 
For F=H To H-10 Step -1
Rainbow 0,0,F,16
Synchro : Wait Vbl 
Next F
Rainbow 0,0,F,16
H=F
Return 
NDEMO:
Rainbow 0,0,350,16 : Rainbow Del 0
Flash Off : Fade 3
For F=63 To 0 Step -1
Mvolume F : For T=0 To 500 : Next T : Next F
Sprite Off : Amal Off 
Screen Close 0 : Rainbow Del 1
Music Off : Mvolume 63
Update On : Synchro On 
If H=136 Then Goto UNLIMITEDBOBS2
If H=147 Then Goto FULLMETALVECTORS
If H=158 Then Goto HOWIWONTHEWAR
If H=169 Then Goto LIGHTSALIVE
If H=180 Then Goto PSYCHOBOBS
If H=191 Then Goto COPPERBITZ
If H=202 Then Goto MULTISCROLL3
If H=213 Then Goto CUTEFISH
If H=224 Then Goto OUTRO
UNLIMITEDBOBS2:
If Exist("FXMegademo6DiskA:")=0 Then Gosub DISKCHANGEA
Dir$="FXMegademo6DiskA:"
Gosub LDING
Erase 1
Load "ubspr",1 : Load "ubmus",3
Gosub LDINGSTOP
Proc UNLIMITEDBOBS2
Erase 1
Goto LDER
FULLMETALVECTORS:
If Exist("FXMegademo6DiskA:")=0 Then Gosub DISKCHANGEA
Dir$="FXMegademo6DiskA:"
Gosub LDING
Erase 1
Load "fmvmus",3 : Load "fmv5",5
Gosub LDINGSTOP
Proc FULLMETALVECTORS
Erase 5
Goto LDER
HOWIWONTHEWAR:
If Exist("FXMegademo6DiskA:")=0 Then Gosub DISKCHANGEA
Dir$="FXMegademo6DiskA:"
Gosub LDING
Erase 1
Load "warspr",1 : Load "warmus",3 : Load "war6",6 : Load "war7",7
Gosub LDINGSTOP
Proc HOWIWONTHEWAR
Erase 1 : Erase 6 : Erase 7
Goto LDER
LIGHTSALIVE:
If Exist("FXMegademo6DiskB:")=0 Then Gosub DISKCHANGEB
Dir$="FXMegademo6DiskB:"
Gosub LDING
Erase 1
Load "laspr",1 : Load "lamus",3 : Load "la6",6
Gosub LDINGSTOP
Proc LIGHTSALIVE
Erase 1 : Erase 6
Goto LDER
PSYCHOBOBS:
If Exist("FXMegademo6DiskB:")=0 Then Gosub DISKCHANGEB
Dir$="FXMegademo6DiskB:"
Gosub LDING
Erase 1
Load "pbspr",1 : Load "pbmus",3 : Load "pb5",5
Gosub LDINGSTOP
Proc PSYCHOBOBS
Erase 1 : Erase 5
Goto LDER
COPPERBITZ:
If Exist("FXMegademo6DiskB:")=0 Then Gosub DISKCHANGEB
Dir$="FXMegademo6DiskB:"
Gosub LDING
Erase 1
Load "cbspr",1 : Load "cbmus",3
Gosub LDINGSTOP
Proc COPPERBITZ
Erase 1
Goto LDER
MULTISCROLL3:
If Exist("FXMegademo6DiskB:")=0 Then Gosub DISKCHANGEB
Dir$="FXMegademo6DiskB:"
Gosub LDING
Erase 1
Load "msspr",1 : Load "msmus",3 : Load "ms5",5 : Load "ms6",6
Gosub LDINGSTOP
Proc MULTISCROLL
Erase 1 : Erase 5 : Erase 6
Goto LDER
CUTEFISH:
If Exist("FXMegademo6DiskB:")=0 Then Gosub DISKCHANGEB
Dir$="FXMegademo6DiskB:"
Gosub LDING
Erase 1
Load "cfspr",1 : Load "cfmus",3 : Load "cf5",5 : Load "cf6",6 : Load "cf7",7
Gosub LDINGSTOP
Proc CUTEFISH
Erase 1 : Erase 5 : Erase 6 : Erase 7
Goto LDER
OUTRO:
If Exist("FXMegademo6DiskB:")=0 Then Gosub DISKCHANGEB
Dir$="FXMegademo6DiskB:"
Gosub LDING
Erase 1
Load "oumus",3 : Load "ou5",5 : Load "ou6",6
Gosub LDINGSTOP
Proc OUTRO
Stop 
DISKCHANGEA:
Screen Open 0,320,120,8,Lowres : Flash Off : Curs Off : Cls 0 : Hide On 
Screen Display 0,128,-180,,
Palette 0,4095,166,1092,1911,2456,3258,4076
Paste Bob 100,0,5
For F=-180 To 80 Step 2
Screen Display 0,128,F,,
Wait Vbl 
Next F
Repeat 
Until Exist("FXMegademo6DiskA:")=-1
Wait 100
For F=80 To -180 Step -2
Screen Display 0,128,F,,
Wait Vbl 
Next F
Screen Close 0
Return 
DISKCHANGEB:
Screen Open 0,320,120,8,Lowres : Flash Off : Curs Off : Cls 0 : Hide On 
Screen Display 0,128,-180,,
Palette 0,4095,166,1092,1911,2456,3258,4076
Paste Bob 100,0,6
For F=-180 To 80 Step 2
Screen Display 0,128,F,,
Wait Vbl 
Next F
Repeat 
Until Exist("FXMegademo6DiskB:")=-1
Wait 100
For F=80 To -180 Step -2
Screen Display 0,128,F,,
Wait Vbl 
Next F
Screen Close 0
Return 
LDING:
Unpack 15 To 0
Screen Display 0,128,-300,,
Shift Down 1,2,23,1
For F=-300 To 40 Step 2
Screen Display 0,128,F,,
Wait Vbl 
Next F
Return 
LDINGSTOP:
For F=40 To -300 Step -2
Screen Display 0,128,F,,
Wait Vbl 
Next F
Shift Off : Screen Close 0
Return 
Procedure UNLIMITEDBOBS2
Led Off : Music 1 : Degree : Hide On 
No Mask : For F=1 To 3 : Make Mask F : Next F
For F=1 To 720 : CX#(F)=Sin(F) : Next F
CH=0
Screen Open 3,800,30,8,Lowres : Flash Off : Curs Off : Cls 0
Screen Display 3,110,274,,
Palette 0,4095,3517,3212,2650,2104,1815,1285
   T$="   HI AGAIN!!!  DO YOU REMEMBER THE FIRST FANATIX UNLIMITED BOBS DEMO???  WELL, THIS ONE HAS"
T$=T$+" TWICE THE PATTERNS, A SCROLLER, AND A CLEVER TWIST.  LOOK CLOSELY AT THE BALLS...  1, 2, 3 COLOUR TYPES"
T$=T$+"!!!  BUT USING THE NORMAL METHOD FOR UNLIMITED BOBS, YOU WOULD GET A RED BOB FLICKING BACKWARDS AND FORWARDS WOULDNT IT?? (THIS"
T$=T$+" WILL ONLY MEAN ANYTHING TO PROGRAMMERS, SO DONT WORRY IF YOU DONT UNDERSTAND.)      WELL, MY NEW ROUTINE HAS SIDESTEPPED THIS PROBLEM"
T$=T$+", MAKING IT POSSIBLE TO USE MULTICOLOURED BOBS.  ANIMATING EM IS EASY.  THIS IS HARDER....   PRESS THE RIGHT MOUSE TO CHANGE PATTERNS, AND THE LEFT TO EXIT."
T$=T$+"       THE CODING IS BY JAG (AS ALWAYS), THE GFX ARE BY CHAOS, AND THE MUSIC IS BY C.P.S.  (RIPPED FROM THEIR STATION DEMO)......"
T$=T$+"   FIRST THE GREETS...  GREETS FLY OUT TO BITMAP (WHAT DO YOU THINK OF THIS NEW MEGADEMO???), CYBORNETICS (BOING!), BEHOLDER (HI.), ALMIGHTY (WALLA NALLA FWEEP!)"
T$=T$+", SANDRA SHARKEY (DO YOU GET FED UP OF READING SCROLLERZ???), ANNE AND LEN TUCKER (HELLO!), SYNTEX (BONJOUR.), ROBOTS (DO YOU STILL WRITE DEMOS??), ETC, ETC...."
T$=T$+"            I HAVE JUST REMEMBERED SOMETHING.  THIS IS TO A. AND L. TUCKER...  IN THE MAGAZINE, THERE WAS A P.D. CHART (TOP SELLERS, OR SOMETHING).  WOULDNT IT"
T$=T$+" BE BETTER IF IT ONLY INCLUDED PD AS IMPLIED IN ITS TITLE??  INSTEAD WE SEE LOADS OF LICENSEWARE STUFF (NOT PD AS POINTED OUT FREQUENTLY BY SANDRA!!)..."
T$=T$+"  I HAVE NOTING MORE TO WRITE EXCEPT THAT I HAVE A MEGADRIVE FOR SALE AT A GOOD PRICE, SO CONTACT ME IF ANYBODY IS INTERESTED (ADDRESS ALL OVER THE PLACE!)"
T$=T$+"    THIS REALLY IS THE PERFECT SALES GROUND!!!     BYEEEEEE........                "
A$="L R1=0; R:  L R0=1; P; L:  L R0=R0+4; L X=R0; L R1=R1+1; I R1=8 J G; H:  I X>384 J R; P; J L; G:  L R1=0; J H;"
Channel 0 To Screen Offset 3
Amal 0,A$ : Amal On 
For F=0 To 2
Screen Open F,255,230,16,Lowres : Flash Off : Curs Off : Cls 0
Screen Display F,170,40,,
Get Sprite Palette 
Next F
NEXPAT:
Read A(1),A(2),A(3),XI,B(1),B(2),B(3),YI,SX#,SXI#,SY#,SYI#
Gosub MESSAGE : Wait Vbl 
If A(1)=999 Then Restore PATDATA : Goto NEXPAT
BB=1
Do 
For F=0 To 2
Screen F : Screen To Front F
If BB=1 Then Palette $0,3840,3072,2304,1536,768,15,12,9,6,3,3855,3084,2313,1542,771
If BB=3 Then Palette $0,15,12,9,6,3,3855,3084,2313,1542,771,3840,3072,2304,1536,768
If BB=2 Then Palette $0,3855,3084,2313,1542,771,3840,3072,2304,1536,768,15,12,9,6,3
Add A(F+1),XI : If A(F+1)>360 Then Add A(F+1),-360
Add B(F+1),YI : If B(F+1)>360 Then Add B(F+1),-360
SX#=SX#+SXI# : If SX#>360 Then SX#=SX#-360
SY#=SY#+SYI# : If SY#>360 Then SY#=SY#-360
Paste Bob(CX#(A(F+1))*(CX#(SX#)*100))+115,(CX#(B(F+1))*(CX#(SY#)*100))+105,BB
Gosub MESSAGE
Wait Vbl 
If Mouse Key=2 Then Goto NPAT
If Mouse Key=1 Then Goto DIE
Next F
Add BB,1,1 To 3
Loop 
NPAT:
Amal Freeze 
Screen To Front 0 : Screen 0 : Fade 3
For F=0 To 45 : Wait Vbl : Next F
Screen 1 : Cls 0 : Screen 2 : Cls 0 : Screen 0 : Cls 0
Amal On 
Goto NEXPAT
MESSAGE:
SC=Amreg(0,0)
N=Amreg(0,1)
If N=7 Then Gosub NCHAR
Return 
NCHAR:
Screen 3
Add CH,1,1 To Len(T$)
B=Asc(Mid$(T$,CH,1))
Paste Bob SC-32,0,B : Paste Bob SC+352,0,B
Return 
PATDATA:
Data 1,3,5,6,1,2,3,3,90,0.02,90,0.02
Data 91,92,93,3,1,2,3,3,90,3.1,90,3.1
Data 91,92,93,3,1,2,3,3,90,0.2,90,0.2
Data 91,93,95,6,1,2,3,3,90,1,90,3
Data 91,92,93,3,1,2,3,3,90,0,90,2.03
Data 91,92,93,3,1,2,3,3,90,4.1,90,4.1
Data 91,93,95,6,1,3,5,6,90,0.04,180,0.04
Data 91,92,93,3,1,2,3,3,90,2,90,0
Data 91,92,93,3,1,2,3,3,90,1.1,90,1.1
Data 91,92,93,3,1,2,3,3,90,1.1,90,3.2
Data 999,1,1,1,1,1,1,1,1,1,1,1
DIE:
Amal Off 
Screen To Front 0 : Screen 0 : Fade 3 : Wait 45
Screen 1 : Cls 0 : Screen 2 : Cls 0 : Screen 0 : Cls 0
Screen 3 : Fade 5
For F=63 To 0 Step -1
Mvolume F : For T=0 To 500 : Next T : Next F
Music Off 
Mvolume 63
For F=0 To 3 : Screen Close F : Next F
T$=" "
End Proc
Procedure FULLMETALVECTORS
Led Off : Degree 
Td Dir "FXMegademo6DiskA:Objects/"
Restore OBJECTNAMEDATA
For F=1 To 15
Read OBJECT$
Td Load OBJECT$
Next F
Td Keep On 
Music 1
Gosub ITRO
Wait 75
Screen Open 0,320,200,16,Lowres : Flash Off : Curs Off : Cls 0 : Hide On 
Double Buffer : Autoback 0
FL$(1)="(FFF,3)(00F,3)(00D,3)(00B,3)(009,3)(007,3)(005,3)(003,3)(001,3)"
FL$(2)="(f00,3)(d00,3)(b00,3)(900,3)(700,3)(500,3)(300,3)(100,3)(300,3)(500,3)(700,3)(900,3)(b00,3)(d00,3)"
FL$(3)="(0f0,1)(0d0,1)(0b0,1)(090,1)(070,1)(050,1)(030,1)(010,20)(030,1)(050,1)(070,1)(090,1)(0b0,1)(0d0,1)"
FL$(4)="(ff0,2)(dd0,2)(bb0,2)(990,2)(770,2)(550,2)(330,2)(110,2)(330,1)(550,1)(770,1)(990,1)(bb0,1)(dd0,1)"
FL$(5)="(f07,1)(000,1)"
Set Rainbow 0,0,16,"","",""
Rainbow 0,0,34,16
Set Rainbow 1,0,16,"","",""
Rainbow 1,0,56,16
Restore RDATA : For F=0 To 15 : Read R : Rain(0,F)=R : Rain(1,F)=R : Rainbow 0,0,34,16 : Rainbow 1,0,56,16 : Wait Vbl : Next F
For F=56 To 251 : Rainbow 1,0,F,16 : Wait Vbl : Next F : Rainbow 1,0,251,16
Td Screen Height 200
Restore OBJDATA
Palette 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
NOBJECT:
Read OBJECT$,FLCOL,FLTYPE,X,Y,Z,DIST,XI,YI,ZI,DI,C1,C2,C3,C4,C5,C6,C7,C8
If OBJECT$="endofthefuckingobjects" Then Restore OBJDATA : Goto NOBJECT
Td Object 1,OBJECT$,0,0,0,0,0,0
Fade 5,,,,,,,,,C1,C2,C3,C4,C5,C6,C7,C8
Flash FLCOL,FL$(FLTYPE)
T=0
Repeat 
Add X,XI : If X>360 Then Add X,-360
Add Y,YI : If Y>360 Then Add Y,-360
Add Z,ZI : If Z>360 Then Add Z,-360
Add DIST,DI : If DIST>360 Then Add DIST,-360
If OBJECT$="inbox" Then Td Move 1,0,0,670
If OBJECT$<>"inbox" Then Td Move 1,(Sin(DIST+90)*750),(Sin(DIST)*200)+200,(Sin(DIST)*1500)+2500
Td Angle 1,X*182,Y*182,Z*182
Td Cls 
Td Redraw 
Screen Swap 
Wait Vbl 
If Mouse Key=1 Then Goto DIE
Inc T
Until T=510
Flash Off : Fade 5
If OBJECT$="inbox" Then Wait 75 : Td Kill 1 : Goto NOBJECT
For F=(Sin(DIST)*1500)+2500 To 15000 Step 400
Td Move 1,(Sin(DIST+90)*750),(Sin(DIST)*200)+140,F
Cls 0 : Td Redraw 
Screen Swap : Wait Vbl 
Next F
Td Kill 1
Goto NOBJECT
ITRO:
Unpack 5 To 0 : Hide On 
Fade 5,0,4095,3549,2730,2184,1365,819,3072 : Wait 75
Wait 75
Fade 2,,,,,,,,,$F07 : Wait 30
Fade 2,,,,,,,,,,$F07 : Wait 30
Fade 2,,,,,,,,,,,$F07 : Wait 30
Fade 2,,,,,,,,,,,,$F07 : Wait 30
Fade 2,,,,,,,,,,,,,$F07 : Wait 30
Fade 2,,,,,,,,,,,,,,$F07 : Wait 30
Fade 2,,,,,,,,,,,,,,,$F07 : Wait 30
Fade 2,,,,,,,,,,,,,,,,$F07 : Wait 30
Fade 1,,,,,,,,,$FFF,$FFF,$FFF,$FFF,$FFF,$FFF,$FFF,$FFF : Wait 15
Fade 2,,,,,,,,,$0,$0,$0,$0,$0,$0,$0,$0 : Wait 30
Wait 75
Fade 2,,,,,,,,,,,,,,,,,$FFF : Wait 60
Fade 2,,,,,,,,,,,,,,,,,,$FFF : Wait 60
Fade 2,,,,,,,,,,,,,,,,,,,$FFF : Wait 60
Fade 2,,,,,,,,,,,,,,,,,$F07,$F07,$F07 : Wait 60
Fade 2,,,,,,,,,,,,,,,,,$0,$0,$0 : Wait 60
Wait 75
Fade 1,,,,,,,,,,,,,,,,,,,,$FFF : Wait 15
Fade 1,,,,,,,,,,,,,,,,,,,,$F07 : Wait 15
Fade 1,,,,,,,,,,,,,,,,,,,,,$FFF : Wait 15
Fade 1,,,,,,,,,,,,,,,,,,,,,$F07 : Wait 15
Fade 1,,,,,,,,,,,,,,,,,,,,,,$FFF : Wait 15
Fade 1,,,,,,,,,,,,,,,,,,,,,,$F07 : Wait 15
Fade 1,,,,,,,,,,,,,,,,,,,,,,,$FFF : Wait 15
Fade 1,,,,,,,,,,,,,,,,,,,,,,,$F07 : Wait 15
Fade 1,,,,,,,,,,,,,,,,,,,,$FFF,$FFF,$FFF,$FFF : Wait 15
Fade 1,,,,,,,,,,,,,,,,,,,,0,0,0,0 : Wait 15
Fade 5 : Wait 75
Return 
DIE:
Flash Off : Fade 5
For F=63 To 0 Step -1
Mvolume F : For T=0 To 500 : Next T : Next F
Td Kill 1
Cls 0 : Td Cls 
Screen Swap 
Music Off : Mvolume 63
For F=251 To 34 Step -1
Rainbow 1,0,F,16
Wait Vbl 
Next F
Rainbow 1,0,34,16
Rainbow Del 0 : Rainbow Del 1
Screen Close 0
Td Clear All : Td Quit 
Dir$="FXMegademo6DiskA:"
RDATA:
Data $313,$535,$757,$979,$B9B,$DBD,$FDF,$FFF,$FFF,$FDF,$DBD,$B9B,$979,$757,$535,$313
OBJDATA:
Data "flcube",11,1,0,0,0,0,5,3,4,4,$F,$9,$5,0,0,0,0,0
Data "wierdtri",10,3,0,0,0,0,2,1,3,4,$FFF,$F00,$F0,$FF0,0,0,0,0
Data "fxship1",12,2,0,0,0,0,4,4,2,2,$555,$CCC,$999,$777,$999,$777,$555,$333
Data "hedron",15,1,0,0,0,0,3,3,3,3,$FFF,$DDD,$BBB,$999,$777,$555,0,0
Data "fxship2",10,2,0,0,0,0,2,4,5,1,$FFF,$BBB,$DDD,$55,$65,$234,0,0
Data "wierdcube",15,1,0,0,0,320,1,3,5,3,$FFF,$BBB,$888,$555,0,0,0,0
Data "fxship3",11,2,0,0,0,0,4,4,2,2,$F0F,$F,$F0F,$F,$F,$F0F,$F00,$F41
Data "ring",13,4,0,0,0,0,5,4,3,2,$F0F,$D0D,$B0B,$909,$D0D,0,0,0
Data "fxship4",12,2,0,0,0,0,1,0,3,3,$FFF,$DDD,$BBB,$999,$53,$777,$555,$333
Data "inbox",15,1,0,0,0,0,5,3,4,0,$F,$B,$8,$5,0,0,0,0
Data "fxship5",10,2,0,0,0,0,2,2,4,3,$F0F,$BBB,$999,$999,$F,$555,$333,$333
Data "explcube",15,1,0,0,0,0,3,4,2,5,$F0F,$F0,$FF0,$FF,$F00,0,0,0
Data "stmouse",10,5,0,0,0,0,3,0,0,3,$FFF,$DDD,$BBB,$999,$777,0,0,0
Data "fxcube",15,1,0,0,0,0,5,5,5,5,$F00,$FF0,$F00,$F,$F00,$F00,0,0
Data "endofthefuckingobjects",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
OBJECTNAMEDATA:
Data "flcube","wierdcube","inbox","wierdtri","hedron","ring","fxship1"
Data "fxship2","fxship3","fxship4","fxship5","tricube","explcube"
Data "stmouse","fxcube"
End Proc
Procedure HOWIWONTHEWAR
Degree : Led Off : Music 1
No Mask : Make Mask 1 : Make Mask 2
For F=1 To 360 : CX(F)=(Sin(F)*50)+100 : CX(F+360)=CX(F) : Next F
Unpack 6 To 0 : Hide On 
Screen Display 0,128,35,,
Double Buffer 
Bob 1,56,108,1 : Bob 2,253,103,2
Screen Open 1,800,32,4,Lowres
Flash Off : Hide On : Curs Off : Cls 0
Palette 0,2511,873,327
Screen Display 1,110,275,,
Unpack 7 To 2 : Screen Display 2,128,199,,
Shift Down 1,4,31,1
Screen 1
Set Rainbow 0,0,31,"(1,1,15)(1,-1,15)","",""
Rainbow 0,0,40,31
Set Rainbow 1,0,31,"","(1,1,15)(1,-1,15)",""
Rainbow 1,0,40,31
Channel 1 To Bob 1 : Channel 2 To Bob 2
Channel 3 To Screen Offset 1
Channel 4 To Rainbow 0 : Channel 5 To Rainbow 1
   T$="     YYYYEEEEAAAAHHHH!!!!  ANOTHER FANATIX DEMO.  BIT STUPID ISN'T IT???    ANYWAY, IT'S CALLED 'HOW I WON"
T$=T$+" THE WAR'....     CODING BY JAG, LOGO BY CHAOS, DUNNO WHO DIGITISED THE PICTURE...       OH, AND THE MUSIC IS BY"
T$=T$+" SHARE AND ENJOY.       WHY, OH WHY, OH WHY DOES THE COMPILER NOT LIKE THE 3D EXTENSION???  IT IS REALLY PISSING ME OFF!"
T$=T$+"     I DON'T REALLY WANT TO TYPE MUCH TODAY, AS THERE ARE TWO IRRITATING PEOPLE RAISING HELL IN MY ROOM...  THEY WON'T GO AWAY!"
T$=T$+"   I THINK THEY SHOULD JUST LEAVE!           THE DATE IS:  22.9.91, AND WE ARE TRYING TO WORK OUT HOW TO WRITE AN ARTICLE FOR"
T$=T$+" 'TOTALLY AMOS' DISC MAGAZINE...  UNFORTUNATELY, AT THE MOMENT I AM TOO BUSY WITH COLLEGE WORK, (AND DEMO WRITING OF COURSE)!!!!"
T$=T$+"  BY THE WAY, DEJA VU P.D. PRICES MAKE AMIGANUTS LOOK CHEAP!!!  (WELL NOT QUITE, TO BE FAIR!)..  AS I WAS SAYING, WE ARE DOING AN ARTICLE"
T$=T$+" FOR TOTALLY AMOS (AND PERHAPS A ROUTINE OR TWO).  IT WILL PROBABLY BE ABOUT HOW WE PUT DEMOS TOGETHER (SELLOTAPE IS A GOOD START!), OR WHERE"
T$=T$+" WE GET OUR DEMO IDEAS FROM.....    I HAVE ASKED CHAOS TO WRITE SOMETHING, BUT HE IS SSSOOOOOO LAME, HE JUST CURLED UP AND DIED.  (PITY, I'M SURE!)"
T$=T$+"      AHA!  IT IS NOW 5 HRS LATER, AND I HAVE MANAGED TO GET THE COMPILER TO ACCEPT THE 3D.  THIS (OF COURSE) IS RELATIVELY GOOD!"
T$=T$+" AND I CAN START DOING OBJECTS FOR OUR VECTOR DEMO.  I HAVE DRAWN A FEW ALREADY, AND SOME OBJECTS ARE STRANGE TO SAY THE LEAST, BUT I MAY"
T$=T$+" NOT USE THEM IN THE FINISHED DEMO...  WHO KNOWS, THE OBJECTS THAT DON'T MAKE THE MARK MAY BE SHOVED IN AT THE END OF THAT DEMO AS A BONUS PART.."
T$=T$+"  I DON'T KNOW.....        ACTUALLY, CHAOS HAS JUST POINTED OUT THAT FANATIX HAVE BEEN GOING PROPERLY SINCE JUST BEFORE APRIL, AND ALREADY WE HAVE"
T$=T$+" DONE 5 MEGADEMOS, A MUSIC DISK, AND A LONG PLAYING DEMO, WITH MEGADEMO 6 (THIS ONE), AND A HUGE VECTOR DEMO COMING SOON!!!  I'M NOT ENTIRELY SURE"
T$=T$+" HOW WE HAVE MANAGED THIS, SO I AM NOT GOING TO QUESTION THE FACT...  NO GREETS IN THIS ONE.      TIME TO GO..  BBBYYYEEE.........                         "
A1$="R:  L Y=110; L:  I Y<110 J R; L Y=Y-2; I V(0)>20 J U; O:  P; J L;  U:  L Y=122; J O;"
A2$="R:  L Y=105; L:  I Y<105 J R; L Y=Y-2; I V(2)>20 J U; O:  P; J L;  U:  L Y=117; J O;"
R$="L:  L Y=R0; P; J L;"
B$="L RB=0; R:  L RA=1; P; L:  L RA=RA+4; L X=RA; L RB=RB+1; I RB=8 J G; H:  I X>384 J R; P; J L; G:  L RB=0; J H;"
Amal 1,A1$ : Amal 2,A2$ : Amal 3,B$ : Amal 4,R$ : Amal 5,R$ : Amal On 
H1=108 : H2=103 : H=1 : CH=1
Screen 1
Do 
Add A,6 : If A>360 Then Add A,-360
SC=Amreg(0)
If Amreg(1)=7 Then Gosub NCHAR
Amreg(4,0)=CX(A) : Amreg(5,0)=CX(A+120)
Wait Vbl 
If Mouse Key=1 Then Goto DIE
Loop 
NCHAR:
B=Asc(Mid$(T$,CH,1))
Add CH,1,1 To Len(T$)
Paste Bob SC-32,0,B : Paste Bob SC+352,0,B
Return 
DIE:
Amal Off 
For F=0 To 1 : Rainbow Del F : Next F
Screen 2 : Shift Off 
Fade 3 : Wait 45 : Screen 1 : Fade 3 : Wait 45 : Screen 0 : Fade 3
For F=63 To 0 Step -1
Mvolume F : For T=0 To 500 : Next T : Next F
Bob Off 
Screen Close 1 : Screen Close 2 : Screen Close 0
Music Off : Mvolume 63
T$=" "
End Proc
Procedure LIGHTSALIVE
Led Off : Music 1
Mvolume 63
No Mask : For F=1 To 32 : Make Mask F : Next F
Unpack 6 To 0 : Hide On 
Set Rainbow 0,1,145,"(2,1,15)(2,-1,15)","(2,1,15)(2,-1,15)","(2,1,15)(2,-1,15)"
Rainbow 0,0,62,145
Rain(0,117)=$111 : Rain(0,118)=$333 : Rain(0,119)=$555 : Rain(0,120)=$777 : Rain(0,121)=$999
Rain(0,122)=$BBB : Rain(0,123)=$DDD : Rain(0,124)=$FFF : Rain(0,125)=$FFF : Rain(0,126)=$EEE
Rain(0,127)=$DDD : Rain(0,128)=$CCC : Rain(0,129)=$BBB : Rain(0,130)=$AAA : Rain(0,131)=$999
Rain(0,132)=$888 : Rain(0,133)=$777 : Rain(0,134)=$666 : Rain(0,135)=$555 : Rain(0,136)=$444
Rain(0,137)=$333 : Rain(0,138)=$222 : Rain(0,139)=$111 : Rain(0,140)=$0 : Rain(0,141)=$0 : Rain(0,142)=$0
For F=16 To 23 : Flash F,"(f00,200)(e20,3)(c40,3)(a60,3)(880,3)(6a0,3)(4c0,3)(2e0,3)(0f0,200)(2e0,3)(4c0,3)(6a0,3)(880,3)(a60,3)(c40,3)(e20,3)" : Next F
Screen Open 1,780,32,32,Lowres : Flash Off : Curs Off : Cls 0
Screen Display 1,110,260,,
Screen 0
Restore CDATA
For F=1 To 16 : Read C0(F),C1(F),C2(F),C3(F) : Next F
   T$="   HERE WE ARE AGAIN, IN ANOTHER FANATIX* DEMO...  WHAT DO YOU THINK OF THIS FONT???"
T$=T$+"  I LIKE THE WAY IT CHANGES COLOURS... ALL 30 OF THEM!!!    AS USUAL, THE CODING HAS BEEN DONE BY JAG, "
T$=T$+"SO WERE THE GFX...  THE MUSIC WAS MADE BY 4 MAT OF ANARCHY, AND IT IS CALLED"
T$=T$+": VOYAGE.  IT IS TAKEN FROM REFLECTIONS 2, A TRULY GREAT MUSIC DISK....    "
T$=T$+"    WATCH OUT FOR ONE OF OUR DEMOS IN THE PIPELINE AS IT WERE..  IT WILL BE A 3D VECTOR"
T$=T$+" EXTRAVAGANZA OF MASSIVE PROPORTIONS, BUT THERE ARE A FEW PROBLEMS AT THE MOMENT BECAUSE THE COMPILER WON'T RECOGNISE THE 3D EXTENSION"
T$=T$+"...  THAT WILL HAVE TO BE FIXED BEFORE THE DEMO SEES THE LIGHT OF DAY!!!  I JUST REMEMBERED, WE FORGOT TO GIVE AN ADDRESS IN MEGADEMO 5 FOR"
T$=T$+" PEOPLE WHO WANT TO CONTACT US?!?!?  IT IS:  FANATIX, 29 CAMBRIDGE ROAD, GODMANCHESTER, HUNTINGDON, CAMBS, PE18 8BT...  OR YOU CAN PHONE IF"
T$=T$+" YOU REALLY WANT TO..  THE NUMBER IS 0480 411568...  ASK FOR JAMES....      I AM NOW DOING MY A.LEVELS AT COLLEGE, AFTER A YEAR DOING RETAKES!!"
T$=T$+" THAT WAS THE PRICE OF BEING LAZY...   THEY HAVE LOADS OF PC MACHINES UP THERE, AND MOST OF THE HAVE HARD DRIVES!!  ANYWAY, I HAVE ALREADY MADE A VERSION"
T$=T$+" OF UNLIMITED BOBS ON THEM, AND I WILL SOON CONVERT MORE DEMOS.  THE MACHINES ARE BEING NETWORKED, AND I THINK THERE WILL BE A PLACE TO STICK FILES FOR"
T$=T$+" ANYONE TO SEE.  THE DEMOS CAN GO THERE!  THEY USE GW BASIC, AND ALTHOUGH IT DOESN'T SUPPORT DOUBLEBUFFER, YOU CAN EMULATE THE EFFECT WITH MULTIPLE SCREENS!"
T$=T$+"  THE MUSIC IS A REAL PROBLEM..  THERE ISN'T ANY!  ON THE BOBS DEMO I MADE THE MACHINES PLAY A TONE OF DIFFERENT PITCH, AND IT WAS CRAP..."
T$=T$+"        RIGHT, NOW FOR THE GREETS:         OH GREAT!!  WHERE THE HELL IS THE GREETLIST?  I DON'T KNOW.  SHIT.          NO, STILL CAN'T FIND IT!  SO I WILL HAVE"
T$=T$+" TO JUST DO THEM FROM MEMORY, SO SORRY IF I FORGET ANYONE..  GREETS GO TO:  BITMAP PRODS, CYBORNETICS, BEHOLDER, ALMIGHTY, SYNTEX, ROBOTS, HANISSIS 5, SANDRA SHARKEY, ER, ER...  I CAN'T"
T$=T$+" THINK OF ANY MORE.. SORRY!!    HAVE YOU NOTICED THA..  NO! CAN'T BE BOTHERED TO TYPE THAT.  IT WILL TAKE TOO LONG, AND THAT WOULD BE TOO LAME."
T$=T$+"  TALKING POINT:  WHY DON'T MIRRORSOFT WRITE A VERSION OF SPEEDBALL 2 THAT CAN BE PLAYED DOWN MODEM LINES WITH PEOPLE ALL OVER THE COUNTRY??  "
T$=T$+" THAT WOULD CATCH ON IN A MAJOR WAY I THINK!           HOW MANY BYTES SO FAR???  HANG ON, I'LL JUST CHECK....           RIGHT, I'M BACK..  THERE ARE 2456 AT LAST COUNT!!!"
T$=T$+"  HOW LONG CAN I SIT AND TYPE THIS JUNK??  WELL, IT'S NOT AS LONG AS THE SCROLLER ON OUR MUSIC DISK, THAT WAS OVER 4000 BYTES LONG!!!!  SERIOUS SCROLLTEXT!!!  BUT I DOUBT"
T$=T$+" IF ANYONE ACTUALLY SAT DOWN AND READ THE WHOLE THING.  OH, HANG ON!  SANDRA SHARKEY PROBABLY DID, COS SHE HAS TO CHECK OUT WHAT PEOPLE HAVE WRITTEN"
T$=T$+" IN THEIR SCROLLERS!  THAT REALLY CHEERS UP ME UP....  IT MUST HAVE BEEN SO BORING!!!  BY THE WAY, IF ANYONE HAS SOME VIRUSES LYING ABOUT, PLEASE SEND THEM TO ME AS"
T$=T$+" I COLLECT THEM..  BY THE WAY, DON'T SEND THE NEW SADDAM VIRUS AS I DON'T KNOW HOW TO CONTAIN THAT YET!  RARE ONES WILL BE VERY APPRECIATED, AS I HAVE THE MORE COMMON ONES!"
T$=T$+"   TIME TO GO....  BYE.....                                          "
A$=" L X=234; L Y=108; L:  A 1,(R0,1); P; J L;"
B$=" L X=263; L Y=108; L:  A 1,(R0,1); P; J L;"
C$=" L X=292; L Y=108; L:  A 1,(R0,1); P; J L;"
D$=" L X=321; L Y=108; L:  A 1,(R0,1); P; J L;"
SC$="L RB=0; R:  L RA=1; P; L:  L RA=RA+4; L X=RA; L RB=RB+1; I RB=8 J G; H:  I X>384 J R; P; J L; G:  L RB=0; J H;"
For F=0 To 3
Sprite F,0,0,1 : Channel F To Sprite F
Next F
Channel 4 To Screen Offset 1
Amal 0,A$ : Amal 1,B$ : Amal 2,C$ : Amal 3,D$ : Amal 4,SC$
CV0=1 : CV1=1 : CV2=1 : CV3=1 : CH=0
Restore FDATA
Screen 1
For F=2 To 31 : Read R : Colour F,R : Next F
Screen 0 : Amal On : Update Every 1
Do 
Add V0,-2 : If V0<1 Then V0=1
Add V1,-2 : If V1<1 Then V1=1
Add V2,-2 : If V2<1 Then V2=1
Add V3,-2 : If V3<1 Then V3=1
V=Vumeter(0) : If V>1 Then V0=V/2
Colour 2,C0(16-(V0/2))
V=Vumeter(1) : If V>1 Then V1=V/2
Colour 3,C2(16-(V1/2))
V=Vumeter(2) : If V>1 Then V2=V/2
Colour 4,C3(16-(V2/2))
V=Vumeter(3) : If V>1 Then V3=V/2
Colour 5,C1(16-(V3/2))
Amreg(0,0)=V0 : Amreg(1,0)=V3 : Amreg(2,0)=V1 : Amreg(3,0)=V2
SC=Amreg(0)
N=Amreg(1)
If N=7 Then Gosub NCHAR
Inc T : If T=600 Then Gosub CCHAR
Wait Vbl 
If Mouse Key=1 Then Goto DIE
Loop 
NCHAR:
Screen 1
B=Asc(Mid$(T$,CH,1))
If B=32 or B=33 Then Inc B
Add CH,1,1 To Len(T$)
Paste Bob SC-32,0,B : Paste Bob SC+352,0,B
Screen 0
Return 
CCHAR:
Screen 1
For F=1 To 30
Read D1,D2,D3,D4,D5,D6,D7,D8,D9,D10,D11,D12,D13,D14,D15,D16,D17,D18,D19,D20,D21,D22,D23,D24,D25,D26,D27,D28,D29,D30
If D1=999 Then Restore FDATA : Goto CCHAR
Fade 3,0,0,D1,D2,D3,D4,D5,D6,D7,D8,D9,D10,D11,D12,D13,D14,D15,D16,D17,D18,D19,D20,D21,D22,D23,D24,D25,D26,D27,D28,D29,D30
T=0
Screen 0
Return 
Next F
CDATA:
Data $F00,$F,$FF0,$F0
Data $E00,$E,$EE0,$E0
Data $D00,$D,$DD0,$D0
Data $C00,$C,$CC0,$C0
Data $B00,$B,$BB0,$B0
Data $A00,$A,$AA0,$A0
Data $900,$9,$990,$90
Data $800,$8,$880,$80
Data $700,$7,$770,$70
Data $600,$6,$660,$60
Data $500,$5,$550,$50
Data $400,$4,$440,$40
Data $300,$3,$330,$30
Data $200,$2,$220,$20
Data $100,$1,$110,$10
Data $0,$0,$0,$0
FDATA:
Data $100,$200,$300,$400,$500,$600,$700,$800,$900,$A00,$B00,$C00,$D00,$E00,$F00
Data $F00,$E00,$D00,$C00,$B00,$A00,$900,$800,$700,$600,$500,$400,$300,$200,$100
Data $1,$3,$5,$7,$9,$B,$D,$101,$303,$505,$707,$909,$B0B,$D0D,$F0F
Data $F0F,$D0D,$B0B,$909,$707,$505,$303,$101,$D,$B,$9,$7,$5,$3,$1
Data $10,$20,$30,$40,$50,$60,$70,$80,$90,$A0,$B0,$C0,$D0,$E0,$F0
Data $F0,$E0,$D0,$C0,$B0,$A0,$90,$80,$70,$60,$50,$40,$30,$20,$10
Data $555,$777,$888,$B00,$B00,$B00,$AAA,$AAA,$AAA,$AAA,$F00,$F00,$F00,$F00,$F00
Data $CCC,$CCC,$CCC,$BBB,$BBB,$B00,$B00,$B00,$B00,$888,$888,$888,$900,$800,$700
Data $110,$220,$330,$440,$550,$660,$770,$880,$990,$AA0,$BB0,$CC0,$DD0,$EE0,$FF0
Data $10,$30,$50,$70,$90,$B0,$D0,$F0,$D0,$B0,$90,$70,$50,$30,$10
Data $1,$3,$5,$7,$9,$B,$D,$F,$D,$B,$9,$7,$5,$3,$1
Data $11,$22,$33,$44,$55,$66,$77,$88,$99,$AA,$BB,$CC,$DD,$EE,$FF
Data $110,$550,$990,$DD0,$FF0,$DD0,$990,$550,$110,$444,$666,$888,$AAA,$CCC,$FFF
Data $FFF,$CCC,$AAA,$888,$666,$444,$110,$550,$990,$DD0,$FF0,$DD0,$990,$550,$110
Data $100,$200,$300,$400,$500,$600,$700,$800,$900,$A0A,$B0B,$C0C,$D0D,$E0E,$F0F
Data $F0F,$E0E,$D0D,$C0C,$B0B,$A0A,$900,$800,$700,$600,$500,$400,$300,$200,$100
Data $1F,$2E,$3D,$4C,$5B,$6A,$79,$88,$97,$A6,$B5,$C4,$D3,$E2,$F1
Data $F1,$E1,$D1,$C1,$B1,$A1,$91,$81,$71,$61,$51,$41,$31,$21,$11
Data 999,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
DIE:
T$=" "
Amal Freeze 
Screen 1 : Fade 3 : Wait 45 : Screen Close 1
For F=0 To 143 : Rain(0,F)=$0 : Rainbow 0,0,62,145 : Wait Vbl : Next F
Rainbow Del 0 : Screen 0 : Fade 5
For F=63 To 0 Step -1
Mvolume F : For T=0 To 500 : Next T
Next F
Music Off : Mvolume 63
Sprite Off : Screen Close 0
End Proc
Procedure PSYCHOBOBS
' Fastest bob demo in AMOS ever created
'  Watch and weep... 
Led Off : Music 1 : Degree 
Screen Open 0,210,200,4,Lowres : Flash Off : Curs Off : Cls 0 : Hide On 
Screen Display 0,200,72,,
Screen Open 2,800,33,2,Lowres
Screen Display 2,110,278,,
Unpack 5 To 1
Screen Display 1,128,35,,
Shift Up 1,2,25,1
Screen 0 : Palette 0,$F,$9,$4,$B,$9,$7,$5,$3
Double Buffer 
Restore RDATA
Set Rainbow 0,1,192,"","",""
Rainbow 0,0,276,64
R=0 : F=-1
Repeat 
Inc F
Rain(0,F)=R
Read R
Until R=9999999
Rainbow 0,0,276,64
   T$=" OH LOOK, A CRAPPY BOB DEMO WITH 8 SLOW BALLS IN A CIRCLE.......  BY THE WAY, THAT SAMPLE YOU CAN HEAR IS SAYING 'DRAGONS'!!  AS YOU SHOULD KNOW, WE WOULD NEVER "
T$=T$+"RELEASE SOMETHING THAT BAD!!!  NO, INSTEAD WE DECIDED TO DO THE FASTEST BOB DEMO EVER SEEN IN AMOS."
T$=T$+"  TO PROVE THE AMAZING SPEED THIS NEW ROUTINE CAN SHIFT THINGS AT, SOME OF THE LATER PATTERNS GO SO QUICKLY, YOU SEE"
T$=T$+" THE ILLUSION OF THERE BEING MORE THAN 8 BOBS.  YEAH, THE ULTIMATE SPEED...  THIS MASTERBLOODYPIECE OF CODING WAS DONE"
T$=T$+" BY JAG, THE GFX ARE BY CHAOS, AND THE MUSIC IS BY DRAGONS (MUCH MORE MY TYPE OF SOUND!!!)...   WHEN YOU ARE BORED STIFF OF"
T$=T$+" WATCHING THESE INCREDIBLE PATTERNS, PRESS THE MOUSE TO EXIT...   NOW ON TO THE RATHER ANARCHIC TEXT... (THE BIT WHERE WE SLAG EVERYONE OFF)"
T$=T$+"           WHOS FIRST????  ERR, AH YES, THE AMOS PD LIBRARY...     YOU ARE GETTING BETTER ALL THE TIME, EXCEPT FOR THE TRAVESTY OF A NAME"
T$=T$+", HONESTLY, DEJA VU PD IS    NOT    A GOOD NAME!  PERHAPS YOU COULD HAVE CALLED IT FANATIX PD OR SOMETHING AND SENT US ALL THE MONEY (BUT NOT THE BILLS)."
T$=T$+"   ALSO, THE IDEA OF A MEMBERSHIP CLUB AINT TOO HOT...  IN FACT ITS DIRE.  TO THE EXTREME.  GIVING PEOPLE PRIORITY SERVICE JUST COS THEY WERE GULLIBLE"
T$=T$+" ENOUGH TO PAY THE EXTORTIONATE MEMBERSHIP FEE IS A BIT UNFAIR...  APART FROM THAT, YOU ARE PROVIDING A GREAT SERVICE...  DONT TAKE THIS TO HEART!"
T$=T$+"         SO NOW, WE MOVE ON TO A CERTAIN GROUP, THAT CLAIM TO BE THE BEST DEMO GROUP IN THE WORLD.  OH DEAR.  FAR FROM IT.  WE ARE TALKING ABOUT"
T$=T$+" HANISSIS 'WE SAY BOBS ARE BORING BUT WE FILL OUR DEMOS WITH THEM ANYWAY' FIVE.  WE DONT REALLY HAVE ANYTHING AGAINST YOU, BUT YOU ARE ONLY MAKING YOURSELVES LOOK"
T$=T$+" A BIT SILLY...  PLEASE DONT TAKE THIS TOO SERIOUSLY.                ON TO...   SHELDON 'I SHALL WRITE MANCHESTER IN THE FANATIX ADDRESS REGARDLESS OF WHICH AREA THEY LIVE IN' WILSON."
T$=T$+"  ONLY JOKING, HOPE YOU GOT THE LETTER OK.  WRITE BACK SOON!              AND NOW...  SYNTEX!  WE WOULD LIKE TO CONTACT YOU BUT THERE AINT NO ADDRESS!?!  ARE YOU HIDING FROM THE POLICE OR SOMETHING, "
T$=T$+"OR ARE YOU JUST TRYING TO AVOID LAMERS ASKING FOR UNLOCKED ROUTINES ALL THE TIME.              WE DONT MIND HELPING PEOPLE BUT WE DON'T LIKE SPONGERS WHO TAKE ADVANTAGE OF OUR SUPERIOR TALENTS (AHEM).."
T$=T$+"                 THATS OVER WITH, NOW FOR THE GREETS..  BITMAP (YO YAZOO, COOL SENDINGS)      CYBORNETICS (WRITE BACK OR WE WILL BE UNHAPPY.. SOB.)        THE BEHOLDER (THE SAME GOES FOR YOU)"
T$=T$+"      ROBOTS (WHERE ARE SOME NEW DEMOS??)       SYNTEX (YO FREAX)        HANISSIS 5 (HEHEHE!   SORRY..)      SANDRA SHARKEY (HOW DO YOU LIKE THIS ONE THEN??)      ANNE AND LEN TUCKER (I WILL SEND YOU A SUBSCRIPTION FOR TOTALLY AMOS"
T$=T$+" WHEN I HAVE BOUGHT A CAR)       ALMIGHTY (YO...)        STEVE AND TRISHA OF BLITTERCHIPS (IF YOU ARE READING THIS THEN I NEED A CATALOGUE BADLY!!!)       FRANCOIS LIONET, ETC...."
T$=T$+"   RIGHT, THAT BRINGS THIS SCROLL TO A CLOSE.  GOODBYE...                  LOOK, GO AWAY WILL YOU???!?!?                                              "
For F=1 To 720 : CX(F)=(Sin(F)*90)+90 : Next F
No Mask : For F=1 To 10 : Make Mask F : Next F
A$="R:  L X=0; P; L:  L X=X+1; I X>191 J R; P; J L;"
B$="L RB=0; R:  L RA=1; P; L:  L RA=RA+8; L X=RA; L RB=RB+1; I RB=4 J G; H:  I X>384 J R; P; J L; G:  L RB=0; J H;"
C$="L:  L X=R0; L Y=R1; P; J L;"
For F=0 To 7
Set Bob F,1,, : Bob F,,,1
Channel F To Bob F : Amal F,C$
Next F
Channel 8 To Screen Offset 2
Channel 9 To Rainbow 0
Amal 8,B$ : Amal 9,A$ : Amal On 
CH=1
REDO:
Restore PATDATA1
NUPAT:
Read X,Y,XI,YI,XA1,YA1,XA2,YA2,XA3,YA3,XA4,YA4,XA5,YA5,XA6,YA6,XA7,YA7
If X=999 Then Goto REDO
Screen 2
T=0
Repeat 
Add X,XI : If X>360 Then Add X,-360
Add Y,YI : If Y>360 Then Add Y,-360
Amreg(0,0)=CX(X) : Amreg(0,1)=CX(Y)
Amreg(1,0)=CX(X+XA1) : Amreg(1,1)=CX(Y+YA1)
Amreg(2,0)=CX(X+XA2) : Amreg(2,1)=CX(Y+YA2)
Amreg(3,0)=CX(X+XA3) : Amreg(3,1)=CX(Y+YA3)
Amreg(4,0)=CX(X+XA4) : Amreg(4,1)=CX(Y+YA4)
Amreg(5,0)=CX(X+XA5) : Amreg(5,1)=CX(Y+YA5)
Amreg(6,0)=CX(X+XA6) : Amreg(6,1)=CX(Y+YA6)
Amreg(7,0)=CX(X+XA7) : Amreg(7,1)=CX(Y+YA7)
SC=Amreg(0)
N=Amreg(1)
If N=3 Then Gosub NCHAR
Inc T
Wait Vbl 
If Mouse Key=1 Then Goto DIE
Until T=600
Goto NUPAT
NCHAR:
B=Asc(Mid$(T$,CH,1))
Add CH,1,1 To Len(T$)
Paste Bob SC-32,1,B : Paste Bob SC+352,1,B
Return 
DIE:
Amal Off 
For F=278 To 318
Screen Display 2,110,F,,
Wait Vbl 
Next F
Screen Close 2 : Rainbow Del 0
Screen 0 : Fade 3 : Wait 45
Bob Off : Screen Close 0
Screen 1 : Shift Off 
Fade 5
For F=63 To 0 Step -1
For T=0 To 500 : Next T : Mvolume F : Next F
Screen Close 1
Music Off : Mvolume 63
T$=" "
RDATA:
Data $0,$100,$200,$300,$400,$500,$600,$700,$800,$900,$A00,$B00,$C00,$D00,$E00,$F00
Data $F00,$E00,$D00,$C00,$B00,$A00,$900,$800,$700,$600,$500,$400,$300,$200,$100,$0
Data $0,$110,$220,$330,$440,$550,$660,$770,$880,$990,$AA0,$BB0,$CC0,$DD0,$EE0,$FF0
Data $FF0,$EE0,$DD0,$CC0,$BB0,$AA0,$990,$880,$770,$660,$550,$440,$330,$220,$110,$0
Data $0,$10,$20,$30,$40,$50,$60,$70,$80,$90,$A0,$B0,$C0,$D0,$E0,$F0
Data $F0,$E0,$D0,$C0,$B0,$A0,$90,$80,$70,$60,$50,$40,$30,$20,$10,$0
Data $0,$11,$22,$33,$44,$55,$66,$77,$88,$99,$AA,$BB,$CC,$DD,$EE,$FF
Data $FF,$EE,$DD,$CC,$BB,$AA,$99,$88,$77,$66,$55,$44,$33,$22,$11,$0
Data $0,$1,$2,$3,$4,$5,$6,$7,$8,$9,$A,$B,$C,$D,$E,$F
Data $F,$E,$D,$C,$B,$A,$9,$8,$7,$6,$5,$4,$3,$2,$1,$0
Data $0,$101,$202,$303,$404,$505,$606,$707,$808,$909,$A0A,$B0B,$D0D,$E0E,$F0F
Data $F0F,$E0E,$D0D,$C0C,$B0B,$A0A,$909,$808,$707,$606,$505,$404,$303,$202,$101,$0
Data 9999999
PATDATA1:
Data 0,90,1,1,45,45,90,90,135,135,180,180,225,225,270,270,315,315
Data 0,90,1,1,10,10,20,20,30,30,40,40,50,50,60,60,70,70
Data 0,90,1,2,10,10,20,20,30,30,40,40,50,50,60,60,70,70
Data 1,1,6,3,10,10,90,90,100,100,180,180,190,190,270,270,280,280
Data 0,90,1,4,10,20,20,40,30,60,40,80,50,100,60,120,70,140
Data 0,90,3,7,10,10,20,20,30,30,40,40,50,50,60,60,70,70
Data 0,90,8,3,5,25,10,50,15,75,20,100,25,125,30,150,35,175
Data 0,90,10,7,10,10,20,20,30,30,40,40,50,50,60,60,70,70
Data 1,71,9,8,30,30,60,60,90,90,120,120,150,150,180,180,210,210
Data 1,1,183,8,10,10,90,90,100,100,180,180,190,190,270,270,280,280
Data 0,90,12,13,20,10,40,20,60,30,80,40,100,50,120,60,140,70
Data 0,90,183,2,10,20,20,40,30,60,40,80,50,100,60,120,70,140
Data 0,45,1,45,10,10,20,20,30,30,40,40,50,50,60,60,70,70
Data 0,45,8,183,20,20,40,40,60,60,80,80,100,100,120,120,140,140
Data 1,1,10,2,20,10,40,20,60,30,180,180,200,190,220,200,240,210
Data 0,1,180,2,10,10,20,20,30,30,40,40,50,50,60,60,70,70
Data 999,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
End Proc
Procedure COPPERBITZ
Led Off : Music 1 : No Mask : For F=1 To 10 : Make Mask F : Next F
Screen Open 0,640,450,8,Lowres : Flash Off : Curs Off : Cls 0 : Hide On 
Screen Open 1,640,450,8,Lowres : Flash Off : Curs Off : Cls 0 : Hide On 
Screen Display 0,208,25,160, : Screen Display 1,208,25,160,
Wait Vbl : Dual Playfield 0,1
Screen Offset 0,1,1 : Screen Offset 1,1,1
Screen 0 : Palette 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Screen Open 2,800,32,32,Lowres : Flash Off : Curs Off : Cls 0 : Hide On 
Screen Display 2,110,275,,
Get Sprite Palette 
Degree 
   T$="  YYAAAAYYY!!!   ANOTHER FANATIX DEMO.  (SORRY THERES NO LOGO. NO CHIP MEM LEFT!!!)"
T$=T$+"    WELL WHAT DO YOU THINK OF THIS DEMO.  WE LOVE THOSE FUNKY WAVY BARS...  CODING BY JAG AS"
T$=T$+" USUAL.  THE FONT WAS FROM A FONT DISK A FRIEND OF MINE COPIED ME!  "
T$=T$+"     OH YEAH.  THE MUSIC IS BY THE INHUMANOIDS.  THERES NO COMMAS OR FINGYS (APOSTRAPHES) IN THIS CHARACTER SET.  AND I COULD"
T$=T$+" NOT BE BOTHERED TO DRAW THEM.           CHAOS CANT TYPE ANTYHING AT THE MOMENT BECAUSE HE IS IN FRANCE.  AND DOES NOT KNOW"
T$=T$+" ABOUT THIS KILLING ROUTINE - OR THE AMAZING LOADER STARFIELD I CODED.  (HYPE HYPE)        OH AND A QUICK PLUG FOR TOTALLY AMOS..  "
T$=T$+" BECAUSE ITS GREAT!  (I HAVENT ACTUALLY SEEN IT YET THOUGH!)  BUT ITS GOING TO HAVE SOMETHING FROM US IN IT SO BUY IT OR...   ER...  DONT."
T$=T$+"  BUT I CAN ASSURE YOU THAT YOU WILL BE MISSING SOMETHING.             HAHAHAHA THE FONT IS IN THIRTY-TWO COLOURS!!!"
T$=T$+"  AND IT ISNT JERKING.  (I HAVENT FIGURED OUT WHY - BUT IM NOT GOING TO ARGUE WITH IT!!)       BE BACK LATER. IM JUST GOING "
T$=T$+" TO FIX THE TV! (THE RED FILTER DISCONNECTS WHEN TV IS COOL??!?!?!?)                       AHA!!!  PROBLEM SOLVED.  THERE WAS A CRACKED"
T$=T$+" JOINT AND NOW I HAVE NO TELLY WORRIES ANYMORE.  (THIS NOW MEANS THAT MY ENTIRE AMIGA SETUP IS WORKING ONE HUNDRED PERCENT..  SOMETHING IS"
T$=T$+" VERY WRONG..)            SPECIAL GREETS GO OUT TO:  BITMAP PRODS. (NICE FX ARENT THEY)    CYBORNETICS (WRITE BACK)    THE BEHOLDER (YOU TOO)   "
T$=T$+" ALMIGHTY (LIKE THIS DEMO???)   SANDRA SHARKEY    AND LEN AND ANNE TUCKER (ARTICLE SOON. I PROMISE)"
T$=T$+"    NORMAL STANDARD GREETS GO TO:  SYNTEX     ROBOTS     FRANCOIS LIONET     OH AND HANISSIS FIVE.."
T$=T$+" ACTAULLY I HAVE A NOTE FOR THEM!  WHY SLAG OFF SYNTEX ABOUT USING BOBS A LOT.  THEY ARE INFINITELY MORE INTERESTING THAN ENDLESS TEXT-WIPES AND ZOOMS...."
T$=T$+"       NO MORE TO WRITE SO ILL SAY GOODBYE.....(BY THE WAY, YOU ARE LUCKY YOU CANT SEE THE MASSES OF DATA REQUIRED FOR THESE EFFECTS!!  THEY WERE BAAAAD).............                  "
AN$(1)="L Y=1; R:  L X=1; L:  L X=X+4; I X>321 J R; P; J L;"
AN$(2)="L Y=1; R:  L X=321; L:  L X=X-4; I X<1 J R; P; J L;"
AN$(3)="L Y=1; R:  L X=1; L:  L X=X+10; I X>321 J R; P; J L;"
AN$(4)="L Y=1; R:  L X=321; L:  L X=X-10; I X<1 J R; P; J L;"
AN$(5)="L Y=1; R:  L X=1; L:  L X=X+8; I X>321 J R; P; J L;"
AN$(6)="L Y=1; R:  L X=321; L:  L X=X-8; I X<1 J R; P; J L;"
AN$(7)="L Y=1; R:  L X=1; L: L X=X+20; I X>321 J R; P; J L;"
AN$(8)="L Y=1; R:  L X=321; L: L X=X-20; I X<1 J R; P; J L;"
C$=" L:  L Y=R0; P; J L;"
SC$="L RB=0; R:  L RA=1; P; L:  L RA=RA+4; L X=RA; L RB=RB+1; I RB=8 J G; H:  I X>384 J R; P; J L; G:  L RB=0; J H;"
Channel 0 To Screen Offset 0 : Channel 1 To Screen Offset 1
Channel 2 To Screen Offset 0 : Channel 3 To Screen Offset 1
Channel 4 To Screen Offset 2
Amal 2,C$ : Amal 3,C$ : Amal 4,SC$ : Amal On 
CH=0
NEWSCR:
Screen 0 : Ink 0 : Screen 1 : Ink 0
For F=0 To 450 Step 10
Screen 0 : Bar 0,F To 640,F+10
Screen 1 : Bar 0,F To 640,F+10
Screen 2 : Gosub MESSAGE : Wait Vbl 
Next F
Read X#(1),X#(2),X#(3),X#(4),SB(1),SB(2),SB(3),SB(4),MXF1,STP1,XINC1#,WMULT1,SMULT1,Y1,YI1,AMSTR1
Screen 2 : Gosub MESSAGE : Wait Vbl 
Read X2#(1),X2#(2),X2#(3),X2#(4),SB2(1),SB2(2),SB2(3),SB2(4),MXF2,STP2,XINC2#,WMULT2,SMULT2,Y2,YI2,AMSTR2
Screen 2 : Gosub MESSAGE : Wait Vbl 
Read P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15
Screen 2 : Gosub MESSAGE : Wait Vbl 
If X#(1)=999 Then Restore CDATA : Goto NEWSCR
Screen 0
For F=0 To MXF1 Step STP1
For G=1 To 4
X#(G)=X#(G)+XINC1#
Screen 0
Paste Bob F,(Sin(X#(G))*WMULT1)+220,SB(G)
Paste Bob F+320,(Sin(X#(G))*WMULT1)+220,SB(G)
Screen 2 : Gosub MESSAGE : Wait Vbl 
Next G
Next F
Screen 1
For F=0 To MXF2 Step STP2
For G=1 To 4
X2#(G)=X2#(G)+XINC2#
Screen 1
Paste Bob F,(Sin(X2#(G))*WMULT2)+215,SB2(G)
Paste Bob F+320,(Sin(X2#(G))*WMULT2)+215,SB2(G)
Screen 2 : Gosub MESSAGE : Wait Vbl 
Next G
Next F
Screen 2 : Gosub MESSAGE : Wait Vbl 
Amal 0,AN$(AMSTR1) : Amal On 0
Screen 2 : Gosub MESSAGE : Wait Vbl 
Amal 1,AN$(AMSTR2) : Amal On 1
Screen 0
Fade 5,P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15
T=0
Screen 2 : Gosub MESSAGE : Wait Vbl 
Repeat 
Inc T
Add Y1,YI1 : If Y1>360 Then Add Y1,-360
Add Y2,YI2 : If Y2>360 Then Add Y2,-360
Amreg(2,0)=(Sin(Y1)*SMULT1)+128
Amreg(3,0)=(Sin(Y2)*SMULT2)+128
Gosub MESSAGE
Wait Vbl 
If T=1000 Then Screen 0 : Fade 5 : Screen 2
If Mouse Key=1 Then Goto DIE
Until T=1100
Goto NEWSCR
MESSAGE:
SC=Amreg(0)
N=Amreg(1)
If N=7 Then Gosub NCHAR
Return 
NCHAR:
B=Asc(Mid$(T$,CH,1))
Add CH,1,1 To Len(T$)
Paste Bob SC-32,0,B : Paste Bob SC+352,0,B
Return 
CDATA:
Data 1,1,1,1,1,2,1,2,316,4,4.5,40,50,1,7,1
Data 1,1,1,1,1,2,1,2,316,4,4.5,40,50,1,2,2
Data 0,$FFF,$700,$B00,$F00,$60,$B0,$F0,$0,$FFF,$7,$B,$F,$770,$BB0,$FF0
Data 10,40,70,100,5,5,5,5,310,10,11.2,25,50,0,1,3
Data 1,1,1,1,8,8,8,8,300,20,22.4,20,50,10,3,8
Data 0,$CC,$AA,$99,$77,$66,$44,$33,$0,$C,$A,$9,$7,$6,$4,$3
Data 1,1,1,1,1,1,1,1,316,4,4.5,35,50,90,1,1
Data 1,1,1,1,5,5,5,5,310,10,11.2,30,10,90,4,4
Data 0,$FFF,$707,$B0B,$F0F,$606,$B0B,$F0F,$0,$CCC,$AAA,$999,$777,$666,$444,$333
Data 1,1,1,1,8,8,8,8,300,20,22.4,30,50,270,0,8
Data 1,1,1,1,10,10,10,10,312,8,9,40,30,1,0,5
Data 0,$CC0,$AA0,$990,$770,$660,$440,$330,0,$F,$2F,$4F,$6F,$9F,$CF,$FF
Data 0,0,0,0,7,7,7,7,310,10,11.2,85,20,110,0,4
Data 10,40,70,100,5,5,5,5,310,10,11.2,25,50,0,4,3
Data 0,$C0C,$A0A,$909,$707,$606,$404,$303,0,$C,$A,$9,$7,$6,$4,$3
Data 1,1,1,1,5,5,5,5,310,10,11.2,20,50,0,3,3
Data 1,1,1,1,10,10,10,10,312,8,9,20,50,10,0,5
Data 0,$CC,$AA,$99,$77,$66,$44,$33,$0,$A00,$B02,$C04,$C06,$D09,$E0C,$F0F
Data 1,1,1,1,7,7,7,7,310,10,11.4,80,50,10,3,3
Data 1,1,1,1,8,8,8,8,300,20,22.4,30,50,0,3,8
Data 0,$C00,$A00,$900,$700,$600,$400,$300,$0,$C,$A,$9,$7,$6,$4,$3
Data 1,1,1,1,2,3,2,3,312,8,9,35,50,10,3,5
Data 10,40,70,100,5,5,5,5,310,10,11.2,25,50,0,1,3
Data 0,$FFF,$600,$B00,$F00,$660,$BB0,$FF0,$0,$C0,$A0,$90,$70,$60,$40,$30
Data 1,1,1,1,9,9,9,9,312,8,9,20,50,0,3,6
Data 1,1,1,1,10,10,10,10,312,8,9,30,50,10,4,5
Data 0,$A00,$B02,$C04,$C06,$D09,$E0C,$F0F,$0,$A00,$B02,$C04,$C06,$D09,$E0C,$F0F
Data 1,1,21,21,1,1,2,2,316,4,4.5,40,50,1,5,1
Data 0,0,0,0,7,7,7,7,310,10,11.2,85,20,110,0,4
Data 0,$FFF,$700,$B00,$F00,$60,$B0,$F0,$0,$CCC,$AAA,$999,$777,$666,$444,$333
Data 1,11,21,31,3,4,3,4,312,8,9,35,30,1,3,6
Data 1,1,1,1,8,8,8,8,300,20,22.4,20,30,0,1,7
Data 0,$FFF,$7,$B,$F,$770,$BB0,$FF0,0,$C00,$A00,$900,$700,$500,$400,$300
Data 999,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,7,7,7,7,310,10,11.2,85,20,110,0,4
Data 0,$FFF,$700,$B00,$F00,$60,$B0,$F0,$0,$CCC,$AAA,$999,$777,$666,$444,$333
DIE:
Amal Off 
Screen 2 : Fade 3 : Wait 45
Screen 1 : Fade 3 : Wait 45
Screen 0 : Fade 3
T$=" "
For F=63 To 0 Step -1
Mvolume F : For T=0 To 500 : Next T : Next F
Screen Close 2 : Screen Close 1 : Screen Close 0
Music Off : Mvolume 63
End Proc
Procedure MULTISCROLL
No Mask : Led Off : Hide On : Music 1
Unpack 5 To 0
Screen Display 0,128,-300,,
For F=-300 To 40 Step 2
Screen Display 0,128,F,,
Wait Vbl 
Next F
Wait 250
For F=40 To -300 Step -2
Screen Display 0,128,F,,
Wait Vbl 
Next F
Screen Close 0 : Unpack 6 To 7
Flash 7,"(ff0,25)(dd0,1)(bb0,1)(990,1)(770,1)(550,1)(330,1)(110,1)(330,1)(550,1)(770,1)(990,1)(bb0,1)(dd0,1)"
Screen Display 7,128,310,,
For F=310 To 270 Step -2
Screen Display 7,128,F,,
Wait Vbl 
Next F
For F=0 To 3
Screen Open F,770,30,2,Lowres : Flash Off : Curs Off : Cls 0 : Hide On 
If F=0 Then Colour 1,$F0F
If F=1 Then Colour 1,$A0A
If F=2 Then Colour 1,$707
If F=3 Then Colour 1,$404
Next F
For F=4 To 6
Screen F-4
Screen Clone F
Next F
For F=0 To 2
Next F
Screen Display 0,110,40,360,
Screen Display 1,110,72,360,
Screen Display 2,110,104,360,
Screen Display 3,110,136,360,
Screen Display 4,110,232,360,
Screen Display 5,110,200,360,
Screen Display 6,110,168,360,
    T0$=" HELLO AND WELCOME TO THE FANATIX MULTISCROLLER DEMO THREE!!!   THIS IS MY (JAG) SCROLLTEXT.    ANYWAY, WE ARE JUST THINKING ABOUT WHAT TO WRITE"
T0$=T0$+" IN THESE SCROLLERS.  THERE ARE SEVEN SCROLLERS, BUT ONLY FOUR MESSAGES, BUT...  THEY GO AT DIFFERENT SPEEDS!  WE THINK THAT LOOKS MUCH"
T0$=T0$+" BETTER THAN LOADS OF DIFFERENT SCROLLS MOVING THE SAME SPEED...  BE BACK SOON, JUST OFF TO TYPE THE GREETS AND CONTACT SCROLLS!                               "
T0$=T0$+"  BACK AGAIN!!!  PHEW, TYPING THOSE WAS BORING..    BY THE WAY, THESE SCROLLS ARE HARDWARE SCROLLERS, NONE OF THAT LAME SCROLL STUFF"
T0$=T0$+" (DOES ANYBODY USE THAT ANYMORE???)   I AM JUST TRYING TO TALK MY DAD INTO LETTING ME BUY A GREAT CAR I SAW WHILE LOOKING AROUND TODAY."
T0$=T0$+"  HE ALWAYS HAS TO LOOK AT THE BAD SIDE OF THINGS LIKE INSURANCE (ER.. TWO LITRE CAPRI STYLE!), AND TAX ETC.  HOW BORING!  BUT I WILL GET"
T0$=T0$+" IT IF AT ALL POSSIBLE.       WE ALSO WANT TO KNOW WHY THERE ARE NOT MANY OTHER AMOS DEMOS GROUPS, WHAT THIS SCENE REALLY NEEDS IS A GOOD HEALTHY NUMBER"
T0$=T0$+" OF GROUPS, BUT STILL THEY FAIL TO APPEAR, SO TO ALL YOU AMOS CODERS:  CONVINCE (CONVERT) YOUR FRIENDS TO WANT TO USE AMOS TO WRITE DEMOS ALL DAY LONG, EVERY DAY"
T0$=T0$+", EVERY WEEK, AND EVERY MONTH OF EVERY YEAR!!!!!  THEN WE SHALL SEE AN IMPROVEMENT (AND GREET SCROLLS OF RIDICULOUS PROPORTIONS!)..."
T0$=T0$+"      IF ANYONE HAS READ THE MIDDLE SCROLL ALL THE WAY THROUGH, THEN ALL I CAN SAY IS THAT THEY ARE A:EXTREMELY BORING  OR B:EXTREMELY PATIENT..  THERE IS ALSO"
T0$=T0$+" THE POSSIBILITY THAT THEY ARE SANDRA SHARKEY (WHO HAS TO READ THEM ALL THE WAY THROUGH.  HAHAHAHA...       DOES ANYONE WANT TO BUY A MEGADRIVE WITH FOURTEEN GAMES, TWO"
T0$=T0$+" CONTROL PADS, IN PERFECT CONDITION FOR THREE HUNDRED QUID????  IT'S ONE HELLUVA BARGAIN, BUT I NEED THE CASH (BADLY)!  CONTACT ME IF YOU DO. (ADDRESS IN MIDDLE SCROLL)"
T0$=T0$+"    ALSO, DOES ANYBODY HAVE AN EFFECTIVE VIRUS KILLER THAT SAVES FILES FROM BSG FILE VIRUS? (OR ITV)  IF SO, SEND ME THE DISK, AND I WILL SEND YOU A BLANK IN RETURN."
T0$=T0$+"  I HAVE RECIEVED THE VIRUS FROM THREE PEOPLE THIS WEEK, IT'S OUT OF CONTROL (ON THEIR MACHINES, MINE IS SAFE AT THE MOMENT.  NO VIRUS CAN GET NEAR MY MACHINE).  TO"
T0$=T0$+" STOP ANY INFECTION I CHECK ALL DISKS IN MANY DIFFERENT WAYS BEFORE BOOTING THEM, BUT IT CAN BE SO BORING WHEN YOU HAVE A DISK CONTAINING LOTS OF FILES."
T0$=T0$+" THIS SCROLL IS QUITE LONG ENOUGH NOW..  SEE YA!!!!!!!!!!!!!!!!!                 "
    T1$=" YO CHAOS HERE!  THIS IS THE COOL NEW MULTISCROLL DEMO FROM FANATIX.  WE MAY HAVE SOME NEW MEMBERS IN OUR GROUP SOON"
T1$=T1$+"...  BUT WE DON'T KNOW HOW MANY!?!!?!?    HAS ANYBODY HEARD AMAZING TUNES TWO BY S.A.E. ???  IT'S COOL, PARTICULARLY THE LOST IN TIME BIT BY THE JUDGE.  HOWEVER, US GOLD RIPPED IT FOR FINAL FIGHT!"
T1$=T1$+"  AT LEAST THEY CREDITED HIM (UNLIKE OTHER COMPANIES).  CAN'T COMMERCIAL COMPANIES AFFORD THEIR OWN MUSICIANS OR SOMETHING??  ANYWAY, I'M GLAD TO SEE SOME NEW GROUPS APPEARING ON THE AMOS SCENE, IT'S GOOD TO"
T1$=T1$+" MORE COMPETITION!  BY THE WAY, WHY DO HANISSIS FIVE CLAIM THEY ARE THE WORLD'S NUMBER ONE AMOS GROUP?????????  NUMBER ONE TEXT WIPERS MORE LIKE!  WHERE HAVE ALL THE OTHER GROUPS GONE?  SUCH AS ROBOTS, BENSON"
T1$=T1$+", CUROS AND STAVROS, PANTHORUS, AND ARC ANGEL???  A SEMI MEMBER OF FANATIX, I.E HE DOES NOTHING, CALLED TRACKER HAS JUST GOT AN ACTION REPLAY, WHICH IS HOW WE GOT THE MUSIC FOR THIS DEMO."
T1$=T1$+"      INCEDENTLY, I RECENTLY WENT ON A SCHOOL TRIP TO THE POP ART SHOW FOR A LAUGH.  OH DEAR.  THE ONLY EXHIBIT OF ANY MERIT WAS A BLOW UP DOLL, WITH A GLASS TABLE ON IT'S BACK!!!  THE REST OF THIS SAD SHOW"
T1$=T1$+" COMPRISED OF TORN POSTERS AND PINK TRAINERS NAILED TO THE WALL!!??!?!?  IT TOOK US SIX MINUTES TO GO THROUGH THE ENTIRE EXHIBITION, SLAGGING IT OFF IN FRONT OF ALL THE 'ART' CRITICS.     THIS IS JAG...  I CUT"
T1$=T1$+" HIS MESSAGE SHORT BECAUSE I HAVE ANOTHER DEMO TO FINISH....     BYE FROM CHAOS.....                       "
    T2$=" HA HA!  HERE IS THE BIT NOBODY HAS BEEN WAITING FOR.      THE GREETS.       SO HI TO BITMAP (HOW DO YOU LIKE THIS???  COOL SENDINGS.),"
T2$=T2$+"    CYBORNETICS (HOW ABOUT A LETTER BACK THIS TIME???),    BEHOLDER (DO YOU MIND US USING THE SIXTYFOUR MIX IN A DEMO?  WRITE BACK.),"
T2$=T2$+"    SYNTEX (KEEP UP YOUR COOL WORK)    ROBOTS (CONTACT US)    HANISSIS FIVE (YOU GUESSED IT, NO NUMBERS IN THE CHARACTER SET!)    SANDRA SHARKEY"
T2$=T2$+" (WHY DON'T YOU SEND US LOADS OF NEW DEMOS FOR FREE?)    LEN AND ANNE TUCKER (MORE STUFF FOR T.A. SOON, IF YOU WANT.)    ALMIGHTY (THE LETTER"
T2$=T2$+" I WROTE TO YOU TURNED OUT LONGER THAN PLANNED.  DID YOU NOTICE?)      RIGHT, THATS ALL THE GREETS OUT OF THE WAY, SO GO READ ANOTHER TEXT.......                       "
    T3$="  CREDITS FOR THIS DEMO ARE:  CODING BY JAG (NO SURPRISES THERE), GFX BY CHAOS, AND MUSIC BY DRAGONS...  IF YOU WANT TO CONTACT FANATIX FOR ANY"
T3$=T3$+" REASON, THEN WRITE TO THE ADDRESS IN THE OUTRO, SORRY, BUT THERE ARE NO NUMBERS IN THE CHARACTER SET (LAME PROBLEM)...            "
A$="L R1=0; R:  L R0=1; P; L:  L R0=R0+1; L X=R0; L R1=R1+1; I R1=32 J G; H:  I X>384 J R; P; J L; G:  L R1=0; J H;"
B$="L R1=0; R:  L R0=1; P; L:  L R0=R0+2; L X=R0; L R1=R1+1; I R1=16 J G; H:  I X>384 J R; P; J L; G:  L R1=0; J H;"
C$="L R1=0; R:  L R0=1; P; L:  L R0=R0+4; L X=R0; L R1=R1+1; I R1=8 J G; H:  I X>384 J R; P; J L; G:  L R1=0; J H;"
D$="L R1=0; R:  L R0=1; P; L:  L R0=R0+8; L X=R0; L R1=R1+1; I R1=4 J G; H:  I X>384 J R; P; J L; G:  L R1=0; J H;"
For F=0 To 6 : Channel F To Screen Offset F : Next F
Amal 0,D$ : Amal 1,C$ : Amal 2,B$ : Amal 3,A$ : Amal 4,D$ : Amal 5,C$ : Amal 6,B$
Amal On 
Do 
SC0=Amreg(0,0)
N0=Amreg(0,1)
SC1=Amreg(1,0)
N1=Amreg(1,1)
SC2=Amreg(2,0)
N2=Amreg(2,1)
SC3=Amreg(3,0)
N3=Amreg(3,1)
If N0=3 Then Gosub NCHAR0
If N1=7 Then Gosub NCHAR1
If N2=15 Then Gosub NCHAR2
If N3=31 Then Gosub NCHAR3
Wait Vbl 
If Mouse Key=1 Then Goto DIE
Loop 
NCHAR0:
Add CH0,1,1 To Len(T0$)
B=Asc(Mid$(T0$,CH0,1))
Screen 0
Paste Bob SC0-32,0,B : Paste Bob SC0+352,0,B
Return 
NCHAR1:
Add CH1,1,1 To Len(T1$)
B=Asc(Mid$(T1$,CH1,1))
Screen 1
Paste Bob SC1-32,0,B : Paste Bob SC1+352,0,B
Return 
NCHAR2:
Add CH2,1,1 To Len(T2$)
B=Asc(Mid$(T2$,CH2,1))
Screen 2
Paste Bob SC2-32,0,B : Paste Bob SC2+352,0,B
Return 
NCHAR3:
Add CH3,1,1 To Len(T3$)
B=Asc(Mid$(T3$,CH3,1))
Screen 3
Paste Bob SC3-32,0,B : Paste Bob SC3+352,0,B
Return 
DIE:
T0$=" " : T1$=" " : T2$=" " : T3$=" "
Amal Off 
For F=40 To -300 Step -2
Screen Display 0,110,F,360,
Screen Display 1,110,F+32,360,
Screen Display 2,110,F+64,360,
Screen Display 3,110,F+96,360,
Screen Display 4,110,F+192,360,
Screen Display 5,110,F+160,360,
Screen Display 6,110,F+128,360,
Wait Vbl 
Next F
For F=0 To 6 : Screen Close F : Next F
Screen 7 : Fade 1,,,,,,,,$FF0 : Wait 15
For F=270 To 310 Step 2
Screen Display 7,128,F,,
Wait Vbl 
Next F
Screen Close 7
For F=63 To 0 Step -1
For T=0 To 500 : Next T : Mvolume F : Next F
Music Off : Mvolume 63
End Proc
Procedure CUTEFISH
Mvolume 0 : Degree : Led Off : Music 1 : Hide On 
No Mask : For F=1 To 26 : Make Mask F : Next F
BUBBLE$=" R:  L R1=Z(2)+23; A 1,(R1,1); L R0=Z(6)+1; L Y=296; L:  L Y=Y-R0; I Y<0 J R; P; J L;"
BUBBLE2$=" R:  L Y=1; P; L:  L Y=Y+2; I Y>256 J R; P; J L;"
Unpack 5 To 0 : Unpack 7 To 1
Palette 0,0
Wait Vbl : Dual Playfield 0,1
Screen 0
For F=8 To 15
Sprite F,((F-8)*40)+128,1,23
Channel F To Sprite F : Amal F,BUBBLE$
Next F
Channel 1 To Screen Offset 1 : Amal 1,BUBBLE2$
Amal On 
Fade 3,0,3263,1103,1375,1647,2191,2463,2735,0,$FFF,$FFF,$FFF,$FFF,$FFF,$FFF,$FFF,$FFF,$FFF,$FFF,$FFF,$FFF,$FFF,$FFF,$FFF,$FFF,$FFF,$FFF,$FFF,$FFF,$FFF,$FFF,$FFF
For F=1 To 63
Mvolume F : For T=0 To 1000 : Next T : Next F
Repeat 
Until Mouse Key=1 or Joy(1)=16
Fade 3 : Wait 45
For F=8 To 15 : Amal Off F : Sprite Off F : Next F
Amal Off 1 : Screen Close 1
Gosub INFO
Unpack 6 To 0
Fade 3,0,0,3904,3952,121,70,4095,96,0,0,0,0,0,0,0,0,0,$0,3904,3952,121,70,4095,96 : Wait 45
Palette 0,0,3904,3952,121,70,4095,96
Double Buffer 
Screen Open 1,320,36,8,Lowres : Flash Off : Curs Off : Cls 0
Screen Display 1,128,35,,
Palette 0,3263,1103,1375,1647,2191,2463,2735,0,0,0,0,0,0,0,0,0,0,3904,3952,121,70,4095,96
Gosub RBOW
RESTART:
Screen 1 : Cls 0
Paste Bob 0,0,48 : Paste Bob 275,0,57
Screen 0
SHARK$=" A 0,(13,8)(14,8); "
SHARK$=SHARK$+" L:  L X=X+R0; L Y=Y+R1; I X>250 J X; I X<5 J A; Q:  I Y>200 J Y; I Y<40 J B; W:  P; J L; "
SHARK$=SHARK$+" X:  A 1,(13,6)(17,6)(19,6)(18,6)(15,6); F R6=1 To 30; N R6; L R0=R4; A 0,(15,8)(16,8); J Q; A:  A 1,(15,6)(18,6)(19,6)(17,6)(13,6); F R6=1 T 30; N R6; L R0=R2; A 0,(13,8)(14,8); J Q;"
SHARK$=SHARK$+" Y:  L R1=R5; J W;  B:  L R1=R3; J W; "
CF$=" L X=10; L Y=50; "
CF$=CF$+" I:  L RE=0; I RD<>0 J I; I J1=1 J A;  I J1=9 J B;  I J1=8 J C;  I J1=10 J D;  I J1=2 J E;  "
CF$=CF$+"I J1=6 J F;  I J1=4 J G;  I J1=5 J H; P:  "
CF$=CF$+"I X>290 J Q; U:  I X<0 J R; V:  I Y<40 J S; W:  I Y>210 J T; X:  P; J I; "
CF$=CF$+"  A:  L RE=1; L Y=Y-2; J P; B:  L RE=1; L RA=0; L Y=Y-2; L X=X+3; J P;"
CF$=CF$+"  C:  L RE=1; L RA=0; L X=X+3; J P; D:  L RE=1; L RA=0; L X=X+3; L Y=Y+2; J P;"
CF$=CF$+"  E:  L RE=1; L Y=Y+2; J P; F:  L RE=1; L RA=1; L X=X-3; L Y=Y+2; J P;"
CF$=CF$+"  G:  L RE=1; L RA=1; L X=X-3; J P; H:  L RE=1; L RA=1; L X=X-3; L Y=Y-2; J P;"
CF$=CF$+"  Q:  L X=290; J U; R:  L X=0; J V;"
CF$=CF$+"  S:  L Y=40; J W; T:  L Y=210; J X;"
CF2$="  "
CF2$=CF2$+" A 0,(1,10)(2,10); I:  I RA=1 J A:  I RA=0 J B; F:  I RE=1 J O; U:  L RC=RA; L RF=RF+1; I RF=150 J T; W:  P; J I; "
CF2$=CF2$+" A:  I RC=1 J F; A 1,(6,4)(7,4)(5,4)(3,1); F RD=1 T 13; N RD; L RD=0; A 0,(3,10)(4,10); J F; "
CF2$=CF2$+" B:  I RC=0 J F; A 1,(5,4)(7,4)(6,4)(1,1); F RD=1 T 13; N RD; L RD=0; A 0,(1,10)(2,10); J F; "
CF2$=CF2$+" T:  A 1,(7,3)(8,3)(9,16)(8,3)(7,50); F R0=1 T 54; N R0; I RA=0 J G;  I RA=1 J H; N:  L RF=0; J W; "
CF2$=CF2$+" G:  A 0,(1,10)(2,10); J N; H:  A 0,(3,10)(4,10); J N;"
CF2$=CF2$+" O:  L RF=0; J U; "
DEATH$=" A 1,(10,1); L R0=X; L R1=Y; F R2=R1 T 270; L Y=R2; N R2; "
FOOD$=" L:  L Y=40; F R0=40 T 310; L X=R1; L Y=R0; N R0; P; J L;"
Restore SHARKDATA
SHARKS=1 : XC(1)=100 : YC(1)=100 : XIC(1)=1 : YIC(1)=1
Sprite 0,100,100,12
Bob 0,10,50,1
For F=1 To SHARKS
Bob F,XC(F),YC(F),13
Channel F+1 To Bob F
Amal F+1,SHARK$
Amreg(F+1,0)=XIC(F) : Amreg(F+1,1)=YIC(F)
Amreg(F+1,2)=XIC(F) : Amreg(F+1,3)=YIC(F)
Amreg(F+1,4)=-XIC(F) : Amreg(F+1,5)=-YIC(F)
Next F
Channel 0 To Bob 0 : Channel 1 To Bob 0
Channel 6 To Sprite 0
Amal 0,CF$ : Amal 1,CF2$ : Amal 6,FOOD$
Amal On : Amreg(6,1)=Rnd(300)+138
LIVES=9 : SC=0 : AM=0 : LV=0
SHIELD=160 : Flash 1,"(101,3)(303,3)(505,3)(707,3)(909,3)(b0b,3)(d0d,3)(f0f,3)(d0d,3)(b0b,3)(909,3)(707,3)(505,3)(303,3)"
Do 
If Bobsprite Col(0)=-1 Then Gosub FOOD
If SHIELD=0 and Bob Col(0,1 To SHARKS)=-1 Then Gosub DEATH
If SHIELD>0 Then Dec SHIELD : If SHIELD=0 Then Flash Off : Fade 3,,$0
If Amreg(6,0)=310 Then Amreg(6,1)=Rnd(300)+138
Wait Vbl 
Loop 
FOOD:
Amal 6,FOOD$ : Amal On 
Inc SC : Inc AM
If LV<21 and AM=5 Then Gosub NLEVEL
If AM=5 Then AM=0 : Inc LV
Screen 1
SC$=Str$(SC)
For F=1 To Len(SC$)
Paste Bob((F-1)*32)-32,0,Asc(Mid$(SC$,F,1))
Next F
Screen 0
Return 
NLEVEL:
Read SHARKS,XC(1),YC(1),XC(2),YC(2),XC(3),YC(3),XC(4),YC(4),XIC(1),YIC(1),XIC(2),YIC(2),XIC(3),YIC(3),XIC(4),YIC(4)
For F=1 To SHARKS
Bob F,XC(F),YC(F),13
Channel F+1 To Bob F
Amal F+1,SHARK$
Amreg(F+1,0)=XIC(F) : Amreg(F+1,1)=YIC(F)
Amreg(F+1,2)=XIC(F) : Amreg(F+1,3)=YIC(F)
Amreg(F+1,4)=-XIC(F) : Amreg(F+1,5)=-YIC(F)
Amal On F+1
Next F
SHIELD=160 : Flash 1,"(101,3)(303,3)(505,3)(707,3)(909,3)(b0b,3)(d0d,3)(f0f,3)(d0d,3)(b0b,3)(909,3)(707,3)(505,3)(303,3)"
Return 
DEATH:
Amal Freeze 1 : Amal 0,DEATH$
Amal On 0
Repeat 
If Amreg(6,0)=310 Then Amreg(6,1)=Rnd(300)+138
Until Chanmv(0)=0
Screen 1
Dec LIVES
LIV$=Str$(LIVES)
Paste Bob 275,0,Asc(Mid$(LIV$,2,1))
Screen 0
If LIVES=0 Then Goto DESTROYED
Amal 0,CF$ : Amal On 0 : Amal On 1
Bob 0,,,1
Wait Vbl 
SHIELD=160 : Flash 1,"(101,3)(303,3)(505,3)(707,3)(909,3)(b0b,3)(d0d,3)(f0f,3)(d0d,3)(b0b,3)(909,3)(707,3)(505,3)(303,3)"
Return 
INFO:
Screen Open 0,640,256,2,Hires : Flash Off : Curs Off : Cls 0 : Hide On 
Palette $0,$0
Print 
Centre "Instructions      "
Print 
Centre "~~~~~~~~~~~~      "
Print 
Print "         Oh come on!  You don't really need them do you??!?  Okay so"
Print "       you do.  It's so simple even an ST owner could understand it,"
Print "       but for those of you with an IQ if 2, here they are:--"
Print 
Print "         Control the fish (yeah, the bright orange one), with the   "
Print "       joystick.  You must keep collecting the food.  Avoiding the  "
Print "       sharks is also a good idea!"
Print 
Print "         There..  Not so painful was it!  Oh, and I forgot how the  "
Print "       scoring and levels work.  Score is at the top left, and the  "
Print "       lives counter is in the top right.  You have 9 lives.        "
Print 
Print "         You get 1 point for each piece of food.  The sharks get    "
Print "       harder to avoid every 5 points, and an extra shark will make "
Print "       anppearance every 25 points (up to a maximum of 4).          "
Print 
Print "         Hope you enjoy this as much as the people I got to playtest"
Print "       it.  Also, to exit, press the RIGHT mouse button when the    "
Print "       game over message appears.  Good Luck, you will need it.  Try"
Print "       to beat 63 (my best score)."
Fade 3,$0,$FFF : Wait 45
Repeat 
Until Mouse Key=1 or Joy(1)=16
Fade 3 : Wait 45
Return 
RBOW:
Set Rainbow 0,0,276,"","",""
Rainbow 0,0,310,276
Restore RDATA
For F=0 To 16
Read R
For G=0 To 15
Rain(0,G+(F*15))=R
Wait Vbl 
Rainbow 0,0,30,268
Next G
If F>1 Then Rain(0,-2+(F*15))=R
Next F
For F=256 To 275 : Rain(0,F)=$F : Next F
Rainbow 0,0,30,268
Return 
DESTROYED:
Amal Off 6
Sprite 0,488,40,
For F=0 To SHARKS
Amal Off F : Amal Off F+1
Bob F,0,400,27
Next F
Screen 0
For F=256 To 108 Step -1
Bob 1,105,F,26
Wait Vbl 
Next F
Repeat 
If Mouse Key=2 Then Goto DIE
Until Joy(1)=16 or Mouse Key=1
For F=108 To 256
Bob 1,105,F,26
Wait Vbl 
Next F
Bob 1,0,400,27
Goto RESTART
DIE:
CF2$=" " : CF$=" "
Screen Close 1 : Screen 0 : Fade 5
For F=63 To 0 Step -1
Mvolume F : For T=0 To 500 : Next T : Next F
Music Off 
For F=0 To 274
Rain(0,F)=$0
Rainbow 0,0,30,268
Wait Vbl 
Next F
Rainbow Del 0
Bob Off : Screen Close 0
Mvolume 63
SHARKDATA:
Data 1,100,100,0,0,0,0,0,0,2,2,0,0,0,0,0,0
Data 1,100,100,0,0,0,0,0,0,3,3,0,0,0,0,0,0
Data 1,100,100,0,0,0,0,0,0,2,4,0,0,0,0,0,0
Data 1,100,100,0,0,0,0,0,0,4,4,0,0,0,0,0,0
Data 2,100,100,50,50,0,0,0,0,1,1,2,1,0,0,0,0
Data 2,100,100,50,50,0,0,0,0,3,1,2,2,0,0,0,0
Data 2,100,100,50,50,0,0,0,0,3,3,4,1,0,0,0,0
Data 2,100,100,50,50,0,0,0,0,1,4,4,3,0,0,0,0
Data 2,100,100,50,50,0,0,0,0,4,4,4,4,0,0,0,0
Data 3,50,50,100,100,150,150,0,0,1,1,2,2,1,2,0,0
Data 3,50,50,100,100,150,150,0,0,2,1,3,2,2,2,0,0
Data 3,50,50,100,100,150,150,0,0,2,3,4,1,3,1,0,0
Data 3,50,50,100,100,150,150,0,0,3,2,1,1,4,3,0,0
Data 3,50,50,100,100,150,150,0,0,4,4,4,4,4,4,0,0
Data 4,50,50,150,150,50,150,150,50,1,1,2,2,2,1,1,2
Data 4,50,50,150,150,50,150,150,50,1,2,2,3,3,1,1,3
Data 4,50,50,150,150,50,150,150,50,2,3,3,3,2,2,3,1
Data 4,50,50,150,150,50,150,150,50,3,3,4,4,4,1,2,3
Data 4,50,50,150,150,50,150,150,50,4,1,1,4,3,3,3,4
Data 4,50,50,150,150,50,150,150,50,4,1,1,4,3,3,3,4
Data 4,50,50,150,150,50,150,150,50,4,1,1,4,3,3,3,4
Data 4,50,50,150,150,50,150,150,50,4,1,1,4,3,3,3,4
Data 4,50,50,150,150,50,150,150,50,4,1,1,4,3,3,3,4
RDATA:
Data $FF,$EF,$DF,$CF,$BF,$AF,$9F,$8F,$7F,$6F,$5F,$4F,$3F,$2F,$1F,$F,$F
End Proc
Procedure OUTRO
Load "fade.abk"
Led Off : Music 1 : Degree : Hide On 
Dim XQ#(81,81),ZP(720),SD(20),SX(20),SY(20)
Screen Open 0,320,180,4,Lowres : Flash Off : Curs Off : Cls 0 : Colour 1,$F
Screen Open 1,320,180,4,Lowres : Flash Off : Curs Off : Cls 0 : Colour 1,$F
Wait Vbl : Dual Playfield 0,1
Screen Display 0,,95,,
Unpack 5 To 3 : Screen Display 3,128,35,,
Fade 3,0,4095,3532,2969,2150,1604,1058,529 : Wait 45
Unpack 6 To 2 : Screen Display 2,128,283,,
Fade 3,0,1365,2184,3004,3840,3844,3849,3853,3343,2319,1039,15,1807,3598,3591,3584 : Wait 45
Shift Up 10,4,15,1
Screen 0 : Palette 0,0,0,0,0,0,0,0,0,0
Synchro Off 
For F=18 To 31 Step 2
Colour(F),$DDD : Colour(F-1),$777 : Colour F+1,$999
Next F
A$=" L X=Z(320)+128; L R0=Z(7)+1; L:  L X=X+R0; I X>448 J R; P; J L; R:  L X=126;  L R0=Z(7)+1; J L; "
For F=8 To 25
Sprite F,10,((F-7)*9)+95,Hrev(1)
Channel F To Sprite F : Amal F,A$
Next F
Amal On 
   T$="                " : T$=T$+"SADLY, YOU HAVE " : T$=T$+"REACHED THE END "
T$=T$+" OF OUR LATEST  " : T$=T$+"  MEGADEMO....  " : T$=T$+"                "
T$=T$+"  WHAT DID YOU  " : T$=T$+"THINK OF IT?????" : T$=T$+"                "
T$=T$+"WHEN YOU GET FED" : T$=T$+" UP OF THIS BIT " : T$=T$+"PRESS THE MOUSE "
T$=T$+"TO SEE THE BEST " : T$=T$+"AMOS STAR EFFECT" : T$=T$+"EVER ACHIEVED!!!"
T$=T$+"                " : T$=T$+"   (PROBABLY)   " : T$=T$+"                "
T$=T$+"THIS END PART IS" : T$=T$+" CODED BY JAG.  " : T$=T$+"                "
T$=T$+" GFX BY CHAOS!! " : T$=T$+"                " : T$=T$+" THE COOL MUSIC "
T$=T$+"IS BY JESPER KYD" : T$=T$+"OF THE SILENTS.." : T$=T$+"                "
T$=T$+" WELL, THIS BIT " : T$=T$+"IS JUST FOR OUR " : T$=T$+" GREETS ETC...  "
T$=T$+"                " : T$=T$+"FIRSTLY, ALL THE" : T$=T$+"GREETS TO PEOPLE"
T$=T$+"      ....      " : T$=T$+"  HERE GOES!!!  " : T$=T$+"                "
T$=T$+"  BITMAP!!!!!!  " : T$=T$+"                " : T$=T$+"YO GUYZ, WHAT DO"
T$=T$+"THINK OF MY FADE" : T$=T$+"TEXT ROUTINE!??!" : T$=T$+"PERHAPS WE COULD"
T$=T$+"ORGANISE AN AMOS" : T$=T$+"  DEMO PARTY??  " : T$=T$+"WRITE BACK SOON!"
T$=T$+"                " : T$=T$+"  CYBORNETICS!  " : T$=T$+"                "
T$=T$+" YOU LOT HAVENT " : T$=T$+"  WRITTEN FOR   " : T$=T$+"   AGES......   "
T$=T$+"                " : T$=T$+"   WHY NOT???   " : T$=T$+"                "
T$=T$+"                " : T$=T$+"    SYNTEX!!    " : T$=T$+"                "
T$=T$+"                " : T$=T$+"KEEP ON STAYING " : T$=T$+"COOL FOR AS LONG"
T$=T$+" AS POSSIBLE... " : T$=T$+"                " : T$=T$+"                "
T$=T$+"                " : T$=T$+" HANNISIS FIVE! " : T$=T$+"                "
T$=T$+"PLEASE DONT SAY " : T$=T$+"THAT YOU ARE THE" : T$=T$+" BEST.  BECAUSE "
T$=T$+"YOU ARE NOT....." : T$=T$+" TEXT WIPES ARE " : T$=T$+"   BORING....   "
T$=T$+"                " : T$=T$+"  THE BEHOLDER  " : T$=T$+"                "
T$=T$+" WERE THE DISX  " : T$=T$+"ANY USE TO YOU??" : T$=T$+"                "
T$=T$+"WRITE BACK, AS I" : T$=T$+" HAVENT GOT ANY " : T$=T$+"LETTERS FROM YOU"
T$=T$+"                " : T$=T$+"   ROBOTS....   " : T$=T$+"                "
T$=T$+"  DO SOME MORE  " : T$=T$+"STUFF, AS THERE " : T$=T$+"  ARE VERY FEW  "
T$=T$+" GROUPS IN THE  " : T$=T$+"AMOS SCENE RIGHT" : T$=T$+"    NOW.....    "
T$=T$+"                " : T$=T$+" SANDRA SHARKEY " : T$=T$+"                "
T$=T$+"NICE TO SEE THAT" : T$=T$+"YOU HAVE REDUCED" : T$=T$+" THE PRICES OF  "
T$=T$+"THE PD LIBRARY.." : T$=T$+"                " : T$=T$+"    THANX..     "
T$=T$+"                " : T$=T$+"L. AND A. TUCKER" : T$=T$+"                "
T$=T$+"THE FIRST ISSUE " : T$=T$+"OF YOUR DISK MAG" : T$=T$+"WAS COOL.  PITY "
T$=T$+" THE MUSIC WAS  " : T$=T$+"CORRUPT. (IT WAS" : T$=T$+"ON MINE ANYWAY!)"
T$=T$+" ALSO GREETS TO " : T$=T$+"THESE PEOPLE...." : T$=T$+"                "
T$=T$+"FRANCOIS LIONET " : T$=T$+" MANDARIN SOFT. " : T$=T$+"    ALMIGHTY    "
T$=T$+"ALL DEMO GROUPS " : T$=T$+"STEVE AND TRISHA" : T$=T$+"AT BLITTERCHIPS "
T$=T$+"AND NOBODY ELSE!" : T$=T$+"                " : T$=T$+" (SORRY IF WEVE "
T$=T$+"FORGOTTEN YOU!!)" : T$=T$+"                " : T$=T$+"                "
T$=T$+"(C) FANATIX PROD" : T$=T$+"      1991      " : T$=T$+"                "
T$=T$+" WE ARE LOOKING " : T$=T$+"FOR NEW MEMBERS " : T$=T$+" TO JOIN US. WE "
T$=T$+"  PARTICULARLY  " : T$=T$+" WANT AN ARTIST " : T$=T$+" OR TWO, AND A  "
T$=T$+"CODER PERHAPS..." : T$=T$+"SEND EXAMPLES OF" : T$=T$+"YOUR WORK...... "
T$=T$+" OH, AND IF YOU " : T$=T$+"WANT TO CONTACT " : T$=T$+"    US.....     "
T$=T$+"FANATIX         " : T$=T$+"29 CAMBRIDGE RD," : T$=T$+" GODMANCHESTER, "
T$=T$+"  HUNTINGDON,   " : T$=T$+"     CAMBS,     " : T$=T$+"    PE18 8BT.   "
T$=T$+"                " : T$=T$+"                " : T$=T$+"                "
T$=T$+"                " : T$=T$+"                " : T$=T$+"                "
T$=T$+"                " : T$=T$+"                " : T$=T$+"                "
SCRF=1
Do 
If SCRF=0 Then Gosub SCR1 : Goto COM
If SCRF=1 Then Gosub SCR0
COM:
Screen 0
Synchro : Wait Vbl 
If SCRF=1 Then Fade 4,0,0,0,0,0,0,0,0,0,$F : Goto COM2
If SCRF=0 Then Fade 4,0,$F,0,0,0,0,0,0,0,0
COM2:
For F=1 To 30 : Synchro : Wait Vbl : Next F
If SCRF=1 Then Dual Priority 1,0 : Synchro : Wait Vbl : Goto COM3
If SCRF=0 Then Dual Priority 0,1 : Synchro : Wait Vbl 
COM3:
Synchro : Wait Vbl 
For F=1 To 250
Synchro : Wait Vbl 
If Mouse Key=1 Then Goto DSTARS
Next F
Loop 
SCR1:
SCRF=1 : Screen 1 : Cls 0
For G=0 To 160 Step 20
For F=1 To 16
Paste Bob(F*20)-20,G,Asc(Mid$(T$,F+SO,1))
Synchro : Wait Vbl 
Next F
Add SO,16 : If SO=Len(T$) Then SO=0
Next G
Return 
SCR0:
SCRF=0 : Screen 0 : Cls 0
For G=0 To 160 Step 20
For F=1 To 16
Paste Bob(F*20)-20,G,Asc(Mid$(T$,F+SO,1))
Synchro : Wait Vbl 
Next F
Add SO,16 : If SO=Len(T$) Then SO=0
Next G
Return 
' If you are planning to rip this bit of code
' that took 1 week solid of hard work to finish
' then you are truly fucking lame... 
DSTARS:
Sprite Off 
Screen 0 : Fade 3 : Wait 45
Screen 3 : Fade 3 : Wait 45
Screen Close 3
Erase 1 : Load "3d.abk",1
T$=" "
Screen Open 0,250,250,16,Lowres : Flash Off : Curs Off : Cls 0
Screen Display 0,170,30,,
Palette 0,$FFF,$DDD,$BBB,$999,$888,$777,$666,$555,$444,$333,$222,$F00
A$="L:  A 1,(R2,0); L X=R0; L Y=R1; J L"
For F=1 To 360 : ZP(F)=(Sin(F)*350)+350 : ZP(F+360)=ZP(F) : Next F
For D=1 To 81
STPOINT#=(D-1) : STINC#=(125-STPOINT#)/40
For F=1 To 81 : XQ#(D,F)=(STPOINT#+((F-1)*STINC#)) : Next F
Next D
Synchro Off 
For F=1 To 20
Set Bob F,1,, : Bob F,128,100,1
Channel F To Bob F : Amal F,A$
Next F
Amal On 
SI=0 : YI=0 : ZA=0 : XI=0
For F=1 To 20
Randomize Timer
SD(F)=Rnd(F*4)+((F-1)*4)+1 : Randomize Rnd(Timer) : SX(F)=Rnd(80)+1 : Randomize Rnd(Timer) : SY(F)=Rnd(80)+1
Next F
Do 
Add ZA,-1 : If ZA<1 Then Add ZA,360
Add XA,2 : If XA>360 Then Add XA,-360
SI=ZP(ZA)-(ZP(ZA+1)) : XI=ZP(XA)-(ZP(XA+1)) : YI=ZP(ZA+90)-(ZP(ZA+91))
For F=1 To 20
Add SD(F),SI : If SD(F)>81 Then Add SD(F),-81
If SD(F)<1 Then Add SD(F),81
Add SY(F),YI : If SY(F)>81 Then Add SY(F),-81
If SY(F)<1 Then Add SY(F),81
Add SX(F),XI : If SX(F)>81 Then Add SX(F),-81
If SX(F)<1 Then Add SX(F),81
Amreg(F,0)=XQ#(SD(F),SX(F))
Amreg(F,1)=XQ#(SD(F),SY(F))
Amreg(F,2)=SD(F)
Next F
Synchro 
Loop 
End Proc
Procedure LAME
Erase 1
Load "warspr",1 : Load "warmus",3 : Load "war6",6 : Load "war7",7
For F=1 To 360 : CX(F)=(Sin(F)*50)+100 : CX(F+360)=CX(F) : Next F
Unpack 6 To 0 : Hide On 
Palette 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Screen Display 0,128,35,,
Double Buffer 
Bob 1,56,108,32 : Bob 2,253,103,32
Screen Open 1,800,32,4,Lowres
Flash Off : Hide On : Curs Off : Cls 0
Palette 0,0,0,0
Screen Display 1,110,275,,
Unpack 7 To 2 : Screen Display 2,128,199,,
Palette 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Shift Down 1,4,31,1
Screen 1
Channel 1 To Bob 1 : Channel 2 To Bob 2
Channel 3 To Screen Offset 1
Channel 4 To Rainbow 0 : Channel 5 To Rainbow 1
   T$="     YYYYEEEEAAAAHHHH!!!!  ANOTHER FANATIX DEMO.  BIT STUPID ISN'T IT???    ANYWAY, IT'S CALLED 'HOW I WON"
T$=T$+" THE WAR'....     CODING BY JAG, LOGO BY CHAOS, DUNNO WHO DIGITISED THE PICTURE...       OH, AND THE MUSIC IS BY"
T$=T$+" SHARE AND ENJOY.       WHY, OH WHY, OH WHY DOES THE COMPILER NOT LIKE THE 3D EXTENSION???  IT IS REALLY PISSING ME OFF!"
T$=T$+"     I DON'T REALLY WANT TO TYPE MUCH TODAY, AS THERE ARE TWO IRRITATING PEOPLE RAISING HELL IN MY ROOM...  THEY WON'T GO AWAY!"
T$=T$+"   I THINK THEY SHOULD JUST LEAVE!           THE DATE IS:  22.9.91, AND WE ARE TRYING TO WORK OUT HOW TO WRITE AN ARTICLE FOR"
T$=T$+" 'TOTALLY AMOS' DISC MAGAZINE...  UNFORTUNATELY, AT THE MOMENT I AM TOO BUSY WITH COLLEGE WORK, (AND DEMO WRITING OF COURSE)!!!!"
T$=T$+"  BY THE WAY, DEJA VU P.D. PRICES MAKE AMIGANUTS LOOK CHEAP!!!  (WELL NOT QUITE, TO BE FAIR!)..  AS I WAS SAYING, WE ARE DOING AN ARTICLE"
T$=T$+" FOR TOTALLY AMOS (AND PERHAPS A ROUTINE OR TWO).  IT WILL PROBABLY BE ABOUT HOW WE PUT DEMOS TOGETHER (SELLOTAPE IS A GOOD START!), OR WHERE"
T$=T$+" WE GET OUR DEMO IDEAS FROM.....    I HAVE ASKED CHAOS TO WRITE SOMETHING, BUT HE IS SSSOOOOOO LAME, HE JUST CURLED UP AND DIED.  (PITY, I'M SURE!)"
T$=T$+"      AHA!  IT IS NOW 5 HRS LATER, AND I HAVE MANAGED TO GET THE COMPILER TO ACCEPT THE 3D.  THIS (OF COURSE) IS RELATIVELY GOOD!"
T$=T$+" AND I CAN START DOING OBJECTS FOR OUR VECTOR DEMO.  I HAVE DRAWN A FEW ALREADY, AND SOME OBJECTS ARE STRANGE TO SAY THE LEAST, BUT I MAY"
T$=T$+" NOT USE THEM IN THE FINISHED DEMO...  WHO KNOWS, THE OBJECTS THAT DON'T MAKE THE MARK MAY BE SHOVED IN AT THE END OF THAT DEMO AS A BONUS PART.."
T$=T$+"  I DON'T KNOW.....        ACTUALLY, CHAOS HAS JUST POINTED OUT THAT FANATIX HAVE BEEN GOING PROPERLY SINCE JUST BEFORE APRIL, AND ALREADY WE HAVE"
T$=T$+" DONE 5 MEGADEMOS, A MUSIC DISK, AND A LONG PLAYING DEMO, WITH MEGADEMO 6 (THIS ONE), AND A HUGE VECTOR DEMO COMING SOON!!!  I'M NOT ENTIRELY SURE"
T$=T$+" HOW WE HAVE MANAGED THIS, SO I AM NOT GOING TO QUESTION THE FACT...  NO GREETS IN THIS ONE.      TIME TO GO..  BBBYYYEEE.........                         "
A1$="R:  L Y=110; L:  I Y<110 J R; L Y=Y-2; I V(0)>20 J U; O:  P; J L;  U:  L Y=122; J O;"
A2$="R:  L Y=105; L:  I Y<105 J R; L Y=Y-2; I V(2)>20 J U; O:  P; J L;  U:  L Y=117; J O;"
R$="L:  L Y=R0; P; J L;"
B$="L RB=0; R:  L RA=1; P; L:  L RA=RA+4; L X=RA; L RB=RB+1; I RB=8 J G; H:  I X>384 J R; P; J L; G:  L RB=0; J H;"
Amal 1,A1$ : Amal 2,A2$ : Amal 3,B$ : Amal 4,R$ : Amal 5,R$ : Amal On 
H1=108 : H2=103 : H=1 : CH=1
Screen 1
Do 
Add A,6 : If A>360 Then Add A,-360
SC=Amreg(0)
If Amreg(1)=7 Then Gosub NCHAR
Amreg(4,0)=CX(A) : Amreg(5,0)=CX(A+120)
Wait Vbl 
Goto DIE
Loop 
NCHAR:
B=Asc(Mid$(T$,CH,1))
Add CH,1,1 To Len(T$)
Paste Bob SC-32,0,B : Paste Bob SC+352,0,B
Return 
DIE:
Amal Off 
Screen 2 : Shift Off : Screen Close 2 : Screen 1 : Screen Close 1 : Screen 0 : Screen Close 0
Bob Off 
T$=" "
Erase 1 : Erase 6 : Erase 7
End Proc
