Nvidia shaders

Hi everyone,

How to write the following shaders by using nvidia shaders:

consistencyShaderWithMask = glGenFragmentShadersATI(1);
   glBindFragmentShaderATI(consistencyShaderWithMask);
   glBeginFragmentShaderATI();

   glSetFragmentShaderConstantATI(GL_CON_0_ATI, c0);

   // Texture 0: Reference image (active view)
   // Texture 1: current view (with perspective projection), alpha is binary segmentation
   glSampleMapATI(GL_REG_0_ATI, GL_TEXTURE0_ARB, GL_SWIZZLE_STR_ATI);
   glSampleMapATI(GL_REG_1_ATI, GL_TEXTURE1_ARB, GL_SWIZZLE_STQ_DQ_ATI);

   // Calculate absolute difference
   glColorFragmentOp2ATI(GL_SUB_ATI, GL_REG_3_ATI, GL_NONE, GL_NONE,
			 GL_REG_1_ATI, GL_NONE, GL_NONE,
			 GL_REG_0_ATI, GL_NONE, GL_NONE);

   glColorFragmentOp3ATI(GL_CND0_ATI, GL_REG_4_ATI, GL_NONE, GL_NONE,
			 GL_REG_3_ATI, GL_NONE, GL_NONE,
			 GL_REG_3_ATI, GL_NONE, GL_NEGATE_BIT_ATI,
			 GL_REG_3_ATI, GL_NONE, GL_NONE);

   glEndFragmentShaderATI();

The main problem here is
glSampleMapATI(GL_REG_0_ATI, GL_TEXTURE0_ARB, GL_SWIZZLE_STR_ATI);
glSampleMapATI(GL_REG_1_ATI, GL_TEXTURE1_ARB, GL_SWIZZLE_STQ_DQ_ATI);

Calling shaders:

glBindFragmentShaderATI(consistencyShaderWithMask);

   glEnable(GL_FRAGMENT_SHADER_ATI);

   glMatrixMode(GL_PROJECTION);
   glLoadIdentity();
   glOrtho(0, 1, 0, 1, -1, 1);
   glMatrixMode(GL_MODELVIEW);
   glLoadIdentity();

   [_images[_activeView] bindInput: GL_TEXTURE0_ARB];

   for (i = 0; i < _nImages; ++i)
   {
      glActiveTexture(GL_TEXTURE1_ARB);
      glMatrixMode(GL_TEXTURE);
      glLoadIdentity();
      glScalef(0.5, 0.5, 0.5);
      glTranslatef(1.0, 1.0, 1.0);
      glMultMatrixd(_projs[i]);
      glMultMatrixd(_models[i]);
      glMultMatrixd(_invActiveModel);
      glMatrixMode(GL_MODELVIEW);

      [_images[i] bindInput: GL_TEXTURE1_ARB];

      glBegin(GL_QUADS);
      glMultiTexCoord2f(GL_TEXTURE0_ARB, 0, 0);
      glMultiTexCoord4f(GL_TEXTURE1_ARB, -x, -y, z, 1);
      glVertex2f(0, 0);

      glMultiTexCoord2f(GL_TEXTURE0_ARB, 0, 1);
      glMultiTexCoord4f(GL_TEXTURE1_ARB, -x, y, z, 1);
      glVertex2f(0, 1);

      glMultiTexCoord2f(GL_TEXTURE0_ARB, 1, 1);
      glMultiTexCoord4f(GL_TEXTURE1_ARB, x, y, z, 1);
      glVertex2f(1, 1);

      glMultiTexCoord2f(GL_TEXTURE0_ARB, 1, 0);
      glMultiTexCoord4f(GL_TEXTURE1_ARB, x, -y, z, 1);
      glVertex2f(1, 0);
      glEnd();
   }

   glDisable(GL_BLEND);
   glDisable(GL_FRAGMENT_SHADER_ATI);