!!ARBfp1.0 # # Copyright (C) 2010 Team XBMC # http://www.xbmc.org # # This Program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # # This Program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with XBMC; see the file COPYING. If not, write to # the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. # http://www.gnu.org/copyleft/gpl.html # # PARAM yuvmat[4] = { program.local[0..3] }; #stepx, stepy, width, height PARAM dims[1] = { program.local[4] }; TEMP f; TEMP pos; MAD pos.x , dims[0].x, -0.25, fragment.texcoord[0].x; MOV pos.y , fragment.texcoord[0].y; MUL f.x , dims[0].z, pos.x; MUL f.y , dims[0].w, pos.y; FRC f , f; TEMP c1pos; TEMP c2pos; SUB c1pos.x, 0.5, f.x; SUB c2pos.x, 1.5, f.x; MAD c1pos.x, c1pos.x, dims[0].x, pos.x; MAD c2pos.x, c2pos.x, dims[0].x, pos.x; MOV c1pos.y, pos.y; MOV c2pos.y, pos.y; TEMP c1; TEMP c2; TEX c1, c1pos, texture[0], 2D; TEX c2, c2pos, texture[0], 2D; TEMP cint; MUL cint.x, f.x, 2.0; MAD cint.y, f.x, 2.0, -1.0; SGE cint.z, f.x, 0.5; TEMP yuv; LRP yuv.g, cint.x, c1.r , c1.b; LRP yuv.b, cint.y, c2.b , c1.r; LRP yuv.r, cint.z, yuv.b, yuv.g; LRP yuv.g, f.x , c2.g , c1.g; LRP yuv.b, f.x , c2.a , c1.a; TEMP rgb; DPH rgb.r, yuv, yuvmat[0]; DPH rgb.g, yuv, yuvmat[1]; DPH rgb.b, yuv, yuvmat[2]; MOV rgb.a, fragment.color.a; MOV result.color, rgb; END