; DASM is a TDL/ZILOG Disassembler derived from Dave Barker's ; ZZSOURCE and Ward Christensen's RESOURCE by Richard Conn. Refer to ; the documentation on RESOURCE and the built-in HELP data for information ; on the commands used for DASM. A Help file is also being planned for DASM.DASM selbst erzeugte Code für den Z80 Prozessor undzwar mit mit dem ZILOG-Modul Assemblermnemonics in Z80 ZILOG-Notation und mit dem TDL-Modul erweiterte Assemblermnemonics in 8080-Notation. Aus dem oben erwähnten Programm RESOURCE ließ sich jedoch auch eine „reine" 8080-Lösung erzeugen. Die Arbeitsweise von DASM war wie folgt (eine Anleitung, allerding nicht in aktueller Form, von mir findet sich hier):
M80 =DASMZ80 /Z | Assembliert den Kern |
M80 =DASMKRN /Z | Assembliert den ZILOG-Teil |
L80 DASMZ80,DASMKRN,DASM/N/E | Erstellt die Datei DASM.COM |
Hier die Quelldateien: | ||
Disassemblerteil
|
Kommandoteil
|
Originale Quellen v1.5
|
1. |
Im Quelltext werden in der Regel viele Unterprogramme aufgerufen.
Eine Hilfe ist dabei eine Liste dieser Unterprogramme für eine bessere Übersicht.
Ich habe dazu zuerst ein Hilfsprogramm LABDASM in TURBO Pascal geschrieben, das Labels alphabetisch auflistet, die in CALL -Anweisungen stehen.
Dies basiert auf dynamischen Routinen von Rodnay Zaks aus seinem Buch Einführung in PASCAL (Seite 308).
Später habe ich das Programm LABDASM in Assembler geschrieben.
Hier basieren die dynamischen Routinen auf dem Aufsatz Binary Tree Manipulation mit dem 8080 von Mike Gabrielson.
Angeregt durch diese Routinen habe ich ein zweites TURBO Pascal-Programm geschrieben – LABDASMB – basierend auf dem Binärbaum.
In einigen Fällen existieren verschiebbare Programme, denen eine Bit-Map angehängt ist. Für eine neue Assemblierung ist es wichtig, diese Referenzen zu kennen. Dafür habe ich das Programm BITADR geschrieben. ![]() |
Zurück zu den Disassembler-Aktivitäten |