home *** CD-ROM | disk | FTP | other *** search
/ AMOS PD CD / amospdcd.iso / 351-375 / apd352 / programs / animdots.amos / animdots.amosSourceCode next >
AMOS Source Code  |  1991-10-18  |  4KB  |  207 lines

  1. Set Buffer 15
  2. L0G0
  3. INITVU
  4. DSTART
  5. '
  6. Procedure L0G0
  7.    Music 1
  8.    Auto View Off 
  9.    Unpack 10 To 1 : Hide On 
  10.    Screen Display 1,140,38,,58
  11.    Palette $0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  12.    Auto View On 
  13.    Fade 1,$4,$FFF,$EEE,$DDD,$CCC,$BBB,$AAA,$999,$888,$777,$666,$555,$444,$333,$222,$111
  14. End Proc
  15. '
  16. Procedure DSTART
  17.    Dim X$(30),X(30)
  18.    Z$="WELCOME TO THE ZIRUS PROGRAMS DISK VOLUME ONE      WHO IS ZIRUS "
  19.    Z$=Z$+"YOU MIGHT BE ASKING     WELL I HAVE PRODUCED A FEW DEMOS FOR "
  20.    Z$=Z$+"THE APD LIBRARY ALLREADY UNDER A DIFFERENT NAME   ROBOTS   "
  21.    Z$=Z$+"BUT NOW I AM NOT GOING TO DO ANY MORE DEMOS    WHY   BECAUSE "
  22.    Z$=Z$+"I AM FED UP WITH THEM   ONCE YOU HAVE DONE ONE DEMO ALL THE "
  23.    Z$=Z$+"OTHERS ARE PRETTY MUCH THE SAME     ANYWAY I AM STARTING TO "
  24.    Z$=Z$+"DO PROGRAMS TO HELP OTHER AMOS USERS   WHEN I HAVE THE TIME"
  25.    Z$=Z$+" THAT IS AND THIS IS THE FIRST ONE   THIS DISK CONTAINS SOME "
  26.    Z$=Z$+"DEMOS THAT I HAVE NOT RELEASED BEFORE  AND OTHER PROGRAMS "
  27.    Z$=Z$+"IT ALSO CONTAINS SOME MUSIC THAT I DID AND YOU CAN USE THEM AS LONG AS "
  28.    Z$=Z$+"YOU CREDIT ME  FIND MY NAME IN THE READ ME FILE   "
  29.    Z$=Z$+"   OK  IF YOU PRESS THE BUTTON "
  30.    Z$=Z$+"YOU WILL EXIT BACK TO THE WORKBENCH      HAPPY PROGRAMMING "
  31.    Z$=Z$+"                        "
  32.    '
  33.    Auto View Off 
  34.    Screen Open 7,320,30,2,Lowres : Screen Hide 7 : Hide On 
  35.    Palette $4,$FFF
  36.    Screen Open 0,400,Screen Height,Screen Colour,Lowres
  37.    Screen Display 0,120,283,,
  38.    Double Buffer 
  39.    Autoback 0
  40.    Curs Off 
  41.    Cls 0
  42.    Flash Off 
  43.    Screen Copy 7,0,200,39,210 To 0,200,0
  44.    Screen 0
  45.    Get Palette 7
  46.    SCRL$="ABCDEFGHIJKLMNOPQRSTUVWXYZ*19 "
  47.    Wait Vbl 
  48.    Curs Off 
  49.    '
  50.    Screen Close 7
  51.    Restore SD
  52.    For F=1 To 30
  53.       Read TEMP$,X(F)
  54.    Next F
  55.    D0TS
  56.    For A=2 To 5
  57.       Screen To Back A
  58.    Next A
  59.    Screen 0
  60.    Goto STDEM
  61.    '
  62.    SD:
  63.    Data "A",1
  64.    Data "B",2
  65.    Data "C",3
  66.    Data "D",4
  67.    Data "E",5
  68.    Data "F",6
  69.    Data "G",7
  70.    Data "H",8
  71.    Data "I",9
  72.    Data "J",10
  73.    Data "K",11
  74.    Data "L",12
  75.    Data "M",13
  76.    Data "N",14
  77.    Data "O",15
  78.    Data "P",16
  79.    Data "Q",17
  80.    Data "R",18
  81.    Data "S",19
  82.    Data "T",20
  83.    Data "U",21
  84.    Data "V",22
  85.    Data "W",23
  86.    Data "X",24
  87.    Data "Y",25
  88.    Data "Z",26
  89.    Data "*",27
  90.    Data "1",28
  91.    Data "9",29
  92.    Data " ",30
  93.    Rem
  94.    Rem ********* SCROLL TEXT ROUTINE ********** 
  95.    '
  96.    STDEM:
  97.    SP=1
  98.    CT=1
  99.    Do 
  100.       TEMP=Varptr(Z$)
  101.       TEMP2=Len(Z$)
  102.       TEMP:
  103.       View 
  104.       For LOP=0 To TEMP2-1
  105.          E=Instr(SCRL$,Chr$(Peek(TEMP+LOP)))
  106.          Paste Bob 350,8,X(E)
  107.          Inc CT
  108.          For LOP1=1 To 8 Step SP
  109.             Screen Swap 
  110.             Wait Vbl 
  111.             Screen Copy Physic(0),0,8,400,16 To Logic(0),-SP,8
  112.             If Mouse Key=1 Then QUIT
  113.             If CT=100 Then Gosub PIC1
  114.             If CT=300 Then Gosub PIC2
  115.             If CT=500 Then Gosub PIC3
  116.             If CT=700 Then Gosub PIC4
  117.          Next LOP1
  118.       Next LOP
  119.    Loop 
  120.    '
  121.    PIC1:
  122.    Screen To Front 3
  123.    View 
  124.    Screen 3 : Shift Up 2,4,31,1
  125.    Screen 0
  126.    Return 
  127.    '
  128.    PIC2:
  129.    Screen To Front 4
  130.    View 
  131.    Screen 4 : Shift Down 2,3,31,1
  132.    Screen 0
  133.    Return 
  134.    '
  135.    PIC3:
  136.    Screen To Front 5
  137.    View 
  138.    Screen 5 : Shift Up 2,4,31,1
  139.    Screen 0
  140.    Return 
  141.    '
  142.    PIC4:
  143.    Screen To Front 2
  144.    View 
  145.    Screen 2 : Shift Down 1,3,31,1
  146.    Screen 0
  147.    CT=1
  148.    Return 
  149.    '
  150. End Proc
  151. '
  152. Procedure INITVU
  153.    Screen Open 3,320,256,2,Lowres : Hide On 
  154.    Screen To Back 3
  155.    For I=2 To 3
  156.       Set Rainbow I-1,0,256,"","",""
  157.       '
  158.       B=15
  159.       For L=0 To 0
  160.          If I=2 Then MBOW[L,B,I-1,256,16,1]
  161.          If I=3 Then MBOW[L,B,I-1,256,16,1]
  162.          Dec B
  163.       Next L
  164.       '
  165.    Next I
  166.    Rainbow 1,0,92,16
  167.    Rainbow 2,0,266,16
  168. End Proc
  169. '
  170. Procedure MBOW[L,X,N,R,G,B]
  171.    L1=L+7
  172.    For I=X To 0 Step -2
  173.       Rain(N,L1)=I*R+I*G+I*B
  174.       Dec L1
  175.    Next I
  176.    L1=L+8
  177.    For I=X To 0 Step -2
  178.       Rain(N,L1)=I*R+I*G+I*B
  179.       Inc L1
  180.    Next I
  181. End Proc
  182. '
  183. Procedure D0TS
  184.    Unpack 11 To 2 : Screen Display 2,140,109,,
  185.    Unpack 12 To 3 : Screen Display 3,140,109,,
  186.    Unpack 13 To 4 : Screen Display 4,140,109,,
  187.    Unpack 14 To 5 : Screen Display 5,140,109,,
  188.    Screen 2 : Shift Down 1,3,31,1
  189. End Proc
  190. '
  191. Procedure QUIT
  192.    Rainbow Del 1
  193.    Rainbow Del 2
  194.    For A=2 To 5
  195.       Screen Hide A
  196.    Next A
  197.    For A=2 To 5
  198.       Screen Close A
  199.    Next A
  200.    Screen 0 : Fade 5 : Wait 75
  201.    Screen 1 : Fade 5 : Wait 75
  202.    For A=63 To 0 Step -1
  203.       Volume A : Wait 2
  204.    Next A
  205.    Music Off 
  206.    End 
  207. End Proc