80-Bus Journal

  

Februar 1983 · Ausgabe 2

Firmware disassembliert

von Günter Kreidl

Nascom-Besitzer sind Tüftler, die immer genau wissen wollen, wie alles funktioniert, sei es die Hardware oder die Software. (Das ist jedenfalls mein Eindruck!) Es haben sicherlich schon verschiedene Leute die Firmware entschlüsselt, sprich disassembliert. Wir können so etwas aus Copyright-Gründen natürlich nicht abdrucken (auch den Platz dafür haben wir nicht!), aber wir können Hinweise darauf geben, wie man das selber machen kann. Ich möchte hier mit ZEAP den Anfang machen. Wer längere Zeit mit dem Assembler gearbeitet hat, der möchte vielleicht auch mal wissen, wie er funktioniert. Vielleicht möchte ihn auch jemand verändern. Ich habe relativ leicht mit NASDIS ZEAP in ein ZEAP-File verwandeln können. Zunächst muß man die Datenbereiche kennen. Es sind nur zwei: D006-D009, D00D-D305. Jetzt kann man NASDIS die Disassemblierung vornehmen lassen. Der Quellcode muß nun noch ein bißchen editiert werden, aber auch das hält sich in Grenzen. Zurächst gibt man den Befehl R 4 2 ein. Dann müssen die Zeilen 660 bis 572 geändert werden, weil es sich bei den Daten hier teilweise um Adressen handelt. Je einem Datenbyte folgt eine Adresse als Hilfestellung seien hier die Adressen aufgeführt: D2DC, D2E4, D2E8, D3EC, D2F0. Mit Hilfe der freien Zwischenzeilen kann man diesen Bereich nun in folgender Weise umschreiben:
xxxx DEFB Datenbyte
xxxx DEFW Adresse (als Label, also mit vorgestelltem „L“!). Diese Labels müssen jetzt noch im Quelltext an den richtigen Stellen (sie liegen am Ende des Datenbereichs!) eingefügt werden. Man kann die Stellen mit einer versuchsweisen Assemblierung leicht finden (ORG £0000 vorgeben!). In einer der letzten Zeilen des Quelltextes steht: LE000 EQU £E000. Das ist zu ändern in: LE000 EQU $. Will man feststellen, ob man alles richtig gemacht hat, läßt man jetzt mit ORG £0000 und einem Offset assemblieren und vergleicht mit einem kleinen Testprogramm Byte für Byte die Originalversion mit der assemblierten Version. Sie müssen übereinstimmen. Dann kann man den Assembler auch an eine andere Speicherstelle assemblieren und dort testen. Wer aber ZEAP nur im Speicher verschieben will, braucht sich die Mühe des Disassemblierens nicht zu machen, denn es folgen hier noch die Verschiebungsvektoren für ZEAP und DEBUG. Mit dem im letzten Heft beschriebenen Relocator können beide Programme jetzt an beliebige Speicherstellen (Pages!) gelegt werden (bei mir läuft z.B. ZEAP jetzt auf F000). DEBUG benötigt NASDIS im direkt anschließenden Speicher. Man sollte also nur beide gemeinsam relozieren. Die beiden Verschiebungsvektoren können dann zu einem zusammengefaßt werden.

Impressum

Herausgeber:

Günter Böhm______________ ___. ___
__ KarlsruheTel. ____/______
Redaktion, Layout (Grafik), Versand
Günter Kreidl_________ __
____ StraelenTel. _____/____
Redaktion, Layout (Text), Buchhaltung

Korrespondenten:

Wolfgang Mayer-Gürr____________ ___ ___
___ RecklinghausenTel. _____/_____
Clemens u. Max Ballarin_______ ___. _
___ UeberlingenTel. _____/_____
Michael Bach__ __________ __
____ StegenTel. _____/_____
Peter Brendel__________. __
____ Mannheim
Hans-Jürgen Plath____ _______. _
____ Kiel
Hans Schneider________ ____
____ Esens
Oesterreich:
Gerhard Klement________. ___/_/__
A-____ WienTel. ____/_______
Niederlande:
Eric v.d.Vaart__________ __
NL-____ __ Waddixveen
England:
Frank M. Butler___ ____ ____ ____
Mansfield Woodhouse/​Notts
Luxemburg:
Rene Claus_________. __
L-___ Bonneweg

Verlag:

Günter Kreidl____ Straelen

Vertriebsweise und Bezugspreis:

EinzelheftDM5,–
DoppelheftDM10,–
Jahresabonnement   In- und AuslandDM60,–

Es erscheinen 10 Hefte pro Jahr, davon zwei Doppelhefte. Es können jeweils nur ganze Jahrgänge abonniert werden. Bei Bestellungen nach dem Erscheinungsdatum des ersten Heftes eines Jaghrgangs werden die bereits erschienenen Hefte nachgeliefert. Die Lieferung von Einzelheften durch den Verlag ist nicht möglich. Bitte zahlen Sie direkt bei der Bestellung auf das Postscheckkonto:

Günter Kreidl____ __-___ PSchA _____

Haftung und Rechte:

Für Fehler in Texten, Bilder, Programmen und Schaltungen und daraus entstehende Schäden kann keine Haftung übernommen werden.

Alle Rechte verbleiben grundsätzlich bei den Autoren der Beiträge. Die Veröffentlichung von Programmen und Schaltungen geschieht nur für den persönlichen Gebrauch der Abonnenten des 80-BUS-Journals; jede kommerzielle Auswertung ist nur mit Genehmigung des Verfassers erlaubt. Beiträge, die nicht mit einem Copyright-Vermerk versehen sind, dürfen für nichtkommerzielle Verwendung vervielfältigt werden, wenn als Quelle das 80-BUS-Journal und der Verfasser angegeben werden.

NASCOMPL
Seite 27 von 28