~B~U3Kurzanleitung zu ~IHackFax~I0 Version 1.20~N ~UWas ist ~IHackFax~I0?~N ~IHackFax~I0 ist ein Programmpaket fr die Atari/TOS Computer und ein ZyXEL Fax-Modem. Mit Hilfe dieses Programmpaketes ist es m”glich, Fax Seiten zu Senden, zu Pollen, zu Empfangen, Anzuschauen, zu Drucken und Weiterzuverarbeiten. ~IHackFax~I0 ist Freeware. D.h. man darf das Programmpaket unentgeltlich bentzen und beliebig oft kopieren und weitergeben. Die Weitergabe ist nur gestattet, wenn dafr keine Gebhren oder sonstige Zahlungen verlangt werden. Eine Verbreitung ber Mailboxen ist erwnscht. Freeware bedeutet in diesem Fall aber auch, dass man die H”he des Anerkennungsbeitrages an die Autoren frei w„hlen kann. Die Adresse fr Ueberweisungen o.ae. befindet sich am Ende dieses Textes. ~IHackFax~I0 wurde von Helmut E. Neumann und Markus Bubendorf entwickelt. Bei Problemen, Fragen, Fehlermeldungen und Verbesserungsvorschl„gen wende man sich an Markus Bubendorf. Fehlermeldungen bitte immer mit einer genauen Beschreibung des Fehlers und der Umgebung (Version von ~IHackFax~I0, TOS-Version, ROM-Version des Modems, AUTO-Programme, Accesories, Konfigurationsdateien, Kommandozeile, Startprogramm etc.) ~P3 ~UWas geh”rt zu ~IHackFax~I0?~N Dieses Paket enth„lt nur die ausfhrbaren Programme mit den dazu geh”renden Dateien. Auf Wunsch kann jeder Interessierte den Sourcecode bei Markus beziehen. Dazu muss man lediglich eine formatierte Diskette und das Geld fr das Rckporto (Bitte Schweizer Franken!) an Ihn schicken. Dieses Paket enth„lt ~IHackFax~I0 in der Version 1.10. Dazu geh”ren die folgenden Dateien. Sollte eine oder mehrere der Dateien fehlen, so melde Dich bei Markus mit der Angabe, wo Du das Paket bezogen hast. Datei Bemerkung ------------------------------------------------------------------- FAXVIEW.PRG Anzeige-, Druck- und Konvertierprogramm FAXVIEW.RSC Resource-File zu FaxView FAXVIEW.INF Gespeichertes Setup von FaxView RCVFAX.TTP Programm, um Fax-Seiten zu Empfangen SENDFAX.TTP Programm, um Fax-Seiten zu Senden POLLFAX.TTP Programm, um Fax-Seiten zu Pollen ASC2G3.TTP Konverter ASCII-->Fax-Seiten QFAX2G3.TTP Konverter fr Fax-Seiten vom QFax-Format ins ~IHackFax~I0 Format HACKFAX.CFG Konfigurationsdatei fr die *.TTP Programme FAX1628.FON Zeichensatz (16*28) fr ASC2G3 FAX0816.FON Zeichensatz ( 8*16) fr ASC2G3 FAX0814.FON Zeichensatz ( 8*14) fr ASC2G3 FAX0812.FON Zeichensatz ( 8*12) fr ASC2G3 FAX0716.FON Zeichensatz ( 7*16) fr ASC2G3 TELEFAX.SCN Graphik mit dem Schriftzug 'Telefax' HALLO.IMG Graphik fr BEISPIEL.TXT TIGER.IMG Graphik fr BEISPIEL.TXT READ_ME.TXT 'Startup' Informationen ANLEIT.TXT Dieser Text hier BEISPIEL.TXT Beispieltext fr ASC2G3 UPDATE.TXT Text mit Neuerungen gegenber „lteren Versionen FEHLER.TXT Bekannte Fehler DOTO.TXT Ideen fr weitere Versionen ~P3 ~UWie bedient man ~IHackFax~I0?~N Als allererstes ist die Datei HackFax.CFG an die eigenen Bedrfnisse und Gegebenheiten anzupassen. HackFax.CFG ist eine einfache Textdatei, die mit jedem Editor editiert werden kann. Der Aufbau der Datei ist in ihr selbst erkl„rt. ~P3 ~UAllgemeines~N Allen .TTP Programmen kann bzw. muss man Parameter in der Kommandozeile bergeben. Was erlaubt bzw. notwendig ist, ist bei den einzelnen Programmen aufgefhrt. Angaben ohne Klammern sind zwingend notwendig. Angaben in eckigen Klammern ([ und ]) sind optional; d.h. k”nnen verwendet werden, mssen aber nicht. Die folgenden Parameter sind bei allen .TTP Programmen m”glich: -v: Zeigt die Versionsnummer und das Compilationsdatum an. Das Programm wird anschliessend gleich wieder beendet. -h: Es wird eine kleine Hilfe zum Programm ausgegeben. Das Programm wird anschliessend gleich wieder beendet. config_modfier: Alle Angaben aus der Konfigurationsdatei k”nnen auch in der Kommandozeile angegeben werden. Die Kommandozeile hat dabei Vorrang vor der Konfigurationsdatei. Wenn man Leerzeichen verwenden will, so muss das ganze Statement in Anfhrungszeichen (") bergeben werden. Beispiel "RMODE = WAIT" Die .TTP Programme liefern bestimmte Return-Codes. Diese k”nnen von Shell- Scripts o.„. ausgewertet werden. Die Return-Codes sind in drei Gruppen aufgeteilt: 1. Programm wurde erfolgreich beendet. 2. Programm konnte seinen Auftrag im Moment nicht erfolgreich ausfhren. 3. Es trat ein nicht behebbarer Fehler auf. Folgende Return-Codes sind definiert: 0: Alles i.O. 1: Programm wurde mit -v gestartet 2: Programm wurde mit -h gestartet 50: Gegenseite ist besetzt (BUSY) 51: Es kam aus irgend einem Grunde kein CONNECT zustande 52: Das Modem hat festgestellt, das der Dialtone fehlt 53: Abbruch durch Benutzer 100: Modem gibt keine Antwort 101: Zu wenig Speicher vorhanden 102: Datei nicht gefunden 103: Fehler in der Konfiguration 104: Fehlerhafter Parameter in der Kommandozeile 105: Angegebene 'Nummer' ist gar keine -1 : Programm ist abgestrzt ~P3 ~UASC2G3.TTP~N Aufruf: asc2g3 [-v][-h] textfile [config_modifier] ASC2G3 konvertiert ein ASCII-Textfile in ein Fax-File. Dieses Fax-File kann anschliessend mit SENDFAX.TTP verschickt oder mit FaxView angeschaut werden. Die Konvertierung geschieht gem„ss den Angaben in HackFax.CFG. Der Filename des Fax-Files besteht aus dem Grundnamen des Textfiles plus der Endung FAX. Innerhalb des Textfiles sind gewisse Steuerm”glichkeiten mit Hilfe von Kommandos m”glich. Alle Kommandos bestehen aus dem Zeichen '~~' dem direkt ein Kommandobuchstabe folgen muss. Hinter dem Kommandobuchstaben folgen direkt die Parameter (falls vorhanden). Die Parameter k”nnen in vielen F„llen (z.B. bei ~~O, ~~P oder ~~B) weggelassen werden. In diesen F„llen werden sinnvolle Standardwerte eingesetzt. Folgende Kommandos sind m”glich: ~~Ln,m : Zeilenabstand neu setzen. n gibt die Anzahl der Zeilen vor den Buchstaben an. m gibt die Anzahl der Zeilen nach den Buchstaben an. ~~Pn : Neue Seite beginnen. Der Parameter n (0..9) gibt an, wie stark der Befehl wirken soll. Ohne eine Angabe wird auf jeden Fall eine neue Seite begonnen. Mit n gibt man an, ab welchem Fllungsgrad der Seite eine neue Seiten begonnen werden soll. n=1 ==> Wenn die Seite mehr als 10% voll ist, ..., n=9 ==> neue Seite, falls diese mehr als 90% voll ist. ~~Efile: Textfile 'file' an der aktuellen Position einsetzen. Nachdem file abgearbeitet wurde, wird mit der aktuellen Textdatei weitergefahren. Es k”nnen max. 8 Texte ineinander verschachtelt werden. ~~Cfile: Die Bearbeitung des aktuellen Textfiles wird beendet und es wird mit file weitergemacht. ~~Ofile, offset, magnification, anz_zeilen, from: Graphikdatei 'file' an der momentanten Position einfgen. Die Graphik wird ber den Text (wie Folien) gelegt. offset gibt den Offset vom linken Rand in Pixel an. Der Wert wird auf den n„chsten durch 8 teilbaren Wert gerundet. Bei einer Angabe von 0 wird die Graphik an der momentanen horizontalen Position eingefgt. Eine Angabe von -1 zentriert die Graphik. magnification gibt die vertikale Vergr”sserung an. Zul„ssige Werte liegen zwischen 1 und 9. anz_zeilen gibt an, wie viele Zeilen der Graphik max. eingelesen werden sollen. from gibt die Startzeile innherhalb der Graphik an. Unterstzte Graphikformate: DOODLE 400*640, IMG ~~Sfile, offset, magnification, anz_zeilen, from: Wie ~~O; die Graphik wird aber nicht ber den Text gelegt, sondern zwischen den Text eingefgt! ~~; : Kommentarzeile ~~: : Kommentarzeile, die aber auf den Bildschirm und in das LogFile ausgegeben wird. ~~Bn : Auf Fettschrift umschalten. Der Parameter n ist optional. Wird er angegeben, so gibt er den Grad der 'Fettheit' an. Zul„ssige Werte sind die Ziffern von 0 bis 9. ~B0 schaltet die Fettschrift aus. Wird n weggelassen, wird ein sinnvoller Defaultwert genommen. ~~In : Auf Schr„gschrift umschalten. Der Parameter n ist optional. Wird er angegeben, so gibt er den Neigungsgrad der Buchstaben an. Gr”ssere Werte ergeben eine gr”ssere Neigung. Negative Wert ergeben eine Neigung nach links. Zul„ssige Wert liegen zwischen -9 und 9. ~I0 schaltet die Schr„gschrift aus. Wird n weggelassen, so wird ein Wert von 5 eingesetzt. ~~Un : Buchstaben unterstreichen. Fr den Parameter n gilt das gleiche wie bei der Fettschrift. n gibt die Dicke des Striches bei 200lpi an. ~~Xn : Zeichenabstand auf n Pixel „ndern. Auch hier ist n optional. M”gliche Werte liegen zwischen -5 und 99. ~~N : Die Textattribute 'Fett', 'Schr„g' und 'Unterstrichen' werden zurck gesetzt. ~~DY : Die aktuelle Jahreszahl wird eingefgt. ~~DT : Der Monat wird als Text eingefgt. ~~DO . Der Monat wird als Zahl eingefgt. ~~DW : Der Wochentag wird eingefgt. ~~DD : Der Tag wird eingefgt. ~~DH : Einfgen der Stunde. ~~DM : Einfgen der Minute. ~~DS : Einfgen der Sekunde. ~~DI : Die eigene ID aus der Konfiguration wird eingesetzt. ~~DP : Die aktuelle Seite wird eingesetzt. ~~DE : Die Monate und Wochentage werden englisch ausgegeben. ~~DG : Die Monate und Wochentage werden nun deutsch ausgegeben. ~~ : Das Zeichen ~~ wird eingesetzt. ~P3 ~UQFAX2G3.TTP~N Aufruf: qfax2g3 [-v][-h] qfaxfile [qfaxfile...] hackfaxfile Die angegebenen QFax Dateien werden zu einer Datei zusammengefasst und in der Datei hackfaxfile im ~IHackFax~I0 Format gespeichert. Die Endung dieser Datei lautet immer auf .FAX. Sollte die Datei hackfaxfile bereits existiert, so werden die QFax-Files an diese Datei angeh„ngt. Die Konvertierung ist nur dann m”glich, wenn die Aufl”sung und die Kodierungsart in allen Dateien gleich ist. Rckgabewerte: 0: Konvertierung verlief ohne Fehler 1: Fehler beim Konvertieren ~P3 ~URCVFAX.TTP~N Aufruf: rcvfax [-v][-h][config_modifier][RMODE=betriebsart] Es werden ein oder mehrere Faxe empfangen. Wird keine Betriebsart in der Kommandozeile angegeben, so wird die Standardbetriebsart gem„ss der Konfigurationsdatei HackFax.CFG genommen. Ist beim Start von RCVFAX.TTP die Leitung CD (Carrier Detect) aktiv, so wird unabh„ngig von den Angaben immer die Betriebsart MAILER eingenommen. Die Betriebsart hat folgende Auswirkungen auf das Verhalten des Programmes: MAILER : Das Modem befindet sich bereits im Fax-Connect Zustand. Es kann sofort mit dem Empfangen der Faxseiten begonnen werden. Weder der INIT noch der RCVINIT String wird ans Modem geschickt. Die serielle Schnittstelle und das Modem muss vom aufrufenden Programm korrekt initialisiert worden sein. Die Parameter des Fax-Connects mssen noch im Puffer der seriellen Schnittstelle sein. Nach Empfang der Fax-Seiten wird das Programm beendet. IMMED : Das Modem und die serielle Schnittstelle wird initialisiert. Gleich anschliessend wird versucht, ein Connect zu erreichen. Bei einem Fax-Connect werden die Fax-Seiten empfangen. Bei einem sonstigen Connect wird das MAILER-Programm aus HackFax.CFG gestartet. Kommt kein Connect zustande, so wird das Programm beendet. Ebenso wird das Programm beendet, wenn die Fax-Seiten empfangen wurden und wenn das MAILER-Programm beendet wurde. WAIT : Es wird auf einen Anruf gewartet und nach der unter RING eingestellten Anzahl von RINGs entgegengenommen. Je nach Connect wird das MAILER-Programm gestartet oder die Fax-Seiten empfangen. Anschliessend geht das Programm wieder in die Warteschleife. WAITONE: In dieser Betriebsart wartet RCVFAX.TTP ebenfalls auf einen Anruf. Nachdem dieser beantwortet wurde, wird das Programm allerdings beendet. ~BAchtung: Das Aufrufen des MAILER-Programmes ist im Moment noch nicht implementiert!~N ~P3 RcvFax kann mit neueren Versionen von Binkley Term (neuer als Version 3.03) zusammen arbeiten. Sobald Binkley Term einen Fax Connect festgestellt hat, wird RcvFax aufgerufen, welches die Seiten empf„ngt. RcvFax erkennt selbstst„ndig, dass bereits ein Connect vorliegt und beginnt unmittelbar mit dem Empfang. Damit die Zusammenarbeit klappt, muss man wie folgt vorgehen. - RcvFax muss beim Programmstart die Datei HackFax.CFG finden. Am Besten man kopiert RCVFAX.TTP und HackFax.CFG in das gleiche Verzeichniss wie Binkley Term. - Der RCVPATH aus der Konfigurationsdatei HackFax.CFG muss vorhanden sein. - In BINKLEY.CFG ist die Zeile 'FAX rcvfax.ttp' einzugeben. - Der INIT-String von Binkley Term muss um '#B1+FCLASS=6' erweitert werden. Zyxel empfiehlt, diesen Teil ganz am Schluss des INIT-Strings anzugeben. Zudem muss das Modem so konfiguriert werden, dass es automatisch abnimmt (S0=1). - Irgendwo (Aber wo am Besten? Ich mache es im PREINIT-String) muss die Local-ID angegeben werden. Dazu ist #P mit nachfolgender Local-ID ans Modem zu senden. Achtung! Alles nach #P wird vom Modem als ID interpretiert! ~P3 Um RcvFax zusammen mit Connect zu betreiben, ist in den Anrufbeantworteroptionen bei Fax-Epmfang ein Script zu starten, welches in den Pfad von RcvFax wechselt und dieses mit "RcvFax RMODE=IMMED" started. Das Script sollte keine Zeichen ans Modem senden. ~P3 ~USENDFAX.TTP~N Aufruf: sendfax [-v][-h] nummer faxfile [config_modifier] Die Datei faxfile wird an das Fax-Ger„t unter der Nummer 'nummer' geschickt. Unabh„ngig davon, ob die Datei fehlerfrei verschickt werden konnte oder nicht, wird das Programm nach einem Anruf beendet. Wenn innerhalb der Nummer Leerzeichen verwendet werden (z.B. 123 89 05), so muss die ganze Nummer in Anfhrungszeichen " gesetzt werden. Innerhalb der Nummer k”nnen auch andere Zeichen als nur Ziffern verwendet werden. Anstatt einer Nummer kann man auch einen Namen es dem Telephonbuch angeben. Das Telephonbuch hat den Namen HACKFAX.NUM und muss sich irgendwo befinden, wo es von HackFax gefunden wird. Der Aufbau ist in der Beispielsdatei beschrieben. ~P3 ~UPOLLFAX.TTP~N Aufruf: pollfax [-v][-h] nummer [config_modifier] Es wird versucht ein Fax vom Fax-Ger„t unter der Nummer nummer zu empfangen. Wie bei sendfax wird nach einem Anruf das Programm beendet. Ebenfalls wie bei sendfax muss die Nummer eventuell in Anfhrungszeichen gesetzt werden! ~P3 ~UFAXVIEW.PRG~N Mit FaxView kann man erstellt Fax-Dateien vor dem Versenden kontrollieren und empfangene Fax-Seiten anschauen. Das Programm kann zus„tzlich zu den ~IHackFax~I0 Dateien auch die Fax-Dateien von ZFAX (MS-DOS Programm) und QFax verarbeiten. Die einzelnen Menueintr„ge haben folgende Bedeutung: Open: Es kann eine neue Datei angew„hlt werden, die dann angezeigt wird. Info: Zeigt Informationen zur aktuellen Seite an. Copy: Die aktuelle Seite wird in der aktuellen Darstellung ins Clipboard kopiert. Das Clipboard muss vorhanden und eingerichtet sein! Save: Speichert die Seite in der 1:2 Darstellung Save/2: Speichert die Seite in der 1:1 Darstellung. Print Page: Die aktuelle Seite wird ausgedruckt. Quit: FaxView wird beendet. Next Page: Anzeige der n„chsten Seite. Previous Page: Anzeige der vorhergehenden Seite. Go to Page: Direktes Eingeben einer Seitenzahl. Show 1:1: Seite normal darstellen. Show 1:2: Seite vergr”ssert darstellen. Flip Page: Seite kehren. Config: Diverse Einstellungen vornehmen. Save Config: Gemachte Einstellungen in der Datei FAXVIEW.INF speichern. Die einzelnen Seiten kann man zus„tzlichen zu den Schiebern an den Fenstern auch noch mit den Cursortasten verschieben. Normalerweise werden dabei kleine Schritte gemacht. Zusammen mit der Shift- bzw. mit der Control- Taste kann man gr”ssere Sprnge machen. Die n„chste Seite kann man auch dadurch darstellen lassen, dass man oder drckt. Wenn man eine Zifferntaste 0...9 drckt, so gelangt man direkt in die 'Go to Page' Dialogbox in der die entsprechende Ziffer bereits eingetragen ist. Wenn man ein paar Seiten berspringt, so mssen die dazwischenliegenden Seiten trotzdem dekodiert und angezeigt werden. ~P3 ~U~BWas, wenn etwas nicht wie gewnscht l„uft?~N Kein Programm ist fehlerfrei. Wer einen Fehler gefunden hat, soll mir diesen bitte melden, damit ich ihn beheben kann. Bei Fehlermeldungen bitte IMMER die folgenden Informationen mitliefern: - Konfigurationsdatei (HACKFAX.CFG) - Computer-Modell, TOS Version, AUTO-Programme, Accesories - ROM-Version des ZyXEL (ATI, ATI1) - Erzeugtes Logfile mit LOGLEVEL=5 Der Fehler muss von mir reproduzierbar sein. Dazu ben”tige ich die verwendeten Dateien. Ausserdem ist das Programm danach zu untersuchen, ob es ev. nur zusammen mit einem AUTO-Programm bzw. einem Accessory Probleme macht. ~P3 ~U~BAusblick~N Fr zuknftige Versionen von HackFax sind die folgenden Aenderungen und Erweiterungen geplant. Bitte teilt mir mit, welche Aenderung ich mit Vorrang realisieren soll und welche Aenderungen weniger wichtig sind. Bitte bedenkt aber auch, dass HackFax Freeware ist und ich nicht unendlich viel Zeit zur Verfgung habe. Gewisse Aenderungen (z.B. komfortable Shell, aus der man alles einfach bedienen und konfigurieren kann) erfordern einfach sehr viel Zeit. Nun also die geplanten Aenderungen: - Die schon erw„hnte Shell. - Unterstzung des Drag & Drop Protokolls von MultiTOS. - Zusammenfassen von PollFax, SendFax und RcvFax zu einem Programm. - ACC-Betrieb dieser Programme. Damit ist der Empfang im Hintergrund m”glich. - Zeitversetztes Senden oder Pollen von Faxen. - MultiTOS Version, die Faxe im Hintergrund empf„ngt, sendet oder pollt. - Dynamische Speicherverwaltung von FaxView. Dadurch verbraucht es nur noch den wirklich ben”tigten Speicher. Zudem kann man 'beliebig' lange Faxe anzeigen und einen Seitencache realisieren. - Bei ASC2G3 k”nnen alle vier R„nder individuell eingestellt werden. - Kopf- und Fusszeilen bei ASC2G3. - Ansteuerung des Modems ber die Fax Class 2 Befehle. ~P3 Adressen (Fehlermeldungen bitte nur an Markus): Autor des Originalpaketes: Helmut E. Neumann Im Appensee 4 W6100 Darmstadt 23 BR Deutschland Weiterentwicklungen: Markus Bubendorf Kirchgasse 3 4124 Sch”nenbuch Schweiz E-Mail: Markus Bubendorf on 2:301/212.25 @ FidoNet Achtung: Neue EMail Adresse!!!!!!!!!!!!!!!!!!!!!!