CBASIC-Version hinzugefügt
This commit is contained in:
parent
7ce739297f
commit
7ed358d781
21
README.md
21
README.md
@ -1,22 +1,26 @@
|
|||||||
# ZPoint
|
# ZPoint
|
||||||
|
|
||||||
ZPoint ist ein sehr(!) simples "Präsentationsprogramm" für Microsoft BASIC.
|
ZPoint ist ein simples "Präsentationsprogramm" für CP/M.
|
||||||
|
|
||||||
Ich habe es entwickelt, um eine Reihe von Textdateien als eine
|
Ich habe es entwickelt, um eine Reihe von Textdateien als eine
|
||||||
Art Präsentation darzustellen.
|
Art Präsentation darzustellen.
|
||||||
|
|
||||||
Die Dateien müssen mit den Dateinamen ``ZPxx.TXT`` im gleichen Verzeichnis
|
Die Dateien müssen mit den Dateinamen ``ZPxx.TXT`` im gleichen Verzeichnis
|
||||||
wie ``zpoint.bas`` vorliegen, wobei ``xx`` eine fortlaufende Numerierung ist,
|
wie ZPoint vorliegen, wobei ``xx`` eine fortlaufende Numerierung ist,
|
||||||
die bei 00 beginnt.
|
die bei 00 beginnt.
|
||||||
|
|
||||||
|
Es gibt zwei Versionen, einmal für Microsoft BASIC und einmal für CBASIC.
|
||||||
|
Die CBASIC-Version läßt sich mit CB80 compilieren und liegt anschließend als .com-Datei vor.
|
||||||
|
|
||||||
## Programmstart und Bedienung
|
## Programmstart und Bedienung
|
||||||
|
|
||||||
``mbasic zpoint``
|
``mbasic zpoint`` bzw. ``czpoint``
|
||||||
|
|
||||||
Nachdem ZPoint gestartet wurde, zeigt es sofort die erste Datei (``ZP00.TXT``) an.
|
Nachdem ZPoint gestartet wurde, zeigt es sofort die erste Datei (``ZP00.TXT``) an.
|
||||||
|
|
||||||
In Zeile 24 wird die aktuelle Foliennummer in der Form "1/10" angezeigt sowie
|
In Zeile 24 wird die aktuelle Foliennummer in der Form "1/10" angezeigt.
|
||||||
ein "Prompt", der kurz die möglichen Tasten angibt:
|
|
||||||
|
Folgende Eingaben sind möglich:
|
||||||
|
|
||||||
* ``+`` lädt die nächste Datei
|
* ``+`` lädt die nächste Datei
|
||||||
* ``-`` lädt die vorige Datei
|
* ``-`` lädt die vorige Datei
|
||||||
@ -35,3 +39,10 @@ eine "Lücke" in der Numerierung ist, wird die letzte existierende Datei als hö
|
|||||||
``zpoint.bas`` ist die per SAVE abgespeicherte (tokenized) Datei des Programms
|
``zpoint.bas`` ist die per SAVE abgespeicherte (tokenized) Datei des Programms
|
||||||
``zpointa.bas`` ist identisch, aber als ASCII-Datei abgespeichert (SAVE"ZPOINT",A)
|
``zpointa.bas`` ist identisch, aber als ASCII-Datei abgespeichert (SAVE"ZPOINT",A)
|
||||||
|
|
||||||
|
``czpoint.bas`` CBASIC-Quellcode
|
||||||
|
``czpoint.com`` compilierte CBASIC-Version
|
||||||
|
|
||||||
|
## CBASIC-Version compilieren
|
||||||
|
|
||||||
|
--TODO--
|
||||||
|
|
||||||
|
66
cbasic/czpoint.bas
Normal file
66
cbasic/czpoint.bas
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
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
|
BIN
cbasic/czpoint.com
Normal file
BIN
cbasic/czpoint.com
Normal file
Binary file not shown.
@ -55,6 +55,3 @@
|
|||||||
1030 RESUME 200
|
1030 RESUME 200
|
||||||
1100 PRINT "Fehler"+STR$(ERR)+" in Zeile"+STR$(ERL)
|
1100 PRINT "Fehler"+STR$(ERR)+" in Zeile"+STR$(ERL)
|
||||||
1110 END
|
1110 END
|
||||||
tei C-1 existierte noch, das ist die hoechste
|
|
||||||
1030 RESUME 200
|
|
||||||
1100 PRINT "Fehler"+STR$(ERR)
|
|
Loading…
Reference in New Issue
Block a user