IBM XGA-2 Display Adapter/A
Init file for @8FDA.ADF
Option v2.2 Updated XGAANI
1995 Enhanced 16-Bit Direct Color for Natural Images
APM disk for DOS 5.02+ and Windows 3.1.
Pumping Up the XGA-2?
2MB XGA-2 Sightings
Setup under DOS and Windows (This
takes you to Peter's site)
Features of XGA/XGA-2
Multiple XGA-2 Adapter
Support MXGA, where are you?
Components of XGA-2
and Cathode-Ray-Tube Controller
Digital-to-Analog Convertor, and Palette
ROM Address Space
Aperture Under Setup
Driver Disk v2.12
tech support supplemental
Display Adapter/A - Monitor Compatibility
Slots XGA-2 Can Use in Model 90
Installing XGA-2 On Model 95
Blank Screen Under W95 MS-DOS
XGA2 Error Codes
J1 Solder pads for two pin header
U7 Hitachi HM62256BLFP-10T
U8 to U33 OKI M514262-80Z
Y1 4.000 MHz Osc
BIOS TI -20FML TMS27PC256
NOTE: VRAM are Toshiba TC524256BZ-10,
NEC D42274V-10 should work too. If you have a different Video ZIP make
that works, send me a note
Purpose of J1?
There is a silkscreened outline around these solder pads.
What could this jumper affect? Tell ME
Found this after a 9577 Strip-A-Thon. The wire comes off pin 5 of U20,
then it winds it's way over to pin 178 (I think!) of U2. I might be wrong
(again?) but I haven't seen much rework on an XGA-2 adapter. Comments?
The 74F245 in the picture is an 8-bit bus buffer ... therefore
I think they jump-wired a bad connection on the XGA2 board only. I have
checked all my XGA-2s and none (so far) has this connection. Haven't tested
in depth if there is a connection between the points at all normally.
To which I say- Why would they do a rework on one freakin XGA-2 card?
If you are cranking out hundreds of thousands of XGA-2 cards, why rework
one? Point- how many XGA-2 cards have you ever seen with ANY rework? I
have this ONE card. (theme from The X-Files)
Pumping Up XGA-2?
From Helmut P. Einfalt
From what I see it *is* the regular XGA-2 card. The memory modules
are Toshiba TC524256 (IC VRAM 524256 80NS 256K*4). There exist some modules
with 256k (reportedly even 512k, and maybe manwhile some 1024k ones too)
that are pin-compatible to the ones on the XGA-2, but I doubt that the
card bios will be able to handle them. The soldering job would be bad but
feasible -- physically it *might* be possible to boost the card to 2-4
MB (or even beyond), but it would require a couple of experts to read out
and patch the card bios, and even then we'd still not have any drivers...
Last weekend when I was at Peter's place he told
me that at one point IBM obviously had thought of building the 4MB variety,
but they seem to have dropped the whole thing long before the first card
was up and running...
But if anyone wants to have a go at
the swapping the memory -- let me know ! I'm willing to test them...
2MB XGA2 Sightings?
> No, no and no again. There is no such thing as a 2MB XGA-2.
Jim swears on his 9595
I know that's what people keep saying, but I have two folks
here in town who will _swear on their mother's grave that they have had
one in their physical possession. One person has been known to tell
tales, but the other I consider reliable.
From Peter Wendt
So we have actually 3 different types:
- early, with heatsink atop the ceramic chip RAMDAC
- middle, with ceramic chip ("naked") RAMDAC and no heatsink
- late, with the IBM "BlueChip" RAMDAC.
The P/N for that chip is 89G2928, mfg-date 34th week 1994.
With a heat-spreader turned by 45°. Looks interesting.
Andrew Daugherity sighed
If only the RAMDAC would actually run at its full spec
that would be possible. Unfortunately, at least with the XGA-2
in my 'E' (9533), I am forced to run at 1024x768@70Hz (no 75Hz).
a 75MHz dot clock, whereas 1024x768@75 is an 85MHz dot clock.
The XGA/2 is rated at 90MHz, but the X server defaults the max dot
clock to 80MHz, because, according to them, many cards are unstable
above that. It is unfortunate that they are correct -- if I
manually set max dot clock to 90, thus allowing 1024x768@75, the
display is unstable. The image is stable as long as it is static,
but whenever it is updated (even just moving the mouse), the portion being
updated "waves" back and forth. At first I thought it was my POS
Dell monitor, but since the monitor does not have that problem on other
computes, and the XGA/2 still had that problem on another monitor, I knew
it was at fault.
And yes, it is a hardware problem. The "wavy" effect
happens under XFree, win95, and even OS/2 Warp 3, so I doubt all three
would have software issues.
I also once tried 1152x864@60Hz (89.9MHz dot clock),
and the display was totally out of sync. So much for the 90MHz dot
clock. If only they could have used a nice Matrox 350MHz RAMDAC ;-)
>If only the RAMDAC would actually run at its full spec that
would be possible. Unfortunately, at least with the XGA-2 in my 'E'
(9533), I am forced to run at 1024x768@70Hz (no 75Hz). 1024x768@70
is a 75MHz dot clock, whereas 1024x768@75 is an 85MHz dot clock.
Peter Wendt suggests:
I've seen and described that effect earlier (*much* earlier)
with a XGA-2 using the "heatsinked" RAMDAC ... but apparently my PS/2e
ran quite nice on the Eizo F35 at 1024 x 768 @ 75 Hz. Going above that
will cause "speckled" icons and litter the desktop when moving objects
or open / close windows.
It also seems as if the later "white board" RAMDAC
and the last "IBM blue glass" types were an improvement over the earlier
versions. Same effect can be seen on Mod. 9556 / 9557: the early RAMDAC
has a round "heatsink tower" glued atop - the later ones and all 486SLC3
haven't. The later ones run much more stable.
Currently I have a "blue RAMDAC" XGA-2 in my turbo-95A.
Run OS/2 Warp at 1024 x 768 / 256 colors and 76 Hz. No negative side-effects.
Screen Under W95 in MS-DOS Mode
If you try running MS-DOS mode under W95 with an XGA-2
adapter, you will be rewarded with a blank screen. Nothing, yet typing
EXIT restarts Win95.
Create a DOSSTART.BAT with a single line of "mode co80".
Ed. Save it in the
\windows directory or a directory on your path. It works on my 9590 with
an XGA-2 card.
XGA-2 with 64K under Win95
This may disappear soon if Peter's method works...
I managed to get 64K colors at 800 x 600 resolution in windows
95 with my XGA2 card in my 9577. I haven't checked in in a while,
if this is old news, just ignore me.
Setting this up is not for the faint of heart. It may take much
rebooting, Safe Moding, and DOS editing to get it working just right.
Hopefully, if lots of people like this, someone big like Peter will document
it better in his web page.
Windows 95 has the ability to use Windows 3.1 graphics drivers.
Under "Display" in the control panel, go to the "Settings" tab. Hit
"Change Display Type". A dialog will come up, showing your current
card driver and monitor settings. Hit "Change" on adapter type.
Click "Have Disk", and give it the directory with the "oemsetup.inf" file
for the win3.1 XGA 2.12 drivers. For the XGA2 driver disk, the path
was "A:\winv31". Select "IBM XGA 2.12" or whatever and "OK".
This will install the drivers.
Next comes the hard parts.
The windows control panel applet doesn't work, or at least it didn't
for me. You must install the DMQS files, select your monitor, and
make sure the XGA$DMQS path is set in your AUTOEXEC.BAT. The driver
will look there to find what hertz it should run your resolutions at.
Make sure the following lines are in SYSTEM.INI:
I had win3.1 with the XGA 2.12 drivers working once, then I installed
Win95 on top of it, and this snippet was left in my SYSTEM.INI file.
Just installing the drivers doesn't create this stuff, the XGA applet does
I think. Since it doesn't work, you have to add and adjust the stuff
The VerFrequency and MonitorId parameters probably will be different
for your monitor. The hexidecimal number for the monitor ID can be
found in the XGASETUP.PRO file in your XGA$DMQS directory after youve correctly
selected your monitor.
The VerFrequency parameter is (I think) ten times the verticle refresh
rate (603 is for 60.3 Hz, my refresh rate). You have to know your
verticle refresh rate. The XGAIDLST.GML file in the XGA$DMQS
directory contains a list of all the supported monitor types, ids, and
a lot of their refresh rates in various modes.
I normally use a 9515 monitor, which doesn't support 800x600 resolution.
I did this with an extra monitor I have laying around, pretty much cause
I was bored and got an insperation. I got the 64K colors working,
wrote down what I did, and then undid it all. I didn't extensively
test the limits reliability, such as DirectX or movie playing. People
who actually use this can do play with that stuff.
Have Fun ! Christian
Microsoft Windows 95 XGA/2 driver
-- Getting Support for 800 x 600 and 1024 x 768 Non-interlaced
Version 2 -- 8 September 1995
John F Legg
Isles of Scilly, United Kingdom.
This file is a result of a problem I was having trying to get the XGA/2
display driver supplied with Windows 95 to work with my IBM PS/2 90-XP
(Type: 9590-ALF) fitted with an XGA-2 Adapter in an expansion slot and
IBM 9515 monitor at anything other than 640 x 480 x 16 colors.
The problem I was having involved Windows 95 incorrectly
determining the capabilities of my display system and setting the video
mode to interlaced operation above the 640 x 480 x 16 color base.
The IBM 9515 monitor requires a non interlaced image at
a refresh rate of 75Hz for it to function correctly. Windows 95 was determining
the display capabilities incorrectly and was getting the XGA-2 Adapter
to send an interlaced image at a lower rate to the monitor. This being
incompatible with the monitor all I would get on the screen was a scrambled
image. (Incidentally, if the XGA/2 driver is installed and the video is
set to 16 colors at 640 x 480 Windows 95 is actually using the VGA video
driver hence most users being able to get the XGA/2 driver to work in this
What was required was a way to override the refresh rate
set by the XGA/2 video driver and lock it to the required rate. In the
case of my IBM 9515 monitor the required refresh rate is 75.8Hz. Please
see Appendix A at the end for other refresh rates.
WARNING: The solutions listed below
are known to work on the equipment configuration listed above for 1024
x 768 at a refresh rate of 75.8Hz. The hardware configuration listed above
prevents me from testing any other values but in theory they should work.
The following procedures explain how I got it to work:
This involves making a modification to the MSDISP.INF file before installing
or reinstalling the Microsoft XGA/2 driver. If you have not yet installed
Windows 95 you will have to initially install it with a VGA setup so you
can edit the MSDISP.INF file before installing the XGA/2 driver. The file
MSDISP.INF is located in the \WINDOWS\INF directory and is a plain text
1 Open MSDISP.INF using Notepad or other suitable
2 Find the section with a heading of [XGA2.AddReg]
3 Change the line containing the following
to the following:
If you refresh rate is not 75.8Hz see
Appendix A at the end of this document and substitute the appropriate value
in place of 758.
4 Save the file.
5 Install/reinstall the Microsoft Windows 95
6 Win95 will initially start in 640 x 480 x
16 (VGA) but it should then be possible to change to your required
To use this option the Windows 95 XGA/2 driver must already be installed.
This option also involves making a modification to the information stored
in the Windows Registry using the program REGEDIT.EXE. Only do this if
you are familiar with and confident in editing Registry entries. You only
need to edit the wrong entry and Windows 95 is rendered inoperable.
What is required is to change the value stored for the
refresh rate under the entry for XGA/2 from -1 to 758. As with Option 1,
if you refresh rate is not 75.8Hz then see Appendix A at the end of this
document and substitute the appropriate value in place of 758
How I did I come up with the value of 758?
I came up with this value based on an entry I found in my Windows 3.1
SYSTEM.INI file that the IBM Windows 3.1 XGA-2 drivers version 2.11 and
2.12 drivers had created. In SYSTEM.INI, under the section [XGA_DISPLAY],
there is an entry of VerFrequency=758.
With nothing to loose, all other solutions having failed to work, I
made the assumption that vertical frequency and refresh rate were the same.
I therefore took the value from VerFrequency and applied it to RefreshRate
in the Windows Registry. Not based on the best of logic I grant, but it
Therefore if you had the IBM Windows 3.1 XGA-2 drivers installed under
Windows 3.1 before you upgraded to Windows 95, and the refresh rate you
require is not listed in Appendix A, it should be possible to find the
setting required for your hardware configuration. Just see what the value
is for VerFrequency= and apply it to RefreshRate in place of 758.
Unfortunately, if you installed the IBM Windows 3.1 XGA-2 2.11 or 2.12
drivers under Windows 95, this entry will show VerFrequency=0 and so will
be no use in trying to determine the correct setting for your system.
What is the Microsoft Windows 95 XGA/2 driver
From the entries in the Windows Registry the following modes look to
be supported by the driver.
16 colors at 640 x 480 (uses
16 colors at 800 x 600
16 colors at 1024 x 768
256 colors at 640 x 480
256 colors at 800 x 600
256 colors at 1024 x 768
256 colors at 1280 x 1024
65536 colors at 640 x 480
Resolution Refresh Rate RefreshRate
640 x 480 60.1Hz
800 x 600 56.3Hz
1024 x 768 60Hz
Installing the XGA-2
on the 8595
You need the current XGA
/ XGA-2 option disk from IBM ftp and *boot* the machine with it prior
to install the card. Run "Update a Mod. 90 / 95 system partition" to make
sure you have the lastest ADF, DGS files on the partition.
Then install the XGA-2 physically.
If you have an 8590 or 9590, all of the connectors WILL NOT fit into the
slot. You have a choice of Slot 2 or Slot 4. For more details, go HERE.
For the 8595 / 9595 systems, Slot #5 is the one you should use.
Next recommended step: if you are
running DOS / Win 3.x or Win95 get the DOS
/ Win 3.x drivers Ver2.12 . Run the Install from DOS and install the
DMQS monitor profiles first. This avoids some error messages later on.
Trust me. I'm not worried about DOS drivers, but if you are, install the
DOS drivers before you leave the Install program.
Do NOT load the DOS Adapter Interface device driver if you are using Windows.
The DOS Adapter Interface drivers are not supported in OS/2 to run
XGA resolution in a DOS full-screen, or DOS-window.
Reboot after installing DMQS.
Now for an existing Win3.1x installation,
go to the Windows directory (eg- cd\windows) and run setup. Choose the
video entry, go to Other, and type in the path a:\winv31 and hit enter
(though a soft press works as well). You may need some of your Windows
install disks. Be forwarned!
After going into Windoze, go to
Main>Control Panel>XGA Setup. Choose the monitor profile that comes the
closest to fitting your monitor. Display shows the Display attatched. Advanced
shows the resolution and color depth of the display.
You can find a messy profile to monitor matrix
In Win95 you can force the display
to use 75Hz refresh at 640 x 480 modes with using the VESA-driver XVGARATE
75 NOWARN in the AUTOEXEC.BAT -..usually the XGA-2 comes out in 60Hz in
Unlike to the XGA-1 the XGA-2 is
capable to identify the attached display and set its defaults to corresponding
values. For a "better than XGA" monitor select the "14 Inch VESA" with
75Hz refresh in all modes - did that for my EIZO.
If you run OS/2 you will have to
use "Change Installation" again and select XGA-2 as primary video. After
installation of the drivers you will find a second page in the displays
properties folder (right arrow at the bottom of the page), where you can
select monitor types, resolutions and refresh rates.
Very friendly greetings from Peter
This utility should be used if an XGA-2 subsystem is being used as
the primary VGA source in a system and a Multi-Scan type of display is
Most Multi-Scan type of displays respond as an IBM 8514
display when interrogated by the XGA-2 subsystem Power-On Self Test (POST)
program. As a result the VGA video will be displayed at the '60Hz'
refresh rates shown below (the normal VGA rate for IBM 85xx displays).
However, if the attached display can accept one of the
two alternative faster
video rates, this utility may be used to override the default rate.
WARNING: If this override is used in an AUTOEXEC.BAT or CONFIG.SYS, then
care must be taken to ensure that the parameters specified are suitable
for the attached display. Selecting the wrong video rate may result in
VGA video not being displayed correctly, or even (in some cases) damage
to the display over time.
If the display cannot support a chosen rate, the system must be rebooted.
nowarn = NOWARN prevents the Y/N WARNING before execution.
640 x 480
720 x 350
720 x 400
640 x 480
720 x 350
720 x 400
640 x 480
720 x 350
720 x 400
Features of XGA and
XGA-2 Video Subsystems
XGA/XGA-2 use a 32-bit data bus for all system memory and I/O
addresses. The VGA subsystem uses either an 8-bit or 16-bit data bus.
With a 16-bit data bus, XGA uses a 512KB video display
buffer, with a 32 bit data bus it uses a 1MB video display buffer.
With a 32-bit data bus, XGA-2 uses a 1MB video display buffer.
132 Column Text Mode
VGA provides for an 80 character per line text mode. XGA/XGA-2
supports 132 characters per line on any display that has a vertical refresh
rate of 46.8 Hz interlaced or 59 Hz non-interlaced.
XGA/XGA-2 support 1024x768 by 256 colors. This mode
supports real and virtual memory addressing and multiple adapters in one
Direct Color Mode
Also known as palette bypass mode. With 1MB of VRAM, the direct
color mode provides 640x480 with 64k colors. VGA is limited to 256 colors.
The DOS AI makes the XGA/XGA-2 8514/A compatible at adapter
interface level and above.
Multiple XGA-2 Adapter Support
OPTIONS BY IBM: MULTIMEDIA PRODUCTS
Multiple XGA Display Device Driver PN 83G8292
You can install up to seven XGA-2 adapters in a MCA bus
system (limited by slot availability) or six if the XGA-2 is built into
When multiple adapters are used, they can do VGA or 132
column text mode. However, VGA mode uses one set of addresses, and only
one adapter can use those addresses at a time. “Therefore, only one
display at a time can interact with the computer in the VGA mode or 132-column
text mode to change or refresh the image that it displays”. Ed.
What? What if all the adapters are in 132 column text mode?
NOTE: A company in
the UK called “Software
2000” had a multiple XGA-2 driver called (wow!) MXGA.
Consists of the display controller, video display buffer,
serializer, palette, and the digital-to-analog convertor (DAC).
Consists of the PS/2 interface controller, memory and
cathode-ray-tube controller, and the video coprocessor.
This is the video interface to the microchannel bus. The
controller detects the bus width (16 or 32 bit) of the slot and prepares
to transfer data at that rate. It also acts as a busmaster that supports
the video subsystem (read adapter).
and Cathode-Ray-Tube Controller
This supports all VGA functions. It allows the system
microprocessor to access the video display buffer, and it controls the
serializer and DAC.
Provides hardware drawing functions that can store graphic
data in both the video display buffer and system memory.
Allows the video subsystem to become a 32-bit busmaster that
directly accesses system memory when in the extended graphics mode.
Acts like a busmaster to other devices on the system bus,
such as another XGA-2 adapter, when in the extended graphics mode. It can
perform burst mode data transfers at up to 16.6MB per second.
Updates memory independently of the system microprocessor,
which can then do other things while the coprocessor is drawing graphics.
Supports virtual memory addressing.
Rapidly suspends and resumes tasks (important in multiprocessing)
This is the key to the enhanced performance of the XGA-2
subsystem. The coprocessor:
The buffer uses VRAM to store information that is being
displayed. VRAM allows data in the display buffer to be updated while the
image on the display is being refreshed.
1MB of VRAM provides faster performance in all video modes because
the data path into the video display buffer is 32 bits wide. With 512KB,
the data path is only 16 bits wide.
Digital-to-Analog Convertor, and Palette
The serializer and DAC convert the data in the video display
buffer to the imge you see on the screen.
The video data is stored in the video display buffer in
1-, 2-, 4-, 8-, or 16-bit units, known as pels. The number of bits per
pel is determined by the video mode that the computer is operating in.
Each memory location in the buffer holds one pel and corresponds to a specific
location on the screen. The binary value of each 1-, 2-, 4-, or 8-bit pel
is used as an index into the palette to determine the color that is to
be displayed at that location. If the computer is in the direct color mode,
each pel is 16 bits, and it does not use the palette to determine the colors.
The serializer takes the data from the video display buffer
and converts it into a serial bit stream. If the pels are 1, 2, 4, or 8
bits, the binary value of each pel corresponds to one of the 256 memory
locations in the palette. Each memory location contains 18 bits, divided
into three 6-bit values that represent specific intensities of red, blue,
and green. In the direct color mode (palette bypass mode), each 16-bit
pel is divided into a 5-bit red intensity value, a 5-bit blue intensity
value, and a 6-bit green intensity value, for a total of 65,536 possible
The DAC converts the digital color-intensity values to
analog values, which are more efficient than digital values for displaying
the large number of colors produced by high performance video. The DAC
places the analog values onto the display signal lines, and a colored dot
is displayed on the screen. Easy, right?
Video I/O Address
This determines where in the I/O address space the video
registers exist. Because you can install multiple XGA-2 controllers, the
computer assigns a unique I/O address and instance number to each video
Video ROM Address
This determines the area of adapter ROM address space
used by the video coprocessor. The video coprocessor is used when the XGA
video is in the extended graphics mode. The coprocessor is not used when
the XGA video is in the VGA mode.
This area of memory (C0000 to DFFFF) is normally used
for read-only memory (ROM) on adapters and is commonly used by memory managers
for expanded memory or high-RAM support. A conflict might occur if both
the memory manager and the video coprocessor are using the same area of
Many applications use the 1MB of VRAM to display high
resolution, multicolor images. The video function provided by most programs
work within 64K blocks, which are paged or swapped in and out of the 1MB
VRAM workspace. Other programs, such as OS/2 multimedia extensions, require
direct access to the entire 1MB of VRAM to operate. (OS/2 ver 2).
The 1MB VRAM aperture is normally enabled, but will be
disabled if there isn't enough memory address space available for both
system memory and the 1MB VRAM aperture. For example, with 16MB of system
memory installed, the video aperture and system memory contend for control
of the highest 2MB of memory address space. Auto-config solves this by
disabling the video aperture and gives control of the upper 1MB to the
What about the 1MB
Aperture in Setup?
The video-aperture can only set on systems with less than
16MB. It was originally planned to enhance the video-performance on smaller
systems by adressing the video memory in a range below 16MB. Useless on
486-machines and with more than 16Megs of RAM. (Editor's
Note: Set to DISABLED)
XGA-2 in 8590
" The card does not fit any of the slots in my 8590. Oh well, better
luck next time."
correct statement should have been "It does not fit *with all parts* of
the connector in the slot" - and this is totally correct.
Explanation: the XGA2
offeres a BVE base video extension for those machines that *do not have*
a planar video system (like Mod. 77 Bermuda, Server 85 and all 95).
The Mod. 90 has no BVE-slot
- only one AVE (auxiliary video extension) which is intended for 8514A-style
cards that are controlled over the Base Video and / or capable to use the
Base Video for Low-Res / Text modes and / or use a video-grabber on VGA.
So consequently the
BVE-part on the XGA2 stays free when inserted in any Mod. 90 slot - except
Slot 3 that has AVE intended for 8514-cards to which it does not
physically fit (different position of rear part / different keying).
(Model 95 BVE Slot is Slot # 5)
If you get a message Error: Can not find file XGARING0.SYS upon bootup
of OS/2, you need to totally reinstall OS/2.
024318XX -- With the new revision of the
XGA-2 card (without a heat-sink on the processor chip), you may experience
a 024318xx error during the general function test of the XGA advanced diagnostics.
This is NOT a hardware failure, as indicated by the callout. There
is an incompatibility between the diagnostic program and the microcode
on the new processor chip on the XGA-2 card.
The solution is to download the new XGA-2 Option
Diskette from the BBS (XGA2ADP.EXE).
This contains the new version of the diagnostic for the XGA-2 card.
After updating IML, insure that you then backup
If the error shows up during post, or if there are
problems during the operation of the system, replace the XGA-2 card
first. Then if the problems persist, do the above procedure.
024374XX-- Copy an option has not successfully
completed. Copy XGA-2 Display Adapter/A option diskette to the backup
copy of the system programs/Reference Diskette; then run auto-configuration.
0243XXXX at POST-- Run Advanced Diagnostics
- Most likely will need to replace the XGA-2 Adapter/A
The XGA-2 Display Adapter/A
features an 8-bit digital-to-analog converters (DACs), versus the 6-bit
DACs used by XGA Display Adapter. With 8-bit DACs, the XGA-2 Display
Adapter/A now supports a palette of 16.7 million possible color combinations
of which 256 can be displayed at any one time. (the XGA Display Adapter
allows 256 of a possible 262,144 colors.) Similarly, the XGA-2 Display
Adapter/A provides 256 possible shades of grey, compared with XGA Display
Adapter's 64 shades.