A modified version of my Mandelbrot Set programming using the three color (white/gray/black) chunky gfx mode.
PROG : 16509
D-FILE: 18020
VARS : 18813
E-LINE: 18814
STKBOT: 18819
STKEND: 18819
9999 means line number
PRINT means treat as KEYWORD P
1 REM /M**MBS CGFX*SLR/2022**
30208 LN
F?LN EúJ5 M.RND60RNDU.RNDE0RND:
CALL ) RNDLN µCALL DEF PROC
LOOP DATA YZ5 LN 5DPOKE M2RND63
RNDU.RNDE0RND:Z) LN ?ERR MSGS :
ERR MSGS ) ?LN BREAK ERR MSGS M5
RND66RNDYERR MSGS 5 SAVE M8RND69
RNDöRNDVAL ACS Cõ:JYòMXPILN YPIU
5RNDDEF PROC GOSUB OFF6RNDU8RNDE
9RNDLN µCALL PRINT U2RND
DEF PROC LET GOSUB OFF3RNDLN ?
ERR MSGS MERND6FRNDJ5 MBRND6C
RNDAT :/VAL LN 6CALL UBRND
DEF PROC GOSUB OFFCRNDYCALL 5 ?
LN BREAK ERR MSGS PRINT U2RND
DEF PROC LET GOSUB OFF3RNDLN ?
ERR MSGS MHRND6IRNDJ5 MKRND6L
RNDMNRND6ORNDö?VAL UKRNDELRND
DEF PROC GOSUB OFFLRNDLN ?
ERR MSGS PRINT FAST UNRNDEORND
DEF PROC GOSUB OFFORNDLN ?
ERR MSGS DEF PROC LOOP DATA
LPRINT LET LN BREAK ERR MSGS
DEF PROC LOOP DATA UERNDEFRNDLN
µCALL FAST PRINT UNRNDDEF PROC
GOSUB OFFORNDUKRNDELRNDLN ?
ERR MSGS :RND) LN ?ERR MSGS
DEF PROC LOOP DATA UHRNDEIRNDLN
µCALL MNRND6ORNDLET LPRINT MKRND
6LRNDDEF PROC GOSUB OFFLRNDLN ?
ERR MSGS PRINT FAST UNRNDEORND
DEF PROC GOSUB OFFORNDLN ?
ERR MSGS DEF PROC LOOP DATA
LPRINT LET LN µCALL :INKEY$)
LN DEF PROC CALL AT AND JPIASN
JPIY?ACS JSSôYñ/òYòMXPI/!õTAB ¶
INKEY$JMXPIAT VAL ACS CõY/)
DEF PROC LN YPIAT VAL ACS CõY-±
DEF PROC LN YPIUBRNDECRND:Z)
LN µCALL MBRND6CRNDAT $TAB EDIT
INKEY$VAL U8RNDE9RND:RND) LN
BREAK ERR MSGS M8RND69RNDAT VAL
ACS Cõ:JY MXPILN YPIAT õõTAB :
INKEY$5;;LN ICALL U.RNDE0RND:
CALL ) (LN µCALL M.RND60RND: ) ?
LN DEF PROC CALL AND LEN RNDLN
XCALL ?WRND VAL LN CODE PIAT
TAN ?ACS ?""CHR$ 4LIST ?ACS ?""
CHR$ KLIST E£RND7?ACS JRC÷)5 ;X4
UNPLOT - WHEN ;úYCóF(IF UXPI
WHILE ??ABS ôCALL Y£4²?£CALL Yó4
ACS 6ACS 6²?A ñ*CALL ù³COPY ú!º
COPY ó¹ OR LN ERROR ?Kò OR TAN
INT COPY 6GCALL LN 6CALL EG
CALL F?P4PAUSE TAN E£RND7J:/ö4?7
(UNPLOT 7$4PLOT TAN CHAR NEW ?W
IF ?CALL ?PRINT LN BREAK
ERR MSGS AT INPUT COS INPUT
COS DEF PROC ACS SNEW ?LEN :(KòJ
TAN ?PLOT ?·TAN ?PZ""?NEW ?W?
PAUSE ?CALL ?N""?STAN CHAR NEW ?
4ó?FOR TAN WIF INKEY$ERR MSGS ?
NEW ?ASN ZERR MSGS WIF ºCALL ?D
IF <=CALL LN GERR MSGS C.SQR
VAL LN EXIT ERR MSGS ACS 4GOSUB
RESEQ SGN ?SQR NEW ?RETURN WACS
1SQR 7TAN ?NEW ?RETURN ACS 0ACS
1SQR G""8""WTAN PLOT ?5 TAN LN
GERR MSGS CNSQR VAL LN EXIT
ERR MSGS )DEF PROC Y /CHAR
GOSUB DELETE SGN ?SQR ?PKLCOS ?·
PRINT ?XC>ACS 5ACS (GOSUB
CLR STACK ABS RAND CALL ACS 5ñ
GOSUB DRAW ¸·WHILE LET ?3TAN ?
GOSUB DELETE 4óNEW TAN ñ K
CHR$ INPUT WHILE J+?3=LINE ?/
ASN DACS ñ*)COS KöGOSUB
ERR MSGS ACS ùINKEY$FOR R3
RETURN >**?TAN ?P4IF LCRUN W·4
NEXT ?N?4òSCOS FTAN ñ RACS ,
ACS .ACS /ACS ;X4PRINT TAN CHAR
?INPUT DEF PROC ??µCALL INPUT
?µCALL CHAR ?NEW CCHAR NEW ?C
PROTECT WIF PEEK ERR MSGS ?NEW ?
DEF PROC COS WIF ºCALL ?NEW ?±
CHR$ ZKòJTAN RETURN ?S÷?PLOT ?5
TAN CNEW ?CPRINT ERR MSGS EDIT
FAST STR$ LN DIM ERR MSGS JACS 8
FOR AT GOSUB DRAW EXP AT ùEXP
3AT ?COS ZACS 0ACS 1WW·CABS 3X
TAN ?NEW ?COS WIF >=ERR MSGS J
TAN ?P?""?NEW ?4ôXLINE ?TAN WIF
NEW ERR MSGS ?TAN ?FOR TAN ?-
NOSTALGIC PUSH ·SN·SQ·ST·SW·SZ·S
PI·SDPOKE ·S ?NEW RETURN ·SEDIT
·S·SEXIT ·SINDENT ·SDATA ·SUSER
·SBREAK ACS .***DUP TAN D?KòùºD?
KòùºD?KòùºD?KòùºD?KòùºD?KòùºD?Kò
ùºWHILE ?NEW RETURN D?KóùEXP D?
KóùEXP D?KóùEXP D?KóùEXP D?Kó
ùEXP D?KóùEXP D?KóùEXP D?Sú
ACS .READ SQR ùSQR 0""=TAN =ACS
.READ SQR ùSQR 0TAN DEF PROC
FOR YZ5 CHAR D·?*?CHAR NEW ?
ASN OERROR WIF DPOKE ERROR ?NEW
?4ôXLINE ?TAN WIF ZERROR ACS T?
NEW ?LEN Z)KòJTAN RETURN ?S÷?
PLOT ?5 TAN R: GOSUB DELETE K£X
COS ;DACS )£GOSUB DELETE Kñ$VAL
PRINT LN CLS DPOKE SGN AT º
PAUSE PLOT DPOKE XLINE ?CNEW ?C
TAN J<READ Y ,WHILE 3XCHAR ?LN 3
ERROR ACS )VAL LN 3ERROR ACS )D?
;¸LPRINT BREAK PUSH ñ ?GOSUB
DRAW TAN LN 6ERROR LN 9ERROR LN
CERROR ACS )D?COS ;¸**GOSUB
DELETE /TAN ?NEW ?CUWIF ZERROR J
TAN ?NCOS ?FOR TAN ?P?""?NEW ?C9
WIF NEXT DPOKE ?TAN
2 RAND USR VAL "16514"