Das BASIC Programm hat einen LIST-Schutz. Man muss es erst patchen, bevor man den Quellcode sehen kann.
C E N T I P E D E IST EIN
GIFTIGER WURM AUS SEGMENTEN.
ER VERSUCHT, SICH ANZUSCHLEI-
CHEN UND DICH ZU FRESSEN.
DU KANNST DICH MIT EINEM GEWEHR
VERTEIDIGEN.
JE NACH DEM, WIE BEDROHT SICH
DER WURM FUEHLT, BRINGT ER
SEINE GIFTIGEN KUMPELS MIT
ODER SPUCKT VON WEITEM GIFT *.
DU DARFST DICH NICHT BEISSEN
ODER VON GIFT TREFFEN
LASSEN. DAZU MUSST DU ALLE
SEGMENTE ABSCHIESSEN, BEVOR DU
ERREICHT WIRST.
SCHIESS ABER EXAKT, DENN WENN
DU DEN WURM IN DER MITTE
TRIFFST, ZERFAELLT ER IN ZWEI
BISSIGE TEILE.
BEWEG DICH MIT <-- UND --> !
SCHIESS MIT DER LEERTASTE !
DAMIT ES INTERESSANTER WIRD,
KANNST DU MEHRERE LEBEN HABEN.
V I E L S P A S S ! !
PUNKTE WERDEN IN EINER LISTE
MIT DEINEM NAMEN GEMERKT.
10 DOKE 11103,12801:RUN
1!**** C E N T I P E D E *****
2!* ================= *
3!* *
4!*Z9001-VERS BEARBEITET NACH*
5!*JEFF MINTERS ZX81-VERS VON*
6!*H.KITTELMANN U.A.SCHROETER*
7!*(P) 15.04.1985 VERSION 1.0*
8!*fuerZ1013:Franz Beist 1988*
9!****************************
10 OS=11296:FOR I=12529 TO 12628:POKE I,0:NEXT I
15 GOSUB 6000:GOSUB 4000
20 B1=12635:BB=12631:BA=12629:SE=12634:VE=OS+159
55 WA=1:SP=MA:BL=5:SC=0:LE=7:BS=NB
200 GOSUB 1000:GOSUB 500:GOSUB 3000:GOTO 5000
500 PAPER 1:INK 5:CLS:PRINT AT(0,0);" "
510 DF=-5120
520 FOR X=0 TO 31
530 POKE DF+X*32,180
540 POKE DF+32*X+31,181
550 NEXT X
560 DF=-5120+31*32
570 FOR X=0 TO 31
580 POKE DF+X,199
590 NEXT X
600 DF=-5120+32*30+15
630 DOKE BA,DF
650 FOR X=1 TO BL
660 PRINT INK 7;AT(2*INT(RND(1)*14)+1,INT(RND(1)*28)+2);""
670 NEXT X
700 RETURN
1000 POKE 12529,255
1001 POKE 12527,0
1005 POKE OS+620,201
1010 POKE 12530,35
1020 DF=-5115
1050 DOKE 12531,DF
1070 FOR X=12533 TO 12545
1080 POKE X,254
1090 NEXT X
1092 POKE 12545,255
1096 POKE 12546,35
1100 IF WA<3 THEN EN=12547
1120 IF WA<3 THEN 2000
1126 LE=13
1130 DF=DF+5
1160 DOKE 12547,DF
1180 FOR X=12549 TO 12559
1190 POKE X,254
1200 NEXT X
1210 IF WA>=4 THEN POKE OS+620,58
1220 POKE 12559,255
1230 POKE 12560,43
1240 IF WA<6 THEN EN=12561
1250 IF WA<6 THEN 2000
1255 LE=18
1260 IF SP<2 THEN SP=2
1265 BL=BL+1
1270 DF=DF+5
1300 DOKE 12561,DF
1330 FOR X=12563 TO 12571
1340 POKE X,254
1350 NEXT X
1360 POKE 12571,255
1370 POKE 12572,35
1380 EN=12573
2000 POKE EN,0
2010 POKE EN+1,0
2020 POKE EN+2,0:POKE EN+3,0
2030 POKE B1,0
2040 POKE BB,0
2050 POKE VE,SP*3
2060 POKE SE,LE
2100 RETURN
3000 CALL OS
3100 RETURN
4000 DIM Q$(10)
4010 DIM N$(10)
4020 FOR X=1 TO 10
4030 N$(X)="FJB.SOFTWARE"
4040 Q$(X)="0000000"
4050 NEXT X
4055 X=RND(1/16000)
4060 RETURN
5000 IF PEEK(12527)=255 THEN 8000
5010 GOTO 7000
6000 CLS:PRINT AT(0,0);" "
6010 PRINT AT(0,8);"JETZT KOMMT ...."
6020 PRINT AT(3,6);" "
6021 PRINT AT(4,6);" "
6022 PRINT AT(5,6);" "
6023 PRINT AT(6,6);" "
6025 Y=10:INK 7
6030 FOR X=4 TO 19 STEP 4
6050 PRINT AT(Y,X);"":PRINT AT(Y+1,X);"":PRINT AT(Y+2,X);""
6060 NEXT X
6070 PRINT AT(Y,20);"":PRINT AT(Y+1,20);"":PRINT AT(Y+2,20);""
6080 PRINT AT(9,21);"":PRINT AT(8,20);"":PRINT AT(9,22);"":PRINT AT(8,23);""
6085 PRINT INK 6;AT(17,3);"DIE Z1013-VERSION DIESES"
6086 PRINT INK 6;AT(19,10);"ACTION-SPIELES"
6088 FOR Y=1 TO 150
6090 FOR X=1 TO 5
6100 PRINT AT(8,20);"":PRINT AT(8,23);""
6110 FOR D=1 TO 5
6115 TT$=INKEY$:IF TT$<>""THEN D=5:X=5:Y=150
6120 NEXT D:IF X=5 THEN 6140
6130 PRINT AT(8,20);"":PRINT AT(8,23);""
6135 FOR D=1 TO 5
6136 TT$=INKEY$:IF TT$<>""THEN D=5:X=5:Y=150
6137 NEXT D
6140 NEXT X
6150 IF J=0 THEN PRINT AT(30,8);"TASTE DRUECKEN":J=1:GOTO 6170
6160 PRINT AT(30,8);" ":J=0
6170 NEXT Y
6190 PAPER 1:INK 2:CLS:PRINT AT(0,0);" "
6200 PRINT " C E N T I P E D E IST EIN"
6201 PRINT "GIFTIGER WURM AUS SEGMENTEN. ":PRINT
6202 PRINT "ER VERSUCHT, SICH ANZUSCHLEI-"
6203 PRINT "CHEN UND DICH ZU FRESSEN. "
6210 PRINT "DU KANNST DICH MIT EINEM GE-"
6211 PRINT "WEHR VERTEIDIGEN.":PRINT:PRINT "JE NACH DEM, WIE BEDROHT SICH"
6212 PRINT "DER WURM FUEHLT, BRINGT ER "
6220 PRINT "SEINE GIFTIGEN KUMPELS MIT"
6221 PRINT "ODER SPUCKT VON WEITEM GIFT *."
6222 PRINT "DU DARFST DICH NICHT BEISSEN":PRINT "ODER VON GIFT TREFFEN"
6223 PRINT:PRINT "LASSEN. DAZU MUSST DU ALLE "
6224 PRINT "SEGMENTE ABSCHIESSEN, BEVOR DU":PRINT:PRINT "ERREICHT WIRST."
6230 PRINT:PRINT "SCHIESS ABER EXAKT, DENN WENN"
6231 PRINT "DU DEN WURM IN DER MITTE":PRINT "TRIFFST, ZERFAELLT ER IN ZWEI"
6232 PRINT "BISSIGE TEILE."
6240 PRINT:PRINT:PRINT:PRINT AT(31,05);"TASTE DRUECKEN":PRINT AT(29,0);" "
6250 TT$=INKEY$:IF TT$=""THEN 6250
6260 CLS
6270 PRINT "BEWEG DICH MIT <-- UND --> !"
6281 PRINT "SCHIESS MIT DER LEERTASTE !":PRINT
6282 PRINT:PRINT "DAMIT ES INTERESSANTER WIRD,"
6290 PRINT "KANNST DU MEHRERE LEBEN HABEN."
6291 PRINT:PRINT "V I E L S P A S S ! !"
6292 PRINT
6300 PRINT:PRINT:PRINT "PUNKTE WERDEN IN EINER LISTE"
6301 PRINT "MIT DEINEM NAMEN GEMERKT."
6310 PRINT AT(16,0);" ":PRINT AT(31,05);"TASTE DRUECKEN"
6320 TT$=INKEY$:IF TT$=""THEN 6320
6325 CLS:INK 4:A$=INKEY$
6330 PRINT "WAEHLE NUN DIE SPIELSTAERKE !":PRINT:PRINT:PRINT
6340 INK 2:PRINT "1) GESCHWINDIGKEIT?":PRINT "(20=LAHM 1=FLINK)"
6350 PRINT:INK 5:INPUT A$
6360 IF LEN(A$)<>1 AND LEN(A$)<>2 THEN 6350
6370 IF LEFT$(A$,1)<"1"OR LEFT$(A$,1)>"9"THEN 6350
6380 PRINT:INK 2:PRINT A$;" EINVERSTANDEN"
6390 MA=VAL(A$)
6400 PRINT:PRINT "2) WIEVIELE LEBEN ? (1-5)":PRINT:INK 5
6410 INPUT A$
6420 IF LEN(A$)<>1 THEN 6410
6430 IF A$<"1"OR A$>"5"THEN 6410
6440 NB=VAL(A$)
6450 PRINT:INK 2:PRINT A$;" EINVERSTANDEN"
6460 INK 4:PRINT:PRINT:PRINT " PASS GUT AUF...":PRINT AT(16,0);" "
6470 PAUSE 20:RETURN
7000 PB=DEEK(BA)
7010 POKE PB+32,183
7012 POKE PB+33,185
7014 POKE PB+31,184:PAUSE 3
7020 FOR X=PB TO PB-32*5 STEP-32:PAUSE 1
7022 POKE X,255
7024 NEXT X
7030 POKE X+31,186
7032 POKE X+33,187
7034 POKE X,183
7040 POKE PB+32,255
7042 POKE PB+31,197
7044 POKE PB+33,197
7045 PAUSE 3
7050 FOR X=PB TO PB-32*4 STEP-32
7052 POKE X,32:PAUSE 1
7054 NEXT X
7056 POKE X,184
7058 POKE X-1,179
7060 POKE X+1,178
7061 PAUSE 3
7062 POKE X,32
7064 POKE X-1,32
7066 POKE X+1,32
7068 POKE X-32,32
7070 PAUSE 10
7090 BS=BS-1
7095 IF BS=0 THEN PRINT AT(11,2);"JETZT HABE ICH DICH DOCH !!"
7100 IF BS=0 THEN 7140
7110 PRINT AT(11,2);"DU HAST NOCH",BS
7120 IF BS>1 THEN PRINT AT(11,17);" LEBEN."
7130 IF BS=1 THEN PRINT AT(11,17);" LEBEN."
7140 PAUSE 20
7500 GOTO 8000
8000 CLS:PRINT AT(0,0);" "
8006 IF BS>0 THEN PRINT AT(0,6);"** WERTUNG X",WA," **"
8010 SC=SC+WA*(LE-PEEK(SE))
8011 IF PEEK(12527)=255 THEN WA=WA+1:SP=SP-2
8016 IF SP<1 THEN SP=1
8017 IF WA=3 OR WA=6 THEN SP=MA
8030 S$=STR$(SC)+"0"
8035 IF BS=0 THEN 9000
8040 INK 2:PRINT AT(4,4);"DEINE PUNKTE BISHER:",S$
8055 V$=""
8060 FOR X=1 TO LEN(S$)
8070 V$=V$+CHR$(ASC(MID$(S$,X,1))+128)
8080 NEXT X
8085 FOR X=1 TO 6
8090 PRINT AT(4,24);" "
8100 PAUSE 4
8110 PRINT AT(4,24);S$
8120 PAUSE 4
8130 NEXT X
8136 INK 6:PRINT AT(8,2);"MENSCHLEIN, ICH KRIEGE DICH !"
8140 PRINT AT(10,2);"ICH KOMME GLEICH WIEDER...":INK 4
8150 IF WA=3 OR WA=6 THEN PRINT AT(13,0);"VERFLIXT - DU BIST ZU STARK"
8151 IF WA=3 OR WA=6 THEN PRINT AT(15,0);"JETZT KOMMT MEIN KUMPELWURM MIT"
8152 IF WA=3 OR WA=6 THEN PRINT AT(16,0);"UND HILFT MIR."
8160 INK 2:IF WA>=4 THEN PRINT AT(18,0);" ** WIR SPUCKEN G I F T **"
8170 INK 4:PRINT AT(20,0);"GESCHWINDIGKEIT IST JETZT",SP
8190 INK 2:FOR F=1 TO BS
8200 PRINT AT(22,4+4*F);""
8210 NEXT F
8400 PAUSE 80
8500 GOTO 200
9000 FOR D=1 TO 20
9010 NEXT D
9020 CLS:INK 4
9030 PRINT AT(11,6);"** SPIEL VORBEI **"
9040 S$=STR$(SC)+"0":INK 2
9050 PRINT AT(15,0);"DU HAST ",S$," PUNKTE ERREICHT"
9060 FOR X=1 TO 10
9070 IF VAL(Q$(X))>=VAL(S$)THEN NEXT X
9075 IF X>10 THEN A$=INKEY$:PAUSE 20:GOTO 9150
9076 IF X=10 THEN 9120
9080 FOR Y=10 TO X+1 STEP-1
9090 Q$(Y)=Q$(Y-1)
9100 N$(Y)=N$(Y-1)
9110 NEXT Y
9120 Q$(X)=S$
9130 PRINT AT(20,0);"GIB DEINEN NAMEN EIN ! <ENTER>"
9140 INPUT N$(X)
9150 CLS
9160 PRINT "PLATZ PUNKTE SPIELER"
9170 PRINT "===== ====== ======="
9180 PRINT
9190 FOR X=1 TO 10
9200 PRINT X;TAB(7);Q$(X);TAB(16);N$(X)
9210 NEXT X
9230 INK 3:PRINT:PRINT "DRUECKE P FUER WEITERES SPIEL":PRINT:PRINT
9231 PRINT "ODER BELIEBIGE TASTE FUER NEUE"
9233 PRINT "SPIELSTAERKE."
9240 A$=INKEY$
9250 IF A$=""THEN 9240
9260 BORDER 1:IF A$="P"THEN 20
9270 GOSUB 6190:GOTO 20