home *** CD-ROM | disk | FTP | other *** search
/ AMOS PD CD / amospdcd.iso / sourcecode / demos / skulldemo.amos / skulldemo.amosSourceCode < prev    next >
AMOS Source Code  |  1991-02-24  |  6KB  |  194 lines

  1. Dim X$(49),X(49),Y(49)
  2. Global X$(),X(),Y(),SCNT,CNT,SC$,SCRL$
  3. DEMO
  4. Procedure DEMO
  5.    Hide On : Break Off : Load "skull.abk",3
  6.    B$="A 0,(1,4)(2,4)(3,4)(4,4)(5,4)(6,4)(7,4)(8,4);"
  7.    A$=B$+"Let R0=Z(5)+1; Let R1=Z(5)+1;"
  8.    A$=A$+"Loop: Let X = X + R0; Let Y = Y + R1; Pause; Pause; "
  9.    A$=A$+"If X > 290 Jump A; If X < 27 Jump A;"
  10.    A$=A$+"If Y < 14 Jump B; If Y > 82 Jump B;"
  11.    A$=A$+"Jump Loop"
  12.    A$=A$+"A: Let R0 = R0 - R0 - R0; Let X = X + R0; Jump Loop"
  13.    A$=A$+"B: Let R1 = R1 - R1 - R1; Let Y = Y + R1; Jump Loop"
  14.    D$="A 0,(9,4)(10,4)(1,4);"
  15.    C$="       AUtotest(Let R1=Vu(R0)*1; If R1=0 eXit else Direct Start)"
  16.    C$=C$+"Start: Let R2=R1; Let X=R0*80+40; Let Y=RA-R1; Pause;"
  17.    C$=C$+"       Move 0,R2,RB; Wait;"
  18.    TB=5
  19.    Randomize Timer
  20.    Y=50 : NN=0
  21.    Unpack 10 To 0 : Double Buffer : Flash Off : Led Off : Music 1 : Unpack 11 To 2 : Unpack 6 To 3 : Screen To Back 3
  22.    Amreg(0)=240 : Amreg(1)=20
  23.    Set Rainbow 0,8,280,"","",""
  24.    Rainbow 0,0,0,280
  25.    Colour Back 0
  26.    Restore RDATA
  27.    For C=0 To 279 : Read CVA : Rain(0,C)=CVA
  28.    Next C : View 
  29.    RDATA:
  30.    Data $0,$0,$0,$0,$0,$0,$0,$0
  31.    Data $0,$0,$0,$0,$0,$0,$0,$0
  32.    Data $0,$0,$0,$0,$0,$0,$0,$0
  33.    Data $0,$0,$0,$0,$0,$0,$0,$0
  34.    Data $0,$0,$0,$0,$0,$0,$0,$0
  35.    Data $0,$0,$0,$0,$0,$0,$0,$0
  36.    Data $0,$0,$0,$0,$0,$0,$0,$0
  37.    Data $0,$0,$0,$0,$0,$0,$0,$0
  38.    Data $0,$0,$0,$0,$0,$0,$0,$0
  39.    Data $0,$0,$0,$0,$0,$0,$0,$0
  40.    Data $0,$0,$0,$0,$0,$0,$0,$0
  41.    Data $0,$0,$0,$0,$0,$0,$0,$0
  42.    Data $0,$0,$0,$0,$0,$0,$0,$0
  43.    Data $0,$0,$0,$0,$0,$0,$0,$0
  44.    Data $0,$0,$0,$0,$0,$0,$0,$0
  45.    Data $0,$0,$0,$0,$0,$0,$0,$0
  46.    Data $0,$0,$0,$0,$0,$0,$0,$0
  47.    Data $0,$0,$0,$0,$0,$0,$0,$0
  48.    Data $0,$0,$0,$0,$0,$0,$0,$0
  49.    Data $0,$0,$0,$0,$0,$0,$0,$0
  50.    Data $0,$0,$0,$0,$0,$0,$0,$0
  51.    Data $0,$F00,$F00,$F00,$F00,$F00,$F00,$F00
  52.    Data $F00,$F00,$F00,$F00,$F00,$F00,$F00,$F00
  53.    Data $F00,$F00,$F00,$F00,$F00,$E00,$E00,$D00
  54.    Data $D00,$D00,$C00,$C00,$C00,$B00,$B00,$B00
  55.    Data $A00,$A00,$A00,$900,$900,$900,$800,$800
  56.    Data $800,$700,$700,$700,$600,$600,$500,$500
  57.    Data $500,$400,$400,$400,$300,$300,$300,$200
  58.    Data $200,$100,$100,$0,$0,$0,$0,$0
  59.    Data $0,$0,$0,$0,$0,$0,$0,$0
  60.    Data $0,$0,$0,$0,$0,$0,$0,$0
  61.    Data $0,$0,$0,$0,$0,$0,$0,$0
  62.    Data $0,$0,$0,$0,$0,$0,$0,$0
  63.    Data $0,$0,$0,$0,$0,$0,$0,$0
  64.    Data $0,$0,$0,$0,$0,$0,$0,$0
  65.    Data $0,$0,$0,$0,$0,$0,$0,$0
  66.    MESSAGE
  67.    SETUP
  68.    MAKE_FONT
  69.    Screen 0
  70.    For N=7 To 10
  71.       Inc NN
  72.       Rem Position bob   
  73.       Bob N,(NN)*80,220,9
  74.       Rem Assign channel to bob
  75.       Channel N To Bob N
  76.       Rem Assign amal command to bob 
  77.       Amal N,D$+"Let R0="+Str$(NN-1)+C$
  78.       Amal On N
  79.    Next N
  80.    For Z=1 To TB
  81.       Bob Z,(53*Z),Y,1
  82.       Channel Z To Bob Z
  83.       Amal Z,B$
  84.       Amal On 
  85.    Next Z
  86.    Wait 100
  87.    For Z=1 To TB
  88.       Amal Z,A$
  89.       Amal On Z
  90.       Wait 50
  91.    Next Z
  92.    Channel 15 To Screen Display 2
  93.    Amal 15,"L: M 0,20,20; M0,-20,20; J L"
  94.    Amal On 15
  95.    Repeat 
  96.       Screen 2 : Scroll 1 : Gosub MOVE_TEXT
  97.    Until Mouse Key>0
  98.    DEMODIE:
  99.    Screen 2 : Fade 4 : Wait 4*15 : Screen 0 : Fade 4 : Wait 4*15
  100.    Screen Close 2 : Screen Close 3 : Screen Close 0 : Erase 3 : Erase 10 : Erase 11 : Erase 6 : Rainbow Del 0
  101.    End 
  102.    MOVE_TEXT:
  103.    CNT=CNT+4
  104.    If CNT>40 Then Proc NEW_CHARACTER : CNT=0 : Inc SCNT
  105.    If SCNT>Len(SC$) Then SCNT=1
  106.    Return 
  107. End Proc
  108. Procedure SETUP
  109.    Screen 2
  110.    SCRL$="ABCDEFGHIJKLMNOPQRSTUVWXYZ.,@-+!?()':;0123456789 "
  111.    SCNT=1
  112.    CNT=31
  113.    Def Scroll 1,1,0 To 380,45,-3,0
  114. End Proc
  115. Procedure MAKE_FONT
  116.    For F=1 To 49
  117.       Read X$(F),X(F),Y(F)
  118.    Next F
  119.    Data "A",0,0
  120.    Data "B",33,0
  121.    Data "C",66,0
  122.    Data "D",99,0
  123.    Data "E",132,0
  124.    Data "F",165,0
  125.    Data "G",198,0
  126.    Data "H",231,0
  127.    Data "I",264,0
  128.    Data "J",0,34
  129.    Data "K",33,34
  130.    Data "L",66,34
  131.    Data "M",99,34
  132.    Data "N",132,34
  133.    Data "O",165,34
  134.    Data "P",198,34
  135.    Data "Q",231,34
  136.    Data "R",264,34
  137.    Data "S",0,67
  138.    Data "T",33,67
  139.    Data "U",66,67
  140.    Data "V",99,67
  141.    Data "W",132,67
  142.    Data "X",165,67
  143.    Data "Y",198,67
  144.    Data "Z",231,67
  145.    Data ".",264,67
  146.    Data ",",0,100
  147.    Data "@",33,100
  148.    Data "-",66,100
  149.    Data "+",99,100
  150.    Data "!",132,100
  151.    Data "?",165,100
  152.    Data "(",198,100
  153.    Data ")",231,100
  154.    Data "'",264,100
  155.    Data ":",0,133
  156.    Data ";",33,133
  157.    Data "0",66,133
  158.    Data "1",99,133
  159.    Data "2",132,133
  160.    Data "3",165,133
  161.    Data "4",198,133
  162.    Data "5",231,133
  163.    Data "6",264,133
  164.    Data "7",0,166
  165.    Data "8",33,166
  166.    Data "9",66,166
  167.    Data " ",99,166
  168. End Proc
  169. Procedure MESSAGE
  170.    SC$=SC$+"HEY DUDES!       I'M BACK WITH YET ANOTHER SMALL DEMO!      "
  171.    SC$=SC$+"THIS ONE IS CALLED @SKULL-DANCE!@           OR DID YOU SORT OF FIGURE"
  172.    SC$=SC$+" IT OUT FOR YOUR SELVES?? ................. DO ANY OF YOU "
  173.    SC$=SC$+"RECOGNIZE THE MUSIC? ? ? ? ? ? ? YEAH, IT WAS RIPPED FROM THE ORIGINAL "
  174.    SC$=SC$+"DOC DEMO!           THIS DEMO DON'T EVEN COME CLOSE TO THAT ONE BUT "
  175.    SC$=SC$+"HEY --------- I TRIED!     THE SKULLS LOOK PRETTY GOOD TO DON'T THEY!? "
  176.    SC$=SC$+"WELL THEY AR'NT MY ORIGINALS EITHER.........THEY CAME OUT OF A GAME CALLED "
  177.    SC$=SC$+"@EXTERMINATOR@ WHICH IS A WEIRD SORT OF GAME IN ITSELF!           "
  178.    SC$=SC$+"I JUST SORT OF THOUGHT THAT SKULLS WERE PRETTY APPROPRIATE WITH HERE WE ARE "
  179.    SC$=SC$+"ON THE BRINK OF A WAR WITH IRAN!           WELL IF IT HAPPENS LET'S HOPE THAT THEY GET IT "
  180.    SC$=SC$+"OVER WITH PRETTY QUICK!  DO YOU LIKE THE DIFFERENT SCROLLIE? WELL IT'S "
  181.    SC$=SC$+"DIFFERENT.          CHECK IT OUT!   ANOTHER MEGA BRILL FONT!            THIS ONE "
  182.    SC$=SC$+"TOOK QUITE A WHILE TO GET READY! ---------- GREETS UP NEXT DUDES! .............. "
  183.    SC$=SC$+"MEGA GREETS TO THE FOLLOWING: BIGMAC , MIG , MAL , THE BLADE , BATMAN , HARD DISK CAFE , "
  184.    SC$=SC$+"SAUSAGE (NAUGHTY NAUGHTY!) , THE POPE , ALL AMOS DEMO WRITERS , ALL MODEM HEADS USING "
  185.    SC$=SC$+"PREDATORS BBS (02) 648 4700 - 24 HRS - LEAVE ME A MESSAGE! , PIXIE , THE BEAST , "
  186.    SC$=SC$+"SUPER SALLY AND ALL OTHERS I HAVE FORGOTTEN THERE'S JUST TO MANY OF YOU OUT THERE! "
  187.    SC$=SC$+"            HEY I THINK YOU HAVE READ ENOUGH FOR NOW AND IF YOU DON'T HIT THE LEFT MOUSE BUTTON NOW YOU WILL HAVE TO SIT THROUGH IT ALL AGAIN!       CU!       TEX!       ....10....9....8....7....6....5....4....3....2....1...."
  188.    SC$=SC$+"                  PARTY ON DUDES!                    "
  189. End Proc
  190. Procedure NEW_CHARACTER
  191.    E$=Mid$(SC$,SCNT,1)
  192.    E=Instr(SCRL$,E$)
  193.    Screen Copy 3,X(E),Y(E),X(E)+31,Y(E)+31 To 2,340,5
  194. End Proc