home *** CD-ROM | disk | FTP | other *** search
/ The Glitch Apple Disk Collection / 2014.glitch.apple.collection.zip / indexed / PRISONER.DSK / PR.REC.bas < prev    next >
BASIC Source File  |  2014-09-09  |  7KB  |  99 lines

  1. 1  TEXT : HOME :ZZ =  FRE(0): POKE  -16368,0
  2. 2  ONERR  GOTO 32000
  3. 5  PRINT D$;"BLOAD TONES"
  4. 9  GOTO 1000
  5. 395 : VTAB H3%:T1% = L4% -L3% +1: FOR I3 = H3% TO H4%: HTAB L3%: PRINT  SPC( T1%): PRINT : NEXT I3: RETURN 
  6. 397  INVERSE :T1% = L6% -L5% +1: VTAB H5%: HTAB L5%: PRINT  SPC( T1%): VTAB H6%: HTAB L5%: PRINT  SPC( T1%)
  7. 398  VTAB H5% +1: FOR I3 = H5% +1 TO H6% -1: HTAB L5%: PRINT " ";: HTAB L6%: PRINT " ": NEXT I3: NORMAL : RETURN 
  8. 531  FOR I5 = 1 TO 1000: NEXT I5: RETURN 
  9. 600  VTAB Y%: HTAB X%: PRINT "#";
  10. 603 A% =  PEEK( -16384): IF A% <127  THEN ZT = ZT +1: GOTO 603
  11. 605  POKE  -16368,0: VTAB Y%: HTAB X%: PRINT " ";:A% = A% -128:X1% = 0:Y1% = 0: IF A% =  ASC("U")  THEN Y1% =  -1: RETURN 
  12. 606  IF A% =  ASC("D")  THEN Y1% = 1: RETURN 
  13. 607  IF A% =  ASC("L")  THEN X1% =  -1: RETURN 
  14. 608  IF A% =  ASC("R")  THEN X1% = 1: RETURN 
  15. 609 T1% = 100:T2% = 17: GOSUB 610: GOTO 600
  16. 610  POKE P1,T1%: POKE P2,T2%: CALL P3: RETURN 
  17. 620  POKE P1,255: POKE P2,255: CALL P3: RETURN 
  18. 700 T1%(X% -11,Y% -8) = 1: RETURN 
  19. 800 L3% = 3:L4% = 38:H3% = 2:H4% = 4: GOSUB 395: ON CT% GOSUB 13000,13001,13002,13004
  20. 801  HTAB 3: VTAB 2: GOSUB 610: PRINT "<CTRL-G><CTRL-G><CTRL-G><CTRL-G><CTRL-G>YOU FOUND A ";A$: HTAB 3: PRINT "WHAT WILL YOU DO WITH IT?"
  21. 802 T2$ = "I SEE"
  22. 803  HTAB 3: GOSUB 850: GOSUB 397: FOR I = 1 TO  LEN(IP$) -3:T1$ =  MID$ (IP$,I,4): IF (T1$ = "RAFT"  OR T1$ = "SAIL"  OR T1$ = "SWIM"  OR T1$ = "CROS")  AND CT% <4  THEN T2$ = "SOUNDS DOUBTFUL":I = 40
  23. 804  NEXT I: GOSUB 395: VTAB 3: HTAB 3: PRINT T2$: RETURN 
  24. 850 IP$ = "":T8% = 0: POKE  -16368,0
  25. 851  GET A$: IF A$ =  CHR$(8)  THEN 851
  26. 852 T8% = T8% +1:IP$ = IP$ +A$: PRINT A$;: IF T8% <30  AND A$ < > CHR$(13)  THEN 851
  27. 853  RETURN 
  28. 1000  GOSUB 10000
  29. 1005  GOSUB 2000
  30. 1010  GOSUB 3000
  31. 1020  GOSUB 4000
  32. 1030  GOSUB 2000
  33. 1035  PRINT CH$
  34. 1040  CALL 520"PR.WILD"
  35. 1999  END 
  36. 2000  GOSUB 12000: VTAB 2: HTAB 3: PRINT "CROSS THE PIT BY USE OF THE";: HTAB 36: PRINT "U"
  37. 2003  HTAB 3: PRINT "NETWORK OF RAMPS BELOW. DO NOT  L+R": HTAB 3: PRINT "TRY JUMPING OR GOING AROUND";: HTAB 36: PRINT "D"
  38. 2005 X% = 14 + INT( RND(1) *10):Y% = 17: FOR I = 1 TO 20: FOR J = 1 TO 20:T1%(I,J) = 0: NEXT J,I:Y1% = 17
  39. 2008 T1% =  INT( RND(1) *(Y% -8 +1)): IF (Y% -T1% >Y1% -2)  AND (Y% -T1% < >8)  THEN 2008
  40. 2009  FOR I = 1 TO T1%: VTAB Y%: HTAB X%: PRINT "D": GOSUB 700:Y% = Y% -1: NEXT I:X1% = X%: IF Y% = 8  THEN 2020
  41. 2010 T1% =  INT( RND(1) *(X% -13)) +1: FOR I = 1 TO T1%: VTAB Y%: HTAB X%: PRINT "R": GOSUB 700:X% = X% -1: NEXT I
  42. 2012 T1% =  INT( RND(1) *(Y% -8)) +1: FOR I = 1 TO T1%: VTAB Y%: HTAB X%: PRINT "D": GOSUB 700:Y% = Y% -1: NEXT I: IF Y% = 8  THEN 2020
  43. 2014 T1% =  INT( RND(1) *(24 -X1%) +(X1% -X%)) +2: FOR I = 1 TO T1%: VTAB Y%: HTAB X%: PRINT "L": GOSUB 700:X% = X% +1: NEXT I:Y1% = Y%
  44. 2016 T1% =  INT( RND(1) *(14 -Y%)) +1: FOR I = 1 TO T1%: VTAB Y%: HTAB X%: PRINT "U": GOSUB 700:Y% = Y% +1: NEXT I:
  45. 2018 T1% =  INT( RND(1) *(26 -X%)) +2: FOR I = 1 TO T1%: VTAB Y%: HTAB X%: PRINT "L": GOSUB 700:X% = X% +1: NEXT I
  46. 2019  GOTO 2008
  47. 2020  VTAB Y%: HTAB X%: PRINT "D": GOSUB 700
  48. 2025 X% = 20:Y% = 23
  49. 2030  NORMAL : GOSUB 600
  50. 2033  IF Y% +Y1% <9  THEN  FLASH : VTAB 8: HTAB (X% >20) *30 +1: PRINT  SPC( 10): GOSUB 620: NORMAL : GOTO 2030
  51. 2035  IF X% +X1% <1  OR X% +X1% >40  OR Y% +Y1% <6  OR Y% +Y1% >23  THEN T1% = 35:T2% = 17: GOSUB 620: GOTO 2030
  52. 2038 X% = X% +X1%:Y% = Y% +Y1%: IF (X% <31  AND X% >10)  AND (Y% <18  AND Y% >7)  THEN 2100
  53. 2040  GOTO 2030
  54. 2100  INVERSE : IF Y% = 17  THEN  NORMAL 
  55. 2103  VTAB Y%: HTAB X%: PRINT "#"
  56. 2105  VTAB Y% -Y1%: HTAB X% -X1%: PRINT " ": INVERSE : IF Y% <8  THEN  NORMAL : VTAB Y%: HTAB X%: PRINT "#": RETURN 
  57. 2106  IF   NOT (T1%(X% -11,Y% -8))  THEN  POP : GOTO 9000
  58. 2108 T1%(X% -11,Y% -8) = 0: GOSUB 600:X% = X% +X1%:Y% = Y% +Y1%: GOTO 2100
  59. 3000  VTAB Y%: HTAB X%: PRINT "#": GOSUB 531: HOME : GOSUB 12000:Y% = 23: HTAB X%: VTAB Y%: PRINT "#":ID% = ID% +20
  60. 3003  VTAB 2: HTAB 3: PRINT "CROSS THE PIT BY ANY MEANS AT YOUR": HTAB 3: PRINT "DISPOSAL. HOWEVER, DO NOT GO AROUND": HTAB 3: PRINT "NOR ALLOW YOURSELF TO FALL IN IT."
  61. 3004 CT% = 0
  62. 3010  NORMAL : GOSUB 600
  63. 3013  IF Y% +Y1% <9  THEN  FLASH : VTAB 8: HTAB (X% >20) *30 +1: PRINT  SPC( 10): GOSUB 620: NORMAL : GOTO 3010
  64. 3015  IF X% +X1% <1  OR X% +X1% >40  OR Y% +Y1% <6  OR Y% +Y1% >23  THEN T1% = 35:T2% = 17: GOSUB 620: GOTO 3010
  65. 3018 X% = X% +X1%:Y% = Y% +Y1%: IF (X% >10  AND X% <31)  AND (Y% >7  AND Y% <18)  THEN 3100
  66. 3020  IF  ABS(20.5 -X% +X1%) >13  AND   NOT ( INT( RND(1) *20 *(CT% +1)))  THEN CT% = CT% +1: IF CT% <5  THEN  GOSUB 800
  67. 3025  GOTO 3010
  68. 3100  INVERSE : GOSUB 600: IF X% +X1% <11  OR X% +X1% >30  OR Y% +Y1% >17  THEN T1% = 100:T2% = 17: GOSUB 610: GOTO 3100
  69. 3102  IF Y% = 17  THEN  NORMAL : VTAB 16: HTAB X% -X1%: PRINT " "
  70. 3103  IF Y% = 7  THEN ID% = ID% +50: RETURN 
  71. 3105  IF Y% <12  AND CT% <4  THEN H3% = 2:H4% = 4:L3% = 3:L4% = 38: NORMAL : GOSUB 395: VTAB 3: HTAB 3: PRINT "SORRY...YOU DIDN'T MAKE IT": GOSUB 531: POP : GOTO 9000
  72. 3108 Y% = Y% +Y1%:X% = X% +X1%: GOTO 3100
  73. 4000  GOSUB 12000: VTAB 2: HTAB 3: PRINT "CROSS THE PIT ONLY WHEN YOU SEE THE": HTAB 3: PRINT "TWO DOTS IN THE CENTER MOVE TOWARDS": HTAB 3: PRINT "EACH OTHER"
  74. 4003  INVERSE : VTAB 12: HTAB 15: PRINT ".";: HTAB 25: PRINT ".":ZT = 0:Y% = 23
  75. 4010  NORMAL : GOSUB 600
  76. 4013  IF Y% +Y1% <9  THEN  RETURN 
  77. 4015  IF X% +X1% <1  OR X% +X1% >40  OR Y% +Y1% <6  OR Y% +Y1% >23  THEN T1% = 35:T2% = 17: GOSUB 620: GOTO 4010
  78. 4018 X% = X% +X1%:Y% = Y% +Y1%: IF  ABS(20.5 -X% +X1%) < = 9.5  AND  ABS(12.5 -Y% +Y1%) < = 5.5  THEN ID% = ID% -20 + LOG(ZT +1): POP : GOTO 9000
  79. 4020  GOTO 4010
  80. 9000  POKE P2,2: FOR I = 10 TO 150  STEP 10: POKE P1,I: CALL P3: NEXT I
  81. 9001  PRINT : PRINT CH$
  82. 9002  CALL 520"PR.SQ1"
  83. 10000 H5% = 3:H6% = 9:L5% = 2:L6% = 39: GOSUB 397:H5% = 12:H6% = 17:L5% = 2:L6% = 19: GOSUB 397:L5% = 22:L6% = 39: GOSUB 397
  84. 10003  VTAB 5: HTAB 18: PRINT "ISLAND": HTAB 16: PRINT "RECREATION": HTAB 19: PRINT "HALL"
  85. 10005  VTAB 13: HTAB 10: PRINT "--";: HTAB 25: PRINT "A HEALTHY BODY": HTAB 4: PRINT "ESCAPE THROUGH";: HTAB 28: PRINT "MAKES"
  86. 10008  HTAB 3: PRINT "PHYSICAL FITNESS";: HTAB 24: PRINT "A TRANQUIL MIND": HTAB 10: PRINT "--";: HTAB 28: PRINT "+ + +"
  87. 10010  VTAB 20: PRINT : PRINT "WILL YOU PAY THE 5 CREDIT FEE?";: GET A$: PRINT A$: IF A$ = "Y"  THEN 10015
  88. 10012  POP : PRINT CH$
  89. 10013  CALL 520"PR.VILLAGE"
  90. 10015  POKE  -16368,0: VTAB 6: HTAB 18: PRINT "WRECK": HOME : RETURN 
  91. 12000  HOME :H5% = 1:H6% = 5:L5% = 2:L6% = 39: GOSUB 397: INVERSE :H3% = 8:H4% = 17:L3% = 11:L4% = 30: GOSUB 395: NORMAL : RETURN 
  92. 13000 A$ = "PIECE OF ROPE": RETURN 
  93. 13001 A$ = "BUNDLE OF STICKS": RETURN 
  94. 13002 A$ = "RUSTY, OLD WASH TUB": RETURN 
  95. 13004 A$ = "INFLATABLE RAFT": RETURN 
  96. 32000 T1% =  PEEK(222): CALL 1002: IF T1% = 5  OR T1% = 6  OR T1% = 7  OR T1% = 13  THEN  RESUME 
  97. 32003  NORMAL : PRINT : PRINT CH$
  98. 32005  IF T1% = 255  THEN  CALL 520"PR.SAVE"
  99. 32008  CALL 520"PR.ERR"