# VGA database. # # ctlr: # These entries are used to identify a particular controller. # 'numeric offset'="string" identifies the controller by searching # the BIOS for "string" at 'offset'. There may be multiple identifier # attributes per ctlr. # Strings can be found in the BIOS ROM by using the DOS 'debug' # command and typing 'd c000:0' to obtain a dump of the first part of # the ROM. Note that some machines (e.g. AT&T/NCR laptops) have the # ROM mapped at 0xE0000, not 0xC0000. # The "clock", "ctlr", "link" and "ramdac" entries give a chain in order # of functions to be called for this controller for initialisation, etc. # The "clock", "ctlr", "link" and "ramdac" values can all take an extension following # a '-'. This can be used as a speed-grade or subtype; matching is done without # the extension. # ctlr 0xC006F="8C801" # STB PowerGraph X-24 link=vga ramdac=att20c491-100 hwgc=s3hwgc link=s3clock clock=icd2061a ctlr=s3801 link=ibm8514 ctlr 0xC004F="86C805" # Orchid Fahrenheit 1280 0XC004F="86C801" # Quadtel S3 86C801/805 link=vga hwgc=s3hwgc ramdac=sc15025-80 link=s3clock clock=ch9294-g ctlr=s3805 link=ibm8514 ctlr 0xC0067="#9GXE" # #9GXE Level-1[12] link=vga ramdac=bt485-135 hwgc=bt485hwgc ctlr=s3928 link=ibm8514 clock=icd2061a link=s3clock ctlr 0xC0064="#9GXE" # #9GXE Level-16 link=vga hwgc=tvp3020hwgc ctlr=s3928 link=ibm8514 ramdac=tvp3020-200 clock=icd2061a link=s3clock ctlr 0xC0094="#9-864" # #9GXE64 0xC0044="Phoenix S3 Vision864 (16Bit DAC)" # GIS Globalyst 550 link=vga hwgc=s3hwgc ctlr=vision864 link=ibm8514 ramdac=att21c498-135 clock=icd2061a link=s3clock ctlr 0xC0076="Tseng Laboratories, Inc. 01/30/92 V8.00X" # Cardinal VGA765 link=vga ramdac=att20c492-80 clock=ics2494a-237 ctlr=et4000 ctlr 0xC0076="Tseng Laboratories, Inc. 03/04/94 V8.00N" # Hercules Dynamite Power link=vga clock=ics2494a-324 ramdac=stg1702-135 ctlr=et4000-w32p hwgc=et4000hwgc ctlr # CL-GD542x 0xC0039="CL-GD540" # Cirrus Logic BIOS 0xC0039="CL-GD5422" 0xC0039="CL-GD542X VGA BIOS" # NCR 3230 0xE0039="CL-GD540x/542x VGA BIOS" # NCR 3230 0xC003B="SpeedStar PRO" # Diamond SpeedStar Pro 0xC00F4="KELVIN 64" # Orchid Kelvin 64 link=vga ctlr=clgd542x ctlr 0xC008F="ATI ULTRA PRO" # ATI ULtra Pro link=vga ctlr=mach32 ctlr 0xC0085="ATI MACH64, PCI BIOS" # AT&T Globalyst 600 link=vga ctlr=mach64 # # Don't know enough to do anything other than 640x480 on these. # Time someone else did some programming... # ctlr 0xE002D="PARADISE003245-520" # AT&T 3416 0xE0030="PhoenixVIEW(tm) VGA-Compatible BIOS" # AT&T Safari NSX20 0xC008D="Chips 65540 VGA 32KB BIOS" # ARM TS30 ctlr=vga # # mode: # These entries specify a monitor operating mode. # Attributes are: # clock the dot clock in MHz # shb start horizontal blanking # ehb end horizontal blanking # ht horizontal total # vrs vertical refresh start # vre vertical refresh end # vt vertical total # hsync horizontal sync polarity # vsync vertical sync polarity # interlace interlace # The shb, ehb, ht, vrs, vre and vt attributes specify the horizontal and # vertical timing. The x (hde, horizontal display end), y (vde, vertical # display end) and z (depth) values are derived from the value of the main # attribute (e.g. 640x480x8 -> x=640, y=480, z=8). # # The clock value 25.175 is known internally as the baseline VGA clock rate. # # The defaults for hsync, vsync and interlace are 0. Both hsync and vsync # must be non-zero if either is to take effect, - and + are valid choices. # # An attribute 'include=val' means continue using another entry. In this # case any non-zero attributes already set will not be overwritten by the # jumped-to mode. The x, y and z values are fixed by the first mode. # # An attribute 'alias=val' means continue using another monitor type. It can # be used to chain classes together. (bad explanation, i know). # include = 640x480@60Hz # 60Hz, 31.5KHz clock=25.175 shb=664 ehb=760 ht=800 vrs=491 vre=493 vt=525 include = 640x480@72Hz # 72Hz, 38.5KHz clock=32 shb=664 ehb=704 ht=832 vrs=489 vre=492 vt=520 include = 800x600@60Hz # 60Hz, 37.9KHz clock=40 shb=840 ehb=1000 ht=1056 vrs=605 vre=607 vt=633 include = 1024x768i@87Hz # 87Hz, 35.5KHz (interlaced) clock=44.9 shb=1048 ehb=1208 ht=1264 vrs=776 vre=784 vt=817 interlace=v include = 1024x768@60Hz # 60Hz, 48.4KHz clock=65 shb=1032 ehb=1176 ht=1344 vrs=771 vre=777 vt=806 hsync=- vsync=- include = 1024x768@70Hz # 70Hz, 57.2KHz clock=75 shb=1128 ehb=1232 ht=1328 vrs=771 vre=777 vt=806 hsync=- vsync=- include = 1280x1024i@87Hz # 87Hz, 48KHz (interlaced) clock=80 shb=1312 ehb=1528 ht=1576 vrs=1028 vre=1034 vt=1105 interlace=v include = 1280x1024@74Hz # 74Hz, 79.6KHz clock=135 shb=1376 ehb=1544 ht=1712 vrs=1028 vre=1034 vt=1075 include = 1376x1024@70Hz # 70Hz, 75.3KHz clock=135 shb=1440 ehb=1616 ht=1792 vrs=1032 vre=1040 vt=1075 # # VGA. # vga = 640x480x1 # 60Hz, 31.5KHz include=640x480@60Hz vga = 640x480x8 # 60Hz, 31.5KHz include=640x480@60Hz vga = 800x600x1 # 60Hz, 37.9KHz include=800x600@60Hz vga = 800x600x8 # 60Hz, 37.9KHz include=800x600@60Hz # # Multisync monitors with video bandwidth up to 65MHz. # multisync65 = 1024x768x1 # 60Hz, 48.4KHz include=1024x768@60Hz multisync65 = 1024x768x8 # 60Hz, 48.4KHz include=1024x768@60Hz multisync65 = 1024x768x1i # 87Hz, 35.5KHz (interlaced) include=1024x768i@87Hz multisync65 = 1024x768x8i # 87Hz, 35.5KHz (interlaced) include=1024x768i@87Hz multisync65 alias=vga # # Multisync monitors with video bandwidth up to 75MHz. # multisync75 = 1024x768x1 # 70Hz, 57.2KHz include=1024x768@70Hz multisync75 = 1024x768x8 # 70Hz, 57.2KHz include=1024x768@70Hz multisync75 = 1280x1024x1i # 87Hz, 48KHz (interlaced) include=1280x1024i@87Hz multisync75 = 1280x1024x8i # 87Hz, 48KHz (interlaced) include=1280x1024i@87Hz multisync75 alias=multisync65 # # Multisync monitors with video bandwidth up to 135MHz. # multisync135 = 1280x1024x1 # 74Hz, 79.6KHz include=1280x1024@74Hz multisync135 = 1280x1024x8 # 74Hz, 79.6KHz include=1280x1024@74Hz multisync135 = 1376x1024x8 # 70Hz, 75.3KHz include=1376x1024@70Hz multisync135 alias=multisync75 # # Viewsonic 17 (model no. 1782) # Horizontal timing: # Allowable frequency range: 30.0-82.0KHz # Blanking time: 3.0µs min. # Back porch time: 1.25µs min. # Front porch time: length of back porch time or less # Sync width time: 1.2µs min. # Vertical timing: # Allowable frequency range: 50.0-90.0Hz # Blanking time: 0.5ms min. # Back porch time: 0.5ms min. # Sync width time: 0.045ms min. # vs1782 alias=multisync135 # # IDEK Vision Master 17 (model no. MF-8617) # Horizontal timing: # Allowable frequency range: 23.5-86.0KHz # Vertical timing: # Allowable frequency range: 50-120Hz # Video bandwidth: # 135MHz # ms8617 alias=multisync135 # # Nokia Multigraph 445X # Horizontal timing: # Allowable frequency range: 30-102KHz # Blanking time: <= 20% of line period min. # Back porch time: 0.6->1.0µs # Vertical timing: # Allowable frequency range: 50-120Hz # Sync width time: 0.045ms min. between start of sync # and start of video # Video bandwidth: # 200MHz # 445x = 1600x1200x8 # 72Hz, 90.4KHz clock=200 shb=1664 ehb=2088 ht=2208 vrs=1202 vre=1208 vt=1256 445x alias=multisync135 # # Sony CPD-1304 # Horizontal timing: # Allowable frequency range: 28-50KHz # Vertical timing: # Allowable frequency range: 50-87Hz # cpd-1304 alias=multisync65 # # NEC 4FG # Horizontal timing: # Allowable frequency range: 27-57KHz # Vertical timing: # Allowable frequency range: 55-90Hz # Video bandwidth: # 75MHz # nec4fg alias=multisync75 # # NEC 5FG # Horizontal timing: # Allowable frequency range: 27-79KHz # Vertical timing: # Allowable frequency range: 55-90Hz # Video bandwidth: # 135MHz monitor # 75MHz cable # nec5fg alias=multisync135