Bonjour à tous,
Comment fait-on une pause dans un programme en mode réel???
Je ne peux accéder à aucune librairie car c'est un bootloader.
Merci d'avance, mmaximum
Bonjour à tous,
Comment fait-on une pause dans un programme en mode réel???
Je ne peux accéder à aucune librairie car c'est un bootloader.
Merci d'avance, mmaximum
Bonsoir,
Si tu utilises un proc 386 ou +, tu as la fonction 86h de l'interruption 15h
utilisation :
AH=86h
CXX = valeur 32 bits en microsecondes
voila, c'est tout
a+ Francois
Est-ce que ça bloque le programme ??? J'ai pas l'impression que ça marche.
J'ai testé avec qemu et ça ne fait pas de pause.
Voici le bout de code pour faire la pause :
Normalement, ça fais une pause de 2 secondes. Mais ça ne marche pas, ça lance directement le code qui se situe après.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 mov ah,86h mov cx,001eH mov dx,8480H int 15h
Ai-je fait une erreur dans ce bout de code ????
Ton code doit marcher sur une machine en mode reel et non pas sous un OS
en mode protege qui emule du mode reel.
a+ Francois
J'ai essayé sur un vieux PC x86 que j'avais récupérer.
ça boot sur la disquette et ça marche!! Merci à vous tous!
Je comprend toujours pas pourquoi ca marche pas sous qemu.
Ca ne marche pas non plus avec un programme DOS sous XP
J'ai donc remplace cette fonction par des boucles imbriquees (mais il faut
controler la vitesse de la machine avant pour definir les bonnes valeurs)
a+ Francois
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager