home *** CD-ROM | disk | FTP | other *** search
/ AMOS PD CD / amospdcd.iso / 351-375 / apd365 / soundboxii.asc < prev    next >
Text File  |  1992-01-10  |  6KB  |  151 lines

  1. '-----------------------------------------------------------------------------'  
  2. '----------------------------- ZENN SOUND BOX II -----------------------------'
  3. '----------------------------- BY David Barnsley -----------------------------'
  4. '----------------------------- And Graham Groom  -----------------------------'
  5. '-----------------------------------------------------------------------------'
  6. Rem ************************************************************************** 
  7. Rem ********************** Screen setups and  variables ********************** 
  8. Rem ************************************************************************** 
  9. Screen Open 0,320,20,2,Lowres : Curs Off : Flash Off : Cls 0
  10. Close Workbench : Close Editor : Cls 0 : Led Off : Show On : Limit Mouse 132,223 To 444,293
  11. Screen Open 3,320,272,8,Lowres
  12. Load Iff "Frontpic",3 : Load "sprites.abk"
  13. Palette $114
  14. Screen Open 0,320,64,2,Lowres
  15. Curs Off : Flash Off : Palette $0,$FF : Cls 0
  16. Screen Display 0,134,157,320,62
  17. Screen Open 1,320,16,2,Lowres
  18. Curs Off : Flash Off : Palette $222,$FF2 : Cls 0
  19. Screen Display 1,134,147,320,8
  20. Locate 0,0 : Print "Free Mem: "
  21. Locate 21,0 : Print "Track: "
  22. C1=0 : C2=0 : C3=0 : C4=0 : LED=0 : VOL=63
  23. Dir$="SoundBoxII:"
  24. Rem ************************************************************************** 
  25. Rem *********************** Setup Rainbow And Info *************************** 
  26. Rem ************************************************************************** 
  27. Gosub RB
  28. Gosub INFO
  29. Rem ************************************************************************** 
  30. Rem ************************** Setup Icon Zones ****************************** 
  31. Rem **************************************************************************   
  32. Screen 3
  33. Reserve Zone 6
  34. Set Zone 1,10,307 To 26,322
  35. Set Zone 2,10,330 To 26,345
  36. Set Zone 3,10,353 To 26,368
  37. Set Zone 4,161,307 To 177,322
  38. Set Zone 5,161,330 To 177,345
  39. Set Zone 6,161,353 To 177,368
  40. Screen 3 : Paper 0 : Pen 1 : Print At(14,26)+"LOADING DATA"
  41. Load "Samaurai.abk",3
  42. Screen 3 : Paper 0 : Pen 1 : Print At(14,26)+Space$(12)
  43. TRACK$="Samaurai"
  44. Gosub INFO
  45. VOL=63
  46. Volume VOL
  47. Music 1
  48. Rem ************************************************************************** 
  49. Rem ************************* Main Control Loop ******************************   
  50. Rem ************************************************************************** 
  51. Do 
  52.    Screen 0 : Gosub EQUALIZERS
  53.    Screen 3 : On PLACE and Mouse Key=1 Gosub NXT_TUNE,PREV_TUNE,FINISH,VOLUP,VOLDOWN,LED
  54.    K=Mouse Key : PLACE=Mouse Zone
  55. Loop 
  56. Rem ************************************************************************** 
  57. Rem ****************************** Graffix *********************************** 
  58. Rem ************************************************************************** 
  59. EQUALIZERS:
  60. V1=Int(Vumeter(0)) : V2=Int(Vumeter(1)) : V3=Int(Vumeter(2)) : V4=Int(Vumeter(3))
  61. If V1>C1 Then C1=V1 : C1=V1
  62. If V1<C1 and C1>0 Then Dec C1 : Dec C1
  63. If V2>C2 Then C2=V2 : C2=V2
  64. If V2<C2 and C2>0 Then Dec C2 : Dec C2
  65. If V3>C3 Then C3=V3 : C3=V3
  66. If V3<C3 and C3>0 Then Dec C3 : Dec C3
  67. If V4>C4 Then C4=V4 : C4=V4
  68. If V4<C4 and C4>0 Then Dec C4 : Dec C4
  69. Bob 1,1,-66,C1 : Bob 2,11,-66,C2 : Bob 3,21,-66,C3 : Bob 4,31,-66,C4 : Wait Vbl 
  70. Screen Copy 0,1,0,39,64 To Logic(0),41,0 : Screen Copy 0,1,0,39,64 To Logic(0),81,0
  71. Screen Copy 0,1,0,39,64 To Logic(0),121,0 : Screen Copy 0,1,0,39,64 To Logic(0),161,0
  72. Screen Copy 0,1,0,39,64 To Logic(0),201,0 : Screen Copy 0,1,0,39,64 To Logic(0),241,0
  73. Screen Copy 0,1,0,39,64 To Logic(0),281,0
  74. Return 
  75. Rem ************************************************************************** 
  76. Rem ****************************** Rainbow *********************************** 
  77. Rem ************************************************************************** 
  78. RB:
  79. Rem
  80. Set Rainbow 0,1,96,"","","" : Rainbow 0,0,124,96 : Colour Back 0 : Restore RDATA
  81. For C=0 To 95 : Read CVA : Rain(0,C)=CVA
  82. Next C : View : Return 
  83. RDATA:
  84. Data $F11,$F11,$F11,$F11,$FF6,$FF5,$FF4,$FD4
  85. Data $FC4,$FB4,$FA4,$0,$0,$0,$0,$0
  86. Data $0,$0,$0,$0,$0,$FB1,$2EF,$2EF
  87. Data $2CF,$2AF,$29F,$27F,$25F,$23F,$21F,$21B
  88. Data $311,$411,$511,$611,$711,$811,$911,$A11
  89. Data $B11,$C11,$E11,$F11,$F11,$F11,$F11,$F11
  90. Data $F11,$F11,$F11,$F11,$F21,$F31,$F41,$F51
  91. Data $F61,$F71,$F81,$F91,$FA1,$FB1,$FC1,$FD1
  92. Data $FE1,$FF1,$FF1,$FF1,$FF1,$FF1,$FF1,$FF1
  93. Data $FF1,$FF1,$FF1,$FF1,$DF1,$BF1,$9F1,$7F1
  94. Data $6F1,$4F1,$3F1,$2F1,$1F1,$F0,$F0,$F0
  95. Data $F0,$F0,$F0,$F0,$F0,$F0,$F0,$F0
  96. Rem ************************************************************************** 
  97. Rem ****************************** Other Bits ******************************** 
  98. Rem ************************************************************************** 
  99. INFO:
  100. Screen 1 : Locate 9,0 : Print Chip Free+Fast Free : L=Len(TRACK$) : Locate 28,0 : Print TRACK$+Space$(11-L)
  101. Return 
  102. NXT_TUNE:
  103. For N=VOL To 0 Step -1 : Volume N : Gosub EQUALIZERS : Next N
  104. Screen 3 : Paper 0 : Pen 1 : Print At(14,26)+"LOADING DATA"
  105. Inc TUNE
  106. Gosub L0AD_NEXT_TUNE
  107. Gosub INFO
  108. Screen 3 : Paper 0 : Pen 1 : Print At(14,26)+Space$(12)
  109. VOL=63 : Volume VOL : Music 1
  110. Return 
  111. L0AD_NEXT_TUNE:
  112. If TUNE>8 Then TUNE=0
  113. If TUNE<0 Then TUNE=8
  114. If TUNE=0 Then Load "Samaurai.abk" : TRACK$="Samaurai"
  115. If TUNE=1 Then Load "Walker.abk" : TRACK$="Walker"
  116. If TUNE=2 Then Load "Lament.abk" : TRACK$="Lament"
  117. If TUNE=3 Then Load "FastBeat.abk" : TRACK$="Fast Beat"
  118. If TUNE=4 Then Load "FastTrain.abk" : TRACK$="Fast Train"
  119. If TUNE=5 Then Load "Machine.abk" : TRACK$="Machine"
  120. If TUNE=6 Then Load "Armalyte.abk" : TRACK$="Armalyte"
  121. If TUNE=7 Then Load "Artaarta.abk" : TRACK$="Artaarta"
  122. If TUNE=8 Then Load "Countdown.abk" : TRACK$="Countdown"
  123. Return 
  124. PREV_TUNE:
  125. For N=VOL To 0 Step -1 : Volume N : Gosub EQUALIZERS : Next N
  126. Screen 3 : Paper 0 : Pen 1 : Print At(14,26)+"LOADING DATA"
  127. Dec TUNE
  128. Gosub L0AD_NEXT_TUNE
  129. Gosub INFO
  130. Screen 3 : Paper 0 : Pen 1 : Print At(14,26)+Space$(12)
  131. VOL=63 : Volume VOL : Music 1
  132. Return 
  133. FINISH:
  134. For N=VOL To 0 Step -1 : Volume N : Gosub EQUALIZERS : Next N : Erase 3 : Edit 
  135. VOLUP:
  136. If VOL<63 Then Gosub EQUALIZERS : Inc VOL
  137. Volume VOL
  138. Return 
  139. VOLDOWN:
  140. If VOL>0 Then Gosub EQUALIZERS : Dec VOL
  141. Volume VOL
  142. Return 
  143. LED:
  144. Inc LED
  145. If LED=3 Then Led Off 
  146. If LED=6 Then Led On : LED=0
  147. Return 
  148. Rem ************************************************************************** 
  149. Rem ************************ Sad, But Here Is The End! *********************** 
  150. Rem ************************************************************************** 
  151.