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