Index: lib/XvMC/hw/i810/I810XvMC.c
===================================================================
RCS file: /cvs/xc/lib/XvMC/hw/i810/I810XvMC.c,v
retrieving revision 1.5
diff -r1.5 I810XvMC.c
3534a3535
>   case FOURCC_AI44:
3838a3840,3844
>   if((subpicture->xvimage_id != FOURCC_AI44) &&
>      (subpicture->xvimage_id != FOURCC_IA44)) {
>       return (error_base + XvMCBadSubpicture);
>   }
> 
3906,3908c3912,3924
<   for(i=0; i<16; i++) {
<     for(j=0; j<16; j++) {
<       *data++ = (j<<12) | (j<<8) | privSubpicture->palette[0][i];
---
>   switch(subpicture->xvimage_id) {
>   case FOURCC_IA44:
>     for(i=0; i<16; i++) {
>       for(j=0; j<16; j++) {
>         *data++ = (j<<12) | (j<<8) | privSubpicture->palette[0][i];
>       }
>     }
>     break;
>   case FOURCC_AI44:
>     for(i=0; i<16; i++) {
>       for(j=0; j<16; j++) {
>         *data++ = (i<<12) | (i<<8) | privSubpicture->palette[0][j];
>       }
3909a3926
>     break;
3984,3986c4001,4006
<   for(i=0; i<16; i++) {
<     for(j=0; j<16; j++) {
<       *data++ = (j<<12) | (j<<8) | privSubpicture->palette[1][i];
---
>   switch(subpicture->xvimage_id) {
>   case FOURCC_IA44:
>     for(i=0; i<16; i++) {
>       for(j=0; j<16; j++) {
>         *data++ = (j<<12) | (j<<8) | privSubpicture->palette[2][i];
>       }
3987a4008,4015
>     break;
>   case FOURCC_AI44:
>     for(i=0; i<16; i++) {
>       for(j=0; j<16; j++) {
>         *data++ = (i<<12) | (i<<8) | privSubpicture->palette[2][j];
>       }
>     }
>     break;
4063,4065c4091,4096
<   for(i=0; i<16; i++) {
<     for(j=0; j<16; j++) {
<       *data++ = (j<<12) | (j<<8) | privSubpicture->palette[2][i];
---
>   switch(subpicture->xvimage_id) {
>   case FOURCC_IA44:
>     for(i=0; i<16; i++) {
>       for(j=0; j<16; j++) {
>         *data++ = (j<<12) | (j<<8) | privSubpicture->palette[1][i];
>       }
4066a4098,4105
>     break;
>   case FOURCC_AI44:
>     for(i=0; i<16; i++) {
>       for(j=0; j<16; j++) {
>         *data++ = (i<<12) | (i<<8) | privSubpicture->palette[1][j];
>       }
>     }
>     break;
? programs/Xserver/hw/xfree86/drivers/i810/Makefile
? programs/Xserver/hw/xfree86/drivers/i810/i810._man
? programs/Xserver/hw/xfree86/drivers/i810/i810.4.html
Index: programs/Xserver/hw/xfree86/drivers/i810/i810.h
===================================================================
RCS file: /cvs/xc/programs/Xserver/hw/xfree86/drivers/i810/i810.h,v
retrieving revision 1.24
diff -r1.24 i810.h
796,815d795
< /* XvMC Subpicture surface definition */
< #define FOURCC_IA44 0x34344149
< #define XVIMAGE_IA44 \
<    { \
<         FOURCC_IA44, \
<         XvYUV, \
<         LSBFirst, \
<         {'I','A','4','4', \
<           0x00,0x00,0x00,0x10,0x80,0x00,0x00,0xAA,0x00,0x38,0x9B,0x71}, \
<         8, \
<         XvPacked, \
<         1, \
<         0, 0, 0, 0, \
<         8, 8, 8, \
<         1, 1, 1, \
<         1, 1, 1, \
<         {'I','A', \
<           0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, \
<         XvTopToBottom \
<    }
Index: programs/Xserver/hw/xfree86/drivers/i810/i810_hwmc.c
===================================================================
RCS file: /cvs/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_hwmc.c,v
retrieving revision 1.2
diff -r1.2 i810_hwmc.c
85c85
< static int yv12_subpicture_index_list[1] = 
---
> static int yv12_subpicture_index_list[2] = 
87c87,88
<   FOURCC_IA44
---
>   FOURCC_IA44,
>   FOURCC_AI44
92c93
<   1,
---
>   2,
133a135
> static XF86ImageRec ai44_subpicture = XVIMAGE_AI44;
135c137
< static XF86ImagePtr i810_subpicture_list[1] =
---
> static XF86ImagePtr i810_subpicture_list[2] =
137c139,140
<   (XF86ImagePtr)&ia44_subpicture
---
>   (XF86ImagePtr)&ia44_subpicture,
>   (XF86ImagePtr)&ai44_subpicture
150c153
<   1,				/* num_surfaces */
---
>   2,				/* num_surfaces */
152c155
<   1,				/* num_subpictures */
---
>   2,				/* num_subpictures */
Index: programs/Xserver/hw/xfree86/drivers/i810/i810_video.c
===================================================================
RCS file: /cvs/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_video.c,v
retrieving revision 1.20
diff -r1.20 i810_video.c
218c218
< #define NUM_IMAGES 5
---
> #define NUM_IMAGES 4
225,226c225
< 	XVIMAGE_UYVY,
< 	XVIMAGE_IA44
---
> 	XVIMAGE_UYVY
739,742d737
<     /* IA44 is for XvMC only */
<     case FOURCC_IA44:
< 	return;
< 	break;
968,971d962
<     /* IA44 is for XvMC only */
<     if(id == FOURCC_IA44) {
< 	return BadValue;
<     }
1102a1094
>     case FOURCC_AI44:
