Console / DOS

Signaler
Messages postés
189
Date d'inscription
lundi 30 décembre 2002
Statut
Membre
Dernière intervention
3 avril 2005
-
simtiers
Messages postés
207
Date d'inscription
jeudi 3 avril 2003
Statut
Membre
Dernière intervention
2 novembre 2006
-
Bonjour à tous,



Je viens de lire ceci sur le forum :



"et puis signalons qu'il ne faut pas confondre un programme DOS avec un programme en mode console...
le premier est un programme DOS, un vrai...
le second est un programme windows, qui ne peut s'executer sous DOS,... "






Ok, mais alors, comment faire pour pour pouvoir faire
fonctionner un programme C sous DOS ? Est-ce possible, ou faut-il
obligatoirement passer par l'ASM ?





Merci d'avance.

7 réponses

Messages postés
207
Date d'inscription
jeudi 3 avril 2003
Statut
Membre
Dernière intervention
2 novembre 2006

Salut.



Pour faire un programme C sous DOS ("pur"), il faut utiliser un compilateur 16 bits, pouvant générer des programmes .COM ou .EXE



Le plus connu de ces compilateurs doit être DJGPP (avec l'interface RHIDE).

Je crois que C++ Builder doit pouvoir faire ce type d'apps.



Pas besoin de passer à l'ASM pr faire ça

L'intelligence, c'est comme les parachutes : quand on n'en a pas, on s'écrase

(Pierre Desproges)
Messages postés
189
Date d'inscription
lundi 30 décembre 2002
Statut
Membre
Dernière intervention
3 avril 2005

Merci bien, après avoir un peu galéré j'ai réussi à installer DJGPP et
son interface, et j'ai recompilé mon .exe à partir de mon fichier .c.
Mais lorsque je démarre sur une disquette de boot (créée par Win XP)
sur laquelle j'ai mis mon programme main.exe, et que j'essaie de le
lancer, il me donne une erreur.



Y a-t-il une manip' à faire sous RHIDE ou une ligne de commande de
compilation particulière pour que l'exe soit compilé en 16 bits ?





Merci encore.
Messages postés
189
Date d'inscription
lundi 30 décembre 2002
Statut
Membre
Dernière intervention
3 avril 2005

Bon, je viens d'essayer avec une disquette de boot Win95, et toujours la même erreur :



Load error: no DPMI - Get csdpmi*b.zip
Messages postés
207
Date d'inscription
jeudi 3 avril 2003
Statut
Membre
Dernière intervention
2 novembre 2006

Là, je vois pas.

Pas besoin de faire une manip spéciale pr le 16 bits : RHIDE compile uniquement en 16 bits.



D'après ce que j'ai trouvé sur google, DPMI serait une extension DOS permettant à un programme d'accéder à une mémoire étendue.

Comment faire pr s'en débarrasser : je sais pas


L'intelligence, c'est comme les parachutes : quand on n'en a pas, on s'écrase

(Pierre Desproges)
Messages postés
189
Date d'inscription
lundi 30 décembre 2002
Statut
Membre
Dernière intervention
3 avril 2005

Ça y'est, trouvé !



En fait, apparemment DJGPP compile quand-même en 32 bits, car le même message apparaissait avec mon exe VC++ et celui DJGPP.



Pour compiler en 16 bits réels, j'ai téléchargé Turbo C à cette adresse
et ça fonctionne impec', je boote mon programme sur disquette au
démarrage de l'ordinateur !





Merci quand-même pour ton aide !
Messages postés
189
Date d'inscription
lundi 30 décembre 2002
Statut
Membre
Dernière intervention
3 avril 2005

Oops, apparemment j'ai pas réussi à insérer un lien hypertexte...



L'URL pour télécharger Turbo C est : http://60gp.ovh.net/~toutla/log/dl/tc.zip
Messages postés
207
Date d'inscription
jeudi 3 avril 2003
Statut
Membre
Dernière intervention
2 novembre 2006

Merci, ça peut toujours servir !

L'intelligence, c'est comme les parachutes : quand on n'en a pas, on s'écrase

(Pierre Desproges)