home *** CD-ROM | disk | FTP | other *** search
/ 17 Bit Software 4: Phase Four / 17Bit_Phase_Four.iso / files / 3023.dms / 3023.adf / Source-Code / C-E / C-E.amosSourceCode < prev    next >
Encoding:
AMOS Source Code  |  1994-02-22  |  27.0 KB  |  362 lines

  1. Close Workbench : Close Editor : Dim TR(7) : Dim TS(15) : YC=128 : YD=38 : SX=4 : FW=999 : SW=500 : TW=999 : SO=0 : PO=0 : WI=1 : WO=40 : SCR=1 : GT=1 : FS=1 : AW=30 : Gosub 910 : Gosub 899
  2. 100
  3. Reserve Zone 10 : A=1 : For Z=45 To 91 Step 23 : Set Zone A,219,Z To 317,Z+20 : Set Zone A+3,322,Z To 420,Z+20 : Inc A : Next Z : Set Zone 7,322,114 To 420,134 : Set Zone 8,100,114 To 178,134 : Set Zone 9,470,114 To 549,134
  4. Set Zone 10,87,236 To 614,250
  5. 0
  6. Z$=Inkey$ : MZ=Mouse Zone : MK=Mouse Key : Paper 7 : Pen 0 : Print At(10,22);YC;At(28,22);YD
  7. If MZ=1 and MK=1 Then Paste Bob 219,45,6 : Paste Bob 219,68,7 : Paste Bob 219,91,9 : Wait Vbl : PO=1
  8. If MZ=2 and MK=1 Then Paste Bob 219,45,5 : Paste Bob 219,68,8 : Paste Bob 219,91,9 : Wait Vbl : PO=2
  9. If MZ=3 and MK=1 Then Paste Bob 219,45,5 : Paste Bob 219,68,7 : Paste Bob 219,91,10 : Wait Vbl : PO=3
  10. If MZ=4 and MK=1 Then Paste Bob 322,45,6 : Paste Bob 322,68,7 : Paste Bob 322,91,11 : Paste Bob 322,114,13 : Wait Vbl : SO=1
  11. If MZ=5 and MK=1 Then Paste Bob 322,45,5 : Paste Bob 322,68,8 : Paste Bob 322,91,11 : Paste Bob 322,114,13 : Wait Vbl : SO=2
  12. If MZ=6 and MK=1 Then Paste Bob 322,45,5 : Paste Bob 322,68,7 : Paste Bob 322,91,12 : Paste Bob 322,114,13 : Wait Vbl : SO=3
  13. If MZ=7 and MK=1 Then Paste Bob 322,45,5 : Paste Bob 322,68,7 : Paste Bob 322,91,11 : Paste Bob 322,114,14 : Wait Vbl : SO=4
  14. If MZ=8 and MK=1 and PO>0 and SO>0 Then Paste Bob 100,114,16 : Wait Vbl : FP=FW : SP=SW : TP=TW : FW=10 : SW=80 : TW=80 : Gosub 220 : FW=FP : SW=SP : TW=TP : Goto 100
  15. If MZ=9 and MK=1 and PO>0 and SO>0 Then Paste Bob 470,114,18 : Wait Vbl : Gosub 220 : Goto 100
  16. If MZ=10 and MK=1 Then Screen Close 1 : Screen Close 0 : Gosub 899 : Paper 7 : Pen 0
  17. If Z$="1" Then Add WI,GT : If WI>52 Then WI=1
  18. If WI<10 Then Print At(12,20);WI;" " Else Print At(12,20);WI
  19. If Z$="2" Then Add WO,GT : If WO>52 Then WO=1
  20. If WO<10 Then Print At(31,20);WO;" " Else Print At(31,20);WO
  21. If Z$="3" Then Add SCR,GT : If SCR>11 Then SCR=1
  22. If SCR<10 Then Print At(49,20);SCR;" " Else Print At(49,20);SCR
  23. If Z$="4" Then Add SX,GT : If SX>12 Then SX=1
  24. If SX<10 Then Print At(73,20);SX;" " Else Print At(73,20);SX
  25. If Z$="5" Then Add YC,16 : Screen Display 0,YC,YD,, : If YC>192 Then YC=112
  26. If Z$="6" Then Add YD,GT : Screen Display 0,YC,YD,, : If YD>99 Then YD=30
  27. If Z$="7" Then Add FW,GT : If FW>999 Then FW=80
  28. If FW<100 Then Print At(16,24);FW;" " Else Print At(16,24);FW
  29. If Z$="8" Then Add SW,GT : If SW>999 Then SW=80
  30. If SW<100 Then Print At(37,24);SW;" " Else Print At(37,24);SW
  31. If Z$="9" Then Add TW,GT : If TW>999 Then TW=80
  32. If TW<100 Then Print At(59,24);TW;" " Else Print At(59,24);TW
  33. If Z$="a" Then GT=1
  34. If Z$="b" Then GT=10
  35. If Z$="c" Then GT=50
  36. If GT<10 Then Print At(72,22);GT;" " Else Print At(72,22);GT
  37. If Z$="0" Then Add FS,GT : If FS>16 Then FS=1
  38. If FS<10 Then Print At(75,24);FS;" " Else Print At(75,24);FS
  39. If Z$="q" Then Reserve Zone : End 
  40. Goto 0
  41. 1
  42. For Z=0 To 255 : Screen Copy 1,0,Z,320,Z+1 To 0,0,Z : Wait Vbl : Next Z : Return 
  43. 2
  44. For Z=255 To 0 Step -1 : Screen Copy 1,0,Z,320,Z+1 To 0,0,Z : Wait Vbl : Next Z : Return 
  45. 3
  46. For Z=0 To 319 : Screen Copy 1,Z,0,Z+1,256 To 0,Z,0 : Wait Vbl : Next Z : Return 
  47. 4
  48. For Z=319 To 0 Step -1 : Screen Copy 1,Z,0,Z+1,256 To 0,Z,0 : Wait Vbl : Next Z : Return 
  49. 5
  50. W=256 : For Z=0 To 255 : Screen Copy 1,0,Z,160,Z+1 To 0,0,Z : Screen Copy 1,160,W-1,320,W To 0,160,W-1 : Wait Vbl : Dec W : Next Z : Return 
  51. 6
  52. W=256 : For Z=0 To 255 : Screen Copy 1,160,Z,320,Z+1 To 0,160,Z : Screen Copy 1,0,W-1,160,W To 0,0,W-1 : Wait Vbl : Dec W : Next Z : Return 
  53. 7
  54. W=256 : For Z=0 To 255 : Screen Copy 1,0,Z,80,Z+1 To 0,0,Z : Screen Copy 1,80,W-1,160,W To 0,80,W-1 : Screen Copy 1,160,Z,240,Z+1 To 0,160,Z : Screen Copy 1,240,W-1,320,W To 0,240,W-1 : Wait Vbl : Dec W : Next Z : Return 
  55. 8
  56. W=256 : For Z=0 To 255 : Screen Copy 1,80,Z,160,Z+1 To 0,80,Z : Screen Copy 1,0,W-1,80,W To 0,0,W-1 : Screen Copy 1,240,Z,320,Z+1 To 0,240,Z : Screen Copy 1,160,W-1,240,W To 0,160,W-1 : Wait Vbl : Dec W : Next Z : Return 
  57. 9
  58. W=256 : For Z=0 To 255 : Screen Copy 1,0,Z,40,Z+1 To 0,0,Z : Screen Copy 1,40,W-1,80,W To 0,40,W-1 : Screen Copy 1,80,Z,120,Z+1 To 0,80,Z : Screen Copy 1,120,W-1,160,W To 0,120,W-1
  59. Screen Copy 1,160,Z,200,Z+1 To 0,160,Z : Screen Copy 1,200,W-1,240,W To 0,200,W-1 : Screen Copy 1,240,Z,280,Z+1 To 0,240,Z : Screen Copy 1,280,W-1,320,W To 0,280,W-1 : Wait Vbl : Dec W : Next Z : Return 
  60. 10
  61. W=256 : For Z=0 To 255 : Screen Copy 1,40,Z,80,Z+1 To 0,40,Z : Screen Copy 1,0,W-1,40,W To 0,0,W-1 : Screen Copy 1,120,Z,160,Z+1 To 0,120,Z : Screen Copy 1,80,W-1,120,W To 0,80,W-1
  62. Screen Copy 1,200,Z,240,Z+1 To 0,200,Z : Screen Copy 1,160,W-1,200,W To 0,160,W-1 : Screen Copy 1,280,Z,320,Z+1 To 0,280,Z : Screen Copy 1,240,W-1,280,W To 0,240,W-1 : Wait Vbl : Dec W : Next Z : Return 
  63. 11
  64. W=320 : For Z=0 To 319 : Screen Copy 1,Z,0,Z+1,128 To 0,Z,0 : Screen Copy 1,W-1,128,W,256 To 0,W-1,128 : Wait Vbl : Dec W : Next Z : Return 
  65. 12
  66. W=320 : For Z=0 To 319 : Screen Copy 1,Z,128,Z+1,256 To 0,Z,128 : Screen Copy 1,W-1,0,W,128 To 0,W-1,0 : Wait Vbl : Dec W : Next Z : Return 
  67. 13
  68. W=320 : For Z=0 To 319 : Screen Copy 1,Z,0,Z+1,64 To 0,Z,0 : Screen Copy 1,W-1,64,W,128 To 0,W-1,64 : Screen Copy 1,Z,128,Z+1,192 To 0,Z,128 : Screen Copy 1,W-1,192,W,256 To 0,W-1,192 : Wait Vbl : Dec W : Next Z : Return 
  69. 14
  70. W=320 : For Z=0 To 319 : Screen Copy 1,Z,64,Z+1,128 To 0,Z,64 : Screen Copy 1,W-1,0,W,64 To 0,W-1,0 : Screen Copy 1,Z,192,Z+1,256 To 0,Z,192 : Screen Copy 1,W-1,128,W,192 To 0,W-1,128 : Wait Vbl : Dec W : Next Z : Return 
  71. 15
  72. W=320 : For Z=0 To 319 : Screen Copy 1,Z,0,Z+1,32 To 0,Z,0 : Screen Copy 1,W-1,32,W,64 To 0,W-1,32 : Screen Copy 1,Z,64,Z+1,96 To 0,Z,64 : Screen Copy 1,W-1,96,W,128 To 0,W-1,96
  73. Screen Copy 1,Z,128,Z+1,160 To 0,Z,128 : Screen Copy 1,W-1,160,W,192 To 0,W-1,160 : Screen Copy 1,Z,192,Z+1,224 To 0,Z,192 : Screen Copy 1,W-1,224,W,256 To 0,W-1,224 : Wait Vbl : Dec W : Next Z : Return 
  74. 16
  75. W=320 : For Z=0 To 319 : Screen Copy 1,Z,32,Z+1,64 To 0,Z,32 : Screen Copy 1,W-1,0,W,32 To 0,W-1,0 : Screen Copy 1,Z,96,Z+1,128 To 0,Z,96 : Screen Copy 1,W-1,64,W,96 To 0,W-1,64
  76. Screen Copy 1,Z,160,Z+1,192 To 0,Z,160 : Screen Copy 1,W-1,128,W,160 To 0,W-1,128 : Screen Copy 1,Z,224,Z+1,256 To 0,Z,224 : Screen Copy 1,W-1,192,W,224 To 0,W-1,192 : Wait Vbl : Dec W : Next Z : Return 
  77. 17
  78. W=320 : For Z=0 To 159 : Screen Copy 1,Z,0,Z+1,128 To 0,Z,0 : Screen Copy 1,W-1,128,W,256 To 0,W-1,128 : Wait Vbl : Dec W : Next Z : W=320 : For Z=0 To 159 : Screen Copy 1,Z,128,Z+1,256 To 0,Z,128
  79. Screen Copy 1,W-1,0,W,128 To 0,W-1,0 : Wait Vbl : Dec W : Next Z : Return 
  80. 18
  81. W=320 : For Z=0 To 159 : Screen Copy 1,Z,128,Z+1,256 To 0,Z,128 : Screen Copy 1,W-1,0,W,128 To 0,W-1,0 : Wait Vbl : Dec W : Next Z
  82. W=320 : For Z=0 To 159 : Screen Copy 1,Z,0,Z+1,128 To 0,Z,0 : Screen Copy 1,W-1,128,W,256 To 0,W-1,128 : Wait Vbl : Dec W : Next Z : Return 
  83. 19
  84. W=256 : For Z=0 To 127 : Screen Copy 1,0,Z,160,Z+1 To 0,0,Z : Screen Copy 1,160,W-1,320,W To 0,160,W-1 : Wait Vbl : Dec W : Next Z : W=256 : For Z=0 To 127 : Screen Copy 1,160,Z,320,Z+1 To 0,160,Z
  85. Screen Copy 1,0,W-1,160,W To 0,0,W-1 : Wait Vbl : Dec W : Next Z : Return 
  86. 20
  87. W=256 : For Z=0 To 127 : Screen Copy 1,160,Z,320,Z+1 To 0,160,Z : Screen Copy 1,0,W-1,160,W To 0,0,W-1 : Wait Vbl : Dec W : Next Z
  88. W=256 : For Z=0 To 127 : Screen Copy 1,0,Z,160,Z+1 To 0,0,Z : Screen Copy 1,160,W-1,320,W To 0,160,W-1 : Wait Vbl : Dec W : Next Z : Return 
  89. 21
  90. W=256 : For Z=0 To 127 : Screen Copy 1,0,Z,160,Z+1 To 0,0,Z : Screen Copy 1,160,W-1,320,W To 0,160,W-1 : Wait Vbl : Dec W : Next Z : W=320 : For Z=0 To 159
  91. Screen Copy 1,Z,128,Z+1,256 To 0,Z,128 : Screen Copy 1,W-1,0,W,128 To 0,W-1,0 : Wait Vbl : Dec W : Next Z : Return 
  92. 22
  93. W=256 : For Z=0 To 127 : Screen Copy 1,160,Z,320,Z+1 To 0,160,Z : Screen Copy 1,0,W-1,160,W To 0,0,W-1 : Wait Vbl : Dec W : Next Z : W=320 : For Z=0 To 159
  94. Screen Copy 1,Z,0,Z+1,128 To 0,Z,0 : Screen Copy 1,W-1,128,W,256 To 0,W-1,128 : Wait Vbl : Dec W : Next Z : Return 
  95. 23
  96. W=320 : For Z=0 To 159 : Screen Copy 1,Z,0,Z+1,128 To 0,Z,0 : Screen Copy 1,W-1,128,W,256 To 0,W-1,128 : Wait Vbl : Dec W : Next Z : W=256 : For Z=0 To 127 : Screen Copy 1,160,Z,320,Z+1 To 0,160,Z
  97. Screen Copy 1,0,W-1,160,W To 0,0,W-1 : Wait Vbl : Dec W : Next Z : Return 
  98. 24
  99. W=320 : For Z=0 To 159 : Screen Copy 1,Z,128,Z+1,256 To 0,Z,128 : Screen Copy 1,W-1,0,W,128 To 0,W-1,0 : Wait Vbl : Dec W : Next Z : W=256 : For Z=0 To 127 : Screen Copy 1,0,Z,160,Z+1 To 0,0,Z
  100. Screen Copy 1,160,W-1,320,W To 0,160,W-1 : Wait Vbl : Dec W : Next Z : Return 
  101. 25
  102. W=160 : For Z=160 To 319 : Screen Copy 1,Z,0,Z+1,256 To 0,Z,0 : Screen Copy 1,W-1,0,W,256 To 0,W-1,0 : Wait Vbl : Dec W : Next Z : Return 
  103. 26
  104. W=320 : For Z=0 To 159 : Screen Copy 1,Z,0,Z+1,256 To 0,Z,0 : Screen Copy 1,W-1,0,W,256 To 0,W-1,0 : Wait Vbl : Dec W : Next Z : Return 
  105. 27
  106. W=128 : For Z=128 To 255 : Screen Copy 1,0,Z,320,Z+1 To 0,0,Z : Screen Copy 1,0,W-1,320,W To 0,0,W-1 : Wait Vbl : Dec W : Next Z : Return 
  107. 28
  108. W=256 : For Z=0 To 127 : Screen Copy 1,0,Z,320,Z+1 To 0,0,Z : Screen Copy 1,0,W-1,320,W To 0,0,W-1 : Wait Vbl : Dec W : Next Z : Return 
  109. 29
  110. For V=0 To 39 : For Z=0 To 280 Step 40 : Screen Copy 1,Z+V,0,Z+V+1,256 To 0,Z+V,0 : Next Z : Next V : Return 
  111. 30
  112. For V=0 To 19 : For Z=0 To 300 Step 20 : Screen Copy 1,Z+V,0,Z+V+1,256 To 0,Z+V,0 : Next Z : Next V : Return 
  113. 31
  114. W=320 : For Z=0 To 159 : Screen Copy 1,Z,0,Z+1,85 To 0,Z,0 : Screen Copy 1,W-1,0,W,85 To 0,W-1,0 : Screen Copy 1,Z,170,Z+1,256 To 0,Z,170 : Screen Copy 1,W-1,170,W,256 To 0,W-1,170 : Wait Vbl : Dec W : Next Z
  115. W=160 : For Z=160 To 319 : Screen Copy 1,Z,85,Z+1,170 To 0,Z,85 : Screen Copy 1,W-1,85,W,170 To 0,W-1,85 : Wait Vbl : Dec W : Next Z : Return 
  116. 32
  117. W=256 : For Z=0 To 127 : Screen Copy 1,0,Z,107,Z+1 To 0,0,Z : Screen Copy 1,0,W-1,107,W To 0,0,W-1 : Screen Copy 1,213,Z,320,Z+1 To 0,213,Z : Screen Copy 1,213,W-1,320,W To 0,213,W-1 : Wait Vbl : Dec W : Next Z
  118. W=128 : For Z=128 To 255 : Screen Copy 1,107,Z,213,Z+1 To 0,107,Z : Screen Copy 1,107,W-1,213,W To 0,107,W-1 : Wait Vbl : Dec W : Next Z : Return 
  119. 33
  120. W=128 : For Z=128 To 255 : Screen Copy 1,160,Z,320,Z+1 To 0,160,Z : Screen Copy 1,0,W-1,160,W To 0,0,W-1 : Wait Vbl : Dec W : Next Z
  121. W=160 : For Z=160 To 319 : Screen Copy 1,Z,0,Z+1,128 To 0,Z,0 : Screen Copy 1,W-1,128,W,256 To 0,W-1,128 : Wait Vbl : Dec W : Next Z : Return 
  122. 34
  123. W=128 : For Z=128 To 255 : Screen Copy 1,0,Z,160,Z+1 To 0,0,Z : Screen Copy 1,160,W-1,320,W To 0,160,W-1 : Wait Vbl : Dec W : Next Z
  124. W=160 : For Z=160 To 319 : Screen Copy 1,Z,128,Z+1,256 To 0,Z,128 : Screen Copy 1,W-1,0,W,128 To 0,W-1,0 : Wait Vbl : Dec W : Next Z : Return 
  125. 35
  126. W=160 : For Z=160 To 319 : Screen Copy 1,Z,0,Z+1,128 To 0,Z,0 : Screen Copy 1,W-1,128,W,256 To 0,W-1,128 : Wait Vbl : Dec W : Next Z
  127. W=128 : For Z=128 To 255 : Screen Copy 1,160,Z,320,Z+1 To 0,160,Z : Screen Copy 1,0,W-1,160,W To 0,0,W-1 : Wait Vbl : Dec W : Next Z : Return 
  128. 36
  129. W=160 : For Z=160 To 319 : Screen Copy 1,Z,128,Z+1,256 To 0,Z,128 : Screen Copy 1,W-1,0,W,128 To 0,W-1,0 : Wait Vbl : Dec W : Next Z
  130. W=128 : For Z=128 To 255 : Screen Copy 1,0,Z,160,Z+1 To 0,0,Z : Screen Copy 1,160,W-1,320,W To 0,160,W-1 : Wait Vbl : Dec W : Next Z : Return 
  131. 37
  132. W=320 : For Z=0 To 159 : Screen Copy 1,Z,0,Z+1,64 To 0,Z,0 : Screen Copy 1,W-1,64,W,128 To 0,W-1,64 : Screen Copy 1,Z,128,Z+1,192 To 0,Z,128 : Screen Copy 1,W-1,192,W,256 To 0,W-1,192 : Wait Vbl : Dec W : Next Z
  133. W=320 : For Z=0 To 159 : Screen Copy 1,Z,64,Z+1,128 To 0,Z,64 : Screen Copy 1,W-1,0,W,64 To 0,W-1,0 : Screen Copy 1,Z,192,Z+1,256 To 0,Z,192 : Screen Copy 1,W-1,128,W,192 To 0,W-1,128 : Wait Vbl : Dec W : Next Z : Return 
  134. 38
  135. W=320 : For Z=0 To 159 : Screen Copy 1,Z,32,Z+1,64 To 0,Z,32 : Screen Copy 1,W-1,0,W,32 To 0,W-1,0 : Screen Copy 1,Z,96,Z+1,128 To 0,Z,96 : Screen Copy 1,W-1,64,W,96 To 0,W-1,64
  136. Screen Copy 1,Z,160,Z+1,192 To 0,Z,160 : Screen Copy 1,W-1,128,W,160 To 0,W-1,128 : Screen Copy 1,Z,224,Z+1,256 To 0,Z,224 : Screen Copy 1,W-1,192,W,224 To 0,W-1,192 : Wait Vbl : Dec W : Next Z
  137. W=320 : For Z=0 To 159 : Screen Copy 1,Z,0,Z+1,32 To 0,Z,0 : Screen Copy 1,W-1,32,W,64 To 0,W-1,32 : Screen Copy 1,Z,64,Z+1,96 To 0,Z,64 : Screen Copy 1,W-1,96,W,128 To 0,W-1,96
  138. Screen Copy 1,Z,128,Z+1,160 To 0,Z,128 : Screen Copy 1,W-1,160,W,192 To 0,W-1,160 : Screen Copy 1,Z,192,Z+1,224 To 0,Z,192 : Screen Copy 1,W-1,224,W,256 To 0,W-1,224 : Wait Vbl : Dec W : Next Z : Return 
  139. 39
  140. W=256 : For Z=0 To 127 : Screen Copy 1,0,Z,80,Z+1 To 0,0,Z : Screen Copy 1,80,W-1,160,W To 0,80,W-1 : Screen Copy 1,160,Z,240,Z+1 To 0,160,Z : Screen Copy 1,240,W-1,320,W To 0,240,W-1 : Wait Vbl : Dec W : Next Z
  141. W=256 : For Z=0 To 127 : Screen Copy 1,80,Z,160,Z+1 To 0,80,Z : Screen Copy 1,0,W-1,80,W To 0,0,W-1 : Screen Copy 1,240,Z,320,Z+1 To 0,240,Z : Screen Copy 1,160,W-1,240,W To 0,160,W-1 : Wait Vbl : Dec W : Next Z : Return 
  142. 40
  143. W=256 : For Z=0 To 127 : Screen Copy 1,0,Z,40,Z+1 To 0,0,Z : Screen Copy 1,40,W-1,80,W To 0,40,W-1 : Screen Copy 1,80,Z,120,Z+1 To 0,80,Z : Screen Copy 1,120,W-1,160,W To 0,120,W-1
  144. Screen Copy 1,160,Z,200,Z+1 To 0,160,Z : Screen Copy 1,200,W-1,240,W To 0,200,W-1 : Screen Copy 1,240,Z,280,Z+1 To 0,240,Z : Screen Copy 1,280,W-1,320,W To 0,280,W-1 : Wait Vbl : Dec W : Next Z
  145. W=256 : For Z=0 To 127 : Screen Copy 1,40,Z,80,Z+1 To 0,40,Z : Screen Copy 1,0,W-1,40,W To 0,0,W-1 : Screen Copy 1,120,Z,160,Z+1 To 0,120,Z : Screen Copy 1,80,W-1,120,W To 0,80,W-1
  146. Screen Copy 1,200,Z,240,Z+1 To 0,200,Z : Screen Copy 1,160,W-1,200,W To 0,160,W-1 : Screen Copy 1,280,Z,320,Z+1 To 0,280,Z : Screen Copy 1,240,W-1,280,W To 0,240,W-1 : Wait Vbl : Dec W : Next Z : Return 
  147. 41
  148. W=0 : B=0
  149. 102
  150. For Z=0 To 319 Step 64 : Screen Copy 1,Z,W,Z+32,W+32 To 0,Z,W : Wait Vbl : Next Z : Add W,32
  151. For Z=32 To 319 Step 64 : Screen Copy 1,Z,W,Z+32,W+32 To 0,Z,W : Wait Vbl : Next Z : Add W,32
  152. Inc B : If B<4 Then Goto 102
  153. W=0 : B=0
  154. 103
  155. For Z=32 To 319 Step 64 : Screen Copy 1,Z,W,Z+32,W+32 To 0,Z,W : Wait Vbl : Next Z : Add W,32
  156. For Z=0 To 319 Step 64 : Screen Copy 1,Z,W,Z+32,W+32 To 0,Z,W : Wait Vbl : Next Z : Add W,32
  157. Inc B : If B<4 Then Goto 103
  158. Return 
  159. 42
  160. W=0 : B=0
  161. 104
  162. For Z=0 To 319 Step 32 : Screen Copy 1,Z,W,Z+16,W+16 To 0,Z,W : Wait Vbl : Next Z : Add W,16
  163. For Z=16 To 319 Step 32 : Screen Copy 1,Z,W,Z+16,W+16 To 0,Z,W : Wait Vbl : Next Z : Add W,16
  164. Inc B : If B<8 Then Goto 104
  165. W=0 : B=0
  166. 105
  167. For Z=16 To 319 Step 32 : Screen Copy 1,Z,W,Z+16,W+16 To 0,Z,W : Wait Vbl : Next Z : Add W,16
  168. For Z=0 To 319 Step 32 : Screen Copy 1,Z,W,Z+16,W+16 To 0,Z,W : Wait Vbl : Next Z : Add W,16
  169. Inc B : If B<8 Then Goto 105
  170. Return 
  171. 43
  172. W=0 : B=0
  173. 106
  174. For Z=0 To 319 Step 32 : Screen Copy 1,Z,W,Z+16,W+16 To 0,Z,W : Wait Vbl : Next Z : Add W,16
  175. For Z=16 To 319 Step 32 : Screen Copy 1,Z,W,Z+16,W+16 To 0,Z,W : Wait Vbl : Next Z : Add W,16
  176. Inc B : If B<8 Then Goto 106
  177. W=256 : B=0
  178. 107
  179. For Z=0 To 319 Step 32 : Screen Copy 1,Z,W-16,Z+16,W To 0,Z,W-16 : Wait Vbl : Next Z : W=W-16
  180. For Z=16 To 319 Step 32 : Screen Copy 1,Z,W-16,Z+16,W To 0,Z,W-16 : Wait Vbl : Next Z : W=W-16
  181. Inc B : If B<8 Then Goto 107
  182. Return 
  183. 44
  184. W=256 : B=0
  185. 108
  186. For Z=0 To 319 Step 32 : Screen Copy 1,Z,W-16,Z+16,W To 0,Z,W-16 : Wait Vbl : Next Z : W=W-16
  187. For Z=16 To 319 Step 32 : Screen Copy 1,Z,W-16,Z+16,W To 0,Z,W-16 : Wait Vbl : Next Z : W=W-16
  188. Inc B : If B<8 Then Goto 108
  189. W=0 : B=0
  190. 109
  191. For Z=0 To 319 Step 32 : Screen Copy 1,Z,W,Z+16,W+16 To 0,Z,W : Wait Vbl : Next Z : Add W,16
  192. For Z=16 To 319 Step 32 : Screen Copy 1,Z,W,Z+16,W+16 To 0,Z,W : Wait Vbl : Next Z : Add W,16
  193. Inc B : If B<8 Then Goto 109
  194. Return 
  195. 45
  196. W=0 : B=0
  197. 110
  198. For Z=0 To 255 Step 64 : Screen Copy 1,W,Z,W+32,Z+32 To 0,W,Z : Wait Vbl : Next Z : Add W,32
  199. For Z=32 To 255 Step 64 : Screen Copy 1,W,Z,W+32,Z+32 To 0,W,Z : Wait Vbl : Next Z : Add W,32
  200. Inc B : If B<5 Then Goto 110
  201. W=0 : B=0
  202. 111
  203. For Z=32 To 255 Step 64 : Screen Copy 1,W,Z,W+32,Z+32 To 0,W,Z : Wait Vbl : Next Z : Add W,32
  204. For Z=0 To 255 Step 64 : Screen Copy 1,W,Z,W+32,Z+32 To 0,W,Z : Wait Vbl : Next Z : Add W,32
  205. Inc B : If B<5 Then Goto 111
  206. Return 
  207. 46
  208. W=0 : B=0
  209. 112
  210. For Z=0 To 255 Step 32 : Screen Copy 1,W,Z,W+32,Z+16 To 0,W,Z : Wait Vbl : Next Z : Add W,32
  211. For Z=16 To 255 Step 32 : Screen Copy 1,W,Z,W+32,Z+16 To 0,W,Z : Wait Vbl : Next Z : Add W,32
  212. Inc B : If B<5 Then Goto 112
  213. W=0 : B=0
  214. 113
  215. For Z=16 To 255 Step 32 : Screen Copy 1,W,Z,W+32,Z+16 To 0,W,Z : Wait Vbl : Next Z : Add W,32
  216. For Z=0 To 255 Step 32 : Screen Copy 1,W,Z,W+32,Z+16 To 0,W,Z : Wait Vbl : Next Z : Add W,32
  217. Inc B : If B<5 Then Goto 113
  218. Return 
  219. 47
  220. W=0 : B=0
  221. 114
  222. For Z=0 To 255 Step 32 : Screen Copy 1,W,Z,W+32,Z+16 To 0,W,Z : Wait Vbl : Next Z : Add W,32
  223. For Z=16 To 255 Step 32 : Screen Copy 1,W,Z,W+32,Z+16 To 0,W,Z : Wait Vbl : Next Z : Add W,32
  224. Inc B : If B<5 Then Goto 114
  225. W=320 : B=0
  226. 115
  227. For Z=0 To 255 Step 32 : Screen Copy 1,W-32,Z,W,Z+16 To 0,W-32,Z : Wait Vbl : Next Z : W=W-32
  228. For Z=16 To 255 Step 32 : Screen Copy 1,W-32,Z,W,Z+16 To 0,W-32,Z : Wait Vbl : Next Z : W=W-32
  229. Inc B : If B<5 Then Goto 115
  230. Return 
  231. 48
  232. W=320 : B=0
  233. 116
  234. For Z=0 To 255 Step 32 : Screen Copy 1,W-32,Z,W,Z+16 To 0,W-32,Z : Wait Vbl : Next Z : W=W-32
  235. For Z=16 To 255 Step 32 : Screen Copy 1,W-32,Z,W,Z+16 To 0,W-32,Z : Wait Vbl : Next Z : W=W-32
  236. Inc B : If B<5 Then Goto 116
  237. W=0 : B=0
  238. 117
  239. For Z=0 To 255 Step 32 : Screen Copy 1,W,Z,W+32,Z+16 To 0,W,Z : Wait Vbl : Next Z : Add W,32
  240. For Z=16 To 255 Step 32 : Screen Copy 1,W,Z,W+32,Z+16 To 0,W,Z : Wait Vbl : Next Z : Add W,32
  241. Inc B : If B<5 Then Goto 117
  242. Return 
  243. 49
  244. Screen Copy 1,0,0,160,128 To 0,0,0 : Wait Vbl : Wait AW : Screen Copy 1,160,128,320,256 To 0,160,128 : Wait Vbl : Wait AW : Screen Copy 1,0,128,160,256 To 0,0,128 : Wait Vbl : Wait AW
  245. Screen Copy 1,160,0,320,128 To 0,160,0 : Wait Vbl : Wait AW : Return 
  246. 50
  247. Screen Copy 1,160,0,320,128 To 0,160,0 : Wait Vbl : Wait AW : Screen Copy 1,0,128,160,256 To 0,0,128 : Wait Vbl : Wait AW : Screen Copy 1,160,128,320,256 To 0,160,128 : Wait Vbl : Wait AW
  248. Screen Copy 1,0,0,160,128 To 0,0,0 : Wait Vbl : Wait AW : Return 
  249. 51
  250. Screen Copy 1,0,0,320,64 To 0,0,0 : Wait Vbl : Wait AW : Screen Copy 1,0,128,320,192 To 0,0,128 : Wait Vbl : Wait AW : Screen Copy 1,0,64,320,128 To 0,0,64 : Wait Vbl : Wait AW
  251. Screen Copy 1,0,192,320,256 To 0,0,192 : Wait Vbl : Wait AW : Return 
  252. 52
  253. Screen Copy 1,0,0,320,64 To 0,0,0 : Wait Vbl : Wait AW : Screen Copy 1,0,64,320,128 To 0,0,64 : Wait Vbl : Wait AW : Screen Copy 1,0,128,320,192 To 0,0,128 : Wait Vbl : Wait AW
  254. Screen Copy 1,0,192,320,256 To 0,0,192 : Wait Vbl : Wait AW : Return 
  255. 80
  256. Screen Open 2,320,512,PS,Lowres : Curs Off : Screen Hide 2 : Flash Off : Cls 0 : Screen Display 2,YC,YD,320,256 : Screen Offset 2,0,0 : Screen Copy 1 To 2 : Get Palette 1 : Screen Show 2
  257. For Z=1 To 256 Step SX : Screen Offset 2,0,Z : Wait Vbl : Next Z : Cls 0 : Screen 0 : Cls 0 : Screen Close 2 : Return 
  258. 81
  259. Screen Open 2,320,768,PS,Lowres : Curs Off : Screen Hide 2 : Flash Off : Cls 0 : Screen Display 2,YC,YD,320,256 : Screen Offset 2,0,256 : Screen Copy 1,0,0,320,256 To 2,0,256 : Get Palette 1
  260. Screen Show 2 : For Z=255 To 0 Step -SX : Screen Offset 2,0,Z : Wait Vbl : Next Z : Cls 0 : Screen 0 : Cls 0 : Screen Close 2 : Return 
  261. 82
  262. Screen Open 2,640,256,PS,Lowres : Curs Off : Screen Hide 2 : Flash Off : Cls 0 : Screen Display 2,YC,YD,320,256 : Screen Offset 2,0,0 : Screen Copy 1 To 2 : Get Palette 1 : Screen Show 2
  263. For Z=1 To 320 Step SX : Screen Offset 2,Z,0 : Wait Vbl : Next Z : Cls 0 : Screen 0 : Cls 0 : Screen Close 2 : Return 
  264. 83
  265. Screen Open 2,960,256,PS,Lowres : Curs Off : Screen Hide 2 : Flash Off : Cls 0 : Screen Display 2,YC,YD,320,256 : Screen Offset 2,320,0 : Screen Copy 1,0,0,320,256 To 2,320,0 : Get Palette 1 : Screen Show 2
  266. For Z=319 To 0 Step -SX : Screen Offset 2,Z,0 : Wait Vbl : Next Z : Cls 0 : Screen 0 : Cls 0 : Screen Close 2 : Return 
  267. 84
  268. Screen Open 2,640,128,PS,Lowres : Curs Off : Screen Hide 2 : Flash Off : Cls 0 : Screen Display 2,YC,130+YD,320,128 : Screen Offset 2,0,0 : Screen Open 3,960,128,PS,Lowres : Curs Off : Screen Hide 3 : Flash Off : Cls 0
  269. Screen Display 3,YC,YD,320,128 : Screen Offset 3,320,0
  270. 140
  271. Screen Copy 1,0,0,320,128 To 3,320,0 : Get Palette 1 : Screen 2 : Screen Copy 1,0,128,320,256 To 2,0,0 : Get Palette 1 : Screen Show 3 : Screen Show 2 : For Z=1 To 320 Step SX : Screen Offset 2,Z,0
  272. Wait Vbl : Next Z : Cls 0 : Screen 3 : For Z=319 To 0 Step -SX : Screen Offset 3,Z,0 : Wait Vbl : Next Z : Cls 0 : Screen 0 : Cls 0 : Screen Close 2 : Screen Close 3 : Return 
  273. 85
  274. Screen Open 2,960,128,PS,Lowres : Curs Off : Screen Hide 2 : Flash Off : Cls 0 : Screen Display 2,YC,130+YD,320,128 : Screen Offset 2,320,0 : Screen Open 3,640,128,PS,Lowres : Curs Off : Screen Hide 3 : Flash Off : Cls 0
  275. Screen Display 3,YC,YD,320,128 : Screen Offset 3,0,0
  276. 141
  277. Screen Copy 1,0,0,320,128 To 3,0,0 : Get Palette 1 : Screen 2 : Screen Copy 1,0,128,320,256 To 2,320,0 : Get Palette 1 : Screen Show 3 : Screen Show 2 : For Z=319 To 0 Step -SX : Screen Offset 2,Z,0
  278. Wait Vbl : Next Z : Cls 0 : Screen 3 : For Z=1 To 320 Step SX : Screen Offset 3,Z,0 : Wait Vbl : Next Z : Cls 0 : Screen 0 : Cls 0 : Screen Close 2 : Screen Close 3 : Return 
  279. 86
  280. Screen Open 2,320,768,PS,Lowres : Curs Off : Screen Hide 2 : Flash Off : Cls 0 : Screen Display 2,YC,130+YD,320,128 : Screen Offset 2,0,256 : Screen Open 3,320,512,PS,Lowres : Curs Off : Screen Hide 3 : Flash Off : Cls 0
  281. Screen Display 3,YC,YD,320,128 : Screen Offset 3,0,0
  282. 142
  283. Screen Copy 1,0,0,320,128 To 3,0,0 : Get Palette 1 : Screen 2 : Screen Copy 1,0,128,320,256 To 2,0,256 : Get Palette 1 : Screen Show 3 : Screen Show 2 : For Z=255 To 0 Step -SX : Screen Offset 2,0,Z
  284. Wait Vbl : Next Z : Cls 0 : Screen 3 : For Z=1 To 256 Step SX : Screen Offset 3,0,Z : Wait Vbl : Next Z : Cls 0 : Screen 0 : Cls 0 : Screen Close 2 : Screen Close 3 : Return 
  285. 87
  286. Screen Open 2,320,768,PS,Lowres : Curs Off : Screen Hide 2 : Flash Off : Cls 0 : Screen Display 2,YC,130+YD,320,128 : Screen Offset 2,0,256 : Screen Open 3,640,128,PS,Lowres : Curs Off : Screen Hide 3 : Flash Off : Cls 0
  287. Screen Display 3,YC,YD,320,128 : Screen Offset 3,0,0
  288. 143
  289. Screen Copy 1,0,0,320,128 To 3,0,0 : Get Palette 1 : Screen 2 : Screen Copy 1,0,128,320,256 To 2,0,256 : Get Palette 1 : Screen Show 3 : Screen Show 2 : For Z=255 To 0 Step -SX : Screen Offset 2,0,Z
  290. Wait Vbl : Next Z : Cls 0 : Screen 3 : For Z=1 To 320 Step SX : Screen Offset 3,Z,0 : Wait Vbl : Next Z : Cls 0 : Screen 0 : Cls 0 : Screen Close 2 : Screen Close 3 : Return 
  291. 88
  292. Screen Open 2,320,768,PS,Lowres : Curs Off : Screen Hide 2 : Flash Off : Cls 0 : Screen Display 2,YC,130+YD,320,128 : Screen Offset 2,0,256 : Screen Open 3,960,128,PS,Lowres : Curs Off : Screen Hide 3 : Flash Off : Cls 0
  293. Screen Display 3,YC,YD,320,128 : Screen Offset 3,320,0
  294. 144
  295. Screen Copy 1,0,0,320,128 To 3,320,0 : Get Palette 1 : Screen 2 : Screen Copy 1,0,128,320,256 To 2,0,256 : Get Palette 1 : Screen Show 3 : Screen Show 2 : For Z=255 To 0 Step -SX : Screen Offset 2,0,Z
  296. Wait Vbl : Next Z : Cls 0 : Screen 3 : For Z=319 To 0 Step -SX : Screen Offset 3,Z,0 : Wait Vbl : Next Z : Cls 0 : Screen 0 : Cls 0 : Screen Close 2 : Screen Close 3 : Return 
  297. 89
  298. Screen Open 2,960,128,PS,Lowres : Curs Off : Screen Hide 2 : Flash Off : Cls 0 : Screen Display 2,YC,130+YD,320,128 : Screen Offset 2,320,0 : Screen Open 3,320,512,PS,Lowres : Curs Off : Screen Hide 3 : Flash Off : Cls 0
  299. Screen Display 3,YC,YD,320,128 : Screen Offset 3,0,0
  300. 145
  301. Screen Copy 1,0,0,320,128 To 3,0,0 : Get Palette 1 : Screen 2 : Screen Copy 1,0,128,320,256 To 2,320,0 : Get Palette 1 : Screen Show 3 : Screen Show 2 : For Z=319 To 0 Step -SX : Screen Offset 2,Z,0
  302. Wait Vbl : Next Z : Cls 0 : Screen 3 : For Z=1 To 256 Step SX : Screen Offset 3,0,Z : Wait Vbl : Next Z : Cls 0 : Screen 0 : Cls 0 : Screen Close 2 : Screen Close 3 : Return 
  303. 90
  304. Screen Open 2,640,128,PS,Lowres : Curs Off : Screen Hide 2 : Flash Off : Cls 0 : Screen Display 2,YC,130+YD,320,128 : Screen Offset 2,0,0 : Screen Open 3,320,512,PS,Lowres : Curs Off : Screen Hide 3 : Flash Off : Cls 0
  305. Screen Display 3,YC,YD,320,128 : Screen Offset 3,0,0
  306. 146
  307. Screen Copy 1,0,0,320,128 To 3,0,0 : Get Palette 1 : Screen 2 : Screen Copy 1,0,128,320,256 To 2,0,0 : Get Palette 1 : Screen Show 3 : Screen Show 2 : For Z=1 To 320 Step SX : Screen Offset 2,Z,0
  308. Wait Vbl : Next Z : Cls 0 : Screen 3 : For Z=1 To 256 Step SX : Screen Offset 3,0,Z : Wait Vbl : Next Z : Cls 0 : Screen 0 : Cls 0 : Screen Close 2 : Screen Close 3 : Return 
  309. 899
  310. Gosub 903
  311. 900
  312. Z$=Inkey$ : SC=Scancode : If Z$=Chr$(13) Then If A$="" Then Goto 900
  313. If Z$=Chr$(13) Then If A$<>"" Then If Exist(A$) Then Gosub 904 : Return : Else Gosub 903
  314. If Z$=>Chr$(32) Then If Z$<Chr$(127) Then Gosub 901
  315. If SC=70 or SC=65 Then Gosub 902
  316. If SC=69 or SC=95 Then End 
  317. Goto 900
  318. 901
  319. If VV=1 Then XX=13 : VV=0
  320. Paper 1 : Pen 4 : If XX<=74 Then Locate XX,30 : Print Z$; : A$=A$+Z$ : Add XX,1
  321. Return 
  322. 902
  323. If XX=>13 Then Dec XX : If XX<13 Then VV=1
  324. Paper 1 : Pen 4 : If XX=>13 Then Locate XX,30 : Print " "; : A$=Mid$(A$,1,Len(A$)-1)
  325. Return 
  326. 903
  327. Paper 1 : Pen 4 : Print At(13,30);"                                                              " : A$="" : VV=0 : XX=13 : Return 
  328. 904
  329. On Error Goto 905
  330. Open In 1,A$ : B$=Input$(1,4) : L=Lof(1) : Close 1 : If B$="FORM" Then C$=A$ : Gosub 906 : Else Gosub 903
  331. Return 
  332. 905
  333. Gosub 903 : Resume 900
  334. 906
  335. Paper 1 : Pen 4 : Print At(13,30);"Loading and Packing your Picture - Please Wait..." : Load Iff C$,1 : Screen Hide 1 : Load Iff C$,0 : Screen Hide 0 : Screen Display 0,YC,YD,, : PS=Deek(Screen Base+72+24) : Erase 15
  336. Reserve As Chip Work 15,L : Spack 0 To 15 : Screen 4 : Print At(13,30);"...Your Picture has been Loaded and Packed - Please Continue." : Return 
  337. 200
  338. Fade 1 : Wait TW : Return 
  339. 202
  340. For Z=0 To PS-1 : TS(Z)=Colour(Z) : Colour Z,0 : Next Z : Screen Show 0 : Fade FS,TS(0),TS(1) : Wait FS*15 : Return 
  341. 204
  342. For Z=0 To PS-1 : TS(Z)=Colour(Z) : Colour Z,0 : Next Z : Screen Show 0 : Fade FS,TS(0),TS(1),TS(2),TS(3) : Wait FS*15 : Return 
  343. 208
  344. For Z=0 To PS-1 : TS(Z)=Colour(Z) : Colour Z,0 : Next Z : Screen Show 0 : Fade FS,TS(0),TS(1),TS(2),TS(3),TS(4),TS(5),TS(6),TS(7) : Wait FS*15 : Return 
  345. 216
  346. For Z=0 To PS-1 : TS(Z)=Colour(Z) : Colour Z,0 : Next Z : Screen Show 0 : Fade FS,TS(0),TS(1),TS(2),TS(3),TS(4),TS(5),TS(6),TS(7),TS(8),TS(9),TS(10),TS(11),TS(12),TS(13),TS(14),TS(15) : Wait FS*15 : Return 
  347. 220
  348. If PO=1 Then Screen Close 4 : Hide On : Cls 0 : Screen Show 0 : Wait FW : Gosub 0+WI
  349. If PO=2 Then Screen Close 4 : Hide On : Wait FW : If PS=>2 and PS<17 Then Gosub 200+PS Else Screen Show 0
  350. If PO=3 Then Screen Close 4 : Hide On : Wait FW : Screen Show 0
  351. Wait SW
  352. If SO=1 Then Screen 1 : Cls 0 : Screen 0 : Gosub 0+WO
  353. If SO=2 Then Gosub 200
  354. If SO=3 Then Cls 0
  355. If SO=4 Then Gosub 79+SCR
  356. Wait TW : PO=0 : SO=0 : Screen 1 : Cls 0 : Unpack 15 To 1 : Screen Hide 1 : Screen 0 : Cls 0 : Unpack 15 To 0 : Screen Hide 0 : Screen Display 0,YC,YD,, : Gosub 910 : Show On : Return 
  357. 910
  358. Screen Open 4,640,270,8,Hires : Screen Hide 4 : Curs Off : Ink 7 : Flash Off : Cls 0 : Screen Display 4,128,35,640,270 : Paste Bob 82,8,1 : Paste Bob 354,8,2 : Paste Bob 0,236,3 : Paste Bob 300,236,4
  359. Paste Bob 219,45,5 : Paste Bob 219,68,7 : Paste Bob 219,91,9 : Paste Bob 322,45,5 : Paste Bob 322,68,7 : Paste Bob 322,91,11 : Paste Bob 322,114,13 : Paste Bob 100,114,15 : Paste Bob 470,114,17 : Bar 1,153 To 638,219
  360. Get Sprite Palette : Ink 4 : Box 0,152 To 639,220 : Paper 7 : Pen 4 : Print At(1,20);"1) Wipe In:";At(19,20);"2) Wipe Out:";At(39,20);"3) Scroll:";At(57,20);"4) Scroll Speed:";At(1,22);"5) Scr.X:";At(19,22);"6) Scr.Y:"
  361. Pen 3 : Print At(36,22);"a) 1    b) 10    c) 50    Gap Total:" : Pen 4 : Print At(1,24);"7) First Pause:";At(24,24);"8) Pic Pause:";At(45,24);"9) Last Pause:";At(67,24);"0) Fade:" : Pen 5 : Limit Mouse 173,79 To 435,285
  362. Print At(3,26);"Copyright Effex - (c) John White, 1994.     Press  Ctrl-C  or  q  to Quit." : For Z=0 To 7 : TR(Z)=Colour(Z) : Colour Z,0 : Next Z : Screen Show 4 : Fade 1,TR(0),TR(1),TR(2),TR(3),TR(4),TR(5),TR(6),TR(7) : Wait 15 : Return