Autor Thema: AMD Versteht nur den Bootloader  (Gelesen 6128 mal)

Highway

  • Beiträge: 10
    • Profil anzeigen
Gespeichert
« am: 25. March 2005, 21:37 »
Hi,
stehe hier einem komischen Problem. Ich habe mir einen AMD Duron mit 750 MHz angeschafft um halt besser meinen Kernel testen zu können. Aber ich denke das ich den AMD garnicht brauchen kann.
Weil....
Auf meinem Intel P4 wird richtig gebootet und der Kernel läuft auch einwandfrei, aber bei dem AMD Duron führt er nur den Bootcode aus und bleibt einfach stehen. Selbst die Meldung die er ausgeben soll wenn die Kernel Datei nicht gefunden wurde erscheint nicht.

Das macht mir irgendwie Kopfschmerzen :?

Wäre nett wenn jemand ein paar Tipps hätte warum das so ist

Gruß Highway

PS: Neustarten kann ja soooo langweilig sein/werden :lol:

elfish_rider

  • Beiträge: 293
    • Profil anzeigen
Gespeichert
« Antwort #1 am: 25. March 2005, 21:58 »
Vielleicht hast du irgendwo ein Befehl drin, der nur ab einem gewissen Prozessor (P3, P4, SSE) ausgeführt werden kann. Also eine Invalid Opcode Exception.

clemensoft

  • Beiträge: 92
    • Profil anzeigen
    • http://www.clemensoft.de
Gespeichert
« Antwort #2 am: 25. March 2005, 22:36 »
Nich jedes BIOS kann Teletype!

Highway

  • Beiträge: 10
    • Profil anzeigen
Gespeichert
« Antwort #3 am: 27. March 2005, 14:23 »
Hi elfish_rider,

wenn ich wirklich Invalid Opcode verwendet habe, habe ich ein Ernsthaftes Problem. Dann müsste ich mir die AMD Duron Prozessor Befehle irgendwie besorgen. Auf der AMD Homepage finde ich leider nicht mehr die Doku zu meinen Prozessor, nur die aktuellen Prozessoren werden dort aufgelistet. Und Google kapituliert auch..... :cry:

Was mich nur ein wenig irretiert ist, das mein Bootcode einwandfrei ausgeführt wird und auch als dieser erkannt wird auf der Diskette ( Meldung vom Bios ). Nur wenn der Kernel ausgeführt wird, bleibt alles schwarz.  :cry:

Und wenn das so ist, dann müsste ja für jeden Prozessor den richtigen Befehl verwendet werden im Kernel.
D.h. bevor weiterer Code ausgeführt werden soll, muss erst der Prozessor ermittelt werden, um mit einem Jump-Befehl in den richtigen Opcode zu springen... ( Was für eine Arbeit  :D  )

Also ich blick langsam nicht mehr durch....  :D

PS.: Nennt mich ruhig Doof, aber was zum Henker meint clemensoft mit Teletype  :?:

Gruß Highway

zacK

  • Beiträge: 216
    • Profil anzeigen
    • http://www.domae.ch
Gespeichert
« Antwort #4 am: 27. March 2005, 15:28 »
bios funktion zum ausgeben von zeichen... war glaube ich int 10 (oder 13...)

Jidder

  • Administrator
  • Beiträge: 1 625
    • Profil anzeigen
Gespeichert
« Antwort #5 am: 27. March 2005, 16:36 »
um genau zu sein: int 0x10, ah = 0x0E und soweit ich weiss kann das jedes bios seit 1981 ...

an einen invalid opcode glaub ich nicht. sooo alt ist der AMD Duron auch nicht und wenn du SSE im bootloader verwendest, sollte dir das bewusst sein. ich vermute das problem eher bei solchen sachen wie zugriff auf die diskette, überprüfen der CPU mit CPUID oder das einschalten des a20 gates.

Zitat
bei dem AMD Duron führt er nur den Bootcode aus und bleibt einfach stehen

versuch mal herauszufinden wo genau er stehen bleibt. lass den computer an bestimmen stellen ein bestimmtes zeichen auf dem schirm ausgeben, wenn er dort angekommen ist.

z.B. sowas (hab ich jetzt aus dem kopf geschrieben und nicht getestet):
RM:
mov ax, 0xB800
mov es, ax
es: mov word [0], 'xx'

oder im PM
mov word [0x000B8000], 'xx'

für genaueres müsstest du den code posten ...
Dieser Text wird unter jedem Beitrag angezeigt.

Highway

  • Beiträge: 10
    • Profil anzeigen
Gespeichert
« Antwort #6 am: 28. March 2005, 12:29 »
Hi Leute,

Habe mir nochmal alles angeschaut. Ich verwende den Bootloader von TeeJay. Sein Bootloader sollte eine Meldung ausgeben wenn der Kernel nicht gefunden wurde ( Habe den Kernel von der Diskette gelöscht ), was ausbleibt ist mal wieder die Meldung.

Ich denke das es doch an Teletype liegen kann, oder ?  :-k

Gruß Highway

PS: Ich gebe es langsam auf..... ](*,)

 

Einloggen