IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langages de programmation Discussion :

Coder une application Graphique en VGA ou VESA "console" compatible entre MS-DOS et Linux?


Sujet :

Langages de programmation

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé

    Homme Profil pro
    Sans emploi
    Inscrit en
    Août 2019
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Belgique

    Informations professionnelles :
    Activité : Sans emploi

    Informations forums :
    Inscription : Août 2019
    Messages : 72
    Par défaut Coder une application Graphique en VGA ou VESA "console" compatible entre MS-DOS et Linux?
    Bonsoir,


    j'aurai voulu savoir si il était possible de créer une application graphique utilisant des standard VGA ou Vesa qui puisse s’exécuter sur un système équipé d' MS-DOS et la console Linux?

    Donc avoir un code source similaire pour ces deux type de système d'exploitation mais s’exécutant toujours en mode "console" sans utiliser d'API particulier propre à un OS. (bannir GTK/ Win32 etc...)

    Exemple créer un jeu d'échecs avec des graphismes basique en VGA dont le code pourrait être compilé sur Windows et Linux mais s’exécutant dans une fenêtre type Terminal (pour Linux) ou Console MS-DOS (pure ou via DosBox).

    Quel Langage? Quel librairie? Compilateur?

  2. #2
    Expert confirmé
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 527
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 527
    Par défaut
    bonsoir ce n'est pas possible car entre un exécutable sous Windows et Linux ce n'est pas le même format.
    Par contre on peut avoir le même code source en langage C.
    Pour le mode VGA ou VESA il y a des interruptions BIOS comme l'interruption 13h.
    Pour y accéder il faut un compilo C qui supporte les directives assembleur

  3. #3
    Membre confirmé

    Homme Profil pro
    Sans emploi
    Inscrit en
    Août 2019
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Belgique

    Informations professionnelles :
    Activité : Sans emploi

    Informations forums :
    Inscription : Août 2019
    Messages : 72
    Par défaut
    Citation Envoyé par Mat.M Voir le message
    bonsoir ce n'est pas possible car entre un exécutable sous Windows et Linux ce n'est pas le même format.
    Par contre on peut avoir le même code source en langage C.
    Pour le mode VGA ou VESA il y a des interruptions BIOS comme l'interruption 13h.
    Pour y accéder il faut un compilo C qui supporte les directives assembleur
    Bonsoir oui je sais que un binaire Windows et Linux ne sont pas identiques.. Ton deuxième paragraphe concernant le language C répond mieux à la question.

    Qu'appelle tu un "compilo"? Compilateur ?
    L'accès au Vga ou Vesa doit donc passer par le language assembleur pour que le code soit compatible entre Windows et Linux ?

  4. #4
    Membre Expert
    Femme Profil pro
    ..
    Inscrit en
    Décembre 2019
    Messages
    667
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 95
    Localisation : Autre

    Informations professionnelles :
    Activité : ..

    Informations forums :
    Inscription : Décembre 2019
    Messages : 667
    Par défaut
    La librairie NCurses te permettra de réaliser ce que tu cherches à faire.

  5. #5
    Expert confirmé
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 527
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 527
    Par défaut
    Salut Kitsune64 un compilateur est un outil qui traduit un langage informatique comme le C/C++ en code machine assembleur.
    Cependant je ne conseille pas d'accéder au VGA/VESA car si sous Linux c'est peut-être possible ( et encore...) sous Windows ce n'est plus possible car l'OS interdit cela

    Donc je conseille d'utiliser un outil comme Code::Blocks par exemple ou Visual Studio et utiliser la biblio SDL pour faire un jeu d'échec.
    Et puis en assembleur tu n'auras pas accès à l'accélération graphique comme avec open GL ou Direct3d

    Quant à NCurses j'ai jeté un coup d'oeil mais cela ne permet pas d'accéder au mode VESA apparemment

  6. #6
    Membre confirmé

    Homme Profil pro
    Sans emploi
    Inscrit en
    Août 2019
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Belgique

    Informations professionnelles :
    Activité : Sans emploi

    Informations forums :
    Inscription : Août 2019
    Messages : 72
    Par défaut
    Effectivement j'ai cherché des infos sur Ncurses aussi mais rien qui réponde vraiment à ce que je cherchais.

    Bien que le VGA et VESA ne soit plus supporté par les systèmes Windows actuels j'aimais bien l'idée d'avoir recours au minimum vital d'une machine pour faire tourner un programme graphique. C'est pour ça que je préférais quelques part m'écarté de librairies tel la SDL.

    Je n'ai cependant pas trouvé grand chose compatible DOS et Linux dans ce domaine.

    J'ai cependant trouvé ceci:
    http://grx.gnu.de/
    http://www.fgrim.com/mgrx/

    et je me demande si la librairie Allegro ne fait pas ça non plus j'ai vu qu'elle était compatible DOS aussi. (du moins pour ses anciennes versions)

  7. #7
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 252
    Par défaut
    Sous DOS grâce à des outils comme Borland C et surtout DJGPP ça pouvait même se faire sans assembleur ou alors un peu embarqué dans du C. Par contre ça reste très technique donc il faut s'y connaitre. En plus accessible il y a des biblios comme Allegro. Il faudra peut-être repêcher les vieilles versions car les plus récentes c'est sans doute comme pour SDL 2 & Cie : Support de Windows, utilisation d'OpenGL…

    Du côté de Linux je me souviens alors très vaguement d'avoir bidouillé mais il fallait au moins être sous X11. Dans ma petite tête il y a VGAlib ou VESAlib mais c'était peut-être une autre biblio. C'est très flou ! Ça doit être possible de faire comme sous DOS sans passer par un environnement graphique mais alors là bon courage… Mais quand on aime bidouiller il y a sans doute de quoi se faire très plaisir !

    Niveau langage je te conseille C/C++ mais en matière de programmation multimédia Turbo Pascal était aussi très populaire. L'avantage de DJGPP c'est qu'il était fourni avec un compilo et une biblio permettant d'accéder à toute la mémoire. C'était magique !! L'éditeur bleu était aussi trop classe.

    Bon courage et vive la nostalgie.

    Note : Ce message a 7 minutes de retard

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 26/05/2006, 11h11
  2. Réponses: 2
    Dernier message: 02/05/2006, 09h32
  3. [Eclipse 3.1] Impossible de lancer une application graphique
    Par pugnator dans le forum Eclipse Java
    Réponses: 10
    Dernier message: 11/09/2005, 12h48
  4. [Service] Lancer une application graphique
    Par Wookai dans le forum Windows
    Réponses: 3
    Dernier message: 18/08/2005, 12h26
  5. Execution d'une application graphique
    Par BigBeni dans le forum ANT
    Réponses: 2
    Dernier message: 01/04/2004, 09h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo