★ APPLICATIONS ★ PROGRAMMATION ★ Z80-ASSEMBLERPAKET|CPC Amstrad International) ★ |
Z80-Assemblerpaket | Applications Programmation |
Von vielen, die schon einmal mit Programmen aus der Public-Domain gearbeitet haben, wird die Meinung vertreten, daß diese Programme unkomfortabel, fehlerhaft und kaum lauffahig sind. Auch wenn dies natürlich eine ziemliche Übertreibung ist, liegt schon ein gewisser wahrer Kern darin. Auch enthält die Public-Domain eine Reihe von Programmen, die speziell auf bestimmte Hardware-Konfigurationen zugeschnitten sind. Solche Programme können natürlich kaum auf einem Schneider-Computer laufen. Daß es auch anders geht, beweisen die Public-Domain-Disketten der Firma Martin Kotulla. Hier wurden verschiedene Disketten zusammengestellt, die besonders interessante Programme enthalten. Dazu wurden die Systemmeldungen dieser Programme durchweg ins Deutsche übersetzt und die Programme an den Schneider-CPC und Joyce angepaßt. Jede dieser im Augenblick sechs Disketten wird mit einer ausführlichen gedruckten deutschsprachigen Anleitung geliefert. Das ist im Bereich der Public-Domain in ganz Deutschland bisher einmalig! Die Diskette 2 der deutschsprachigen Public-Domain enthält ein Z80-Assembler-paket. Es dürfte aufgrund seines Anwendungsbereichs auch für eine größere Anzahl von CPC- und Joyce-Besitzern interessant sein. Denn diese besitzen zusammen mit ihrem CP/M-Betriebssy-stem bereits die Assembler ASM, MAC und RMAC. Doch diese sind ebenso wie die Debugger DDT und SID auf die völlig veralteten 8080-Mnemonics ausgerichtet, mit denen heute kein Mensch mehr programmiert. An sich wäre es ja Aufgabe von Digital Research, hier Abhilfe zu schaffen. Doch da man dort zur Zeit in 16-Bit-Sphären schwebt, muß man als CP/M-Benutzer woanders Ausschau halten. Da ist natürlich die Public-Domain ideal. Das Z80-Assemblerpaket besteht aus mehreren Einzelprogrammen, die zusammen arbeiten und Daten austauschen können:
Will man ein Assemblerprogramm erstellen, kann man es mit ED eingeben. Dieser Editor arbeitet bildschirmorientiert und bietet eine recht große Untermenge der Befehle des Textprogramms Wordstar. Er ist in etwa vergleichbar mit dem Editor von Turbo-Pascal. Hat man eine entsprechende Quellcode-Datei erstellt und auf Diskette gespeichert, wird der Assembler ZMAC aufgerufen, der positionsunabhängige Objektcode-Module erzeugt. ZMAC versteht alle Z80-Befehle sowie Pseudodirektiven wie DEFW, DEFB und DEFS. Statt EQU verlangt er aber ein Gleichheitszeichen. Etwas ungewöhnlich, aber sonst nicht weiter störend. ZLINK verarbeitet die von ZMAC erzeugten .OBJ-Dateien in das CP/M-gerechte .COM-Format. Dabei kann dieser Linker mehrere bereits vorassem-blierte Programmodule zu einem Gesamtprogramm zusammenbinden. Diese Linkfahigkeit ist unabdingbar beim Einsatz im (semi-)professionellen Bereich und fehlt beispielsweise bei ASM und MAC von Digital Research. Da hat man nun ein Programm fertiggestellt, und siehe da - es läuft nicht! Das ist ein typischer Fall für einen Maschinensprachemonitor und Debugger wie ZMON. Gegenüber den herkömmlichen Debuggern bietet er einige Vorteile. So besitzt er einen integrierten Z80-Zeilen-assembler, der Labels, DEFBs und Kommentare verwalten kann. Die Einzelschrittabarbeitung von ZMON muß man wirklich gesehen haben: Am Bildschirm werden zwanzig Maschinenbefehle angezeigt. Ein Pfeil zeigt auf den gerade abgearbeiteten Befehl und bewegt sich ständig entsprechend dem Programmfluß. Die Z80-Register werden angezeigt und ständig aktualisiert. Über die Tastatur kann man die Abarbeitung beschleunigen, verlangsamen und ganz abbrechen. Auf Wunsch stellt ZMON ein Speicherfenster dar, in dem Schreibvorgänge des Programms in den RAM sofort sichtbar werden. DASM ist ein intelligenter und interaktiver Disassembler. Was ist das denn nun? Zuerst einmal ein ganz normaler Disassembler, der Maschinencode-Bytes in Z80-Mnemonics zurückverwandelt. Seine wahren Qualitäten zeigt er erst, wenn es darum geht, Programmcode und Datenbereiche zu unterscheiden. Das kann er nämlich automatisch und schafft es sogar hundertprozentig, wenn ein Datenbereich länger als acht Bytes ist. Für Sprungadressen erzeugt DASM selbsttätig Labels, die vom Benutzer durch sinnvolle Namen ersetzt werden können. Und sobald der Benutzer dann noch Kommentare in den Quelltext eingefügt hat, besitzt er einen Quellcode, der sofort wieder mit ZMAC assemblier-bar ist. Davor ist kein Maschinenprogramm sicher! Selten fällt es so leicht, ein Programmpaket zu empfehlen. Für einen Preis von 30, - DM, bei dem kommerzielle Programme einfach nicht mithalten können, besitzt das Z80-Assemblerpaket Möglichkeiten, die weit über den Hobby bereich hinausgehen.
|