Robotrontechnik-Forum

Registrieren || Einloggen || Hilfe/FAQ || Suche || Mitglieder || Home || Statistik || Kalender || Admins Willkommen Gast! RSS

Robotrontechnik-Forum » Technische Diskussionen » Debuggen mit TEMO » Themenansicht

Autor Thread - Seiten: -1-
000
30.10.2025, 18:36 Uhr
Bert



Kann man mit TEMO ein Programm debuggen, was auf einem ROM-Modul (C000h bis FFFFh) läuft?
Wenn ja, wie verwendet man TEMO?
1. Starten
2. mit BREAK ein Stop setzten und mit
3. GO loslegen
4. ab dem Breakpoint dann mit STEP, oder?

Wenn nein, gibt es eine (verschiebliche) RAM-Version von TEMO?

P.S.: Ganz vergessen: Ich bin auf einem KC85/5 unterwegs...
--
Viele Grüße,
Bert

Dieser Beitrag wurde am 30.10.2025 um 18:36 Uhr von Bert editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
001
30.10.2025, 20:34 Uhr
susowa



Neben BREAK für den RAM gibt es auch noch:

--------------------------------------------------------------------

SBRK nnnn - Vereinbarung eines Haltepunktes
=========
Parameter nnnn - Haltepunktadresse

Die Haltepunktadresse zeigt auf das 1. Byte des Befehls. Der
Haltepunkt kann auch im ROM/EPROM Bereich liegen.

--------------------------------------------------------------------

Ich habe den früher nur selten benutzt, mit dem Emulator von Jens ist das wesentlich einfacher.


MfG susowa
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
002
30.10.2025, 20:38 Uhr
ralle



Müsste ich mal schauen, ich habe eine Kassette 181 TEMO
--
Gruß Ralle

Wenn Sie dazu neigen, Bedienungsanleitungen zusammen mit dem Verpackungsmaterial wegzuwerfen, sehen Sie bitte von einem derart drastischen Schritt ab!...
... Nachdem Sie das Gerät eine Weile ausprobiert haben, machen Sie es sich am besten mit dieser Anleitung und ihrem Lieblingsgetränk ein oder zwei Stunden lang in Ihrem Sessel bequem. Dieser Zeitaufwand wird Sie dann später belohnen...

aus KENWOOD-Bedienungsanleitung TM-D700
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
003
30.10.2025, 21:13 Uhr
maleuma



Mit dem Debugger können keine Programme oder Speicherinhalte im Adressbereich von C000H bis DFFFH untersucht werden, da in diesem Bereich der Programmcode des Debuggers selbst liegt.

Du müsstest eine TEMO-Version erstellen, welche im RAM läuft.
--
Mario.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
004
08.11.2025, 08:37 Uhr
Bert



Kurzer Zwischenstand: Ich kann den USER-ROM aus CAOS 4.8 mit TEMO (beinahe hätte ich TEMU geschrieben...) mit zasm binärident nachbauen.

Nun geht es daran, von der wichtigsten Komponente (dem Step-Debugger) eine RAM-Version zu erzeugen.
--
Viele Grüße,
Bert
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
005
08.11.2025, 12:41 Uhr
maleuma



Die Quellen von TEMO in CAOS 4.8 findest Du auf Github
--
Mario.

Dieser Beitrag wurde am 08.11.2025 um 18:16 Uhr von maleuma editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
006
11.11.2025, 20:09 Uhr
Bert




Zitat:
ralle schrieb
Müsste ich mal schauen, ich habe eine Kassette 181 TEMO


Prinzipiell eine gute Idee, aber das Kasetten-TEMO lädt man in ein M022 und schaltet es auf C000h.
https://www.mpm-kc85.de/html/C0181_Development.htm
--
Viele Grüße,
Bert
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
007
11.11.2025, 20:30 Uhr
Bert




Zitat:
maleuma schrieb
Die Quellen von TEMO in CAOS 4.8 findest Du auf Github


Ich hatte nur das SLR-Listing auf kc85.info gefunden.

Ich hab das jetzt mal etwas abgespeckt (ohne CALC, JEDIT, BSAVE und QMR) und in den RAM geladen.
Im Schrittbetrieb komme ich trotzdem nicht allzu weit, da relativ schnell wieder der USER-ROM aktiviert wird.

DISASS geht und STEP nicht mehr:

Da muß ich noch suchen, wo das passiert...
--
Viele Grüße,
Bert
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
008
12.11.2025, 18:00 Uhr
Bert



Ich glaub den USER-ROM hab ich jetzt im Griff, aber
kann es sein, daß der Debugger DI/EI im untersuchten Code nicht mag?
--
Viele Grüße,
Bert
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
009
12.11.2025, 18:59 Uhr
maleuma



[war doppelt]
--
Mario.

Dieser Beitrag wurde am 12.11.2025 um 19:11 Uhr von maleuma editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
010
12.11.2025, 19:11 Uhr
maleuma



DI darf in dem Code nicht enthalten sein, denn über einen CTC-Interrupt wird ja der Absprung zum TEMO realisiert. Und wenn der gesperrt ist...
Ansonsten bitte noch die verwendeten Speicherzellen im RAM0 beachten, diese dürfen von dem zu debuggenden Programm nicht verwendet werden. Sonst kann es auch zu Fehlverhalten kommen. Aber das kannst Du ja bei Bedarf auch anpassen.
--
Mario.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
011
13.11.2025, 08:06 Uhr
Bert




Zitat:
maleuma schrieb
DI darf in dem Code nicht enthalten sein, denn über einen CTC-Interrupt wird ja der Absprung zum TEMO realisiert.


Hmm. Schwierig.
Ich schau mir mal an, wie das andere Debugger (auf anderen Systemen) handhaben.


Zitat:

Ansonsten bitte noch die verwendeten Speicherzellen im RAM0 beachten, diese dürfen von dem zu debuggenden Programm nicht verwendet werden.


Ja. Aber soweit komme ich ja noch gar nicht
--
Viele Grüße,
Bert
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
012
14.11.2025, 22:37 Uhr
maleuma



Ich debugge ROM-Code in der Regel mit dem JKCEMU. Dort kann man verschiedene ROM-Module auswählen und den entsprechenden Inhalt aus einer Datei zuweisen.
Nur bei Hardware, welche noch nicht vom JKCEMU unterstützt wird, muss man improvisieren.
Meist mache ich dann eine Option JKCEMU EQU 0/1 in den Quelltext, welche die von der fehlenden Hardware kommenden Daten bedarfsweise simuliert.
Für den echten KC setze ich den Optionsschalter wieder auf 0. Den Rest kann man damit ganz gut testen.
--
Mario.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
013
15.11.2025, 10:22 Uhr
Bert



Ja, Danke für die Tipps.
Mein DI konnte ich überspringen. Damit startet das modifizierte (RAM)TEMO und mein Programm im Emulator (Break+Schrittbetrieb+Go).
Das ist die Basis um auf echter Hardware Fehlersuche zu betreiben.

Eine Alternative wäre der Logikanalysator mit dem genialen Protokolldekoder (https://sigrok.org/wiki/Protocol_decoder:Z80). Da fehlt nur noch die Möglichkeit geeignet zu triggern.
--
Viele Grüße,
Bert
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
Seiten: -1-     [ Technische Diskussionen ]  



Robotrontechnik-Forum

powered by ThWboard 3 Beta 2.84-php5
© by Paul Baecher & Felix Gonschorek