home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-03-21 | 47.9 KB | 1,375 lines |
-
- ----------------------------------------------
- | Anleitung zu TERMINAL 2000 / Sharp PC-1403 |
- ----------------------------------------------
-
- 1 ALLGEMEINES
- 1.1 Grundsätzliches
- 1.2 Haftungsausschluß
-
- 2 EINLEITUNG
- 2.1 Vorwort
- 2.2 Was Sie als erstes tun sollten
- 2.3 Dateien zum Programm
- 2.4 Installation des Treibers
- 2.5 Das Interface
-
- 3 PROGRAMMBESCHREIBUNG
- 3.1 Anwahl der Programmfunktionen
- 3.1.1 Drop-Down-Menü
- 3.1.2 Funktionstasten
- 3.1.3 Shortcuts
- 3.2 Zusätzliche Meldungen bei TOS 1.0 und 1.02
- 3.3 Meldungen in der Infozeile
- 3.4 Die Konfigurationsdatei
- 3.5 Parameter einstellen
- 3.6 Formate der Basic-Listings
- 3.7 RS-232-Parameter
- 3.8 EMULATOR.ACC
- 3.9 Der Katastrophenfall
-
- 4 ÜBERTRAGUNG
- 4.1 Klartext-Übertragung
- 4.1.1 Sharp ==> Atari
- 4.1.2 Atari ==> Sharp
- 4.2 Token-Übertragung
- 4.2.1 Sharp ==> Atari
- 4.2.2 Atari ==> Sharp
- 4.3 Fehler während der Übertragung
- 4.4 Fehler nach der Übertragung
- 4.5 Nach der Übertragung
- 4.6 Ein kleiner Schönheitsfehler
-
- 5 DATEI-OPERATIONEN
- 5.1 Aufruf eines Editors
- 5.2 Anmeldung eines Editors
- 5.3 Aufruf eines Programmes
- 5.4 Fehlerquellen beim Editor-/Programmaufruf
- 5.5 Programmstart über TROJA.PRG
- 5.6 Tip für Diskettenbenutzer
- 5.7 Datei ansehen/drucken
- 5.8 Datei kopieren
- 5.9 Renumber - Listing neu numerieren
- 5.10 Uppercase-Wandlung
- 5.11 Basic-Programm überprüfen
-
- 6 GFA-BASIC-KONVERTER
- 6.1 Allgemeines
- 6.2 Aufruf des Interpreters
- 6.3 Grenzen der Konvertierbarkeit
- 6.4 Konverter GFA- nach Sharp-Basic
- 6.5 Konverter Sharp- nach GFA-Basic
- 6.6 Ein Tip am Rande
- 6.7 Temporäre Dateien
-
- 7 TIPS UND TRICKS
- 7.1 Allgemeines
- 7.2 Zeilennummern
- 7.3 Reset
- 7.4 Batteriewechsel
-
- 8 ANHANG
- 8.1 Bekannte Probleme
- 8.2 Systemkonfiguration
-
- 9 ANPASSUNGEN AN ANDERE POCKETRECHNER
-
- 10 SCHLUßWORT
-
- 11 WARENZEICHEN
-
- ----------------------------------------------------------------
-
-
-
- 1 ALLGEMEINES
-
- 1.1 Grundsätzliches
-
- Dieses Programm ist frei kopierbar! Es muß aber immer der
- komplette Ordner mit weitergegeben werden. Eine gewerbliche
- Nutzung ist ausdrücklich untersagt und wird strafrechtlich
- verfolgt. Die Software darf nicht verkauft werden.
-
-
- 1.2 Haftungsausschluß
-
- Die Software, die Dokumentation, sowie die Bauvorschläge für das
- Interface wurden sorgfältig auf Fehlerfreiheit geprüft. Es wird
- daher keinerlei Haftung für irgendwelche Schäden übernommen, die
- sich, direkt oder indirekt, aus der Benutzung des Programmes, der
- Dokumentation oder des Interfaces ergeben.
-
-
-
- 2 EINLEITUNG
-
- 2.1 Vorwort
-
- Rechnerkopplungen, die den Atari mit Pocketcomputern verbinden,
- gibt es mittlerweile schon wie Sand am Meer. Terminal 2000 soll
- sich deshalb von diesen Produkten abheben. Im Vordergrund steht
- hier nicht der reine Datenaustausch, auch wenn dieses schon
- faszinierend genug sein kann. Vielmehr soll der Anwender bei der
- Programmentwicklung und -verwaltung weitestgehend unterstützt
- werden. Zum Bearbeiten der Basic- Listings kann man seinen
- Lieblingseditor oder gar den GFA-Basic-Interpreter von Terminal
- 2000 aus aufrufen. Die meisten Basic-Programme lassen sich so
- bereits vor der Übertragung unter GFA-Basic auf dem Atari testen.
- Daβ man sich um Zeilennummern nicht mehr kümmern braucht, wird
- man auch bald zu schätzen wissen. Und möchten man zwischendurch
- ein Spielprogramm aufrufen - kein Problem.
-
-
- 2.2 Was Sie zuerst tun sollten
-
- Bevor Sie Ihren Atari mit dem PC-1403 verbinden, sollten Sie
- unbedingt diese Anleitung studieren. So bleibt Ihnen unnötiger
- Ärger erspart.
-
-
- 2.3 Dateien zum Programm
-
- Die folgenden Dateien sollten sich auf Ihrer Diskette befinden:
-
- - TERM2000.PRG Das Programm Terminal 2000
- - TERM2000.RSC Resource-Datei
- - TERM2000.CFG Konfigurationsdatei
- - TERM_GFA.LIB Konvertierungsbibliothek
- - TROJA.PRG Utility zu Terminal 2000
- - TERM2000.TXT Anleitung (dieser Text)
-
- - TERM2000.IMG Schaltplan im GEM-Image-Format
- - TERM2000.PI3 Schaltplan im Degas-Format
- - ZEIGPLAN.PRG ANzeigeprogramm für TERM2000.PI3
- - sowie ein Treiberprogramm für PC-1403
-
- Die Datei TERM2000.RSC kann fehlen, wenn Terminal 2000 sich auch
- ohne sie aufrufen läßt.
-
- Dateien, die sich zusätzlich auf der Diskette befinden, werden
- dort beschrieben.
-
-
- 2.4 Installation des Treibers
-
- Zunächst einige Worte über die Notwendigkeit eines
- Treiberprogramms:
-
- Die übliche Art der Datenübertragung beim Sharp liegt in der
- Nutzung der Kassettensignale, die mit den Befehlen CLOAD und
- CSAVE gesteuert werden. Die Daten werden dabei in Töne gewandelt,
- die dann auf der Cassette gespeichert werden. Wer schon einmal
- Daten auf der Cassette gespeichert hat, weiß wie langsam dieses
- Verfahren ist.
-
- Das Treiberprogramm stellt dem Sharp eine, an den RS-232-Standard
- angelehnte, Schnittstelle zur Verfügung. Diese Schnittstelle
- befindet sich heutzutage nahezu an jedem Computer, so auch am
- Atari. Eine einfache und sichere Kommunikation ist so
- sichergestellt. Und noch was: die Übertragung ist mit 4800 Baud
- gegenüber den ca. 300 Baud der Cassettensignale sehr schnell.
-
- Die Installation:
- -----------------
-
- - Vorhandene Daten im Sharp sichern! (ausdrucken, auf Disk o.ä.)
-
- - Damit der Treiber auch nach einem NEW-Befehl noch im Sharp
- bleibt, muß er ausserhalb des Basic-Speichers untergebracht
- werden. Dafür ist zunächst der Anfang dieses Bereichs zu
- verschieben:
-
- Folgenden Befehl eingeben:
- für PC-1403 : POKE &FF01,&30,&E3
- für PC-1403H : POKE &FF01,&30,&83
-
- - Im PRO-Modus folgenden Befehl eingeben : NEW
-
- - Jetzt wird das Treiberprogramm in den Sharp eingetippt.
-
- Auf der Diskette befinden sich zwei Listings, eines für den
- PC-1403 (mit 8 kByte RAM) und eines für den PC-1403H (mit 32
- kByte RAM).
-
- Alternativ kann dieses auch mit CLOAD von CASSETTE, dem
- Diskettenlaufwerk CE-140F oder einem zweiten PC-1403(H)
- eingeladen werden, sofern es dort zur Verfügung steht.
-
- - Im RUN-Modus folgenden Befehl eingeben : RUN
-
- Der Sharp ist jetzt eine Weile beschäftigt. Wenn das Listing
- fehlerhaft eingegeben worden ist, erscheint eine entsprechende
- Meldung. In diesem Fall müssen die DATA-Zeilen im PRO-Modus noch
- mal überprüft werden.
-
- - Wer ein Casseteninterface oder ein Diskettenlaufwerk CE-140
- besitzt, sollte das Listing dort abspeichern. Nach einem
- Totalabsturz oder bei leeren Batterien müsste man sonst das
- erneut eintippen.
-
- - So, jetzt ist es geschafft.
-
- Das Basic-Listing ist noch im Speicher, es sollte nun mit NEW
- gelöscht werden!
-
- Achtung: Wenn jetzt mit MEM der freie Speicher angezeigt wird,
- ist dieser etwas kleiner als vor der Eingabe des Treibers. Dafür
- übersteht der Treiber aber auch jeden NEW-Befehl.
-
-
- 2.5 Das Interface
-
- Der Schaltplan des Interfaces befindet sich als Rasterbild in den
- Dateien TERM2000.IMG und TERM2000.PI3. Mit vielen "Malprogrammen"
- kann man sich den Plan auf den Bildschirm holen oder ausdrucken
- lassen. Das Programm ZEIGPLAN.PRG zeigt den Plan aus der Datei
- TERM2000.PI3 in der hohen ST-Auflösung auf dem Monitor.
-
- Auf einer kleinen Lochrasterplatine werden die 11-polige
- Stiftleiste und die Anpasselektronik aufgebracht. Der Stiftleiste
- gegenüber wird das 5-polige Kabel angelötet, an dessen anderem
- Ende die Sub-D-Buchse.
-
- Stückliste:
- -----------
- 4 1N4148 Si-Dioden ( oder Ersatztyp )
- 2 4k7 Widerstände
- 2 10k -,,-
- 1 100k -,,-
- 1 BC 548 C NPN-Transistor ( oder Ersatztyp )
- 1 11-polige Stiftleiste, Rastermaß 2,54 mm, 90 Grad gewinkelt
- 1 Lochrasterplatine
-
- 1 5-poliges Kabel ca. 2m lang, Abschirmung nicht notwendig
-
- 1 25- bzw. 9-polige Sub-Buchse
-
- Der Sharp übernimmt die Stromversorgung des Interfaces. Um einen
- minimalen Stromverbrauch zu gewährleisten, wurde für das
- Interface eine Schaltung entwickelt, die ohne integrierte
- Schaltkreise auskommt. Obwohl sich der Strombedarf auf die Zeit
- der Übertragung beschränkt, sollte man das Interface aufgrund von
- Restströmen bei Nichtbenutzung vom Rechner trennen.
-
- Der Anschluß des Interfaces dürfte keinerlei Schwierigkeiten
- bereiten. Der 25-polige Sub-D-Stecker wird am Atari ST an den
- sogenannten Modem-Port, einfacher gesagt: die serielle
- Schnittstelle, gesteckt. Die Modelle Mega STE und TT haben
- dagegen zwei 9-polige serielle Ports.
-
- Beim Anschluß des 11-poligen Steckers am Sharp ist darauf zu
- achten, daß alle 11 Steckerpins in die entsprechenden Buchsen
- kommen. Aufgrund der Konstruktion des Sharp ist es möglich, den
- Stecker um einen Pin versetzt einzuführen. Das Interface ist
- intern so geschaltet, daß im allgemeinen Schäden bei versetzt
- gestecktem Stecker nahezu unmöglich sind. Dennoch: Achten Sie auf
- einen korrekten Sitz des Steckers.
-
- Beim Anschluß, wie auch beim Entfernen des Interfaces, müssen
- beide Rechner ausgeschaltet sein. Ansonsten besteht die Gefahr,
- daß die Schnittstellen-Schaltkreise Schaden nehmen können.
-
- Noch einige Worte zur Schaltung:
- Beim Entwurf der Schaltung wurde auf folgende Punkte geachtet:
- - Minimaler Bauteileaufwand, dadurch minimale Bauteilekosten
- - Minimaler Stromverbrauch, dadurch minimale Batteriekosten
- - Hohe Funktionssicherheit zum Schutz der Elektronik im Sharp
- Selbst ein verdrehtes Einstecken am Sharp sollte keine Schäden
- verursachen
-
- Das Interface wurde an verschiedenen Atari-Rechnern erfolgreich
- betrieben, darüberhinaus auch auf einer MS-DOS-Kiste ( 386er AT,
- 25 MHz ).
-
-
-
- 3 PROGRAMMBESCHREIBUNG
-
- 3.1 Anwahl der Programmfunktionen
-
- Terminal 2000 ist auf drei verschiedene Arten zu bedienen :
- - Pull-Down-Menüs
- - Funktionstasten
- - Shortcuts
-
- Die Bedienung ist also mit als auch (fast) ohne Maus möglich.
-
-
- 3.1.1 Drop-Down-Menüs
-
- Die Drop-Down-Menüleiste mit den Oberbegriffen :
- Datei, Übertragen, Konverter, Parameter, Extras.
- Mit der Bedienung sollte eigentlich jeder vertraut sein.
-
- 3.1.2 Funktionstasten
-
- Die wichtigsten Routinen sind auch über die Funktionstasten
- aufrufbar. Die F-Tasten-Belegung wird nach Betätigung der
- HELP-Taste angezeigt.
-
-
- 3.1.3 Shortcuts
-
- Als Shortcuts werden hier Tastenkürzel bezeichnet, die in
- Verbindung mit der Control- oder Alternate-Taste eine gewünschte
- Programmfunktion anwählen. Die jeweiligen Shortcuts sind in den
- Pull-Down-Menüs hinter den Menüpunkten angegeben. So läßt sich
- beispielsweise durch die Tastenkombination Control-Q (Kürzel für
- Quit) das Programm beenden.
-
-
- 3.2 Zusätzliche Meldunge bei TOS 1.0 und 1.02
-
- Bei Dateioperationen wird von der Infozeile in der
- Dateiauswahlbox Gebrauch gemacht. DA diese aber in den
- TOS-Versionen 1.0 und 1.02 noch nicht existiert, wird stattdessen
- die entsprechende Meldung in einer kleinen Box ausgegeben, die
- nach zwei Sekunden selbsttätig verschwindet.
-
-
- 3.3 Meldungen in der Infozeile
-
- Bei den Aktionen 'Empfangen' und 'Senden' erscheint unter der
- Titelzeile noch eine Infozeile. Diese enthält eine frei
- konfigurierbare Meldung. Diese ist dazu gedacht, um
- beispielsweise den am Sharp auszuführenden Maschinenbefehl
- anzuzeigen. Sinnvollerweise sollte die Länge max. 9 Zeichen sein,
- da sonst ein Teil der Meldung durch die Fileselect-Box verdeckt
- wird.
-
-
- 3.4 Die Konfigurations-Datei
-
- Diese Datei wurde geschaffen, um das Pogramm flexibler zu
- gestalten. Sie enthält zur Zeit zwei unterschiedliche Abschnitte:
-
- a. Rechnerspezifische Meldungen / Parameter
- 1 - Rechnername
- 2 - Befehl zum Laden eines Listings über RS-232
- 3 - Befehl zur Ausgabe eines Listings über RS-232
- 4 - frei wählbarer Eintrag
- 5 - frei wählbarer Eintrag
- Der Rechnername kennzeichnet die CFG-Datei. Wird der Menüpunkt
- 'Hilfe' angewählt, erscheint eine Alert-Box, die die oben
- beschriebenen Einträge enthält.
-
- b. Token-Tabelle
- Hier sind die Sharp-Basic-Befehle aufgelistet, die als Token den
- ASCII-Codes 128 bis 255 entsprechen. Diese Informationen benötigt
- Terminal 2000 zur Token-Übertragung. Mehr Informationen zur
- Token-Tabelle im Kapitel "Token-Übertragung".
-
- Wenn keine Konfigurationsdatei geladen werden kann, wird Terminal
- 2000 mit den entsprechenden Default-Werten für den PC-1403H
- initialisiert.
-
- Modifikationen der Konfigurationsdatei sollten sehr gewissenhaft
- durchgeführt werden. Einträge sollten keine Kleinbuchstaben
- aufweisen. Es sollten keine Zeilen eingefügt oder gelöscht
- werden.
-
- Im Normalfall muß diese Datei aber nie geändert werden!
-
-
- 3.5 Parameter einstellen
-
- Die Parameter-Dialogbox stellt das programminterne Kontrollfeld
- dar.
-
- In ihr erhält man Informationen über:
- - freier Speicher für externe Programme, zum Kopieren von Dateien
- in Terminal 2000 usw.
- - TOS-Version
- - Pocketrechner, für den Terminal 2000 konfiguriert ist
- - Pfad/Name des Editors
- - Pfad/Name des Interpreters
- - Ausgabefilter gesetzt oder nicht gesetzt
- - RS-232-Parameter durch Terminal 2000 setzen oder nicht setzen
- - Start von externen Programmen über TROJA.PRG oder Programme
- hinzuladen
- - Grow- und Shrinkboxen ein oder aus
-
- Aktionen in der Übersicht-Box:
- - Anmelden eines Editors
- - Anmelden eines Interpreters
- - Ausgabefilter (de-)aktivieren
- - RS-232-Parameter durch Terminal 2000 (nicht) setzen lassen
- - Auswahl Programmstart über TROJA.PRG oder Programme zuladen
- - Konfiguration in TERM2000.INF sichern. Gesichert werden die
- Infos über: Editor, Interpreter, Filter, RS-232, Art des
- Programmstarts
- - Grow- und Shrinkboxen ein oder ausschalten
-
-
- 3.6 Formate der Basic-Listings
-
- Während der Arbeit mit Terminal 2000 hat man es mit 3
- unterschiedlichen Basic-Formaten zu tun.
-
- Das LST-Dateiformat entsteht durch Abspeichern eines im GFA-
- Basic-Interpreters entwickelten Programmes (SAVE,A).
-
- Das ASC-Dateiformat (ASC : ASCII-Datei ) entsteht nach einer
- Konvertierung des LST-Formates. Es entspricht dem Sharp-Basic,
- nur die Zeilennummern fehlen noch. In diesem Format, bzw. unter
- dieser Datei-Endung, sollten auch Programme, die im ASCII-Editor
- erstellt werden, abgespeichert werden.
-
- Das BAS-Format entspricht dem Sharp-Basic. Man erhält es, indem
- man ASC- und/oder BAS-Dateien mit der Renumber-Routine (Neu-)
- Numeriert. Dieses Dateiformat ist also zur Übertragung zum Sharp
- geeignet. Dateien, die vom Sharp empfangen werden, weisen
- natürlich ebenfalls dieses Format auf.
-
- Achtung: Das hier verwendete BAS-Dateiformat unterscheidet sich
- grundsätzlich von den BAS-Dateien des GFA-Basic! Ebenso kann
- Terminal 2000 mit Dateien der Endung .GFA nichts anfangen.
-
- Folgende Routinen nehmen eine Formatkonvertierung vor:
- - Renumber : ASC --> BAS sowie BAS-->BAS
- - GFA-->Sharp : LST --> ASC
- - Sharp-->GFA : BAS --> LST
-
-
- 3.7 RS-232-Parameter
-
- Die Konfiguration der RS-232-Parameter kann bei Bedarf mit den
- Utilities EMULATOR.ACC oder XCONTROL.ACC vorgenommen werden. Dies
- ist aber nicht notwendig, da Terminal 2000 diese Parameter setzen
- kann.
-
-
- 3.8 EMULATOR.ACC
-
- Das EMULATOR.ACC befindet sich, zumindest bei den älteren
- ST-Modellen, auf der System-Diskette von Atari. Mit dem
- EMULATOR.ACC lassen sich ein Listing vom Sharp oder ein auf die
- RS-232-Schnittstelle umgeleiteter PRINT-Befehl auf dem
- ATARI-Monitor ausgeben.
-
- Terminal 2000 wird dazu nicht benötigt !!
-
- Dazu wählt man den ACC-Eintrag 'VT52 Emulator' mit folgender
- Einstellung :
- - 4800 Baud
- - keine Parität
- - 8 Bit/Zeichen
- - RTS / CTS
- - andere Einstellungen sollten keine Wirkung haben.
- und schon hat Ihr Pocket-Computer einen hochauflösenden
- Bildschirm.
-
- So lassen sich mit dem Sharp auch Ausgaben realisieren, wie man
- es von TOS-Programmen her kennt, denn es sind 80 Zeichen pro
- Zeile möglich !
-
- Dazu noch ein Beispiel-Programm, welches den Zeichensatz des
- Sharp ausgibt:
-
- 1 WAIT 0
- 2 FOR I=32 TO 126
- 3 PRINT I;" ";CHR$(I):CALL &80CA
- 4 NEXT I
- 5 WAIT
- 6 END
-
- Das Wait 0 unterdrückt die Anzeige auf dem Display des Sharp, die
- Ausgabe erfolgt mit PRINT x: CALL &80CA.
-
- Der CALL-Befehl in diesem Programm gilt nur für PC-1403/32kByte!
- Für einen 8kByte Rechner lautet er : CALL &E0CA
-
-
- 3.9 Der Katastrophenfall
-
- Eigentlich sollte es ja nie passieren...
- Bei Auftreten eines Fehlers erscheint ein Bildschirm mit Angaben
- zum derzeitigen Programmstatus. Diese Informationen können für
- den Fall einer Rücksprache mit dem Autor notiert werden. Man hat
- nun die Möglichkeit die laufende Routine zu abzubrechen und in
- das Menü zurückzukehren oder das Programm zu beenden.
-
-
-
- 4 ÜBERTRAGUNG
-
- Vorweg und zu allererst:
- Die Befehle CLOAD und CSAVE können mit dem Interface NICHT
- verwendet werden.
-
- Im folgenden ist von 'Ctrl-Z' die Rede. Dies ist ein
- Steuerzeichen, das dem Empfänger das Ende einer Übertragung
- anzeigt.(ASCII-Code: 1A)
-
-
- 4.1 Klartext-Übertragung
-
- 4.1.1 Sharp ==> Atari
-
- Im Menü finden Sie unter 'Übertragen' den Menüpunkt 'Empfangen'.
- Wenn Sie ihn mit der Maus anklicken, erscheint die
- Datei-Auswahl-Box. Über der Box befindet sich ein Hinweis darauf,
- daß nun die Datei anzugeben ist, in der die empfangenen Daten
- gesichert werden sollen. Als Vorschlag ist der Dateiname
- 'DATEN.BAS' vorgegeben, den Sie natürlich ändern können. Sie
- sollten jedoch die Endung .BAS beibehalten. Klicken Sie nun auf
- den OK-Button. Es erscheinen ein Textfenster und die Anweisung
- den Sender, also den Sharp, einzuschalten sowie der dafür
- notwendige Maschinenbefehl. Tippen Sie diesen im Sharp ein und
- schließen die Eingabe mit der ENTER-Taste ab. Jetzt sollte die
- Übertragung beginnen.
-
- Es wird das gesamte im Speicher befindliche BASIC-Listing
- übertragen. Diese Datei kann jetzt zur weiteren Bearbeitung in
- einen beliebigen ASCII-Editor geladen werden.
-
- Es hat sich als zweckmäßig herausgestellt, die einzelnen
- Programme aus dem Gesamtlisting mittels den
- Editor-Blockoperationen 'markieren' und 'speichern' separat auf
- Diskette zu speichern, sofern sie dort noch nicht vorliegen.
-
- Terminal 2000 verwendet keinen eigenen Zwischenspeicher beim
- Datenempfang. Dies ist aufgrund der geringen Datenmenge auch
- nicht notwendig.
-
- Das vom Sharp, als letztes Zeichen, gesendete Ctrl-Z wird in der
- Zieldatei nicht gespeichert. Ältere Versionen von Terminal 2000
- nahmen dieses Zeichen noch in den Text mit auf. Listings, die mit
- Ctrl-Z enden, können in einigen Routinen von Terminal 2000 Fehler
- verursachen!
-
- Die UNDO-Taste bricht den Empfang der Daten ab. Alle Datenkanäle
- werden geschlossen. Ist der Sharp noch BUSY, kann die
- Senderoutine im Sharp durch längeres Drücken der BREAK-Taste bis
- zum Ende ausgeführt werden.
-
-
- 4.1.2 Atari ==> Sharp
-
- Es sollten sich zu diesem Zeitpunkt alle Basic-Programme auf
- Diskette befinden, da jetzt ein NEW -Befehl zweckmäßig ist! (Das
- Treiber-Programm für die RS-232-Schnittstelle wird nicht durch
- NEW gelöscht, wenn es vorschriftsmäßig eingegeben worden ist.)
-
- Jetzt stellt man sich aus den gesammelten Einzelprogrammen, die
- man im Sharp haben möchte, ein Gesamtlisting zusammen, wobei auf
- eine fortlaufende Zeilennumerierung zu achten ist. Hier läßt sich
- die Routine RENUMBER auf elegante Art einsetzen. Dieses
- Gesamtlisting wird nun zum Sharp übertragen. Wie die Übertragung
- gestartet wird, wurde ein Kapitel zuvor beschrieben.
-
- Hinweis:
- Es sollten keine einzelnen Programme nach und nach vom Atari in
- den Sharp geladen werden, da diese im Sharp, unabhängig von der
- Zeilennumerierung, an die bereits im Speicher befindlichen
- Programme hinten angehängt werden. Es könnte somit nur das
- zuletzt übertragene Programm korrekt im Sharp ediert werden. Eine
- erneute Übertragung Sharp==>Atari wäre ebenso nur noch für das
- zuletzt im Speicher angehängte Programm möglich.
- Deshalb also der NEW -Befehl vor der Übertragung zum Sharp.
-
- Die UNDO-Taste bricht die Übertragung ab. Alle Datenkanäle werden
- geschlossen. Es wird noch ein Ctrl-Z zum Sharp gesendet, damit
- dieser den Empfang beendet. Falls der Sharp einmal BUSY bleiben
- sollte, gibt es den Menüpunkt 'Ctrl-Z', der den Sharp noch einmal
- an den Abbruch des Empfanges erinnern soll.
-
- Ein Linefeed (nach dem Carriage Return) wird nicht gesendet, da
- dies beim Sharp, sofort nach der ersten Zeile, einen
- Empfangsabbruch bewirken würde.
-
- In dieser Übertragungsrichtung ist ein Filter zuschaltbar, das
- als erstes Zeichen einer Zeile nur eine Ziffer oder ein Ctrl-Z
- zuläßt. Hierdurch ergibt sich eine gewisse Sicherheit, daß man
- den Sharp nicht völlig durcheinander bringt, falls man
- versehentlich z.B. eine Bilddatei als Quelldatei gewählt hat.
-
-
- 4.2 Token-Übertragung
-
- Die nachfolgend beschriebene Token-Übertragung ist eine Option,
- die nur als Zugabe in Terminal 2000 implementiert wurde. Lesen
- Sie am besten die Erläuterungen zur Token-Übertragung und
- entscheiden dann, ob Sie diese Übertragungsart überhaupt nutzen
- wollen. Ihnen entgeht nichts, wenn Sie sich auf die
- Klartext-Übertragung beschränken.
-
- 4.2.1 Sharp ==> Atari
-
- Der Sharp speichert Basic-Befehle, die auf dem Display als
- Klartext erscheinen, in einem Byte, ein sogenanntes Token. Im
- Zeichensatz des Sharp sind die Token etwa in den ASCII-Zeichen
- 128 bis 255 enthalten. Bisher wurde das Basic-Listing vom Sharp
- im Klartext gesendet. Dazu mußte der Sharp jeden Befehl, der als
- 1-Byte-Token gespeichert ist, in einen entsprechenden
- ASCII-String umwandeln. Es ist leicht einzusehen, daß er dafür
- eine gewisse Zeit braucht. Ebenso, daß es länger dauert, wenn
- Befehle im Klartext gesendet werden müssen.
-
- Terminal 2000 ist in der Lage, Token vom Sharp zu empfangen. Dazu
- enthält Terminal 2000 in einem String-Array den Token-Vorrat des
- Sharp, was eine schnelle Umwandlung in Klartext ermöglicht.
- Dieses String-Array kann vom Anwender durch Modifizierung der
- Konfigurationsdatei an eigene Bedürfnisse angepaßt werden.
-
- Die Token-Übertragung erfordert eine Modifikation des
- Treiberprogramms im Sharp! Es wird einfach die
- Token-Klartext-Wandlung im Treiber umgangen.
-
- Wenn der Treiber bereits im Sharp installiert ist, geht das
- relativ einfach:
-
- POKE &E086,&2D
- POKE &E087,&10
-
- Um den Treiber wieder in den Original-Zustand zu versetzen, ist
- folgendes zu tun:
-
- POKE &E086,&5A
- POKE &E087,&3A
-
- Für den PC-1403H (32kByte) gelten die Adressen: &8086 und &8087.
-
-
- 4.2.2 Atari ==> Sharp
-
- Der Sharp ist ohne Treiber-Modifikation dazu in der Lage, Token
- zu empfangen! Terminal 2000 kann aus Klartext-Lisings die Token
- heraussuchen, was aber einige Zeit dauert. Diese Übertragungsart
- versteckt sich hinter dem Menüpunkt "Senden... (T)". Da während
- der Übertragung die dem Token entsprechenden ASCII-Zeichen auf
- dem Bildschirm erscheinen, ist das Listing dort nicht mehr
- lesbar.
-
-
- 4.3 Fehler während der Übertragung
-
- Ab und zu kann es vorkommen, daß der Sharp nach der ersten Zeile
- den Empfang beendet. Dann sollte die Übertragung mit UNDO
- abgebrochen und im Sharp NEW eingeben werden. Danach kann die
- Übertragung noch mal von vorne begonnen werden.
-
-
- 4.4 Fehler nach der Übertragung
-
- Sollte nach beendigter Übertragung von Terminal 2000 keine
- Fertig-Meldung erscheinen oder der Sharp BUSY bleiben, kann es
- helfen, wenn :
-
- - ein Ctrl-Z abgeschickt wird
- (nach Übertragung Atari ==> Sharp)
- oder
- - das Interface vom Sharp getrennt wird
- (nach Übertragung Atari ==> Sharp)
- oder
- - der Sharp kurz ein- und ausgeschaltet wird
- (nach Übertragung Atari ==> Sharp)
- oder
- - ein Ctrl-Z vom Sharp gesendet wird
- (nach Übertragung Sharp ==> Atari)
- Wenn der Sharp alle Daten gesendet hat und nicht mehr BUSY ist,
- aber Terminal 2000 noch auf Daten wartet, dann kann man ein
- Ctrl-Z senden:
- PC-1403 : CALL &E0E0
- PC-1403H : CALL &80E0
- oder
- - die BRK-Taste längere Zeit gedrückt wird
- (nach Übertragung Sharp ==> Atari)
-
- In letzterem Fall piept der Rechner vor sich hin, er überträgt
- also weiter, wenn auch nicht mehr zum Atari!
-
-
- 4.5 Nach der Übertragung
-
- Nach der Übertragung erscheint eine von vier möglichen Meldungen:
-
- - "Es wurden XX Zeichen übertragen"
-
- Die Übertragung wurde erfolgreich durchgeführt. Die angegebene
- Zeichenanzahl sollte bei Klartext-Übertragung mit der Größe der
- Quell- bzw. Zieldatei übereinstimmen.
-
- Sie ist jedoch größer, als der Speicherbedarf im Sharp, da in
- diesem die Basic-Befehle einem ASCII-Code (Token) entsprechen.
- Ein GOSUB nimmt also beispielsweise nur ein Byte im Sharp in
- Anspruch, während es im Atari fünf Byte (plus ein Byte für das
- nachfolgende Leerzeichen) benötigt. Der Speicherbedarf für ein
- Listing beträgt im Sharp etwa 0.7 * Dateilänge.
-
- - "Übertragung abgebrochen"
-
- Die Übertragung wurde abgebrochen, da die UNDO-Taste betätigt
- wurde.
-
- - "Illegales Zeichen" (bei aktivem Filter)
-
- Die Quelldatei enthielt ein Zeichen, das vom Filter abgefangen
- wurde. Die Übertragung wird abgebrochen, der ASCII-Code des
- illegalen Zeichens in dezimaler Darstellung, sowie das Zeichen
- selber, erscheinen im Button der Alert-Box.
-
- - "Kein Sharp-Basic"
-
- Das Filter hat am Anfang einer Zeile ein Zeichen festgestellt,
- das weder eine Ziffer, noch ein Ctrl-Z ist. Hierauf folgt noch
- die Meldung "Illegales Zeichen", die nun das am Anfang der
- Zeile gefundene Zeichen, als ASCII-Code in dezimaler
- Darstellung, sowie das Zeichen selbst im Button der Box
- ausgibt.
-
-
- 4.6 Ein kleiner Schönheitsfehler
-
- Es gibt ein paar Befehle, die der Sharp nicht senden kann! Diese
- Befehle dienen jedoch zum größten Teil zur Steuerung des CE-140-
- Diskettenlaufwerkes und damit zusammenhängender Dateifunktionen.
- Auf sie kann also im allgemeinen verzichtet werden.
-
- Eine Liste dieser Befehle (2-Byte-Token):
- AS, COPY, DSKF, DELETE, EOF, FILES, INIT, KILL, LOF, LOC,
- LFILES, NAME, OUTPUT, RENUM, SET und XOR
- (Für diese Liste gilt: Ohne Gewähr!)
-
- Man beachte, daß auch die logische Operation XOR in dieser Liste
- enthalten ist.
-
- Diese Befehle können aber vom Atari zum Sharp übertragen werden,
- wenn die Übertragung im Klartext erfolgt.
-
-
-
- 5 DATEI-OPERATIONEN
-
- 5.1 Aufruf eines Editors
-
- Es ist möglich, einen Editor zur Bearbeitung der Daten
- aufzurufen, ohne Terminal 2000 zu verlassen. Es kann ein
- beliebiger ASCII-Editor verwendet werden, der sich auch in einem
- anderen Verzeichnis oder Laufwerk befinden darf.
-
-
- 5.2 Anmeldung eines Editors
-
- Terminal 2000 liest beim Programmstart die Datei TERM2000.INF,
- falls vorhanden, ein und überprüft , ob ein entsprechendes
- (Editor-)Programm vorhanden ist. Wenn die Info-Datei nicht
- existiert, oder sie existiert, aber es wurde keine entsprechendes
- Programm gefunden, wird dies beim Programmstart vom Terminal 2000
- angezeigt.
-
- Der Editor kann in der Parameter-Dialogbox bestimmt werden. Es
- sind nur die TOS-üblichen Extensionen TOS,TTP,PRG,APP oder im
- Editornamen zulässig.
-
-
- 5.3 Aufruf eines Programmes
-
- Weiterhin besteht die Möglichkeit ein frei wählbares Programm aus
- Terminal 2000 heraus aufzurufen.
-
-
- 5.4 Fehlerquellen beim Editor-/Programmaufruf
-
- Da sich beim Editoraufruf zwei Programme, Editor bzw. Programm
- und Terminal 2000, im Speicher befinden, kann es auf Rechnern mit
- einer Speichergröße von 512 kByte zu Speicherplatzmangel kommen.
- Terminal 2000 reserviert ca. 100 kByte Speicher für sich, der
- verbleibende Speicherplatz steht externen Programmen zur
- Verfügung.
-
- Bei Auftreten eines Fehlers beim Aufruf des Editors bzw.
- Programms wird die TOS-Fehlernummer ausgegeben.
-
- Die in diesem Zusammenhang wichtigsten Fehlernummern :
- -33 : Datei nicht gefunden
- -34 : Pfadname nicht gefunden
- -39 : Speicher voll
- -66 : Keine ausführbare Programmdatei
- Die Bedeutung anderer Fehlernummern ist entsprechender Literatur
- zu entnehmen.
-
- Terminal 2000 wechselt beim Aufruf eines Programmes bzw. Editors
- in das entsprechende Verzeichnis. Somit sollten eigentlich alle
- Programme korrekt gestartet werden können.
-
-
- 5.5 Programmstart über TROJA.PRG
-
- TROJA.PRG soll den Aufruf externer Programme auf Rechnern mit
- geringer Speicherkapazität, wie 260ST oder 520ST(E), ermöglichen.
- Dabei steht den aufzurufenden Programmen auch der Speicher wieder
- zur Verfügung, der bis dahin von Terminal 2000 beansprucht wurde.
-
- Der erzielbare Gewinn an Speicherplatz liegt zur Zeit bei etwa
- 150 kByte! Dieser Wert ist abhängig von der Programmversion von
- Terminal 2000.
-
- Die Funktionsweise:
- Der Aufruf externer Programme über TROJA.PRG erinnert an das
- die Story vom Trojanischen Pferd, daher auch der Programmname.
-
- Wird ein Programm/Editor mittels TROJA aufgerufen, so wird
- Terminal 2000 beendet. Dieses ruft als letzte Aktion TROJA.PRG
- auf und übermittelt ihm Informationen darüber, welches Programm
- aufgerufen werden soll. TROJA.PRG ruft das Programm auf und
- bleibt resident, beansprucht dafür aber nur sehr wenig Speicher.
- Nach Beendigung des aufgerufenen Programmes wird TROJA weiter
- ausgeführt. TROJA.PRG wird nun beendet, ruft aber als letzte
- Aktion Terminal 2000 auf.
-
- Hieraus wird ersichtlich, daß diese Art des Aufrufs eines
- externen Programmes nicht die wahre Freude sein kann, wenn man
- nicht über eine Festplatte oder Ramdik verfügt.
-
- Ob Programme über TROJA.PRG gestartet oder zu Terminal 2000
- hinzugeladen werden sollen, läßt sich in der Übersicht-Box
- auswählen.
-
- Es ist übrigens relativ sinnlos, TROJA.PRG vom Desktop aus zu
- starten.
-
-
- 5.6 Tip für Diskettenbenutzer
-
- Arbeitet man nur mit Disketten, so sollte man sich Terminal 2000
- und einen Editor nach Wahl auf eine gemeinsame Diskette kopieren.
- Wer ein TOS der Version 1.04 oder höher in seinem Rechner hat,
- kann dann TERM2000.PRG als AUTO-Start-Anwendung anmelden.
-
-
- 5.7 Datei ansehen / drucken
-
- Unter diesen Menüpunkten lassen sich Dateien, die sich auf
- Diskette oder Festplatte befinden, ansehen oder auch ausdrucken.
- Mit der linken Maustaste läßt sich das Listing anhalten, mit der
- rechten Maustaste wird die Ausgabe abgebrochen.
-
- Die Datei wird hierbei zunächst komplett in den Speicher
- eingelesen, dann der entsprechende Speicherinhalt auf Monitor
- oder Drucker ausgegeben.
-
- Bei diesen Routinen hat das Filter, sofern aktiv, Einfluß.
-
-
- 5.8 Datei kopieren
-
- Es können beliebige Dateien kopiert werden. Zu beachten ist
- jedoch, daß die Dateigröße kleiner als der freie
- RAM-Speicherplatz sein muß. Nach Auswahl der Quelldatei ist
- mittels Fileselect-Box der Pfad und der Name der Zieldatei zu
- wählen. Wenn die Datei nicht in den Speicher passt, wird eine
- entsprechende Fehlermeldung ausgegeben.
-
-
- 5.9 Renumber - Datei neu numerieren
-
- Ähnlich des RENUM-Befehles im Sharp, lassen sich Dateien von
- Diskette oder Festplatte neu numerieren. Dies ist jedoch nur
- möglich, wenn als Sprungziele hinter GOTO, GOSUB, RESTORE keine
- Zeilennummern angegeben sind. Wie Zeilennummern als Sprungziele
- vermeidbar sind, ist im Kapitel 'Zeilennummern' beschrieben.
-
- Das Quell-Listing darf keinen Doppelpunkt hinter der Zeilennummer
- aufweisen, wie er auf dem Display des Sharp erscheint. Nach der
- Zeilennummer muß ein Leerzeichen folgen.
-
- Sofern kein Fehler auftritt, geschieht etwa folgendes :
- - es wird eine Sharp-Basic-Datei eingelesen
- - eine neue Zeilennumerierung, beginnend ab 10, in
- Zehnerschritten, wird durchgeführt
- - eine oder mehrere Dateien können an die erste angehängt werden,
- wobei die Zeilennumerierung fortlaufend bleibt
- Achtung: Hierbei sollte die Diskette nicht gewechselt werden!
- - zwischen den einzelnen Listings wird die Zeile
- REM --- NEUES PROGRAMM ---
- mit entsprechender Zeilennummer eingefügt
- - das fertige Listing wird unter neuem Dateinamen abgespeichert
-
- Als Besonderheit werden auch Listings, die keine Zeilennummern
- enthalten, durch diese Routine nachträglich numeriert.
-
- Die Routine erkennt selbst, ob das Listing bereits numeriert ist.
- Dazu wird das erste Zeichen des Listings untersucht. Handelt es
- sich hierbei um eine Zahl, so wird davon ausgegangen, daß es sich
- um ein numeriertes Listing handelt.
-
- Zur Kontrolle des Ablaufes, wird im oberen Fenster das neue
- Listing ausgegeben. Im unteren Fenster kann dann verfolgt werden,
- wie das Programm nach Zeilennummern oder Labels hinter GOTO,
- GOSUB und RESTORE sucht.
-
- Wird in einer Zeile eines dieser Worte gefunden, so wird zunächst
- das erste von rechts untersucht. Danach werden jeweils die
- nächsten vorhandenen in Richtung Zeilenanfang hin untersucht.
-
- Wenn eine Zeilennummer hinter einem der Worte gefunden wird,
- erfolgt im unteren Fenster ein Hinweis darauf. Die Routine wird
- jedoch nicht abgebrochen.
-
- Es wird berücksichtigt, daß hinter RESTORE keine Zielangabe
- erforderlich ist.
-
- In dieser Routine hat die Filterfunktion keinen Einfluß !
-
-
- 5.10 Uppercase-Wandlung
-
- Diese Funktion liest ein Basic-Listing ein, wandelt klein- in
- Großbuchstaben um und gibt das umgewandelte Listing wieder aus.
- Das neue Listing darf übrigens unter dem alten Dateinamen
- abgespeichert werden.
-
-
- 5.11 Basic-Programm überprüfen
-
- Diese Routine überprüft eine Datei im LST-, ASC- oder BAS-Format
- auf ungültige Zeichen. Jedes Zeichen wird nur einmal in der Datei
- gesucht. Die Datei wird hierdurch nicht verändert. Langes Drücken
- der rechten Maustaste bricht die Routine ab. Weiterhin wird das
- Listing auf Zeilen mit mehr als 80 Zeichen hin untersucht.
-
- Diese Funktion verändert die untersuchte Datei NICHT.
-
-
-
- 6 GFA-BASIC-KONVERTER
-
- 6.1 Allgemeines
-
- Dies ist etwas Besonderes für Besitzer des GFA-Basic (Version
- 2.0x oder 3.0x). Neben der Möglichkeit den GFA-Basic-Interpreter
- aufrufen zu können, sind Routinen zur Konvertierung der Sharp-
- und GFA-Basic-Formate implementiert.
-
-
- 6.2 Aufruf des Interpreters
-
- Der Interpreter muß zunächst angemeldet werden. Dies geschieht
- genauso, wie es für den Editor schon beschrieben wurde. Danach
- kann er aus Terminal 2000 heraus gestartet werden.
-
-
- 6.3 Grenzen der Konvertierbarkeit
-
- Bei der Entwicklung im GFA-Basic-Interpreter müssen natürlich die
- besonderen Eigenschaften des Sharp-Basic berücksichtigt werden.
-
- Dazu gehören unter anderem folgende Regeln:
-
- - Variablennamen haben maximal 2 Zeichen
- - Es dürfen keine IF-Bedingungen geschachtelt werden.
- d.h. nach einer Zeile
- IF <Bedingung> THEN
- darf keine weitere IF-Zeile und auch keine FOR..TO-Zeile
- kommen. Auf das THEN darf übrigens verzichtet werden.
- - Natürlich dürfen nur Befehle eingesetzt werden, die im Sharp-
- UND im GFA-Basic enthalten sind. Bei der Konvertierung kann
- die LST-Datei auf ungültige Befehle geprüft werden.
-
- - Die DEF-Label DEF-<Space> und DEF-<Komma> dürfen nicht
- verwendet werden. Ebenso dürfen Space und Komma nicht in einem
- aus mehreren Zeichen bestehenden Labelnamen enthalten sein.
- - Zeilennummern als Sprungziele für GOTO, GOSUB und RESTORE sind
- nicht erlaubt.
-
- Es folgt nun eine Auflisting der Befehle und Funktionen, die in
- beiden Basics enthalten sind:
-
-
-
- Gemeinsame Befehle für GFA-Basic 3.0X und PC-1403:
- --------------------------------------------------
-
- CALL (relativ sinnlos)
- CHAIN (zu unterschiedlich)
- CLEAR
- CONT (sinnlos)
- DATA
- DIM
- END
- FOR..TO..STEP..NEXT
- GOSUB <Label>
- GOTO <Label>
- IF..THEN (THEN ist optional, GFA schließt mit ENDIF)
- INPUT var
- INPUT "text";var
- LPRINT...
- NEW (sinnlos)
- PEEK,POKE (sinnlos)
- PRINT
- READ
- REM
- RESTORE
- RESTORE Label
- RETURN (darf in GFA-Basic nicht im IF-Zweig stehen)
- RUN (sinnlos)
- STOP
- TRON,TROFF (wer's braucht...)
-
-
-
- Gemeinsame Funktionen:
- ----------------------
-
- Die Argumente trigonometrischer Funktionen werden in GFA-Basic
- als Bogenmaß (RAD) interpretiert.
-
- Sehr wichtig:
- Wo nicht angegeben, sind Klammern beim Sharp um das Argument x
- bzw. x$ optional. Sollen Listings leicht konvertierbar sein, so
- sollten Klammern im Sharp-Listing grundsätzlich (!) gesetzt
- werden.
-
- GFA: PC-1403:
- ---- --------
-
- ABS(x) ABS x
- ACOS(x) ACS x wird vom Konverter angepaßt
- ASC(x$) ASC x$
- ASIN(x) ASN x wird vom Konverter angepaßt
- ATN(x) ATN x
- CHR$(x) CHR$ x
- COS(x) COS x
- EXP(x) EXP x
- HEX$(x) HEX x abweichende Rückgabetypen
- INKEY$ INKEY$
- INT(x) INT x
- LEFT$(x$,n) LEFT$(x$,n) In GFA-Basic ist n optional
- LEN(x$) LEN x$
- LOG(x) LN x wird vom Konverter angepaßt
- LOG10(x) LOG x wird vom konverter angepaßt
- MID$(x$,a,n) MID$(x$,a,n) In GFA-Basic ist n optional
- PI PI
- RIGHT$(x$,n) RIGHT$(x$,n) In GFA-Basic ist n optional
- SGN(x) SGN x
- SIN(x) SIN n
- SQR(x) SQR x
- STR$(x) STR$ x
- TAN(x) TAN x
- VAL(x$) VAL x$
-
-
-
- Logische Operationen:
- ---------------------
-
- AND AND
- NOT NOT
- OR OR
- XOR XOR Kann der Sharp nicht senden !
-
-
- Kraut und Rüben:
- ----------------
-
- RANDOM(x) RANDOM In GFA Funktion, bei Sharp Befehl
- Haben wenig gemeinsam!
- RND[(x)] RND x Identisch, wenn das Argument der
- Sharp-Funktion gleich 1 ist.
- --- PAUSE Während der Konvertierung
- Sharp-->GFA wird PAUSE in PRINT
- gewandelt.
-
- Abschließend sei noch darauf hingewiesen, daß eine fehlerfreie
- Konvertierung nicht garantiert werden kann. Das Ergebnis sollte
- also auf jeden Fall getestet werden.
-
-
- 6.4 Konverter GFA- nach Sharp-Basic
-
- Aufgrund der fantastischen Strukturiertheit des GFA-Basic ist
- diese Konvertierung relativ problemlos.
-
- Es können somit Programme im GFA-Basic-Interpreter erstellt und
- getestet werden. Diese werden als LST-Datei abgespeichert und mit
- der Konvertierungsroutine GFA-->Sharp in ein Sharp-Basic-Listing
- (ASC-Format) gewandelt. Dieses enthält noch keine Zeilennummern,
- denn dafür gibt es ja die Renumber-Routine.
-
- So wird konvertiert:
- - Wahlweise Befehlssatz kontrollieren, hierbei wird das Listing
- auf GFA-Basic-Befehle/Funktionen untersucht, die der Sharp
- nicht kennt.
- - Listing in Uppercase wandeln, weil Variablen in Großbuchstaben
- vorliegen müssen
- - IF..ENDIF nach IF..THEN.. sowie FOR..NEXT anpassen
- - Label und Sprunganweisungen setzen
- - LOG, LOG10, HEX$, ASIN, ACOS anpassen
-
- Zur Kontrolle des Befehlssatzes enthält die Datei TERM_GFA.LIB
- die Befehle und Funktionen aus dem GFA-Basic, die der Sharp nicht
- kennt. Bei Bedarf kann diese Datei modifiziert werden, dabei
- sollte man die Struktur jedoch nicht ändern. Der Aufbau ist wie
- folgt definiert:
- - Kommentarzeilen, durch * gekennzeichnet
- - Schlüsselwort 'Daten', kennzeichnet den Beginn der Liste
- - Befehle und Funktionen, jeweils in Hochkomma eingefaßt
- und durch Komma getrennt.
- - "***" kennzeichnet das Ende der Liste und der Datei
- - Innerhalb der Liste sollten keine Leerzeilen auftreten.
- - Die Anzahl der Befehle/Funktionen ist insgesamt auf 250
- beschränkt.
-
-
- 6.5 Konverter Sharp- nach GFA-Basic
-
- Es gehört schon einiges dazu, den Spaghetti-Code des Sharp in ein
- Format zu bringen, das vom GFA-Basic verstanden wird. So dauert
- eine Umwandlung auch entsprechend lange.
-
- Diese Konvertierungsrichtung ist dazu gedacht, vorhandene
- Sharp-Listings in GFA-Basic zu wandeln. Zur Entwicklung neuer
- Programme sollte diese Routine nicht zur Anwendung kommen.
-
- So wird konvertiert:
- - Entfernen der Zeilennummern
- - Aufsplitten von Mehrbefehls- in Einbefehlszeilen
- - Umwandlung von IF..THEN.. nach IF..ENDIF
- - Anpassung der Funktionen LN, LOG, HEX, ASN, ACS
- - Befehl PAUSE in PRINT wandeln
- - Entfernen der Leerzeichen zwischen Funktion und Argument
- - Suchen von Labels hinter GOTO, GOSUB, RESTORE
- - Labels in Label (für GOTO,RESTORE) oder PROCEDURE wandeln
-
- Der Befehl PAUSE bewirkt auf dem Sharp eine Ausgabe auf dem
- Display, die nach etwa 1 Sekunde verschwindet. Für GFA-Basic wird
- der PAUSE-Befehl in ein PRINT gewandelt. Die unterschiedliche
- Funktionsweise ist für die meisten Anwendungen vernachlässigbar.
-
- Hinweis:
- Bei der Funktion INT (x) ist es noch nicht möglich, das
- Leerzeichen zwischen Funktion und Argument zu entfernen, dies muß
- im Interpreter nachgebessert werden.
-
- Es wird auf eine Befehlssatzkontrolle verzichtet. Zeilen, die
- ungültige Befehle enthalten, kennzeichnet der
- GFA-Basic-Interpreter bekanntermaßen durch das Symbol ==> am
- Zeilenanfang.
-
-
- 6.6 Ein Tip am Rande
-
- Der Programmstart vom Terminal 2000 verlängert sich durch die
- Auswertung der Datei TERM_GFA.LIB merklich. Wer auf die
- Befehlskontrolle im GFA- nach Sharp-Konverter verzichten kann
- oder die GFA-Basic-Konvertierung gar nicht nutzt, sollte das
- Laden der Datei TERM_GFA.LIB verhindern. Dazu kann die Datei
- umbenannt, verschoben oder gelöscht werden. Entsprechendes gilt
- übrigens auch für die Konfigurationsdatei TERM2000.CFG.
-
-
- 6.7 Temporäre Dateien
-
- Während der Konvertierung werden eine oder mehrere temporäre
- Dateien angelegt und wieder gelöscht. Wird die Konvertierung
- jedoch mittendrin unterbrochen, zum Beispiel durch einen Reset,
- so werden Sie diese Dateien anschließend im Verzeichnis finden.
- Sie werden spätestens bei der nächsten Konvertierung gelöscht.
-
- Es bleiben nach der Umwandlung Sharp-->GFA noch zwei Dateien
- erhalten. In LABEL.TMP kann man sich die vom Konverter gefundenen
- Label ansehen, PROC.TMP enthält die gefundenen Prozedur-Namen.
- Ein Label, das nicht von GOTO, GOSUB oder RESTORE angesprungen
- wird, wie z.B. ein DEF-Label, wird nicht in diesen Dateien
- festgehalten.
-
-
-
- 7 TIPS UND TRICKS
-
- 7.1 Allgemeines
-
- Werden Programme auf dem Atari erstellt/bearbeitet, so muß darauf
- geachtet werden, daß die Zeilenlänge keinesfalls 80 Zeichen
- überschreiten darf. Das einundachzigste Zeichen würde im Sharp in
- der nächsten Zeile, an der Position einer Zeilennummer
- auftauchen, was dieser natürlich nicht versteht.
-
- In diesem Zusammenhang ist darauf hinzuweisen, daß sich durch die
- Übertragung die Länge einer Zeile verändern kann. Der Sharp kann
- für die Zahl PI und die Wurzelfunktion SQR ein einzelnes Zeichen
- verwenden. Dieses wird bei der Übertragung zum Atari in die zwei
- bzw. drei Zeichen PI bzw. SQR umgewandelt. So verlängert sich
- eine Zeile, die PI oder SQR beinhaltet, entsprechend. Lange
- Zeilen, die im Sharp erstellt wurden, können sich im ungünstigen
- Fall auf über 80 Zeichen verlängern.
-
-
- 7.2 Zeilennummern
-
- Das Sharp-BASIC ist Zeilennummernorientiert. Beispiel :
-
- 10 I=1
- 20 PAUSE I
- 30 I=I+1
- 40 GOTO 20
-
- Eine neue Zeilennumerierung ist im Sharp mit den RENUM-Befehl
- unproblematisch durchzuführen. Ändert man jedoch die
- Zeilennummern im Editor auf dem Atari, so geschieht es sehr
- schnell, daß man vergißt, die Zeilennummern hinter GOTO oder
- GOSUB anzupassen.
-
- Hier kann ein Programmiertrick weiterhelfen. Es ist sicherlich
- bekannt, daß man im Sharp die Programme mit der DEF-Taste starten
- kann.
-
- Beispiel :
-
- 10 "C" : REM Beispiel
- 20 BEEP 2
- 30 END
-
- Dieses Progrämmchen kann durch die Tastenkombination DEF C
- gestartet werden. Der Sharp sucht also nach dem Label "C". Solch
- ein Label kann nun auch für GOTO oder GOSUB Verwendung finden.
- Beispiel :
-
- 10 I=1
- 15 "LOOP"
- 20 PAUSE I
- 30 I=I+1
- 40 GOTO "LOOP"
-
- Die Funktion dürfte aus dem Beispiel deutlich werden. Wichtig ist
- jedoch, daß die Namen dieser Label natürlich in einem anderen
- Programm nicht gleich lauten dürfen.
-
- "LOOP" und "Loop" sind übrigens verschiedene Label !
-
- Die Funktion ist für GOSUB und RESTORE entsprechend.
-
- Sharp schreibt im Handbuch zum PC-1403 zwar vor, daß hinter GOTO
- oder GOSUB eine Zeilennummer im Wertebereich 1 bis 65279 folgen
- muß, jedoch gibt es mit obigem Trick weder Probleme, noch die von
- Sharp im Handbuch angedrohte Fehlermeldung ERROR 4.
-
- Was jetzt folgt, ist wohl eher ein Spezialfall. Folgendes
- Programm läßt sich noch vereinfachen :
-
- 10 INPUT "Sprung zu Label ?";B$
- 20 IF B$="AB" GOSUB "AB"
- 30 IF B$="XY" GOSUB "XY"
- 40 END
- 50 "AB"
- 60 BEEP 1
- 70 RETURN
- 80 "XY"
- 90 BEEP 5
- 100 RETURN
-
- Hier wird das anzuspringende Label während des Programmablaufes
- abgefragt und eingegeben.
-
- Die Vereinfachung könnte so aussehen :
-
- 10 INPUT "Sprung zu Label ?";B$
- 20 GOSUB B$
- 30 END
- 40 "AB"
- 50 BEEP 1
- 60 RETURN
- 70 "XY"
- 80 BEEP 5
- 90 RETURN
-
- Man beachte Zeile 20 !
-
- Bei einer großen Zahl von Verzweigungen in Unterprogramme lassen
- sich also entsprechend viele IF <Bedingung> GOSUB <Label>
- durch ein einzelnes GOSUB <Label>
- ersetzen.
-
- Der Nachteil des letzten, vereinfachten Programmes liegt darin,
- daß ein RENUM -Befehl im Sharp mit der vereinfachten Zeile 20
- GOSUB B$ nichts anzufangen weiß, und eine Fehlermeldung (ERROR 9)
- ausgibt.
-
- Ansonsten dürfte diese Vereinfachung für einige Anwendungen von
- Interesse sein, da es sonst keine weiteren Beeinträchtigungen
- gibt.
-
-
- 7.3 Reset
-
- Ein sehr beliebter Fehler ist die Angabe einer falschen Adresse
- bei den CALL-Aufrufen des Treibers. Hier hängt sich der Rechner
- dann auch schon mal auf, so daß nur noch ein RESET hilft. Ist ein
- RESET beim Sharp unumgänglich, so sollte er nach der Handbuch
- beschriebenen Art geschehen (Seite 9, beliebige Taste drücken,
- dann zusätzlich den ALL-RESET-Schalter). So bleiben die Programme
- im Sharp erhalten. Das ist insbesondere für das Treiber-Programm
- wichtig, das sonst komplett neu eingegeben werden müßte. Ohne
- Treiber im Sharp, kann natürlich auch nicht das Treiber-Programm
- von der Diskette im Atari zum Sharp übertragen werden.
-
- Achtung :
- Wenn das Interface an den Sharp angeschlossen wird, sollten beide
- Geräte ausgeschaltet sein, sonst könnte ein MEMORY ALL CLEAR
- O.K.? die Folge sein.
-
-
- 7.4 Batteriewechsel
-
- Ein Batteriewechsel bedeutet nicht gleichzeitig den Verlust der
- im Sharp gespeicherten Programme. Wer möchte denn schon gerne
- nach jedem Satz neuer Batterien das Treiber-Programm neu
- eintippen? Mit dem Power-Schalter in Stellung OFF, kann der Sharp
- zumindest einige Sekunden ohne Batterien "überleben".
-
-
-
- 8 ANHANG
-
- 8.1 Bekannte Probleme
-
- ( zur Zeit keine )
-
-
- 8.2 Sytemkonfiguration
-
- Terminal 2000 sollte auf den Modellen ST (F, FM), STE, TT und
- Falcon laufen. Erfolgreich lief es bis jetzt auf ST , STE und TT.
- Die horizontale Bildschirmauflösung sollte mindestens 640 Pixel
- bzw. 80 Zeichen betragen. Der Betrieb unter Autoswitch-Overscan
- ist problemlos.
-
-
- 9 ANPASSUNGEN AN ANDERE POCKETRECHNER
-
- Es ist geplant, die Terminal 2000 an die Modelle Sharp E-220 und
- Sharp E-500 anzupassen. Mir steht zwar ein E-220 zur Verfügung,
- aber ich habe keine Informationen darüber, wie die RS-232-Signale
- am 11-poligen Anschluß anliegen. Für entsprechende Hinweise wäre
- ich dankbar!
-
- Ebenso würde ich gerne die Diskettensignale der Sharp-Rechner zur
- Übertragung nutzen. Die Übertragungsrate ließe sich so um etwa
- den Faktor zwei steigern und das Treiberprogramm wäre
- überflüssig! Nur wie erzeuge ich diese Signale auf der
- Atari-Seite?
-
-
- 10 SCHLUßWORTE(E) des Programmautors
-
- Ich hoffe, daß jetzt "alle Klarheiten beseitigt sind." Das
- Programm erwies sich bis jetzt als besonders zuverlässig. Für
- jede konstruktive Kritik wäre ich dennoch dankbar.
-
- Meine Adresse:
-
- Michael Weigand
- Wiener Allee 139
- 24147 Kiel
- 0431 / 78 22 59 (ab 18 Uhr)
-
- (bis 30.06.93: 2300 Kiel 14)
-
-
- 11 Warenzeichen
-
- Viele in diesem Text benutzte Bezeichnungen sind Warenzeichen und
- sollten als solche betrachtet werden.
-