summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZou Nan hai <nanhai.zou@intel.com>2008-08-28 09:49:57 +0800
committerZou Nan hai <nanhai.zou@intel.com>2008-08-28 09:49:57 +0800
commite7379d1c48a522f137cf1a06a334748c88471946 (patch)
treeaba6613949d3ef3820c9580d892adb39b57693b8
parentbe49ae6bd683ee9eb778f7ea937aaee4d72c51f0 (diff)
[965-xvmc] half-pixel bug fix
-rw-r--r--src/xvmc/dual_prime.g4b18
-rw-r--r--src/xvmc/field_backward.g4b10
-rw-r--r--src/xvmc/field_f_b.g4b18
-rw-r--r--src/xvmc/field_forward.g4b10
-rw-r--r--src/xvmc/frame_backward.g4b13
-rw-r--r--src/xvmc/frame_f_b.g4b24
-rw-r--r--src/xvmc/frame_forward.g4b13
-rw-r--r--src/xvmc/i965_xvmc.c74
-rw-r--r--src/xvmc/motion_field_uv.g4i2
-rw-r--r--src/xvmc/motion_field_y.g4i2
-rw-r--r--src/xvmc/motion_frame_uv.g4i2
-rw-r--r--src/xvmc/motion_frame_y.g4i11
12 files changed, 64 insertions, 133 deletions
diff --git a/src/xvmc/dual_prime.g4b b/src/xvmc/dual_prime.g4b
index 3828cb02..f2dca2ab 100644
--- a/src/xvmc/dual_prime.g4b
+++ b/src/xvmc/dual_prime.g4b
@@ -188,7 +188,7 @@
{ 0x80800042, 0x2cc04629, 0x00b10b43, 0x00b10b44 },
{ 0x80800042, 0x2ce04629, 0x00b10b83, 0x00b10b84 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000068 },
- { 0x01000005, 0x20000c3c, 0x00210030, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x00210034, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000035 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x29c01d29, 0x008d0e60, 0x0411a004 },
@@ -484,7 +484,7 @@
{ 0x80800042, 0x2cc04629, 0x00b10b43, 0x00b10b44 },
{ 0x80800042, 0x2ce04629, 0x00b10b83, 0x00b10b84 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000068 },
- { 0x01000005, 0x20000c3c, 0x00210038, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x0021003c, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000035 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x29c01d29, 0x008d0e60, 0x0411a004 },
@@ -896,7 +896,7 @@
{ 0x80600042, 0x2aa04629, 0x008d0bc3, 0x008d0bc4 },
{ 0x80600042, 0x2ab04629, 0x008d0bd3, 0x008d0bd4 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000098 },
- { 0x01000005, 0x20000c3c, 0x00210030, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x00210034, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000004d },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x2ac01d29, 0x008d0e60, 0x0414a005 },
@@ -1355,7 +1355,7 @@
{ 0x80600042, 0x2aa04629, 0x008d0bc3, 0x008d0bc4 },
{ 0x80600042, 0x2ab04629, 0x008d0bd3, 0x008d0bd4 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000098 },
- { 0x01000005, 0x20000c3c, 0x00210038, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x0021003c, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000004d },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x2ac01d29, 0x008d0e60, 0x0414a005 },
@@ -1706,7 +1706,7 @@
{ 0x80800042, 0x2cc04629, 0x00b10b43, 0x00b10b44 },
{ 0x80800042, 0x2ce04629, 0x00b10b83, 0x00b10b84 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000068 },
- { 0x01000005, 0x20000c3c, 0x00210040, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x00210044, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000035 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x29c01d29, 0x008d0e60, 0x0411a004 },
@@ -2005,7 +2005,7 @@
{ 0x80800042, 0x2cc04629, 0x00b10b43, 0x00b10b44 },
{ 0x80800042, 0x2ce04629, 0x00b10b83, 0x00b10b84 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000068 },
- { 0x01000005, 0x20000c3c, 0x00210048, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x0021004c, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000035 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x29c01d29, 0x008d0e60, 0x0411a004 },
@@ -2425,7 +2425,7 @@
{ 0x80600042, 0x2aa04629, 0x008d0bc3, 0x008d0bc4 },
{ 0x80600042, 0x2ab04629, 0x008d0bd3, 0x008d0bd4 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000098 },
- { 0x01000005, 0x20000c3c, 0x00210040, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x00210044, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000004d },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x2ac01d29, 0x008d0e60, 0x0414a005 },
@@ -2883,7 +2883,7 @@
{ 0x80600042, 0x2aa04629, 0x008d0bc3, 0x008d0bc4 },
{ 0x80600042, 0x2ab04629, 0x008d0bd3, 0x008d0bd4 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000098 },
- { 0x01000005, 0x20000c3c, 0x00210048, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x0021004c, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000004d },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x2ac01d29, 0x008d0e60, 0x0414a005 },
@@ -3063,7 +3063,7 @@
{ 0x00800001, 0x466101f1, 0x00000000, 0x00000000 },
{ 0x02000005, 0x20000c3c, 0x00210050, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000011 },
- { 0x00800040, 0x238045ad, 0x00b10060, 0x00b20380 },
+ { 0x00810040, 0x238045ad, 0x00b10060, 0x00b20380 },
{ 0x00800040, 0x23a045ad, 0x00b10080, 0x00b203a0 },
{ 0x00800040, 0x23c045ad, 0x00b100a0, 0x00b203c0 },
{ 0x00800040, 0x23e045ad, 0x00b100c0, 0x00b203e0 },
diff --git a/src/xvmc/field_backward.g4b b/src/xvmc/field_backward.g4b
index 8f8adf66..7aa79e7e 100644
--- a/src/xvmc/field_backward.g4b
+++ b/src/xvmc/field_backward.g4b
@@ -241,7 +241,7 @@
{ 0x80800042, 0x2cc04629, 0x00b10b43, 0x00b10b44 },
{ 0x80800042, 0x2ce04629, 0x00b10b83, 0x00b10b84 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000068 },
- { 0x01000005, 0x20000c3c, 0x00210038, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x0021003c, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000035 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x29c01d29, 0x008d0e60, 0x0411a007 },
@@ -538,7 +538,7 @@
{ 0x80800042, 0x2cc04629, 0x00b10b43, 0x00b10b44 },
{ 0x80800042, 0x2ce04629, 0x00b10b83, 0x00b10b84 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000068 },
- { 0x01000005, 0x20000c3c, 0x00210048, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x0021004c, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000035 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x29c01d29, 0x008d0e60, 0x0411a007 },
@@ -950,7 +950,7 @@
{ 0x80600042, 0x2aa04629, 0x008d0bc3, 0x008d0bc4 },
{ 0x80600042, 0x2ab04629, 0x008d0bd3, 0x008d0bd4 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000098 },
- { 0x01000005, 0x20000c3c, 0x00210038, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x0021003c, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000004d },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x2ac01d29, 0x008d0e60, 0x0414a008 },
@@ -1409,7 +1409,7 @@
{ 0x80600042, 0x2aa04629, 0x008d0bc3, 0x008d0bc4 },
{ 0x80600042, 0x2ab04629, 0x008d0bd3, 0x008d0bd4 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000098 },
- { 0x01000005, 0x20000c3c, 0x00210048, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x0021004c, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000004d },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x2ac01d29, 0x008d0e60, 0x0414a008 },
@@ -1581,7 +1581,7 @@
{ 0x00800001, 0x466101f1, 0x00000000, 0x00000000 },
{ 0x02000005, 0x20000c3c, 0x00210050, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000011 },
- { 0x00800040, 0x238045ad, 0x00b10060, 0x00b20380 },
+ { 0x00810040, 0x238045ad, 0x00b10060, 0x00b20380 },
{ 0x00800040, 0x23a045ad, 0x00b10080, 0x00b203a0 },
{ 0x00800040, 0x23c045ad, 0x00b100a0, 0x00b203c0 },
{ 0x00800040, 0x23e045ad, 0x00b100c0, 0x00b203e0 },
diff --git a/src/xvmc/field_f_b.g4b b/src/xvmc/field_f_b.g4b
index aeafc73c..99bc1fb5 100644
--- a/src/xvmc/field_f_b.g4b
+++ b/src/xvmc/field_f_b.g4b
@@ -241,7 +241,7 @@
{ 0x80800042, 0x2cc04629, 0x00b10b43, 0x00b10b44 },
{ 0x80800042, 0x2ce04629, 0x00b10b83, 0x00b10b84 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000068 },
- { 0x01000005, 0x20000c3c, 0x00210030, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x00210034, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000035 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x29c01d29, 0x008d0e60, 0x0411a004 },
@@ -538,7 +538,7 @@
{ 0x80800042, 0x2cc04629, 0x00b10b43, 0x00b10b44 },
{ 0x80800042, 0x2ce04629, 0x00b10b83, 0x00b10b84 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000068 },
- { 0x01000005, 0x20000c3c, 0x00210040, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x00210044, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000035 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x29c01d29, 0x008d0e60, 0x0411a004 },
@@ -950,7 +950,7 @@
{ 0x80600042, 0x2aa04629, 0x008d0bc3, 0x008d0bc4 },
{ 0x80600042, 0x2ab04629, 0x008d0bd3, 0x008d0bd4 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000098 },
- { 0x01000005, 0x20000c3c, 0x00210030, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x00210034, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000004d },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x2ac01d29, 0x008d0e60, 0x0414a005 },
@@ -1409,7 +1409,7 @@
{ 0x80600042, 0x2aa04629, 0x008d0bc3, 0x008d0bc4 },
{ 0x80600042, 0x2ab04629, 0x008d0bd3, 0x008d0bd4 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000098 },
- { 0x01000005, 0x20000c3c, 0x00210040, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x00210044, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000004d },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x2ac01d29, 0x008d0e60, 0x0414a005 },
@@ -1757,7 +1757,7 @@
{ 0x80800042, 0x2cc04629, 0x00b10b43, 0x00b10b44 },
{ 0x80800042, 0x2ce04629, 0x00b10b83, 0x00b10b84 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000068 },
- { 0x01000005, 0x20000c3c, 0x00210038, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x0021003c, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000035 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x29c01d29, 0x008d0e60, 0x0411a007 },
@@ -2054,7 +2054,7 @@
{ 0x80800042, 0x2cc04629, 0x00b10b43, 0x00b10b44 },
{ 0x80800042, 0x2ce04629, 0x00b10b83, 0x00b10b84 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000068 },
- { 0x01000005, 0x20000c3c, 0x00210048, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x0021004c, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000035 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x29c01d29, 0x008d0e60, 0x0411a007 },
@@ -2474,7 +2474,7 @@
{ 0x80600042, 0x2aa04629, 0x008d0bc3, 0x008d0bc4 },
{ 0x80600042, 0x2ab04629, 0x008d0bd3, 0x008d0bd4 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000098 },
- { 0x01000005, 0x20000c3c, 0x00210038, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x0021003c, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000004d },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x2ac01d29, 0x008d0e60, 0x0414a008 },
@@ -2933,7 +2933,7 @@
{ 0x80600042, 0x2aa04629, 0x008d0bc3, 0x008d0bc4 },
{ 0x80600042, 0x2ab04629, 0x008d0bd3, 0x008d0bd4 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000098 },
- { 0x01000005, 0x20000c3c, 0x00210048, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x0021004c, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000004d },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x2ac01d29, 0x008d0e60, 0x0414a008 },
@@ -3113,7 +3113,7 @@
{ 0x00800001, 0x466101f1, 0x00000000, 0x00000000 },
{ 0x02000005, 0x20000c3c, 0x00210050, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000011 },
- { 0x00800040, 0x238045ad, 0x00b10060, 0x00b20380 },
+ { 0x00810040, 0x238045ad, 0x00b10060, 0x00b20380 },
{ 0x00800040, 0x23a045ad, 0x00b10080, 0x00b203a0 },
{ 0x00800040, 0x23c045ad, 0x00b100a0, 0x00b203c0 },
{ 0x00800040, 0x23e045ad, 0x00b100c0, 0x00b203e0 },
diff --git a/src/xvmc/field_forward.g4b b/src/xvmc/field_forward.g4b
index 8b3f8fbb..43ea8078 100644
--- a/src/xvmc/field_forward.g4b
+++ b/src/xvmc/field_forward.g4b
@@ -240,7 +240,7 @@
{ 0x80800042, 0x2cc04629, 0x00b10b43, 0x00b10b44 },
{ 0x80800042, 0x2ce04629, 0x00b10b83, 0x00b10b84 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000068 },
- { 0x01000005, 0x20000c3c, 0x00210030, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x00210034, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000035 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x29c01d29, 0x008d0e60, 0x0411a004 },
@@ -537,7 +537,7 @@
{ 0x80800042, 0x2cc04629, 0x00b10b43, 0x00b10b44 },
{ 0x80800042, 0x2ce04629, 0x00b10b83, 0x00b10b84 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000068 },
- { 0x01000005, 0x20000c3c, 0x00210040, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x00210044, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000035 },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0000001f },
{ 0x00800031, 0x29c01d29, 0x008d0e60, 0x0411a004 },
@@ -949,7 +949,7 @@
{ 0x80600042, 0x2aa04629, 0x008d0bc3, 0x008d0bc4 },
{ 0x80600042, 0x2ab04629, 0x008d0bd3, 0x008d0bd4 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000098 },
- { 0x01000005, 0x20000c3c, 0x00210030, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x00210034, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000004d },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x2ac01d29, 0x008d0e60, 0x0414a005 },
@@ -1408,7 +1408,7 @@
{ 0x80600042, 0x2aa04629, 0x008d0bc3, 0x008d0bc4 },
{ 0x80600042, 0x2ab04629, 0x008d0bd3, 0x008d0bd4 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000098 },
- { 0x01000005, 0x20000c3c, 0x00210040, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x00210044, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000004d },
{ 0x00000001, 0x2e680061, 0x00000000, 0x0007000f },
{ 0x00800031, 0x2ac01d29, 0x008d0e60, 0x0414a005 },
@@ -1580,7 +1580,7 @@
{ 0x00800001, 0x466101f1, 0x00000000, 0x00000000 },
{ 0x02000005, 0x20000c3c, 0x00210050, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000011 },
- { 0x00800040, 0x238045ad, 0x00b10060, 0x00b20380 },
+ { 0x00810040, 0x238045ad, 0x00b10060, 0x00b20380 },
{ 0x00800040, 0x23a045ad, 0x00b10080, 0x00b203a0 },
{ 0x00800040, 0x23c045ad, 0x00b100a0, 0x00b203c0 },
{ 0x00800040, 0x23e045ad, 0x00b100c0, 0x00b203e0 },
diff --git a/src/xvmc/frame_backward.g4b b/src/xvmc/frame_backward.g4b
index 83a032e9..a952db75 100644
--- a/src/xvmc/frame_backward.g4b
+++ b/src/xvmc/frame_backward.g4b
@@ -282,7 +282,7 @@
{ 0x80800008, 0x25202d29, 0x00b10520, 0x00020002 },
{ 0x80800008, 0x25402d29, 0x00b10540, 0x00020002 },
{ 0x80800008, 0x25602d29, 0x00b10560, 0x00020002 },
- { 0x00000020, 0x34001c00, 0x00001400, 0x000000e4 },
+ { 0x00000020, 0x34001c00, 0x00001400, 0x000000e5 },
{ 0x00000001, 0x20480061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x2c401d29, 0x008d0040, 0x0418a007 },
{ 0x00000040, 0x20440c21, 0x00210044, 0x00000008 },
@@ -357,9 +357,9 @@
{ 0x80800042, 0x25204629, 0x00b10de3, 0x00b10de4 },
{ 0x80800042, 0x25404629, 0x00b10e03, 0x00b10e04 },
{ 0x80800042, 0x25604629, 0x00b10e23, 0x00b10e24 },
- { 0x00000020, 0x34001c00, 0x00001400, 0x00000099 },
- { 0x01000005, 0x20000c3c, 0x00210e70, 0x00000001 },
- { 0x00010020, 0x34001c00, 0x00001400, 0x0000004d },
+ { 0x00000020, 0x34001c00, 0x00001400, 0x0000009a },
+ { 0x01000005, 0x20000c3c, 0x00210e74, 0x00000001 },
+ { 0x00010020, 0x34001c00, 0x00001400, 0x0000004e },
{ 0x00000001, 0x20480061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x2c401d29, 0x008d0040, 0x0418a007 },
{ 0x00000040, 0x20440c21, 0x00210044, 0x00000008 },
@@ -437,6 +437,7 @@
{ 0x80800042, 0x25204629, 0x00b10de3, 0x00b10e03 },
{ 0x80800042, 0x25404629, 0x00b10e03, 0x00b10e23 },
{ 0x80800042, 0x25604629, 0x00b10e23, 0x00b10f03 },
+ { 0x00000020, 0x34001c00, 0x00001400, 0x0000004a },
{ 0x00000001, 0x20480061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x2c401d29, 0x008d0040, 0x0418a007 },
{ 0x00000040, 0x20440c21, 0x00210044, 0x00000008 },
@@ -680,7 +681,7 @@
{ 0x80800042, 0x26404629, 0x00ad0b83, 0x00ad0b84 },
{ 0x80800042, 0x26604629, 0x00ad0ba3, 0x00ad0ba4 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000059 },
- { 0x01000005, 0x20000c3c, 0x00210e70, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x00210e74, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000002f },
{ 0x00000005, 0x20580c21, 0x00210040, 0x00000003 },
{ 0x00800031, 0x2ac01d29, 0x008d0040, 0x0414a008 },
@@ -781,7 +782,7 @@
{ 0x00800001, 0x466101f1, 0x00000000, 0x00000000 },
{ 0x02000005, 0x20000c3c, 0x00210050, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000011 },
- { 0x00800040, 0x238045ad, 0x00b10060, 0x00b20380 },
+ { 0x00810040, 0x238045ad, 0x00b10060, 0x00b20380 },
{ 0x00800040, 0x23a045ad, 0x00b10080, 0x00b203a0 },
{ 0x00800040, 0x23c045ad, 0x00b100a0, 0x00b203c0 },
{ 0x00800040, 0x23e045ad, 0x00b100c0, 0x00b203e0 },
diff --git a/src/xvmc/frame_f_b.g4b b/src/xvmc/frame_f_b.g4b
index e6861fd2..0d9b8048 100644
--- a/src/xvmc/frame_f_b.g4b
+++ b/src/xvmc/frame_f_b.g4b
@@ -282,7 +282,7 @@
{ 0x80800008, 0x25202d29, 0x00b10520, 0x00020002 },
{ 0x80800008, 0x25402d29, 0x00b10540, 0x00020002 },
{ 0x80800008, 0x25602d29, 0x00b10560, 0x00020002 },
- { 0x00000020, 0x34001c00, 0x00001400, 0x000000e4 },
+ { 0x00000020, 0x34001c00, 0x00001400, 0x000000e5 },
{ 0x00000001, 0x20480061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x2c401d29, 0x008d0040, 0x0418a004 },
{ 0x00000040, 0x20440c21, 0x00210044, 0x00000008 },
@@ -357,9 +357,9 @@
{ 0x80800042, 0x25204629, 0x00b10de3, 0x00b10de4 },
{ 0x80800042, 0x25404629, 0x00b10e03, 0x00b10e04 },
{ 0x80800042, 0x25604629, 0x00b10e23, 0x00b10e24 },
- { 0x00000020, 0x34001c00, 0x00001400, 0x00000099 },
- { 0x01000005, 0x20000c3c, 0x00210e70, 0x00000001 },
- { 0x00010020, 0x34001c00, 0x00001400, 0x0000004d },
+ { 0x00000020, 0x34001c00, 0x00001400, 0x0000009a },
+ { 0x01000005, 0x20000c3c, 0x00210e74, 0x00000001 },
+ { 0x00010020, 0x34001c00, 0x00001400, 0x0000004e },
{ 0x00000001, 0x20480061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x2c401d29, 0x008d0040, 0x0418a004 },
{ 0x00000040, 0x20440c21, 0x00210044, 0x00000008 },
@@ -437,6 +437,7 @@
{ 0x80800042, 0x25204629, 0x00b10de3, 0x00b10e03 },
{ 0x80800042, 0x25404629, 0x00b10e03, 0x00b10e23 },
{ 0x80800042, 0x25604629, 0x00b10e23, 0x00b10f03 },
+ { 0x00000020, 0x34001c00, 0x00001400, 0x0000004a },
{ 0x00000001, 0x20480061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x2c401d29, 0x008d0040, 0x0418a004 },
{ 0x00000040, 0x20440c21, 0x00210044, 0x00000008 },
@@ -746,7 +747,7 @@
{ 0x80800008, 0x25202d29, 0x00b10520, 0x00020002 },
{ 0x80800008, 0x25402d29, 0x00b10540, 0x00020002 },
{ 0x80800008, 0x25602d29, 0x00b10560, 0x00020002 },
- { 0x00000020, 0x34001c00, 0x00001400, 0x000000e4 },
+ { 0x00000020, 0x34001c00, 0x00001400, 0x000000e5 },
{ 0x00000001, 0x20480061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x2c401d29, 0x008d0040, 0x0418a007 },
{ 0x00000040, 0x20440c21, 0x00210044, 0x00000008 },
@@ -821,9 +822,9 @@
{ 0x80800042, 0x25204629, 0x00b10de3, 0x00b10de4 },
{ 0x80800042, 0x25404629, 0x00b10e03, 0x00b10e04 },
{ 0x80800042, 0x25604629, 0x00b10e23, 0x00b10e24 },
- { 0x00000020, 0x34001c00, 0x00001400, 0x00000099 },
- { 0x01000005, 0x20000c3c, 0x00210e78, 0x00000001 },
- { 0x00010020, 0x34001c00, 0x00001400, 0x0000004d },
+ { 0x00000020, 0x34001c00, 0x00001400, 0x0000009a },
+ { 0x01000005, 0x20000c3c, 0x00210e7c, 0x00000001 },
+ { 0x00010020, 0x34001c00, 0x00001400, 0x0000004e },
{ 0x00000001, 0x20480061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x2c401d29, 0x008d0040, 0x0418a007 },
{ 0x00000040, 0x20440c21, 0x00210044, 0x00000008 },
@@ -901,6 +902,7 @@
{ 0x80800042, 0x25204629, 0x00b10de3, 0x00b10e03 },
{ 0x80800042, 0x25404629, 0x00b10e03, 0x00b10e23 },
{ 0x80800042, 0x25604629, 0x00b10e23, 0x00b10f03 },
+ { 0x00000020, 0x34001c00, 0x00001400, 0x0000004a },
{ 0x00000001, 0x20480061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x2c401d29, 0x008d0040, 0x0418a007 },
{ 0x00000040, 0x20440c21, 0x00210044, 0x00000008 },
@@ -1160,7 +1162,7 @@
{ 0x80800042, 0x26404629, 0x00ad0b83, 0x00ad0b84 },
{ 0x80800042, 0x26604629, 0x00ad0ba3, 0x00ad0ba4 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000059 },
- { 0x01000005, 0x20000c3c, 0x00210e70, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x00210e74, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000002f },
{ 0x00000005, 0x20580c21, 0x00210040, 0x00000003 },
{ 0x00800031, 0x2ac01d29, 0x008d0040, 0x0414a005 },
@@ -1425,7 +1427,7 @@
{ 0x80800042, 0x26404629, 0x00ad0b83, 0x00ad0b84 },
{ 0x80800042, 0x26604629, 0x00ad0ba3, 0x00ad0ba4 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000059 },
- { 0x01000005, 0x20000c3c, 0x00210e78, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x00210e7c, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000002f },
{ 0x00000005, 0x20580c21, 0x00210040, 0x00000003 },
{ 0x00800031, 0x2ac01d29, 0x008d0040, 0x0414a008 },
@@ -1534,7 +1536,7 @@
{ 0x00800001, 0x466101f1, 0x00000000, 0x00000000 },
{ 0x02000005, 0x20000c3c, 0x00210050, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000011 },
- { 0x00800040, 0x238045ad, 0x00b10060, 0x00b20380 },
+ { 0x00810040, 0x238045ad, 0x00b10060, 0x00b20380 },
{ 0x00800040, 0x23a045ad, 0x00b10080, 0x00b203a0 },
{ 0x00800040, 0x23c045ad, 0x00b100a0, 0x00b203c0 },
{ 0x00800040, 0x23e045ad, 0x00b100c0, 0x00b203e0 },
diff --git a/src/xvmc/frame_forward.g4b b/src/xvmc/frame_forward.g4b
index ca37b970..5ce99842 100644
--- a/src/xvmc/frame_forward.g4b
+++ b/src/xvmc/frame_forward.g4b
@@ -281,7 +281,7 @@
{ 0x80800008, 0x25202d29, 0x00b10520, 0x00020002 },
{ 0x80800008, 0x25402d29, 0x00b10540, 0x00020002 },
{ 0x80800008, 0x25602d29, 0x00b10560, 0x00020002 },
- { 0x00000020, 0x34001c00, 0x00001400, 0x000000e4 },
+ { 0x00000020, 0x34001c00, 0x00001400, 0x000000e5 },
{ 0x00000001, 0x20480061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x2c401d29, 0x008d0040, 0x0418a004 },
{ 0x00000040, 0x20440c21, 0x00210044, 0x00000008 },
@@ -356,9 +356,9 @@
{ 0x80800042, 0x25204629, 0x00b10de3, 0x00b10de4 },
{ 0x80800042, 0x25404629, 0x00b10e03, 0x00b10e04 },
{ 0x80800042, 0x25604629, 0x00b10e23, 0x00b10e24 },
- { 0x00000020, 0x34001c00, 0x00001400, 0x00000099 },
- { 0x01000005, 0x20000c3c, 0x00210e70, 0x00000001 },
- { 0x00010020, 0x34001c00, 0x00001400, 0x0000004d },
+ { 0x00000020, 0x34001c00, 0x00001400, 0x0000009a },
+ { 0x01000005, 0x20000c3c, 0x00210e74, 0x00000001 },
+ { 0x00010020, 0x34001c00, 0x00001400, 0x0000004e },
{ 0x00000001, 0x20480061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x2c401d29, 0x008d0040, 0x0418a004 },
{ 0x00000040, 0x20440c21, 0x00210044, 0x00000008 },
@@ -436,6 +436,7 @@
{ 0x80800042, 0x25204629, 0x00b10de3, 0x00b10e03 },
{ 0x80800042, 0x25404629, 0x00b10e03, 0x00b10e23 },
{ 0x80800042, 0x25604629, 0x00b10e23, 0x00b10f03 },
+ { 0x00000020, 0x34001c00, 0x00001400, 0x0000004a },
{ 0x00000001, 0x20480061, 0x00000000, 0x0007001f },
{ 0x00800031, 0x2c401d29, 0x008d0040, 0x0418a004 },
{ 0x00000040, 0x20440c21, 0x00210044, 0x00000008 },
@@ -679,7 +680,7 @@
{ 0x80800042, 0x26404629, 0x00ad0b83, 0x00ad0b84 },
{ 0x80800042, 0x26604629, 0x00ad0ba3, 0x00ad0ba4 },
{ 0x00000020, 0x34001c00, 0x00001400, 0x00000059 },
- { 0x01000005, 0x20000c3c, 0x00210e70, 0x00000001 },
+ { 0x01000005, 0x20000c3c, 0x00210e74, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x0000002f },
{ 0x00000005, 0x20580c21, 0x00210040, 0x00000003 },
{ 0x00800031, 0x2ac01d29, 0x008d0040, 0x0414a005 },
@@ -780,7 +781,7 @@
{ 0x00800001, 0x466101f1, 0x00000000, 0x00000000 },
{ 0x02000005, 0x20000c3c, 0x00210050, 0x00000001 },
{ 0x00010020, 0x34001c00, 0x00001400, 0x00000011 },
- { 0x00800040, 0x238045ad, 0x00b10060, 0x00b20380 },
+ { 0x00810040, 0x238045ad, 0x00b10060, 0x00b20380 },
{ 0x00800040, 0x23a045ad, 0x00b10080, 0x00b203a0 },
{ 0x00800040, 0x23c045ad, 0x00b100a0, 0x00b203c0 },
{ 0x00800040, 0x23e045ad, 0x00b100c0, 0x00b203e0 },
diff --git a/src/xvmc/i965_xvmc.c b/src/xvmc/i965_xvmc.c
index f494a195..b621f58f 100644
--- a/src/xvmc/i965_xvmc.c
+++ b/src/xvmc/i965_xvmc.c
@@ -352,78 +352,6 @@ static void send_media_object(XvMCMacroBlock *mb, int offset, enum interface int
ADVANCE_BATCH();
}
-/* do not use vertex cache for media object indirect data*/
-static void vertex_cache()
-{
- BATCH_LOCALS;
- BEGIN_BATCH(5);
- OUT_BATCH((0x22<<23)|1);
- OUT_BATCH(0x2124);
- OUT_BATCH(0x10000000);
- OUT_BATCH(MI_FLUSH | MI_WRITE_DIRTY_STATE);
- OUT_BATCH(MI_NOOP);
- ADVANCE_BATCH();
-}
-
-static void vertex_buffer(int offset, int num_blocks)
-{
- struct brw_vertex_element_packet vep;
- struct brw_vb_array_state vbp;
- struct brw_3d_primitive prim_packet;
-
- memset(&vep, 0, sizeof(vep));
- memset(&vbp, 0, sizeof(vbp));
- memset(&prim_packet, 0, sizeof(prim_packet));
-
- vep.ve[0].ve0.vertex_buffer_index = 0;
- vep.ve[0].ve0.valid = 1;
- vep.ve[0].ve0.src_format = 0x2;
- vep.ve[0].ve0.src_offset = 0x0;
-
- vep.ve[0].ve1.dst_offset = 0x0;
- vep.ve[0].ve1.vfcomponent0 = 0x1;
- vep.ve[0].ve1.vfcomponent1 = 0x1;
- vep.ve[0].ve1.vfcomponent2 = 0x1;
- vep.ve[0].ve1.vfcomponent3 = 0x1;
-
- vep.ve[1].ve0.vertex_buffer_index = 0;
- vep.ve[1].ve0.valid = 1;
- vep.ve[1].ve0.src_format = 0x2;
- vep.ve[1].ve0.src_offset = 0x10;
-
- vep.ve[1].ve1.dst_offset = 0x10;
- vep.ve[1].ve1.vfcomponent0 = 0x1;
- vep.ve[1].ve1.vfcomponent1 = 0x1;
- vep.ve[1].ve1.vfcomponent2 = 0x1;
- vep.ve[1].ve1.vfcomponent3 = 0x1;
-
- vep.header.length = (1 + 2 * sizeof(vep.ve[0])/4) - 2;
- vep.header.opcode = CMD_VERTEX_ELEMENT;
- intelBatchbufferData(&vep, 4*(vep.header.length+2), 0);
-
- vbp.vb[0].vb0.pitch = 0x20;
- vbp.vb[0].vb0.access_type = BRW_VERTEXBUFFER_ACCESS_VERTEXDATA;
- vbp.vb[0].max_index = 0;
- vbp.vb[0].start_addr = offset;
- vbp.header.length = (1 + 1* 4) - 2;
- vbp.header.opcode = CMD_VERTEX_BUFFER;
- intelBatchbufferData(&vep, 4*(vbp.header.length+2), 0);
-
- prim_packet.header.opcode = CMD_3D_PRIM;
- prim_packet.header.length = sizeof(prim_packet)/4 - 2;
- prim_packet.header.pad = 0;
- prim_packet.header.topology = 0x1;
- prim_packet.header.indexed = 0;
-
- prim_packet.verts_per_instance = num_blocks*4;
- prim_packet.start_vert_location = 0;
- prim_packet.instance_count = 1;
- prim_packet.start_instance_location = 0;
- prim_packet.base_vert_location = 0;
-
- intelBatchbufferData(&prim_packet, sizeof(prim_packet), 0);
-}
-
static void binding_tables(struct media_state *media_state)
{
unsigned int *binding_table;
@@ -640,7 +568,6 @@ static Status render_surface(Display *display,
{
int block_offset = i965_ctx->blocks.offset;
LOCK_HARDWARE(intel_ctx->hw_context);
- vertex_cache();
state_base_address(block_offset);
flush();
clear_sf_state();
@@ -649,7 +576,6 @@ static Status render_surface(Display *display,
urb_layout();
media_state_pointers(&media_state);
cs_urb_layout();
-// vertex_buffer(i965_ctx->blocks.offset, num_macroblocks);
for (i = first_macroblock;
i < num_macroblocks + first_macroblock;
diff --git a/src/xvmc/motion_field_uv.g4i b/src/xvmc/motion_field_uv.g4i
index 663254bf..7cb0ae17 100644
--- a/src/xvmc/motion_field_uv.g4i
+++ b/src/xvmc/motion_field_uv.g4i
@@ -36,7 +36,7 @@ L2:
include(`read_field_x1y0_uv.g4i')
jmpi L5;
L1:
- and.z (1) null mv1<1,1,1>UD 1UD {align1};
+ and.z (1) null mv2<1,1,1>UD 1UD {align1};
(f0) jmpi L4;
include(`read_field_x0y1_uv.g4i')
jmpi L5;
diff --git a/src/xvmc/motion_field_y.g4i b/src/xvmc/motion_field_y.g4i
index ff73c5e6..a9c1493b 100644
--- a/src/xvmc/motion_field_y.g4i
+++ b/src/xvmc/motion_field_y.g4i
@@ -36,7 +36,7 @@ L2:
include(`read_field_x1y0_y.g4i')
jmpi L5;
L1:
- and.z (1) null mv1<1,1,1>UD 1UD {align1};
+ and.z (1) null mv2<1,1,1>UD 1UD {align1};
(f0) jmpi L4;
include(`read_field_x0y1_y.g4i')
jmpi L5;
diff --git a/src/xvmc/motion_frame_uv.g4i b/src/xvmc/motion_frame_uv.g4i
index 39e764d6..624d32d0 100644
--- a/src/xvmc/motion_frame_uv.g4i
+++ b/src/xvmc/motion_frame_uv.g4i
@@ -36,7 +36,7 @@ LL2:
include(`read_frame_x1y0_uv.g4i')
jmpi LL5;
LL1:
- and.z (1) null mv1<1,1,1>UD 1UD {align1};
+ and.z (1) null mv2<1,1,1>UD 1UD {align1};
(f0) jmpi LL4;
include(`read_frame_x0y1_uv.g4i')
jmpi LL5;
diff --git a/src/xvmc/motion_frame_y.g4i b/src/xvmc/motion_frame_y.g4i
index 1f45da7b..db79e098 100644
--- a/src/xvmc/motion_frame_y.g4i
+++ b/src/xvmc/motion_frame_y.g4i
@@ -41,15 +41,16 @@
(f0) jmpi LL1;
and.z (1) null mv2<1,1,1>UD 1UD {align1};
(f0) jmpi LL2;
- include(`read_frame_x1y1_y.g4i')
+ include(`read_frame_x1y1_y.g4i')
jmpi LL5;
-LL2:
- include(`read_frame_x1y0_y.g4i')
+LL2:
+ include(`read_frame_x1y0_y.g4i')
jmpi LL5;
-LL1:
- and.z (1) null mv1<1,1,1>UD 1UD {align1};
+LL1:
+ and.z (1) null mv2<1,1,1>UD 1UD {align1};
(f0) jmpi LL4;
include(`read_frame_x0y1_y.g4i')
+ jmpi LL5;
LL4:
include(`read_frame_x0y0_y.g4i')
LL5: