ZX81 Programs


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

ZX81 Program Listing

**BUGERS**SLR/1985***** (bugers.p)


SYSTEM VARIABLES

PROG  : 16509
D-FILE: 19343
VARS  : 20136
E-LINE: 20137
STKBOT: 20137
STKEND: 20137


LEGEND

A means INVERSE A
A means GRAPHICS A
PRINT means treat as KEYWORD P


PROGRAM LISTING

  10 REM **BUGERS**SLR/1985*****
  20 FOR A=0 TO 9
  30 PRINT AT A,0;"             
                   HHHHHHHHHHHHH
HHHHHHHHHHHHHHHHHHH"
  40 NEXT A
  50 LET S=0
  60 PRINT AT 8,15;"12";AT 9,15;
"YT"
  70 LET G=INT (RND*3+1)
  80 GOSUB 1000*G
  90 GOTO 60
 100 PRINT AT 8,15;"YT";AT 9,15;
"TY"
 110 PRINT AT 12,10;"SCORE:";S
 120 PRINT ,,,,"CRASH,YOU DIED..
."
 130 PRINT ,,,,"  **PRES ANY KEY
 TO CONTINUE**  "
 140 PAUSE 4E4
 150 CLS
 160 RUN
1000 PRINT AT 8,0;"H";AT 9,0;"H"
1010 PRINT AT 8,0;" ";AT 9,0;" "
1020 PRINT AT 9,0;"  "
1030 PRINT AT 9,0;"    "
1040 PRINT AT 9,0;"     ";AT 8,5
;" "
1050 PRINT AT 9,0;"       ";AT 8
,5;"   "
1060 PRINT AT 9,2;"       ";AT 8
,7;"   "
1070 IF INKEY$<>"" THEN GOTO 100
1080 PRINT AT 9,4;"        ";AT
8,8;"    "
1090 IF INKEY$<>"" THEN GOTO 100
1100 PRINT AT 9,6;"       ";AT 8
,10;"  "
1110 IF INKEY$<>"Z" THEN GOTO 10
0
1120 PRINT AT 9,6;"         ";
AT 8,10;"    "
1130 IF INKEY$<>"Z" THEN GOTO 10
0
1140 PRINT AT 9,9;"      ";AT 8,
12;"  "
1150 LET S=S+10
1160 FOR G=1 TO 40
1170 NEXT G
1180 RETURN
2000 PRINT AT 0,15;"HH"
2010 PRINT AT 0,15;"12"
2020 PRINT AT 1,15;"12";AT 0,15;
"58"
2030 PRINT AT 2,15;"12";AT 1,15;
"58"
2040 PRINT AT 3,15;"12";AT 2,15;
"58"
2050 PRINT AT 4,15;"12";AT 3,15;
"58"
2060 IF INKEY$<>"" THEN GOTO 100
2070 PRINT AT 5,15;"12";AT 4,15;
"58"
2080 IF INKEY$<>"" THEN GOTO 100
2090 PRINT AT 6,15;"12";AT 5,15;
"58"
2100 IF INKEY$<>"M" THEN GOTO 10
0
2110 PRINT AT 7,15;"12";AT 6,15;
"58"
2120 IF INKEY$<>"M" THEN GOTO 10
0
2130 FOR A=0 TO 7
2140 PRINT AT A,15;"  "
2150 NEXT A
2160 LET S=S+10
2170 FOR G=1 TO 40
2180 NEXT G
2190 RETURN
3000 PRINT AT 8,31;"H";AT 9,31;"
H"
3010 PRINT AT 8,31;"4";AT 9,31;"
4"
3020 PRINT AT 8,30;"17";AT 9,30;
"16"
3030 PRINT AT 8,29;"47";AT 9,29;
"46"
3040 PRINT AT 8,28;"17";AT 9,28;
"16"
3050 PRINT AT 8,27;"47";AT 9,27;
"46"
3060 PRINT AT 8,26;"17";AT 9,26;
"16"
3070 PRINT AT 8,25;"47";AT 9,25;
"46"
3080 PRINT AT 8,24;"17";AT 9,24;
"16"
3090 PRINT AT 8,23;"47";AT 9,23;
"46"
3100 PRINT AT 8,22;"17";AT 9,22;
"16"
3110 PRINT AT 8,21;"47";AT 9,21;
"46"
3120 PRINT AT 8,20;"17";AT 9,20;
"16"
3130 IF INKEY$<>"" THEN GOTO 100
3140 PRINT AT 8,19;"47";AT 9,19;
"46"
3150 IF INKEY$<>"" THEN GOTO 100
3160 PRINT AT 8,18;"17";AT 9,18;
"16";AT 1,15;"HH"
3170 IF INKEY$<>"X" THEN GOTO 10
0
3180 PRINT AT 8,17;"47";AT 9,17;
"46"
3190 IF INKEY$<>"X" THEN GOTO 10
0
3200 PRINT AT 8,17;"            
   ";AT 9,17;"               ";
AT 10,15;"HH"
3210 LET S=S+10
3220 FOR G=1 TO 40
3230 NEXT G
3240 RETURN
3500 SAVE "BUGERS"
3510 RUN