2 Der kombinierte Editor/Makro-Assembler

      -nderungen -


Der Editor von GENST.PRG bildet das Kernstck der vllig integrierten 
Umgebung von Devpac ST Version 2. Sie knnen assemblieren, debuggen 
und auch andere Programme, wie z.B. LinkST, aufrufen, ohne jemals 
den Editor verlassen zu mssen. Wenn Sie zustzlich noch unser Saved!- 
Desk-Accessory besitzen, gibt es kaum einen Grund, whrend der 
Programmentwicklung zurck ins Desktop zu gehen.


2.1 Generelle nderungen und Ergnzungen

Zuerst wird auf die einfacheren Vernderungen des Editors eingegangen. 
Es handelt sich hiermit hauptschlich um neue Tastaturkrzel und
-umbelegungen.
Die Geschwindigkeit des Editors hat sich stark erhht. Es gibt so 
gut wie keinen Tastaturnachlauf mehr, und das >>Blttern<< geht um ein 
Mehrfaches schneller als beim Editor der Version 1.
Zeilen knnen jetzt bis zu 240 Zeichen lang sein. Das Seitwrts-
Scrollen ist durch Benutzung des horizontalen Scrolling-Balkens 
des Editorfensters mglich. Der Editor scrollt auch automatisch 
zur Seite, wenn man sich mit dem Cursor nahe genug am Rand befindet.
Dies gilt auch fr Ctrl-C.

Shift-Alt-S ist das Tastaturkrzel fr "Datei speichern".
Der Editor funktioniert jetzt auch in niedriger Auflsung.

Tip: Wenn Sie ein Tab-Zeichen suchen bzw. ersetzen wollen, geben 
Sie Ctrl-I in der Dialogbox ein; als Tab wird dann eine kleine Uhr 
erscheinen.


2.2 Blockverwaltung

Die Verwaltung von Blcken ist um einiges erweitert worden. Markierte 
Blcke werden jetzt invers dargestellt.

2.2.1 Block lschen

Ein Block wird nicht mehr mit Shift-F3, sondern mit Shift-F5 gelscht. 
Der gelschte Block ist auch nicht unwiederruflich verloren, sondern 
wird im Blockspeicher abgelegt. Voraussetzung ist, da genug freier 
Speicher vorhanden ist.

2.2.2 Block in den Blockspeicher kopieren

Mit Shift-F4 kopieren Sie den markierten Block in den Blockspeicher. 
Der markierte Block bleibt jedoch an seiner ursprnglichen Stelle 
und wird nicht - wie mit Shift-F5 -gelscht.

2.2.3 Block aus dem Blockspeicher kopieren

Mit F5 wird der Inhalt des Blockspeichers an die Cursorposition ko-
piert.

2.2.4 Undo und Ctrl-U

Eine hnliche Funktion haben die Tastenkombinationen Ctrl-U und Undo. 
Eine Zeile, die mit Ctrl-Y gelscht wurde, kann so oft wie ntig 
mit Undo bzw. Ctrl-U wieder eingefgt werden. Das gleiche gilt fr 
Text, der mit Ctrl-Q gelscht wurde.


2.3 Voreinstellungen

Es ist jetzt mglich, zustzlich zum Tab-Abstand auch all die 
Einstellungen, die mit dem Installationsprogramm gemacht wurden, 
ber "Voreinstellungen" festzulegen:

2.3.1 Tab-Abstand

Wie bei GENST.PRG Version 1 ist der Standardwert 8, kann aber auf 
jeden Wert zwischen 2 und 16 eingestellt werden.

2.3.2 Textspeichergre

Der Standardwert ist 60 000 Byte, kann aber auf einen Wert von 4000 
bis 990 000 Byte eingestellt werden. Dadurch wird die maximale Datei-
gre bestimmt, die geladen und editiert werden kann. Man sollte 
darauf achten, genug Speicher fr den Assembler und ggf. MonST 
brig zu lassen, normalerweise werden etwa 100 Kbyte bentigt. Verndern 
der Speichergre hat zur Folge, da der Text, der gerade bearbeitet 
wird, gelscht wird; eine Alarmbox erscheint, wenn der Text nicht 
abgespeichert wurde.

2.3.3 Numerischer Tastenblock

Diese Option erlaubt es, den numerischen Tastenblock der ST-Tastatur 
als Cursorblock, hnlich wie bei PC-Kompatiblen, zu benutzen. 
Standardmig ist er als Cursorblock konfiguriert. 

2.3.4 Backups

Ohne Voreinstellung macht der Editor keine Backups. Wenn Sie in 
der Abfragebox "Ja" whlen, gibt der Editor der schon existierenden 
Version Ihrer Datei die Extension .BAK. Die aktuelle Datei wird dann 
unter dem richtigen Namen gespeichert.

2.3.5 (Automatisches) Einrcken

Diese Funktion rckt eine Zeile automatisch nach Eingabe von RETURN 
um so viel ein, wie die vorherige Zeile durch Leerzeichen bzw. Tabs 
eingerckt wurde.

2.3.6 Cursor

Die Standardeinstellung des Cursors ist ein Blinken, er kann jedoch 
auch so eingestellt werden, da er feststeht.

2.3.7 MonST laden

Diese Option ist standardmig an und bewirkt, da jedesmal, wenn 
GENST.PRG geladen wird, MonST mitgeladen wird. MonST ist so per 
Tastendruck ohne Diskettenzugriff sofort verfgbar. Das Ausschalten 
der Option bringt einen Speichergewinn von ca. 24 Kbyte. Der neue 
Wert der Einstellung wird nur dann wirksam, wenn Sie die 
Voreinstellungen abspeichern und GENST.PRG neu starten. Es sollte 
beachtet werden, da AMonST schon installiert zu haben nicht das 
gleiche ist, wie MonST beim Start von GenST zu laden.

2.3.8 Voreinstellungen sichern

Wenn Sie den Abbruch-Knopf bettigen, werden smtliche nderungen, 
die Sie in der Voreinstellungen-Dialogbox gemacht haben, ignoriert; 
mit OK werden die nderungen wirksam. Wenn die von Ihnen gewhlte 
Konfiguration permanent gespeichert werden soll, klicken Sie auf 
Sichern. Die Datei GENST2.INF wird erstellt und enthlt die von 
Ihnen gewhlten Voreinstellungen sowohl aus der Assemblieren-Box als 
auch aus der Voreinstellungen-Box.


2.4 Das Programm-Men

Das Programm-Men enthlt alle Funktionen, die mit dem Assemblieren 
oder der Ausfhrung von Programmen zu tun haben.

2.4.1 Assemblieren

Um das Programm, das Sie z.Zt. editieren, zu assemblieren, whlen 
Sie entweder "Assemblieren" oder drcken Alt-A. Es erscheint die 
Assemblierungs-Dialogbox, die verschiedene Optionen enthlt; hier 
wird nur auf die Ausgabe-Option eingegangen, die weiteren Optionen 
werden im Assembler-Teil besprochen.
GenST kann auf Diskette, in den Speicher, oder nirgendwohin (>>Nein<<)
assemblieren; die "Nirgendwo"-Option ist ntzlich, wenn nur ein 
Syntaxcheck durchgefhrt werden soll. In den Speicher assemblieren 
ist ideal zum Ausprobieren eines Programmes, da nicht auf die Diskette 
geschrieben wird. Wenn Sie in den Speicher assemblieren, mssen Sie 
die Speichermenge angeben, in die das Programm hineinassembliert wird; 
der Standardwert ist 20 Kbyte, genug fr ein durchschnittlich groes 
Programm mit Symbolen oder ein greres Programm ohne Symbole. 
Wenn Sie die Meldung "Programmspeicher voll" erhalten, heit das, 
da die von Ihnen angegebene Speichermenge nicht ausreicht um Ihr 
Programm vollstndig zu assemblieren; Sie mssen also den Programm-
speicher vergrern. Natrlich hat ein grerer Programmspeicher 
zur Folge, da der Assembler weniger Platz zum Arbeiten 
hat. Falls der Assembler mit der Meldung "ungengender Speicher"
abbricht, mssen Sie die Programmspeichergre verringern. Wenn die 
Programmspeichergre mit dem fr den Assembler notwendigen Platz 
nicht zu vereinbaren ist, mssen Sie auf Diskette assemblieren.
Wenn Sie auf Diskette assemblieren, wird die Greneinstellung des 
Programmspeichers ignoriert und der gesamte verfgbare Speicherplatz 
dem Assembler zur Verfgung gestellt. Wenn Ihr Programm auf Diskette 
assembliert wird, ohne da der Assembler sich einen Namen fr diese 
Datei bilden kann, wird der Name Ihres Programms mit NONAME anfangen.

Wenn Sie auf "Assemblieren" klicken oder Return drcken, wird der 
Assembler gestartet. Am Ende des Vorgangs wird auf einen Tastendruck 
gewartet, damit Sie ggf. erscheinende Meldungen in Ruhe lesen knnen, 
bevor Sie zum Editor zurckkehren. Wenn in Ihrem Programm Fehler 
auftreten, wird der Cursor des Editors bei der Rckkehr auf der ersten 
fehlerhaften Zeile Ihres Programmtextes stehen; mit Alt-J gelangen Sie 
dann an den nchsten Fehler.

2.4.2 Programme ausfhren

Wenn Sie "Ausfhren" im Programm-Men whlen, knnen Sie ein in den 
Speicher assembliertes Programm ausfhren; das Tastaturkrzel hierfr 
ist Alt-X. Wenn der Vorgang beendet wird, kehren Sie in den Editor 
zurck. Falls Ihr Programm nicht vollstndig assembliert wurde, kann 
es nicht ausgefhrt werden.
Wenn Ihr Programm abstrzt, kann es sein, da Sie nicht wieder 
in den Editor gelangen und neu "booten" mssen. Es ist also ratsam, 
den Quelltext vor der Ausfhrung des Programmes abzuspeichern.
Vorsicht: Wenn Ihr Programm mit Fehlern, wie z.B. undefinierten 
Symbolen, vollstndig assembliert wurde, knnen Sie es zwar ablaufen 
lassen, jedoch ist die Gefahr eines Absturzes vorhanden.
Wenn Sie ein Programm, egal welcher Art, vom Editor aus ausfhren, 
kann es vorkommen, da der Rechner am Programmanfang oder zum Programm-
ende hin zu "hngen" scheint. Dies ist ein Fehler im GEM, ber den wir 
keine Kontrolle haben; der Mauszeiger befindet sich dabei in der 
Menleiste. Wenn Sie die Maus nach unten bewegen, mte alles normal 
weiterlaufen.

2.4.3 Debuggen

Wenn Sie ein Programm, welches in den Speicher assembliert wurde, 
debuggen wollen, whlen Sie "Debuggen" oder Alt-D. Dadurch wird MonST 
aufgerufen und kann Ihr Programm, das ggf. Symbole enthlt, debuggen. 
Wenn Sie Ctrl-C eingeben, wird Ihr Programm abgebrochen und Sie ge-
langen in den Editor zurck. Die Bildschirminitialisation hngt vom 
Menpunkt "GEM" ab, der weiter unten erlutert wird.
Wenn Sie "MonST laden" in den "Voreinstellungen" nicht gewhlt haben, 
sind weder "Debuggen" noch "MonST" whlbar.

2.4.4 MonST

Wenn Sie "MonST" whlen, oder Alt-M drcken, wird MonST aufgerufen, 
und zwar so, als ob Sie ihn vom Desktop aufgerufen htten, also ohne 
Diskettenzugriff (so wie es auch z.B. beim Debuggen der Fall ist). 
Ctrl-C bringt Sie wieder in den Editor zurck. Die Bildschirm-
initialisation hngt hier auch von GEM ab.

2.4.5 GEM

Normalerweise wird bei "Ausfhren", "Debuggen" und "MonST" eine GEM- 
Bildschirminitialisation vorgenommen. Bei TOS-Programmen braucht man 
aber einen leeren Bildschirm und einen blinkenden Cursor. Wenn der 
Menpunkt "GEM" mit einem Haken gekennzeichnet ist, wird der Bildschirm 
auf ein GEM-Programm vorbereitet, wenn nicht, wird der Bildschirm auf 
ein TOS-Programm vorbereitet. 
Die Einstellung dieser Option wird beim Abspeichern der Voreinstellungen 
beibehalten.
Vorsicht: Ein TOS-Programm mit einem GEM-Bildschirm ist mglich, 
sieht aber unschn aus. Ein GEM-Programm darf aber nie mit der TOS- 
Bildschirminitialisation ausgefhrt werden, da sonst ein Absturz 
sehr wahrscheinlich wird.

2.4.6 Nchster Fehler

Hier ist so gut wie keine Vernderung gegenber der Version 1 zu 
erkennen. Der einzige Unterschied ist, da bei der Rckkehr vom 
Assembler in den Editor der Cursor auf der ersten fehlerhaften Zeile 
plaziert ist.

2.4.7 Anderes Programm

Mit dieser Funktion, die auch mit Alt-O aufgerufen werden kann, knnen 
Sie ein anderes Programm vom Editor aus laufen lassen; wenn das Programm 
beendet wird, kehren Sie in den Editor zurck. Die Hauptanwendungen 
dieser Funktion sind das Ausfhren von assemblierten Programmen und 
der Aufruf des Linkers. Sowohl TOS- als auch GEM-Programme knnen 
ausgefhrt werden. Voraussetzung dafr ist natrlich, da genug Speicher 
vorhanden ist.
Wenn Sie "Anderes Programm" aufrufen, erscheint zunchst eine Warnung 
mit dem Inhalt, da Sie Ihren Quelltext nicht gesichert haben. Danach 
erscheint die File-Selector-Box, in der Sie das auszufhrende Programm 
auswhlen. Wenn es ein TOS- oder ein TTP-Programm ist, werden Sie 
zustzlich nach einer Kommandozeile fr das Programm gefragt. Sie 
knnen in der Kommandozeile das % Zeichen angeben; dies wird dann 
durch den Namen (und nicht durch die Extension) der gerade editierten 
Datei ersetzt. Mit %% wird ein echtes "%" Zeichen in die Kommando-
zeile gesetzt.
Die Bildschirminitialisation hngt von der Extension des Programmes 
ab, und nicht von der Einstellung von GEM.


2.5 Benutzer von Saved!

Wenn Sie die Path-Funktion Saved!s benutzen und Ihr System zum 
automatischen Laden von GENST.PRG mit einem Doppelklick auf die 
Quelldatei konfiguriert haben, gilt die Einschrnkung nicht, da 
sich GENST.PRG und Ihre Quelltexte im gleichen Ordner befinden mssen. 
Der Editor sucht nach der GENST2.INF-Datei zuerst im aktuellen Ordner 
(der Ordner, in dem sich die Datei befindet, auf die Sie geklickt 
haben), und dann in den Ordnern des Paths. Wenn Sie die Vorein-
stellungen sichern, wird die Datei an der Stelle gesichert, an der 
sie gefunden wurde.
Sie knnen Saved! mit dem Tastaturkrzel Shift-Clr aufrufen. Dies 
funktioniert nur, wenn das Accessory auf Ihrer Bootdiskette SAVED!.ACC 
oder SAVED.ACC heit.
 
