Lowlevel

Lowlevel => Lowlevel-Coding => Thema gestartet von: elfish_rider am 27. November 2004, 20:42

Titel: Debugging
Beitrag von: elfish_rider am 27. November 2004, 20:42
Ich suche ein Programm, mit dem ich mein Programm schrittweise durchgehen kann und jederzeit den Inhalt der Register und des Speichers sehe. Gibt es so etwas überhaupt, wenn ja, wo und welche Erfahrungen habt ihr damit gemacht?
Titel: Debugging
Beitrag von: Another Stupid Coder am 27. November 2004, 20:44
Soweit ich weiß, kann Bochs das doch im Debug-Modus...und sonst gibt's ASM-Debugger...die sollten das auch können...
Titel: Debugging
Beitrag von: joachim_neu am 27. November 2004, 23:18
das problem mit den dingern ist halt, dass du damit sowas wie eingaben nicht machen kannst, und du also nicht das hast, als würde der code ausgeführt. ich habe mir eine funktion geschrieben, mit der ausgegeben wird, wie dir register stehen, und dann auf einen tastendruck gewartet wird. den funktion-call kann ich dann überall einbauen, und sehe so die register an wichtigen stellen.
Titel: Debugging
Beitrag von: TeeJay am 27. November 2004, 23:53
Im Bochs-Debugmodus können die Register mit "dump_cpu" ausgegeben werden.

Man muss allerdings einen Breakpoint gesetzt haben oder den code im einzelschritt laufen lassen.
Titel: Debugging
Beitrag von: elfish_rider am 28. November 2004, 11:23
Ich finde den Bochs-Debugger eher mühsam. Man muss umständlicherweise nach jedem BIOS-Int-Aufruf einen Breakpoint setzen, sonst muss man die langen BIOS-Prozeduren in Einzelschritten durchmachen  :|
Titel: Debugging
Beitrag von: joachim_neu am 28. November 2004, 11:31
deswegen benutze ich meine dump_regs funktion, die kannste einfach dahintersetzen.
Titel: Debugging
Beitrag von: elfish_rider am 28. November 2004, 11:36
Das macht dann wiederum die Einzelschritte praktisch unmöglich...
Titel: Debugging
Beitrag von: joachim_neu am 28. November 2004, 13:17
du kannst ja hinter jeden befehl die funktion hängen  :lol:
Titel: Debugging
Beitrag von: elfish_rider am 28. November 2004, 14:38
na, wenn das nicht umständlich ist...
Titel: Debugging
Beitrag von: joachim_neu am 28. November 2004, 15:14
naja, gewisse teile vom code weißte ja, dass funktionieren! z.B. eine stringausgabe und das BIOS-Int lesen, usw. d.h. da musste keinen test einbauen. und bei dem anderen machste halt die funktion da hin, wo der abschnitt zuende ist. und wenn es nicht geht verschiebste es nach vorne und grenzt damit den fehler ein.