auto1_sss.tap
auto1_sss.z80
Zeichensatz UTF-8+Z1013()+CTRL()-ohne Umlaute(äöüß)

    1 POKE 22,0:POKE 862,1:OUT 136,0
    2 WINDOW:BORDER 7:PAPER 4:INK 5:CLS
    5 PRINT AT(0,24);">> AUTORENNEN <<":PRINT AT(1,23);STRING$(18,"")
   10 S$="   ":GOSUB 250:WINDOW 2,23,23,39
   15 PRINT "Das Auto kann wiefolgt gesteuert  werden:":PRINT:PRINT "  : recht
   20 PRINT "  : links":PRINT " G  : Gas":PRINT " B  : Bremse":PRINT
   25 PRINT "Die Strasse kommtdem Fahrzeug ent-gegen.":PRINT
   30 PRINT "Die Fahrt endet  nach 2 Minuten.":GOSUB 260:CLS
   35 INPUT "Fahrer:";F$:PRINT:PRINT "Zeit  : 0:0":PRINT:M=0
   36 PRINT ""STRING$(15,"")"";
   40 PRINT "0 30 60 90 120 ";:PRINT "";
   45 PRINT ""SPC(14)"";:PRINT ""STRING$(15,"")"";
   50 PRINT ""SPC(5)"000,0 km  ";:PRINT ""STRING$(15,"")"";
   55 PRINT AT(21,23);"SIND SIE BEREIT ?":PRINT AT(23,23);"wenn ja":GOSUB 260
   57 PRINT AT(21,23);"                 ":PRINT AT(23,23);"                 "
   60 WINDOW 0,23,0,21:POKE 30,0:POKE 31,0:GOSUB 250
   65 N=INT(RND(PEEK(31))*10)-5:M=M-1
   66 PRINT AT(4,31);PEEK(30),":",PEEK(31)
   68 IF M<=N THEN M=M+1
   70 T$=STRING$(9-M,"")+S$+STRING$(9+M,""):PRINT T$:POKE Z,206
   72 O$=INKEY$
   75 IF O$=CHR$(9)THEN POKE Z,32:Z=Z+1
   80 IF O$=CHR$(8)THEN POKE Z,32:Z=Z-1
   82 POKE Z,206
   85 FOR Q=0 TO XX/26:Q=Q:NEXT
   90 IF O$="G"THEN XX=XX-50
   95 IF O$="B"THEN XX=XX+50
  100 IF XX<=0 THEN XX=0
  105 IF XX>=1300 THEN XX=1300
  110 PRINT AT(9,24);STRING$(15," ")
  115 IF INT(XX/100)*100=XX THEN PRINT AT(9,37-XX/100);""
  120 IF INT(XX/100)*100=XX-50 THEN PRINT AT(9,37-(XX-50)/100);""
  125 IF PEEK(Z+40)<>32 THEN BEEP:BEEP:BEEP:BEEP:BEEP:BEEP:GOTO 160
  130 IF PEEK(Z+1)<>32 OR PEEK(Z-1)<>32 THEN BEEP:XX=XX+200
  135 IF PEEK(30)=2 THEN 160
  140 IF F>9 THEN F=0:F1=F1+1
  150 PRINT AT(11,32-LEN(STR$(F1)));RIGHT$(STR$(F1),LEN(STR$(F1))-1),",",F
  151 Y=Y+1
  152 IF INT(Y/5)*5=Y THEN F=F+1:GOTO 65
  155 GOTO 68
  160 SC=60*PEEK(30)+PEEK(31):ST=F1+F/10
  165 R$(W,0)=F$:R$(W,1)=STR$(SC):R$(W,2)=STR$(ST)
  166 IF MID$(R$(W,2),2,1)="."THEN R$(W,2)=" "+R$(W,2)
  167 IF SC<200 THEN R$(W,3)=STR$(INT(ST*3600/SC)-50):GOTO 170
  168 R$(W,3)=STR$(INT(ST*3600/SC))
  169 IF MID$(R$(W,2),3,1)="."THEN R$(W,2)="0"+R$(W,2)
  170 IF W=0 THEN 190
  175 FOR I=0 TO W:R$(I,5)=R$(I,3):NEXT I
  180 FOR I=0 TO W:M$=R$(I,5):K=I:FOR J=0 TO W
  182 IF R$(J,5)>M$ THEN M$=R$(J,5):K=J
  185 NEXT J:R$(K,4)=STR$(I+1):R$(K,5)="":NEXT I
  190 W=W+1:IF W=10 THEN 205
  195 WINDOW 15,23,23,39:INPUT "Neuer Fahrer ?";N$
  200 IF N$="J"THEN WINDOW 2,23,23,39:CLS:GOTO 35
  205 WINDOW:CLS:PRINT TAB(11)"*** AUSWERTUNG ***":PRINT STRING$(4,"")
  210 PRINT "NAME     ZEIT     km   Punkte PLATZ":PRINT STRING$(40,"")
  215 FOR I=0 TO W:PRINT R$(I,0)TAB(9)R$(I,1)TAB(16)R$(I,2);
  216 PRINT TAB(24)R$(I,3)TAB(32)R$(I,4):NEXT I
  245 END
  250 WINDOW 0,23,0,21:T$=STRING$(9,"")+S$+STRING$(9,"")
  255 FOR I=0 TO 23:PRINT T$:NEXT:Z=-5110:POKE Z,206:F=0:F1=0:Y=0:XX=1300:RETURN
  260 PRINT AT(23,31);"> ENTER <"
  265 IF INKEY$<>CHR$(13)THEN 265:ELSE RETURN