|
|||||||||||
|
AW: Codeanalyse
Hallo Hannes,
Nur so der guten Ordnung halber: Ich mache meine Experimente mit Ghidra und dem CB-Emu-Debugger mit der Maschinen-Version "fscc9a", also den ROMs 101-1034a01 und 101-1034b02. (d.h. NICHT mit "fscc9a1".) Das spielt eine Rolle beim Setzen von Breakpoints, Vergleichen von Code-Abschnitts usw. Welche ROM-Version meine physische Maschine hat, weiss ich nicht. Aufgrund der Seriennummer (23303798) vermute ich ein Baujahr 1982 und damit eine ROM-Version wie "fscc9a" oder "fscc9a1". Hans die Roms im fscc9a1 haben die gleichen Namen wie die des fscc9a. Ich habe die beiden ROMs mal verglichen und nur wenige Unterschiede gesehen, die ich allerdings nicht genauer untersucht habe. Aber natürlich sind dann gewisse Routinen an anderer Adresse zu finden. Die ersten 8kB ROM sind identisch. Ich habe nun das Eröffnungsbuch des Sensory 9 in das Sargon 4.0 Rom kopiert und getestet. Es funktioniert dort einwandfrei, obwohl es in einem anderen Speicherbereich liegt. D.h. Im Buch gibt es keine absoluten Links (Verkettungen). Ich bin noch dabei mir die Debugger-Möglichkeiten des CB-Emu anzusehen. Werde das jetzt auch mit der selben ROM-Version wie Du machen. schöne Grüße Hannes |
| Folgender Benutzer sagt Danke zu Moonshine für den nützlichen Beitrag: | ||
kamoj (23.11.2023) | ||
|
|||||||||||
|
AW: Codeanalyse
Hallo Hannes,
Im Moment komme ich mit der Interpretation der folgenden Tabelle nicht weiter. Von C23E bis C267 gibt es eine Tabelle, die vom Zuggenerator verwendet wird ("fscc9a"): C23E: 00 80 C240: 08 88 00 80 08 88 00 80 08 88 05 05 05 05 06 06 C250: 06 06 07 07 07 07 3C 3C 3C 3C 1E 28 28 1E 00 08 C260: 0F 15 1A 1E 21 23 24 24 Ich habe die Logik noch nicht verstanden. Weisst du da mehr? Schöne Grüsse, Hans |
| Folgender Benutzer sagt Danke zu für den nützlichen Beitrag: | ||
kamoj (02.12.2023) | ||
|
|||||||||||
|
AW: Codeanalyse
Hallo Hannes,
Im Moment komme ich mit der Interpretation der folgenden Tabelle nicht weiter. Von C23E bis C267 gibt es eine Tabelle, die vom Zuggenerator verwendet wird ("fscc9a"): C23E: 00 80 C240: 08 88 00 80 08 88 00 80 08 88 05 05 05 05 06 06 C250: 06 06 07 07 07 07 3C 3C 3C 3C 1E 28 28 1E 00 08 C260: 0F 15 1A 1E 21 23 24 24 Ich habe die Logik noch nicht verstanden. Weisst du da mehr? Schöne Grüsse, Hans ich habe mir die Tabelle eben mal angesehen und ein paar Versuche im CB-Emu-Debug-Mode vorgenommen. Die Tabelle reicht von $C23E - $C255 und beinhaltet Adresslinks ins RAM. Von $C23E - $C249 sind die lower Bytes gespeichert, von $C24A - $C255 die dazugehörigen High-Bytes. Die Tabelle ist also 12 Einträge groß. Leider werde ich auch nicht schlau daraus, was letztendlich in diesem Adressbereich während der Zuggenerierung gespeichert wird. Ich habe auch bis jetzt noch keine Zugliste gefunden die im RAM stehen würde. Beim Sargon 2.5/3.0/3.5 habe ich die auf Anhieb gefunden. Ich denke, ich muss jetzt mal versuchen umzudenken :-). Lg Hannes |
|
|||||||||||
|
AW: Codeanalyse
Hannes |
|
|||||||||||
|
Re: Codeanalyse
Ich habe mir den SC9-Code ein wenig angesehen und herausgefunden, dass die Option F5 nach dem Reset zwar implementiert, aber nicht dokumentiert ist.
Weiß oder vermutet jemand, was sie steuert? /Lars |
|
|||||||||||
|
AW: Re: Codeanalyse
Hallo Lars,
![]() Grüße, Franz
__________________
Meine Webseite: https://fhub.jimdofree.com/ Geändert von fhub (27.07.2025 um 15:04 Uhr) |
|
|||||||||||
|
Re: Codeanalyse
Danke Franz, ich schrieb falsch, was ich meinte ist "H6", die nicht beschrieben ist!
(Siehe Code AT $EA57 (AND #$10) und $EA6D.) Es tut mir leid für meinen Fehler, versuchen Sie mir zu verzeihen. Wissen Sie, was H6 macht? /Lars |
![]() |
|
|