1
0
zpoint/cbasic/czpoint.bas

66 lines
1.4 KiB
QBasic
Raw Normal View History

2019-04-22 16:18:49 +02:00
REM CZPoint - CBasic ZPoint
REM ----------- (c) 2019 Anna Christina Nass <acn@acn.wtf>
REM Zeigt Dateien mit dem Namensschema ZPxx.TXT an
REM Navigation mit + und -, mit 1 zurueck zum Anfang
REM i% ist aktuelle Folie
REM c% ist die letzte Folie (max. Folienzahl)
LET I%=0
LET C%=0
REM ANSI-Escape-Sequenzen zur spaeteren Benutzung:
LET ESC$=CHR$(27)
LET CLS$=ESC$+"[0;0H"+ESC$+"[2J"
REM Durchzaehlen, welche Dateien vorhanden sind
REM um Wraparound moeglich zu machen
ZAEHL:
IF C%<10 THEN F$="ZP0"+STR$(C)+".TXT"
IF C>=10 THEN F$="ZP"+STR$(C)+".TXT"
ON ERROR GOTO ZERR
OPEN F$ AS 1
CLOSE 1
LET C=C+1
GOTO ZAEHL
REM ---- Folie laden und anzeigen
WEITER:
PRINT CLS$;
IF I<10 THEN F$="ZP0"+STR$(I)+".TXT"
IF I>=10 THEN F$="ZP"+STR$(I)+".TXT"
IF END #1 THEN DEND
OPEN F$ AS 1
LESEN:
READ #1; LINE L$
PRINT L$
GOTO LESEN
DEND:
CLOSE 1
REM ----Foliennummer anzeigen
PRINT ESC$+"[25;75H"+ESC$+"[0m"+STR$(I)+"/"+STR$(C);
REM ----Tastendruecke verarbeiten
LET K$=CHR$(INKEY)
IF K$="+" THEN I=I+1
IF K$="-" THEN I=I-1
IF K$="0" THEN I=0
IF K$="q" THEN STOP
IF K$="Q" THEN STOP
IF I<0 THEN I=C
IF I=C+1 THEN I=0
GOTO WEITER
REM ---ENDE Schleife
REM Fehlerbehandlung zur Bestimmung der max. Dateizahl
REM ----------
ZERR:
IF ERR<>"OE" THEN GOTO OERR
LET C=C-1
REM die Datei C-1 existierte noch, das ist die hoechste
GOTO WEITER
OERR:
PRINT "Fehler "+ERR+" in Zeile "+STR$(ERL)+" aufgetreten."
STOP