Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| z1013:software:reassembler [2020/09/28 05:43] – angelegt volkerp | z1013:software:reassembler [2020/09/28 06:23] (aktuell) – [EXREASS] volkerp | ||
|---|---|---|---|
| Zeile 13: | Zeile 13: | ||
| * (undoc) IX-Ladebfehle codei407F | * (undoc) IX-Ladebfehle codei407F | ||
| - | Und das Ganze noch meiner Erweiterung | + | ===== Download ===== |
| + | |||
| + | * {{ : | ||
| + | |||
| + | ===== Anleitung ===== | ||
| + | |||
| + | Der Reassembler steht ab Adresse 3600H bis | ||
| + | Adresse 3FE4H. Der Start erfolgt auf der Adresse 3600H. Das Programm | ||
| + | meldet sich mit der Ausschrift: | ||
| + | ROBOTRON Z 1013 REASS 1.02 | ||
| + | AB BIS ORG-ADRESSE: | ||
| + | Unter dieser Ausschrift können nun z.B. folgende Adressen eingegeben | ||
| + | werden: | ||
| + | F000 F020 F000 | ||
| + | D.h., es wird der Anfang des Monitorprogramms rückübersetzt. Ist die | ||
| + | letzte Adresse gleich der ersten, so kann diese entfallen. ORG-Adresse | ||
| + | bedeutet die Adresse, auf der das lauffähige Programm stehen | ||
| + | müsste. Man kann also auch Programme reassemblieren, | ||
| + | laufen würden oder auf z.Z. belegten Speicherbereichen | ||
| + | lauffähig sind. Sie können z.B. den in Anlage 13 angeführten | ||
| + | Zählermodul nicht auf den Originaladressen ab 3C00H reassemblieren, | ||
| + | weil dort der Reassembler steht. Wenn Sie das tun wollen, so müssen | ||
| + | Sie den Zählermodul einlesen, anschließend mit dem T-Kommando z.B. | ||
| + | auf die 1000H umladen und danach den Reassembler einlesen und | ||
| + | starten. Kommandos nach dem Einlesen des Zählermoduls: | ||
| + | # T 3C00 1000 400 ;Umladen des Zählermoduls | ||
| + | # L 3600 3FFF ;Einlesen des Reassemblers | ||
| + | # J 3600 ;Starten des Reassemblers | ||
| + | ROBOTRON Z 1013 REASS 1.02 | ||
| + | AB BIS ORG-ADRESSE | ||
| + | 1000 1020 3C00 | ||
| + | Zu beachten ist, dass der Reassembler auch bei ASCII-Zeichen eine | ||
| + | Übersetzung versucht! Daraus können mitunter Verschiebungen | ||
| + | entstehen, die dann auch bei richtigen Maschinenbefehlen zu einer | ||
| + | falschen Rückübersetzung führen. Nach einigen Bytes fängt sich der | ||
| + | Reassembler und arbeitet wieder korrekt. Der Abbruch erfolgt mit S4/K (SHIFT 4/K). | ||
| + | |||
| + | ===== EXREASS ===== | ||
| + | |||
| + | Ich habe 1988 den Reassembler ein wenig erweitert (extended reassembler, | ||
| + | |||
| + | * Die Angabe der End-Adresse entfällt. | ||
| + | * Nach Anzeige des ersten Datenbytes kann entschieden werden, wie die Interpretation erfolgen soll: als Adresse, Byte, Ascii, Maschinencode (Drücken | ||
| + | * Systemaufrufe via RST 20H werden mit symbolischem Namen angezeigt | ||
| + | * bei Systemaufruf PRST7 wird der nachfolgende Text angezeigt | ||
| + | * Man kann mit ' | ||
| + | |||
| + | auch diese Version habe ich aktualisiert | ||
| Im Bild sieht man, wie undokumentierte Befehle jetzt korrekt angezeigt werden und auch die Systemrufe | Im Bild sieht man, wie undokumentierte Befehle jetzt korrekt angezeigt werden und auch die Systemrufe | ||
| reassembliert werden: | reassembliert werden: | ||
| Zeile 19: | Zeile 66: | ||
| {{: | {{: | ||
| - | ===== Download ===== | ||
| - | * {{ : | ||