ZX81 Programs


Read about, play, run, or list games, animations, and more. These are my programs from the ’80s to today.

ZX81 Program Listing

starproberedo (starproberedo.p)


SYSTEM VARIABLES

PROG  : 16509
D-FILE: 21473
VARS  : 22266
E-LINE: 22267
STKBOT: 22267
STKEND: 22267


LEGEND

9999 means line number
PRINT means treat as KEYWORD P


PROGRAM LISTING

  10 REM *STAR PROBE**SLR/84-20*
  20 GOSUB 920
  30 PRINT "  YOU ARE IN THE FIR
ST SPIRAL   ARM OF THE GALAXY EX
PLORING AN  AREA WITH A HIGH HYD
ROGEN GAS   CONTENT. IT IS UNLIK
E THE NORMALAMOUNT SCATTERED THR
OUGHOUT OUR GALAXY. YOUR SCANNER
 PICKS UP A SLIGHT HUM, AS IF A 
WORP DRIVE  WAS IN OPERATION. YE
T, THAT IS  UNLIKELY SINCE WORP 
DRIVES ARE  ILLEGAL, DEEMED UNSA
FE AND WERE TAKEN OFF THE MARKET
."
  40 GOSUB 900
  50 PRINT "  OH NO. AN ENERGY B
URST HITS   YOUR CIRCUITS AND ER
ASES YOUR   MEMORY BANKS. ALTHOU
GH THE STAR PROBE IS STILL WORKI
NG, YOU DO  NOT REMEMBER HOW TO 
OPERATE.    WHAT WILL YOU DO?"
  60 GOSUB 1050
  70 IF A=1 THEN GOTO 200
  80 IF A=2 THEN PRINT "AN AREA 
SCAN SHOWS HYDROGEN GAS AND THE 
VOID OF SPACE."
  90 IF A=3 THEN PRINT "YOU TURN
 ON THE SHIELDS. BUT,   REALIZIN
G YOU DO NOT NEED THEM, YOU SHUT
 THEM DOWN TO CONSERVE  POWER."
 100 IF A=4 THEN PRINT "THE LASE
RS FIRED, BUT THERE WAS NOTHING 
TO SHOOT AT."
 110 IF A=5 THEN PRINT "YOU ABOR
TED YOUR MISSION, NEVER KNOWING 
WHAT THE STRANGE HUM    WAS."
 120 IF A=5 THEN GOTO 1000
 140 IF A<1 OR A>5 THEN PRINT "Y
OU HEAR A BUNCH OF WHIRLING ANDC
LICKING NOISES, BUT NOTHING    S
EEMED TO HAPPEN."
 150 GOSUB 900
 160 PRINT "  WHAT YOU DID MAKES
 NO SENSE TOYOU SINCE NOTHING HA
PPENED TO   HELP YOU. WHAT DO YO
U DO NOW?"
 170 GOTO 60
 200 PRINT "YOU ENGAGED THE STAR
 DRIVE AND  ARE MOVING THROUGH A
N UNFAMILIARAREA. SUDDENLY PROBE
 ROCKS AND  YOU FEEL YOUR METAL 
CASING BEGINTO BREAK OFF."
 205 LET BH=0
 206 LET SH=0
 210 FOR X=1 TO 5
 220 GOSUB 900
 230 PRINT "  HOT HYDROGEN ATOMS
 FLY PAST   YOU AS YOU STRUGGLE 
TO HOLD     PROBE STEADY. WHAT D
O YOU DO    NOW?"
 235 GOSUB 1050
 240 IF A=1 THEN PRINT "YOU ARE 
ALREADY AT FULL STAR    DRIVE. Y
ET, YOUR ATTEMPT IS     HELPING 
TO STABALIZE YOU."
 250 IF A=2 AND BH=0 THEN PRINT
"AN AREA SCAN SHOWS THAT YOU ARE
 NEAR A BLACK HOLE. IT ALSO     
 POINTS OUT A STRANGE ZERO ZONE.
"
 252 IF A=2 AND BH=1 THEN PRINT
"AN ANOTHER AREA SCAN CONTINUES 
 TO SHOW THE BLACK HOLE PULLING 
 AT YOU. MAYBE IF YOU CAN REACH 
 THE ZERO ZONE YOU COULD ESCAPE.
"
 255 IF A=2 THEN LET BH=1
 260 IF A=3 AND SH=0 THEN PRINT
"YOU HAVE STOPPED THE PAIN THAT 
 RUNS THROUGH YOU HULL BY RAIS- 
 ING YOUR SHIELDS."
 262 IF A=3 AND SH=1 THEN PRINT
"YOUR SHIELDS ARE STILL UP, BUT 
 THEY WILL NOT LAST FOREVER."
 265 IF A=3 THEN LET SH=1
 270 IF A=4 THEN PRINT "YOU FIRE
 YOUR LASERS. YET, IN   DOING SO
, YOU CAUSED A MATTER   IMBALANC
E IN THE STAR DRIVE. THEDRIVE SH
UTS DOWN AND YOU ARE    ";("PULL
ED BACKWARDS BY SOMETHING." AND
BH=0);("DRAGGED DOWN TOWARDS THE
 BLACK  HOLE." AND BH=1)
 280 IF A=4 THEN GOTO 610
 290 IF A=5 THEN GOTO 350
 300 IF A<1 OR A>5 THEN PRINT "A
FTER A FEW CREAKS AND GROANS   F
ADE AWAY, NOTHING ELSE OCCURS."
 310 NEXT X
 320 GOTO 610
 340 GOSUB 900
 350 PRINT "BY LUCK, YOU HAVE EN
TERED A ZEROGRAVITY ZONE. THE ST
RESS ON YOURHULL HAS STOPPED. YE
T, YOU ARE  STILL DRIFTING."
 360 GOSUB 1050
 380 IF A=1 THEN GOTO 500
 390 IF A=2 THEN PRINT "AN AREA 
SCAN SHOWS YOU ARE IN A ZERO ZON
E OF UNKNOWN ORIGIN.    ALSO, YO
U ARE NEAR THE EDGE OF  IT."
 400 IF A=3 THEN PRINT "ALTHOUGH
 YOU DO NOT NEED THEM INTHE ZERO
 ZONE, YOUR SHIELDS ARE ";("ALRE
ADY " AND SH=1);"UP."
 410 IF A=4 THEN PRINT "YOU FIRE
 YOUR LASER AND THE     REACTION
 MOVES YOU OUT OF THE   ZERO ZON
E."
 420 IF A=5 THEN PRINT "YOU ARE 
STILL TRYING TO BLITZ   OUT, YET
 IT DOES NOT WORK. YOU  LEFT THE
 ZERO ZONE."
 430 IF A<1 OR A>5 THEN PRINT "Y
OU HEAR A GRINDING SOUND, BUT  N
OTHING ELSE HAPPENS."
 440 GOSUB 900
 450 IF A=4 OR A=5 THEN GOTO 600
 470 IF BH=0 THEN PRINT "  YOU S
TALLED TOO LONG. DRIFTINGOUT OF 
THE ZERO ZONE, YOU FIND  YOURSEL
F FALLING WITH HYDROGEN  INTO A 
SINGULARITY. OVER TIME   YOU ARE
 CRUSHED INTO NOTHING.   STAR PR
OBE IS NO MORE."
 480 IF BH=1 THEN PRINT "  YOU S
TALLED TOO LONG AND      DRIFTED
 OUT OF THE NULL ZONE ANDINTO TH
E BLACK HOLE. YOU ARE    CRUSHED
 BY THE FORCE OF IT, AND STAR PR
OBE IS NO MORE."
 490 GOTO 1000
 500 IF BH=0 THEN PRINT "  ENGAG
ING THE STAR DRIVE, YOU  ARE ABL
E TO ACCELERATE OUT OF   THE ZER
O ZONE AND ESCAPE WHAT-  EVER WA
S PULLING YOU. TO BE     SAFE, Y
OU NOTE THE AREA OFF     LIMITS.
"
 510 IF BH=1 THEN PRINT "  YOU E
NGAGED THE STAR DRIVE ANDGAINED 
ENOUGH MOMENTUM TO BREAK FREE OF
 THE GRAVITATIONAL PULL  OF THE 
BLACK HOLE."
 520 GOTO 1000
 600 PRINT "  YOUR FOOLISH ACTS 
CAUSED YOU  TO LEAVE THE ZERO ZO
NE TOO FAST.UNABLE TO REACT AS Y
OU SLIDE    INTO A HYDROGEN STRE
AM, YOUR    SYSTEMS FAIL."
 610 PRINT
 620 IF BH=0 THEN PRINT "UNABLE 
TO ESCAPE THE PULL, YOU  ARE DRA
GGED WITH THE SUPER HOT  HYDROGE
N GAS. YOUR WEAK SHIELDS ARE UNA
BLE TO HOLD UP AND THE   GASES D
ISINTEGRATE YOUR HULL.   STAR PR
OBE IS NO MORE."
 630 IF BH=1 THEN PRINT "UNABLE 
TO ESCAPE THE PULL OF THEBLACK H
OLE, YOU ARE SUCKED IN.  YOUR WE
AK SHIELDS SOON FAIL AND YOU ARE
 CRUSHED. STAR PROBE IS  NO MORE
."
 640 GOTO 1000
 900 PRINT AT 21,0;" PRESS A KEY
 TO CONTINUE...     "
 910 PAUSE 4E4
 920 CLS
 930 PRINT "* S T A R  P R O B E
 * R E D O *"
 940 PRINT
 950 RETURN
1000 PRINT ,,,"THE END."
1020 PRINT AT 21,0;"* GAME OVER 
* PRESS A KEY TO GO*"
1030 PAUSE 4E4
1040 RUN
1050 PRINT
1060 LET A$=INKEY$
1070 IF A$="" THEN GOTO 1060
1080 LET A=(CODE INKEY$)-28
1090 RETURN
1100 SAVE "STARPROBEREDO"
1110 RUN