home *** CD-ROM | disk | FTP | other *** search
/ AMOS PD CD / amospdcd.iso / 501-525 / apd520 / amonoid / amonoid.amos / amonoid.amosSourceCode next >
AMOS Source Code  |  1991-03-01  |  21KB  |  829 lines

  1. Screen Open 0,360,270,16,Lowres : Rem ***GRAHAM CROWE 1990.*** 
  2. Screen Display 0,112,30,360,270
  3. Dim ZX(200) : Dim ZY(200)
  4. Global ZX,DX,DY,BX,BY,ZX(),ZY(),POI,MEN,VEL,ZD,XBX,SP,BLO,I
  5. Hide : Limit Mouse 0,0 To 500,500
  6. OBJECTS
  7. Cls 0
  8. Set Rainbow 1,0,300,"","(16,1,16)","(16,1,8)"
  9. Rainbow 1,0,40,270
  10. Set Pattern 9
  11.   Ink 4,7
  12.   Bar 0,0 To 340,10
  13.   Bar 0,0 To 15,270
  14.   Bar 336,0 To 350,270
  15. BX=140+Rnd(200) : BY=200
  16. DX=-1 : DY=-1 : ZX=100 : XBX=240
  17. Sprite 0,BX,BY,1
  18. Make Mask 1
  19. Bob 4,ZX,240,4
  20. LEVEL0
  21. MEN=4 : Timer=0 : SP=1 : I=4
  22. Repeat 
  23.   Sprite 0,BX,BY,1
  24.   Bob 4,ZX,XBX,I
  25.   If Spritebob Col(0,3 To 4) Then BAT
  26.   ZD=Hzone(X Sprite(0),Y Sprite(0))
  27.   If ZD<>0 Then HIT
  28.   If VEL=1 and BLO=0 Then LEVEL1
  29.   If VEL=2 and BLO=0 Then LEVEL2
  30.   If VEL=3 and BLO=0 Then LEVEL3
  31.   If VEL=4 and BLO=0 Then LEVEL4
  32.   If VEL=5 and BLO=0 Then LEVEL5
  33.   If VEL=6 and BLO=0 Then LEVEL6
  34.   If VEL=7 and BLO=0 Then FIN
  35.   If Timer>5000 Then SP=2
  36.   BALL
  37.   STICK
  38. Until MEN=0
  39. FIN
  40. Procedure OBJECTS
  41. Cls 0
  42. Ink 7
  43. Circle 8,8,4
  44. Paint 8,8,1
  45. Get Sprite 0,1,0,0 To 17,17
  46. Hot Spot 1,8,8
  47. Cls 0
  48. Ink 7
  49. Bar 4,4 To 28,10
  50. Circle 4,7,3
  51. Circle 28,7,3
  52. Ink 3
  53. Paint 3,7,1
  54. Paint 29,7,1
  55. Ink 2 : Polyline 6,6 To 26,6 To 26,8 To 6,8 To 6,6
  56. Ink 3
  57. Bar 9,6 To 11,8
  58. Bar 13,6 To 15,8
  59. Bar 17,6 To 19,8
  60. Bar 21,6 To 23,8
  61. Get Bob 0,4,0,0 To 32,32
  62. Hot Spot 2,$11
  63. Cls 0
  64. Ink 7
  65. Bar 4,4 To 28,10
  66. Circle 4,7,3
  67. Circle 28,7,3
  68. Ink 3
  69. Paint 3,7,1
  70. Paint 29,7,1
  71. Ink 2 : Polyline 6,6 To 26,6 To 26,8 To 6,8 To 6,6
  72. Ink 3
  73. Bar 9,6 To 11,8
  74. Bar 13,6 To 15,8
  75. Bar 17,6 To 19,8
  76. Get Bob 0,5,0,0 To 32,32
  77. Hot Spot 2,$11
  78. Cls 0
  79. Ink 7
  80. Bar 4,4 To 28,10
  81. Circle 4,7,3
  82. Circle 28,7,3
  83. Ink 3
  84. Paint 3,7,1
  85. Paint 29,7,1
  86. Ink 2 : Polyline 6,6 To 26,6 To 26,8 To 6,8 To 6,6
  87. Ink 3
  88. Bar 9,6 To 11,8
  89. Bar 13,6 To 15,8
  90. Get Bob 0,6,0,0 To 32,32
  91. Hot Spot 2,$11
  92. Cls 0
  93. Ink 7
  94. Bar 4,4 To 28,10
  95. Circle 4,7,3
  96. Circle 28,7,3
  97. Ink 3
  98. Paint 3,7,1
  99. Paint 29,7,1
  100. Ink 2 : Polyline 6,6 To 26,6 To 26,8 To 6,8 To 6,6
  101. Ink 3
  102. Bar 9,6 To 11,8
  103. Get Bob 0,7,0,0 To 32,32
  104. Hot Spot 2,$11
  105. End Proc
  106. Procedure STICK
  107.   ZX=X Mouse
  108.   If ZX<15 Then ZX=15
  109.   If ZX>304 Then ZX=304
  110.   C=Mouse Click
  111.   If C=1 Then XBX=XBX-2
  112.   If C=2 Then XBX=XBX+2
  113.   If XBX<200 Then XBX=200
  114.   If XBX>250 Then XBX=250
  115. End Proc
  116. Procedure BALL
  117.   BX=BX+(DX*SP)
  118.   BY=BY+(DY*SP)
  119.   If BX>445 Then DX=-(DX)
  120.   If BX>445 Then BX=445
  121.   If BX<133 Then DX=-(DX)
  122.   If BX<133 Then BX=133
  123.   If BY<44 Then DY=-(DY)
  124.   If BY<44 Then BY=44
  125.   If BY>299 Then MEN=MEN-1 : DY=-DY : Timer=0 : SP=1 : BY=200 : I=I+1
  126. End Proc
  127. Procedure BAT
  128.   Bell 20
  129.   XX=X Sprite(0)
  130.   YY=X Bob(4)
  131.   XX=XX-128
  132.   If XX>YY Then DX=1 : DY=-1
  133.   If XX<YY Then DX=-1 : DY=-1
  134. End Proc
  135. Procedure LEVEL0
  136.   VEL=1
  137.   Set Pattern 0
  138.   Ink 2
  139.   Reserve Zone 150
  140.   For Z=1 To 16
  141.     BLO=BLO+1
  142.     Read ZX(Z)
  143.     ZY(Z)=20
  144.     Ink 2 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  145.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  146.    Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  147.   Next Z
  148.   Restore 
  149.   For Z=17 To 32
  150.     BLO=BLO+1
  151.     Read ZX(Z)
  152.     ZY(Z)=40
  153.     Ink 13 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  154.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  155.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  156.   Next Z
  157.   Restore 
  158.   For Z=33 To 48
  159.     BLO=BLO+1
  160.     Read ZX(Z)
  161.     ZY(Z)=60
  162.     Ink 4 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  163.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  164.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  165.   Next Z
  166.   Restore 
  167.   For Z=49 To 64
  168.     BLO=BLO+1
  169.     Read ZX(Z)
  170.     ZY(Z)=80
  171.     Ink 5 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  172.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  173.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  174.   Next Z
  175.   Restore 
  176.   For Z=65 To 80
  177.     BLO=BLO+1
  178.     Read ZX(Z)
  179.     ZY(Z)=100
  180.     Ink 14 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  181.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  182.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  183.   Next Z
  184.   Restore 
  185.   For Z=81 To 96
  186.     BLO=BLO+1
  187.     Read ZX(Z)
  188.     ZY(Z)=120
  189.     Ink 18 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  190.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  191.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  192.   Next Z
  193.   Restore 
  194.   For Z=97 To 112
  195.     BLO=BLO+1
  196.     Read ZX(Z)
  197.     ZY(Z)=140
  198.     Ink 17 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  199.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  200.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  201.   Next Z
  202. Ink 2
  203. Repeat 
  204.   C=Mouse Click
  205. Until C=1
  206. Data 15,35,55,75,95,115,135,155,175,195,215,235,255,275,295,315
  207. End Proc
  208. Procedure HIT
  209.    DY=-(DY)
  210.    If ZD<113 Then Reset Zone ZD : Cls 0,ZX(ZD),ZY(ZD) To ZX(ZD)+21,ZY(ZD)+11 : POI=POI+10*VEL : BLO=BLO-1
  211.    Bell 50
  212. End Proc
  213. Procedure FIN
  214.    Shoot : Shoot : Shoot 
  215.    Cls 0,15,10 To 336,270
  216.    Curs Off 
  217.    Locate 15,15 : Ink 3 : Print "GAME OVER"
  218.    Locate 15,17 : Print "SCORE: ";POI
  219.    Wait 250
  220.    End 
  221. End Proc
  222. Procedure LEVEL1
  223.   VEL=2
  224.   Set Rainbow 1,0,300,"","(16,1,16)",""
  225.   Rainbow 1,0,40,270
  226.   Set Pattern 0
  227.   Ink 2
  228.   Reserve Zone 150
  229.   For Z=1 To 16
  230.     BLO=BLO+1
  231.     Read ZX(Z)
  232.     ZY(Z)=10
  233.     Ink 2 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  234.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  235.    Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  236.   Next Z
  237.   Restore 
  238.   For Z=17 To 32
  239.     BLO=BLO+1
  240.     Read ZX(Z)
  241.     ZY(Z)=20
  242.     Ink 13 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  243.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  244.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  245.   Next Z
  246.   Restore 
  247.   For Z=33 To 48
  248.     BLO=BLO+1
  249.     Read ZX(Z)
  250.     ZY(Z)=30
  251.     Ink 4 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  252.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  253.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  254.   Next Z
  255.   Restore 
  256.   For Z=49 To 64
  257.     BLO=BLO+1
  258.     Read ZX(Z)
  259.     ZY(Z)=40
  260.     Ink 5 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  261.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  262.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  263.   Next Z
  264.   Restore 
  265.   For Z=65 To 80
  266.     BLO=BLO+1
  267.     Read ZX(Z)
  268.     ZY(Z)=50
  269.     Ink 14 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  270.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  271.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  272.   Next Z
  273.   Restore 
  274.   For Z=81 To 96
  275.     BLO=BLO+1
  276.     Read ZX(Z)
  277.     ZY(Z)=60
  278.     Ink 18 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  279.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  280.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  281.   Next Z
  282.   Restore 
  283.   For Z=97 To 112
  284.     BLO=BLO+1
  285.     Read ZX(Z)
  286.     ZY(Z)=70
  287.     Ink 17 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  288.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  289.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  290.   Next Z
  291. Ink 2
  292. Repeat 
  293.  C=Mouse Click
  294. Until C=1
  295. BY=200
  296. Data 15,35,55,75,95,115,135,155,175,195,215,235,255,275,295,315
  297. Timer=0 : SP=1
  298. End Proc
  299. Procedure LEVEL2
  300.   VEL=3
  301.   Set Rainbow 1,0,300,"(16,1,16)","",""
  302.   Rainbow 1,0,40,270
  303.   Set Pattern 0
  304.   Ink 2
  305.   Reserve Zone 150
  306.   For Z=1 To 16
  307.     BLO=BLO+1
  308.     Read ZX(Z)
  309.     ZY(Z)=10
  310.     Ink 2 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  311.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  312.    Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  313.   Next Z
  314.   Restore 
  315.   For Z=17 To 32
  316.     BLO=BLO+1
  317.     Read ZX(Z)
  318.     ZY(Z)=20
  319.     Ink 13 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  320.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  321.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  322.   Next Z
  323.   Restore 
  324.   For Z=33 To 48
  325.     BLO=BLO+1
  326.     Read ZX(Z)
  327.     ZY(Z)=30
  328.     Ink 4 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  329.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  330.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  331.   Next Z
  332.   Restore 
  333.   For Z=49 To 64
  334.     BLO=BLO+1
  335.     Read ZX(Z)
  336.     ZY(Z)=80
  337.     Ink 5 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  338.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  339.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  340.   Next Z
  341.   Restore 
  342.   For Z=65 To 80
  343.     BLO=BLO+1
  344.     Read ZX(Z)
  345.     ZY(Z)=50
  346.     Ink 14 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  347.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  348.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  349.   Next Z
  350.   Restore 
  351.   For Z=81 To 96
  352.     BLO=BLO+1
  353.     Read ZX(Z)
  354.     ZY(Z)=100
  355.     Ink 18 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  356.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  357.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  358.   Next Z
  359.   Restore 
  360.   For Z=97 To 112
  361.     BLO=BLO+1
  362.     Read ZX(Z)
  363.     ZY(Z)=110
  364.     Ink 17 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  365.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  366.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  367.   Next Z
  368. Ink 2
  369. Repeat 
  370.   C=Mouse Click
  371. Until C=1
  372. BY=200
  373. Data 15,35,55,75,95,115,135,155,175,195,215,235,255,275,295,315
  374. Timer=0 : SP=1
  375. End Proc
  376. Procedure LEVEL3
  377.   VEL=4
  378.   Set Rainbow 1,0,300,"","","(16,1,16)"
  379.   Rainbow 1,0,40,270
  380.   Set Pattern 0
  381.   Ink 2
  382.   Reserve Zone 150
  383.   For Z=1 To 16
  384.     BLO=BLO+1
  385.     Read ZX(Z)
  386.     ZY(Z)=10
  387.     Ink 2 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  388.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  389.    Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  390.   Next Z
  391.   Restore 
  392.   For Z=17 To 32
  393.     BLO=BLO+1
  394.     Read ZX(Z)
  395.     ZY(Z)=30
  396.     Ink 13 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  397.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  398.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  399.   Next Z
  400.   Restore 
  401.   For Z=33 To 48
  402.     BLO=BLO+1
  403.     Read ZX(Z)
  404.     ZY(Z)=50
  405.     Ink 4 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  406.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  407.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  408.   Next Z
  409.   Restore 
  410.   For Z=49 To 64
  411.     BLO=BLO+1
  412.     Read ZX(Z)
  413.     ZY(Z)=70
  414.     Ink 5 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  415.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  416.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  417.   Next Z
  418.   Restore 
  419.   For Z=65 To 80
  420.     BLO=BLO+1
  421.     Read ZX(Z)
  422.     ZY(Z)=110
  423.     Ink 18 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  424.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  425.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  426.   Next Z
  427.   Restore 
  428.   For Z=81 To 96
  429.     BLO=BLO+1
  430.     Read ZX(Z)
  431.     ZY(Z)=130
  432.     Ink 17 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  433.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  434.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  435.   Next Z
  436.   For Z=113 To 122
  437.     Read ZX(Z)
  438.     ZY(Z)=60
  439.     Ink 3 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  440.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  441.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  442.   Next Z
  443. Ink 2
  444. Repeat 
  445.   C=Mouse Click
  446. Until C=1
  447. BY=200 : Print : DY=-DY
  448. Data 15,35,55,75,95,115,135,155,175,195,215,235,255,275,295,315
  449. Data 15,35,55,75,155,175,255,275,295,315
  450. Timer=0 : SP=1
  451. End Proc
  452. Procedure LEVEL4
  453.   VEL=5
  454.   Reset Zone 
  455.   Cls 0,15,10 To 336,270
  456.   Set Rainbow 1,0,300,"(16,1,16)","","(16,1,16)"
  457.   Rainbow 1,0,40,270
  458.   Set Pattern 0
  459.   Ink 2
  460.   Reserve Zone 150
  461.   For Z=1 To 16
  462.     BLO=BLO+1
  463.     Read ZX(Z)
  464.     ZY(Z)=10
  465.     Ink 2 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  466.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  467.    Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  468.   Next Z
  469.   Restore 
  470.   For Z=17 To 32
  471.     BLO=BLO+1
  472.     Read ZX(Z)
  473.     ZY(Z)=60
  474.     Ink 13 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  475.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  476.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  477.   Next Z
  478.   Restore 
  479.   For Z=33 To 48
  480.     BLO=BLO+1
  481.     Read ZX(Z)
  482.     ZY(Z)=110
  483.     Ink 4 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  484.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  485.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  486.   Next Z
  487.   Restore 
  488.   For Z=49 To 64
  489.     BLO=BLO+1
  490.     Read ZX(Z)
  491.     ZY(Z)=130
  492.     Ink 5 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  493.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  494.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  495.   Next Z
  496.   For Z=113 To 136
  497.     Read ZX(Z)
  498.     Read ZY(Z)
  499.     Ink 3 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  500.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  501.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  502.   Next Z
  503.   Ink 2
  504. Repeat 
  505.   C=Mouse Click
  506. Until C=1
  507. BY=200
  508. Data 15,35,55,75,95,115,135,155,175,195,215,235,255,275,295,315
  509. Data 15,30,55,30,95,30,135,30,175,30,215,30,255,30,295,30
  510. Data 15,90,55,90,95,90,135,90,175,90,215,90,255,90,295,90
  511. Data 15,150,55,150,95,150,135,150,175,150,215,150,255,150,295,150
  512. Timer=0 : SP=1
  513. End Proc
  514. Procedure LEVEL5
  515.   VEL=6
  516.   Reset Zone 
  517.   Cls 0,15,10 To 336,270
  518.   Set Rainbow 1,0,300,"(16,1,16)","","(16,1,16)"
  519.   Rainbow 1,0,40,270
  520.   Set Pattern 0
  521.   Ink 2
  522.   Reserve Zone 200
  523.   For Z=1 To 16
  524.     BLO=BLO+1
  525.     Read ZX(Z)
  526.     ZY(Z)=20
  527.     Ink 2 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  528.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  529.    Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  530.   Next Z
  531.   Restore 
  532.   For Z=17 To 32
  533.     BLO=BLO+1
  534.     Read ZX(Z)
  535.     ZY(Z)=40
  536.     Ink 13 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  537.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  538.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  539.   Next Z
  540.   Restore 
  541.   For Z=49 To 64
  542.     BLO=BLO+1
  543.     Read ZX(Z)
  544.     ZY(Z)=150
  545.     Ink 5 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  546.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  547.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  548.   Next Z
  549.   For Z=65 To 80
  550.     BLO=BLO+1
  551.     Read ZX(Z)
  552.     Read ZY(Z)
  553.      Ink 5 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  554.      Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  555.      Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  556.    Next Z
  557.   For Z=81 To 94
  558.     BLO=BLO+1
  559.     Read ZX(Z)
  560.     Read ZY(Z)
  561.      Ink 5 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  562.      Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  563.      Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  564.    Next Z
  565.   For Z=95 To 110
  566.     BLO=BLO+1
  567.     Read ZX(Z)
  568.     Read ZY(Z)
  569.      Ink 8 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  570.      Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  571.      Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  572.    Next Z
  573. Repeat 
  574.   C=Mouse Click
  575. Until C=1
  576. BY=200
  577. Data 15,35,55,75,95,115,135,155,175,195,215,235,255,275,295,315
  578. Data 95,120,115,120,135,120,155,120,175,120,195,120,215,120,235,120
  579. Data 95,60,115,60,135,60,155,60,175,60,195,60,215,60,235,60
  580. Data 75,60,55,70,35,80,15,90,35,100,55,110,75,120
  581. Data 255,120,275,110,295,100,315,90,295,80,275,70,255,60
  582. Data 115,80,135,80,155,80,175,80,195,80,215,80
  583. Data 115,90,135,90,195,90,215,90
  584. Data 115,100,135,100,155,100,175,100,195,100,215,100
  585. Timer=0 : SP=1
  586. End Proc
  587. Procedure LEVEL6
  588.   VEL=7
  589.   Reset Zone 
  590.   Cls 0,15,10 To 336,270
  591.   Set Rainbow 1,0,300,"(16,1,16)","(16,1,16)","(16,1,16)"
  592.   Rainbow 1,0,40,270
  593.   Set Pattern 0
  594.   Ink 2
  595.   Reserve Zone 200
  596.   For Z=1 To 12
  597.     BLO=BLO+1
  598.     Read ZX(Z)
  599.     ZY(Z)=30
  600.     Ink 2 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  601.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  602.    Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  603.   Next Z
  604.   Restore 
  605.   For Z=13 To 24
  606.     BLO=BLO+1
  607.     Read ZX(Z)
  608.     ZY(Z)=150
  609.     Ink 2 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  610.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  611.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  612.   Next Z
  613.   For Z=25 To 32
  614.     BLO=BLO+1
  615.     Read ZX(Z)
  616.     ZY(Z)=50
  617.     Ink 5 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  618.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  619.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  620.   Next Z
  621.   For Z=33 To 40
  622.     BLO=BLO+1
  623.     Read ZX(Z)
  624.     ZY(Z)=130
  625.      Ink 5 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  626.      Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  627.      Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  628.    Next Z
  629.   For Z=40 To 43
  630.     BLO=BLO+1
  631.     Read ZX(Z)
  632.     ZY(Z)=70
  633.      Ink 4 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  634.      Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  635.      Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  636.    Next Z
  637.   For Z=43 To 46
  638.     BLO=BLO+1
  639.     Read ZX(Z)
  640.     ZY(Z)=110
  641.      Ink 4 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  642.      Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  643.      Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  644.    Next Z
  645.   For Z=47 To 57
  646.     BLO=BLO+1
  647.     ZX(Z)=35
  648.     Read ZY(Z)
  649.      Ink 2 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  650.      Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  651.      Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  652.    Next Z
  653.   For Z=58 To 68
  654.     BLO=BLO+1
  655.     ZX(Z)=295
  656.     Read ZY(Z)
  657.      Ink 2 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  658.      Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  659.      Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  660.    Next Z
  661.   For Z=69 To 75
  662.     BLO=BLO+1
  663.     ZX(Z)=75
  664.     Read ZY(Z)
  665.      Ink 5 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  666.      Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  667.      Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  668.    Next Z
  669.   For Z=75 To 81
  670.     BLO=BLO+1
  671.     ZX(Z)=255
  672.     Read ZY(Z)
  673.      Ink 5 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  674.      Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  675.      Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  676.    Next Z
  677.   For Z=82 To 84
  678.     BLO=BLO+1
  679.     ZX(Z)=115
  680.     Read ZY(Z)
  681.      Ink 4 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  682.      Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  683.      Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  684.    Next Z
  685.   For Z=85 To 87
  686.     BLO=BLO+1
  687.     ZX(Z)=215
  688.     Read ZY(Z)
  689.      Ink 4 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  690.      Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  691.      Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  692.    Next Z
  693.   For Z=88 To 91
  694.     BLO=BLO+1
  695.     Read ZX(Z)
  696.     ZY(Z)=90
  697.      Ink 4 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  698.      Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  699.      Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  700.    Next Z
  701.   For Z=115 To 116
  702.     BLO=BLO+1
  703.     Read ZX(Z)
  704.     ZY(Z)=171
  705.      Ink 3 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  706.      Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  707.      Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  708.    Next Z
  709. Repeat 
  710.   C=Mouse Click
  711. Until C=1
  712. BY=200
  713. Data 55,75,95,115,135,155,175,195,215,235,255,275
  714. Data 95,115,135,155,175,195,215,235
  715. Data 95,115,135,155,175,195,215,235
  716. Data 135,155,175,195,135,155,175,195
  717. Data 40,50,60,70,80,90,100,110,120,130,140
  718. Data 40,50,60,70,80,90,100,110,120,130,140
  719. Data 60,70,80,90,100,110,120,60,70,80,90,100,110,120
  720. Data 80,90,100,80,90,100
  721. Data 135,155,175,195,15,315
  722. Timer=0 : SP=1
  723. End Proc
  724. Procedure LEVEL7
  725.   VEL=8
  726.   Reset Zone 
  727.   Cls 0,15,10 To 336,270
  728.   Set Rainbow 1,0,300,"","(16,1,16)","(16,1,16)"
  729.   Rainbow 1,0,40,270
  730.   Set Pattern 0
  731.   Ink 2
  732.   Reserve Zone 150
  733.   For Z=1 To 12
  734.     BLO=BLO+1
  735.     Read ZX(Z)
  736.     Read ZY(Z)
  737.     Ink 2 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  738.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  739.    Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  740.   Next Z
  741.   For Z=13 To 24
  742.     BLO=BLO+1
  743.     Read ZX(Z)
  744.     Read ZY(Z)
  745.     Ink 4 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  746.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  747.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  748.   Next Z
  749.   For Z=25 To 36
  750.     BLO=BLO+1
  751.     Read ZX(Z)
  752.     Read ZY(Z)
  753.     Ink 2 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  754.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  755.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  756.   Next Z
  757.   For Z=37 To 48
  758.     BLO=BLO+1
  759.     Read ZX(Z)
  760.     Read ZY(Z)
  761.     Ink 5 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  762.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  763.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  764.   Next Z
  765.   For Z=49 To 60
  766.     BLO=BLO+1
  767.     Read ZX(Z)
  768.     Read ZY(Z)
  769.     Ink 4 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  770.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  771.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  772.   Next Z
  773.   For Z=61 To 72
  774.     BLO=BLO+1
  775.     Read ZX(Z)
  776.     Read ZY(Z)
  777.     Ink 5 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  778.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  779.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  780.   Next Z
  781.   For Z=73 To 84
  782.     BLO=BLO+1
  783.     Read ZX(Z)
  784.     Read ZY(Z)
  785.     Ink 6 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  786.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  787.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  788.   Next Z
  789.   For Z=85 To 96
  790.     BLO=BLO+1
  791.     Read ZX(Z)
  792.     Read ZY(Z)
  793.     Ink 4 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  794.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  795.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  796.   Next Z
  797.   For Z=97 To 108
  798.     BLO=BLO+1
  799.     Read ZX(Z)
  800.     Read ZY(Z)
  801.     Ink 6 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  802.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  803.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  804.   Next Z
  805.   For Z=113 To 118
  806.     BLO=BLO+1
  807.     Read ZX(Z)
  808.     Read ZY(Z)
  809.     Ink 3 : Bar ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  810.     Ink 0 : Box ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  811.     Set Zone Z,ZX(Z),ZY(Z) To ZX(Z)+20,ZY(Z)+10
  812.   Next Z
  813. Ink 2
  814. Repeat 
  815.   C=Mouse Click
  816. Until C=1
  817. BY=200
  818. Data 35,30,55,30,75,30,95,30,135,30,155,30,175,30,195,30,235,30,255,30,275,30,295,30
  819. Data 35,40,55,40,75,40,95,40,135,40,155,40,175,40,195,40,235,40,255,40,275,40,295,40
  820. Data 35,50,55,50,75,50,95,50,135,50,155,50,175,50,195,50,235,50,255,50,275,50,295,50
  821. Data 35,70,55,70,75,70,95,70,135,70,155,70,175,70,195,70,235,70,255,70,275,70,295,70
  822. Data 35,80,55,80,75,80,95,80,135,80,155,80,175,80,195,80,235,80,255,80,275,80,295,80
  823. Data 35,90,55,90,75,90,95,90,135,90,155,90,175,90,195,90,235,90,255,90,275,90,295,90
  824. Data 35,110,55,110,75,110,95,110,135,110,155,110,175,110,195,110,235,110,255,110,275,110,295,110
  825. Data 35,120,55,120,75,120,95,120,135,120,155,120,175,120,195,120,235,120,255,120,275,120,295,120
  826. Data 35,130,55,130,75,130,95,130,135,130,155,130,175,130,195,130,235,130,255,130,275,130,295,130
  827. Data 115,60,215,60,115,100,215,100,15,130,315,130
  828. Timer=0 : SP=1
  829. End Proc