Accueil > Forum > > > > Probleme de boot
Probleme de boot
jeudi 4 mars 2004 à 18:26:33 |
Probleme de boot

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 non plus .... Voila un bout de mon code : %define BASE 0x100 %define KSIZE 35 [BITS 16] [ORG 0x0] jmp start 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 ; 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 et en gros après je jump sur le kernel .... Si je met des boucles pour detecter l'erreur il boucle sur l'int 0x13 Merci d'avance ...
|
|
mercredi 10 mars 2004 à 15:45:55 |
Re : Probleme de boot

patatalo
|
salut,
le premier petit pb que je constate c'est:
mov [bootdrv],dl ; ici, ds = 0
mov ax,0x07C0 mov ds,ax ; ici, ds=0x7C0
mov ah,2 mov al,KSIZE mov ch,0 mov cl,2 mov dh,0 mov dl,[bootdrv] ; ici, ds=0x7C0 int 0x13
y'a déjà un petit pb. La valeure récupérée dans dl est aléatoire puisque pas initialisée.
@++
|
|
mercredi 10 mars 2004 à 16:33:11 |
Re : Probleme de boot

DbD
|
tout d'abord merci de ta réponce ... bootdrv: db 0 j'ai oublier de recopier ca :) cela suffit t'il a eviter le probleme ou si c'est non comme puis-je faire ? DbD
|
|
jeudi 11 mars 2004 à 11:21:44 |
Re : Probleme de boot

patatalo
|
salut,
ca peut resoudre effectivement le probleme de l'init [bootdrv] mais, tu met quand meme une valeur dl a un emplacement inconnu, apparement, tes datas doivent se trouver apres ton jmp start.
donc, je pense que tu inscrit la valeur dl dans la table des vecteurs d'interruption.
pour peu que cette interruption se produise -> plantage.
le mieux, est d'initialiser tes segments avant toute modification des variables.
jmp start ; datas start: mov ax,0x07C0 mov ds,ax ; ici, ds=0x7C0
mov [bootdrv],dl ...
de plus, fait toujours un cli avant de modifier l'emplacement de ta pile car:
mov ax,0x8000 ; stack en 0xFFFF mov ss,ax
< si une interruption se produit là, pas bon >
mov sp, 0xf000
autre chose: ta kernel ne peut pas avoir une taille plus grande que 6C00h octets car ta base est a l'adresse FLAT 0x1000 et ton code boot a l'adresse FLAT 0x7C00 soit 54 secteurs
dernier point: peut etre n'as tu pas mis le code complet, sinon, verifie toujours les erreurs possibles a la suite des appels BIOS
xor si,si jmp .1 .0 inc si cmp si,3 jb .1 outtxt 'erreur chargement kernel press key for reboot' waitkey int 0x19 .1 mov ah,2 mov al,KSIZE mov ch,0 mov cl,2 mov dh,0 mov dl,[bootdrv] ; ici, ds=0x7C0 int 0x13 jc .0
@++
|
|
jeudi 11 mars 2004 à 21:29:46 |
Re : Probleme de boot

DbD
|
Merci Ok j'ai fais tout cela mais dès que le kernel >= à 37 secteurs il rebbot sans cesse sans m'afficher le message d'erreur ...
Voila la sources plus complete : http://touf.is-a-geek.net/~myos/boot.txt DbD
|
|
vendredi 12 mars 2004 à 09:09:05 |
Re : Probleme de boot

DbD
|
C'ets bon j'ai fait une boucle qui copie secteurs par secteurs il chage bien le noyau jump dessus mais un fois dans l'os si j'appuis sur une touche il reboot ....
voila la sources -> http://touf.is-a-geek.net/~myos/boot.txt
Je définie l'idt au lancement du noyau et je redéfini aussi la gdt ...
DbD
|
|
vendredi 12 mars 2004 à 13:48:16 |
Re : Probleme de boot
|
Cette discussion est classée dans : int, mov, ax, boot, 0x13
Répondre à ce message
Sujets en rapport avec ce message
erreur compilation [ par greg4 ]
je voudrai compiler--------------------------------------.model tiny.dataHelloMessage db 13,10,'Hello World !',13,10,'$'.codeorg 100hstart: mov ax,@d
loader problème de code [ par TRAX44 ]
salut tout le monde !!g essayer de faire un loader (petit prog qui charge un autre prog) mais c un desartre je comprend pas très bien ce qui ne marche
petit probleme de debutant [ par freekc ]
j'essaie de faire un ptit prog que lorsque l'on rentre son nom prenom etc . Il y est un recapitulatif qui se mette en dessous ms lorsque que le recapi
Affichage [ par AMENO ]
Cher amis aidez moi, c'est une partie de mon examen de noel. et je suis bloquerenfin il 'sagit d'un programme que l'on doit entrer jsuqu a 32 caracter
erreur dans le boot + kernel [ par 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
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
Bonjour [ par red4ever ]
J'aurai aimer savoir comment permettre a l'utilisateur d'entrer une chaine de caractere,la ranger dans bx et ensuite l'afficher a l'ecran??J'ai beau e
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
Problème de restitution d'une chaîne. [ par Sawteeth ]
Bonsoir. Je viens de débuter l'assembleur et j'ai tenté de faire un petit programme qui lit une chaîne au clavier et l'affiche à l'écran. Le problème
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
Livres en rapport
|
Derniers Blogs
COMMENT MAPPER UNE VUE SQL SUR UNE COLLECTION DE COMPLEX TYPE?COMMENT MAPPER UNE VUE SQL SUR UNE COLLECTION DE COMPLEX TYPE? par Matthieu MEZIL
Avec EF, les vues doivent être mappées sur des entity types. Le problème c'est que les entity types doivent avoir une clé. Avec EF, nous avons les complex type qui n'ont pas de clé mais les vues ne peuvent pas être mappées dessus. Avec EF4, il est possibl...
Cliquez pour lire la suite de l'article par Matthieu MEZIL [WF4] UN BINDING ACTIVITY/ACTIVITYDESIGNER QUI PASSE MAL?[WF4] UN BINDING ACTIVITY/ACTIVITYDESIGNER QUI PASSE MAL? par JeremyJeanson
Certain d'entre vous on peut être vécu cette situation embarrassante après quelques temps passer avec WF4 : Au début avec mon " ActivityDesigner" , tout allait bien. Et puis un jour j'ai au des problèmes de " Binding" . Alors nous sommes allé sur le site ...
Cliquez pour lire la suite de l'article par JeremyJeanson MYTIC - SHAREPOINT 2010 : DéJà UN MYTHE MICROSOFT ?MYTIC - SHAREPOINT 2010 : DéJà UN MYTHE MICROSOFT ? par junarnoalg
La prochaine session de MyTIC aura lieu à Namur, le 23 mars prochain. Pendant presque une heure, nous parlerons de SharePoint 2010. Voici un aperçu du programme.
Accueil : 17h30 Début de la session : 18h00 - Les nouvelles int...
Cliquez pour lire la suite de l'article par junarnoalg
Forum
RE : ASSEMBLEURRE : ASSEMBLEUR par solleil
Cliquez pour lire la suite par solleil RE : ASSEMBLEURRE : ASSEMBLEUR par ghuysmans99
Cliquez pour lire la suite par ghuysmans99
Logiciels
Academy System (10.9.4.0)ACADEMY SYSTEM (10.9.4.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Xilisoft Convertisseur Vidéo Ultimate (5.1.39.0305)XILISOFT CONVERTISSEUR VIDéO ULTIMATE (5.1.39.0305)Xilisoft Convertisseur Vidéo Ultimate est un outil puissant de conversion vidéo, facile à utilise... Cliquez pour télécharger Xilisoft Convertisseur Vidéo Ultimate Xilisoft DVD Ripper Ultimate (5.0.64.0304)XILISOFT DVD RIPPER ULTIMATE (5.0.64.0304)Xilisoft DVD Ripper Ultimate est un logiciel excellent pour copier et convertir DVD vers presque ... Cliquez pour télécharger Xilisoft DVD Ripper Ultimate Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods
|