Jetzt mal für die ganz Dummen wie mich >:(



  • Noch ein Tipp: Hol dir Bochs. Das ist ein Emulator für x86-CPUs, dann musst du deinen Kernel nicht jedes Mal auf Diskette kopieren und den Rechner neustarten.



  • Wie installiert man denn bochs unter WindowsXP? auf der HP von denen findet man nix zur installation unter WinXP! 😞



  • GUF schrieb:

    auf der HP von denen findet man nix zur installation unter WinXP! 😞

    Vielleicht, weil mans nicht installieren muss? Entweder man kompilierts selber, oder man zieht sich das Binary - und das kann man dann direkt ausfuehren, ohne irgendwelchen Installationsgedoens.



  • wenn du mir jetzt noch sagst wie ich damit meine BIN teste bin ich zufrieden. 😞



  • Also irgendwie scheinen hier manche des Lesens nicht mächtig zu sein.
    Da steht doch nun wirklich alles nötige drin, also bitte!?

    cya
    liquid



  • Habe auch Bochs.

    aber check nicht wie man da eine datei starten kann.

    wenn bochs gestartet ist, was dann.
    funzt nicht, egal was ich mach.
    wie kann man da eine assembler datei oder ne bin-datei starten?



  • Erstmal brauch man einen Bootloader, das ganze packt man zusammen zu einem Diskettenimage. Das tut man dann Bochs als Laufwerk a: geben und ferig. Ich glaube doku genug wurde gepostet...



  • *omfg* Tja, das GUI ist zwar nicht sooo uebersichtlich, aber das sollte doch wohl zu schaffen sein. 😮
    Tipp: Sieh dir mal die Datei "bochsrc-sample.txt" an.

    BTW: KA, was mit "assembler datei" gemeint war, aber Bochs kann normalerweise nur Laufwerksimages verarbeiten.



  • LiquidAcid schrieb:

    Also irgendwie scheinen hier manche des Lesens nicht mächtig zu sein.
    Da steht doch nun wirklich alles nötige drin, also bitte!?

    cya
    liquid

    Windows
    Someone needs to write this.

    Linux RPM
    ...

    Punkt, wenn du mir jetzt sagst WIE ich ohne große umwege meine kernel.bin starte, dann sags mir! Irgendwie ist in jedem forum keiner in der lage das zu erklären wie das micht Bochs geht! 😡



  • Ok, Schritt-fuer-Schritt Anleitung zur neusten vorcompilierten stabilen Version (2.0.2), um das Immage fuer eine Diskette zu starten:

    Du gehst in das bochs-Verzeichnis und oeffnest die Datei "bochsrc-sample.txt".
    Hier erstmal die Zeile "#config_interface: textconfig" dekommentieren ("#" loeschen)
    Als naechstes die Zeile "#display_library: win32" dekommentieren.
    Dann in der Zeile "romimage: file=bios/BIOS-bochs-latest, address=0xf0000" den Verweis auf das nicht existierende Verzeichnis "bios" loeschen => "bios/" loeschen.
    Das gleiche nochmal in der Zeile "vgaromimage: bios/VGABIOS-elpin-2.40"
    Als naechstes die Zeile "floppya: 1_44=/dev/fd0, status=inserted" auskommentieren und den Eintrag "#floppya: 1_44=a.img, status=inserted" dekommentieren. Das heisst nun, dass das Laufwerksimmage der Diskette im bochs-Verzeichnis in der Datei "a.img" erwartet wird. Wenn du die Datei anders nennen und/oder anders nennen willst, musst du bei diesem Eintrag das Verzeichnis einstellen.
    Zeile "floppyb: 1_44=b.img, status=inserted" auskommentieren.
    Zeile "ata0-master: type=disk, path="30M.sample", cylinders=615, heads=6, spt=17" auskommentieren.
    Zeile "#boot: floppy" dekommentieren und die folgende Zeile auskommentieren.

    Anschliessend das ganze in einer neuen Textdatei mit moeglichst einfachem Namen im bochs-Verzeichnis speichern.
    bochs.exe starten
    einfach <ENTER> druecken
    den schoen einfachen Dateinamen eingeben, unter dem du die Konfiguration abgelegt hast.=><ENTER>
    und nochmal <ENTER>

    Das sollte so klappen.

    *anmerk* Ich verkneif mir einfach mal jeglichen Kommentar, bis auf diesen hier: 🙄



  • Vielen dank!

    Doch eine frage stellt sich mir grade: Ich habe meinen kernel compiliert und der nennt sich nun kernel.bin die zeile die man dafür abändern soll habe ich so abgeändert. doch ich bekomme die MSG das die kernel.bin keine bootbare disk ist.

    Wie erstelle ich denn nun ein Image einer bootbaren diskette aus meiner kernel.bin? 😕



  • hm... Ach ja, da war ja noch was: Bochs frisst nur Laufwerksimmages! (verpeilt - du hattest ja schliesslich noch keinen Bootloader 😉 )
    Also mein Vorschlag: Vergiss dieses eigenartige Tutorial und den Code dazu und fang erstmal an, dir einen vernuenftigen Bootloader mit FAT12-Unterstuetzung fuer Diskette zu schreiben. (Oder mach dich eben mit GRUB vertraut)
    Quellen dazu gibt es hier genug in den FAQ.
    Wenn du das fertig hast, kannst du dich um dein Kernel in C/C++ kuemmern.



  • Hi,

    ich kenne diesen bootf2 der erstellt ne Diskette mit FAT12, aber keine IMG datei? 😕

    Ist das das programm was du dafür meintest, was ich nehmen sollte? Aber wie erstellt man damit etwas zum booten?

    Wärest du so mega lieb mir noch zu dem Thema eine kleine anleitung zu schreiben? 🙂 Wäre ich dir echt dankbar für :):):) 👍



  • GUF schrieb:

    Punkt, wenn du mir jetzt sagst WIE ich ohne große umwege meine kernel.bin starte, dann sags mir! Irgendwie ist in jedem forum keiner in der lage das zu erklären wie das micht Bochs geht! 😡

    Wenn keine passende Anleitung existiert, verfährt man analog zu bereits existierenden.

    cya
    liquid



  • Ein Diskettenimmage ist letztendlich nichts anderes, als eine Binaerdatei, in der alle Sektoren der Diskette hintereinander aufgereiht sind.
    Folglich kannst du dir entweder eine Diskette mit deinem Kernel dumpen, um ein Immage zu erhalten (Bootloader musst du da natuerlich zB. mir Rawrite vorher draufgespielt haben), oder du linkst dir eben manuell ein Immage zusammen, wenn du zB. erstmal noch keine FAT-Unterstuetzung hast o.ae..
    Wie hier nun vorzugehen ist haengt also allein davon ab, wie weit du dich schon informiert hast, und was du jetzt machen kannst/willst.

    Konkrete Frage also: Hast du nun inzwischen einen Bootloader erstellt? Und wenn ja, was fuer einen?


Anmelden zum Antworten