Global XSCR,YSCR,STATE STATE=False ITRO AGAIN: MENU If Param$="LOG" Then Proc LG If Param$="DOT" Then Proc DT If Param$="BIG" Then Proc BG If Param$="END" Then Proc ED Goto AGAIN ' Procedure ITRO Screen Open 0,320,256,2,Lowres : Palette $0,$100 : Curs Off : Hide On Double Buffer : Autoback 0 ' Dim XPOS(5),YPOS(5) ' Degree X=0 ' Restore DAT For I=1 To 5 Read XPOS(I),YPOS(I) Next I ' Do If XPOS(1)=10 Then Colour 1,$100 If XPOS(1)=20 Then Colour 1,$200 If XPOS(1)=40 Then Colour 1,$300 If XPOS(1)=60 Then Colour 1,$400 If XPOS(1)=80 Then Colour 1,$500 If XPOS(1)=100 Then Colour 1,$600 If XPOS(1)=120 Then Colour 1,$700 If XPOS(1)=140 Then Colour 1,$800 If XPOS(1)=160 Then Colour 1,$900 If XPOS(1)=180 Then Colour 1,$A00 If XPOS(1)=200 Then Colour 1,$B00 If XPOS(1)=220 Then Colour 1,$C00 If XPOS(1)=240 Then Colour 1,$D00 If XPOS(1)=260 Then Colour 1,$E00 If XPOS(1)=280 Then Colour 1,$F00 For I=1 To 5 If I<5 Then Draw Cos(YPOS(I)+X)*XPOS(1)+160,Sin(YPOS(I)+X)*XPOS(1)+128 To Cos(YPOS(I+1)+X)*XPOS(1)+160,Sin(YPOS(I+1)+X)*XPOS(1)+128 If I=5 Then Draw Cos(YPOS(I)+X)*XPOS(1)+160,Sin(YPOS(I)+X)*XPOS(1)+128 To Cos(YPOS(I-4)+X)*XPOS(1)+160,Sin(YPOS(I-4)+X)*XPOS(1)+128 Next I Screen Swap : Wait Vbl : Cls Inc X If X=360 Then X=0 If XPOS(1)<180 Then Add XPOS(1),1 If XPOS(1)>=180 Then Add XPOS(1),3 If XPOS(1)>800 Then Exit Loop ' Screen Close 0 Pop Proc ' DAT: Data 5,270 Data 5,50 Data 5,200 Data 5,340 Data 5,130 End Proc Procedure MENU Screen Open 0,320,256,4,Lowres : Curs Off : Flash Off : Hide On : Cls 0 Palette $0,$0,$0,$0 : View ' Home : Pen 2 : Paper 0 Cmove ,1 Centre "WORLD DOMINATION" Pen 1 Cmove ,6 Centre " F1 - BOUNCE " Cmove ,4 Centre " F2 - DOTTY " Cmove ,4 Centre " F3 - BIG SCROLL" Cmove ,4 Centre " F4 - END " Pen 3 Cmove ,6 Centre "Sorry about this rubbish menu" Cmove ,2 Centre "but I didn't have time to do a" Cmove ,2 Centre "good one! There will be one on" Cmove ,2 Centre "my next mega demo though!!!!" Fade 5,,$F00,$F,$F0 : Wait 75 ' Do If Key State(80) Then L$="LOG" : Goto DEMO If Key State(81) Then L$="DOT" : Goto DEMO If Key State(82) Then L$="BIG" : Goto DEMO If Key State(83) Then L$="END" : Goto DEMO Loop ' DEMO: Fade 3 : Wait 45 : Screen Close 0 End Proc[L$] ' Procedure LG Load "LOGBANK" DSTART LOOG RSCROLL End Proc Procedure DSTART Dim X$(38),X(38),Y(38) Z$="WELL WHAT DO YOU THINK OF THIS !!!! SEVEN SCROLL'S WITH DIFFERENT COLOURS " Z$=Z$+" BUT THIS IS A BIT BORING ! SO WE'LL MOVE ON TO SOMETHING A BIT MORE " Z$=Z$+"BOUNCY !?!?!?!?!?!?!? WATCH THIS SPACE ! " ' Auto View Off Unpack 7 To 1 : Screen Hide 1 : Hide On Palette $0,$40,$50,$60,$70,$80,$90,$A0 Screen Open 0,400,Screen Height,Screen Colour,Lowres Screen Display 0,120,45,,24 Double Buffer Autoback 0 Curs Off Cls 0 Flash Off Screen Copy 1,0,200,39,210 To 0,200,0 Palette $0,$77,$88,$99,$AA,$BB,$CC,$DD SCRL$="ABCDEFGHIJKLMNOPQRSTUVWXYZ.,':!()?190 " Wait Vbl Curs Off ' Screen Clone 2 Screen Display 2,,82,, Palette $0,$4,$5,$6,$7,$8,$9,$A Screen Clone 3 Screen Display 3,,118,, Palette $0,$404,$505,$606,$707,$808,$909,$A0A Screen Clone 4 Screen Display 4,,155,, Palette $0,$400,$500,$600,$700,$800,$900,$A00 Screen Clone 5 Screen Display 5,,193,, Palette $0,$440,$550,$660,$770,$880,$990,$AA0 Screen Clone 6 Screen Display 6,,230,, Get Palette 1 Screen Clone 7 Screen Display 7,,270,, Palette $0,$444,$555,$666,$777,$888,$999,$AAA ' Screen To Front 0 Restore SD For F=1 To 38 Read TEMP$,X(F),Y(F) Next F Goto STDEM ' SD: Data "A",0,0 Data "B",39,0 Data "C",78,0 Data "D",117,0 Data "E",157,0 Data "F",196,0 Data "G",234,0 Data "H",273,0 Data "I",0,25 Data "J",39,25 Data "K",78,25 Data "L",117,25 Data "M",157,25 Data "N",196,25 Data "O",234,25 Data "P",273,25 Data "Q",0,50 Data "R",39,50 Data "S",78,50 Data "T",117,50 Data "U",157,50 Data "V",196,50 Data "W",234,50 Data "X",273,50 Data "Y",0,75 Data "Z",39,75 Data ".",78,75 Data ",",117,75 Data "'",157,75 Data ":",196,75 Data "!",234,75 Data "(",273,75 Data ")",0,101 Data "?",39,101 Data "1",78,101 Data "9",117,101 Data "0",157,101 Data " ",196,101 Rem Rem ********* SCROLL TEXT ROUTINE ********** ' STDEM: SP=6 TEMP=Varptr(Z$) TEMP2=Len(Z$) TEMP: Data $100,$200,$300,$400,$500,$600,$700,$800,$900,$A00,$B00,$C00,$D00,$E00,$F00 Wait Vbl : View ' For LOP=0 To TEMP2-1 E=Instr(SCRL$,Chr$(Peek(TEMP+LOP))) Screen Copy 1,X(E),Y(E),X(E)+35,Y(E)+25 To 0,350,0 For LOP1=1 To 35 Step SP Screen Swap Wait Vbl Screen Copy Physic(0),0,0,400,100 To Logic(0),-SP,0 Next LOP1 Next LOP For A=7 To 0 Step -1 Screen Hide A Next A For A=7 To 0 Step -1 Screen Close A Next A Amal Off Wait 100 End Proc Procedure LOOG Auto View On Rem ******************** LOGO ******************** Close Workbench Close Editor Screen Open 0,320,200,2,Lowres : Curs Off : Hide On Unpack 5 To 6 Screen Hide 6 Screen Close 0 Screen Open 5,960,200,16,Lowres Flash Off : Curs Off : Cls 0 Screen Display 5,120,40,,80 Screen Offset 5,305,0 Wait Vbl Get Palette 6 Colour Back Colour(0) View Wait Vbl Y1=70 Y2=71 Timer=0 Do Y3=0 Do Screen Copy 6,0,Y1,320,Y2 To 5,320,Y3 Inc Y3 Exit If Y3>Y1 Loop Dec Y1 Dec Y2 Exit If Y1<0 Loop ' Screen Close 6 ' Music 1 Volume 0 For A=0 To 63 Volume A : Wait 2 Next A End Proc Procedure RSCROLL Dim X$(38),X(38),Y(38) ANGLE#=0 SC$="WELCOME TO THE ZIRUS MEGA DEMO !!!! : WORLD DOMINATION ! BY : THE ATOM YES I" SC$=SC$+" AM THE ONLY CODER AND GRAFIX MAN IN ZIRUS !!! WOT DO" SC$=SC$+" YOU THINK THEN ? A BIT BOUNCY ! BOING !!!!!! " SC$=SC$+" BY THE WAY THIS MEGA DEMO WAS CREATED" SC$=SC$+" USING THE FOLLOWING : AMIGA (VERY IMPORTANT) : ME (EVEN MORE IMPORTANT) : AMOS : AMOS COMPILER : CTEXT :" SC$=SC$+" DPAINT IV : NOISETRACKER : SOUNDTRACKER : SOUND RIPPER " SC$=SC$+": AND MANY HOURS !!! " SC$=SC$+"ALTHOUGH THE DEMO'S ON THIS MEGA DEMO ARE COMPILED YOU WILL BE ABLE TO LOAD THE SOURCE " SC$=SC$+"CODE AS IT IS INCLUDED ON THE DISK AS ASCII TEXT FILES JUST USE THE MERGE ASCII FROM AMOS!! " SC$=SC$+"THIS NEXT BIT IS ABOUT DEMO GROUPS IN AMOS AND BACKS UP WHAT FANATIX WERE SAYING ON THEIR MEGADEMO " SC$=SC$+": WHERE ARE THEY ALL!!!! I HAVE DECIDED TO COME BACK ONTO THE SCENE BUT THERE NEEDS TO BE MORE " SC$=SC$+"THIS WAY THERE WILL BE MORE COMPETITION MAKING BETTER DEMO'S PUSHING AMOS TO IT'S LIMITS!! SO COME ON!!! " SC$=SC$+"GET CODING THEM COOL DEMO'S!! " SC$=SC$+"A BIT ABOUT ZIRUS : DO YOU REMEMBER ANY OF THE DEMO'S DONE BY ROBOTS? YES! WELL I AM THE VERY SAME! BUT THIS" SC$=SC$+" TIME I HAVE CHANGED MY NAME TO THE ATOM AND USE THE GROUP ZIRUS!! I KNOW IT'S BEEN A WHILE BUT I'M BACK!!!!! " SC$=SC$+"RIGHT HERE ARE THE GREETS : SANDRA SHARKEY ( WHAT DO YOU THINK OF THIS SCROLL TEXT ) " SC$=SC$+"SYNTEX ( HAVE YOU GOT AN ADDRESS WHERE I CAN CONTACT YOU! ) " SC$=SC$+"FANATIX ( YOUR MEGA DEMO SIX WAS GOOD! LOOK FORWARD TO SOME MORE COOL STUFF!!! ) " SC$=SC$+" ALL THE PEOPLE I'VE LEFT OUT DON'T WORRY, YOU'LL BE IN ANOTHER SCROLL !" SC$=SC$+" OK THEN ! BYE ! ! ! ! ! ! PRESS THE MOUSE !!!!!!!!! " SC$=SC$+" " ' Unpack 6 To 6 : Screen Hide 6 Screen Open 0,400,Screen Height,Screen Colour,Lowres Screen Display 0,120,245,,55 Double Buffer Autoback 0 Curs Off Cls 0 Flash Off Screen Copy 6,0,200,39,210 To 0,200,0 Get Palette 6 SCRL$="ABCDEFGHIJKLMNOPQRSTUVWXYZ.,':!()?190 " Wait Vbl Curs Off Set Rainbow 0,0,58,"","","(1,2,28)(1,-2,28)" Rainbow 0,0,245,58 Channel 0 To Rainbow 0 Channel 1 To Screen Display 0 Amal 0,"Let R0=-5;Jump L;X:Let R0=5;L:Let Y=Y-R0; Let R1=R1+1;Pause; If Y>250 Jump X;If R1>3 Jump M;Jump L; M: Let R0=R0-1; Let R1=0; Jump L" Amal 1,"Let R0=-5;Jump L;X:Let R0=5;L:Let Y=Y-R0; Let R1=R1+1;Pause; If Y>250 Jump X;If R1>3 Jump M;Jump L; M: Let R0=R0-1; Let R1=0; Jump L" ' INITVU Channel 12 To Rainbow 1 Channel 13 To Rainbow 2 Channel 14 To Rainbow 3 Channel 15 To Screen Display 5 Channel 5 To Screen Offset 5 Amal 12,"Let R0=-10;Jump L;X:Let R0=10;L:Let Y=Y-R0; Let R1=R1+1;Pause; If Y>190 Jump X;If R1>2 Jump M;Jump L; M: Let R0=R0-1; Let R1=0; Jump L" Amal 13,"Let R0=-10;Jump L;X:Let R0=10;L:Let Y=Y-R0; Let R1=R1+1;Pause; If Y>200 Jump X;If R1>2 Jump M;Jump L; M: Let R0=R0-1; Let R1=0; Jump L" Amal 14,"Let R0=-10;Jump L;X:Let R0=10;L:Let Y=Y-R0; Let R1=R1+1;Pause; If Y>210 Jump X;If R1>2 Jump M;Jump L; M: Let R0=R0-1; Let R1=0; Jump L" Amal 15,"Let R0=-8;Jump L;X:Let R0=8;L:Let Y=Y-R0; Let R1=R1+1;Pause; If Y>140 Jump X;If R1>2 Jump M;Jump L; M: Let R0=R0-1; Let R1=0; Jump L" Amal 5,"L: M 200,0,100; M -400,0,200; M 200,0,100; J L" Amal On ' Screen To Front 0 Screen 0 Flash 1,"(200,5)(400,5)(600,5)(800,5)(a00,5)(c00,5)(e00,10)(c00,5)(a00,5)(800,5)(600,5)(400,5)" Restore SD For F=1 To 38 Read TEMP$,X(F),Y(F) Next F Goto STDEM ' SD: Data "A",0,0 Data "B",39,0 Data "C",78,0 Data "D",117,0 Data "E",157,0 Data "F",196,0 Data "G",234,0 Data "H",273,0 Data "I",0,25 Data "J",39,25 Data "K",78,25 Data "L",117,25 Data "M",157,25 Data "N",196,25 Data "O",234,25 Data "P",273,25 Data "Q",0,50 Data "R",39,50 Data "S",78,50 Data "T",117,50 Data "U",157,50 Data "V",196,50 Data "W",234,50 Data "X",273,50 Data "Y",0,75 Data "Z",39,75 Data ".",78,75 Data ",",117,75 Data "'",157,75 Data ":",196,75 Data "!",234,75 Data "(",273,75 Data ")",0,101 Data "?",39,101 Data "1",78,101 Data "9",117,101 Data "0",157,101 Data " ",196,101 Rem Rem ********* SCROLL TEXT ROUTINE ********** ' STDEM: SP=7 Do TEMP=Varptr(SC$) TEMP2=Len(SC$) TEMP: Data $100,$200,$300,$400,$500,$600,$700,$800,$900,$A00,$B00,$C00,$D00,$E00,$F00 Wait Vbl : View For LOP=0 To TEMP2-1 Y=Sin(ANGLE#)*15+16 E=Instr(SCRL$,Chr$(Peek(TEMP+LOP))) Screen Copy 6,X(E),Y(E),X(E)+35,Y(E)+25 To 0,350,Y For LOP1=1 To 36 Step SP If Mouse Key=1 Then QUITLG : Pop Proc Screen Swap Wait Vbl Screen Copy Physic(0),0,0,400,100 To Logic(0),-SP,0 Next LOP1 ANGLE#=ANGLE#+Pi#/10 If ANGLE#>=PI*2 Then ANGLE=0 Next LOP Loop End Proc Procedure INITVU For I=2 To 4 Set Rainbow I-1,0,256,"","","" ' B=15 For L=0 To 16*15 Step 16 If I=2 Then MBOW[L,B,I-1,256,0,0] If I=3 Then MBOW[L,B,I-1,0,0,16] If I=4 Then MBOW[L,B,I-1,0,0,1] Dec B Next L ' Next I Rainbow 1,0,50,16 Rainbow 2,0,70,16 Rainbow 3,0,90,16 End Proc Procedure MBOW[L,X,N,R,G,B] L1=L+7 For I=X To 0 Step -2 Rain(N,L1)=I*R+I*G+I*B Dec L1 Next I L1=L+8 For I=X To 0 Step -2 Rain(N,L1)=I*R+I*G+I*B Inc L1 Next I End Proc Procedure QUITLG While Screen<>-1 Screen Screen Fade 5 : Wait 75 Screen Close Screen Wend Amal Off For A=0 To 3 Rainbow Del A : Wait 10 Next A For A=63 To 0 Step -1 Volume A : Wait 2 Next A Music Off For I=1 To 16 Erase I Next I STATE=False End Proc ' Procedure DT Load "DOTBANK" L0G0 INITVUDT DSTARTDT End Proc Procedure L0G0 Music 1 Volume 63 Auto View Off Unpack 10 To 1 : Hide On Screen Display 1,140,38,,58 Palette $0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 Auto View On Fade 1,$4,$FFF,$EEE,$DDD,$CCC,$BBB,$AAA,$999,$888,$777,$666,$555,$444,$333,$222,$111 Wait 50 End Proc Procedure DSTARTDT Dim X$(30),X(30) Z$="ATOM AGAIN BRINGING YOU ANOTHER PART TO THIS MEGA DEMO THE PICS YOU " Z$=Z$+"CAN SEE ABOVE WERE NOT DONE BY ME I RIPPED THEM FROM A DEMO A GOOD WHILE " Z$=Z$+"BACK AND I CAN NOT REMEMBER WHICH DEMO I TOOK THEM FROM NOW I KNOW THIS IS " Z$=Z$+"A BIT LAME BUT I LIKE THEM AND HAVE DECIDED TO PUT THEM TO USE IN THIS SMALL DEMO " Z$=Z$+" WANT TO WRITE AN ARTICLE FOR A NEW DISK MAGAZINE IF YOU DO THEN SEND YOUR STUFF " Z$=Z$+"IN ASCII TEXT FORMAT ON A DISK TO MY ADDRESS WHICH IS ON ANOTHER PART " Z$=Z$+"ANYTHING TO DO WITH AMOS SAMPLE PROGS ETC ALSO ANY STUFF ABOUT DEMO WRITING " Z$=Z$+"MAYBE FANATIX WILL BE INTERESTED IN THIS THE MAG APPROPRIATELY CALLED ZIRUS WILL BE RELEASED" Z$=Z$+" AS SOON AS I GET ENOUGH STUFF TOGETHER RIGHT NOW FOR THE GREETS " Z$=Z$+"A QUICK MESSAGE TO SYNTEX GRANDE DEMONTRER KEPT CEST MONTER CEST TRAVAILLEUR ALLER " Z$=Z$+"METTRE PAR ECRIT FRANCAIS WELL I THINK THAT WAS ABOUT RIGHT HAHA " Z$=Z$+"FANATIX GREAT MEGADEMO YOU USED SOME CLEVER BOB EFFECTS " Z$=Z$+"AMOS PD LIBRARY HOW YOU DOING SANDRA " Z$=Z$+"CYBORNETICS SCOOPEX ANARCHY BASS BUDBRAIN REBELS AND FINALLY A GREET GOING TO THE BEST GAMES SOFTWARE COMPANY PSYGNOSIS " Z$=Z$+" " ' Auto View Off Screen Open 7,320,30,2,Lowres : Screen Hide 7 : Hide On Palette $4,$FFF Screen Open 0,400,Screen Height,Screen Colour,Lowres Screen Display 0,120,283,, Double Buffer Autoback 0 Curs Off Cls 0 Flash Off Screen Copy 7,0,200,39,210 To 0,200,0 Screen 0 Get Palette 7 SCRL$="ABCDEFGHIJKLMNOPQRSTUVWXYZ*19 " Wait Vbl Curs Off ' Screen Close 7 Restore SD For F=1 To 30 Read TEMP$,X(F) Next F D0TS For A=2 To 5 Screen To Back A Next A Screen 0 Goto STDEM ' SD: Data "A",1 Data "B",2 Data "C",3 Data "D",4 Data "E",5 Data "F",6 Data "G",7 Data "H",8 Data "I",9 Data "J",10 Data "K",11 Data "L",12 Data "M",13 Data "N",14 Data "O",15 Data "P",16 Data "Q",17 Data "R",18 Data "S",19 Data "T",20 Data "U",21 Data "V",22 Data "W",23 Data "X",24 Data "Y",25 Data "Z",26 Data "*",27 Data "1",28 Data "9",29 Data " ",30 Rem Rem ********* SCROLL TEXT ROUTINE ********** ' STDEM: SP=1 CT=1 Do TEMP=Varptr(Z$) TEMP2=Len(Z$) TEMP: View For LOP=0 To TEMP2-1 E=Instr(SCRL$,Chr$(Peek(TEMP+LOP))) Paste Bob 350,8,X(E) Inc CT For LOP1=1 To 8 Step SP Screen Swap Wait Vbl Screen Copy Physic(0),0,8,400,16 To Logic(0),-SP,8 If Mouse Key=1 Then QUITDT : Pop Proc If CT=100 Then Gosub PIC1 If CT=300 Then Gosub PIC2 If CT=500 Then Gosub PIC3 If CT=700 Then Gosub PIC4 Next LOP1 Next LOP Loop ' PIC1: Screen To Front 3 View Screen 3 : Shift Up 2,4,31,1 Screen 0 Return ' PIC2: Screen To Front 4 View Screen 4 : Shift Down 2,3,31,1 Screen 0 Return ' PIC3: Screen To Front 5 View Screen 5 : Shift Up 2,4,31,1 Screen 0 Return ' PIC4: Screen To Front 2 View Screen 2 : Shift Down 1,3,31,1 Screen 0 CT=1 Return ' End Proc Procedure INITVUDT Screen Open 3,320,256,2,Lowres : Hide On Screen To Back 3 For I=2 To 3 Set Rainbow I-1,0,256,"","","" ' B=15 For L=0 To 0 If I=2 Then MBOWDT[L,B,I-1,256,16,1] If I=3 Then MBOWDT[L,B,I-1,256,16,1] Dec B Next L ' Next I Rainbow 1,0,92,16 Rainbow 2,0,266,16 End Proc Procedure MBOWDT[L,X,N,R,G,B] L1=L+7 For I=X To 0 Step -2 Rain(N,L1)=I*R+I*G+I*B Dec L1 Next I L1=L+8 For I=X To 0 Step -2 Rain(N,L1)=I*R+I*G+I*B Inc L1 Next I End Proc Procedure D0TS Unpack 11 To 2 : Screen Display 2,140,109,, Unpack 12 To 3 : Screen Display 3,140,109,, Unpack 13 To 4 : Screen Display 4,140,109,, Unpack 14 To 5 : Screen Display 5,140,109,, Screen 2 : Shift Down 1,3,31,1 End Proc Procedure QUITDT Rainbow Del For A=2 To 5 Shift Off Screen Close A Next A Screen 0 : Fade 3 : Wait 45 Screen 1 : Fade 3 : Wait 45 Screen Close 0 : Screen Close 1 For A=63 To 0 Step -1 Volume A : Wait 2 Next A For I=1 To 16 Erase I Next I STATE=True End Proc ' Procedure BG Screen Open 0,850,256,4,Lowres : Flash Off : Curs Off : Cls 0 : Hide Screen Display 0,140,,320, Palette $0,$FFF : View Proc RB Load "BIGMUS",3 Load "BIGL",2 No Icon Mask Bank Swap 2,10 Bload "BIGL.CFNT",Font Data Font Size 0,-1 Music 1 For I=0 To 63 Volume I : Wait 2 Next I DSTARTBG End Proc Procedure DSTARTBG A$=" * WELCOME TO THE *BIG SCROLLER* YES THIS IS ANOTHER AMAZING DEMO " A$=A$+"BY *THE ATOM* WHAT DO YOU THINK OF THIS MASSIVE SCROLL! ** " A$=A$+" SMOOTH AND VERY BIIIIGGGG !!!!! " A$=A$+"IS THIS THE BIGGEST AMOS SCROLL EVER!! IF YOU KNOW OTHERWISE THEN LET " A$=A$+"ME KNOW ABOUT IT!! " A$=A$+"THIS HUGE SCROLL WAS DONE USING CTEXT FOR LAYING THE LETTERS AND THEN " A$=A$+"USING THE HARDWARE SCROLLING CAPABILITIES OF THE AMIGA TO GET THE " A$=A$+"THING GOING * THE RESULT AS YOU CAN SEE IS PRETTY IMPRESSIVE!! " A$=A$+"I AM NOT GOING TO MAKE THIS TEXT LAST TOO LONG SO HERE ARE A FEW SPECIAL " A$=A$+"GREATS *FRANCOIS LIONET FOR AMOS AND THE COMPILER*FANATIX FOR GIVING ME " A$=A$+"THE DRIVE TO CARRY ON CODING*SANDRA SHARKEY FOR HAVING THE DEMO!* OK I " A$=A$+"THINK I WILL LEAVE IT AT THAT NOW SO PRESS THE MOUSE BUTTON AND GO AND SEE " A$=A$+"ANOTHER PART OF THIS GREAT MEGADEMO !!!!!" ' Channel 0 To Screen Offset 0 Channel 1 To Rainbow 0 S$="Let RA=0 " S$=S$+"Begin: Let RA=RA+4 " S$=S$+"If RA=480 Jump C " S$=S$+"Jump D " S$=S$+"C: Let RA=0 " S$=S$+"D: Let X=RA " S$=S$+"Pause " S$=S$+"Jump Begin" R$="Begin: L R1=0 " R$=R$+"R: Let R1=R1+1 " R$=R$+"If R1=270 Jump Begin " R$=R$+"Let X=R1 " R$=R$+"Jump R" Amal 0,S$ Amal 1,R$ Amal On View ' Rem Rem ********* SCROLL TEXT ROUTINE ********** ' Y=0 X=320 X1=160 Do LABEL=Varptr(A$) NUM=Len(A$) For LOP=0 To NUM-1 TXT$=Chr$(Peek(LABEL+LOP)) Ctext Amreg(0)+X,Y,TXT$ Ctext Amreg(0)-X1,Y,TXT$ For I=1 To 160 Step 4 If Mouse Key=1 Then QUITBG : Pop Proc Wait Vbl If STATE=True Then View Next I Next LOP Loop End Proc Procedure RB Set Rainbow 0,1,270,"(12,1,15)(4,-1,15)","(5,1,15)(4,-1,15)","(1,1,15)(12,-1,15)" Rainbow 0,0,40,270 End Proc Procedure QUITBG Rainbow Del 0 Fade 3 : Wait 45 Screen Close 0 For I=63 To 0 Step -2 Volume I : Wait 2 Next I Music Off Amal Off For I=1 To 16 Erase I Next I STATE=False End Proc ' Procedure ED Load "ENDBANK" XSCR=320 : YSCR=1 STAR7 RSCROLLED DSTARTED End Proc Procedure STAR7 Unpack 5 To 0 : Hide On Screen Display 0,140,-50,,80 : View Channel 0 To Screen Display 0 Amal 0,"M 0,240,240" Shift Up 1,1,16,1 Music 1 Volume 63 Amal On While Chanmv(0) View Wend Amal Off End Proc Procedure RSCROLLED Unpack 12 To 1 : Screen Hide 1 Unpack 11 To 2 : Screen Hide 2 Screen Open 3,320,400,8,Lowres : Screen Display 3,140,38,,154 Curs Off : Flash Off Palette $0,$FFF,$CCC,$AAA,$888,$666,$444,$222,0,$F0,$B0,$90,$70,$50,$30,$20 Screen Open 4,320,400,8,Lowres : Screen Display 4,140,38,,154 Curs Off : Flash Off Palette $0,0,0,0 Screen 3 : Ink 0 : Paint 10,10 : View Screen 4 : Ink 0 : Paint 10,10 : View Wait 10 Palette $0,$FFF,$CCC,$AAA,$888,$666,$444,$222,0,$F0,$B0,$90,$70,$50,$30,$20 Dual Playfield 3,4 Screen Copy 1,0,0,320,155 To 3,0,0 Screen Copy 2,0,0,320,240 To 4,0,0 Screen Copy 2,0,0,320,240 To 4,0,240 Screen Close 1 : Screen Close 2 ' Rem Rem ********* SCROLL TEXT ROUTINE ********** ' STDEM: End Proc Procedure DSTARTED Dim X(49) Z$=" BEFORE I START THIS SCROLL IF YOU WANT TO CONTACT ME HERE'S MY ADDRESS " Z$=Z$+"THE ATOM 43 BOYDS WALK DUKINFIELD CHESHIRE SK16 4AX OK! " Z$=Z$+"LOOK AT THIS! A MOVING BOB SCROLLER!! " Z$=Z$+"AND A DUAL PLAYFIELD SCROLL ABOVE!!! OK! " Z$=Z$+"IT'S NOW 1.00 AM 15.6.92 " Z$=Z$+"AND I'M ATOM GIVING YOU SOME MORE WORDS AT THE KEYBOARD ! " Z$=Z$+"^^^ WELL, WHAT DID YOU THINK OF THE DEMO'S ?? NOT BAD? " Z$=Z$+"EXPECT MORE FROM ME IN THE FUTURE!!! " Z$=Z$+"^ RIGHT ^ HERE'S A BIT OF A STORY ABOUT ZIRUS ! " Z$=Z$+" I STARTED DOING DEMO'S WHEN I GOT AMOS (AS SOON AS IT CAME OUT) " Z$=Z$+"UNDER THE NAME OF ROBOTS ^ AFTER ABOUT 4 TO 5 I SOON GOT BORED! " Z$=Z$+"AND GOT A JOB WITH PRISMA SOFTWARE (WHICH I AM STILL DOING) ^^ " Z$=Z$+"ANYWAY APART FROM DOING THIS AND STUFF FOR VARIOUS LICENSEWARE " Z$=Z$+"PROJECTS FOR DIFFERENT PD LIBRARIES, I HAVE DECIDED TO BRING YOU THE " Z$=Z$+"DEMO'S AGAIN!!! ^^^ ALL THE DEMO'S THAT I DO NOW WILL BE RELATED TO " Z$=Z$+"MY DISK MAGAZINE (NOT RELEASED YET!) CALLED ^ ZIRUS ^ AND LOT'S OF " Z$=Z$+"MY DEMO'S WILL BE EXPLAINED THOROUGHLY! AND EVEN A STEP BY STEP GUIDE " Z$=Z$+"TO WRITING A GAME WILL BE FEATURED!! SO LOOK OUT FOR ^ ZIRUS ^ " Z$=Z$+"SOON!!!! RIGHT ! NOW I'VE TOLD YOU THE STORY ! " Z$=Z$+"SIT BACK, LISTEN TO THE MUSIC AND READ THE GREETS !!! ^^ " Z$=Z$+"FANATIX ( YOU CAN TAKE THE CREDIT FOR GETTING ME INTO DEMO'S AGAIN, " Z$=Z$+"YES YOUR MESSAGES ON THE MEGADEMO 6 WORKED!! ) ^^ " Z$=Z$+"^^ SANDRA L SHARKEY ( WHAT DOES THE L STAND FOR ? I'M JUST BEING NOSEY ! ) " Z$=Z$+"^^ SYNTEX ( WHAT DO YOU THINK OF MY FRENCH !?!?!? HA HA HAHAHAHA ) " Z$=Z$+"^^^^^^^^ OK ! THAT WILL DO !! I GET FED UP OF TYPING THESE IN ALL THE TIME ! ^^^^^ " Z$=Z$+"I'LL BE OFF NOW BUT DON'T FORGET THIS MESSAGE : ^^ AMOS - DOMINATING THE WORLD !!!!!! " Z$=Z$+" ^^^^^^ " Z$=Z$+"SEE YOU SOON !!!!! ^^^^^^ " ' Screen Open 1,320,50,16,Lowres : Curs Off : Flash Off : Cls 0 : Get Sprite Palette Screen Display 1,140,265,, : View Double Buffer : Cls 0 : Autoback 0 : Update Off SCRL$="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!?,.`()-'*&^ " Wait Vbl ' Restore SD For F=1 To 49 Read TEMP$,X(F) Next F Screen 1 Goto STDEM ' SD: Data "A",1 Data "B",2 Data "C",3 Data "D",4 Data "E",5 Data "F",6 Data "G",7 Data "H",8 Data "I",9 Data "J",10 Data "K",11 Data "L",12 Data "M",13 Data "N",14 Data "O",15 Data "P",16 Data "Q",17 Data "R",18 Data "S",19 Data "T",20 Data "U",21 Data "V",22 Data "W",23 Data "X",24 Data "Y",25 Data "Z",26 Data "0",27 Data "1",28 Data "2",29 Data "3",30 Data "4",31 Data "5",32 Data "6",33 Data "7",34 Data "8",35 Data "9",36 Data "!",37 Data "?",38 Data ",",39 Data ".",40 Data "`",41 Data "(",42 Data ")",43 Data "-",44 Data "'",45 Data "*",46 Data "&",47 Data "^",48 Data " ",49 Rem Rem ********* SCROLL TEXT ROUTINE ********** ' STDEM: For I=1 To 49 Set Bob I,1,, Next I For I=1 To 12 Bob I,320,YSCR,30 Next NUM=1 : SY=0 : Wait Vbl Do TEMP=Varptr(Z$) TEMP2=Len(Z$) TEMP: For LOP=0 To TEMP2-1 E=Instr(SCRL$,Chr$(Peek(TEMP+LOP))) Bob NUM,XSCR,YSCR,X(E) Channel NUM-1 To Bob NUM Amal NUM-1,"Loop:M 0,15,15;M 0,-15,15;J Loop" Move X NUM-1,"(1,-1,0)" Amal On : Move On Repeat Screen Swap : Wait Vbl Bob Clear Add SY,1 If SY>240 Then SY=1 Bob Draw Screen Swap : Wait Vbl Bob Clear Screen Offset 4,,SY : View Bob Draw If Mouse Key=1 Then QUITED : Pop Proc Until X Bob(NUM)<=XSCR-35 Add NUM,1 : If NUM>12 Then NUM=1 Next LOP Loop End Proc Procedure QUITED Screen 0 : Shift Off : Amal Off : Move Off Channel 1 To Screen Display 3 : Channel 2 To Screen Display 4 A$="M 0,-140,140" Amal 1,A$ : Amal 2,A$ Amal On : Repeat : View : Until Chanmv(1)=0 : Amal Off Screen Close 4 : Screen Close 3 Screen 0 : Fade 3 : Wait 45 : Screen Close 0 Screen 1 : Fade 3 : Wait 45 : Screen Close 1 For I=63 To 0 Step -2 Volume I : Wait 2 Next I For I=1 To 16 Erase I Next I STATE=False End Proc