Display Driver Release Notes
Version 1.04.00
Windows XP Gold/WindowsXPe
July 02, 2004
Author: Mark Krom

-----------------------------------------------------------------------------
PRODUCT INFORMATION 
-----------------------------------------------------------------------------
This is the Advanced Micro Devices Windows XP driver for GX2. (build 1.04.00)
It supports Microsoft Windows XP Professional SP1 and Windows XPe. 
 
This product includes: 
 
- Display Driver 


Product files 
-----------------------------------------------------------------------------
   
   \GX_WINXP.INF     Driver installation file for Windows XP Setup
   \GX_WINXP.cat     Driver installation file for Windows XP Setup
   \GXM.SYS          Miniport driver 
   \GX.DLL           Display driver 
   \DISPLAYPAGE.DLL  Control Panel Display Extension
   \README.TXT       This file 

CRT Display Modes
-----------------------------------------------------------------------------

The driver supports the following CRT display resolutions:

   640x480   - 60Hz    - 8, 16 and 32BPP
   640x480   - 70Hz    - 8, 16 and 32BPP
   640x480   - 72Hz    - 8, 16 and 32BPP
   640x480   - 75Hz    - 8, 16 and 32BPP
   640x480   - 85Hz    - 8, 16 and 32BPP
   640x480   - 90Hz    - 8, 16 and 32BPP
   640x480   - 100Hz   - 8, 16 and 32BPP
   800x600   - 60Hz    - 8, 16 and 32BPP
   800x600   - 70Hz    - 8, 16 and 32BPP
   800x600   - 72Hz    - 8, 16 and 32BPP
   800x600   - 75Hz    - 8, 16 and 32BPP
   800x600   - 85Hz    - 8, 16 and 32BPP
   800x600   - 90Hz    - 8, 16 and 32BPP
   800x600   - 100Hz   - 8, 16 and 32BPP
   1024x768  - 60Hz    - 8, 16 and 32BPP
   1024x768  - 70Hz    - 8, 16 and 32BPP
   1024x768  - 72Hz    - 8, 16 and 32BPP
   1024x768  - 75Hz    - 8, 16 and 32BPP
   1024x768  - 85Hz    - 8, 16 and 32BPP
   1024x768  - 90Hz    - 8, 16 and 32BPP
   1024x768  - 100Hz   - 8, 16 and 32BPP
   1152x864  - 60Hz    - 8, 16 and 32BPP
   1152x864  - 70Hz    - 8, 16 and 32BPP
   1152x864  - 72Hz    - 8, 16 and 32BPP
   1152x864  - 75Hz    - 8, 16 and 32BPP
   1152x864  - 85Hz    - 8, 16 and 32BPP
   1152x864  - 90Hz    - 8, 16 and 32BPP
   1152x864  - 100Hz   - 8, 16 and 32BPP
   1280x1024 - 60Hz    - 8, 16 and 32BPP
   1280x1024 - 70Hz    - 8, 16 and 32BPP
   1280x1024 - 72Hz    - 8, 16 and 32BPP
   1280x1024 - 75Hz    - 8, 16 and 32BPP
   1280x1024 - 85Hz    - 8, 16 and 32BPP
*  1280x1024 - 90Hz    - 8, 16 and 32BPP
*+ 1280x1024 - 100Hz   - 8, 16 and 32BPP
   1600x1200 - 60Hz    - 8 and 16BPP
   1600x1200 - 70Hz    - 8 and 16BPP
   1600x1200 - 72Hz    - 8 and 16BPP
   1600x1200 - 75Hz    - 8 and 16BPP
*  1600x1200 - 85Hz    - 8 and 16BPP

*  A DDR memory speed of 266MHz is advised when running:
  - 1600x1200 16BPP 85Hz
  - 1280x1024 32BPP 90Hz
  - 1280x1024 32BPP 100Hz
  
+  Under a very extreme system load, minor display irregularities 
   may be seen infrequently when running 1280x1024 32BPP 100Hz.

TFT Display Modes
-----------------------------------------------------------------------------

The driver supports the following TFT sizes:

    640x480@60Hz
    800x600@60Hz
    1024x768@60Hz
    
 On any of these TFT sizes, the following modes will be available:
 
   640x480   - 60Hz    - 8, 16 and 32BPP
   800x600   - 60Hz    - 8, 16 and 32BPP
   1024x768  - 60Hz    - 8, 16 and 32BPP
   1152x864  - 60Hz    - 8, 16 and 32BPP
   1280x1024 - 60Hz    - 8, 16 and 32BPP
   1600x1200 - 60Hz    - 8 and 16BPP

-----------------------------------------------------------------------------
INSTALLATION INSTRUCTIONS
-----------------------------------------------------------------------------
To install the Advanced Micro Devices driver : 

Windows XP Installation Instruction 
1. Open Control Panel. [Start->Settings->Control Panel]
2. Open System applet.
3. Go to Hardware tab.
4. Click Device Manager button.
5. If 'Display Adapter' is avaliable expand it else goto step 6b.  

6a. Right click on the adapter and select properties.
7a. Go to Driver tab.
8a. Click on update driver button. [click on Reinstall driver button 
    if Update driver button is not seen]. Update Driver Wizard Window 
    will open up.  Follow the wizard.
9a. Select the radio button 
    'Install from a list or specific location (Advanced)'. Go to Next.
10a. Select 'Don't search, I will choose the driver to install'. Press next.
    goto step 11	

6b. Expand 'Other devices'
7b. Right click 'Video Controller (VGA Compatible)' and select 'Update driver'
    This will openup update driver wizard. Follow the wizard.
8b. Select Radio button 'Install from the list or specific loaction' and press next
9b. Select Radio button 'Don't search I will choose the driver to install' and press next
10b. Select 'Display Adapters' and press next.

11. Press the Have Disk button.
12. Insert the floppy with the driver you built into the floppy drive.
13. Type the location of the driver files (e.g. A:\ ).
14. Press OK button.
15. Press next button on the wizard.
16. Click Continue anyway button if XP reports driver is not signed.
17. Press Finish in the Wizard. After this if windows displays a dialog 
    box to restart the windows. Press 'Yes' to restart the windows(Recommended). 
    No need to continue with rest of steps if you restart the windows.
18. Close the properties dialog box if it is open.
19. Close the Device Manager applet.
20. Close System applet
21. Close Control Panel.
22. Restart Windows.

-----------------------------------------------------------------------------
DRIVER CONFIGURATION
-----------------------------------------------------------------------------

Control Panel Extension

    A control panel extension is provided to configure certain parameters of 
    the driver like Compression and DDC. The details of these parameters are as follows.

Registry Settings
	The driver behavior depends upon the way it has been configured. This 
	configuration mechanism is possible by registry settings. Given below are 
	the registry settings that change the behavior of the driver.

	Compression
	This option enables the driver to enable or disable compression. Lossless 
	graphics compression is a hardware feature of Geode.  Display compression
	has three possible driver settings:
	   0 - Compression is always disabled.  No video memory will ever be 
           allocated to hold the compression buffer.
       1 - Compression is by default enabled.  However, if the allocation
	       of video memory for the compression buffer causes a display mode
		   to require more memory than is available, compression will be disabled.
       2 - Compression is always enabled.  If the allocation of video memory for
	       the compression buffer causes a mode to require more memory than is 
		   available, that mode will not be available.
		   
	LinearFB
	This option configures the memory layout for the active display data.  The display
	compression hardware inside Geode is most efficient if the space allocated for 
	a single line of display data is equal to a power of two.  When the size of each line
	is 1K, 2K, 4K or 8K, each line of the display is individually compressible.  However,
	this leads to wasted video memory.  For applications that require efficient memory, 
	or for applications that flip the primary display, such as games, it is often
	more beneficial to allocate only the amount of space needed for the active display.  There
	are three possible settings for the driver:
	   0 - The size of each display line is always a power of 2.  If the amount of memory 
	       needed for a display mode is larger than the available memory, that mode is 
		   discarded.
	   1 - The size of each display line is a power of 2 by default.  However, if the
	       amount of memory required by a display mode is larger than available memory
		   that mode will use a linear frame buffer to fit the mode.
       2 - The frame buffer is always linear.  The display will be compressible only as
	       a whole, leading to less efficient compression.  However, all of video memory
		   will always be available.

	AntialiasedText
	Many legacy applications and some parts of Windows use antialiased text to render
	font data.  Antialiased text is a 4BPP alpha blend.  Enabling this feature enables
	a simplified version of antialiased text that will run on Geode hardware.  As the 
	algorithm is simplified, this feature should be disabled to allow software rendering
	if a compatibility test is doing a pixel-by-pixel compare that is failing.
	      
	DDCEnabled
	This option enables the driver to query the monitor for the best-supported 
	resolutions. This will be disabled automatically if a flat panel is detected.

-----------------------------------------------------------------------------
BUILD INSTRUCTIONS 
-----------------------------------------------------------------------------

Windows XP Driver Build Instructions

1. Install Windows 2000 or later on your system.
2. Install Windows DDK 2600 or later on your system.
3. Create a folder called perforce anywhere in the system.  'perforce'
   may be replaced with any name, but the absolute path of 'perforce' must
   not include any spaces.
4. Copy the gx2 Directory tree from //drivers/main/WinXPe/display/gx2 to
         perforce\WinXPE\display\gx2
5. Download the companion Durango from //drivers/main/common/Durango/gfx to
         perforce\common\Durango\gfx
6. Open the Free Build environment.
7. Set WINXP environment variable using the following command : 
     set WINXP=1
8. Change the directory to perforce\WinXPe\display\gx2
9. Compile using:
	 C:\gx>build -cf
10. After the build is complete, if you are using DDK 3790 or later, copy the 
    following files onto a floppy:
    - gx.dll found in gx2\display\objfre_wxp_x86\i386
	 - gxm.sys found in gx2\miniport\objfre_wxp_x86\i386
	    - gx_winxp.inf found in gx2\release
            - gx_winxp.cat found in gx2\release
    
    Otherwise, copy the following files:
     - gx.dll found in gx2\display\objfre\i386
	 - gxm.sys found in gx2\miniport\objfre\i386
	    - gx_winxp.inf found in gx2\release
            - gx_winxp.cat found in gx2\release		

11. Build the control panel display extension dll as per instructions in 'readme.txt' in CPlApp

12. Copy the gx2\CPlApp\ReleaseMinDependency\DisplayPage.dll file to the driver floppy.

13. You are now ready to install.  Please go to Installation.

-----------------------------------------------------------------------------
UNIT TEST 
-----------------------------------------------------------------------------
- Winbench 99
- Wintach
- Speedy
- Mosquito
- FlipCube
- MediaPlayer
- dxtest
- Overfly
- Foxbear

-----------------------------------------------------------------------------
REVISION HISTORY 
-----------------------------------------------------------------------------

------------------------------------------------------------------------------
07/02/2004    Version 1.04.00
Dependencies
Durango  : 2.57.00
------------------------------------------------------------------------------

Functional Changes
-------------------
* Changed display applet font from 'MS Sans Serif' to 'Microsoft Sans Serif' 
  to accomodate Windows XPe.

===========================================================================================

------------------------------------------------------------------------------
04/15/2004    Version 1.03.05
Dependencies
Durango  : 2.57.00
------------------------------------------------------------------------------

Functional Changes
-------------------
* Cosmetic changes to display applet.
* Removed all unused driver routines.
* Fixed pointer code when panning on a TFT with a software cursor.

===========================================================================================

------------------------------------------------------------------------------
04/05/2004    Version 1.03.02
Dependencies
Durango  : 2.57.00
------------------------------------------------------------------------------

Functional Changes
-------------------
* Disallowed devices surfaces with a width larger than 2K pixels.

===========================================================================================

------------------------------------------------------------------------------
04/01/2004    Version 1.03.01
Dependencies
Durango  : 2.56.00
------------------------------------------------------------------------------

Functional Changes
-------------------
* Updated display applet and .inf file to allow DDC support.

===========================================================================================

------------------------------------------------------------------------------
03/28/2004    Version 1.03.00
Dependencies
Durango  : 2.55.00
------------------------------------------------------------------------------

Functional Changes
-------------------
* Non-TFT modes are now filtered when running on a TFT part.
* New display mode matrix.  60, 70, 72, 75, 85, 90 and 100Hz for most modes.
* Fixed copy FOURCC functionality in DirectDraw for 4:2:0 surfaces.
* Updated DdCreateSurface to allow the creation and use of non-overlay FOURCC
  surfaces.
* Added support for the DdGetAvailDriverMemory callback.
* Removed deprecated driver escapes originally intended to allow the driver to 
  be used as a HW debug tool.
* Added size and header verification for all driver escapes.
* Fixed a driver bug causing the path object in DrvStrokePath not to get reset.
* Added VER_FILEVERSION definition to the resource file.
* Added support for gamma correcting the primary surface in 32BPP and 16BPP modes.
* Fixed a memory leak seen when changing display modes.
* Updated the driver heap logic such that all driver surfaces are opaque.  This
  implementation is more robust during mode changes, when GDI juggles the surface
  handles for driver surfaces.
* Updated the driver heap logic such that GDI surfaces ejected from video memory 
  by a DirectDraw allocation are still managed by the driver.  This ensures that
  the driver can always free the associated memory.  It also allows the driver to
  reinstate the bitmaps once DirectDraw exits.
* Added a simple semaphore around all drawing routines.
* Updated the DLL to punt accelerations during a mode change, as some surfaces may
  be in video memory, but still be in the color depth of the old display mode.

===========================================================================================

------------------------------------------------------------------------------
03/15/2004    Version 1.02.01
Dependencies
Durango  : 2.54.00
------------------------------------------------------------------------------

Functional Changes
-------------------
* Updated code such that the palette is updated only when it is not being bypassed.

===========================================================================================

------------------------------------------------------------------------------
02/07/2004    Version 1.02.00
Dependencies
Durango  : 2.52.00
------------------------------------------------------------------------------

Functional Changes
-------------------
* Now supports 90 and 100Hz refresh rates up to 1280x1024.
* New dot PLL settings to support high speed parts.

===========================================================================================

------------------------------------------------------------------------------
10/24/2003    Version 1.01.07
Dependencies
Durango  : 2.51.09
------------------------------------------------------------------------------

Functional Changes
-------------------
* Fixes refresh rate mismatch at 1600x1200@70, 75 and 85Hz.
* DDC is now enabled in the display applet.
* All driver files report AMD as vendor.

===========================================================================================

------------------------------------------------------------------------------
10/14/2003    Version 1.01.06
Dependencies
Durango  : 2.51.08
------------------------------------------------------------------------------

Functional Changes
-------------------
* Does not update the PLL when a value has already been set.  This is for
  panels with sensitivity to VDD fluctuations.
* New PLL settings for 400 MHz parts.
* Add COPYFOURCC capability to DirectDraw code.
* Updated GDI code to hook DrvLineTo and DrvStrokePath for all device surfaces.
* Minor optimizations in GDI code.
* Added DrvDisableDriver routine for compatibility.
* Implemented DDC support for Hawk.

===========================================================================================

------------------------------------------------------------------------------
06/13/2003    Version 1.01.05
Dependencies
Durango  : 2.51.03
------------------------------------------------------------------------------

Functional Changes
-------------------
* Fixes Issue #118.287 - WinXP Windows Media Player Hangs
* Fixes issue seen when disabling hardware acceleration in Troubleshooting 
  dialog.
* Updated gamma RAM settings for more accurate video CSC.
* Rejects 8x8 bitmaps in driver heap for slight performance boost.

===========================================================================================

------------------------------------------------------------------------------
03/31/2003    Version 1.01.04
Dependencies
Durango  : 2.51.02
------------------------------------------------------------------------------

Functional Changes
-------------------
* Fixes Issue #171.7 - GX2 1.01.03 Graphics driver fails HCT 11.A GUIMAN GDI 
  with poly clip test.
* Correctly handles brush alignment when combining a brush with source.
* Correctly replicates the MSB to the LSB when converting 15BPP to 16BPP.
* Correctly handles monochrome source data in DrvAlphaBlend.
* Correctly punts 8BPP brushes.
* Global variables are now set in a common code path.

===========================================================================================

------------------------------------------------------------------------------
02/07/2003    Version 1.01.03
Dependencies
Durango  : 2.49.01
------------------------------------------------------------------------------

Functional Changes
-------------------
* Fixes Issue #171.5 - Real Video Playback is jumpy.
* Fixes DdGetFlipStatus to also check flip status for video flipping.
* Fixes DdSetColorKey.
* Fixes DdCreateSurface to guarantee that video surfaces are always 16-byte
  aligned.

===========================================================================================

------------------------------------------------------------------------------
01/29/2003    Version 1.01.02
Dependencies
Durango  : 2.49.01
------------------------------------------------------------------------------

Functional Changes
-------------------
* Fixes Issue #171.2 - GX2 1.01.01 graphics video playback corruption using 
  Media Player 6.4, 8.0, or 9.0 
* Fixes Issue #171.3 - Missing drive bitmaps in WinBench 99 test settings 
  window.
* Saves and restores all video memory when hibernating.

Known Errata
------------
	DDC is not enabled in this driver.
	Driver does not support any display modes smaller than 640x480.

===========================================================================================

------------------------------------------------------------------------------
01/13/2003    Version 1.01.01
Dependencies
Durango  : 2.49.00
------------------------------------------------------------------------------

Functional Changes
-------------------
* Includes a missing file preventing validation compilation.
* Removed the line listing the driver as a beta driver from the release notes.

Known Errata
------------
	DDC is not enabled in this driver.
	Driver does not support any display modes smaller than 640x480.

===========================================================================================

------------------------------------------------------------------------------
01/10/2003    Version 1.01.00
Dependencies
Durango  : 2.49.00
------------------------------------------------------------------------------

Functional Changes
-------------------
Official release to validation.

Known Errata
------------
	DDC is not enabled in this driver.
	Driver does not support any display modes smaller than 640x480.

===========================================================================================

08/29/2002    Version 1.00.01
Dependencies
Durango  : 2.45.00
------------------------------------------------------------------------------

Functional Changes
-------------------
GX2 beta release.

Known Errata
------------
	DDC is not enabled in this driver.
	Power management is not enabled in this driver.

===========================================================================================