Lowlevel
Lowlevel => Lowlevel-Coding => Thema gestartet von: zacK am 06. September 2004, 08:51
-
Hallooo!
Wenn ich den Bootloader mit bochs teste, bleibt er irgendwo in einer endlos-schleiffe hängen und kackt anschliessend ab. aber wenn ich von der diskette boote läuft alles gut. Was könnte das sein?
Ausser dem habe ich gemerkt, dass der Bootloader nicht auf allen Bios läuft. Auf was muss man schauen, dass der Bootloader kompatibel ist?
mfg z4ck
PS: Der Code wäre sonst hier (http://www.domae.ch/downloads/boot.asm)
-
Hiho.
hast du schonmal den Code im debugmodus von Bochs getestet? Da ich gerade auf Arbeit bin, kann ich es nicht durchtesten.
Um in den Debugmodus zu kommen, musst du mal im Res-Center schauen. da hat Teejay mal ein Tut dazu geschrieben.
MfG JensFZ
-
jo habe ich, da kommt immer: "LOCK prefix unallowed..." etwa 1000 mal dann schliesst sich bochs.... :-/
-
liegt oft an den dusligen Einstellung in der bochsrc is manchma so anal einfach das mans nich findet
-
banal einfach mein ich natürlich^^
-
hab mal drüber gesehen:
Es scheint alles in Ordnung zu sein
Bei den Einnstellungen in Bochs (beim Start) kann man die Datei zurücksetzen. Mach das mal und konfigurier die neu
-
jo thx...
habe alles zurückgesetzt und neu konfiguriert. doch der fehler bleibt derselbe... :(
beim bochsdebugen kommt noch: lock xchg cx, bp ;f087e9
welches den fehler verursacht (glaube ich zumindest)
könnte es jemand kurz bei sich testen? wäre sehr dankbar.
mfg
thx4help
z4ck
-
hi
scheint so, als der Fehler im BIOS ist. installier Bochs noch mal neu und versuchs dann noch mal, alternatibve kannst du auch mal ein anderes BIOS auswählen
mfg gurru
-
Um sicher zu gehen, dass dein Loader für (hoffentlich) alle BIOSs in Ordnung ist, besorg dir Ralf Browns Interrupt Liste (googlen) und überprüfe darin alle Interrupts, die du verwendest. In der Liste ist vermerkt, wenn ein Interrupt bei manchen BIOSs was anderes/unerwartetes/... macht.
-
so, ich habe den bochs nochmal heruntergeladen und probiert, anderes bios gewählt -> probiert, anders vgabios gewählt -> probiert. nix geht.
habe ich vieleicht was falsch eingestellt?
->> http://www.domae.ch/downloads/bochsrc.txt
das ist der fehler:
->> http://www.domae.ch/downloads/bochsout.txt
möchte endlich weiter progen :/
mfg
-
teste das mal
Ergebnis gebe ich morgen bekannt
mfg gurru
-
Einen Fehler hab ich gefunden:
In search file:
Du überspringst mit JE .3 POP CX, das heißt dieser Wert liegt noch auf dem Stack -> Probleme beim Rücksprung
Bei mir funktioniert es außerdem wunderbar - hast du bei dir die Datei erstellt? Wenn ja, Könnte das der Grund für den Fehler sein (s.o.)
mfg gurru
-
thanx!!!!!!!!!
vielen dank... muss ich sofort ausprobieren!!
mfg domae
ps: ich habe die datei erstellt, komisch nur das es beim laptop geklappt hat (booten)
-
hi
ich bezweifle, das es beim Laptop geklappt hat. Der Prozessor wird wahrscheinlich nicht weitergearbeitet haben, (oder Mist gebaut haben -> Interrupt 0 (Invalid Opcode (oder irgbend ein anderer) wird aufgerufen)). Du gibst jedoch nichts mehr nach searchfile aus. versuch mal, ob er dann diese Meldung auch noch ausgibt - Eigentlich sollte er das nicht
Noch etwas:
Wenn ich mich Recht erinnere, haben einige Bios'e Probleme, hintereinaderliegende Sektoren zu liegen, die nicht in einem Head/Cylinder liegen (kann mich auch irren - aber überprüf das mal)
mfg gurru
-
doch hat es... habe nach dieser funktion eine ausgabe am bildschirm gemacht, das ging.... egal :-p
good n8