Console / DOS

sebleboss2002 Messages postés 189 Date d'inscription lundi 30 décembre 2002 Statut Membre Dernière intervention 3 avril 2005 - 3 avril 2005 à 12:24
simtiers Messages postés 207 Date d'inscription jeudi 3 avril 2003 Statut Membre Dernière intervention 2 novembre 2006 - 3 avril 2005 à 19:19
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

simtiers Messages postés 207 Date d'inscription jeudi 3 avril 2003 Statut Membre Dernière intervention 2 novembre 2006
3 avril 2005 à 12:47
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)
0
sebleboss2002 Messages postés 189 Date d'inscription lundi 30 décembre 2002 Statut Membre Dernière intervention 3 avril 2005
3 avril 2005 à 15:00
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.
0
sebleboss2002 Messages postés 189 Date d'inscription lundi 30 décembre 2002 Statut Membre Dernière intervention 3 avril 2005
3 avril 2005 à 16:23
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
0
simtiers Messages postés 207 Date d'inscription jeudi 3 avril 2003 Statut Membre Dernière intervention 2 novembre 2006
3 avril 2005 à 16:46
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)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
sebleboss2002 Messages postés 189 Date d'inscription lundi 30 décembre 2002 Statut Membre Dernière intervention 3 avril 2005
3 avril 2005 à 18:32
Ç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 !
0
sebleboss2002 Messages postés 189 Date d'inscription lundi 30 décembre 2002 Statut Membre Dernière intervention 3 avril 2005
3 avril 2005 à 18:33
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
0
simtiers Messages postés 207 Date d'inscription jeudi 3 avril 2003 Statut Membre Dernière intervention 2 novembre 2006
3 avril 2005 à 19:19
Merci, ça peut toujours servir !

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

(Pierre Desproges)
0
Rejoignez-nous