Except as permitted by such license, no part of this document may be reproduced, stored in a retrieval system, or transmitted in any form or by any means without the express written consent of Intel Corporation. Contact your local Intel sales office or your distributor to obtain the latest specifications and before placing your product order.
December 2005 1-0-0-0092 January 2006 1-0-0-0094 Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0 Description This is the first version of the new guide. The content and layout are all new. Updated after technical review.
Page 6
This page intentionally left blank Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0...
This document describes the Intel® Digital Set Top Box Display Driver for Microsoft* Windows* CE 5.0. It provides a summary of display driver features, installation notes, and configuration information. It is targeted at all platform and system developers who need to interface with the graphics subsystem. This includes, but is not limited to: platform designers, system BIOS developers, system integrators, original equipment manufacturers, and system control application developers.
GMCHs The Intel® Digital Set Top Box Display Driver supports the following Graphic Memory Controller Hubs: • Intel® 82830M GMCH • Intel® 82854 GMCH 2.1.1 Base Features 2.1.1.1 Common Base Features The Intel® Digital Set Top Box Display Driver includes support for: •...
2.1.2 830 and 854 Base Features The Intel® Digital Set Top Box Display Driver for the 830 and 854 includes support for: • Region alpha blending using the DirectDraw method AlphaBlt — where a single alpha value is used for the entire rectangle.
The display driver includes support for the following bit depths: • 16 bits per pixel • 32 bits per pixel (Intel 82830M GMCH and Intel 82854 GMCH only) The display driver includes support for the following display types: • CRT and digital flat panels – via the analog(VGA) port •...
Vertex buffers • Textures • Methods for drawing including DrawPrimitive and DrawIndexedPrimitive • Render states • 4 texture blending stages • Lighting Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0 Tested on the 854...
2. Click Start > Control Panel > Add or Remove Programs to remove the previous drivers. 3. Delete the driver files found in $(_WINCEROOT)\INTELCEG\drivers. To install the new Display Driver MSI, double-click the .msi file. Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0...
It is also possible to copy the contents of this fileinto the end of Platform.reg or Project.reg. The registry settings in video.reg must be modified to configure the display driver and TV Encoder DLL to use on the target platform. Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0...
This key can be used to delay powering down the display when Windows CE is suspended. The value is in milliseconds, and the default value is 0. Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0...
Page 15
This key is ignored if “AlphaBlendMode” is disabled. This key should be enabled whenever “AlphaBlendMode” is enabled and the stock CE 5.0 video renderer is used. Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0...
To load the Conexant CX23899 and Silicon Image 9030 HDMI port driver in “Shadow” DVO Mode. “PortDrivers”=”cx873 sii9030” DebugPortMessage <DWORD> This setting is used to turn on or off the debug messages in port driver module. Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0...
This key is only used for static video memory configurations. It determines the size of video memory, which starts at the location specified in the registry (ReservedMemoryBase). This setting is commented out when using dynamic video memory. Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0...
IDirectDrawSurface5::UpdateOverlay is called to show the overlay. Note: This registry key value is only supported on the 830 and 854 GMCH. 0 = disabled 1 = enabled (default) Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0...
The default color tends to be dark grey or black, which can hardly be differentiated from the video image. Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0...
This setting defaults to 256KB if not specified otherwise. [HKEY_LOCAL_MACHINE\Drivers\Display\Intel\3D] 3DModule <STRING> This setting determines which Direct3D Mobile module gets loaded. Leaving this setting blank will load no Direct3D Mobile module. Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0...
See the configuration file video.reg for information on the Conexant port driver attributes. Look for details in the section entitled “Conexant CX25873/CX25892 port attributes”. Contact Conexant for more information on the Conexant port driver. Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0...
See the configuration file video.reg for information on the Silicon Image port driver attributes. Look for details in the section entitled “Silicon Image 9030 port attributes”. Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0...
TV Output Type: Composite and S-Video • DVI: Enabled • Enabled Ports: DVO (TV) and analog (VGA) with both using the TV encoder timings. • 3D Support: Disabled Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0...
On the Conexant CX25892 use: "TV Output"=dword:4 5.2.3 Enabling 3D Support To enable 3D support, do the following: • Enable 3D Support: “Enable 3D”=dword:1 • Load a 3D Module “3DModule”=”gdld3dm” Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0...
For “Shadow” DVO mode Conexant I2cPin and I2CDab in DVO-B registry key. Also specify Digital TV output in Conexant Port Attributes “I2cPin”=dword:4 “I2cDab”=dword:88 “TV Format”=dword:14 Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0 ;VGA generates clocks ;Conexant CX23899 generates clocks...
Chroma Upsampling Error (CUE). • Both interleaved and progressive data are supported by the YUV 4:2:2 packed and xRGB formats. Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0...
WinCE Graphics Driver Escape Interface The Intel® Digital Set Top Box Graphics Driver for Microsoft Windows CE .NET 4.2/5.0 supports the WinCE system API - ExtEscape(), which provides a dynamic configuration channel to the display driver. Following shows the ExtEscape API function prototype and the usage module for the user application to communicate with the display driver.
Page 28
ICEGD_ESCAPE_SET_SCAN_INFO Note: Please refer to the video.reg (under \WINCE500\IntelCEG\Drivers\Display\I8xx) file that installed with the Intel Display Driver for a list of specific hardware supported. For example, the video.reg file has the data address byte (DAB) required by the I2C bus.
Page 29
(LPCSTR)&port, sizeof(esc_status_t), (LPSTR)&status); // check the status here for error handling // … Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0 Notes esc_port_ctrl_t port options: 0 – Primary Display 1 – Secondary Display esc_port_ctrl_t enable options: 0 –...
Page 30
ICEGD_ESCAPE_GET_AVAIL_PD_ATTRIBUTES to calculate the size of the buffer for the attribute list. Example See ICEGD_ESCAPE_SET_PD_ATTRIBUTES for a complete example. Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0 Notes Must be used before a call to ICEGD_ESCAPE_GET_AVAIL_PD_ATTRIBUTES to size the required igd_attr_t data structure array.
Page 31
Please refer to igd_pd.h for attribute data structure details. Example See ICEGD_ESCAPE_SET_PD_ATTRIBUTES for a complete example. Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0 Notes All structures below should be with same size and should be converted to others according to the attribute type.
Page 32
PD_ATTR_TYPE_BOOL, the lines with (//(1), (2) and (3)) should be replaced as below: igd_bool_attr_t *bool; bool = (igd_bool_attr_t *) current; bool->current_value = arg_attr_value; Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0 Notes Only a single attribute can be set per call.
Page 33
So the pointer to the list should jump num_entries to find next attribute*/ if (current->type == PD_ATTR_TYPE_LIST) { i+= ((igd_list_attr_t *)current)->num_entries; current += ((igd_list_attr_t *)current)->num_entries; free(attr_list); Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0...
Page 34
// Wait a while for HW to complete the operation of changing the overlay color parameters Sleep(500); color.brightness+=3000; color.contrast+=3000; Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0 Notes esc_color_params flag options: Optional: GAMMA_FLAG (0x1)
Page 35
//Check error status returned by ExtEscape // … // Wait a while for HW to complete the operation of changing the gamma value Sleep(500); Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0 Notes esc_color_params flag options:...
Page 36
Please refer to igd_public.h for details about data structure esc_mem_stats_t. Example esc_mem_stats_t stats; memset(&stats, 0, sizeof(esc_mem_stats_t)); ExtEscape( Hdc, ICEGD_ESCAPE_GET_MEM_STATS, NULL, sizeof(esc_mem_stats_t), (LPSTR) & stats); Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0 Output Data Structure Notes...
Page 37
0, sizeof(esc_monitor_desc_t)); ExtEscape( Hdc, ICEGD_ESCAPE_GET_MONITOR_DESC, sizeof(port), (LPCSTR) &port, sizeof(esc_monitor_desc_t), (LPSTR) &esc_monitor_desc); Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0 Output Data Structure The input is port number, which can be only 0 or 1. Notes...
Page 38
This escape code is used to call port driver to enable Line 21 VBI (Vertical Blank Interrupt) data. It is always used before ICEGD_ESCAPE_VBI_UPDATE with ICEGD_ESCAPE_VBI_DISABLE following. Example ExtEscape( Hdc, ICEGD_ESCAPE_VBI_ENABLE, NULL, NULL Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0 Output Data Structure Notes...
Page 39
This escape code is used to call port driver to disable Line 21 VBI (Vertical Blank Interrupt) data. It is always used after ICEGD_ESCAPE_VBI_UPDATE finished. Example ExtEscape( Hdc, ICEGD_ESCAPE_VBI_DISABLE, NULL, NULL Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0 Output Data Structure Notes...
Page 40
+ 2, (const char*)pvbi, NULL); Sleep(33); //display a string "ababababab" for(int i=0;i<5;i++){ pvbi->pucData[ 0 ] = 'a'; pvbi->pucData[ 1 ] = 'b'; Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0 Output Data Structure Notes...
Page 41
0 ] = 0x14; pvbi->pucData[ 1 ] = 0x2c; ExtEscape( Hdc, ICEGD_ESCAPE_VBI_UPDATE, sizeof(vbi_data) + 2, (const char*)pvbi, NULL); Sleep(33); //disable vbi ExtEscape( Hdc, ICEGD_ESCAPE_VBI_DISABLE, NULL, NULL free( pvbi ); Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0...
Page 42
ESCAPE_INTERRUPT_VBLANK. After the operation finishes, hWaitObject will return a handle to the OS dependent wait object. Input Data Structure Definition Please refer icegd_public_escape.h for details about escape_interrupt_data; Example See ICEGD_ESCAPE_ INTERRUPT_UNINSTALL for a complete interrupt example. Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0...
Page 43
//if an interrupt occurs, catch it and inform user if(WaitForSingleObject(interrupt.hWaitObject, 2000)==WAIT_OBJECT_0){ printf("Get a interrupt!\n"); //unstall the interrupt ExtEscape( Hdc, ICEGD_ESCAPE_INTERRUPT_UNINSTALL, sizeof(escape_interrupt_data), (LPCSTR)&interrupt, NULL Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0 Output Data Structure Notes...
Page 44
= IGD_ZORDER_OVERLAY_BELOW_PLANE; esc_vid_plane_zorder_t memset(&vid_plane_zorder, 0, sizeof(esc_vid_plane_zorder_t)); vid_plane_zorder.ulKeyColor = lcolorkey; vid_plane_zorder.ulZOrder = lvideo_plane_position; ExtEscape( Hdc, ICEGD_ESCAPE_SET_VIDEO_PLANE_ZORDER, sizeof(esc_vid_plane_zorder_t), (LPCSTR)&vid_plane_zorder, NULL); Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0 Output Data Structure IGD_ZORDER_OVERLAY_ABOVE_PLANE IGD_ZORDER_OVERLAY_BELOW_PLANE vid_plane_zorder; Notes...
Page 45
This escape code is used to enable the HW plane alpha mode. Example int mode; mode = HW_ALPHA_COMPAT_VIDEO_RENDERER_MODE; ExtEscape( Hdc, ICEGD_ESCAPE_SET_HW_ALPHA_COMPAT_MODE, sizeof(char), (LPCSTR)&mode, NULL); Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0 Output Data Structure Input can be only : HW_ALPHA_COMPAT_VIDEO_RENDERER_MODE Notes 0x00000001...
Page 46
Input Data Structure Definition Please refer to icegd_public_escape.h for details about esc_driver_version_t; Example esc_driver_version_t driver_version; memset(&driver_version, 0, sizeof(esc_driver_version_t)); ExtEscape( Hdc, ICEGD_ESCAPE_DRIVER_VERSION, NULL, sizeof(esc_driver_version_t), (LPSTR) &driver_version); Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0 Output Data Structure Notes...
Page 47
Notes esc_i2c_config_t Description This escape code is used before ICEGD_ESCAPE_I2C_ACCESS to configure Pin Pair, DAB and I2C speed. Example See ICEGD_ESCAPE_I2C_ACCESS for a complete I2C example. Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0...
Page 48
(LPCSTR)&i2c_access, sizeof(unsigned char), (LPSTR)&data); printf("%d\n",data); Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0 Output Data Structure In case of read operation, data is returned in output buffer. Write operation data is retrieved from the esc_i2c_access_t input buffer.
Page 49
/* Read the data to make sure the last step works ok */ i2c_access.mode = INTEL_I2C_MODE_READ; ExtEscape( Hdc, ICEGD_ESCAPE_I2C_ACCESS, sizeof(esc_i2c_access_t), (LPCSTR)&i2c_access, sizeof(unsigned char), (LPSTR)&data2); printf("%d\n", data2); Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0...
Page 50
= ESC_DISPLAY_PIXEL_DOUBLE | ESC_DISPLAY_INTERLACED; ExtEscape( hDC, ICEGD_ESCAPE_MULT_DVO_SELECT, sizeof(esc_mult_dvo_select_t), (LPCSTR)&dvoSelect, NULL Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0 Notes @select: ESC_MULT_DVO_MASTER : multiplex DVO master port (DVOB) ESC_MULT_DVO_SLAVE : slave port (DVOC) @flag:...
Page 51
, (LPSTR)&status if(status == ESC_HDMI_PLUG_IN) _tprintf(_T(" Status: IN\n")); else if(status == ESC_HDMI_PLUG_OUT) _tprintf(_T(" Status: OUT\n")); else _tprintf(_T(" Invalid Hotplug Status.\n")); Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0 ESC_HDMI_PLUG_IN : ESC_HDMI_PLUG_OUT status ; Notes...
Page 52
= ESC_MULT_DVO_MASTER; else { _tprintf(_T(" Invalid Hotplug Status.\n")); exit(0); // Select the right DVO port ExtEscape( hDC, ICEGD_ESCAPE_MULT_DVO_SELECT, sizeof(esc_mult_dvo_select_t), (LPCSTR)&dvoSelect, NULL Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0 ESC_HDMI_PLUG_IN : ESC_HDMI_PLUG_OUT dvoSelect; Notes...
Page 53
The input data can be set between 0-3. But only 1 and 2 make sense now. 1—overscanned, 2—underscanned. Example unsigned int num; num = 1; ExtEscape( hDC, ICEGD_ESCAPE_SET_SCAN_INFO, sizeof(unsigned long), (LPCSTR)&num, NULL, NULL Intel® Digital Set Top Box Display Driver User’s Guide for Microsoft* Windows* CE 5.0 Notes...
Need help?
Do you have a question about the 82830M GMCH and is the answer not in the manual?
Questions and answers