###   Projekte und Informationen rund um den KC85   ### 

Programmbeschreibung zu ML.COM

von Mario Leubner

ML.COM ist ein universeller Dateibetrachter für den KC85/4. Es sollen damit alle auf dem KC85/4 üblichen Bildformate, Text- und Programmdateien und Archive betrachtet werden können. Zum Entpacken der Archive ist der entsprechende Entpacker wie bisher zu verwenden. Unterstützt wird ein solcher Programmaufruf durch die Möglichkeit, COM-Files auch mit Parameterübergabe von der Diskette zu starten.

Als Systemvoraussetzung ist erforderlich:

  • ein KC85/4 mit Floppy
  • KC-MicroDOS 2.6
  • ZAS 1.0
  • freier TPA-Speicher bis mindestens 9100H

Wird vom Programm ein anderes System vorgefunden erfolgt der Abbruch mit einer entsprechenden Fehlermeldung.

H I N W E I S !!!
MicroDOS bietet die Möglichkeit der Fehlerbehandlung im Anwenderprogramm, siehe dazu BDOS-Funktion 45 im Handbuch für den Programmierer, Seite 43.

Leider funktioniert das Abschalten nicht, somit wird jeder Diskettenfehler mit der Meldung "BDOS-Fehler auf ... " auf dem Bildschirm quittiert. Für grafische Bedienoberflächen mit Fenstertechnik bedeutet dies unter Umständen (scrollen am BS-Ende), daß alle Anzeigen durcheinander geraten.

Bis ein korrigiertes MicroDOS zur Verfügung steht, kann man vorerst mit dem Hilfsprogramm FE.COM das alte MicroDOS korrigieren. FE.COM modifiziert MicroDOS dabei nicht in den Systemspuren der Diskette, sondern nur im RAM! Nach jedem Neustart ist der alte Zustand wieder vorhanden. FE.COM ist für die Arbeit mit ML.COM nicht zwingend erforderlich, sollte aber wegen möglicher Lesefehler vorher einmal gestartet werden. Bei der Weitergabe von ML.COM also auch an das Programm FE.COM mit denken!

Programmstart

Ich empfehle, ML.COM nur von dem Laufwerk zu starten, auf dem sich ML.COM befindet. Ein Aufruf der Form "A>B:ML" führt zwar auch zum Start des auf B: befindlichen Programms ML.COM, der automatische Wiederstart würde aber zur Kommandozeile "A:ML" führen. Leider übergibt MicroDOS dem aufrufenden Programm nicht die komplette Befehlszeile, so daß die zusätzliche Angabe des Laufwerkes nicht erfaßt werden kann.

ML.COM sollte sich in USER 0 befinden und den Status einer Systemdatei erhalten, dann ist der Wiederstart auch möglich, wenn eine Programm- oder Kommandodatei von einem anderen USER-Bereich gestartet wurde.

In der Kommandozeile können noch drei Parameter angegeben werden:

A>ML B2:*.TXT

Diese Kommandozeile würde ML.COM von Laufwerk A: laden, zu Laufwerk B: wechseln und den USER-Bereich 2 einstellen. Die Dateimaske *.TXT veranlaßt, daß nur Dateien mit dem Dateityp TXT aufgelistet werden. Ist kein Laufwerk/USER angegeben, erfolgt die Suche im aktuellen Laufwerk/USER. Ist keine Dateimaske angegeben, werden alle Dateien ausgegeben.

Anzeigen

ML.COM generiert mehrere Fenster auf dem Bildschirm.

  • Links oben ist das aktuelle Laufwerk mit USER-Bereich, die Anzahl der Dateien und der freie Platz auf der Diskette angegeben.
  • Rechts oben werden für alle 8 logischen Laufwerke das physische Laufwerk (0-3) nach dem Doppelpunkt und darunter die Diskettenkapazität angezeigt, nicht installierte Laufwerke werden weggelassen.
  • Am unteren Bildschirmrand ist eine Menüzeile zu sehen, die in Kurzform die möglichen Eingaben anzeigt.
  • Im mittleren großen Fenster werden die Dateien alphabetisch aufgelistet. Ein '*' hinter dem Dateinamen zeigt den Schreibschutz an, ein '$' markiert eine Systemdatei.
  • Unter diesem Fenster erscheint noch eine "Statuszeile" in gelber Schrift, wo weitere Informationen wie belegte USER-Bereiche, Dateigrößen, Bildformate oder auch Fehlermeldungen angezeigt werden.

Eingaben

Die aktuelle Datei ist invers hervorgehoben, mit den Cursortasten kann man die Datei auswählen. Sind mehr als 80 Dateien im gerade eingestellten Laufwerk und USER-Bereich, erfolgt ein Wechsel der Anzeige, wenn man am rechten bzw. linken Bildschirmrand hinausgerät. Enter startet die Anzeige einer definierten Datei. Zusätzlich sind noch folgende Eingaben möglich:

A-H
Je nach installierten Laufwerken kann mit den Tasten A-H das Laufwerk gewechselt werden. Beim Wechseln der Diskette im aktuellen Laufwerk sollte ebenfalls die Taste für das Laufwerk betätigt werden, um das neue Direktory einzulesen.
 
U
Eingabe des neuen USER-Bereiches im Bereich von 0-31, ohne Eingabe wird USER-0 eingestellt.
 
M
Eingabe einer neuen Dateimaske. Dazu können die Jokerzeichen '?' und '*' verwendet werden. Die Eingabe '*.*' kann weggelassen werden.
 
Q oder ESC
Programmende, Rückkehr zu MicroDOS.
 
V
View-Kommando für beliebige Dateien mit oder ohne CAOS-Vorblock, z.B. geeignet zum Betrachten von IRM-Abzügen, Zeichentabellen.
 
T
Aufruf des Type-Kommandos für Textdateien, die nicht automatisch erkannt werden. Der Zeichensatz ist eventuell vorher mit F1+6 (ASCII/IBM) und F1+9 (USA/deutsch) einzustellen. Der Wert der Prozentanzeige stimmt nur, wenn die Datei im Standardtextformat ist, also mit EOF (^Z) endet und danach keine weiteren Sektoren sind!
 
X
Hexdump der Datei, als Adresse wird standardmäßig 100H angenommen.
 
K
Hexdump einer CAOS-Datei mit Vorblock. Die Anfangs-, End- und Startadresse werden dem Vorblock entnommen. Ist kein gültiger CAOS- Vorblock am Dateianfang vorhanden, erfolgt Ausschrift "Formatfehler!"

Bei diesen drei Kommandos ist ein Blättern in der Datei möglich. Mit der Entertaste wird die Datei fortlaufend angezeigt und am Dateiende wieder zur Dateiliste zurückgegangen. Die Cursortasten "HOCH" und "RUNTER" blättern jeweils eine Seite vor- oder rückwärts. Am Anfang bzw. Ende der Datei sind die Cursortasten nur für jeweils eine Richtung aktiv.

Definierte Dateiformate

Dateien, die einen speziellen Dateityp besitzen, können direkt mit der Entertaste "gestartet" werden. Welche Dateitypen in ML.COM definiert sind, ist den folgenden Tabellen zu entnehmen:

 

Textdateien:

Zeichensatz:

TXT TP/WS-Text ASCII
MAC Assembler-Quelltexte ASCII
Z80 Assembler-Quellen Z80 ASCII
ASM Edas- oder ASM-Quelltexte ASCII
PRN Programmdatei ASCII
C C-Quelltexte ASCII, USA
H C-Headerfiles ASCII, USA
HLP Help-Texte für HELP.COM ASCII
TXW WP-Text auflisten IBM, USA
DOK Dokumentation als TP-Text ASCII, deutsch
DOC Dokumentation als TP-Text ASCII, USA
BRF Briefe als TP-Text ASCII, deutsch
 

Bilddateien:

PIF Anzeige eines farbigen Bildes (PIP und PIF)
PIP Anzeige eines Pixelbildes (oder FRACTALE-Bild)
HIF Anzeige eines HIRES-Bildes (HIP und HIF)
HIP Anzeige eines HIRES-Bildes (HIP und HIF)
FRC Anzeige eines HIRES-Bildes im FRACTAL4-Format
PCX Anzeige eines PCX-Bildes mit bis zu 4 Farben
IRM Bildspeicherabzug im CAOS-Format
PIC KC85/3-Bilder werden als KC-Dump ausgegeben
 

Archive:

LBR LBR-Directory
PMA Archivdirectory *.PMA
LZH Archivdirectory *.LZH
ARC Archivdirectory *.ARC
ARK Archivdirectory *.ARK
 

ausführbare Dateien:

COM Programmdatei starten, Parametereingabe möglich
SUB Kommandodatei mit CCP-Kommando "<" abarbeiten
BAT siehe SUB

Nach Abarbeitung einer dieser Dateien wird ML.COM automatisch wieder gestartet, falls auf der Diskette im aktuellen Laufwerk eine $$$.SUB- Datei erzeugt werden konnte. Alle aktuellen Einstellungen werden dabei zeitweilig in der Datei A:MLWRK.TMP abgelegt.

 

spezielle Dateiformate:

PIC KC-Hexdump (Bildabzug KC85/3 oder Kassettenladeroutine)
KCC KC-Hexdump KCC-Datei (MC-Datei für CAOS)
KEY F-Tastendatei listen (Speicherabzug B900 B99C)
LST Hexdump Druckertreiber (ab Adresse 200H)
KOP Hexdump Koppeltreiber (ab Adresse 380H)
 

Programme von KC-BASIC und HCBASIC.COM:

SSS BASIC-Programm, abgespeichert mit CSAVE"name"
KCB BASIC-Programm, abgespeichert mit BSAVE.KCC

Unabhängig, mit welcher Methode das BASIC-Programm abgespeichert wurde, kann das Listing wie ein normaler Text betrachtet und darin geblättert werden. Endet die Prozentanzeige am Dateiende nicht mit 100.0%, ist versteckter Maschinencode enthalten. Eine Betrachtung über das Ende des eigentlichen BASIC-Programm hinaus ist nicht möglich. Die CAOS-Sonderzeichen werden (soweit dies möglich ist) in den IBM- Zeichensatz konvertiert. Zeichencodes > 80H werden als IBM-Grafikzeichen ausgegeben. In Zeichenketten, DATA-Zeilen oder Kommentaren enthaltene Steuerzeichen werden als inverse Buchstaben dargestellt.

Dateien, die nicht in der Liste aufgeführt wurden, können nur mit den Kommandos X (Hexdump), T (Type), K (KC-Dump) oder V (View) betrachtet werden. Das letzte gewählte Kommando wird dabei abgespeichert und kann bis zum erneuten Einlesen des Directories ebenfalls mit der Entertaste gestartet werden.

Anregungen und Hinweise zu ML.COM nehme ich gern noch entgegen - denn kein Programm ist vollkommen und absolut fehlerfrei.