home *** CD-ROM | disk | FTP | other *** search
/ Loadstar 227 / 227.d81 / b.nexsnail (.txt) < prev    next >
Commodore BASIC  |  2022-08-26  |  7KB  |  254 lines

  1. 1 rem a$="64snail":savea$,8:verifya$,8
  2. 2 poke788,52:rembypass clock-stop check
  3. 10 xm=319:xc=xm/2:op=0:o=op:sa=24576
  4. 20 ym=199:yc=ym/2:c=0:pt=1:ea=sa+7999:dn=peek(186):cp=0:sn=1:fp=0
  5. 22 ed$=".....end of line."
  6. 24 ed$=ed$+""
  7. 30 gosub6000:gosub9000
  8. 100 rem *** main ***
  9. 110 gosub8000
  10. 120 rem *** mainloop ***
  11. 130 e$="":print"";:gete$:ife$=""then130
  12. 140 gosub7000
  13. 150 goto120
  14. 200 rem *** reverse screen ***
  15. 250 fori=satoea
  16. 255 e$="":gete$:ife$="^"then299
  17. 260 pokei,255-peek(i)
  18. 280 nexti
  19. 290 getc$:ifc$=""then290
  20. 299 return
  21. 999 end
  22. 1000 rem *** snailskin vi ***
  23. 1001 poke53280,5
  24. 1100 for v=1 to yc
  25. 1110 for n=0 to v step sn
  26. 1120 c=c+.05
  27. 1126 if fp=0thenpt=1
  28. 1128 if fp=1thenpt=pt+1:ifpt>1thenpt=0
  29. 1130 x=int(xc+v*sin(n/(c/2)*(NULL)))
  30. 1140 y=int(yc-v*cos(n/(c/2)*(NULL)))
  31. 1150 if x>xm or x<0 or y>ym or y<0 then 1180
  32. 1160 rem pt=pt+1:if pt>1 then pt=0
  33. 1170 gosub4000
  34. 1172 e$="":gete$:ife$="^"then1199
  35. 1180 next n
  36. 1190 next v
  37. 1191 poke53280,2
  38. 1192 c$="":getc$:ifc$=""then1192
  39. 1199 return
  40. 2000 rem *** sinmore iii ***
  41. 2001 poke53280,5
  42. 2091 poke53280,5
  43. 2100 for v=yc to 1 step-1
  44. 2110 for n=-v to 0 step sn
  45. 2120 c=c+.05
  46. 2130 x=int(xc+v*sin(n/(c/4)*(NULL)))
  47. 2140 y=int(yc-v*cos(n/(c/5)*(NULL)))
  48. 2150 if x>xm or x<0 or y>ym or y<0 then 2180
  49. 2160 iffp=1thenpt=pt+1:ifpt>1thenpt=0
  50. 2162 iffp=0thenpt=1
  51. 2170 gosub4000
  52. 2172 e$="":gete$:ife$="^"then2199
  53. 2180 next n
  54. 2190 next v
  55. 2191 poke53280,2
  56. 2192 c$="":getc$:ifc$=""then2192
  57. 2199 return
  58. 3000 rem *** moriphic iii ***
  59. 3001 poke53280,5
  60. 3100 for v=yc to -yc step -1
  61. 3110 for n=-v to v step sn
  62. 3120 c=c+.05
  63. 3130 x=int(xc+v*sin(n/(c/4)*(NULL)))
  64. 3140 y=int(yc-v*cos(n/(c/5)*(NULL)))
  65. 3150 if x>xm or x<0 or y>ym or y<0 then 3180
  66. 3160 iffp=1thenpt=pt+1:ifpt>1thenpt=0
  67. 3162 iffp=0thenpt=1
  68. 3170 gosub4000
  69. 3172 e$="":gete$:ife$="^"then3199
  70. 3180 next n
  71. 3190 next v
  72. 3191 poke53280,2
  73. 3192 c$="":getc$:ifc$=""then3192
  74. 3199 return
  75. 4000 rem *** plot ***
  76. 4010 ifx>xmorx<0ory>ymory<0then4999
  77. 4020 ch=int(x/8):ro=int(y/8):ln=yand7
  78. 4030 by=sa+ro*320+8*ch+ln:bi=7-(xand7)
  79. 4040 ifpt=1thenpokeby,peek(by)or(2^bi)
  80. 4050 ifpt=0andpeek(by)=(peek(by)or(2^bi))thenpokeby,peek(by)-(2^bi)
  81. 4999 return
  82. 5000 rem *** setup hires ***
  83. 5010 poke53265,peek(53265)or32
  84. 5012 poke56576,150
  85. 5014 poke648,92
  86. 5016 poke53272,121
  87. 5020 ifcp=0thenfori=23552to24551:pokei,1:nexti:cp=1
  88. 5030 if op=0thenfori=satoea:pokei,0:nexti
  89. 5040 return
  90. 6000 rem *** text mode ***
  91. 6010 poke53265,peek(53265)and223
  92. 6012 poke56576,151
  93. 6013 poke648,4
  94. 6014 poke53272,21
  95. 6020 poke53281,0:poke53280,11:poke646,1
  96. 6030 return
  97. 7000 rem *** check key press ***
  98. 7010 ife$="1"thengosub5000:gosub1000
  99. 7020 ife$="2"thengosub5000:gosub2000
  100. 7030 ife$="3"thengosub5000:gosub3000
  101. 7040 ife$="4"thenop=1:gosub5000:op=o:gosub200
  102. 7050 ife$="5"thenop=op+1:o=op:ifop>1thenop=0:o=op
  103. 7060 ife$="6"thenop=0:gosub5000:op=o
  104. 7070 ife$="7"thenfp=fp+1:iffp>1thenfp=0
  105. 7080 ife$="8"thenprint"enter c value ";:f=1:gosub20000:c=val(f$):f=0
  106. 7090 ife$="9"thenprint"set step value ";:f=1:gosub20000:sn=abs(val(f$)):f=0
  107. 7092 ifsn>319thensn=1
  108. 7100 ife$="0"thenop=1:gosub5000:e$="":op=o:goto7120
  109. 7104 ife$="/"thengosub30000
  110. 7106 ife$="q"thenprinted$:poke788,49:goto40000
  111. 7108 ife$="s"thengosub10000
  112. 7110 gosub6000:gosub8000
  113. 7120 return
  114. 8000 rem *** menu ***
  115. 8008 poke53281,0:poke53280,11:poke646,1
  116. 8010 print"[147][144][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164]"
  117. 8012 print"[155] snail[211]kin[164][214][201][201], sin[205]ore[164][201][201][201], [146]"
  118. 8013 print"[152][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]"
  119. 8018 print"[164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164]"
  120. 8020 print"[155] and [205]oriphic[164][201][201][201] [146]"
  121. 8022 print"[152][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]"
  122. 8030 print"[164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164]"
  123. 8032 print"[155] by [194]rian [195]rosthwaite [146]"
  124. 8034 print"[152][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]"
  125. 8040 print"[164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164]"
  126. 8042 print"[155]press....                           "
  127. 8050 print"  1 snail[211]kin[164][214][201][201]         / drive # "
  128. 8060 print"  2 sin[205]ore[164][201][201][201]                     "
  129. 8062 print"[146] [196][206] ="dn"[157] "
  130. 8070 print"  3 [205]oriphic[164][201][201][201]                    "
  131. 8080 print"  4 reverse plot screen             "
  132. 8090 print"  5 toggle over plot      [146] [207][208] ="op"  "
  133. 8100 print"  6 clear plot screen               "
  134. 8110 print"  7 false/true plot                 "
  135. 8112 print"[146] [198][208] ="fp"[157] "
  136. 8120 print"  8 set c                           "
  137. 8122 print"[146] [195] ="c"[157] "
  138. 8130 print"  9 set step              [211] to save "
  139. 8132 print"[146] [211] ="sn"[157] "
  140. 8140 print"  0 view        ^ menu    [209] to quit "
  141. 8142 print"[152][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]"
  142. 8150 return
  143. 9000 rem *** opening screens ***
  144. 9010 print"[147][159][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164]"
  145. 9020 print"[154] [202] & [198] [208]ublishing [146]"
  146. 9030 print"[163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]"
  147. 9040 print"[159][164][164][164]"
  148. 9050 print"[154] & [146]"
  149. 9060 print"[163][163][163]"
  150. 9070 print"[159][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164]"
  151. 9080 print"[154] noesiscreation.org [146]"
  152. 9090 print"[163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]"
  153. 9100 print"[159][164][164][164][164][164][164][164][164][164]"
  154. 9110 print"[154] present [146]"
  155. 9120 print"[163][163][163][163][163][163][163][163][163]"
  156. 9130 print"[159][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164]"
  157. 9140 print"[154] snail[211]kin[164][214][201][201], sin[205]ore[164][201][201][201], [146]"
  158. 9150 print"[163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]"
  159. 9160 print"[159][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164]"
  160. 9170 print"[154] and [205]oriphic[164][201][201][201] [146]"
  161. 9180 print"[163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]"
  162. 9190 print"[159][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164]"
  163. 9200 print"[154] by [194]rian [195]rosthwaite [146]"
  164. 9210 print"[163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]"
  165. 9212 poke53370,0
  166. 9214 fortd=0to4000
  167. 9215 c$="":getc$:ifc$<>""then9218
  168. 9216 nexttd
  169. 9218 poke53371,0
  170. 9220 print"[158][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164]"
  171. 9230 print"[153] [195]opyright 2003, 2004 [146]"
  172. 9240 print"[163][163][163][163]