software:vorstellung:exchanges:transfolio
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
software:vorstellung:exchanges:transfolio [05/02/2006 22:02] – 8088 | software:vorstellung:exchanges:transfolio [08/02/2023 22:02] (aktuell) – Credits am Seitenanfang eingefügt bttr | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== Einsatz und Funktionsweise des internen Datenübertragungsprogramms ====== | ====== Einsatz und Funktionsweise des internen Datenübertragungsprogramms ====== | ||
+ | Ursprungstext: | ||
===== Einführung ===== | ===== Einführung ===== | ||
Zeile 11: | Zeile 11: | ||
Auf der PC-Seite wird natürlich ebenfalls Software benötigt, die über die gegebene Beschaltung des Parallelports mit dem Portfolio kommunizieren kann. Atari lieferte hierzu mit dem Parallelportmodul das Programm FT.COM aus, das aber direkte I/ | Auf der PC-Seite wird natürlich ebenfalls Software benötigt, die über die gegebene Beschaltung des Parallelports mit dem Portfolio kommunizieren kann. Atari lieferte hierzu mit dem Parallelportmodul das Programm FT.COM aus, das aber direkte I/ | ||
- | |||
- | ===== TransFolio als Alternative zu FT.COM ===== | + | |
+ | |||
+ | ===== TransFolio als Alternative zu FT.COM ===== | ||
Mit TransFolio gibt es seit Anfang 2006 eine Alternative zu FT.COM, die für Windows und Linux verfügbar ist. Sie soll es vor allem Portfolio-Neulingen oder Gelegenheits-Nostalgikern erleichtern, | Mit TransFolio gibt es seit Anfang 2006 eine Alternative zu FT.COM, die für Windows und Linux verfügbar ist. Sie soll es vor allem Portfolio-Neulingen oder Gelegenheits-Nostalgikern erleichtern, | ||
- | Die aktuelle Version von Transfolio ist unter | + | Die aktuelle Version von Transfolio ist unter http://leute.server.de/peichl/ |
- | [[http://www.people.freenet.de/pei/ | + | |
- | erhältlich. | + | |
==== Systemvoraussetzungen ==== | ==== Systemvoraussetzungen ==== | ||
- | + | Das vorkompilierte TRANSFOLIO.EXE | |
- | Das vorkompilierte TRANSFOLIO.EXE benötigt für die Zugriffe auf den Parallelport | + | TRANSFOLIO.EXE verwendet die voreingestellte Port-Adresse 0x378. Insbesondere bei Verwendung einer PCI-Schnittstellenkarte kann die tatsächliche Adresse des Parallelports davon abweichen und muss dem Programm mit dem Kommandozeilenparameter -p < |
Die Linux-Version benötigt das Kernelmodul ppdev, das für die Parallelportgerätedateien / | Die Linux-Version benötigt das Kernelmodul ppdev, das für die Parallelportgerätedateien / | ||
- | Sowohl für Windows als auch für Linux kann man sich nötigenfalls eine Programmversion mit direkten I/ | + | Sowohl für Windows als auch für Linux kann man sich nötigenfalls eine Programmversion mit direkten I/ |
- | Zur Compilierung eignet sich unter Linux (z.B.) gcc 3.3.4. Die Windows-Version wurde mit dem Compiler von Digital Mars (ftp://ftp.digitalmars.com) generiert, der ohne Installation auch mit Wine unter Linux lauffähig ist. | + | Zur Compilierung eignet sich unter Linux (z.B.) gcc 3.3.4. Die Windows-Version wurde mit dem Compiler von [[http://www.digitalmars.com/|Digital Mars]] |
+ | |||
+ | |||
==== Bedienung von Transfolio ==== | ==== Bedienung von Transfolio ==== | ||
Zeile 35: | Zeile 38: | ||
< | < | ||
- | | + | |
Syntax: ./ | Syntax: ./ | ||
or ./ | or ./ | ||
- | -t Transmit file to Portfolio | + | -t Transmit file to Portfolio. |
- | -r Receive file from Portfolio | + | Wildcards are not directly supported but may be expanded |
+ | by the shell to generate a list of source files. | ||
+ | -r Receive file(s) from Portfolio. | ||
+ | Wildcards in SOURCE are evaluated by the Portfolio. | ||
+ | In a Unix like shell, quoting is required. | ||
-l List directory files on Portfolio matching PATTERN | -l List directory files on Portfolio matching PATTERN | ||
-f Force overwriting an existing file | -f Force overwriting an existing file | ||
-d Select parallel port device (default: / | -d Select parallel port device (default: / | ||
- | The Portfolio must be in server mode when running this program! | + | |
+ | - SOURCE may be a single file or a list of files. | ||
+ | In the latter case, DEST specifies a directory. | ||
+ | - The Portfolio must be in server mode when running this program! | ||
</ | </ | ||
- | Das Abrufen eines Verzeichnisinhalts des Portfolio vom PC aus ist mit der Kommandozeilenoption " | + | Damit eine Verbindung zum Portfolio aufgebaut werden kann, muss dieser zunächst in den Server-Modus gebracht werden (System/ |
~/src> ./ | ~/src> ./ | ||
- | TransFolio 0.6 - (c) 2006 by Klaus Peichl | + | TransFolio 0.8 - (c) 2006 by Klaus Peichl |
Fetching directory listing for a:\prg\*.* | Fetching directory listing for a:\prg\*.* | ||
ATMD.COM | ATMD.COM | ||
Zeile 70: | Zeile 80: | ||
~/src> ./ | ~/src> ./ | ||
- | TransFolio 0.6 - (c) 2006 by Klaus Peichl | + | TransFolio 0.8 - (c) 2006 by Klaus Peichl |
Initializing transfer... | Initializing transfer... | ||
Received 1368 of 1368 bytes | Received 1368 of 1368 bytes | ||
- | Die Übertragung in umgekehrter Richtung funktioniert analog unter Verwendung der Option " | + | Die Übertragung in umgekehrter Richtung funktioniert analog unter Verwendung der Option " |
- | Die Option -d bzw. -p (je nach compilierter Version) dient der Auswahl des Parallelports. In der Windows-Version und der Linux-Version mit direkten I/ | + | Die Option |
+ | |||
+ | |||
+ | |||
+ | ==== Mehrere Dateien gleichzeitig senden ==== | ||
+ | |||
+ | === Methode 1: Auflistung mehrerer Quelldateien auf der Kommandozeile === | ||
+ | |||
+ | Ab Version 0.9 kann man anstelle des Quelldateinamens (SOURCE) auch eine aus mehreren durch Leerzeichen getrennten Dateinamen bestehende Liste angeben. Der Zieldateiname (DEST) muss dann ein Directory bezeichnen. Dies funktioniert sowohl beim Senden (Kommandozeilenschalter " | ||
+ | |||
+ | ~/src> ./ | ||
+ | Transfolio 0.9 - (c) 2008 by Klaus Peichl | ||
+ | Transmitting file 1 of 2: text1.txt -> a: | ||
+ | Sent 440 of 440 bytes. | ||
+ | Transmitting file 2 of 2: text2.txt -> a: | ||
+ | Sent 1105 of 1105 bytes. | ||
+ | |||
+ | === Methode 2: Verwendung von Wildcards === | ||
+ | |||
+ | Der Einsatz von Wildcards (auch Jokerzeichen genannt), also " | ||
+ | |||
+ | ~/src> ./ | ||
+ | Transfolio 0.9 - (c) 2008 by Klaus Peichl | ||
+ | Transferring file 1 of 2: TEXT1.TXT | ||
+ | Received 440 of 440 bytes | ||
+ | Transferring file 2 of 2: TEXT2.TXT | ||
+ | Received 1105 of 1105 bytes | ||
+ | |||
+ | Beim Versenden mehrerer Dateien vom PC zum Portfolio können Wildcards nur in einer Shell eingesetzt werden, die die Expansion der Jokerzeichen übernimmt. Dadurch bekommt Transfolio vom System eine Liste der passenden Dateinamen als Teil der Kommandozeile übergeben, so dass dieser Fall auf die oben beschriebene Methode 1 zurückgeführt wird. Die Eingabeaufforderung von Windows ist an dieser Stelle leider unzureichend. | ||
+ | |||
+ | === Methode 3: Steuerung per Shellscript === | ||
+ | |||
+ | Um mehrere Dateien in einen Ordner auf den Portfolio zu kopieren, gibt es ein Shellscript für Linux. Für Windows wird es auch bald geben. | ||
+ | Dies kann man hier downloaden: http:// | ||
+ | Zum installieren einfach downloaden und "chmod 777 tfdir.sh" | ||
+ | Ohne Parameter kann man interaktiv die Ordner angeben: | ||
+ | |||
+ | ~/tmp# ./ | ||
+ | Welches Verzeichnis soll kopiert werden? | ||
+ | /tmp/bla | ||
+ | In welchen Pfad auf den Portfolio, Ordner muessen vorher erstellt werden! | ||
+ | a:\bla | ||
+ | TransFolio 0.8 - (c) 2006 by Klaus Peichl | ||
+ | Initializing transfer... | ||
+ | Sent 1156 of 1156 bytes. | ||
+ | TransFolio 0.8 - (c) 2006 by Klaus Peichl | ||
+ | Initializing transfer... | ||
+ | Sent 367 of 367 bytes. | ||
+ | |||
+ | Oder mit Parameter: | ||
+ | |||
+ | ~/tmp# ./tfdir.sh /tmp/bla/ a:\bla | ||
+ | TransFolio 0.8 - (c) 2006 by Klaus Peichl | ||
+ | Initializing transfer... | ||
+ | Sent 1156 of 1156 bytes. | ||
+ | TransFolio 0.8 - (c) 2006 by Klaus Peichl | ||
+ | Initializing transfer... | ||
+ | Sent 367 of 367 bytes. | ||
+ | |||
+ | Die -h Page: | ||
+ | Dieses Script sendet alle Dateien die in einen Ordner sind mithilfe von transfolio an den Atari Portfolio | ||
+ | Ohne Parameter startet es interaktiv und fragt die Pfade ab | ||
+ | Mit Parameter: | ||
+ | Parameter 1 = Quellordner | ||
+ | Parameter 2 = Zielpfad, der Ordner muss aber vorher auf den Pofo existieren! | ||
+ | | ||
+ | Bei Bugs oder Probleme: chiaki_ai@gmx.de | ||
===== Das Datenübertragungsprotokoll des Portfolio ===== | ===== Das Datenübertragungsprotokoll des Portfolio ===== | ||
Zeile 143: | Zeile 219: | ||
=== Datei anfordern === | === Datei anfordern === | ||
- | Der erste Schritt vor der Übertragung einer Datei besteht darin, | + | Der erste Schritt vor der Übertragung einer Datei besteht darin, |
- | ^ Offset ^ Inhalt | + | ^ Offset |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | ... | + | | ... |
- | | 3+len | 00 | + | | |
- | | ... | + | | ... |
- | | | + | | 81 | ... |
- | Der Portfolio antwortet hierauf mit einem 11 Byte langen Datenblock, der u.a. die Dateilänge enthält: | + | Der Portfolio antwortet hierauf mit einem 11 Byte langen Datenblock, der u. a. die Dateilänge enthält: |
- | ^ Offset | + | ^ Offset |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | 10 | n-HighHigh |
+ | |||
+ | Direkt im Anschluss folgt die Übertragung der Nutzdaten in einem oder mehreren Datenblöcken. Die Anzahl der benötigten Datenblöcke hängt von der Dateigröße und der Puffergröße des Portfolio ab. Die Puffergröße wiederum ist abhängig vom Arbeitsspeicher des Portfolio und liegt typischerweise bei 7.000 hex Byte = 28.672 Byte. | ||
- | Direkt im Anschluss folgt die Übertragung der Nutzdaten in einem oder mehreren Datenblöcken. Die Anzahl der benötigten Datenblöcke hängt von der Dateigröße und der Puffergröße des Portfolio ab. Die Puffergröße wiederum ist abhängig vom Arbeitsspeicher des Portfolio und liegt typischer Weise bei 7000 hex Byte = 28672 Byte. | ||
Wurden alle Datenblöcke empfangen, schließt der Empfänger die Kommunikation durch folgenden Datenblock ab: | Wurden alle Datenblöcke empfangen, schließt der Empfänger die Kommunikation durch folgenden Datenblock ab: | ||
- | ^ Offset ^ Inhalt | + | ^ Offset |
- | | | + | | |
- | | | + | | |
- | | | + | | |
=== Datei versenden === | === Datei versenden === | ||
Zeile 182: | Zeile 259: | ||
Beim Übertragen einer lokalen Datei zum Server wird als erstes ein Datenblock gesendet, der insbesondere den Zieldateinamen und die Dateilänge beinhaltet: | Beim Übertragen einer lokalen Datei zum Server wird als erstes ein Datenblock gesendet, der insbesondere den Zieldateinamen und die Dateilänge beinhaltet: | ||
- | ^ Offset | + | ^ Offset |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | 10 | n-HighHigh |
- | | | + | | 11 |
- | | ... | + | | ... |
- | | 11+len | 00 | + | | 11+len |
- | | ... | + | | ... |
- | | | + | | 89 | ... |
Der Server antwortet mit 3 Byte, die darüber Aufschluss geben, ob die Datei auf dem Server schon vorhanden ist und in wie großen Blöcken der Dateiinhalt versendet werden kann: | Der Server antwortet mit 3 Byte, die darüber Aufschluss geben, ob die Datei auf dem Server schon vorhanden ist und in wie großen Blöcken der Dateiinhalt versendet werden kann: | ||
- | ^ Offset ^ Inhalt | + | ^ Offset |
- | | | + | | |
- | | | + | | |
- | | | + | | |
Gegebenenfalls kann der Sender die Datei mit folgendem Kommando überschreiben lassen: | Gegebenenfalls kann der Sender die Datei mit folgendem Kommando überschreiben lassen: | ||
- | ^ Offset ^ Inhalt | + | ^ Offset |
- | | | + | | |
- | | | + | | |
- | | | + | | |
Wenn das Überschreiben vom Benutzer nicht gewünscht wird, beendet er die Kommunikation durch das Abbruchkommando: | Wenn das Überschreiben vom Benutzer nicht gewünscht wird, beendet er die Kommunikation durch das Abbruchkommando: | ||
- | ^ Offset ^ Inhalt | + | ^ Offset |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | Sofern die Übertragung nicht abgebrochen wurde, können jetzt die Nutzdaten in einem oder mehreren Blöcken versendet werden. Die maximale Blocklänge richtet sich nach der Puffergröße, | + | Sofern die Übertragung nicht abgebrochen wurde, können jetzt die Nutzdaten in einem oder mehreren Blöcken versendet werden. Die maximale Blocklänge richtet sich nach der Puffergröße, |
- | ^ Offset ^ Inhalt | + | Sobald alle Datenblöcke erfolgreich transferiert wurden, quittiert der Server schließlich noch einmal mit einer 3-Byte-Sequenz: |
- | | | + | |
- | | | + | ^ Offset |
- | | | + | | |
+ | | | ||
+ | | | ||
- | ---- | ||
- | Klaus Peichl, 2006-02-05 |
software/vorstellung/exchanges/transfolio.1139176342.txt.gz · Zuletzt geändert: 16/02/2024 17:02 (Externe Bearbeitung)