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 : c/c++ et 19h [ Archives / c, c++ et asm ] (Xs)

mercredi 19 juin 2002 à 14:38:31 | c/c++ et 19h

Xs

salut !

je travaille sous VC++ et j'aimerais utiliser une interuption processeur : 19h

mon code actuel marche mais au lieu d'eteindre le PC, il le fait plante (remarquez ca change pas grand choses)

mon code :

int main(int argc, char* argv[])
{
_asm{
mov AH,0
mov AL,0x19
int 19h
}

return 0;
}


remarquez que si vous savez pas la syntaxe VC++ mais DEVC++, je suis prenneur aussi

****************************
Le C/C++ et une Veritable merveille !
****************************

dimanche 23 juin 2002 à 12:00:43 | Re : c/c++ et 19h

PierreF

Le problème c'est que tu veut appeller un interuption du dos (16 bit) avec un programme win32.
VC++ ne sais faire que des prog win32. Si tu veut faire un appelle d'un l'interuption 16 bit tu doit utiliser un compilateur C++ 16 bit.

-------------------------------
Réponse au message :
-------------------------------

salut !

je travaille sous VC++ et j'aimerais utiliser une interuption processeur : 19h

mon code actuel marche mais au lieu d'eteindre le PC, il le fait plante (remarquez ca change pas grand choses)

mon code :

int main(int argc, char* argv[])
{
_asm{
mov AH,0
mov AL,0x19
int 19h
}

return 0;
}


remarquez que si vous savez pas la syntaxe VC++ mais DEVC++, je suis prenneur aussi

****************************
Le C/C++ et une Veritable merveille !
****************************

samedi 29 juin 2002 à 18:19:36 | Re : c/c++ et 19h

Int19h

olleh

Je sais pas si le faite de compiler en 32bits perturbe le deroulement du programme... Ca me semble bizzard, l'inverse oui, mais la... Bref.

Par contre, tu utilises VC++, t'es donc sous windows. Le probleme est que windows redirige une grand partie des interruptions. Donc si tu utilies ses fonctions, certaine ne fonctionne plus comme sous DOS.

Question : Int19h@caramail.com

a+

mardi 1 juillet 2003 à 21:40:28 | Re : c/c++ et 19h

MadDuck427





-------------------------------
Réponse au message :
-------------------------------
En fait l'int 19h est mal documentée et surtout commentée différemment d'un bookin à l'autre.
D ailleurs je ne voit pas ce ke sont ces paramètres dans AX!
En fait Int 19h sert ds tt les cas à charger le boot sector ou le MBR du disk dur (suivant parametrage du BIOS). Mais jamais à éteindre le PC!
Cette interruption est à utiliser uniquement en mode réel (DOS/Mode DOS sous Win9x).
Je ne sais si tes progs tournent sous DOS ou en émulation DOS sous Win mais Windows traite cette interruption en faisant quitter le programme; et sous DOS int 19h ne devrait pas etre utilisée (ou alors uniquement à partir d' un secteur de boot) car elle recharge le boot sector sans tenir compte du fait ke des interruption (IRQ) peuvent pointer sur cette zone provoquant alors le crash du PC.
Etant moi meme interessé par le fait d'éteindre le PC par voie logicielle (sous DOS, car sous Win il y a ExitKernel...), je n'ai jusk alor jamai trouvé un moyen standard d'y arriver.
Voilà sur ce bon courage!

mardi 1 juillet 2003 à 22:01:51 | Re : c/c++ et 19h

MadDuck427



Ben en fait voilà j' ai trouvé ça et ca ne marche ke pr les alim ATX (ki tendent à se repandre!)

cut_alim:
;---------------connect_to_real_mode
mov ax, 0x5301
mov bx, 0x0000
int 0x15
;---------------cut_alimentation
mov ax, 0x5307
mov bx, 0x0001
mov cx, 0x0003
int 0x15
ret

mardi 1 juillet 2003 à 22:02:27 | Re : c/c++ et 19h:SOLUTION

MadDuck427





-------------------------------
Réponse au message :
-------------------------------

>
>
> Ben en fait voilà j' ai trouvé ça et ca ne marche ke pr les alim ATX (ki tendent à se repandre!)
>
> cut_alim:
> ;---------------connect_to_real_mode
> mov ax, 0x5301
> mov bx, 0x0000
> int 0x15
> ;---------------cut_alimentation
> mov ax, 0x5307
> mov bx, 0x0001
> mov cx, 0x0003
> int 0x15
> ret
>



Cette discussion est classé dans : code, int, mov, vc, 19h


Répondre à ce message

Sujets en rapport avec ce message

AT&T erreur de compilation etc... [ par maminovadu75 ] Bonjour, j'aimerais me mettre a l'assembleur mais j'ai quelque problème.voici mon code morceau de code pour trier un tableau de int : ( mélange de C/C TSR & Détournement d'interrupt(ion) [ par ghuysmans99 ] bonjour à tous.j'ai fait un petit prog en asm 32bits pour dos mais il ne fonctionne pas ... reste à savoir pourquoi !!pourriez-vous m'aider ??;Change base pointer [ par anonyme_man_in_this_world ] salut !! je voudrais faire une compilation separee qui va me permetre de faire du code C et asm dans des fichiers differents .mes questions sont : Problème de saisie [ par RootASM ] Bonjour,Voila, je dois faire une présentation en ASM.1. Entrez un matricule de au moins et au maximum 4 chiffre uniquement 2. Saisir le nom et prenom 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 Boot et heure [ par henri12 ] je fais un essai de changement de l heure avec l interruption 21h sous le boot l heure n est pas changerpourquoi.286C   ;Code de bootsecteur permettan afficher un caractère avec int 10h [ par thicdorb ] bonjour à tous,je suis débutant en assembleur et je commence par le début : afficher un caractèrej'utilise l'inteeruption BIOS 10h    mov    al, 'A'   Petit problème pour comparer (cmp) [ par smok1360 ] Bonjour à tous,Pour commencer, j'espère de ne pas avoir choisis le mauvais lieu pour poster, j'ai un petit peu hésité Donc, j'ai décidé d'apprendre l' Cherchez l'erreur [ par neo1012 ] Salut, J'ai commencé l'ASM il n'y a pas longtemps, et hier j'ai fait mom premier programme: jmp string code: pop ecx mov bl,1 mov dl,23 ;mov al,4 i Mini OS !! debut [ par Hardouz ] salut a tous ! je debut en ASM je vx bosser un px en ASM je connais l'architechture ect !!! j'ai fais un pti programme mais il ya un probléme 1/ lors


Nos sponsors

Sondage...

CalendriCode

Janvier 2009
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

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,234 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é.