FileCommander

Ein universeller Dateicommander für CP/M, im Stil des Norton-Commanders. Autor des Programms ist Heiko Poppe.

Voraussetzung für das Programm ist ein CP/M 2.2 oder 3.0 und ein BWS mit 64 Zeichen und 32 Zeilen (FC64.COM) oder mit 80 Zeichen und 24 Zeilen (FC80.COM). Optional wird eine USB-VDIP-Anbindung nach M.Leubner direkt unterstützt, ein Kopieren von/aus USB ist damit direkt möglich.
Ab Version 0.97 wird der IO-USB vom NKC ebenfalls unterstützt.

getestet auf

  • EPOS (NANOS)
  • K1520 SCPX, CP/A
  • 1715
  • AC1, AC1-2010
  • KC87-CP/M
  • VT100 (0.97 ff)
  • fc096a.zip FileCommander 0.96a, 28.4.2023
  • fc097.zip FileCommander 0.97, 9.3.2024
  • fcinst092.zip Konfigurationsprogramm für die ini-Datei Version 0.92-0.96, Turbo Pascal Src, 16.6.2023 (korr)
  • fcinst097.zip Konfigurationsprogramm für die ini-Datei Version 0.97.., Turbo Pascal Src, 16.6.2023 (korr)

siehe auch:

http://www.ac1-info.de/galerie/poppe_heiko/poppe.htm

https://www.robotrontechnik.de/html/forum/thwb/showtopic.php?threadid=18528

Kurzbeschreibung für den FC ab Version 0.96a

Voraussetzung für das Programm ist ein CP/M 2.2 oder 3.0 und ein BWS mit 64 Zeichen und 32 Zeilen (FC64.COM) oder mit 80 Zeichen und 24 Zeilen (FC80.COM). Inversdarstellung, möglichst ohne Leerzeichen bei Umschaltung, und optional eine Farbdarstellung ist für die optimale Nutzung aller Funktionen zu empfehlen.

Die Konfiguration des Programms erfolgt durch Patchen der INI-Datei FC.INI (diese ist für beide Programmversionen identisch) oder alternativ durch Patchen der Programmdatei. Beides ist in der Datei FC095-Patch.pdf beschrieben. Für den FC ab Version 0.92 gibt es ein neues Format der INI-Datei! Für den FC ab Version 0.97 gibt es ein neues Format der INI-Datei!

Der Programmstart erfolgt mit FCxx [<LW> <LW>] für die Anzeige im linken und rechten Fenster. Die Argumente sind optional, es werden nur CP/M-Laufwerke akzeptiert (kein USB). Beim Programmstart ohne Argumente wird das eingestellte Laufwerk angezeigt. Der Nutzerbereich wird beim Starten nicht abgefragt, er lässt sich erst beim Laufwerkswechsel ändern.

Mit T wird zwischen den Fenstern gewechselt, mit R werden die Dateilisten neu eingelesen.

Bei der Laufwerksauswahl wird zuerst Links/Rechts/User abgefragt. Mit L oder R wird die zu verändernde Seite ausgewählt, erst danach werden die vorhandenen Laufwerke aufgelistet. Eine direkte Laufwerksauswahl ist mit Shift-1 für das linke und mit Shift-2 für das rechte Laufwerksfenster möglich. Die Auswahl des Laufwerkes erfolgt mit dem entsprechenden Buchstaben. Der Userbereich (zu Beginn mit U aufgerufen) wird nur für das aktuelle Fenster gewechselt und muss nach der Eingabe mit Enter bestätigt werden.

Die Bedienung erfolgt über die Ziffern in der Fußzeile oder über die Anfangsbuchstaben der Befehle. Mit 1 erfolgt der Aufruf der Hilfe, dort ist die Bedienung genauer erläutert. In der Hilfe können mit 2 weitere Systeminfos angezeigt werden.

Was geht noch nicht: Umgang mit Schreibschutz und Systemattribut. Diese beiden Attribute werden angezeigt wenn Farbwiedergabe oder Inversdarstellung (nicht beim PC1715) eingestellt sind.

Die Tasten Cursor links/Cursor rechts und Bild auf/Bild ab dienen zum schnellen Navigieren in langen Dateilisten. Mit der Leertaste lassen sich Dateien markieren und Markierungen aufheben. Kopieren, Verschieben und Löschen von markierten Dateien ist möglich.

Die Idee und Umsetzung für die USB-Unterstützung ist den Quelltexten der USB-Tools von Mario Leubner entnommen worden. Die wichtigsten Dateioperationen wie Kopieren, Verschieben und Löschen sind zwischen USB und CP/M in beiden Richtungen möglich.

Der IO-USB vom NKC wird ebenfalls unterstützt, die Auswahl des USB-Typs wird über die INI-Datei vorgenommen. Vom FC wird nur ein USB-Anschluss unterstützt.

Das USB-Laufwerk wird in der Laufwerksauswahl nur angezeigt, wenn ein Datenträger angeschlossen ist. Auf dem USB-Laufwerk kann man zwischen den Verzeichnissen wechseln, Verzeichnisse erstellen und leere Verzeichnisse löschen.

WICHTIG: Verzeichnisnamen auf dem USB-Laufwerk dürfen aus max. 8 Zeichen, ohne Punkt und Dateierweiterung, bestehen.

Seit der Version 0.95 gibt es einen einfachen Hex-Editor. Zum Editieren müssen die Dateien in den verfügbaren Arbeitsspeicher passen. Die Größe des Editierpuffers wird in der Systeminfo (Hilfe → Info) angezeigt. Die Bedienung des Editors weicht von der üblichen Bedienung des FC ab, da beim Editieren die Tasten 1 – 9 und a – f zum Schreiben gebraucht werden. Die abweichende Tastenbelegung wird in der Fußzeile angezeigt. Bei geöffnetem Editor kann mit der Taste H eine Hilfe aufgerufen werden.

Hinweis: Die Suchfunktion im Textmodus des Dateibetrachters und im Editor, und die Anzeige der Dateiattribute (Schreibschutz, System) funktionieren nur mit einem BWS, der eine Inversumschaltung beherrscht.

Neu in der Version 0.96a ist die Möglichkeit, ein Programm aus dem FC heraus zu starten und nach Ende des Programmes wieder zum FC zurückzukehren. Der Programmstart erfolgt mit dem Buchstaben X, danach können bei Bedarf weitere Parameter eingegeben werden. Beim Start des Programms wird eine kleine Laderoutine vor dem CCP platziert, die das Nachladen des FC steuert, aber gleichzeitig den verfügbaren TPA vor Beginn des CCP um 300h Bytes reduziert. Programme mit großem Speicherbedarf können so möglicherweise nicht gestartet werden. Der Programmstart ist derzeit nur von CP/M-Laufwerken möglich. Für eine korrekte Funktion muss der FC von dem Laufwerk gestartet werden wo sich die FCxx.COM und FC.INI befinden. Die Dateien FC64.COM bzw. FC80.COM dürfen nicht umbenannt werden. Hinweis: Speicherresidente Treiber (z.B. GIDE-Treiber) können nicht aus dem FC heraus geladen werden!

Weiterhin gibt es die Möglichkeit, den Bildschirm beim Beenden des FC zu löschen und während des laufenden FC den USB-Datenträger „auszuwerfen“. Beide Funktionen müssen in der INI-Datei eingestellt werden.

Neu in der Version 0.96c ist eine zusätzliche Einstellmöglichkeit für die Initialisierung des VDIP- (USB-) Moduls beim Programmstart. Auf schnelleren Rechnern (Takt > 4 MHz) reicht die Wartezeit für die Initialisierung nicht aus und der USB-Anschluss wird nicht erkannt. Neu ab Version 0.96d ist die erweiterte Konfigurationsmöglichkeit für alle im Programm vorkommenden Bildschirmsteuerzeichen, diese werden in der INI-Datei definiert. Weiterhin ist die Farbausgabe auf dem VT100-Terminal möglich.

Neu ab Version 0.97 sind weitere Konfigurationsmöglichkeiten für die Tastatur. Zum Markieren von Dateien und zum Wechsel des aktiven Fensters können zusätzlich je eine eigene Taste definiert werden (siehe Patchanleitung).

Weitere Erläuterungen zu den Konfigurationsmöglichkeiten über die INI-Datei sind der Patchanleitung zu entnehmen.

Der „Rest“ des Programmes ist zumindest zum SCP (CP/A) kompatibel, die hier nutzbaren Besonderheiten (Pseudografik, Invers) lassen sich abschalten. Außer beim USB (auch abschaltbar) gibt es keine direkten Hardwarezugriffe, es läuft alles über BDOS-Aufrufe. Einzig die verfügbaren Laufwerke und die Zeichenausgabe erfolgen über BIOS-Aufrufe.

Zum leichteren(?) Anpassen der Steuerzeichen für Tastatur, Bildschirm u.a. gibt es von mir das Programm FCINST.

Patch Programm FileCommander
Version V0.2 16.6.2023 V.Pohlers
Lade FCINST.TXT

L = INI-Datei laden
D = Bytes anzeigen
M = Daten aendern
S = INI-Datei schreiben
Q = Programm beenden
?

L = INI-Datei laden
	Es wird der Dateiname abgefragt (z.B. VT100.INI)
D = Bytes anzeigen
	zeigt hexadezimal 100h Bytes an (00..FFh)
	i.W. zur Kontrolle gedacht und zum Ausdrucken
	fürs direkte Patchen der FC64.COM/FC80.COM-Datei
M = Daten aendern
	die Patches werden nacheinander abgearbeitet
	es wird eine Beschreibung angezeigt und ggf. ein Defaultwert 
	aus der Beschreibung
	in der nächsten Zeile folgt der aktuelle Wert (bzw. mehrere Werte, 
	durch Leerzeichen getrennt)
	Die Eingabe eines neuen Werts/mehrerer Werte wird erwartet

	Eingabe der Werte
		dezimal 
		hexadezimal mit h am Ende 
		oder als Zeichen mit ' vor Zeichen
	mehrere Werte durch Leerzeichen getrennt, z.B. "1 42h '$"
	Enter ohne Eingabe behält den aktuellen Wert bei
	
	Man muss alle Patchzeilen abgearbeitet habven, danach erscheint
	wieder das Menü.
S = INI-Datei schreiben
	Es wird der Dateiname abgefragt (z.B. FC.INI)

28.04.2023 Version 0.96a
Man kann aus dem FC heraus Programme starten.

10.01.2021 Version 0.95K
Es gibt jetzt einen einfachen Hex-Editor und weitere „Kleinigkeiten“. Beim Beenden des FC wird der USB-Datenträger „ausgeworfen“ und es kann der Bildschirm gelöscht werden (letzteres wird in der FC.INI eingestellt), das USB-Auswerfen kann auch während des Betriebs durch eine in der INI einstellbare Taste erfolgen.

ab Version 0.92 gibt es ein neues Format der INI-Datei!

3.12.2016 Version 0.9c
Nach mehr als einem Jahr Pause gibt es wieder Neuerungen und Fehlerkorrekturen am File-Commander.
Die wichtigste Neuerung ist ein Grafikbetrachter. Wenn eine VIS3 mit dem Treiber ab Version 0.82 im Rechner vorhanden ist, können damit PCX-Dateien bis max. 512×512 Pixel angezeigt werden. Die darstellbare Farbtiefe richtet sich nach den Möglichkeiten der VIS3. Die Funktion ist über den Dateibetrachter (VIEW) erreichbar, wird aber nur bei geladenem VIS3-Treiber und bei einer PCX-Datei aktiviert.
Die Bildschirmanzeige des FC wird jetzt nicht mehr über das BDOS, sondern direkt über die BIOS- Funktion geleitet. Das gibt besonders beim Z1013 mit dem „alten“ Monitor eine deutliche Beschleunigung beim Bildaufbau. Bei anderen Rechnern ist die Beschleunigung nicht so deutlich spürbar.
Weiterhin gibt es einige kleine Veränderungen und Fehlerkorrekturen:
Die Ja/Nein-Abfrage wurde verändert, es werden nur noch die Tasten J, N und ESC akzeptiert (siehe Hilfe).
Zum Markieren von Dateien kann nur noch die Leertaste verwendet werden, nicht mehr die Taste „INS“.
Ein Fehler wurde behoben, der nach dem Beenden des FC zum Absturz nachfolgender Programme führen konnte.
Die INI-Datei der Version 0.8 und die Patchanleitung dazu sind nach wie vor kompatibel und gültig.

Dezember 2014 Version 0.8
Der FC 0.8 enthält einige größere Veränderungen. Die wichtigste Veränderungen sind: Die neue Version läuft jetzt auch unter SCP3 bzw. CP/M 3. Das Programm kann mittels einer INI-Datei konfiguriert werden. Damit ist es ab sofort bei neuen Programmversionen nicht mehr nötig, das Programm jedesmal neu zu patchen. Die Einzelheiten dazu sind in der Datei FC08-Patch.PDF zu finden. Ab sofort wird das Programm in einer 64-Spalten- und einer 80-Spalten-Version ohne spezielle Anpassungen an bestimmte Rechner veröffentlicht. Diese Anpassungen soll jeder Anwender über seine INI-Datei selbst vornehmen. Es gibt jetzt einen RAM-Puffer zum Kopieren zwischen CP/M-Laufwerken. Damit laufen Kopiervorgänge erheblich schneller als bisher. Die USB-Routinen wurden ebenfalls überarbeitet, diese nutzen jedoch keinen RAM-Puffer. Über den Menüpunkt Hilfe > Info ist eine kleine Systeminfo erreichbar.

2014 FC07a

1.7.2012: erste Erwähnung auf robotron-Forum

  • cpm/filecommander.txt
  • Zuletzt geändert: 2024/03/13 09:08
  • von volkerp