====================================================================== Zodiac's Point (Version 1.2) vom 16.01.'92, 22:26 Programm und Anleitung von Ralph Seichter Copyright © 1991-92 by Ralph Seichter. All rights reserved! ====================================================================== Der Autor übernimmt ausdrücklich keinerlei Haftung für Schäden an Leib, Seele oder Geldbeutel des Anwenders, die aus der Nutzung oder Nichtnutzung des Programmes "Zodiac's Point", Version 1.2, (nach- folgend kurz ZPOINT genannt) entstehen könnten. ZPOINT 1.2 ist *NICHT* Public Domain oder Freeware, sondern SHAREWARE! Eine echte Registrierung gibt es für ZPOINT zwar nicht (also kein Update-Service mit Zusendung der neuen Versionen, die werden wohl künftig, falls alles glattgeht, über das FRAS-Netz laufen), aber eine Gebühr nach eigenem Ermessen (mindestens 5,- DM) des Nutzers halte ich für angebracht (meine Bankverbindung steht am Ende der Anleitung :-). Für diejenigen, die mit dem Begriff Shareware nichts anfangen können: Ein als Shareware gekennzeichnetes Programm darf beliebig kopiert und weitergegeben werden, sofern keine Änderungen am Programm selbst oder am Versandarchiv gemacht werden. Alle Rechte verbleiben allerdings beim Programmautor. Für eine gewisse Zeit (die bei einigen Programmen vom Autor vorgegeben wird) darf man das Programm kostenlos nutzen, um sich darüber klarzuwerden, ob es den eigenen Vorstellungen entspricht. Entscheidet man sich für eine regelmäßige Nutzung, überweist man eine Gebühr an den Autor, der diese Gebühr entweder festsetzt oder es dem Nutzer überläßt, den Wert anzusetzen. Aber bezahlen muß man. Leider scheint hier in Deutschland das Shareware-Konzept nicht recht Fuß zu fassen, aber wer ein kleines bißchen nachdenkt, wird einsehen, welche Möglichkeiten sich durch Shareware eröffnen. Also unterstützt die Autoren in ihrem Bemühen, gute und erschwingliche Software zu erstellen! Damit wird niemand reich, aber jede Zuwendung hilft... Es lohnt sich wirklich! ---------------------------------------------------------------------- ** 1 ** Allgemeines ---------------------------------------------------------------------- ZPOINT wird *grundsätzlich* vom CLI aufgerufen. Wer den aufrufenden CLI-Prozeß beenden (also das zugehörige Fenster schließen) will, muß ZPOINT mit "Run >NIL:" starten. Ich empfehle aber, das Fenster für die Ausgabe externer Utilities wie z.B. "lz" unangestastet zu belassen. Da ZPOINT zeitweise mehr als 15 KB Stack benötigt (4 KB sind Standard- einstellung für die CLI-Prozesse), *muß* mit Hilfe des Stack-Kommandos dieser Speicher bereitgestellt werden. Ansonsten erhält man je nach Systemkonfiguration die verschiedensten GURU's. Außerdem kann man die Arbeit beschleunigen, wenn der Reader und die Umlautwandler im RAM: stehen (fällt vor allem bei Systemen ohne Harddisk auf). Abgesehen davon wird das logische Verzeichnis 'T:' häufig benötigt. Ich benutze daher eine kleines Skript, das wie folgt aussieht: .key opt1,opt2,opt3 .bra { .ket } stack 20000 ; Stack nie zu knapp bemessen! if not exists ram:t makedir ram:t endif ; Alles bis zu diesem Punkt ist assign t: ram:t ; wichtig für die Geschwindigkeit! cd dh1:zp ; Hier ist mein ZPOINT-Verzeichnis. zpoint {opt1} {opt2} {opt3} ; Und jetzt Aufruf mit mögl. Optionen. Aufgerufen wird "Zodiac's Point" mit "zpoint [-EXIT] [-HUSH] [-LOGFILE] [-NETCALL] [-NOINDEX] [file]", wobei [file] der Name einer ->Konfigurationsdatei ist. Wird [file] nicht mit angegeben, so wird als Default die Datei "config.zp" benutzt. Ohne Konfigurationsdatei ist ZPOINT nicht lauffähig! Denkbar sind natürlich verschiedene Kon- figurationsdateien für verschiedene Server (aus diesem Grund ist die Möglichkeit ursprünglich überhaupt eingebaut worden). Die Option -NETCALL (das führende Minuszeichen ist wichtig) ermög- licht es, von ZPOINT automatisch die Menüpunkte 1 und 2 nacheinan- der ausführen zu lassen; d.h. Export und Netcall (1) und danach das Einsortieren der Empfangenen Daten (2). Falls die Option -NOINDEX *nicht* angegeben wird, werden automatisch nach dem Einsortieren alle nötigen neuen Brettindizes erstellt. Nach diesen Aktionen verbleibt ZPOINT im Hauptmenü, es sei denn, auch -EXIT wurde als Option angegeben. In diesem Fall wird das Programm beendet und ZPOINT kehrt zum aufrufenden Prozess zurück. Durch die Option -HUSH (englisch für "Psst!") ist es möglich, ZPOINT zu veranlassen, den Screen im Hintergrund zu öffnen und auf das Akti- vieren seines Fensters (was ein Umlenken des Tastatureingabestromes zur Folge haben kann) zu verzichten. Eine Mögliche Anwendung: Man tippt einen Text in einem Editor, während, beispielsweise durch DCron, im Hintergrund ZPOINT zwecks Netcall zeitgesteuert gestartet wird. Standard wäre nun, daß sich ZPOINT in den Vordergrund blendet und die Tastatureingabe vom Editor auf das eigene Fenster umleitet. Ist dies nicht erwünscht und wurde -HUSH benutzt, merkt der Benutzer kaum, daß sich ZPOINT an die Arbeit gemacht hat und kann in Ruhe weitertippen. Unanbhängig von den anderen Optionen erlaubt -LOGFILE in Verbindung mit dem Schlüsselwort "Logfile_Name" ein 'Logbuch' zu führen, in dem Programminterne Information gespeichert wird. ---------------------------------------------------------------------- ** 2 ** Die Konfigurationsdatei ---------------------------------------------------------------------- Wie bereits erwähnt, benötigt ZPOINT unbedingt eine Datei, die Infor- mationen über den Pointnamen, -sysop und ähliches enthält. Dies ist die sogenannte Konfigurationsdatei (kurz "KD"), die vor dem ersten Programmaufruf vom User einzurichten ist und die sich in demjenigen Verzeichnis befinden muß, von dem aus ZPOINT aufgerufen werden soll. Zulässige Einträge in einer KD sind: a) Leerzeilen b) Kommentare (gekennzeichnet durch ein ';' in der _ersten_ Spalte) c) Schlüsselworte und ihre Belegungen Der Anzahl der Zeilen in einer KD sind Grenzen gesetzt; ich habe aber leider vergessen, bei wieviel Zeilen eine Fehlermeldung kommt, und zum Nachgucken bin ich jetzt zu faul (ich tippe auf 99 Zeilen :-). Eine Beispiel-KD könnte so aussehen (ohne führende Leerzeichen!): ; Eine Konfigurationsdatei für den Server 'LINK-K' Server=LINK-K Anwahl=AT &D0 M0 S7=20 DP,0221558336 Passwort=GEHEIM Point=POINTNAME Pointsysop=R.SEICHTER Nachrichtenpfad=DH0:messages/ Reader=RAM:muchmore Senden=xprd -n send Empfangen=xprd -n -oOY receive Wie man sieht, haben die von ZPOINT beachteten Einträge die Form: 'Schlüsselwort=Belegung'. Bei den Schlüsselworten wird nicht zwischen Groß- und Kleinschreibung unterschieden, bei deren Belegung allerdings schon. Dies ist wichtig, da Server, Passwort, Pointname und -sysop nach derzeitiger Konvention in GROSSBUCHSTABEN angegeben werden müssen! ZPOINT wandelt diese Texte *nicht* automatisch, da evtl in Zukunft diese Beschränkung auf Grossbuchstaben entfallen wird (dies ist im neuen ZERBERUS 4 nach derzeitigem Stand bereits geplant). Zwischen Schlüsselwort und dem Gleichheitszeichen darf *niemals* ein Leerzeichen stehen! Grundsätzlich alles, was rechts vom Gleich- heitszeichen steht, wird als Belegungstext übernommen; dies schließt dann auch führende, eingebettete oder nachfolgende Blanks ein (gelesen wird bis zum nächsten Zeilenumbruch "Line Feed", hexadezimal 0x0A). Die letzte Zeile einer KD muß *immer* mit einem Zeilenumbruch beendet werden! Bei den Kommandos wie z.B. 'Reader=RAM:muchmore' kann der Suchpfad mit angegeben werden, muß aber nicht; ZPOINT verwendet dann den Suchpfad des aufrufenden CLI-Prozesses. Es folgt nun eine Liste der erkannten Schlüsselworte und ihrer Standardbelegungen. Die mit einem Stern (*) gekennzeichneten Schlüs- selwörter sind nicht vorbelegt und *müssen* daher in der KD eingetragen werden; bei den anderen ist dies optional. ------------------------------------- Schlüsselwort Standardbelegung ------------------------------------- (*) Anwahl Anwahlversuche -1 Auslagern_Bin RAM: Auslagern_Text RAM: Auto_Export Ja Auto_Import Ja Baud 2400 Connect CONNECT CR_Loeschen Nein Device_Name serial.device Device_Unit 0 Domain ZER Drucker PRT: Editor MEmacs Editor_Parm Empfangen XPRD -oOY r Empfangsarchiv CALLED.ARC Export ARC a Export_Parm Farbe_0 aaa Farbe_1 000 Farbe_2 fff Farbe_3 68b Font_Name topaz.font ID_erzeugen Ja Import ARC x Import_Parm Kopf_zeigen Ja Kopfzeile \a schrieb am \d: Kopfzeile_PM Du schriebst am \d: Logfile_Name logfile.zp Max_Nachrichten 1000 Nachrichtenpfad RAM: Origin origin.zp (*) Passwort (*) Point (*) Pointsysop Puffergroesse 65535 Reader More Reader_Parm Senden XPRD s Sendearchiv CALLER.ARC Seriennummer (*) Server Task_Prio Wartezeit (Sek.) 10 WB_nach_vorn Nein Zerberus_4 Nein Zitat '> ' ------------------------------------- ANWAHL: String, der beim Netcall an das Modem gesendet wird, um das Wählen zu veranlassen. Beispiel: 'Anwahl=ATDP,12345'. ZPOINT sendet nach diesem String ein einzelnes "Carriage Return" (hexa- dezimal 0x0D) zum Modem. Ab Version 1.2 kann der Anwahlstring auch noch zur Laufzeit (also zu Beginn eines Netcalls) bei Bedarf ver- ändert werden. ANWAHLVERSUCHE: Maximale Anzahl von Anwahlversuchen während eines Netcalls. Beispiel: 'Anwahlversuche=50'. Wenn ein negativer Wert angegeben wird (Standardbelegung), gibt es kein oberes Limit. AUSLAGERN_BIN: Für das Auslagern von Binärnachrichten kann ein Pfad vorgegeben werden, der im Requester natürlich auch übergangen werden kann. Bei der Belegung 'Auslagern_Bin=foo:bar/' wird versucht, das Verzeichnis "bar" auf Diskette "foo" zum Auslagern zu benutzen. Auslagern_Text arbeitet wie Auslagern_Bin, bezieht sich aber auf Textnachrichten. AUTO_EXPORT: Bei den meisten Packern ist es möglich, diese Option zu benutzen, die es erlaubt, bei Beginn eines Netcalls automatisch die zu exportierenden Daten zu verpacken, ohne dies explizit über den entsprechenden Menüpunkt selbst zu tun. Sollte bereits eine Datei mit dem Namen des ->Sendearchives existieren, wird der Export nicht ausgeführt (also keine Sorge bei fehlgeschlagenen Netcalls). Sofern allerdings ein Packer benutzt wird, der sich vom CLI abkop- pelt (wie z.B. PKAZIP), sind die Optionen Auto_Export und -Import abzuschalten! AUTO_IMPORT: Legt fest, ob beim Einsortieren die Netcall-Daten auto- matisch ausgepackt werden sollen (falls der verwendete Packer dies nicht ausschließt). Siehe auch Auto_Export. BAUD: Baudrate die zur Kommunikation mit dem Modem genutzt werden soll. Beispiel: 'Baud=9600'. Die Belegung darf nur aus Ziffern bestehen! Und noch ein Hinweis für die Benutzung von "XPRD" und ähnlichen Programmen: Die in den Preferences anzugebende Baudrate sollte auf den selben Wert eingestellt werden, da einige ältere Programme diese Information benötigen! Dies ist jedenfalls bei XPRD V1.02 der Fall. In der V1.07 kann mit der Option "-x2400" die Baudrate auf 2400 Baud festgelegt werden (oder jeden anderen benötigten Wert :-). CONNECT: String, den das Modem bei erfolgreichen Verbindungsaufbau an ZPOINT schickt. Standard für Hayes-Modems (und Standardbelegung im Programm) bei aktivierter erweiterter Meldung (X2) ist 'CONNECT'. Ich habe diese Option für die "Exoten" unter den Modems eingebaut, die sich nicht an den Hayes-Quasistandard halten; normalerweise ist sie nicht nötig. CR_LOESCHEN: Aus Geschwindigkeitsgründen wird beim reinen Lesen von Nachrichten standardmäßig darauf verzichtet, überflüssige CR-Codes zu entfernen. Programme wie More oder MuchMore haben damit auch keinerlei Probleme. Wenn allerdings zum Lesen der Nachrichten ein Editor wie z.B. "CygnusEd" genutzt wird, können die CR-Codes, die beim Drucken, Kommentieren und Auslagern natürlich in jedem Fall entfernt werden, zumindest unschön aussehen. Deshalb kann mittels 'CR_Loeschen=Ja' auch beim Lesen das Entfernen der CR-Codes er- zwungen werden. DEVICE_NAME: Name, der von OpenDevice() verwendet werden soll. Beispiel: 'Device_Name=modem0.device'. Die Standardeinstellung ist hier 'serial.device'. Bei den Devices bitte unbedingt die Klein- schreibung beachten! DEVICE_UNIT: Nummer der Unit, die von OpenDevice() verwendet werden soll (für Multi-Serial-Card). Beispiel: 'Device_Unit=1'. Die Standardeinstellung ist hier selbstverständlich '0'. DOMAIN: Netzwerkadressen haben die Form @. Um zukünftig mögliche Anbindungen des Z-Netzes an andere Netze zu unterstützen, erlaubt ZPOINT die Konfiguration aller drei "Teil- stücke" der Absenderadresse. Momentan gilt im Z-Netz der Text "ZER" als Domain-Identifikation; nach außen hin tritt das Netz aber teil- weise schon als "zer.sub.org" auf. Bis auf weiteres sollte die Standardeinstellung 'Domain=ZER' erst einmal beibehalten werden! DRUCKER: Name des Drucker-Device. Standardeinstellung ist 'PRT:', es könnte aber in einigen Fällen erwünscht sein, 'PAR:' zu benutzen. Desweiteren ist es möglich, hier einen Filenamen anzugeben, um die Druckerausgabe umzuleiten (Beispiel: 'Drucker=T:output'). EDITOR: Texteditor, der für das Erstellen von Nachrichten genutzt werden soll. Beispiel: 'Editor=MEmacs'. Es ist notwendig, daß sich der Editor *nicht* vom CLI abkoppelt! Der Cygnus Ed Pro trennt sich zwar üblicherweise vom CLI, kann aber durch die Option -KEEPIO daran gehindert werden (anzugeben unter ->EDITOR_PARM). Der voll- ständige Aufruf des Editors erfolgt mit " ". EDITOR_PARM: Optionale, zusätzliche Parameter für den Editor. Bei- spiel: 'Editor_Parm=-keepio' (für die Nutzung des Cygnus Ed Pro). EMPFANGEN: Name und Parameter des Programmes, das für das Empfangen der Netcall-Daten zuständig ist. Beispiel: 'Empfangen=XPRD r'. Es ist zu beachten, daß z.B. bei alten Versionen von XPRD die korrekte Einstellung der Preferences unabdingbar ist (siehe auch unter ->BAUD). EMPFANGSARCHIV: Name des vom Server zu empfangenden Archives. Beispiel: 'Empfangsarchiv=CALLED.ARC'. Nach Zerberus-Konvention wird als Name "CALLED.???" benutzt, wobei die Fragezeichen durch den Extensionsnamen des jeweiligen Packers zu ersetzen sind. Für "LHARC" also "CALLED.LZH", oder für "PKAZIP" der Name "CALLED.ZIP". ZPOINT wandelt übrigens den Archivnamen automatisch in Großbuchsta- ben um, da es evtl zu inkompatibilitäten mit einigen Servern kommen könnte (dies gilt auch für ->Sendearchiv). EXPORT: Name und Parameter des Packers, der die zu versendenden Daten in das ->Sendearchiv einlagern soll. Beispiel: 'Export=ARC a'. Wird als Packer ein Programm benutzt, das sich vom CLI abkoppelt (wie z.B. "PKAZIP"), funktionieren EXPORT und IMPORT nicht auto- matisch; siehe unter Kapitel 5: Manueller Im- und Export. EXPORT_PARM: Dient der Übermittlung von eventuell nötigen zusätzlichen Parametern an den Packer. Vollständiger Aufruf des Packers durch: " PUFFER " (intern). FARBE_0..3: Ermöglicht frei wählbare Farben für die vier BitPlanes. Die Angaben erfolgen in Hexadezimaler Notation 'XYZ', wobei das 'X' für den Rot-Anteil, 'Y' für den Grün-Anteil und 'Z' für den Blau- Anteil steht; Beispiel: 'Farbe_1=5c7' Die Standardeinstellungen entsprechen den Standardfarben der Work- bench 2.04. Die Zuordnungen der einzelnen Planes sind: Farbe_0 = Hintergrund, Farbe_1 = Schrift, Farbe_2 = Schrift in der Titelzeile und Gadgets, Farbe_3 = Markierungsbalken. Ab Version 1.2 können die Farben auch zur Laufzeit mittels eines Requesters verändert werden; diese Einstellungen werden jedoch nicht automatisch gespeichert (ein Eintrag in die Konfigurations- datei ist nach wie vor nötig). FONT_NAME: Anstelle der Standardschrift kann eine Schrift vom User angegeben werden. Bedingung hierfür ist, daß die Schrift eine Größe von acht Punkten hat (TOPAZ_EIGHTY) und keinesfalls eine Proportionalschrift ist. Für die gelungene Optik der selbstgewähl- ten Schrift kann ich keinerlei Gewähr übernehmen (einige Schriften werden absolut unmöglich aussehen; ich empfehle daher, die System- standardschrift zu lassen, auch weil die Geschwindigkeit der Textausgabe dann höher ist). Beispiel: 'Font_Name=modern.font' (Der Suffix .font ist wichtig!). ID_ERZEUGEN: Soll eine Nachrichten-ID vom Point erzeugt werden. Beispiel: 'ID_erzeugen=Ja'. Derzeit muß von den Points noch ein sogenannter "ID-String" für jede Nachricht erzeugt werden. In zukünftigen Zerberus-Versionen soll dafür allein der Server verantwortlich sein; mit Hilfe dieses Schlüsselwortes kann dann später falls nötig die ID-Erzeugung unterdrückt werden. ACHTUNG: Wenn die Option ZERBERUS_4 benutzt wird, wird die Erzeu- gung von ID's automatisch unterdrückt! IMPORT: Name und Parameter des Packers, der empfangenen Daten aus dem ->Empfangsarchiv auslagern soll. Beispiel: 'Import=ARC x'. IMPORT_PARM: Dient der Übermittlung von eventuell nötigen zusätzlichen Parametern an den Entpacker. Vollständiger Aufruf des Entpackers durch: " " (intern). KOPF_ZEIGEN: Soll der Nachrichtenkopf beim Lesen von Nachrichten an- gezeigt werden? Standardeinstellung ist 'Kopf_zeigen=Ja'. KOPFZEILE, KOPFZEILE_PM: Beim Kommentieren einer Nachricht wird eine Kopfzeile erzeugt, die der Benutzer frei definieren kann. Es stehen folgende Platzhalter, durch den sogenannten Backslash \ eingeleitet, zur Verfügung (immer bezogen auf die zu kommentierende Nachricht): \a = Absender \b = Betreff \d = Erstellungsdatum (tt.mm.jjjj) \e = Empfänger \i = ID-String \r = Routeweg \u = Uhrzeit der Erstellung (hh:mm) Dazu kommen noch folgende Platzhalter für Steuerzeichen: \f = Seitenvorschub (Form Feed) \n = Zeilenvorschub (Line Feed) \t = Tabulator (Tab) Ein Eintrag 'Kopfzeile=\a schrieb am \d um \u Uhr:' könnte also die folgende Kopfzeile erzeugen: R.SEICHTER@DARKNESS.ZER schrieb am 06.12.1991 um 14:18 Uhr: Der Unterschied zwischen KOPFZEILE und KOPFZEILE_PM liegt natürlich darin, daß sich das zweite Schlüsselwort auf das kommentieren von persönlichen Nachrichten bezieht, während ersteres beim Kommentiern öffentlicher Nachrichten benutzt wird. Unbekannte Platzhalter wie zum Beispiel \t werden ignoriert, und um den Backslash zu Erzeugen, muß er doppelt als \\ angegeben werden. LOGFILE_NAME: Falls die Option -LOGFILE benutzt wurde, wird unter dem hier spezifizierten Namen ein "Logbuch" geführt. Auch absolute Pfadangaben sind zulässig. Beispiel: 'Logfile_Name=RAM:logbuch.zp'. MAX_NACHRICHTEN: Anzahl der Nachrichten, die maximal in einem Brett abgelegt werden dürfen. Diese Einstellung hat direkte Auswirkungen auf den Speicherplatzbedarf von ZPOINT. NACHRICHTENPFAD: Basispfad, unter dem alle Verzeichnisse für die ->Brettdatei angelegt werden sollen. Beispiel: 'Nachrichten- pfad=DH0:msg/'. Es ist sehr wichtig, daß das letzte Zeichen im Pfadnamen entweder ein Doppelpunkt oder ein Schrägstrich '/' ist! Außerdem muß das hier angegebene Verzeichnis unbedingt vor der ersten Inbetriebnahme von ZPOINT von Hand eingerichtet werden (z.B. mittels 'makedir dh0:msg'). Um die weiteren Bretter kümmert sich ZPOINT dann selbst. Für den Nachrichtenpfad gibt es zwar die Standardbelegung "RAM:", die hat sich aber für die Lebensdauer der Bretter als nicht besonders förderlich erwiesen :-). Empfohlen wird aus Platz- und Geschwindigkeitsgründen ein Verzeichnis auf einer Festplatte. ORIGIN: Name einer Standard-Textdatei, die auf Wunsch an selbster- stellte Nachrichten des Types 'Text' angehängt wird. Beispiel: 'Origin=meine_unterschrift.zp'. Wenn die angegebene Datei nicht existiert, geht ZPOINT kommentarlos darüber hinweg. PASSWORT: Das vom Server ausgegebene Netcall-Passwort. Beispiel: 'Passwort=GEHEIM'. Es sollte hier auf Groß- und Kleinschreibung ge- achtet werden (wie auch bei POINT und POINTSYSOP)! Spätestens im ZERBERUS 4 wird wahrscheinlich streng zwischen G/K unterschieden; am Besten fragt man den Sysop des jeweiligen Servers. POINT: Der vom Server vergebene Pointname. Beispiel: 'Point=MEINER'. POINTSYSOP: Der vom Server vergebene Username. Beispiel: 'Point- sysop=M.MUSTERMANN'. PUFFERGROESSE: Größe des Nachrichtenpuffers. Beispiel: 'Puffer- groesse=45000'. Die Standardeinstellung der Puffergröße ist im Normalfall ausreichend; wenn es damit Probleme geben sollte, kann mit Hilfe dieses Schlüsselwortes der Puffer an die jeweilige Umgebung angepaßt werden. READER: Programm, das Standard-Textfiles Anzeigen kann. Beispiel: 'Reader=More'. Sinnvoll ist ein Reader, der sich automatisch nach vorne blendet; d.h. der einen eigenen Screen im Vordergrund öffnet oder den verdersten Screen (also den von ZPOINT) für seine Ausgaben nutzt. Ein Programm dieser Art ist beispielsweise "MuchMore". READER_PARM: Abschliessender Parameter, den der Reader mit auf den Weg bekommen soll. Beispiel: 'Reader_Parm=NODETACH' (für View80). SENDEN: Name und Parameter des Programmes, das für das Versenden der Netcall-Daten zuständig ist. Beispiel: 'Senden=XPRD s'. Siehe auch ->Empfangen. SENDEARCHIV: Name des vom Server zu sendenden Archives. Beispiel: 'Sendearchiv=CALLER.ARC'. Nach Zerberus-Konvention wird als Name "CALLER.???" benutzt, wobei die Fragezeichen durch den Ex- tensionsnamen des jeweiligen Packers zu ersetzen sind. Siehe auch ->Empfangsarchiv. SERIENNUMMER: Während des Netcall-Handshakes muß vom Point eine soge- nannte 'Seriennummer' mit Prüfsumme an den Server gesandt werden. Wie diese Nummer aussieht, ist prinzipiell völlig egal, sie muß nur genau vier Bytes lang sein. Beispiel: 'Seriennummer=4321'. ZPOINT benutzt interne Nummern als Standardeinstellung, die nor- malerweise nicht geändert werden müssen. Sollte der Server besagte Seriennummer nicht akzeptieren, empfiehlt es sich, in der KD einen Eintrag einer Vier-Zeichen-Seriennummer vorzunehmen (es müssen nicht einmal nur Ziffern sein, Buchstaben sind auch zulässig). Wenn der Server die eingestellte Seriennummer nicht akzeptiert, versucht ZPOINT übrigens, diese Nummer selbst zu modifizieren, bis der Server zufriedengestellt ist, daher sollte eigentlich das manu- elle Einstellen völlig entfallen (aber schaden kann es nicht). SERVER: Name des Serversystems, der nach derzeit gültiger Konvention in GROSSBUCHSTABEN anzugeben ist. Beispiel: 'Server=LINK-K'. Der Domain-Suffix (z.B. '.ZER') darf *nicht* mitangegeben werden! TASK_PRIO: Hiermit kann die Task-Priorität geändert werden, z.B. 'Task_Prio=3'. Wer nicht weiß, was dieser Befehl soll, sollte auch besser die Finger davon lassen (daher keine weitere Erklärung). WARTEZEIT: Zeit, die nach einem erfolglosen Anwahlversuch gewartet werden soll, bevor der nächste Versuch gestartet wird. Beispiel: 'Wartezeit=20'. Die Wartezeit wird in Sekunden angegeben. WB_NACH_VORN: Auf Wunsch kann zu Beginn des Sendens beim Netcall der Workbench-Screen nach vorn gebracht werden. Einige Übertragungs- programme öffnen nämlich ein Statusfenster auf diesen Screen, und das Schlüsselwort macht manuelles umblenden der Schirme unnötig (sofern das Statusfenster überhaupt von Interesse ist). ZERBERUS_4: Soll von den neuen Features des ZERBERUS(tm) 4 POINTCALL- Formates gebrauch gemacht werden? Hierbei ist zu beachten, daß die- ses Format noch nicht offiziell ist (Stand: 13.4.1991); man sollte erst GANZ SICHER sein, daß der Server dies unterstützt (z.B. Unter- scheidung von Groß- und Kleinschreibung bei Empfängernamen oder ob 1000 Zeichen lange Empfängernamen erlaubt sind). ZITAT: Beim Kommentieren von Nachrichten wird vor jeder Zeile des zitierten Textes der hier spezifizierte Text geschrieben. Für 'Zitatsymbol=AB C: ' sähe das dann beispielsweise wie folgt aus: AB C: Dies ist ein Zitat AB C: aus dem ursprünglichen Text. Hier wird auch wieder deutlich, daß schließende Blanks bei den Schlüsselworten durchaus erkannt und verarbeitet werden. ---------------------------------------------------------------------- Bei der Erstellung der Konfigurationsdatei sollte man Sorgfalt walten lassen. Ich weise nochmals darauf hin, daß das unter der Schlüssel- wort 'Nachrichtenpfad' angegebene Verzeichnis existieren muß, bevor ZPOINT zum ersten mal gestartet wird! ---------------------------------------------------------------------- ** 3 ** Das Brettverzeichnis ---------------------------------------------------------------------- ZPOINT benötigt zur Verwaltung, Neuerzeugung bzw. Löschung der Bretter in dem Verzeichnis, in dem es aufgerufen wird, eine Datei Namens "boards.zp". Bevor ZPOINT zum ersten mal gestartet wird, muß diese Datei mit Hilfe eines Texteditors erzeugt werden, und sie muß mindestens *eine* Textzeile enthalten; 'dummy=T:' wäre gut dafür geeignet. Hier sei gleich bemerkt, daß es kein Brett '/UNZUSTELLBAR' gibt. Wenn eine Nachricht nicht in ihr entsprechendes Brett einsor- tiert werden kann (d.h. der Nutzer wünscht nicht, daß das Brett einge- richtet wird), wird diese Nachricht als nicht existent behandelt. ZPOINT vermerkt in dieser Datei die Bretter in der Form 'Brettname=Pfad', wobei der Pfad auf einem Doppelpunkt oder einem Schrägstrich '/' enden *muß*. Da ZPOINT auf Wunsch automatisch die neuen Bretter unter dem Nachrichtenpfad anlegt, kann die oben erwähnte Dummy-Zeile *nach* dem ersten Einrichten neuer Bretter entfernt werden. Die Einträge im Brettverzeichnis werden von ZPOINT derzeit nicht alphabetisch sortiert; dies kann leicht mit einem Texteditor nachgeholt werden. Wem jetzt nicht ganz klar ist, wie die Datei aussieht, sollte sich "boards.zp" nach dem ersten Einsortieren von Daten einmal ansehen. Es ist durchaus erlaubt, 'von Hand' Eintragungen oder Streichungen vorzunehmen; nötig ist dies allerdings im Allgemeinen nicht. Ich persönlich habe in "boards.zp" vor dem Erstaufruf nur die Zeile 'R.SEICHTER=DH1:zmsg/privat/' eingetragen und das besagte Verzeichnis dann mittels 'makedir dh1:zmsg/privat' angelegt. Wenn eine Zeile aus "boards.zp" entfernt wird, wird das betreffende Brett -- obwohl vorhanden -- nicht mehr erkannt, und für neue Nach- richten, die in dieses Brett gehören, wird dann bei Bedarf ein neues Verzeichnis angelegt. ---------------------------------------------------------------------- ** 4 ** Tastenfunktionen / Maussteuerung / Online-Hilfe ---------------------------------------------------------------------- Entgegen früheren Versionen von ZPOINT ist ab Version 0.09 eine Online-Hilfe eingebaut. Abgesehen vom Hauptmenü (wo es wirklich nicht nötig ist), kann in jedem Menü durch drücken der Tasten oder eine Liste der derzeit möglichen Tastenfunktionen eingesehen werden. Desweiteren ist es auch möglich, das Anwählen von Brettern und Nach- richten sowie das Lesen von Nachrichten zusätzlich zur Tastatur auch mit Hilfe der Maus zu vorzunehmen. Menüpunkte im Hauptmenü müssen nur einmal angeklickt werden, Bretter und Nachrichten verlangen zum Lesen einen "Doppelklick" (Klick 1: positionieren der Markierung auf eine Nachricht oder Brett, Klick 2: lesen der Nachricht bzw. anwählen des Brettes). Was die Gadgets angeht: Ich hoffe, daß die grafische Repräsentierung der Funktionen selbsterklärend ist. Falls nicht, hier eine "Legende" (hoffentlich vergesse ich kein Gadget): o Der freundliche Herr links unten entspricht der Taste. o Die Seiten mit '+' oder '-' dienen zum Blättern (logisch). o Die Pfeile nach oben / unten setzen den Balken auf die erste bzw. letzte Nachricht (oder auf das erste bzw. letzte Brett). o Die Buchstaben entsprechen natürlich ihrem Tastatur-Pendant. o Das schwarz-weiße Rechteck dient zum Markieren einer Nachricht als gelesen (alt) bzw. ungelesen (neu). o Was bewirkt wohl das Fragezeichen? Natürlich . o Das Kreuz steht für (R.I.P. :-). Gelöschte Nachrichten können vor Verlassen des Brettes durch erneutes wieder zurückgeholt werden. Beim Löschen eines Brettes geht natürlich der gesamte In- halt verloren. o Das umgekippte Kreuz steht für 'Alle Nachrichten löschen'. Hier wird natürlich auch eine Sicherheitsabfrage vorgenommen. o Das schwarz-weiße Kreuz symbolisiert das selektive Nachrichten- löschen (alle alten oder alle neuen Nachrichten des Brettes). Das "beantworten" von Requestern ist auf mehrere Weisen möglich. Mit wird beispielsweise jeder Requester so verlassen, als hätte man "Abbruch", "Cancel" oder entsprechendes gewählt. wählt die sogenannte Default-Response aus (wird durch Fettdruck symbolisiert), falls es sich nicht um einen String-Requester handelt. Außerdem gelten die Tasten und als positive, die Tasten , und als negative Antwort auf Informations- oder Fehlerrequester. ---------------------------------------------------------------------- ** 5 ** Sonstiges ---------------------------------------------------------------------- ANWAHL: Wird die Anwahl des Servers unterbrochen, sendet ZPOINT ein einzelnes "Carriage Return" an das Modem. Sofern noch keine Verbindung zwischen Server und ZPOINT besteht, legt das Modem daraufhin normalerweise auf; man sollte sich jedoch nicht unbedingt darauf verlassen. Am Ende eines Netcalls legt ZPOINT *nicht* auf; es wird erwartet, daß der Server die Verbindung unterbricht (das ist so üblich). Während der Anwahl kann jederzeit mit zum nächsten Wählver- such gesprungen werden. Mit wir die Anwahl ganz abgebrochen. Da es in Ausnahmefällen bei einigen Modems zu Timing-Problemen kommen kann, ist es sinnvoll, das Hayes-Kommando 'E0' mit im Wählstring aufzunehmen; dadurch wird das Echo von Kommandos vom Modem abgeschaltet. EINSORTIEREN: Beim Einsortieren neuer Nachrichten ins System wird von ZPOINT *nicht* kontrolliert, ob sich bereits eine Nachricht mit der exakt selben ID im Brett befindet. Die neue Nachricht wird in jedem Fall an den bestehenden Brettinhalt angehängt. Ich habe diesen Check nicht implementiert, weil es a) ein Riesenaufwand ist (bin eben faul :-) und b) weil eigentlich der Server dafür verantwortlich ist, daß bei ihm keine Doubletten im System herumfliegen. Jedenfalls leidet niemand dadurch Schaden, da das doppelte Einsortieren von Netcall-Files, die Hauptursache für dieses Problem, von ZPOINT unterbunden wird (es sei denn, man überlistet das Programm :-). INDEXDATEIEN: Um die Verwaltung der Nachrichten in den Brettern schneller zu gestalten, legt ZPOINT bei Bedarf eine Datei Namens "index" in jedem Brett an; zusätzlich zur Datei "messages", die die eigentlichen Texte enthält. Von beiden Dateien sollte man *unbe- dingt* die Finger lassen, auch wenn sie Klartext-Informationen ent- halten. KOMMENTAR: ZPOINT unterscheidet streng, in welchem Brett dieses Kommando aufgerufen wird. Innerhalb eines Netzbrettes (gekennzeichnet durch den führenden Schrägstrich '/' im Namen) wird stets als Empfänger der Nachricht das betreffende Netzbrett eingetragen; alle Bretter ohne diesen Schrägstrich als erstes Zeichen werden als private Bretter behandelt. Handelt es sich um ein Privatbrett (in meinem Fall z.B. das Brett "R.SEICHTER"), wird als Empfänger eines Kommentars der Absender der kommentierten Nachricht eingesetzt. Sollte dieser im gleichen Serversystem eingetragen sein, entfernt ZPOINT automatisch den Suffix '@.', da der Kommentar sonst nicht ankommen würde (Die Server kennen leider ihre eigenen User nicht. Zumindest nach derzeitiger Konvention :-). Insgesamt entspricht also das Kommentieren in einem privaten Brett dem Nutzen der Funktion "Persönlicher Kommentar". MANUELLER IM- UND EXPORT: Wie bereits bei Erklärung der Schlüsserworte erwähnt, funktionieren Im- und Export nur, wenn der benutzte Packer sich nicht vom CLI abkoppelt. "ARC", "LHARC" oder "LZ" funktionie- ren problemlos; "PKAZIP" erfordert das Eingreifen des Benutzers. Angenommen, ich benutze "PKAZIP", dann müßte ich in etwa folgender- maßen vorgehen: Empfangsarchiv=called.zip <-- in der Konfigurationsdatei Sendearchiv=caller.zip Server=LINK-K Nachrichtenpfad=DH1:zmsg/ MANUELLER EXPORT: 1) Umbenennen von 'DH1:zmsg/zpSpool.LINK-K' in 'PUFFER' (die Pufferdatei gehört in das Verzeichnis, aus dem ZPOINT aufge- rufen wird). 2) Aufruf von "PKAZIP". Quelle: 'PUFFER', Ziel: 'caller.zip'. MANUELLER IMPORT: 1) Aufruf von "PKAZIP". Quelle: 'called.zip', Ziel: 'PUFFER'. 2) Daten einsortieren. Dieses manuelle Vorgehen mag jetzt zwar aufwendig aussehen, aber es ist damit immerhin möglich, "PKAZIP" zu verwenden. Und durch die bessere Packungsdichte kann das ganz ordentlich Gebühren sparen. Optimaler sind natürlich .LZH-Archive... Wie gesagt: ZPOINT ist nicht schuld, daß "PKAZIP" sich vom CLI abhängt. Und man kann eben auf derartige Programme nicht warten, wenn sie keine Nachricht über einen AREXX-Port schicken. ACHTUNG: Wenn Ex- und Import manuell vorgenommen werden sollen, ist es unbedingt notwendig, die Schlüsselworte "Auto_Export" und "Auto_ Import" auf "Nein" zu setzen, da das ZPOINT sonst vergeblich ver- sucht, diese Arbeiten zu übernehmen. ORIGIN: Es wurde viel über Sinn und Unsinn diskutiert; ich habe mich entschlossen, es dem User zu überlassen, ob er kilobyteweise Mülldaten an seine Nachrichten anhängen will (bin ich voreingenommen? Nie!). Wer allerdings ein Origin benutzt, bekommt auch die Textzeile "-- Zodiac's Point 1.2" an seine Nachrichten angehängt. Tja, alles oder nichts! :-) ROUTING: Ab Version 0.14 entfällt bei ZPOINT die Möglichkeit, daß sich der Point in den Routestring eintragen kann. Nach derzeitigem Stand ist dies nämlich unerwünscht und nach dem neuen ZERBERUS 4 ohnehin nicht mehr erlaubt. SCHREIBEN: Sofern man sich in einem Privatbrett befindet, wird man aufgefordert, den Empfängernamen selbst einzugeben. Die Eingabe wird von ZPOINT dann bei Bedarf in Großbuchstaben umgesetzt. Es ist natürlich zulässig, den Namen eines Brettes als Empfängernamen ein- zusetzen. Der Suffix '@.' wird hier genau wie bei "KOMMENTAR" abgetrennt, falls sich der Empfänger im gleichen Serversystem befindet. WARTEZEIT: Das Warten zwischen zwei Anwahlversuchen kann durch drücken der Taste übersprungen werden. bricht außer dem Warten auch den kompletten Netcall ab. ---------------------------------------------------------------------- ** 6 ** Veränderungen zu früheren Versionen ---------------------------------------------------------------------- v0.17: Die externen Tools 'ibm2ami' und 'ami2ibm' sind unnötig ge- worden, da jetzt alle Wandlungen auf vielfachen Wunsch intern vorge- nommen werden. Die zusätzliche Schlüsselworte "Auto_Export" und "Auto_ Import" haben die entsprechenden Menüpunkte überflüssig gemacht. Außerdem wird das Schlüsselwort "Zitatsymbol" durch "Zitat" ersetzt und erlaubt jetzt die Definition ganzer Strings zur Kennzeichnung von Zitaten (auf ein schließendes Blank o.ä. hat der User jetzt selbst zu achten). "Kopf_zeigen" erlaubt es, wahlweise die Anzeige des Nachrich- tenkopfes beim Lesen zu Unterdrücken. Beim Auslagern von Nachrichten ist es nun auch möglich, Daten an eine bestehende Datei anzuhängen. Abgesehen davon gibt's noch etliche Änderungen, die mir jetzt natür- lich nicht einfallen... :-) v0.18: Etliche interne Änderungen (etwa 3KB Code gespart). Schlüssel- wort 'CR_Loeschen' wurde zugefügt. Gesamtstabilität sollte jetzt höher liegen (wofür rackere ich mich denn sonst ab :-). v0.19: Wichtigste offensichtliche Neuerungen sind die Optionen -NETCALL und -EXIT, die, wie der Name schon nahelegt, einen automati- schen Netcall mit komplettem Einsortieren der neuen Daten ermöglichen. v1.0: Es ist soweit -- die Versionsummer 1.0 wurde endlich vergeben. Ich habe jetzt eigentlich alles ins Programm eingebaut, was ich haben wollte, so daß ich v1.0 für gerechtfertigt halte. Für den Benutzer sichtbar ist die Einführung der Option -NOINDEX, die verhindert, daß nach einem Netcall automatisch alle benötigten Indizes erstellt werden. Desweiteren ist die maximale erlaubte Anzahl von Nachrichten pro Brett (und damit im Rahmen auch der Speicherplatzbedarf für Tabel- len) nun vom Benutzer einstellbar. v1.1: Leider zeigte die v1.0 teilweise Probleme in der Verwaltung des allokierten Speichers sowie weitere (allerdings kleinere) Fehler oder Unglätten. Ich habe versucht, das zu beheben... Abgesehen davon ist das Schlüsselwort "Reader_Parm" dazugekommen, damit man z.B. an 'View80' Parameter wie 'NODETACH' weitergeben kann. Desweiteren wird bei der Umlautwandlung nun auch das Atari-sz (ASCII-Code 158) erkannt und korrekt umgewandelt. Durch das Schlüsselwort "ID_zitieren" kann der User nun selbst entscheiden, ob der Text "in Nachricht " im Kopf einer zitierten Nachricht auftauchen soll. Das Auffinden von defekten Nachrichten beim Einsortieren wird erleichtert; normalerweise kann auf das Byte genau angegeben werden, wo die defekte Nachricht beginnt und wo daraufhin irrtümlich versucht wurde, einen Nachrichtenkopf zu finden. Die Option -LOGFILE in Verbindung mit dem Schlüsselwort "Logfile_Name" ermöglicht das führen eines "Logbuches". Hierbei bin ich Wünschen in der Richtung was alles ins Logbuch gehört weiterhin offen. Selektives löschen von Nachrichten (also "alle alten" oder "alle neuen") ist jetzt anstelle des ausschließlichen Löschens aller alten Nachrichten implementiert. Der Benutzer kann jetzt außerdem eine selbstgewählte Schrift im Programm einsetzen (auch wenn ich diese Option für überflüssig halte ;-). V1.2: Die neuen Schlüsselworte "Auslagern_Text", "Auslagern_Bin", "WB_nach_vorn" und "Task_Prio" wurden zugefügt. Der Name für Spooldateien hat sich geändert; statt "spool." jetzt "zpSpool_". Das Schlüsselwort "ID_zitieren" ist weggefallen, da der Benutzer jetzt über "Kopfzeile" bzw "Kopfzeile_PM" seine Wünsche detaillierter umsetzen kann. Beim Versenden einer Nachricht kann man frei entscheiden, ob eine Kopie im aktuellen Brett abgespei- chert werden soll, oder das Verschicken genügt. Der Anwahlstring kann zur Laufzeit modifiziert werden (außer beim automatischen Netcall). Die voreingestellten Farben können per Requester verändert werden, außerdem hat sich das Format für die Farbdefinition von Dezimalzahlen zu Hex-Strings geändert (bitte nachlesen). Umstellung von req.library auf reqtools.library (tolles Teil, Nico!). Option -HUSH und Schlüs- selwort "Connect" eingebaut. Das Erzeugen von Betreff-Vorschlägen ("Re^xx") wurde verändert und optimiert. Vor dem Drucken wird getes- tet, ob der Drucker überhaupt verfügbar ist. Der lästige Fehler beim Einsortieren großer Binärnachrichten ist übrigens auch behoben; sorry daß das so lange gedauert hat. ---------------------------------------------------------------------- ** 7 ** Credits, Merits, Hall Of Fame ---------------------------------------------------------------------- Meinen Dank an SAS, Inc. für ihr wirklich großartiges SAS/C Lattice C Development System V5.10b (ohne den CodeProbe-Debugger wäre ich oft aufgeschmissen gewesen), sowie an Colin Fox und Bruce Dawson für ihre hervorragende req.library, die bis in die v1.1 Verwendung fand. Ab Version 1.2 gilt mein Dank Nico François für seine reqtools.library, deren Funktionen mir mächtiger (und optisch ansprechender) erschien. Desweiteren an Oliver Wagner für die xprzmodem.library und XPRD und an das Brett /Z-NETZ/RECHNER/AMIGA/PROGRAMMIEREN, oder besser die Leute darin, die mir viele Fragen beantwortet und damit "Zodiac's Point" erst möglich gemacht haben. Außerdem Danke an Jörg Zander, den allerersten Beta-Tester (der hat sich nämlich tatsächlich mit Zodiac's Point v0.01 herumgeplagt ;-) und selbstverständlich an alle anderen Beta-Tester (das würde eine längere Liste werden). Anregungen, Bug-Reports, Share-Gebühr und/oder Flames an: Ralph Seichter Zerberus: R.SEICHTER@DARKNESS.ZER Deutscher Ring 6 Internet: r.seichter@darkness.zer.sub.org W-5030 Hürth 1 (Germany) Kontonummer 1119 019 619, Kreissparkasse Köln, BLZ 371 502 19 ** Amiga(tm) · Eingetragenes Warenzeichen der Commodore-Amiga, Inc. ** Zerberus(R) · Eingetragenes Warenzeichen von Wolfgang Mexner. ** req.library · Copyright © by Colin Fox and Bruce Dawson. ** reqtools.library · Copyright © by Nico François. ** XPRD, xprzmodem.library · Copyright © by Oliver Wagner. -ENDE-