Bonsoir,

J'ai commencé hier soir à suivre le tutoriel de milouz123 sur la création d'un os, et je rencontre dès la première étape des difficultés.
Tout d'abord, sachez que je travaille sous Windows Vista 32 bits, au cas où cela pourrait aider...

J'ai recopié tel quel le code présenté ici.

Puis ensuite :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
nasm -f bin -o bootsect bootsect.asm
bfi -f=floppyA -b=bootsect
Puis j'ai lancé Bochs avec un fichier de configuration rempli ainsi :

megs: 32
floppya: 1_44=floppyA, status=inserted
boot: a
Résultat : J'arrive au message "Booting from floppy", puis j'entre dans une genre de boucle infinie : rien ne bouge sur la console qui émule l'OS, mais dans la console de sortie de Bochs, j'obtiens en boucle le message :

BOUND_GdMa: fails bounds test
Malgré quelques recherches et de multiples essais, je retombe toujours sur cette situation...

Merci par avance pour votre aide !


EDIT : bon, j'ai un petit peu amélioré mon fichier de configuration, au cas où ça viendrait de là...
De plus, après quelques tests, j'ai remarqué un truc étrange : dans le code, si je supprime les lignes à partir de MOV ax, 0x8000 jusqu'au label end:, je n'ai pas d'erreur du genre (évidemment, rien ne s'affiche, mais là ça reste normal ^^ ).
De même, si après cette modification je rajoute juste MOV ax, 0x0000, rien ne bouge.
Par contre, dès que je mets MOV ax, 0x0001, là ça plante de la même façon...

Re-EDIT : Bon, en utilisant directement le fichier assemblé par l'assembleur, sans passer par la création d'une image de disque, ça marche... Mais j'aimerais quand même comprendre pourquoi ça ne fonctionnait pas autrement, surtout que si j'ai bien compris, procéder directement de cette manière m'empêchera d'ajouter d'autres fichiers...

Re-re-EDIT : En passant par un autre utilitaire de création d'une image disque (fat_imgen), ça marche ! Je mets en résolu...