Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : erreur dans le boot + kernel [ Archives / Newbii ] (hudson)

mercredi 25 mai 2005 à 15:31:18 | erreur dans le boot + kernel

hudson

Bonjour,
voilà j'ai essayer de suivre le tut de inferno sur les OS
et donc le boot sur la disquette est ok !

mais dès que je veux mettre un kernel il ne le lit pas et en plus il me met l'affichage du message de boot.asm en boucle infini !!!

je comprends pas trop pourquoi !

j'ai fais tout ce qu'il est expliqué pourtant !
voici les sources :
Boot.asm :

%define BASE 0x100
%define KSIZE 1 ; nombre de secteurs de 512 octets a charger

[BITS 16]
[ORG 0x0]

jmp start
%include "UTIL.INC"
start:
mov [bootdrv],dl ; recuparation de l'unite de boot

; initialisation des segments en 0x07C0
mov ax,0x07C0
mov ds,ax
mov es,ax
mov ax,0x8000 ; stack en 0xFFFF
mov ss,ax
mov sp, 0xf000

; affiche un msg
mov si,msgDebut
call afficher

; charger le noyau
xor ax,ax
int 0x13

push es
mov ax,BASE
mov es,ax
mov bx,0

mov ah,2
mov al,KSIZE
mov ch,0
mov cl,2
mov dh,0
mov dl,[bootdrv]
int 0x13
pop es

; saut vers le kernel
jmp dword BASE:0


msgDebut db "Chargement du kernel",13,10,0

bootdrv: db 0

;; NOP jusqu'a 510
times 510-($-$$) db 144
dw 0xAA55

et enfin le kernel
[BITS 16]
[ORG 0x0]

jmp start

%include "UTIL.INC"

start:
; initialisation des segments en 0x100
mov ax,0x100
mov ds,ax
mov es,ax
mov ax,0x8000 ; stack en 0xFFFF
mov ss,ax
mov sp, 0xf000

; affiche un msg
mov si,msg00
call afficher

end:
jmp end


msg00: db 'Kernel is speaking !',10,0


puis le fichier util.inc
;---------------------------------------------------------
; Synopsis: Affiche une chaine de caracteres se terminant par 0x0
; Entree: DS:SI -> pointe sur la chaine a afficher
;---------------------------------------------------------
afficher:
push ax
push bx
.debut:
lodsb ; ds:si -> al
cmp al,0 ; fin chaine ?
jz .fin
mov ah,0x0E ; appel au service 0x0e, int 0x10 du bios
mov bx,0x07 ; bx -> attribut, al -> caractere ascii
int 0x10
jmp .debut

.fin:
pop bx
pop ax
ret

voilà seulement je suis sous win98 + nasm
et je complie bien les 2

nasm -f bin -o boot boot.asm
nasm -f bin -o kernel kernel.asm
puis je fais :
debug boot
-w cs:100 0 0 1
-q
puis copy kernel a:
et enfin copy util.inc a:
sous dos je n'arrive pas à faire ce signe "\"...

si quelqu'un vois le problème...merci de m'aider ce serait sympa !
bye





Cette discussion est classé dans : mov, ax, boot, jmp, kernel


Répondre à ce message

Sujets en rapport avec ce message

nasm [ par henri12 ] salut je viens de compiler ce mbr boot avec nasmnasm -fbin aboot.asm -o binexe.exele programme c est bien compiler mais en lançant d une cle usb l ima Probleme de boot [ par DbD ] Bonjour,Alors je fais mon OS et j'ai des problème de boot a partir d'un disquette, sur certain pc ou quand le noyau depasse 40 secteurs ca boot plus Kernel qui n'est pas chargé par le bootloader [ par JB_59 ] Salut tout le monde !Voilà j'ai un problème de chargement de Kernel; j'ai codé un boot loader en asm qui m'affiche la phrase "Chargement du kernel..." probleme avec un bootloader [ par anonyme_man_in_this_world ] salut !! je voudrais coder un bootloader , tous ce compile bien ,je copie / colle le fichier .BIN dans une disquette ,mais lors le redemmarrage d Modifer le vecteur d'interruptions [ par vecchio56 ] Bonjour J'essaie de refaire la source http://www.cppfrance.com/code.aspx?ID=33558 en assembleur (ca consiste à modifier la routine de l'interruption 0 Graphique [ par RM50Man ] Bonjour a tous!!!!Je veux tracer une ligne mais ca ne marche pas, je passe les parametre par la pile,et ensuite ds la fonction principale, je remplis problème : nombres aléatoires random [ par dmontavon ] Je cherche à générer un nombre aléatoire avec le code :Random:   mov dx,128             & Afficher l'heure avec la memoire video [ par RootASM ] Bonjour,Je voudrais afficher l'heure grace à la mémoire vidéo car elle permet d'économiser une interuption.Quand je le lance sous afd, j'ai bien dans A l'aide... svp [ par monitor100 ] Bonjour a tous,Je suis completement null en assembler, et il faut que je fasse afficher le résultat de la factoriel de 4 soit 24.est ce que quelqu'un


Nos sponsors

Sondage...

CalendriCode

Septembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
2930     

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,25 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.