Commentaires
- en.wikipedia.org/wiki/Mode_13h
- Cétait un peu avant mon temps, mais cela pourrait-il être une des raisons pour lesquelles ce dernier cas ne laissait pratiquement plus de VRAM pour stocker les sprites en VRAM? Ou peut-être quune troisième page a été couramment utilisée pour stocker toutes les parties statiques du jeu afin que les sprites animés puissent être affichés sur chaque image sans avoir à redessiner larrière-plan?
- I ' je vote pour clore cette question comme hors sujet, car elle concerne des anecdotes historiques sur lindustrie.
- Les moniteurs VGA dorigine ne prenaient en charge quune plage limitée de minutages, les limitant aux modes vidéo utilisant lun ou lautre 480 , 400 ou 350 lignes horizontales lors de lutilisation de minutages VGA standard. Le mode 320×200 standard et le mode non standard 320×240 " Mode X " utilisaient respectivement les durées VGA standard 640×400 et 640×480. Les pixels dans ces modes ont simplement été doublés, à la fois horizontalement et verticalement. Les modes non standard 400×300 ont fait la même chose, aboutissant à une sortie 800×600 avec des synchronisations bien en dehors de la plage que de nombreux moniteurs VGA de temps pourraient gérer. Des délais qui pourraient effectivement endommager ces moniteurs.
Réponse
Le matériel était-il capable de prendre en charge cette résolution? Je veux dire à la fois comme sortie de carte vidéo et entrée de moniteur? Considérant simplement lhorloge réelle des pixels (en ignorant les porches avant / arrière, les synchronisations h / v, etc.), à un taux de rafraîchissement de 60 Hz:
320 * 240 * 60Hz = 4608000 ~ = 4,61 MHz 400 * 300 * 60Hz = 7200000 = 7,20 MHz
Nous parlons ici dune horloge denviron 56% plus élevée.
Et cest AVANT de considérer les porches, les synchronisations, etc.
Commentaires
- Est-ce une réponse? Ou un commentaire sur vos pensées? Êtes-vous en train de dire que lexigence de traitement est la réponse?
- Les moniteurs CRT sont une technologie analogique et ne ' pas vraiment une résolution fixe comme les écrans LCD (ils ont tendance à pour devenir flou lorsquil est exécuté sur des résolutions trop élevées). Les spécifications VGA avaient des résolutions allant jusquà 640×480 (en mode 16 couleurs), donc les moniteurs CRT ont été conçus pour de telles résolutions.
Réponse
Après avoir lu Edition spéciale du livre noir de programmation graphique de Michael Abrash et dautres ressources, jai une bonne idée de la raison pour laquelle le mode X est 320×240.
La raison principale est que les moniteurs VGA abordables étaient à « fréquence fixe » et ne pouvaient accepter quun petit ensemble dentrées. Réglage 400×300 sur eux vous procurerait quelque chose comme ça :
Dans lensemble, les cartes graphiques VGA étaient plutôt sous-alimenté et il était difficile dobtenir une animation fluide même à 320×240. La VRAM était plus lente que la mémoire principale et avait la moitié ou le quart de la bande passante (8 bits contre 16 ou 32 bits).
Cependant, la vitesse maximale à laquelle les données peuvent être écrites à ladaptateur se révèle être pas plus dun octet toutes les microsecondes. En dautres termes, vous ne pouvez écrire quun octet sur cet adaptateur tous les 33 cycles dhorloge sur un 486/33. Par conséquent, quelle que soit la vitesse à laquelle jai créé le code de dessin au trait, il ne pourrait jamais dessiner plus de 1 000 000 pixels par seconde en mode 256 couleurs dans mon système.
Le commentaire de Philipp est vrai aussi. Voici « une astuce que vous pouvez faire pour pousser 32 bits par cycle dans le tampon arrière.