int 10
-
ich beschäftig mich grad n bissi mit bootloader/kernel geschichten
im moment bin ich noch ziemlich am anfang im realmode und hab ein problem mit int 10http://de.wikibooks.org/wiki/Interrupts_80x86/_INT_10
ich benutz bochs für die emulation und kann zwar zeichen ausgeben, aber wenn ich versuche funktion 0 oder funktion1 von int 10 zu benutzen (siehe link) reagiert bochs nach der ausführung des ints nicht mehr
hat jemand ne idee?
-
Was heisst bochs reagiert nicht mehr? Friert das komplette Programm ein, so dass du es per Task-Manager killen musst, oder laeuft nur dein emulierter Code nicht weiter?
Schon mit einem anderen VGA-BIOS versucht? Was genau versuchst du auszufuehren (code)?
...
-
ich versuch nix sinnvolles
im prinzip will ich mich nur langsam in richtung c kernel vorarbeitenbochs zeigt einfach einen schwarzen bildschirm
die reihenfolge sieht so aus
1. modus wechseln oder cursorposition ändern
2. text ausgebenpunkt 2 alleine funktioniert
wenn auch punkt 1 ausgeführt wird bekomm ich nen schwarzen bildschirmkann ich bochs irgendwie in nem asm debugger laufen lassen sodass ich die ausführung meines loaders schritt für schritt verfolgen kann?
-
Evtl. kann es sein, dass der Modus, in den du wechselst, keine Textausgabe unterstuetzt.
Bochs hat auch einen debugger, aber als ich den das letzte Mal beaeugt habe, war das ein ziemlich rudimentaeres Gefrickel in der Bochs-Konsole. Lies halt mal die Anleitung oder such auf der Bochs-HP nach einem brauchbaren Frontend fuer den Debugger.
-
hab nen super debugger gefunden
damit lässt sich der bootloader einwandfrei schrittweise abarbeiten
-
Du kannst Bochs auch mit Unterstützung für gdb Remote-Debugging kompilieren,
dann kannst du mit gdb, oder Insight, der grafischen gdb-Variante sogar auf C-Sourcelevel debuggen...Grüße,
Martin