wine/ dlls/wined3d/directx.c include/wine/wine ...
Alexandre Julliard
julliard at wine.codeweavers.com
Wed Nov 30 06:00:50 CST 2005
ChangeSet ID: 21561
CVSROOT: /opt/cvs-commit
Module name: wine
Changes by: julliard at winehq.org 2005/11/30 06:00:49
Modified files:
dlls/wined3d : directx.c
include/wine : wined3d_gl.h
Log message:
Raphael Junqueira <fenix at club-internet.fr>
Add support for Intel drivers version string.
Update default driver version (nvidia).
Patch: http://cvs.winehq.org/patch.py?id=21561
Old revision New revision Changes Path
1.62 1.63 +24 -4 wine/dlls/wined3d/directx.c
1.12 1.13 +18 -7 wine/include/wine/wined3d_gl.h
Index: wine/dlls/wined3d/directx.c
diff -u -p wine/dlls/wined3d/directx.c:1.62 wine/dlls/wined3d/directx.c:1.63
--- wine/dlls/wined3d/directx.c:1.62 30 Nov 2005 12: 0:49 -0000
+++ wine/dlls/wined3d/directx.c 30 Nov 2005 12: 0:49 -0000
@@ -225,9 +225,11 @@ static BOOL IWineD3DImpl_FillGLCaps(Wine
gotContext = TRUE;
}
-
TRACE_(d3d_caps)("(%p, %p)\n", gl_info, display);
+ gl_string = (const char *) glGetString(GL_RENDERER);
+ strcpy(gl_info->gl_renderer, gl_string);
+
/* Fill in the GL info retrievable depending on the display */
if (NULL != display) {
test = glXQueryVersion(display, &major, &minor);
@@ -244,6 +246,9 @@ static BOOL IWineD3DImpl_FillGLCaps(Wine
gl_info->gl_vendor = VENDOR_NVIDIA;
} else if (strstr(gl_string, "ATI")) {
gl_info->gl_vendor = VENDOR_ATI;
+ } else if (strstr(gl_string, "Intel(R)") ||
+ strstr(gl_info->gl_renderer, "Intel(R)")) {
+ gl_info->gl_vendor = VENDOR_INTEL;
} else if (strstr(gl_string, "Mesa")) {
gl_info->gl_vendor = VENDOR_MESA;
} else {
@@ -319,6 +324,7 @@ static BOOL IWineD3DImpl_FillGLCaps(Wine
}
break;
+ case VENDOR_INTEL:
case VENDOR_MESA:
gl_string_cursor = strstr(gl_string, "Mesa");
gl_string_cursor = strstr(gl_string_cursor, " ");
@@ -355,8 +361,6 @@ static BOOL IWineD3DImpl_FillGLCaps(Wine
TRACE_(d3d_caps)("found GL_VERSION (%s)->(0x%08lx)\n", debugstr_a(gl_string), gl_info->gl_driver_version);
/* Fill in the renderer information */
- gl_string = (const char *) glGetString(GL_RENDERER);
- strcpy(gl_info->gl_renderer, gl_string);
switch (gl_info->gl_vendor) {
case VENDOR_NVIDIA:
@@ -379,6 +383,22 @@ static BOOL IWineD3DImpl_FillGLCaps(Wine
}
break;
+ case VENDOR_INTEL:
+ if (strstr(gl_info->gl_renderer, "915GM")) {
+ gl_info->gl_card = CARD_INTEL_I915GM;
+ } else if (strstr(gl_info->gl_renderer, "915G")) {
+ gl_info->gl_card = CARD_INTEL_I915G;
+ } else if (strstr(gl_info->gl_renderer, "865G")) {
+ gl_info->gl_card = CARD_INTEL_I865G;
+ } else if (strstr(gl_info->gl_renderer, "855G")) {
+ gl_info->gl_card = CARD_INTEL_I855G;
+ } else if (strstr(gl_info->gl_renderer, "830G")) {
+ gl_info->gl_card = CARD_INTEL_I830G;
+ } else {
+ gl_info->gl_card = CARD_INTEL_I915G;
+ }
+ break;
+
default:
gl_info->gl_card = CARD_WINE;
break;
@@ -995,7 +1015,7 @@ HRESULT WINAPI IWineD3DImpl_GetAdapterId
strcpy(pIdentifier->Description, "Direct3D HAL");
if (NULL != pIdentifier->DeviceName) strcpy(pIdentifier->DeviceName, "\\\\.\\DISPLAY"); /* FIXME: May depend on desktop? */
pIdentifier->DriverVersion->u.HighPart = 0xa;
- pIdentifier->DriverVersion->u.LowPart = MAKEDWORD_VERSION(53, 96); /* last Linux Nvidia drivers */
+ pIdentifier->DriverVersion->u.LowPart = MAKEDWORD_VERSION(76, 76); /* last Linux Nvidia drivers */
*(pIdentifier->VendorId) = VENDOR_NVIDIA;
*(pIdentifier->DeviceId) = CARD_NVIDIA_GEFORCE4_TI4600;
*(pIdentifier->SubSysId) = 0;
Index: wine/include/wine/wined3d_gl.h
diff -u -p wine/include/wine/wined3d_gl.h:1.12 wine/include/wine/wined3d_gl.h:1.13
--- wine/include/wine/wined3d_gl.h:1.12 30 Nov 2005 12: 0:49 -0000
+++ wine/include/wine/wined3d_gl.h 30 Nov 2005 12: 0:49 -0000
@@ -846,16 +846,27 @@ typedef enum _GL_Vendors {
VENDOR_WINE = 0x0,
VENDOR_MESA = 0x1,
VENDOR_ATI = 0x1002,
- VENDOR_NVIDIA = 0x10de
+ VENDOR_NVIDIA = 0x10de,
+ VENDOR_INTEL = 0x8086
} GL_Vendors;
typedef enum _GL_Cards {
- CARD_WINE = 0x0,
- CARD_ATI_RADEON_8500 = 0x514c,
- CARD_ATI_RADEON_9700PRO = 0x4e44,
- CARD_ATI_RADEON_9800PRO = 0x4e48,
- CARD_NVIDIA_GEFORCE4_TI4600 = 0x0250,
- CARD_NVIDIA_GEFORCEFX_5900ULTRA = 0x0330
+ CARD_WINE = 0x0,
+
+ CARD_ATI_RADEON_8500 = 0x514c,
+ CARD_ATI_RADEON_9700PRO = 0x4e44,
+ CARD_ATI_RADEON_9800PRO = 0x4e48,
+
+ CARD_NVIDIA_GEFORCE4_TI4600 = 0x0250,
+ CARD_NVIDIA_GEFORCE4_TI4200 = 0x0281,
+ CARD_NVIDIA_GEFORCEFX_5900ULTRA = 0x0330,
+
+ CARD_INTEL_845G = 0x2562,
+ CARD_INTEL_I830G = 0x3577,
+ CARD_INTEL_I855G = 0x3582,
+ CARD_INTEL_I865G = 0x2572,
+ CARD_INTEL_I915G = 0x2582,
+ CARD_INTEL_I915GM = 0x2592
} GL_Cards;
typedef enum _GL_VSVersion {
More information about the wine-cvs
mailing list