From 8034f52551451a8db2440ac4908ff325bae7b04d Mon Sep 17 00:00:00 2001 From: Robert Key Date: Thu, 14 May 2009 19:14:02 -0400 Subject: Fix ATI HD4800 being reported as ATI 9500 --- dlls/wined3d/directx.c | 17 ++++++++++++++--- dlls/wined3d/wined3d_gl.h | 1 + 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c index 8e3c807..ad192c0 100644 --- a/dlls/wined3d/directx.c +++ b/dlls/wined3d/directx.c @@ -1271,10 +1271,20 @@ static BOOL IWineD3DImpl_FillGLCaps(WineD3D_GL_Info *gl_info) { break; case VENDOR_ATI: if(WINE_D3D9_CAPABLE(gl_info)) { + /* Radeon R7xx HD4800 - highend */ + if (strstr(gl_info->gl_renderer, "HD 4800") || + strstr(gl_info->gl_renderer, "HD 4830") || + strstr(gl_info->gl_renderer, "HD 4850") || + strstr(gl_info->gl_renderer, "HD 4870") || + strstr(gl_info->gl_renderer, "HD 4890")) + { + gl_info->gl_card = CARD_ATI_RADEON_HD4800; + vidmem = 512; /* HD4800 cards use 512-1024MB, up to 2048MB for X2 version */ + } /* Radeon R6xx HD2900/HD3800 - highend */ - if (strstr(gl_info->gl_renderer, "HD 2900") || - strstr(gl_info->gl_renderer, "HD 3870") || - strstr(gl_info->gl_renderer, "HD 3850")) + else if (strstr(gl_info->gl_renderer, "HD 2900") || + strstr(gl_info->gl_renderer, "HD 3870") || + strstr(gl_info->gl_renderer, "HD 3850")) { gl_info->gl_card = CARD_ATI_RADEON_HD2900; vidmem = 512; /* HD2900/HD3800 uses 256-1024MB */ @@ -4007,6 +4017,7 @@ static const struct driver_version_information driver_version_table[] = { {VENDOR_ATI, CARD_ATI_RADEON_HD2300, "ATI Mobility Radeon HD 2300", 6, 14, 10, 6764 }, {VENDOR_ATI, CARD_ATI_RADEON_HD2600, "ATI Mobility Radeon HD 2600", 6, 14, 10, 6764 }, {VENDOR_ATI, CARD_ATI_RADEON_HD2900, "ATI Radeon HD 2900 XT", 6, 14, 10, 6764 }, + {VENDOR_ATI, CARD_ATI_RADEON_HD4800, "ATI Radeon HD 4800 Series", 6, 14, 10, 6764 }, /* TODO: Add information about legacy ATI hardware, Intel and other cards */ }; diff --git a/dlls/wined3d/wined3d_gl.h b/dlls/wined3d/wined3d_gl.h index 1a9c925..615d914 100644 --- a/dlls/wined3d/wined3d_gl.h +++ b/dlls/wined3d/wined3d_gl.h @@ -3302,6 +3302,7 @@ typedef enum _GL_Cards { CARD_ATI_RADEON_HD2600 = 0x9581, CARD_ATI_RADEON_HD2900 = 0x9400, CARD_ATI_RADEON_HD3200 = 0x9620, + CARD_ATI_RADEON_HD4800 = 0x944c, CARD_NVIDIA_RIVA_128 = 0x0018, CARD_NVIDIA_RIVA_TNT = 0x0020, -- 1.6.3