(10-15-2009, 02:23 PM)Megacubo Wrote: [ -> ]The ATI drivers have a lot to improve, most textures are lost with opengl, and with dx the emu crash
![[Image: dolphinil20091014230914.jpg]](http://img42.imageshack.us/img42/2435/dolphinil20091014230914.jpg)
![[Image: dolphinil20091014230946.jpg]](http://img204.imageshack.us/img204/9117/dolphinil20091014230946.jpg)
where's you manage to get the drivers at? Ati removed them yesterday i thought
nm
Could somebody upload ATI OpenCL drivers to mediafire or any other site?
so, does ATI take advantage of OpenCL atm?
Do I have to uninstall my current Nvidia drivers to install OpenCL drivers?
I installed the opencl drivers, but I can't find a compiled build with opencl.
It doesn't look like the ATI OpenCL compiler is ready yet. I am getting a bunch of errors in Open CL mode.
SVN 4428 Release x64
Windows 7 x64
ATI 4870 OpenCL beta driver 2.0 beta 4
ATI Stream SDK 2.0 beta 4 vista/win7-64
Game tested: Super Mario Sunshine PAL
The build compiles fine, but when starting the game, the OpenCL compiler spits these errors:
Error log:
C:\Users\AppData\Local\Temp\OCL.tmp.cl(11): error: mixed vector-scalar operation not allowed unless up-convertable(scalar-type=>vector-element-type)
C:\Users\AppData\Local\Temp\OCL.tmp.cl(12): error: mixed vector-scalar operation not allowed unless up-convertable(scalar-type=>vector-element-type)
C:\Users\AppData\Local\Temp\OCL.tmp.cl(13): error: mixed vector-scalar operation not allowed unless up-convertable(scalar-type=>vector-element-type)
C:\Users\AppData\Local\Temp\OCL.tmp.cl(57): error: mixed vector-scalar operation not allowed unless up-convertable(scalar-type=>vector-element-type)
C:\Users\AppData\Local\Temp\OCL.tmp.cl(58): error: mixed vector-scalar operation not allowed unless up-convertable(scalar-type=>vector-element-type)
C:\Users\AppData\Local\Temp\OCL.tmp.cl(59): error: mixed vector-scalar operation not allowed unless up-convertable(scalar-type=>vector-element-type)
C:\Users\AppData\Local\Temp\OCL.tmp.cl(109): error: bad argument type to opencl convert_* function: expected src and dst have the same number of elements
C:\Users\AppData\Local\Temp\OCL.tmp.cl(109): error: mixed vector-scalar operation not allowed unless up-convertable(scalar-type=>vector-element-type)
C:\Users\AppData\Local\Temp\OCL.tmp.cl(110): error: bad argument type to opencl convert_* function: expected src and dst have the same number of elements
C:\Users\AppData\Local\Temp\OCL.tmp.cl(110): error: mixed vector-scalar operation not allowed unless up-convertable(scalar-type=>vector-element-type)
C:\Users\AppData\Local\Temp\OCL.tmp.cl(111): error: bad argument type to opencl convert_* function: expected src and dst have the same number of elements
C:\Users\AppData\Local\Temp\OCL.tmp.cl(112): error: bad argument type to opencl convert_* function: expected src and dst have the same number of elements
C:\Users\AppData\Local\Temp\OCL.tmp.cl(112): error: mixed vector-scalar operation not allowed unless up-convertable(scalar-type=>vector-element-type)
C:\Users\AppData\Local\Temp\OCL.tmp.cl(118): error: mixed vector-scalar operation not allowed unless up-convertable(scalar-type=>vector-element-type)
C:\Users\AppData\Local\Temp\OCL.tmp.cl(119): error: mixed vector-scalar operation not allowed unless up-convertable(scalar-type=>vector-element-type)
C:\Users\AppData\Local\Temp\OCL.tmp.cl(120): error: mixed vector-scalar operation not allowed unless up-convertable(scalar-type=>vector-element-type)
C:\Users\AppData\Local\Temp\OCL.tmp.cl(121): error: mixed vector-scalar operation not allowed unless up-convertable(scalar-type=>vector-element-type)
C:\Users\AppData\Local\Temp\OCL.tmp.cl(122): error: mixed vector-scalar operation not allowed unless up-convertable(scalar-type=>vector-element-type)
These correspond to these lines in OCLTextureDecoder.cpp:
Lines: 46-48
res.even = (val >> 4) & 0x0F; \n\
res.odd = val & 0x0F; \n\
res |= res << 4; \n\
Lines: 92-94
res.odd = (val >> 4) & 0x0F; \n\
res.even = val & 0x0F; \n\
res |= res << 4; \n\
Lines 143-155
resNoAlpha.odd.odd = (uchar4)(0xFF); \n\
resNoAlpha.even.odd = convert_uchar4(vs >> 7) & 0xF8; \n\
resNoAlpha.odd.even = convert_uchar4(vs >> 2) & 0xF8; \n\
resNoAlpha.even.even = convert_uchar4(vs << 3) & 0xF8;\n\
// Better but cause color bleeding \n\
//resNoAlpha |= resNoAlpha >> 5; \n\
uchar16 resAlpha; \n\
resAlpha.even.odd = convert_uchar4(vs >> 8) & 0x0F; \n\
resAlpha.odd.even = convert_uchar4(vs >> 4) & 0x0F; \n\
resAlpha.even.even = convert_uchar4(vs) & 0x0F; \n\
resAlpha |= resNoAlpha << 4; \n\
resAlpha.odd.odd = convert_uchar4(vs >> 7) & 0xE0; \n\
resAlpha.odd.odd |= (resAlpha.odd.odd >> 3) \n\
| (resAlpha.odd.odd >> 6); \n\
The convert_* errors refer to the (vs >> x) argument. It doesn't seem to like the ">> x" argument being used in the parameter.
Not sure what the "vector-scalar" type error means.