ebooksgratis.com

See also ebooksgratis.com: no banners, no cookies, totally FREE.

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
Mode X - Wikipedia, the free encyclopedia

Mode X

From Wikipedia, the free encyclopedia

Mode X is an alternative video graphics display mode of the IBM VGA graphics hardware that was popularized by Michael Abrash, first published in July 1991 in Dr. Dobb's Journal, republished in chapters 47-49 of Abrash's Graphics Programming Black Book (now freely available online).[1]

The primary advantage of Mode X is that it has square pixels: a resolution of 320x240 instead of the VGA standard Mode 13h which is 320x200. Additionally, Abrash enabled the VGA's planar memory mode (also called "unchained mode"). Even though planar memory mode was a documented part of the VGA standard, it was first widely publicized in the Mode X articles, leading many programmers to consider Mode X and planar memory synonymous. It is possible to enable planar memory in standard 320x200 mode.

The term "Mode X" was coined by Michael Abrash, who called it this in his articles. Though this mode had been discovered independently by others,[2] it found little use before Abrash's articles outlined its advantages.

Planar memory arrangement splits the pixels horizontally into groups of four. For any given byte in the PC video memory aperture, you can access four pixels on screen, by selecting the plane(s) you require. This is more complicated for the programmer, but the advantages gained by this arrangement were considered very worthwhile by many, and Mode X found considerable use in demos and 2D games.

The main uses of the extra memory are:

  • Higher resolutions: up to 360x480 in 256 colours is possible
  • Double buffering and triple buffering for flicker free animation
  • Smooth hardware scrolling of the video display window
  • Graphics stored in 'off-screen' VRAM can quickly be moved around in VRAM using the VGA latches
  • Planar mode allows up to 4 adjoining pixels to be modified in one byte write operation, which is ideal for solid filling of objects such as polygons, rectangles, lines, etc.
  • Screen splitting, where one part of the display is taken from one area of memory and the other from a different area, which is ideal for status displays in games that utilise smooth hardware scrolling
  • Square pixels are possible where the height/width ratio matches the monitor's, as they usually do in the 320x240 mode.

Simply turning on unchained mode but leaving the resolution at 320x200 became informally known as "Mode Y" in the Usenet rec.games.programmer group.[3][4]

[edit] References

  1. ^ Abrash, Michael. Michael Abrash's Graphics Programming Black Book Special Edition. The Coriolis Group, Scottsdale Arizona, 1997. ISBN 1-57610-174-6: PDF available online [1]
  2. ^ Ibid. pg. 877
  3. ^ Mode Y (August 1993). Retrieved on 2007-04-05.
  4. ^ Roberts, Dave. PC Game Programming Explorer. The Coriolis Group, Scottsdale Arizona, 1994. ISBN 1-883577-07-1. Page 106.

[edit] External links

Languages


aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -