home *** CD-ROM | disk | FTP | other *** search
/ AMOS PD CD / amospdcd.iso / 551-575 / apd555 / demo / demo.bak / demo.amosSourceCode
AMOS Source Code  |  1991-01-13  |  26KB  |  982 lines

  1. Rem ###################################  
  2. Rem #            GURU TIME            #
  3. Rem #      WRITTEN,DESIGHNED AND      #
  4. Rem #      PROGRAMMED BY PHOENIX      #      
  5. Rem #   AND THE TERMINATOR (C)1991    #  
  6. Rem ###################################
  7. Dim DT$(200),WORD$(67) : 
  8. Global DT$(),DTLENGTH,COUNT,NBS,NUM,WORD$(),WORDLENGTH,JMOUSE
  9. MAIN
  10. End 
  11. Procedure MAIN
  12.    SETUP
  13.    GURU
  14.    TITLE
  15.    CREDITS
  16.    VUSCROLL
  17.    LONGTIMETEXT
  18.    XITTEXT
  19.    IVEGOTBIGBALLS
  20. End Proc
  21. Procedure SETUP
  22.    Close Workbench 
  23.    Close Editor 
  24.    'Break Off 
  25.    Palette $0,$0,$0,$0 : Curs Off : Hide On 
  26.    Dir$="DF0:DEMO"
  27.    Get Disc Fonts 
  28.    Load "Giggle.ABK",5
  29.    Load "Guru.PAK",6 : Unpack 6 To 2
  30.    Screen Display 2,136,35,640,40
  31.    Load "WbHand.PAK",6 : Unpack 6 To 3 : Screen Hide 3
  32.    Screen Open 1,352,310,2,Lowres : Curs Off 
  33.    Load "Boris.PAK",6 : Unpack 6 To 4 : Screen Hide 4
  34.    Screen Display 1,116,15,352,310
  35.    Screen 1 : Palette $0,$0,$0,$0 : Screen To Front 1
  36.    Load "IceDrop.ABK"
  37.    Load "Loader.PAK",15
  38.    Load "Landscape.PAK",14
  39.    Load "ThePhoenix.PAK",13
  40.    Load "Terminator.PAK",12
  41.    Load "Gadget.PAK",11
  42.    MAKETEXT
  43.    MAKETEXT2
  44.    Erase 6
  45. End Proc
  46. Procedure GURU
  47.    For GURU=1 To 10
  48.       TIME[30]
  49.       If X=0 Then X=1 : Led Off : Else X=0 : Led On 
  50.    Next GURU
  51.    Colour 0,$777
  52.    TIME[50]
  53.    Colour 0,$FFF
  54.    TIME[50]
  55.    Colour 0,$0
  56.    Screen Close 1
  57.    Screen To Front 2 : Screen 2
  58.    Flash 2,"(000,47)(F00,47)"
  59.    TIME=Timer
  60.    CHECKGURU:
  61.    M=Mouse Key : M$=Inkey$
  62.    If M$<>"" Then M=1
  63.    If Timer=TIME+300 Then M=1
  64.    If M=0 Then Goto CHECKGURU
  65.    DISPLAYHAND: Flash Off 
  66.    Screen Open 1,352,310,2,Lowres : Curs Off : Hide On 
  67.    Screen Display 1,116,15,352,310
  68.    Screen To Front 1 : Colour 0,$FFF : TIME[25]
  69.    Screen To Front 3 : Screen Close 2 : Screen Close 1
  70.    Screen Display 3,116,15,352,310 : Colour 3,$6A
  71.    Led Off 
  72.    Screen Show 3 : Sam Play 15,1,7250
  73.    Erase 5
  74.    Wait 150
  75.    Hide On 
  76. End Proc
  77. Procedure TITLE
  78.    Screen Display 4,116,-211,352,298
  79.    Screen To Front 4
  80.    Screen Show 4
  81.    Screen 4
  82.    Colour 0,$B00
  83.    PICCYON_DOWN[4]
  84.    Boom 
  85.    BOUNCE[4]
  86.    Wait 200 : Fade 7
  87.    Wait 100 : Screen Close 4
  88. End Proc
  89. Procedure CREDITS
  90.    Unpack 13 To 0
  91.    Screen Hide 0
  92.    Unpack 12 To 5
  93.    Screen Hide 5
  94.    Unpack 11 To 6
  95.    Screen Hide 6
  96.    Screen Open 7,320,256,8,Lowres
  97.    Flash Off 
  98.    Palette 0,0,0,0,0,0,0,0
  99.    Screen Copy 0 To 7
  100.    Fade 10 To 0
  101.    TIME[300]
  102.    Fade 10
  103.    TIME[50]
  104.    Screen Close 7 : Screen Close 0
  105.    Screen Open 0,320,200,2,Lowres
  106.    Set Font 1
  107.    Flash Off : Curs Off 
  108.    Palette 0,$FFF
  109.    Ink 1,0
  110.    Text 130,100,"AND"
  111.    TIME[100]
  112.    Cls 
  113.    Screen Open 7,320,256,32,Lowres
  114.    Flash Off : 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,0,0,0,0,0,0,0
  115.    Screen Copy 5 To 7
  116.    Fade 10 To 5
  117.    TIME[300]
  118.    Fade 10
  119.    TIME[50]
  120.    Screen Close 5 : Screen Close 7
  121.    Screen 0
  122.    Cls : Rem delete 
  123.    Text 70,100,"- MEMBERS OF"
  124.    TIME[100]
  125.    Cls 
  126.    Screen Open 7,320,256,16,Lowres
  127.    Flash Off 
  128.    Palette 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  129.    Screen Copy 6 To 7
  130.    Fade 10 To 6
  131.    TIME[300]
  132.    Fade 10
  133.    TIME[100]
  134.    Screen Close 6 : Screen Close 7
  135.    Screen 0 : Text 60,100,"ARE PROUD TO"
  136.    Text 40,140,"FINALLY RELEASE..."
  137.    Text 40,180,"--- GURU  TIME ---"
  138.    TIME[200]
  139.    Screen Close 0
  140.    Erase 6
  141. End Proc
  142. Procedure VUSCROLL
  143.    VARTEXT=0
  144.    Unpack 14 To 5 : Screen Hide 5 : Erase 14
  145.    Erase 6
  146.    Set Font 3
  147.    Screen Display 5,116,23,352,310
  148.    Screen Show 5 : Screen To Front 5
  149.    Shift Up 2,20,29,1
  150.    TUNE=2
  151.    Show On : Change Mouse 2
  152.    Music 1 : Led Off 
  153.    Tempo 17
  154.    Dim X1(4)
  155.    XPOS=129 : YPOS=192
  156.    Set Rainbow 0,9,64,"(4,-1,15)(4,1,15)","","(4,-1,15)(4,1,15)"
  157.    Rainbow 0,0,149,68
  158.    Def Scroll 1,0,248 To 350,256,1,-1
  159.    Def Scroll 2,0,256 To 350,264,0,-1
  160.    Def Scroll 3,0,264 To 350,272,0,-1
  161.    Def Scroll 4,0,272 To 350,280,-1,-1
  162.    Def Scroll 5,0,280 To 350,290,0,-1
  163.    VARCOL=0 : VCOL1=0 : VCOL2=1
  164.    Every 1000 Gosub CHANGECOL
  165.    BACK:
  166.    Repeat 
  167.       Scroll 1
  168.       Scroll 2
  169.       Scroll 3
  170.       For M=1 To 2
  171.          For N=0 To 3
  172.             Add X1(N),Vumeter(N)
  173.             If X1(N)>63 Then X1(N)=63
  174.             If X1(N)>0 Then Add X1(N),-1
  175.             Ink 9 : Bar XPOS+N*30,YPOS-X1(N)*1 To XPOS+N*30+10,YPOS+1
  176.             Ink 0 : Draw XPOS+N*30,YPOS-X1(N)*1-1 To XPOS+N*30+10,YPOS-X1(N)*1-1
  177.          Next 
  178.       Next 
  179.       Scroll 4
  180.       Scroll 5
  181.       Wait Vbl 
  182.       If VAR=20 Then VAR=0 : Inc VARTEXT : MORETEXT
  183.       Inc VAR
  184.    Until Mouse Key<>0
  185.    If Mouse Key=2 Then Goto OUTAHERE
  186.    YM=Y Screen(Y Mouse)
  187.    If YM110 Then Goto BACK
  188.    If YM<67 and YM>46 and TUNE<>2 Then TUNEFADE : GURULOAD : Load "Icedrop.ABK" : Screen Close 7 : TUNE=2 : Music 1 : Goto BACK
  189.    If YM<89 and YM>67 and TUNE<>3 Then TUNEFADE : GURULOAD : Load "Where.ABK" : Screen Close 7 : TUNE=3 : Music 1 : Goto BACK
  190.    If YM<110 and YM>89 and TUNE<>4 Then TUNEFADE : GURULOAD : Load "Pop.ABK" : Screen Close 7 : TUNE=4 : Music 1 : Goto BACK
  191.    Goto BACK
  192.    CHANGECOL:
  193.    Inc VCOL1
  194.    If VCOL1=8 Then VCOL1=1
  195.    If VCOL2=1
  196.       VCOL2=2
  197.       If VCOL1=1
  198.          Palette ,,,,,,,,,,,,,,,,,,,,$F0,$F0,$F0,$F0,$F0,$FF0,$FF0,$FF0,$FF0,$FF0
  199.       End If 
  200.       If VCOL1=2
  201.          Palette ,,,,,,,,,,,,,,,,,,,,$F,$F,$F,$F,$F
  202.       End If 
  203.       If VCOL1=3
  204.          Palette ,,,,,,,,,,,,,,,,,,,,$FF,$FF,$FF,$FF,$FF
  205.       End If 
  206.       If VCOL1=4
  207.          Palette ,,,,,,,,,,,,,,,,,,,,$F0F,$F0F,$F0F,$F0F,$F0F
  208.       End If 
  209.       If VCOL1=5
  210.          Palette ,,,,,,,,,,,,,,,,,,,,$FF0,$FF0,$FF0,$FF0,$FF0
  211.       End If 
  212.       If VCOL1=6
  213.          Palette ,,,,,,,,,,,,,,,,,,,,$FFF,$FFF,$FFF,$FFF,$FFF
  214.       End If 
  215.       If VCOL1=7
  216.          Palette ,,,,,,,,,,,,,,,,,,,,$F00,$F00,$F00,$F00,$F00
  217.       End If 
  218.    Else 
  219.       VCOL2=1
  220.       If VCOL1=1
  221.          Palette ,,,,,,,,,,,,,,,,,,,,,,,,,$F0,$F0,$F0,$F0,$F0
  222.       End If 
  223.       If VCOL1=2
  224.          Palette ,,,,,,,,,,,,,,,,,,,,,,,,,$F,$F,$F,$F,$F
  225.       End If 
  226.       If VCOL1=3
  227.          Palette ,,,,,,,,,,,,,,,,,,,,,,,,,$FF,$FF,$FF,$FF,$FF
  228.       End If 
  229.       If VCOL1=4
  230.          Palette ,,,,,,,,,,,,,,,,,,,,,,,,,$F0F,$F0F,$F0F,$F0F,$F0F
  231.       End If 
  232.       If VCOL1=5
  233.          Palette ,,,,,,,,,,,,,,,,,,,,,,,,,$FF0,$FF0,$FF0,$FF0,$FF0
  234.       End If 
  235.       If VCOL1=6
  236.          Palette ,,,,,,,,,,,,,,,,,,,,,,,,,$FFF,$FFF,$FFF,$FFF,$FFF
  237.       End If 
  238.       If VCOL1=7
  239.          Palette ,,,,,,,,,,,,,,,,,,,,,,,,,$F00,$F00,$F00,$F00,$F00
  240.       End If 
  241.    End If 
  242.    Every On 
  243.    Return 
  244.    OUTAHERE:
  245.    Every Off 
  246.    TUNEFADE : GURULOAD : Load "Sonic.ABK"
  247.    Rainbow Del 0
  248.    Hide On 
  249.    Screen Close 5
  250.    Erase 6
  251. End Proc
  252. Procedure XITTEXT
  253.    Hide On : NUM=1
  254.    Load "Scoop.PAK",6 : Unpack 6 To 0 : Flash Off 
  255.    Screen Hide 0
  256.    Erase 6
  257.    LIST$="ABCDEFGHIJKLMNOPQRSTUVWXYZ,.?!'*:; "
  258.    Dim X(35),Y(35),S(35),A$(4)
  259.    For TEMP=1 To 35
  260.       Read X(TEMP),Y(TEMP),S(TEMP)
  261.    Next 
  262.    Data 1,1,26,27,1,47,48,1,70,71,1,94,95,1,117,118,1,139,140,1,161,162,1,187,188,1,200,201,1,223,224,1,245,246,1,268
  263.    Data 1,25,35,36,25,60,61,25,84,85,25,105,106,25,129,130,25,151,152,25,172,173,25,197,198,25,220,222,25,247
  264.    Data 1,49,39,40,49,61,62,49,83,84,49,108,109,49,117,118,49,126,127,49,144,145,49,153,154,49,162,163,49,171,172,49,180,181,49,189,190,49,195
  265.    Screen Open 1,352,256,8,Lowres : Flash Off : Curs Off 
  266.    Screen Display 1,130,36,352,256
  267.    Screen Open 2,352,256,8,Lowres : Flash Off : Curs Off 
  268.    Screen Display 2,130,36,352,256
  269.    Palette 0,0,0,0,0,0,0,0
  270.    Screen 1
  271.    Cls 0 : Get Palette 0
  272.    Screen Hide 1
  273.    A$(1)="DO     YOU     LIKE"
  274.    A$(2)="FILLED VECTORS?"
  275.    A$(3)=""
  276.    A$(4)="WE     DO!!!"
  277.    Gosub SCOOPTEXT
  278.    Screen Close 0 : Screen Close 1 : Screen Close 2
  279.    SEC
  280.    Load "Scoop.PAK",6 : Unpack 6 To 0 : Flash Off 
  281.    Hide On 
  282.    Screen Hide 0
  283.    Screen Open 1,352,256,8,Lowres : Flash Off : Curs Off 
  284.    Screen Display 1,130,36,352,256
  285.    Screen Open 2,352,256,8,Lowres : Flash Off : Curs Off 
  286.    Screen Display 2,130,36,352,256
  287.    Palette 0,0,0,0,0,0,0,0
  288.    Screen 1
  289.    Cls 0 : Get Palette 0
  290.    Screen Hide 1
  291.    Erase 6 : Erase 1
  292.    A$(1)="TOO     NORMAL???"
  293.    A$(2)=""
  294.    A$(3)="WE     WANNA"
  295.    A$(4)="STENCIL VECTORS!"
  296.    Gosub SCOOPTEXT
  297.    Screen Open 3,352,310,2,Lowres
  298.    Screen Display 3,112,16,352,310 : Curs Off : Flash Off 
  299.    Screen To Front 3 : Screen 3
  300.    Cls 0
  301.    Flash 0,"(fff,2)(000,2)"
  302.    TIME[100]
  303.    Flash Off 
  304.    Screen Close 3
  305.    A$(1)="UNFORTUNATELY,"
  306.    A$(2)="WE    DON*T"
  307.    A$(3)="KNOW    HOW"
  308.    A$(4)="....................................."
  309.    Gosub SCOOPTEXT
  310.    A$(1)="OH     WELL"
  311.    A$(2)=""
  312.    A$(3)="THAT*S    LIFE"
  313.    A$(4)=""
  314.    Gosub SCOOPTEXT
  315.    A$(1)="WE    HOPE"
  316.    A$(2)="YOU   HAVE"
  317.    A$(3)="ENJOYED  THIS"
  318.    A$(4)="PRODUCTION..."
  319.    Gosub SCOOPTEXT
  320.    A$(1)="PHOENIX"
  321.    A$(2)="AND"
  322.    A$(3)="THE TERMINATOR"
  323.    A$(4)=""
  324.    Gosub SCOOPTEXT
  325.    TUNEFADE
  326.    Erase 3
  327.    Mvolume 63
  328.    GRUBSQUASH
  329.    A$(1)=""
  330.    A$(2)="AND    ALWAYS"
  331.    A$(3)=""
  332.    A$(4)="REMEMBER..."
  333.    Gosub SCOOPTEXT
  334.    A$(1)=""
  335.    A$(2)="SOFTWARE"
  336.    A$(3)="PIRACY"
  337.    A$(4)="IS   A   CRIME...   SO"
  338.    Gosub SCOOPTEXT
  339.    A$(1)=""
  340.    A$(2)="STAY     OUT"
  341.    A$(3)=""
  342.    A$(4)="OF      TROUBLE"
  343.    Gosub SCOOPTEXT
  344.    Rem kill screens 
  345.    Screen Close 0 : Screen Close 1 : Screen Close 2
  346.    Goto OUT
  347.    SCOOPTEXT:
  348.    Screen 1
  349.    Cls 0
  350.    T3=0
  351.    For T0=50 To 125 Step 25
  352.       Inc T3
  353.       L=Len(A$(T3))
  354.       SIZE=0
  355.       For TEMP=1 To L
  356.          TEMP2=Instr(LIST$,Mid$(A$(T3),TEMP,1))
  357.          SIZE=SIZE+(S(TEMP2)-X(TEMP2))
  358.       Next 
  359.       TX=(340/2)-(SIZE/2)
  360.       For TEMP=1 To L
  361.          TEMP2=Instr(LIST$,Mid$(A$(T3),TEMP,1))
  362.          Screen Copy 0,X(TEMP2),Y(TEMP2),S(TEMP2),Y(TEMP2)+23 To 1,TX,T0
  363.          TX=TX+S(TEMP2)-X(TEMP2)
  364.       Next 
  365.    Next 
  366.    INFADE
  367.    Return 
  368.    OUT:
  369. End Proc
  370. Procedure SEC
  371.    Erase 1 : Erase 6
  372.    Led Off 
  373.    Load "Loader.PAK",15
  374.    GURULOAD
  375.    Load "Vectors.ABK",1
  376.    Load "Landscape2.PAK",6
  377.    Screen Close 7
  378.    Unpack 6 To 0
  379.    Palette 0 : Colour 1,$0
  380.    Screen Hide 0
  381.    Shift Up 2,20,29,1
  382.    Flash 9,"(f00,30)(000,30)"
  383.    BLOODYRAINBOWS
  384.    VECTORS
  385.    Screen Open 1,352,200,2,Lowres
  386.    Screen Display 1,112,254,352,200
  387.    Set Font 1
  388.    Screen Show 0 : Amal On 
  389.    Palette 0,$FFF
  390.    Cls 0
  391.    Def Scroll 1,0,0 To 352,199,0,-1
  392.    WORD=1
  393.    Repeat 
  394.       Ink 1 : Screen 1
  395.       Text 0,120,WORD$(WORD)
  396.       For T=1 To 88
  397.          Scroll 1
  398.          Wait Vbl 
  399.          JMOUSE=Mouse Key
  400.       Next 
  401.       MWAIT[80]
  402.       For T=1 To 50
  403.          Scroll 1
  404.          Wait Vbl 
  405.          JMOUSE=Mouse Key
  406.       Next 
  407.       Inc WORD
  408.       If WORD>WORDLENGTH Then WORD=1
  409.    Until JMOUSE<>0
  410.    Screen Close 0 : Erase 1
  411.    Rainbow Del 0 : Rainbow Del 1
  412. End Proc
  413. Procedure VECTORS
  414.    Channel 1 To Bob 1
  415.    For T=1 To 60
  416.       Read T1,T2
  417.       Hot Spot T,T1,T2
  418.    Next T
  419.    Data 79,19,82,20,85,21,87,23,88,24,88,26,87,28,85,29,80,31,74,32,66,34
  420.    Data 57,35,45,36,33,37,19,37,4,37,5,37,10,37,16,36,21,35,27,34,32,32,38,31
  421.    Data 43,29,48,28,53,26,58,24,63,23,67,21,72,20,75,19,78,20,81,22,83,23
  422.    Data 84,25,84,27,82,29,79,31,75,33,69,35,62,36,53,38,42,40,30,40,17,40
  423.    Data 4,38,5,40,10,40,16,39,22,38,28,37,33,35,39,33,44,31,50,29,55,27,60,25
  424.    Data 66,23,70,22,75,20
  425.    Double Buffer 
  426.    Set Bob 1,1,%11,
  427.    Bob 1,180,130,1
  428.    A$="A 0,(1,2)(2,2)(3,2)(4,2)(5,2)(6,2)(7,2)(8,2)(9,2)(10,2)(11,2)(12,2)"
  429.    A$=A$+"(13,2)(14,2)(15,2)(16,2)(17,2)(18,2)(19,2)(20,2)(21,2)(22,2)(23,2)"
  430.    A$=A$+"(24,2)(25,2)(26,2)(27,2)(28,2)(29,2)(30,2)(31,2)(32,2)(33,2)(34,2)"
  431.    A$=A$+"(35,2)(36,2)(37,2)(38,2)(39,2)(40,2)(41,2)"
  432.    A$=A$+"(42,2)(43,2)(44,2)(45,2)(46,2)(47,2)(48,2)(49,2)(50,2)(51,2)(52,2)(53,2)"
  433.    A$=A$+"(54,2)(55,2)(56,2)(57,2)(58,2)(59,2)(60,2)"
  434.    Amal 1,A$ : Wait Vbl 
  435. End Proc
  436. Procedure LONGTIMETEXT
  437.    SETUP:
  438.    Led Off 
  439.    Curs Off 
  440.    SCNT=1
  441.    CNT=31
  442.    Load "Purp16.PAK",6
  443.    Unpack 6 To 0 : Screen Hide 0
  444.    Load "ThePhoenix.PAK",6
  445.    Unpack 6 To 5 : Screen Hide 5
  446.    Load "Terminator.PAK",6
  447.    Unpack 6 To 6 : Screen Hide 6
  448.    Load "Gadget.PAK",6
  449.    Screen Close 7
  450.    Unpack 6 To 7 : Screen Hide 7
  451.    Music 1 : Tempo 17
  452.    Screen Open 1,382,310,32,Lowres
  453.    Screen Display 1,116,30,382,310
  454.    Curs Off : Flash Off 
  455.    Screen 1
  456.    Def Scroll 1,1,245 To 382,276,-4,0
  457.    Cls 0 : Get Palette 0
  458.    Screen Open 4,320,256,32,Lowres
  459.    Cls 0 : Curs Off : Flash Off 
  460.    Screen Display 4,140,16,320,256
  461.    Palette 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  462.    Gosub PIXD
  463.    Wait Vbl 
  464.    Hide On 
  465.    Curs Off 
  466.    ROO:
  467.    Wait Vbl 
  468.    Gosub STEXT
  469.    Goto ROO
  470.    PIXD:
  471.    Screen 1
  472.    Dim X(44),Y(44)
  473.    For F=1 To 44
  474.       Read X(F),Y(F)
  475.    Next F
  476.    SCRL$="ABCDEFGHIJKLMNOPQRSTUVWXYZ!()=,.- 0123456789"
  477.    SC$="           THIS DEMO WAS CREATED BY       PHOENIX       AND THE       TERMINATOR    - TWO OF THE MEMBERS OF        GADGET    (GROUP OF AMIGA DUDES WHO HAVE GOT EVERYTHING TOGETHER)   "
  478.    SC$=SC$+"   OK LETS GET ON WITH THE SERIOUS PART OF THIS SCROLLTEXT   FIRST OF ALL LETS GET THE GREETINGS LIST OUT OF THE WAY !!!   A BIG HELLO TO TEX (NEIL MILLER) AND THE ENTIRE AUSSI AMOS USER GROUP"
  479.    SC$=SC$+" ALSO GREETINGS TO ALL THE MEMBERS OF THE NEWLY FORMED GADGET GROUP HERE IN TOOWOOMBA CLICK MOUSE BUTTON"
  480.    Rem 18 high! 
  481.    Data 44,49,63,49,82,49,101,49,120,49,139,49,158,49,177,49,196,49,215,49
  482.    Data 234,49,253,49,272,49,291,49
  483.    Data 44,69,63,69,82,69,101,69,120,69,139,69,158,69,177,69,196,69,215,69
  484.    Data 234,69,253,69
  485.    Data 44,89,63,89,82,89,101,89,120,89,139,89,158,89,177,89
  486.    Data 44,109,63,109,82,109,101,109,120,109,139,109,158,109,177,109,196,109
  487.    Data 215,109
  488.    Rem ********* SCROLL TEXT ROUTINE ********** 
  489.    STEXT:
  490.    Screen 1
  491.    Scroll 1
  492.    Add CNT,4
  493.    If SCNT=49+3 and CNT=4 Then Gosub DISPPHOENIX : TIME[250] : Fade 10 : Goto STEXT
  494.    If SCNT=79+3 and CNT=4 Then Gosub DISPTERMINATOR : TIME[250] : Fade 10 : Goto STEXT
  495.    If SCNT=122+3 and CNT=4 Then Gosub DISPGADGET : TIME[250] : Goto STEXT
  496.    If CNT>31 Then Gosub NCHAR : CNT=0 : Inc SCNT : If SCNT>Len(SC$) Then SCNT=1
  497.    If Mouse Key=1 Then Goto EXIDEMO
  498.    Return 
  499.    NCHAR:
  500.    E$=Mid$(SC$,SCNT,1)
  501.    E=Instr(SCRL$,E$)
  502.    Screen Copy 0,X(E),Y(E),X(E)+17,Y(E)+18 To 1,336,245
  503.    Return 
  504.    End 
  505.    DISPPHOENIX:
  506.    Move Off 
  507.    Screen 4
  508.    Cls 0
  509.    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,0,0,0,0,0,0,0
  510.    Screen Copy 5,0,0,320,250 To 4,0,0
  511.    Fade 10 To 5
  512.    Return 
  513.    DISPTERMINATOR:
  514.    Move Off 
  515.    Screen 4
  516.    Cls 0
  517.    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,0,0,0,0,0,0,0
  518.    Screen Copy 6,0,0,320,250 To 4,0,0
  519.    Fade 10 To 6
  520.    Return 
  521.    DISPGADGET:
  522.    Move Off 
  523.    Screen 4
  524.    Cls 0
  525.    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,0,0,0,0,0,0,0
  526.    Screen Copy 7,0,0,320,250 To 4,0,0
  527.    Fade 10 To 7
  528.    Return 
  529.    EXIDEMO:
  530.    Screen Close 0
  531.    Amal Off 
  532.    Screen Close 1
  533.    Screen Close 4 : Screen Close 5
  534.    Screen Close 6
  535.    Screen Close 7 : SC$=""
  536. End Proc
  537. Procedure IVEGOTBIGBALLS
  538.    Load "BigBalls.ABK"
  539.    Load "Laugh.ABK"
  540.    Load "Blue.ABK"
  541.    Randomize Timer
  542.    Led On 
  543.    Screen Open 0,320,290,8,Lowres
  544.    Double Buffer 
  545.    Cls 0 : Curs Off : Flash Off : Hide On 
  546.    Set Rainbow 1,0,60,"(2,1,15)(2,-1,15)","(2,1,15)(2,-1,15)","(2,1,15)(2,-1,15)"
  547.    Rainbow 1,4,0,300
  548.    Get Sprite Palette 
  549.    Ink 0 : Bar 0,0 To 8,8
  550.    Ink 1,0
  551.    Hot Spot 1,0,0
  552.    Text 100,32,"THE END TO THE"
  553.    Text 120,92,"AMOS DEMO"
  554.    Text 110,152,"'GURU TIME'"
  555.    Text 50,212,"By PHOENIX & THE TERMINATOR"
  556.    Text 110,230,"<CLICK MOUSE>"
  557.    Dim X(10),Y(10),X1(10),Y1(10)
  558.    X(1)=52 : Y(1)=15 : X(2)=36 : Y(2)=151 : X(3)=175 : Y(3)=238 : X(4)=140 : Y(4)=23
  559.    X1(1)=6 : Y1(1)=6 : X1(2)=-1 : Y1(2)=2 : X1(3)=2 : Y1(3)=-3 : X1(4)=-3 : Y1(4)=-4
  560.    Repeat 
  561.       For TEMP=1 To 4
  562.          Bob TEMP,X(TEMP),Y(TEMP),1
  563.          If Bob Col(TEMP)=-1 Then X1(TEMP)=-X1(TEMP) : Y1(TEMP)=-Y1(TEMP) : Sam Play 1 : X(TEMP)=X(TEMP)+X1(TEMP) : Y(TEMP)=Y(TEMP)+Y1(TEMP)
  564.          X(TEMP)=X(TEMP)+X1(TEMP) : Y(TEMP)=Y(TEMP)+Y1(TEMP)
  565.          If X(TEMP)>290 Then X1(TEMP)=-X1(TEMP) : X(TEMP)=290
  566.          If X(TEMP)<1 Then X1(TEMP)=-X1(TEMP) : X(TEMP)=1
  567.          If Y(TEMP)>250 Then Y1(TEMP)=-Y1(TEMP) : Y(TEMP)=250
  568.          If Y(TEMP)<1 Then Y1(TEMP)=-Y1(TEMP) : Y(TEMP)=1
  569.       Next 
  570.    Until Mouse Key<>0
  571.    Led Off 
  572.    Music 1 : TIME[750] : Music Off 
  573.    PHOENIX_TERMINATOR=9
  574.    For A=1000 To 20000
  575.    Poke A,PHOENIX_TERMINATOR : Rem HA HA HA HA HA HA    
  576.    Next 
  577.    End 
  578. End Proc
  579. Procedure GRUBSQUASH
  580.    Screen Open 7,352,200,16,Lowres
  581.    Screen Display 7,112,0,352,200
  582.    Load "Worm.ABK",1
  583.    Load "Wormfart.Abk"
  584.    Get Sprite Palette 
  585.    Flash Off : Curs Off : Hide On : Cls 0 : Double Buffer : Get Sprite Palette 
  586.    Priority On 
  587.    Bob 1,10,154,9
  588.    Bob 2,130,0,14
  589.    Bob 3,0,0,3
  590.    Channel 1 To Bob 1
  591.    Channel 2 To Bob 1
  592.    Channel 3 To Bob 1
  593.    Channel 4 To Bob 2
  594.    Channel 5 To Bob 3
  595.    A$="Anim 0,(9,4)(6,4)(1,4)(6,4)(9,4)"
  596.    B$="Anim 1,(9,10)(13,5)(10,5)(7,10)(2,30)(10,5)(13,5)(9,5)"
  597.    C$="Anim 0,(1,2)(12,2)(11,2)(8,2)(11,2)(12,2)(1,2)(9,2)"
  598.    D$="M 0,174,20"
  599.    E$="Anim 0,(3,7)(4,7)(5,7)"
  600.    Amal 1,A$
  601.    Amal 2,B$
  602.    Amal 3,C$
  603.    Amal 4,D$
  604.    Amal 5,E$
  605.    Amal On 1
  606.    T=20
  607.    For X=360 To 160 Step -1
  608.       If T=0 and X>170 Then T=20 : Sam Play %1111,2,15000
  609.       Dec T
  610.       Bob 1,X,,
  611.       Wait Vbl 
  612.    Next X
  613.    Amal Off 1 : Amal On 2 : Wait 22 : Sam Play %1111,1,8000 : Wait 28 : Amal Off 2 : Amal On 3
  614.    T=15
  615.    For X=160 To 60 Step -3
  616.       If T=0 Then T=15 : Sam Play %1111,2,19000
  617.       Dec T
  618.       If X=121 Then Amal On 4
  619.       Bob 1,X,,
  620.       Wait Vbl 
  621.    Next X
  622.    Amal Off 3
  623.    Bob 3,41,171,
  624.    Bob Off 1
  625.    Boom 
  626.    Amal On 5
  627.    Wait 20
  628.    Amal Off 
  629.    Priority Off 
  630.    TIME[100]
  631.    Fade 7
  632.    TIME[100]
  633.    Screen Close 7
  634.    Erase 1
  635. End Proc
  636. Procedure MORETEXT
  637.    Inc COUNT
  638.    If COUNT>DTLENGTH Then COUNT=1
  639.    SIZE=Len(DT$(COUNT))
  640.    X=(352/2)-(SIZE*7)/2
  641.    Ink 31,0
  642.    Text X,289,DT$(COUNT)
  643. End Proc
  644. Procedure INFADE
  645.    Screen 2
  646.    Screen Copy 1 To 2
  647.    Palette 0,0,0,0,0,0,0,0
  648.    Fade 4 To 1
  649.    TIME[150]
  650.    Fade 2
  651.    TIME[50]
  652. End Proc
  653. Procedure PICCYON_DOWN[SCR]
  654.    View 
  655.    For Y=-211 To 20 Step 8
  656.       Screen Display SCR,116,Y,352,298
  657.       Wait Vbl 
  658.    Next 
  659.    Screen Close 3
  660. End Proc
  661. Procedure BOUNCE[SCR]
  662.    For LOP=30 To 0 Step -5
  663.       For LOP1=1 To LOP Step 10
  664.          Screen Display SCR,116,20-LOP1,352,280
  665.          View 
  666.          Wait Vbl 
  667.       Next LOP1
  668.       For LOP2=LOP To 1 Step -5
  669.          Screen Display SCR,116,20-LOP2,352,280
  670.          View 
  671.          Wait Vbl 
  672.       Next LOP2
  673.    Next LOP
  674.    View 
  675.    Screen Display 4,116,24,352,280
  676. End Proc
  677. Procedure TIME[T]
  678.    TIME=Timer
  679.    While Timer<TIME+T : Wend 
  680. End Proc
  681. Procedure MAKETEXT
  682.    T=0
  683.    Repeat 
  684.       T=T+1
  685.       Read DT$(T)
  686.    Until DT$(T)="XXXX"
  687.    DTLENGTH=T-1
  688.    Data "WELCOME ONE AND ALL"
  689.    Data "TO THE AMOS DEMO"
  690.    Data "-------->GURU TIME<-------"
  691.    Data "CONCIEVED DESIGNED AND PROGRAMMED"
  692.    Data "BY"
  693.    Data "PHOENIX"
  694.    Data "AND"
  695.    Data "THE TERMINATOR"
  696.    Data "MEMBERS OF THE"
  697.    Data "MANAGEMENT OF MEMORY"
  698.    Data " "
  699.    Data "HAVE A SOFTWARE FAILURE?!"
  700.    Data "THE DREADED GURU RETURNS"
  701.    Data "TO PLAGUE THE COMPUTERS"
  702.    Data "OF THE FUTURE."
  703.    Data "THE WORD ON THE STREET"
  704.    Data "IS THAT WORKBENCH 2.0"
  705.    Data "KILLS THE GURU"
  706.    Data "- NOW IT WILL BE IMMORTALISED"
  707.    Data "WITHIN THIS DEMO"
  708.    Data "FOR ALL FUTURE USERS"
  709.    Data "TO GAZE BACK UPON."
  710.    Data " "
  711.    Data "GREETINGS GO OUT TO ALL OTHER"
  712.    Data "MEMBERS OF  G.A.D.G.E.T."
  713.    Data "(Group of Amiga Dudes, who've"
  714.    Data "Got Everything Together)"
  715.    Data "AND ALL OTHER HOME GROWN"
  716.    Data "AUSTRALIAN USER GROUPS"
  717.    Data "AND PROGRAMMERS. MORE GREETINGS"
  718.    Data "IN THE NEXT SECTION..."
  719.    Data " "
  720.    Data "GADGET IS OPEN TO ANYONE"
  721.    Data "WHO WISHES TO JOIN -"
  722.    Data "LOCAL, NATIONAL OR OVERSEAS"
  723.    Data "IT IS A USER GROUP"
  724.    Data "AND DOES NOT CONDONE PIRACY"
  725.    Data "ANYWAY MEMBERSHIP IS TWO"
  726.    Data "DOLLARS (AUSTRALIAN) TO ATTEND"
  727.    Data "EACH MEETING, AND A DISK WILL"
  728.    Data "ALSO BE AVAILABLE, CONSISTING"
  729.    Data "OF OUR OWN PROGRAMS, MUSIC,"
  730.    Data "DEMO'S (SUCH AS THIS ONE)"
  731.    Data "AND OTHER SUCH BIT'S AND PIECES"
  732.    Data "FROM THE OTHER MEMBERS OF GADGET."
  733.    Data "TUTORIALS AND INFORMATION WILL"
  734.    Data "BE AVAILABLE AT EACH MEETING"
  735.    Data "MEMBERS WILL ALSO BE ABLE TO"
  736.    Data "HAVE ACCESS TO HARDWARE, BOUGHT"
  737.    Data "FOR THE GROUP WITH THE"
  738.    Data "MEMBERSHIP FEES"
  739.    Data " "
  740.    Data "THIS DEMO WILL ONLY WORK"
  741.    Data "ON ANY AMIGA WITH"
  742.    Data "AT LEAST 1 MEG TOTAL"
  743.    Data "(IT IS UNTRIED ON A"
  744.    Data "HALF MEG MACHINE)"
  745.    Data "THOSE WITHOUT THE"
  746.    Data "ABOVE SPECIFICATIONS"
  747.    Data "- - - BAD LUCK - - -"
  748.    Data ""
  749.    Data "CLICK THE MOUSE ON THE GADGET"
  750.    Data "TO CHANGE THE TUNE"
  751.    Data "THE MUSIC YOU ARE NOW"
  752.    Data "LISTENING TO WAS CREATED"
  753.    Data "BY PHOENIX,"
  754.    Data " "
  755.    Data "WE ARE SITTING HERE THINKING"
  756.    Data "OF WHAT TO SAY IN"
  757.    Data "THIS SCOLL TEXT "
  758.    Data ""
  759.    Data "BLOODY HELL! - I GAVE"
  760.    Data "UP GOING TO A NEW YEARS"
  761.    Data "EVE BEACH PARTY"
  762.    Data "TO FINISH THIS TEXT!"
  763.    Data " "
  764.    Data "WELL, IT WASN'T REALLY"
  765.    Data "A BEACH PARTY - IT'S"
  766.    Data "PRETTY HARD TO FIND A"
  767.    Data "BEACH 200 km INLAND"
  768.    Data "FROM THE COAST."
  769.    Data "(TOOWOOMBA - YUCK!)"
  770.    Data "HOWEVER, SOME SAND"
  771.    Data "FROM DOWN THE COAST"
  772.    Data "WAS BOUGHT UP, AND"
  773.    Data "THE POOL WAS FULL."
  774.    Data "I HEARD THAT A GOOD"
  775.    Data "TIME WAS HAD BY ALL"
  776.    Data "DESPITE THE LACK OF WAVES."
  777.    Data " "
  778.    Data "AT THE TIME THIS IS BEING"
  779.    Data "WRITTEN DOWN, I'M TRYING"
  780.    Data "TO GET AMAL (AMOS ANIMATION"
  781.    Data "LANGUAGE) TO ANIMATE THE"
  782.    Data "LITTLE WORM."
  783.    Data "(YOU'LL SEE IT LATER)"
  784.    Data "(ALSO SEE NEXT SCROLL TEXT"
  785.    Data "FOR MORE INFO.)"
  786.    Data "NOT HAVING MUCH SUCCESS (YET)"
  787.    Data " "
  788.    Data "ANOTHER PROBLEM WE'VE BEEN"
  789.    Data "TRYING TO OVERCOME IS THAT"
  790.    Data "FOR SOME UNKNOWN REASON,"
  791.    Data "ALL OF THE PACKED PICTURES"
  792.    Data "IN MEMORY SEEM TO DISAPPEAR"
  793.    Data "WHENEVER WE LOAD UP A SPRITE"
  794.    Data "BANK OR USE AMAL - WEIRD!"
  795.    Data "THERE MUST BE A PROBLEM"
  796.    Data "WITH AMOS. (OR US)"
  797.    Data " "
  798.    Data "STILL A FAIR WAY TO GO -"
  799.    Data "I NEED A COPPER LIST FOR THIS"
  800.    Data "SCROLL, SOUND EFFECTS, CHANGE"
  801.    Data "THE BOUNCING SCROLL,.... ETC."
  802.    Data " "
  803.    Data "ANYWAY, YOU HAVE NOW COME"
  804.    Data "THE END OF THE SCROLL TEXT"
  805.    Data "BYE"
  806.    Data " "
  807.    Data "CLICK <RIGHT> MOUSE BUTTON"
  808.    Data "TO CONTINUE WITH THE DEMO"
  809.    Data " "
  810.    Data "XXXX"
  811. End Proc
  812. Procedure TUNEFADE
  813.    For T=63 To 0 Step -1
  814.       Mvolume T
  815.       Wait 2
  816.    Next 
  817.    Music Off 
  818.    Mvolume 63
  819. End Proc
  820. Procedure MAKETEXT2
  821.    TEMP=0
  822.    Repeat 
  823.       TEMP=TEMP+1
  824.       Read WORD$(TEMP)
  825.    Until WORD$(TEMP)="XXXX"
  826.    WORDLENGTH=TEMP-1
  827.    Data ""
  828.    Data "      Some factual data:"
  829.    Data "   Over 1000 lines of code"
  830.    Data "    Our first EVER Demo"
  831.    Data "      4 months of coding"
  832.    Data "     I started this demo"
  833.    Data "     with no programming"
  834.    Data "      knowledge at all"
  835.    Data "       NOT BAD HUH !!"
  836.    Data "    Over 400k of graphics"
  837.    Data "    Close to 350k of sound"
  838.    Data "    This screen contains -"
  839.    Data "    104 Different Colours"
  840.    Data "    Note to RED SECTOR"
  841.    Data "        And SCOOPEX"
  842.    Data "    - Hope you don't mind"
  843.    Data "    Us using part of your"
  844.    Data "             Demo!"
  845.    Data "  (It was done as a tribute)"
  846.    Data "       You guys are the"
  847.    Data "          GREATEST"
  848.    Data "     We hope to be as good"
  849.    Data "       As you someday..."
  850.    Data "   More greets to the aussi"
  851.    Data "      AMOS users group"
  852.    Data "       And to Francois"
  853.    Data "          and Daisy"
  854.    Data "       Heres what we"
  855.    Data "   Used to create this demo"
  856.    Data "        Noisetracker 2.0"
  857.    Data "    Soundtracker 2.4 & 2.5"
  858.    Data "         2 Amiga 500's"
  859.    Data "       3 Meg of Memory"
  860.    Data "        Deluxe  Paint III"
  861.    Data "    Action replay cartridge"
  862.    Data "      Audio Engineer Plus"
  863.    Data "             8 Disks"
  864.    Data "        Many Diskdoctors"
  865.    Data "           AMOS 1.2!"
  866.    Data "       If any member of"
  867.    Data "     the Aussi AMOS club"
  868.    Data "     would like to contact"
  869.    Data "   me for information about"
  870.    Data "       GADGET or AMOS"
  871.    Data "  Or would like an unlocked"
  872.    Data "      copy of this demo"
  873.    Data "       Then write to ...."
  874.    Data "        NICK ASHMAN"
  875.    Data "        11 Weise Street"
  876.    Data "       OAKEY QLD 4401"
  877.    Data "         AUSTRALIA"
  878.    Data "     and send your reg no"
  879.    Data "        and i will put"
  880.    Data "     Your name in the next"
  881.    Data "       demos scroll text"
  882.    Data "    I only swap legal stuff"
  883.    Data "    Also if anyone has some"
  884.    Data "      graphics or music"
  885.    Data "      or vector routines"
  886.    Data "     that they want in a"
  887.    Data "     DEMO then contact me"
  888.    Data "     OK i am running low"
  889.    Data "       on buffer space"
  890.    Data "         and memory"
  891.    Data "        until next time"
  892.    Data "             BYE BYE"
  893.    Data "XXXX"
  894. End Proc
  895. Procedure GURULOAD
  896.    Unpack 15 To 7
  897.    Flash 1,"(f00,50)(000,50)"
  898. End Proc
  899. Procedure BLOODYRAINBOWS
  900.    Set Rainbow 0,1,75,"(3,1,15)(3,-1,15)","",""
  901.    For T=1 To 21
  902.       Rain(0,T)=$F00
  903.    Next T
  904.    HEXADD=$F10
  905.    For T=22 To 36
  906.       Rain(0,T)=HEXADD
  907.       HEXADD=HEXADD+$10
  908.    Next 
  909.    For T=37 To 41
  910.       Rain(0,T)=$FF0
  911.    Next T
  912.    HEXADD=$EF0
  913.    For T=42 To 55
  914.       Rain(0,T)=HEXADD
  915.       HEXADD=HEXADD-$100
  916.    Next T
  917.    For T=56 To 61
  918.       Rain(0,T)=$F0
  919.    Next T
  920.    HEXADD=$F1
  921.    For T=62 To 74
  922.       Rain(0,T)=HEXADD
  923.       HEXADD=HEXADD+$1
  924.    Next T
  925.    Screen 0
  926.    Set Rainbow 1,1,80,"(2,1,15)(2,-1,15)","(2,1,15)(2,-1,15)",""
  927.    For T=1 To 21 Step 2
  928.       Rain(1,T)=$F00
  929.    Next 
  930.    For T=2 To 74 Step 2
  931.       Rain(1,T)=$0
  932.    Next 
  933.    TEMP=$F20
  934.    For T=23 To 35 Step 2
  935.       Rain(1,T)=TEMP
  936.       TEMP=TEMP+$20
  937.    Next 
  938.    Rain(1,37)=$FF0
  939.    Rain(1,39)=$FF0
  940.    TEMP=$FF0
  941.    For T=41 To 55 Step 2
  942.       Rain(1,T)=TEMP
  943.       TEMP=TEMP-$200
  944.    Next 
  945.    Rain(1,57)=$F0
  946.    Rain(1,59)=$F0
  947.    TEMP=$F0
  948.    For T=61 To 75 Step 2
  949.       Rain(1,T)=TEMP
  950.       TEMP=TEMP+$2
  951.    Next 
  952.    Rainbow 0,0,104,74
  953.    Rainbow 1,0,230,1090
  954. End Proc
  955. Procedure MWAIT[TIME]
  956.    TEMP=Timer
  957.    While Timer<TEMP+TIME
  958.       JMOUSE=Mouse Key
  959.       If JMOUSE<>0 Then Goto XITOUT
  960.    Wend 
  961.    XITOUT:
  962. End Proc
  963. '
  964. '  
  965. '  
  966. '
  967. '
  968. '
  969. '
  970. '
  971. '
  972. '
  973. '
  974. '
  975. '
  976. '
  977. '
  978. '
  979. '
  980. '
  981. '
  982. '