58 lines
1.7 KiB
QBasic
58 lines
1.7 KiB
QBasic
10 REM ZPoint
|
|
11 REM ----------- (c) 2019 Anna Christina Nass <acn@acn.wtf>
|
|
12 REM Zeigt Dateien mit dem Namensschema ZPxx.TXT an
|
|
13 REM Navigation mit + und -, mit 1 zurueck zum Anfang
|
|
14 REM -----------
|
|
30 DEFINT I,C
|
|
31 REM i ist aktuelle Folie
|
|
32 REM c ist die letzte Folie (max. Folienzahl)
|
|
40 I=0
|
|
41 C=0
|
|
50 ESC$=CHR$(27)
|
|
51 CLS$=ESC$+"[0;0H"+ESC$+"[2J"
|
|
60 WIDTH 255
|
|
100 REM Durchzaehlen, welche Dateien vorhanden sind
|
|
101 REM um Wraparound moeglich zu machen
|
|
110 IF C<10 THEN F$="ZP0"+MID$(STR$(C),2,1)+".TXT"
|
|
120 IF C>=10 THEN F$="ZP"+MID$(STR$(C),2,2)+".TXT"
|
|
130 ON ERROR GOTO 1000
|
|
140 OPEN "i",1,F$
|
|
150 CLOSE 1
|
|
160 ON ERROR GOTO 0
|
|
170 C=C+1
|
|
180 GOTO 110
|
|
190 REM ---ENDE Schleife
|
|
200 REM hier weiter nach Fehlerbehandlung
|
|
201 REM ---START Hauptschleife
|
|
210 PRINT CLS$;
|
|
220 IF I<10 THEN F$="ZP0"+MID$(STR$(I),2,1)+".TXT"
|
|
230 IF I>=10 THEN F$="ZP"+MID$(STR$(I),2,2)+".TXT"
|
|
240 OPEN "i",1,F$
|
|
250 WHILE NOT EOF(1)
|
|
260 LINE INPUT #1,L$
|
|
270 PRINT L$
|
|
280 WEND
|
|
290 CLOSE 1
|
|
400 REM ----Foliennummer anzeigen
|
|
410 PRINT ESC$+"[25;73H"+ESC$+"[0m"+STR$(I)+"/"+STR$(C);
|
|
500 REM ----Tastendruecke verarbeiten
|
|
510 K$=INPUT$(1)
|
|
520 IF K$="+" THEN I=I+1
|
|
530 IF K$="-" THEN I=I-1
|
|
540 IF K$="0" THEN I=0
|
|
550 IF K$="q" THEN SYSTEM
|
|
551 IF K$="Q" THEN SYSTEM
|
|
560 IF I<0 THEN I=C
|
|
570 IF I=C+1 THEN I=0
|
|
580 GOTO 200
|
|
590 REM ---ENDE Schleife
|
|
1000 REM Fehlerbehandlung zur Bestimmung der max. Dateizahl
|
|
1001 REM ----------
|
|
1010 IF ERR<>53 GOTO 1100
|
|
1011 REM - bei anderem Fehler diesen anzeigen und dann beenden
|
|
1020 C=C-1
|
|
1021 REM die Datei C-1 existierte noch, das ist die hoechste
|
|
1030 RESUME 200
|
|
1100 PRINT "Fehler"+STR$(ERR)+" in Zeile"+STR$(ERL)
|
|
1110 END
|