home *** CD-ROM | disk | FTP | other *** search
/ AMOS PD CD / amospdcd.iso / sourcecode / general / beastly.amos / beastly.amosSourceCode
Encoding:
AMOS Source Code  |  1991-06-11  |  6.1 KB  |  138 lines

  1. Rem Beastly Demo 
  2. Rem an example of hardware scrolling on AMOS 
  3. Rem by JAG 
  4. Rem
  5. DEMO
  6. Procedure DEMO
  7. Screen Open 0,320,256,2,Lowres : Flash Off : Curs Off : Hide On : Cls 0
  8. Default : Cls 0 : Hide On 
  9. Wait Vbl 
  10. Close Workbench : Close Editor : Led Off : Break Off 
  11. Reserve As Chip Work 11,3000
  12. Set Tempras 11,3000
  13. Wait Vbl 
  14. Load "bespr.abk",1
  15. Load "bemus.abk",3
  16. Load "be5.abk",5
  17. Load "be6.abk",6
  18. Load "be7.abk",7
  19. Load "be8.abk",8
  20. Load "be9.abk",9
  21. Load "be10.abk",10
  22. Wait Vbl 
  23. Music 1
  24.    T$=" AND IT'S YET ANOTHER FANATIX DEMO...   THIS WAS JUST DONE TO DEMONSTRATE THE KIND"
  25. T$=T$+" OF SMOOTH HARDWARE SCROLLING THAT AMOS IS CAPABLE OF...  YOU MAY THINK THAT THE BIT AT THE BACK JERKS,"
  26. T$=T$+" BUT IT IS MOVING A PIXEL AT A TIME, AND TO MAKE IT SLOWER I USED MORE VBL'S....     "
  27. T$=T$+" ANYWAY, IT IS CALLED THE BEASTLY DEMO, AND DRAWS IDEAS FROM BEAST 1, BEAST 2, AND A DEMO BY KEFRENS."
  28. T$=T$+"  THE CODING WAS BY JAG, THE GFX BY JAG AND CLOUDS BOTCHED BY CHAOS, AND MUSIC BY KEFRENS...       "
  29. T$=T$+"WE ARE MADLY TRYING TO GET THIS STUPID MEGADEMO WORKING BEFORE THE 12TH OF JULY IN TIME FOR THE 16-BIT SHOW..."
  30. T$=T$+"        THE LANGUAGE IN THIS MEGADEMO HAS BEEN TONED DOWN, AS 3 WAS SENT BACK TO BE CENSORED!!?!       "
  31. T$=T$+"  HONESTLY, IT WAS HARDLY WORTH IT, BUT WE DID IT BECAUSE IF WE DIDN'T A CERTAIN S.S. WOULD NOT PUT IT IN"
  32. T$=T$+" THE PD LIBRARY.  SO BE CAREFUL EVERYBODY ELSE, ALTHOUGH IT TAKES ONLY HALF AND HOUR TO CENSOR SOMETHING"
  33. T$=T$+", IT IS A LOT OF HASSLE....   WE HOPE YOU ENJOY THE BOB TRAINER ON THIS DISK, IT IS BRILLIANT, AND IT IS "
  34. T$=T$+"OVER 200K LONG!!!  THE MUSIC WAS RESPONSIBLE, BUT WE'VE BEEN LOOKING FOR A DEMO TO STICK IT IN FOR A LONG TIME....     "
  35. T$=T$+"  I THINK THERE WILL BE ANOTHER DEMO PART TO CODE, IT DEPENDS HOW BIG THIS TURNS OUT TO BE.  IT HAS A FAIR BIT OF GFX AND MUSIC, BUT"
  36. T$=T$+" I SHOULD BE ABLE TO FIT A SMALL ONE ON.  A BEETLEMANIA DEMO PERHAPS, I STILL HAVE 3 DAYS TO GET THIS FINISHED!!  AND WE ONLY SENT OFF"
  37. T$=T$+" MEGADEMO 3 A FEW WEEKS AGO.  WE AT FANATIX HAVE A HOBBY CALLED 'SPEED CODING'...   I WILL HOPEFULLY GET THE COMPILER FROM THE 16-BIT SHOW"
  38. T$=T$+" UNLESS MANDARIN (EUROPRESS SOFTWARE) HAVE BEEN LAME AND RELEASED IT LATE.  IF THEY HAVE I WILL NEVER FORGIVE THEM, AS WE WERE GOING TO"
  39. T$=T$+" MAKE MEGADEMO 5 A REAL WORK OF ART...  WITHOUT THE COMPILER THIS WILL NOT BE POSSIBLE, AND WE WILL HAVE TO DELAY AND WRITE A LAME GAME"
  40. T$=T$+" OR SOMETHING.....   GREETS GO TO THE FOLLOWING COOL PEOPLE:  CYBORNETICS, SYNTEX, BENSON, CUROS AND STAVROS, GAZ 'N MATT, ROBOTS, PANTHORUS,"
  41. T$=T$+" FRANCOIS L, SANDRA S, AND THE LAME EFFORTS CALLED ARBITEZ (HOW'S THE MEGADEMO??  HA HA!!  WHEN WILL OYU GIVE UP AND DIE?)...         "
  42. T$=T$+"I AM PRETTY ANNOYED WITH TOME, AS THE SCREENCOPY METHOD OF SCROLLING MAPS IS A BIT CRAP, SO I AM WORKING ON A ROUTINE TO HARDWARE SCROLL IT.  WISH ME LUCK,"
  43. T$=T$+" I'M GOING TO NEED IT.  OH WELL, I'M OFF NOW, GOT A DENTIST'S APPOINTMENT IN A FEW MINUTES...    BYE.....                     "
  44. CH=1
  45. No Mask 
  46. Unpack 5 To 0 : Hide On 
  47. Screen Display 0,110,121,,
  48. Wait Vbl 
  49. Unpack 6 To 1
  50. Screen Display 1,110,102,,
  51. Wait Vbl 
  52. Unpack 7 To 2
  53. Screen Display 2,110,71,,
  54. Wait Vbl 
  55. Unpack 8 To 3
  56. Palette $0,$FFF,$999,$777,$444,$222,,
  57. Screen Display 3,110,40,,
  58. Wait Vbl 
  59. Unpack 9 To 4
  60. Screen Display 4,110,248,,
  61. Wait Vbl 
  62. Unpack 10 To 5
  63. Screen Display 5,110,265,,
  64. Wait Vbl 
  65. Screen Open 6,800,32,8,Lowres : Flash Off : Curs Off : Hide On : Cls 0
  66. Get Palette 5
  67. Screen Display 6,110,265,,
  68. Wait Vbl 
  69. Screen Offset 6,1,
  70. Screen To Front 5
  71. Wait Vbl : Wait Vbl 
  72. Dual Playfield 6,5
  73. For F=0 To 7 : Colour(F+8),Colour(F) : Next F
  74. Get Sprite Palette %11111111
  75. Screen To Front 4 : Screen To Front 3 : Screen To Front 2 : Screen To Front 1 : Screen To Front 0
  76. Set Rainbow 0,0,162,"","",""
  77. Rainbow 0,0,40,162
  78. Wait Vbl 
  79. Gosub RPAINT
  80. Wait Vbl 
  81. A$="Let RB=0; Restart:  Let RA=1; Pause; Loop:  Let RA=RA+6; Let X=RA; Let RB=RB+1; If RB=5 then Jump G; H:  If X>384 then Jump Restart; Pause; Jump Loop; G:  Let RB=0; Jump H;"
  82. B$="Restart:  Let X=0; Loop:  Let X=X+1; If X>320 then Jump Restart; Pause; Pause; Pause; Jump Loop"
  83. C$="Restart:  Let X=0; Loop:  Let X=X+1; If X>320 then Jump Restart; Pause; Pause; Jump Loop"
  84. D$="Restart:  Let X=0; Loop:  Let X=X+1; If X>320 then Jump Restart; Pause; Jump Loop"
  85. E$="Restart:  Let X=0; Loop:  Let X=X+2; If X>320 then Jump Restart; Pause; Jump Loop"
  86. F$="Restart:  Let X=0; Loop:  Let X=X+4; If X>320 then Jump Restart; Pause; Jump Loop"
  87. G$="Restart:  Let X=1; Loop:  Let X=X+8; If X>321 then Jump Restart; Pause; Jump Loop"
  88. Channel 1 To Screen Offset 0
  89. Channel 2 To Screen Offset 1
  90. Channel 3 To Screen Offset 2
  91. Channel 4 To Screen Offset 3
  92. Channel 5 To Screen Offset 4
  93. Channel 6 To Screen Offset 5
  94. Channel 0 To Screen Offset 6
  95. Amal 0,A$ : Wait Vbl : Amal 1,B$ : Wait Vbl : Amal 2,C$ : Wait Vbl : Amal 3,D$ : Wait Vbl : Amal 4,E$ : Wait Vbl : Amal 5,F$ : Wait Vbl : Amal 6,G$
  96. For F=0 To 6
  97. Amal On F : Wait Vbl 
  98. Next F
  99. Do 
  100. SC=Amreg(0)
  101. N=Amreg(1)
  102. If N=4 Then Gosub NCHAR
  103. If Mouse Key=1 Then Goto DIE
  104. Wait Vbl 
  105. Loop 
  106. NCHAR:
  107. B=Asc(Mid$(T$,CH,1))
  108. Inc CH : If CH=Len(T$) Then CH=1
  109. Paste Bob SC-32,0,B : Paste Bob SC+352,0,B
  110. Return 
  111. RPAINT:
  112. Restore RDATA
  113. For F=0 To 161
  114. Read R : Rain(0,F)=R
  115. Next F
  116. Return 
  117. RDATA:
  118. Data $6,$6,$6,$6,$6,$6,$6,$6,$6,$6,$6,$6,$6,$6,$6,$6,$6,$6,$6,$6,$6,$6,$6,$6,$6,$6,$6
  119. Data $108,$108,$108,$108,$108,$108,$108,$108,$108,$108,$108,$108,$108,$108,$108,$108,$20A,$20A,$20A,$20A,$20A,$20A,$20A,$20A,$20A,$20A
  120. Data $20A,$20A,$40D,$40D,$40D,$40D,$40D,$40D,$40D,$40D,$40D,$40D,$40D,$40D,$40D,$40D,$40D,$40D,$70F,$70F
  121. Data $70F,$70F,$70F,$70F,$70F,$70F,$70F,$70F,$A0F,$A0F,$A0F,$A0F,$A0F,$A0F,$A0F,$A0F
  122. Data $C0F,$C0F,$C0F,$C0F,$C0F,$C0F,$C0F,$C0F,$C0F,$C0F,$F0F,$F0F,$F0F,$F0F,$F0F,$F0F,$F0F,$F0F,$F0F
  123. Data $F0D,$F0D,$F0D,$F0D,$F0D,$F0D,$F0D,$F0D,$F0D,$F0B,$F0B,$F0B,$F0B,$F0B,$F0B,$F0B,$F0B,$F0B,$F08,$F08,$F08,$F08
  124. Data $F08,$F08,$F08,$F08,$F06,$F06,$F06,$F06,$F06,$F06,$F06,$F06,$F03,$F03,$F03,$F03,$F03,$F03
  125. Data $F12,$F12,$F12,$F12,$F12,$F12,$F32,$F32,$F32,$F32,$F32,$F63,$F63,$F63
  126. DIE:
  127. Amal Off 
  128. Set Rainbow 0,0,16,"","",""
  129. Rainbow 0,0,340,0
  130. For F=0 To 6
  131. Screen Close F
  132. Next F
  133. For F=63 To 0 Step -1
  134. For T=0 To 1000 : Next T : Mvolume F : Next F
  135. Music Off 
  136. Mvolume 63
  137. Run "Breaker.AMOS"
  138. End Proc