ZX81 Listing for mazegen.p


ZX81 program listing for ***MAZEGEN**SLR/2024**

***MAZEGEN**SLR/2024** (mazegen.p)

MazeGen is a simple square maze generator for the zx81. You can build mazes from 2x2 to 10x10 in size.


SYSTEM VARIABLES

PROG  : 16509
D-FILE: 17626
VARS  : 18419
E-LINE: 18420
STKBOT: 18425
STKEND: 18425


LEGEND

9999 means line number
PRINT means treat as KEYWORD P


PROGRAM LISTING

   1 REM /***MAZEGEN**SLR/2024**
30413 YõM??LN MRNDLN ²INKEY$LN J?
LN ZINKEY$/PAUSE TAN LN EúñùòLN
PRINT !5:INKEY$LN )?ñõôLN PRINT
!AñU??LN ?INKEY$5?òLN 9?LN ?
INKEY$RETURN 6C=RETURN ?C(
RETURN 7C.RETURN ?C*RETURN GCOS
RETURN
51224 ??XRETURN ñASN INT RNDM???
AT RNDU??WRETURN "ASN INT RNDM??
?AT RND* MAZEGEN *
30264 E:
30242 HRINK, 7-GROW, G-GENERATE
COPY 5?òLN 9?LN ?INKEY$RCPOKE
TAN GOSUB ?9RND£CRAND $LN X÷A0
LN ?INKEY$APLOT LN ?INKEY$ö A
COPY I.G´SUNPLOT =PRINT ?(ù
RETURN 04õô?BNOT LET TAN YñM5?
M4?LN C?5??J?¶(CLEAR ?A WM????5?
?)W?Q 7FOR Q 7FOR "?L4NEXT U???
LN O??PISTR$ Yò5??LN £?SGN LN O?
?Yñ?GOSUB ???M??M??5W?LN £?LN C?
JM??GOSUB ???õASN RAND INKEY$5W?
LN =?RTAB RAND INKEY$5??ACS EXP
GOSUB ???U??TASN =PI£5W?LN =?R
TAB =PI5??ACS CHR$ GOSUB ???U??S
ASN JPIô5W?LN =?RTAB JPI5??ACS
THEN GOSUB ???$ASN ?PI5W?LN =?R
TAB ?PI5??ACS NEW U??RTAB ?PI5??
PU???U???VAL 5W?LN =?5??AT YCö$4
LOAD (DIM TAN GOSUB ????<=INKEY$
LN O?5??RETURN ñ4/ACS ?C=
GOSUB ???õGOSUB ???5??YòLN £??
LIST PIRETURN ò4;ACS ?C+GOSUB ??
GOSUB ???$5??YñLN £??LIST PI
RETURN ó4;ACS ?C+GOSUB ???ô
GOSUB ???õ5??YòLN £??LIST PI
RETURN ô4/ACS ?C=GOSUB ???$
GOSUB ???5??YñLN £??LIST PI/´U??
WM??M??GOSUB ???5W?LN £?5??YTAB
<=INKEY$TAN PRINT LN ;?LET ¶?
TAN LN ;?;õCOS U???;(CLEAR TAN 5
5?P""Y=?ñúôLN PRINT !56?LN )?54?
O?ö ?5F?ù                       
                                
                                
                                
                                
                                
                       BUILDING
COPY ÷´±²LN Eú5W?U???Y.NOT òY 
NOT NOT (LIST Y.NOT Y
55073 U???VAL YINOT U???FAST
NOT NOT ACS ?YICòY NOT 7(LIST
LPRINT Y
55098 ?Y.NOT ACS ?Y-CòY NOT NOT 7
(LIST Y.NOT Y
55233 TAN /SAVE OR LN ??Kò OR
TAN INT COPY   67?LN ;?E7?F?P4
PAUSE TAN 5  GOSUB ?µ?GOSUB
NEW ??6P?
   2 RAND USR VAL "16514"