ZX81 Listing for pitfallsim.p


ZX81 program listing for *PITFALL SIM**SLR/23*

*PITFALL SIM**SLR/23* (pitfallsim.p)

A simulator for Activision's PITFALL! for the Atari 2600. I converted the LFSR from 6502 code that David Crain wrote to generate the maps.


SYSTEM VARIABLES

PROG  : 16509
D-FILE: 17835
VARS  : 18628
E-LINE: 18629
STKBOT: 18634
STKEND: 18634


LEGEND

9999 means line number
PRINT means treat as KEYWORD P


PROGRAM LISTING

   1 REM /;*PITFALL SIM**SLR/23*
30404 F?LN LN (CALL LN (INKEY$
LN ;INKEY$LN ORNDLN AT RND/
PRINT GOSUB UNDRAW 9RND£CRAND $
LN X÷INKEY$RETURN ?ASN ?INKEY$
RETURN ?ASN JINKEY$RETURN ?ASN ó
INKEY$RETURN 5ASN JINKEY$RETURN
6ASN ?INKEY$RETURN 7ASN DATA
INKEY$RETURN 8ASN óINKEY$RETURN
AASN JINKEY$RETURN DASN óINKEY$
RETURN RASN (INKEY$RETURN SASN ?
INKEY$RETURN WASN DATA INKEY$
TAN 50RNDACS ERROR C"ACS AUTO 4ó
ACS
49158 òöñACS :5.RNDIACS BACS BI
ACS BACS -(INPUT TAN 50RNDACS
ERROR C"ACS AUTO CóACS
49158 òöñACS EXP 5.RNDIACS BACS B
ACS *IACS ZACS 2(GOTO TAN 50RND
ACS ERROR COS ACS
51403 õACS COS ACS TAN 50RNDACS
ERROR ""ACS
51403 AUTO CöACS .RNDQCODE 7Q 
TAN LN BREAK CALL LN DINKEY$LN
SIN INKEY$5END PROC òLN RUN PI
TAN ñ£ùYP50RNDACS ERROR CôYPö"
ACS AUTO Cò:<PRINT LN CHR$ PI
LET ?( ñ)?LN PRINT !U.RNDWHILE
LN HPINOT ñ£÷LN CHR$ PI?5
STEP CALL ÷÷NEW óCHAR JLEN ù(
UNPLOT DEF PROC ö ùLN GOSUB PIñ$
ùLN CHR$ PI????NEW ÷READ 50RND
ACS QRETURN  CôRETURN ñ4GACS
PLOT ACS YACS ?4úñ$"LN CHR$ PI
ACS RETURN ñ>"LN CHR$ PINOT
ñ?"LN CHR$ PIYHNOT ñ$úLN CHR$ PI
5KCALL CALL JLEN ö(UNPLOT
DEF PROC ö ùLN GOSUB PI?RETURN õ
4)Y NOT ?NEW ó5GCALL ö DEF PROC
ù÷LN CHR$ PI?RETURN ô4=ACS DRAW
Y CòY/NOT READ ñ:!LN CHR$ PI??( 
RETURN òC!RETURN óCôRETURN ö4ô
Y/NOT READ ñ$!LN CHR$ PI?5?CALL
NEW ÷CHAR JLEN ÷(UNPLOT
DEF PROC ö ùLN GOSUB PI?B4SIN
TAN : öñA0LN ZPIAPLOT LN ZPIö A
COPY I.G´SUNPLOT =PRINT ?(ù
RETURN 04õô?BNOT LET TAN FAST
STR$ VAL RND7)5 ;(CLEAR ö ù6:
RNDAT SGN LPRINT TAN /SAVE   6
PRINT PILN öCALL EPRINT PIF?P4
PAUSE TAN OR LN ERROR ?Kò OR
TAN INT COPY ñúòLN PRINT !5ô
ERR MSGS LN GOSUB PIñ ô5¸
ERR MSGS LN ERR MSGS CALL ñ-ô5ó
DPOKE LN ERR MSGS CALL ñ£?LN
PRINT !5²ERR MSGS LN GOSUB PIñ£)
5?DPOKE LN ERR MSGS CALL TAN
RESTORE 7UNTIL 7 MUSER CALL LN
CHR$ PIFAST LN GOSUB PILPRINT )
RESEQ CALL ;ô?RETURN :4INPUT
TAN ñ"ô5)ERR MSGS LN ERR MSGS
CALL TAN      0COPY     00COPY  
  0 0COPY 0  0 0COPY      OCOPY
O  O OCOPY      FCOPY      S
COPY VINE MSGR¸¸¹¸¸COPY ¹¸¹¸¹
COPY -(=)-COPY -<=>-COPY -CCC-
COPY  (=)COPY COPY  (=) COPY  <=
COPY Y T  T YCOPY Y Y Y Y 
COPY T T T T COPY Y T T Y COPY P
ITFALL/ SIMCOPY " ú          
COPY  úùúùúùúù COPY  úùúùúùúù 
COPY           COPY           
COPY           COPY  ¸¸¸¸¸¸¸¸ 
COPY           COPY  ºººººººº 
COPY           COPY ROOM COPY ú 
£/ VINECOPY COPY COPY COPY O LOG
COPY COPY COPY COPY COPY 0 ROLLI
NGCOPY C CROCSCOPY COPY COPY S S
NAKECOPY COPY COPY F FIRECOPY
COPY COPY COPY ¹ HOLECOPY COPY
COPY COPY H LADDERCOPY COPY µ RI
GHTCOPY COPY COPY   WALLCOPY
COPY COPY COPY õ LEFTCOPY COPY
COPY COPY   WALLCOPY COPY COPY
COPY " ú-()- TARCOPY COPY COPY  
PITCOPY COPY COPY COPY COPY
COPY COPY -<>- QUICKCOPY  SAND
COPY COPY COPY COPY COPY COPY  (
) SHIFT-COPY  ING TARCOPY COPY
COPY  PITCOPY COPY COPY COPY
COPY COPY COPY  <> SHIFT-COPY  I
NG QUICKCOPY  SANDCOPY COPY
COPY COPY COPY COPY ù ôM MONEY
COPY COPY G GOLDCOPY COPY COPY S
 SILVERCOPY R RINGCOPY COPY
COPY
   2 RAND USR VAL "16514"