Zusammenfassung

Damit soll die Vorstellung der wichtigsten Merkmale von FTP.COM beendet werden. Die vielen Funktionen erforderten diesmal eine sehr kompakte Programmierung. Es gibt fast keinen redundanten Programmkode, dafür aber ca. 50 Statusbits, welche sich um die Verwaltung der verschiedenen Zustände und Abhängigkeiten kümmern. Zwischendurch wurden zwei längere Optimierungsphasen durchgeführt und zum Schluss war viel Geduld und Ausdauer notwendig, um alle offensichtlichen und versteckten Fehler sowie Mängel auszumerzen.

Es ist immer wieder erstaunlich, was man alles mit dem Assembler in ca. 22 kB Programmcode realisiert bekommt, das CP/M-Programm lässt die Pendants anderer Betriebssysteme, z.B. Windows 7 ca. 42 kB oder SYS-Linux ca. 62 kB, weit hinter sich und ist nicht viel schlechter. Im Gegenteil, die Windows-Versionen sind ziemlich lieblos programmiert und wirken mehr als notwendiges Übel in der sonstigen auf Optik getrimmten "Fensterumgebung".

Damit die ersten Schritte etwas leichter fallen, gibt es zum Programm noch 4 Beispiel-Skripts dazu, welche für eine automatische Einwahl in das KC85 Labor (s.u.) und 3 andere FTP-Server sorgen. Dort gibt es jede Menge CP/M Material, was man nun direkt und ohne Internet-Umleitung über Fremdrechner und lästige Diskettentransfers auf den eigenen Rechner befördern und auch gleich ausprobieren kann. Damit eröffnet FTP.COM eine ganz neue, bisher völlig unmögliche Arbeitsweise.

Natürlich kann man sich auch mit anderen FTP-Servern verbinden und dort auf die Suche nach interessanten Inhalten gehen. Da CP/M aber nur sehr beschränkt mit anderen Inhalten als Text umgehen kann, macht das natürlich nicht so viel Sinn. Man sollte auch den CP/M-Rechner nicht als Zwischenstation für den Datentransfer zum PC verwenden, da die Dateien i.d.R. verändert werden. Wenn sie erst im CP/M-Dateisystem gespeichert und anschliessend zum PC gesendet werden, kommen beim binären Transfer die überflüssigen Bytes des letzten Sektors ab EOF dazu!

Für alle Interessenten nachfolgend einige Adressen von öffentlichen FTP-Servern, in die man sich mit dem Benutzernamen "anonymous" und seiner Mailadresse als Passwort einloggen kann:

Kermit ftp.kermit.columbia.edu
Oregon State University Open Source Lab ftp.osuosl.org
Microsoft ftp.microsoft.com
National Instruments ftp.ni.com
Heise Verlag (c't und iX) ftp.ix.de
Chaos Computer Club ftp.ccc.de
AVM ftp.avm.de

Darüber hinaus unterhält nahezu jede Universität und Hochschule einen oder mehrere öffentliche FTP-Server, wo man Unmengen an Zeit mit dem Sichten und Anschauen von Material verbringen kann.

Aber FTP-Server sind nicht nur im Internet anzutreffen. Sie eignen sich auch hervorragend für die zentrale Verwaltung und Sicherung von Dateien im eigenen Netzwerk. Man hat dann alles an einem Ort, kann von jedem FTP-fähigen Teilnehmer lesend und schreibend darauf zugreifen, inklusive der Möglichkeiten von FTP für die Verzeichnisverwaltung. Für die CP/M Rechner wird indirekt die Verwaltung von Programmen und Daten in einer hierarchischen Datenstruktur möglich, indem man die Möglichkeiten des FTP-Servers nutzt. Man ist dann nicht mehr so abhängig von den nur begrenzt verfügbaren Userbereichen oder sogar der Auslagerung auf Diskette, um Ordnung zu halten.

Um einen FTP-Server im Netzwerk nutzen zu können, gibt es viele Möglichkeiten. Die naheliegendste Lösung ist natürlich der eigene PC mit einem geeigneten Serverprogramm. An dieser Stelle empfehle ich für die Windows-Anwender ganz eindeutig den Filezilla-Server (www.filezilla-project.org). Als Open Source Projekt ist er frei und funktional ohne lästige Beschränkungen, welche bei anderen freien Versionen, besonders kommerzieller Programme, fast immer die Regel sind. Das Angebot an FTP-Server Programmen, ist im Gegensatz zu der Flut diverser FTP-Clients, sehr überschaubar. Filezilla unterstützt auch alle notwendigen FTP-Erweiterungen für FTP.COM, so dass beide gut miteinander funktionieren.

Die nächste Variante ist die Nutzung eines Netzwerk-Servers, welcher ausschliesslich für die Netzwerk-Teilnehmer und/oder im Internet verschiedene Dienste anbietet. Jedes Server-Betriebssystem enthält natürlich auch einen FTP-Server, welcher dann genauso verwendet werden kann, wie bei der ersten Variante. Wenn man den FTP-Server auch für die Internet-Nutzung freigibt, funktioniert der Zugriff auch von ausserhalb.

Eine weitere sehr interessante Variante ist der Einsatz eines NAS (Network Attached Storage) als Server-Ersatz, siehe Wikipedia. Das sind direkt an das Netzwerk angeschlossene Speicher, welche meist auch den Zugriff per FTP gestatten und damit wie die beiden ersten PC-basierten Varianten benutzt werden können.

Die einfachste und kostengünstigste Variante ist die "Vergewaltigung" des heimischen Internet-Routers als FTP-Server, der läuft in der Regel sowieso rund um die Uhr. Auch für diesen Zweck lassen sich z.B. die aktuelleren Modelle der Fritz!Box-Familie von AVM einsetzen, wo der FTP-Server über die Linux-Firmware bereitgestellt wird und mit wenigen "Klicks" per Webbrowser eingerichtet werden kann. In den Service-Portalen von AVM zu den einzelnen Modellen findet man alle dafür notwendigen Informationen. Zusammen mit der Möglichkeit eine eigene Internet-Domain bei einem freien DNS-Provider durch die Box aktualisieren zu lassen, kann man diesen FTP-Server von aussen bequem erreichbar machen. Der vierte Link im Abschnitt "Einführung" erklärt in den FTP-Artikeln die prinzipielle Vorgehensweise.

Die Fritz!Box bietet auch die Möglichkeit, den LAN-Zugriff lesend und schreibend und den Internet-Zugriff nur lesend zuzulassen. Damit hat man zum Nulltarif eine sparsame und recht sichere Möglichkeit für den gegenseitigen Datenaustausch zur Verfügung. Der persönliche PC muss dann nicht eingeschaltet sein, da der FTP-Server auf dem Router läuft und es wird nie direkt aus dem Internet auf den perönlichen Rechner zugegriffen. Die kleinen CP/M-Dateien beeinträchtigen die Box nicht, das kann sie nebenbei mit abwickeln. Der von AVM verwendete FTP-Server hat einen kleinen Nachteil, die Zeitstempel bleiben nur beim Herunterladen von Dateien erhalten.

Mit FTP.COM lassen sich nun auch andere Projekte praktisch umsetzen. Durch die direkte Nutzung des Internets für den Austausch von Daten und Programmen, macht es endlich Sinn, per FTP ein zentrales Software-Verzeichnisses für die KC's aufzubauen. Jeder KC mit M052 hat dann unter CP/M direkten Zugriff darauf und das stellt auch den wichtigsten Mehrwert des Programmes dar.

Ich habe dort schon mal den Anfang gemacht - anlässlich der Veröffentlichung von FTP.COM ist das KC85 Labor ab sofort per "Anonymous"-FTP erreichbar und bietet so einen schnellen und effizienten Zugriff auf alle Dateien des Downloadbereiches ohne Klickorgien :-). Wie das mit einem KC85 oder anderen CP/M Computern und FTP.COM funktioniert, steht in der Hilfe zu dieser Webseite.

 

KC85 Labor

 

Das FTP.COM Programm, die o.g. Beispiel-Skripts und die ausführlichen Beschreibungen in englisch und deutsch befinden sich in den fertigen "KCNet Software ... " Paketen. Die CP/M-Quelltexte wurden dem aktuellen "KCNet Quelltexte ... " Paket hinzugefügt. Dort gab es die folgende Änderungen:

  • die bisherige Konfigurationsdatei OPTION.INC wurde in KCNET.INC umbenannt und enthält jetzt getrennt die Terminal-Kodes für Input (Tastatur) und Output (Konsole), dadurch ist es jetzt möglich, andere Tasten der eigenen Tastatur für die gewünschte Eingabe-Funktion zu verwenden, indem man den entsprechenden Tastenkode in der dritten Spalte anpasst
  • die bisherige MAKE.SUB heisst jetzt MAKE-DR.SUB und übersetzt mit Hilfe von M80 (MS) und LINK131 (DR)
  • zusätzlich gibt es jetzt noch die MAKE-MS.SUB, welche die Übersetzung aller Programme mit Hilfe von M80 (MS) und L80 (MS) ermöglicht

Im Vorfeld der Veröffentlichung wurden Tests mit einigen K1520-Bürocomputern durchgeführt. Da FTP.COM durch die eigene editierbare Kommandozeile mehr Tasten(kodes) als die bisherigen Netzwerkprogramme benötigt, kommt es zu nicht direkt behebbaren Problemen mit den bei den KC85 CP/M's benutzten Tastaturkodes. Eine Eingabe mit Hilfe von CTRL+Taste ist zwar möglich und funktioniert mit den BC's auch aber auf Dauer ist das natürlich eher lästig und umständlich.

Wer andere Tasten seines Rechners nutzen will, muss, wie oben beschrieben, den gewünschten Tastenkode für jede Funktion per Software oder aus der Dokumentation ermitteln und in den Abschnitt "Keyboard-Codes (input)" der Konfigurationsdatei KCNET.INC in die dritte Spalte eintragen und das Programmpaket neu übersetzen. Da man anschliessend diese neu zugeordneten Tasten in allen Programmen verwenden kann, sollte man diesen kleinen einmaligen Aufwand auf sich nehmen.

Damit wünsche ich allen "KCNet"-Anwendern viel Spass beim Stöbern und Downloaden im Internet und vergesst zukünftig nicht, den PC mindestens einmal im Jahr einzuschalten, der langweilt sich sonst {#emotions_dlg.laughing} !

 

If FTP.COM is started without the "s" parameter, the operator will be greeted
with a Welcome message. Then you're in the interactive command line and can use
the available FTP.COM commands (see below). The following control functions are
available in the command line interface. The function mapping to a key on the
keyboard is set in column 3 of the file KCNET.INC:

SHIFT+Cursor left (^A) - Cursor to begin of line
Cursor left (^H) - Cursor left one char
Cursor right (^D) - Cursor right one char
SHIFT+Cursor right (^F) - Cursor to end of line

Tabulator (^I) - Complete command or show possible commands
Cursor up (^E) - Scroll backward through command history
Cursor down (^X) - Scroll forward through command history

Delete (^G) - Delete character under Cursor and shift left
Clear line (^Y) - Clear command line
Backspace (^_) - Delete character preceding Cursor and shift left

Enter (^M) - Execute command or finish input of parameters

Password input can not be edited, only the Clear line function is allowed. The
Tabulator and Scroll functions through the history are not available during the
input of parameters.

Available commands depend on the program status. Many commands are available
only, when you are connected to a FTP server.

During file transfers the command line remains active. So, for example, the
ABORT command can be sent to the server.

Disallowed commands are acknowledged with an error message.