CreateSurface
This automated test validates that display drivers gracefully handle CreateSurface calls for all pixel formats that the DirectDraw hardware emulation layer (HEL) supports.
Drivers are not required to support the entire pixel format list. Drivers can choose to fail any format that you do not want them to support.
The primary purpose of this test is to ensure that drivers can respond correctly to unsupported formats. The suggested return code is DDERR_UNSUPPORTEDFORMAT, but drivers can return whatever error code is most appropriate.
This topic applies to the following test jobs:
CreateSurface
CreateSurface (WoW64)
Test details
Associated requirements |
Device.Graphics.AdapterRender.MinimumDirectXLevel |
Platforms |
Windows 7 (x64) Windows 7 (x86) Windows RT (ARM-based) Windows 8 (x64) Windows 8 (x86) Windows Server 2012 (x64) Windows Server 2008 R2 (x64) Windows RT 8.1 Windows 8.1 x64 Windows 8.1 x86 Windows Server 2012 R2 |
Expected run time |
~30 minutes |
Categories |
Certification Functional |
Type |
Automated |
Running the test
Before you run the test, complete the test setup as described in the test requirements: Graphic Adapter or Chipset Testing Prerequisites.
In addition, this test requires the following software and hardware.
DirectX® version 7.0 or later
Display adapter with DDraw capabilities
Troubleshooting
For troubleshooting information, see Troubleshooting Device.Graphics Testing.
Turn off the screen saver and disable the power management before you run this test. Mode changes and full-screen applications can cause failures, so you should avoid them.
More information
The pixel format list consists of the following formats:
Offscreen plain surfaces:
Pal 1-bit
Pal 2-bit
Pal 4-bit
Pal 8-bit
RGB 16-bit 5:6:5
RGB 16-bit 5:5:5
ARGB 16-bit 1:5:5:5 Premult
ARGB 16-bit 1:5:5:5
RGB 24-bit 8:8:8
BGR 24-bit 8:8:8
RGB 32-bit 8:8:8
BGR 32-bit 8:8:8
ARGB 32-bit 8:8:8:8
ABGR 32-bit 8:8:8:8
ARGB 32-bit 8:8:8:8 Premult
ABGR 32-bit 8:8:8:8 Premult
565+16 RGBZ
555+16 RGBZ
ARGB16-bit 4:4:4:4 Premult
ARGB16-bit 4:4:4:4
Texture surfaces:
Pal 1-bit
Pal 1-bit - Indexed8
Pal 2-bit
Pal 2-bit - Indexed8
Pal 4-bit
Pal 4-bit - Indexed8
Pal 8-bit
RGB 8-bit 3:3:2
ARGB16-bit 4:4:4:4
RGB 16-bit 5:6:5
BGR 16-bit 5:6:5
RGB 16-bit 5:5:5
ARGB 16-bit 1:5:5:5
RGB 24-bit 8:8:8
BGR 24-bit 8:8:8
RGB 32-bit 8:8:8
BGR 32-bit 8:8:8
ARGB 32-bit 8:8:8:8
ABGR 32-bit 8:8:8:8
Luminance 8-bit
Alpha Luminance 8-bit
U8V8 bumpmap
U5V5L6 bumpmap
U8V8L8 bumpmap
16 bit Z buffer
32 depth/stencil 8S:24Z
32 depth/stencil 24Z:8S
16 depth/stencil 15z:1s
16 depth/stencil 1s:15z
32 bit Z buffer
DXT1
DXT2
DXT3
DXT4
DXT5
Alpha 8
A4I4 luminance
ARGB 16-bit 8:3:3:2
A8P8
UYVY
YUY2
RGB 16-bit 4:4:4
X8L8V8U8 Bump Luminance
Warning
The preceding list does not represent all possible formats. Display drivers should be written in a way to gracefully reject all unsupported formats.
The test cycles through all supported bit-depths (8-, 16-, 24-, and 32-bpp) at 640 x 480 resolution.
Most of the Microsoft® DirectDraw tests (including the Blt - Color Key - Video Memory to Primary Memory test) are located in Fnddraw.exe. You can run Fnddraw.exe outside of the Display Compatibility Test (DCT) shell, and select initial tests. On the Tests menu, click Select Tests.
The test titles that are listed in the DCT shell do not directly match the test names in Fnddraw.exe. In fact, the names in the DCT often refer to a group of Fnddraw tests. You can obtain the Fnddraw test case names from the DCT log file.
You can pause many Fnddraw tests (especially blt-related tests) to give you time to visually analyze the blt results. Use the Pause key to pause and resume.
Use the Esc key to stop a test run. Be patient because some tests are more responsive than others.
Command syntax
Command option | Description |
---|---|
Fnddraw dd_surf.pro -l"fnswtt.dll" -r -c -p"m1" /WTTLogDevStr:$logfile |
This command runs both the CreateSurface test job and the CreateSurface (WoW64) test job. Replace the %MONITOR% parameter with a 1-based index that corresponds to the display that you are testing. |
File list
File | Location |
---|---|
Configdisplay.exe |
<[testbinroot]>\nttest\windowstest\tools\ |
Dd_surf.pro |
<[testbinroot]>\nttest\multimediatest\video\ddraw\pro |
Fnddraw.exe |
<[testbinroot]>\nttest\multimediatest\video\ddraw |
Fnswtt.dll |
<[testbinroot]>\nttest\multimediatest\video\ddraw |
TDRWatch.exe |
<[testbinroot]>\nttest\windowstest\graphics\ |
Note
You do not need Fnswtt.dll to run this test. It is used only for Windows Test Technology (WTT) logging.