home *** CD-ROM | disk | FTP | other *** search
- ReadMe File
-
- zum CodeX Assembler Development System
- von Stefan Riege, 1989,90
-
-
- Die Programmfertigstellung geschah nach dem Drucken des Handbuchs, so daß
- Änderungen in den Programmen nicht mehr mit aufgenommen werden konnten.
- Dieses File soll die Änderungen beschreiben, soweit dies nötig ist.
-
- **************************HISTORY***********************************
- ---20.01.90, V1.10&DEBUGGER V1.35---
- Vielen Dank an Michael Cremer für das Auffinden einiger Fehler sowie
- vieler Verbesserungsvorschläge !!
-
-
- ZUM DEBUGGER
-
- RECORD BEFEHLE
- Die Realisation der Record Befehle war weit komplizierter als zuerst
- gedacht, daher müssen diese Befehle etwas abweichen, bzw. es sind
- kleine Einschränkungen zu machen:
- Nachdem der Record Mode eingeschaltet worden ist ("onr"), können zwar
- gespeicherte Record Dateien geladen werden ("lr"), innerhalb dieser
- Dateien wird jedoch der Befehl "offr" übergangen, da sonst nach jedem
- Aufruf von Dateien das Recording abgeschaltet sein würde, da dieser
- Befehl normalerweise am Ende einer Record Datei steht.
- Weiterhin sollten die Record Befehle i.a. mit Vorsicht benutzt werden,
- da z.B. das Ansprechen von Adressen über absolute Werte überhaupt
- nicht möglich ist, oder auch Fehler, die während des Ladens auftreten
- völlig übergangen werden.
- TABULATOR
- Der Übersicht wegen ist eine klare regelmäßige äußere Form des Source
- wünschenswert. Um dies zu unterstützen, kann das Listing mit Shift und
- der Tabulatortaste korrigiert werden. In einem solchen Fall wird der
- Text bis zum nächsten Tabulator aufgerückt (am besten diese Funktion
- ausprobieren). Da viele Editoren diese Funktion standardmäßig auf der
- einfachen Shift Taste haben, können die Funktionen von Shift Tab und
- Tab mit CTRL+QT getauscht werden (ein wiederholter Aufruf von CTRL+QT
- erzeugt den alten Zustand).
-
- ---20.01.89, V1.35---
- CTRL Sequenzen
- In der Kommandozeile im Hauptmenue sind CTRL Sequenzen möglich:
- CTRL+A : setzt nach dem nächsten Befehl ein Breakpoint, springt
- an den PC und löscht danach den Breakpoint wieder. Dies ist
- z.B. gut, um "DBF Dx,<label>" anzuspringen und durchlaufen
- zu lassen.
- CTRL+B : Break Point an PC Adresse "togglen", also setzen oder löschen
- CTRL+D : wie "d pc", also ab PC disassemblieren
- CTRL+Q : wie "m pc", also Memory Dump ab PC
- CTRL+R : wie "jmp pc", also an PC Adresse springen
- CTRL+S : wie "sc", also nächsten Befehl übergehen
- par <string>
- Setzt das Register D0 und A0, so, als wäre das Programm vom CLI mit
- der Kommandozeile <string> aufgerufen wäre.
- sp
- Dieser Befehl initialisiert einen Stackpointer.
- Drucker
- Die Drucker Ausgabe geschieht nicht mehr in 80 Zeichen Zeilen, sondern
- es werden nur soviele Zeichen ausgegeben, wie benötigt werden.
- map
- Der Block Allocation BitMap Editor ist fehlerfrei.
- aptd <adr> <block> <file>
- Dieser Befehl schreibt das File reloziert mit Adresse <adr> auf das
- aktulle Laufwerk ab der BlockNummer <block>
-
-
- ZUM ASSEMBLER
-
- BENUTZEROBERFLÄCHE
- ---20.01.90, V1.10---
- Mouse Pointer
- Es ist einschaltbar, daß der Mouse Pointer nach der Eingabe eines
- Zeichens verschwindet, bei dem Bewegen der Mouse jedoch sofort
- wieder erscheint.
-
- HELP
- ---20.01.90, V1.10---
- Neu Laden
- Die Helppage kann mit F1 im Help Window neu geladen werden.
-
- LINKER
- ---20.01.90, V1.10---
- in Speicher linken
- Es ist nun möglich, direkt in den Speicher zu linken.
- Definitionen
- Das Anzeigen aller Definitionen ist nun abschaltbar.
-
-
- UTILITIES
- Im Utilities Menue sind weiter Menuepunkte zu Alt-Keymap-Befehlen, die
- jedoch noch nicht implementiert sind. Zukünftig sollen hiermit Tasten-
- kombinationen mit Alt mit Zeichenketten belegt werden.
-
- ---20.01.90, V1.10---
- Formatierung erfolgt fehlerlos.
-
-
- ASSEMBLER
- BRA.L/BRA.S
- Desöfteren kommt es vor, daß in einem fertigen Programm Long
- Branches benützt werden, obwohl Short Branches genauso ausreichen
- würden (BRA.S). Ist im Preferences Menue die Option "report
- unnecessary BRA.L" eingeschaltet, wird an jeder Stelle, wo ein
- Long Branch unnötig benutzt wird, eine Warnung #109 ausgegeben.
- Nun kann das Listing im Editor mit den Goto Error Funktionen ange-
- passt werden.
- (Ax,Dx)
- Bei dieser Adressierungsart muß keine Null vor der Klammer mehr mit
- angegeben (z.B. "(A0,D0)" statt "0(A0,D0)").
- xxxx.W/xxxxxxxx.L
- Bei der absoluten Adressierung kann hinter einer Zahl die Suffixe
- ".W" und ".L" stehen, der Assembler setzt dann entweder die Word-
- oder Longword Adressierung ein.
-
- ---20.01.90, V1.10---
- Diverse Fehler
- Gefundene Bugs wurden beseitigt. Eine vollständige Kompatibilität
- zu SEKA und DevPac ist nicht herstellbar.
- Beispiele:
- So sind MOVE.W von oder zum CCR nicht zulässig (dies widerspricht
- auch der Logik, da das CCR Register ein BYTE Register ist, MOVE
- und MOVE.B mit dem CCR sind erlaubt). Weiterhin ist der Befehl IIF
- nicht implementiert. Zahlen dürfen keine Suffixe haben, d.h.
- "$64.W" ist nicht erlaubt, "$64" wird aber vom Assembler sowieso
- als Short behandelt.
- Die Kompatibilität wurde aber verbessert.
- Lokale Labels
- Es sind jetzt lokale Labels zugelassen (mit den Preferences ein-/
- ausschaltbar). Ein "_" oder "." kennzeichnet ein lokales Label,
- d.h. ein Label, welches nur zwischen zwei nicht-lokalen Labeln
- sichtbar, d.h. ansprechbar ist.
- IF..ELSE..ENDC
- IF..ELSE..ENDC Konstruktionen werden korrekt verarbeitet.
- BRA.S
- Ein normalerweise unzulässiges BRA.S zu der nächsten Adresse wird
- in ein NOP umgewandelt, es wird eine Warnung ausgegeben. Diese
- Korrektur ist ausschaltbar.
- BRA.L
- Unnötige BRA.L, die also durch ein BRA.S ersetzt werden könnten,
- was der Assembler leider nicht immer vornehmen kann (bei Forward-
- Referencen), werden angezeigt (abschaltbar).
- []
- Eckige Klammern werden bei arithmetischen Ausdrücken nun
- verarbeitet, um die SEKA-Kompatibilität zu steigern.
- NOINCBIN/ONINCBIN
- NOINCBIN schaltet das Einbinden von Binärdateien mit INCBIN ab,
- ONINCBIN schaltet dies wieder ein.
- Absoluter Code
- Es besteht nun die Möglichkeit, absoluten Code zu erzeugen. ORG
- im Source gibt die Adresse an, wie der Code reloziert werden soll.
- Wird ein LoadFile erstellt, bedeutet das, daß die Daten binär
- gespeichert werden, bei einem ObjectFile wird ein linkfähiges File
- mit Hunks erstellt.
- Export All/Import Undefined Labels
- Es werden (abschaltbar) alle Labels exportiert (wie mit XDEF) oder
- ggf. alle nicht definierten Labels importiert.
- Error Wait
- Nach dem Auftreten von fünf Fehlern wird nicht nur auf Tastendruck
- gewartet, sondern mit "Y" kann man den Assemblierungsvorgang
- abbrechen.
-
-
- EDITOR
- Es besteht ab der Version 1.03 die Möglichkeit, Seka-Source Files ein-
- zulesen, und zwar so, daß die Sources automatisch konvertiert werden.
- CTRL+KG öffnet den übliche Filerequester zur Auswahl des Filenames.
-
- ---20.01.90, V1.10---
- Diverse Fehler wurden beseitigt.
-
-
-