CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Qu'est-ce qu'un Buffer Linéaire ????

guigui00
guigui00
Niveau 8
30 mai 2003 à 21:44:09

tout est dans le titre ^^

guigui00
guigui00
Niveau 8
30 mai 2003 à 21:50:14

rectification : " un buffer linéaire de pixels de 16 bits"

guigui00
guigui00
Niveau 8
30 mai 2003 à 21:52:41

pour info, c´est pour de la Dev Gba ^^ ce terme inform

guigui00
guigui00
Niveau 8
30 mai 2003 à 21:57:43

hiiii ^^ nan c´est bon, ce chèr Hs_Dino m´a réponde à mes exigences : P

arnaud81
arnaud81
Niveau 7
31 mai 2003 à 01:12:34

facile, un buffer lineaire, c ´est un buffer auxquel on a acces sans bank switching.

de 16 bits ? c simple, 2octets representent la couleur d´un pixel, tu peux donc avoir jusqu´a 65535 couleurs simultannément.

en 320*200*8bit sur PC, l´acces a l´écran se fait par l´adresse 0xA000. A partir de cette adresse, chaque octet ( parce 8bits) represente un pixel.
l´octet a l´adresse 0xA000 represente le premier octet, l´adresse 0xA000+1 le second, etc. l´adresse 0xA000+320 represente le premier pixel de la seconde ligne de l´écran.

Tu acces entierement a l´écran par le biais de cette adresse comprise entre 0xA000 et 0xB4000 ( bref, 64Ko) sur pc. Nous avons ici un buffer ( l´écran) linéaire car continu.

Jusqu´a la, tout est cool et simple. Pas de chance, pour les modes de resolutions superieurs
64Ko n´est pas suffisant pour afficher tout les pixels. Le seul moyens d´acces est la région de mémoire specifiée plus haut.

Alors pas d´idée ?

c´est simple, tout les accés a la mémoire vidéo se fait entre 0xA000 et 0xB4000 ( ou plus suivant les cartes) mais il y a une commande qui permet de " bouger" cette fenetre sur une autre zone de l´écran. Par defaut, cette fenetre ( la zone mémoire) pointe sur le début de la série d´octet que constitue l´écran. Grace a une commande ( appel du bios ou écriture dans un registre), on peut demander a ce que cette région de mémoire pointe sur une autre zone de l´écran.

L´acces au buffer qu´est la mémoire graphique ce fait par " bank switching" ( sélection de banque/plage). Donc un buffer linéaire est nettement plus pratique d´utilisation car plus simple et plus efficace. Par ailleur, cette technique d´adressage se retrouve dans la mémoire EMS, longtemps utilisé par Windows et certains jeux DOS.

Jespere avoir été clair

Kelios
Kelios
Niveau 8
31 mai 2003 à 01:52:29

Très intéressant arnaud:
" l´acces a l´écran se fait par l´adresse 0xA000"
Sous une mémoire 32 bits, c´est 0x0000A000?

Et, en assembleur, il est toujours possible de faire un truc du genre:

push ds
push eax
xor eax, eax
mov ds, eax
mov ds::[A000h], eax
pop eax
pop ds

pour avoir un premier pixel noir?

Kelios
---------

Sous forums
  • Aide à l'achat Mac
  • Création de sites web
  • Internet
  • Macintosh
  • Création de Jeux
  • Linux
  • Programmation
  • Steam Deck
  • Hardware
La vidéo du moment