summaryrefslogtreecommitdiffstats
path: root/vidix
diff options
context:
space:
mode:
authorarpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2>2003-01-09 18:26:38 +0000
committerarpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2>2003-01-09 18:26:38 +0000
commit96eb8f02667dc3400c23618c0b161720597e2b9e (patch)
tree39100539ee8a282e9745b1e44a3ecd3999f8355f /vidix
parent4fd043f6dc7e1b9bdfeb49585f40a97be52d3eb6 (diff)
downloadmpv-96eb8f02667dc3400c23618c0b161720597e2b9e.tar.bz2
mpv-96eb8f02667dc3400c23618c0b161720597e2b9e.tar.xz
Fix radeon 7500 and 8500 15- and 16-bit colour key
patch by James Stembridge <jstembridge@gmx.net> git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@8857 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'vidix')
-rw-r--r--vidix/drivers/radeon_vid.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/vidix/drivers/radeon_vid.c b/vidix/drivers/radeon_vid.c
index 3d4bd3052f..f36d52e903 100644
--- a/vidix/drivers/radeon_vid.c
+++ b/vidix/drivers/radeon_vid.c
@@ -1754,12 +1754,29 @@ static void set_gr_key( void )
switch(dbpp)
{
case 15:
+#ifdef RADEON
+ if(RadeonFamily == 200)
+ besr.graphics_key_clr=
+ ((radeon_grkey.ckey.blue &0xF8))
+ | ((radeon_grkey.ckey.green&0xF8)<<8)
+ | ((radeon_grkey.ckey.red &0xF8)<<16);
+ else
+#endif
besr.graphics_key_clr=
((radeon_grkey.ckey.blue &0xF8)>>3)
| ((radeon_grkey.ckey.green&0xF8)<<2)
| ((radeon_grkey.ckey.red &0xF8)<<7);
break;
case 16:
+#ifdef RADEON
+ /* This test may be too general/specific */
+ if(RadeonFamily == 200)
+ besr.graphics_key_clr=
+ ((radeon_grkey.ckey.blue &0xF8))
+ | ((radeon_grkey.ckey.green&0xFC)<<8)
+ | ((radeon_grkey.ckey.red &0xF8)<<16);
+ else
+#endif
besr.graphics_key_clr=
((radeon_grkey.ckey.blue &0xF8)>>3)
| ((radeon_grkey.ckey.green&0xFC)<<3)