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

C Discussion :

Programmation Graphique VESA


Sujet :

C

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 48
    Points : 46
    Points
    46
    Par défaut [Resolu] Programmation Graphique VESA
    Bonjour à tous,
    J'aurais aimé savoir si quelqu'un savait de manière assez précise comment on pouvait gérer la programmation graphique en mode VESA sans passer par les différentes banques vidéos qui ralentissent considérablement l'affichage... En effet programmant juqu'alors en VGA (13h) je serais très intéressé par l'idée de retrouver la rapidité et la facilité de programmation de ce mode en VESA. J'ai entendu dire qu'il était possible avec certains compilateurs comme DJGPP de passer en mode non protégé et alors de ne plus subir la limitation des 64 ko pour les tableaux (et donc de ne plus avoir a utiliser les banques vidéos) en programmant comme on peut le faire en VGA à l'adresse A000:0000 ... Merci par avance de vos réponses.

  2. #2
    Responsable technique

    Avatar de Anomaly
    Homme Profil pro
    Directeur
    Inscrit en
    Juin 2003
    Messages
    10 339
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Directeur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 339
    Points : 130 355
    Points
    130 355
    Billets dans le blog
    1
    Par défaut
    Le standard VESA depuis la version 2 il me semble propose une option "Linear Adressing" qui permet de "mapper" une zone entière de la mémoire pour la totalité de la mémoire vidéo. Il n'est pas proposé par toutes les cartes mais toutes les cartes actuelles le propose.

    PS: Il s'agit au contraire du "mode protégé" et pas non-protégé

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 48
    Points : 46
    Points
    46
    Par défaut
    Oui, excuse moi c'est bien du mode protege dont je voulais parler. Et comment fait on alors pour utiliser et activer l'option "Linear Adressing" en utilisant les interruptions du bios ? Dois je seulement activer le mode VESA que je souhaite utiliser puis declarer un pointeur vers A000:0000 et programmer comme en VGA classique (en tenant compte bien sûr de la resolution et du nombre de couleur) ? De plus qu'en est il a ce moment la de la palette de couleur qu'on devait initialement creer ?
    Merci par avance !

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 48
    Points : 46
    Points
    46
    Par défaut
    Ca y est j'ai trouve comment faire pour programmer le mode VESA en LFB (Linear Frame Buffering) c'est à dire pour programmer le mode VESA de facon simple et rapide. Si jamais vous desirez obtenir des informations la dessus n'hésitez pas a me contacter ou a visiter le site suivant : http://defcon.planet-d.net/defcon01/m4/t2m4.htm !
    Voila @+

  5. #5
    Membre émérite

    Homme Profil pro
    Urbaniste
    Inscrit en
    Mars 2002
    Messages
    255
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Urbaniste

    Informations forums :
    Inscription : Mars 2002
    Messages : 255
    Points : 2 717
    Points
    2 717
    Par défaut
    Perso je ne trouve pas la gestion des bank si lourde que ça ! Il suffit de calculer l'offset dans la mémoire vidéo en 32 bits. Le bank est égal à l'adresse divisé par 65536 (ou ">> 16"), ou l'offset 16 bits = offset modulo 65536 (ou "& 65535").

    On sauve le bank actuel dans un p'tite variable (unsigned int), et on change quand il le faut. Si tu te débrouille bien tu ne changes pas si souvent de bank !

    J'ai écrit un unité VESA version 2 en Turbo Pascal :
    http://pascal.developpez.com/

    Je peux t'aider si tu veux + d'info. J'ai réussi à supporter les modes 15, 16, 24 et 32 bits/pixel. Le mode 4bpp (16 couleurs) est assez complexes apriori, et puis ... qui veut encore de 16 couleurs à l'heure actuelle sur un PC ???

    @+ Haypo

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 48
    Points : 46
    Points
    46
    Par défaut
    Merci pour ton aide mais moi aussi j'avais ecrit des bibliotheques de fonctions pour le mode VESA avec les banques videos ... et en fait je trouvais ca assez lent parce que j'avais fait un petit moteur 3D (de A a Z donc sans passer par les librairies du style OpenGL) et l'affichage ramait pas mal (tu me diras que c'etait aussi peut etre mon moteur 3D qui etait pas vraiment optimise ;-) ) ! Donc voila pourquoi je voulais essaye le mode lineaire du VESA dont on m'avait dit qu'il etait plus rapide !! mais comme je l'ai indique dans le sujet j'ai trouve pas mal d'infos la dessus et au final ca a pas l'air si simple que ca (car il me faudrait passer en mode protege avec DJGPP et apprendre toutes les syntaxes du compilateur ce qui n'est pas tres court !!) Enfin si jamais t'a des infos en francais courtes et claires la dessus, je serais toujours preneur (notamment au sujet de la librairie <dpmi.h> ou un truc comme ca ) !! Voila @+

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

Discussions similaires

  1. [GraphDev] Langage de programmation graphique
    Par shaman99 dans le forum Autres langages
    Réponses: 2
    Dernier message: 18/05/2006, 01h22
  2. programmation graphique en c++
    Par chokri dans le forum Bibliothèques
    Réponses: 5
    Dernier message: 08/10/2005, 05h22
  3. Programmation graphique en mode 12h
    Par tchingoo dans le forum Assembleur
    Réponses: 1
    Dernier message: 16/06/2005, 22h45
  4. Programmation graphique ... SDL ??
    Par Franck.H dans le forum C
    Réponses: 9
    Dernier message: 29/04/2004, 20h51
  5. Réponses: 3
    Dernier message: 15/03/2004, 00h55

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